[gst-devel] pulsesrc/pulsesink clocking issues

Wim Taymans wim.taymans at gmail.com
Wed Jul 7 14:56:34 CEST 2010


On Wed, 2010-07-07 at 16:18 +0400, 4ernov wrote:
> Hello,
> I experience some issues when trying to process sound from pulsesrc
> and pulsesink elements. The pipeline is quite simple:
> 
> pulsesrc device=insert.monitor ! equalizer-nbands ! pulsesink device=output
> 
> "insert" device in Pulseaudio is module-null-sink device and "output"
> device is module-alsa-sink device. In PA list I was suggested that
> this problem could be clocking and synchronizing issue between system
> and ALSA clocks. It seems to be right because I got the message
> 
> baseaudiosink gstbaseaudiosink.c:1035:gst_base_audio_sink_skew_slaving:<pulsesink0>
> correct clock skew 20191929 > 20000000
> 
> on every click in sound stream (very much of such messages).
> 
> I think it can be solved by setting ALSA clock as master for the whole
> pipeline. Is it possible? Is there any way at all to solve such a
> problem?

Not possible. If there are two devices with different clocks, one of
them needs to compensate for the drift. Currently this is done by
dropping samples or inserting silence when the drift is bigger than
20ms. 

Another less audible way would be to resample the audio. Unfortunately
the stability of the resampler is not so good in the gstreamer elements
so it sounds quite bad (you can try with the slave-method property on
pulsesink). 

Wim


> 
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by Sprint
> What will you do first with EVO, the first 4G phone?
> Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel






More information about the gstreamer-devel mailing list