mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
avcodec/mpegvideo: Deprecate bframe opts for encoders not supporting them
MPEG-1/2/4 are the only mpegvideo based encoders that support bframes; yet even the encoders not supporting bframes have options that only make sense for an encoder that supports bframes; setting any of these options for such an encoder has no impact on the encoded outcome (but setting b_strategy to two slows down encoding considerably). So deprecate these options. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
parent
6c2cc205f6
commit
7d9afb46f2
@ -597,6 +597,7 @@ FF_MPV_COMMON_OPTS
|
||||
#if FF_API_MPEGVIDEO_OPTS
|
||||
FF_MPV_DEPRECATED_MPEG_QUANT_OPT
|
||||
FF_MPV_DEPRECATED_A53_CC_OPT
|
||||
FF_MPV_DEPRECATED_BFRAME_OPTS
|
||||
#endif
|
||||
{ NULL},
|
||||
};
|
||||
|
@ -1148,6 +1148,7 @@ av_cold void ff_mpeg1_encode_init(MpegEncContext *s)
|
||||
OFFSET(scan_offset), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, \
|
||||
{ "timecode_frame_start", "GOP timecode frame start number, in non-drop-frame format", \
|
||||
OFFSET(timecode_frame_start), AV_OPT_TYPE_INT64, {.i64 = -1 }, -1, INT64_MAX, VE}, \
|
||||
FF_MPV_COMMON_BFRAME_OPTS
|
||||
|
||||
static const AVOption mpeg1_options[] = {
|
||||
COMMON_OPTS
|
||||
|
@ -1377,6 +1377,7 @@ static const AVOption options[] = {
|
||||
{ "alternate_scan", "Enable alternate scantable.", OFFSET(alternate_scan), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE },
|
||||
{ "mpeg_quant", "Use MPEG quantizers instead of H.263",
|
||||
OFFSET(mpeg_quant), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 1, VE },
|
||||
FF_MPV_COMMON_BFRAME_OPTS
|
||||
FF_MPV_COMMON_OPTS
|
||||
#if FF_API_MPEGVIDEO_OPTS
|
||||
FF_MPV_DEPRECATED_A53_CC_OPT
|
||||
|
@ -662,9 +662,6 @@ FF_MPV_OPT_CMP_FUNC, \
|
||||
{ "zero", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = FF_ME_ZERO }, 0, 0, FF_MPV_OPT_FLAGS, "motion_est" }, \
|
||||
{ "epzs", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = FF_ME_EPZS }, 0, 0, FF_MPV_OPT_FLAGS, "motion_est" }, \
|
||||
{ "xone", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = FF_ME_XONE }, 0, 0, FF_MPV_OPT_FLAGS, "motion_est" }, \
|
||||
{"b_strategy", "Strategy to choose between I/P/B-frames", FF_MPV_OFFSET(b_frame_strategy), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 2, FF_MPV_OPT_FLAGS }, \
|
||||
{"b_sensitivity", "Adjust sensitivity of b_frame_strategy 1", FF_MPV_OFFSET(b_sensitivity), AV_OPT_TYPE_INT, {.i64 = 40 }, 1, INT_MAX, FF_MPV_OPT_FLAGS }, \
|
||||
{"brd_scale", "Downscale frames for dynamic B-frame decision", FF_MPV_OFFSET(brd_scale), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 3, FF_MPV_OPT_FLAGS }, \
|
||||
{"skip_threshold", "Frame skip threshold", FF_MPV_OFFSET(frame_skip_threshold), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \
|
||||
{"skip_factor", "Frame skip factor", FF_MPV_OFFSET(frame_skip_factor), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \
|
||||
{"skip_exp", "Frame skip exponent", FF_MPV_OFFSET(frame_skip_exp), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \
|
||||
@ -677,6 +674,11 @@ FF_MPV_OPT_CMP_FUNC, \
|
||||
{"intra_penalty", "Penalty for intra blocks in block decision", FF_MPV_OFFSET(intra_penalty), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, INT_MAX/2, FF_MPV_OPT_FLAGS }, \
|
||||
FF_MPV_RC_STRATEGY_OPTS
|
||||
|
||||
#define FF_MPV_COMMON_BFRAME_OPTS \
|
||||
{"b_strategy", "Strategy to choose between I/P/B-frames", FF_MPV_OFFSET(b_frame_strategy), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 2, FF_MPV_OPT_FLAGS }, \
|
||||
{"b_sensitivity", "Adjust sensitivity of b_frame_strategy 1", FF_MPV_OFFSET(b_sensitivity), AV_OPT_TYPE_INT, {.i64 = 40 }, 1, INT_MAX, FF_MPV_OPT_FLAGS }, \
|
||||
{"brd_scale", "Downscale frames for dynamic B-frame decision", FF_MPV_OFFSET(brd_scale), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 3, FF_MPV_OPT_FLAGS },
|
||||
|
||||
#if FF_API_MPEGVIDEO_OPTS
|
||||
#define FF_MPV_DEPRECATED_MPEG_QUANT_OPT \
|
||||
{ "mpeg_quant", "Deprecated, does nothing", FF_MPV_OFFSET(mpeg_quant), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 0, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED },
|
||||
@ -684,6 +686,10 @@ FF_MPV_RC_STRATEGY_OPTS
|
||||
{ "a53cc", "Deprecated, does nothing", FF_MPV_OFFSET(a53_cc), AV_OPT_TYPE_BOOL, { .i64 = 1 }, 0, 1, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED },
|
||||
#define FF_MPV_DEPRECATED_MATRIX_OPT \
|
||||
{ "force_duplicated_matrix", "Deprecated, does nothing", FF_MPV_OFFSET(force_duplicated_matrix), AV_OPT_TYPE_BOOL, {.i64 = 0 }, 0, 1, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED },
|
||||
#define FF_MPV_DEPRECATED_BFRAME_OPTS \
|
||||
{ "b_strategy", "Deprecated, does nothing", FF_MPV_OFFSET(b_frame_strategy), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 2, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, \
|
||||
{ "b_sensitivity", "Deprecated, does nothing", FF_MPV_OFFSET(b_sensitivity), AV_OPT_TYPE_INT, { .i64 = 40 }, 1, INT_MAX, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, \
|
||||
{ "brd_scale", "Deprecated, does nothing", FF_MPV_OFFSET(brd_scale), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 3, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED },
|
||||
#endif
|
||||
|
||||
extern const AVOption ff_mpv_generic_options[];
|
||||
|
@ -90,6 +90,7 @@ const AVOption ff_mpv_generic_options[] = {
|
||||
FF_MPV_DEPRECATED_MPEG_QUANT_OPT
|
||||
FF_MPV_DEPRECATED_A53_CC_OPT
|
||||
FF_MPV_DEPRECATED_MATRIX_OPT
|
||||
FF_MPV_DEPRECATED_BFRAME_OPTS
|
||||
#endif
|
||||
{ NULL },
|
||||
};
|
||||
@ -4716,6 +4717,7 @@ static const AVOption h263_options[] = {
|
||||
FF_MPV_DEPRECATED_MPEG_QUANT_OPT
|
||||
FF_MPV_DEPRECATED_A53_CC_OPT
|
||||
FF_MPV_DEPRECATED_MATRIX_OPT
|
||||
FF_MPV_DEPRECATED_BFRAME_OPTS
|
||||
#endif
|
||||
{ NULL },
|
||||
};
|
||||
@ -4751,6 +4753,7 @@ static const AVOption h263p_options[] = {
|
||||
FF_MPV_DEPRECATED_MPEG_QUANT_OPT
|
||||
FF_MPV_DEPRECATED_A53_CC_OPT
|
||||
FF_MPV_DEPRECATED_MATRIX_OPT
|
||||
FF_MPV_DEPRECATED_BFRAME_OPTS
|
||||
#endif
|
||||
{ NULL },
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user