summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorStefan Ringel <linuxtv@stefanringel.de>2014-05-27 20:37:26 +0200
committerEdward Hervey <bilboed@bilboed.com>2014-05-28 07:03:59 +0200
commit2bbf4ec96c4f186b50c409767f18c22725c1824e (patch)
tree4c12ee54fbb615237c1b0e9013337ed6ef1aa44f /tests
parenta09f32d0a79d07e1f9e855ca38d2aeaa78feb27b (diff)
downloadgstreamer-plugins-bad-2bbf4ec96c4f186b50c409767f18c22725c1824e.tar.gz
example: ts-parser: add terrestrial delivery system descriptor
https://bugzilla.gnome.org/show_bug.cgi?id=730847
Diffstat (limited to 'tests')
-rw-r--r--tests/examples/mpegts/ts-parser.c45
1 files changed, 45 insertions, 0 deletions
diff --git a/tests/examples/mpegts/ts-parser.c b/tests/examples/mpegts/ts-parser.c
index a7ce14202..8bd3f1717 100644
--- a/tests/examples/mpegts/ts-parser.c
+++ b/tests/examples/mpegts/ts-parser.c
@@ -160,6 +160,45 @@ dump_cable_delivery_descriptor (GstMpegTsDescriptor * desc, guint spacing)
}
static void
+dump_terrestrial_delivery (GstMpegTsDescriptor * desc, guint spacing)
+{
+ GstMpegTsTerrestrialDeliverySystemDescriptor res;
+
+ if (gst_mpegts_descriptor_parse_terrestrial_delivery_system (desc, &res)) {
+ g_printf ("%*s Terrestrial Delivery Descriptor\n", spacing, "");
+ g_printf ("%*s Frequency : %d Hz\n", spacing, "", res.frequency);
+ g_printf ("%*s Bandwidth : %d Hz\n", spacing, "", res.bandwidth);
+ g_printf ("%*s Priority : %s\n", spacing, "",
+ res.priority ? "TRUE" : "FALSE");
+ g_printf ("%*s Time slicing : %s\n", spacing, "",
+ res.time_slicing ? "TRUE" : "FALSE");
+ g_printf ("%*s MPE FEC : %s\n", spacing, "",
+ res.mpe_fec ? "TRUE" : "FALSE");
+ g_printf ("%*s Constellation : %d (%s)\n", spacing, "",
+ res.constellation, enum_name (GST_TYPE_MPEG_TS_MODULATION_TYPE,
+ res.constellation));
+ g_printf ("%*s Hierarchy : %d (%s)\n", spacing, "", res.hierarchy,
+ enum_name (GST_TYPE_MPEG_TS_TERRESTRIAL_HIERARCHY, res.hierarchy));
+ g_printf ("%*s Code Rate HP : %d (%s)\n", spacing, "",
+ res.code_rate_hp, enum_name (GST_TYPE_MPEG_TS_DVB_CODE_RATE,
+ res.code_rate_hp));
+ g_printf ("%*s Code Rate LP : %d (%s)\n", spacing, "",
+ res.code_rate_lp, enum_name (GST_TYPE_MPEG_TS_DVB_CODE_RATE,
+ res.code_rate_lp));
+ g_printf ("%*s Guard Interval : %d (%s)\n", spacing, "",
+ res.guard_interval,
+ enum_name (GST_TYPE_MPEG_TS_TERRESTRIAL_GUARD_INTERVAL,
+ res.guard_interval));
+ g_printf ("%*s Transmission Mode : %d (%s)\n", spacing, "",
+ res.transmission_mode,
+ enum_name (GST_TYPE_MPEG_TS_TERRESTRIAL_TRANSMISSION_MODE,
+ res.transmission_mode));
+ g_printf ("%*s Other Frequency : %s\n", spacing, "",
+ res.other_frequency ? "TRUE" : "FALSE");
+ }
+}
+
+static void
dump_dvb_service_list (GstMpegTsDescriptor * desc, guint spacing)
{
GPtrArray *res;
@@ -342,6 +381,9 @@ dump_descriptors (GPtrArray * descriptors, guint spacing)
case GST_MTS_DESC_DVB_CABLE_DELIVERY_SYSTEM:
dump_cable_delivery_descriptor (desc, spacing + 2);
break;
+ case GST_MTS_DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM:
+ dump_terrestrial_delivery (desc, spacing + 2);
+ break;
case GST_MTS_DESC_DVB_BOUQUET_NAME:
{
gchar *bouquet_name;
@@ -752,6 +794,9 @@ main (int argc, gchar ** argv)
g_type_class_ref (GST_TYPE_MPEG_TS_MODULATION_TYPE);
g_type_class_ref (GST_TYPE_MPEG_TS_DVB_CODE_RATE);
g_type_class_ref (GST_TYPE_MPEG_TS_CABLE_OUTER_FEC_SCHEME);
+ g_type_class_ref (GST_TYPE_MPEG_TS_TERRESTRIAL_TRANSMISSION_MODE);
+ g_type_class_ref (GST_TYPE_MPEG_TS_TERRESTRIAL_GUARD_INTERVAL);
+ g_type_class_ref (GST_TYPE_MPEG_TS_TERRESTRIAL_HIERARCHY);
mainloop = g_main_loop_new (NULL, FALSE);