<div dir="ltr"><div>Programs are defined using the prog-map attribute in mpegtsmux.<br></div><div><br></div><div>First, you create a structure that will contain the pad->program mapping</div><div><br></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px">
<div><div>GstStructure *pm;</div></div><div><div>pm = gst_structure_new_empty("program_map");</div></div><div><div>gst_structure_set(pm, "sink_200", G_TYPE_INT, 1, NULL);</div></div><div><div>gst_structure_set(pm, "sink_300", G_TYPE_INT, 1, NULL);</div>
</div><div><div>gst_structure_set(pm, "sink_201", G_TYPE_INT, 2, NULL);</div></div><div><div>gst_structure_set(pm, "sink_301", G_TYPE_INT, 2, NULL);</div></div><div><br></div></blockquote>This structure will map PID 40/41 to program 1 and PID 42/43 to program 2.<div>
<br></div><div>You set the PID in the muxer by requesting a pad with the name sink_pid. I.e.</div><div><br></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div>pipeline = gst_parse_launch ("audio_src_1 ! mux.sink_200 \</div>
<div>                            video_src_1 ! mux.sink_300 \</div></blockquote><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div>                            audio_src_2 ! mux.sink_201 \</div></blockquote>
<blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div>                            video_src_2 ! mux.sink_301 \</div></blockquote><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div>                            mpegtsmux name=mux ! sink");</div>
<div><br></div></blockquote>You then apply the structure to the muxer<br><div><br></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><div>g_object_set (G_OBJECT( gst_bin_get_by_name (GST_BIN(pipeline), "mux")), "prog-map", pm, NULL);</div>
</div></div><div><br></div><div><br></div></blockquote>Regards,<div>Jesper Larsen<br><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Oct 9, 2013 at 1:35 PM, pradeepreddy.g95 <span dir="ltr"><<a href="mailto:pradeepreddy.g95@gmail.com" target="_blank">pradeepreddy.g95@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi everybody if possible can anybody give sample code for muxing multiple<br>
programs in mpegts .<br>
<br>
Regards,<br>
Pradeep G.<br>
<br>
<br>
<br>
--<br>
View this message in context: <a href="http://gstreamer-devel.966125.n4.nabble.com/how-to-add-multiple-programs-in-mpegtsmux-tp4662472.html" target="_blank">http://gstreamer-devel.966125.n4.nabble.com/how-to-add-multiple-programs-in-mpegtsmux-tp4662472.html</a><br>

Sent from the GStreamer-devel mailing list archive at Nabble.com.<br>
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
</blockquote></div><br></div></div></div>