国外客户讲英语非常快,teams或者zoom会议的时候,好多都听不懂,当然主要原因是因为自己英语水平菜。
Teams和zoom现在会议的时候也有实时字幕选项了,理论上本文终结:)
那么,有没有一种实时字幕的软件呢?有,百度,科大讯飞都有此类产品。各种云服务也有此类API,自己也可以写一个简单的软件使用。
但是,以上都是付费的。
白嫖可以吗?
ref:https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia
跑起来,脑瓜子嗡嗡的,因为录的是系统输出的音频,而这个输出包含和你,然后就无限循环了。
除了音质一言难尽之外,实时字幕并没有出来。
1.通过麦克风输入英文speech,使用该代码,没有回声且能正常播放的情况下,实时字幕依然不会弹出。
2.而在网页中指定audio的source,比如abc.mp3,即使把audio mute后,字幕依然会出现。
所以,Chrome自带的Live Caption出现,并不是“听”到了声音,而是大约通过Chrome检测到了"audio resource", audio stream好像并不可以,所以也注定我下面的尝试会失败。
这是个思路,做个本机的语音聊天,只不过是应用程序互相聊天而已,且是一个(Teams)说一个(Chrome)听而已。
通信双方使用WebSocket通信,服务端还是捕获系统音频流,实时传回到客户端(网页)然后播放。
这里使用了两个好用且强大的开源产品
websocket-sharp: https://github.com/sta/websocket-sharp
NAudio: https://github.com/naudio/NAudio
放上半成品代码:https://github.com/Luzemin/WebPagePlaySystemAudioStream
效果和刚才一样,录音回声问题,以及实时字幕未出来。
非要说有办法,那就是使用
ref: https://stackoverflow.com/questions/31623824/how-to-capture-audio-from-specific-application-and-route-to-specific-audio-devic
我没有尝试。换个关键词看看了,无意看到
ref:https://developer.mozilla.org/en-US/docs/Web/API/Web_Speech_API/Using_the_Web_Speech_API
Chrome25+就有了该接口:
https://developers.google.com/web/updates/2013/01/Voice-Driven-Web-Apps-Introduction-to-the-Web-Speech-API
官方在线demo:
https://www.google.com/intl/en/chrome/demos/speech.html
CodePen demo:
https://codepen.io/davatron5000/pen/IKAxb
github某个实现版:
https://github.com/MidCamp/live-captioning