[plugin] Create a src pad

harsh.ag harsh.ag at samsung.com
Mon Aug 12 12:55:16 UTC 2019


Error message when trying with src2 with video data.

gst-launch-1.0 -vv --gst-debug=*:2,myfilter:6
--gst-plugin-path=$PWD/gst-plugin/src/.libs  audiotestsrc ! myfilter name=t
silent=true t.src ! queue ! autoaudiosink t.src2 ! queue ! "video/x-raw,
width=(int)300, height=(int)300, framerate=(fraction)24/1, format=RGB" !
fakesink
gst_my_filter_query:433 --------------- 
0:00:00.028723809 31815      0x239da10 WARN                myfilter
gstmyfilter.c:482:gst_my_filter_query:<t> error: Some debug information here

(gst-launch-1.0:31815): GStreamer-CRITICAL **: gst_mini_object_ref:
assertion 'mini_object != NULL' failed

(gst-launch-1.0:31815): GStreamer-CRITICAL **: gst_caps_can_intersect:
assertion 'GST_IS_CAPS (caps2)' failed

(gst-launch-1.0:31815): GStreamer-CRITICAL **: gst_mini_object_unref:
assertion 'mini_object != NULL' failed
gst_my_filter_query:433 --------------- 
0:00:00.028897208 31815      0x239da10 WARN                myfilter
gstmyfilter.c:482:gst_my_filter_query:<t> error: Some debug information here

(gst-launch-1.0:31815): GStreamer-CRITICAL **: gst_mini_object_ref:
assertion 'mini_object != NULL' failed

(gst-launch-1.0:31815): GStreamer-CRITICAL **: gst_pad_template_new:
assertion 'caps != NULL' failed

(gst-launch-1.0:31815): GStreamer-CRITICAL **: gst_mini_object_unref:
assertion 'mini_object != NULL' failed

(gst-launch-1.0:31815): GStreamer-CRITICAL **:
gst_element_request_compatible_pad: assertion 'GST_IS_PAD_TEMPLATE (templ)'
failed

(gst-launch-1.0:31815): GStreamer-CRITICAL **: gst_object_unref: assertion
'object != NULL' failed
gst_my_filter_release_pad:291 --------------- 
0:00:00.029050584 31815      0x239da10 ERROR           GST_PIPELINE
grammar.y:642:gst_parse_perform_link: could not link t to queue1
WARNING: erroneous pipeline: could not link t to queue1

harsh.ag wrote
> Hello Devs,
> 
> I want to 'modify' existing gst-plugin which derives from GstElement,  The
> existing plugin has a 'src' and 'sink' pad.
> I took reference from
> https://gstreamer.freedesktop.org/documentation/plugin-development/basics/boiler.html?gi-language=c
> Which is close to the requirement I have.
> 
> GObject
>  +----GInitiallyUnowned
>        +----GstObject
>              +----GstElement
>                    +----GstMyFilter
> 
> 
> I have added new 'src2' pad which I want to push data for a new sink.
> https://gist.github.com/szihs/6d74e0076ff016f2c5f443c3daffe496/8edb4485c6d09e41c7eb7425f7b8dbd079400519
>  gst-launch-1.0 -vv --gst-debug=*:2
> --gst-plugin-path=$PWD/gst-plugin/src/.libs  audiotestsrc ! myfilter
> name=t
> silent=true t.src ! queue ! autoaudiosink t.src2 ! queue !  audioconvert !
> goom ! videoconvert ! autovideosink
> 
> This pipeline works.
> 
> I wish to have below caps, so i modified the plugin
> https://gist.github.com/szihs/6d74e0076ff016f2c5f443c3daffe496/revisions?diff=split
> 
> 
>   SRC template: 'src2'
>     Availability: On request
>       Has request_new_pad() function: 0x7fe3160ea010
>     Capabilities:
>       video/x-raw
>                  format: RGB
>                   width: [ 1, 2147483647 ]
>                  height: [ 1, 2147483647 ]
>               framerate: [ 0/1, 2147483647/1 ]
> 
> 
> 
> The width/height is independent of sink and it to be decided by downstream
> element.
> This pipeline is failing.
> gst-launch-1.0 -vv --gst-debug=*:4,myfilter:6
> --gst-plugin-path=$PWD/gst-plugin/src/.libs  audiotestsrc ! myfilter
> name=t
> silent=true t.src ! queue ! autoaudiosink t.src2 ! queue ! "video/x-raw,
> width=(int)300, height=(int)300, framerate=(fraction)24/1, format=RGB" !
> fakesink
> 
> Can you please help me to create a 'dummy' src so that i can create a
> pipeline.
> 
> Regards,
> Harsh
> 
> --
> Sent from: http://gstreamer-devel.966125.n4.nabble.com/
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel





--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/


More information about the gstreamer-devel mailing list