mirror of
https://github.com/mpv-player/mpv
synced 2025-03-25 04:38:01 +00:00
fix (?) cmd line handling
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7020 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
729505d31a
commit
4d5b4f9422
55
Gui/cfg.c
55
Gui/cfg.c
@ -8,6 +8,10 @@
|
||||
#include "../mplayer.h"
|
||||
#include "../cfgparser.h"
|
||||
|
||||
#ifdef USE_SETLOCALE
|
||||
#include <locale.h>
|
||||
#endif
|
||||
|
||||
#include "../../libvo/video_out.h"
|
||||
|
||||
#include "cfg.h"
|
||||
@ -19,22 +23,10 @@
|
||||
|
||||
int gtkEnableAudioEqualizer = 0;
|
||||
|
||||
char * gtkVODriver = NULL;
|
||||
int gtkVODoubleBuffer = 1;
|
||||
int gtkVODirectRendering = 0;
|
||||
int gtkVFrameDrop = 1;
|
||||
int gtkVHardFrameDrop = 0;
|
||||
int gtkVNIAVI = 0;
|
||||
int gtkVFlip = 0;
|
||||
int gtkVIndex = 1;
|
||||
int gtkVVFM = -1;
|
||||
int gtkVAutoq = 0;
|
||||
|
||||
int gtkVopPP = 0;
|
||||
int gtkVopLAVC = 0;
|
||||
int gtkVopFAME = 0;
|
||||
|
||||
char * gtkAODriver = NULL;
|
||||
int gtkAONoSound = 0;
|
||||
float gtkAODelay = 0.0f;
|
||||
int gtkAONorm = 0;
|
||||
@ -44,14 +36,8 @@ float gtkAOExtraStereoMul = 1.0;
|
||||
char * gtkAOOSSMixer;
|
||||
char * gtkAOOSSDevice;
|
||||
|
||||
int gtkSubAuto = 1; //
|
||||
int gtkSubUnicode = 0; //
|
||||
int gtkSubDumpMPSub = 0;
|
||||
int gtkSubDumpSrt = 0;
|
||||
float gtkSubDelay = 0.0f;
|
||||
float gtkSubFPS = 0.0f;
|
||||
int gtkSubPos = 100; //
|
||||
float gtkSubFFactor = 0.75;
|
||||
|
||||
// ---
|
||||
|
||||
@ -64,24 +50,23 @@ static config_t gui_opts[] =
|
||||
{
|
||||
{ "enable_audio_equ",>kEnableAudioEqualizer,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
|
||||
{ "vo_driver",>kVODriver,CONF_TYPE_STRING,0,0,0,NULL },
|
||||
{ "vo_driver",&video_driver,CONF_TYPE_STRING,0,0,0,NULL },
|
||||
{ "vo_panscan",&vo_panscan,CONF_TYPE_FLOAT,CONF_RANGE,0.0,1.0,NULL },
|
||||
{ "vo_doublebuffering",&vo_doublebuffering,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "vo_direct_render",>kVODirectRendering,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "vo_direct_render",&vo_directrendering,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
|
||||
{ "v_framedrop",>kVFrameDrop,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "v_hard_framedrop",>kVHardFrameDrop,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "v_flip",>kVFlip,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "v_ni",>kVNIAVI,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "v_idx",>kVIndex,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "v_vfm",>kVVFM,CONF_TYPE_INT,CONF_RANGE,-1,10,NULL },
|
||||
{ "v_framedrop",&frame_dropping,CONF_TYPE_INT,CONF_RANGE,0,2,NULL },
|
||||
{ "v_flip",&flip,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "v_ni",&force_ni,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "v_idx",&index_mode,CONF_TYPE_INT,CONF_RANGE,-1,2,NULL },
|
||||
{ "v_vfm",&video_family,CONF_TYPE_INT,CONF_RANGE,-1,10,NULL },
|
||||
|
||||
{ "vf_pp",>kVopPP,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "vf_autoq",>kVAutoq,CONF_TYPE_INT,CONF_RANGE,0,100,NULL },
|
||||
{ "vf_autoq",&auto_quality,CONF_TYPE_INT,CONF_RANGE,0,100,NULL },
|
||||
{ "vf_lavc",>kVopLAVC,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "vf_fame",>kVopFAME,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
|
||||
{ "ao_driver",>kAODriver,CONF_TYPE_STRING,0,0,0,NULL },
|
||||
{ "ao_driver",&audio_driver,CONF_TYPE_STRING,0,0,0,NULL },
|
||||
{ "ao_nosound",>kAONoSound,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "ao_volnorm",>kAONorm,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "ao_surround",>kAOSurround,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
@ -92,11 +77,11 @@ static config_t gui_opts[] =
|
||||
{ "ao_oss_device",>kAOOSSDevice,CONF_TYPE_STRING,0,0,0,NULL },
|
||||
|
||||
{ "osd_level",&osd_level,CONF_TYPE_INT,CONF_RANGE,0,2,NULL },
|
||||
{ "sub_auto_load",>kSubAuto,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "sub_unicode",>kSubUnicode,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "sub_pos",>kSubPos,CONF_TYPE_INT,CONF_RANGE,0,200,NULL },
|
||||
{ "font_factor",>kSubFFactor,CONF_TYPE_FLOAT,CONF_RANGE,0.0,10.0,NULL },
|
||||
{ "font_name",&guiIntfStruct.Fontname,CONF_TYPE_STRING,0,0,0,NULL },
|
||||
{ "sub_auto_load",&sub_auto,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "sub_unicode",&sub_unicode,CONF_TYPE_FLAG,0,0,1,NULL },
|
||||
{ "sub_pos",&sub_pos,CONF_TYPE_INT,CONF_RANGE,0,200,NULL },
|
||||
{ "font_factor",&font_factor,CONF_TYPE_FLOAT,CONF_RANGE,0.0,10.0,NULL },
|
||||
{ "font_name",&font_name,CONF_TYPE_STRING,0,0,0,NULL },
|
||||
|
||||
{ "gui_skin",&skinName,CONF_TYPE_STRING,0,0,0,NULL },
|
||||
|
||||
@ -166,6 +151,10 @@ int cfg_write( void )
|
||||
FILE * f;
|
||||
int i;
|
||||
|
||||
#ifdef USE_SETLOCALE
|
||||
setlocale( LC_ALL,"" );
|
||||
#endif
|
||||
|
||||
// -- save configuration
|
||||
if ( (f=fopen( cfg,"wt+" )) )
|
||||
{
|
||||
|
19
Gui/cfg.h
19
Gui/cfg.h
@ -4,23 +4,10 @@
|
||||
|
||||
extern int gtkEnableAudioEqualizer;
|
||||
|
||||
extern char * gtkVODriver;
|
||||
extern int gtkVODoubleBuffer;
|
||||
extern int gtkVODirectRendering;
|
||||
|
||||
extern int gtkVFrameDrop;
|
||||
extern int gtkVHardFrameDrop;
|
||||
extern int gtkVNIAVI;
|
||||
extern int gtkVFlip;
|
||||
extern int gtkVIndex;
|
||||
extern int gtkVVFM;
|
||||
extern int gtkVAutoq;
|
||||
|
||||
extern int gtkVopPP;
|
||||
extern int gtkVopLAVC;
|
||||
extern int gtkVopFAME;
|
||||
|
||||
extern char * gtkAODriver;
|
||||
extern int gtkAONoSound;
|
||||
extern float gtkAODelay;
|
||||
extern int gtkAONorm;
|
||||
@ -30,14 +17,8 @@ extern float gtkAOExtraStereoMul;
|
||||
extern char * gtkAOOSSMixer;
|
||||
extern char * gtkAOOSSDevice;
|
||||
|
||||
extern int gtkSubAuto;
|
||||
extern int gtkSubUnicode;
|
||||
extern int gtkSubDumpMPSub;
|
||||
extern int gtkSubDumpSrt;
|
||||
extern float gtkSubDelay;
|
||||
extern float gtkSubFPS;
|
||||
extern int gtkSubPos;
|
||||
extern float gtkSubFFactor;
|
||||
|
||||
extern char * gtkEquChannel1;
|
||||
extern char * gtkEquChannel2;
|
||||
|
105
Gui/interface.c
105
Gui/interface.c
@ -66,6 +66,13 @@ int gstrcmp( char * a,char * b )
|
||||
return strcmp( a,b );
|
||||
}
|
||||
|
||||
int gstrncmp( char * a,char * b,int size )
|
||||
{
|
||||
if ( !a && !b ) return 0;
|
||||
if ( !a || !b ) return -1;
|
||||
return strncmp( a,b,size );
|
||||
}
|
||||
|
||||
char * gstrdup( char * str )
|
||||
{
|
||||
if ( !str ) return NULL;
|
||||
@ -140,11 +147,10 @@ void guiInit( void )
|
||||
gtkInit();
|
||||
wsXInit( (void *)mDisplay );
|
||||
|
||||
cfg_read();
|
||||
// cfg_read();
|
||||
appInit( (void*)mDisplay );
|
||||
|
||||
if ( plCurrent && !filename ) mplSetFileName( plCurrent->path,plCurrent->name,STREAMTYPE_FILE );
|
||||
if ( sub_delay != 0.0f ) gtkSubDelay=sub_delay;
|
||||
if ( sub_name ) guiSetFilename( guiIntfStruct.Subtitlename,sub_name );
|
||||
#if defined( USE_OSD ) || defined( USE_SUB )
|
||||
guiLoadFont();
|
||||
@ -188,18 +194,13 @@ typedef struct
|
||||
|
||||
extern ao_functions_t * audio_out;
|
||||
extern vo_functions_t * video_out;
|
||||
extern int flip;
|
||||
extern int frame_dropping;
|
||||
extern int sub_pos;
|
||||
extern int sub_unicode;
|
||||
extern int stream_dump_type;
|
||||
extern char ** vo_plugin_args;
|
||||
extern int auto_quality;
|
||||
|
||||
#if defined( USE_OSD ) || defined( USE_SUB )
|
||||
void guiLoadFont( void )
|
||||
{
|
||||
font_factor=gtkSubFFactor;
|
||||
if ( vo_font )
|
||||
{
|
||||
int i;
|
||||
@ -219,19 +220,19 @@ void guiLoadFont( void )
|
||||
}
|
||||
free( vo_font ); vo_font=NULL;
|
||||
}
|
||||
if ( guiIntfStruct.Fontname )
|
||||
if ( font_name )
|
||||
{
|
||||
vo_font=read_font_desc( guiIntfStruct.Fontname,font_factor,0 );
|
||||
vo_font=read_font_desc( font_name,font_factor,0 );
|
||||
if ( !vo_font ) mp_msg( MSGT_CPLAYER,MSGL_ERR,MSGTR_CantLoadFont,font_name );
|
||||
}
|
||||
else
|
||||
{
|
||||
guiIntfStruct.Fontname=gstrdup( get_path( "font/font.desc" ) );
|
||||
vo_font=read_font_desc( guiIntfStruct.Fontname,font_factor,0 );
|
||||
font_name=gstrdup( get_path( "font/font.desc" ) );
|
||||
vo_font=read_font_desc( font_name,font_factor,0 );
|
||||
if ( !vo_font )
|
||||
{
|
||||
gfree( (void **)&guiIntfStruct.Fontname ); guiIntfStruct.Fontname=gstrdup( DATADIR"/font/font.desc" );
|
||||
vo_font=read_font_desc( guiIntfStruct.Fontname,font_factor,0 );
|
||||
gfree( (void **)&font_name ); font_name=gstrdup( DATADIR"/font/font.desc" );
|
||||
vo_font=read_font_desc( font_name,font_factor,0 );
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -431,15 +432,8 @@ int guiGetEvent( int type,char * arg )
|
||||
}
|
||||
}
|
||||
// -- subtitle
|
||||
gtkSubUnicode=sub_unicode;
|
||||
gtkSubDelay=sub_delay;
|
||||
gtkSubFPS=sub_fps;
|
||||
gtkSubPos=sub_pos;
|
||||
#ifdef USE_OSD
|
||||
gtkSubFFactor=font_factor;
|
||||
#endif
|
||||
#ifdef HAVE_DXR3
|
||||
if ( !gstrcmp( gtkVODriver,"dxr3" ) && guiIntfStruct.FileFormat != DEMUXER_TYPE_MPEG_PS && !gtkVopLAVC && !gtkVopFAME )
|
||||
if ( !gstrcmp( video_driver,"dxr3" ) && guiIntfStruct.FileFormat != DEMUXER_TYPE_MPEG_PS && !gtkVopLAVC && !gtkVopFAME )
|
||||
{
|
||||
gtkMessageBox( GTK_MB_FATAL,MSGTR_NEEDLAVCFAME );
|
||||
guiIntfStruct.Playing=0;
|
||||
@ -457,30 +451,20 @@ int guiGetEvent( int type,char * arg )
|
||||
guiIntfStruct.DiskChanged=0;
|
||||
|
||||
// --- video opts
|
||||
if ( !gtkVODriver )
|
||||
|
||||
if ( !video_driver )
|
||||
{
|
||||
int i = 0;
|
||||
if ( video_driver && !gtkVODriver )
|
||||
{
|
||||
while ( video_out_drivers[i] )
|
||||
if ( video_out_drivers[i++]->control( VOCTRL_GUISUPPORT,NULL ) == VO_TRUE )
|
||||
{
|
||||
const vo_info_t *info = video_out_drivers[i - 1]->get_info();
|
||||
if ( !gstrcmp( video_driver,(char *)info->short_name ) ) gtkVODriver=gstrdup( video_driver );
|
||||
}
|
||||
}
|
||||
else
|
||||
while ( video_out_drivers[i++] )
|
||||
if ( video_out_drivers[i - 1]->control( VOCTRL_GUISUPPORT,NULL ) == VO_TRUE )
|
||||
{
|
||||
const vo_info_t *info = video_out_drivers[i - 1]->get_info();
|
||||
gtkVODriver=gstrdup( (char *)info->short_name );
|
||||
video_driver=gstrdup( (char *)info->short_name );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ( gtkVODriver ) { gfree( (void **)&video_driver ); video_driver=gstrdup( gtkVODriver ); }
|
||||
else { gtkMessageBox( GTK_MB_FATAL,MSGTR_IDFGCVD ); exit_player( "gui init" ); }
|
||||
if ( !video_driver ) { gtkMessageBox( GTK_MB_FATAL,MSGTR_IDFGCVD ); exit_player( "gui init" ); }
|
||||
|
||||
{
|
||||
int i = 0;
|
||||
@ -489,7 +473,7 @@ int guiGetEvent( int type,char * arg )
|
||||
if ( video_out_drivers[i - 1]->control( VOCTRL_GUISUPPORT,NULL ) == VO_TRUE )
|
||||
{
|
||||
const vo_info_t *info = video_out_drivers[i - 1]->get_info();
|
||||
if ( ( !gstrcmp( gtkVODriver,(char *)info->short_name ) )&&( video_out_drivers[i - 1]->control( VOCTRL_GUI_NOWINDOW,NULL ) == VO_TRUE ) )
|
||||
if ( ( !gstrcmp( video_driver,(char *)info->short_name ) )&&( video_out_drivers[i - 1]->control( VOCTRL_GUI_NOWINDOW,NULL ) == VO_TRUE ) )
|
||||
{ guiIntfStruct.NoWindow=True; break; }
|
||||
}
|
||||
}
|
||||
@ -497,7 +481,7 @@ int guiGetEvent( int type,char * arg )
|
||||
#ifdef HAVE_DXR3
|
||||
remove_vop( "lavc" );
|
||||
remove_vop( "fame" );
|
||||
if ( !gstrcmp( gtkVODriver,"dxr3" ) )
|
||||
if ( !gstrcmp( video_driver,"dxr3" ) )
|
||||
{
|
||||
#warning workaround for this moment.
|
||||
osd_level=0;
|
||||
@ -510,16 +494,8 @@ int guiGetEvent( int type,char * arg )
|
||||
}
|
||||
#endif
|
||||
// ---
|
||||
if ( gtkVopPP ) { add_vop( "pp" ); auto_quality=gtkVAutoq; }
|
||||
else { remove_vop( "pp" ); auto_quality=0; }
|
||||
|
||||
vo_doublebuffering=gtkVODoubleBuffer;
|
||||
vo_directrendering=gtkVODirectRendering;
|
||||
frame_dropping=gtkVFrameDrop;
|
||||
if ( gtkVHardFrameDrop ) frame_dropping=gtkVHardFrameDrop;
|
||||
flip=gtkVFlip;
|
||||
force_ni=gtkVNIAVI;
|
||||
video_family=gtkVVFM;
|
||||
if ( gtkVopPP ) add_vop( "pp" );
|
||||
else remove_vop( "pp" );
|
||||
|
||||
// --- audio opts
|
||||
audio_delay=gtkAODelay;
|
||||
@ -532,25 +508,17 @@ int guiGetEvent( int type,char * arg )
|
||||
ao_plugin_cfg.pl_extrastereo_mul=gtkAOExtraStereoMul;
|
||||
}
|
||||
mixer_device=gtkAOOSSMixer;
|
||||
if ( audio_driver && !gtkAODriver ) gtkAODriver=gstrdup( audio_driver );
|
||||
gfree( (void **)&audio_driver );
|
||||
if ( !gstrcmp( gtkAODriver,"oss" ) && gtkAOOSSDevice )
|
||||
if ( !gstrncmp( audio_driver,"oss",3 ) && gtkAOOSSDevice )
|
||||
{
|
||||
char * tmp = calloc( 1,strlen( gtkAODriver ) + strlen( gtkAOOSSDevice ) + 2 );
|
||||
sprintf( tmp,"%s:%s",gtkAODriver,gtkAOOSSDevice );
|
||||
char * tmp = calloc( 1,strlen( gtkAOOSSDevice ) + 5 );
|
||||
sprintf( tmp,"oss:%s",gtkAOOSSDevice );
|
||||
gfree( (void *)&audio_driver );
|
||||
audio_driver=tmp;
|
||||
} else audio_driver=gstrdup( gtkAODriver );
|
||||
}
|
||||
|
||||
// -- subtitle
|
||||
#ifdef USE_SUB
|
||||
sub_auto=0;
|
||||
if ( gtkSubAuto && guiIntfStruct.StreamType == STREAMTYPE_FILE && !guiIntfStruct.Subtitlename )
|
||||
guiSetFilename( guiIntfStruct.Subtitlename,( guiIntfStruct.Filename ? sub_filename( get_path("sub/"),guiIntfStruct.Filename ): "default.sub" ) );
|
||||
sub_name=guiIntfStruct.Subtitlename;
|
||||
sub_unicode=gtkSubUnicode;
|
||||
sub_delay=gtkSubDelay;
|
||||
sub_fps=gtkSubFPS;
|
||||
sub_pos=gtkSubPos;
|
||||
stream_dump_type=0;
|
||||
if ( gtkSubDumpMPSub ) stream_dump_type=4;
|
||||
if ( gtkSubDumpSrt ) stream_dump_type=6;
|
||||
@ -563,7 +531,6 @@ int guiGetEvent( int type,char * arg )
|
||||
// --- misc
|
||||
if ( guiIntfStruct.AudioFile ) audio_stream=guiIntfStruct.AudioFile;
|
||||
else if ( guiIntfStruct.FilenameChanged ) audio_stream=NULL;
|
||||
index_mode=gtkVIndex;
|
||||
|
||||
break;
|
||||
}
|
||||
@ -673,24 +640,20 @@ void * gtkSet( int cmd,float fparam, void * vparam )
|
||||
return NULL;
|
||||
// --- subtitle
|
||||
case gtkSetSubAuto:
|
||||
gtkSubAuto=(int)fparam;
|
||||
sub_auto=(int)fparam;
|
||||
return NULL;
|
||||
case gtkSetSubDelay:
|
||||
// mp_cmd=(mp_cmd_t *)calloc( 1,sizeof( *mp_cmd ) );
|
||||
// mp_cmd->id=MP_CMD_SUB_DELAY; mp_cmd->name=strdup( "sub_delay" );
|
||||
// mp_cmd->args[0].v.f=fparam; mp_cmd->args[1].v.i=1;
|
||||
// mp_input_queue_cmd( mp_cmd );
|
||||
gtkSubDelay=sub_delay=fparam;
|
||||
sub_delay=fparam;
|
||||
return NULL;
|
||||
case gtkSetSubFPS:
|
||||
gtkSubFPS=sub_fps=(int)fparam;
|
||||
sub_fps=(int)fparam;
|
||||
return NULL;
|
||||
case gtkSetSubPos:
|
||||
gtkSubPos=sub_pos=(int)fparam;
|
||||
sub_pos=(int)fparam;
|
||||
return NULL;
|
||||
#if defined( USE_OSD ) || defined( USE_SUB )
|
||||
case gtkSetFontFactor:
|
||||
gtkSubFFactor=fparam;
|
||||
font_factor=fparam;
|
||||
guiLoadFont();
|
||||
return NULL;
|
||||
#endif
|
||||
@ -724,7 +687,7 @@ void * gtkSet( int cmd,float fparam, void * vparam )
|
||||
mp_input_queue_cmd( mp_cmd );
|
||||
return NULL;
|
||||
case gtkSetAutoq:
|
||||
auto_quality=gtkVAutoq=(int)fparam;
|
||||
auto_quality=(int)fparam;
|
||||
return NULL;
|
||||
// --- set equalizers
|
||||
case gtkSetContrast:
|
||||
|
@ -5,6 +5,7 @@
|
||||
#include "../config.h"
|
||||
#include "mplayer/play.h"
|
||||
#include "../mplayer.h"
|
||||
#include "cfg.h"
|
||||
|
||||
#ifdef USE_DVDREAD
|
||||
#include "../libmpdemux/stream.h"
|
||||
@ -91,8 +92,6 @@ typedef struct
|
||||
char * Subtitlename;
|
||||
int SubtitleChanged;
|
||||
|
||||
char * Fontname;
|
||||
|
||||
char * Othername;
|
||||
int OtherChanged;
|
||||
|
||||
|
@ -254,7 +254,7 @@ void ShowFileSelect( int type,int modal )
|
||||
gtk_combo_set_popdown_strings( GTK_COMBO( List ),fsList_items );
|
||||
g_list_free( fsList_items );
|
||||
gtk_entry_set_text( GTK_ENTRY( fsFilterCombo ),fsFontFileNames[fsNumberOfFontFilterNames - 1][0] );
|
||||
tmp=guiIntfStruct.Fontname;
|
||||
tmp=font_name;
|
||||
break;
|
||||
}
|
||||
|
||||
@ -438,11 +438,11 @@ void fs_Ok_released( GtkButton * button,gpointer user_data )
|
||||
guiSetDF( guiIntfStruct.AudioFile,fsSelectedDirectory,fsSelectedFile );
|
||||
break;
|
||||
case fsFontSelector:
|
||||
guiSetDF( guiIntfStruct.Fontname,fsSelectedDirectory,fsSelectedFile );
|
||||
guiSetDF( font_name,fsSelectedDirectory,fsSelectedFile );
|
||||
#if defined( USE_OSD ) || defined( USE_SUB )
|
||||
guiLoadFont();
|
||||
#endif
|
||||
if ( gtkVPreferences ) gtk_entry_set_text( GTK_ENTRY( prEFontName ),guiIntfStruct.Fontname );
|
||||
if ( gtkVPreferences ) gtk_entry_set_text( GTK_ENTRY( prEFontName ),font_name );
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -121,12 +121,11 @@ void ShowPreferences( void )
|
||||
int i = 0;
|
||||
char * tmp[3]; tmp[2]="";
|
||||
old_audio_driver=0;
|
||||
if ( audio_driver && !gtkAODriver ) gtkAODriver=gstrdup( audio_driver );
|
||||
while ( audio_out_drivers[i] )
|
||||
{
|
||||
const ao_info_t *info = audio_out_drivers[i++]->info;
|
||||
if ( !strcmp( info->short_name,"plugin" ) ) continue;
|
||||
if ( !gstrcmp( gtkAODriver,(char *)info->short_name ) ) old_audio_driver=i - 1;
|
||||
if ( !gstrcmp( audio_driver,(char *)info->short_name ) ) old_audio_driver=i - 1;
|
||||
tmp[0]=(char *)info->short_name; tmp[1]=(char *)info->name; gtk_clist_append( GTK_CLIST( CLADrivers ),tmp );
|
||||
}
|
||||
gtk_clist_select_row( GTK_CLIST( CLADrivers ),old_audio_driver,0 );
|
||||
@ -138,31 +137,28 @@ void ShowPreferences( void )
|
||||
}
|
||||
|
||||
// -- 2. page
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBDoubleBuffer ),gtkVODoubleBuffer );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBDR ),gtkVODirectRendering );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBFramedrop ),gtkVFrameDrop );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBHFramedrop ),gtkVHardFrameDrop );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBFlip ),gtkVFlip );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBDoubleBuffer ),vo_doublebuffering );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBDR ),vo_directrendering );
|
||||
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBFramedrop ),FALSE );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBHFramedrop ),FALSE );
|
||||
switch ( frame_dropping )
|
||||
{
|
||||
case 2: gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBHFramedrop ),TRUE );
|
||||
case 1: gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBFramedrop ),TRUE );
|
||||
}
|
||||
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBFlip ),flip );
|
||||
gtk_adjustment_set_value( HSPanscanadj,vo_panscan );
|
||||
{
|
||||
int i = 0, c = 0;
|
||||
char * tmp[3]; tmp[2]="";
|
||||
old_video_driver=0;
|
||||
if ( video_driver && !gtkVODriver )
|
||||
{
|
||||
while ( video_out_drivers[i] )
|
||||
if ( video_out_drivers[i++]->control( VOCTRL_GUISUPPORT,NULL ) == VO_TRUE )
|
||||
{
|
||||
const vo_info_t *info = video_out_drivers[i - 1]->get_info();
|
||||
if ( !gstrcmp( video_driver,(char *)info->short_name ) ) gtkVODriver=gstrdup( video_driver );
|
||||
}
|
||||
}
|
||||
i=0;
|
||||
while ( video_out_drivers[i] )
|
||||
if ( video_out_drivers[i++]->control( VOCTRL_GUISUPPORT,NULL ) == VO_TRUE )
|
||||
{
|
||||
const vo_info_t *info = video_out_drivers[i - 1]->get_info();
|
||||
if ( !gstrcmp( gtkVODriver,(char *)info->short_name ) ) old_video_driver=c; c++;
|
||||
if ( !gstrcmp( video_driver,(char *)info->short_name ) ) old_video_driver=c; c++;
|
||||
tmp[0]=(char *)info->short_name; tmp[1]=(char *)info->name; gtk_clist_append( GTK_CLIST( CLVDrivers ),tmp );
|
||||
}
|
||||
gtk_clist_select_row( GTK_CLIST( CLVDrivers ),old_video_driver,0 );
|
||||
@ -174,14 +170,14 @@ void ShowPreferences( void )
|
||||
}
|
||||
|
||||
// -- 3. page
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBNoAutoSub ),!gtkSubAuto );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBNoAutoSub ),!sub_auto );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBDumpMPSub ),gtkSubDumpMPSub );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBDumpSrt ),gtkSubDumpSrt );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBSubUnicode ),gtkSubUnicode );
|
||||
gtk_adjustment_set_value( HSSubDelayadj,gtkSubDelay );
|
||||
gtk_adjustment_set_value( HSSubFPSadj,gtkSubFPS );
|
||||
gtk_adjustment_set_value( HSSubPositionadj,gtkSubPos );
|
||||
gtk_adjustment_set_value( HSFontFactoradj,gtkSubFFactor );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBSubUnicode ),sub_unicode );
|
||||
gtk_adjustment_set_value( HSSubDelayadj,sub_delay );
|
||||
gtk_adjustment_set_value( HSSubFPSadj,sub_fps );
|
||||
gtk_adjustment_set_value( HSSubPositionadj,sub_pos );
|
||||
gtk_adjustment_set_value( HSFontFactoradj,font_factor );
|
||||
switch ( osd_level )
|
||||
{
|
||||
case 0: gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( RBOSDNone ),TRUE ); break;
|
||||
@ -191,17 +187,17 @@ void ShowPreferences( void )
|
||||
#if 0
|
||||
if ( guiIntfStruct.Subtitlename ) gtk_entry_set_text( GTK_ENTRY( ESubtitleName ),guiIntfStruct.Subtitlename );
|
||||
#endif
|
||||
if ( guiIntfStruct.Fontname ) gtk_entry_set_text( GTK_ENTRY( prEFontName ),guiIntfStruct.Fontname );
|
||||
if ( font_name ) gtk_entry_set_text( GTK_ENTRY( prEFontName ),font_name );
|
||||
|
||||
// -- 4. page
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBNonInterlaved ),gtkVNIAVI );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBIndex ),gtkVIndex );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBNonInterlaved ),force_ni );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBIndex ),index_mode );
|
||||
gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( CBPostprocess ),gtkVopPP );
|
||||
gtk_adjustment_set_value( HSPPQualityadj,gtkVAutoq );
|
||||
gtk_adjustment_set_value( HSPPQualityadj,auto_quality );
|
||||
{
|
||||
int i = 0;
|
||||
for ( i=0;i<7;i++ )
|
||||
if ( lVFM[i].vfm == gtkVVFM ) break;
|
||||
if ( lVFM[i].vfm == video_family ) break;
|
||||
gtk_entry_set_text( GTK_ENTRY( EVFM ),lVFM[i].name );
|
||||
}
|
||||
|
||||
@ -289,23 +285,26 @@ void prButton( GtkButton * button,gpointer user_data )
|
||||
gtkAONoSound=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBNoSound ) );
|
||||
gtkSet( gtkSetExtraStereo,HSExtraStereoMuladj->value,NULL );
|
||||
gtkSet( gtkSetAudioDelay,HSAudioDelayadj->value,NULL );
|
||||
gfree( (void **)>kAODriver );
|
||||
gtkAODriver=gstrdup( ao_driver[0] );
|
||||
gfree( (void **)>kVODriver );
|
||||
gtkVODriver=gstrdup( vo_driver[0] );
|
||||
gfree( (void **)&audio_driver );
|
||||
audio_driver=gstrdup( ao_driver[0] );
|
||||
gfree( (void **)&video_driver );
|
||||
video_driver=gstrdup( vo_driver[0] );
|
||||
|
||||
// -- 2. page
|
||||
gtkVODoubleBuffer=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBDoubleBuffer ) );
|
||||
gtkVODirectRendering=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBDR ) );
|
||||
gtkVFrameDrop=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBFramedrop ) );
|
||||
gtkVHardFrameDrop=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBHFramedrop ) );
|
||||
gtkVFlip=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBFlip ) );
|
||||
vo_doublebuffering=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBDoubleBuffer ) );
|
||||
vo_directrendering=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBDR ) );
|
||||
|
||||
frame_dropping=0;
|
||||
if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBFramedrop ) ) == TRUE ) frame_dropping=1;
|
||||
if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBHFramedrop ) ) == TRUE ) frame_dropping=2;
|
||||
|
||||
flip=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBFlip ) );
|
||||
|
||||
// -- 3. page
|
||||
gtkSet( gtkSetSubAuto,!gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBNoAutoSub ) ),NULL );
|
||||
gtkSubDumpMPSub=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBDumpMPSub ) );
|
||||
gtkSubDumpSrt=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBDumpSrt ) );
|
||||
gtkSubUnicode=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBSubUnicode ) );
|
||||
sub_unicode=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBSubUnicode ) );
|
||||
gtkSet( gtkSetSubDelay,HSSubDelayadj->value,NULL );
|
||||
gtkSet( gtkSetSubFPS,HSSubFPSadj->value,NULL );
|
||||
gtkSet( gtkSetSubPos,HSSubPositionadj->value,NULL );
|
||||
@ -313,19 +312,19 @@ void prButton( GtkButton * button,gpointer user_data )
|
||||
if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( RBOSDNone ) ) ) osd_level=0;
|
||||
if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( RBOSDIndicator ) ) ) osd_level=1;
|
||||
if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( RBOSDTandP ) ) ) osd_level=2;
|
||||
guiSetFilename( guiIntfStruct.Fontname,gtk_entry_get_text( GTK_ENTRY( prEFontName ) ) );
|
||||
guiSetFilename( font_name,gtk_entry_get_text( GTK_ENTRY( prEFontName ) ) );
|
||||
|
||||
// -- 4. page
|
||||
gtkVNIAVI=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBNonInterlaved ) );
|
||||
gtkVIndex=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBIndex ) );
|
||||
force_ni=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBNonInterlaved ) );
|
||||
index_mode=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBIndex ) );
|
||||
gtkVopPP=gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( CBPostprocess ) );
|
||||
gtkSet( gtkSetAutoq,HSPPQualityadj->value,NULL );
|
||||
{
|
||||
int i;
|
||||
char * tmp = gtk_entry_get_text( GTK_ENTRY( EVFM ) );
|
||||
gtkVVFM=-1;
|
||||
video_family=-1;
|
||||
for ( i=0;i<7;i++ )
|
||||
if ( !strcmp( tmp,lVFM[i].name ) ) { gtkVVFM=lVFM[i].vfm; break; }
|
||||
if ( !strcmp( tmp,lVFM[i].name ) ) { video_family=lVFM[i].vfm; break; }
|
||||
}
|
||||
|
||||
case bCancel:
|
||||
|
@ -322,8 +322,8 @@ static config_t mplayer_opts[]={
|
||||
{"lircconf", &lirc_configfile, CONF_TYPE_STRING, CONF_GLOBAL, 0, 0, NULL},
|
||||
#endif
|
||||
|
||||
{"gui", &use_gui, CONF_TYPE_FLAG, CONF_GLOBAL, 0, 1, NULL},
|
||||
{"nogui", &use_gui, CONF_TYPE_FLAG, CONF_GLOBAL, 1, 0, NULL},
|
||||
{"gui", &use_gui, CONF_TYPE_FLAG, CONF_GLOBAL|CONF_NOCMD, 0, 1, NULL},
|
||||
// {"nogui", &use_gui, CONF_TYPE_FLAG, CONF_GLOBAL, 1, 0, NULL},
|
||||
|
||||
#ifdef HAVE_NEW_GUI
|
||||
{"skin", &skinName, CONF_TYPE_STRING, CONF_GLOBAL, 0, 0, NULL},
|
||||
|
27
configure
vendored
27
configure
vendored
@ -160,6 +160,7 @@ Optional features:
|
||||
--disable-new-input disable new input system [enable]
|
||||
--enable-joystick enable joystick support in new input [disable]
|
||||
--enable-i18n GNU internationalisation [disable]
|
||||
--disable-setlocale disable setlocale using in mplayer [autodetect]
|
||||
--enable-runtime-cpudetection Enable runtime CPU detection [disable]
|
||||
--disable-dvdnav Disable dvdnav support [autodetect]
|
||||
--disable-dvdread Disable libdvdread support [autodetect]
|
||||
@ -975,6 +976,7 @@ _language=en
|
||||
_shm=auto
|
||||
_linux_devfs=no
|
||||
_i18n=no
|
||||
_setlocale=auto
|
||||
_sighandler=yes
|
||||
_libdv=auto
|
||||
_cdparanoia=auto
|
||||
@ -1000,6 +1002,8 @@ for ac_option do
|
||||
--disable-mencoder) _mencoder=no ;;
|
||||
--enable-i18n) _i18n=yes ;;
|
||||
--disable-i18n) _i18n=no ;;
|
||||
--enable-setlocale) _setlocale=yes ;;
|
||||
--disable-setlocale) _setlocale=no ;;
|
||||
--enable-x11) _x11=yes ;;
|
||||
--disable-x11) _x11=no ;;
|
||||
--enable-xv) _xv=yes ;;
|
||||
@ -1427,6 +1431,26 @@ fi
|
||||
echores "$_i18n"
|
||||
|
||||
|
||||
# Checking for setlocale() ...
|
||||
# CSAK EGY MARADHAT - A HEGYLAKO
|
||||
# Nemnem. a TV Maci !
|
||||
echocheck "setlocale()"
|
||||
if test "$_setlocale" = auto ; then
|
||||
cat > $TMPC <<EOF
|
||||
#include <locale.h>
|
||||
int main(void) { setlocale( LC_ALL,"" ); return 0; }
|
||||
EOF
|
||||
_setlocale=no
|
||||
cc_check && _setlocale=yes
|
||||
fi
|
||||
if test "$_setlocale" = yes ; then
|
||||
_def_setlocale='#define USE_SETLOCALE 1'
|
||||
else
|
||||
_def_setlocale='#undef USE_SETLOCALE'
|
||||
fi
|
||||
echores "$_setlocale"
|
||||
|
||||
|
||||
echocheck "language"
|
||||
test -z "$LINGUAS" && LINGUAS="en"
|
||||
if test -f "help_mp-${LINGUAS}.h" ; then
|
||||
@ -4257,6 +4281,9 @@ cat > config.h << EOF
|
||||
/* use GNU internationalization */
|
||||
$_def_i18n
|
||||
|
||||
/* use setlocale() function */
|
||||
$_def_setlocale
|
||||
|
||||
/* Runtime CPU detection */
|
||||
$_def_runtime_cpudetection
|
||||
|
||||
|
@ -582,7 +582,9 @@ int gui_no_filename=0;
|
||||
mp_register_options(mconfig);
|
||||
parse_cfgfiles(mconfig);
|
||||
|
||||
|
||||
#ifdef HAVE_NEW_GUI
|
||||
if ( use_gui ) cfg_read();
|
||||
#endif
|
||||
|
||||
if(m_config_parse_command_line(mconfig, argc, argv, envp) < 0) exit(1); // error parsing cmdline
|
||||
|
||||
|
@ -23,9 +23,18 @@ extern char * sub_name;
|
||||
extern float sub_delay;
|
||||
extern float sub_fps;
|
||||
extern int sub_auto;
|
||||
extern int sub_pos;
|
||||
extern int sub_unicode;
|
||||
|
||||
extern char * filename;
|
||||
|
||||
extern int flip;
|
||||
extern int force_ni;
|
||||
extern int index_mode;
|
||||
extern int frame_dropping;
|
||||
|
||||
extern int auto_quality;
|
||||
|
||||
extern void exit_player(char* how);
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user