Hello

Can someone please explain to me the use of snd_pcm_status_get_delay()

If a buffer size is 16384, and avail=6384, should delay therefore equil 
10000 ? In all cases ?

I have found that in  SND_PCM_STATE_RUNNING, delay = buffer_size - avail.
I have found that in  SND_PCM_STATE_PREPARED, delay = 0

This causes problems. As one fills the buffer in SND_PCM_STATE_PREPARED 
, delay stays at 0, but when the buffer fills enough and moves to state 
 SND_PCM_STATE_RUNNING, the delay value suddenly jumps to delay = 
buffer_size - avail.

This causes problems with applications that need "delay" to be as 
accurate as possible at all times.
Is this a bug in alsa09, or should I ignore "delay" and just use the 
"buffer_size - avail" value.

Obviously, in  SND_PCM_STATE_XRUN, delay is invalid.with avail values 
sometimes becoming > buffer_size!
so should not be used.

Cheers
James




-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to