2011-12-08 39 views
-1

任何人都可以提供示例僞代碼或共享某些具有示例代碼的現有鏈接。如何放大某些音頻採樣,特別是放大某個頻率?

就像例如我有一個1kHz或2kHz或8kHz左右的混音,我只想實時提升某些頻率,如1kHz。

閱讀一些DSP書籍和資源讓我感到困惑。

+0

複製(相同的用戶):[這裏有人可以有一個高通濾波器的PCM音頻數據樣本?](http://stackoverflow.com/questions/7062671/can-someone-here-has-a-sample -of-high-pass-filter-for-pcm-audio-data) –

+1

另請參閱http://dsp.stackexchange.com。 –

回答

0

你只需要設計和實施一個合適的digital filter。儘管這是一個龐大而複雜的學科領域,所以在這裏你不會得到一個簡單的答案。作爲第一步,最好的辦法可能是閱讀一本關於DSP的優秀入門書,例如Understanding DSP by Rick Lyons,這對初學者非常有用,因爲它在數學上不算太重,並且比大多數這類介紹性DSP書更具實用性。

因爲儘管你正在嘗試做的這個特定的應用程序類似於實施graphic equalizer,而且有很多的指針,如果你使用例如如何實現這種事情「圖形均衡器」作爲搜索詞。

+0

感謝那...現在已經開始瞭解... – tongy

0

數字濾波有很多數學問題。對不起,我認爲重要的是至少要了解基本的濾波器(如電子學中使用的濾波器)。如果您不想完成基本操作:最好獲得一個音頻圖形均衡器,您可以在其中使用(虛擬)滑塊進行播放。如果你想實現一個非常具體的過濾器,請繼續閱讀。

實時:取決於您的計算平臺。如果這是一個小的微型(如AVR,Microchip PIC,..),您將需要一個有效的算法。這可能是一個IIR帶通濾波器。圖形均衡器的等價物由多個帶通濾波器組成,所有這些濾波器相加在一起。請參見http://en.wikipedia.org/wiki/Infinite_impulse_response

更多的計算密集型算法使用FIR濾波器。在這種情況下,您還可以控制濾波信號的相位。 http://en.wikipedia.org/wiki/Finite_impulse_response

如果您找到算法(即IIR),則需要計算係數。該算法簡單,計算係數不大。

我找到了與您的問題相符的書:Audio digital signal processing in real time 我瀏覽過它;它似乎有正確的答案。

+0

謝謝,是的,我在閱讀了一些資源後就已經瞭解了基本的過濾器。這並不容易。因爲它需要更多的理解數學過程,但理論上的明智是可以理解的......實現並不是那麼容易,沒有複製一些開源示例.. – tongy