[FFmpeg-devel] [PATCH 6/7] fftools/ffmpeg: Avoid creating unnecessary reference

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Fri Dec 3 22:45:47 EET 2021


The only caller of do_video_out() doesn't need the frame afterwards,
ergo one can replace an av_frame_ref() by av_frame_move_ref().

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
---
 fftools/ffmpeg.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c
index 8c3a4f7c0c..638a6441c4 100644
--- a/fftools/ffmpeg.c
+++ b/fftools/ffmpeg.c
@@ -1138,6 +1138,7 @@ static void do_subtitle_out(OutputFile *of,
     }
 }
 
+/* May modify/reset next_picture */
 static void do_video_out(OutputFile *of,
                          OutputStream *ost,
                          AVFrame *next_picture)
@@ -1421,8 +1422,7 @@ static void do_video_out(OutputFile *of,
 
     av_frame_unref(ost->last_frame);
     if (next_picture)
-        if (av_frame_ref(ost->last_frame, next_picture) < 0)
-            goto error;
+        av_frame_move_ref(ost->last_frame, next_picture);
 
     return;
 error:
-- 
2.32.0



More information about the ffmpeg-devel mailing list