Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDerek Buitenhuis <derek.buitenhuis@gmail.com>2016-01-28 18:24:00 +0300
committerDerek Buitenhuis <derek.buitenhuis@gmail.com>2016-01-28 18:24:00 +0300
commit30c1bdb87ce336f2b9957769e30a10d72f93d372 (patch)
treee951a9601f2c36e424ec023e9b9fab9b843f8237 /libavcodec/libx264.c
parent7c6e86c0cec17dfc020d58c82f4f1af5fcaea6c1 (diff)
parent7c79587d7407dab4b9445d66b5f111fe657c8c4d (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.c16
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" },