GNOME Bugzilla – Bug 552559
Implementation of SLAVE_SKEW in baseaudiosrc
Last modified: 2008-10-08 09:12:38 UTC
This implementation makes sure that the ringbuffers time stays aligned with running_time of the pipeline. In cases of skews, it will realign the ringbuffer_time to the running_time, without doing any dropping of buffers, only retimestamping. It will always align the last buffer written into the ringbuffer (from the device) to running_time, so any buffers already in the ringbuffer will then be "late", but I think this is correct behavior, since elements downstream might choose to drop these buffers, but it is not the job of the ringbuffer to do so.
Created attachment 118846 [details] [review] the proposed patch
Created attachment 120105 [details] [review] slightly improved. keeps the code inside SLAVE_SKEW
Patch by: Håvard Graff <havard dot graff at tandberg dot com> * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_create): Implement skew clock slaving. Fixes #552559.