Passa al contenuto principale

Minimizzare i blocchi

Questa guida affronta due comuni fonti di blocchi nel plugin RuntimeSpeechRecognizer e fornisce soluzioni pratiche per mitigare l'impatto sulle prestazioni.

Onda sonora catturabile

Quando si avvia l'onda sonora catturabile utilizzando la funzione StartCapture, potresti incontrare un breve ritardo, che è specifico del motore e attualmente inevitabile senza modifiche al codice specifico del motore. La durata di questo ritardo varia tra le piattaforme, poiché è collegata all'esecuzione di codice specifico della piattaforma per il recupero dei dati audio dal dispositivo di input (microfono). Questo ritardo è stato osservato su piattaforme come Windows, Mac, Android e iOS e potrebbe essere rilevante anche per altre.

Per minimizzare questo intoppo, considera di avviare la cattura chiamando la funzione StartCapture in un momento in cui il suo impatto è trascurabile, ad esempio durante una schermata di caricamento. Immediatamente dopo aver chiamato StartCapture, utilizza la funzione ToggleMute con il parametro Mute impostato su True. E quando sei pronto per iniziare a catturare i dati audio, attiva l'onda sonora catturabile chiamando ToggleMute con il parametro Mute impostato su False. Puoi trovare maggiori informazioni rilevanti qui.

Avvia riconoscimento vocale

Quando attivi il riconoscimento vocale chiamando StartSpeechRecognition, potrebbe verificarsi un leggero blocco a causa del caricamento da parte del motore dell'asset del modello linguistico. Nonostante questo processo sia progettato per essere asincrono ed eseguito su un thread separato, il motore esegue internamente alcune operazioni sul thread di gioco, portando a un leggero ritardo percepibile, specialmente con asset di grandi dimensioni come i modelli linguistici.

Per eliminare questo blocco, attieniti allo stesso principio descritto sopra: chiama StartSpeechRecognition in un momento in cui l'impatto del ritardo è giustificabile o trascurabile, ad esempio durante una schermata di caricamento.