Commit a3939264 authored by Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf Committed by Ilkka Ollakka

x264: activate preset only on recent versions of x264

(cherry picked from commit d53121f71e0ec6d22e89da02b136020e8f502adc)
Signed-off-by: default avatarIlkka Ollakka <ileoo@iki.fi>
parent 02240a9b
/***************************************************************************** /*****************************************************************************
* x264.c: h264 video encoder * x264.c: h264 video encoder
***************************************************************************** *****************************************************************************
* Copyright (C) 2004-2006 the VideoLAN team * Copyright (C) 2004-2010 the VideoLAN team
* $Id$ * $Id$
* *
* Authors: Laurent Aimar <fenrir@via.ecp.fr> * Authors: Laurent Aimar <fenrir@via.ecp.fr>
...@@ -673,10 +673,12 @@ vlc_module_begin () ...@@ -673,10 +673,12 @@ vlc_module_begin ()
add_string( SOUT_CFG_PREFIX "stats", "x264_2pass.log", NULL, STATS_TEXT, add_string( SOUT_CFG_PREFIX "stats", "x264_2pass.log", NULL, STATS_TEXT,
STATS_LONGTEXT, false ) STATS_LONGTEXT, false )
#if X264_BUILD >= 93
add_string( SOUT_CFG_PREFIX "preset", NULL , NULL, PRESET_TEXT , PRESET_TEXT, false ) add_string( SOUT_CFG_PREFIX "preset", NULL , NULL, PRESET_TEXT , PRESET_TEXT, false )
change_string_list( x264_preset_names, x264_preset_names, 0 ); change_string_list( x264_preset_names, x264_preset_names, 0 );
add_string( SOUT_CFG_PREFIX "tune", NULL , NULL, TUNE_TEXT, TUNE_TEXT, false ) add_string( SOUT_CFG_PREFIX "tune", NULL , NULL, TUNE_TEXT, TUNE_TEXT, false )
change_string_list( x264_tune_names, x264_tune_names, 0 ); change_string_list( x264_tune_names, x264_tune_names, 0 );
#endif
vlc_module_end () vlc_module_end ()
...@@ -697,7 +699,7 @@ static const char *const ppsz_sout_options[] = { ...@@ -697,7 +699,7 @@ static const char *const ppsz_sout_options[] = {
"verbose", "vbv-bufsize", "vbv-init", "vbv-maxrate", "weightb", "weightp", "verbose", "vbv-bufsize", "vbv-init", "vbv-maxrate", "weightb", "weightp",
"aq-mode", "aq-strength", "psy-rd", "psy", "profile", "lookahead", "slices", "aq-mode", "aq-strength", "psy-rd", "psy", "profile", "lookahead", "slices",
"slice-max-size", "slice-max-mbs", "intra-refresh", "mbtree", "hrd", "slice-max-size", "slice-max-mbs", "intra-refresh", "mbtree", "hrd",
"tune","preset",NULL "tune","preset", NULL
}; };
static block_t *Encode( encoder_t *, picture_t * ); static block_t *Encode( encoder_t *, picture_t * );
...@@ -761,6 +763,7 @@ static int Open ( vlc_object_t *p_this ) ...@@ -761,6 +763,7 @@ static int Open ( vlc_object_t *p_this )
p_sys->psz_stat_name = NULL; p_sys->psz_stat_name = NULL;
x264_param_default( &p_sys->param ); x264_param_default( &p_sys->param );
#if X264_BUILD >= 93
char *psz_preset = var_GetString( p_enc, SOUT_CFG_PREFIX "preset" ); char *psz_preset = var_GetString( p_enc, SOUT_CFG_PREFIX "preset" );
char *psz_tune = var_GetString( p_enc, SOUT_CFG_PREFIX "tune" ); char *psz_tune = var_GetString( p_enc, SOUT_CFG_PREFIX "tune" );
if( *psz_preset == '\0' ) if( *psz_preset == '\0' )
...@@ -771,6 +774,7 @@ static int Open ( vlc_object_t *p_this ) ...@@ -771,6 +774,7 @@ static int Open ( vlc_object_t *p_this )
x264_param_default_preset( &p_sys->param, psz_preset, psz_tune ); x264_param_default_preset( &p_sys->param, psz_preset, psz_tune );
free( psz_preset ); free( psz_preset );
free( psz_tune ); free( psz_tune );
#endif
p_sys->param.i_width = p_enc->fmt_in.video.i_width; p_sys->param.i_width = p_enc->fmt_in.video.i_width;
p_sys->param.i_height = p_enc->fmt_in.video.i_height; p_sys->param.i_height = p_enc->fmt_in.video.i_height;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment