PulseAudio環回模組在Kubuntu 17.10下有劈啪聲/噪音

PulseAudio環回模組在Kubuntu 17.10下有劈啪聲/噪音

我嘗試透過線路輸入立體聲插孔將音訊從我的第二個顯示器輸入 Kubuntu,現在基本上在擺弄alsamixer(取消線路靜音並正確設定音量設定)並添加load-module module-loopback到我的/etc/pulse/default.pa

我目前使用此設定的最大問題是播放音訊時出現的劈啪聲/噪音 - 即使將線路輸入音量調整至約 5%(高於此值的所有內容都令人痛苦)並增加外部擴大機的音量。 (在 Windows 10 下,即使線路輸入音量為 100%,此設定也沒有出現劈啪聲/聲音問題)

到目前為止我嘗試過的:

1)在 PulseAudio 中新增load-module module-udev-detect tsched=0(新增tsched=0/etc/pulse/default.pa以停用基於計時器的調度,這有助於其他人處理劈啪聲。

2)組合1)進行修改/etc/pulse/daemon.conf以設定 PulseAudio 中的預設片段編號和緩衝區大小(如下所示:https://wiki.archlinux.org/index.php/PulseAudio/Troubleshooting#Static_noise_when_using_headphones

3)明確編寫環回來源和接收器及其速率和通道:

load-module module-loopback source=alsa_input.pci-0000_12_00.3.analog-stereo sink=alsa_output.usb-FiiO_DigiHug_USB_Audio-01.analog-stereo rate=44100 channels=2

4)/etc/modprobe.d/alsa-base.conf使用options snd-hda-intel position_fix=1或修改options snd-hda-intel position_fix=2此處建議的內容:https://wiki.ubuntu.com/Audio/PositionReporting

我的系統:

  • 庫班圖 17.10,64 位
  • 核心版本 4.13.0-36-generic
  • AMD 銳龍 7 1700X CPU
  • 16 GB 內存
  • 華擎 X370 太極主機板
  • Nvidia GTX 1070 GPU

lspci -nnk | grep -i audio -A2
0e:00.1 Audio device [0403]: NVIDIA Corporation GP104 High Definition Audio Controller [10de:10f0] (rev a1)
        Subsystem: CardExpert Technology GP104 High Definition Audio Controller [10b0:1b81]
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel
--
12:00.3 Audio device [0403]: Advanced Micro Devices, Inc. [AMD] Device [1022:1457]
        Subsystem: ASRock Incorporation Device [1849:1220]
        Kernel driver in use: snd_hda_intel

cat /proc/asound/cards
 0 [NVidia         ]: HDA-Intel - HDA NVidia
                      HDA NVidia at 0xfd080000 irq 329                                                                                                                                  
 1 [Audio          ]: USB-Audio - DigiHug USB Audio                                                                                                                                     
                      FiiO DigiHug USB Audio at usb-0000:11:00.3-2, full speed
 2 [Generic        ]: HDA-Intel - HD-Audio Generic
                      HD-Audio Generic at 0xfd900000 irq 331

pactl list sources
Quelle #0
        Status: RUNNING
        Name: alsa_output.usb-FiiO_DigiHug_USB_Audio-01.analog-stereo.monitor
        Beschreibung: Monitor of DigiHug USB Audio Analog Stereo
        Treiber: module-alsa-card.c
        Abtastwert-Angabe: s16le 2ch 44100Hz
        Kanalzuordnung: front-left,front-right
        Besitzer-Modul: 7
        Stumm: ja
        Lautstärke: front-left: 65536 / 100% / 0,00 dB,   front-right: 65536 / 100% / 0,00 dB
                Verteilung 0,00
        Basis-Lautstärke: 65536 / 100% / 0,00 dB
        Ziel-Monitor: alsa_output.usb-FiiO_DigiHug_USB_Audio-01.analog-stereo
        Latenz: 0 usec, eingestellt 40000 usec
        Flags: DECIBEL_VOLUME LATENCY 
        Eigenschaften:
                device.description = "Monitor of DigiHug USB Audio Analog Stereo"
                device.class = "monitor"
                alsa.card = "1"
                alsa.card_name = "DigiHug USB Audio"
                alsa.long_card_name = "FiiO DigiHug USB Audio at usb-0000:11:00.3-2, full speed"
                alsa.driver_name = "snd_usb_audio"
                device.bus_path = "pci-0000:11:00.3-usb-0:2:1.1"
                sysfs.path = "/devices/pci0000:00/0000:00:07.1/0000:11:00.3/usb3/3-2/3-2:1.1/sound/card1"
                udev.id = "usb-FiiO_DigiHug_USB_Audio-01"
                device.bus = "usb"
                device.vendor.id = "1852"
                device.vendor.name = "GYROCOM C&C Co., LTD"
                device.product.id = "7022"
                device.product.name = "DigiHug USB Audio"
                device.serial = "FiiO_DigiHug_USB_Audio"
                device.string = "1"
                module-udev-detect.discovered = "1"
                device.icon_name = "audio-card-usb"
        Formate:
                pcm

Quelle #1
        Status: RUNNING
        Name: alsa_input.pci-0000_12_00.3.analog-stereo
        Beschreibung: HD-Audio Generic Analog Stereo
        Treiber: module-alsa-card.c
        Abtastwert-Angabe: s16le 2ch 44100Hz
        Kanalzuordnung: front-left,front-right
        Besitzer-Modul: 8
        Stumm: nein
        Lautstärke: front-left: 6554 /  10% / -60,00 dB,   front-right: 6554 /  10% / -60,00 dB
                Verteilung 0,00
        Basis-Lautstärke: 6554 /  10% / -60,00 dB
        Ziel-Monitor: k. A.
        Latenz: 30 usec, eingestellt 40000 usec
        Flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY 
        Eigenschaften:
                alsa.resolution_bits = "16"
                device.api = "alsa"
                device.class = "sound"
                alsa.class = "generic"
                alsa.subclass = "generic-mix"
                alsa.name = "ALC1220 Analog"
                alsa.id = "ALC1220 Analog"
                alsa.subdevice = "0"
                alsa.subdevice_name = "subdevice #0"
                alsa.device = "0"
                alsa.card = "2"
                alsa.card_name = "HD-Audio Generic"
                alsa.long_card_name = "HD-Audio Generic at 0xfd900000 irq 331"
                alsa.driver_name = "snd_hda_intel"
                device.bus_path = "pci-0000:12:00.3"
                sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:12:00.3/sound/card2"
                device.bus = "pci"
                device.vendor.id = "1022"
                device.vendor.name = "Advanced Micro Devices, Inc. [AMD]"
                device.product.id = "1457"
                device.string = "front:2"
                device.buffering.buffer_size = "65536"
                device.buffering.fragment_size = "32768"
                device.access_mode = "mmap+timer"
                device.profile.name = "analog-stereo"
                device.profile.description = "Analog Stereo"
                device.description = "HD-Audio Generic Analog Stereo"
                alsa.mixer_name = "Realtek ALC1220"
                alsa.components = "HDA:10ec1220,18491220,00100003"
                module-udev-detect.discovered = "1"
                device.icon_name = "audio-card-pci"
        Ports:
                analog-input-front-mic: Vorderes Mikrofon (priority: 8500, not available)
                analog-input-rear-mic: Rückwärtiges Mikrofon (priority: 8200, not available)
                analog-input-linein: Eingang (priority: 8100, available)
        Aktiver Port: analog-input-linein
        Formate:
                pcm

pactl list sinks
Ziel #0
        Status: RUNNING
        Name: alsa_output.usb-FiiO_DigiHug_USB_Audio-01.analog-stereo
        Beschreibung: DigiHug USB Audio Analog Stereo
        Treiber: module-alsa-card.c
        Abtastwert-Angabe: s16le 2ch 44100Hz
        Kanalzuordnung: front-left,front-right
        Besitzer-Modul: 7
        Stumm: nein
        Lautstärke: front-left: 65536 / 100% / 0,00 dB,   front-right: 65536 / 100% / 0,00 dB
                Verteilung 0,00
        Basis-Lautstärke: 65536 / 100% / 0,00 dB
        Quellen-Monitor: alsa_output.usb-FiiO_DigiHug_USB_Audio-01.analog-stereo.monitor
        Latenz: 46296 usec, eingestellt 40000 usec
        Flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY 
        Eigenschaften:
                alsa.resolution_bits = "16"
                device.api = "alsa"
                device.class = "sound"
                alsa.class = "generic"
                alsa.subclass = "generic-mix"
                alsa.name = "USB Audio"
                alsa.id = "USB Audio"
                alsa.subdevice = "0"
                alsa.subdevice_name = "subdevice #0"
                alsa.device = "0"
                alsa.card = "1"
                alsa.card_name = "DigiHug USB Audio"
                alsa.long_card_name = "FiiO DigiHug USB Audio at usb-0000:11:00.3-2, full speed"
                alsa.driver_name = "snd_usb_audio"
                device.bus_path = "pci-0000:11:00.3-usb-0:2:1.1"
                sysfs.path = "/devices/pci0000:00/0000:00:07.1/0000:11:00.3/usb3/3-2/3-2:1.1/sound/card1"
                udev.id = "usb-FiiO_DigiHug_USB_Audio-01"
                device.bus = "usb"
                device.vendor.id = "1852"
                device.vendor.name = "GYROCOM C&C Co., LTD"
                device.product.id = "7022"
                device.product.name = "DigiHug USB Audio"
                device.serial = "FiiO_DigiHug_USB_Audio"
                device.string = "front:1"
                device.buffering.buffer_size = "352800"
                device.buffering.fragment_size = "176400"
                device.access_mode = "mmap+timer"
                device.profile.name = "analog-stereo"
                device.profile.description = "Analog Stereo"
                device.description = "DigiHug USB Audio Analog Stereo"
                alsa.mixer_name = "USB Mixer"
                alsa.components = "USB1852:7022"
                module-udev-detect.discovered = "1"
                device.icon_name = "audio-card-usb"
        Ports:
                analog-output: Analoge Ausgabe (priority: 9900)
        Aktiver Port: analog-output
        Formate:
                pcm

我的基本音訊設定:

輸入:

  • 音訊從第二台顯示器傳入電腦線路輸入
  • 所有其他音訊均來自系統/應用程式/音樂

輸出:

  • 我的耳機連接的 USB-DAC/AMP

答案1

為我解決此問題的關鍵項目如下。

案例修改

  1. 拆下 GPU 風扇外殼後,我的 GPU 上有一個保護性塑膠外殼,在外殼內部實際聆聽時會發出一些噪音。
  2. 重新定位 RAM,我的 RAM 位於 NVMe 卡旁邊,因此我將其移至下一個插槽。
  3. 拆下 GPU 附近的 NVMe 防護罩,主機板上 NVMe 棒頂部有一個防護罩

電源修改

  1. 將兩台機器的電源移至不同的插座。當我了解接地時,這實際上有助於減少許多回饋噪音。

脈衝音頻修改

load-module module-loopback source=alsa_input.usb-Corsair_CORSAIR_VOID_ELITE_Wireless_Gaming_Dongle-00.multichannel-input sink=alsa_output.pci-0000_09_00.3.analog-stereo
load-module module-loopback source=alsa_input.pci-0000_09_00.3.analog-stereo sink=alsa_output.usb-Corsair_CORSAIR_VOID_ELITE_Wireless_Gaming_Dongle-00.iec958-stereo


set-default-sink alsa_output.usb-Corsair_CORSAIR_VOID_ELITE_Wireless_Gaming_Dongle-00.iec958-stereo
set-default-source alsa_input.usb-Corsair_CORSAIR_VOID_ELITE_Wireless_Gaming_Dongle-00.multichannel-input
set-source-volume alsa_input.pci-0000_09_00.3.analog-stereo 5000

set-card-profile alsa_card.usb-HD_Webcam_USB_HD_Webcam_USB_HD_Webcam_USB-02 off
set-card-profile alsa_card.pci-0000_07_00.1 off
set-card-profile alsa_card.pci-0000_09_00.3 output:analog-stereo+input:analog-stereo

set-sink-port alsa_output.pci-0000_09_00.3.analog-stereo analog-output-lineout
set-source-port alsa_input.pci-0000_09_00.3.analog-stereo analog-input-linein

話雖如此,我仍然有一些反饋噪音,但僅限於高 GPU 幀速率期間。我確實認為這是一個電源問題,並訂購了另一個部件來幫助減少這種反饋。基本上就是一個接地環路輔助設備。

這也是我在這個問題上的掙扎的參考。 https://bbs.archlinux.org/viewtopic.php?pid=1917945#p1917945

編輯1 事實證明,這其實根本與軟體無關,而是硬體問題。我買了兩個並將它們插入兩台機器之間,它已經完全解決了這個問題。即使數量很大也不會再有任何回饋。 https://www.amazon.com/gp/product/B019393MV2/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&psc=1

相關內容