lavc/qsvenc: use the common option "trellis" of AVCodecContext
authorZhong Li <zhong.li@intel.com>
Wed, 27 Mar 2019 11:33:37 +0000 (19:33 +0800)
committerZhong Li <zhong.li@intel.com>
Thu, 28 Mar 2019 13:50:01 +0000 (21:50 +0800)
Signed-off-by: Zhong Li <zhong.li@intel.com>
libavcodec/qsvenc.c
libavcodec/qsvenc_h264.c
libavcodec/qsvenc_hevc.c
libavcodec/qsvenc_mpeg2.c

index 9091772..a6641f6 100644 (file)
@@ -683,7 +683,10 @@ FF_ENABLE_DEPRECATION_WARNINGS
 #endif
 
 #if QSV_HAVE_TRELLIS
-            q->extco2.Trellis = q->trellis;
+            if (avctx->trellis >= 0)
+                q->extco2.Trellis = (avctx->trellis == 0) ? MFX_TRELLIS_OFF : (MFX_TRELLIS_I | MFX_TRELLIS_P | MFX_TRELLIS_B);
+            else
+                q->extco2.Trellis = MFX_TRELLIS_UNKNOWN;
 #endif
 
 #if QSV_VERSION_ATLEAST(1, 8)
index f458137..4fea69f 100644 (file)
@@ -181,7 +181,7 @@ static const AVCodecDefault qsv_enc_defaults[] = {
 #if FF_API_CODER_TYPE
     { "coder",     "-1"    },
 #endif
-
+    { "trellis",   "-1"    },
     { "flags",     "+cgop" },
 #if FF_API_PRIVATE_OPT
     { "b_strategy", "-1"   },
index 1c615b4..d2e5432 100644 (file)
@@ -254,7 +254,7 @@ static const AVCodecDefault qsv_enc_defaults[] = {
     // same as the x264 default
     { "g",         "248"   },
     { "bf",        "8"     },
-
+    { "trellis",   "-1"    },
     { "flags",     "+cgop" },
 #if FF_API_PRIVATE_OPT
     { "b_strategy", "-1"   },
index a7427d8..e4ade56 100644 (file)
@@ -87,7 +87,7 @@ static const AVCodecDefault qsv_enc_defaults[] = {
     // same as the x264 default
     { "g",         "250"   },
     { "bf",        "3"     },
-
+    { "trellis",   "-1"    },
     { "flags",     "+cgop" },
 #if FF_API_PRIVATE_OPT
     { "b_strategy", "-1"   },