aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Horizon/Sdk/Audio/Detail/IAudioRenderer.cs
blob: b766bd73c3fda9c796408dac4922ec9d9804b52c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
using Ryujinx.Horizon.Common;
using Ryujinx.Horizon.Sdk.Sf;
using System;
using System.Buffers;

namespace Ryujinx.Horizon.Sdk.Audio.Detail
{
    interface IAudioRenderer : IServiceObject
    {
        Result GetSampleRate(out int sampleRate);
        Result GetSampleCount(out int sampleCount);
        Result GetMixBufferCount(out int mixBufferCount);
        Result GetState(out int state);
        Result RequestUpdate(Memory<byte> output, Memory<byte> performanceOutput, ReadOnlySequence<byte> input);
        Result Start();
        Result Stop();
        Result QuerySystemEvent(out int eventHandle);
        Result SetRenderingTimeLimit(int percent);
        Result GetRenderingTimeLimit(out int percent);
        Result RequestUpdateAuto(Memory<byte> output, Memory<byte> performanceOutput, ReadOnlySequence<byte> input);
        Result ExecuteAudioRendererRendering();
        Result SetVoiceDropParameter(float voiceDropParameter);
        Result GetVoiceDropParameter(out float voiceDropParameter);
    }
}