Difficulties with qtdemux

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

Difficulties with qtdemux

Stuart Marshall
I’m trying to demux an MP4 file, packetize the data into RTP packets, and then hand those packets off to appsink elements.
The command I’m using is

String command = "rtpbin latency=0 name=rtpbin" +
        " filesrc location=" + filename +
        " ! qtdemux name=demux" +
        " demux.video_0 ! queue ! h264parse ! video/x-h264,stream-format=avc ! rtph264pay config-interval=1" +
        " ! rtpbin.send_rtp_sink_0 rtpbin.send_rtp_src_0 ! appsink name=" + videoDataSink + " sync=true async=false" +
        " rtpbin.send_rtcp_src_0 ! appsink name=" + videoControlSink + " sync=true async=false" +
        " demux.audio_0 ! queue ! aacparse ! audio/mpeg,stream-format=raw ! rtpmp4apay pt=97" +
        " ! rtpbin.send_rtp_sink_1 rtpbin.send_rtp_src_1 ! appsink name=" + audioDataSink  + " sync=true async=false" +
        " rtpbin.send_rtcp_src_1 ! appsink name=" + audioControlSink + " sync=true async=false”;

Later code launches the pipeline and connects the appsink elements.

This command results in packets delivered to the video app sinks (both rtp and rtcp), but not the audio app sinks.
If I switch the order, handling audio before video, then the audio app sinks get packets but the video app sinks do not.

Any advice on what I’m doing wrong and how to get it to work?

Thanks,

Stuart

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel