From 79071e23b3204c506c0cc3b0283789be4339130e Mon Sep 17 00:00:00 2001 From: Edward Hervey Date: Tue, 27 May 2014 17:34:05 +0200 Subject: [PATCH] examples: Add DVB Extended event parsing --- tests/examples/mpegts/ts-parser.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/tests/examples/mpegts/ts-parser.c b/tests/examples/mpegts/ts-parser.c index 67cc903ee2..ef9e3d53cb 100644 --- a/tests/examples/mpegts/ts-parser.c +++ b/tests/examples/mpegts/ts-parser.c @@ -280,6 +280,25 @@ dump_iso_639_language (GstMpegTsDescriptor * desc, guint spacing) } } +static void +dump_dvb_extended_event (GstMpegTsDescriptor * desc, guint spacing) +{ + GstMpegTsExtendedEventDescriptor res; + + if (gst_mpegts_descriptor_parse_dvb_extended_event (desc, &res)) { + guint i; + g_printf ("%*s DVB Extended Event\n", spacing, ""); + g_printf ("%*s descriptor_number:%d, last_descriptor_number:%d\n", + spacing, "", res.descriptor_number, res.last_descriptor_number); + g_printf ("%*s language_code:%s\n", spacing, "", res.language_code); + g_printf ("%*s text : %s\n", spacing, "", res.text); + for (i = 0; i < res.items->len; i++) { + GstMpegTsExtendedEventItem *item = g_ptr_array_index (res.items, i); + g_printf ("%*s #%d [description:item] %s : %s\n", + spacing, "", i, item->item_description, item->item); + } + } +} static void dump_descriptors (GPtrArray * descriptors, guint spacing) @@ -389,6 +408,11 @@ dump_descriptors (GPtrArray * descriptors, guint spacing) } } break; + case GST_MTS_DESC_DVB_EXTENDED_EVENT: + { + dump_dvb_extended_event (desc, spacing + 2); + break; + } case GST_MTS_DESC_DVB_SUBTITLING: { gchar lang[4];