This is the osc Reference Manual, version 0.7, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Dec 15 07:13:41 2024 GMT+0.
osc/osc.asd
osc/osc.lisp
osc/osc-data.lisp
osc/osc-dispatch.lisp
osc/osc-time.lisp
osc/osc-tests.lisp
osc/package.lisp
osc/devices/socket-functions.lisp
osc/devices/device.lisp
osc/devices/transmitter.lisp
osc/devices/listening-device.lisp
osc/devices/dispatching-device.lisp
osc/devices/client.lisp
osc/devices/server.lisp
The main system appears first, followed by any subsystem dependency.
osc
The Open Sound Control protocol aka OSC
nik gaffney <nik@fo.am>
GPL v3
0.7
usocket
(system).
osc.lisp
(file).
osc-data.lisp
(file).
osc-dispatch.lisp
(file).
osc-time.lisp
(file).
osc-tests.lisp
(file).
package.lisp
(file).
devices
(module).
Modules are listed depth-first from the system components tree.
osc/devices
:sbcl
package.lisp
(file).
osc-data.lisp
(file).
osc
(system).
socket-functions.lisp
(file).
device.lisp
(file).
transmitter.lisp
(file).
listening-device.lisp
(file).
dispatching-device.lisp
(file).
client.lisp
(file).
server.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
osc/osc.asd
osc/osc.lisp
osc/osc-data.lisp
osc/osc-dispatch.lisp
osc/osc-time.lisp
osc/osc-tests.lisp
osc/package.lisp
osc/devices/socket-functions.lisp
osc/devices/device.lisp
osc/devices/transmitter.lisp
osc/devices/listening-device.lisp
osc/devices/dispatching-device.lisp
osc/devices/client.lisp
osc/devices/server.lisp
osc/osc.lisp
osc-data.lisp
(file).
osc-time.lisp
(file).
osc
(system).
decode-bundle
(function).
decode-message
(function).
*debug*
(special variable).
bundle-p
(function).
cat
(function).
decode-address
(function).
decode-blob
(function).
decode-float32
(function).
decode-int32
(function).
decode-int64
(function).
decode-string
(function).
decode-taged-data
(function).
decode-timetag
(function).
decode-uint32
(function).
defint-decoder
(macro).
defint-encoder
(macro).
encode-address
(function).
encode-args
(function).
encode-blob
(function).
encode-bundle-elt
(generic function).
encode-float32
(function).
encode-int32
(function).
encode-int64
(function).
encode-osc-data
(generic function).
encode-string
(function).
encode-timetag
(function).
encode-typetags
(function).
get-bundle-element
(function).
get-bundle-element-length
(function).
get-timetag
(function).
pad
(function).
padded-length
(function).
padding-length
(function).
print-buffer
(function).
split-sequence-by-n
(function).
string-padding
(function).
osc/osc-data.lisp
package.lisp
(file).
osc
(system).
args
(reader method).
bundle
(function).
bundle
(class).
command
(reader method).
elements
(reader method).
format-osc-data
(generic function).
make-bundle
(function).
make-message
(function).
message
(function).
message
(class).
timetag
(reader method).
osc-data
(class).
osc/osc-dispatch.lisp
osc.lisp
(file).
osc
(system).
dispatch
(generic function).
dp-match
(function).
dp-register
(function).
dp-remove
(function).
make-osc-tree
(function).
osc/osc-time.lisp
package.lisp
(file).
osc
(system).
get-current-timetag
(function).
get-unix-time
(function).
print-as-double
(function).
timetag
(type).
timetag+
(function).
timetag->unix-time
(function).
unix-time->timetag
(function).
+2^32+
(constant).
+2^32/million+
(constant).
+unix-epoch+
(constant).
+usecs+
(constant).
int32->subsecs
(function).
microseconds->subsecs
(function).
subsecs->microseconds
(function).
timetagp
(function).
unix-secs+usecs->timetag
(function).
osc/osc-tests.lisp
osc.lisp
(file).
osc
(system).
run-tests
(function).
osc-asym-t1
(function).
osc-asym-t2
(function).
osc-ft
(function).
osc-read
(function).
osc-t10
(function).
osc-t11
(function).
osc-t12
(function).
osc-t13
(function).
osc-t2
(function).
osc-t3
(function).
osc-t4
(function).
osc-t5
(function).
osc-t6
(function).
osc-t7
(function).
osc-t8
(function).
osc-t9
(function).
osc-test
(function).
osc-write
(function).
otbl
(function).
otbn
(function).
otf
(function).
oti
(function).
otm
(function).
ots
(function).
osc/devices/socket-functions.lisp
devices
(module).
*default-osc-buffer-size*
(special variable).
address
(function).
device-active-p
(function).
device-socket-name
(function).
make-name-string
(function).
peer-address
(function).
peer-port
(function).
port
(function).
device-socket-peername
(function).
make-addr+port-string
(function).
make-peername-string
(function).
make-socket
(function).
make-socket-buffer
(function).
make-tcp-socket
(function).
make-udp-socket
(function).
osc/devices/device.lisp
devices
(module).
buffer-size
(method).
buffer-size
(reader method).
name
(generic function).
osc-client
(class).
osc-client-tcp
(class).
osc-client-udp
(class).
osc-device-cleanup
(generic function).
osc-server
(class).
osc-server-tcp
(class).
osc-server-udp
(class).
osc-transmitter
(class).
osc-transmitter-udp
(class).
protocol
(generic function).
quit
(generic function).
address-tree
(reader method).
cleanup-fun
(reader method).
clients
(reader method).
clients
(reader method).
debug-mode
(reader method).
dispatching-device
(class).
dispatching-device-udp
(class).
listening-device
(class).
listening-thread
(reader method).
osc-client-endpoint
(class).
osc-client-endpoint-tcp
(class).
osc-device
(class).
receiving-device
(class).
set-debug-mode
(writer method).
set-listening-thread
(writer method).
set-socket
(writer method).
socket
(reader method).
socket-buffer
(reader method).
tcp-device
(class).
udp-device
(class).
osc/devices/transmitter.lisp
device.lisp
(file).
socket-functions.lisp
(file).
devices
(module).
connect
(generic function).
make-osc-transmitter
(function).
quit
(method).
send
(generic function).
send-bundle
(generic function).
send-bundle-to
(generic function).
send-msg
(generic function).
send-msg-to
(generic function).
send-to
(generic function).
osc-write-to-stream
(macro).
osc/devices/listening-device.lisp
transmitter.lisp
(file).
devices
(module).
connect
(method).
make-listening-thread
(generic function).
osc-device-cleanup
(method).
osc-device-cleanup
(method).
quit
(method).
print-osc-debug-msg
(function).
osc/devices/dispatching-device.lisp
listening-device.lisp
(file).
devices
(module).
add-osc-responder
(macro).
make-listening-thread
(method).
remove-osc-responder
(generic function).
osc/devices/client.lisp
dispatching-device.lisp
(file).
devices
(module).
initialize-instance
(method).
make-client-responders
(generic function).
make-listening-thread
(method).
make-osc-client
(function).
osc-device-cleanup
(method).
register
(generic function).
make-osc-client-endpoint-tcp
(function).
osc/devices/server.lisp
client.lisp
(file).
devices
(module).
boot
(generic function).
get-tcp-client
(function).
initialize-instance
(method).
make-osc-server
(function).
make-server-responders
(generic function).
osc-device-cleanup
(method).
osc-device-cleanup
(method).
post-register-hook
(generic function).
print-clients
(generic function).
register-tcp-client
(function).
register-udp-client
(function).
send-all
(generic function).
send-bundle-all
(generic function).
send-bundle-to-client
(generic function).
send-msg-all
(generic function).
send-to-client
(generic function).
unregister-tcp-client
(function).
unregister-udp-client
(function).
make-clients-hash
(function).
make-unregister-self-fun
(function).
notify-quit
(function).
notify-registered
(function).
send-msg-to-client
(generic function).
Packages are listed by definition order.
osc
OSC, the ’Open Sound Control’ protocol.
common-lisp
.
*default-osc-buffer-size*
(special variable).
add-osc-responder
(macro).
address
(function).
args
(generic reader).
boot
(generic function).
buffer-size
(generic function).
bundle
(function).
bundle
(class).
command
(generic reader).
connect
(generic function).
decode-bundle
(function).
decode-message
(function).
device-active-p
(function).
device-socket-name
(function).
dispatch
(generic function).
dp-match
(function).
dp-register
(function).
dp-remove
(function).
elements
(generic reader).
format-osc-data
(generic function).
get-current-timetag
(function).
get-tcp-client
(function).
get-unix-time
(function).
make-bundle
(function).
make-client-responders
(generic function).
make-listening-thread
(generic function).
make-message
(function).
make-name-string
(function).
make-osc-client
(function).
make-osc-server
(function).
make-osc-transmitter
(function).
make-osc-tree
(function).
make-server-responders
(generic function).
message
(function).
message
(class).
name
(generic function).
osc-client
(class).
osc-client-tcp
(class).
osc-client-udp
(class).
osc-device-cleanup
(generic function).
osc-server
(class).
osc-server-tcp
(class).
osc-server-udp
(class).
osc-transmitter
(class).
osc-transmitter-udp
(class).
peer-address
(function).
peer-port
(function).
port
(function).
post-register-hook
(generic function).
print-as-double
(function).
print-clients
(generic function).
protocol
(generic function).
quit
(generic function).
register
(generic function).
register-tcp-client
(function).
register-udp-client
(function).
remove-osc-responder
(generic function).
run-tests
(function).
send
(generic function).
send-all
(generic function).
send-bundle
(generic function).
send-bundle-all
(generic function).
send-bundle-to
(generic function).
send-bundle-to-client
(generic function).
send-msg
(generic function).
send-msg-all
(generic function).
send-msg-to
(generic function).
send-to
(generic function).
send-to-client
(generic function).
timetag
(generic reader).
timetag
(type).
timetag+
(function).
timetag->unix-time
(function).
unix-time->timetag
(function).
unregister-tcp-client
(function).
unregister-udp-client
(function).
*debug*
(special variable).
+2^32+
(constant).
+2^32/million+
(constant).
+unix-epoch+
(constant).
+usecs+
(constant).
address-tree
(generic reader).
bundle-p
(function).
cat
(function).
cleanup-fun
(generic reader).
clients
(generic reader).
debug-mode
(generic reader).
decode-address
(function).
decode-blob
(function).
decode-float32
(function).
decode-int32
(function).
decode-int64
(function).
decode-string
(function).
decode-taged-data
(function).
decode-timetag
(function).
decode-uint32
(function).
defint-decoder
(macro).
defint-encoder
(macro).
device-socket-peername
(function).
dispatching-device
(class).
dispatching-device-udp
(class).
encode-address
(function).
encode-args
(function).
encode-blob
(function).
encode-bundle-elt
(generic function).
encode-float32
(function).
encode-int32
(function).
encode-int64
(function).
encode-osc-data
(generic function).
encode-string
(function).
encode-timetag
(function).
encode-typetags
(function).
get-bundle-element
(function).
get-bundle-element-length
(function).
get-timetag
(function).
int32->subsecs
(function).
listening-device
(class).
listening-thread
(generic reader).
make-addr+port-string
(function).
make-clients-hash
(function).
make-osc-client-endpoint-tcp
(function).
make-peername-string
(function).
make-socket
(function).
make-socket-buffer
(function).
make-tcp-socket
(function).
make-udp-socket
(function).
make-unregister-self-fun
(function).
microseconds->subsecs
(function).
notify-quit
(function).
notify-registered
(function).
osc-asym-t1
(function).
osc-asym-t2
(function).
osc-client-endpoint
(class).
osc-client-endpoint-tcp
(class).
osc-data
(class).
osc-device
(class).
osc-ft
(function).
osc-read
(function).
osc-t10
(function).
osc-t11
(function).
osc-t12
(function).
osc-t13
(function).
osc-t2
(function).
osc-t3
(function).
osc-t4
(function).
osc-t5
(function).
osc-t6
(function).
osc-t7
(function).
osc-t8
(function).
osc-t9
(function).
osc-test
(function).
osc-write
(function).
osc-write-to-stream
(macro).
otbl
(function).
otbn
(function).
otf
(function).
oti
(function).
otm
(function).
ots
(function).
pad
(function).
padded-length
(function).
padding-length
(function).
print-buffer
(function).
print-osc-debug-msg
(function).
receiving-device
(class).
send-msg-to-client
(generic function).
set-debug-mode
(generic writer).
set-listening-thread
(generic writer).
set-socket
(generic writer).
socket
(generic reader).
socket-buffer
(generic reader).
split-sequence-by-n
(function).
string-padding
(function).
subsecs->microseconds
(function).
tcp-device
(class).
timetagp
(function).
udp-device
(class).
unix-secs+usecs->timetag
(function).
Definitions are sorted by export status, category, package, and then by lexicographic order.
osc
.
Decodes an osc bundle/message into a bundle/message object. Bundles comprise an osc-timetag and a list of elements, which may be messages or bundles recursively. An optional end argument can be supplied (i.e. the length value returned by socket-receive, or the element length in the case of nested bundles), otherwise the entire buffer is decoded - in which case, if you are reusing buffers, you are responsible for ensuring that the buffer does not contain stale data.
reduces an osc message to an (address . data) pair. ..
Returns a list of functions which are registered for dispatch for a given address pattern.
osc
.
Registers a function to respond to incoming osc messages. Since only one function should be associated with an address, any previous registration will be overwritten.
osc
.
Removes the function associated with the given address.
osc
.
Returns a fixed-point 64 bit NTP-style timetag, where the top 32 bits represent seconds since midnight 19000101, and the bottom 32 bits represent the fractional parts of a second.
osc
.
Returns a a double-float representing real-time now in seconds, with microsecond precision, relative to 19700101.
osc
.
osc
.
osc
.
osc-server-tcp
) port) ¶osc-server-udp
) port) ¶UDP server sockets are used for receiving and unconnected sending.
osc-server
) port) ¶osc
.
dispatching-device
)) ¶osc-server
)) ¶automatically generated reader method
osc
.
progn
.
:most-specific-last
listening-device
) host-port &key host-address host-name port) ¶osc-transmitter
) host-port &key host-address host-name port) ¶osc
.
bundle
) device address port &optional timetag parent-bundle) ¶Dispatches each bundle element in sequence.
message
) device address port &optional timetag parent-bundle) ¶Calls the function(s) matching the address(pattern) in the osc message passing the message object, the recieving device, and optionally in the case where a message is part of a bundle, the timetag of the bundle and the enclosing bundle.
osc
.
osc-client-udp
)) ¶osc
.
osc-client-tcp
)) ¶Creates a listening thread for tcp clients.
dispatching-device-udp
)) ¶Creates a listening thread for udp devices (client and server).
osc
.
osc-server-udp
)) ¶osc
.
osc-device
)) ¶osc
.
osc-server-tcp
)) ¶osc-server-udp
)) ¶osc-client-udp
)) ¶receiving-device
)) ¶listening-device
)) ¶osc-device
)) ¶osc-device
)) ¶osc
.
osc-server-udp
) client-name) ¶osc
.
osc-server-tcp
)) ¶osc-server-udp
)) ¶osc
.
udp-device
)) ¶tcp-device
)) ¶osc
.
listening-device
)) ¶osc-transmitter-udp
)) ¶osc
.
osc-client-udp
)) ¶osc
.
dispatching-device
) address) ¶osc
.
osc-transmitter
) data) ¶osc
.
osc-client-endpoint
) data) ¶osc-server-tcp
) data) ¶osc-server-udp
) data) ¶osc
.
osc-transmitter
) timetag command &rest args) ¶osc
.
osc-server
) timetag command &rest args) ¶osc-client-endpoint
) timetag command &rest args) ¶osc
.
osc-transmitter-udp
) address port timetag command &rest args) ¶osc
.
osc-server
) client-name timetag command &rest args) ¶osc
.
osc-transmitter
) command &rest args) ¶osc
.
osc-server
) command &rest args) ¶osc-client-endpoint
) command &rest args) ¶osc
.
osc-transmitter-udp
) address port command &rest args) ¶osc
.
osc-transmitter-udp
) address port data) ¶osc
.
osc-server-tcp
) client data) ¶osc-server-udp
) client-name data) ¶osc-server
) client-name data) ¶osc-server-udp
) &key) ¶osc-client-udp
) &key) ¶osc
.
Set debug verbosity for core library functions. Currently levels are 0-3.
A bundle begins with ’#bundle’ (8 bytes). The start argument should index the beginning of a bundle in the buffer.
decode a blob as a vector of unsigned bytes.
ieee754 float from a vector of 4 bytes in network byte order
4 byte -> 32 bit int -> two’s complement (in network byte order)
8 byte -> 64 bit int -> two’s complement (in network byte order)
converts a binary vector to a string and removes trailing #nul characters
decodes data encoded with typetags...
NOTE: currently handles the following tags
i => #(105) => int32
f => #(102) => float
s => #(115) => string
b => #(98) => blob
h => #(104) => int64
Return a 64 bit timetag from a vector of 8 bytes in network byte order.
encodes args in a format suitable for an OSC message
encode an ieee754 float as a 4 byte vector. currently sbcl/cmucl specific
Convert an integer into a sequence of 4 bytes in network byte order (32 bit).
Convert an integer into a sequence of 8 bytes in network byte order (64 bit).
encodes a string as a vector of character-codes, padded to 4 byte boundary
From the spec: ‘Time tags are represented by a 64 bit fixed point number. The first 32 bits specify the number of seconds since midnight on January 1, 1900, and the last 32 bits specify fractional parts of a second to a precision of about 200 picoseconds. This is the representation used by Internet NTP timestamps’. For an ’instantaneous’ timetag use (encode-timetag :now), and for a timetag with the current time use (encode-timetag :time).
creates a typetag string suitable for the given data. valid typetags according to the osc spec are ,i ,f ,s and ,b non-std extensions include ,{h|t|d|S|c|r|m|T|F|N|I|[|]} see the spec for more details. ..
NOTE: currently handles the following tags
i => #(105) => int32
f => #(102) => float
s => #(115) => string
b => #(98) => blob
h => #(104) => int64
and considers non int/float/string data to be a blob.
Bytes 20 upto to the length of the content (defined by the preceding 4 bytes) are the content of the bundle. The start argument should index the beginning of the bundle element (length, content) pair in the buffer.
Bytes 16-19 are the size of the bundle element. The start argument should index the beginning of the bundle element (length, content) pair in the buffer.
Bytes 8-15 are the bundle timestamp. The start argument should index the beginning of a bundle in the buffer.
This maps a 32 bit integer, representing subsecond time, to a double float in the range 0-1.
osc
.
osc
.
testing the assumptions about representations of messages
osc
.
a basic test function which attempts to decode osc stuff on PORT.
osc
.
a basic test function which sends various osc stuff on port 5555
osc
.
make a sequence of the required number of #Nul characters
returns the length of an osc-string made from a given length of string
returns the length of padding required for a given length of string
osc
.
returns the padding required for a given osc string
osc
.
dispatching-device
)) ¶automatically generated reader method
osc
.
osc-device
)) ¶automatically generated reader method
osc
.
osc-client-endpoint
)) ¶automatically generated reader method
osc-server
)) ¶automatically generated reader method
osc
.
osc-device
)) ¶automatically generated reader method
osc
.
listening-device
)) ¶automatically generated reader method
osc
.
osc-server
) client-name command &rest args) ¶osc
.
osc-device
) osc-device) ¶automatically generated writer method
osc
.
listening-device
) listening-device) ¶automatically generated writer method
osc
.
osc-device
) osc-device) ¶automatically generated writer method
osc
.
osc-device
)) ¶automatically generated reader method
osc
.
receiving-device
)) ¶automatically generated reader method
osc
.
osc
.
Jump to: | A B C D E F G I L M N O P Q R S T U |
---|
Jump to: | A B C D E F G I L M N O P Q R S T U |
---|
Jump to: | *
+
A B C D E L S T |
---|
Jump to: | *
+
A B C D E L S T |
---|
Jump to: | B C D F L M O P R S T U |
---|
Jump to: | B C D F L M O P R S T U |
---|