我正在使用 Web Audio Api ( navigator.getUserMedia({audio: true}, function, function) ) 进行音频录制。
如果用户有多个麦克风设备,我可以选择所需的录音设备吗?
我遇到过一个有问题的情况,一台全新的戴尔笔记本电脑(运行 Windows 8.1)有 2 个麦克风设备(板载和外部),并且外部设备设置为默认值(由操作系统设置为默认值)。
正如预期的那样,录音时,输入来自外部麦克风,这意味着 - 静音 - 没有实际输入。
我可以通过技术解决这个问题并从车载设备捕获音频吗?
在搜索时我发现这个问题其中谈到检测声卡。
从答案来看:
您无法控制延迟。您无法检测实际的声音设备。您所能确定的只是浏览器是否允许您访问音频通道以及有多少个通道。我还发现,无论另一边是什么,Chrome 只会打开一个立体声通道。 (它还将单声道设备视为立体声,将第一个通道复制到 L 和 R 通道。) Firefox 也有类似的问题。
录音设备截图-https://i.stack.imgur.com/jUrCw.jpg(还不能添加实际照片)
将不胜感激的建议。
谢谢!
阿维。
您想要使用设备枚举和 deviceid 约束。根据 @cwilso 的回答,https://webaudiodemos.appspot.com/input/index.html是一个在 Chrome 中运行的示例。如果您更改操作系统中的默认麦克风,Chromeshould捡起来。
Firefox 正在添加 deviceId 和约束,但尚未发布。目前在 Firefox 上user如果他们在批准时未选择“始终允许”,则可以选择任何音频设备作为输入(如果选择了,则将选择默认设备而不询问用户)。请注意,“始终允许”需要通过 https 加载,并且这不是默认操作(与 Chrome 不同)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)