SpeechRecognitionEngine Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Ger möjlighet att komma åt och hantera en processbaserad taligenkänningsmotor.
public ref class SpeechRecognitionEngine : IDisposable
public class SpeechRecognitionEngine : IDisposable
type SpeechRecognitionEngine = class
interface IDisposable
Public Class SpeechRecognitionEngine
Implements IDisposable
- Arv
-
SpeechRecognitionEngine
- Implementeringar
Exempel
I följande exempel visas en del av ett konsolprogram som visar grundläggande taligenkänning. Eftersom det här exemplet använder Multiple metodens läge RecognizeAsync utför det igenkänning tills du stänger konsolfönstret eller slutar felsöka.
using System;
using System.Speech.Recognition;
namespace SpeechRecognitionApp
{
class Program
{
static void Main(string[] args)
{
// Create an in-process speech recognizer for the en-US locale.
using (
SpeechRecognitionEngine recognizer =
new SpeechRecognitionEngine(
new System.Globalization.CultureInfo("en-US")))
{
// Create and load a dictation grammar.
recognizer.LoadGrammar(new DictationGrammar());
// Add a handler for the speech recognized event.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);
// Configure input to the speech recognizer.
recognizer.SetInputToDefaultAudioDevice();
// Start asynchronous, continuous speech recognition.
recognizer.RecognizeAsync(RecognizeMode.Multiple);
// Keep the console window open.
while (true)
{
Console.ReadLine();
}
}
}
// Handle the SpeechRecognized event.
static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
Console.WriteLine("Recognized text: " + e.Result.Text);
}
}
}
Kommentarer
Du kan skapa en instans av den här klassen för någon av de installerade taligenkänningarna. Om du vill få information om vilka identifierare som är installerade använder du den statiska InstalledRecognizers metoden.
Den här klassen är avsedd för att köra taligenkänningsmotorer i processen och ger kontroll över olika aspekter av taligenkänning på följande sätt:
Om du vill skapa en taligenkänning i processen använder du någon av konstruktorerna SpeechRecognitionEngine .
Om du vill hantera grammatik för taligenkänning använder du LoadGrammarmetoderna , LoadGrammarAsync, UnloadGrammaroch UnloadAllGrammars och Grammars egenskapen .
Om du vill konfigurera indata till identifieraren använder du SetInputToAudioStreammetoden , SetInputToDefaultAudioDevice, SetInputToNull, SetInputToWaveFileeller SetInputToWaveStream .
Använd metoden eller Recognize för att utföra taligenkänningRecognizeAsync.
Om du vill ändra hur igenkänning hanterar tystnad eller oväntade indata använder du BabbleTimeoutegenskaperna , InitialSilenceTimeout, EndSilenceTimeoutoch EndSilenceTimeoutAmbiguous .
Om du vill ändra antalet alternativ som identifieraren returnerar använder du MaxAlternates egenskapen . Identifieraren returnerar igenkänningsresultat i ett RecognitionResult objekt.
Om du vill synkronisera ändringar i identifieraren använder du RequestRecognizerUpdate -metoden. Identifieraren använder mer än en tråd för att utföra uppgifter.
Använd metoderna och EmulateRecognize för att emulera indata till identifierarenEmulateRecognizeAsync.
Objektet SpeechRecognitionEngine är endast för användning av den process som instansierade objektet. Däremot delar de SpeechRecognizer en enda identifierare med alla program som vill använda den.
Note
Anropa Dispose alltid innan du släpper din sista referens till taligenkänningen. Annars frigörs inte de resurser som används förrän skräpinsamlaren anropar identifierarobjektets Finalize metod.
Konstruktorer
| Name | Description |
|---|---|
| SpeechRecognitionEngine() |
Initierar en ny instans av klassen med hjälp av SpeechRecognitionEngine systemets standardtaligenkänning. |
| SpeechRecognitionEngine(CultureInfo) |
Initierar en ny instans av SpeechRecognitionEngine klassen med standardtaligenkänningen för ett angivet språk. |
| SpeechRecognitionEngine(RecognizerInfo) |
Initierar en ny instans av med hjälp av SpeechRecognitionEngine informationen i ett RecognizerInfo objekt för att ange den identifierare som ska användas. |
| SpeechRecognitionEngine(String) |
Initierar en ny instans av SpeechRecognitionEngine klassen med en strängparameter som anger namnet på den identifierare som ska användas. |
Egenskaper
| Name | Description |
|---|---|
| AudioFormat |
Hämtar formatet för ljudet som tas emot av SpeechRecognitionEngine. |
| AudioLevel |
Hämtar ljudnivån som tas emot av SpeechRecognitionEngine. |
| AudioPosition |
Hämtar den aktuella platsen i ljudströmmen som genereras av enheten som tillhandahåller indata till SpeechRecognitionEngine. |
| AudioState |
Hämtar tillståndet för ljudet som tas emot av SpeechRecognitionEngine. |
| BabbleTimeout |
Hämtar eller anger det tidsintervall under vilket en SpeechRecognitionEngine accepterar indata som endast innehåller bakgrundsbrus innan igenkänningen slutförs. |
| EndSilenceTimeout |
Hämtar eller anger det tystnadsintervall som SpeechRecognitionEngine accepteras i slutet av entydiga indata innan en igenkänningsåtgärd slutförs. |
| EndSilenceTimeoutAmbiguous |
Hämtar eller anger det tystnadsintervall som SpeechRecognitionEngine ska accepteras i slutet av tvetydiga indata innan en igenkänningsåtgärd slutförs. |
| Grammars |
Hämtar en samling av de objekt som läses in i den här Grammar instansenSpeechRecognitionEngine. |
| InitialSilenceTimeout |
Hämtar eller anger det tidsintervall under vilket en SpeechRecognitionEngine accepterar indata som endast innehåller tystnad innan igenkänningen slutförs. |
| MaxAlternates |
Hämtar eller anger det maximala antalet alternativa igenkänningsresultat som returneras SpeechRecognitionEngine för varje igenkänningsåtgärd. |
| RecognizerAudioPosition |
Hämtar den aktuella platsen för SpeechRecognitionEngine den i ljudindata som bearbetas. |
| RecognizerInfo |
Hämtar information om den aktuella instansen av SpeechRecognitionEngine. |
Metoder
| Name | Description |
|---|---|
| Dispose() |
Bortser från SpeechRecognitionEngine objektet. |
| Dispose(Boolean) |
Bortser från objektet SpeechRecognitionEngine och frigör resurser som används under sessionen. |
| EmulateRecognize(RecognizedWordUnit[], CompareOptions) |
Emulerar indata från specifika ord till taligenkänningen, med hjälp av text i stället för ljud för synkron taligenkänning, och anger hur identifieraren hanterar Unicode-jämförelse mellan orden och den inlästa taligenkänningens grammatik. |
| EmulateRecognize(String, CompareOptions) |
Emulerar indata från en fras till taligenkänningen, med hjälp av text i stället för ljud för synkron taligenkänning, och anger hur identifieraren hanterar Unicode-jämförelse mellan frasen och den inlästa taligenkänningens grammatik. |
| EmulateRecognize(String) |
Emulerar indata från en fras till taligenkänningen med hjälp av text i stället för ljud för synkron taligenkänning. |
| EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions) |
Emulerar indata från specifika ord till taligenkänningen med hjälp av en matris med RecognizedWordUnit objekt i stället för ljud för asynkron taligenkänning och anger hur identifieraren hanterar Unicode-jämförelse mellan ord och inlästa grammatiker för taligenkänning. |
| EmulateRecognizeAsync(String, CompareOptions) |
Emulerar indata från en fras till taligenkänningen med hjälp av text i stället för ljud för asynkron taligenkänning och anger hur identifieraren hanterar Unicode-jämförelse mellan frasen och den inlästa taligenkänningens grammatik. |
| EmulateRecognizeAsync(String) |
Emulerar indata från en fras till taligenkänningen med hjälp av text i stället för ljud för asynkron taligenkänning. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| InstalledRecognizers() |
Returnerar information för alla installerade taligenkänningsprogram i det aktuella systemet. |
| LoadGrammar(Grammar) |
Läser synkront in ett Grammar objekt. |
| LoadGrammarAsync(Grammar) |
Läser asynkront in en grammatik för taligenkänning. |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| QueryRecognizerSetting(String) |
Returnerar värdena för inställningarna för identifieraren. |
| Recognize() |
Utför en synkron taligenkänningsåtgärd. |
| Recognize(TimeSpan) |
Utför en synkron taligenkänningsåtgärd med en angiven tidsgräns för inledande tystnad. |
| RecognizeAsync() |
Utför en enda asynkron taligenkänningsåtgärd. |
| RecognizeAsync(RecognizeMode) |
Utför en eller flera asynkrona taligenkänningsåtgärder. |
| RecognizeAsyncCancel() |
Avslutar asynkron igenkänning utan att vänta på att den aktuella igenkänningsåtgärden ska slutföras. |
| RecognizeAsyncStop() |
Stoppar asynkron igenkänning när den aktuella igenkänningsåtgärden har slutförts. |
| RequestRecognizerUpdate() |
Begär att identifieraren pausar för att uppdatera sitt tillstånd. |
| RequestRecognizerUpdate(Object, TimeSpan) |
Begär att identifieraren pausar för att uppdatera sitt tillstånd och tillhandahåller en förskjutning och en användartoken för den associerade händelsen. |
| RequestRecognizerUpdate(Object) |
Begär att identifieraren pausar för att uppdatera sitt tillstånd och tillhandahåller en användartoken för den associerade händelsen. |
| SetInputToAudioStream(Stream, SpeechAudioFormatInfo) |
Konfigurerar objektet SpeechRecognitionEngine för att ta emot indata från en ljudström. |
| SetInputToDefaultAudioDevice() |
Konfigurerar objektet SpeechRecognitionEngine för att ta emot indata från standardljudenheten. |
| SetInputToNull() |
Inaktiverar indata till taligenkänningen. |
| SetInputToWaveFile(String) |
Konfigurerar objektet SpeechRecognitionEngine för att ta emot indata från en Waveform-ljudformatfil (.wav). |
| SetInputToWaveStream(Stream) |
Konfigurerar objektet SpeechRecognitionEngine för att ta emot indata från en ström som innehåller Waveform-ljudformatdata (.wav). |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |
| UnloadAllGrammars() |
Tar bort alla Grammar objekt från identifieraren. |
| UnloadGrammar(Grammar) |
Tar bort ett angivet Grammar objekt från instansen SpeechRecognitionEngine . |
| UpdateRecognizerSetting(String, Int32) |
Uppdaterar den angivna inställningen för SpeechRecognitionEngine med det angivna heltalsvärdet. |
| UpdateRecognizerSetting(String, String) |
Uppdaterar den angivna inställningen för taligenkänningsmotorn med det angivna strängvärdet. |
Händelser
| Name | Description |
|---|---|
| AudioLevelUpdated |
Upphöjt när SpeechRecognitionEngine rapporterar nivån för dess ljudindata. |
| AudioSignalProblemOccurred |
Utlöses när detekterar SpeechRecognitionEngine ett problem i ljudsignalen. |
| AudioStateChanged |
Utlöses när tillståndet ändras i ljudet som tas emot av SpeechRecognitionEngine. |
| EmulateRecognizeCompleted |
Utlöses när SpeechRecognitionEngine slutför en asynkron igenkänningsåtgärd för emulerade indata. |
| LoadGrammarCompleted |
Utlöses när SpeechRecognitionEngine den asynkrona inläsningen av ett Grammar objekt har slutförts. |
| RecognizeCompleted |
Utlöses när slutför SpeechRecognitionEngine en asynkron igenkänningsåtgärd. |
| RecognizerUpdateReached |
Upphöjt när en körning SpeechRecognitionEngine pausar för att acceptera ändringar. |
| SpeechDetected |
Utlöses när den SpeechRecognitionEngine identifierar indata som kan identifieras som tal. |
| SpeechHypothesized |
Upphöjt när SpeechRecognitionEngine har identifierat ett ord eller ord som kan vara en komponent i flera fullständiga fraser i en grammatik. |
| SpeechRecognitionRejected |
Utlöses när de SpeechRecognitionEngine tar emot indata som inte matchar något av dess inlästa och aktiverade Grammar objekt. |
| SpeechRecognized |
Utlöses när de SpeechRecognitionEngine tar emot indata som matchar något av dess inlästa och aktiverade Grammar objekt. |