System.Speech 9.0.0-preview.2.24128.5
About
Provides APIs for speech recognition and synthesis built on the Microsoft Speech API in Windows. Not supported on other platforms.
This package is provided primarily for compatibility with code being ported from .NET Framework and is not accepting new features.
Key Features
- Recognize speech as text in a given language and grammar.
- Synthesize text as speech.
- Support for Speech Recognition Grammar v1.0 documents
How to Use
Synthesis example
using System.Speech.Synthesis;
// Initialize a new instance of the SpeechSynthesizer.
SpeechSynthesizer synth = new SpeechSynthesizer();
// Configure the audio output.
synth.SetOutputToDefaultAudioDevice();
// Speak a string, synchronously
synth.Speak("Hello World!");
// Speak a string asynchronously
var prompt = synth.SpeakAsync("Goodnight Moon!");
while (!prompt.IsCompleted)
{
Console.WriteLine("speaking...");
Thread.Sleep(500);
}
Recognition example
// Create a new SpeechRecognitionEngine instance.
using SpeechRecognizer recognizer = new SpeechRecognizer();
using ManualResetEvent exit = new ManualResetEvent(false);
// Create a simple grammar that recognizes "red", "green", "blue", or "exit".
Choices choices = new Choices();
choices.Add(new string[] { "red", "green", "blue", "exit" });
// Create a GrammarBuilder object and append the Choices object.
GrammarBuilder gb = new GrammarBuilder();
gb.Append(choices);
// Create the Grammar instance and load it into the speech recognition engine.
Grammar g = new Grammar(gb);
recognizer.LoadGrammar(g);
// Register a handler for the SpeechRecognized event.
recognizer.SpeechRecognized += (s, e) =>
{
Console.WriteLine($"Recognized: {e.Result.Text}, Confidence: {e.Result.Confidence}");
if (e.Result.Text == "exit")
{
exit.Set();
}
};
// Emulate
Console.WriteLine("Emulating \"red\".");
recognizer.EmulateRecognize("red");
Console.WriteLine("Speak red, green, blue, or exit please...");
exit.WaitOne();
Main Types
The main types provided by this library are:
System.Speech.Recognition.SpeechRecognizer
System.Speech.Synthesis.SpeechSynthesizer
Additional Documentation
Feedback & Contributing
System.Speech is released as open source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.
Showing the top 20 packages that depend on System.Speech.
Packages | Downloads |
---|---|
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET as well as .NET Standard.
|
7 |
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET as well as .NET Standard.
|
8 |
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET as well as .NET Standard.
|
9 |
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET as well as .NET Standard.
|
10 |
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET as well as .NET Standard.
|
11 |
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET Core as well as .NET Standard.
|
7 |
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET Core as well as .NET Standard.
|
8 |
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET Core as well as .NET Standard.
|
9 |
https://go.microsoft.com/fwlink/?LinkID=799421
.NET 8.0
- No dependencies.
.NET 9.0
- No dependencies.
.NET Standard 2.0
- No dependencies.