[编辑:此问题是关于Mozilla音频数据API,不再考虑HTML5音频API而不支持]
我正在尝试使用Mozilla音频数据API更改音频文件的填充。我还没有找到任何办法。我甚至试图将通道分开并通过不同的dbGain通过不同的过滤器而没有运气。
答案 0 :(得分:2)
更改音频文件平衡的关键是获取数据(例如立体声音乐文件)并更改右声道和左声道数据的值(幅度)。使用[i * 2]和[i * 2 + 1]可以访问右侧和左侧通道值,因为它们是连续的。
以下一个例子(我从Wiley的HTML5游戏书中复制出来):
function generateTone(freq, balance,sampleRate) {
var samples = Math.round(sampleRate / freq),
data = new Float32Array(samples *2),
var sample, i;
for (i = 0; i < samples; i++) {
sample = Math.sin(Math.PI * 2 * i / samples);
data[i * 2] = sample * (0.5 - balance);
data[i * 2 + 1] = sample * (0.5 + balance);
}
return data;
}
在你的情况下你不需要的鼻窦。 进一步的问题? 最好的祝福, 卢卡斯