正如标题所说,如果我有一个发出声音的音频节点,我将它连接到两个独立的GainNodes,后者又连接到音频上下文目的地,声音以双倍速/双音调播放(就像一半样本被发送到一个增益节点,一半样本发送到另一个,时间也减半。
我创建了一个方便的jsfiddle here,只需将您的声音文件拖到黑色矩形画布中然后聆听。
// audioContext: Web Audio context
// decoded: decoded audioBuffer
// gainNode1, gainNode2: gain nodes
var bSrc = audioContext.createBufferSource();
bSrc.connect (gainNode1);
bSrc.connect (gainNode2);
gainNode1.connect (audioContext.destination);
gainNode2.connect (audioContext.destination);
bSrc.buffer = decoded;
bSrc.loop = false;
// You'll hear two double-speed buffers playing at unison
bSrc.start(0);
这是设计吗?我想要的是完全“复制”声音(将发送到两个不同的路线,小提琴只是一个更大项目的概念验证)。
编辑:
这可能是仅限Linux的问题吗?
答案 0 :(得分:1)
听起来像Linux实施问题。它适用于OS X上的Chrome。