diff --git a/DOCS/man/en/mplayer.1 b/DOCS/man/en/mplayer.1 index 79013f5382..3cc1408d00 100644 --- a/DOCS/man/en/mplayer.1 +++ b/DOCS/man/en/mplayer.1 @@ -8757,6 +8757,11 @@ Without this option, a whole macroblock must use the same reference. Requires frameref>1. . .TP +.B (no)brdo +Enables rate-distortion optimization of macroblock types in B-frames. +Requires subq=6. +. +.TP .B trellis=<0\-2> rate-distortion optimal quantization .PD 0 @@ -8791,9 +8796,6 @@ Use the provided JM format matrix file. .RE .RS .I NOTE: -Files encoded using CQMs are not currently decodable by FFmpeg-based -players. -.br Windows CMD.EXE users may experience problems with parsing the command line if they attempt to use all the CQM lists. This is due to a command line length limitation. @@ -8834,7 +8836,7 @@ values in the 1\-255 range. .TP .B level_idc=<10\-51> Set the bitstream's level as defined by annex A of the H.264 standard -(default: 40 - Level 4.0). +(default: 51 - Level 5.1). This is used for telling the decoder what capabilities it needs to support. Use this parameter only if you know what it means, and you have a need to set it. diff --git a/configure b/configure index 045e06e0e3..74f645397d 100755 --- a/configure +++ b/configure @@ -6223,7 +6223,7 @@ echocheck "x264" cat > $TMPC << EOF #include #include -#if X264_BUILD < 39 +#if X264_BUILD < 40 #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 8d4c499e69..6007792610 100644 --- a/libmpcodecs/ve_x264.c +++ b/libmpcodecs/ve_x264.c @@ -100,6 +100,7 @@ static float complexity_blur = 20; static char *rc_eq = "blurCplx^(1-qComp)"; static char *zones = NULL; static int subq = 5; +static int bframe_rdo = 0; static int me_method = 2; static int me_range = 16; static int trellis = 1; @@ -181,6 +182,8 @@ m_option_t x264encopts_conf[] = { {"cplx_blur", &complexity_blur, CONF_TYPE_FLOAT, CONF_RANGE, 0, 999, NULL}, {"zones", &zones, CONF_TYPE_STRING, 0, 0, 0, NULL}, {"subq", &subq, CONF_TYPE_INT, CONF_RANGE, 1, 6, NULL}, + {"brdo", &bframe_rdo, CONF_TYPE_FLAG, 0, 0, 1, NULL}, + {"nobrdo", &bframe_rdo, CONF_TYPE_FLAG, 0, 0, 0, NULL}, {"me", &me_method, CONF_TYPE_INT, CONF_RANGE, 1, 4, NULL}, {"me_range", &me_range, CONF_TYPE_INT, CONF_RANGE, 4, 64, NULL}, {"trellis", &trellis, CONF_TYPE_INT, CONF_RANGE, 0, 2, NULL}, @@ -292,6 +295,7 @@ static int config(struct vf_instance_s* vf, int width, int height, int d_width, mod->param.analyse.b_chroma_me = chroma_me; mod->param.analyse.b_mixed_references = mixed_references; mod->param.analyse.i_trellis = trellis; + mod->param.analyse.b_bframe_rdo = bframe_rdo; mod->param.i_width = width; mod->param.i_height = height;