[CSOUND-DEV] OSC arguments
Date | 2015-10-18 11:56 |
From | joachim heintz |
Subject | [CSOUND-DEV] OSC arguments |
hi - i am writing something about the OSC opcodes and usage in csound, and saw that the argument specifications for OSClisten and OSCsend are not the same. OSClisten (http://csound.github.io/docs/manual/OSClisten.html) "The string can contain the characters "cdfhis" which stand for character, double, float, 64-bit integer, 32-bit integer, and string. All types other than 's' require a k-rate variable, while 's' requires a string variable." OSCsend (http://csound.github.io/docs/manual/OSCsend.html) "The string can contain the characters "bcdfilmst" which stand for Boolean, character, double, float, 32-bit integer, 64-bit integer, MIDI, string and timestamp." these are my questions: 1. ist the argument list for OSCsend (which has Boolean, MIDI and timestamp additionally) also valid for OSClisten? should we update the manual page for OSClisten? 2. what is the usage for a) Boolean (1 / 0 ? or keywords?) b) MIDI c) timestamp thanks - |
Date | 2015-10-19 14:27 |
From | Oeyvind Brandtsegg |
Subject | Re: [CSOUND-DEV] OSC arguments |
There is also the 'T' type that might allow sending tables as a blob. I did some preliminary testing, but could not figure out the syntax for using it. 2015-10-18 12:56 GMT+02:00 joachim heintz |
Date | 2015-10-20 15:53 |
From | jpff |
Subject | Re: [Csnd-dev] [CSOUND-DEV] OSC arguments |
Regarding OSC types there are 3 constraints: 1; What liblo will allow; I would rather not have to change library 2: OSCSend can only send csound data types 3: OSCListen can onlr deliver csound types. liblo knows i /** 32 bit signed integer. */ f /** 32 bit IEEE-754 float. */ s /** Standard C, NULL terminated string. */ b /** OSC binary blob type. Accessed using the lo_blob_*() functions. */ h /** 64 bit signed integer. */ t /** OSC TimeTag type, represented by the lo_timetag structure. */ d /** 64 bit IEEE-754 double. */ S /** Standard C, NULL terminated, string. Used in systems which * distinguish strings and symbols. */ c /** Standard C, 8 bit, char variable. */ m /** A 4 byte MIDI packet. */ T /** Symbol representing the value True. */ F /** Symbol representing the value False. */ N /** Symbol representing the value Nil. */ I /** Symbol representing the value Infinitum. */ Of these "ifshd" map easily. We could use blobs for audio data or arrays, or tables. What should we do wen receiving the types "tcSmTFNI"? I am sure it makes sense to look at this again, but it all depends on use-cases. I have only used OSC for csound>- |
Date | 2015-10-20 21:32 |
From | joachim heintz |
Subject | Re: [Csnd-dev] [CSOUND-DEV] OSC arguments |
this sounds really promising!! i would be glad about two extensions: 1) blobs for arrays 2) make possible to use adress patterns like "/*" in OSClisten. (i read in http://www.music.mcgill.ca/musictech/nime/onlineproceedings/Papers/NIME03_Wright.pdf that all common shell file name extensions should be possible — not sure though this is implemented in liblo.) thanks! joachim On 20/10/15 16:53, jpff wrote: > Regarding OSC types there are 3 constraints: > > 1; What liblo will allow; I would rather not have to change library > > 2: OSCSend can only send csound data types > > 3: OSCListen can onlr deliver csound types. > > liblo knows > i /** 32 bit signed integer. */ > f /** 32 bit IEEE-754 float. */ > s /** Standard C, NULL terminated string. */ > b /** OSC binary blob type. Accessed using the lo_blob_*() functions. */ > h /** 64 bit signed integer. */ > t /** OSC TimeTag type, represented by the lo_timetag structure. */ > d /** 64 bit IEEE-754 double. */ > S /** Standard C, NULL terminated, string. Used in systems which > * distinguish strings and symbols. */ > c /** Standard C, 8 bit, char variable. */ > m /** A 4 byte MIDI packet. */ > T /** Symbol representing the value True. */ > F /** Symbol representing the value False. */ > N /** Symbol representing the value Nil. */ > I /** Symbol representing the value Infinitum. */ > > Of these "ifshd" map easily. We could use blobs for audio data or > arrays, or tables. What should we do wen receiving the types > "tcSmTFNI"? > > I am sure it makes sense to look at this again, but it all depends on > use-cases. I have only used OSC for csound>- |