diff options
Diffstat (limited to 'src/Ryujinx.Audio/Input')
| -rw-r--r-- | src/Ryujinx.Audio/Input/AudioInputManager.cs | 14 | ||||
| -rw-r--r-- | src/Ryujinx.Audio/Input/AudioInputSystem.cs | 24 |
2 files changed, 23 insertions, 15 deletions
diff --git a/src/Ryujinx.Audio/Input/AudioInputManager.cs b/src/Ryujinx.Audio/Input/AudioInputManager.cs index 63cbe031..4d1796c9 100644 --- a/src/Ryujinx.Audio/Input/AudioInputManager.cs +++ b/src/Ryujinx.Audio/Input/AudioInputManager.cs @@ -24,7 +24,7 @@ namespace Ryujinx.Audio.Input /// <summary> /// The session ids allocation table. /// </summary> - private int[] _sessionIds; + private readonly int[] _sessionIds; /// <summary> /// The device driver. @@ -39,7 +39,7 @@ namespace Ryujinx.Audio.Input /// <summary> /// The <see cref="AudioInputSystem"/> session instances. /// </summary> - private AudioInputSystem[] _sessions; + private readonly AudioInputSystem[] _sessions; /// <summary> /// The count of active sessions. @@ -166,6 +166,7 @@ namespace Ryujinx.Audio.Input /// </summary> /// <param name="filtered">If true, filter disconnected devices</param> /// <returns>The list of all audio inputs name</returns> +#pragma warning disable CA1822 // Mark member as static public string[] ListAudioIns(bool filtered) { if (filtered) @@ -173,8 +174,9 @@ namespace Ryujinx.Audio.Input // TODO: Detect if the driver supports audio input } - return new string[] { Constants.DefaultDeviceInputName }; + return new[] { Constants.DefaultDeviceInputName }; } +#pragma warning restore CA1822 /// <summary> /// Open a new <see cref="AudioInputSystem"/>. @@ -205,7 +207,7 @@ namespace Ryujinx.Audio.Input IHardwareDeviceSession deviceSession = _deviceDriver.OpenDeviceSession(IHardwareDeviceDriver.Direction.Input, memoryManager, sampleFormat, parameter.SampleRate, parameter.ChannelCount); - AudioInputSystem audioIn = new AudioInputSystem(this, _lock, deviceSession, _sessionsBufferEvents[sessionId]); + AudioInputSystem audioIn = new(this, _lock, deviceSession, _sessionsBufferEvents[sessionId]); ResultCode result = audioIn.Initialize(inputDeviceName, sampleFormat, ref parameter, sessionId); @@ -238,6 +240,8 @@ namespace Ryujinx.Audio.Input public void Dispose() { + GC.SuppressFinalize(this); + if (Interlocked.CompareExchange(ref _disposeState, 1, 0) == 0) { Dispose(true); @@ -263,4 +267,4 @@ namespace Ryujinx.Audio.Input } } } -}
\ No newline at end of file +} diff --git a/src/Ryujinx.Audio/Input/AudioInputSystem.cs b/src/Ryujinx.Audio/Input/AudioInputSystem.cs index 33364e28..34623b34 100644 --- a/src/Ryujinx.Audio/Input/AudioInputSystem.cs +++ b/src/Ryujinx.Audio/Input/AudioInputSystem.cs @@ -18,7 +18,7 @@ namespace Ryujinx.Audio.Input /// <summary> /// The session the <see cref="AudioInputSystem"/>. /// </summary> - private AudioDeviceSession _session; + private readonly AudioDeviceSession _session; /// <summary> /// The target device name of the <see cref="AudioInputSystem"/>. @@ -43,7 +43,7 @@ namespace Ryujinx.Audio.Input /// <summary> /// The <see cref="AudioInputManager"/> owning this. /// </summary> - private AudioInputManager _manager; + private readonly AudioInputManager _manager; /// <summary> /// The lock of the parent. @@ -90,11 +90,13 @@ namespace Ryujinx.Audio.Input { return ResultCode.DeviceNotFound; } - else if (configuration.SampleRate != 0 && configuration.SampleRate != Constants.TargetSampleRate) + + if (configuration.SampleRate != 0 && configuration.SampleRate != Constants.TargetSampleRate) { return ResultCode.UnsupportedSampleRate; } - else if (configuration.ChannelCount != 0 && configuration.ChannelCount != 1 && configuration.ChannelCount != 2 && configuration.ChannelCount != 6) + + if (configuration.ChannelCount != 0 && configuration.ChannelCount != 1 && configuration.ChannelCount != 2 && configuration.ChannelCount != 6) { return ResultCode.UnsupportedChannelConfiguration; } @@ -185,11 +187,11 @@ namespace Ryujinx.Audio.Input { lock (_parentLock) { - AudioBuffer buffer = new AudioBuffer + AudioBuffer buffer = new() { BufferTag = bufferTag, DataPointer = userBuffer.Data, - DataSize = userBuffer.DataSize + DataSize = userBuffer.DataSize, }; if (_session.AppendBuffer(buffer)) @@ -213,14 +215,14 @@ namespace Ryujinx.Audio.Input { lock (_parentLock) { - AudioBuffer buffer = new AudioBuffer + AudioBuffer buffer = new() { BufferTag = bufferTag, DataPointer = userBuffer.Data, - DataSize = userBuffer.DataSize + DataSize = userBuffer.DataSize, }; - if (_session.AppendUacBuffer(buffer, handle)) + if (AudioDeviceSession.AppendUacBuffer(buffer, handle)) { return ResultCode.Success; } @@ -373,6 +375,8 @@ namespace Ryujinx.Audio.Input public void Dispose() { + GC.SuppressFinalize(this); + if (Interlocked.CompareExchange(ref _disposeState, 1, 0) == 0) { Dispose(true); @@ -389,4 +393,4 @@ namespace Ryujinx.Audio.Input } } } -}
\ No newline at end of file +} |
