Webcam Microphone does not work in Firefox for video chat

Edit-01: Reposted a new system information as I forgot to do so with the web cam plugged in so it shows that hardware.


Hello,

I’m having an issue with the internal microphone of my Logitech HD Pro Webcam C920 web cam not working in Firefox, but seemingly only for my telehealth video chats. I know that it does indeed actually work, as it worked with no issue at all in this exact same situation, on the exact same hardware in my previous Linux distribution of Linuxmint 20.3, and also in the major versions before that it worked with no problems.

Since I installed Manjaro XFCE, it has not worked for my telehealth video chat sessions in Firefox. What I notice is that when I open the link for the telehealth session, I get three permission pop ups for the camera and microphone, and then what seems to be a verification of what is chosen. The default audio input source for the microphone permission pop up is “Monitor of Built-in Audio Analog Stereo”, which is incorrect. I open the drop down menu and select the correct input source of “HD Pro Webcam C920 Analog Stereo”. Then the third verification pop up shows that it is using “Monitor of Built-in Audio Analog Stereo”. And of course my health care provider on the other end of the chat cannot hear me.

Opening pavucontrol I can see the web cam microphone in the “Input Devices” tab, and that the meter is getting a signal from my voice. In the “Recording” tab it shows Firefox is recording from “Monitor of Built-in Audio Analog Stereo”, which is incorrect, and of course there is no signal showing. Opening the drop down and changing it to “HD Pro Webcam C920 Analog Stereo”, still gets no sound from this microphone, and no signal shows.

Alsamixer shows the microphone input for the web cam after pressing F6 and choosing the web cam, and it is on 100% by default.

I’ve tried deleting the pulseaudio config and restarting Manjaro. This did not work.

I’ve tried deleting Firefox’s web cache, cookies, and internal site data. This did not work.

I’ve tried a few diagnostic things from this other forum post.

The recording demo web site that someone posted in the above link does indeed work.

As does:

arecord --duration=5 --format=dat test-mic.wav
aplay test-mic.wav

I’ve also tried starting a video chat in jitsi.org, but have yet to test with another person connected. The correct microphone is chosen, and in pavucontrol in the “Recording” tab, it shows Firefox recording from the web cam microphone, and there is an audio signal from my voice in the meter. And Jitsi does say the microphone is working for what that is worth.

System information:

inxi -v7azy
System:
  Kernel: 6.2.12-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 12.2.1
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.2-x86_64
    root=UUID=7361f228-1102-406f-93c9-8c30f3d4372e rw quiet splash apparmor=1
    security=apparmor udev.log_priority=3
  Desktop: Xfce v: 4.18.1 tk: Gtk v: 3.24.36 info: xfce4-panel wm: xfwm
    v: 4.18.0 vt: 7 dm: LightDM v: 1.32.0 Distro: Manjaro Linux base: Arch Linux
Machine:
  Type: Desktop Mobo: ASUSTeK model: Z170-A v: Rev 1.xx
    serial: <superuser required> UEFI-[Legacy]: American Megatrends v: 3802
    date: 03/15/2018
Battery:
  Message: No system battery data found. Is one present?
Memory:
  RAM: total: 15.56 GiB used: 2.27 GiB (14.6%)
  RAM Report: permissions: Unable to run dmidecode. Root privileges required.
CPU:
  Info: model: Intel Core i7-6700K bits: 64 type: MT MCP arch: Skylake-S
    gen: core 6 level: v3 note: check built: 2015 process: Intel 14nm family: 6
    model-id: 0x5E (94) stepping: 3 microcode: 0xF0
  Topology: cpus: 1x cores: 4 tpc: 2 threads: 8 smt: enabled cache:
    L1: 256 KiB desc: d-4x32 KiB; i-4x32 KiB L2: 1024 KiB desc: 4x256 KiB
    L3: 8 MiB desc: 1x8 MiB
  Speed (MHz): avg: 4047 high: 4190 min/max: 800/4200 scaling:
    driver: intel_pstate governor: powersave cores: 1: 4001 2: 4001 3: 4180
    4: 4001 5: 4000 6: 4001 7: 4190 8: 4002 bogomips: 64026
  Flags: 3dnowprefetch abm acpi adx aes aperfmperf apic arat
    arch_capabilities arch_perfmon art avx avx2 bmi1 bmi2 bts clflush
    clflushopt cmov constant_tsc cpuid cpuid_fault cx16 cx8 de ds_cpl dtes64
    dtherm dts epb erms est f16c flush_l1d fma fpu fsgsbase fxsr ht hwp
    hwp_act_window hwp_epp hwp_notify ibpb ibrs ida intel_pt invpcid
    invpcid_single lahf_lm lm mca mce md_clear mmx monitor movbe mpx msr mtrr
    nonstop_tsc nopl nx pae pat pbe pcid pclmulqdq pdcm pdpe1gb pebs pge pln
    pni popcnt pse pse36 pti pts rdrand rdseed rdtscp rep_good sdbg sep smap
    smep ss ssbd sse sse2 sse4_1 sse4_2 ssse3 stibp syscall tm tm2 tsc
    tsc_adjust tsc_deadline_timer vme x2apic xgetbv1 xsave xsavec xsaveopt
    xsaves xtopology xtpr
  Vulnerabilities:
  Type: itlb_multihit status: KVM: VMX unsupported
  Type: l1tf mitigation: PTE Inversion
  Type: mds mitigation: Clear CPU buffers; SMT vulnerable
  Type: meltdown mitigation: PTI
  Type: mmio_stale_data mitigation: Clear CPU buffers; SMT vulnerable
  Type: retbleed mitigation: IBRS
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: IBRS, IBPB: conditional, STIBP: conditional,
    RSB filling, PBRSB-eIBRS: Not affected
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort mitigation: TSX disabled
Graphics:
  Device-1: NVIDIA GM204 [GeForce GTX 970] vendor: ASUSTeK driver: nvidia
    v: 530.41.03 alternate: nouveau,nvidia_drm non-free: 530.xx+
    status: current (as of 2023-03) arch: Maxwell code: GMxxx
    process: TSMC 28nm built: 2014-19 pcie: gen: 3 speed: 8 GT/s lanes: 16
    bus-ID: 01:00.0 chip-ID: 10de:13c2 class-ID: 0300
  Device-2: Logitech HD Pro Webcam C920 type: USB
    driver: snd-usb-audio,uvcvideo bus-ID: 1-13:3 chip-ID: 046d:082d
    class-ID: 0102 serial: <filter>
  Display: x11 server: X.Org v: 21.1.8 compositor: xfwm v: 4.18.0 driver: X:
    loaded: nvidia gpu: nvidia display-ID: :0.0 screens: 1
  Screen-1: 0 s-res: 2560x1440 s-dpi: 96 s-size: 677x381mm (26.65x15.00")
    s-diag: 777mm (30.58")
  Monitor-1: DP-0 res: 2560x1440 hz: 60 dpi: 109
    size: 597x336mm (23.5x13.23") diag: 685mm (26.97") modes: N/A
  API: OpenGL v: 4.6.0 NVIDIA 530.41.03 renderer: NVIDIA GeForce GTX
    970/PCIe/SSE2 direct-render: Yes
Audio:
  Device-1: Intel 100 Series/C230 Series Family HD Audio vendor: ASUSTeK
    driver: snd_hda_intel v: kernel bus-ID: 1-13:3 chip-ID: 046d:082d
    alternate: snd_soc_avs bus-ID: 00:1f.3 class-ID: 0102 serial: <filter>
    chip-ID: 8086:a170 class-ID: 0403
  Device-2: NVIDIA GM204 High Definition Audio vendor: ASUSTeK
    driver: snd_hda_intel v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 16
    bus-ID: 01:00.1 chip-ID: 10de:0fbb class-ID: 0403
  Device-3: Logitech HD Pro Webcam C920 type: USB
    driver: snd-usb-audio,uvcvideo
  API: ALSA v: k6.2.12-1-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsamixer,amixer
  Server-1: JACK v: 1.9.22 status: off tools: N/A
  Server-2: PipeWire v: 0.3.70 status: off tools: pw-cli
  Server-3: PulseAudio v: 16.1 status: active tools: pacat,pactl,pavucontrol
Network:
  Device-1: Intel Ethernet I219-V vendor: ASUSTeK driver: e1000e v: kernel
    port: N/A bus-ID: 00:1f.6 chip-ID: 8086:15b8 class-ID: 0200
  IF: enp0s31f6 state: up speed: 1000 Mbps duplex: full mac: <filter>
  IP v4: <filter> type: noprefixroute scope: global broadcast: <filter>
  WAN IP: <filter>
Bluetooth:
  Message: No bluetooth data found.
Logical:
  Message: No logical block device data found.
RAID:
  Message: No RAID data found.
Drives:
  Local Storage: total: 3.64 TiB used: 209.53 GiB (5.6%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Sabrent model: Rocket Q
    size: 1.82 TiB block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s
    lanes: 4 type: SSD serial: <filter> rev: RKT30Q.1 temp: 25.9 C scheme: MBR
  ID-2: /dev/sda maj-min: 8:0 vendor: Seagate model: ST2000DM001-1ER164
    size: 1.82 TiB block-size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s
    type: HDD rpm: 7200 serial: <filter> rev: CC25 scheme: MBR
  Optical-1: /dev/sr0 vendor: HL-DT-ST model: DVDRAM GH24NSC0 rev: LK00
    dev-links: cdrom
  Features: speed: 12 multisession: yes audio: yes dvd: yes
    rw: cd-r,cd-rw,dvd-r,dvd-ram state: running
Partition:
  ID-1: / raw-size: 1.82 TiB size: 1.79 TiB (98.37%) used: 209.53 GiB (11.4%)
    fs: ext4 dev: /dev/nvme0n1p1 maj-min: 259:1 label: N/A
    uuid: 7361f228-1102-406f-93c9-8c30f3d4372e
Swap:
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default)
  ID-1: swap-1 type: file size: 512 MiB used: 0 KiB (0.0%) priority: -2
    file: /swapfile
Unmounted:
  ID-1: /dev/sda1 maj-min: 8:1 size: 1.82 TiB fs: ntfs label: MM-storage
    uuid: 7DC123C74498A0AD
USB:
  Hub-1: 1-0:1 info: Hi-speed hub with single TT ports: 16 rev: 2.0
    speed: 480 Mb/s chip-ID: 1d6b:0002 class-ID: 0900
  Device-1: 1-10:2 info: Sunplus Innovation Optical Mouse type: Mouse
    driver: hid-generic,usbhid interfaces: 1 rev: 2.0 speed: 1.5 Mb/s power: 98mA
    chip-ID: 1bcf:0005 class-ID: 0301
  Device-2: 1-13:3 info: Logitech HD Pro Webcam C920 type: Video,Audio
    driver: snd-usb-audio,uvcvideo interfaces: 4 rev: 2.0 speed: 480 Mb/s
    power: 500mA chip-ID: 046d:082d class-ID: 0102 serial: <filter>
  Hub-2: 2-0:1 info: Super-speed hub ports: 10 rev: 3.0 speed: 5 Gb/s
    chip-ID: 1d6b:0003 class-ID: 0900
  Hub-3: 3-0:1 info: Hi-speed hub with single TT ports: 2 rev: 2.0
    speed: 480 Mb/s chip-ID: 1d6b:0002 class-ID: 0900
  Hub-4: 4-0:1 info: Super-speed hub ports: 2 rev: 3.1 speed: 10 Gb/s
    chip-ID: 1d6b:0003 class-ID: 0900
Sensors:
  System Temperatures: cpu: 22.0 C mobo: N/A gpu: nvidia temp: 48 C
  Fan Speeds (RPM): N/A gpu: nvidia fan: 0%
Info:
  Processes: 248 Uptime: 24m wakeups: 0 Init: systemd v: 252 default: graphical
  tool: systemctl Compilers: gcc: 12.2.1 clang: 15.0.7 Packages: pm: pacman
  pkgs: 1198 libs: 387 tools: pamac pm: flatpak pkgs: 0 Shell: Bash v: 5.1.16
  running-in: xfce4-terminal inxi: 3.3.26

Any ideas?

Is it blocked in Settings-Privacy & Security-Permissions?

No.

Please post more information about audio sources in PulseAudio

pactl list sources; pactl info | grep Source

Comments in post#1 suggest default-source is set to:
alsa_output.pci-0000_00_1f.3.analog-stereo.monitor ( Monitor of Built-in Audio Analog Stereo)
and should be changed to source name of webcam:
alsa_input.usb-Logitech... ...analog-stereo (HD Pro Webcam C920 Analog Stereo)

PulseAudio/Examples/Set default input source - ArchWiki

Hello nikgnomic! :slight_smile:

I think you are onto something here with this!

And it seems that this maybe more my unfamiliarity with pavucontrol that Linuxmint (my prior Linux distribtuion) with Cinnamon did not use by default which was more obvious in it’s use.

pactl list sources; pactl info | grep Source
Source #0
	State: RUNNING
	Name: alsa_output.pci-0000_01_00.1.hdmi-stereo.monitor
	Description: Monitor of GM204 High Definition Audio Controller Digital Stereo (HDMI)
	Driver: module-alsa-card.c
	Sample Specification: s16le 2ch 44100Hz
	Channel Map: front-left,front-right
	Owner Module: 6
	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.hdmi-stereo
	Latency: 0 usec, configured 40000 usec
	Flags: DECIBEL_VOLUME LATENCY 
	Properties:
		device.description = "Monitor of GM204 High Definition Audio Controller Digital Stereo (HDMI)"
		device.class = "monitor"
		alsa.card = "1"
		alsa.card_name = "HDA NVidia"
		alsa.long_card_name = "HDA NVidia at 0xdf080000 irq 17"
		alsa.driver_name = "snd_hda_intel"
		device.bus_path = "pci-0000:01:00.1"
		sysfs.path = "/devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card1"
		device.bus = "pci"
		device.vendor.id = "10de"
		device.vendor.name = "NVIDIA Corporation"
		device.product.id = "0fbb"
		device.product.name = "GM204 High Definition Audio Controller"
		device.string = "1"
		module-udev-detect.discovered = "1"
		device.icon_name = "audio-card-pci"
	Formats:
		pcm

Source #1
	State: RUNNING
	Name: alsa_output.pci-0000_00_1f.3.analog-stereo.monitor
	Description: Monitor of Built-in Audio Analog Stereo
	Driver: module-alsa-card.c
	Sample Specification: s16le 2ch 44100Hz
	Channel Map: front-left,front-right
	Owner Module: 7
	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 40000 usec
	Flags: DECIBEL_VOLUME LATENCY 
	Properties:
		device.description = "Monitor of Built-in Audio Analog Stereo"
		device.class = "monitor"
		alsa.card = "0"
		alsa.card_name = "HDA Intel PCH"
		alsa.long_card_name = "HDA Intel PCH at 0xdf340000 irq 147"
		alsa.driver_name = "snd_hda_intel"
		device.bus_path = "pci-0000:00:1f.3"
		sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
		device.bus = "pci"
		device.vendor.id = "8086"
		device.vendor.name = "Intel Corporation"
		device.product.id = "a170"
		device.product.name = "100 Series/C230 Series Chipset Family HD Audio Controller"
		device.form_factor = "internal"
		device.string = "0"
		module-udev-detect.discovered = "1"
		device.icon_name = "audio-card-pci"
	Formats:
		pcm

Source #2
	State: RUNNING
	Name: alsa_input.pci-0000_00_1f.3.analog-stereo
	Description: Built-in Audio Analog Stereo
	Driver: module-alsa-card.c
	Sample Specification: s16le 2ch 44100Hz
	Channel Map: front-left,front-right
	Owner Module: 7
	Mute: no
	Volume: front-left: 44652 /  68% / -10.00 dB,   front-right: 44652 /  68% / -10.00 dB
	        balance 0.00
	Base Volume: 6554 /  10% / -60.00 dB
	Monitor of Sink: n/a
	Latency: 242 usec, configured 40000 usec
	Flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY 
	Properties:
		alsa.resolution_bits = "16"
		device.api = "alsa"
		device.class = "sound"
		alsa.class = "generic"
		alsa.subclass = "generic-mix"
		alsa.name = "ALC892 Analog"
		alsa.id = "ALC892 Analog"
		alsa.subdevice = "0"
		alsa.subdevice_name = "subdevice #0"
		alsa.device = "0"
		alsa.card = "0"
		alsa.card_name = "HDA Intel PCH"
		alsa.long_card_name = "HDA Intel PCH at 0xdf340000 irq 147"
		alsa.driver_name = "snd_hda_intel"
		device.bus_path = "pci-0000:00:1f.3"
		sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
		device.bus = "pci"
		device.vendor.id = "8086"
		device.vendor.name = "Intel Corporation"
		device.product.id = "a170"
		device.product.name = "100 Series/C230 Series Chipset Family HD Audio Controller"
		device.form_factor = "internal"
		device.string = "front:0"
		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 = "Built-in Audio Analog Stereo"
		module-udev-detect.discovered = "1"
		device.icon_name = "audio-card-pci"
	Ports:
		analog-input-front-mic: Front Microphone (type: Mic, priority: 8500, available)
		analog-input-rear-mic: Rear Microphone (type: Mic, priority: 8200, not available)
		analog-input-linein: Line In (type: Line, priority: 8100, not available)
	Active Port: analog-input-front-mic
	Formats:
		pcm

Source #3
	State: RUNNING
	Name: alsa_input.usb-046d_HD_Pro_Webcam_C920_E69133AF-02.analog-stereo
	Description: HD Pro Webcam C920 Analog Stereo
	Driver: module-alsa-card.c
	Sample Specification: s16le 2ch 32000Hz
	Channel Map: front-left,front-right
	Owner Module: 26
	Mute: no
	Volume: front-left: 65534 / 100% / -0.00 dB,   front-right: 65534 / 100% / -0.00 dB
	        balance 0.00
	Base Volume: 9619 /  15% / -50.00 dB
	Monitor of Sink: n/a
	Latency: 0 usec, configured 40000 usec
	Flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY 
	Properties:
		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 = "2"
		alsa.card_name = "HD Pro Webcam C920"
		alsa.long_card_name = "HD Pro Webcam C920 at usb-0000:00:14.0-13, high speed"
		alsa.driver_name = "snd_usb_audio"
		device.bus_path = "pci-0000:00:14.0-usb-0:13:1.2"
		sysfs.path = "/devices/pci0000:00/0000:00:14.0/usb1/1-13/1-13:1.2/sound/card2"
		udev.id = "usb-046d_HD_Pro_Webcam_C920_E69133AF-02"
		device.bus = "usb"
		device.vendor.id = "046d"
		device.vendor.name = "Logitech, Inc."
		device.product.id = "082d"
		device.product.name = "HD Pro Webcam C920"
		device.serial = "046d_HD_Pro_Webcam_C920_E69133AF"
		device.form_factor = "webcam"
		device.string = "front:2"
		device.buffering.buffer_size = "256000"
		device.buffering.fragment_size = "128000"
		device.access_mode = "mmap+timer"
		device.profile.name = "analog-stereo"
		device.profile.description = "Analog Stereo"
		device.description = "HD Pro Webcam C920 Analog Stereo"
		module-udev-detect.discovered = "1"
		device.icon_name = "camera-web-usb"
	Ports:
		analog-input-mic: Microphone (type: Mic, priority: 8700, availability unknown)
	Active Port: analog-input-mic
	Formats:
		pcm
Default Source: alsa_output.pci-0000_00_1f.3.analog-stereo.monitor

You are correct, as the first inxi output I forgot to have the web cam plugged in, but I did update that.

On my system there is only two possible microphone sources, the C920 web cam, and an analog headset. Normally neither is plugged in, and when they are used, only one or the other is plugged in.

With neither plugged in, this is the result:

pacmd list-sources | grep -e 'index:' -e device.string -e 'name:'
    index: 0
	name: <alsa_output.pci-0000_01_00.1.hdmi-stereo.monitor>
		device.string = "1"
  * index: 1
	name: <alsa_output.pci-0000_00_1f.3.analog-stereo.monitor>
		device.string = "0"

Both web cam and headset plugged in, this is what it defaults to:

pacmd list-sources | grep -e 'index:' -e device.string -e 'name:'
    index: 0
	name: <alsa_output.pci-0000_01_00.1.hdmi-stereo.monitor>
		device.string = "1"
  * index: 1
	name: <alsa_output.pci-0000_00_1f.3.analog-stereo.monitor>
		device.string = "0"
    index: 2
	name: <alsa_input.pci-0000_00_1f.3.analog-stereo>
		device.string = "front:0"
    index: 3
	name: <alsa_input.usb-046d_HD_Pro_Webcam_C920_E69133AF-02.analog-stereo>
		device.string = "front:2"

Web cam plugged in, and in pavucontrol for input devices it is set as fallback:

pacmd list-sources | grep -e 'index:' -e device.string -e 'name:'
    index: 0
	name: <alsa_output.pci-0000_01_00.1.hdmi-stereo.monitor>
		device.string = "1"
    index: 1
	name: <alsa_output.pci-0000_00_1f.3.analog-stereo.monitor>
		device.string = "0"
    index: 2
	name: <alsa_input.pci-0000_00_1f.3.analog-stereo>
		device.string = "front:0"
  * index: 4
	name: <alsa_input.usb-046d_HD_Pro_Webcam_C920_E69133AF-02.analog-stereo>
		device.string = "front:2"

Headset plugged in, and in pavucontrol for input devices it is set as fallback:

pacmd list-sources | grep -e 'index:' -e device.string -e 'name:'
    index: 0
	name: <alsa_output.pci-0000_01_00.1.hdmi-stereo.monitor>
		device.string = "1"
    index: 1
	name: <alsa_output.pci-0000_00_1f.3.analog-stereo.monitor>
		device.string = "0"
  * index: 2
	name: <alsa_input.pci-0000_00_1f.3.analog-stereo>
		device.string = "front:0"
    index: 4
	name: <alsa_input.usb-046d_HD_Pro_Webcam_C920_E69133AF-02.analog-stereo>
		device.string = "front:2"

From the above pacmd logs, it appears that I can control the default input device via the “Set as fallback” feature in pavucontrol. Though it never saves that setting when unplugged and plugged back in. Would I be correct that this is in part user error that I’m encountering here?

I have to think that something in the way the telehealth provider is using Firefox is not letting it pick anything other than the default input source. As Jitsi video chat through Firefox lets me choose the non-default audio input source.

And that with my telehealth video chats, without setting a default input source for the pulseaudio config, I would need to plug in the web cam, then set the web cam as the default audio input source in pavucontrol via set as fallback, before opening the telehealth link in Firefox?

Will there be any problems by settings the web cam as the default input source in pulseaudio at ~/.config/pulse, when it is not plugged in most of the time?

Do you think the telehealth provider has an issue to correct on their end, even though it appears like I can work around it?

Thank you for your help!

It also just occurred to me to try this on my secondary PC that is testing Manjaro KDE. And what ever it is using for the sound settings works in a much more sane way like I’m used to on Linuxmint. When the web cam is plugged in, it automatically defaults to that as the audio input source.

Is this an option a user can set in Manjaro XFCE for pulseaudio to behave that way?

I think I see part of my problem, at least for working around any potential issue with how the telehealth software provider controls Firefox for video chat.

I was looking into why my Manjaro KDE computer behaved differently when plugging in the web cam than on my main computer with Manjaro XFCE.

Turns out, on the KDE computer in .config/pulse/ there is nothing specified in the default-sink and default-source config files.

Where as on my XFCE computer, both of those config files had the following line in it which is incorrect:

alsa_output.pci-0000_00_1f.3.analog-stereo.monitor

Deleting that line out of both of those files, and then restarting pulseaudio via Terminal command:

pulseaudio -k

The first time I did this, when plugging in the web cam, pulseaudio correctly switched to the web cam microphone as the default input/source. After unplugging it, it wrote to default-source file the old prior value. Why is it doing this?

I want it to behave the same way as Manjaro KDE is, of automatically switching to the new plugged in web cam as the default input source.

The end result of this post is that what I’m experiencing is indeed part user error, part unexpected behavior in pavucontrol in XFCE, and part bug for the Telehealth software provider.

The main problem is the choice of words used in pavucontrol. The check mark setting titled “Set as fallback”, really means “Set as default”. And now I’m dimly remembering having this same issue many years ago when trying XFCE on a different Linux distribution. :frowning:

See the following link:

https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/DefaultDevice/

I don’t know how they can call fallback and default synonyms.

Unless I’m misunderstanding how this word is used in this program, dictionary references don’t match up with that wording.

The fix for me was after plugging in my webcam, to open pavucontrol and set the webcam microphone as Fallback. Then when I logged into my telehealth session through firefox, it saw that microphone as the first choice and all worked well. Once this was done a few times, pavucontrol remembers this setting for Firefox as I understand it, and I don’t have to check that setting anymore.

The unexpected behavior is that in my prior Linux distribution of Linuxmint Cinnamon that I used for many years, I never encountered this issue. And as mentioned in my prior comment, Manjaro KDE on my other computer does not either. When there is no audio inputs connected and you plug one in, it automatically sets it to default.

The bug with the telehealth software was reported to my healthcare provider who said they passed it along to them.

AFAIK only pavucontrol and pavucontrol-qt uses “fallback”. Most other GUI,TUI and CLI tools for PulseAudio use “default”
(pasystray; pulsemixer; pamixer in official repositories. Also myxer and pagraphcontrol in AUR)

pacmd list-sources uses an asterisk to show default-source

This command is the simplest way to set the webcam as default-source

pactl set-default-source alsa_input.usb-046d_HD_Pro_Webcam_C920_E69133AF-02.analog-stereo

Will there be any problems by settings the web cam as the default input source in pulseaudio at ~/.config/pulse, when it is not plugged in most of the time?

I use the 2 files in ~/.config/pulse/ folder to set default-sink to jack_out and default-source to jack_in (bridge connections to and from JACK)
if JACK server is not running, PulseAudio uses an ALSA card as ‘fallback’ device
when JACK is started, PulseAudio module module-default-device-restore switches audio streams to the JACK bridge connections
when JACK is stopped module-rescue-streams switches audio streams back to fallback device

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.