help for seek implementation in PULL based element

rajnikant jachak rajnikantjachak at gmail.com
Wed Jan 30 01:10:15 PST 2013


Hi All,

I have my element (framefactory) which basically constructs the frames from
raw file. Following is pipeline I'm using,
               gst-launch filesrc location=input.raw ! framefactory !
legacyh264parse ! ffdec_h264 ! videoscale ! autovideosink

The framefactory element has sink pad which is activated in PULL mode.
Following is code snippet for PULL function handler.
static gboolean
gst_framefactory_activate_pull (GstPad    * pad,gboolean    active)
{
  Gstframefactory *filter = GST_FRAMEFACTORY (GST_OBJECT_PARENT (pad));
  return gst_pad_start_task (pad,(GstTaskFunction)
gst_pull_frame_data_loop, filter);
}
Function gst_pull_frame_data_loop, constructs the frame and pushes frame
data on src apd. I have not registered any function handler using
gst_pad_set_chain_function api.

When I try to seek on this pipeline using following event, I'm getting
'Internal GStreamer error: pad problem.' error.
         gst_element_seek (pipeline, 1.0, GST_FORMAT_BYTES,
GST_SEEK_FLAG_FLUSH, GST_SEEK_TYPE_SET,new_pos, GST_SEEK_TYPE_NONE,
GST_CLOCK_TIME_NONE);

Following are the logs I'm getting:

0:00:14.792347397  4159 0xb5a55068 WARN      GST_PADS
gstpad.c:4340:gst_pad_chain_data_unchecked:<framefact> error: push on pad
framefact:sink but it has no chainfunction
0:00:14.792358279  4159 0xb5a55068 DEBUG    GST_MESSAGE
gstelement.c:1900:gst_element_message_full:<framefact> start
0:00:14.792392530  4159 0xb5a55068 INFO        GST_ERROR_SYSTEM
gstelement.c:1931:gst_element_message_full:<framefact> posting message:
Internal GStreamer error: pad problem.  Please file a bug at
http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer.

My question is:
1. My element is pull based, why the filesrc element is pushing the buffer
after seek is completed?
2. Is there any way around so that after seek my element will again start
pulling data from filesrc src pad?

Let me know in case you need more information.

Thanks,
Rajnikant


-- 
Regards,
Rajnikant Jachak.

The pessimist sees difficulty in every opportunity. The optimist sees the
opportunity in every difficulty.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20130130/ec274e87/attachment.html>


More information about the gstreamer-devel mailing list