[PD] ALSA, HDSP, Jack and Pd the walking dead

Iain Mott mott at reverberant.com
Wed Nov 26 02:20:24 CET 2003


Dear list

After shelving this project for quite some time, have just recently managed to get an hdsp/multiface setup running with ALSA and Jack - a miracle! However I have a couple of problems that i'll list below. I'm using Pd 0.37.0 configured for Jack, Jack 0.90.0,  ALSA 0.9.5 (latest CVS snapshot).

1. When I quit Pd - the connection to jack doesn't seem to exit cleanly - I need to restart Jack.  The actual sequence is this: a) start Jack with a conservative: "jackd -v -d alsa -d hdsp -p 1024 -r 44100" b) start pd with "pd -jack channels 8 -verbose&" c) get the following printout from Jack:

new client: pure_data_0, id = 2 type 2 @ 0x40210000 fd = 12
registered port pure_data_0:input0, offset = 0
registered port pure_data_0:input1, offset = 0
registered port pure_data_0:output0, offset = 77824
registered port pure_data_0:output1, offset = 81920
++ jack_rechain_graph():
client alsa_pcm: internal client, execution_order=0.
client pure_data_0: start_fd=5, execution_order=0.
client pure_data_0: wait_fd=11, execution_order=1 (last client).
-- jack_rechain_graph()
connect alsa_pcm:capture_1 and pure_data_0:input0
++ jack_rechain_graph():
client alsa_pcm: internal client, execution_order=0.
client pure_data_0: start_fd=5, execution_order=0.
client pure_data_0: wait_fd=11, execution_order=1 (last client).
-- jack_rechain_graph()
connect alsa_pcm:capture_2 and pure_data_0:input1
++ jack_rechain_graph():
client alsa_pcm: internal client, execution_order=0.
client pure_data_0: start_fd=5, execution_order=0.
client pure_data_0: wait_fd=11, execution_order=1 (last client).
-- jack_rechain_graph()
connect pure_data_0:output0 and alsa_pcm:playback_1
++ jack_rechain_graph():
client alsa_pcm: internal client, execution_order=0.
client pure_data_0: start_fd=5, execution_order=0.
client pure_data_0: wait_fd=11, execution_order=1 (last client).
-- jack_rechain_graph()
connect pure_data_0:output1 and alsa_pcm:playback_2
++ jack_rechain_graph():
client alsa_pcm: internal client, execution_order=0.
client pure_data_0: start_fd=5, execution_order=0.
client pure_data_0: wait_fd=11, execution_order=1 (last client).
-- jack_rechain_graph()

at this point, everything works fine - Pd produces sound on all cylinders d) quit Pd - no apparent problems here either. Get the following printout from Jack which hints something might be wrong, unkindly labelling Pd a "ZOMBIE":

removing failed client pure_data_0 state = Finished errors = 0
adios senor pure_data_0
*&*&*&*&** senor pure_data_0 - you are a ZOMBIE
DIS-connect pure_data_0:output1 and alsa_pcm:playback_2
DIS-connect pure_data_0:output0 and alsa_pcm:playback_1
DIS-connect alsa_pcm:capture_2 and pure_data_0:input1
DIS-connect alsa_pcm:capture_1 and pure_data_0:input0
++ jack_rechain_graph():
client alsa_pcm: internal client, execution_order=0.
-- jack_rechain_graph()
load = 1.5981 max usecs: 305.000, spare = 22914.000
load = 0.8421 max usecs: 20.000, spare = 23199.000

 e) start Pd again - starts up with a normal command line print out, however no patch windows can be opened and "quit" won't work.  f) Jack by this stage has stalled before first printing out:

new client: pure_data_0, id = 3 type 2 @ 0x40210000 fd = 12
registered port pure_data_0:input0, offset = 0
registered port pure_data_0:input1, offset = 0

g) Pd needs to be killed off with a "kill -9  pid" and Jack with a Control-C - resulting in a segmentation fault.

Anyone else experiencing something like this?

2.The other problem is that Pd's DSP can't be properly switched off. The audio remains on and is heavily broken up. Switching DSP back on again fails to remedy this.

Hope someone can shine some light on this.

Cheers, Iain

_______
Iain Mott
www.reverberant.com



____________________________________________________________
Free 20MB Web Site Hosting and Personalized E-mail Service!
Get It Now At Doteasy.com http://www.doteasy.com/et/




More information about the Pd-list mailing list