mpegtsmux: Add support for muxing SI tables
authorJesper Larsen <jesper.larsen@ixonos.com>
Wed, 20 Nov 2013 10:14:46 +0000 (11:14 +0100)
committerJesper Larsen <jesper.larsen@ixonos.com>
Thu, 6 Feb 2014 14:55:46 +0000 (15:55 +0100)
commit93a8137be62075fbcfa2b21cc7dd13e25b8d70af
tree9ab551a29a75d8b5aae1101f00b1f0ee2c3dce42
parentb7d256b4c292d0a83f8c7eb2a02de9700082700b
mpegtsmux: Add support for muxing SI tables

The muxer is now able to include DVB sections in the transport stream.

The si-interval property will determine how often the SI tables are
muxed into the stream.

The section is handled by the mpeg-ts library. Below is a small example
that will include a Netork Information Table with a Network Name
descriptor in the stream.

GstMpegTsNIT *nit;
GstMpegTsDescriptor *descriptor;
GstMpegTsSection *section;
GstElement *mpegtsmux;

gst_mpegts_initialize ();

nit = gst_mpegts_section_nit_new ();
nit->actual_network = TRUE;

descriptor = gst_mpegts_descriptor_from_dvb_network_name ("Network name");
g_ptr_array_add (nit->descriptors, descriptor);

section = gst_mpegts_section_from_nit (nit);

// mpegtsmux should be retrieved from the pipeline
gst_mpegts_section_send_event (section, mpegtsmux);
gst_mpegts_section_unref (section);
gst/mpegtsmux/Makefile.am
gst/mpegtsmux/mpegtsmux.c
gst/mpegtsmux/mpegtsmux.h
gst/mpegtsmux/tsmux/Makefile.am
gst/mpegtsmux/tsmux/tsmux.c
gst/mpegtsmux/tsmux/tsmux.h
gst/mpegtsmux/tsmux/tsmuxcommon.h