[fdsrc plugin] : what should happen on seeking a non-seekable file.

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[fdsrc plugin] : what should happen on seeking a non-seekable file.

spattar
Hello Stephan,

Sorry repeatedly  asking the same querry. I am using fdsrc to read from some special file which is not a regular file , I mean not seekable file.

Data expected to  come on this special device.  I have simulated non-seekable file using pipe & simply redirecting the o/p of cat on some mp3 file to this device file.

My pipeline (fdsrc ! decodebin2 ! autoaudiosink) is reading from the fd of this device file & playing it correctly.

I am not sure of how seeking is done for on this pipeline  [since fdsrc's seek is segment based gst_fd_src_do_seek (GstBaseSrc * src, GstSegment * segment) ]
However I am using seek in time units (I am not sure of segment seeking is required here or not)

 if(!(gst_element_seek (pipeline, 1.0, GST_FORMAT_TIME, GST_SEEK_FLAG_FLUSH, GST_SEEK_TYPE_SET,
                      new_pos, GST_SEEK_TYPE_NONE,  GST_CLOCK_TIME_NONE)))

the seek is failing immediately (as expected since pipe is non-seekable) , however there is no playback happening for some time & I see "gst_fd_src_create" is being called multiple times by gstreamer & fdsrc->curoffset is updated  & after some time normal playback is resumed , but now it plays from the new offset(due to seek), which is not expected , rather it should have been playing from the same offset as just before gst_element_seek is called.


Your inputs are highly appreciated.


--
Thanks & Regards,

Satish Pattar


_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel