mirror of
https://github.com/mpv-player/mpv
synced 2024-11-03 03:19:24 +01:00
sync to x264 r503 (dct_decimate)
patch by Guillaume Poirier. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18208 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
63c70fadf2
commit
94b93ccc69
@ -9086,6 +9086,15 @@ This usually improves speed at no cost, but it can sometimes produce
|
|||||||
artifacts in areas with no details, like sky.
|
artifacts in areas with no details, like sky.
|
||||||
.
|
.
|
||||||
.TP
|
.TP
|
||||||
|
.B (no)dct_decimate
|
||||||
|
Eliminate dct blocks in P-frames containing only a small single coefficient
|
||||||
|
(default: enabled).
|
||||||
|
This will remove some details, so it will save bits that can be spent
|
||||||
|
again on other frames, hopefully raising overall subjective quality.
|
||||||
|
If you are compressing non-anime content with a high target bitrate, you
|
||||||
|
may want to disable this to preserve as much detail as possible.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
.B nr=<0\-100000>
|
.B nr=<0\-100000>
|
||||||
Noise reduction, 0 means disabled.
|
Noise reduction, 0 means disabled.
|
||||||
100\-1000 is a useful range for typical content, but you may want to turn it
|
100\-1000 is a useful range for typical content, but you may want to turn it
|
||||||
|
2
configure
vendored
2
configure
vendored
@ -6358,7 +6358,7 @@ echocheck "x264"
|
|||||||
cat > $TMPC << EOF
|
cat > $TMPC << EOF
|
||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
#include <x264.h>
|
#include <x264.h>
|
||||||
#if X264_BUILD < 45
|
#if X264_BUILD < 46
|
||||||
#error We do not support old versions of x264. Get the latest from SVN.
|
#error We do not support old versions of x264. Get the latest from SVN.
|
||||||
#endif
|
#endif
|
||||||
int main(void) { x264_encoder_open((void*)0); return 0; }
|
int main(void) { x264_encoder_open((void*)0); return 0; }
|
||||||
|
@ -104,6 +104,7 @@ static int me_method = 2;
|
|||||||
static int me_range = 16;
|
static int me_range = 16;
|
||||||
static int trellis = 1;
|
static int trellis = 1;
|
||||||
static int fast_pskip = 1;
|
static int fast_pskip = 1;
|
||||||
|
static int dct_decimate = 1;
|
||||||
static int noise_reduction = 0;
|
static int noise_reduction = 0;
|
||||||
static int threads = 1;
|
static int threads = 1;
|
||||||
static int level_idc = 51;
|
static int level_idc = 51;
|
||||||
@ -192,6 +193,8 @@ m_option_t x264encopts_conf[] = {
|
|||||||
{"trellis", &trellis, CONF_TYPE_INT, CONF_RANGE, 0, 2, NULL},
|
{"trellis", &trellis, CONF_TYPE_INT, CONF_RANGE, 0, 2, NULL},
|
||||||
{"fast_pskip", &fast_pskip, CONF_TYPE_FLAG, 0, 0, 1, NULL},
|
{"fast_pskip", &fast_pskip, CONF_TYPE_FLAG, 0, 0, 1, NULL},
|
||||||
{"nofast_pskip", &fast_pskip, CONF_TYPE_FLAG, 0, 0, 0, NULL},
|
{"nofast_pskip", &fast_pskip, CONF_TYPE_FLAG, 0, 0, 0, NULL},
|
||||||
|
{"dct_decimate", &dct_decimate, CONF_TYPE_FLAG, 0, 0, 1, NULL},
|
||||||
|
{"nodct_decimate", &dct_decimate, CONF_TYPE_FLAG, 0, 0, 0, NULL},
|
||||||
{"nr", &noise_reduction, CONF_TYPE_INT, CONF_RANGE, 0, 100000, NULL},
|
{"nr", &noise_reduction, CONF_TYPE_INT, CONF_RANGE, 0, 100000, NULL},
|
||||||
{"level_idc", &level_idc, CONF_TYPE_INT, CONF_RANGE, 10, 51, NULL},
|
{"level_idc", &level_idc, CONF_TYPE_INT, CONF_RANGE, 10, 51, NULL},
|
||||||
{"threads", &threads, CONF_TYPE_INT, CONF_RANGE, 1, 4, NULL},
|
{"threads", &threads, CONF_TYPE_INT, CONF_RANGE, 1, 4, NULL},
|
||||||
@ -303,6 +306,7 @@ static int config(struct vf_instance_s* vf, int width, int height, int d_width,
|
|||||||
mod->param.analyse.b_mixed_references = mixed_references;
|
mod->param.analyse.b_mixed_references = mixed_references;
|
||||||
mod->param.analyse.i_trellis = trellis;
|
mod->param.analyse.i_trellis = trellis;
|
||||||
mod->param.analyse.b_fast_pskip = fast_pskip;
|
mod->param.analyse.b_fast_pskip = fast_pskip;
|
||||||
|
mod->param.analyse.b_dct_decimate = dct_decimate;
|
||||||
mod->param.analyse.i_noise_reduction = noise_reduction;
|
mod->param.analyse.i_noise_reduction = noise_reduction;
|
||||||
mod->param.analyse.b_bframe_rdo = bframe_rdo;
|
mod->param.analyse.b_bframe_rdo = bframe_rdo;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user