diff options
author | scop <scop> | 2007-04-26 21:02:41 +0000 |
---|---|---|
committer | scop <scop> | 2007-04-26 21:02:41 +0000 |
commit | 8454ae7bf6bfe4d0e94303805d416598d80b5d9c (patch) | |
tree | ac6fe59bc5dd21b0dc17a74e6df9cc2e6a2b8c3c | |
parent | d26b3750112728463c1b91fe94cb78eefaaf9609 (diff) | |
download | vdr-plugin-dxr3-8454ae7bf6bfe4d0e94303805d416598d80b5d9c.tar.gz vdr-plugin-dxr3-8454ae7bf6bfe4d0e94303805d416598d80b5d9c.tar.bz2 |
Add setup option for enabling/disabling use of WSS; some setups get "stripey" screens sometimes when WSS kicks in.
-rw-r--r-- | HISTORY | 1 | ||||
-rw-r--r-- | dxr3.c | 12 | ||||
-rw-r--r-- | dxr3.h | 1 | ||||
-rw-r--r-- | dxr3configdata.c | 1 | ||||
-rw-r--r-- | dxr3configdata.h | 11 | ||||
-rw-r--r-- | dxr3i18n.c | 23 | ||||
-rw-r--r-- | dxr3interface.c | 15 |
7 files changed, 55 insertions, 9 deletions
@@ -329,4 +329,5 @@ NOTE: I havent found time to include all of the languages, will be done in pre2 - add brightness/contrast/saturation settings to setup (Ville Skyttä) - apply more settings immediately from setup menu (Ville Skyttä) - apply AC3 and WSS patches which were in patches/ in previous releases +- add setup option for enabling/disabling WSS (Ville Skyttä) - various minor tweaks @@ -3,7 +3,7 @@ * * See the README file for copyright information and how to reach the author. * - * $Id: dxr3.c,v 1.1.2.30 2007/04/09 19:57:44 scop Exp $ + * $Id: dxr3.c,v 1.1.2.31 2007/04/26 21:02:41 scop Exp $ * */ @@ -80,6 +80,11 @@ cMenuSetupDxr3::cMenuSetupDxr3(void) menuVideoModes[2] = tr("NTSC"); Add(new cMenuEditStraItem(tr("Video mode"), &newVideoMode, 3, menuVideoModes)); + newUseWSS = cDxr3ConfigData::Instance().GetUseWSS(); +#ifdef EM8300_IOCTL_SET_WSS + Add(new cMenuEditBoolItem(tr("Use widescreen signaling (WSS)"), + &newUseWSS)); +#endif newUseDigitalOut = cDxr3ConfigData::Instance().GetUseDigitalOut(); Add(new cMenuEditBoolItem(tr("Digital audio output"), &newUseDigitalOut)); newOsdFlushRate = cDxr3ConfigData::Instance().GetOsdFlushRate(); @@ -103,7 +108,10 @@ void cMenuSetupDxr3::Store(void) SetupStore("Saturation", cDxr3ConfigData::Instance().SetSaturation(newSaturation)); SetupStore("Dxr3VideoMode", - cDxr3ConfigData::Instance().SetVideoMode((eVideoMode) newVideoMode)); + cDxr3ConfigData::Instance().SetVideoMode( + (eVideoMode) newVideoMode)); + SetupStore("UseWSS", + cDxr3ConfigData::Instance().SetUseWSS(newUseWSS)); SetupStore("UseDigitalOut", cDxr3ConfigData::Instance().SetUseDigitalOut(newUseDigitalOut)); SetupStore("OsdFlushRate", @@ -18,6 +18,7 @@ private: int newDxr3Card; int newVideoMode; const char *menuVideoModes[3]; + int newUseWSS; int newHideMenu; int newOsdFlushRate; int newBrightness; diff --git a/dxr3configdata.c b/dxr3configdata.c index 585c546..6344aa2 100644 --- a/dxr3configdata.c +++ b/dxr3configdata.c @@ -36,6 +36,7 @@ cDxr3ConfigData::cDxr3ConfigData() m_saturation = 500; m_hidemenu = 0; m_osdflushrate = 40; + m_usewss = 0; } // Local variables: diff --git a/dxr3configdata.h b/dxr3configdata.h index 00e5b02..da3634b 100644 --- a/dxr3configdata.h +++ b/dxr3configdata.h @@ -139,10 +139,19 @@ public: return m_osdflushrate = value; } + int GetUseWSS() const + { + return m_usewss; + } + int SetUseWSS(int value) + { + return m_usewss = value; + } + protected: eVideoMode m_videomode; + int m_usewss; eMenuMode m_menumode; - int m_digitaloutput; int m_card; int m_forceletterbox; @@ -232,6 +232,29 @@ const tI18nPhrase Phrases[] = { "", // Czech }, { + "Use widescreen signaling (WSS)", + "", // Deutsch + "", // Slovenski + "", // Italiano + "", // Nederlands + "", // Português + "", // Français + "", // Norsk + "Käytä WSS-signalointia", + "", // Polski + "", // Español + "", // ÅëëçíéêÜ (Greek) + "", // Svenska + "", // Românã + "", // Magyar + "", // Català + "", // ÀãááÚØÙ (Russian) + "", // Hrvatski + "", // Eesti + "", // Dansk + "", // Czech + }, + { "Reset DXR3 hardware", "Reset DXR3 Hardware", "", // Slovenski diff --git a/dxr3interface.c b/dxr3interface.c index ebb4050..b1e2441 100644 --- a/dxr3interface.c +++ b/dxr3interface.c @@ -438,13 +438,16 @@ void cDxr3Interface::SetAspectRatio(uint32_t ratio) { aspect = EM8300_ASPECTRATIO_4_3; #ifdef EM8300_IOCTL_SET_WSS - if (ratio == EM8300_ASPECTRATIO_16_9) - wssmode = EM8300_WSS_16_9; - else - wssmode = EM8300_WSS_OFF; - if (ioctl(m_fdControl, EM8300_IOCTL_SET_WSS, &wssmode) < 0) + if (cDxr3ConfigData::Instance().GetUseWSS()) { - esyslog("dxr3: unable to set WSS: %m"); + if (ratio == EM8300_ASPECTRATIO_16_9) + wssmode = EM8300_WSS_16_9; + else + wssmode = EM8300_WSS_OFF; + if (ioctl(m_fdControl, EM8300_IOCTL_SET_WSS, &wssmode) < 0) + { + esyslog("dxr3: unable to set WSS: %m"); + } } #endif } |