We can also vary the exact USB frame time.
With UHCI 1.1 USB Hosts there is the SOF Register. 
It is setable from 0 to 255, the default being 127.
Using this SOF-Register, we can set the actual USB Frame Rate from 
((12000 - 127) / 12000)ms to ((12000 + 128) / 12000)ms. That is about -/+ 1%:
More than enough to adjust the USB-Frame rate to let us get 44(44100) or 48
(48000) Sample Frames everyy USB Frame.
It really works here already with the us428: The trick is:
We first make the USB-Frame longer until we capture 1 Sample Frame more  45 
(for 44100). then the USB-Frame is shortened until we capture only 43 Sample 
Frames for one USB Frame. and so on. 
If we use a period size of multiples of 44 (for 44100) then :
- Latency is almost at its best (only 1/44 less than optimal.
- User Prog Scheduling Jitter is minimized.
- Alsas keeps constant Period size.

cheers,
Karsten




-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to