You probably tried using the nice command,
maybe with most processes +10 and with -10 for
your music processes, yes?
On Sun, 2012-12-02 at 13:00 -0800, Ken Restivo wrote:
OK, I know I've been using Linux audio for 6 years
now, and gigged and recorded with it extensively for most of those, yadda yadda. But it
seems I've had an embarassingly huge hole in my knowledge the whole time.
I was under the impression that, in order to use real time priorities/permissions and
Ingo kernels, it was required for the process ITSELF early in the main() routine of its
source code, to make some system calls to claim RT priority. In fact, I specifically
remember reading or even writing source code in C which did that (probably based on JACK
sample code). I don't recall the name of the syscall, but it was something obvious and
well-documented.
Also, I remember that it was also required that the software behave properly in order to
be real-time capable, something about callbacks taking some predictable amount of time. Or
perhaps that was only a JACK requirement.
Why am I asking these dumb-ass questions now? Because I've been playing around with
Liquidsoap and Airtime for some radio stations, and I'm obsessed with getting them as
rock-solid on cheap/free/old hardware as I'd been able to get with my gigging and
studio synths.
It physically pains me to hear audio stuttering because Apache is running on the same
box. It seems an outrage to me. Shouldn't happen. Ever. I used to record and mix
multi-track songs in Ardour with tons of soft-synths WHILE A KERNEL COMPILE WAS GOING ON
THE SAME MACHINE without a single glitch. I expect no less.
So I asked on the Liquidsoap list, and I got only shrugs and a pointer to the Gentoo page
in response (why? I have no idea. I use Debian, and that's irrelevant to the question
at hand anyway.).
So what's the deal? Is there a way to give Ingo-approved preemptive RT priority to
things that aren't real-time apps and aren't specifically architected for that?
What, if anything, would break?
And, if I wanted to hack Liquidsoap (which would require learning ML, which wouldn't
be a bad thing to know anyway), is it even possible to get it RT-capable, or are there
low-level C system calls required in order to make that work?
Sorry for the long and obscure question, but it's been bothering me for a while, and
I figured someone here would know the answer, or where I might find it.
Thanks.
-ken
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user(a)lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-user