diff options
author | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-05-29 21:34:29 +0000 |
---|---|---|
committer | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-05-29 21:34:29 +0000 |
commit | bc9cc2f53632ed79e9c9dd578d9e36633dd06ecc (patch) | |
tree | 67bcd1a5eaa073397c9c5369dc8d0f85b9b525b2 | |
parent | a7a603d2987b53587b99a8945475046cb8d5ab36 (diff) |
new options to support Michael's libavcodec patch, #ifdefed
slightly modified version of Michael's ffmpeg-preview-michael-20020529-mplayer.diff
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@6229 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r-- | libmpcodecs/ve_lavc.c | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/libmpcodecs/ve_lavc.c b/libmpcodecs/ve_lavc.c index da954602f6..fc1ac7b529 100644 --- a/libmpcodecs/ve_lavc.c +++ b/libmpcodecs/ve_lavc.c @@ -53,11 +53,17 @@ static int lavc_param_vqdiff = 3; static float lavc_param_vqcompress = 0.5; static float lavc_param_vqblur = 0.5; static float lavc_param_vb_qfactor = 2.0; +static float lavc_param_vb_qoffset = 0.0; static int lavc_param_vmax_b_frames = 0; static int lavc_param_keyint = -1; static int lavc_param_vpass = 0; static int lavc_param_vrc_strategy = 2; static int lavc_param_vb_strategy = 0; +static int lavc_param_luma_elim_threshold = 3; +static int lavc_param_chroma_elim_threshold = 5; +static int lavc_param_packet_size= 0; +static int lavc_param_strict= 0; +static int lavc_param_data_partitioning= 0; #include "cfgparser.h" @@ -80,6 +86,14 @@ struct config lavcopts_conf[]={ {"vpass", &lavc_param_vpass, CONF_TYPE_INT, CONF_RANGE, 0, 2, NULL}, {"vrc_strategy", &lavc_param_vrc_strategy, CONF_TYPE_INT, CONF_RANGE, 0, 2, NULL}, {"vb_strategy", &lavc_param_vb_strategy, CONF_TYPE_INT, CONF_RANGE, 0, 1, NULL}, +#ifdef CODEC_FLAG_PART + {"vb_qoffset", &lavc_param_vb_qoffset, CONF_TYPE_FLOAT, CONF_RANGE, 0.0, 31.0, NULL}, + {"vlelim", &lavc_param_luma_elim_threshold, CONF_TYPE_INT, CONF_RANGE, 0, 99, NULL}, + {"vcelim", &lavc_param_chroma_elim_threshold, CONF_TYPE_INT, CONF_RANGE, 0, 99, NULL}, + {"vpsize", &lavc_param_packet_size, CONF_TYPE_INT, CONF_RANGE, 0, 100000000, NULL}, + {"vstrict", &lavc_param_strict, CONF_TYPE_FLAG, 0, 0, 1, NULL}, + {"vdpart", &lavc_param_data_partitioning, CONF_TYPE_FLAG, 0, 0, CODEC_FLAG_PART, NULL}, +#endif {"keyint", &lavc_param_keyint, CONF_TYPE_INT, 0, 0, 0, NULL}, {NULL, NULL, 0, 0, 0, 0, NULL} }; @@ -127,7 +141,16 @@ static int config(struct vf_instance_s* vf, lavc_venc_context.b_quant_factor= lavc_param_vb_qfactor; lavc_venc_context.rc_strategy= lavc_param_vrc_strategy; lavc_venc_context.b_frame_strategy= lavc_param_vb_strategy; - + +#ifdef CODEC_FLAG_PART + lavc_venc_context.b_quant_offset= lavc_param_vb_qoffset; + lavc_venc_context.luma_elim_threshold= lavc_param_luma_elim_threshold; + lavc_venc_context.chroma_elim_threshold= lavc_param_chroma_elim_threshold; + lavc_venc_context.rtp_payload_size= lavc_param_packet_size; + if(lavc_param_packet_size )lavc_venc_context.rtp_mode=1; + lavc_venc_context.strict_std_compliance= lavc_param_strict; +#endif + /* keyframe interval */ if (lavc_param_keyint >= 0) /* != -1 */ lavc_venc_context.gop_size = lavc_param_keyint; @@ -149,6 +172,9 @@ static int config(struct vf_instance_s* vf, } lavc_venc_context.flags|= lavc_param_v4mv ? CODEC_FLAG_4MV : 0; +#ifdef CODEC_FLAG_PART + lavc_venc_context.flags|= lavc_param_data_partitioning; +#endif /* lavc internal 2pass bitrate control */ if(lavc_param_vpass==1) |