On Fri, Feb 01, 2008 at 03:02:40PM -0500, Richard Geddes wrote: > You are correct... latest release Ubuntu 7.10 comes with PA 0.9.6. > I'll look into getting the latest version of PA. > > My goal was to use PA as a replacement for esound server... I'd like to > be able to record/mix different sound sources (midi, analog, sound from > files (mp3, wav, ogg, etc)) and be able to create different file > formats, including sound delivered in flash (I'm not a fan of flash as > it consumes alot of cpu time, but it is in demand). I played with jackd > for a while and was impressed with it's technical capabilities, but > unfortunately, I haven't found a way to play flash sound through > jackd... that is, flash in firefox. I found a how-to in the Ubuntu > forum that seemed to patch together a solution the involved PA: > > http://ubuntu-utah.ubuntuforums.org/showthread.php?t=548178 If you want to record midi and do other "pro-audio" stuff, then jack is the way to go. If you also want to do "desktop" stuff (like have every media player just work), then the best solution in my experience is to run pulseaudio on top of jack (like instructed in that link). A summary of what you'll have to do at minimum: - Get pulseaudio version >= 0.9.7 - Remove device loading from /etc/pulse/default.pa and add the jack modules instead - Edit /etc/security/limits.conf as instructed in the link - Edit /etc/pulse/daemon.conf to enable realtime scheduling - Run jackd with -R parameter (i.e. in realtime mode) - Other stuff that I have forgot ;) If you are going to record midi, that probably means that you have some midi instrument that you want to be able to play live. That requires quite low latency. That's completely possible to achieve. Unfortunately it may require extensive tuning (mostly kernel, but you may need to tweak irq priorities as well). Vanilla kernels are AFAIK getting better and better regarding latency, so first try with your current kernel. The actual latency is controlled by jackd parameters -n and -p (read man jackd). If your kernel isn't able to provide low enough latency, you'll get drop-outs and xruns (the former being the audible consequence of the latter). If you have problems with setting pulseaudio to work in combination with jack, or anything else pulseaudio related, then feel free to ask further questions. If it turns out that your system needs latency-tuning, here are a few kernel options you could try without compiling an -rt patched kernel: CONFIG_NO_HZ=y CONFIG_HZ_1000=y CONFIG_HZ=1000 CONFIG_HIGH_RES_TIMERS=y (AFAIK this requires a rather recent kernel) There may be others that I'm not aware of. These are beneficial to pulseaudio regardless of what kind of setup you need (jack or not). If you end up needing a patched kernel, here's the wiki of the patchset: http://rt.wiki.kernel.org/index.php/Main_Page If you have further questions about latency stuff, I recommend searching the linux-audio-user at linuxaudio.org list archives, and if that doesn't help, then send questions there. That's a very good list to subscribe to anyway, if you're going to do any audio work on Linux. And then a note on flash. Flash requires a thing called libflashsupport due to Adobe's plugin's bugginess. AFAIK it will be packaged eventually, but currently you have to compile it yourself. The link you gave refers to an outdated version of the "thing". More recent information is available at http://www.pulseaudio.org/wiki/PerfectSetup#FlashPlayer9. In short: get the one that's hosted at git.0pointer.de, not the revolutionlinux one. An alternative to the flash plugin is http://keepvid.com, which allows you to download the .flv files in Youtube and several other supported services. Then just play the file on your favourite media player. Keepvid.com is enough for me, but YMMV. Note the white button saying "Drag this button..." etc. It talks about a "links toolbar" but bookmarking the script does the same thing. > Question: PA, esound, jackd, etc.. are all called sound servers, > implying that you can replace one with another... like apache vs iis.... I'd say that being a sound server implies only that the server is somehow capable of software mixing. > is the main difference that they use different client/server > communication protocols? The main difference of pulseaudio and jack is their different designs and goals. Maybe the communication protocols somehow reflect that, I don't know. Esound's distinctive feature is being dead, I don't know much else about that thing. -- Tanu Kaskinen