Mercurial > mplayer.hg
changeset 18572:c1d5652c1654
Support and document lavc b_sensitivity option.
author | corey |
---|---|
date | Mon, 05 Jun 2006 06:37:29 +0000 |
parents | 25c95219c33d |
children | a560a24265cb |
files | DOCS/man/en/mplayer.1 libmpcodecs/ve_lavc.c |
diffstat | 2 files changed, 15 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/DOCS/man/en/mplayer.1 Mon Jun 05 06:36:21 2006 +0000 +++ b/DOCS/man/en/mplayer.1 Mon Jun 05 06:37:29 2006 +0000 @@ -7005,6 +7005,7 @@ Always use the maximum number of B-frames (default). .IPs 1 Avoid B-frames in high motion scenes. +See the b_sensitivity option to tune this strategy. .IPs 2 Places B-frames more or less optimally to yield maximum quality (slower). You may want to reduce the speed impact of this option by tuning the @@ -7013,6 +7014,17 @@ .PD 1 . .TP +.B b_sensitivity=<any integer greater than 0> +Adjusts how sensitively vb_strategy=1 detects motion and avoids using +B-frames (default: 40). +Lower sensitivities will result in more B-frames. +Using more B-frames usually improves PSNR, but too many B-frames can +hurt quality in high-motion scenes. +Unless there is an extremely high amount of motion, b_sensitivity can +safely be lowered below the default; 10 is a reasonable value in most +cases. +. +.TP .B brd_scale=<0\-10> Downscales frames for dynamic B-frame decision (default: 0). Each time brd_scale is increased by one, the frame dimensions are
--- a/libmpcodecs/ve_lavc.c Mon Jun 05 06:36:21 2006 +0000 +++ b/libmpcodecs/ve_lavc.c Mon Jun 05 06:37:29 2006 +0000 @@ -162,6 +162,7 @@ static int lavc_param_video_global_header= 0; static int lavc_param_mv0_threshold = 256; static int lavc_param_refs = 1; +static int lavc_param_b_sensitivity = 40; char *lavc_param_acodec = "mp2"; int lavc_param_atag = 0; @@ -323,6 +324,7 @@ {"aglobal", &lavc_param_audio_global_header, CONF_TYPE_INT, CONF_RANGE, 0, INT_MAX, NULL}, {"mv0_threshold", &lavc_param_mv0_threshold, CONF_TYPE_INT, CONF_RANGE, 0, INT_MAX, NULL}, {"refs", &lavc_param_refs, CONF_TYPE_INT, CONF_RANGE, 1, 16, NULL}, + {"b_sensitivity", &lavc_param_b_sensitivity, CONF_TYPE_INT, CONF_RANGE, 1, INT_MAX, NULL}, {NULL, NULL, 0, 0, 0, 0, NULL} }; #endif @@ -655,6 +657,7 @@ } lavc_venc_context->mv0_threshold = lavc_param_mv0_threshold; lavc_venc_context->refs = lavc_param_refs; + lavc_venc_context->b_sensitivity = lavc_param_b_sensitivity; switch(lavc_param_format) {