gst/mpegtsparse/: Make sure all schedule EIT and non-actual transport stream
authorZaheer Abbas Merali <zaheerabbas@merali.org>
Fri, 9 May 2008 10:21:07 +0000 (10:21 +0000)
committerZaheer Abbas Merali <zaheerabbas@merali.org>
Fri, 9 May 2008 10:21:07 +0000 (10:21 +0000)
Original commit message from CVS:
* gst/mpegtsparse/mpegtspacketizer.c:
* gst/mpegtsparse/mpegtsparse.c:
Make sure all schedule EIT and non-actual transport stream
EITs are parsed. Also add present-following flag and
actual-transport-stream flag to eit bus message.

ChangeLog
gst/mpegtsparse/mpegtspacketizer.c
gst/mpegtsparse/mpegtsparse.c

index 1fc45c18541556b4a2a3d6909b70bac248f93fe2..18d7acfb055b3539a3ea3de7404b53ec8847622b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2008-05-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
+
+       * gst/mpegtsparse/mpegtspacketizer.c:
+       * gst/mpegtsparse/mpegtsparse.c:
+       Make sure all schedule EIT and non-actual transport stream
+       EITs are parsed. Also add present-following flag and
+       actual-transport-stream flag to eit bus message.
+
 2008-05-09  Peter Kjellerstedt  <pkj@axis.com>
 
        * gst/rtpmanager/rtpsource.c: (rtp_source_finalize):
index 57dd84523b8b2eb350eea1e7edea34bd47e27bc8..a2249fae5c58af354afc53c7f14e083d943b982e 100644 (file)
@@ -1345,6 +1345,10 @@ mpegts_packetizer_parse_eit (MpegTSPacketizer * packetizer,
       "version-number", G_TYPE_UINT, section->version_number,
       "current-next-indicator", G_TYPE_UINT, section->current_next_indicator,
       "service-id", G_TYPE_UINT, service_id,
+      "actual-transport-stream", G_TYPE_BOOLEAN, (section->table_id == 0x4E ||
+          (section->table_id >= 0x50 && section->table_id <= 0x5F)),
+      "present-following", G_TYPE_BOOLEAN, (section->table_id == 0x4E ||
+          section->table_id == 0x4F),
       "transport-stream-id", G_TYPE_UINT, transport_stream_id,
       "original-network-id", G_TYPE_UINT, original_network_id,
       "segment-last-section-number", G_TYPE_UINT, segment_last_section_number,
index 77f65f00c4341863f32cf3d002946396171baeda..ba1fa8874095672e72d4dd8ec5fd3fbeca67f95b 100644 (file)
@@ -800,6 +800,7 @@ mpegts_parse_is_psi (MpegTSParse * parse, MpegTSPacketizerPacket * packet)
       i = 0;
       while (si_tables[i] != TABLE_ID_UNSET) {
         if (si_tables[i] == table_id) {
+          GST_DEBUG_OBJECT (parse, "Packet has table id 0x%x", table_id);
           retval = TRUE;
           break;
         }
@@ -1095,6 +1096,7 @@ mpegts_parse_handle_psi (MpegTSParse * parse, MpegTSPacketizerSection * section)
       break;
     }
     case 0x42:
+    case 0x46:
     {
       /* SDT */
       GstStructure *sdt_info;
@@ -1107,6 +1109,7 @@ mpegts_parse_handle_psi (MpegTSParse * parse, MpegTSPacketizerSection * section)
       break;
     }
     case 0x4E:
+    case 0x4F:
       /* EIT, present/following */
     case 0x50:
     case 0x51:
@@ -1124,6 +1127,22 @@ mpegts_parse_handle_psi (MpegTSParse * parse, MpegTSPacketizerSection * section)
     case 0x5D:
     case 0x5E:
     case 0x5F:
+    case 0x60:
+    case 0x61:
+    case 0x62:
+    case 0x63:
+    case 0x64:
+    case 0x65:
+    case 0x66:
+    case 0x67:
+    case 0x68:
+    case 0x69:
+    case 0x6A:
+    case 0x6B:
+    case 0x6C:
+    case 0x6D:
+    case 0x6E:
+    case 0x6F:
       /* EIT, schedule */
     {
       /* EIT */