0
我通過在Unity 3d上使用OnAudioFilterRead方法生成一些過程音頻,並且它正在工作,因爲我可以聽到揚聲器發出的合成聲音。統一過程音頻的3d FFT頻譜
當我試圖讓合成聲音的頻譜(在同一個腳本)與
void Update()
{
float[] data = new float[2048];
audioSource.GetSpectrumData(data, 0, FFTWindow.BlackmanHarris);
}
它總是充滿data
陣列0(無例外拋出)。有什麼方法可以獲得合成音頻的真實頻譜?
也許窗口大小太大?關於函數的文檔說了什麼? – PaulD
文檔說最大尺寸是8196.我還使用該函數從相同的代碼獲得另一個譜(來自麥克風),在這種情況下該函數正在工作。 –
是否有任何功能來檢查audioSource的狀態?如果有,它會返回什麼?也許audioSource對象有刷新或空緩衝區?也許它處於無效狀態? – PaulD