Dear list,
I have made a little program in Unity to send over OSC (port 7000) 60 times per second if a trigger was touched or not (1 and 0 respectively)
However, any of my tries if it was over localnetwork or via IP to port 7000 nothing comes to Pd. Tried udp, tcp and netreceive but cannot catch any of the signals which looks like this /trigger0/0 or /trigger34/1
Anyway, netreceive print to the console: slipdec: maximum packet length is 65536.
What could go wrong? When I use Arena or Artnet the OSC is running with all the info I need, but Pd is muted totally.
Best,
Popesz
I have made a little program in Unity to send over OSC (port 7000)
If you use UDP (which you normally would), then a [netreceive -u -b 7000] in Pd should give you the *raw* OSC message. "-u" stands for UDP and "-b" stands for binary. Alternatively, you can also use [iemnet/udpreceive 7000].
Then you have to convert the raw bytes to a Pd message, e.g. with [unpackOSC] (from "mrpeach" resp. "osc") or Pd vanilla's [oscparse].
Anyway, netreceive print to the console: slipdec: maximum packet length is 65536.
This error message definitely comes from the [slipdec] object.Totally off topic, but these OSC addresses look weird. Why not use /trigger/0/0 and /trigger/34/1 ?
Christof
On 08.02.2021 22:02, Csaba Láng wrote:
Dear list,
I have made a little program in Unity to send over OSC (port 7000) 60 times per second if a trigger was touched or not (1 and 0 respectively)
However, any of my tries if it was over localnetwork or via IP to port 7000 nothing comes to Pd. Tried udp, tcp and netreceive but cannot catch any of the signals which looks like this /trigger0/0 or /trigger34/1
Anyway, netreceive print to the console: slipdec: maximum packet length is 65536.
What could go wrong? When I use Arena or Artnet the OSC is running with all the info I need, but Pd is muted totally.
Best,
Popesz
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
On 2/8/21 11:06 PM, Christof Ressi wrote:
Anyway, netreceive print to the console: slipdec: maximum packet length is 65536.
This error message definitely comes from the [slipdec] object.
i think the important part here is that if you are using UDP for transmission then you should **not** use [slipdec] at all.
[slipdec] is *only* useful for TCP/IP transmissions.
if you use TCP/IP for transmitting OSC, things are a bit more muddled as the protocol is not fully defined. SLIP-encoding was relatively recently introduced and only *recommended* (as opposed to *enforced*) in the OSC-specifications. older implementations just added the packet-size to the beginning of each OSC-message/bundle (which was not very robust).
so if you use TCP/IP, you must know which packet-delimiting you are using.
dfmsar IOhannes
On 2/9/21 9:31 AM, IOhannes m zmölnig wrote:
i think the important part here is that if you are using UDP for transmission then you should **not** use [slipdec] at all.
that should actually read:
if you are using UDP for transmission then you *MUST not* use [slipdec] at all.
fgmdsa IOhannes
I haven’t used slipdeck at all. It is somehow built in the tcpreceiver as the message from the console is from the moment I changed the port to the required 7000.
On Tue, 9 Feb 2021 at 09:36, IOhannes m zmölnig zmoelnig@iem.at wrote:
On 2/9/21 9:31 AM, IOhannes m zmölnig wrote:
i think the important part here is that if you are using UDP for transmission then you should **not** use [slipdec] at all.
that should actually read:
if you are using UDP for transmission then you *MUST not* use [slipdec] at all.
fgmdsa IOhannes
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
On 2/9/21 9:42 AM, Csaba Láng wrote:
I haven’t used slipdeck at all. It is somehow built in the tcpreceiver as the message from the console is from the moment I changed the port to the required 7000.
i don't know what your "tcpreceiver* actually refers to (the only instance , but there *are* abstractions out there (courtesy of roman, iirc) that wrap [slipdec] for easily receiving OSC-messages via TCP/IP.
checking on my harddisk, that would be [tcpsocketreceiver] (which is shipped with mrpeach's OSC library).
since you do mention "tcpreceiver" it seems that you *are* using TCP/IP for transmitting OSC. if that is so, please refer to the second part of my original email on what might actually go wrong.
gfamsrd IOhannes
PS: it would help *tremendously* if you could mention what you are actually using to receive OSC.
On Tue, 2021-02-09 at 09:52 +0100, IOhannes m zmölnig wrote:
PS: it would help *tremendously* if you could mention what you are actually using to receive OSC.
But also what you are using for _sending_ OSC messages. I gather you wrote something in Unity. Are you sending in UDP or TCP? If you are unsure what do you use, I'd go for UDP as it less complex and it is much more common in OSC world. Also, switching transport protocols means switching whole concepts. My advice is to stick with one and be clear about what you use.
Roman
hi Csaba - i have done a fair amount of work with OSC in Unity and i highly recommend the extOSC plugin for this (it's free). https://github.com/Iam1337/extOSC
homemade OSC sounds cool but there are a lot of flavors and not all of them play well with PD. i tried a number of options and what worked on receive in PD was the following:
[iemnet/udpreceive] (with the port set at loadbang) -> [oscparse] - [list trim] and then [route] to send it places.
what worked on send to Unity was this: [oscformat (parameter) (value)] -> [list prepend send] -> [list trim] -> [netsend -u -b] (with the connect message to the address and port on loadbang).
i'm sure that might sound kludgy and terrible to experienced folks but the receiving setup works perfectly for me and [netreceive] absolutely did NOT work, under any configuration. haven't tested the sending option but it did work in the past.
happy to include a screenshot if you need it.
best, scott
On Tue, Feb 9, 2021 at 1:09 AM Roman Haefeli reduzent@gmail.com wrote:
On Tue, 2021-02-09 at 09:52 +0100, IOhannes m zmölnig wrote:
PS: it would help *tremendously* if you could mention what you are actually using to receive OSC.
But also what you are using for _sending_ OSC messages. I gather you wrote something in Unity. Are you sending in UDP or TCP? If you are unsure what do you use, I'd go for UDP as it less complex and it is much more common in OSC world. Also, switching transport protocols means switching whole concepts. My advice is to stick with one and be clear about what you use.
Roman _______________________________________________ Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Scott,
thanks for the Unity part suggestions. Screenshots are welcome, patch is even better :) Just to be clear you suggest both solution in one time: extOSC and the udpreceive - oscars, or the udprevceive works already with the OSC I use now from Unity.
Will come back if tested the extOSC package for Unity, probably in 12 hours.
Best,
Popesz
On Tue, Feb 9, 2021 at 10:55 AM Scott R. Looney scottrlooney@gmail.com wrote:
hi Csaba - i have done a fair amount of work with OSC in Unity and i highly recommend the extOSC plugin for this (it's free). https://github.com/Iam1337/extOSC
homemade OSC sounds cool but there are a lot of flavors and not all of them play well with PD. i tried a number of options and what worked on receive in PD was the following:
[iemnet/udpreceive] (with the port set at loadbang) -> [oscparse] - [list trim] and then [route] to send it places.
what worked on send to Unity was this: [oscformat (parameter) (value)] -> [list prepend send] -> [list trim] -> [netsend -u -b] (with the connect message to the address and port on loadbang).
i'm sure that might sound kludgy and terrible to experienced folks but the receiving setup works perfectly for me and [netreceive] absolutely did NOT work, under any configuration. haven't tested the sending option but it did work in the past.
happy to include a screenshot if you need it.
best, scott
On Tue, Feb 9, 2021 at 1:09 AM Roman Haefeli reduzent@gmail.com wrote:
On Tue, 2021-02-09 at 09:52 +0100, IOhannes m zmölnig wrote:
PS: it would help *tremendously* if you could mention what you are actually using to receive OSC.
But also what you are using for _sending_ OSC messages. I gather you wrote something in Unity. Are you sending in UDP or TCP? If you are unsure what do you use, I'd go for UDP as it less complex and it is much more common in OSC world. Also, switching transport protocols means switching whole concepts. My advice is to stick with one and be clear about what you use.
Roman _______________________________________________ Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
hi Csaba - here's the screenshots, the patch may not do you any good, but i think you should get the idea from what it shows. docs on extOSC are good, though they don't refer to how you should receive it in PD, they do talk about TouchOSC i believe. you will need iemnet installed, but everything else should already be in vanilla.
best, scott
On Tue, Feb 9, 2021 at 2:48 AM Csaba Láng langcsaba@gmail.com wrote:
Scott,
thanks for the Unity part suggestions. Screenshots are welcome, patch is even better :) Just to be clear you suggest both solution in one time: extOSC and the udpreceive - oscars, or the udprevceive works already with the OSC I use now from Unity.
Will come back if tested the extOSC package for Unity, probably in 12 hours.
Best,
Popesz
On Tue, Feb 9, 2021 at 10:55 AM Scott R. Looney scottrlooney@gmail.com wrote:
hi Csaba - i have done a fair amount of work with OSC in Unity and i highly recommend the extOSC plugin for this (it's free). https://github.com/Iam1337/extOSC
homemade OSC sounds cool but there are a lot of flavors and not all of them play well with PD. i tried a number of options and what worked on receive in PD was the following:
[iemnet/udpreceive] (with the port set at loadbang) -> [oscparse] - [list trim] and then [route] to send it places.
what worked on send to Unity was this: [oscformat (parameter) (value)] -> [list prepend send] -> [list trim] -> [netsend -u -b] (with the connect message to the address and port on loadbang).
i'm sure that might sound kludgy and terrible to experienced folks but the receiving setup works perfectly for me and [netreceive] absolutely did NOT work, under any configuration. haven't tested the sending option but it did work in the past.
happy to include a screenshot if you need it.
best, scott
On Tue, Feb 9, 2021 at 1:09 AM Roman Haefeli reduzent@gmail.com wrote:
On Tue, 2021-02-09 at 09:52 +0100, IOhannes m zmölnig wrote:
PS: it would help *tremendously* if you could mention what you are actually using to receive OSC.
But also what you are using for _sending_ OSC messages. I gather you wrote something in Unity. Are you sending in UDP or TCP? If you are unsure what do you use, I'd go for UDP as it less complex and it is much more common in OSC world. Also, switching transport protocols means switching whole concepts. My advice is to stick with one and be clear about what you use.
Roman _______________________________________________ Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Scott, thanks a lot. Using the extOSC, Unity started to send me the OSC signal, after using the magic solution for Windows problems, which is a simple restart. Now I have the only problem that sometimes the slash is missing for an unknown reason but if I fix it, I am OK.
Thanks for all the solutions you guys suggested.
Have a nice day!
Popesz
On Tue, Feb 9, 2021 at 12:33 PM Scott R. Looney scottrlooney@gmail.com wrote:
hi Csaba - here's the screenshots, the patch may not do you any good, but i think you should get the idea from what it shows. docs on extOSC are good, though they don't refer to how you should receive it in PD, they do talk about TouchOSC i believe. you will need iemnet installed, but everything else should already be in vanilla.
best, scott
On Tue, Feb 9, 2021 at 2:48 AM Csaba Láng langcsaba@gmail.com wrote:
Scott,
thanks for the Unity part suggestions. Screenshots are welcome, patch is even better :) Just to be clear you suggest both solution in one time: extOSC and the udpreceive - oscars, or the udprevceive works already with the OSC I use now from Unity.
Will come back if tested the extOSC package for Unity, probably in 12 hours.
Best,
Popesz
On Tue, Feb 9, 2021 at 10:55 AM Scott R. Looney scottrlooney@gmail.com wrote:
hi Csaba - i have done a fair amount of work with OSC in Unity and i highly recommend the extOSC plugin for this (it's free). https://github.com/Iam1337/extOSC
homemade OSC sounds cool but there are a lot of flavors and not all of them play well with PD. i tried a number of options and what worked on receive in PD was the following:
[iemnet/udpreceive] (with the port set at loadbang) -> [oscparse] - [list trim] and then [route] to send it places.
what worked on send to Unity was this: [oscformat (parameter) (value)] -> [list prepend send] -> [list trim] -> [netsend -u -b] (with the connect message to the address and port on loadbang).
i'm sure that might sound kludgy and terrible to experienced folks but the receiving setup works perfectly for me and [netreceive] absolutely did NOT work, under any configuration. haven't tested the sending option but it did work in the past.
happy to include a screenshot if you need it.
best, scott
On Tue, Feb 9, 2021 at 1:09 AM Roman Haefeli reduzent@gmail.com wrote:
On Tue, 2021-02-09 at 09:52 +0100, IOhannes m zmölnig wrote:
PS: it would help *tremendously* if you could mention what you are actually using to receive OSC.
But also what you are using for _sending_ OSC messages. I gather you wrote something in Unity. Are you sending in UDP or TCP? If you are unsure what do you use, I'd go for UDP as it less complex and it is much more common in OSC world. Also, switching transport protocols means switching whole concepts. My advice is to stick with one and be clear about what you use.
Roman _______________________________________________ Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
[netreceive] absolutely did NOT work, under any configuration.
[netreceive -u -b] is basically the same as [iemnet/udpreceive], so I don't see what should not work...
On 09.02.2021 10:27, Scott R. Looney wrote:
hi Csaba - i have done a fair amount of work with OSC in Unity and i highly recommend the extOSC plugin for this (it's free). https://github.com/Iam1337/extOSC https://github.com/Iam1337/extOSC
homemade OSC sounds cool but there are a lot of flavors and not all of them play well with PD. i tried a number of options and what worked on receive in PD was the following:
[iemnet/udpreceive] (with the port set at loadbang) -> [oscparse] - [list trim] and then [route] to send it places.
what worked on send to Unity was this: [oscformat (parameter) (value)] -> [list prepend send] -> [list trim] -> [netsend -u -b] (with the connect message to the address and port on loadbang).
i'm sure that might sound kludgy and terrible to experienced folks but the receiving setup works perfectly for me and [netreceive] absolutely did NOT work, under any configuration. haven't tested the sending option but it did work in the past.
happy to include a screenshot if you need it.
best, scott
On Tue, Feb 9, 2021 at 1:09 AM Roman Haefeli <reduzent@gmail.com mailto:reduzent@gmail.com> wrote:
On Tue, 2021-02-09 at 09:52 +0100, IOhannes m zmölnig wrote: > PS: it would help *tremendously* if you could mention what you are > actually using to receive OSC. But also what you are using for _sending_ OSC messages. I gather you wrote something in Unity. Are you sending in UDP or TCP? If you are unsure what do you use, I'd go for UDP as it less complex and it is much more common in OSC world. Also, switching transport protocols means switching whole concepts. My advice is to stick with one and be clear about what you use. Roman _______________________________________________ Pd-list@lists.iem.at <mailto:Pd-list@lists.iem.at> mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list <https://lists.puredata.info/listinfo/pd-list>
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Gents,
the problems is that oscars for some reason does not send the / at the beginning of the osc signal, just 'list trigger0 0' and for this reason the routeOSC does not understand what it has to route.
What do I miss again?
I have [udpreceive 7000] | [oscparse] | [list trim] |[routeOSC /trigger0 /trigger1]
and nothing comes out on the outlets.
hmmm
On Tue, Feb 9, 2021 at 1:34 PM Christof Ressi info@christofressi.com wrote:
[netreceive] absolutely did NOT work, under any configuration.
[netreceive -u -b] is basically the same as [iemnet/udpreceive], so I don't see what should not work...
On 09.02.2021 10:27, Scott R. Looney wrote:
hi Csaba - i have done a fair amount of work with OSC in Unity and i highly recommend the extOSC plugin for this (it's free). https://github.com/Iam1337/extOSC
homemade OSC sounds cool but there are a lot of flavors and not all of them play well with PD. i tried a number of options and what worked on receive in PD was the following:
[iemnet/udpreceive] (with the port set at loadbang) -> [oscparse] - [list trim] and then [route] to send it places.
what worked on send to Unity was this: [oscformat (parameter) (value)] -> [list prepend send] -> [list trim] -> [netsend -u -b] (with the connect message to the address and port on loadbang).
i'm sure that might sound kludgy and terrible to experienced folks but the receiving setup works perfectly for me and [netreceive] absolutely did NOT work, under any configuration. haven't tested the sending option but it did work in the past.
happy to include a screenshot if you need it.
best, scott
On Tue, Feb 9, 2021 at 1:09 AM Roman Haefeli reduzent@gmail.com wrote:
On Tue, 2021-02-09 at 09:52 +0100, IOhannes m zmölnig wrote:
PS: it would help *tremendously* if you could mention what you are actually using to receive OSC.
But also what you are using for _sending_ OSC messages. I gather you wrote something in Unity. Are you sending in UDP or TCP? If you are unsure what do you use, I'd go for UDP as it less complex and it is much more common in OSC world. Also, switching transport protocols means switching whole concepts. My advice is to stick with one and be clear about what you use.
Roman _______________________________________________ Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
_______________________________________________Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
[routeOSC] works with lists coming from [unpackOSC].
[oscparse] just needs a plain [route] because it outputs the address components as a Pd list, e.g. "/foo/bar/baz 1 2 3" is turned into "list foo bar baz 1 2 3".
Christof
On 09.02.2021 16:37, Csaba Láng wrote:
Gents,
the problems is that oscars for some reason does not send the / at the beginning of the osc signal, just 'list trigger0 0' and for this reason the routeOSC does not understand what it has to route.
What do I miss again?
I have [udpreceive 7000] | [oscparse] | [list trim] |[routeOSC /trigger0 /trigger1]
and nothing comes out on the outlets.
hmmm
On Tue, Feb 9, 2021 at 1:34 PM Christof Ressi <info@christofressi.com mailto:info@christofressi.com> wrote:
[netreceive] absolutely did NOT work, under any configuration.
[netreceive -u -b] is basically the same as [iemnet/udpreceive], so I don't see what should not work... On 09.02.2021 10:27, Scott R. Looney wrote:
hi Csaba - i have done a fair amount of work with OSC in Unity and i highly recommend the extOSC plugin for this (it's free). https://github.com/Iam1337/extOSC <https://github.com/Iam1337/extOSC> homemade OSC sounds cool but there are a lot of flavors and not all of them play well with PD. i tried a number of options and what worked on receive in PD was the following: [iemnet/udpreceive] (with the port set at loadbang) -> [oscparse] - [list trim] and then [route] to send it places. what worked on send to Unity was this: [oscformat (parameter) (value)] -> [list prepend send] -> [list trim] -> [netsend -u -b] (with the connect message to the address and port on loadbang). i'm sure that might sound kludgy and terrible to experienced folks but the receiving setup works perfectly for me and [netreceive] absolutely did NOT work, under any configuration. haven't tested the sending option but it did work in the past. happy to include a screenshot if you need it. best, scott On Tue, Feb 9, 2021 at 1:09 AM Roman Haefeli <reduzent@gmail.com <mailto:reduzent@gmail.com>> wrote: On Tue, 2021-02-09 at 09:52 +0100, IOhannes m zmölnig wrote: > PS: it would help *tremendously* if you could mention what you are > actually using to receive OSC. But also what you are using for _sending_ OSC messages. I gather you wrote something in Unity. Are you sending in UDP or TCP? If you are unsure what do you use, I'd go for UDP as it less complex and it is much more common in OSC world. Also, switching transport protocols means switching whole concepts. My advice is to stick with one and be clear about what you use. Roman _______________________________________________ Pd-list@lists.iem.at <mailto:Pd-list@lists.iem.at> mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list <https://lists.puredata.info/listinfo/pd-list> _______________________________________________ Pd-list@lists.iem.at <mailto:Pd-list@lists.iem.at> mailing list UNSUBSCRIBE and account-management ->https://lists.puredata.info/listinfo/pd-list <https://lists.puredata.info/listinfo/pd-list>
_______________________________________________ Pd-list@lists.iem.at <mailto:Pd-list@lists.iem.at> mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list <https://lists.puredata.info/listinfo/pd-list>
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Just changed the [oscparse] to [unpackOSC] and the slash is there, sorted out.
On Tue, Feb 9, 2021 at 4:37 PM Csaba Láng langcsaba@gmail.com wrote:
Gents,
the problems is that oscars for some reason does not send the / at the beginning of the osc signal, just 'list trigger0 0' and for this reason the routeOSC does not understand what it has to route.
What do I miss again?
I have [udpreceive 7000] | [oscparse] | [list trim] |[routeOSC /trigger0 /trigger1]
and nothing comes out on the outlets.
hmmm
On Tue, Feb 9, 2021 at 1:34 PM Christof Ressi info@christofressi.com wrote:
[netreceive] absolutely did NOT work, under any configuration.
[netreceive -u -b] is basically the same as [iemnet/udpreceive], so I don't see what should not work...
On 09.02.2021 10:27, Scott R. Looney wrote:
hi Csaba - i have done a fair amount of work with OSC in Unity and i highly recommend the extOSC plugin for this (it's free). https://github.com/Iam1337/extOSC
homemade OSC sounds cool but there are a lot of flavors and not all of them play well with PD. i tried a number of options and what worked on receive in PD was the following:
[iemnet/udpreceive] (with the port set at loadbang) -> [oscparse] - [list trim] and then [route] to send it places.
what worked on send to Unity was this: [oscformat (parameter) (value)] -> [list prepend send] -> [list trim] -> [netsend -u -b] (with the connect message to the address and port on loadbang).
i'm sure that might sound kludgy and terrible to experienced folks but the receiving setup works perfectly for me and [netreceive] absolutely did NOT work, under any configuration. haven't tested the sending option but it did work in the past.
happy to include a screenshot if you need it.
best, scott
On Tue, Feb 9, 2021 at 1:09 AM Roman Haefeli reduzent@gmail.com wrote:
On Tue, 2021-02-09 at 09:52 +0100, IOhannes m zmölnig wrote:
PS: it would help *tremendously* if you could mention what you are actually using to receive OSC.
But also what you are using for _sending_ OSC messages. I gather you wrote something in Unity. Are you sending in UDP or TCP? If you are unsure what do you use, I'd go for UDP as it less complex and it is much more common in OSC world. Also, switching transport protocols means switching whole concepts. My advice is to stick with one and be clear about what you use.
Roman _______________________________________________ Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
_______________________________________________Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list