[FFmpeg-cvslog] avcodec/libsvtav1: pass pict_type to library

Christopher Degawa git at videolan.org
Tue Apr 26 02:36:29 EEST 2022


ffmpeg | branch: master | Christopher Degawa <ccom at randomderp.com> | Mon Apr 25 17:54:38 2022 -0500| [6fd1533057ff4f966efc169b71f8c3770843fc49] | committer: James Almer

avcodec/libsvtav1: pass pict_type to library

match the behavior of SvtAv1EncApp to ensure pic_type is always set
before passing it to the library.

The other options for pic_type aren't currently used inside the library,
so they aren't introduced in this patch.

Signed-off-by: Christopher Degawa <ccom at randomderp.com>
Signed-off-by: James Almer <jamrial at gmail.com>

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

 libavcodec/libsvtav1.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/libavcodec/libsvtav1.c b/libavcodec/libsvtav1.c
index 2e3d96ce37..088b9bab02 100644
--- a/libavcodec/libsvtav1.c
+++ b/libavcodec/libsvtav1.c
@@ -404,6 +404,16 @@ static int eb_send_frame(AVCodecContext *avctx, const AVFrame *frame)
     headerPtr->p_app_private = NULL;
     headerPtr->pts           = frame->pts;
 
+    switch (frame->pict_type) {
+    case AV_PICTURE_TYPE_I:
+        headerPtr->pic_type = EB_AV1_KEY_PICTURE;
+        break;
+    default:
+        // Actually means auto, or default.
+        headerPtr->pic_type = EB_AV1_INVALID_PICTURE;
+        break;
+    }
+
     svt_av1_enc_send_picture(svt_enc->svt_handle, headerPtr);
 
     return 0;



More information about the ffmpeg-cvslog mailing list