[pulseaudio-tickets] [Bug 103103] The client has not a chance to provide data, when absolute offset is used in a stream without prebuffering and underrun happend for long time

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Fri Oct 27 17:02:21 UTC 2017


https://bugs.freedesktop.org/show_bug.cgi?id=103103

--- Comment #5 from mkid.dev at gmail.com ---
Scenario for the problem based on attached images:
a. when after 3 seconds of playback, the application stops provide data,
writable_size increased due to request send by PA server,
b. when after 30 seconds, when the application wants to start provide data the
pa_stream_writable_size() returns 2639040 bytes,
c. the application writes 2639040 bytes in less than 5 ms without
pa_stream_write() error,
d. after 3 ms from last write, "overflow" notification callback is called for
almost all earlier invocation of pa_stream_write (on my machine data for only
1.5 s is preserved, it is also effect that some of data are written to late),
e. due to "overflow" most of data are dropped, but due to already increased
write_index, PA server will play silence and the application will be blocked
due to no space left, till read index does not catch write index.

IMHO pa_stream_writable_size() does not return valid information in this case
and is a source of later problems.

Configuration of buffer: pa_buffer_attr bufattr = {.maxlength = 122880,
.tlength = 38400, .prebuf = 0, .minreq = 1920, .fragsize = 0}, mirrors
configuration of GStreamer's pulseaudio element.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/pulseaudio-bugs/attachments/20171027/450f31ab/attachment.html>


More information about the pulseaudio-bugs mailing list