在嵌入式系統上,我發現只有一個應用程式可以同時使用聲卡。據我所知,為了解決這個問題,ALSA提供了dmix
在用戶空間中執行混音的插件,從而允許多個應用程式共享聲卡。
在嘗試弄清楚如何使用 時dmix
,我偶然發現了一個問題。播放音訊檔案(立體聲、16 位元、44.1KHz)時,音訊就像與自身重疊一樣,出現奇怪的迴聲效果,隨著播放時間的推移,迴聲數量會像雪球一樣不斷增加。 (播放 10 秒後,聲音「增強」到我必須停止播放的程度,以免對揚聲器造成永久性損壞。)
從我的感覺來看,只有第一秒的音訊能夠正常播放,第二秒左右就開始出現奇怪的狀況。我嘗試調整緩衝設定但aplay
無濟於事:效果與緩衝無關。
這有效:
aplay /mnt/annie-honestly.wav
但這顯示了奇怪的迴聲效果:
aplay -Dplug:dmix /mnt/annie-honestly.wav
我試圖用谷歌搜尋這個問題,但我什至不知道如何調用效果/問題,而且我在其他 ALSA 問題的洪流中什麼也沒發現。
PS Linux v3.18.24,ALSA-lib/-utils v1.0.29。硬體:具有SGTL5000聲音晶片的FreeScale i.MX35(在48KHz模式下使用)。