diff --git a/Facepunch.Steamworks.Test/Client.cs b/Facepunch.Steamworks.Test/Client.cs
index 9f1809e..c20e95e 100644
--- a/Facepunch.Steamworks.Test/Client.cs
+++ b/Facepunch.Steamworks.Test/Client.cs
@@ -57,5 +57,15 @@ public void ClientAuthSessionTicket()
Assert.IsTrue( ticket.Handle == 0 );
}
}
+
+ [TestMethod]
+ public void ClientVoiceOptimalSampleRate()
+ {
+ using ( var client = new Facepunch.Steamworks.Client( 252490 ) )
+ {
+ var rate = client.Voice.OptimalSampleRate;
+ Assert.AreNotEqual( rate, 0 );
+ }
+ }
}
}
diff --git a/Facepunch.Steamworks/Client.Voice.cs b/Facepunch.Steamworks/Client.Voice.cs
new file mode 100644
index 0000000..10d8f8e
--- /dev/null
+++ b/Facepunch.Steamworks/Client.Voice.cs
@@ -0,0 +1,33 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace Facepunch.Steamworks
+{
+ public partial class Client : IDisposable
+ {
+ private Voice _voice;
+
+ public Voice Voice
+ {
+ get
+ {
+ if ( _voice == null )
+ _voice = new Voice { client = this };
+
+ return _voice;
+ }
+ }
+ }
+
+ public class Voice
+ {
+ internal Client client;
+
+ public uint OptimalSampleRate
+ {
+ get { return client._user.GetVoiceOptimalSampleRate(); }
+ }
+ }
+}
diff --git a/Facepunch.Steamworks/Facepunch.Steamworks.csproj b/Facepunch.Steamworks/Facepunch.Steamworks.csproj
index 5732628..941eeb8 100644
--- a/Facepunch.Steamworks/Facepunch.Steamworks.csproj
+++ b/Facepunch.Steamworks/Facepunch.Steamworks.csproj
@@ -43,6 +43,7 @@
+