muxing "meta/x-klv" with "video/x-h264" data

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

muxing "meta/x-klv" with "video/x-h264" data

rjpearsoniv
auto result = gst_element_link_many(m_video_src,
m_parse,
m_queue_record,
m_videoconvert,
m_videoflip,
m_encoder,
m_capsfilter ,
m_queue_display,
m_muxer,
m_udpsink,
NULL);

auto result2 = gst_element_link(m_metadata_src, m_muxer);

If I do the "gst_element_link_many" alone and only send the video data,
that actually starts in "video/x-raw" format.
The steam works fine.

If I add a new link "AT THE MUXER"
( i.e. the second link gst_element_link(m_metadata_src, m_muxer); )

The stream stops flowing. The video buffer gets blocked and stops sending.
The gst_buffer_is_writable result on the video buffer is false,
the ref count on the buffer is 2 and after a new frames never
gets back to 1.

Its like the stream is getting blocked some where.
The meta data src also eventually gets blocked with a ref count of 2 on its
buffer.

Another thing I am seeing is that the muxer pads caps name are both of type
"video/mpeg".
( it's a mpegtsmux type muxer.)

I would think the video would be mpeg but the meta data would be
"meta/x-klv" since that is a valid cap for the muxer.

So I don't know why both pads going into the muxer ( the video and the meta
data )
are both showing a  caps name of "video/mpeg".

I don't see too many examples of muxing using the C API.

I did see this one

http://gstreamer-devel.966125.n4.nabble.com/Example-code-for-muxing-klv-meta-x-klv-with-mpegtsmux-plugins-bad-and-GStreamer-1-8-3-td4684782.html

but it didn't seem to work for me.

Any helpful explanation would be welcome.

Thanks. Judd.





--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel