diff options
author | Zaheer Abbas Merali <zaheer@localhost.localdomain> | 2009-04-10 19:24:26 +0200 |
---|---|---|
committer | Zaheer Abbas Merali <zaheer@localhost.localdomain> | 2009-04-21 12:09:31 +0100 |
commit | 51fdc78786412474e77d7d52887356ce29e21e09 (patch) | |
tree | e3a6747d673e0bb33604196635dde475f4c4c9b7 | |
parent | c5825f9e1d7430d75fc716b08f077d1a071519f7 (diff) | |
download | gst-plugins-bad-51fdc78786412474e77d7d52887356ce29e21e09.tar.gz gst-plugins-bad-51fdc78786412474e77d7d52887356ce29e21e09.tar.bz2 gst-plugins-bad-51fdc78786412474e77d7d52887356ce29e21e09.zip |
mpegtsdemux: add hack specific for itvhd
itvhd masks its h264 video stream as a private stream making it harder for
other set top boxes to decode. this checks for specific program number, video
pid and stream type combination before declaring it as h264.
-rw-r--r-- | gst/mpegdemux/gstmpegtsdemux.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/gst/mpegdemux/gstmpegtsdemux.c b/gst/mpegdemux/gstmpegtsdemux.c index 91e26efc..4464cdf8 100644 --- a/gst/mpegdemux/gstmpegtsdemux.c +++ b/gst/mpegdemux/gstmpegtsdemux.c @@ -1287,11 +1287,10 @@ gst_mpegts_stream_parse_pmt (GstMpegTSStream * stream, /* set as elementary */ ES_stream->PID_type = PID_TYPE_ELEMENTARY; /* set stream type */ - if (program_number == 10510 && stream_type == ST_VIDEO_MPEG1) + /* hack for ITV HD (sid 10510, video pid 3401 */ + if (program_number == 10510 && entry.PID == 3401 && + stream_type == ST_PRIVATE_DATA) stream_type = ST_VIDEO_H264; - else - g_print ("program number: %d stream type: %d pid: %d\n", - program_number, stream_type, entry.PID); ES_stream->stream_type = stream_type; ES_stream->flags &= ~MPEGTS_STREAM_FLAG_STREAM_TYPE_UNKNOWN; |