You are not logged in.

#1 2023-12-04 01:22:35

winghaa
Member
Registered: 2023-12-04
Posts: 2

[SOLVED] Mic producing echo in Discord web client

I'm using Pipewire and Wireplumber. My setup is a pair of stereo and a separate mic. There are 2 monitors and they maybe have speaker on them.
Everytime I speak my voice would echo and the amount of echo increase as my volume output increase. I tested with OBS recording but there was no echo albeit there are a bit of static (sound sounds like they're broken somehow). When I listen to music sometimes the audio will stop for a fraction of second but that is maybe another issue.
I also tried installing noise-suppression-for-voice package but it only work until the output volume is at 55%. Any help will be appreciated
arecord -lL

 null
    Discard all samples (playback) or generate zero samples (capture)
pipewire
    PipeWire Sound Server
default
    Default ALSA Output (currently PipeWire Media Server)
sysdefault:CARD=PCH
    HDA Intel PCH, ALC897 Analog
    Default Audio Device
front:CARD=PCH,DEV=0
    HDA Intel PCH, ALC897 Analog
    Front output / input
**** List of CAPTURE Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC897 Analog [ALC897 Analog]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 2: ALC897 Alt Analog [ALC897 Alt Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

amixer -c0

Simple mixer control 'Master',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined
  Playback channels: Mono
  Limits: Playback 0 - 87
  Mono: Playback 73 [84%] [-10.50dB] [on]
Simple mixer control 'Headphone',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 87
  Mono:
  Front Left: Playback 0 [0%] [-65.25dB] [off]
  Front Right: Playback 0 [0%] [-65.25dB] [off]
Simple mixer control 'PCM',0
  Capabilities: pvolume
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 255
  Mono:
  Front Left: Playback 255 [100%] [0.00dB]
  Front Right: Playback 255 [100%] [0.00dB]
Simple mixer control 'Front',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 87
  Mono:
  Front Left: Playback 87 [100%] [0.00dB] [on]
  Front Right: Playback 87 [100%] [0.00dB] [on]
Simple mixer control 'Front Mic',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Mono:
  Front Left: Playback 0 [0%] [-34.50dB] [off]
  Front Right: Playback 0 [0%] [-34.50dB] [off]
Simple mixer control 'Front Mic Boost',0
  Capabilities: volume
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: 0 - 3
  Front Left: 0 [0%] [0.00dB]
  Front Right: 0 [0%] [0.00dB]
Simple mixer control 'Surround',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 87
  Mono:
  Front Left: Playback 87 [100%] [0.00dB] [on]
  Front Right: Playback 87 [100%] [0.00dB] [on]
Simple mixer control 'Center',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined
  Playback channels: Mono
  Limits: Playback 0 - 87
  Mono: Playback 87 [100%] [0.00dB] [on]
Simple mixer control 'LFE',0
  Capabilities: pvolume pvolume-joined pswitch pswitch-joined
  Playback channels: Mono
  Limits: Playback 0 - 87
  Mono: Playback 87 [100%] [0.00dB] [on]
Simple mixer control 'Line',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Mono:
  Front Left: Playback 0 [0%] [-34.50dB] [off]
  Front Right: Playback 0 [0%] [-34.50dB] [off]
Simple mixer control 'Line Boost',0
  Capabilities: volume
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: 0 - 3
  Front Left: 0 [0%] [0.00dB]
  Front Right: 0 [0%] [0.00dB]
Simple mixer control 'IEC958',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [off]
Simple mixer control 'IEC958 Default PCM',0
  Capabilities: pswitch pswitch-joined
  Playback channels: Mono
  Mono: Playback [on]
Simple mixer control 'Capture',0
  Capabilities: cvolume cswitch
  Capture channels: Front Left - Front Right
  Limits: Capture 0 - 63
  Front Left: Capture 63 [100%] [30.00dB] [on]
  Front Right: Capture 63 [100%] [30.00dB] [on]
Simple mixer control 'Capture',1
  Capabilities: cvolume cswitch
  Capture channels: Front Left - Front Right
  Limits: Capture 0 - 63
  Front Left: Capture 0 [0%] [-17.25dB] [off]
  Front Right: Capture 0 [0%] [-17.25dB] [off]
Simple mixer control 'Auto-Mute Mode',0
  Capabilities: enum
  Items: 'Disabled' 'Enabled'
  Item0: 'Enabled'
Simple mixer control 'Input Source',0
  Capabilities: cenum
  Items: 'Front Mic' 'Rear Mic' 'Line'
  Item0: 'Rear Mic'
Simple mixer control 'Input Source',1
  Capabilities: cenum
  Items: 'Front Mic' 'Rear Mic' 'Line'
  Item0: 'Front Mic'
Simple mixer control 'Loopback Mixing',0
  Capabilities: enum
  Items: 'Disabled' 'Enabled'
  Item0: 'Disabled'
Simple mixer control 'Rear Mic',0
  Capabilities: pvolume pswitch
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 31
  Mono:
  Front Left: Playback 0 [0%] [-34.50dB] [off]
  Front Right: Playback 0 [0%] [-34.50dB] [off]
Simple mixer control 'Rear Mic Boost',0
  Capabilities: volume
  Playback channels: Front Left - Front Right
  Capture channels: Front Left - Front Right
  Limits: 0 - 3
  Front Left: 3 [100%] [30.00dB]
  Front Right: 3 [100%] [30.00dB]

pactl list sources

Source #35
	State: RUNNING
	Name: rnnoise_source
	Description: Noise Canceling source
	Driver: PipeWire
	Sample Specification: float32le 1ch 48000Hz
	Channel Map: aux0
	Owner Module: 4294967295
	Mute: no
	Volume: aux0: 65536 / 100% / 0.00 dB
	       balance 0.00
	Base Volume: 65536 / 100% / 0.00 dB
	Monitor of Sink: n/a
	Latency: 0 usec, configured 0 usec
	Flags: DECIBEL_VOLUME LATENCY 
	Properties:
		node.name = "rnnoise_source"
		media.class = "Audio/Source"
		audio.rate = "48000"
		device.description = "Noise Canceling source"
		node.group = "filter-chain-1176-28"
		node.link-group = "filter-chain-1176-28"
		node.virtual = "true"
		media.name = "Noise Canceling source"
		resample.prefill = "true"
		stream.is-live = "true"
		node.want-driver = "true"
		node.autoconnect = "true"
		node.trigger = "true"
		adapt.follower.spa-node = ""
		object.register = "false"
		factory.id = "18"
		clock.quantum-limit = "8192"
		factory.mode = "split"
		audio.adapt.follower = ""
		library.name = "audioconvert/libspa-audioconvert"
		client.id = "33"
		object.id = "35"
		object.serial = "35"
	Formats:
		pcm

Source #56
	State: RUNNING
	Name: alsa_output.pci-0000_00_1f.3.analog-stereo.monitor
	Description: Monitor of Built-in Audio Analog Stereo
	Driver: PipeWire
	Sample Specification: s32le 2ch 48000Hz
	Channel Map: front-left,front-right
	Owner Module: 4294967295
	Mute: no
	Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
	       balance 0.00
	Base Volume: 65536 / 100% / 0.00 dB
	Monitor of Sink: alsa_output.pci-0000_00_1f.3.analog-stereo
	Latency: 0 usec, configured 0 usec
	Flags: HARDWARE DECIBEL_VOLUME LATENCY 
	Properties:
		alsa.card = "0"
		alsa.card_name = "HDA Intel PCH"
		alsa.class = "generic"
		alsa.device = "0"
		alsa.driver_name = "snd_hda_intel"
		alsa.id = "ALC897 Analog"
		alsa.long_card_name = "HDA Intel PCH at 0x4402110000 irq 140"
		alsa.name = "ALC897 Analog"
		alsa.resolution_bits = "16"
		alsa.subclass = "generic-mix"
		alsa.subdevice = "0"
		alsa.subdevice_name = "subdevice #0"
		api.alsa.card.longname = "HDA Intel PCH at 0x4402110000 irq 140"
		api.alsa.card.name = "HDA Intel PCH"
		api.alsa.path = "front:0"
		api.alsa.pcm.card = "0"
		api.alsa.pcm.stream = "playback"
		audio.channels = "2"
		audio.position = "FL,FR"
		card.profile.device = "5"
		device.api = "alsa"
		device.class = "monitor"
		device.id = "50"
		device.profile.description = "Analog Stereo"
		device.profile.name = "analog-stereo"
		device.routes = "2"
		factory.name = "api.alsa.pcm.sink"
		media.class = "Audio/Sink"
		device.description = "Built-in Audio"
		node.name = "alsa_output.pci-0000_00_1f.3.analog-stereo"
		node.nick = "ALC897 Analog"
		node.pause-on-idle = "false"
		object.path = "alsa:pcm:0:front:0:playback"
		priority.driver = "1009"
		priority.session = "1009"
		factory.id = "18"
		clock.quantum-limit = "8192"
		client.id = "37"
		node.driver = "true"
		factory.mode = "merge"
		audio.adapt.follower = ""
		library.name = "audioconvert/libspa-audioconvert"
		object.id = "56"
		object.serial = "56"
		node.max-latency = "16384/48000"
		api.alsa.period-size = "1024"
		api.alsa.period-num = "32"
		api.alsa.headroom = "0"
		api.acp.auto-port = "false"
		api.acp.auto-profile = "false"
		api.alsa.card = "0"
		api.alsa.use-acp = "true"
		api.dbus.ReserveDevice1 = "Audio0"
		device.bus = "pci"
		device.bus_path = "pci-0000:00:1f.3"
		device.enum.api = "udev"
		device.form_factor = "internal"
		device.icon_name = "audio-card-analog-pci"
		device.name = "alsa_card.pci-0000_00_1f.3"
		device.nick = "HDA Intel PCH"
		device.plugged.usec = "4358305"
		device.product.id = "0x7ad0"
		device.product.name = "Alder Lake-S HD Audio Controller"
		device.subsystem = "sound"
		sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
		device.vendor.id = "0x8086"
		device.vendor.name = "Intel Corporation"
		device.string = "0"
	Ports:
		analog-output-lineout: Line Out (type: Line, priority: 9000, availability group: Legacy 4, available)
		analog-output-headphones: Headphones (type: Headphones, priority: 9900, availability group: Legacy 5, not available)
	Active Port: analog-output-lineout
	Formats:
		pcm

Source #57
	State: RUNNING
	Name: alsa_input.pci-0000_00_1f.3.analog-stereo
	Description: Built-in Audio Analog Stereo
	Driver: PipeWire
	Sample Specification: s32le 2ch 48000Hz
	Channel Map: front-left,front-right
	Owner Module: 4294967295
	Mute: no
	Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
	       balance 0.00
	Base Volume: 6554 /  10% / -60.00 dB
	Monitor of Sink: n/a
	Latency: 0 usec, configured 0 usec
	Flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY 
	Properties:
		alsa.card = "0"
		alsa.card_name = "HDA Intel PCH"
		alsa.class = "generic"
		alsa.device = "0"
		alsa.driver_name = "snd_hda_intel"
		alsa.id = "ALC897 Analog"
		alsa.long_card_name = "HDA Intel PCH at 0x4402110000 irq 140"
		alsa.name = "ALC897 Analog"
		alsa.resolution_bits = "16"
		alsa.subclass = "generic-mix"
		alsa.subdevice = "0"
		alsa.subdevice_name = "subdevice #0"
		api.alsa.card.longname = "HDA Intel PCH at 0x4402110000 irq 140"
		api.alsa.card.name = "HDA Intel PCH"
		api.alsa.path = "front:0"
		api.alsa.pcm.card = "0"
		api.alsa.pcm.stream = "capture"
		audio.channels = "2"
		audio.position = "FL,FR"
		card.profile.device = "0"
		device.api = "alsa"
		device.class = "sound"
		device.id = "50"
		device.profile.description = "Analog Stereo"
		device.profile.name = "analog-stereo"
		device.routes = "3"
		factory.name = "api.alsa.pcm.source"
		media.class = "Audio/Source"
		device.description = "Built-in Audio"
		node.name = "alsa_input.pci-0000_00_1f.3.analog-stereo"
		node.nick = "ALC897 Analog"
		node.pause-on-idle = "false"
		object.path = "alsa:pcm:0:front:0:capture"
		priority.driver = "2009"
		priority.session = "2009"
		factory.id = "18"
		clock.quantum-limit = "8192"
		client.id = "37"
		node.driver = "true"
		factory.mode = "split"
		audio.adapt.follower = ""
		library.name = "audioconvert/libspa-audioconvert"
		object.id = "57"
		object.serial = "57"
		node.max-latency = "16384/48000"
		api.alsa.period-size = "1024"
		api.alsa.period-num = "32"
		api.alsa.headroom = "32"
		api.acp.auto-port = "false"
		api.acp.auto-profile = "false"
		api.alsa.card = "0"
		api.alsa.use-acp = "true"
		api.dbus.ReserveDevice1 = "Audio0"
		device.bus = "pci"
		device.bus_path = "pci-0000:00:1f.3"
		device.enum.api = "udev"
		device.form_factor = "internal"
		device.icon_name = "audio-card-analog-pci"
		device.name = "alsa_card.pci-0000_00_1f.3"
		device.nick = "HDA Intel PCH"
		device.plugged.usec = "4358305"
		device.product.id = "0x7ad0"
		device.product.name = "Alder Lake-S HD Audio Controller"
		device.subsystem = "sound"
		sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
		device.vendor.id = "0x8086"
		device.vendor.name = "Intel Corporation"
		device.string = "0"
	Ports:
		analog-input-front-mic: Front Microphone (type: Mic, priority: 8500, availability group: Legacy 1, not available)
		analog-input-rear-mic: Rear Microphone (type: Mic, priority: 8200, availability group: Legacy 2, available)
		analog-input-linein: Line In (type: Line, priority: 8100, availability group: Legacy 3, not available)
	Active Port: analog-input-rear-mic
	Formats:
		pcm

Source #78
	State: SUSPENDED
	Name: alsa_output.pci-0000_01_00.1.3.hdmi-stereo.monitor
	Description: Monitor of GA106 High Definition Audio Controller Digital Stereo (HDMI)
	Driver: PipeWire
	Sample Specification: s32le 2ch 48000Hz
	Channel Map: front-left,front-right
	Owner Module: 4294967295
	Mute: no
	Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
	       balance 0.00
	Base Volume: 65536 / 100% / 0.00 dB
	Monitor of Sink: alsa_output.pci-0000_01_00.1.3.hdmi-stereo
	Latency: 0 usec, configured 0 usec
	Flags: HARDWARE DECIBEL_VOLUME LATENCY 
	Properties:
		alsa.card = "1"
		alsa.card_name = "HDA NVidia"
		alsa.class = "generic"
		alsa.device = "3"
		alsa.driver_name = "snd_hda_intel"
		alsa.id = "HDMI 0"
		alsa.long_card_name = "HDA NVidia at 0x71080000 irq 17"
		alsa.name = "LG ULTRAGEAR"
		alsa.resolution_bits = "16"
		alsa.subclass = "generic-mix"
		alsa.subdevice = "0"
		alsa.subdevice_name = "subdevice #0"
		api.alsa.card.longname = "HDA NVidia at 0x71080000 irq 17"
		api.alsa.card.name = "HDA NVidia"
		api.alsa.path = "hdmi:1"
		api.alsa.pcm.card = "1"
		api.alsa.pcm.stream = "playback"
		audio.channels = "2"
		audio.position = "FL,FR"
		card.profile.device = "4"
		device.api = "alsa"
		device.class = "monitor"
		device.id = "71"
		device.profile.description = "Digital Stereo (HDMI)"
		device.profile.name = "hdmi-stereo"
		device.routes = "1"
		factory.name = "api.alsa.pcm.sink"
		media.class = "Audio/Sink"
		device.description = "GA106 High Definition Audio Controller"
		node.name = "alsa_output.pci-0000_01_00.1.3.hdmi-stereo"
		node.nick = "LG ULTRAGEAR"
		node.pause-on-idle = "false"
		object.path = "alsa:pcm:1:hdmi:1:playback"
		priority.driver = "696"
		priority.session = "696"
		factory.id = "18"
		clock.quantum-limit = "8192"
		client.id = "37"
		node.driver = "true"
		factory.mode = "merge"
		audio.adapt.follower = ""
		library.name = "audioconvert/libspa-audioconvert"
		object.id = "49"
		object.serial = "78"
		api.acp.auto-port = "false"
		api.acp.auto-profile = "false"
		api.alsa.card = "1"
		api.alsa.use-acp = "true"
		api.dbus.ReserveDevice1 = "Audio1"
		device.bus = "pci"
		device.bus_path = "pci-0000:01:00.1"
		device.enum.api = "udev"
		device.icon_name = "audio-card-analog-pci"
		device.name = "alsa_card.pci-0000_01_00.1.3"
		device.nick = "HDA NVidia"
		device.plugged.usec = "4333762"
		device.product.id = "0x228e"
		device.product.name = "GA106 High Definition Audio Controller"
		device.subsystem = "sound"
		sysfs.path = "/devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1"
		device.vendor.id = "0x10de"
		device.vendor.name = "NVIDIA Corporation"
		device.string = "1"
	Ports:
		hdmi-output-0: HDMI / DisplayPort (type: HDMI, priority: 5900, availability group: Legacy 1, available)
	Active Port: hdmi-output-0
	Formats:
		pcm

pactl list source-outputs

Source Output #34
	Driver: PipeWire
	Owner Module: n/a
	Client: n/a
	Source: 57
	Sample Specification: float32le 1ch 48000Hz
	Channel Map: aux0
	Format: pcm, format.sample_format = "\"float32ne\""  format.rate = "48000"  format.channels = "1"  format.channel_map = "\"aux0\""
	Corked: no
	Mute: no
	Volume: aux0: 65536 / 100% / 0.00 dB
	       balance 0.00
	Buffer Latency: 0 usec
	Source Latency: 0 usec
	Resample method: PipeWire
	Properties:
		node.name = "capture.rnnoise_source"
		node.passive = "true"
		audio.rate = "48000"
		device.description = "Noise Canceling source"
		node.group = "filter-chain-1176-28"
		node.link-group = "filter-chain-1176-28"
		node.virtual = "true"
		media.name = "Noise Canceling source"
		resample.prefill = "true"
		stream.is-live = "true"
		node.want-driver = "true"
		node.autoconnect = "true"
		media.class = "Stream/Input/Audio"
		adapt.follower.spa-node = ""
		object.register = "false"
		factory.id = "18"
		clock.quantum-limit = "8192"
		factory.mode = "merge"
		audio.adapt.follower = ""
		library.name = "audioconvert/libspa-audioconvert"
		client.id = "33"
		object.id = "34"
		object.serial = "34"
		module-stream-restore.id = "source-output-by-media-name:Noise Canceling source"

Source Output #99
	Driver: PipeWire
	Owner Module: n/a
	Client: 70
	Source: 35
	Sample Specification: float32le 1ch 48000Hz
	Channel Map: mono
	Format: pcm, format.sample_format = "\"float32le\""  format.rate = "48000"  format.channels = "1"  format.channel_map = "\"mono\""
	Corked: no
	Mute: no
	Volume: mono: 65536 / 100% / 0.00 dB
	       balance 0.00
	Buffer Latency: 0 usec
	Source Latency: 0 usec
	Resample method: PipeWire
	Properties:
		client.api = "pipewire-pulse"
		pulse.server.type = "unix"
		application.name = "Firefox"
		application.process.id = "14606"
		application.process.user = "winghaa"
		application.process.host = "Archlinux"
		application.process.binary = "firefox"
		application.language = "en_US.UTF-8"
		window.x11.display = ":1"
		application.process.machine_id = "1dbb700e9fb74285884f72414f3ca6ae"
		application.process.session_id = "2"
		media.name = "AudioCallbackDriver"
		node.rate = "1/48000"
		node.latency = "1200/48000"
		target.object = "rnnoise_source"
		stream.is-live = "true"
		node.name = "Firefox"
		node.want-driver = "true"
		node.autoconnect = "true"
		media.class = "Stream/Input/Audio"
		adapt.follower.spa-node = ""
		object.register = "false"
		factory.id = "6"
		clock.quantum-limit = "8192"
		factory.mode = "merge"
		audio.adapt.follower = ""
		library.name = "audioconvert/libspa-audioconvert"
		client.id = "65"
		object.id = "69"
		object.serial = "99"
		pulse.attr.maxlength = "4194304"
		pulse.attr.fragsize = "4800"
		module-stream-restore.id = "source-output-by-application-name:Firefox"

Qwpgraph
Qwpgraph

Last edited by winghaa (2023-12-04 11:49:35)

Offline

#2 2023-12-04 05:28:24

Awebb
Member
Registered: 2010-05-06
Posts: 6,688

Re: [SOLVED] Mic producing echo in Discord web client

Web Discord doesn't have the noise and echo cancellation features of the desktop client.

Offline

#3 2023-12-04 11:48:46

winghaa
Member
Registered: 2023-12-04
Posts: 2

Re: [SOLVED] Mic producing echo in Discord web client

Awebb wrote:

Web Discord doesn't have the noise and echo cancellation features of the desktop client.

You were right. The client version didn't have echo issue. But I guess it's kinda weird it's happening on Linux and not Windows. (I'm brand new to Arch so idk)

Offline

#4 2023-12-04 14:37:05

Awebb
Member
Registered: 2010-05-06
Posts: 6,688

Re: [SOLVED] Mic producing echo in Discord web client

Perhaps your Windows audio driver is better at noise cancelling and echo cancelling.

Always use the client. I lowkey wished there was an option to disallow web users from voice chats per default.

Offline

Board footer

Powered by FluxBB