
=== On the rewind safeguard ===
Result 1: it has been decided that the return value of
snd_pcm_rewindable() is not changed, and the safeguard is returned by a separate function.
It is unlikely to return any value which is safe, it is the responsiability of the application to decide how much can be rewind
If pulseaudio assume 20ms process time is require to process two seconds of audio and sleep for 1980ms, it should not assume cpu have infinite power
what is the purpose of the timestamp ?
Can the timestamp use to predict when will next period update occur if the timestamp is obtained at previous period update ?
Why snd_pcm_rewind cannot return error when application just set stop threshold to buffer size and rewind more than the stop threshold ?
:This would require documentation changes for snd_pcm_rewindable(), though, as it officially no longer returns "safe count of frames which can be rewinded". I have difficulty designing a better wording what the function actually means now.
The word "safe" should be removed