audio backend projects code cleanup

This commit is contained in:
GreemDev
2026-01-31 02:25:45 -06:00
committed by KeatonTheBot
parent 3cdae775b1
commit 60c867622e
9 changed files with 40 additions and 56 deletions
@@ -13,7 +13,7 @@ namespace Ryujinx.Audio.Backends.Apple
{ {
[SupportedOSPlatform("macos")] [SupportedOSPlatform("macos")]
[SupportedOSPlatform("ios")] [SupportedOSPlatform("ios")]
public class AppleHardwareDeviceDriver : IHardwareDeviceDriver public sealed class AppleHardwareDeviceDriver : IHardwareDeviceDriver
{ {
private readonly ManualResetEvent _updateRequiredEvent; private readonly ManualResetEvent _updateRequiredEvent;
private readonly ManualResetEvent _pauseEvent; private readonly ManualResetEvent _pauseEvent;
@@ -37,7 +37,8 @@ namespace Ryujinx.Audio.Backends.Apple
{ {
try try
{ {
var format = GetAudioFormat(SampleFormat.PcmFloat, Constants.TargetSampleRate, 6); AudioStreamBasicDescription format =
GetAudioFormat(SampleFormat.PcmFloat, Constants.TargetSampleRate, 6);
int result = AudioQueueNewOutput( int result = AudioQueueNewOutput(
ref format, ref format,
@@ -83,16 +84,13 @@ namespace Ryujinx.Audio.Backends.Apple
public static bool IsSupported => OperatingSystem.IsMacOSVersionAtLeast(10, 5); public static bool IsSupported => OperatingSystem.IsMacOSVersionAtLeast(10, 5);
public ManualResetEvent GetUpdateRequiredEvent() public ManualResetEvent GetUpdateRequiredEvent()
{ => _updateRequiredEvent;
return _updateRequiredEvent;
}
public ManualResetEvent GetPauseEvent() public ManualResetEvent GetPauseEvent()
{ => _pauseEvent;
return _pauseEvent;
}
public IHardwareDeviceSession OpenDeviceSession(Direction direction, IVirtualMemoryManager memoryManager, SampleFormat sampleFormat, uint sampleRate, uint channelCount) public IHardwareDeviceSession OpenDeviceSession(Direction direction, IVirtualMemoryManager memoryManager,
SampleFormat sampleFormat, uint sampleRate, uint channelCount)
{ {
if (channelCount == 0) if (channelCount == 0)
{ {
@@ -117,11 +115,10 @@ namespace Ryujinx.Audio.Backends.Apple
} }
internal bool Unregister(AppleHardwareDeviceSession session) internal bool Unregister(AppleHardwareDeviceSession session)
{ => _sessions.TryRemove(session, out _);
return _sessions.TryRemove(session, out _);
}
internal static AudioStreamBasicDescription GetAudioFormat(SampleFormat sampleFormat, uint sampleRate, uint channelCount) internal static AudioStreamBasicDescription GetAudioFormat(SampleFormat sampleFormat, uint sampleRate,
uint channelCount)
{ {
uint formatFlags; uint formatFlags;
uint bitsPerChannel; uint bitsPerChannel;
@@ -170,7 +167,7 @@ namespace Ryujinx.Audio.Backends.Apple
Dispose(true); Dispose(true);
} }
protected virtual void Dispose(bool disposing) private void Dispose(bool disposing)
{ {
if (disposing) if (disposing)
{ {
@@ -183,29 +180,15 @@ namespace Ryujinx.Audio.Backends.Apple
} }
} }
public bool SupportsSampleRate(uint sampleRate) public bool SupportsDirection(Direction direction)
{ => direction != Direction.Input;
return true;
} public bool SupportsSampleRate(uint sampleRate) => true;
public bool SupportsSampleFormat(SampleFormat sampleFormat) public bool SupportsSampleFormat(SampleFormat sampleFormat)
{ => sampleFormat != SampleFormat.PcmInt24;
return sampleFormat != SampleFormat.PcmInt24;
}
public bool SupportsChannelCount(uint channelCount) public bool SupportsChannelCount(uint channelCount)
{ => channelCount != 6 || _supportSurroundConfiguration;
if (channelCount == 6)
{
return _supportSurroundConfiguration;
}
return true;
}
public bool SupportsDirection(Direction direction)
{
return direction != Direction.Input;
}
} }
} }
@@ -64,7 +64,7 @@ namespace Ryujinx.Audio.Backends.Apple
{ {
lock (_lock) lock (_lock)
{ {
var format = AppleHardwareDeviceDriver.GetAudioFormat( AudioStreamBasicDescription format = AppleHardwareDeviceDriver.GetAudioFormat(
RequestedSampleFormat, RequestedSampleFormat,
RequestedSampleRate, RequestedSampleRate,
RequestedChannelCount); RequestedChannelCount);
@@ -1,6 +1,5 @@
using Ryujinx.Common.Memory;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
// ReSharper disable InconsistentNaming
namespace Ryujinx.Audio.Backends.Apple.Native namespace Ryujinx.Audio.Backends.Apple.Native
{ {
@@ -10,7 +10,8 @@ using static Ryujinx.Audio.Integration.IHardwareDeviceDriver;
namespace Ryujinx.Audio.Backends.OpenAL namespace Ryujinx.Audio.Backends.OpenAL
{ {
public class OpenALHardwareDeviceDriver : IHardwareDeviceDriver // ReSharper disable once InconsistentNaming
public sealed class OpenALHardwareDeviceDriver : IHardwareDeviceDriver
{ {
private readonly ALDevice _device; private readonly ALDevice _device;
private readonly ALContext _context; private readonly ALContext _context;
@@ -148,7 +149,7 @@ namespace Ryujinx.Audio.Backends.OpenAL
Dispose(true); Dispose(true);
} }
protected virtual void Dispose(bool disposing) private void Dispose(bool disposing)
{ {
if (disposing) if (disposing)
{ {
@@ -9,7 +9,8 @@ using System.Threading;
namespace Ryujinx.Audio.Backends.OpenAL namespace Ryujinx.Audio.Backends.OpenAL
{ {
class OpenALHardwareDeviceSession : HardwareDeviceSessionOutputBase // ReSharper disable once InconsistentNaming
sealed class OpenALHardwareDeviceSession : HardwareDeviceSessionOutputBase
{ {
private readonly OpenALHardwareDeviceDriver _driver; private readonly OpenALHardwareDeviceDriver _driver;
private readonly int _sourceId; private readonly int _sourceId;
@@ -190,7 +191,7 @@ namespace Ryujinx.Audio.Backends.OpenAL
} }
} }
protected virtual void Dispose(bool disposing) private void Dispose(bool disposing)
{ {
if (disposing && _driver.Unregister(this)) if (disposing && _driver.Unregister(this))
{ {
@@ -12,7 +12,7 @@ using static SDL2.SDL;
namespace Ryujinx.Audio.Backends.SDL2 namespace Ryujinx.Audio.Backends.SDL2
{ {
public class SDL2HardwareDeviceDriver : IHardwareDeviceDriver public sealed class SDL2HardwareDeviceDriver : IHardwareDeviceDriver
{ {
private readonly ManualResetEvent _updateRequiredEvent; private readonly ManualResetEvent _updateRequiredEvent;
private readonly ManualResetEvent _pauseEvent; private readonly ManualResetEvent _pauseEvent;
@@ -164,7 +164,7 @@ namespace Ryujinx.Audio.Backends.SDL2
Dispose(true); Dispose(true);
} }
protected virtual void Dispose(bool disposing) private void Dispose(bool disposing)
{ {
if (disposing) if (disposing)
{ {
@@ -11,7 +11,7 @@ using static SDL2.SDL;
namespace Ryujinx.Audio.Backends.SDL2 namespace Ryujinx.Audio.Backends.SDL2
{ {
class SDL2HardwareDeviceSession : HardwareDeviceSessionOutputBase sealed class SDL2HardwareDeviceSession : HardwareDeviceSessionOutputBase
{ {
private readonly SDL2HardwareDeviceDriver _driver; private readonly SDL2HardwareDeviceDriver _driver;
private readonly ConcurrentQueue<SDL2AudioBuffer> _queuedBuffers; private readonly ConcurrentQueue<SDL2AudioBuffer> _queuedBuffers;
@@ -211,7 +211,7 @@ namespace Ryujinx.Audio.Backends.SDL2
return driverBuffer.DriverIdentifier != buffer.DataPointer; return driverBuffer.DriverIdentifier != buffer.DataPointer;
} }
protected virtual void Dispose(bool disposing) private void Dispose(bool disposing)
{ {
if (disposing && _driver.Unregister(this)) if (disposing && _driver.Unregister(this))
{ {
@@ -10,7 +10,7 @@ using static Ryujinx.Audio.Integration.IHardwareDeviceDriver;
namespace Ryujinx.Audio.Backends.SoundIo namespace Ryujinx.Audio.Backends.SoundIo
{ {
public class SoundIoHardwareDeviceDriver : IHardwareDeviceDriver public sealed class SoundIoHardwareDeviceDriver : IHardwareDeviceDriver
{ {
private readonly SoundIoContext _audioContext; private readonly SoundIoContext _audioContext;
private readonly SoundIoDeviceContext _audioDevice; private readonly SoundIoDeviceContext _audioDevice;
@@ -227,7 +227,7 @@ namespace Ryujinx.Audio.Backends.SoundIo
} }
} }
protected virtual void Dispose(bool disposing) private void Dispose(bool disposing)
{ {
if (disposing) if (disposing)
{ {
@@ -11,7 +11,7 @@ using static Ryujinx.Audio.Backends.SoundIo.Native.SoundIo;
namespace Ryujinx.Audio.Backends.SoundIo namespace Ryujinx.Audio.Backends.SoundIo
{ {
class SoundIoHardwareDeviceSession : HardwareDeviceSessionOutputBase sealed class SoundIoHardwareDeviceSession : HardwareDeviceSessionOutputBase
{ {
private readonly SoundIoHardwareDeviceDriver _driver; private readonly SoundIoHardwareDeviceDriver _driver;
private readonly ConcurrentQueue<SoundIoAudioBuffer> _queuedBuffers; private readonly ConcurrentQueue<SoundIoAudioBuffer> _queuedBuffers;
@@ -428,7 +428,7 @@ namespace Ryujinx.Audio.Backends.SoundIo
} }
} }
protected virtual void Dispose(bool disposing) private void Dispose(bool disposing)
{ {
if (disposing && _driver.Unregister(this)) if (disposing && _driver.Unregister(this))
{ {