linking pads from multiqueue to splitmuxsink?

Mathieu Duponchelle mathieu at centricular.com
Wed Aug 28 18:59:27 UTC 2019


GstElement* mq = gst_element_get_static_pad


That looks fishy ;)

<https://gstreamer.freedesktop.org/documentation/gstreamer/gstbin.html?gi-language=c#gst_bin_get_by_name>,
or better yet, don't use gst_parse_launch to construct your pipeline.


On 8/28/19 8:54 PM, killerrats wrote:
> gst-launch-1.0 -e --gst-debug=3 
>
> udpsrc address=[IP] port=[PORT] caps=application/x-rtp,media=audio !
> rtppcmudepay ! audioparse rate=8000 channels=1 rate=32000 ! audioconvert !
> avenc_aac ! aacparse ! tee name=atee ! mq.sink_2 
>
> udpsrc address=[IP] port=[PORT]
> caps=application/x-rtp,media=video,payload=90000 ! queue ! rtpmp4vdepay !
> mpeg4videoparse ! tee name=vtee 
>
> ! mq.sink_1 multiqueue name=mq mq.src_1 ! mux.video splitmuxsink name=mux
> muxer=mp4mux sink=filesink max-size-bytes=20971520 max-files=360
> location=c:/temp/video%04d.mp4 
>
> mq.src_2 ! mux.audio_1 -v
>
> this pipeline is successful in the command line but when I create the
> elements and join them it won't work on the audio side.
>
> when I join the mq.src_2 -> mux.audio_1 it says wrong hierarchy. Both udpsrc
> are in the same bin. If I only use the video side it will work. this is
> setting up the pipeline before playing. I will use similar way for the rest
> of the pad linking in the pipeline to join the elements. Anybody know a
> reason?
>
> GstElement* mq = gst_element_get_static_pad(this->srcPipeline,
> V_MULTIQUEUE_NAME);
> GstElement* mux = gst_element_get_static_pad(this->srcPipeline,
> V_MUXER_NAME);
> GstPad* srcPad = gst_element_get_static_pad(mq, "src_2");
> GstPad* sinkPad = gst_element_get_request_pad(mux, "audio_1");
>
> if (gst_pad_link(srcPad, sinkPad) != GST_PAD_LINK_OK)
> {
> check = false;
> }
>
> Error Message:
> Linking multiqueue src_2 to mp4mux audio_1
> 0:00:04.427642300 45592   0B01C240 INFO                GST_PADS
> gstpad.c:2378:gst_pad_link_prepare: trying to link multiqueue:src_2 and
> mp4mux:audio_1
> 0:00:04.428188500 45592   0B01C240 INFO                GST_PADS
> gstpad.c:2427:gst_pad_link_prepare: pads have wrong hierarchy
> 0:00:04.432571800 45592   0B01C240 INFO                GST_PADS
> gstpad.c:2529:gst_pad_link_full: link between multiqueue:src_2 and
> mp4mux:audio_1 failed: wrong hierarchy
>
>
>
> -----
> ------------------------------
> Gstreamer 1.14.3
> ------------------------------
> Windows
> --
> 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


More information about the gstreamer-devel mailing list