0
假設我做一個簡單的畫布繪製的應用程序是這樣的:WebAudio從波點的聲音
我現在有一系列的點。我怎樣才能把它們提供給一些WebAudio對象(一個振盪器或者一個由字節數組或者其他東西構成的聲音)來實際生成並播放一個波(在這個例子中是一個正弦波)?它背後的理論是什麼?
假設我做一個簡單的畫布繪製的應用程序是這樣的:WebAudio從波點的聲音
我現在有一系列的點。我怎樣才能把它們提供給一些WebAudio對象(一個振盪器或者一個由字節數組或者其他東西構成的聲音)來實際生成並播放一個波(在這個例子中是一個正弦波)?它背後的理論是什麼?
如果你有一個數組,Y從圖表中的資料,你可以這樣做
var buffer = context.createBuffer(1, y.length, context.sampleRate);
buffer.copyToChannel(y);
var src = context.createBufferSource();
src.buffer = buffer;
src.start()
您可能需要context.createBuffer
設置採樣率比context.sampleRate
其他的東西,具體取決於數據從你的圖表。
哇,謝謝。數組中的值應該在什麼範圍內?他們代表什麼?我的意思是,它們是否應該減少到-1/+1這樣的頻率,因此頻率在200/1000左右,或者是什麼? – pistacchio
這些值應該在-1到+1的範圍內。這些值應該是所需波形的時間樣本,而不是頻率。 –
非常感謝:) – pistacchio