javascript - Azure 语音翻译:如何仅在检测到语音时激活识别?
问题描述
我目前正在开发一个实时翻译 Web 应用程序,允许多个参与者使用Azure 语音翻译并以多种语言共享他们的转录。
我不想为会议期间的参与者数量 X 付费。因此问题是:如何仅在检测到语音时激活识别?这样,我只会为当前发言的人付费。
我尝试使用TranslationRecognizer 类speechStartDetected
中的事件,但此事件似乎仅在识别器当前正在识别时触发(使用or )recognizeOnceAsync()
startContinuousRecognitionAsync()
语音 SDK 中是否有任何参数可以用来实现我想要的?如果没有,我有什么选择?
可能可以观察音频分贝水平并相应地激活连续识别,但我想如果我尝试这样做会遇到一些问题。例如:一旦音频电平在一定时间内达到一定水平,这将触发startContinuousRecognitionAsync()
,但它会错过演讲的开头......</p>
提前致谢!
解决方案
实时通话的实时语音到文本解决方案,使用语音到文本,您可以根据您转录的音频小时数按需付费。了解在https://docs.microsoft.com/en-us/azure/billing/billing-download-azure-invoice-daily-usage-date查看您的账单发票和使用数据