Mercurial > mplayer.hg
changeset 34387:0ba85cad4c7e
Add audio CD playback support to the X11/GTK GUI.
(The Win32 GUI already had this support. Add missing - although already
used - user event evPlayCD here as well as internal event ivSetCDTrack
- although it's unused - for consistency.)
author | ib |
---|---|
date | Sat, 31 Dec 2011 12:38:52 +0000 |
parents | 206264c532f5 |
children | 9ee95c78e85f |
files | DOCS/xml/de/skin.xml DOCS/xml/en/skin.xml gui/app.c gui/app.h gui/interface.c gui/ui/actions.c gui/ui/gtk/menu.c gui/ui/main.c gui/ui/pixmaps/cd.xpm gui/ui/pixmaps/dvd.xpm gui/ui/pixmaps/playcd.xpm gui/ui/pixmaps/playdvd.xpm gui/ui/render.c gui/util/string.c gui/win32/skinload.c gui/win32/skinload.h help/help_mp-de.h help/help_mp-en.h |
diffstat | 18 files changed, 657 insertions(+), 266 deletions(-) [+] |
line wrap: on
line diff
--- a/DOCS/xml/de/skin.xml Sat Dec 31 12:20:08 2011 +0000 +++ b/DOCS/xml/de/skin.xml Sat Dec 31 12:38:52 2011 +0000 @@ -673,7 +673,7 @@ </row> <row> <entry>$t</entry> - <entry>Track-Nummer (DVD, VCD oder Wiedergabeliste)</entry> + <entry>Track-Nummer (DVD, VCD, CD oder Wiedergabeliste)</entry> </row> <row> <entry>$o</entry> @@ -691,7 +691,7 @@ <entry>$T</entry> <entry> Buchstabe entsprechend dem Streamtyp (Datei: <keycap>f</keycap>, - Video-CD: <keycap>v</keycap>, DVD: <keycap>d</keycap>, URL: <keycap>u</keycap>) + CD: <keycap>a</keycap>, Video-CD: <keycap>v</keycap>, DVD: <keycap>d</keycap>, URL: <keycap>u</keycap>) </entry> </row> <row> @@ -914,6 +914,7 @@ <row><entry><keycap>m</keycap></entry><entry>Mono-Sound</entry></row> <row><entry><keycap>t</keycap></entry><entry>Stereo-Sound</entry></row> <row><entry><keycap>f</keycap></entry><entry>Stream ist eine Datei</entry></row> + <row><entry><keycap>a</keycap></entry><entry>Stream ist eine CD</entry></row> <row><entry><keycap>v</keycap></entry><entry>Stream ist eine Video-CD</entry></row> <row><entry><keycap>d</keycap></entry><entry>Stream ist eine DVD</entry></row> <row><entry><keycap>u</keycap></entry><entry>Stream ist eine URL</entry></row> @@ -1040,6 +1041,15 @@ </varlistentry> <varlistentry> + <term><emphasis role="bold">evPlayCD</emphasis></term> + <listitem> + <para> + Versucht die CD im angegebenen CD-ROM-Laufwerk zu öffnen. + </para> + </listitem> + </varlistentry> + + <varlistentry> <term><emphasis role="bold">evPlayVCD</emphasis></term> <listitem> <para>
--- a/DOCS/xml/en/skin.xml Sat Dec 31 12:20:08 2011 +0000 +++ b/DOCS/xml/en/skin.xml Sat Dec 31 12:38:52 2011 +0000 @@ -559,7 +559,7 @@ </row> <row> <entry>$t</entry> - <entry>track number (DVD, VCD or playlist)</entry> + <entry>track number (DVD, VCD, CD or playlist)</entry> </row> <row> <entry>$o</entry> @@ -577,7 +577,7 @@ <entry>$T</entry> <entry> a character according to the stream type (file: <keycap>f</keycap>, - Video CD: <keycap>v</keycap>, DVD: <keycap>d</keycap>, + CD: <keycap>a</keycap>, Video CD: <keycap>v</keycap>, DVD: <keycap>d</keycap>, URL: <keycap>u</keycap>) </entry> </row> @@ -784,6 +784,7 @@ <row><entry><keycap>m</keycap></entry><entry>mono sound</entry></row> <row><entry><keycap>t</keycap></entry><entry>stereo sound</entry></row> <row><entry><keycap>f</keycap></entry><entry>stream is a file</entry></row> + <row><entry><keycap>a</keycap></entry><entry>stream is a CD</entry></row> <row><entry><keycap>v</keycap></entry><entry>stream is a Video CD</entry></row> <row><entry><keycap>d</keycap></entry><entry>stream is a DVD</entry></row> <row><entry><keycap>u</keycap></entry><entry>stream is a URL</entry></row> @@ -894,6 +895,13 @@ </varlistentry> <varlistentry> + <term><emphasis role="bold">evPlayCD</emphasis></term> + <listitem><para> + Tries to open the disc in the given CD-ROM drive. + </para></listitem> +</varlistentry> + +<varlistentry> <term><emphasis role="bold">evPlayVCD</emphasis></term> <listitem><para> Tries to open the disc in the given CD-ROM drive.
--- a/gui/app.c Sat Dec 31 12:20:08 2011 +0000 +++ b/gui/app.c Sat Dec 31 12:38:52 2011 +0000 @@ -51,6 +51,7 @@ { evLoadSubtitle, "evLoadSubtitle" }, { evDropSubtitle, "evDropSubtitle" }, { evPlaylist, "evPlaylist" }, + { evPlayCD, "evPlayCD" }, { evPlayVCD, "evPlayVCD" }, { evPlayDVD, "evPlayDVD" }, { evLoadURL, "evSetURL" }, // legacy
--- a/gui/app.h Sat Dec 31 12:20:08 2011 +0000 +++ b/gui/app.h Sat Dec 31 12:38:52 2011 +0000 @@ -37,6 +37,7 @@ #define evLoadSubtitle 38 #define evDropSubtitle 43 #define evPlaylist 10 +#define evPlayCD 48 #define evPlayVCD 40 #define evPlayDVD 39 #define evLoadURL 5013 @@ -84,6 +85,7 @@ #define ivSetDVDTitle 5009 #define ivSetDVDChapter 5010 #define ivSetVCDTrack 5012 +#define ivSetCDTrack 5014 #define ivRedraw 7002
--- a/gui/interface.c Sat Dec 31 12:20:08 2011 +0000 +++ b/gui/interface.c Sat Dec 31 12:38:52 2011 +0000 @@ -410,6 +410,17 @@ case STREAMTYPE_STREAM: break; +#ifdef CONFIG_CDDA + case STREAMTYPE_CDDA: + { + char tmp[512]; + + sprintf(tmp, "cdda://%d", guiInfo.Track); + uiSetFileName(NULL, tmp, STREAMTYPE_CDDA); + } + break; +#endif + #ifdef CONFIG_VCD case STREAMTYPE_VCD: { @@ -611,6 +622,13 @@ guiInfo.StreamType = stream->type; switch (guiInfo.StreamType) { +#ifdef CONFIG_CDDA + case STREAMTYPE_CDDA: + guiInfo.Tracks = 0; + stream_control(stream, STREAM_CTRL_GET_NUM_TITLES, &guiInfo.Tracks); + break; +#endif + #ifdef CONFIG_VCD case STREAMTYPE_VCD: guiInfo.Tracks = 0; @@ -772,6 +790,15 @@ break; } +#ifdef CONFIG_CDDA + if (guiInfo.StreamType == STREAMTYPE_CDDA) { + uiNext(); + + if (guiInfo.Playing) + break; + } +#endif + if (guiInfo.Playing && (next = listSet(gtkGetNextPlItem, NULL)) && (plLastPlayed != next)) { plLastPlayed = next; uiSetFileName(next->path, next->name, STREAMTYPE_FILE);
--- a/gui/ui/actions.c Sat Dec 31 12:20:08 2011 +0000 +++ b/gui/ui/actions.c Sat Dec 31 12:38:52 2011 +0000 @@ -242,6 +242,11 @@ return; switch (guiInfo.StreamType) { +#ifdef CONFIG_CDDA + case STREAMTYPE_CDDA: + break; +#endif + #ifdef CONFIG_VCD case STREAMTYPE_VCD: break; @@ -281,6 +286,15 @@ return; switch (guiInfo.StreamType) { +#ifdef CONFIG_CDDA + case STREAMTYPE_CDDA: + if (--guiInfo.Track == 0) { + guiInfo.Track = 1; + stop = 1; + } + break; +#endif + #ifdef CONFIG_VCD case STREAMTYPE_VCD: if (--guiInfo.Track == 1) { @@ -335,6 +349,17 @@ return; switch (guiInfo.StreamType) { +#ifdef CONFIG_CDDA + case STREAMTYPE_CDDA: + + if (++guiInfo.Track > guiInfo.Tracks) { + guiInfo.Track = guiInfo.Tracks; + stop = 1; + } + + break; +#endif + #ifdef CONFIG_VCD case STREAMTYPE_VCD:
--- a/gui/ui/gtk/menu.c Sat Dec 31 12:20:08 2011 +0000 +++ b/gui/ui/gtk/menu.c Sat Dec 31 12:38:52 2011 +0000 @@ -66,6 +66,10 @@ #include "gui/ui/pixmaps/empty.xpm" #include "gui/ui/pixmaps/loadeaf.xpm" #include "gui/ui/pixmaps/title.xpm" +#ifdef CONFIG_CDDA +#include "gui/ui/pixmaps/cd.xpm" +#include "gui/ui/pixmaps/playcd.xpm" +#endif #ifdef CONFIG_VCD #include "gui/ui/pixmaps/vcd.xpm" #include "gui/ui/pixmaps/playvcd.xpm" @@ -404,6 +408,8 @@ GtkWidget * AspectMenu; GtkWidget * VCDSubMenu; GtkWidget * VCDTitleMenu; +GtkWidget * CDSubMenu; +GtkWidget * CDTitleMenu; GtkWidget * create_PopUpMenu( void ) { @@ -425,6 +431,9 @@ AddSeparator( Menu ); SubMenu=AddSubMenu( window1, (const char*)open_xpm, Menu,MSGTR_MENU_Open ); AddMenuItem( window1, (const char*)file2_xpm, SubMenu,MSGTR_MENU_PlayFile" ", evLoadPlay ); +#ifdef CONFIG_CDDA + AddMenuItem( window1, (const char*)playcd_xpm, SubMenu,MSGTR_MENU_PlayCD, evPlayCD ); +#endif #ifdef CONFIG_VCD AddMenuItem( window1, (const char*)playvcd_xpm, SubMenu,MSGTR_MENU_PlayVCD, evPlayVCD ); #endif @@ -450,6 +459,27 @@ // AddMenuItem( SubMenu,MSGTR_MENU_NormalSize" ", evNormalSize ); // AddMenuItem( SubMenu,MSGTR_MENU_DoubleSize, evDoubleSize ); // AddMenuItem( SubMenu,MSGTR_MENU_FullScreen, evFullScreen ); +#ifdef CONFIG_CDDA + CDSubMenu=AddSubMenu( window1, (const char*)cd_xpm, Menu,MSGTR_MENU_CD ); + AddMenuItem( window1, (const char*)playcd_xpm, CDSubMenu,MSGTR_MENU_PlayDisc,evPlayCD ); + AddSeparator( CDSubMenu ); + CDTitleMenu=AddSubMenu( window1, (const char*)title_xpm, CDSubMenu,MSGTR_MENU_Titles ); + if ( guiInfo.Tracks ) + { + char tmp[32]; int i; + for ( i=1;i <= guiInfo.Tracks;i++ ) + { + snprintf( tmp,32,MSGTR_MENU_Title,i ); + //AddMenuItem( CDTitleMenu,tmp,( i << 16 ) + ivSetCDTrack ); + AddMenuItem(window1, (const char*)empty_xpm, CDTitleMenu,tmp,( i << 16 ) + ivSetCDTrack ); + } + } + else + { + MenuItem=AddMenuItem( window1, (const char*)empty_xpm, CDTitleMenu,MSGTR_MENU_None,evNone ); + gtk_widget_set_sensitive( MenuItem,FALSE ); + } +#endif #ifdef CONFIG_VCD VCDSubMenu=AddSubMenu( window1, (const char*)vcd_xpm, Menu,MSGTR_MENU_VCD ); AddMenuItem( window1, (const char*)playvcd_xpm, VCDSubMenu,MSGTR_MENU_PlayDisc,evPlayVCD );
--- a/gui/ui/main.c Sat Dec 31 12:20:08 2011 +0000 +++ b/gui/ui/main.c Sat Dec 31 12:38:52 2011 +0000 @@ -162,6 +162,14 @@ mp_property_do("sub",M_PROPERTY_SET,&iparam,guiInfo.mpcontext); break; +#ifdef CONFIG_CDDA + case ivSetCDTrack: + guiInfo.Track=iparam; + case evPlayCD: + guiInfoMediumClear ( CLEAR_ALL ); + guiInfo.StreamType=STREAMTYPE_CDDA; + goto play; +#endif #ifdef CONFIG_VCD case ivSetVCDTrack: guiInfo.Track=iparam; @@ -202,6 +210,19 @@ guiInfo.Track=1; guiInfo.NewPlay=GUI_FILE_NEW; break; +#ifdef CONFIG_CDDA + case STREAMTYPE_CDDA: + guiInfoMediumClear( CLEAR_ALL - CLEAR_VCD - CLEAR_FILE ); + if ( !cdrom_device ) cdrom_device=gstrdup( DEFAULT_CDROM_DEVICE ); + uiSetFileName( NULL,cdrom_device,STREAMTYPE_CDDA ); + if ( guiInfo.Playing != GUI_PAUSE ) + { + if ( !guiInfo.Track ) + guiInfo.Track=1; + guiInfo.NewPlay=GUI_FILE_SAME; + } + break; +#endif #ifdef CONFIG_VCD case STREAMTYPE_VCD: guiInfoMediumClear( CLEAR_ALL - CLEAR_VCD - CLEAR_FILE );
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gui/ui/pixmaps/cd.xpm Sat Dec 31 12:38:52 2011 +0000 @@ -0,0 +1,129 @@ +/* XPM */ +static const char * const cd_xpm[] = { +"16 16 110 2", +" c None", +". c #CACCD2", +"+ c #D3D4D6", +"@ c #D2D2D3", +"# c #D1D1D2", +"$ c #D1D1D3", +"% c #B5B8BD", +"& c #EDEDEC", +"* c #FAFAFA", +"= c #FBFBFB", +"- c #FCFCFC", +"; c #FFFFFF", +"> c #D9D9D9", +", c #AFB1B5", +"' c #C6C6C7", +") c #FDFDFD", +"! c #F7F7F7", +"~ c #F9F9F9", +"{ c #F6F6F6", +"] c #F8F8F8", +"^ c #B8B9BD", +"/ c #B2B4BA", +"( c #EAE9E9", +"_ c #DCDCDC", +": c #F3F3F3", +"< c #F4F4F4", +"[ c #A8AAAF", +"} c #CBCBCA", +"| c #CCCCCC", +"1 c #D7D7D7", +"2 c #E1E1E1", +"3 c #F5F5F5", +"4 c #EFEFEF", +"5 c #CCCDCE", +"6 c #D2D2D2", +"7 c #CDCDCD", +"8 c #D6D6D6", +"9 c #E0E0E0", +"0 c #E7E7E7", +"a c #E6E6E6", +"b c #E5E5E5", +"c c #EBEBEB", +"d c #E3E3E3", +"e c #ECECEC", +"f c #9C9DA5", +"g c #C4C5C9", +"h c #C1C1C1", +"i c #CECECE", +"j c #E2E2E2", +"k c #E8E8E8", +"l c #D8D8D8", +"m c #E4E4E3", +"n c #DBDBDB", +"o c #F2F2F2", +"p c #DDDDDD", +"q c #D4D4D4", +"r c #A2A4AA", +"s c #C9CACC", +"t c #C4C4C4", +"u c #CFCFCF", +"v c #E4E4E4", +"w c #DBDAD9", +"x c #727789", +"y c #DFDEDD", +"z c #C8C8C8", +"A c #BCBCBC", +"B c #BFBFBF", +"C c #9E9FA4", +"D c #C6C7C9", +"E c #E2E2E1", +"F c #999CA6", +"G c #C5C5C4", +"H c #D3D3D3", +"I c #C7C7C7", +"J c #BBBBBB", +"K c #BABABA", +"L c #C4C4C3", +"M c #95969A", +"N c #C4C5C6", +"O c #D8D8D7", +"P c #CACACA", +"Q c #C6C6C6", +"R c #B9B9B9", +"S c #CCCCCB", +"T c #939395", +"U c #A0A2A7", +"V c #E5E5E4", +"W c #FEFEFE", +"X c #C5C5C5", +"Y c #C2C2C2", +"Z c #B8B8B8", +"` c #BCBBBA", +" . c #A3A6AD", +".. c #9B9C9F", +"+. c #F0F0F0", +"@. c #C0C0C0", +"#. c #7C7E84", +"$. c #EAEAEA", +"%. c #979798", +"&. c #989BA2", +"*. c #E9E9E9", +"=. c #959596", +"-. c #A6A8AD", +";. c #B7B7B5", +">. c #B4B4B3", +",. c #8B8D92", +"'. c #9B9DA0", +"). c #B6B6B7", +"!. c #B0B0B1", +"~. c #929396", +" . + @ # $ ", +" % & * = = = - ; > , ", +" ' ) ! ~ ~ ~ { ] * = ) ^ ", +" / ( _ : ! ] ! < ! ] ) ) = [ ", +" } | 1 2 { ] ! : 3 - - 3 4 5 ", +" 6 7 8 9 0 ] a b ) = : c d e f ", +"g h i 1 j k 6 l m n o 0 p q 2 r ", +"s t u n v _ w x y p 8 z A B C ", +"D 8 l 2 k d E F ^ G H I J K L M ", +"N v j k e = _ O 6 P Q A R K S T ", +"U V k c ; W 3 > ! 6 X Y R Z ` .", +" ..+.; : : > : : : X X h @.#. ", +" 1 = : > : : : : $.X I %. ", +" &.Q a > : : +.v *.< =. ", +" -.;.P j k p >.,. ", +" '.).!.~. "};
--- a/gui/ui/pixmaps/dvd.xpm Sat Dec 31 12:20:08 2011 +0000 +++ b/gui/ui/pixmaps/dvd.xpm Sat Dec 31 12:38:52 2011 +0000 @@ -1,129 +1,120 @@ /* XPM */ static const char * const dvd_xpm[] = { -"16 16 110 2", -" c None", -". c #CACCD2", -"+ c #D3D4D6", -"@ c #D2D2D3", -"# c #D1D1D2", -"$ c #D1D1D3", -"% c #B5B8BD", -"& c #EDEDEC", -"* c #FAFAFA", -"= c #FBFBFB", -"- c #FCFCFC", -"; c #FFFFFF", -"> c #D9D9D9", -", c #AFB1B5", -"' c #C6C6C7", -") c #FDFDFD", -"! c #F7F7F7", -"~ c #F9F9F9", -"{ c #F6F6F6", -"] c #F8F8F8", -"^ c #B8B9BD", -"/ c #B2B4BA", -"( c #EAE9E9", -"_ c #DCDCDC", -": c #F3F3F3", -"< c #F4F4F4", -"[ c #A8AAAF", -"} c #CBCBCA", -"| c #CCCCCC", -"1 c #D7D7D7", -"2 c #E1E1E1", -"3 c #F5F5F5", -"4 c #EFEFEF", -"5 c #CCCDCE", -"6 c #D2D2D2", -"7 c #CDCDCD", -"8 c #D6D6D6", -"9 c #E0E0E0", -"0 c #E7E7E7", -"a c #E6E6E6", -"b c #E5E5E5", -"c c #EBEBEB", -"d c #E3E3E3", -"e c #ECECEC", -"f c #9C9DA5", -"g c #C4C5C9", -"h c #C1C1C1", -"i c #CECECE", -"j c #E2E2E2", -"k c #E8E8E8", -"l c #D8D8D8", -"m c #E4E4E3", -"n c #DBDBDB", -"o c #F2F2F2", -"p c #DDDDDD", -"q c #D4D4D4", -"r c #A2A4AA", -"s c #C9CACC", -"t c #C4C4C4", -"u c #CFCFCF", -"v c #E4E4E4", -"w c #DBDAD9", -"x c #727789", -"y c #DFDEDD", -"z c #C8C8C8", -"A c #BCBCBC", -"B c #BFBFBF", -"C c #9E9FA4", -"D c #C6C7C9", -"E c #E2E2E1", -"F c #999CA6", -"G c #C5C5C4", -"H c #D3D3D3", -"I c #C7C7C7", -"J c #BBBBBB", -"K c #BABABA", -"L c #C4C4C3", -"M c #95969A", -"N c #C4C5C6", -"O c #D8D8D7", -"P c #CACACA", -"Q c #C6C6C6", -"R c #B9B9B9", -"S c #CCCCCB", -"T c #939395", -"U c #A0A2A7", -"V c #E5E5E4", -"W c #FEFEFE", -"X c #C5C5C5", -"Y c #C2C2C2", -"Z c #B8B8B8", -"` c #BCBBBA", -" . c #A3A6AD", -".. c #9B9C9F", -"+. c #F0F0F0", -"@. c #C0C0C0", -"#. c #7C7E84", -"$. c #EAEAEA", -"%. c #979798", -"&. c #989BA2", -"*. c #E9E9E9", -"=. c #959596", -"-. c #A6A8AD", -";. c #B7B7B5", -">. c #B4B4B3", -",. c #8B8D92", -"'. c #9B9DA0", -"). c #B6B6B7", -"!. c #B0B0B1", -"~. c #929396", -" . + @ # $ ", -" % & * = = = - ; > , ", -" ' ) ! ~ ~ ~ { ] * = ) ^ ", -" / ( _ : ! ] ! < ! ] ) ) = [ ", -" } | 1 2 { ] ! : 3 - - 3 4 5 ", -" 6 7 8 9 0 ] a b ) = : c d e f ", -"g h i 1 j k 6 l m n o 0 p q 2 r ", -"s t u n v _ w x y p 8 z A B C ", -"D 8 l 2 k d E F ^ G H I J K L M ", -"N v j k e = _ O 6 P Q A R K S T ", -"U V k c ; W 3 > ! 6 X Y R Z ` .", -" ..+.; : : > : : : X X h @.#. ", -" 1 = : > : : : : $.X I %. ", -" &.Q a > : : +.v *.< =. ", -" -.;.P j k p >.,. ", -" '.).!.~. "}; +"16 16 100 2", +" c #000000", +"! c #7277FF", +"# c #7C7EFF", +"$ c #8B8DFF", +"% c #9293FF", +"& c #9393FF", +"' c #9595FF", +"( c #9596FF", +") c #9797FF", +"* c #989BFF", +"+ c #999CFF", +", c #9B9CFF", +"- c #9B9DFF", +". c #9C9DFF", +"/ c #9E9FFF", +"0 c #A0A2FF", +"1 c #A2A4FF", +"2 c #A3A6FF", +"3 c #A6A8FF", +"4 c #A8AAFF", +"5 c #B0B0FF", +"6 c #AFB1FF", +"7 c #B2B4FF", +"8 c #B4B4FF", +"9 c #B6B6FF", +": c #B7B7FF", +"; c #B5B8FF", +"< c #B8B8FF", +"= c #B8B9FF", +"> c #B9B9FF", +"? c #BABAFF", +"@ c #BBBBFF", +"A c #BCBBFF", +"B c #BCBCFF", +"C c #BFBFFF", +"D c #C0C0FF", +"E c #C1C1FF", +"F c #C2C2FF", +"G c #C4C4FF", +"H c #C4C5FF", +"I c #C5C5FF", +"J c #C6C6FF", +"K c #C6C7FF", +"L c #C7C7FF", +"M c #C8C8FF", +"N c #C9CAFF", +"O c #CACAFF", +"P c #CBCBFF", +"Q c #CACCFF", +"R c #CCCCFF", +"S c #CCCDFF", +"T c #CDCDFF", +"U c #CECEFF", +"V c #CFCFFF", +"W c #D1D1FF", +"X c #D2D2FF", +"Y c #D3D3FF", +"Z c #D3D4FF", +"[ c #D4D4FF", +"[] c #D6D6FF", +"] c #D7D7FF", +"^ c #D8D8FF", +"_ c #D9D9FF", +"` c #DBDAFF", +"a c #DBDBFF", +"b c #DCDCFF", +"c c #DDDDFF", +"d c #DFDEFF", +"e c #E0E0FF", +"f c #E1E1FF", +"g c #E2E2FF", +"h c #E3E3FF", +"i c #E4E4FF", +"j c #E5E5FF", +"k c #E6E6FF", +"l c #E7E7FF", +"m c #E8E8FF", +"n c #E9E9FF", +"o c #EAE9FF", +"p c #EAEAFF", +"q c #EBEBFF", +"r c #ECECFF", +"s c #EDEDFF", +"t c #EFEFFF", +"u c #F0F0FF", +"v c #F2F2FF", +"w c #F3F3FF", +"x c #F4F4FF", +"y c #F5F5FF", +"z c #F6F6FF", +"{ c #F7F7FF", +"| c #F8F8FF", +"} c #F9F9FF", +"~ c #FAFAFF", +" ! c #FBFBFF", +"!! c #FCFCFF", +"#! c #FDFDFF", +"$! c #FEFEFF", +"%! c #FFFFFF", +"&! c None", +"&!&!&!&!&!Q Z X W W &!&!&!&!&!&!", +"&!&!&!; s ~ ! ! !!!%!_ 6 &!&!&!", +"&!&!J #!{ } } } z | ~ !#!= &!&!", +"&!7 o b w { | { x { | #!#! !4 &!", +"&!P R ] f z | { w y !!!!y t S &!", +"&!X T []e l | k j #! !w q h r . ", +"H E U ] g m X ^ i a v l c [ f 1 ", +"N G V a i b ` &!! d c []M B C / ", +"K []^ f m h g + = I Y L @ ? G ( ", +"H i g m r !b ^ X O J B > ? R & ", +"0 j m q %!$!y _ { X I F > < A 2 ", +"&!, u %!w w _ w w w I I E D # &!", +"&!&!] !w _ w w w w p I L ) &!&!", +"&!&!* J k _ w w u i n x ' &!&!&!", +"&!&!&!&!3 : O g m c 8 $ &!&!&!&!", +"&!&!&!&!&!&!- 9 5 % &!&!&!&!&!&!" +};
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gui/ui/pixmaps/playcd.xpm Sat Dec 31 12:38:52 2011 +0000 @@ -0,0 +1,137 @@ +/* XPM */ +static const char * const playcd_xpm[] = { +"16 16 118 2", +" c None", +". c #CACCD2", +"+ c #D3D4D6", +"@ c #D2D2D3", +"# c #D1D1D2", +"$ c #D1D1D3", +"% c #B5B8BD", +"& c #EDEDEC", +"* c #FAFAFA", +"= c #FBFBFB", +"- c #FCFCFC", +"; c #FFFFFF", +"> c #D9D9D9", +", c #AFB1B5", +"' c #C6C6C7", +") c #FDFDFD", +"! c #F7F7F7", +"~ c #F9F9F9", +"{ c #F6F6F6", +"] c #F8F8F8", +"^ c #B8B9BD", +"/ c #B2B4BA", +"( c #EAE9E9", +"_ c #DCDCDC", +": c #F3F3F3", +"< c #F4F4F4", +"[ c #A8AAAF", +"} c #CBCBCA", +"| c #CCCCCC", +"1 c #D7D7D7", +"2 c #E1E1E1", +"3 c #F5F5F5", +"4 c #EFEFEF", +"5 c #CCCDCE", +"6 c #D2D2D2", +"7 c #CDCDCD", +"8 c #D6D6D6", +"9 c #E0E0E0", +"0 c #E7E7E7", +"a c #E6E6E6", +"b c #E5E5E5", +"c c #EBEBEB", +"d c #E3E3E3", +"e c #ECECEC", +"f c #9C9DA5", +"g c #C4C5C9", +"h c #C1C1C1", +"i c #CECECE", +"j c #E2E2E2", +"k c #E8E8E8", +"l c #D8D8D8", +"m c #E4E4E3", +"n c #DBDBDB", +"o c #F2F2F2", +"p c #404040", +"q c #DDDDDD", +"r c #D4D4D4", +"s c #A2A4AA", +"t c #C9CACC", +"u c #C4C4C4", +"v c #CFCFCF", +"w c #E4E4E4", +"x c #DBDAD9", +"y c #727789", +"z c #DFDEDD", +"A c #292828", +"B c #373737", +"C c #BCBCBC", +"D c #BFBFBF", +"E c #9E9FA4", +"F c #C6C7C9", +"G c #E2E2E1", +"H c #999CA6", +"I c #C5C5C4", +"J c #D3D3D3", +"K c #313131", +"L c #747472", +"M c #5C5C5C", +"N c #C4C4C3", +"O c #95969A", +"P c #C4C5C6", +"Q c #D8D8D7", +"R c #CACACA", +"S c #C6C6C6", +"T c #343333", +"U c #A1A09E", +"V c #939290", +"W c #939395", +"X c #A0A2A7", +"Y c #E5E5E4", +"Z c #FEFEFE", +"` c #C5C5C5", +" . c #363635", +".. c #A7A6A3", +"+. c #B8B7B4", +"@. c #91908E", +"#. c #9B9C9F", +"$. c #F0F0F0", +"%. c #383737", +"&. c #B0AFAC", +"*. c #C8C7C4", +"=. c #5A5A59", +"-. c #EAEAEA", +";. c #3E3D3D", +">. c #BEBCB9", +",. c #151414", +"'. c #989BA2", +"). c #E9E9E9", +"!. c #41403F", +"~. c #696867", +"{. c #A6A8AD", +"]. c #B7B7B5", +"^. c #B4B4B3", +"/. c #0A0A0A", +"(. c #9B9DA0", +"_. c #B6B6B7", +":. c #B0B0B1", +"<. c #929396", +" . + @ # $ ", +" % & * = = = - ; > , ", +" ' ) ! ~ ~ ~ { ] * = ) ^ ", +" / ( _ : ! ] ! < ! ] ) ) = [ ", +" } | 1 2 { ] ! : 3 - - 3 4 5 ", +" 6 7 8 9 0 ] a b ) = : c d e f ", +"g h i 1 j k 6 l m n o p q r 2 s ", +"t u v n w _ x y z q A B C D E ", +"F 8 l 2 k d G H ^ I J K L M N O ", +"P w j k e = _ Q 6 R S T U V M W ", +"X Y k c ; Z 3 > ! 6 ` ...+.@.M ", +" #.$.; : : > : : : ` %.&.*.=. ", +" 1 = : > : : : : -.;.>.,. ", +" '.S a > : : $.w ).!.~.Z ", +" {.].R j k q ^./.; ", +" (._.:.<. D "};
--- a/gui/ui/pixmaps/playdvd.xpm Sat Dec 31 12:20:08 2011 +0000 +++ b/gui/ui/pixmaps/playdvd.xpm Sat Dec 31 12:38:52 2011 +0000 @@ -1,137 +1,129 @@ /* XPM */ static const char * const playdvd_xpm[] = { -"16 16 118 2", -" c None", -". c #CACCD2", -"+ c #D3D4D6", -"@ c #D2D2D3", -"# c #D1D1D2", -"$ c #D1D1D3", -"% c #B5B8BD", -"& c #EDEDEC", -"* c #FAFAFA", -"= c #FBFBFB", -"- c #FCFCFC", -"; c #FFFFFF", -"> c #D9D9D9", -", c #AFB1B5", -"' c #C6C6C7", -") c #FDFDFD", -"! c #F7F7F7", -"~ c #F9F9F9", -"{ c #F6F6F6", -"] c #F8F8F8", -"^ c #B8B9BD", -"/ c #B2B4BA", -"( c #EAE9E9", -"_ c #DCDCDC", -": c #F3F3F3", -"< c #F4F4F4", -"[ c #A8AAAF", -"} c #CBCBCA", -"| c #CCCCCC", -"1 c #D7D7D7", -"2 c #E1E1E1", -"3 c #F5F5F5", -"4 c #EFEFEF", -"5 c #CCCDCE", -"6 c #D2D2D2", -"7 c #CDCDCD", -"8 c #D6D6D6", -"9 c #E0E0E0", -"0 c #E7E7E7", -"a c #E6E6E6", -"b c #E5E5E5", -"c c #EBEBEB", -"d c #E3E3E3", -"e c #ECECEC", -"f c #9C9DA5", -"g c #C4C5C9", -"h c #C1C1C1", -"i c #CECECE", -"j c #E2E2E2", -"k c #E8E8E8", -"l c #D8D8D8", -"m c #E4E4E3", -"n c #DBDBDB", -"o c #F2F2F2", -"p c #404040", -"q c #DDDDDD", -"r c #D4D4D4", -"s c #A2A4AA", -"t c #C9CACC", -"u c #C4C4C4", -"v c #CFCFCF", -"w c #E4E4E4", -"x c #DBDAD9", -"y c #727789", -"z c #DFDEDD", -"A c #292828", -"B c #373737", -"C c #BCBCBC", -"D c #BFBFBF", -"E c #9E9FA4", -"F c #C6C7C9", -"G c #E2E2E1", -"H c #999CA6", -"I c #C5C5C4", -"J c #D3D3D3", -"K c #313131", -"L c #747472", -"M c #5C5C5C", -"N c #C4C4C3", -"O c #95969A", -"P c #C4C5C6", -"Q c #D8D8D7", -"R c #CACACA", -"S c #C6C6C6", -"T c #343333", -"U c #A1A09E", -"V c #939290", -"W c #939395", -"X c #A0A2A7", -"Y c #E5E5E4", -"Z c #FEFEFE", -"` c #C5C5C5", -" . c #363635", -".. c #A7A6A3", -"+. c #B8B7B4", -"@. c #91908E", -"#. c #9B9C9F", -"$. c #F0F0F0", -"%. c #383737", -"&. c #B0AFAC", -"*. c #C8C7C4", -"=. c #5A5A59", -"-. c #EAEAEA", -";. c #3E3D3D", -">. c #BEBCB9", -",. c #151414", -"'. c #989BA2", -"). c #E9E9E9", -"!. c #41403F", -"~. c #696867", -"{. c #A6A8AD", -"]. c #B7B7B5", -"^. c #B4B4B3", -"/. c #0A0A0A", -"(. c #9B9DA0", -"_. c #B6B6B7", -":. c #B0B0B1", -"<. c #929396", -" . + @ # $ ", -" % & * = = = - ; > , ", -" ' ) ! ~ ~ ~ { ] * = ) ^ ", -" / ( _ : ! ] ! < ! ] ) ) = [ ", -" } | 1 2 { ] ! : 3 - - 3 4 5 ", -" 6 7 8 9 0 ] a b ) = : c d e f ", -"g h i 1 j k 6 l m n o p q r 2 s ", -"t u v n w _ x y z q A B C D E ", -"F 8 l 2 k d G H ^ I J K L M N O ", -"P w j k e = _ Q 6 R S T U V M W ", -"X Y k c ; Z 3 > ! 6 ` ...+.@.M ", -" #.$.; : : > : : : ` %.&.*.=. ", -" 1 = : > : : : : -.;.>.,. ", -" '.S a > : : $.w ).!.~.Z ", -" {.].R j k q ^./.; ", -" (._.:.<. D "}; +"16 16 109 2", +" c #000000", +"! c #0A0A0A", +"# c #151414", +"$ c #292828", +"% c #313131", +"& c #343333", +"' c #363635", +"( c #373737", +") c #383737", +"* c #3E3D3D", +"+ c #41403F", +", c #404040", +"- c #5A5A59", +". c #5C5C5C", +"/ c #696867", +"0 c #747472", +"1 c #91908E", +"2 c #939290", +"3 c #A1A09E", +"4 c #A7A6A3", +"5 c #B0AFAC", +"6 c #B8B7B4", +"7 c #BEBCB9", +"8 c #C8C7C4", +"9 c #7277FF", +": c #9293FF", +"; c #9393FF", +"< c #9596FF", +"= c #989BFF", +"> c #999CFF", +"? c #9B9CFF", +"@ c #9B9DFF", +"A c #9C9DFF", +"B c #9E9FFF", +"C c #A0A2FF", +"D c #A2A4FF", +"E c #A6A8FF", +"F c #A8AAFF", +"G c #B0B0FF", +"H c #AFB1FF", +"I c #B2B4FF", +"J c #B4B4FF", +"K c #B6B6FF", +"L c #B7B7FF", +"M c #B5B8FF", +"N c #B8B9FF", +"O c #BCBCFF", +"P c #BFBFFF", +"Q c #C1C1FF", +"R c #C4C4FF", +"S c #C4C5FF", +"T c #C5C5FF", +"U c #C6C6FF", +"V c #C6C7FF", +"W c #C9CAFF", +"X c #CACAFF", +"Y c #CBCBFF", +"Z c #CACCFF", +"[ c #CCCCFF", +"[] c #CCCDFF", +"] c #CDCDFF", +"^ c #CECEFF", +"_ c #CFCFFF", +"` c #D1D1FF", +"a c #D2D2FF", +"b c #D3D3FF", +"c c #D3D4FF", +"d c #D4D4FF", +"e c #D6D6FF", +"f c #D7D7FF", +"g c #D8D8FF", +"h c #D9D9FF", +"i c #DBDAFF", +"j c #DBDBFF", +"k c #DCDCFF", +"l c #DDDDFF", +"m c #DFDEFF", +"n c #E0E0FF", +"o c #E1E1FF", +"p c #E2E2FF", +"q c #E3E3FF", +"r c #E4E4FF", +"s c #E5E5FF", +"t c #E6E6FF", +"u c #E7E7FF", +"v c #E8E8FF", +"w c #E9E9FF", +"x c #EAE9FF", +"y c #EAEAFF", +"z c #EBEBFF", +"{ c #ECECFF", +"| c #EDEDFF", +"} c #EFEFFF", +"~ c #F0F0FF", +" ! c #F2F2FF", +"!! c #F3F3FF", +"#! c #F4F4FF", +"$! c #F5F5FF", +"%! c #F6F6FF", +"&! c #F7F7FF", +"'! c #F8F8FF", +"(! c #F9F9FF", +")! c #FAFAFF", +"*! c #FBFBFF", +"+! c #FCFCFF", +",! c #FDFDFF", +"-! c #FEFEFF", +".! c #FFFFFF", +"/! c None", +"/!/!/!/!/!Z c a ` ` /!/!/!/!/!/!", +"/!/!/!M | )!*!*!*!+!.!h H /!/!/!", +"/!/!U ,!&!(!(!(!%!'!)!*!,!N /!/!", +"/!I x k !!&!'!&!#!&!'!,!,!*!F /!", +"/!Y [ f o %!'!&!!!$!+!+!$!} []/!", +"/!a ] e n u '!t s ,!*!!!z q { A ", +"S Q ^ f p v a g r j !, l d o D ", +"W R _ j r k i /!9 m l $ ( O P B ", +"V e g o v q p > N T b % 0 . R < ", +"S r p v { *!k g a X U & 3 2 . ; ", +"C s v z .!-!$!h &!a T ' 4 6 1 . ", +"/!? ~ .!!!!!h !!!!!!T ) 5 8 - /!", +"/!/!f *!!!h !!!!!!!!y * 7 # /!/!", +"/!/!= U t h !!!!~ r w + / -!/!/!", +"/!/!/!/!E L X p v l J ! .!/!/!/!", +"/!/!/!/!/!/!@ K G : /!P /!/!/!/!" +};
--- a/gui/ui/render.c Sat Dec 31 12:20:08 2011 +0000 +++ b/gui/ui/render.c Sat Dec 31 12:38:52 2011 +0000 @@ -206,6 +206,12 @@ av_strlcat(trbuf, "u", sizeof(trbuf)); break; +#ifdef CONFIG_CDDA + case STREAMTYPE_CDDA: + av_strlcat(trbuf, "a", sizeof(trbuf)); + break; +#endif + #ifdef CONFIG_VCD case STREAMTYPE_VCD: av_strlcat(trbuf, "v", sizeof(trbuf));
--- a/gui/util/string.c Sat Dec 31 12:20:08 2011 +0000 +++ b/gui/util/string.c Sat Dec 31 12:38:52 2011 +0000 @@ -283,6 +283,12 @@ av_strlcpy(fname, guiInfo.Filename, maxlen); break; +#ifdef CONFIG_CDDA + case STREAMTYPE_CDDA: + snprintf(fname, maxlen, MSGTR_Title, guiInfo.Track); + break; +#endif + #ifdef CONFIG_VCD case STREAMTYPE_VCD: snprintf(fname, maxlen, MSGTR_Title, guiInfo.Track - 1);
--- a/gui/win32/skinload.c Sat Dec 31 12:20:08 2011 +0000 +++ b/gui/win32/skinload.c Sat Dec 31 12:38:52 2011 +0000 @@ -57,6 +57,7 @@ { evLoadSubtitle, "evLoadSubtitle" }, { evDropSubtitle, "evDropSubtitle" }, { evPlaylist, "evPlaylist" }, + { evPlayCD, "evPlayCD" }, { evPlayVCD, "evPlayVCD" }, { evPlayDVD, "evPlayDVD" }, { evLoadURL, "evSetURL" }, // legacy
--- a/gui/win32/skinload.h Sat Dec 31 12:20:08 2011 +0000 +++ b/gui/win32/skinload.h Sat Dec 31 12:38:52 2011 +0000 @@ -192,6 +192,7 @@ #define ivSetDVDTitle 5009 #define ivSetDVDChapter 5010 #define ivSetVCDTrack 5012 +#define ivSetCDTrack 5014 #define ivRedraw 7002
--- a/help/help_mp-de.h Sat Dec 31 12:20:08 2011 +0000 +++ b/help/help_mp-de.h Sat Dec 31 12:38:52 2011 +0000 @@ -788,6 +788,7 @@ #define MSGTR_MENU_AboutMPlayer "Über MPlayer" #define MSGTR_MENU_Open "Öffnen..." #define MSGTR_MENU_PlayFile "Spiele Datei..." +#define MSGTR_MENU_PlayCD "Spiele CD..." #define MSGTR_MENU_PlayVCD "Spiele VCD..." #define MSGTR_MENU_PlayDVD "Spiele DVD..." #define MSGTR_MENU_PlayURL "Spiele URL..." @@ -805,6 +806,7 @@ #define MSGTR_MENU_NormalSize "Normale Größe" #define MSGTR_MENU_DoubleSize "Doppelte Größe" #define MSGTR_MENU_FullScreen "Vollbild" +#define MSGTR_MENU_CD "CD" #define MSGTR_MENU_DVD "DVD" #define MSGTR_MENU_VCD "VCD" #define MSGTR_MENU_PlayDisc "Öffne Disc..."
--- a/help/help_mp-en.h Sat Dec 31 12:20:08 2011 +0000 +++ b/help/help_mp-en.h Sat Dec 31 12:38:52 2011 +0000 @@ -594,6 +594,7 @@ #define MSGTR_MENU_AboutMPlayer "About MPlayer" #define MSGTR_MENU_Open "Open..." #define MSGTR_MENU_PlayFile "Play file..." +#define MSGTR_MENU_PlayCD "Play CD..." #define MSGTR_MENU_PlayVCD "Play VCD..." #define MSGTR_MENU_PlayDVD "Play DVD..." #define MSGTR_MENU_PlayURL "Play URL..." @@ -611,6 +612,7 @@ #define MSGTR_MENU_NormalSize "Normal size" #define MSGTR_MENU_DoubleSize "Double size" #define MSGTR_MENU_FullScreen "Fullscreen" +#define MSGTR_MENU_CD "CD" #define MSGTR_MENU_DVD "DVD" #define MSGTR_MENU_VCD "VCD" #define MSGTR_MENU_PlayDisc "Open disc..."