Module: libav Branch: master Commit: 1ae8198bca749a0cff205196cc83d35b9962849b
Author: Anton Khirnov <[email protected]> Committer: Anton Khirnov <[email protected]> Date: Sat Apr 12 21:55:46 2014 +0200 avconv: always reset packet pts after decoding an audio frame Currently, if a decoder sets AVFrame.pts, we'd send the same timestamp to it twice, which is wrong. --- avconv.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/avconv.c b/avconv.c index 866b90c..79d5e67 100644 --- a/avconv.c +++ b/avconv.c @@ -1175,10 +1175,9 @@ static int decode_audio(InputStream *ist, AVPacket *pkt, int *got_output) the decoder could be delaying output by a packet or more. */ if (decoded_frame->pts != AV_NOPTS_VALUE) ist->next_dts = decoded_frame->pts; - else if (pkt->pts != AV_NOPTS_VALUE) { + else if (pkt->pts != AV_NOPTS_VALUE) decoded_frame->pts = pkt->pts; - pkt->pts = AV_NOPTS_VALUE; - } + pkt->pts = AV_NOPTS_VALUE; resample_changed = ist->resample_sample_fmt != decoded_frame->format || ist->resample_channels != avctx->channels || _______________________________________________ libav-commits mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-commits
