amldemux: CB2 add qtdemux set multiqueue size [1/1]
PD#SWPL-136361
Problem:
add qtdemux set multiqueue size
Solution:
00038-SWPL-136361-add-qtdemux-set-multiqueue-size.patch
Verify:
AH212
Signed-off-by: zengliang.li <zengliang.li@amlogic.com>
Change-Id: I33f247d1b876f08710f5033f79d1c7ce9bb07274
diff --git a/aml-qtdemux/qtdemux.c b/aml-qtdemux/qtdemux.c
index 94dc496..3d38ed8 100644
--- a/aml-qtdemux/qtdemux.c
+++ b/aml-qtdemux/qtdemux.c
@@ -7372,6 +7372,23 @@
gst_qtdemux_check_send_pending_segment (demux);
+ /* check sync and set multiqueue */
+ if (2 == QTDEMUX_N_STREAMS (demux))
+ {
+ QtDemuxStream *stream_1 = QTDEMUX_NTH_STREAM (demux, 0);
+ QtDemuxStream *stream_2 = QTDEMUX_NTH_STREAM (demux, 1);
+ if ((0 == strncmp(GST_PAD_NAME (stream_1->pad), "video", 5) && 0 == strncmp(GST_PAD_NAME (stream_2->pad), "audio", 5))
+ || (0 == strncmp(GST_PAD_NAME (stream_1->pad), "audio", 5) && 0 == strncmp(GST_PAD_NAME (stream_2->pad), "video", 5)))
+ {
+ GstStructure *s;
+ GstEvent *event;
+ s = gst_structure_new_empty ("AML-SET-MAX-BYTE-SIZE");
+ event = gst_event_new_custom (GST_EVENT_CUSTOM_DOWNSTREAM_STICKY, s);
+ GST_DEBUG("Send SET-MAX-BYTE-SIZE Event");
+ gst_pad_push_event (stream_1->pad, event);
+ }
+ }
+
if (demux->moov_node_compressed) {
g_node_destroy (demux->moov_node_compressed);
g_free (demux->moov_node->data);