[FFmpeg-devel] [PATCH 4/4] avformat/mov: Break out of inner loop early in mov_estimate_video_delay()

Michael Niedermayer michael at niedermayer.cc
Wed Jul 11 03:17:58 EEST 2018


0.266 <- 0.299 sec (this is time ffmpeg so containing alot other things)

Sample for benchmark was: ffmpeg -f rawvideo -pix_fmt yuv420p -s 32x32 -i /dev/zero -t 24:00:00.00 out.mp4

Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
---
 libavformat/mov.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/libavformat/mov.c b/libavformat/mov.c
index 951a337cca..b0b9fd99cc 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -3331,7 +3331,8 @@ static void mov_estimate_video_delay(MOVContext *c, AVStream* st) {
                 if (pts_buf[j] < pts_buf[r]) {
                     FFSWAP(int64_t, pts_buf[j], pts_buf[r]);
                     ++num_swaps;
-                }
+                } else
+                    break;
                 j = r;
             }
             st->codecpar->video_delay = FFMAX(st->codecpar->video_delay, num_swaps);
-- 
2.18.0



More information about the ffmpeg-devel mailing list