--- Jack <[email protected]> schrieb am Do, 5.2.2009:
> Yep, as Roman says try [udpreceive] with [unpackOSC] (OSC
> comme often
> 'on' UDP) or [tcpreceive] with [unpackOSC], if you
> want a service
> with connection. The choice depends if you absolutely need
> to receive
> your data.
> AFAIK, OSCx accepts only UDP protocol.
you cannot use [tcpsend]/[tcpreceive] use together with [packOSC]/[unpackOSC],
since there is a special OSC specification for stream oriented transport layers
such as TCP. OSC assumes that either the transport layer takes care of the
corrent handling of packets (which is the case for udp) and specifies a special
header for OSC packets, when it is transported over a stream oriented protocol
(TCP).
this makes the use of OSC over TCP much more complex. i made some abstractions
for mrpeach to handle this correctly. here a little description about using
them as intended:
OSC OVER TCP
- for unidirectional TCP connections, use:
[packOSCstream] and [tcpsend] for the sender side and
[tcpreceive] and [unpackOSCstream] on the receiver side
- for bidirectional TCP connections, use:
-on the server side:
[tcpsocketserver OSC <port>] with [unpackOSC] for receiving and
[packOSCstream] for sending
-on the client side:
[tcpclient] with [unpackOSCstream] for receiving and [packOSCstream]
for sending
(for the sake of completeness:)
OSC OVER UDP
- for sending: [packOSC] with [udpsend]
- for receiving: [unpackOSC] with [udpreceive]
i know, this sounds all complicated. actually i made those abstractions to get
at least raw functionality, so that transporting OSC over TCP is possible at
all. in order to make things less confusing and more obvious, i guess, i should
add more high level abstractions, that contain the networking and un/packing
stuff in once class.
roman
_______________________________________________
[email protected] mailing list
UNSUBSCRIBE and account-management ->
http://lists.puredata.info/listinfo/pd-list