maintainer-feedback requested: [Bug 278821] www/chromium: experiencing audio distortion when using webrtc and Universal Audio Volt 176 interface
Date: Mon, 06 May 2024 21:42:38 UTC
Bugzilla Automation <bugzilla@FreeBSD.org> has asked freebsd-chromium (Nobody) <chromium@FreeBSD.org> for maintainer-feedback: Bug 278821: www/chromium: experiencing audio distortion when using webrtc and Universal Audio Volt 176 interface https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=278821 --- Description --- I've been successfully using the Volt 176 USB interface with FreeBSD-CURRENT, chromium, webrtc, and sndio for a while. Some time after v120.0.6099.216 I my microphone input becomes distorted. People on the other end say I sound like a robot. Refreshing the tab fixes the problem. I haven't been able to identify the last version that works because I don't have any historical packages. This problem happens 100% of the time. It begins at unpredictable times -- it could be almost immediately or it could be 10 minutes into a chat. This is the case with google meet, google voice, zoom, and microsoft teams. My microphone works fine in other applications like firefox, OBS studio, and audacity. hw.audio sysctls: $ sysctl hw.audio sysctl: unknown oid 'hw.audio' [ayan@kiwi ~]$ sysctl -a | grep hw.audio [ayan@kiwi ~]$ sysctl -a | grep hw.sound [ayan@kiwi ~]$ sysctl -a | grep hw.snd hw.snd.maxautovchans: 16 hw.snd.default_unit: 4 hw.snd.version: 2009061500/amd64 hw.snd.default_auto: 1 hw.snd.verbose: 4 hw.snd.vpc_mixer_bypass: 1 hw.snd.feeder_rate_quality: 1 hw.snd.feeder_rate_round: 25 hw.snd.feeder_rate_max: 2016000 hw.snd.feeder_rate_min: 1 hw.snd.feeder_rate_polyphase_max: 183040 hw.snd.feeder_rate_presets: 100:8:0.85 100:36:0.92 100:164:0.97 hw.snd.feeder_eq_exact_rate: 0 hw.snd.feeder_eq_presets: PEQ:16000,0.2500,62,0.2500:-9,9,1.0:44100,48000,88200,96000,176400,192000 hw.snd.basename_clone: 1 hw.snd.compat_linux_mmap: 0 hw.snd.syncdelay: -1 hw.snd.usefrags: 0 hw.snd.vpc_reset: 0 hw.snd.vpc_0db: 45 hw.snd.vpc_autoreset: 1 hw.snd.timeout: 5 hw.snd.latency_profile: 1 hw.snd.latency: 2 hw.snd.report_soft_matrix: 1 hw.snd.report_soft_formats: 1 uaudio sysctls: $ sysctl -a | grep uaudio <118>Autoloading module: snd_uaudio uaudio0 numa-domain 0 on uhub0 uaudio0: <Universal Audio Volt 176, class 239/2, rev 2.00/1.00, addr 5> on usbus0 uaudio0: Play[0]: 192000 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer. (selected) uaudio0: Play[0]: 176400 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer. uaudio0: Play[0]: 96000 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer. uaudio0: Play[0]: 88200 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer. uaudio0: Play[0]: 48000 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer. uaudio0: Play[0]: 44100 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer. uaudio0: Record[0]: 192000 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer. (selected) uaudio0: Record[0]: 176400 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer. uaudio0: Record[0]: 96000 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer. uaudio0: Record[0]: 88200 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer. uaudio0: Record[0]: 48000 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer. uaudio0: Record[0]: 44100 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer. uaudio0: MIDI sequencer. pcm4 numa-domain 0 on uaudio0 uaudio0: No HID volume keys found. uaudio1 numa-domain 0 on uhub0 uaudio1: <vendor 0x046d C922 Pro Stream Webcam, class 239/2, rev 2.00/0.16, addr 6> on usbus0 uaudio1: No playback. uaudio1: Record[0]: 32000 Hz, 2 ch, 16-bit S-LE PCM format, 2x4ms buffer. (selected) uaudio1: Record[0]: 24000 Hz, 2 ch, 16-bit S-LE PCM format, 2x4ms buffer. uaudio1: Record[0]: 16000 Hz, 2 ch, 16-bit S-LE PCM format, 2x4ms buffer. uaudio1: No MIDI sequencer. pcm5 numa-domain 0 on uaudio1 uaudio1: No HID volume keys found. hw.usb.uaudio.buffer_ms: 2 hw.usb.uaudio.default_channels: 0 hw.usb.uaudio.default_bits: 32 hw.usb.uaudio.default_rate: 0 hw.usb.uaudio.handle_hid: 1 dev.uaudio.1.%domain: 0 dev.uaudio.1.%parent: uhub0 dev.uaudio.1.%pnpinfo: vendor=0x046d product=0x085c devclass=0xef devsubclass=0x02 devproto=0x01 sernum="CCBA809F" release=0x0016 mode=host intclass=0x01 intsubclass=0x01 intprotocol=0x00 dev.uaudio.1.%location: bus=0 hubaddr=1 port=5 devaddr=7 interface=2 ugen=ugen0.7 dev.uaudio.1.%driver: uaudio dev.uaudio.1.%desc: vendor 0x046d C922 Pro Stream Webcam, class 239/2, rev 2.00/0.16, addr 6 dev.uaudio.0.%domain: 0 dev.uaudio.0.%parent: uhub0 dev.uaudio.0.%pnpinfo: vendor=0x2b5a product=0x0022 devclass=0xef devsubclass=0x02 devproto=0x01 sernum="22282038018124" release=0x0100 mode=host intclass=0x01 intsubclass=0x01 intprotocol=0x20 dev.uaudio.0.%location: bus=0 hubaddr=1 port=4 devaddr=6 interface=0 ugen=ugen0.6 dev.uaudio.0.%driver: uaudio dev.uaudio.0.%desc: Universal Audio Volt 176, class 239/2, rev 2.00/1.00, addr 5 dev.uaudio.%parent: dev.pcm.5.%parent: uaudio1 dev.pcm.4.%parent: uaudio0 /dev/sndstat $ cat /dev/sndstat FreeBSD Audio Driver (64bit 2009061500/amd64) Installed devices: pcm0: <NVIDIA (0x009a) (HDMI/DP 8ch)> on hdaa0 (1p:1v/0r:0v) snddev flags=0x200002e7<SIMPLEX,AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC,PRIO_W R> [pcm0:play:dsp0.p0]: spd 48000, fmt 0x00200010, flags 0x00006100, 0x00000004 interrupts 1044, underruns 0, feed 1044, ready 0 [b:2048/1024/2|bs:2048/1024/2] channel flags=0x6100<BUSY,HAS_VCHAN,VCHAN_PASSTHROUGH> {userland} -> feeder_mixer(0x00200010) -> {hardware} pcm0:play:dsp0.p0[pcm0:virtual_play:dsp0.vp0]: spd 44100/48000, fmt 0x00200008/0x00200010, flags 0x10000000, 0x0000002b interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:4096/512/8] channel flags=0x10000000<VIRTUAL> {userland} -> feeder_root(0x00200008) -> feeder_format(0x00200008 -> 0x00200010) -> feeder_volume(0x00200010) -> feeder_rate(0x00200010 q:1 44100 -> 48000) -> {hardware} pcm1: <NVIDIA (0x009a) (HDMI/DP 8ch)> on hdaa0 (1p:1v/0r:0v) snddev flags=0x200002e7<SIMPLEX,AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC,PRIO_W R> [pcm1:play:dsp1.p0]: spd 48000, fmt 0x00200010, flags 0x00006100, 0x00000004 interrupts 1022, underruns 0, feed 1022, ready 0 [b:2048/1024/2|bs:2048/1024/2] channel flags=0x6100<BUSY,HAS_VCHAN,VCHAN_PASSTHROUGH> {userland} -> feeder_mixer(0x00200010) -> {hardware} pcm1:play:dsp1.p0[pcm1:virtual_play:dsp1.vp0]: spd 44100/48000, fmt 0x00200008/0x00200010, flags 0x10000000, 0x0000002b interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:4096/512/8] channel flags=0x10000000<VIRTUAL> {userland} -> feeder_root(0x00200008) -> feeder_format(0x00200008 -> 0x00200010) -> feeder_volume(0x00200010) -> feeder_rate(0x00200010 q:1 44100 -> 48000) -> {hardware} pcm2: <NVIDIA (0x009a) (HDMI/DP 8ch)> on hdaa0 (1p:1v/0r:0v) snddev flags=0x200002e7<SIMPLEX,AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC,PRIO_W R> [pcm2:play:dsp2.p0]: spd 48000, fmt 0x00200010, flags 0x00006100, 0x00000004 interrupts 1000, underruns 0, feed 1000, ready 0 [b:2048/1024/2|bs:2048/1024/2] channel flags=0x6100<BUSY,HAS_VCHAN,VCHAN_PASSTHROUGH> {userland} -> feeder_mixer(0x00200010) -> {hardware} pcm2:play:dsp2.p0[pcm2:virtual_play:dsp2.vp0]: spd 44100/48000, fmt 0x00200008/0x00200010, flags 0x10000000, 0x0000002b interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:4096/512/8] channel flags=0x10000000<VIRTUAL> {userland} -> feeder_root(0x00200008) -> feeder_format(0x00200008 -> 0x00200010) -> feeder_volume(0x00200010) -> feeder_rate(0x00200010 q:1 44100 -> 48000) -> {hardware} pcm3: <NVIDIA (0x009a) (HDMI/DP 8ch)> on hdaa0 (1p:1v/0r:0v) snddev flags=0x200002e7<SIMPLEX,AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC,PRIO_W R> [pcm3:play:dsp3.p0]: spd 48000, fmt 0x00200010, flags 0x00006100, 0x00000004 interrupts 978, underruns 0, feed 978, ready 0 [b:2048/1024/2|bs:2048/1024/2] channel flags=0x6100<BUSY,HAS_VCHAN,VCHAN_PASSTHROUGH> {userland} -> feeder_mixer(0x00200010) -> {hardware} pcm3:play:dsp3.p0[pcm3:virtual_play:dsp3.vp0]: spd 44100/48000, fmt 0x00200008/0x00200010, flags 0x10000000, 0x0000002b interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:4096/512/8] channel flags=0x10000000<VIRTUAL> {userland} -> feeder_root(0x00200008) -> feeder_format(0x00200008 -> 0x00200010) -> feeder_volume(0x00200010) -> feeder_rate(0x00200010 q:1 44100 -> 48000) -> {hardware} pcm4: <Universal Audio Volt 176> on uaudio0 (1p:2v/1r:1v) default snddev flags=0x2e6<AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC> [pcm4:play:dsp4.p0]: spd 48000, fmt 0x00200010/0x00201000, flags 0x00002108, 0x00000006 interrupts 331088, underruns 0, feed 331087, ready 0 [b:1536/768/2|bs:1024/512/2] channel flags=0x2108<TRIGGERED,BUSY,HAS_VCHAN> {userland} -> feeder_mixer(0x00200010) -> feeder_format(0x00200010 -> 0x00201000) -> {hardware} pcm4:play:dsp4.p0[pcm4:virtual_play:dsp4.vp0]: spd 192000/48000, fmt 0x00200010, flags 0x1000114c, 0x00000029, pid 31315 (audacity) interrupts 0, underruns 0, feed 362155, ready 98944 [b:0/0/0|bs:131072/32768/4] channel flags=0x1000114c<RUNNING,TRIGGERED,NBIO,BUSY,HAS_SIZE,VIRTUAL> {userland} -> feeder_root(0x00200010) -> feeder_rate(0x00200010 q:1 192000 -> 48000) -> feeder_volume(0x00200010) -> {hardware} pcm4:play:dsp4.p0[pcm4:virtual_play:dsp4.vp1]: spd 44100/48000, fmt 0x00200010, flags 0x10000000, 0x00000029 interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:8192/1024/8] channel flags=0x10000000<VIRTUAL> {userland} -> feeder_root(0x00200010) -> feeder_volume(0x00200010) -> feeder_rate(0x00200010 q:1 44100 -> 48000) -> {hardware} [pcm4:record:dsp4.r0]: spd 48000, fmt 0x00200010/0x00201000, flags 0x00002100, 0x00000007 interrupts 93724, overruns 0, feed 281172, hfree 1536, sfree 1024 [b:1536/768/2|bs:1024/512/2] channel flags=0x2100<BUSY,HAS_VCHAN> {hardware} -> feeder_root(0x00201000) -> feeder_format(0x00201000 -> 0x00200010) -> feeder_mixer(0x00200010) -> {userland} pcm4:record:dsp4.r0[pcm4:virtual_record:dsp4.vr0]: spd 44100/48000, fmt 0x00200010, flags 0x10000000, 0x00000029 interrupts 0, overruns 0, feed 0, hfree 0, sfree 32768 [b:0/0/0|bs:32768/256/128] channel flags=0x10000000<VIRTUAL> {hardware} -> feeder_root(0x00200010) -> feeder_rate(0x00200010 q:1 48000 -> 44100) -> feeder_volume(0x00200010) -> {userland} pcm5: <vendor 0x046d C922 Pro Stream Webcam> on uaudio1 (0p:0v/1r:1v) snddev flags=0x100002e3<SIMPLEX,AUTOVCHAN,BUSY,MPSAFE,REGISTERED,VPC,PRIO_RD> [pcm5:record:dsp5.r0]: spd 32000, fmt 0x00200010, flags 0x00002100, 0x00000005 interrupts 1952, overruns 0, feed 3904, hfree 512, sfree 512 [b:512/256/2|bs:512/256/2] channel flags=0x2100<BUSY,HAS_VCHAN> {hardware} -> feeder_root(0x00200010) -> feeder_mixer(0x00200010) -> {userland} pcm5:record:dsp5.r0[pcm5:virtual_record:dsp5.vr0]: spd 44100/32000, fmt 0x00100010/0x00200010, flags 0x10000000, 0x00000069 interrupts 0, overruns 0, feed 0, hfree 0, sfree 16384 [b:0/0/0|bs:16384/128/128] channel flags=0x10000000<VIRTUAL> {hardware} -> feeder_root(0x00200010) -> feeder_matrix(2.0 -> 1.0) -> feeder_volume(0x00100010) -> feeder_rate(0x00100010 q:1 32000 -> 44100) -> {userland} No devices installed from userspace.