mpegts: Fix TOT section parsing

And use it in example
This commit is contained in:
Edward Hervey 2013-07-03 18:44:54 +02:00
parent 61a8cbae41
commit 6a611e5d3d
2 changed files with 15 additions and 0 deletions

View file

@ -739,6 +739,7 @@ _parse_tot (GstMpegTsSection * section)
data = section->data + 8; data = section->data + 8;
desc_len = GST_READ_UINT16_BE (data) & 0xFFF; desc_len = GST_READ_UINT16_BE (data) & 0xFFF;
data += 2;
tot->descriptors = gst_mpegts_parse_descriptors (data, desc_len); tot->descriptors = gst_mpegts_parse_descriptors (data, desc_len);
return tot; return tot;

View file

@ -326,6 +326,17 @@ dump_tdt (GstMpegTsSection * section)
gst_date_time_unref (date); gst_date_time_unref (date);
} }
static void
dump_tot (GstMpegTsSection * section)
{
const GstMpegTsTOT *tot = gst_mpegts_section_get_tot (section);
gchar *str = gst_date_time_to_iso8601_string (tot->utc_time);
g_printf (" utc_time : %s\n", str);
dump_descriptors (tot->descriptors, 7);
g_free (str);
}
static void static void
dump_section (GstMpegTsSection * section) dump_section (GstMpegTsSection * section)
{ {
@ -339,6 +350,9 @@ dump_section (GstMpegTsSection * section)
case GST_MPEGTS_SECTION_TDT: case GST_MPEGTS_SECTION_TDT:
dump_tdt (section); dump_tdt (section);
break; break;
case GST_MPEGTS_SECTION_TOT:
dump_tot (section);
break;
case GST_MPEGTS_SECTION_SDT: case GST_MPEGTS_SECTION_SDT:
dump_sdt (section); dump_sdt (section);
break; break;