![Page 1: OSC Protocol - Quick Introduction Matthias Kranz matthiashcilaborg By channing-vega 116 SlideShows Follow User 16 Views Presentation posted in: General](https://reader036.vdocuments.us/reader036/viewer/2022082401/56812caa550346895d9156ba/html5/thumbnails/1.jpg)
Department “Institut für Informatik”
OSC Protocol - Quick IntroductionMatthias Kranz
matthias<at>hcilab<dot>org
Research Group Embedded Interaction
www.hcilab.org
15.08.2005
EI Toolkit
![Page 2: OSC Protocol - Quick Introduction Matthias Kranz matthiashcilaborg By channing-vega 116 SlideShows Follow User 16 Views Presentation posted in: General](https://reader036.vdocuments.us/reader036/viewer/2022082401/56812caa550346895d9156ba/html5/thumbnails/2.jpg)
Department “Institut für Informatik”
Open Sound Control (OSC)
• “OpenSound Control (OSC) is an open, transport-independent, message-based protocol developed for communication among computers, sound synthesizers, and other multimedia devices.”
(from OSC specification, http://www.cnmat.berkeley.edu/OpenSoundControl/ )
![Page 3: OSC Protocol - Quick Introduction Matthias Kranz matthiashcilaborg By channing-vega 116 SlideShows Follow User 16 Views Presentation posted in: General](https://reader036.vdocuments.us/reader036/viewer/2022082401/56812caa550346895d9156ba/html5/thumbnails/3.jpg)
Department “Institut für Informatik”
Open Sound Control (OSC) Features
• Open-ended, dynamic,plain-text, URL-style symbolic naming scheme
• Numeric and symbolic arguments to messages • Pattern matching language (regular expressions)
to specify multiple targets of a single message • High resolution time tags (via synchronized time)• ‘Bundles’ of messages whose effects must occur
simultaneously • Query system to dynamically find out the
capabilities of an OSC server and get documentation
![Page 4: OSC Protocol - Quick Introduction Matthias Kranz matthiashcilaborg By channing-vega 116 SlideShows Follow User 16 Views Presentation posted in: General](https://reader036.vdocuments.us/reader036/viewer/2022082401/56812caa550346895d9156ba/html5/thumbnails/4.jpg)
Department “Institut für Informatik”
OSC Atomic Data Types
• int32 (big endian)
• float32 (big endian)
• OSC blob
• OSC string
• OSC timetag (big endian)
![Page 5: OSC Protocol - Quick Introduction Matthias Kranz matthiashcilaborg By channing-vega 116 SlideShows Follow User 16 Views Presentation posted in: General](https://reader036.vdocuments.us/reader036/viewer/2022082401/56812caa550346895d9156ba/html5/thumbnails/5.jpg)
Department “Institut für Informatik”
OSC Address OSC ArgumentsOSC Type Tag
OSC Message
OSC Messages
OSC String, address parts separated by ‘/’, starting with ‘/’
OSC String, one character for each data type that is in the argument part of the message, starting with ‘,’
0 to n arguments, in their binary representation, length with respect to its type
e.g./muc/particles/2.229.0.0.0.182.249/setText/
,si binary form of “hello world”3 (big endian for float32, int32 and timetag)
(will send “hello world” to the named particle and display the text in row 3)
![Page 6: OSC Protocol - Quick Introduction Matthias Kranz matthiashcilaborg By channing-vega 116 SlideShows Follow User 16 Views Presentation posted in: General](https://reader036.vdocuments.us/reader036/viewer/2022082401/56812caa550346895d9156ba/html5/thumbnails/6.jpg)
Department “Institut für Informatik”
OSC Bundles
OSC String OSC Bundle Elem.OSC TimeTag
OSC Bundle
#bundle 64 bit
ContentsSize
int32
OSC BundleOSC Message
![Page 7: OSC Protocol - Quick Introduction Matthias Kranz matthiashcilaborg By channing-vega 116 SlideShows Follow User 16 Views Presentation posted in: General](https://reader036.vdocuments.us/reader036/viewer/2022082401/56812caa550346895d9156ba/html5/thumbnails/7.jpg)
Department “Institut für Informatik”
Hierarchical Address Space
/
lancs/ locationX/
particles/smart-its/pinandplay/
muc/
technology1/ technologyN/
method1 methodN
ip-address:port/
![Page 8: OSC Protocol - Quick Introduction Matthias Kranz matthiashcilaborg By channing-vega 116 SlideShows Follow User 16 Views Presentation posted in: General](https://reader036.vdocuments.us/reader036/viewer/2022082401/56812caa550346895d9156ba/html5/thumbnails/8.jpg)
Department “Institut für Informatik”
OSC Example Message
/muc/particle/2.229.0.0.0.182.249/setText,si,/location/id_of_sender\00b010101010101010
(hierarchical address as OSC String, null terminated, number of bits is multiple of 32, filled with \0, then the OSC data types in the message, also as null-terminated OSC String, number of bits is multiple of 32, followed by the data in binary form, big endian encoding for int32, float32 and timetag)
The first string in the message (required!) is the ID (as string) of the sender. (EIToolkit specific extension).