I’m willing to bet this has been suggested before, but I thought it couldn’t hurt to bring it up here.
I’m a Linux user, so most would argue that the natrual choice for using Renoise would be to install and configure JACK. I don’t really have a use for JACK other than Renoise, and would like to be able to use Renoise without JACK. These days, many Linux desktops are being integrated with PulseAudio (GNOME has been moving towards making it a standard part of the desktop, it seems).
It would be awesome if Renoise could integrate with PulseAudio. Simpling being PulseAudio-aware would be enough. At the moment, I have to shut down PulseAudio and give Renoise dominion over my audio hardware. JACK doesn’t solve this problem for me either; virtually all of my desktop software is configured to use PulseAudio. Managing multiple sound servers seems silly. I could route JACK through PulseAudio, but that leads to latency issues.
Will Renoise ever have PulseAudio support? PulseAudio is becoming commonplace enough that I think it’s a feature worth implementing.
it of course depends on how much work is needed to support PulseAudio. Personally, I have no idea, but I think it should not be a lot (at least, if I was the creator of an audio server, I would at least give the developers the ability to access the server I/O with a couple of calls).
I understand the various reasons for which PA is not the most loved resource for audio makers, but still I would find useful to use Renoise with PulseAudio while under Linux
the problem is that, if you are using PulseAudio (for example: you are watching a Flash video in Firefox) and then open Renoise with ALSA, Renoise will tell you that ALSA is being used and cannot use it.
viceversa, if you are using Renoise with ALSA and open an application which uses PulseAudio, the results can vary from the application being silent, to application not starting or crashing, to Renoise getting silent or stuck
I run Mandriva with Pulseaudio for about everything except Renoise which needs Jack. I’ve solved this issue by routing PA through Jack. In qjackctl, put these entries under Setup->Options->Scripting:
Execute Script on Startup:
killall pulseaudio
Execute Script after Startup:
pulseaudio -L “module-jack-sink channels=2” -D
Execute Script on Shutdown
killall pulseaudio
Execute Script after Shutdown
pulseaudio -D
This way, Pulseaudio is always running regardless if you have Jack running or not. It also lets you for instance record audio in Renoise from sources using Pulseaudio as output, just route it in with qjackctl.
As I mentioned before, I know that routing PulseAudio through JACK is possible, but I’ve seen some folks on the Ubuntu forums (the distro I’m running) complain about latency issues.
More importantly, I think this hurts Renoise’s ability to run out-of-the-box on Linux, since it requires installing a (second!) sound server not commonly found in a fresh desktop installation (some variants include it, like Ubuntu Studio). It would be very nice if I simply started Renoise and it worked, without requiring me to start or stop a sound server or dedicate my audio hardware to a single application. It should show up in my desktop’s volume mixer just like every other application.
I’m sure that implementing PulseAudio support is not trivial, but I do find it to be a worthwhile feature, especially as GNOME and popular Linux distros adopt PulseAudio as a standard.
Thanks for the helpful tip, Johan. I may have to give that a try before PA support comes to fruition, if ever.
I’d like to suggest an alternate route…Fedora 12 + Planet CCRMA repositories.
More about Planet CCRMA here. In a nutshell, Planet CCRMA provides a repository of packages for Fedora and CentOS audio/video workstations. CCRMA is Stanford University’s Center for Computer Research in Music and Acoustics.
I understand the concern about having two sound servers but it has to be emphasized that JACK is a “low-latency” sound server which we all agree is necessary for professional work. What Planet CCRMA brings to Fedora 12 is a sizeable repository of A/V applications and, most importantly, a realtime (rt) version of the kernel. You get JACK, synths, sequencers, libraries, audio programming environments, etc. Planet CCRMA provides a ready-to-install YUM repo config that once installed, allows for the installation of all of the packages in its repository with whichever command-line or GUI tool that one prefers. As an example of the convenience of using this repo, installing the Planet CCRMA version of the JACK package will also take care of configuring the system’s limits.conf to ensure that the user has the proper permissions to run applications with real-time priority.
On Fedora 12, I have no issues with Pulseaudio and JACK co-existing; apparently changes were made to both sound servers for smooth control hand-offs . A quote from a posting on Fedora-music-list:
One of the main things that caught my eye about Renoise was the cross-platform support; it runs great on my F12 and Windows workstations for the right price. I’d imagine that if one makes an investment in Renoise in consideration of running it on a Linux workstation then one would also want to tweak and tune that workstation for the best performance. A Linux rt kernel combined with a low-latency sound server gives you that, regardless of the distribution being used. I recommened Fedora because that is what Planet CCRMA is built around and they have a great community behind it (and a pretty good university as its host too).
I will be happy to help whomever wants to give the above combo a try.
To add an example, I have Native Instruments’ Kontakt Player and Kore Player applications (plus the free sound packs they have been giving away) running on Fedora 12. I use JACK combined with a utility named vsthost (available from the dssi-vst package) to run Windows native VSTs (not all work but NI’s does and they are some of the best around). Because Renoise also works with JACK, I can set up a line-in device and record the VST as a sample that I can reuse whenever I like. Yes, it takes a bit of setup but not much and a lot of the dirty work is taken care of by using the Planet CCRMA repos. In addition, once you have JACK setup, you can save the configuration and reload it when needed thereby not having to repeat the initial work.
Again, willing to help whomever needs it. You CAN have your Linux workstaiton.
Pulse audio was not a common fresh out of the box soundserver when Renoise came to Linux. (Ubuntu was late 7.04 early 7.10 i believe, Pulse audio became a default since 8.04 or 8.10?)
Definitely. In fact, I’d say JACK support is and will continue to be much more important, but PulseAudio support would still be very nice. I guess what I was getting at is that PulseAudio is becoming more prevalent and will continue to do so (which I think is ultimately a very good thing), making it a worthwhile sound server to support.
Please don’t get me wrong here; I think Renoise has wonderful Linux support that I’m very grateful for (much better than other cross platform applications I’ve used). It’s also great that Renoise even supports talking to multiple audio APIs at the user’s discretion in the first place (e.g., ALSA or JACK). Very awesome! I just think it would be very convenient and even a bit more user friendly if it could make sense of a PulseAudio-enabled desktop.
I’m not sure the CCRMA is applicable for me, empolo, but thanks for pointing it out! It looks like a great resource. I’ve used Fedora in the past. If I get a workstation running it again, I’ll take a look at the CCRMA repos.