in src/features/chat-page/chat-input/speech/use-speech-to-text.ts [18:61]
public async startRecognition() {
const token = await GetSpeechToken();
if (token.error) {
showError(token.errorMessage);
return;
}
this.isMicrophoneReady = true;
this.isMicrophoneUsed = true;
const speechConfig = SpeechConfig.fromAuthorizationToken(
token.token,
token.region
);
const audioConfig = AudioConfig.fromDefaultMicrophoneInput();
const autoDetectSourceLanguageConfig =
AutoDetectSourceLanguageConfig.fromLanguages([
"en-US",
"zh-CN",
"it-IT",
"pt-BR",
]);
const recognizer = SpeechRecognizer.FromConfig(
speechConfig,
autoDetectSourceLanguageConfig,
audioConfig
);
speechRecognizer = recognizer;
recognizer.recognizing = (s, e) => {
chatStore.updateInput(e.result.text);
};
recognizer.canceled = (s, e) => {
showError(e.errorDetails);
};
recognizer.startContinuousRecognitionAsync();
}