[2/2] libaomenc: fix profile setting

Message ID 20180329161050.12264-2-jamrial@gmail.com
State Committed
Commit ea3320bb828553182fb34e164826f95df5743522
Headers show
Series
  • Untitled series #72
Related show

Commit Message

James Almer March 29, 2018, 4:10 p.m.
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@gmail.com>
---
 libavcodec/libaomenc.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

Patch

diff --git a/libavcodec/libaomenc.c b/libavcodec/libaomenc.c
index a2a2c3994..9807bd5ad 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;
     }