changeset 18207:a08a78145d9b

sync to x264 r503 (dct_decimate) patch by Guillaume Poirier.
author lorenm
date Sat, 22 Apr 2006 19:30:57 +0000
parents 4bc744cb60e7
children 70edbfdeca61
files DOCS/man/en/mplayer.1 configure libmpcodecs/ve_x264.c
diffstat 3 files changed, 14 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/DOCS/man/en/mplayer.1	Sat Apr 22 19:29:02 2006 +0000
+++ b/DOCS/man/en/mplayer.1	Sat Apr 22 19:30:57 2006 +0000
@@ -9086,6 +9086,15 @@
 artifacts in areas with no details, like sky.
 .
 .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>
 Noise reduction, 0 means disabled.
 100\-1000 is a useful range for typical content, but you may want to turn it
--- a/configure	Sat Apr 22 19:29:02 2006 +0000
+++ b/configure	Sat Apr 22 19:30:57 2006 +0000
@@ -6358,7 +6358,7 @@
 cat > $TMPC << EOF
 #include <inttypes.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.
 #endif
 int main(void) { x264_encoder_open((void*)0); return 0; }
--- a/libmpcodecs/ve_x264.c	Sat Apr 22 19:29:02 2006 +0000
+++ b/libmpcodecs/ve_x264.c	Sat Apr 22 19:30:57 2006 +0000
@@ -104,6 +104,7 @@
 static int me_range = 16;
 static int trellis = 1;
 static int fast_pskip = 1;
+static int dct_decimate = 1;
 static int noise_reduction = 0;
 static int threads = 1;
 static int level_idc = 51;
@@ -192,6 +193,8 @@
     {"trellis", &trellis, CONF_TYPE_INT, CONF_RANGE, 0, 2, NULL},
     {"fast_pskip", &fast_pskip, CONF_TYPE_FLAG, 0, 0, 1, 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},
     {"level_idc", &level_idc, CONF_TYPE_INT, CONF_RANGE, 10, 51, NULL},
     {"threads", &threads, CONF_TYPE_INT, CONF_RANGE, 1, 4, NULL},
@@ -303,6 +306,7 @@
     mod->param.analyse.b_mixed_references = mixed_references;
     mod->param.analyse.i_trellis = trellis;
     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.b_bframe_rdo = bframe_rdo;