diff -Naur xine-0.8.2.org/Makefile xine-0.8.2/Makefile --- xine-0.8.2.org/Makefile 2008-01-01 11:55:01.000000000 -0500 +++ xine-0.8.2/Makefile 2008-04-19 16:33:11.000000000 -0400 @@ -45,7 +45,7 @@ VDR_XINE_VERIFY_BITMAP_DIRTY ?= 0 # enable to fully support yaepg plugin -#VDR_XINE_SET_VIDEO_WINDOW = 1 +VDR_XINE_SET_VIDEO_WINDOW = 1 # where are these utilities for image grabbing? (default: anywhere on your PATH) #VDR_XINE_Y4MSCALER = /usr/bin/y4mscaler diff -Naur xine-0.8.2.org/xine.c xine-0.8.2/xine.c --- xine-0.8.2.org/xine.c 2008-03-09 07:42:22.000000000 -0400 +++ xine-0.8.2/xine.c 2008-04-29 15:57:55.000000000 -0400 @@ -34,8 +34,8 @@ public: PluginXine::cXineLib *m_xineLib; int m_instanceNo; - in_addr_t m_bindIp; - int m_bindPort; +// in_addr_t m_bindIp; +// int m_bindPort; cPluginXine(void); virtual ~cPluginXine(); @@ -69,8 +69,8 @@ , m_remoteOn(false) , m_xineLib(0) , m_instanceNo(-1) - , m_bindIp(0) - , m_bindPort(0) +// , m_bindIp(0) +// , m_bindPort(0) { // Initialize any member variables here. // DON'T DO ANYTHING ELSE THAT MAY HAVE SIDE EFFECTS, REQUIRE GLOBAL @@ -87,16 +87,16 @@ //Return a string that describes all known command line options. //" - -- x \n" return - " -bIP ip address to bind for socket connections (see -p)\n" +// " -bIP ip address to bind for socket connections (see -p)\n" " -iN instance number to append to FIFO directory\n" - " -p[N] use socket connections on port N (18701)\n" +// " -p[N] use socket connections on port N (18701)\n" " -q turn off debug messages on console\n" " -r turn on remote (pressing keys in xine controls VDR)\n" #if APIVERSNUM >= 10320 " -s switch to curses skin, while xine is disconnected\n" #endif " -XN default 'SizeX' for GRAB command (720, 1..4096)\n" - " -YN default 'SizeY' for GRAB command (576, 1..4096)\n" + " -YN default 'SizeY' for GRAB command (480, 1..4096)\n" ; } @@ -117,14 +117,14 @@ INVALID_ARG("vdr-xine: missing argument for option -%c", ::optopt); return false; - case 'b': - m_bindIp = ::inet_addr(::optarg); - if (m_bindIp == INADDR_NONE) - { - INVALID_ARG("vdr-xine: invalid argument '%s' for option -%c", ::optarg, r); - return false; - } - break; +// case 'b': +// m_bindIp = ::inet_addr(::optarg); +// if (m_bindIp == INADDR_NONE) +// { +// INVALID_ARG("vdr-xine: invalid argument '%s' for option -%c", ::optarg, r); +// return false; +// } +// break; case 'i': m_instanceNo = ::atoi(::optarg); @@ -135,19 +135,19 @@ } break; - case 'p': - if (!::optarg) - m_bindPort = 18701; - else - { - m_bindPort = ::atoi(::optarg); - if (m_bindPort <= 0) - { - INVALID_ARG("vdr-xine: invalid argument '%s' for option -%c", ::optarg, r); - return false; - } - } - break; +// case 'p': +// if (!::optarg) +// m_bindPort = 18701; +// else +// { +// m_bindPort = ::atoi(::optarg); +// if (m_bindPort <= 0) +// { +// INVALID_ARG("vdr-xine: invalid argument '%s' for option -%c", ::optarg, r); +// return false; +// } +// } +// break; case 'r': m_remoteOn = true; @@ -317,15 +317,15 @@ namespace PluginXine { - int GetBindIp(cPlugin *const plugin) - { - return ((cPluginXine *)plugin)->m_bindIp; - } - - int GetBindPort(cPlugin *const plugin) - { - return ((cPluginXine *)plugin)->m_bindPort; - } +// int GetBindIp(cPlugin *const plugin) +// { +// return ((cPluginXine *)plugin)->m_bindIp; +// } + +// int GetBindPort(cPlugin *const plugin) +// { +// return ((cPluginXine *)plugin)->m_bindPort; +// } int GetInstanceNo(cPlugin *const plugin) { diff -Naur xine-0.8.2.org/xineDevice.c xine-0.8.2/xineDevice.c --- xine-0.8.2.org/xineDevice.c 2008-03-02 09:14:01.000000000 -0500 +++ xine-0.8.2/xineDevice.c 2008-05-23 18:32:53.000000000 -0400 @@ -3,6 +3,7 @@ #include #include +#include #include "xineDevice.h" #include "xineOsd.h" @@ -312,6 +313,7 @@ f = false; ts = 0; + m_xineLib.pause(); xfprintf(stderr, "Play\n"); m_xineLib.execFuncTrickSpeedMode(false); m_xineLib.execFuncSetSpeed(100.0); @@ -1175,7 +1177,7 @@ while (todo > 0) { - ::memcpy(dst, header, sizeof (header)); + ::vdr_fast_memcpy(dst, header, sizeof (header)); int bite = todo; @@ -1187,7 +1189,7 @@ dst[ 4 ] = 0xff & ((bite + 3) >> 8); dst[ 5 ] = 0xff & (bite + 3); - ::memcpy(dst + sizeof (header), src, bite); + ::vdr_fast_memcpy(dst + sizeof (header), src, bite); Length += sizeof (header); dst += sizeof (header) + bite; @@ -2816,11 +2818,11 @@ if (jumboPEStail > 0) { int headerSize = 6 + 3 + Data[ 8 ]; - ::memcpy(&jumboPESdata[ origJumboPESsize ], &Data[ 0 ], headerSize); + ::vdr_fast_memcpy(&jumboPESdata[ origJumboPESsize ], &Data[ 0 ], headerSize); ::memmove(&jumboPESdata[ origJumboPESsize + headerSize ], jumboPEStailData, jumboPEStail); - ::memcpy(&jumboPESdata[ origJumboPESsize + headerSize + jumboPEStail ], &Data[ headerSize ], Length - headerSize); + ::vdr_fast_memcpy(&jumboPESdata[ origJumboPESsize + headerSize + jumboPEStail ], &Data[ headerSize ], Length - headerSize); origJumboPESsize += headerSize + jumboPEStail + Length - headerSize; @@ -2832,7 +2834,7 @@ } else { - ::memcpy(&jumboPESdata[ origJumboPESsize ], &Data[ 0 ], Length - 0); + ::vdr_fast_memcpy(&jumboPESdata[ origJumboPESsize ], &Data[ 0 ], Length - 0); origJumboPESsize += Length - 0; } } @@ -2844,7 +2846,7 @@ if ((origJumboPESsize + Length - 9) > (6 + 0xffff)) VERBOSE_RETURN0(false); - ::memcpy(&jumboPESdata[ origJumboPESsize ], &Data[ 9 ], Length - 9); + ::vdr_fast_memcpy(&jumboPESdata[ origJumboPESsize ], &Data[ 9 ], Length - 9); origJumboPESsize += Length - 9; } @@ -3718,6 +3720,7 @@ if (m_settings.ShallSwitchSkin()) switchSkin(true); + m_xineLib.pause(); } void cXineDevice::OnClientDisconnect() diff -Naur xine-0.8.2.org/xineLib.c xine-0.8.2/xineLib.c --- xine-0.8.2.org/xineLib.c 2008-03-01 13:42:20.000000000 -0500 +++ xine-0.8.2/xineLib.c 2008-05-23 18:32:53.000000000 -0400 @@ -4,12 +4,13 @@ #include #include +#include #include "xineLib.h" #include "xineOsd.h" #include "xineSettings.h" -#include +//#include @@ -326,6 +327,7 @@ } public: + inline int getIndex() const { return m_index; @@ -483,6 +485,7 @@ } } + inline cEntry *add(const tColor &color) { if (m_numEntries < maxSize) @@ -519,6 +522,7 @@ return entry; } + inline cEntry *add(const uint16_t lutIndex) { ASSERT_PALETTE(assert(lutIndex <= 256);) @@ -788,11 +792,13 @@ { } + inline int eps() const { return m_eps; } - + + inline T step() { m_eps += m_dy; @@ -807,6 +813,7 @@ return m_y; } + inline T step(int n) { if (n <= 0) @@ -818,6 +825,7 @@ return step(); } + inline T stepRelative(int n = 1) { T const y = m_y; @@ -856,28 +864,28 @@ tColor16 *dst = screen2; - for (int y = 0; y < y0; y++) + for (register int y = 0; y < y0; y++) { - for (int x = 0; x < x2; x++) + for (register int x = 0; x < x2; x++) *dst++ = clrTransparent16; } - for (int y = y0; y < y1; y++) + for (register int y = y0; y < y1; y++) { - for (int x = 0; x < x0; x++) + for (register int x = 0; x < x0; x++) *dst++ = clrTransparent16; - for (int x = x0; x < x1; x++) + for (register int x = x0; x < x1; x++) *dst++ = colors16[ *src++ ]; src += stride - w; - for (int x = x1; x < x2; x++) + for (register int x = x1; x < x2; x++) *dst++ = clrTransparent16; } - for (int y = y1; y < y2; y++) + for (register int y = y1; y < y2; y++) { - for (int x = 0; x < x2; x++) + for (register int x = 0; x < x2; x++) *dst++ = clrTransparent16; } @@ -941,7 +949,7 @@ cBresenham<> xxBh0(maxOsdWidth, ws, 0); xxBh0.step(x1); //x1 * maxOsdWidth / ws; - for (int y = y1; y < y2; y++) + for (register int y = y1; y < y2; y++) { const int yf1 = yBh.step(); //FIX_POINT_FACTOR * (y + 1) * maxOsdHeight / hs; const int yi00 = yf0 & ~(FIX_POINT_FACTOR - 1); @@ -955,7 +963,7 @@ cBresenham<> xxBh(xxBh0); int xxx = xxBh.step(0); //x1 * maxOsdWidth / ws; - for (int x = x1; x < x2; x++) + for (register int x = x1; x < x2; x++) { const int xf1 = xBh.step(); //FIX_POINT_FACTOR * (x + 1) * maxOsdWidth / ws; const int xi00 = xf0 & ~(FIX_POINT_FACTOR - 1); @@ -971,7 +979,7 @@ int c2 = 0; int c3 = 0; - for (int yi0 = yi00, yi1 = yi10; yi0 < yf1; yi0 = yi1, yi1 += FIX_POINT_FACTOR) + for (register int yi0 = yi00, yi1 = yi10; yi0 < yf1; yi0 = yi1, yi1 += FIX_POINT_FACTOR) { int aiy = intersection(yi0, yi1, yf0, yf1); @@ -983,7 +991,7 @@ tColor16 *screen2src = screen2src0; - for (int xi0 = xi00, xi1 = xi10; xi0 < xf1; xi0 = xi1, xi1 += FIX_POINT_FACTOR) + for (register int xi0 = xi00, xi1 = xi10; xi0 < xf1; xi0 = xi1, xi1 += FIX_POINT_FACTOR) { // ::fprintf(stderr, "-(%d, %d)\n", xi / 256, yi / 256); @@ -1047,9 +1055,9 @@ cXinePalette::cEntry **src = scaled2; uint8_t *dst = scaled; - for (int y = 0; y < hs; y++) + for (register int y = 0; y < hs; y++) { - for (int x = 0; x < ws; x++) + for (register int x = 0; x < ws; x++) { *dst++ = (*src) ? (*src)->getIndex() : 0; src++; @@ -1151,28 +1159,28 @@ uint16_t *dst = screen; - for (int y = 0; y < y0; y++) + for (register int y = 0; y < y0; y++) { - for (int x = 0; x < x2; x++) + for (register int x = 0; x < x2; x++) *dst++ = transparentIndex; } - for (int y = y0; y < y1; y++) + for (register int y = y0; y < y1; y++) { - for (int x = 0; x < x0; x++) + for (register int x = 0; x < x0; x++) *dst++ = transparentIndex; - for (int x = x0; x < x1; x++) + for (register int x = x0; x < x1; x++) *dst++ = xinePalette.m_vdrMapping[ *src++ ]; src += stride - w; - for (int x = x1; x < x2; x++) + for (register int x = x1; x < x2; x++) *dst++ = transparentIndex; } - for (int y = y1; y < y2; y++) + for (register int y = y1; y < y2; y++) { - for (int x = 0; x < x2; x++) + for (register int x = 0; x < x2; x++) *dst++ = transparentIndex; } } @@ -1218,14 +1226,14 @@ xxBh0.step(x1); //x1 * maxOsdWidth / ws; const int xLimit = x2 - 1; - for (int y = y1; y < y2; y++) + for (register int y = y1; y < y2; y++) { cXinePalette::cEntry **scaled2dst = scaled2dst0; cBresenham<> xxBh(xxBh0); uint16_t *screen2src0 = screen0 + xxBh.step(0); //&screen2[ (yi00 / FIX_POINT_FACTOR) * maxOsdWidth + (xi00 / FIX_POINT_FACTOR) ]; - for (int x = x1; x < x2; x++) + for (register int x = x1; x < x2; x++) { // ::fprintf(stderr, "eps: %d\n", xxBh.eps()); @@ -1252,9 +1260,9 @@ cXinePalette::cEntry **src = scaled2; uint8_t *dst = scaled; - for (int y = 0; y < hs; y++) + for (register int y = 0; y < hs; y++) { - for (int x = 0; x < ws; x++) + for (register int x = 0; x < ws; x++) { uint8_t idx = (*src) ? (*src)->getIndex() : 0; @@ -1331,9 +1339,9 @@ ::fprintf(f, "P6\n%d %d\n255\n", ws, hs); - for (int y = 0; y < hs; y++) + for (register int y = 0; y < hs; y++) { - for (int x = 0; x < ws; x++) + for (register int x = 0; x < ws; x++) { uint8_t *c = (uint8_t *)&palette2[ scaled[ y * ws + x ] ]; @@ -1371,28 +1379,28 @@ uint8_t *dst = screen; - for (int y = 0; y < y0; y++) + for (register int y = 0; y < y0; y++) { - for (int x = 0; x < x2; x++) + for (register int x = 0; x < x2; x++) *dst++ = transparentIndex; } - for (int y = y0; y < y1; y++) + for (register int y = y0; y < y1; y++) { - for (int x = 0; x < x0; x++) + for (register int x = 0; x < x0; x++) *dst++ = transparentIndex; - for (int x = x0; x < x1; x++) + for (register int x = x0; x < x1; x++) *dst++ = *src++; src += stride - w; - for (int x = x1; x < x2; x++) + for (register int x = x1; x < x2; x++) *dst++ = transparentIndex; } - for (int y = y1; y < y2; y++) + for (register int y = y1; y < y2; y++) { - for (int x = 0; x < x2; x++) + for (register int x = 0; x < x2; x++) *dst++ = transparentIndex; } } @@ -1428,7 +1436,7 @@ uint8_t *scaled0 = scaled + y1 * ws; - for (int y = y1; y < y2; y++) + for (register int y = y1; y < y2; y++) { cBresenham<> xxBh(xxBh0); int xxx = xxBh.step(0); //(((2 * x1 + 1) * maxOsdWidth / ws) / 2); @@ -1437,7 +1445,7 @@ uint8_t *scaled00 = scaled0 + x1; - for (int x = x1; x < x2; x++) + for (register int x = x1; x < x2; x++) { *scaled00++ = *screen00; @@ -1595,7 +1603,7 @@ || 0 != ::memcmp(&m_scaledWindowColors[ window ][ 0 ], palette, paletteSize * sizeof (*palette))) { m_scaledWindowColorsNum[ window ] = paletteSize; - ::memcpy(&m_scaledWindowColors[ window ][ 0 ], palette, paletteSize * sizeof (*palette)); + ::vdr_fast_memcpy(&m_scaledWindowColors[ window ][ 0 ], palette, paletteSize * sizeof (*palette)); execFuncSetColor(window, 0, palette, paletteSize); @@ -1920,7 +1928,7 @@ int n = (x2 - x1 + 1) * sizeof (tIndex); - for (int y = y1; y <= y2; y++) + for (register int y = y1; y <= y2; y++) { memcpy(dst, src, n); src += w; @@ -1973,7 +1981,7 @@ int n = (x2 - x1 + 1) * sizeof (tIndex); - for (int y = y1; y <= y2; y++) + for (register int y = y1; y <= y2; y++) { if (0 != memcmp(dst, src, n)) return true; @@ -2020,8 +2028,8 @@ #endif - extern int GetBindIp(cPlugin *const plugin); - extern int GetBindPort(cPlugin *const plugin); +// extern int GetBindIp(cPlugin *const plugin); +// extern int GetBindPort(cPlugin *const plugin); extern int GetInstanceNo(cPlugin *const plugin); extern cXineLib *&GetXineLib(cPlugin *const plugin); @@ -2030,10 +2038,10 @@ , m_plugin(plugin) , m_settings(settings) , m_osdFlushRequired(false) - , fd_fifo0_serv(-1) - , fd_result_serv(-1) - , fd_control_serv(-1) - , fd_remote_serv(-1) +// , fd_fifo0_serv(-1) +// , fd_result_serv(-1) +// , fd_control_serv(-1) +// , fd_remote_serv(-1) , fd_fifo0(-1) , fd_result(-1) , fd_control(-1) @@ -2060,8 +2068,8 @@ m_fifoDir += s; } - m_bindIp = GetBindIp(plugin); - m_bindPort = GetBindPort(plugin); +// m_bindIp = GetBindIp(plugin); +// m_bindPort = GetBindPort(plugin); m_fifoNameControl = m_fifoDir + "/stream.control"; m_fifoNameResult = m_fifoDir + "/stream.result"; @@ -2172,7 +2180,7 @@ m_eventSink = eventSink; } - int cXineLib::CreateServerSocket(unsigned short port) +/* int cXineLib::CreateServerSocket(unsigned short port) { int fd; int onoff = 1; @@ -2206,7 +2214,7 @@ } return fd; - } + }*/ bool cXineLib::Open() { @@ -2242,27 +2250,10 @@ MkFifo(m_fifoNameExtControl, 0666); MkFifo(m_fifoNameExtResult, 0644); - if (m_bindPort <= 0) - { MkFifo(m_fifoNameControl, 0644); MkFifo(m_fifoNameResult, 0666); MkFifo(m_fifoNameRemote, 0666); MkFifo(m_fifoNameStream, 0644); - } - else - { - if ((fd_fifo0_serv = CreateServerSocket(m_bindPort + 0)) == -1) - return false; - - if ((fd_control_serv = CreateServerSocket(m_bindPort + 1)) == -1) - return false; - - if ((fd_result_serv = CreateServerSocket(m_bindPort + 2)) == -1) - return false; - - if ((fd_remote_serv = CreateServerSocket(m_bindPort + 3)) == -1) - return false; - } #undef MkFifo @@ -2295,20 +2286,10 @@ ::unlink(m_fifoNameExtControl.c_str()); ::unlink(m_fifoNameExtResult.c_str()); - if (m_bindPort <= 0) - { ::unlink(m_fifoNameControl.c_str()); ::unlink(m_fifoNameResult.c_str()); ::unlink(m_fifoNameRemote.c_str()); ::unlink(m_fifoNameStream.c_str()); - } - else - { - ::close(fd_remote_serv); - ::close(fd_result_serv); - ::close(fd_control_serv); - ::close(fd_fifo0_serv); - } ::rmdir(m_fifoDir.c_str()); } @@ -2587,27 +2568,27 @@ // fprintf(stderr, "Action done\n"); } - int cXineLib::SocketAcceptHelper(int fd) - { - // use cPoller for checking server socket for incoming requests - cPoller poller(fd,0); /* POLLIN */ - struct sockaddr sain; - socklen_t len = sizeof (sain); - int client; - -// ::fprintf(stderr, "vdr-xine: polling for connection on %d ...\n", fd); - if (!poller.Poll(100)) - return -1; - -// ::fprintf(stderr, "vdr-xine: incoming requests on %d\n", fd); - if ((client = ::accept(fd, (struct sockaddr *)&sain, &len)) == -1) { - ::fprintf(stderr, "vdr-xine: socket failed to accept ...\n"); - return -1; - } - -// ::fprintf(stderr, "vdr-xine: successful request on %d (client: %d)\n", fd, client); - return client; - } +// int cXineLib::SocketAcceptHelper(int fd) +// { +// // use cPoller for checking server socket for incoming requests +// cPoller poller(fd,0); /* POLLIN */ +// struct sockaddr sain; +// socklen_t len = sizeof (sain); +// int client; +// +// // ::fprintf(stderr, "vdr-xine: polling for connection on %d ...\n", fd); +// if (!poller.Poll(100)) +// return -1; +// +// // ::fprintf(stderr, "vdr-xine: incoming requests on %d\n", fd); +// if ((client = ::accept(fd, (struct sockaddr *)&sain, &len)) == -1) { +// ::fprintf(stderr, "vdr-xine: socket failed to accept ...\n"); +// return -1; +// } +// +// // ::fprintf(stderr, "vdr-xine: successful request on %d (client: %d)\n", fd, client); +// return client; +// } bool cXineLib::checkXineVersion() @@ -2628,8 +2609,8 @@ { limit_thread = cThread::ThreadId(); - if (m_bindPort <= 0) - { +/* if (m_bindPort <= 0) + {*/ fd_fifo0 = ::open(m_fifoNameStream.c_str(), O_WRONLY | O_NONBLOCK); if (-1 == fd_fifo0) return false; @@ -2645,26 +2626,26 @@ ::fcntl(fd_fifo0 , F_SETFL, ~O_NONBLOCK & ::fcntl(fd_fifo0 , F_GETFL, 0)); ::fcntl(fd_remote, F_SETFL, ~O_NONBLOCK & ::fcntl(fd_remote, F_GETFL, 0)); - } - else - { - if (fd_fifo0_serv == -1) - return false; - - if ((fd_fifo0 = SocketAcceptHelper(fd_fifo0_serv)) == -1) - return false; - - xfprintf(stderr, "vdr-xine: Client connecting ...\n"); - - if ((fd_control = SocketAcceptHelper(fd_control_serv)) == -1) - return false; - - if ((fd_result = SocketAcceptHelper(fd_result_serv)) == -1) - return false; - - if ((fd_remote = SocketAcceptHelper(fd_remote_serv)) == -1) - return false; - } +// } +// else +// { +// if (fd_fifo0_serv == -1) +// return false; +// +// if ((fd_fifo0 = SocketAcceptHelper(fd_fifo0_serv)) == -1) +// return false; +// +// xfprintf(stderr, "vdr-xine: Client connecting ...\n"); +// +// if ((fd_control = SocketAcceptHelper(fd_control_serv)) == -1) +// return false; +// +// if ((fd_result = SocketAcceptHelper(fd_result_serv)) == -1) +// return false; +// +// if ((fd_remote = SocketAcceptHelper(fd_remote_serv)) == -1) +// return false; +// } internalPaused(false); diff -Naur xine-0.8.2.org/xineLib.h xine-0.8.2/xineLib.h --- xine-0.8.2.org/xineLib.h 2008-03-01 12:43:08.000000000 -0500 +++ xine-0.8.2/xineLib.h 2008-04-19 16:33:11.000000000 -0400 @@ -89,8 +89,8 @@ string m_fifoNameStream; string m_fifoNameExtControl; string m_fifoNameExtResult; - in_addr_t m_bindIp; - int m_bindPort; +// in_addr_t m_bindIp; +// int m_bindPort; private: cPlugin *const m_plugin; @@ -147,10 +147,10 @@ } private: - int CreateServerSocket(unsigned short port); +/* int CreateServerSocket(unsigned short port); int SocketAcceptHelper(int fd); - int fd_fifo0_serv, fd_result_serv, fd_control_serv, fd_remote_serv; + int fd_fifo0_serv, fd_result_serv, fd_control_serv, fd_remote_serv;*/ int fd_fifo0, fd_result, fd_control, fd_remote; cMutex m_ioMutex, m_dataMutex, m_disconnectMutex; diff -Naur xine-0.8.2.org/xineOsd.c xine-0.8.2/xineOsd.c --- xine-0.8.2.org/xineOsd.c 2007-11-28 17:01:47.000000000 -0500 +++ xine-0.8.2/xineOsd.c 2008-04-19 16:33:11.000000000 -0400 @@ -422,7 +422,7 @@ maxOsdWidth = 1920; maxOsdHeight = 1080; } - else if (maxOsdWidth > 720 || maxOsdHeight > 576) + else if (maxOsdWidth > 720 || maxOsdHeight > 480) { maxOsdWidth = 1280; maxOsdHeight = 720; @@ -430,7 +430,7 @@ else { maxOsdWidth = 720; - maxOsdHeight = 576; + maxOsdHeight = 480; } } diff -Naur xine-0.8.2.org/xineSettings.c xine-0.8.2/xineSettings.c --- xine-0.8.2.org/xineSettings.c 2007-10-16 16:59:05.000000000 -0400 +++ xine-0.8.2/xineSettings.c 2008-04-19 16:33:11.000000000 -0400 @@ -145,7 +145,7 @@ : m_switchSkin(false) , m_beQuiet(false) , m_defaultGrabSizeX(720) - , m_defaultGrabSizeY(576) + , m_defaultGrabSizeY(480) , m_osdMode(osdBlendScaledAuto) , m_usageMode(modeLiveTV) // , m_usageModeDefault(modeLiveTV) diff -Naur xine-0.8.2.org/xineSettings.h xine-0.8.2/xineSettings.h --- xine-0.8.2.org/xineSettings.h 2007-10-07 07:34:00.000000000 -0400 +++ xine-0.8.2/xineSettings.h 2008-04-19 16:33:11.000000000 -0400 @@ -105,7 +105,7 @@ int m_defaultGrabSizeY; eOsdMode m_osdMode; - eUsageMode m_usageMode /* , m_usageModeDefault */; + eUsageMode m_usageMode; /* , m_usageModeDefault */ eAudioMode m_audioMode; eVolumeMode m_volumeMode; eMuteMode m_muteMode;