[FFmpeg-cvslog] fftools/ffmpeg: stop using packet pts for decoded audio frame pts

Anton Khirnov git at videolan.org
Tue May 2 12:31:21 EEST 2023


ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Sat Apr 22 17:04:37 2023 +0200| [b6e7d6439462e187e4725b611bd996d3ba939df6] | committer: Anton Khirnov

fftools/ffmpeg: stop using packet pts for decoded audio frame pts

If input packets have timestamps, they will be propagated to output
frames by the decoder, so at best this block does not do anything.

There can also be an arbitrary amount of delay between packets sent to
the decoder and decoded frames (e.g. due to decoder's intrinsic delay or
frame threading), so deriving any timestamps from packet properties is
wrong.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b6e7d6439462e187e4725b611bd996d3ba939df6
---

 fftools/ffmpeg.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c
index eae0093cce..5913a57d16 100644
--- a/fftools/ffmpeg.c
+++ b/fftools/ffmpeg.c
@@ -911,9 +911,6 @@ static int decode_audio(InputStream *ist, AVPacket *pkt, int *got_output,
 
     if (decoded_frame->pts != AV_NOPTS_VALUE) {
         decoded_frame_tb   = ist->st->time_base;
-    } else if (pkt && pkt->pts != AV_NOPTS_VALUE) {
-        decoded_frame->pts = pkt->pts;
-        decoded_frame_tb   = pkt->time_base;
     }else {
         decoded_frame->pts = ist->dts;
         decoded_frame_tb   = AV_TIME_BASE_Q;



More information about the ffmpeg-cvslog mailing list