Granitique
A granular instrument built around the granule~ external by Eric Lyon (part of Lyon Potpourri collection of externals for MAX and pd).
The short story: when Eric Lyon published his Potpourri collection of externals in 2006 I was kind of amazed by them.
Soon I liked "granule~". So after some (looong) time, I decided to build something with it. Here it is:
Attached the zip file containing externals compiled for Win and Linux. No Mac's here around, sorry.
More details (where to find the externals, etc etc.) in the readme within the attachment .
It there are bugs or any bullshits in it please let me know.
It's a PureFun! project, so ... have fun.
Alberto
Edit: few sounds out of it on the output section
Bad lib path? on Gentoo,cant run Androidome/MLR tutorial due to libs.
Hi all,
posted this to the list, but no answer -- no discussion! decided to repost here.
I added pd-overlay from layman, and have installed the following:
[ebuild R ] puredata-base/pd-extended-0.42.5 USE="adaptive alsa
bassemu boids bsaylor creb cxc cyclone earplug ekext ext13 flashserver
flatspace flib freeverb gem2pdp ggee hcs hid iem16 iem_adaptfilt
iem_ambi iem_bin_ambi iem_delay iem_matrix iem_roomsim iem_spec2
iem_tab iemgui iemlib iemmatrix iemxmlrpc jasch_lib loaders mapping
markex maxlib mjlib moocow moonlib motex mrpeach oscx pan pdcontainer
pddp pdogg pdp pdp_opengl pidip pmpd postlude sigpack smlib tof toxy
unauthorized vanilla vbap windowing zexy -debug -fftw -jack
-portaudio" 0 kB [1]
Why the article at gentoo wiki tells me to remove oscx&zexy flags from build? I didn't listened to it though.
With a few tricks, a working alsa/timidity++/puredata chain was set up
and running, to reference for other newcomers:
pdextended -alsa -alsamidi -stderr -verbose -d (config at pastebin:
http://pastebin.com/8p0rcd41 )
The following files were installed to my system: (filelist with paths:
http://pastebin.com/F9yymAPH )
Now, wanted to install Androidome's script,
http://androidome.googlecode.com/files/AndroidomeRouter.pd
Multiple errors came about missing functions (like mrpeach/udpsend),
and in the UI they were outlined in red.
Also the debug log shown that search under multiple paths (none
included /usr/lib/pdextended/extra/mrpeach)
was failed for that functions.
Looks like http://www.mail-archive.com/pd-dev@iem.at/msg04901.html,
but checks more paths.
udpreceive 8080
... couldn't create
tried /usr/local/lib/pd-externals/sprintf.l_ia64 and failed
tried /usr/lib/pd-extended/extra/sprintf.l_ia64 and failed
tried /usr/local/lib/pd-externals/sprintf.pd_linux and failed
tried /usr/lib/pd-extended/extra/sprintf.pd_linux and failed
tried /usr/local/lib/pd-externals/sprintf/sprintf.l_ia64 and failed
tried /usr/lib/pd-extended/extra/sprintf/sprintf.l_ia64 and failed
tried /usr/local/lib/pd-externals/sprintf/sprintf.pd_linux and failed
tried /usr/lib/pd-extended/extra/sprintf/sprintf.pd_linux and failed
tried /usr/local/lib/pd-externals/sprintf.pd and failed
tried /usr/lib/pd-extended/extra/sprintf.pd and failed
tried /usr/local/lib/pd-externals/sprintf.pat and failed
tried /usr/lib/pd-extended/extra/sprintf.pat and failed
sprintf connect %s 8080
... couldn't create
tried /usr/local/lib/pd-externals/mrpeach.l_ia64 and failed
tried /usr/lib/pd-extended/extra/mrpeach.l_ia64 and failed
tried /usr/local/lib/pd-externals/mrpeach.pd_linux and failed
tried /usr/lib/pd-extended/extra/mrpeach.pd_linux and failed
tried /usr/local/lib/pd-externals/mrpeach/mrpeach.l_ia64 and failed
tried /usr/lib/pd-extended/extra/mrpeach/mrpeach.l_ia64 and failed
tried /usr/local/lib/pd-externals/mrpeach/mrpeach.pd_linux and failed
tried /usr/lib/pd-extended/extra/mrpeach/mrpeach.pd_linux and failed
error: [import]: can't load library in 'mrpeach'
... you might be able to track this down from the Find menu.
Which declare's should be added to ~/.pdextended to allow search in
/usr/lib/pdextended/extra/mrpeach and other directories?
Also it seems that
http://docs.monome.org/doku.php?id=dev:pd:simple_mlr uses an old
version of OSC (guess I name the things correctly and dont call fish an aardvark api), function names in code are like dumpOSC instead of packOSC; how to run the script at the link above with 0.42.5, can anyone tell here? (will also bug monome's list).
http://www.pdpatchrepo.info/hurleur/2010-12-28-171813_473x410_scrot.png
Bad lib path? on Gentoo,cant run Androidome/MLR tutorial due to libs.
Hi all,
posted this to the list, but no answer -- no discussion! decided to repost here.
I added pd-overlay from layman, and have installed the following:
[ebuild R ] puredata-base/pd-extended-0.42.5 USE="adaptive alsa
bassemu boids bsaylor creb cxc cyclone earplug ekext ext13 flashserver
flatspace flib freeverb gem2pdp ggee hcs hid iem16 iem_adaptfilt
iem_ambi iem_bin_ambi iem_delay iem_matrix iem_roomsim iem_spec2
iem_tab iemgui iemlib iemmatrix iemxmlrpc jasch_lib loaders mapping
markex maxlib mjlib moocow moonlib motex mrpeach oscx pan pdcontainer
pddp pdogg pdp pdp_opengl pidip pmpd postlude sigpack smlib tof toxy
unauthorized vanilla vbap windowing zexy -debug -fftw -jack
-portaudio" 0 kB [1]
Why the article at gentoo wiki tells me to remove oscx&zexy flags from build? I didn't listened to it though.
With a few tricks, a working alsa/timidity++/puredata chain was set up
and running, to reference for other newcomers:
pdextended -alsa -alsamidi -stderr -verbose -d (config at pastebin:
http://pastebin.com/8p0rcd41 )
The following files were installed to my system: (filelist with paths:
http://pastebin.com/F9yymAPH )
Now, wanted to install Androidome's script,
http://androidome.googlecode.com/files/AndroidomeRouter.pd
Multiple errors came about missing functions (like mrpeach/udpsend),
and in the UI they were outlined in red.
Also the debug log shown that search under multiple paths (none
included /usr/lib/pdextended/extra/mrpeach)
was failed for that functions.
Looks like http://www.mail-archive.com/pd-dev@iem.at/msg04901.html,
but checks more paths.
udpreceive 8080
... couldn't create
tried /usr/local/lib/pd-externals/sprintf.l_ia64 and failed
tried /usr/lib/pd-extended/extra/sprintf.l_ia64 and failed
tried /usr/local/lib/pd-externals/sprintf.pd_linux and failed
tried /usr/lib/pd-extended/extra/sprintf.pd_linux and failed
tried /usr/local/lib/pd-externals/sprintf/sprintf.l_ia64 and failed
tried /usr/lib/pd-extended/extra/sprintf/sprintf.l_ia64 and failed
tried /usr/local/lib/pd-externals/sprintf/sprintf.pd_linux and failed
tried /usr/lib/pd-extended/extra/sprintf/sprintf.pd_linux and failed
tried /usr/local/lib/pd-externals/sprintf.pd and failed
tried /usr/lib/pd-extended/extra/sprintf.pd and failed
tried /usr/local/lib/pd-externals/sprintf.pat and failed
tried /usr/lib/pd-extended/extra/sprintf.pat and failed
sprintf connect %s 8080
... couldn't create
tried /usr/local/lib/pd-externals/mrpeach.l_ia64 and failed
tried /usr/lib/pd-extended/extra/mrpeach.l_ia64 and failed
tried /usr/local/lib/pd-externals/mrpeach.pd_linux and failed
tried /usr/lib/pd-extended/extra/mrpeach.pd_linux and failed
tried /usr/local/lib/pd-externals/mrpeach/mrpeach.l_ia64 and failed
tried /usr/lib/pd-extended/extra/mrpeach/mrpeach.l_ia64 and failed
tried /usr/local/lib/pd-externals/mrpeach/mrpeach.pd_linux and failed
tried /usr/lib/pd-extended/extra/mrpeach/mrpeach.pd_linux and failed
error: [import]: can't load library in 'mrpeach'
... you might be able to track this down from the Find menu.
Which declare's should be added to ~/.pdextended to allow search in
/usr/lib/pdextended/extra/mrpeach and other directories?
Also it seems that
http://docs.monome.org/doku.php?id=dev:pd:simple_mlr uses an old
version of OSC (guess I name the things correctly and dont call fish an aardvark api), function names in code are like dumpOSC instead of packOSC; how to run the script at the link above with 0.42.5, can anyone tell here? (will also bug monome's list).
http://www.pdpatchrepo.info/hurleur/2010-12-28-171813_473x410_scrot.png
Fedora 10 : Gem: can't load library
hi there,
I've got pd running fine for sounds but I'ld like Gem (for a reactable); but I've got this error at pd startup :
Gem: can't load library
I am with Fedora 10,
kernel :
$ uname -a
Linux hal 2.6.27.37-170.2.104.fc10.i686 #1 SMP Mon Oct 12 22:01:53 EDT 2009 i686 i686 i386 GNU/Linux
pd version :
$ yum info pd
Loaded plugins: refresh-packagekit
Available Packages
Name : pd
Arch : i386
Version : 0.39.3
Release : 1.cvs.07.07.23.fc10.ccrma
Size : 5.9 M
Repo : planetccrma
Summary : Real-time patchable audio and multimedia processor.
URL : http://pure-data.sourceforge.net/
License : GPL
Description: Pd gives you a canvas for patching together modules that analyze,
: process, and synthesize sounds, together with a rich palette of
: real-time control and I/O possibilities. Similar to Max
: (Cycling74) and JMAX (IRCAM). A related software package named Gem
: extends Pd's capabilities to include graphical rendering.
Here is what pd tells when started with "pd" :
[import] $Revision: 1.2 $
[import] is still in development, the interface could change!
compiled against Pd version 0.41.4
couldn't open MIDI input device 0
couldn't open MIDI output device 0
opened 0 MIDI input device(s) and 0 MIDI output device(s).
libdir loader $Revision: 1.8 $
compiled on Oct 27 2009 at 17:32:35
compiled against Pd version 0.41.4.extended
Gem: can't load library
libdir_loader: added 'cyclone' to the global objectclass path
libdir_loader: added 'zexy' to the global objectclass path
libdir_loader: added 'creb' to the global objectclass path
libdir_loader: added 'cxc' to the global objectclass path
libdir_loader: added 'iemlib' to the global objectclass path
libdir_loader: added 'list-abs' to the global objectclass path
libdir_loader: added 'mapping' to the global objectclass path
libdir_loader: added 'markex' to the global objectclass path
libdir_loader: added 'maxlib' to the global objectclass path
libdir_loader: added 'memento' to the global objectclass path
libdir_loader: added 'mjlib' to the global objectclass path
libdir_loader: added 'motex' to the global objectclass path
libdir_loader: added 'oscx' to the global objectclass path
libdir_loader: added 'pddp' to the global objectclass path
libdir_loader: added 'pdogg' to the global objectclass path
libdir_loader: added 'pixeltango' to the global objectclass path
libdir_loader: added 'rradical' to the global objectclass path
libdir_loader: added 'sigpack' to the global objectclass path
libdir_loader: added 'smlib' to the global objectclass path
libdir_loader: added 'toxy' to the global objectclass path
libdir_loader: added 'unauthorized' to the global objectclass path
libdir_loader: added 'pan' to the global objectclass path
libdir_loader: added 'freeverb' to the global objectclass path
libdir_loader: added 'hcs' to the global objectclass path
libdir_loader: added 'jmmmp' to the global objectclass path
libdir_loader: added 'ext13' to the global objectclass path
libdir_loader: added 'ggee' to the global objectclass path
libdir_loader: added 'flib' to the global objectclass path
libdir_loader: added 'ekext' to the global objectclass path
libdir_loader: added 'flatspace' to the global objectclass path
pdp: can't load library
pidip: can't load library
And here is part of what pd tells when started with "pd -verbose" :
libdir loader $Revision: 1.8 $
compiled on Oct 27 2009 at 17:32:35
compiled against Pd version 0.41.4.extended
tried ./Gem.l_i386 and failed
tried /usr/share/fonts/bitstream-vera/Gem.l_i386 and failed
tried /usr/lib/pd/extra/cyclone/Gem.l_i386 and failed
tried /usr/lib/pd/extra/zexy/Gem.l_i386 and failed
tried /usr/lib/pd/extra/creb/Gem.l_i386 and failed
tried /usr/lib/pd/extra/cxc/Gem.l_i386 and failed
tried /usr/lib/pd/extra/iemlib/Gem.l_i386 and failed
tried /usr/lib/pd/extra/list-abs/Gem.l_i386 and failed
tried /usr/lib/pd/extra/mapping/Gem.l_i386 and failed
tried /usr/lib/pd/extra/jmmmp/Gem.l_i386 and failed
tried /usr/lib/pd/extra/maxlib/Gem.l_i386 and failed
tried /usr/lib/pd/extra/memento/Gem.l_i386 and failed
tried /usr/lib/pd/extra/mjlib/Gem.l_i386 and failed
tried /usr/lib/pd/extra/markex/Gem.l_i386 and failed
tried /usr/lib/pd/extra/oscx/Gem.l_i386 and failed
tried /usr/lib/pd/extra/pddp/Gem.l_i386 and failed
tried /usr/lib/pd/extra/pdogg/Gem.l_i386 and failed
tried /usr/lib/pd/extra/motex/Gem.l_i386 and failed
tried /usr/lib/pd/extra/pmpd/Gem.l_i386 and failed
tried /usr/lib/pd/extra/rradical/Gem.l_i386 and failed
tried /usr/lib/pd/extra/sigpack/Gem.l_i386 and failed
tried /usr/lib/pd/extra/pixeltango/Gem.l_i386 and failed
tried /usr/lib/pd/extra/toxy/Gem.l_i386 and failed
tried /usr/lib/pd/extra/unauthorized/Gem.l_i386 and failed
tried /usr/lib/pd/extra/pan/Gem.l_i386 and failed
tried /usr/lib/pd/extra/smlib/Gem.l_i386 and failed
tried /usr/lib/pd/extra/hcs/Gem.l_i386 and failed
tried /usr/lib/pd/extra/freeverb/Gem.l_i386 and failed
tried /usr/lib/pd/extra/ggee/Gem.l_i386 and failed
tried /usr/lib/pd/extra/ext13/Gem.l_i386 and failed
tried /usr/lib/pd/extra/flib/Gem.l_i386 and failed
tried /usr/lib/pd/extra/ekext/Gem.l_i386 and failed
tried /usr/lib/pd/extra/Gem.l_i386 and failed
tried /usr/lib/pd/extra/flatspace/Gem.l_i386 and failed
tried /home/zbl/pd-externals/Gem.l_i386 and failed
tried /usr/local/lib/pd-externals/Gem.l_i386 and failed
tried /usr/lib/pd/extra/Gem.l_i386 and failed
tried ./Gem.pd_linux and failed
tried /usr/share/fonts/bitstream-vera/Gem.pd_linux and failed
tried /usr/lib/pd/extra/cyclone/Gem.pd_linux and failed
tried /usr/lib/pd/extra/zexy/Gem.pd_linux and failed
tried /usr/lib/pd/extra/creb/Gem.pd_linux and failed
tried /usr/lib/pd/extra/cxc/Gem.pd_linux and failed
tried /usr/lib/pd/extra/iemlib/Gem.pd_linux and failed
tried /usr/lib/pd/extra/list-abs/Gem.pd_linux and failed
tried /usr/lib/pd/extra/mapping/Gem.pd_linux and failed
tried /usr/lib/pd/extra/jmmmp/Gem.pd_linux and failed
tried /usr/lib/pd/extra/maxlib/Gem.pd_linux and failed
tried /usr/lib/pd/extra/memento/Gem.pd_linux and failed
tried /usr/lib/pd/extra/mjlib/Gem.pd_linux and failed
tried /usr/lib/pd/extra/markex/Gem.pd_linux and failed
tried /usr/lib/pd/extra/oscx/Gem.pd_linux and failed
tried /usr/lib/pd/extra/pddp/Gem.pd_linux and failed
tried /usr/lib/pd/extra/pdogg/Gem.pd_linux and failed
tried /usr/lib/pd/extra/motex/Gem.pd_linux and failed
tried /usr/lib/pd/extra/pmpd/Gem.pd_linux and failed
tried /usr/lib/pd/extra/rradical/Gem.pd_linux and failed
tried /usr/lib/pd/extra/sigpack/Gem.pd_linux and failed
tried /usr/lib/pd/extra/pixeltango/Gem.pd_linux and failed
tried /usr/lib/pd/extra/toxy/Gem.pd_linux and failed
tried /usr/lib/pd/extra/unauthorized/Gem.pd_linux and failed
tried /usr/lib/pd/extra/pan/Gem.pd_linux and failed
tried /usr/lib/pd/extra/smlib/Gem.pd_linux and failed
tried /usr/lib/pd/extra/hcs/Gem.pd_linux and failed
tried /usr/lib/pd/extra/freeverb/Gem.pd_linux and failed
tried /usr/lib/pd/extra/ggee/Gem.pd_linux and failed
tried /usr/lib/pd/extra/ext13/Gem.pd_linux and failed
tried /usr/lib/pd/extra/flib/Gem.pd_linux and failed
tried /usr/lib/pd/extra/ekext/Gem.pd_linux and failed
tried /usr/lib/pd/extra/Gem.pd_linux and failed
tried /usr/lib/pd/extra/flatspace/Gem.pd_linux and failed
tried /home/zbl/pd-externals/Gem.pd_linux and failed
tried /usr/local/lib/pd-externals/Gem.pd_linux and failed
tried /usr/lib/pd/extra/Gem.pd_linux and failed
tried ./Gem/Gem.l_i386 and failed
tried /usr/share/fonts/bitstream-vera/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/cyclone/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/zexy/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/creb/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/cxc/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/iemlib/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/list-abs/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/mapping/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/jmmmp/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/maxlib/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/memento/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/mjlib/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/markex/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/oscx/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/pddp/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/pdogg/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/motex/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/pmpd/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/rradical/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/sigpack/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/pixeltango/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/toxy/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/unauthorized/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/pan/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/smlib/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/hcs/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/freeverb/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/ggee/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/ext13/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/flib/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/ekext/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/flatspace/Gem/Gem.l_i386 and failed
tried /home/zbl/pd-externals/Gem/Gem.l_i386 and failed
tried /usr/local/lib/pd-externals/Gem/Gem.l_i386 and failed
tried /usr/lib/pd/extra/Gem/Gem.l_i386 and failed
tried ./Gem/Gem.pd_linux and failed
tried /usr/share/fonts/bitstream-vera/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/cyclone/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/zexy/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/creb/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/cxc/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/iemlib/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/list-abs/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/mapping/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/jmmmp/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/maxlib/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/memento/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/mjlib/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/markex/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/oscx/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/pddp/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/pdogg/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/motex/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/pmpd/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/rradical/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/sigpack/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/pixeltango/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/toxy/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/unauthorized/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/pan/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/smlib/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/hcs/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/freeverb/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/ggee/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/ext13/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/flib/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/ekext/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/flatspace/Gem/Gem.pd_linux and failed
tried /home/zbl/pd-externals/Gem/Gem.pd_linux and failed
tried /usr/local/lib/pd-externals/Gem/Gem.pd_linux and failed
tried /usr/lib/pd/extra/Gem/Gem.pd_linux and failed
tried ./Gem/Gem-meta.pd and failed
tried /usr/share/fonts/bitstream-vera/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/cyclone/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/zexy/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/creb/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/cxc/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/iemlib/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/list-abs/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/mapping/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/jmmmp/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/maxlib/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/memento/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/mjlib/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/markex/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/oscx/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/pddp/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/pdogg/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/motex/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/pmpd/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/rradical/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/sigpack/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/pixeltango/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/toxy/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/unauthorized/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/pan/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/smlib/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/hcs/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/freeverb/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/ggee/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/ext13/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/flib/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/ekext/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/flatspace/Gem/Gem-meta.pd and failed
tried /home/zbl/pd-externals/Gem/Gem-meta.pd and failed
tried /usr/local/lib/pd-externals/Gem/Gem-meta.pd and failed
tried /usr/lib/pd/extra/Gem/Gem-meta.pd and failed
Gem: can't load library
I can't locate files like Gem-meta.pd or Gem.pd_linux on the computer;
I keep investigating, but any hint is welcome, thanks
Open DMX external?
hi there
i followed the different forum post on getting the enttec open dmx usb to work in ubuntu and pd.
so far i downloaded the dmx4linux-2.6 package
extracting it ok
patching it ok
./configure ok
make gives me this result:
make -C libs all
make[1]: Betrete Verzeichnis '/home/maik/externals/dmx4linux-2.6.1/libs'
cc -c -o open.o open.c
cc -c -o sleep.o sleep.c
ar rcs libdmx4l.a open.o sleep.o
cc -fPIC -c -o open.lo open.c
cc -fPIC -c -o sleep.lo sleep.c
cc -shared -Wl,-soname,libdmx4l.so.2 -o libdmx4l.so.2.5 open.lo sleep.lo -lc
ln -sf libdmx4l.so.2.5 libdmx4l.so.2
ln -sf libdmx4l.so.2 libdmx4l.so
make[1]: Verlasse Verzeichnis '/home/maik/externals/dmx4linux-2.6.1/libs'
make -C tools all
make[1]: Betrete Verzeichnis '/home/maik/externals/dmx4linux-2.6.1/tools'
cc -Ipointer -Wall -O2 -I/home/maik/externals/dmx4linux-2.6.1/include -c -o dmxtest.o dmxtest.c
dmxtest.c: In Funktion »Reader«:
dmxtest.c:65: Warnung: Der Rückgabewert von »fgets«, der mit dem Attribut warn_unused_result deklariert wurde, wird ignoriert
dmxtest.c: In Funktion »Writer«:
dmxtest.c:143: Warnung: Der Rückgabewert von »fgets«, der mit dem Attribut warn_unused_result deklariert wurde, wird ignoriert
cc -L/home/maik/externals/dmx4linux-2.6.1/libs -o dmxtest dmxtest.o -ldmx4l
cc -Ipointer -Wall -O2 -I/home/maik/externals/dmx4linux-2.6.1/include -c -o midi2dmx.o midi2dmx.c
midi2dmx.c: In Funktion »DMXput«:
midi2dmx.c:246: Warnung: Der Rückgabewert von »write«, der mit dem Attribut warn_unused_result deklariert wurde, wird ignoriert
midi2dmx.c:254: Warnung: Der Rückgabewert von »write«, der mit dem Attribut warn_unused_result deklariert wurde, wird ignoriert
midi2dmx.c: In Funktion »reset«:
midi2dmx.c:297: Warnung: Der Rückgabewert von »write«, der mit dem Attribut warn_unused_result deklariert wurde, wird ignoriert
cc -L/home/maik/externals/dmx4linux-2.6.1/libs -o midi2dmx midi2dmx.o -ldmx4l
cc -Ipointer -Wall -O2 -I/home/maik/externals/dmx4linux-2.6.1/include -c -o uart_dmxd.o uart_dmxd.c
cc -L/home/maik/externals/dmx4linux-2.6.1/libs -o uart_dmxd uart_dmxd.o -ldmx4l
cc -Ipointer -Wall -O2 -I/home/maik/externals/dmx4linux-2.6.1/include -c -o dmxconsole.o dmxconsole.c
dmxconsole.c:19:20: Fehler: curses.h: No such file or directory
dmxconsole.c: In Funktion »mask«:
dmxconsole.c:138: Warnung: Implizite Deklaration der Funktion »erase«
dmxconsole.c:141: Warnung: Implizite Deklaration der Funktion »attrset«
dmxconsole.c:142: Warnung: Implizite Deklaration der Funktion »move«
dmxconsole.c:143: Fehler: »COLS« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:143: Fehler: (Jeder nicht deklarierte Bezeichner wird nur einmal aufgeführt
dmxconsole.c:143: Fehler: für jede Funktion in der er auftritt.)
dmxconsole.c:144: Warnung: Implizite Deklaration der Funktion »addch«
dmxconsole.c:148: Fehler: »LINES« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:161: Warnung: Implizite Deklaration der Funktion »printw«
dmxconsole.c: In Funktion »values«:
dmxconsole.c:199: Fehler: »COLS« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:207: Warnung: Implizite Deklaration der Funktion »mvprintw«
dmxconsole.c:249: Fehler: »LINES« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:263: Warnung: Implizite Deklaration der Funktion »attron«
dmxconsole.c:263: Fehler: »A_REVERSE« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:268: Warnung: Implizite Deklaration der Funktion »addstr«
dmxconsole.c: In Funktion »crossfade«:
dmxconsole.c:362: Warnung: Implizite Deklaration der Funktion »refresh«
dmxconsole.c: In Funktion »load«:
dmxconsole.c:404: Warnung: Der Rückgabewert von »fread«, der mit dem Attribut warn_unused_result deklariert wurde, wird ignoriert
dmxconsole.c: In Funktion »changepalette«:
dmxconsole.c:470: Warnung: Implizite Deklaration der Funktion »init_pair«
dmxconsole.c:470: Fehler: »COLOR_BLACK« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:470: Fehler: »COLOR_CYAN« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:471: Fehler: »COLOR_GREEN« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:472: Fehler: »COLOR_WHITE« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:473: Fehler: »COLOR_BLUE« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:474: Fehler: »COLOR_RED« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:476: Fehler: »COLOR_YELLOW« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:492: Warnung: Implizite Deklaration der Funktion »COLOR_PAIR«
dmxconsole.c:503: Fehler: »A_REVERSE« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:504: Fehler: »A_BOLD« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:505: Fehler: »A_NORMAL« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c: In Funktion »calcscreengeometry«:
dmxconsole.c:536: Fehler: »COLS« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:543: Fehler: »LINES« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c: Auf höchster Ebene:
dmxconsole.c:566: Fehler: expected »=«, »,«, »;«, »asm« or »__attribute__« before »*« token
dmxconsole.c: In Funktion »pointerevent«:
dmxconsole.c:613: Fehler: »KEY_UP« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:616: Fehler: »KEY_DOWN« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:620: Fehler: »KEY_LEFT« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:623: Fehler: »KEY_RIGHT« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:627: Fehler: »KEY_PPAGE« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:630: Fehler: »KEY_NPAGE« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c: Auf höchster Ebene:
dmxconsole.c:636: Fehler: expected »)« before »a«
dmxconsole.c: In Funktion »cleanup«:
dmxconsole.c:648: Fehler: »w« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:650: Warnung: Implizite Deklaration der Funktion »resetty«
dmxconsole.c:651: Warnung: Implizite Deklaration der Funktion »endwin«
dmxconsole.c: In Funktion »main«:
dmxconsole.c:793: Fehler: »w« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:793: Warnung: Implizite Deklaration der Funktion »initscr«
dmxconsole.c:800: Warnung: Implizite Deklaration der Funktion »savetty«
dmxconsole.c:801: Warnung: Implizite Deklaration der Funktion »start_color«
dmxconsole.c:802: Warnung: Implizite Deklaration der Funktion »noecho«
dmxconsole.c:803: Warnung: Implizite Deklaration der Funktion »raw«
dmxconsole.c:804: Warnung: Implizite Deklaration der Funktion »keypad«
dmxconsole.c:804: Fehler: »TRUE« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:811: Fehler: »mmask_t« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:811: Fehler: expected »;« before »m«
dmxconsole.c:812: Warnung: Implizite Deklaration der Funktion »mousemask«
dmxconsole.c:812: Fehler: »BUTTON1_PRESSED« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:812: Fehler: »BUTTON2_PRESSED« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:812: Fehler: »BUTTON3_PRESSED« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:812: Fehler: »BUTTON4_PRESSED« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:812: Fehler: »REPORT_MOUSE_POSITION« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:812: Fehler: »m« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:813: Warnung: Implizite Deklaration der Funktion »mouseinterval«
dmxconsole.c:855: Warnung: Implizite Deklaration der Funktion »wgetch«
dmxconsole.c:961: Fehler: »KEY_PPAGE« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:979: Fehler: »KEY_NPAGE« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:1012: Fehler: »KEY_HOME« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:1018: Fehler: »KEY_END« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:1026: Fehler: »KEY_RIGHT« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:1031: Fehler: »KEY_LEFT« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:1036: Fehler: »KEY_DOWN« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:1047: Fehler: »KEY_UP« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:1059: Fehler: »KEY_IC« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:1066: Fehler: »KEY_DC« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:1129: Warnung: Implizite Deklaration der Funktion »KEY_F«
dmxconsole.c:1129: Fehler: case-Marke reduziert nicht auf Ganzzahlkonstante
dmxconsole.c:1133: Fehler: case-Marke reduziert nicht auf Ganzzahlkonstante
dmxconsole.c:1137: Fehler: »KEY_MOUSE« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:1139: Fehler: expected »=«, »,«, »;«, »asm« or »__attribute__« before »oldevent«
dmxconsole.c:1139: Fehler: »oldevent« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:1140: Fehler: »MEVENT« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:1140: Fehler: expected »;« before »event«
dmxconsole.c:1141: Warnung: Implizite Deklaration der Funktion »getmouse«
dmxconsole.c:1141: Fehler: »event« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:1141: Fehler: »OK« nicht deklariert (erste Benutzung in dieser Funktion)
dmxconsole.c:1141: Warnung: Implizite Deklaration der Funktion »meventcmp«
dmxconsole.c:1184: Warnung: Implizite Deklaration der Funktion »resizeterm«
make[1]: *** [dmxconsole.o] Fehler 1
make[1]: Verlasse Verzeichnis '/home/maik/externals/dmx4linux-2.6.1/tools'
make: *** [all] Fehler 2
any suggestions? something with dmxconsole?
i'm really not into all the programming stuff so i basically need everything step by step.
hope someone can help
greets uisel
Compiling externals on OSX
this is the simplest way to compile externals on osx 10.5 and pd-0.41-4
(really rude method)
-
install Xcode
-
write your external.c or find one already done
-
open finder -> applications -> pd-package. open package.
Then go to Resources -> extra.
there are some built in externals folders
-make a copy of one of these folders and rename the same as your external.
-inside this folder delete all the files except the makefile and copy your external.c there.
-open the makefile and rewrite the fields NAME and CSYM with the name of your external (if sou wrote a tilde external -> see one of the built in as fiddle~)
Save -
ok, now come back to "extra" folder, open makefile and change at first row "pd_linux" with "d_fat"
Save -
open terminal and type:
cd /Applications/Pd-0.41-4.app/Contents/Resources/extra/your-external
make -
copy the external in "extra" folder or where it needs
it's done.
Pd-extended on amd64
sorry for my last post, i must ahve been in a strange state of mind and gave wrong info, too, now i corrected it.
to compile pd-extended, you need to foolow those instructions:
http://puredata.info/docs/developer/Debian
later, those could be helpful too:
http://puredata.info/docs/developer/PdExtendedBuildSystem
http://puredata.info/docs/developer/
and at the end those inside: ../Pd-0.XX.X-extended/packages/linux_make/README where very usefull.
unfortunately there libdir loaders of 0.40 version won't compile,
pidip, OSCx and other externals won't compile neither, so I ended up hacking the Makefile in ../Pd-0.XX.X-extended/externals and ../Pd-0.XX.X-extended/packages.
At the end I had a succsesful installation, but as the compilation of libdir failed, all the externeals couldn't load, leaving me with a normal Pd / Gem / Pdp installation, basically. I tried to compile libdir against the former version "Pd-0.39.3-extended", and that worked. the compiled libdir.pd_linux however was not accepted by Pd-0.40.0-extended.
compiling Pd-0.39.3-extended's libdir.c against Pd-0.40.0-extended.spew out the same errors as before.
So, for me, it does not work...
I ended up again removing the whole thing and followed the intruction of myo.
(thanks myo),
followed this "howto install 32-bit .deb packages on 64-bit":
http://www.unixtutorial.org/2008/03/install-32-bit-deb-packages-on-64-bit/
and this one about how to install missing 32-bit libs using getlibs:
http://ubuntuforums.org/showthread.php?t=474790
some packeges couldn't be found by apt-get, so I had to get them here:
http://packages.ubuntu.com/
by typing the missing libs in the searchfield,
downloading the i386 versions,
opening those .deb packages with "Archive Manager" and browsing to data.tar.gz/./usr/lib/
selecting all the files and extracting them to /usr/lib32/
this worked pretty good.
pidip is working,
all externals are loaded,
thanks very much!
..wow, looks beautiful, and works very nice, thanks again
Gridflow compile ubuntu hardy
I'm trying to compile Gridflow on Ubuntu 8.04 Hardy on a Pentium4 laptop.
Has any one succesfully comiled on ubuntu?
I have been able to get so far using the synaptic package manager to find most missing things, (when I do it again on my desktop I'll write down all the packages I needed and post it here for others) but I am stuck on a couple for things that I can't find info on in the forum. I have PD-extended which I installed using the deb installer.
When I run ./configure I get
This is the GridFlow 0.9.2 configurator
[gcc3] GNU C++ Compiler 3 (or 4): --------------------------------------------> found
[stl] C++ Standard Template Library: -----------------------------------------> found
[gcc64] GNU C++ in 64-bit mode: ----------------------------------------------> missing (runtime error)
[pentium] Pentium-compatible CPU: --------------------------------------------> found
[mmx] MMX-compatible CPU (using NASM): ---------------------------------------> missing (return false)
[x11] X11 Display Protocol: --------------------------------------------------> found
[x11_shm] X11 acceleration by shared memory (XSHM plugin): -------------------> found
[sdl] Simple Directmedia Layer (experimental support): -----------------------> found
[objcpp] GNU/Apple ObjectiveC++ Compiler: ------------------------------------> missing (where is objc/Object.h ?)
[quartz] Apple Quartz/Cocoa Display: -----------------------------------------> disabled (would need objcpp)
[aalib] Ascii Art Library: ---------------------------------------------------> found
[netpbm] NetPBM 10 Library: --------------------------------------------------> found
[jpeg] JPEG Library: ---------------------------------------------------------> found
[png] PNG Library <libpng12/png.h>: ------------------------------------------> found
[videodev] Video4linux Digitizer Driver Interface: ---------------------------> found
[mpeg3] HeroineWarrior LibMPEG3 <libmpeg3/libmpeg3.h>: -----------------------> found
[quicktimeapple] Apple's QuickTime: ------------------------------------------> missing (gcc compilation error)
[quicktimehw] Plaum's LibQuickTime (try #1) <lqt/quicktime.h>: ---------------> missing (gcc compilation error)
[quicktimehw] Plaum's LibQuickTime (try #1) <quicktime/quicktime.h>: ---------> missing (where is quicktime/quicktime.h ?)
[quicktimehw] Plaum's LibQuickTime (try #2) <lqt/quicktime.h>: ---------------> missing (gcc compilation error)
[quicktimehw] Plaum's LibQuickTime (try #2) <quicktime/quicktime.h>: ---------> missing (where is quicktime/quicktime.h ?)
[puredata] PureData (or DesireData): -----------------------------------------> found
[desiredata] DesireData: -----------------------------------------------------> missing (gcc: error: 'gobj_subscribe' was not declared in this scope)
[gem09] PureData GEM (source code) with m_holdname: --------------------------> missing (gcc: error: 'm_holdname' is not a member of 'CPPExtern')
[gem08] PureData GEM (source code) without m_holdname: -----------------------> missing (gcc compilation error)
[opencv] Intel OpenCV: -------------------------------------------------------> missing (gcc compilation error)
[fftw] FFTW (Fastest Fourier Transform in the West): -------------------------> found
What I can't figure out is:
I have a Pentium 4 with mmx, I have installed NASM and I found a package called intel2gas but it didn't help. No idea what to try next.
I have a quicktime.h in /usr/include/lqt so not sure why it doesn't find it. I haven't edited the configure file and the INCLUDE_PATH is already set to /usr/include.
Where do I need to put the gem source files? I downloaded the gem files and I have the src folder with all the source files in it...
Whats the benefit of getting openCV? Do I need the dev packages too?
And I have gobjc++4.2 installed which says its a GNU Objective C++ compiler, is this what I need, + how do I get gridflow to find it?
I had a look at the configure file but couldn't make sense of it.
Please can any one offer any hints? I really want the '#labeling' thing I read about here http://createdigitalmotion.com/2007/01/18/open-source-motion-tracking-with-multiblob-for-gridflowpd/
ps the article says to get pure:dyne, but it doesn't have the latest version of gridflow but I do know its getting a big update and switching to debian installer soon
Using arrays and signals in a same external
@obiwannabe said:
Laurent, if C++ is your preferred language and you want a flex_ible t_emplate for externals that incorporates a bit of cross platform forethought then hava a look at Flext.
Hi Obiwannabe,
In fact I do not have really a preference between both langages, as I used both in my current projects, even if I have seen and made more C code, for the moment.
I am most "fluent" to develop with either matlab or scilab, either max/msp or pure data, but, now, to go from prototypes to powerfull and easier to distribute and use applications, I have been considering working with either C (DSP processing) or C++ (rather easier to build a GUI, according to my capabilities and available time) as I want to deliver cross platform applications: Objective-C is smart with Apple Developpers Tools but I am not sure it is really easy to perform cross platform applications with it.
As I mainly develop prototypes and physical models, play with ugly sets of equations, I do not have a great experience with these three languages. It may change in the following months.
And, as I need to succeed in finishing an external by sunday evening for a potential real time demonstration on monday 05/19 mrining, I have taken the first way to develop externals I found and thought I may be able to manage within less 2 weeks, a week ago!
Yet, I am going to have a quick look at Flext, today if possible, in order to determine if it is easier for me to perform the job by sunday using it rather than using C-coded externals.
My constraints are to be able to:
-receive two arrays, one sample, one circular buffer index as inputs;
- perform a simple addition between both arrays, one being multiplied by the input sample value, using a cricular buffer for the second one array;
- send the current sample output, the updated circula buffer array and an updated version of its index as output;
- make the whole external work for samples given by a 44.1 kHz and 16-bit wavefile, in real time!
I also need to be able to develop, at least another external, to change one of the arrays, in perceptive real time, to use it as input ( the first array, not the circular buffer) of the first external. And, being able to plot the modified array to show what it looks like could a nice improvement.
This array would be a caricatural time-varying impulse response, maybe, with changes related to the positions of the source and the receiver (within a time-varying ?) shoe-box room, taking into account several orders of reflexion.
I may know how to make the inner C code for DSP processing, I "just" need to encapsulate them in a pd external, enough efficient to present a temporal convolution algorithm without FFT, working yet in real time without (perceptible) latency with as long as possible "impulse reponses" (around 350 ms I guess or hope for the first version).
So, here are the rules, I "just" have to use the right external coding tool as I must have finished by the end of this week...
And, I will distribute the externals and their related code as soon as I will have time to write a good documentation, above all for the English version, which is not my native tongue, as you may have noticed 8;O).
Sincerly yours,
Laurent Millot
Using arrays and signals in a same external
@ClaudiusMaximus said:
Generally, it's useful to look at the source of Pd and other externals to see how its done. I recommend looking at pd-0.41-4/src/d_array.c lines 686-839 ([tabsend~] and [tabreceive~]).
Note that in pd-0.41-4 the array access API has changed: the old API was not 64-bit safe. If you have issues with that change, I can show you how I handled it in my code.
Hi, ClaudiusMaximus
Thanks a lot for your answers.
I have already worked with the "HOWTO write an external for Pure Data" and have some difficulties with, notably (I put the first compiled version of the external in a subfolder to use it within pd, while trying to see the code differences compiling the library elsewhere, without noticing any diference, obviously...), a potential bug in the code for span~.
-
within the text:
typedef struct _pan_tilde {
t_object x_obj;
t_sample f_pan;
t_float f;
} t_pan_tilde; -
within the code:
typedef struct _pan_tilde {
t_object x_obj;
t_sample f_pan;
t_sample f; // Here is the difference: t_sample rather than t_float (better for the use?)
} t_pan_tilde;
I have made a first partial version (I have not translated the whole appendix) of a translation in French, adding some information about cross compilation, found in another external example.
I will consider to post it, if interesting, as soon as the translation would be enough good according to me. I will try to quote some potential mistyping errors to the author and german remaining formulation within next weeks, as, for the moment, I must first achieve several projects.
I have also studied another external code processing audio signals and begun to study the "m_pd.h" file and the d_array.c file or d_delay.c (quite fastly as I was in a hurry last night). I was searching for quoted versions and for another simple examples.
And I did not think, at this time, to see the code for tabsend~ or tabreceive~ functions: when you have the head in the handlebars, you do not see further than the end of your nose....
So, thanks a lot for the advice.
At this time I will just consider data in 16, 24 fixed or 32 floating point bits, so, I would not need the 64-bit representation: I do not use the FFT, working with an alternative potentially fast temporal method for convolution, needing far less requantization operations and then a less precise format for a more satisfying result.
But I could be quite interested in the future to consider 64-bit operations, so I would be happy to se how you manage this in your code.
I must have finished the related external(s) before next sunday as I will present the algorithm at the Audio Engineering Convention on monday 2008/05/19 at 10 am and I really would like to be able to perform a real time demonstration of the algortihm using pd...
I have much more experience with scilab and matlab prototyping, and I have been working since mid-january, with two assistants (doing a great and heavy work), to perform a C++ cross platform port of a scilab prototype of a perceptive audio scenes analyser I have designed, using the temporal convolution algorithm. So, I have been studying how to realise pd externals to have light but powerful real time demonstrators.
I will publish the sources (with a LGPL-like licence) and offer the binaries (Max OS 10.4 and 10.5.x for PPC or Intel-based processors, Windows XP and Vista at least, maybe Linux if its works directly) for downloading by the end of the year, once the documentation and the code will be enough satisfying and operational.
Once again, thanks a lot for your help. I will give feedback information and, maybe, ask for some more help, in next days... ;O)
Sincerly yours,
Laurent Millot