diff options
author | Derek Buitenhuis <derek.buitenhuis@gmail.com> | 2016-01-28 18:24:00 +0300 |
---|---|---|
committer | Derek Buitenhuis <derek.buitenhuis@gmail.com> | 2016-01-28 18:24:00 +0300 |
commit | 30c1bdb87ce336f2b9957769e30a10d72f93d372 (patch) | |
tree | e951a9601f2c36e424ec023e9b9fab9b843f8237 /libavcodec/libx264.c | |
parent | 7c6e86c0cec17dfc020d58c82f4f1af5fcaea6c1 (diff) | |
parent | 7c79587d7407dab4b9445d66b5f111fe657c8c4d (diff) |
Merge commit '7c79587d7407dab4b9445d66b5f111fe657c8c4d'
* commit '7c79587d7407dab4b9445d66b5f111fe657c8c4d':
lavc: Move scenechange_threshold to codec private options
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Diffstat (limited to 'libavcodec/libx264.c')
-rw-r--r-- | libavcodec/libx264.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/libavcodec/libx264.c b/libavcodec/libx264.c index 480cbb67f0..c795729c84 100644 --- a/libavcodec/libx264.c +++ b/libavcodec/libx264.c @@ -88,6 +88,7 @@ typedef struct X264Context { int a53_cc; int b_frame_strategy; int chroma_offset; + int scenechange_threshold; char *x264_params; } X264Context; @@ -546,8 +547,16 @@ FF_ENABLE_DEPRECATION_WARNINGS x4->params.i_keyint_max = avctx->gop_size; if (avctx->max_b_frames >= 0) x4->params.i_bframe = avctx->max_b_frames; - if (avctx->scenechange_threshold >= 0) - x4->params.i_scenecut_threshold = avctx->scenechange_threshold; + +#if FF_API_PRIVATE_OPT +FF_DISABLE_DEPRECATION_WARNINGS + if (avctx->scenechange_threshold) + x4->scenechange_threshold = avctx->scenechange_threshold; + if (x4->scenechange_threshold >= 0) +FF_ENABLE_DEPRECATION_WARNINGS +#endif + x4->params.i_scenecut_threshold = x4->scenechange_threshold; + if (avctx->qmin >= 0) x4->params.rc.i_qp_min = avctx->qmin; if (avctx->qmax >= 0) @@ -974,6 +983,7 @@ static const AVOption options[] = { { "ac", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = 1 }, INT_MIN, INT_MAX, VE, "coder" }, { "b_strategy", "Strategy to choose between I/P/B-frames", OFFSET(b_frame_strategy), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, 2, VE }, { "chromaoffset", "QP difference between chroma and luma", OFFSET(chroma_offset), AV_OPT_TYPE_INT, { .i64 = 0 }, INT_MIN, INT_MAX, VE }, + { "sc_threshold", "Scene change threshold", OFFSET(scenechange_threshold), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, INT_MAX, VE }, { "x264-params", "Override the x264 configuration using a :-separated list of key=value parameters", OFFSET(x264_params), AV_OPT_TYPE_STRING, { 0 }, 0, 0, VE }, { NULL }, @@ -993,7 +1003,9 @@ static const AVCodecDefault x264_defaults[] = { { "qcomp", "-1" }, // { "rc_lookahead", "-1" }, { "refs", "-1" }, +#if FF_API_PRIVATE_OPT { "sc_threshold", "-1" }, +#endif { "trellis", "-1" }, { "nr", "-1" }, { "me_range", "-1" }, |