diff options
author | arnova <arnova@svn> | 2010-08-23 18:04:06 +0000 |
---|---|---|
committer | arnova <arnova@svn> | 2010-08-23 18:04:06 +0000 |
commit | e0c6a2609b29bfa070f762a88e8cd1de4bb9a6e2 (patch) | |
tree | 96571c264a07f9bae9667acce3f92afc9d0b4cbe | |
parent | 4499512a4b4c1ac7d816840d25139e43c8e2ce5e (diff) |
changed: Moved video post-process option from GUI settings to video settings dialog (ticket #9905)
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@33070 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
-rw-r--r-- | language/English/strings.xml | 5 | ||||
-rw-r--r-- | xbmc/GUIDialogVideoSettings.cpp | 2 | ||||
-rw-r--r-- | xbmc/GUISettings.cpp | 1 | ||||
-rw-r--r-- | xbmc/GUISettings.h | 5 | ||||
-rw-r--r-- | xbmc/GUIWindowSettingsCategory.cpp | 9 | ||||
-rw-r--r-- | xbmc/Settings.cpp | 2 | ||||
-rw-r--r-- | xbmc/VideoDatabase.cpp | 15 | ||||
-rw-r--r-- | xbmc/VideoDatabase.h | 2 | ||||
-rw-r--r-- | xbmc/cores/dvdplayer/DVDPlayerVideo.cpp | 5 | ||||
-rw-r--r-- | xbmc/settings/VideoSettings.cpp | 2 | ||||
-rw-r--r-- | xbmc/settings/VideoSettings.h | 1 |
11 files changed, 20 insertions, 29 deletions
diff --git a/language/English/strings.xml b/language/English/strings.xml index c6c907c907..be0511b5bc 100644 --- a/language/English/strings.xml +++ b/language/English/strings.xml @@ -1530,10 +1530,7 @@ <string id="16318">Temporal/Spatial (Half)</string> <string id="16319">DXVA</string> - <string id="16400">Video post-processing</string> - <string id="16401">Disabled</string> - <string id="16402">Enabled for SD content</string> - <string id="16403">Always enabled</string> + <string id="16400">Post-processing</string> <string id="17500">Display sleep timeout</string> diff --git a/xbmc/GUIDialogVideoSettings.cpp b/xbmc/GUIDialogVideoSettings.cpp index e73f07b71e..ca98130479 100644 --- a/xbmc/GUIDialogVideoSettings.cpp +++ b/xbmc/GUIDialogVideoSettings.cpp @@ -64,6 +64,7 @@ CGUIDialogVideoSettings::~CGUIDialogVideoSettings(void) #define VIDEO_SETTING_VDPAU_SHARPNESS 20 #define VIDEO_SETTINGS_NONLIN_STRETCH 21 +#define VIDEO_SETTINGS_POSTPROCESS 22 void CGUIDialogVideoSettings::CreateSettings() { @@ -135,6 +136,7 @@ void CGUIDialogVideoSettings::CreateSettings() } AddSlider(VIDEO_SETTINGS_ZOOM, 216, &g_settings.m_currentVideoSettings.m_CustomZoomAmount, 0.5f, 0.01f, 2.0f, FormatFloat); AddSlider(VIDEO_SETTINGS_PIXEL_RATIO, 217, &g_settings.m_currentVideoSettings.m_CustomPixelRatio, 0.5f, 0.01f, 2.0f, FormatFloat); + AddBool(VIDEO_SETTINGS_POSTPROCESS, 16400, &g_settings.m_currentVideoSettings.m_PostProcess); #ifdef HAS_VIDEO_PLAYBACK if (g_renderManager.Supports(RENDERFEATURE_BRIGHTNESS)) diff --git a/xbmc/GUISettings.cpp b/xbmc/GUISettings.cpp index a17647dbb2..c01f0dc3ab 100644 --- a/xbmc/GUISettings.cpp +++ b/xbmc/GUISettings.cpp @@ -610,7 +610,6 @@ void CGUISettings::Initialize() AddBool(vp, "videoplayer.vdpaustudiolevel", 13122, false); #endif #endif - AddInt(vp, "videoplayer.postprocess", 16400, VIDEO_POSTPROCESS_DISABLED, VIDEO_POSTPROCESS_DISABLED, 1, VIDEO_POSTPROCESS_ALWAYS, SPIN_CONTROL_TEXT); AddSeparator(vp, "videoplayer.sep5"); AddBool(vp, "videoplayer.teletextenabled", 23050, true); diff --git a/xbmc/GUISettings.h b/xbmc/GUISettings.h index 273c1acec2..bfb1f455e4 100644 --- a/xbmc/GUISettings.h +++ b/xbmc/GUISettings.h @@ -42,11 +42,6 @@ class TiXmlElement; #define SOFTWARE_UPSCALING_SD_CONTENT 1 #define SOFTWARE_UPSCALING_ALWAYS 2 -// Post-processing options. -#define VIDEO_POSTPROCESS_DISABLED 0 -#define VIDEO_POSTPROCESS_SD_CONTENT 1 -#define VIDEO_POSTPROCESS_ALWAYS 2 - // Apple Remote options. #define APPLE_REMOTE_DISABLED 0 #define APPLE_REMOTE_STANDARD 1 diff --git a/xbmc/GUIWindowSettingsCategory.cpp b/xbmc/GUIWindowSettingsCategory.cpp index 62674f03c9..d207603f28 100644 --- a/xbmc/GUIWindowSettingsCategory.cpp +++ b/xbmc/GUIWindowSettingsCategory.cpp @@ -527,15 +527,6 @@ void CGUIWindowSettingsCategory::CreateSettings() pControl->AddLabel(g_localizeStrings.Get(13120), VS_SCALINGMETHOD_VDPAU_HARDWARE); pControl->SetValue(pSettingInt->GetData()); } - else if (strSetting.Equals("videoplayer.postprocess")) - { - CSettingInt *pSettingInt = (CSettingInt*)pSetting; - CGUISpinControlEx *pControl = (CGUISpinControlEx *)GetControl(GetSetting(strSetting)->GetID()); - pControl->AddLabel(g_localizeStrings.Get(16401), VIDEO_POSTPROCESS_DISABLED); - pControl->AddLabel(g_localizeStrings.Get(16402), VIDEO_POSTPROCESS_SD_CONTENT); - pControl->AddLabel(g_localizeStrings.Get(16403), VIDEO_POSTPROCESS_ALWAYS); - pControl->SetValue(pSettingInt->GetData()); - } else if (strSetting.Equals("videolibrary.flattentvshows")) { CSettingInt *pSettingInt = (CSettingInt*)pSetting; diff --git a/xbmc/Settings.cpp b/xbmc/Settings.cpp index 3beea41b8a..f80a38eff3 100644 --- a/xbmc/Settings.cpp +++ b/xbmc/Settings.cpp @@ -701,6 +701,7 @@ bool CSettings::LoadSettings(const CStdString& strSettingsFile) GetFloat(pElement, "pixelratio", m_defaultVideoSettings.m_CustomPixelRatio, 1.0f, 0.5f, 2.0f); GetFloat(pElement, "volumeamplification", m_defaultVideoSettings.m_VolumeAmplification, VOLUME_DRC_MINIMUM * 0.01f, VOLUME_DRC_MINIMUM * 0.01f, VOLUME_DRC_MAXIMUM * 0.01f); GetFloat(pElement, "noisereduction", m_defaultVideoSettings.m_NoiseReduction, 0.0f, 0.0f, 1.0f); + XMLUtils::GetBoolean(pElement, "postprocess", m_defaultVideoSettings.m_PostProcess); GetFloat(pElement, "sharpness", m_defaultVideoSettings.m_Sharpness, 0.0f, -1.0f, 1.0f); XMLUtils::GetBoolean(pElement, "outputtoallspeakers", m_defaultVideoSettings.m_OutputToAllSpeakers); XMLUtils::GetBoolean(pElement, "showsubtitles", m_defaultVideoSettings.m_SubtitleOn); @@ -862,6 +863,7 @@ bool CSettings::SaveSettings(const CStdString& strSettingsFile, CGUISettings *lo XMLUtils::SetInt(pNode, "interlacemethod", m_defaultVideoSettings.m_InterlaceMethod); XMLUtils::SetInt(pNode, "scalingmethod", m_defaultVideoSettings.m_ScalingMethod); XMLUtils::SetFloat(pNode, "noisereduction", m_defaultVideoSettings.m_NoiseReduction); + XMLUtils::SetBoolean(pNode, "postprocess", m_defaultVideoSettings.m_PostProcess); XMLUtils::SetFloat(pNode, "sharpness", m_defaultVideoSettings.m_Sharpness); XMLUtils::SetInt(pNode, "viewmode", m_defaultVideoSettings.m_ViewMode); XMLUtils::SetFloat(pNode, "zoomamount", m_defaultVideoSettings.m_CustomZoomAmount); diff --git a/xbmc/VideoDatabase.cpp b/xbmc/VideoDatabase.cpp index c95152add6..432775a8c9 100644 --- a/xbmc/VideoDatabase.cpp +++ b/xbmc/VideoDatabase.cpp @@ -108,7 +108,7 @@ bool CVideoDatabase::CreateTables() "ViewMode integer,ZoomAmount float, PixelRatio float, AudioStream integer, SubtitleStream integer," "SubtitleDelay float, SubtitlesOn bool, Brightness float, Contrast float, Gamma float," "VolumeAmplification float, AudioDelay float, OutputToAllSpeakers bool, ResumeTime integer, Crop bool, CropLeft integer," - "CropRight integer, CropTop integer, CropBottom integer, Sharpness float, NoiseReduction float, NonLinStretch bool)\n"); + "CropRight integer, CropTop integer, CropBottom integer, Sharpness float, NoiseReduction float, NonLinStretch bool, PostProcess bool)\n"); m_pDS->exec("CREATE UNIQUE INDEX ix_settings ON settings ( idFile )\n"); CLog::Log(LOGINFO, "create stacktimes table"); @@ -2894,6 +2894,7 @@ bool CVideoDatabase::GetVideoSettings(const CStdString &strFilenameAndPath, CVid settings.m_CustomPixelRatio = m_pDS->fv("PixelRatio").get_asFloat(); settings.m_CustomNonLinStretch = m_pDS->fv("NonLinStretch").get_asBool(); settings.m_NoiseReduction = m_pDS->fv("NoiseReduction").get_asFloat(); + settings.m_PostProcess = m_pDS->fv("PostProcess").get_asBool(); settings.m_Sharpness = m_pDS->fv("Sharpness").get_asFloat(); settings.m_CustomZoomAmount = m_pDS->fv("ZoomAmount").get_asFloat(); settings.m_Gamma = m_pDS->fv("Gamma").get_asFloat(); @@ -2942,11 +2943,11 @@ void CVideoDatabase::SetVideoSettings(const CStdString& strFilenameAndPath, cons // update the item strSQL=PrepareSQL("update settings set Deinterlace=%i,ViewMode=%i,ZoomAmount=%f,PixelRatio=%f," "AudioStream=%i,SubtitleStream=%i,SubtitleDelay=%f,SubtitlesOn=%i,Brightness=%f,Contrast=%f,Gamma=%f," - "VolumeAmplification=%f,AudioDelay=%f,OutputToAllSpeakers=%i,Sharpness=%f,NoiseReduction=%f,NonLinStretch=%i,", + "VolumeAmplification=%f,AudioDelay=%f,OutputToAllSpeakers=%i,Sharpness=%f,NoiseReduction=%f,NonLinStretch=%i,PostProcess=%i,", setting.m_InterlaceMethod, setting.m_ViewMode, setting.m_CustomZoomAmount, setting.m_CustomPixelRatio, setting.m_AudioStream, setting.m_SubtitleStream, setting.m_SubtitleDelay, setting.m_SubtitleOn, setting.m_Brightness, setting.m_Contrast, setting.m_Gamma, setting.m_VolumeAmplification, setting.m_AudioDelay, - setting.m_OutputToAllSpeakers,setting.m_Sharpness,setting.m_NoiseReduction,setting.m_CustomNonLinStretch); + setting.m_OutputToAllSpeakers,setting.m_Sharpness,setting.m_NoiseReduction,setting.m_CustomNonLinStretch,setting.m_PostProcess); CStdString strSQL2; strSQL2=PrepareSQL("ResumeTime=%i,Crop=%i,CropLeft=%i,CropRight=%i,CropTop=%i,CropBottom=%i where idFile=%i\n", setting.m_ResumeTime, setting.m_Crop, setting.m_CropLeft, setting.m_CropRight, setting.m_CropTop, setting.m_CropBottom, idFile); strSQL += strSQL2; @@ -2960,14 +2961,14 @@ void CVideoDatabase::SetVideoSettings(const CStdString& strFilenameAndPath, cons "AudioStream,SubtitleStream,SubtitleDelay,SubtitlesOn,Brightness," "Contrast,Gamma,VolumeAmplification,AudioDelay,OutputToAllSpeakers," "ResumeTime,Crop,CropLeft,CropRight,CropTop,CropBottom," - "Sharpness,NoiseReduction,NonLinStretch) " + "Sharpness,NoiseReduction,NonLinStretch,PostProcess) " "VALUES "; strSQL += PrepareSQL("(%i,%i,%i,%f,%f,%i,%i,%f,%i,%f,%f,%f,%f,%f,%i,%i,%i,%i,%i,%i,%i,%f,%f,%i)", idFile, setting.m_InterlaceMethod, setting.m_ViewMode, setting.m_CustomZoomAmount, setting.m_CustomPixelRatio, setting.m_AudioStream, setting.m_SubtitleStream, setting.m_SubtitleDelay, setting.m_SubtitleOn, setting.m_Brightness, setting.m_Contrast, setting.m_Gamma, setting.m_VolumeAmplification, setting.m_AudioDelay, setting.m_OutputToAllSpeakers, setting.m_ResumeTime, setting.m_Crop, setting.m_CropLeft, setting.m_CropRight, setting.m_CropTop, setting.m_CropBottom, - setting.m_Sharpness, setting.m_NoiseReduction, setting.m_CustomNonLinStretch); + setting.m_Sharpness, setting.m_NoiseReduction, setting.m_CustomNonLinStretch, setting.m_PostProcess); m_pDS->exec(strSQL.c_str()); } } @@ -3295,6 +3296,10 @@ bool CVideoDatabase::UpdateOldVersion(int iVersion) m_pDS->exec("DELETE FROM streamdetails"); m_pDS->exec("ALTER table streamdetails add iVideoDuration integer"); } + if (iVersion < 41) + { + m_pDS->exec("ALTER table settings add PostProcess bool"); + } } catch (...) { diff --git a/xbmc/VideoDatabase.h b/xbmc/VideoDatabase.h index 089008152d..c86bd1897c 100644 --- a/xbmc/VideoDatabase.h +++ b/xbmc/VideoDatabase.h @@ -602,7 +602,7 @@ protected: private: virtual bool CreateTables(); virtual bool UpdateOldVersion(int version); - virtual int GetMinVersion() const { return 40; }; + virtual int GetMinVersion() const { return 41; }; const char *GetDefaultDBName() const { return "MyVideos34.db"; }; void ConstructPath(CStdString& strDest, const CStdString& strPath, const CStdString& strFileName); diff --git a/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp b/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp index bd7be3a179..4f63e8da41 100644 --- a/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp +++ b/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp @@ -284,7 +284,6 @@ void CDVDPlayerVideo::Process() DVDVideoPicture picture; CPulldownCorrection pulldown; - int postprocess_mode = g_guiSettings.GetInt("videoplayer.postprocess"); CDVDVideoPPFFmpeg mPostProcess(""); CStdString sPostProcessType; @@ -573,9 +572,7 @@ void CDVDPlayerVideo::Process() sPostProcessType += g_advancedSettings.m_videoPPFFmpegDeint; } - if ((postprocess_mode == VIDEO_POSTPROCESS_ALWAYS) || - ((postprocess_mode == VIDEO_POSTPROCESS_SD_CONTENT) && - (picture.iWidth <= 720))) + if (g_settings.m_currentVideoSettings.m_PostProcess) { if (!sPostProcessType.empty()) sPostProcessType += ","; diff --git a/xbmc/settings/VideoSettings.cpp b/xbmc/settings/VideoSettings.cpp index 8bfd7a959d..2f49f47c69 100644 --- a/xbmc/settings/VideoSettings.cpp +++ b/xbmc/settings/VideoSettings.cpp @@ -48,6 +48,7 @@ CVideoSettings::CVideoSettings() m_Gamma = 20.0f; m_Sharpness = 0.0f; m_NoiseReduction = 0; + m_PostProcess = false; m_VolumeAmplification = 0; m_AudioDelay = 0.0f; m_OutputToAllSpeakers = false; @@ -77,6 +78,7 @@ bool CVideoSettings::operator!=(const CVideoSettings &right) const if (m_Gamma != right.m_Gamma) return true; if (m_Sharpness != right.m_Sharpness) return true; if (m_NoiseReduction != right.m_NoiseReduction) return true; + if (m_PostProcess != right.m_PostProcess) return true; if (m_VolumeAmplification != right.m_VolumeAmplification) return true; if (m_AudioDelay != right.m_AudioDelay) return true; if (m_OutputToAllSpeakers != right.m_OutputToAllSpeakers) return true; diff --git a/xbmc/settings/VideoSettings.h b/xbmc/settings/VideoSettings.h index 1699802e6d..0787da3e19 100644 --- a/xbmc/settings/VideoSettings.h +++ b/xbmc/settings/VideoSettings.h @@ -99,6 +99,7 @@ public: float m_Contrast; float m_Gamma; float m_NoiseReduction; + bool m_PostProcess; float m_Sharpness; float m_AudioDelay; int m_ResumeTime; |