[LAD] Running pulseaudio with jack

Patrick Shirkey pshirkey at boosthardware.com
Fri Aug 7 02:30:23 UTC 2009


Hi,

For those of you who are not subscribed to LAU, yesterday I had time to 
run a test to see how easy and stable it was to run pulseaudio with jack 
on Fedora 11.

I had a few problems at first but after upgrading to pulseaudio-0.9.16 
(latest dev version) I was able to successfully connect Pulseaudio to 
Jack and play tracks with Totem. It was still a little unstable as I was 
able to bring pulse down a few times while using the 
gnome-volume-control applet. However jack was not affected by pulse dying.

I did this on a standard Fedora kernel with a 2 core intel and 4 GB RAM. 
My system load without any audio playing it was around 10%. While 
playing a track with Totem through PA into Jack was around 20%. This 
could be due to the visuals that were running at the same time. I was 
able to listen to a complete 30 minute dj mix without any dropouts while 
still using my system as usual. I am going to run a full day test of 
audio playback today.

I hope that this has conclusively proven that pulseaudio and jack can 
exist together and that we are very close to having a complete desktop 
solution.

I don't think any distros are currently shipping pulseaudio-0.9.16 but 
they will in the next release cycle.

IMO all that is needed to complete the system is a sane default 
configuration which we can all agree on and officially recommend to the 
packagers.

- We have now have a couple of scripts on the net that can be used to 
load module-null-sink/source to PA, starts jack and then load 
module-jack-sink/source to PA. These can be added to qjackctl easily but 
not system wide as several video apps have hooks to load jack if it is 
not already running. I am doing this now as it is the quickest solution.

- The dbus method for jack2 is also useful if it can be given the above 
logic instead of or aswell as the current which is to disable PA while 
jack is running.

- Another option is that PA listens for jack and handles the sink/source 
loading internally and automatically.

- The final option I can see is a seperate app that can replace jackd, 
that loads the null sink/source, starts the real jackd and then loads 
the jack-sink/source. It would also have to take care of the reverse 
when jack is stopped.


I think it would be good if we can get some consensus on the officially 
endorsed approach.




Cheers.

-- 
Patrick Shirkey
Boost Hardware Ltd




More information about the Linux-audio-dev mailing list