Re: [linux-audio-user] Which kernel for low latency and kernel 2.6.1-mm# problems

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-user] Which kernel for low latency and kernel 2.6.1-mm# problems
From: Glenn McCord (clari_player_AT_paradise.net.nz)
Date: Thu Jan 22 2004 - 00:05:08 EET


Andrew Morton wrote:

>Takashi Iwai <tiwai_AT_suse.de> wrote:
>
>
>>a few months ago before 2.6.0 was released, i tested the audio latency
>>with different kernels. the result was shown in the internal
>>conference in SUSE, and i totally forgot to release the data until now
>>:)
>>maybe it will show you other aspects.
>>
>>here you can find the slides
>>
>> http://www.alsa-project.org/~iwai/audio-latency.pdf
>>
>>
>
>OK. How is the suse 2.4 kernel patched in these tests? A form of the
>low-latency patch?
>
>I made some latency improvements to 2.6's ext3 recently, so it should be
>performing significantly better than it was in 2.6.0-test9.
>
>I'll do some more checks on 2.6 but as far as I know, it's performing OK.
>If Jack is indeed running with realtime policy I'd be suspecting that
>something other than the normal spends-too-long-in-the-kernel problem is
>occurring.
>
>Could someone give me a really simple description of how to obtain Jack,
>and how to get it going sufficiently to demonstrate these problems?
>
>Thanks.
>
>
>
>
Go to |/usr/src/linux/include/linux| (or wherever you have your kernel
sources) and in the file |capability.h| change the line

#define CAP_INIT_EFF_SET to_cap_t(~0&~CAP_TO_MASK(CAP_SETPCAP)
to
#define CAP_INIT_EFF_SET to_cap_t( ~0 )
and the line
#define CAP_INIT_INH_SET to_cap_t(0)
to
#define CAP_INIT_INH_SET to_cap_t( ~0 )

Also make sure CONFIG_TMPFS is turned on.

You must then recompile your kernel.

put this in /etc/fstab (you may have to ceate the folders)
shmfs /dev/shm shm defaults 0 0|
none /tmp/jack tmpfs defaults 0 0
||none /mnt/ramfs tmpfs defaults 0 0|

Get jack at http://jackit.sourceforge.net/
do a ./configure --with-default-tmpdir=/mnt/ramfs --enable-capabilities
make
make install

http://jackit.sourceforge.net/docs/faq.php is a good explanation of
everything anyway..

I start jack as a user with
$jackstart -R -v -d alsa -d hw:0
but if the compatability.h wasn't altered then you can start jack as
root with
#jackd -R -v -d alsa -d hw:0

There's an explanation of commnad line options at
http://www.djcj.org/LAU/jack/

I think that's everything.

I got xruns by opening programs but my audio tools are rezound and
ardour and they won't record much longer that 20 seconds before jack xruns.

I was the original poster. I found that if I used the 2.4.2 kernel with
the low-latency patch from
http://www.zip.com.au/~akpm/linux/schedlat.html#downloads and then
installed jack as above, I would get NO xruns using kde, ardour (has
multiple windows) and a network going. I've tried 2.6, 2.6.1 and patched
to -mm4 and mm5 but I get xruns within even fluxbox by doing the most
labour-unintensive computer tasks.

The -p option extends the buffer (is that the word?). Well, I didn't
need it with the 2.4.2 but in the 2.6 I made it -p 8192. It only
extended the xrun relief by a couple of seconds though. (ie it did jack all)

If you could throw any light on this then that would be absolutely great.
||


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Thu Jan 22 2004 - 00:10:07 EET