From: Felix Domke Date: Fri, 11 Nov 2005 03:02:14 +0000 (+0000) Subject: simplify&correct&addnewfeature aspect handling X-Git-Tag: 2.6.0~5339 X-Git-Url: https://git.cweiske.de/enigma2.git/commitdiff_plain/6ab0c6597ccd51505adfe339f0a1f5635c0c33cd simplify&correct&addnewfeature aspect handling --- diff --git a/lib/driver/avswitch.cpp b/lib/driver/avswitch.cpp index c018b43b..80c7755b 100644 --- a/lib/driver/avswitch.cpp +++ b/lib/driver/avswitch.cpp @@ -65,28 +65,24 @@ void eAVSwitch::setAspectRatio(int ratio) 3-16:9 forced */ - char *any="any"; - char *norm="4:3"; - char *wide="16:9"; - int fd; + char *aspect[] = {"4:3", "4:3", "any", "16:9"}; + char *policy[] = {"letterbox", "panscan", "bestfit", "panscan"}; + int fd; if((fd = open("/proc/stb/video/aspect", O_WRONLY)) < 0) { printf("cannot open /proc/stb/video/aspect\n"); return; } - switch(ratio) { - case 0: - write(fd, any, strlen(any)); - break; - case 1: - write(fd, norm, strlen(norm)); - break; - case 2: - case 3: - write(fd, wide, strlen(wide)); - break; - } + write(fd, aspect[ratio], strlen(aspect[ratio])); close(fd); + + if((fd = open("/proc/stb/video/policy", O_WRONLY)) < 0) { + printf("cannot open /proc/stb/video/policy\n"); + return; + } + write(fd, policy[ratio], strlen(policy[ratio])); + close(fd); + } void eAVSwitch::setVideomode(int mode)