diff options
Diffstat (limited to 'ffmpeg.c')
-rw-r--r-- | ffmpeg.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -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 |