[LAU] usb and jack

Martin Homuth-Rosemann linuxaudio at cryptomys.de
Sun Jan 24 06:52:13 EST 2010


hollunder at gmx.at schrieb:
> On Sun, 25 Oct 2009 18:03:09 +0800
> Ray Rashif <schivmeister at gmail.com> wrote:
>
>   
>> 2009/10/25 <hollunder at gmx.at>
>>
>>     
>>> On Sun, 25 Oct 2009 11:40:16 +0100
>>> rosea grammostola <rosea.grammostola at gmail.com> wrote:
>>>
>>>       
>>>> Hi,
>>>>
>>>> I found this info:
>>>>
>>>>
>>>>       "USB and jack
>>>>
>>>> The USB interrupt period is 1 msec. To be able to get lower
>>>> latency with jack when using it with an USB device, you have to
>>>> use a setting as 48kHz and 3 period. It will makes the buffer
>>>> time a multiple of 1 msec and you will get a much lower latency
>>>> as with the default 2 period. Additionaly, loading the
>>>> snd-usb-audio with the parameter "nrpacks=1" will give you a much
>>>> lower latency (for this to work take care that
>>>> CONFIG_USB_BANDWIDTH is not set and CONFIG_USB_DYNAMIC_MINORS is
>>>> not set in your running kernel)."
>>>>
>>>>
>>>>
>>>>         
>>> http://proaudio.tuxfamily.org/wiki/index.php?title=Howto_RT_Kernel#USB_and_jack
>>>       
>>>> 1) is this info still up-to-date?
>>>> 2) how do I exactly take care of this:
>>>> "Additionaly, loading the snd-usb-audio with the parameter
>>>> "nrpacks=1" will give you a much lower latency (for this to work
>>>> take care that CONFIG_USB_BANDWIDTH is not set and
>>>> CONFIG_USB_DYNAMIC_MINORS is not set in your running kernel)"
>>>>
>>>> (Debian (based) systems)
>>>>
>>>> \r
>>>>         
>>> In my experience 48kHz/3 periods works a bit more stable, the
>>> possible latency settings in jack don't really change, 64 frames is
>>> still the lower boundary and unstable.
>>>
>>> But I haven't heard about  2)  and am very curious about this
>>> myself.
>>>
>>> Philipp
>>>       
>> 2) Edit /etc/modprobe.conf or /etc/modprobe.d/modprobe.conf with:
>>
>> options snd-usb-audio nrpacks=1
>>
>> And to "make sure". you have to have the kernel options changed. make
>> menuconfig, and press "/" to search for the two options.
>>
>> Philipp: we already dealt with that one but _without_ substantial
>> cause-and-effect http://bugs.archaudio.org/task/5
>>     
>
> Thanks, you're right, CONFIG_USB_DYNAMIC_MINORS is not set and CONFIG_USB_BANDWIDTH doesn't
> even show up.
>
> I'll try to load with that option tomorrow and see how it goes.
>
> Philipp
> _______________________________________________
> Linux-audio-user mailing list
> Linux-audio-user at lists.linuxaudio.org
> http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user
>   
Hi,

don't know where I found this on the net that setting the buffer size 
for usb audio a multiple of 1 ms duration, e.g. for 48000 kHz p=48 will 
allow very low latencies. I tried this today with the latest rt kernel 
and the cheap burr brown usb codec pcm2902 used in my behringer uca202:

options snd_usb_audio nrpacks=1

/usr/bin/jackd -R -P79 -dalsa -dhw:1,0 -r48000 -p48 -n2 -Xseq


It runs smoothly on a centrino laptop (pentium M, cpu freq stepping 
between 0.6 and 1.6 GHz).
I built a plain vanilla 2.6.31.12 with the latest rt20 patch applied, 
debs available my repo - read more:
http://www.sidux.com/index.php?name=PNphpBB2&file=viewtopic&t=9396&start=87
Imho the latest rt20 is much more robust than rt19 - I like it!

Maybe some of the jack and usb gurus (Paul?, Clemens?) can confirm the 
-p48 -n2 setting.

Ciao Martin



More information about the Linux-audio-user mailing list