Hi,
I am interested in running Pd on the Beagleboard under Angstrom linux. For this reason, I have recompiled Pd vanilla on the Beagleboard with support for Alsa and jack audio. The sound drivers on the Beagleboard are not very good. In particular, it is reported on the Beagleboard lists that the audio input drivers may not currently work at all.
So I am currently trying to get Pd to work for audio output only on the Beagleboard. I do not see why this is a problem because I can use mplayer with Alsa to play a wave file out of the sound interface. With mplayer the sound quality is fine and CPU usage is only about 3% or 4%. Furthermore, I can start up a jack audio server as long as I disable the audio inputs using -P # /usr/bin/jackd -d alsa -d hw:0 -r 44100 -P -p 64
However, for the life of me I cannot seem to get Pd to produce sound output. For instance, if I try to start Pd using jack # pd -jack -noadc test.pd & it resets the number of channels to zero, and the CPU usage according to top skyrockets to about 95%. To try to start audio, I have to choose Media|jack, manually put a check in the box "output device 1", and set the channels to 2. Then Pd starts to report, "audio I/O stuck... closing audio".
Or, if I try to start Pd using Alsa directly using # pd -alsa -blocksize 64 -inchannels 0 test.pd & I get "watchdog: signaling pd..." repeatedly, top says Pd uses 95% of the CPU, and there are DIO errors Or if I try # pd -alsa -blocksize 64 -noadc test.pd & or all sorts of other permutations, the result is essentially the same. It doesn't matter whether I am using "omap3beagle (hardware)" or "omap3beagle (plug-in)".
Does anyone have any other ideas for ways in which I might be able to get Pd to produce sound out like mplayer does? I have tried all the startup switch combos that immediately came to mind. Could there be some inherent reason why Pd will not work if zero audio input channels are available?
Thanks!
Ed
Hi,
This should be on pd-list not pd-ot - Pd usage is off-topic on this pd-offtopic list ;) - but replying here too in case you're not on the other one (with pd-list as CC: and reply-to:).
Also see this possibly-related thread, which I haven't checked in detail, so my reply below may be misinformation: http://thread.gmane.org/gmane.comp.multimedia.puredata.general/69002 http://thread.gmane.org/gmane.comp.multimedia.puredata.general/69044 http://thread.gmane.org/gmane.comp.multimedia.puredata.general/69045
On 16/07/10 11:15, Edgar Berdahl wrote:
Furthermore, I can start up a jack audio server as long as I disable the audio inputs using -P # /usr/bin/jackd -d alsa -d hw:0 -r 44100 -P -p 64
Does "mplayer -ao jack" work?
However, for the life of me I cannot seem to get Pd to produce sound output. For instance, if I try to start Pd using jack # pd -jack -noadc test.pd & it resets the number of channels to zero, and the CPU usage according to top skyrockets to about 95%. To try to start audio, I have to choose Media|jack, manually put a check in the box "output device 1", and set the channels to 2. Then Pd starts to report, "audio I/O stuck... closing audio".
Specifying the number of channels is necessary with -jack with some (buggy) Pd versions. I use "pd -jack -channels 2", you don't need "-noadc" because you might want to connect some other jack app (eg mplayer) to Pd.
See if "pd -jack -channels 2" with [adc~]==[dac~] in a patch passes through "mplayer -ao jack" without any problems, is what I would try.
It doesn't matter whether I am using "omap3beagle (hardware)" or "omap3beagle (plug-in)".
I have to use "plug-in" for my USB soundcard in 24bit mode, as Pd doesn't seem to support that sample format natively.
Does anyone have any other ideas for ways in which I might be able to get Pd to produce sound out like mplayer does? I have tried all the startup switch combos that immediately came to mind. Could there be some inherent reason why Pd will not work if zero audio input channels are available?
If Pd is pegging the CPU, maybe something is wrong. Does the beagleboard have a floating point unit (FPU)? If not, it would definitely be better to try an integer-dsp version of Pd (such as pda/pd-anywhere/pd-mobile/whatever it's called these days).
Good luck,
Claude