Pulseaudio 檢測到錯誤的採樣率。強制pulseaudio採樣率
將 h2n 用作 USB 麥克風和播放設備時,它顯示 44.1khz 作為採樣率。
當pulseaudio重新啟動時,它被正確檢測(
pacmd list-sinks
):sample spec: s16le 2ch 44100Hz
現在我開始在 youtube 上播放影片,在播放時,將“pavucontrol”->“配置”中的“配置文件”設置為“關閉”並返回“模擬立體聲雙工”。現在pulseaudio告訴我:
sample spec: s16le 2ch 48000Hz
在一個新的系統啟動時,它甚至足以
pavucontrol
導致錯誤的採樣率。這會導致帶有大量劈啪聲的傾斜輸出。
我試過的東西:
對 進行以下更改
~/.config/pulse/daemon.conf
:default-sample-rate = 44100 avoid-resampling = yes
正如另一個問題(在 pulseaudio 中設置不同的每設備採樣率?)和https://wiki.archlinux.org/index.php/PulseAudio/Troubleshooting中所建議的那樣
放
pcm.device{ format S16_LE rate 41000 type hw card 0 device 0 } pcm.!default{ type plug slave.pcm "device" }
進入
~/.asoundrc
並註銷並重新登錄。(https://unix.stackexchange.com/a/141234/227331)放
pcm.!default { type rate slave { pcm "plughw:0,0" rate 44100 } }
~/.asoundrc
按照這裡的建議進入: https ://bbs.archlinux.org/viewtopic.php?pid=400718#p400718並重新啟動。
pactl list sinks | grep -oP "(?<=device.string = \")(.*)(?=\")" | while read in; do pasuspender -- speaker-test --nloops=1 --channels=2 --test=wav --device=$in; done
正如https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/Users/Troubleshooting/中的建議聽起來不錯。之後 Firefox 將恢復劈啪聲。
安裝 cadence 和 jack2 後,將自己添加到音頻組 (
usermod -a -G audio username
),重新登錄並設置 cadence 以使用 h2n 進行輸入和輸出,這似乎很有希望。在 pavucontrol 中,我有一個用於輸出的“Jack sink”和一個用於輸入的“Jack source”,當我需要使用它時,我可以選擇它們作為預設值。還沒有爆裂聲。因此,如果我正確理解 linux 音頻環境,基本上我需要在 pulseaudio 和 alsa 之間放置插孔以使其工作。
編輯
我現在已經嘗試完全刪除pulseaudio。相當多的程序仍然有效,但不是全部。為了讓音量控制正常工作,我做了這個:https ://github.com/sezanzeb/ALSA-Control 。另請參閱https://unix.stackexchange.com/a/293206/227331
編輯 2
取消註釋並設置
alternate-sample-rate
為44100
in/etc/pulse/daemon.conf
(並刪除~/.asoundrc
)。