aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Common/Configuration/ConfigurationState.cs
diff options
context:
space:
mode:
authorXpl0itR <xpl0itr@outlook.com>2020-07-04 00:16:49 +0100
committerGitHub <noreply@github.com>2020-07-04 01:16:49 +0200
commit7cb653297129b9656574d9a1b6ecf101f2730eb7 (patch)
tree94fed8a6828c1f2ffabde0ef5c0161105cf929b9 /Ryujinx.Common/Configuration/ConfigurationState.cs
parentaf72875bee117cf13b4cc74debed7bb49333aa62 (diff)
Implement audio backend configuration option (#1325)
* Implement audio backend configuration option * Use OpenAL by default * Increment version number in config.json and add 30px to the height of the settings window * nits * capitalise audio backend names
Diffstat (limited to 'Ryujinx.Common/Configuration/ConfigurationState.cs')
-rw-r--r--Ryujinx.Common/Configuration/ConfigurationState.cs30
1 files changed, 21 insertions, 9 deletions
diff --git a/Ryujinx.Common/Configuration/ConfigurationState.cs b/Ryujinx.Common/Configuration/ConfigurationState.cs
index 2a85f7e1..0f5367f9 100644
--- a/Ryujinx.Common/Configuration/ConfigurationState.cs
+++ b/Ryujinx.Common/Configuration/ConfigurationState.cs
@@ -206,6 +206,11 @@ namespace Ryujinx.Configuration
public ReactiveObject<int> FsGlobalAccessLogMode { get; private set; }
/// <summary>
+ /// The selected audio backend
+ /// </summary>
+ public ReactiveObject<AudioBackend> AudioBackend { get; private set; }
+
+ /// <summary>
/// Enable or disable ignoring missing services
/// </summary>
public ReactiveObject<bool> IgnoreMissingServices { get; private set; }
@@ -221,6 +226,7 @@ namespace Ryujinx.Configuration
EnablePtc = new ReactiveObject<bool>();
EnableFsIntegrityChecks = new ReactiveObject<bool>();
FsGlobalAccessLogMode = new ReactiveObject<int>();
+ AudioBackend = new ReactiveObject<AudioBackend>();
IgnoreMissingServices = new ReactiveObject<bool>();
}
}
@@ -370,6 +376,7 @@ namespace Ryujinx.Configuration
EnablePtc = System.EnablePtc,
EnableFsIntegrityChecks = System.EnableFsIntegrityChecks,
FsGlobalAccessLogMode = System.FsGlobalAccessLogMode,
+ AudioBackend = System.AudioBackend,
IgnoreMissingServices = System.IgnoreMissingServices,
GuiColumns = new GuiColumns
{
@@ -425,6 +432,7 @@ namespace Ryujinx.Configuration
System.EnablePtc.Value = false;
System.EnableFsIntegrityChecks.Value = true;
System.FsGlobalAccessLogMode.Value = 0;
+ System.AudioBackend.Value = AudioBackend.OpenAl;
System.IgnoreMissingServices.Value = false;
Ui.GuiColumns.FavColumn.Value = true;
Ui.GuiColumns.IconColumn.Value = true;
@@ -547,7 +555,8 @@ namespace Ryujinx.Configuration
Common.Logging.Logger.PrintWarning(LogClass.Application, $"Outdated configuration version {configurationFileFormat.Version}, migrating to version 6.");
configurationFileFormat.ControllerConfig = new List<ControllerConfig>();
- configurationFileFormat.KeyboardConfig = new List<KeyboardConfig>{
+ configurationFileFormat.KeyboardConfig = new List<KeyboardConfig>
+ {
new KeyboardConfig
{
Index = 0,
@@ -634,16 +643,19 @@ namespace Ryujinx.Configuration
configurationFileUpdated = true;
}
- List<InputConfig> inputConfig = new List<InputConfig>();
- foreach (ControllerConfig controllerConfig in configurationFileFormat.ControllerConfig)
- {
- inputConfig.Add(controllerConfig);
- }
- foreach (KeyboardConfig keyboardConfig in configurationFileFormat.KeyboardConfig)
+ if (configurationFileFormat.Version < 10)
{
- inputConfig.Add(keyboardConfig);
+ Common.Logging.Logger.PrintWarning(LogClass.Application, $"Outdated configuration version {configurationFileFormat.Version}, migrating to version 10.");
+
+ configurationFileFormat.AudioBackend = AudioBackend.OpenAl;
+
+ configurationFileUpdated = true;
}
+ List<InputConfig> inputConfig = new List<InputConfig>();
+ inputConfig.AddRange(configurationFileFormat.ControllerConfig);
+ inputConfig.AddRange(configurationFileFormat.KeyboardConfig);
+
Graphics.MaxAnisotropy.Value = configurationFileFormat.MaxAnisotropy;
Graphics.ShadersDumpPath.Value = configurationFileFormat.GraphicsShadersDumpPath;
Logger.EnableDebug.Value = configurationFileFormat.LoggingEnableDebug;
@@ -660,13 +672,13 @@ namespace Ryujinx.Configuration
System.TimeZone.Value = configurationFileFormat.SystemTimeZone;
System.SystemTimeOffset.Value = configurationFileFormat.SystemTimeOffset;
System.EnableDockedMode.Value = configurationFileFormat.DockedMode;
- System.EnableDockedMode.Value = configurationFileFormat.DockedMode;
EnableDiscordIntegration.Value = configurationFileFormat.EnableDiscordIntegration;
Graphics.EnableVsync.Value = configurationFileFormat.EnableVsync;
System.EnableMulticoreScheduling.Value = configurationFileFormat.EnableMulticoreScheduling;
System.EnablePtc.Value = configurationFileFormat.EnablePtc;
System.EnableFsIntegrityChecks.Value = configurationFileFormat.EnableFsIntegrityChecks;
System.FsGlobalAccessLogMode.Value = configurationFileFormat.FsGlobalAccessLogMode;
+ System.AudioBackend.Value = configurationFileFormat.AudioBackend;
System.IgnoreMissingServices.Value = configurationFileFormat.IgnoreMissingServices;
Ui.GuiColumns.FavColumn.Value = configurationFileFormat.GuiColumns.FavColumn;
Ui.GuiColumns.IconColumn.Value = configurationFileFormat.GuiColumns.IconColumn;