[alsa-devel] ALSA full-duplex questions
Hi, I have a very low-latency full-duplex application where I would like up- and downlink to be synchronous, i.e. period events happen at the same time for capture and playback. This would minimize the number of wake-ups and enable the platform to go to low power. I thought snd_pcm_link() would enable this coupling between capture and playback, but it looks like it only buids a list of linked devices and uses this information for state transitions. Said transitions don't look quite atomic by looking at the code. The alsa-lib/test/latency.c code even tries to measure the difference between the number of samples read/written. In short the question is whether I can force a synchronous behavior from my application, or if I need to roll up my sleeves and fix the drivers to see this behavior? Another solution I thought of would be to disable the period events on one of the devices, and handle both devices at once when one period event fires. But I am not sure you can disable all events for an audio device (was on the wish list of Lennart, not sure if it became reality?) Thanks for your feedback. - Pierre
participants (1)
-
pl bossart