Merge pull request #7909 from LAGonauta/dplii-quality-slider

Add slider to change DPLII decoder quality
This commit is contained in:
Léo Lam 2019-11-16 18:13:58 +01:00 committed by GitHub
commit b712cc106b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 185 additions and 10 deletions

View file

@ -32,6 +32,8 @@ const ConfigInfo<int> MAIN_GC_LANGUAGE{{System::Main, "Core", "SelectedLanguage"
const ConfigInfo<bool> MAIN_OVERRIDE_REGION_SETTINGS{
{System::Main, "Core", "OverrideRegionSettings"}, false};
const ConfigInfo<bool> MAIN_DPL2_DECODER{{System::Main, "Core", "DPL2Decoder"}, false};
const ConfigInfo<AudioCommon::DPL2Quality> MAIN_DPL2_QUALITY{{System::Main, "Core", "DPL2Quality"},
AudioCommon::GetDefaultDPL2Quality()};
const ConfigInfo<int> MAIN_AUDIO_LATENCY{{System::Main, "Core", "AudioLatency"}, 20};
const ConfigInfo<bool> MAIN_AUDIO_STRETCH{{System::Main, "Core", "AudioStretch"}, false};
const ConfigInfo<int> MAIN_AUDIO_STRETCH_LATENCY{{System::Main, "Core", "AudioStretchMaxLatency"},
@ -141,5 +143,4 @@ const ConfigInfo<std::string> MAIN_RESOURCEPACK_PATH{{System::Main, "General", "
""};
const ConfigInfo<std::string> MAIN_FS_PATH{{System::Main, "General", "NANDRootPath"}, ""};
const ConfigInfo<std::string> MAIN_SD_PATH{{System::Main, "General", "WiiSDCardPath"}, ""};
} // namespace Config

View file

@ -13,6 +13,11 @@ namespace PowerPC
enum class CPUCore;
}
namespace AudioCommon
{
enum class DPL2Quality;
}
namespace Config
{
// Main.Core
@ -32,6 +37,7 @@ extern const ConfigInfo<bool> MAIN_ENABLE_CHEATS;
extern const ConfigInfo<int> MAIN_GC_LANGUAGE;
extern const ConfigInfo<bool> MAIN_OVERRIDE_REGION_SETTINGS;
extern const ConfigInfo<bool> MAIN_DPL2_DECODER;
extern const ConfigInfo<AudioCommon::DPL2Quality> MAIN_DPL2_QUALITY;
extern const ConfigInfo<int> MAIN_AUDIO_LATENCY;
extern const ConfigInfo<bool> MAIN_AUDIO_STRETCH;
extern const ConfigInfo<int> MAIN_AUDIO_STRETCH_LATENCY;
@ -108,5 +114,4 @@ extern const ConfigInfo<std::string> MAIN_LOAD_PATH;
extern const ConfigInfo<std::string> MAIN_RESOURCEPACK_PATH;
extern const ConfigInfo<std::string> MAIN_FS_PATH;
extern const ConfigInfo<std::string> MAIN_SD_PATH;
} // namespace Config

View file

@ -35,6 +35,8 @@ bool IsSettingSaveable(const Config::ConfigLocation& config_location)
Config::MAIN_MEMCARD_A_PATH.location,
Config::MAIN_MEMCARD_B_PATH.location,
Config::MAIN_AUTO_DISC_CHANGE.location,
Config::MAIN_DPL2_DECODER.location,
Config::MAIN_DPL2_QUALITY.location,
// Main.Display
Config::MAIN_FULLSCREEN_DISPLAY_RES.location,
@ -145,7 +147,6 @@ bool IsSettingSaveable(const Config::ConfigLocation& config_location)
// UI.General
Config::MAIN_USE_DISCORD_PRESENCE.location,
};
return std::find(s_setting_saveable.begin(), s_setting_saveable.end(), config_location) !=

View file

@ -1065,3 +1065,8 @@ IniFile SConfig::LoadGameIni(const std::string& id, std::optional<u16> revision)
game_ini.Load(File::GetUserPath(D_GAMESETTINGS_IDX) + filename, true);
return game_ini;
}
bool SConfig::ShouldUseDPL2Decoder() const
{
return bDPL2Decoder && !bDSPHLE;
}

View file

@ -173,6 +173,9 @@ struct SConfig
bool bEnableCustomRTC;
u32 m_customRTCValue;
// DPL2
bool ShouldUseDPL2Decoder() const;
DiscIO::Region m_region;
std::string m_strVideoBackend;