diff options
| author | Xpl0itR <xpl0itr@outlook.com> | 2020-07-04 00:16:49 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-07-04 01:16:49 +0200 |
| commit | 7cb653297129b9656574d9a1b6ecf101f2730eb7 (patch) | |
| tree | 94fed8a6828c1f2ffabde0ef5c0161105cf929b9 /Ryujinx.Common/Configuration/ConfigurationState.cs | |
| parent | af72875bee117cf13b4cc74debed7bb49333aa62 (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.cs | 30 |
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; |
