Impostare i timeout di riconoscimento vocale

Impostare per quanto tempo un riconoscimento vocale ignora il silenzio o i suoni non riconoscibili (babble) e continua l'ascolto dell'input vocale.

Importante

Il riconoscimento vocale richiede l'identità del pacchetto MSIX. Le Windows.Media.SpeechRecognition API sono disponibili solo quando l'app viene eseguita con l'identità del pacchetto (in pacchetto o in pacchetto con posizione esterna). Le app non in pacchetto non possono usare queste API.

API chiave

Overview

La SpeechRecognizer.Timeouts proprietà restituisce un SpeechRecognizerTimeouts oggetto con tre valori configurabili TimeSpan :

Property Description
InitialSilenceTimeout Per quanto tempo SpeechRecognizer rimane in ascolto del silenzio prima di concludere che non è in arrivo alcun parlato e finalizzare un risultato vuoto.
EndSilenceTimeout Per quanto tempo SpeechRecognizer resta in ascolto del silenzio dopo aver riconosciuto il parlato prima di finalizzare il risultato.
BabbleTimeout Per quanto tempo SpeechRecognizer continua ad ascoltare suoni irriconoscibili (babble) prima di presumere che l'input vocale sia terminato e finalizzare l'operazione di riconoscimento.

Impostare i valori di timeout

// 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

I valori di timeout vengono impostati su SpeechRecognizer prima di avviare la sessione di riconoscimento. Le modifiche dopo l'avvio di una sessione non hanno alcun effetto fino alla sessione successiva.