summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--DOCS/man/en/mplayer.19
-rwxr-xr-xconfigure2
-rw-r--r--libmpcodecs/ve_x264.c4
3 files changed, 9 insertions, 6 deletions
diff --git a/DOCS/man/en/mplayer.1 b/DOCS/man/en/mplayer.1
index e2054aa298..21524cb7e3 100644
--- a/DOCS/man/en/mplayer.1
+++ b/DOCS/man/en/mplayer.1
@@ -8841,7 +8841,7 @@ to overflow compensation and qp_min/qp_max.
.RE
.
.TP
-.B direct_pred=<0\-2>
+.B direct_pred=<0\-3>
Determines the type of motion prediction used for direct macroblocks
in B-frames.
.PD 0
@@ -8850,14 +8850,17 @@ in B-frames.
None: direct macroblocks are not used.
.IPs 1
Spatial: motion vectors are extrapolated from neighboring blocks.
+(default)
.IPs 2
Temporal: motion vectors are interpolated from the following P-frame.
-(default)
+.IPs 3
+Auto: the codec selects between spatial and temporal for each frame.
.RE
.PD 1
.RS
Spatial and temporal are approximately the same speed and PSNR,
-but temporal often looks better.
+the choice between them depends on the video content.
+Auto is slightly better, but slower.
direct_pred=0 is both slower and lower quality.
.RE
.
diff --git a/configure b/configure
index 84c2254298..ecc8de293c 100755
--- a/configure
+++ b/configure
@@ -6388,7 +6388,7 @@ echocheck "x264"
cat > $TMPC << EOF
#include <inttypes.h>
#include <x264.h>
-#if X264_BUILD < 43
+#if X264_BUILD < 45
#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; }
diff --git a/libmpcodecs/ve_x264.c b/libmpcodecs/ve_x264.c
index 51a57c3799..6b9e382f13 100644
--- a/libmpcodecs/ve_x264.c
+++ b/libmpcodecs/ve_x264.c
@@ -77,7 +77,7 @@ static int b8x8mv = 1;
static int i8x8 = 1;
static int i4x4 = 1;
static int dct8 = 0;
-static int direct_pred = X264_DIRECT_PRED_TEMPORAL;
+static int direct_pred = X264_DIRECT_PRED_SPATIAL;
static int weight_b = 0;
static int chroma_me = 1;
static int mixed_references = 0;
@@ -152,7 +152,7 @@ m_option_t x264encopts_conf[] = {
{"noi8x8", &i8x8, CONF_TYPE_FLAG, 0, 0, 0, NULL},
{"8x8dct", &dct8, CONF_TYPE_FLAG, 0, 0, 1, NULL},
{"no8x8dct", &dct8, CONF_TYPE_FLAG, 0, 0, 0, NULL},
- {"direct_pred", &direct_pred, CONF_TYPE_INT, CONF_RANGE, 0, 2, NULL},
+ {"direct_pred", &direct_pred, CONF_TYPE_INT, CONF_RANGE, 0, 3, NULL},
{"weight_b", &weight_b, CONF_TYPE_FLAG, 0, 0, 1, NULL},
{"noweight_b", &weight_b, CONF_TYPE_FLAG, 0, 1, 0, NULL},
{"bime", &bidir_me, CONF_TYPE_FLAG, 0, 0, 1, NULL},