Ustawianie limitów czasu rozpoznawania mowy

Ustaw, jak długo rozpoznawanie mowy ignoruje milczenie lub nierozpoznawalne dźwięki (babble) i kontynuuje nasłuchiwanie danych wejściowych mowy.

Ważna

Rozpoznawanie mowy wymaga tożsamości pakietu MSIX. Interfejsy API Windows.Media.SpeechRecognition są dostępne tylko wtedy, gdy aplikacja działa z identyfikatorem pakietu (spakietowana lub spakietowana z lokalizacją zewnętrzną). Aplikacje rozpakowane nie mogą używać tych interfejsów API.

Kluczowe interfejsy API

Przegląd

Właściwość SpeechRecognizer.Timeouts zwraca SpeechRecognizerTimeouts obiekt z trzema konfigurowalnymi TimeSpan wartościami:

Property Description
InitialSilenceTimeout Jak długo SpeechRecognizer nasłuchuje ciszy, zanim uzna, że nie nadejdzie żadna wypowiedź, i zwróci pusty wynik.
EndSilenceTimeout Jak długo SpeechRecognizer nasłuchuje ciszy po rozpoznaniu mowy, zanim sfinalizuje wynik.
Babbletimeout Jak długo SpeechRecognizer będzie nadal nasłuchiwać nierozpoznawalnych dźwięków (babble), zanim uzna, że wejście mowy zostało zakończone, i sfinalizuje operację rozpoznawania.

Ustawianie wartości limitu czasu

// Set the initial silence timeout to 6 seconds.
speechRecognizer.Timeouts.InitialSilenceTimeout = TimeSpan.FromSeconds(6.0);

// Set the end silence timeout to 1.2 seconds.
speechRecognizer.Timeouts.EndSilenceTimeout = TimeSpan.FromSeconds(1.2);

// Set the babble timeout to 0 (infinite — keep listening).
speechRecognizer.Timeouts.BabbleTimeout = TimeSpan.FromSeconds(0);

Note

Wartości limitu czasu są ustawiane w obiekcie SpeechRecognizer przed rozpoczęciem sesji rozpoznawania. Zmiany po rozpoczęciu sesji nie mają wpływu do następnej sesji.