On Tuesday 17 February 2004 05.27, digger vermont wrote:
Hi Chris,
On Mon, 2004-02-16 at 22:43, Chris Pickett wrote:
digger vermont wrote:
...
Ahh, but
it's not so simple. Jack has an alsa driver. My limited
understanding is that the frames/period must be a power of 2 of the
sample rate. The UA-20 is at 44100 which doesn't work.
Are you really saying that 44.1 kHz doesn't work with ALSA and JACK?
No not quite the UA-20, and usb-audio in general, does work with alsa.
It's Jack and its alsa driver.
Isn't 16-bit 44.1 kHz the CD audio standard?
I'm quite surprised (but
not doubting you) if that's the real reason your UA-20 doesn't work.
As far as I know 44.1 khz is the standard for CD. After too much time
searching it's the reason I came up with. Looking at jack-devel
archives it was a heated debate to have jack use anything that wasn't
n^2. It looked like they decided to support it, but at least the
version of jack I have doesn't yet.
Once again though, I barely understand it myself. I looked for a link
that was straight forward in explaining it, but no luck. Maybe someone
else here can explain it better.
There's a misunderstanding here somewhere. The samplerate you are running at
doesn't have anything to do with the size of the buffers you set up. (Well it
does, but in this discussion it does not.)
44.1khz, e.g. CD-standard is definitely supported by JACK, infact I think
pretty much any samplingrate is supported as long as the CARD/driver can
support it.
Now, in reality most cards only support the standard samplerates e.g. 32khz,
44.1khz, 48khz, 96khz...
If your card has problems at 44.1khz and not at 48khz it's probably a
limitation of the soundcard (those cards DO exist). If it works in windows it
could be because the windows-driver does internal-resampling (very ugly, you
don't want to do that unless it's really necessary).
All emu10k1 cards works like that in a way. They support pretty much any
samplerate, but internally _on_ the card they resample to 48khz since the
"engine" is always running at that speed. Hence, it's always best to run an
emu10k based card at 48khz, all others are suboptimal.
---
Now, the size of the buffers, which normally are limited to ^2 are the amount
of data that the card/driver pre-buffers. You usually have a setting for
number of buffers also.
Lower is often better, causes less latency, but it also puts more strain on
the computer.
USB based soundcards do particularily don't like the ^2 sound-buffers, I think
there is a patch for jack so it supports any buffer size (unless it's already
integrated into jack...which is possible).
Regards,
Robert
Seeya
digger