[vlc-commits] commit: x264: add hrd-option (Ilkka Ollakka )
git at videolan.org
git at videolan.org
Tue Apr 13 15:16:01 CEST 2010
vlc | branch: master | Ilkka Ollakka <ileoo at videolan.org> | Tue Apr 13 16:10:47 2010 +0300| [878968cc492db7412943c3a1ec6c19428a2fe41d] | committer: Ilkka Ollakka
x264: add hrd-option
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=878968cc492db7412943c3a1ec6c19428a2fe41d
---
modules/codec/x264.c | 18 +++++++++++++++++-
1 files changed, 17 insertions(+), 1 deletions(-)
diff --git a/modules/codec/x264.c b/modules/codec/x264.c
index 871a00d..a361c5b 100644
--- a/modules/codec/x264.c
+++ b/modules/codec/x264.c
@@ -381,6 +381,9 @@ static void Close( vlc_object_t * );
"Currently default is lower than x264 default because unmuxable output" \
"doesn't handle larger values that well yet" )
+#define HRD_TEXT N_("HRD-timing information")
+#define HRD_LONGTEXT N_("HRD-timing information")
+
static const char *const enc_me_list[] =
{ "dia", "hex", "umh", "esa", "tesa" };
static const char *const enc_me_list_text[] =
@@ -478,6 +481,11 @@ vlc_module_begin ()
add_integer( SOUT_CFG_PREFIX "slice-max-size", 0, NULL, SLICE_MAX_SIZE, SLICE_MAX_SIZE_LONGTEXT, false )
add_integer( SOUT_CFG_PREFIX "slice-max-mbs", 0, NULL, SLICE_MAX_MBS, SLICE_MAX_MBS_LONGTEXT, false )
+#if X264_BUILD >= 92
+ add_string( SOUT_CFG_PREFIX "hrd", "none", NULL, HRD_TEXT, HRD_LONGTEXT, false )
+ change_string_list( x264_nal_hrd_names, x264_nal_hrd_names, 0 );
+#endif
+
/* Ratecontrol */
@@ -678,7 +686,7 @@ static const char *const ppsz_sout_options[] = {
"sps-id", "ssim", "stats", "subme", "trellis",
"verbose", "vbv-bufsize", "vbv-init", "vbv-maxrate", "weightb", "weightp",
"aq-mode", "aq-strength", "psy-rd", "psy", "profile", "lookahead", "slices",
- "slice-max-size", "slice-max-mbs", "intra-refresh", "mbtree", NULL
+ "slice-max-size", "slice-max-mbs", "intra-refresh", "mbtree", "hrd", NULL
};
static block_t *Encode( encoder_t *, picture_t * );
@@ -913,6 +921,14 @@ static int Open ( vlc_object_t *p_this )
if( i_val >= 1 )
p_sys->param.analyse.i_subpel_refine = i_val;
+#if X264_BUILD >= 92
+ psz_val = var_GetString( p_enc, SOUT_CFG_PREFIX "hrd");
+ if( !strcmp( psz_val, "vbr" ) )
+ p_sys->param.i_nal_hrd = X264_NAL_HRD_VBR;
+ else if( !strcmp( psz_val, "cbr" ) )
+ p_sys->param.i_nal_hrd = X264_NAL_HRD_CBR;
+#endif
+
//TODO: psz_val == NULL ?
psz_val = var_GetString( p_enc, SOUT_CFG_PREFIX "me" );
if( !strcmp( psz_val, "dia" ) )
More information about the vlc-commits
mailing list