summaryrefslogtreecommitdiffstats
path: root/WhisperNet
diff options
context:
space:
mode:
Diffstat (limited to 'WhisperNet')
-rw-r--r--WhisperNet/API/eSpeakerChannel.cs15
-rw-r--r--WhisperNet/Internal/iContext.cs4
2 files changed, 19 insertions, 0 deletions
diff --git a/WhisperNet/API/eSpeakerChannel.cs b/WhisperNet/API/eSpeakerChannel.cs
new file mode 100644
index 0000000..edb96e0
--- /dev/null
+++ b/WhisperNet/API/eSpeakerChannel.cs
@@ -0,0 +1,15 @@
+namespace Whisper
+{
+ /// <summary>Output value for iContext.detectSpeaker method</summary>
+ public enum eSpeakerChannel: byte
+ {
+ /// <summary>Unable to detect</summary>
+ Unsure = 0,
+ /// <summary>The speech was mostly in the left channel</summary>
+ Left = 1,
+ /// <summary>The speech was mostly in the right channel</summary>
+ Right = 2,
+ /// <summary>The audio only has 1 channel</summary>
+ NoStereoData = 0xFF,
+ }
+} \ No newline at end of file
diff --git a/WhisperNet/Internal/iContext.cs b/WhisperNet/Internal/iContext.cs
index 6adf8c5..010c139 100644
--- a/WhisperNet/Internal/iContext.cs
+++ b/WhisperNet/Internal/iContext.cs
@@ -21,6 +21,10 @@ namespace Whisper.Internal
[RetValIndex( 1 )]
iTranscribeResult getResults( eResultFlags flags );
+ /// <summary>Try to detect speaker by comparing channels of the stereo PCM data</summary>
+ [RetValIndex( 1 )]
+ eSpeakerChannel detectSpeaker( [In] ref sTimeInterval interval );
+
/// <summary>Get the model which was used to create this context</summary>
[RetValIndex]
iModel getModel();