Módulo loopback PulseAudio con sonido/ruido crepitante en Kubuntu 17.10

Módulo loopback PulseAudio con sonido/ruido crepitante en Kubuntu 17.10

Intenté obtener audio de mi segundo monitor en Kubuntu a través del conector estéreo de entrada de línea que ahora básicamente funciona después de jugar alsamixer(desactivar el silencio de la línea y configurar correctamente el volumen) y agregarlo load-module module-loopbacka mi/etc/pulse/default.pa

Mi mayor problema actual con esta configuración es el sonido/ruido crepitante que obtengo mientras reproduzco audio, incluso después de ajustar el volumen de entrada de línea a ~5% (todo lo anterior es simplemente doloroso) y aumentar el volumen de mi amplificador externo. (En Windows 10 no tengo problemas de crujidos/sonidos con esta configuración, incluso con un volumen de entrada de línea del 100%)

Lo que he probado hasta ahora:

1)Tener load-module module-udev-detect tsched=0(agregar tsched=0) /etc/pulse/default.papara desactivar la programación basada en temporizador en PulseAudio, lo que ayudó a otras personas con el sonido crepitante.

2)Combinatorio1)con modificaciones /etc/pulse/daemon.confpara configurar el número de fragmento predeterminado y el tamaño del búfer en PulseAudio (como aquí:https://wiki.archlinux.org/index.php/PulseAudio/Troubleshooting#Static_noise_when_using_headphones)

3)Escribir explícitamente la fuente y el receptor del loopback con su velocidad y canales:

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

Y4)modificando /etc/modprobe.d/alsa-base.confcon options snd-hda-intel position_fix=1o options snd-hda-intel position_fix=2que se sugirió aquí:https://wiki.ubuntu.com/Audio/PositionReporting

Mi sistema:

  • Kubuntu 17.10, 64 bits
  • Kernel-Versión 4.13.0-36-genérico
  • Procesador AMD Ryzen 7 1700X
  • 16 GB de RAM
  • Placa base ASRock X370 Taichi
  • GPU Nvidia GTX 1070

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

Mi configuración de audio básica:

Entradas:

  • audio proveniente del segundo monitor a la entrada de línea de la computadora
  • el resto del audio proviene del sistema/aplicaciones/música

Producción:

  • USB-DAC/AMP al que están conectados mis auriculares

Respuesta1

Los elementos clave que lograron solucionar este problema fueron los siguientes.

Modificaciones de casos

  1. Se quitó la carcasa del ventilador de la GPU. En mi GPU había una carcasa protectora de plástico que al escuchar físicamente dentro de la carcasa hacía algo de ruido.
  2. RAM reubicada, mi RAM estaba ubicada justo al lado de una tarjeta NVMe, así que la moví a las siguientes ranuras.
  3. Retire el protector cerca de la GPU para NVMe; en la placa base había un protector sobre la parte superior del dispositivo NVMe

Modificaciones de energía

  1. Se movió la fuente de energía de ambas máquinas a un tomacorriente diferente. De hecho, esto ayudó a reducir una gran cantidad de ruido de retroalimentación a medida que aprendí sobre la conexión a tierra.

Modificación de PulseAudio

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

Dicho todo esto, TODAVÍA tengo algo de ruido de retroalimentación, pero solo durante altas velocidades de fotogramas de la GPU. Creo que se trata de un problema de energía y he ordenado otra pieza para ayudar a reducir esta retroalimentación. Básicamente un dispositivo auxiliar de bucle de tierra.

Aquí también hay una referencia a mi lucha con este tema. https://bbs.archlinux.org/viewtopic.php?pid=1917945#p1917945

Editar 1 RESULTA que esto en realidad no está relacionado en absoluto con el software y fue un problema de hardware. Compré 2 de estos y los conecté entre ambas máquinas y se solucionó completamente el problema. No hay más retroalimentación incluso a volúmenes altos. https://www.amazon.com/gp/product/B019393MV2/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&psc=1

información relacionada