From be4ac28aa0b78640328495d11589cb3f2fddb386 Mon Sep 17 00:00:00 2001 From: gdkchan Date: Thu, 12 Jul 2018 19:09:26 -0300 Subject: [PATCH] Pause audio playback on last stream buffer --- Ryujinx.HLE/OsHle/Services/Aud/VoiceContext.cs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Ryujinx.HLE/OsHle/Services/Aud/VoiceContext.cs b/Ryujinx.HLE/OsHle/Services/Aud/VoiceContext.cs index 6f3b96af52..170c094ac5 100644 --- a/Ryujinx.HLE/OsHle/Services/Aud/VoiceContext.cs +++ b/Ryujinx.HLE/OsHle/Services/Aud/VoiceContext.cs @@ -61,6 +61,13 @@ namespace Ryujinx.HLE.OsHle.Services.Aud public int[] GetBufferData(AMemory Memory, int MaxSamples, out int SamplesCount) { + if (!Playing) + { + SamplesCount = 0; + + return null; + } + if (BufferReload) { BufferReload = false; @@ -99,6 +106,11 @@ namespace Ryujinx.HLE.OsHle.Services.Aud } OutStatus.PlayedWaveBuffersCount++; + + if (Wb.LastBuffer != 0) + { + PlayState = PlayState.Paused; + } } return Output;