[PATCH] client: Don't update smoother while corked

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

 



On Tue, 2011-01-11 at 23:58 +0530, Arun Raghavan wrote:
> This prevents the smoother attached to the stream clock from being
> updated while the stream is corked, which in turn ensures that once
> corking is completed, pa_stream_get_time() always returns the same value
> until the stream is uncorked - i.e., the clock does not advance when the
> client believes that it will not.
> 
> The actual call to pa_smoother_put() happens on things like stream
> suspend/unsuspend, which trigger timing updates. This changes the
> smoother coefficients, which means that a call to pa_smoother_get() for
> the same value of 'x' can return different values before and after a
> timing update.

To add some background, this is required to fix a problem that was
uncovered by the GStreamer pulsesink. We compensate for the clock
advancing while the stream is paused. The incorrect change in stream
time triggers this compensation and we get a short gap in playback. More
details at [1] for the interested.

Cheers,
Arun

[1] https://bugzilla.gnome.org/show_bug.cgi?id=639240




[Index of Archives]     [Linux Audio Users]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux