gst/mpegtsparse/: Make sure all schedule EIT and non-actual transport stream

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.
This commit is contained in:
Zaheer Abbas Merali 2008-05-09 10:21:07 +00:00
parent 977c7f0d90
commit a6e1c40344
3 changed files with 31 additions and 0 deletions

View file

@ -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> 2008-05-09 Peter Kjellerstedt <pkj@axis.com>
* gst/rtpmanager/rtpsource.c: (rtp_source_finalize): * gst/rtpmanager/rtpsource.c: (rtp_source_finalize):

View file

@ -1345,6 +1345,10 @@ mpegts_packetizer_parse_eit (MpegTSPacketizer * packetizer,
"version-number", G_TYPE_UINT, section->version_number, "version-number", G_TYPE_UINT, section->version_number,
"current-next-indicator", G_TYPE_UINT, section->current_next_indicator, "current-next-indicator", G_TYPE_UINT, section->current_next_indicator,
"service-id", G_TYPE_UINT, service_id, "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, "transport-stream-id", G_TYPE_UINT, transport_stream_id,
"original-network-id", G_TYPE_UINT, original_network_id, "original-network-id", G_TYPE_UINT, original_network_id,
"segment-last-section-number", G_TYPE_UINT, segment_last_section_number, "segment-last-section-number", G_TYPE_UINT, segment_last_section_number,

View file

@ -800,6 +800,7 @@ mpegts_parse_is_psi (MpegTSParse * parse, MpegTSPacketizerPacket * packet)
i = 0; i = 0;
while (si_tables[i] != TABLE_ID_UNSET) { while (si_tables[i] != TABLE_ID_UNSET) {
if (si_tables[i] == table_id) { if (si_tables[i] == table_id) {
GST_DEBUG_OBJECT (parse, "Packet has table id 0x%x", table_id);
retval = TRUE; retval = TRUE;
break; break;
} }
@ -1095,6 +1096,7 @@ mpegts_parse_handle_psi (MpegTSParse * parse, MpegTSPacketizerSection * section)
break; break;
} }
case 0x42: case 0x42:
case 0x46:
{ {
/* SDT */ /* SDT */
GstStructure *sdt_info; GstStructure *sdt_info;
@ -1107,6 +1109,7 @@ mpegts_parse_handle_psi (MpegTSParse * parse, MpegTSPacketizerSection * section)
break; break;
} }
case 0x4E: case 0x4E:
case 0x4F:
/* EIT, present/following */ /* EIT, present/following */
case 0x50: case 0x50:
case 0x51: case 0x51:
@ -1124,6 +1127,22 @@ mpegts_parse_handle_psi (MpegTSParse * parse, MpegTSPacketizerSection * section)
case 0x5D: case 0x5D:
case 0x5E: case 0x5E:
case 0x5F: 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, schedule */
{ {
/* EIT */ /* EIT */