【发布时间】:2019-07-29 13:04:30
【问题描述】:
我在 Linux 上遇到了 Web Audio API 和 USB 音频接口的问题;
我在 Web Audio API 上写了一些音频播放器代码。
当我连接我的 7.1 USB 音频接口(TASCAM 16x08 - 有 8 个输出通道)并在 Windows 机器上启动我的应用程序时,一切都很好。 context.destination.maxChannelCount等于8,我可以选择输出声音的通道。
但是当我在 Linux 机器上做同样的事情时,context.destination.maxChannelCount 总是 2(立体声)。
我尝试过:
- 创建虚拟音频多通道设备 = 结果相同 - 始终只有 2 个 maxChannelCount;
- 设置 alsa、pulseaudio、插孔音频连接套件等...
结果是一样的:在我的代码中context.destination.maxChannelCount 始终是 2
但操作系统设置对话框检测到 8 个通道。
这是一些需要明确的代码:
var context = new (window.AudioContext || window.webkitAudioContext)();
var audio = new Audio();
var source = context.createMediaElementSource(audio);
source.connect(context.destination);
audio.src = 'audio.mp3';
audio.play();
console.log(context.destination.maxChannelCount); //output on win: 2
on linux: 8
可能是什么问题?
【问题讨论】:
标签: linux electron html5-audio web-audio-api