[gst-devel] Seeking failed with decoder plugin
sudarshan bisht
bisht.sudarshan at gmail.com
Thu Nov 27 11:54:06 CET 2008
Hi ,
Can u tell me how you are creating filter instance in src_event
function .
On Thu, Nov 27, 2008 at 3:29 PM, Wei-Di Hung <wdhung at vaplab.ee.ncu.edu.tw>wrote:
> Yes, I use ffdemux_avi here.
> > Hi ,,
> > Are you using demuxer also in pipeline ?
> >
> > On Thu, Nov 27, 2008 at 3:01 PM, Wei-Di Hung <
> wdhung at vaplab.ee.ncu.edu.tw> wrote:
> >
>>
>> Hi,
>> > I'm writing a plugin for HW video decoder,
>> > functions of playing, pause and stop have been verified.
>> >
>> > While seeking, the pipeline ran until the frame of seeking time
>> > was decoded, i.e, it did jump to the target frame, but the test
>> > program crashed then.
>> >
>> > Here are messages shown after the sink pad received
>> GST_EVENT_NEW_SEGMENT:
>> > (player:886): GStreamer-CRITICAL **:
>> > Trying to dispose element decoder, but it is not in the NULL state.
>> > You need to explicitly set elements to the NULL state before
>> > dropping the final reference, to allow them to clean up.
>> >
>> > (player:886): GLib-GObject-CRITICAL **: g_object_ref: assertion
>> `G_IS_OBJECT
>> > (object)' failed
>> >
>> > After these message, it seemed the HW keep decoding from the paused
>> frame to
>> > the target frame. but the intermediate frames were not displayed.
>> >
>> > Before decoding of each frame, came up the folloing message:
>> > (player:886): GLib-GObject-WARNING **: invalid unclassed pointer in cast
>> to
>> > `Gstvideodec'
>> >
>> > These are part of codes in sink event handler,
>> > the format is GST_FORMAT_TIME in this case,
>> >
>> > case GST_EVENT_NEWSEGMENT:
>> > {
>> > GstFormat format;
>> > gint64 start, stop, position;
>> > gdouble rate;
>> >
>> > gst_event_parse_new_segment(event, NULL, &rate, &format,
>> > &start, &stop, &position);
>> >
>> > if (GST_FORMAT_TIME == format) {
>> > result = gst_pad_push_event(filter->srcpad, event);
>> > } else {
>> > ... ...
>> > }
>> > break;
>> > }
>> >
>> > Below are part of codes in source event handler:
>> >
>> > switch (GST_EVENT_TYPE(event)) {
>> > case GST_EVENT_SEEK:
>> > res = gst_pad_push_event(filter->sinkpad, event);
>> > break;
>> > case GST_EVENT_NAVIGATION:
>> > default:
>> > res = gst_pad_push_event(filter->sinkpad, event);
>> > break;
>> > }
>> >
>> > gst_object_unref(filter);
>> > return res;
>> >
>> > Could someone help me finding possible root cause?
>> > Thanks in advance.
>> >
>> >
>> -------------------------------------------------------------------------
>> > This SF.Net email is sponsored by the Moblin Your Move Developer's
>> challenge
>> > Build the coolest Linux based applications with Moblin SDK & win great
>> prizes
>> > Grand prize is a trip for two to an Open Source event anywhere in the
>> world
>> > http://moblin-contest.org/redirect.php?banner_id=100&url=/
>> > _______________________________________________
>> > gstreamer-devel mailing list
>> > gstreamer-devel at lists.sourceforge.net
>> > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>> >
>
>
> >
>
> > --
> > Regards,
> >
> > Sudarshan Bisht
>
>
>
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's
> challenge
> Build the coolest Linux based applications with Moblin SDK & win great
> prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>
>
--
Regards,
Sudarshan Bisht
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20081127/d0b7d2ba/attachment.htm>
More information about the gstreamer-devel
mailing list