There are many problems of current qsv trellis option:
1. Duplicated with AVCodecContext definition
2. MFX_TRELLIS_XXX is introduced by MSDK API 1.17
Currently Without MSDK API checking thus may cause compilation issue.
3. user is inclined to enable trellis when set "-trellis 1", but
actually it is to disable since MFX_TRELLIS_OFF is equal to 1.
4. It is too complex for user to enable trellis for every frame(I/P/B).
Just simply remove the private option, and switch to the AVCodecContext
definition. Compatibility should not a big problem (expect can't exact map)
since the option name is same as AVCodecContext.
Signed-off-by: Zhong Li
---
libavcodec/qsvenc.h | 1 -
libavcodec/qsvenc_h264.c | 6 --
2 files changed, 7 deletions(-)
diff --git a/libavcodec/qsvenc.h b/libavcodec/qsvenc.h
index 3030e4413f..6e50baa783 100644
--- a/libavcodec/qsvenc.h
+++ b/libavcodec/qsvenc.h
@@ -160,7 +160,6 @@ typedef struct QSVEncContext {
int single_sei_nal_unit;
int max_dec_frame_buffering;
-int trellis;
int bitrate_limit;
int mbbrc;
diff --git a/libavcodec/qsvenc_h264.c b/libavcodec/qsvenc_h264.c
index 4fea69fb2c..2bf3419d27 100644
--- a/libavcodec/qsvenc_h264.c
+++ b/libavcodec/qsvenc_h264.c
@@ -132,12 +132,6 @@ static const AVOption options[] = {
{ "int_ref_qp_delta", "QP difference for the refresh MBs",
OFFSET(qsv.int_ref_qp_delta),AV_OPT_TYPE_INT, { .i64 = INT16_MIN },
INT16_MIN, INT16_MAX, VE },
{ "recovery_point_sei", "Insert recovery point SEI messages",
OFFSET(qsv.recovery_point_sei), AV_OPT_TYPE_INT, { .i64 = -1 },
-1, 1, VE },
-{ "trellis", "Trellis quantization",
OFFSET(qsv.trellis), AV_OPT_TYPE_FLAGS, { .i64 = 0 }, 0,
UINT_MAX, VE, "trellis" },
-{ "off", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = MFX_TRELLIS_OFF },
.flags = VE, "trellis" },
-{ "I", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = MFX_TRELLIS_I },
.flags = VE, "trellis" },
-{ "P", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = MFX_TRELLIS_P },
.flags = VE, "trellis" },
-{ "B", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = MFX_TRELLIS_B },
.flags = VE, "trellis" },
-
{ "profile", NULL, OFFSET(qsv.profile), AV_OPT_TYPE_INT, { .i64 =
MFX_PROFILE_UNKNOWN }, 0, INT_MAX, VE, "profile" },
{ "unknown" , NULL, 0, AV_OPT_TYPE_CONST, { .i64 = MFX_PROFILE_UNKNOWN
}, INT_MIN, INT_MAX, VE, "profile" },
{ "baseline", NULL, 0, AV_OPT_TYPE_CONST, { .i64 =
MFX_PROFILE_AVC_BASELINE }, INT_MIN, INT_MAX, VE, "profile" },
--
2.17.1
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".