ffmpeg: use pkt_pts before pkt->pts for audio
authorMichael Niedermayer <michaelni@gmx.at>
Sat, 14 Jul 2012 02:24:40 +0000 (04:24 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sat, 14 Jul 2012 02:24:40 +0000 (04:24 +0200)
This fixes the timestamp of the first packet when samples have been skiped.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
ffmpeg.c

index 4afc55b..4fe9d23 100644 (file)
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -2383,7 +2383,10 @@ 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->dts = ist->next_dts = ist->pts = ist->next_pts = decoded_frame->pts;
-    else if (pkt->pts != AV_NOPTS_VALUE) {
+    else if (decoded_frame->pkt_pts != AV_NOPTS_VALUE) {
+        decoded_frame->pts = decoded_frame->pkt_pts;
+        pkt->pts           = AV_NOPTS_VALUE;
+    } else if (pkt->pts != AV_NOPTS_VALUE) {
         decoded_frame->pts = pkt->pts;
         pkt->pts           = AV_NOPTS_VALUE;
     }else