SpeechRecognitionEngine.SetInputToWaveFile(String) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Konfiguruje SpeechRecognitionEngine obiekt do odbierania danych wejściowych z pliku Wave audio format (. wav).
public:
void SetInputToWaveFile(System::String ^ path);
public void SetInputToWaveFile (string path);
member this.SetInputToWaveFile : string -> unit
Public Sub SetInputToWaveFile (path As String)
Parametry
- path
- String
Ścieżka pliku do użycia jako dane wejściowe.
Przykłady
Poniższy przykład wykonuje rozpoznawanie dźwięku w pliku WAV i zapisuje rozpoznany tekst w konsoli programu.
using System;
using System.IO;
using System.Speech.Recognition;
using System.Speech.AudioFormat;
namespace SampleRecognition
{
class Program
{
static bool completed;
static void Main(string[] args)
// Initialize an in-process speech recognition engine.
{
using (SpeechRecognitionEngine recognizer =
new SpeechRecognitionEngine())
{
// Create and load a grammar.
Grammar dictation = new DictationGrammar();
dictation.Name = "Dictation Grammar";
recognizer.LoadGrammar(dictation);
// Configure the input to the recognizer.
recognizer.SetInputToWaveFile(@"c:\temp\SampleWAVInput.wav");
// Attach event handlers for the results of recognition.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);
recognizer.RecognizeCompleted +=
new EventHandler<RecognizeCompletedEventArgs>(recognizer_RecognizeCompleted);
// Perform recognition on the entire file.
Console.WriteLine("Starting asynchronous recognition...");
completed = false;
recognizer.RecognizeAsync();
// Keep the console window open.
while (!completed)
{
Console.ReadLine();
}
Console.WriteLine("Done.");
}
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
// Handle the SpeechRecognized event.
static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
if (e.Result != null && e.Result.Text != null)
{
Console.WriteLine(" Recognized text = {0}", e.Result.Text);
}
else
{
Console.WriteLine(" Recognized text not available.");
}
}
// Handle the RecognizeCompleted event.
static void recognizer_RecognizeCompleted(object sender, RecognizeCompletedEventArgs e)
{
if (e.Error != null)
{
Console.WriteLine(" Error encountered, {0}: {1}",
e.Error.GetType().Name, e.Error.Message);
}
if (e.Cancelled)
{
Console.WriteLine(" Operation cancelled.");
}
if (e.InputStreamEnded)
{
Console.WriteLine(" End of stream encountered.");
}
completed = true;
}
}
}
Uwagi
Jeśli aparat rozpoznawania osiągnie koniec pliku wejściowego podczas operacji rozpoznawania, operacja rozpoznawania kończy się z dostępnymi danymi wejściowymi. Wszelkie kolejne operacje rozpoznawania mogą generować wyjątek, chyba że dane wejściowe zostaną zaktualizowane do aparatu rozpoznawania.