From e39382dedd224a97a896034c43772fa3da924b15 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Fri, 5 Oct 2012 16:35:45 +0200 Subject: [PATCH] decoder/ffmpeg: ignore negative time stamps Works around assertion failure in decoder_timestamp(). --- NEWS | 2 ++ src/decoder/ffmpeg_decoder_plugin.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/NEWS b/NEWS index b280e6162..34d5f95aa 100644 --- a/NEWS +++ b/NEWS @@ -4,6 +4,8 @@ ver 0.17.3 (2012/??/??) - recorder: fix I/O error check - shout: fix memory leak in error handler - recorder, shout: support Ogg packets that span more than one page +* decoder: + - ffmpeg: ignore negative time stamps ver 0.17.2 (2012/09/30) * protocol: diff --git a/src/decoder/ffmpeg_decoder_plugin.c b/src/decoder/ffmpeg_decoder_plugin.c index bab6968e8..64227b85a 100644 --- a/src/decoder/ffmpeg_decoder_plugin.c +++ b/src/decoder/ffmpeg_decoder_plugin.c @@ -273,7 +273,7 @@ ffmpeg_send_packet(struct decoder *decoder, struct input_stream *is, AVCodecContext *codec_context, const AVRational *time_base) { - if (packet->pts != (int64_t)AV_NOPTS_VALUE) + if (packet->pts >= 0 && packet->pts != (int64_t)AV_NOPTS_VALUE) decoder_timestamp(decoder, time_from_ffmpeg(packet->pts, *time_base));