aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Horizon/Sdk/Audio/Detail/AudioRenderer.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Ryujinx.Horizon/Sdk/Audio/Detail/AudioRenderer.cs')
-rw-r--r--src/Ryujinx.Horizon/Sdk/Audio/Detail/AudioRenderer.cs26
1 files changed, 7 insertions, 19 deletions
diff --git a/src/Ryujinx.Horizon/Sdk/Audio/Detail/AudioRenderer.cs b/src/Ryujinx.Horizon/Sdk/Audio/Detail/AudioRenderer.cs
index 776df641..54de0721 100644
--- a/src/Ryujinx.Horizon/Sdk/Audio/Detail/AudioRenderer.cs
+++ b/src/Ryujinx.Horizon/Sdk/Audio/Detail/AudioRenderer.cs
@@ -57,23 +57,11 @@ namespace Ryujinx.Horizon.Sdk.Audio.Detail
[CmifCommand(4)]
public Result RequestUpdate(
- [Buffer(HipcBufferFlags.Out | HipcBufferFlags.MapAlias)] Span<byte> output,
- [Buffer(HipcBufferFlags.Out | HipcBufferFlags.MapAlias)] Span<byte> performanceOutput,
- [Buffer(HipcBufferFlags.In | HipcBufferFlags.MapAlias)] ReadOnlySpan<byte> input)
+ [Buffer(HipcBufferFlags.Out | HipcBufferFlags.MapAlias)] Memory<byte> output,
+ [Buffer(HipcBufferFlags.Out | HipcBufferFlags.MapAlias)] Memory<byte> performanceOutput,
+ [Buffer(HipcBufferFlags.In | HipcBufferFlags.MapAlias)] ReadOnlySequence<byte> input)
{
- using IMemoryOwner<byte> outputOwner = ByteMemoryPool.Rent(output.Length);
- using IMemoryOwner<byte> performanceOutputOwner = ByteMemoryPool.Rent(performanceOutput.Length);
-
- Memory<byte> outputMemory = outputOwner.Memory;
- Memory<byte> performanceOutputMemory = performanceOutputOwner.Memory;
-
- using MemoryHandle outputHandle = outputMemory.Pin();
- using MemoryHandle performanceOutputHandle = performanceOutputMemory.Pin();
-
- Result result = new Result((int)_renderSystem.Update(outputMemory, performanceOutputMemory, input.ToArray()));
-
- outputMemory.Span.CopyTo(output);
- performanceOutputMemory.Span.CopyTo(performanceOutput);
+ Result result = new Result((int)_renderSystem.Update(output, performanceOutput, input));
return result;
}
@@ -127,9 +115,9 @@ namespace Ryujinx.Horizon.Sdk.Audio.Detail
[CmifCommand(10)] // 3.0.0+
public Result RequestUpdateAuto(
- [Buffer(HipcBufferFlags.Out | HipcBufferFlags.AutoSelect)] Span<byte> output,
- [Buffer(HipcBufferFlags.Out | HipcBufferFlags.AutoSelect)] Span<byte> performanceOutput,
- [Buffer(HipcBufferFlags.In | HipcBufferFlags.AutoSelect)] ReadOnlySpan<byte> input)
+ [Buffer(HipcBufferFlags.Out | HipcBufferFlags.AutoSelect)] Memory<byte> output,
+ [Buffer(HipcBufferFlags.Out | HipcBufferFlags.AutoSelect)] Memory<byte> performanceOutput,
+ [Buffer(HipcBufferFlags.In | HipcBufferFlags.AutoSelect)] ReadOnlySequence<byte> input)
{
return RequestUpdate(output, performanceOutput, input);
}