6 Jul
2010
6 Jul
'10
7:03 a.m.
Hi all, I have noticed when an Xrun occurs, the bytes between the hw_ptr and appl_ptr are not copied when both hw and appl pointers are reset in snd_pcm_prepare(). Consider the following parameters: buffer_size : 22352 period_size : 1016 period_time : 23038 tstamp_mode : NONE period_step : 1 avail_min : 1016 period_event : 0 start_threshold : 22352 stop_threshold : 22352 silence_threshold: 0 silence_size : 0
In case snd_pcm_playback_avail() is less than stop threshold but greater than 0, then these bytes are missing after Xrun prepare and start stage.
Is my analysis correct? If so how do we ensure correct behaviour ie byte accuracy after Xrun.
Thanks, M.