change IAudioRenderer/AudioRenderer RequestUpdate* methods to take input as ReadOnlySequence<byte>
This commit is contained in:
parent
248e2f006e
commit
cd2c1d67d9
2 changed files with 6 additions and 5 deletions
|
@ -59,7 +59,7 @@ namespace Ryujinx.Horizon.Sdk.Audio.Detail
|
||||||
public Result RequestUpdate(
|
public Result RequestUpdate(
|
||||||
[Buffer(HipcBufferFlags.Out | HipcBufferFlags.MapAlias)] Span<byte> output,
|
[Buffer(HipcBufferFlags.Out | HipcBufferFlags.MapAlias)] Span<byte> output,
|
||||||
[Buffer(HipcBufferFlags.Out | HipcBufferFlags.MapAlias)] Span<byte> performanceOutput,
|
[Buffer(HipcBufferFlags.Out | HipcBufferFlags.MapAlias)] Span<byte> performanceOutput,
|
||||||
[Buffer(HipcBufferFlags.In | HipcBufferFlags.MapAlias)] ReadOnlySpan<byte> input)
|
[Buffer(HipcBufferFlags.In | HipcBufferFlags.MapAlias)] ReadOnlySequence<byte> input)
|
||||||
{
|
{
|
||||||
using IMemoryOwner<byte> outputOwner = ByteMemoryPool.Rent(output.Length);
|
using IMemoryOwner<byte> outputOwner = ByteMemoryPool.Rent(output.Length);
|
||||||
using IMemoryOwner<byte> performanceOutputOwner = ByteMemoryPool.Rent(performanceOutput.Length);
|
using IMemoryOwner<byte> performanceOutputOwner = ByteMemoryPool.Rent(performanceOutput.Length);
|
||||||
|
@ -70,7 +70,7 @@ namespace Ryujinx.Horizon.Sdk.Audio.Detail
|
||||||
using MemoryHandle outputHandle = outputMemory.Pin();
|
using MemoryHandle outputHandle = outputMemory.Pin();
|
||||||
using MemoryHandle performanceOutputHandle = performanceOutputMemory.Pin();
|
using MemoryHandle performanceOutputHandle = performanceOutputMemory.Pin();
|
||||||
|
|
||||||
Result result = new Result((int)_renderSystem.Update(outputMemory, performanceOutputMemory, input.ToArray()));
|
Result result = new Result((int)_renderSystem.Update(outputMemory, performanceOutputMemory, input));
|
||||||
|
|
||||||
outputMemory.Span.CopyTo(output);
|
outputMemory.Span.CopyTo(output);
|
||||||
performanceOutputMemory.Span.CopyTo(performanceOutput);
|
performanceOutputMemory.Span.CopyTo(performanceOutput);
|
||||||
|
@ -129,7 +129,7 @@ namespace Ryujinx.Horizon.Sdk.Audio.Detail
|
||||||
public Result RequestUpdateAuto(
|
public Result RequestUpdateAuto(
|
||||||
[Buffer(HipcBufferFlags.Out | HipcBufferFlags.AutoSelect)] Span<byte> output,
|
[Buffer(HipcBufferFlags.Out | HipcBufferFlags.AutoSelect)] Span<byte> output,
|
||||||
[Buffer(HipcBufferFlags.Out | HipcBufferFlags.AutoSelect)] Span<byte> performanceOutput,
|
[Buffer(HipcBufferFlags.Out | HipcBufferFlags.AutoSelect)] Span<byte> performanceOutput,
|
||||||
[Buffer(HipcBufferFlags.In | HipcBufferFlags.AutoSelect)] ReadOnlySpan<byte> input)
|
[Buffer(HipcBufferFlags.In | HipcBufferFlags.AutoSelect)] ReadOnlySequence<byte> input)
|
||||||
{
|
{
|
||||||
return RequestUpdate(output, performanceOutput, input);
|
return RequestUpdate(output, performanceOutput, input);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
using Ryujinx.Horizon.Common;
|
using Ryujinx.Horizon.Common;
|
||||||
using Ryujinx.Horizon.Sdk.Sf;
|
using Ryujinx.Horizon.Sdk.Sf;
|
||||||
using System;
|
using System;
|
||||||
|
using System.Buffers;
|
||||||
|
|
||||||
namespace Ryujinx.Horizon.Sdk.Audio.Detail
|
namespace Ryujinx.Horizon.Sdk.Audio.Detail
|
||||||
{
|
{
|
||||||
|
@ -10,13 +11,13 @@ namespace Ryujinx.Horizon.Sdk.Audio.Detail
|
||||||
Result GetSampleCount(out int sampleCount);
|
Result GetSampleCount(out int sampleCount);
|
||||||
Result GetMixBufferCount(out int mixBufferCount);
|
Result GetMixBufferCount(out int mixBufferCount);
|
||||||
Result GetState(out int state);
|
Result GetState(out int state);
|
||||||
Result RequestUpdate(Span<byte> output, Span<byte> performanceOutput, ReadOnlySpan<byte> input);
|
Result RequestUpdate(Span<byte> output, Span<byte> performanceOutput, ReadOnlySequence<byte> input);
|
||||||
Result Start();
|
Result Start();
|
||||||
Result Stop();
|
Result Stop();
|
||||||
Result QuerySystemEvent(out int eventHandle);
|
Result QuerySystemEvent(out int eventHandle);
|
||||||
Result SetRenderingTimeLimit(int percent);
|
Result SetRenderingTimeLimit(int percent);
|
||||||
Result GetRenderingTimeLimit(out int percent);
|
Result GetRenderingTimeLimit(out int percent);
|
||||||
Result RequestUpdateAuto(Span<byte> output, Span<byte> performanceOutput, ReadOnlySpan<byte> input);
|
Result RequestUpdateAuto(Span<byte> output, Span<byte> performanceOutput, ReadOnlySequence<byte> input);
|
||||||
Result ExecuteAudioRendererRendering();
|
Result ExecuteAudioRendererRendering();
|
||||||
Result SetVoiceDropParameter(float voiceDropParameter);
|
Result SetVoiceDropParameter(float voiceDropParameter);
|
||||||
Result GetVoiceDropParameter(out float voiceDropParameter);
|
Result GetVoiceDropParameter(out float voiceDropParameter);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue