該儲存庫是根據 Joshua D. Reiss 和 Andrew P. McPherson 所寫的《音頻效果:理論、實現和應用》一書中的解釋實現的音頻效果插件的集合,並以該書提供的代碼為例,其中有貢獻以及 Brecht De Man 等人的實現。
實現的音頻效果有:
模板時域實現了具有線性和對數滑桿、切換開關和組合框的通用圖形使用者介面。該專案引入了音訊參數的自訂類,它封裝了在音訊處理器和通用編輯器 (GUI) 中新增、設定和使用自動化插件參數的大量複雜性。該插件不會對輸入應用任何特別有趣的處理,它只是時域音訊處理效果的模板項目。
模板頻域實作了短時傅立葉變換類別。該插件不會對輸入進行任何處理,它只是將輸入區塊轉換為頻域,然後使用重疊相加方法轉換回時域。此插件用作頻域音頻處理效果的模板項目。
Delay使用圓形延遲線實現具有反饋和混合控制的基本延遲。它使用簡單的線性插值來實現分數延遲時間。
Vibrato使用低頻振盪器 (LFO) 來調製輸入訊號的延遲並模擬音調的週期性變化。該插件介紹了各種類型的樣本插值。
鑲邊模擬基於延遲的音訊效果,其中輸入訊號的副本以可變的延遲時間延遲,並與原始聲音混合,從而產生這種經典音訊效果特有的“嗖嗖”聲音。
Chorus模擬不同音樂家同時演奏同一首曲子時發生的現象,即,它創建音調和時間略有變化的輸入信號的副本,使單一源的聲音就好像它是許多單獨的錄音一樣。
Ping-Pong Delay是基本延遲的立體聲版本。在乒乓延遲中,延遲訊號在左通道和右通道之間反彈。
參數均衡器實現各種類型的參數濾波器(低通、高通、低架、高架、帶通、帶阻和峰值/陷波)。可根據截止頻率、品質因數(頻寬)和增益來選擇和調整一階和二階濾波器。
哇音是一種音訊效果,可為輸入聲音注入類似語音的字元。它可以在手動模式下使用,其中諧振低通、帶通或峰化/陷波濾波器的截止頻率可透過滑桿更改,也可以在自動模式下使用,其中諧振低通、帶通或峰值/陷波濾波器的截止頻率可在自動模式下使用。
Phaser使用級聯配置的全通濾波器向輸入訊號引入相移。當濾波後的訊號與原始訊號混合時,這些偏移會在頻譜中產生陷波。移相器產生與鑲邊類似的效果,但對凹口的位置可能有更多的控制。
Tremolo使用 LFO 來調變輸入訊號的幅度。這可以模擬訊號電平的微小變化,或將單一持續音符轉變為一系列快速重複。
環形調變是將輸入訊號與週期性載波相乘的結果(類似顫音,但頻率較高)。它是一種非線性音頻效果,會產生非常不和諧的聲音。
壓縮器/擴展器將四個音訊處理器合而為一(壓縮器、限制器、擴展器和雜訊門)。壓縮器/限制器配置透過衰減增益高於閾值的輸入聲音部分來減少訊號的動態範圍。擴展器/噪音閘配置透過衰減增益低於閾值的輸入聲音部分來增加動態範圍。
失真對輸入聲音應用非線性變換,將其增益增加到極限,從而產生刺耳、模糊或沙啞的聲音。可以選擇不同的非線性函數,並且可以單獨控制輸出增益以恢復原始響度等級。高架濾波器也可用來控制輸出聲音的音調。
Robotization/Whisperization基於相位聲碼器演算法實現兩種音訊效果。該插件旨在與語音一起使用。機器人化對訊號施加恆定的音調,同時保留共振峰,結果聽起來像機器人的聲音。耳語消除了任何音高感,同時保留了共振峰,結果聽起來應該像有人在耳語。
音調變換使用相位聲碼器演算法改變輸入訊號的音調,而不改變持續時間。它是一種即時實現,允許連續且平滑地改變音調變化參數。
平移改變左右兩個通道之間聲源的明顯位置。它可以用於兩種模式,第一種模式使用優先效應和正切定律來調整左右訊號的時間延遲和增益,有利於透過假設標準立體聲佈局的揚聲器進行再現。第二種模式使用頭部的球形模型來估計耳間時間差(ITD)和耳間電平差(ILD),有利於透過耳機再現。
這些插件是使用 JUCE 實現的,JUCE 提供了一個框架,用於為各種平台(Windows 和 macOS)建立多種格式(VST、AU、RTAS、AAX 等)以及獨立應用程式的音訊插件。您可以在終端機中執行以下命令來複製此儲存庫並簽出用於建置所有專案的最新版本的 JUCE:
git clone https://github.com/juandagilc/Audio-Effects.git
cd Audio-Effects/
git submodule update --init
程式碼由 Juan Gil https://juangil.com/ 撰寫。版權所有 © 2017-2020 胡安吉爾。
該程式是免費軟體:您可以根據自由軟體基金會發布的 GNU 通用公共授權(許可證的第 3 版)或(由您選擇)任何更高版本的條款重新分發和/或修改它。
分發此程序的目的是希望它有用,但不提供任何保證;甚至沒有適銷性或特定用途適用性的默示保證。有關更多詳細信息,請參閱 GNU 通用公共許可證。
您應該隨該程式一起收到 GNU 通用公共授權的副本。如果沒有,請參閱 https://www.gnu.org/licenses/。