diff options
author | pontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-12-05 23:40:05 +0000 |
---|---|---|
committer | pontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-12-05 23:40:05 +0000 |
commit | 6c4ed3b1748e124382d86a2a53cdcd6954f1c069 (patch) | |
tree | b1b5392a1bc6b6677b0a00e7978957ef28ef439e /Gui/mplayer | |
parent | 109c0b920cc59a4b0235d08b9c3a23b3eb0cae7b (diff) | |
download | mpv-6c4ed3b1748e124382d86a2a53cdcd6954f1c069.tar.bz2 mpv-6c4ed3b1748e124382d86a2a53cdcd6954f1c069.tar.xz |
better 'Audio track' support, and one 10l
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@8379 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'Gui/mplayer')
-rw-r--r-- | Gui/mplayer/gtk/menu.c | 42 | ||||
-rw-r--r-- | Gui/mplayer/gtk/pl.c | 7 |
2 files changed, 36 insertions, 13 deletions
diff --git a/Gui/mplayer/gtk/menu.c b/Gui/mplayer/gtk/menu.c index b2ed3461a9..2f34076e14 100644 --- a/Gui/mplayer/gtk/menu.c +++ b/Gui/mplayer/gtk/menu.c @@ -14,6 +14,7 @@ #include "../widgets.h" #include "../app.h" +#include "../../../libmpdemux/stream.h" #include "../../../libmpdemux/demuxer.h" void ActivateMenuItem( int Item ) @@ -414,7 +415,7 @@ GtkWidget * create_PopUpMenu( void ) } #endif - if ( guiIntfStruct.Playing ) +// if ( guiIntfStruct.Playing ) { AspectMenu=AddSubMenu( Menu,MSGTR_MENU_AspectRatio ); AddMenuItem( AspectMenu,MSGTR_MENU_Original,( 1 << 16 ) + evSetAspect ); @@ -423,18 +424,39 @@ GtkWidget * create_PopUpMenu( void ) AddMenuItem( AspectMenu,"2.35",( 4 << 16 ) + evSetAspect ); } - if ( guiIntfStruct.demuxer ) + if ( guiIntfStruct.demuxer && guiIntfStruct.StreamType != STREAMTYPE_DVD ) { int i,c = 0; - + for ( i=0;i < MAX_A_STREAMS;i++ ) - if ( ((demuxer_t *)guiIntfStruct.demuxer)->a_streams[i] ) - { - char tmp[32]; - snprintf( tmp,32,"Track %d",i ); - if ( !c ) { SubMenu=AddSubMenu( Menu, "Audio track" ); c=1; } - AddMenuItem( SubMenu,tmp,( i << 16 ) + evSetAudio ); - } + if ( ((demuxer_t *)guiIntfStruct.demuxer)->a_streams[i] ) c++; + + if ( c > 1 ) + { + SubMenu=AddSubMenu( Menu,MSGTR_MENU_AudioTrack ); + for ( i=0;i < MAX_A_STREAMS;i++ ) + if ( ((demuxer_t *)guiIntfStruct.demuxer)->a_streams[i] ) + { + char tmp[32]; + snprintf( tmp,32,MSGTR_MENU_Track,i ); + AddMenuItem( SubMenu,tmp,( i << 16 ) + evSetAudio ); + } + } + + for ( c=0,i=0;i < MAX_V_STREAMS;i++ ) + if ( ((demuxer_t *)guiIntfStruct.demuxer)->v_streams[i] ) c++; + + if ( c > 1 ) + { + SubMenu=AddSubMenu( Menu,MSGTR_MENU_VideoTrack ); + for ( i=0;i < MAX_V_STREAMS;i++ ) + if ( ((demuxer_t *)guiIntfStruct.demuxer)->v_streams[i] ) + { + char tmp[32]; + snprintf( tmp,32,MSGTR_MENU_Track,i ); + AddMenuItem( SubMenu,tmp,( i << 16 ) + evSetVideo ); + } + } } AddSeparator( Menu ); diff --git a/Gui/mplayer/gtk/pl.c b/Gui/mplayer/gtk/pl.c index a8471ea179..a6fc939c8f 100644 --- a/Gui/mplayer/gtk/pl.c +++ b/Gui/mplayer/gtk/pl.c @@ -223,9 +223,10 @@ static void plButtonReleased( GtkButton * button,gpointer user_data ) } if ( plCurrent ) { - guiSetDF( guiIntfStruct.Filename,plCurrent->path,plCurrent->name ); - guiIntfStruct.FilenameChanged=1; - guiIntfStruct.StreamType=STREAMTYPE_FILE; + mplSetFileName( plCurrent->path,plCurrent->name,STREAMTYPE_FILE ); +// guiSetDF( guiIntfStruct.Filename,plCurrent->path,plCurrent->name ); +// guiIntfStruct.FilenameChanged=1; +// guiIntfStruct.StreamType=STREAMTYPE_FILE; } } case 0: // cancel |