Re: realtime adjustable delay with alsa in full-duplex capture and playback

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



John Donson wrote:
> I want to realize an application that features a constant but realtime
> adjustable

So, "_not_ constant".  :)

> delay between playback and capture

PulseAudio does this.

> I know this can be accomplished by proper buffer length settings for
> a fixed delay. But it should be adjustable to use it for other purpose
> as well. Unfortunately I am not able to find a detailed diagram how
> alsa uses its  ring-buffer and how interrupts do affect delay as well.

When you write into a specific position in the buffer where the hardware
has just finished playing, the time until the hardware plays this data
is the buffer length.  This is the maximum latency.

Interrupts (at period boundaries) are used to wake up the application
when it waits for more free space to become available.

PulseAudio reduces latency by not filling the entire buffer.  It ignores
period boundaries and wakes up by using its own timer.


Regards,
Clemens

------------------------------------------------------------------------------
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1
_______________________________________________
Alsa-user mailing list
Alsa-user@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-user


[Index of Archives]     [ALSA Devel]     [Linux Audio Users]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]

  Powered by Linux