OSC Documentation 0.59
©Patrick‐GillesMaillot 15 WINGOSC–V0.59
Or“ch”/”1”/”fdr”,whichtranslatestoOSCAddressPattern/ch/1/fdr:
‐>W,12B:/ch/1/fdr~~~
W‐>,32B:/ch/1/fdr~~~,sff~~~~‐oo~[0.0000][‐144.0000]
Intheexampleabove,thedata
[0.0000][‐144.0000]areasciiinterpretationsoftwo32bitsbig‐endian
floatdatavalues,eachrepresentedon4bytesasbinary.Thebinarydataactuallyreceivedisasshown
below,andinordertoeasethereadingofnumericalinformationinthisdocument,weusereadable
valuesinbracketsratherthantheactualbinarydata.Thecolorhighlightsaretheretohelpdistinguish
dataelements.
W‐>,32B:2f63682f312f6664720000002c736666000000002d6f6f0000000000c3100000
DependingontheOSCAddressPattern,WINGreturns'
,s'forstringsorenums,',sff'(ascii,rawpos,
floatvalue)forfloats,'
,sfi'(ascii,rawpos,intvalue)forints.Intheexampleabove,faderpositionisa
floatandWINGreturnstheasciirepresentation,theraw
[0.0..1.0]dataandtheactualfloatvaluein
dB.
Similarly,requestingthemutestateofchannelstrip1wouldreturn:
‐>W,12B:/ch/1/mute~~
W‐>,32B:/ch/1/mute~~,sfi~~~~1~~~[1.0000][1]
W‐>,32B:2f63682f312f6d75746500002c73666900000000310000003f80000000000001
ItshouldbenotedthatWINGwillacceptbothOSCpathorthenativehashdataforrepresenting
nodesorparameters;Indeed,allnodesandparametersintheconsoleareassignedabinaryaddress(a
hash)asexplainedinthechapteronnativeinterfacetotheconsole.Forexample,thechannel1mute
commandabovecanbesentasOSCAddressPatterns
/ch/1/mute~~asshown,or/#f50f69f8~~,and
wouldreturnthesamedataasshownabove.
0xf50f69f8isthehashforcommand“Channel1mute”.
ThefullsetofWINGhashvaluescanbediscoveredbyrecursivelytraversingtheJSONtreeofWING
nodes/commands,usingthenativebinaryinterfaceorOSCprotocol,butitisgenerallymore
convenienttousethemorestandardOSCnodenotation,ratherthanhexadecimalhashvaluesto
addresstheconsolefeatures.
ReceivingOSCdataonaspecificport
SomeOSCprogramswillrequestthatdataisreturnedonaspecificportratherthanbeingsentbackto
theportusedbytherequestingclientforsendingdata.Inordertoenablethiscapability,WINGOSC
includesanoptional,specialnotationforallOSCcommands:
AnyOSCcommandcanbeprefixedwiththe
/%<port>,with<port>intheform“12345”toenable
receivingtheexpectedanswerontothespecifiedportnumber.Forexample,theOSCrequest:
‐>W,20B:/%10027/ch/1/mute~~~
WillreceivetheexpectedreplyfromWINGonport10027,asshownbelow,usingasnifferprogramon
saidport.TheIPdoesnotchange.