所以这是一个棘手的问题。
我希望编写一个Web应用程序,记录用户所说的一句话,然后将样本发送到服务器端进行处理。
我想到的算法如下:
我认为 Java、C# 和其他高级语言中有多种语音活动检测解决方案。 然而,我希望这部分在客户端完成(否则,我将不得不从客户端发送太多数据到服务器,这是非常低效的)IE 在 javascript 和 HTML5 中。
我不是经验丰富的网络开发人员,所以我的问题是: 这可行吗?有这样的图书馆吗(我还没有找到)? 解决这个问题的最佳方法是什么?
这里有一个很好的 vad npm,支持浏览器:
https://www.npmjs.com/package/@ricky0123/vad
您需要添加 CDN:
<script src="https://cdn.jsdelivr.net/npm/onnxruntime-web/dist/ort.js"></script>
<script src="https://cdn.jsdelivr.net/npm/@ricky0123/vad/dist/index.browser.js"></script>
<script>
async function startVad(){
const myvad = await vad.MicVAD.new({
onFrameProcessed: (probabilities) => {
},
onSpeechStart: () => {},
onVADMisfire: () => {},
onSpeechEnd: (audio) => {console.log("spoke");},
})
myvad.start()
}
startVad();
</script>