aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Marshall <jmarshall@never.you.mind>2011-03-26 11:54:55 +1300
committerJonathan Marshall <jmarshall@never.you.mind>2011-03-26 11:54:55 +1300
commit010cf96048ef7ece96cfa47181df01d6b5d209b4 (patch)
treef1ec50d8b9736e45a83de855d1723e92aad39667
parentfa429ac543d04088d48a8ab06b5b588a6fd5c7e7 (diff)
parentfcc4a5a469758989c6832e9ff39ad4fd32db560a (diff)
Merge branch 'master' of git://github.com/a11599/xbmc into a11599-master
* 'master' of git://github.com/a11599/xbmc: Enable saving scaling method per video.
-rw-r--r--xbmc/video/VideoDatabase.cpp18
-rw-r--r--xbmc/video/VideoDatabase.h2
2 files changed, 13 insertions, 7 deletions
diff --git a/xbmc/video/VideoDatabase.cpp b/xbmc/video/VideoDatabase.cpp
index 9b8f8c8472..24d68a0842 100644
--- a/xbmc/video/VideoDatabase.cpp
+++ b/xbmc/video/VideoDatabase.cpp
@@ -97,7 +97,7 @@ bool CVideoDatabase::CreateTables()
"ViewMode integer,ZoomAmount float, PixelRatio float, VerticalShift 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, PostProcess bool)\n");
+ "CropRight integer, CropTop integer, CropBottom integer, Sharpness float, NoiseReduction float, NonLinStretch bool, PostProcess bool, ScalingMethod integer)\n");
m_pDS->exec("CREATE UNIQUE INDEX ix_settings ON settings ( idFile )\n");
CLog::Log(LOGINFO, "create stacktimes table");
@@ -3004,6 +3004,7 @@ bool CVideoDatabase::GetVideoSettings(const CStdString &strFilenameAndPath, CVid
settings.m_InterlaceMethod = (EINTERLACEMETHOD)m_pDS->fv("Deinterlace").get_asInt();
settings.m_VolumeAmplification = m_pDS->fv("VolumeAmplification").get_asFloat();
settings.m_OutputToAllSpeakers = m_pDS->fv("OutputToAllSpeakers").get_asBool();
+ settings.m_ScalingMethod = (ESCALINGMETHOD)m_pDS->fv("ScalingMethod").get_asInt();
settings.m_SubtitleCached = false;
m_pDS->close();
return true;
@@ -3036,11 +3037,11 @@ void CVideoDatabase::SetVideoSettings(const CStdString& strFilenameAndPath, cons
// update the item
strSQL=PrepareSQL("update settings set Deinterlace=%i,ViewMode=%i,ZoomAmount=%f,PixelRatio=%f,VerticalShift=%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,PostProcess=%i,",
+ "VolumeAmplification=%f,AudioDelay=%f,OutputToAllSpeakers=%i,Sharpness=%f,NoiseReduction=%f,NonLinStretch=%i,PostProcess=%i,ScalingMethod=%i,",
setting.m_InterlaceMethod, setting.m_ViewMode, setting.m_CustomZoomAmount, setting.m_CustomPixelRatio, setting.m_CustomVerticalShift,
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_PostProcess);
+ setting.m_OutputToAllSpeakers,setting.m_Sharpness,setting.m_NoiseReduction,setting.m_CustomNonLinStretch,setting.m_PostProcess,setting.m_ScalingMethod);
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;
@@ -3054,14 +3055,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,PostProcess) "
+ "Sharpness,NoiseReduction,NonLinStretch,PostProcess,ScalingMethod) "
"VALUES ";
- strSQL += PrepareSQL("(%i,%i,%i,%f,%f,%f,%i,%i,%f,%i,%f,%f,%f,%f,%f,%i,%i,%i,%i,%i,%i,%i,%f,%f,%i,%i)",
+ strSQL += PrepareSQL("(%i,%i,%i,%f,%f,%f,%i,%i,%f,%i,%f,%f,%f,%f,%f,%i,%i,%i,%i,%i,%i,%i,%f,%f,%i,%i,%i)",
idFile, setting.m_InterlaceMethod, setting.m_ViewMode, setting.m_CustomZoomAmount, setting.m_CustomPixelRatio, setting.m_CustomVerticalShift,
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_PostProcess);
+ setting.m_Sharpness, setting.m_NoiseReduction, setting.m_CustomNonLinStretch, setting.m_PostProcess, setting.m_ScalingMethod);
m_pDS->exec(strSQL.c_str());
}
}
@@ -3498,6 +3499,11 @@ bool CVideoDatabase::UpdateOldVersion(int iVersion)
{
CreateViews();
}
+ if (iVersion < 50)
+ {
+ m_pDS->exec("ALTER table settings add ScalingMethod integer");
+ m_pDS->exec(PrepareSQL("UPDATE settings set ScalingMethod=%i", g_settings.m_defaultVideoSettings.m_ScalingMethod));
+ }
}
catch (...)
{
diff --git a/xbmc/video/VideoDatabase.h b/xbmc/video/VideoDatabase.h
index 1a69775580..fb69368965 100644
--- a/xbmc/video/VideoDatabase.h
+++ b/xbmc/video/VideoDatabase.h
@@ -681,7 +681,7 @@ private:
*/
void UpdateBasePath(const char *table, const char *id, int column, bool shows = false);
- virtual int GetMinVersion() const { return 49; };
+ virtual int GetMinVersion() const { return 50; };
virtual int GetExportVersion() const { return 1; };
const char *GetBaseDBName() const { return "MyVideos"; };