[PD] create/access udp sockets from within pd

Ivica Bukvic ico at vt.edu
Fri Mar 1 13:44:13 CET 2013


You can also try disis_netsend/receive which is nearly identical to Pd's
netsend/receive, except that it provides additional features including UDP
broadcast, msg queueing etc., including a different way for dispatching
received messages that has (at least on pd-l2ork) solved freezing gui
issues.
On Mar 1, 2013 7:16 AM, "Roman Haefeli" <reduzent at gmail.com> wrote:

> On Fre, 2013-03-01 at 08:53 +0100, IOhannes m zmölnig wrote:
> > On 02/28/2013 17:33, Matthias Blau wrote:
> > >>
> > >> checkout iemnet's [udpclient].
> > >>
> > >
> > > already have tried that - without success. I only get
> > > "udpclient:status: sent 4", nothing else.
> > >
> > > If I understand it correctly, udpclient listens on the specified port
> as
> > > well, so if the remote udp server gets the request, say on port 6667
> and
> > > answers on another port (e.g., 60303), how can udpclient receive this
> > > answer?
> >
> > because you are misunderstanding how udpclient works.
> > each network connection (UDP or TCP/IP) consists of two ports, a sending
> > port and a receiving port. the receiving port (on the server side) is
> > usually fixed, it's the port you connect to.
> > but on the sending side (the client) you also open a port, which is
> > normally chosen randomly from all the currently available ports on the
> > system.
> > this port can be used to get data back from server to client.
> >
> > [udpsend] will silently discard all data on the sender port, but
> > [udpclient] will not.
> >
> >
> > >
> > > Just to make sure we are talking about the same version: I am on
> > > pd-extended 0.43.1 (20120430) under Ubuntu 12.04 64bit.
> > >
> >
> > dunno, i have neither.
> > but you can test whether [udpclient] works as expected by doing the
> > following:
> > - run a simple udp-server from the commandline (the following uses
> > netcat to Listen on Udp Port 7777)
> > $ nc -u -l -p 7777
> > - start Pd (in another terminal), load iemnet, and do
> > [connect localhost 7777(
> > |
> > [udpclient]
> > |
> > [print foo]
> >
> > then send something (e.g. "64 64 10") via [udpclient].
> > you should see whatever you sent appear on the console running netcat,
> e.g.:
> > @@
> >
> > now, in the very console running netcat type something "e.g. "foo") and
> > hit return. Pd should print something like "102 111 111 10".
> >
> >
> > if the iemnet bundled with PdX is broken, you can install the debian
> > packages, by simply running
> > $ sudo aptitude install pd-iemnet
>
> Why are you assuming it is broken in Pd-extended?
>
> Actually, it seems to have glitches. With above setup, right after
> connecting [udpclient] to the netcat server, you cannot send anything
> from netcat to the client. Only after sending at least one packet from
> [udpclient], it flushes all messages it has received from the server
> since the connection. From this point in time, the communication works
> instantly both ways.
>
> This is on Linux (Ubuntu 12.04) with most recent iemnet and Pd compiled
> from source, but also with Pd-0.43.3-extended.
>
> When using netcat as UDP client, I can start sending packets from the
> server immediately.
>
> Roman
>
>
> _______________________________________________
> Pd-list at iem.at mailing list
> UNSUBSCRIBE and account-management ->
> http://lists.puredata.info/listinfo/pd-list
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20130301/e2beace5/attachment-0001.htm>


More information about the Pd-list mailing list