[PD] netsend~/netreceive~

Roman Haefeli reduzierer at yahoo.de
Mon Jan 11 18:10:47 CET 2010


Hi 

I cannot help you debug [netsend~] and [netreceive~], but there are
probably other ways to achieve the same.

I just saw a commit from mrpeach to pd-svn. It seems, that he added
[udpsend~] and [udpreceive~] to his 'net' section.

Alternatively, you could built similar functionality yourself with the
help of zexy's [pack~] and [unpack~] and the non-signal [udpsend]  and
[udpreceive]. Of course, this would mean, that you would have to
implement the mux/demux stuff yourself (convert each sample to two or
more 8bit values, pack several channels into one stream).

Roman



On Sat, 2010-01-09 at 15:12 -0500, Michal Seta wrote:
> Hi all,
> 
> Happy new decade!
> 
> I have been playing around with the above captioned pair of externs.
> I grabbed them from the audioscape project .
> 
> I intend to use them for jamming over WiFi (and it has to be WiFi).
> My first tests are rather promising but there are some glitches.
> [netreceive~] tends to crash pd with a lot of underflows.  This seems
> to happen mostly whenever WiFi signal strength is not optimal (in the
> 50-60% range).  For the moment, the idea is that the jamming happens
> using netbooks running linux.  5 players will send mono signals to a
> server which will play back the 5 signals directly and send back mono
> signals, one to each player.  Currently I am testing on an Acer Aspire
> One (atom 1.6), Ubuntu Karmic and pd-extended 0.42.5.
> 
> Also, I have compiled those externals for MacOSX but they seem to not
> be working correctly, all I get is sporadic short bursts of audio (on
> Mac receiving side).  The mac was wired but not to the same network (2
> linux machines, one on WiFi and antoher on wired, also different
> networks, can keep going for several minutes before one of them
> crashes).
> 
> I am running netsend~/receive~ in UDP mode.
> 
> Below are backtraces.
> 
> Thanks for any insight, tips etc.
> 
> ./MiS
> 
> gdb backtrace:
> #0  0x00b36422 in __kernel_vsyscall ()
> #1  0x002644d1 in raise () from /lib/tls/i686/cmov/libc.so.6
> #2  0x00267932 in abort () from /lib/tls/i686/cmov/libc.so.6
> #3  0x0029aee5 in ?? () from /lib/tls/i686/cmov/libc.so.6
> #4  0x002a4ff1 in ?? () from /lib/tls/i686/cmov/libc.so.6
> #5  0x002a83eb in ?? () from /lib/tls/i686/cmov/libc.so.6
> #6  0x002a9039 in calloc () from /lib/tls/i686/cmov/libc.so.6
> #7  0x080b9e0d in getbytes (nbytes=16) at m_memory.c:24
> #8  0x080c6600 in sys_queuegui (client=0x864fad8, glist=0x8627a88,
>     f=0x80b2c20 <vu_draw_update>) at s_inter.c:815
> #9  0x080b313d in vu_ft1 (x=0x864fad8, peak=-97) at g_vumeter.c:623
> #10 0x080b6516 in pd_typedmess (x=0x864fad8, s=0x8521d60, argc=1,
>     argv=0xbfffef30) at m_class.c:792
> #11 0x080b682f in pd_vmess (x=0x864fad8, sel=0x8521d60, fmt=0x8105b2f "f")
>     at m_class.c:855
> #12 0x080b951e in inlet_float (x=0x6, f=-97) at m_obj.c:100
> #13 0x080b8f3f in obj_list (x=0x864fad8, s=0x8111b70, argc=2, argv=0x864f8f0)
>     at m_obj.c:270
> #14 0x080b89ff in outlet_list (x=0x864f938, s=0x8111b70, argc=2,
>     argv=0x864f8f0) at m_obj.c:431
> #15 0x080e4a3e in pack_bang (x=0x864f8a0) at x_connective.c:718
> #16 0x080b8c37 in outlet_float (x=0x864f840, f=-97) at m_obj.c:397
> #17 0x080e5ce1 in trigger_list (x=0x864f800, s=0x0, argc=1, argv=0xbffff0d8)
>     at x_connective.c:979
> #18 0x080e5fb7 in trigger_float (x=0x864f800, f=-97) at x_connective.c:1025
> #19 0x080b8c37 in outlet_float (x=0x864f550, f=-97) at m_obj.c:397
> #20 0x080b8c37 in outlet_float (x=0x864f450, f=0) at m_obj.c:397
> #21 0x08059af2 in env_tilde_tick (x=0x864f370) at d_ctl.c:671
> #22 0x080c33bc in sched_tick (next_sys_time=925163520) at m_sched.c:374
> #23 0x080c3803 in m_pollingscheduler () at m_sched.c:484
> #24 m_mainloop () at m_sched.c:560
> #25 0x080c64c9 in sys_main (argc=2, argv=0xbffff344) at s_main.c:304
> #26 0x080ce16b in main (argc=2, argv=0xbffff344) at s_entry.c:32
> 
> 
> And this at the moment it crashed:
> 
> *** glibc detected *** /usr/bin/pd: malloc(): memory corruption
> (fast): 0x086df120 ***
> ======= Backtrace: =========
> /lib/tls/i686/cmov/libc.so.6[0x2a4ff1]
> /lib/tls/i686/cmov/libc.so.6[0x2a83eb]
> /lib/tls/i686/cmov/libc.so.6(__libc_calloc+0xa9)[0x2a9039]
> /usr/bin/pd(getbytes+0x1d)[0x80b9e0d]
> ======= Memory map: ========
> 00110000-001d2000 r-xp 00000000 08:05 1661634    /usr/lib/libasound.so.2.0.0
> 001d2000-001d6000 r--p 000c1000 08:05 1661634    /usr/lib/libasound.so.2.0.0
> 001d6000-001d7000 rw-p 000c5000 08:05 1661634    /usr/lib/libasound.so.2.0.0
> 001d7000-001d9000 r-xp 00000000 08:05 1221747
> /lib/tls/i686/cmov/libdl-2.10.1.so
> 001d9000-001da000 r--p 00001000 08:05 1221747
> /lib/tls/i686/cmov/libdl-2.10.1.so
> 001da000-001db000 rw-p 00002000 08:05 1221747
> /lib/tls/i686/cmov/libdl-2.10.1.so
> 001db000-001dd000 r-xp 00000000 08:05 1385642    /usr/lib/libXdamage.so.1.1.0
> 001dd000-001de000 rw-p 00001000 08:05 1385642    /usr/lib/libXdamage.so.1.1.0
> 001de000-001e5000 r-xp 00000000 08:05 1665962    /usr/lib/libSM.so.6.0.0
> 001e5000-001e6000 r--p 00006000 08:05 1665962    /usr/lib/libSM.so.6.0.0
> 001e6000-001e7000 rw-p 00007000 08:05 1665962    /usr/lib/libSM.so.6.0.0
> 001e7000-001eb000 r-xp 00000000 08:05 1664871    /usr/lib/libXtst.so.6.1.0
> 001eb000-001ec000 r--p 00004000 08:05 1664871    /usr/lib/libXtst.so.6.1.0
> 001ec000-001ed000 rw-p 00005000 08:05 1664871    /usr/lib/libXtst.so.6.1.0
> 001ed000-00224000 r-xp 00000000 08:05 1221679    /lib/libdbus-1.so.3.4.0
> 00224000-00225000 r--p 00036000 08:05 1221679    /lib/libdbus-1.so.3.4.0
> 00225000-00226000 rw-p 00037000 08:05 1221679    /lib/libdbus-1.so.3.4.0
> 00226000-0022a000 r-xp 00000000 08:05 1662885    /usr/lib/libXdmcp.so.6.0.0
> 0022a000-0022b000 rw-p 00003000 08:05 1662885    /usr/lib/libXdmcp.so.6.0.0
> 0022b000-0022f000 r-xp 00000000 08:05 1665042    /usr/lib/libXxf86vm.so.1.0.0
> 0022f000-00230000 r--p 00003000 08:05 1665042    /usr/lib/libXxf86vm.so.1.0.0
> 00230000-00231000 rw-p 00004000 08:05 1665042    /usr/lib/libXxf86vm.so.1.0.0
> 00231000-00235000 r-xp 00000000 08:05 1665814    /usr/lib/libXfixes.so.3.1.0
> 00235000-00236000 r--p 00003000 08:05 1665814    /usr/lib/libXfixes.so.3.1.0
> 00236000-00237000 rw-p 00004000 08:05 1665814    /usr/lib/libXfixes.so.3.1.0
> 00237000-00239000 r-xp 00000000 08:05 1385644    /usr/lib/libXinerama.so.1.0.0
> 00239000-0023a000 rw-p 00001000 08:05 1385644    /usr/lib/libXinerama.so.1.0.0
> 0023a000-00378000 r-xp 00000000 08:05 1221709
> /lib/tls/i686/cmov/libc-2.10.1.so
> 00378000-00379000 ---p 0013e000 08:05 1221709
> /lib/tls/i686/cmov/libc-2.10.1.so
> 00379000-0037b000 r--p 0013e000 08:05 1221709
> /lib/tls/i686/cmov/libc-2.10.1.so
> 0037b000-0037c000 rw-p 00140000 08:05 1221709
> /lib/tls/i686/cmov/libc-2.10.1.so
> 0037c000-0037f000 rw-p 00000000 00:00 0
> 0037f000-00385000 r-xp 00000000 08:05 1661834    /usr/lib/libv4l2.so.0
> 00385000-00386000 r--p 00005000 08:05 1661834    /usr/lib/libv4l2.so.0
> 00386000-00389000 rw-p 00006000 08:05 1661834    /usr/lib/libv4l2.so.0
> 00389000-00391000 r-xp 00000000 08:05 1667003    /usr/lib/libdrm.so.2.4.0
> 00391000-00392000 r--p 00007000 08:05 1667003    /usr/lib/libdrm.so.2.4.0
> 00392000-00393000 rw-p 00008000 08:05 1667003    /usr/lib/libdrm.so.2.4.0
> 00393000-00394000 r-xp 00000000 08:05 2285962
> /usr/lib/pd/extra/libdir.pd_linux
> 00394000-00395000 r--p 00000000 08:05 2285962
> /usr/lib/pd/extra/libdir.pd_linux
> 00395000-00396000 rw-p 00001000 08:05 2285962
> /usr/lib/pd/extra/libdir.pd_linux
> 00398000-003d6000 r-xp 00000000 08:05 1664250    /usr/lib/libpulse.so.0.12.0
> 003d6000-003d7000 r--p 0003d000 08:05 1664250    /usr/lib/libpulse.so.0.12.0
> 003d7000-003d8000 rw-p 0003e000 08:05 1664250    /usr/lib/libpulse.so.0.12.0
> 003d8000-00502000 r-xp 00000000 08:05 1661788    /usr/lib/libX11.so.6.2.0
> 00502000-00503000 ---p 0012a000 08:05 1661788    /usr/lib/libX11.so.6.2.0
> 00503000-00504000 r--p 0012a000 08:05 1661788    /usr/lib/libX11.so.6.2.0
> 00504000-00506000 rw-p 0012b000 08:05 1661788    /usr/lib/libX11.so.6.2.0
> 00506000-00507000 rw-p 00000000 00:00 0
> 00507000-00512000 r-xp 00000000 08:05 1664126    /usr/lib/libvorbisenc.so.2.0.3
> 00512000-00513000 r--p 0000a000 08:05 1664126    /usr/lib/libvorbisenc.so.2.0.3
> 00513000-00603000 rw-p 0000b000 08:05 1664126    /usr/lib/libvorbisenc.so.2.0.3
> 00603000-0060c000 r-xp 00000000 08:05 1664873    /usr/lib/liba52-0.7.4.so
> 0060c000-0060d000 rw-p 00008000 08:05 1664873    /usr/lib/liba52-0.7.4.so
> 0060d000-0060e000 rw-p 00000000 00:00 0
> 0060f000-00616000 r-xp 00000000 08:05 1222043
> /lib/tls/i686/cmov/librt-2.10.1.so
> 00616000-00617000 r--p 00006000 08:05 1222043
> /lib/tls/i686/cmov/librt-2.10.1.so
> 00617000-00618000 rw-p 00007000 08:05 1222043
> /lib/tls/i686/cmov/librt-2.10.1.so
> 00618000-00633000 r-xp 00000000 08:05 1662988    /usr/lib/libdv.so.4.0.3
> 00633000-00634000 r--p 0001b000 08:05 1662988    /usr/lib/libdv.so.4.0.3
> 00634000-00636000 rw-p 0001c000 08:05 1662988    /usr/lib/libdv.so.4.0.3
> 00636000-00642000 rw-p 00000000 00:00 0
> 00642000-00664000 r-xp 00000000 08:05 1384686    /usr/lib/libmpeg3.so.1.5.4
> 00664000-00669000 rw-p 00022000 08:05 1384686    /usr/lib/libmpeg3.so.1.5.4
> 00669000-0067c000 rw-p 00000000 00:00 0
> 0067c000-006ea000 r-xp 00000000 08:05 1662248    /usr/lib/libGLU.so.1.3.070600
> 006ea000-006eb000 r--p 0006e000 08:05 1662248    /usr/lib/libGLU.so.1.3.070600
> 006eb000-006ec000 rw-p 0006f000 08:05 1662248    /usr/lib/libGLU.so.1.3.070600
> 006ec000-00716000 r-xp 00000000 08:05 1665071    /usr/lib/libftgl.so.2.1.3
> 00716000-00718000 r--p 00029000 08:05 1665071    /usr/lib/libftgl.so.2.1.3
> 00718000-00719000 rw-p 0002b000 08:05 1665071    /usr/lib/libftgl.so.2.1.3
> 00719000-00721000 r-xp 00000000 08:05 1664038
> /usr/lib/libaviplayavutil-0.7.so.0.0.47
> 00721000-00722000 rw-p 00007000 08:05 1664038
> /usr/lib/libaviplayavutil-0.7.so.0.0.47
> 00722000-00724000 rw-p 00000000 00:00 0
> 00724000-00727000 r-xp 00000000 08:05 1664188
> /usr/lib/libaviplayvidix-0.7.so.0.0.47
> 00727000-00728000 rw-p 00002000 08:05 1664188
> /usr/lib/libaviplayvidix-0.7.so.0.0.47
> 00728000-00729000 rw-p 00000000 00:00 0
> 00729000-0072b000 r-xp 00000000 08:05 2284751
> /usr/lib/pd/extra/flatspace/pmpd.pd_linux
> 0072b000-0072c000 r--p 00002000 08:05 2284751
> /usr/lib/pd/extra/flatspace/pmpd.pd_linux
> 0072c000-0072d000 rw-p 00003000 08:05 2284751
> /usr/lib/pd/extra/flatspace/pmpd.pd_linux
> 0072e000-00745000 r-xp 00000000 08:05 1661426    /usr/lib/libICE.so.6.3.0
> 00745000-00746000 r--p 00016000 08:05 1661426    /usr/lib/libICE.so.6.3.0
> 00746000-00747000 rw-p 00017000 08:05 1661426    /usr/lib/libICE.so.6.3.0
> 00747000-00749000 rw-p 00000000 00:00 0
> 00749000-00765000 r-xp 00000000 08:05 1221738    /lib/libgcc_s.so.1
> 00765000-00766000 r--p 0001b000 08:05 1221738    /lib/libgcc_s.so.1
> 00766000-00767000 rw-p 0001c000 08:05 1221738    /lib/libgcc_s.so.1
> 00767000-0077f000 r-xp 00000000 08:05 1664186
> /usr/lib/libaviplayswscale-0.7.so.0.0.47
> 0077f000-00780000 rw-p 00018000 08:05 1664186
> /usr/lib/libaviplayswscale-0.7.so.0.0.47
> 00780000-00789000 r-xp 00000000 08:05 1666209    /usr/lib/libXi.so.6.0.0
> Program received signal SIGABRT, Aborted.
> 
> _______________________________________________
> Pd-list at iem.at mailing list
> UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list






More information about the Pd-list mailing list