From aa28a78d8c1862244df7200a0a552f2d566b3f90 Mon Sep 17 00:00:00 2001 From: Garry Newman Date: Fri, 4 Nov 2016 14:20:13 +0000 Subject: [PATCH] Use GetAvailableVoice --- Facepunch.Steamworks/Client/Voice.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/Facepunch.Steamworks/Client/Voice.cs b/Facepunch.Steamworks/Client/Voice.cs index 639b430..d7fbbb7 100644 --- a/Facepunch.Steamworks/Client/Voice.cs +++ b/Facepunch.Steamworks/Client/Voice.cs @@ -102,7 +102,15 @@ namespace Facepunch.Steamworks uint bufferRegularLastWrite = 0; uint bufferCompressedLastWrite = 0; - var result = client.native.user.GetVoice( OnCompressedData != null, ReadCompressedBuffer, ReadBufferSize, out bufferCompressedLastWrite, + var result = client.native.user.GetAvailableVoice( out bufferCompressedLastWrite, out bufferRegularLastWrite, DesiredSampleRate == 0 ? OptimalSampleRate : DesiredSampleRate ); + + if ( result == SteamNative.VoiceResult.NotRecording || result == SteamNative.VoiceResult.NotInitialized ) + { + IsRecording = false; + return; + } + + result = client.native.user.GetVoice( OnCompressedData != null, ReadCompressedBuffer, ReadBufferSize, out bufferCompressedLastWrite, OnUncompressedData != null, (IntPtr) ReadUncompressedBuffer, ReadBufferSize, out bufferRegularLastWrite, DesiredSampleRate == 0 ? OptimalSampleRate : DesiredSampleRate );