mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
lavc: remove disabled FF_API_X264_GLOBAL_OPTS cruft.
This commit is contained in:
parent
7460398b89
commit
7232bfbd93
@ -682,19 +682,6 @@ typedef struct RcOverride{
|
||||
#if FF_API_MJPEG_GLOBAL_OPTS
|
||||
#define CODEC_FLAG_EXTERN_HUFF 0x1000 ///< Use external Huffman table (for MJPEG).
|
||||
#endif
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
#define CODEC_FLAG2_BPYRAMID 0x00000010 ///< H.264 allow B-frames to be used as references.
|
||||
#define CODEC_FLAG2_WPRED 0x00000020 ///< H.264 weighted biprediction for B-frames
|
||||
#define CODEC_FLAG2_MIXED_REFS 0x00000040 ///< H.264 one reference per partition, as opposed to one reference per macroblock
|
||||
#define CODEC_FLAG2_8X8DCT 0x00000080 ///< H.264 high profile 8x8 transform
|
||||
#define CODEC_FLAG2_FASTPSKIP 0x00000100 ///< H.264 fast pskip
|
||||
#define CODEC_FLAG2_AUD 0x00000200 ///< H.264 access unit delimiters
|
||||
#define CODEC_FLAG2_BRDO 0x00000400 ///< B-frame rate-distortion optimization
|
||||
#define CODEC_FLAG2_MBTREE 0x00040000 ///< Use macroblock tree ratecontrol (x264 only)
|
||||
#define CODEC_FLAG2_PSY 0x00080000 ///< Use psycho visual optimizations.
|
||||
#define CODEC_FLAG2_SSIM 0x00100000 ///< Compute SSIM during encoding, error[] values are undefined.
|
||||
#define CODEC_FLAG2_INTRA_REFRESH 0x00200000 ///< Use periodic insertion of intra blocks instead of keyframes.
|
||||
#endif
|
||||
#if FF_API_SNOW_GLOBAL_OPTS
|
||||
#define CODEC_FLAG2_MEMC_ONLY 0x00001000 ///< Only do ME/MC (I frames -> ref, P frame -> ME+MC).
|
||||
#endif
|
||||
@ -2636,24 +2623,6 @@ typedef struct AVCodecContext {
|
||||
*/
|
||||
int brd_scale;
|
||||
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
/**
|
||||
* constant rate factor - quality-based VBR - values ~correspond to qps
|
||||
* - encoding: Set by user.
|
||||
* - decoding: unused
|
||||
* @deprecated use 'crf' libx264 private option
|
||||
*/
|
||||
attribute_deprecated float crf;
|
||||
|
||||
/**
|
||||
* constant quantization parameter rate control method
|
||||
* - encoding: Set by user.
|
||||
* - decoding: unused
|
||||
* @deprecated use 'cqp' libx264 private option
|
||||
*/
|
||||
attribute_deprecated int cqp;
|
||||
#endif
|
||||
|
||||
/**
|
||||
* minimum GOP size
|
||||
* - encoding: Set by user.
|
||||
@ -2675,15 +2644,6 @@ typedef struct AVCodecContext {
|
||||
*/
|
||||
int chromaoffset;
|
||||
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
/**
|
||||
* Influence how often B-frames are used.
|
||||
* - encoding: Set by user.
|
||||
* - decoding: unused
|
||||
*/
|
||||
attribute_deprecated int bframebias;
|
||||
#endif
|
||||
|
||||
/**
|
||||
* trellis RD quantization
|
||||
* - encoding: Set by user.
|
||||
@ -2691,50 +2651,6 @@ typedef struct AVCodecContext {
|
||||
*/
|
||||
int trellis;
|
||||
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
/**
|
||||
* Reduce fluctuations in qp (before curve compression).
|
||||
* - encoding: Set by user.
|
||||
* - decoding: unused
|
||||
*/
|
||||
attribute_deprecated float complexityblur;
|
||||
|
||||
/**
|
||||
* in-loop deblocking filter alphac0 parameter
|
||||
* alpha is in the range -6...6
|
||||
* - encoding: Set by user.
|
||||
* - decoding: unused
|
||||
*/
|
||||
attribute_deprecated int deblockalpha;
|
||||
|
||||
/**
|
||||
* in-loop deblocking filter beta parameter
|
||||
* beta is in the range -6...6
|
||||
* - encoding: Set by user.
|
||||
* - decoding: unused
|
||||
*/
|
||||
attribute_deprecated int deblockbeta;
|
||||
|
||||
/**
|
||||
* macroblock subpartition sizes to consider - p8x8, p4x4, b8x8, i8x8, i4x4
|
||||
* - encoding: Set by user.
|
||||
* - decoding: unused
|
||||
*/
|
||||
attribute_deprecated int partitions;
|
||||
#define X264_PART_I4X4 0x001 /* Analyze i4x4 */
|
||||
#define X264_PART_I8X8 0x002 /* Analyze i8x8 (requires 8x8 transform) */
|
||||
#define X264_PART_P8X8 0x010 /* Analyze p16x8, p8x16 and p8x8 */
|
||||
#define X264_PART_P4X4 0x020 /* Analyze p8x4, p4x8, p4x4 */
|
||||
#define X264_PART_B8X8 0x100 /* Analyze b16x8, b8x16 and b8x8 */
|
||||
|
||||
/**
|
||||
* direct MV prediction mode - 0 (none), 1 (spatial), 2 (temporal), 3 (auto)
|
||||
* - encoding: Set by user.
|
||||
* - decoding: unused
|
||||
*/
|
||||
attribute_deprecated int directpred;
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Audio cutoff bandwidth (0 means "automatic")
|
||||
* - encoding: Set by user.
|
||||
@ -2975,69 +2891,6 @@ typedef struct AVCodecContext {
|
||||
*/
|
||||
int (*execute2)(struct AVCodecContext *c, int (*func)(struct AVCodecContext *c2, void *arg, int jobnr, int threadnr), void *arg2, int *ret, int count);
|
||||
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
/**
|
||||
* explicit P-frame weighted prediction analysis method
|
||||
* 0: off
|
||||
* 1: fast blind weighting (one reference duplicate with -1 offset)
|
||||
* 2: smart weighting (full fade detection analysis)
|
||||
* - encoding: Set by user.
|
||||
* - decoding: unused
|
||||
*/
|
||||
attribute_deprecated int weighted_p_pred;
|
||||
|
||||
/**
|
||||
* AQ mode
|
||||
* 0: Disabled
|
||||
* 1: Variance AQ (complexity mask)
|
||||
* 2: Auto-variance AQ (experimental)
|
||||
* - encoding: Set by user
|
||||
* - decoding: unused
|
||||
*/
|
||||
attribute_deprecated int aq_mode;
|
||||
|
||||
/**
|
||||
* AQ strength
|
||||
* Reduces blocking and blurring in flat and textured areas.
|
||||
* - encoding: Set by user
|
||||
* - decoding: unused
|
||||
*/
|
||||
attribute_deprecated float aq_strength;
|
||||
|
||||
/**
|
||||
* PSY RD
|
||||
* Strength of psychovisual optimization
|
||||
* - encoding: Set by user
|
||||
* - decoding: unused
|
||||
*/
|
||||
attribute_deprecated float psy_rd;
|
||||
|
||||
/**
|
||||
* PSY trellis
|
||||
* Strength of psychovisual optimization
|
||||
* - encoding: Set by user
|
||||
* - decoding: unused
|
||||
*/
|
||||
attribute_deprecated float psy_trellis;
|
||||
|
||||
/**
|
||||
* RC lookahead
|
||||
* Number of frames for frametype and ratecontrol lookahead
|
||||
* - encoding: Set by user
|
||||
* - decoding: unused
|
||||
*/
|
||||
attribute_deprecated int rc_lookahead;
|
||||
|
||||
/**
|
||||
* Constant rate factor maximum
|
||||
* With CRF encoding mode and VBV restrictions enabled, prevents quality from being worse
|
||||
* than crf_max, even if doing so would violate VBV restrictions.
|
||||
* - encoding: Set by user.
|
||||
* - decoding: unused
|
||||
*/
|
||||
attribute_deprecated float crf_max;
|
||||
#endif
|
||||
|
||||
int log_level_offset;
|
||||
|
||||
#if FF_API_FLAC_GLOBAL_OPTS
|
||||
|
@ -246,17 +246,6 @@ static av_cold int X264_init(AVCodecContext *avctx)
|
||||
if (avctx->flags & CODEC_FLAG_PASS2) {
|
||||
x4->params.rc.b_stat_read = 1;
|
||||
} else {
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
if (avctx->crf) {
|
||||
x4->params.rc.i_rc_method = X264_RC_CRF;
|
||||
x4->params.rc.f_rf_constant = avctx->crf;
|
||||
x4->params.rc.f_rf_constant_max = avctx->crf_max;
|
||||
} else if (avctx->cqp > -1) {
|
||||
x4->params.rc.i_rc_method = X264_RC_CQP;
|
||||
x4->params.rc.i_qp_constant = avctx->cqp;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (x4->crf >= 0) {
|
||||
x4->params.rc.i_rc_method = X264_RC_CRF;
|
||||
x4->params.rc.f_rf_constant = x4->crf;
|
||||
@ -279,53 +268,6 @@ static av_cold int X264_init(AVCodecContext *avctx)
|
||||
x4->params.rc.f_pb_factor = avctx->b_quant_factor;
|
||||
x4->params.analyse.i_chroma_qp_offset = avctx->chromaoffset;
|
||||
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
if (avctx->aq_mode >= 0)
|
||||
x4->params.rc.i_aq_mode = avctx->aq_mode;
|
||||
if (avctx->aq_strength >= 0)
|
||||
x4->params.rc.f_aq_strength = avctx->aq_strength;
|
||||
if (avctx->psy_rd >= 0)
|
||||
x4->params.analyse.f_psy_rd = avctx->psy_rd;
|
||||
if (avctx->psy_trellis >= 0)
|
||||
x4->params.analyse.f_psy_trellis = avctx->psy_trellis;
|
||||
if (avctx->rc_lookahead >= 0)
|
||||
x4->params.rc.i_lookahead = avctx->rc_lookahead;
|
||||
if (avctx->weighted_p_pred >= 0)
|
||||
x4->params.analyse.i_weighted_pred = avctx->weighted_p_pred;
|
||||
if (avctx->bframebias)
|
||||
x4->params.i_bframe_bias = avctx->bframebias;
|
||||
if (avctx->deblockalpha)
|
||||
x4->params.i_deblocking_filter_alphac0 = avctx->deblockalpha;
|
||||
if (avctx->deblockbeta)
|
||||
x4->params.i_deblocking_filter_beta = avctx->deblockbeta;
|
||||
if (avctx->complexityblur >= 0)
|
||||
x4->params.rc.f_complexity_blur = avctx->complexityblur;
|
||||
if (avctx->directpred >= 0)
|
||||
x4->params.analyse.i_direct_mv_pred = avctx->directpred;
|
||||
if (avctx->partitions) {
|
||||
if (avctx->partitions & X264_PART_I4X4)
|
||||
x4->params.analyse.inter |= X264_ANALYSE_I4x4;
|
||||
if (avctx->partitions & X264_PART_I8X8)
|
||||
x4->params.analyse.inter |= X264_ANALYSE_I8x8;
|
||||
if (avctx->partitions & X264_PART_P8X8)
|
||||
x4->params.analyse.inter |= X264_ANALYSE_PSUB16x16;
|
||||
if (avctx->partitions & X264_PART_P4X4)
|
||||
x4->params.analyse.inter |= X264_ANALYSE_PSUB8x8;
|
||||
if (avctx->partitions & X264_PART_B8X8)
|
||||
x4->params.analyse.inter |= X264_ANALYSE_BSUB16x16;
|
||||
}
|
||||
x4->params.analyse.b_ssim = avctx->flags2 & CODEC_FLAG2_SSIM;
|
||||
x4->params.b_intra_refresh = avctx->flags2 & CODEC_FLAG2_INTRA_REFRESH;
|
||||
x4->params.i_bframe_pyramid = avctx->flags2 & CODEC_FLAG2_BPYRAMID ? X264_B_PYRAMID_NORMAL : X264_B_PYRAMID_NONE;
|
||||
x4->params.analyse.b_weighted_bipred = avctx->flags2 & CODEC_FLAG2_WPRED;
|
||||
x4->params.analyse.b_mixed_references = avctx->flags2 & CODEC_FLAG2_MIXED_REFS;
|
||||
x4->params.analyse.b_transform_8x8 = avctx->flags2 & CODEC_FLAG2_8X8DCT;
|
||||
x4->params.analyse.b_fast_pskip = avctx->flags2 & CODEC_FLAG2_FASTPSKIP;
|
||||
x4->params.b_aud = avctx->flags2 & CODEC_FLAG2_AUD;
|
||||
x4->params.analyse.b_psy = avctx->flags2 & CODEC_FLAG2_PSY;
|
||||
x4->params.rc.b_mb_tree = !!(avctx->flags2 & CODEC_FLAG2_MBTREE);
|
||||
#endif
|
||||
|
||||
if (avctx->me_method == ME_EPZS)
|
||||
x4->params.analyse.i_me_method = X264_ME_DIA;
|
||||
else if (avctx->me_method == ME_HEX)
|
||||
@ -452,9 +394,6 @@ static av_cold int X264_init(AVCodecContext *avctx)
|
||||
avctx->max_b_frames = 0;
|
||||
|
||||
avctx->bit_rate = x4->params.rc.i_bitrate*1000;
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
avctx->crf = x4->params.rc.f_rf_constant;
|
||||
#endif
|
||||
|
||||
x4->enc = x264_encoder_open(&x4->params);
|
||||
if (!x4->enc)
|
||||
|
@ -203,16 +203,6 @@ static av_cold int XAVS_init(AVCodecContext *avctx)
|
||||
if (avctx->flags & CODEC_FLAG_PASS2) {
|
||||
x4->params.rc.b_stat_read = 1;
|
||||
} else {
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
if (avctx->crf) {
|
||||
x4->params.rc.i_rc_method = XAVS_RC_CRF;
|
||||
x4->params.rc.f_rf_constant = avctx->crf;
|
||||
} else if (avctx->cqp > -1) {
|
||||
x4->params.rc.i_rc_method = XAVS_RC_CQP;
|
||||
x4->params.rc.i_qp_constant = avctx->cqp;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (x4->crf >= 0) {
|
||||
x4->params.rc.i_rc_method = XAVS_RC_CRF;
|
||||
x4->params.rc.f_rf_constant = x4->crf;
|
||||
@ -222,32 +212,6 @@ static av_cold int XAVS_init(AVCodecContext *avctx)
|
||||
}
|
||||
}
|
||||
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
if (avctx->bframebias)
|
||||
x4->params.i_bframe_bias = avctx->bframebias;
|
||||
if (avctx->deblockalpha)
|
||||
x4->params.i_deblocking_filter_alphac0 = avctx->deblockalpha;
|
||||
if (avctx->deblockbeta)
|
||||
x4->params.i_deblocking_filter_beta = avctx->deblockbeta;
|
||||
if (avctx->complexityblur >= 0)
|
||||
x4->params.rc.f_complexity_blur = avctx->complexityblur;
|
||||
if (avctx->directpred >= 0)
|
||||
x4->params.analyse.i_direct_mv_pred = avctx->directpred;
|
||||
if (avctx->partitions) {
|
||||
if (avctx->partitions & XAVS_PART_I8X8)
|
||||
x4->params.analyse.inter |= XAVS_ANALYSE_I8x8;
|
||||
if (avctx->partitions & XAVS_PART_P8X8)
|
||||
x4->params.analyse.inter |= XAVS_ANALYSE_PSUB16x16;
|
||||
if (avctx->partitions & XAVS_PART_B8X8)
|
||||
x4->params.analyse.inter |= XAVS_ANALYSE_BSUB16x16;
|
||||
}
|
||||
x4->params.rc.b_mb_tree = !!(avctx->flags2 & CODEC_FLAG2_MBTREE);
|
||||
x4->params.b_aud = avctx->flags2 & CODEC_FLAG2_AUD;
|
||||
x4->params.analyse.b_mixed_references = avctx->flags2 & CODEC_FLAG2_MIXED_REFS;
|
||||
x4->params.analyse.b_fast_pskip = avctx->flags2 & CODEC_FLAG2_FASTPSKIP;
|
||||
x4->params.analyse.b_weighted_bipred = avctx->flags2 & CODEC_FLAG2_WPRED;
|
||||
#endif
|
||||
|
||||
if (x4->aud >= 0)
|
||||
x4->params.b_aud = x4->aud;
|
||||
if (x4->mbtree >= 0)
|
||||
|
@ -159,9 +159,6 @@ static const AVOption options[]={
|
||||
{"b_qfactor", "qp factor between p and b frames", OFFSET(b_quant_factor), AV_OPT_TYPE_FLOAT, {.dbl = 1.25 }, -FLT_MAX, FLT_MAX, V|E},
|
||||
{"rc_strategy", "ratecontrol method", OFFSET(rc_strategy), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
|
||||
{"b_strategy", "strategy to choose between I/P/B-frames", OFFSET(b_frame_strategy), AV_OPT_TYPE_INT, {.dbl = 0 }, INT_MIN, INT_MAX, V|E},
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
{"wpredp", "weighted prediction analysis method", OFFSET(weighted_p_pred), AV_OPT_TYPE_INT, {.dbl = -1 }, INT_MIN, INT_MAX, V|E},
|
||||
#endif
|
||||
{"ps", "rtp payload size in bytes", OFFSET(rtp_payload_size), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
|
||||
{"mv_bits", NULL, OFFSET(mv_bits), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
|
||||
{"header_bits", NULL, OFFSET(header_bits), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
|
||||
@ -351,17 +348,12 @@ static const AVOption options[]={
|
||||
{"nr", "noise reduction", OFFSET(noise_reduction), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
|
||||
{"rc_init_occupancy", "number of bits which should be loaded into the rc buffer before decoding starts", OFFSET(rc_initial_buffer_occupancy), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
|
||||
{"inter_threshold", NULL, OFFSET(inter_threshold), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
#define X264_DEFAULTS CODEC_FLAG2_FASTPSKIP|CODEC_FLAG2_PSY|CODEC_FLAG2_MBTREE
|
||||
#else
|
||||
#define X264_DEFAULTS 0
|
||||
#endif
|
||||
#if FF_API_LAME_GLOBAL_OPTS
|
||||
#define LAME_DEFAULTS CODEC_FLAG2_BIT_RESERVOIR
|
||||
#else
|
||||
#define LAME_DEFAULTS 0
|
||||
#endif
|
||||
{"flags2", NULL, OFFSET(flags2), AV_OPT_TYPE_FLAGS, {.dbl = X264_DEFAULTS|LAME_DEFAULTS }, 0, UINT_MAX, V|A|E|D, "flags2"},
|
||||
{"flags2", NULL, OFFSET(flags2), AV_OPT_TYPE_FLAGS, {.dbl = LAME_DEFAULTS }, 0, UINT_MAX, V|A|E|D, "flags2"},
|
||||
{"error", NULL, OFFSET(error_rate), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
|
||||
#if FF_API_ANTIALIAS_ALGO
|
||||
{"antialias", "MP3 antialias algorithm", OFFSET(antialias_algo), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|D, "aa"},
|
||||
@ -412,38 +404,11 @@ static const AVOption options[]={
|
||||
{"all" , NULL, 0, AV_OPT_TYPE_CONST, {.dbl = AVDISCARD_ALL }, INT_MIN, INT_MAX, V|D, "avdiscard"},
|
||||
{"bidir_refine", "refine the two motion vectors used in bidirectional macroblocks", OFFSET(bidir_refine), AV_OPT_TYPE_INT, {.dbl = 1 }, 0, 4, V|E},
|
||||
{"brd_scale", "downscales frames for dynamic B-frame decision", OFFSET(brd_scale), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, 10, V|E},
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
{"crf", "enables constant quality mode, and selects the quality (x264)", OFFSET(crf), AV_OPT_TYPE_FLOAT, {.dbl = DEFAULT }, 0, 51, V|E},
|
||||
{"cqp", "constant quantization parameter rate control method", OFFSET(cqp), AV_OPT_TYPE_INT, {.dbl = -1 }, INT_MIN, INT_MAX, V|E},
|
||||
#endif
|
||||
{"keyint_min", "minimum interval between IDR-frames (x264)", OFFSET(keyint_min), AV_OPT_TYPE_INT, {.dbl = 25 }, INT_MIN, INT_MAX, V|E},
|
||||
{"refs", "reference frames to consider for motion compensation (Snow)", OFFSET(refs), AV_OPT_TYPE_INT, {.dbl = 1 }, INT_MIN, INT_MAX, V|E},
|
||||
{"chromaoffset", "chroma qp offset from luma", OFFSET(chromaoffset), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
{"bframebias", "influences how often B-frames are used", OFFSET(bframebias), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E},
|
||||
#endif
|
||||
{"trellis", "rate-distortion optimal quantization", OFFSET(trellis), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|A|E},
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
{"directpred", "direct mv prediction mode - 0 (none), 1 (spatial), 2 (temporal), 3 (auto)", OFFSET(directpred), AV_OPT_TYPE_INT, {.dbl = -1 }, INT_MIN, INT_MAX, V|E},
|
||||
{"bpyramid", "allows B-frames to be used as references for predicting", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_BPYRAMID }, INT_MIN, INT_MAX, V|E, "flags2"},
|
||||
{"wpred", "weighted biprediction for b-frames (H.264)", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_WPRED }, INT_MIN, INT_MAX, V|E, "flags2"},
|
||||
{"mixed_refs", "one reference per partition, as opposed to one reference per macroblock", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_MIXED_REFS }, INT_MIN, INT_MAX, V|E, "flags2"},
|
||||
{"dct8x8", "high profile 8x8 transform (H.264)", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_8X8DCT }, INT_MIN, INT_MAX, V|E, "flags2"},
|
||||
{"fastpskip", "fast pskip (H.264)", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_FASTPSKIP }, INT_MIN, INT_MAX, V|E, "flags2"},
|
||||
{"aud", "access unit delimiters (H.264)", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_AUD }, INT_MIN, INT_MAX, V|E, "flags2"},
|
||||
#endif
|
||||
{"skiprd", "RD optimal MB level residual skipping", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_SKIP_RD }, INT_MIN, INT_MAX, V|E, "flags2"},
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
{"complexityblur", "reduce fluctuations in qp (before curve compression)", OFFSET(complexityblur), AV_OPT_TYPE_FLOAT, {.dbl = -1 }, -1, FLT_MAX, V|E},
|
||||
{"deblockalpha", "in-loop deblocking filter alphac0 parameter", OFFSET(deblockalpha), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, -6, 6, V|E},
|
||||
{"deblockbeta", "in-loop deblocking filter beta parameter", OFFSET(deblockbeta), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, -6, 6, V|E},
|
||||
{"partitions", "macroblock subpartition sizes to consider", OFFSET(partitions), AV_OPT_TYPE_FLAGS, {.dbl = DEFAULT }, INT_MIN, INT_MAX, V|E, "partitions"},
|
||||
{"parti4x4", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = X264_PART_I4X4 }, INT_MIN, INT_MAX, V|E, "partitions"},
|
||||
{"parti8x8", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = X264_PART_I8X8 }, INT_MIN, INT_MAX, V|E, "partitions"},
|
||||
{"partp4x4", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = X264_PART_P4X4 }, INT_MIN, INT_MAX, V|E, "partitions"},
|
||||
{"partp8x8", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = X264_PART_P8X8 }, INT_MIN, INT_MAX, V|E, "partitions"},
|
||||
{"partb8x8", NULL, 0, AV_OPT_TYPE_CONST, {.dbl = X264_PART_B8X8 }, INT_MIN, INT_MAX, V|E, "partitions"},
|
||||
#endif
|
||||
{"sc_factor", "multiplied by qscale for each frame and added to scene_change_score", OFFSET(scenechange_factor), AV_OPT_TYPE_INT, {.dbl = 6 }, 0, INT_MAX, V|E},
|
||||
{"mv0_threshold", NULL, OFFSET(mv0_threshold), AV_OPT_TYPE_INT, {.dbl = 256 }, 0, INT_MAX, V|E},
|
||||
#if FF_API_MPEGVIDEO_GLOBAL_OPTS
|
||||
@ -473,9 +438,6 @@ static const AVOption options[]={
|
||||
#if FF_API_LAME_GLOBAL_OPTS
|
||||
{"reservoir", "use bit reservoir", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_BIT_RESERVOIR }, INT_MIN, INT_MAX, A|E, "flags2"},
|
||||
#endif
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
{"mbtree", "use macroblock tree ratecontrol (x264 only)", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_MBTREE }, INT_MIN, INT_MAX, V|E, "flags2"},
|
||||
#endif
|
||||
{"bits_per_raw_sample", NULL, OFFSET(bits_per_raw_sample), AV_OPT_TYPE_INT, {.dbl = DEFAULT }, INT_MIN, INT_MAX},
|
||||
{"channel_layout", NULL, OFFSET(channel_layout), AV_OPT_TYPE_INT64, {.dbl = DEFAULT }, 0, INT64_MAX, A|E|D, "channel_layout"},
|
||||
{"request_channel_layout", NULL, OFFSET(request_channel_layout), AV_OPT_TYPE_INT64, {.dbl = DEFAULT }, 0, INT64_MAX, A|D, "request_channel_layout"},
|
||||
@ -487,17 +449,6 @@ static const AVOption options[]={
|
||||
{"colorspace", NULL, OFFSET(colorspace), AV_OPT_TYPE_INT, {.dbl = AVCOL_SPC_UNSPECIFIED }, 1, AVCOL_SPC_NB-1, V|E|D},
|
||||
{"color_range", NULL, OFFSET(color_range), AV_OPT_TYPE_INT, {.dbl = AVCOL_RANGE_UNSPECIFIED }, 0, AVCOL_RANGE_NB-1, V|E|D},
|
||||
{"chroma_sample_location", NULL, OFFSET(chroma_sample_location), AV_OPT_TYPE_INT, {.dbl = AVCHROMA_LOC_UNSPECIFIED }, 0, AVCHROMA_LOC_NB-1, V|E|D},
|
||||
#if FF_API_X264_GLOBAL_OPTS
|
||||
{"psy", "use psycho visual optimization", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_PSY }, INT_MIN, INT_MAX, V|E, "flags2"},
|
||||
{"psy_rd", "specify psycho visual strength", OFFSET(psy_rd), AV_OPT_TYPE_FLOAT, {.dbl = -1.0 }, -1, FLT_MAX, V|E},
|
||||
{"psy_trellis", "specify psycho visual trellis", OFFSET(psy_trellis), AV_OPT_TYPE_FLOAT, {.dbl = -1 }, -1, FLT_MAX, V|E},
|
||||
{"aq_mode", "specify aq method", OFFSET(aq_mode), AV_OPT_TYPE_INT, {.dbl = -1 }, -1, INT_MAX, V|E},
|
||||
{"aq_strength", "specify aq strength", OFFSET(aq_strength), AV_OPT_TYPE_FLOAT, {.dbl = -1.0 }, -1, FLT_MAX, V|E},
|
||||
{"rc_lookahead", "specify number of frames to look ahead for frametype", OFFSET(rc_lookahead), AV_OPT_TYPE_INT, {.dbl = -1 }, -1, INT_MAX, V|E},
|
||||
{"ssim", "ssim will be calculated during encoding", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_SSIM }, INT_MIN, INT_MAX, V|E, "flags2"},
|
||||
{"intra_refresh", "use periodic insertion of intra blocks instead of keyframes", 0, AV_OPT_TYPE_CONST, {.dbl = CODEC_FLAG2_INTRA_REFRESH }, INT_MIN, INT_MAX, V|E, "flags2"},
|
||||
{"crf_max", "in crf mode, prevents vbv from lowering quality beyond this point", OFFSET(crf_max), AV_OPT_TYPE_FLOAT, {.dbl = DEFAULT }, 0, 51, V|E},
|
||||
#endif
|
||||
{"log_level_offset", "set the log level offset", OFFSET(log_level_offset), AV_OPT_TYPE_INT, {.dbl = 0 }, INT_MIN, INT_MAX },
|
||||
#if FF_API_FLAC_GLOBAL_OPTS
|
||||
{"lpc_type", "deprecated, use flac-specific options", OFFSET(lpc_type), AV_OPT_TYPE_INT, {.dbl = AV_LPC_TYPE_DEFAULT }, AV_LPC_TYPE_DEFAULT, AV_LPC_TYPE_NB-1, A|E},
|
||||
|
@ -80,9 +80,6 @@
|
||||
#ifndef FF_API_AVCODEC_INIT
|
||||
#define FF_API_AVCODEC_INIT (LIBAVCODEC_VERSION_MAJOR < 54)
|
||||
#endif
|
||||
#ifndef FF_API_X264_GLOBAL_OPTS
|
||||
#define FF_API_X264_GLOBAL_OPTS (LIBAVCODEC_VERSION_MAJOR < 54)
|
||||
#endif
|
||||
#ifndef FF_API_MPEGVIDEO_GLOBAL_OPTS
|
||||
#define FF_API_MPEGVIDEO_GLOBAL_OPTS (LIBAVCODEC_VERSION_MAJOR < 54)
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user