diff options
author | Anton Khirnov <anton@khirnov.net> | 2014-04-12 21:55:46 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2014-04-22 07:45:49 +0200 |
commit | 1ae8198bca749a0cff205196cc83d35b9962849b (patch) | |
tree | 88748d46756e51d892d757af25000eb6fb89b10a | |
parent | b19a5e51981be5b69cf550a3bc17fe5300d0dbc9 (diff) | |
download | ffmpeg-streaming-1ae8198bca749a0cff205196cc83d35b9962849b.zip ffmpeg-streaming-1ae8198bca749a0cff205196cc83d35b9962849b.tar.gz |
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.
-rw-r--r-- | avconv.c | 5 |
1 files changed, 2 insertions, 3 deletions
@@ -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 || |