Messages in this thread | | | Date | 8 Jan 2006 02:19:53 -0500 | From | linux@horizon ... | Subject | Re: [OT] ALSA userspace API complexity |
| |
hannu@opensound.com wrote: > To get (say) 10 ms latencies you have to tell the sound subsystem > to allocate to buffer that is smaller than 10 ms. This in turn means that > the application must be able to run it's processing loop within less than 10 > ms with 100.000...0% confidence. This is true regardless of how advanced > or primitive the audio subsystem (API) is.
Only if you need 10 ms latencies 100.000...0% of the time. Which isn't always the case.
The rest of the time, you can do very well by providing a way to supply "tentative" data in advance of need, but cancel it and replace it with better data when something happens... something explodes in a game, or a new person speaks up in an audio conferencing application, or a new MIDI event arrives.
Real-time DSP is a different matter, but the point I'm trying to make is that there is a non-zero set of applications for which additional API festures allow low average latency and guaranteed lack of total dropouts.
Simply writing to /dev/dsp doesn't give you that, but e.g. DMA out of user-space buffers does. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |