在耳機和筆記型電腦揚聲器之間切換時的 ALSA PulseAudio 聲音輸出

在耳機和筆記型電腦揚聲器之間切換時的 ALSA PulseAudio 聲音輸出

自從我在 Gentoo 系統上安裝 PulseAudio 以來,當您拔掉耳機插孔時,筆記型電腦的揚聲器就沒有音訊輸出。

我想問題在於 ALSA 和 PulseAudio 如何管理音訊控制。插入耳機後,一切都完全正常,Intel HDA PCH 的 alsa 控制已正確配置,因此「主」和「耳機」音量條已正確配置(我可以透過使用 root 權限查看 alsamixer 來判斷)。當我拔下耳機插孔時,音量設定會以明顯正確的方式自動變更。也就是說,「耳機」欄已靜音並設定為 0,而「揚聲器」欄未靜音並設為最大(當插入耳機插孔時它會靜音)。 「Master」始終保持未靜音狀態並具有所需的音量等級。實際上,我可以透過手動取消靜音並使用 alsamixer 增強耳機輸出來使揚聲器輸出工作。但每次插入/拔出耳機時我都必須執行此操作。那麼有什麼方法可以解決這個問題嗎?也許以某種方式將 ALSA 系統中的耳機輸出與揚聲器輸出解耦?

我的筆記型電腦是 2011 年生產的 HP Pavilion G6。

謝謝。

答案1

編輯檔案 /usr/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf 並找到以下部分:

[Element Headphone]

並評論這些行

switch = off
volume = off

最終結果將是

[Element Headphone]
#switch = off
#volume = off

就我而言,該問題是由於“耳機”通道被靜音而引起的,並且由於某種原因,不需要將其靜音即可使筆記型電腦的揚聲器正常工作。

經過我的更改,拔下耳機時耳機不會靜音,也不會將音量設為零。

若要「調試」在您的情況下哪個頻道被靜音,您可以使用 alsamixer,在 alsamixer 內您可以按「C」選擇您的音效卡(預設設定是設定pulseaudio主頻道的音量)。插拔耳機並檢查有什麼變化。

相關內容