diff options
author | Stefan Ringel <linuxtv@stefanringel.de> | 2014-03-27 21:18:36 +0100 |
---|---|---|
committer | Edward Hervey <bilboed@bilboed.com> | 2014-03-31 15:00:54 +0200 |
commit | f8b7a130cc51752c06a538848aa1c27770f4dee3 (patch) | |
tree | 6d439c072f6e4b1721d88a1ffcb06aae2070fbc3 /gst-libs | |
parent | 2e051cf412ded99108b59bfae38c910c15cedbf5 (diff) |
mpegts: add parsing stream identifier
Signed-off-by: Stefan Ringel <linuxtv@stefanringel.de>
https://bugzilla.gnome.org/show_bug.cgi?id=727187
Diffstat (limited to 'gst-libs')
-rw-r--r-- | gst-libs/gst/mpegts/gst-dvb-descriptor.c | 28 | ||||
-rw-r--r-- | gst-libs/gst/mpegts/gstmpegtsdescriptor.c | 4 |
2 files changed, 27 insertions, 5 deletions
diff --git a/gst-libs/gst/mpegts/gst-dvb-descriptor.c b/gst-libs/gst/mpegts/gst-dvb-descriptor.c index 2560c424f..6facefab5 100644 --- a/gst-libs/gst/mpegts/gst-dvb-descriptor.c +++ b/gst-libs/gst/mpegts/gst-dvb-descriptor.c @@ -45,7 +45,6 @@ * * GST_MTS_DESC_DVB_DATA_BROADCAST_ID * * GST_MTS_DESC_DVB_DATA_BROADCAST * * GST_MTS_DESC_DVB_CAROUSEL_IDENTIFIER - * * GST_MTS_DESC_DVB_STREAM_IDENTIFIER * * GST_MTS_DESC_DVB_FREQUENCY_LIST */ @@ -673,6 +672,33 @@ gst_mpegts_descriptor_parse_dvb_component (const GstMpegTsDescriptor return TRUE; } +/* GST_MTS_DESC_DVB_STREAM_IDENTIFIER (0x52) */ +/** + * gst_mpegts_descriptor_parse_dvb_stream_identifier: + * @descriptor: a %GST_MTS_DESC_DVB_CONTENT #GstMpegTsDescriptor + * @component_tag: (out) (transfer none): the component tag + * + * Extracts the component tag from @descriptor. + * + * Returns: %TRUE if the parsing happended correctly, else %FALSE. + */ +gboolean +gst_mpegts_descriptor_parse_dvb_stream_identifier (const GstMpegTsDescriptor + * descriptor, guint8 * component_tag) +{ + guint8 *data; + + g_return_val_if_fail (descriptor != NULL && component_tag != NULL, FALSE); + __common_desc_checks_exact (descriptor, GST_MTS_DESC_DVB_STREAM_IDENTIFIER, + 1, FALSE); + + data = (guint8 *) descriptor->data + 2; + + *component_tag = *data; + + return TRUE; +} + /* GST_MTS_DESC_DVB_CONTENT (0x54) */ static void _gst_mpegts_content_free (GstMpegTsContent * content) diff --git a/gst-libs/gst/mpegts/gstmpegtsdescriptor.c b/gst-libs/gst/mpegts/gstmpegtsdescriptor.c index 7586f5a4b..d6884ecef 100644 --- a/gst-libs/gst/mpegts/gstmpegtsdescriptor.c +++ b/gst-libs/gst/mpegts/gstmpegtsdescriptor.c @@ -66,10 +66,6 @@ * * GST_MTS_DESC_DVB_DATA_BROADCAST_ID * * GST_MTS_DESC_DVB_DATA_BROADCAST * * GST_MTS_DESC_DVB_CAROUSEL_IDENTIFIER - * * GST_MTS_DESC_DVB_STREAM_IDENTIFIER - * * GST_MTS_DESC_DVB_EXTENDED_EVENT - * * GST_MTS_DESC_DVB_COMPONENT - * * GST_MTS_DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM * * GST_MTS_DESC_DVB_FREQUENCY_LIST */ |