examples: Add support for DVB multilingual component descriptor

https://bugzilla.gnome.org/show_bug.cgi?id=728429
This commit is contained in:
Stefan Ringel 2014-05-26 20:38:45 +02:00 committed by Edward Hervey
parent 2277011875
commit c0ac6ce432

View file

@ -243,6 +243,27 @@ dump_multiligual_service_name (GstMpegTsDescriptor * desc, guint spacing)
} }
} }
static void
dump_multiligual_component (GstMpegTsDescriptor * desc, guint spacing)
{
GPtrArray *items;
guint8 tag;
if (gst_mpegts_descriptor_parse_dvb_multilingual_component (desc, &tag,
&items)) {
guint8 i;
g_printf ("%*s component_tag : 0x%02x\n", spacing, "", tag);
for (i = 0; i < items->len; i++) {
GstMpegTsDvbMultilingualComponentItem *item =
g_ptr_array_index (items, i);
g_printf ("%*s item : %u\n", spacing, "", i);
g_printf ("%*s language_code : %s\n", spacing, "",
item->language_code);
g_printf ("%*s description : %s\n", spacing, "", item->description);
}
g_ptr_array_unref (items);
}
}
static void static void
dump_iso_639_language (GstMpegTsDescriptor * desc, guint spacing) dump_iso_639_language (GstMpegTsDescriptor * desc, guint spacing)
{ {
@ -345,6 +366,11 @@ dump_descriptors (GPtrArray * descriptors, guint spacing)
dump_multiligual_service_name (desc, spacing + 2); dump_multiligual_service_name (desc, spacing + 2);
break; break;
} }
case GST_MTS_DESC_DVB_MULTILINGUAL_COMPONENT:
{
dump_multiligual_component (desc, spacing + 2);
break;
}
case GST_MTS_DESC_ISO_639_LANGUAGE: case GST_MTS_DESC_ISO_639_LANGUAGE:
dump_iso_639_language (desc, spacing + 2); dump_iso_639_language (desc, spacing + 2);
break; break;