Web音频API和多输入麦克风设备
我有一个带有4个输入麦克风的音频设备 有人知道我是否可以将所有这些输入用于Web音频APIWeb音频API和多输入麦克风设备,api,audio,web,web-audio-api,Api,Audio,Web,Web Audio Api,我有一个带有4个输入麦克风的音频设备 有人知道我是否可以将所有这些输入用于Web音频API 谢谢 调用getUserMedia四次,每次选择不同的设备,并使用createMediaStreamSource四次,虽然我还没有测试过。是的,您可以列出所有输入设备并选择一个使用 <html><body> <select id="devices_list"></select> <script> function devices_list(){
谢谢 调用getUserMedia四次,每次选择不同的设备,并使用createMediaStreamSource四次,虽然我还没有测试过。是的,您可以列出所有输入设备并选择一个使用
<html><body>
<select id="devices_list"></select>
<script>
function devices_list(){
var handleMediaSourcesList = function(list){
for(i=0;i<list.length;i++){
var device= list[i];
if(device.kind == 'audioinput') {
document.querySelector('#devices_list').options.add(new Option(device.label ,device.deviceId));
}
}
}
if (navigator["mediaDevices"] && navigator["mediaDevices"]["enumerateDevices"])
{
navigator["mediaDevices"]["enumerateDevices"]().then(handleMediaSourcesList);
}
// Old style API
else if (window["MediaStreamTrack"] && window["MediaStreamTrack"]["getSources"])
{
window["MediaStreamTrack"]["getSources"](handleMediaSourcesList);
}
}
function usemic(){
navigator.getUserMedia ({
"audio":{
"optional": [{
"sourceId": document.querySelector('#devices_list').value
}]
}}, function (stream) {
//...some code to use stream from mic
},function(err){
debuginfo('getMedia ERR:'+err.message );
});
}
</script>
</body></html>
功能设备\u列表(){
var handleMediaSourcesList=函数(列表){
对于(i=0;据我所知,WebAudio规范中还没有对此的支持。显然2019年仍然相同:(为什么每次都要选择不同的设备?在FireFox中,你似乎可以做到这一点,但在Chrome中,你无法选择设备。但是,这无助于解决使用单个设备和多个输入的问题。两种浏览器都只能看到多输入界面的前两个通道。