SpeechRecognitionEngine Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет средства доступа и управления механизмом распознавания речи внутри процесса.
public ref class SpeechRecognitionEngine : IDisposable
public class SpeechRecognitionEngine : IDisposable
type SpeechRecognitionEngine = class
interface IDisposable
Public Class SpeechRecognitionEngine
Implements IDisposable
- Наследование
-
SpeechRecognitionEngine
- Реализации
Примеры
В следующем примере показана часть консольного приложения, демонстрирующее базовое распознавание речи. Поскольку в этом примере используется Multiple
режим RecognizeAsync метода, он выполняет распознавание до закрытия окна консоли или завершения отладки.
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);
}
}
}
Комментарии
Экземпляр этого класса можно создать для любого из установленных распознавателей речи. Чтобы получить сведения об установленных распознавателях, используйте статический InstalledRecognizers метод.
Этот класс предназначен для запуска модулей распознавания речи в процессе и предоставляет контроль над различными аспектами распознавания речи следующим образом.
Чтобы создать внутрипроцессный распознаватель речи, используйте один из SpeechRecognitionEngine конструкторов.
Для управления грамматиками распознавания речи используйте LoadGrammar LoadGrammarAsync методы,, UnloadGrammar и UnloadAllGrammars , а также Grammars свойство.
Чтобы настроить входные данные для распознавателя, используйте SetInputToAudioStream метод,,, SetInputToDefaultAudioDevice SetInputToNull SetInputToWaveFile или SetInputToWaveStream .
Чтобы выполнить распознавание речи, используйте Recognize RecognizeAsync метод или.
Чтобы изменить способ распознавания методом бездействия или непредвиденного ввода, BabbleTimeout Используйте InitialSilenceTimeout свойства,, EndSilenceTimeout и EndSilenceTimeoutAmbiguous .
Чтобы изменить число альтернативных вариантов, возвращаемых распознавателем, используйте MaxAlternates свойство. Распознаватель возвращает результаты распознавания в RecognitionResult объект.
Чтобы синхронизировать изменения распознавателя, используйте RequestRecognizerUpdate метод. Распознаватель использует более одного потока для выполнения задач.
Чтобы эмулировать входные данные распознавателя, используйте EmulateRecognize EmulateRecognizeAsync методы и.
SpeechRecognitionEngineОбъект предназначен для единственного использования процесса, создающего экземпляр объекта. И наоборот, SpeechRecognizer использует один распознаватель с любым приложением, которое хочет его использовать.
Примечание
Всегда вызывайте, Dispose прежде чем вы освободите последнюю ссылку на распознаватель речи. В противном случае ресурсы, которые он использует, не будут освобождены до тех пор, пока сборщик мусора не вызовет метод объекта распознавателя Finalize
.
Конструкторы
SpeechRecognitionEngine() |
Инициализирует новый экземпляр класса SpeechRecognitionEngine, используя распознаватель речи по умолчанию для системы. |
SpeechRecognitionEngine(CultureInfo) |
Инициализирует новый экземпляр класса SpeechRecognitionEngine, используя распознаватель речи по умолчанию для указанного языкового стандарта. |
SpeechRecognitionEngine(RecognizerInfo) |
Инициализирует новый экземпляр класса SpeechRecognitionEngine, используя информацию в объекте RecognizerInfo для указания средства распознавания, которое необходимо использовать. |
SpeechRecognitionEngine(String) |
Инициализирует новый экземпляр класса SpeechRecognitionEngine с заданным строковым параметром, задающим имя средства распознавания, которое необходимо использовать. |
Свойства
AudioFormat |
Получает формат аудио, принимаемого объектом SpeechRecognitionEngine. |
AudioLevel |
Получает уровень звука, принимаемого объектом SpeechRecognitionEngine. |
AudioPosition |
Получает текущую позицию в аудиопотоке, создаваемом устройством, которое предоставляет входные данные для SpeechRecognitionEngine. |
AudioState |
Получает состояние звука, принимаемого объектом SpeechRecognitionEngine. |
BabbleTimeout |
Получает или задает интервал времени, в течение которого SpeechRecognitionEngine принимает входные данные, содержащие только фоновый шум, прежде чем финализировать распознавание. |
EndSilenceTimeout |
Получает или задает интервал молчания, который SpeechRecognitionEngine будет принимать в конце однозначных вводных данных, прежде чем финализировать операцию распознавания. |
EndSilenceTimeoutAmbiguous |
Получает или задает интервал молчания, который SpeechRecognitionEngine будет принимать в конце неоднозначных входных данных, прежде чем финализировать операцию распознавания. |
Grammars |
Получает коллекцию объектов Grammar, загруженных в данных экземпляр SpeechRecognitionEngine. |
InitialSilenceTimeout |
Получает или задает интервал времени, в течение которого SpeechRecognitionEngine принимает входные данные, содержащие только молчание, прежде чем финализировать распознавание. |
MaxAlternates |
Получает или задает максимальное количество альтернативных результатов распознавания, которые SpeechRecognitionEngine возвращает для каждой операции распознавания. |
RecognizerAudioPosition |
Получает текущую позицию SpeechRecognitionEngine в обрабатываемых им входных аудиоданных. |
RecognizerInfo |
Получает сведения о текущем экземпляре SpeechRecognitionEngine. |
Методы
Dispose() |
Удаляет объект SpeechRecognitionEngine. |
Dispose(Boolean) |
Удаляет объект SpeechRecognitionEngine и освобождает ресурсы, используемые во время сеанса. |
EmulateRecognize(RecognizedWordUnit[], CompareOptions) |
Эмулирует ввод конкретных слов в распознаватель речи, используя текст вместо аудио для синхронного распознавания речи, и указывает способ обработки распознавателем сравнения Юникода между словами и загруженными грамматиками распознавания речи. |
EmulateRecognize(String) |
Эмулирует ввод фразы в распознаватель речи, используя текст вместо аудио для синхронного распознавания речи. |
EmulateRecognize(String, CompareOptions) |
Эмулирует ввод фразы в распознаватель речи, используя текст вместо аудио для синхронного распознавания речи, и указывает способ обработки распознавателем сравнения Юникода между фразой и загруженными грамматиками распознавания речи. |
EmulateRecognizeAsync(RecognizedWordUnit[], CompareOptions) |
Эмулирует ввод конкретных слов в общий распознаватель речи, используя массив объектов RecognizedWordUnit вместо аудио для асинхронного распознавания речи, и указывает способ обработки распознавателем сравнения Юникода между словами и загруженными грамматиками распознавания речи. |
EmulateRecognizeAsync(String) |
Эмулирует ввод фразы в распознаватель речи, используя текст вместо аудио для асинхронного распознавания речи. |
EmulateRecognizeAsync(String, CompareOptions) |
Эмулирует ввод фразы в распознаватель речи, используя текст вместо аудио для асинхронного распознавания речи, и указывает способ обработки распознавателем сравнения Юникода между фразой и загруженными грамматиками распознавания речи. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
InstalledRecognizers() |
Возвращает сведения для всех установленных распознавателей речи в текущей системе. |
LoadGrammar(Grammar) |
Выполняет синхронную загрузку объекта Grammar. |
LoadGrammarAsync(Grammar) |
Выполняет асинхронную загрузку грамматики распознавания речи. |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
QueryRecognizerSetting(String) |
Возвращает значения параметров для распознавателя. |
Recognize() |
Выполняет синхронную операцию распознавания речи. |
Recognize(TimeSpan) |
Выполняет синхронную операцию распознавания речи с указанным начальным временем ожидания бездействия. |
RecognizeAsync() |
Выполняет одиночную, асинхронную операцию распознавания речи. |
RecognizeAsync(RecognizeMode) |
Выполняет одну или несколько асинхронных операций распознавания речи. |
RecognizeAsyncCancel() |
Останавливает асинхронное распознавание без ожидания завершения текущей операции распознавания. |
RecognizeAsyncStop() |
Останавливает асинхронное распознавание после завершения текущей операции распознавания. |
RequestRecognizerUpdate() |
Запрашивает, чтобы распознаватель приостановил обновления состояния. |
RequestRecognizerUpdate(Object) |
Запрашивает, чтобы распознаватель приостановил обновление состояния и предоставил токен пользователя для связанного события. |
RequestRecognizerUpdate(Object, TimeSpan) |
Запрашивает, чтобы распознаватель приостановил обновление состояния и предоставил смещение и токен пользователя для связанного события. |
SetInputToAudioStream(Stream, SpeechAudioFormatInfo) |
Настраивает объект SpeechRecognitionEngine для получения входных данных из аудиопотока. |
SetInputToDefaultAudioDevice() |
Настраивает объект SpeechRecognitionEngine для получения входных данных от аудиоустройства по умолчанию. |
SetInputToNull() |
Отключает ввод в распознаватель речи. |
SetInputToWaveFile(String) |
Настраивает объект SpeechRecognitionEngine для получения входных данных из файла аудиоформата WAV. |
SetInputToWaveStream(Stream) |
Настраивает объект SpeechRecognitionEngine для получения входных данных от потока, содержащего аудиоформата WAV. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
UnloadAllGrammars() |
Выгружает все объекты Grammar из распознавателя. |
UnloadGrammar(Grammar) |
Выгружает заданный объект Grammar из экземпляра SpeechRecognitionEngine. |
UpdateRecognizerSetting(String, Int32) |
Обновляет заданный параметр для SpeechRecognitionEngine с указанным целым числом. |
UpdateRecognizerSetting(String, String) |
Обновляет указанный параметр механизма распознавания речи с заданным стоковым значением. |
События
AudioLevelUpdated |
Возникает, когда SpeechRecognitionEngine сообщает об уровне аудиовхода. |
AudioSignalProblemOccurred |
Возникает, когда SpeechRecognitionEngine обнаруживает проблему в аудиосигнале. |
AudioStateChanged |
Возникает, когда меняется состояние получаемого объектом SpeechRecognitionEngine аудио. |
EmulateRecognizeCompleted |
Возникает, если SpeechRecognitionEngine оформляет асинхронную операцию распознавания эмулированного ввода. |
LoadGrammarCompleted |
Возникает при завершении SpeechRecognitionEngine асинхронной загрузки объекта Grammar. |
RecognizeCompleted |
Возникает, если SpeechRecognitionEngine оформляет асинхронную операцию распознавания. |
RecognizerUpdateReached |
Вызывается, когда исполняемый механизм SpeechRecognitionEngine приостанавливается, чтобы принять изменения. |
SpeechDetected |
Возникает, когда SpeechRecognitionEngine обнаруживает введенные данные, которые могут быть идентифицированы как речь. |
SpeechHypothesized |
Возникает, когда SpeechRecognitionEngine распознал слово или слова, которые могут являться нескольких составных фраз в грамматике. |
SpeechRecognitionRejected |
Возникает, когда SpeechRecognitionEngine получает ввод, не соответствующий ни одному из загруженных и включенных объектов Grammar. |
SpeechRecognized |
Возникает, когда SpeechRecognitionEngine получает ввод, соответствующий любому из загруженных и включенных объектов Grammar. |