Multimedia - 音頻效能範例
材料準備
- AmebaPro2 [ AMB82 MINI ] x 1
- 3.5mm TRS/TRRS 立體耳機線插孔 x 1 (e.g., Adafruit 2791 / Sparkfun 11570)
- Adafruit PDM 麥克風插孔 x 1 [Optional]
- 電位器 x 2
範例說明
介紹
此範例示範如何使用 Ameba 板的Automatic Gain Control (AGC) 和 Noise Suppression (NS) 音頻效能。
流程
如圖所示,將音頻插孔和電位器連接到 Ameba 板上。
或者,如果您想使用數位麥克風,請如下圖所示連接音頻插孔、電位器和 PDM 麥克風。
打開範例 “File” -> “Examples” -> “AmebaMultimedia” -> “Audio” -> “AudioEffect”。
在標記的代碼片段中,將您的 WiFi 網絡 SSID 填入“ssid”,將網絡密碼填入“pass”。
編譯代碼並將其上傳到 Ameba。
將一對有線耳機插入音頻插孔。 按下重置按鈕後,應該能夠通過耳機聽到板載麥克風錄製的聲音。
在這個例子中,轉動電位器將調整麥克風的靈敏度。 提高靈敏度將使麥克風錄製更柔和的聲音,但也會增加背景噪音。
修改標記的代碼片段以在麥克風音頻輸入或揚聲器音頻輸出上啟用或禁用 NS 和 AGC 音頻效能。 重新編譯並重新上傳代碼以聽取效果。
程式碼說明
NS 和 AGC 演算法都限於 8 kHz 和 16 kHz 取樣率。
NS 演算法可以降低背景噪聲的響度,並且能夠顯著降低藉由提高麥克風靈敏度而增加的背景噪聲。 但是,副作用是它會為音頻添加類似迴音的效果。 NS 效能的強度級別可以通過 configMicNS 和 configSpkNS 的第二個參數進行調整,0 為最弱,12 為最強。
AGC 演算法可以動態調整增益和靈敏度,以將音頻信號保持在目標響度級別。 可以通過 configMicAGC 和 configSpkAGC 的第二個參數進行調整,0 表示 0 dBFS 是最響亮,30 表示 -30 dBFS 是最柔和。