[gst-devel] Byte seek with ffmpeg transport demuxer

Michael Chan michaelchan at gawab.com
Wed Jul 25 04:05:27 CEST 2007


I am trying to put together a pipeline to do mpeg2 transport stream
playback.  It looks something like this:
"filesrc name ! ffdemux_mpegts ! mpeg2dec ! ffmpegcolorspace  ! xvimagesink
"

Now when I try to send a seek command to the pipeline,

gst_element_seek(pipeline, 1, GST_FORMAT_BYTES, GST_SEEK_FLAG_FLUSH,
GST_SEEK_TYPE_SET, 100000, GST_SEEK_TYPE_NONE, GST_CLOCK_TIME_NONE

It didn't response.  Instead, if I do a time seek.

gst_element_seek(pipeline, 1, GST_FORMAT_TIME, GST_SEEK_FLAG_FLUSH,
GST_SEEK_TYPE_SET, 2* GST_SECOND, GST_SEEK_TYPE_NONE, GST_CLOCK_TIME_NONE);

It works fine.

After some debugging, I found that ffdemux_mpegts rejects the byte seek
event.  It doesn't pass it to the filesrc element.  Then, I tried to send
the seek event directly to the filesrc element, but it complains that SEEK
doesn't work in PULL mode.  

Since this is such an common operation, I guess I must be missing something
fundamental.  Can anyone help me out?  

---------------------------------------------
Free POP3 Email from www.Gawab.com 
Sign up NOW and get your account @gawab.com!!




More information about the gstreamer-devel mailing list