2013-02-07 33 views
3

正如標題所說,如果我有一個音頻節點發出聲音,並將其連接到兩個單獨的GainNode,後者又連接到音頻上下文目的地,聲音以雙倍速度/雙倍音高播放(彷彿將一半採樣發送到一個增益節點並將一半採樣發送到另一個,並且時間也減半)。Web音頻節點連接到兩個增益節點,連接到目標,重複速度/音調

我創建了一個方便的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); 

這是由設計?我想要的是完全「複製」聲音(將發送到兩個不同的路線,小提琴只是一個更大項目的概念驗證)。

編輯:

  • 我測試了在Chrome版本24.0.1312.56/Ubuntu的12.10和行爲是存在的。
  • Chrome上的行爲也存在版本24.0.1312.68/Ubuntu 12.10
  • 在Chrome版本24.0.1312.57/Mac OSX上,音頻API運行良好,並且此行爲不存在。

難道這是一個Linux專用的問題嗎?

回答

1

聽起來像是一個Linux實現問題。它適用於OS X上的Chrome。

+1

順便說一句,我強烈建議您在https://code.google.com/p/chromium/issues/list上提交錯誤。向前移動網頁。 –

+0

我嘗試過,但問題嚮導在提交時仍在響應400錯誤。 – janesconference

+0

報告:https://code.google.com/p/chromium/issues/detail?id=176808&thanks=176808&ts=1361187635 – janesconference