SpeechRecognitionEngine.SetInputToWaveFile(String) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee configureert u het object voor het SpeechRecognitionEngine ontvangen van invoer van een Waveform-audio-indeling (.wav).
public:
void SetInputToWaveFile(System::String ^ path);
public void SetInputToWaveFile(string path);
member this.SetInputToWaveFile : string -> unit
Public Sub SetInputToWaveFile (path As String)
Parameters
- path
- String
Het pad van het bestand dat moet worden gebruikt als invoer.
Voorbeelden
In het volgende voorbeeld wordt herkenning uitgevoerd op de audio in een .wav-bestand en wordt de herkende tekst naar de console geschreven.
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;
}
}
}
Opmerkingen
Als de recognizer het einde van het invoerbestand bereikt tijdens een herkenningsbewerking, wordt de herkenningsbewerking voltooid met de beschikbare invoer. Eventuele volgende herkenningsbewerkingen kunnen een uitzondering genereren, tenzij u de invoer bijwerkt naar de recognizer.