---
avconv.c | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/avconv.c b/avconv.c
index e07a2cd..acb4994 100644
--- a/avconv.c
+++ b/avconv.c
@@ -1084,11 +1084,15 @@ static int decode_audio(InputStream *ist, AVPacket
*pkt, int *got_output)
/* if the decoder provides a pts, use it instead of the last packet pts.
the decoder could be delaying output by a packet or more. */
if (decoded_frame->pts != AV_NOPTS_VALUE)
- ist->next_dts = decoded_frame->pts;
+ ist->next_dts = av_rescale_q(decoded_frame->pts, avctx->time_base,
+ AV_TIME_BASE_Q);
else if (pkt->pts != AV_NOPTS_VALUE) {
decoded_frame->pts = pkt->pts;
pkt->pts = AV_NOPTS_VALUE;
}
+ if (ist->next_dts != AV_NOPTS_VALUE)
+ ist->next_dts += av_rescale_q(decoded_frame->nb_samples,
avctx->time_base,
+ AV_TIME_BASE_Q);
// preprocess audio (volume)
if (audio_volume != 256) {
--
1.7.1
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel