summaryrefslogtreecommitdiff
path: root/menu.c
diff options
context:
space:
mode:
Diffstat (limited to 'menu.c')
-rw-r--r--menu.c19
1 files changed, 16 insertions, 3 deletions
diff --git a/menu.c b/menu.c
index 9bc21af5..15dd51f8 100644
--- a/menu.c
+++ b/menu.c
@@ -4,7 +4,7 @@
* See the main source file 'xineliboutput.c' for copyright information and
* how to reach the author.
*
- * $Id: menu.c,v 1.45 2008-02-19 00:38:51 phelin Exp $
+ * $Id: menu.c,v 1.46 2008-02-19 00:43:04 phelin Exp $
*
*/
@@ -43,6 +43,7 @@
symlink $(CONFDIR)/plugins/xineliboutput/default_playlist */
# define HOTKEY_ADELAY_UP kUp /* audio delay up */
# define HOTKEY_ADELAY_DOWN kDown /* audio delay down */
+# define HOTKEY_TOGGLE_VO_ASPECT kRight
#endif
//#define OLD_SPU_MENU
@@ -750,7 +751,7 @@ cMenuXinelib::~cMenuXinelib()
if(xc.overscan != overscan)
cXinelibDevice::Instance().ConfigureVideo(xc.hue, xc.saturation, xc.brightness,
- xc.contrast, xc.overscan);
+ xc.contrast, xc.overscan, xc.vo_aspect_ratio);
if(xc.headphone != headphone)
cXinelibDevice::Instance().ConfigurePostprocessing("headphone",
@@ -839,7 +840,7 @@ eOSState cMenuXinelib::ProcessKey(eKeys Key)
xc.audio_surround, xc.speaker_type);
else if(item == ctrl_overscan)
cXinelibDevice::Instance().ConfigureVideo(xc.hue, xc.saturation, xc.brightness,
- xc.contrast, overscan);
+ xc.contrast, overscan, xc.vo_aspect_ratio);
}
if(Key==kLeft || Key==kRight) {
if(item == ctrl_headphone)
@@ -988,6 +989,18 @@ eOSState cMenuXinelib::ProcessHotkey(eKeys Key)
tr(xc.s_aspects[xc.display_aspect]));
break;
+ case HOTKEY_TOGGLE_VO_ASPECT:
+ /* auto, square, 4:3, anamorphic or DVB */
+ if(!OnlyInfo) {
+ xc.vo_aspect_ratio = (xc.vo_aspect_ratio < VO_ASPECT_count-1) ? xc.vo_aspect_ratio + 1 : 0;
+ cXinelibDevice::Instance().ConfigureVideo(xc.hue, xc.saturation, xc.brightness,
+ xc.contrast, xc.overscan, xc.vo_aspect_ratio);
+ }
+ asprintf(&Message, "%s %s %s", tr("Video aspect ratio"),
+ OnlyInfo ? ":" : "->",
+ tr(xc.s_vo_aspects[xc.vo_aspect_ratio]));
+ break;
+
case HOTKEY_TOGGLE_CROP:
/* off, force, auto */
if(!OnlyInfo) {