summaryrefslogtreecommitdiffstats
path: root/Gui
diff options
context:
space:
mode:
authorpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-12-05 23:40:05 +0000
committerpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-12-05 23:40:05 +0000
commit6c4ed3b1748e124382d86a2a53cdcd6954f1c069 (patch)
treeb1b5392a1bc6b6677b0a00e7978957ef28ef439e /Gui
parent109c0b920cc59a4b0235d08b9c3a23b3eb0cae7b (diff)
downloadmpv-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')
-rw-r--r--Gui/mplayer/gtk/menu.c42
-rw-r--r--Gui/mplayer/gtk/pl.c7
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