[gst-devel] totem and osssink? (long)

Benjamin Otte in7y118 at public.uni-hamburg.de
Fri Mar 12 06:19:10 CET 2004


Quoting "Ronald S. Bultje" <R.S.Bultje at students.uu.nl>:

> The problem is that you need to send disconts for every stream, but each
> needs the same time! Else, your streams will slightly move apart after a
> seek (really!).
> 
Well, I don't think you can force the same time on both disconts. Imagine 
having essentially two pipelines, one being { v4lsrc ! 
some_cache_that_allows_seeking_back } ! xvideosink, the other being { osssrc ! 
some_cache_that_allows_seeking_back } ! osssink

So just tell the 2 elements to always use the same time whenever possible.
Kinda like this:
GstSynchronize *sync = gst_synchronize_new ();
gst_synchronize_set_master (sync, GST_SYNCHRONIZABLE (audiosink));
gst_synchronize_add_slave (sync, GST_SYNCHRONIZABLE (videosink));
[...]
gst_synchronize_seek (sync, GST_SEEK_SET, my_timestamp);
And now GstSynchronize magically makes sure that both elements stay in sync. 
Maybe it even throws an error when it's not possible to keep them synced.

At least that's what my idea currently evolves around.


Benjamin




More information about the gstreamer-devel mailing list