[FFmpeg-cvslog] libaomenc: fix profile setting

James Almer git at videolan.org
Fri Mar 30 21:45:12 EEST 2018


ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Thu Mar 29 13:03:04 2018 -0300| [ea3320bb828553182fb34e164826f95df5743522] | committer: James Almer

libaomenc: fix profile setting

Main Profile is yuv420p 8 and 10 bit
High Profile is yuv444p 8 and 10 bit
Professional Profile is yuv422p 8, 10, and 12 bit, plus every other pixfmt at 12 bit

Signed-off-by: James Almer <jamrial at gmail.com>

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

 libavcodec/libaomenc.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/libavcodec/libaomenc.c b/libavcodec/libaomenc.c
index a2a2c3994b..9807bd5adb 100644
--- a/libavcodec/libaomenc.c
+++ b/libavcodec/libaomenc.c
@@ -301,14 +301,14 @@ static av_cold int aom_init(AVCodecContext *avctx)
      * quality. */
     if (avctx->profile != FF_PROFILE_UNKNOWN)
         enccfg.g_profile = avctx->profile;
-    else if (avctx->pix_fmt == AV_PIX_FMT_YUV420P)
+    else if (avctx->pix_fmt == AV_PIX_FMT_YUV420P ||
+             avctx->pix_fmt == AV_PIX_FMT_YUV420P10)
         avctx->profile = enccfg.g_profile = FF_PROFILE_AV1_MAIN;
+    else if (avctx->pix_fmt == AV_PIX_FMT_YUV444P ||
+             avctx->pix_fmt == AV_PIX_FMT_YUV444P10)
+        avctx->profile = enccfg.g_profile = FF_PROFILE_AV1_HIGH;
     else {
-        const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(avctx->pix_fmt);
-        if (desc->comp[0].depth < 12)
-            avctx->profile = enccfg.g_profile = FF_PROFILE_AV1_HIGH;
-        else
-            avctx->profile = enccfg.g_profile = FF_PROFILE_AV1_PROFESSIONAL;
+        avctx->profile = enccfg.g_profile = FF_PROFILE_AV1_PROFESSIONAL;
     }
 
 



More information about the ffmpeg-cvslog mailing list