get rid of MAX_STREAMS limit in mpegts
authorAurelien Jacobs <aurel@gnuage.org>
Mon, 9 Aug 2010 23:21:08 +0000 (23:21 +0000)
committerAurelien Jacobs <aurel@gnuage.org>
Mon, 9 Aug 2010 23:21:08 +0000 (23:21 +0000)
Originally committed as revision 24753 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/mpegts.c

index 27d13bc..997b768 100644 (file)
@@ -682,11 +682,15 @@ static int mpegts_push_data(MpegTSFilter *filter,
                     code = pes->header[3] | 0x100;
                     dprintf(pes->stream, "pid=%x pes_code=%#x\n", pes->pid, code);
 
-                    if ((!pes->st && pes->stream->nb_streams == MAX_STREAMS) ||
-                        (pes->st && pes->st->discard == AVDISCARD_ALL) ||
+                    if ((pes->st && pes->st->discard == AVDISCARD_ALL) ||
                         code == 0x1be) /* padding_stream */
                         goto skip;
 
+#if LIBAVFORMAT_VERSION_MAJOR < 53
+                    if (!pes->st && pes->stream->nb_streams == MAX_STREAMS)
+                        goto skip;
+#endif
+
                     /* stream not present in PMT */
                     if (!pes->st) {
                         pes->st = av_new_stream(ts->stream, pes->pid);