On Mon, Nov 07, 2016 at 11:49:52PM +0100, Andreas Cadhalpun wrote: > Signed-off-by: Andreas Cadhalpun <andreas.cadhal...@googlemail.com> > --- > libavformat/mpegts.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c > index fad10c6..77d63f2 100644 > --- a/libavformat/mpegts.c > +++ b/libavformat/mpegts.c > @@ -2692,6 +2692,10 @@ static int mpegts_read_header(AVFormatContext *s) > /* NOTE1: the bitrate is computed without the FEC */ > /* NOTE2: it is only the bitrate of the start of the stream */ > ts->pcr_incr = (pcrs[1] - pcrs[0]) / (packet_count[1] - > packet_count[0]); > + if (ts->pcr_incr <= 0) { > + av_log(s, AV_LOG_ERROR, "invalid pcr increment %d\n", > ts->pcr_incr); > + return AVERROR_INVALIDDATA; > + }
if a pcr pair is bad i would suggest to run the loop by another iteration also i dont think the demuxer should fail hard and fatal from bad pcr (it would fail completely if it fails at header reading time) [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB If you fake or manipulate statistics in a paper in physics you will never get a job again. If you fake or manipulate statistics in a paper in medicin you will get a job for life at the pharma industry.
signature.asc
Description: Digital signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel