No sound in chromium since last updates (2023-03-08/09)

Hi,
since last update today, i have no longer sound when using chromium (111.0.5563.64 (Offizieller Build) Arch Linux (64-Bit)).

VLC, Firefox, Opera and Vivaldi don’t have this problem - KDE sounds are also working.

Steps:

  1. Open chromium, play vid on YouTube - no sound
  2. pavucontrol shows chromium playing on the correct sound device
  3. restarting pulseaudio with pulseaudio -k or systemctl --user restart pulseaudio.service brings back the sound immediately
  4. close chromium, open again, play YT vid → sound gone again
  5. goto 4 - sound works again.

What i have tried so far:
sudo pacman-mirrors -f && sudo pacman -Syyu
already actual - so no change

rm -rf ~/.config/pulse and restart → no change

inxi -A (ASUSTek Xonar U7 MKII is main output)

Audio:
  Device-1: AMD ACP/ACP3X/ACP6x Audio Coprocessor driver: N/A
  Device-2: AMD Family 17h/19h HD Audio driver: snd_hda_intel
  Device-3: C-Media Audio Adapter (Unitek Y-247A) type: USB
    driver: cmedia_hs100b,snd-usb-audio,usbhid
  Device-4: Razer USA Kraken Tournament Edition type: USB
    driver: hid-generic,snd-usb-audio,usbhid
  Device-5: ASUSTek Xonar U7 MKII type: USB
    driver: hid-generic,snd-usb-audio,usbhid
  Sound API: ALSA v: k6.2.2-1-MANJARO running: yes
  Sound Server-1: PulseAudio v: 16.1 running: yes
  Sound Server-2: PipeWire v: 0.3.66 running: yes
pulseaudio --version:
pulseaudio 16.1
systemctl --user status pulseaudio.service pulseaudio.socket                                                                                                                                               
● pulseaudio.service - Sound Service
     Loaded: loaded (/usr/lib/systemd/user/pulseaudio.service; disabled; preset: enabled)
     Active: active (running) since Thu 2023-03-09 08:10:09 CET; 1min 50s ago
TriggeredBy: ● pulseaudio.socket
   Main PID: 5136 (pulseaudio)
      Tasks: 10 (limit: 67379)
     Memory: 21.3M
        CPU: 4.524s
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pulseaudio.service
             ├─5136 /usr/bin/pulseaudio --daemonize=no --log-target=journal
             └─5169 /usr/lib/pulse/gsettings-helper

Mär 09 08:10:07 sal9000 systemd[1430]: Starting Sound Service...
Mär 09 08:10:09 sal9000 pulseaudio[5136]: Failed to find a working profile.
Mär 09 08:10:09 sal9000 pulseaudio[5136]: Failed to load module "module-alsa-card" (argument: "device_id="0" name="pci-0000_04_00.6" card_name="alsa_card.pci-0000_04_00.6" namereg_fail=false tsched=yes fixed_latency_ra>
Mär 09 08:10:09 sal9000 pulseaudio[5136]: stat('/etc/pulse/default.pa.d'): Datei oder Verzeichnis nicht gefunden
Mär 09 08:10:09 sal9000 systemd[1430]: Started Sound Service.
Mär 09 08:10:09 sal9000 pulseaudio[5136]: Could not find org.bluez.BatteryProviderManager1.RegisterBatteryProvider(), is bluetoothd started with experimental features enabled (-E flag)?

● pulseaudio.socket - Sound System
     Loaded: loaded (/usr/lib/systemd/user/pulseaudio.socket; enabled; preset: enabled)
     Active: active (running) since Thu 2023-03-09 07:53:23 CET; 18min ago
   Triggers: ● pulseaudio.service
     Listen: /run/user/1000/pulse/native (Stream)
     CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/pulseaudio.socket

Mär 09 07:53:23 sal9000 systemd[1430]: Listening on Sound System.
uname -a                                                                                                                                                                                                   
Linux sal9000 6.2.2-1-MANJARO #1 SMP PREEMPT_DYNAMIC Fri Mar  3 14:53:59 UTC 2023 x86_64 GNU/Linux

I’m on testing branch since 2020 and never had any problems - i configured this somewhen during the pandemic - it worked right out of the box so i never touched the sound stuff again.

any clue?
thanks in advance!

You have two sound servers running: pulseaudio and pipewire.
Choose one:

pamac install manjaro-pipewire
or
pamac install manjaro-pulse

(Please reboot afterwards.)

Ok, did that - but same problem as before.
Sound in chromium starts to work then i do systemctl --user restart pipewire.service during chromium is playing some sound

did you try systemctl --user enable pipewire.service

funny difference:
before pacman install manjaro-pipewire, i wasn’t even able to use ms teams anymore.
now that works again, but yt is still silent :stuck_out_tongue:

EDIT:
correction - ms teams in chromium does not work out of the box - only after pipewire.service restart

yes, everything else works, vlc, firefox,vivaldi,opera, kde sounds - but not in chromium.

and you have wireplumber installed? If so i am out of ideas.

had not - but now - no change.
i have a kraken headset for teams which is recognized and working in chromium - but the usb device is not - only after restart…no idea where to look further.

Looks like not all pages are not working.

… ?

You have 5 different audio devices installed. Please give more information about which one is connected, which one has no output, and so on. Keep it simple.

new inxi -A:

Audio:
  Device-1: AMD ACP/ACP3X/ACP6x Audio Coprocessor driver: N/A
  Device-2: AMD Family 17h/19h HD Audio driver: snd_hda_intel
  Device-3: C-Media Audio Adapter (Unitek Y-247A) type: USB
    driver: cmedia_hs100b,snd-usb-audio,usbhid
  Device-4: Razer USA Kraken Tournament Edition type: USB
    driver: hid-generic,snd-usb-audio,usbhid
  Device-5: ASUSTek Xonar U7 MKII type: USB
    driver: hid-generic,snd-usb-audio,usbhid
  Sound API: ALSA v: k6.2.2-1-MANJARO running: yes
  Sound Server-1: PipeWire v: 0.3.66 running: yes

Device-1, Device-2 Device-3: PC onboard devices, not connected
Device-4: Headset - this always works
Device-5: external USB Soundcard where my Logitec Z906 speakers (5.1) are connected to (analog)

Device-5 is the problematic one - works everywhere with no problems except for chromium.
hope this helps

Can you set anything with the speaker selection? Maybe it’s misconfigured in pavucontrol.

I got it working again:
Fiddling around with the Test button in KDE’s audio settings panel, i realized that the front L/R speakers were silent and only center,sub and rear l/r were working in the selected analog 5.1 config. Switching to analog 7.1 activated the side l/r speakers but front l/r were still silent. Checked cabling - everything ok.
Connected the USB soundcard to the Z906 via the digital coax then, changed input to Digital Surround 5.1 (IEC958/AC3) and … it works!

No idea why chromium didn’t work and Firefox did - maybe chromium does something with the stream/channels?

anyways - thanks for help!

maybe chromium does something with the stream/channels?

to check audio streams:

pactl list sink-inputs

Chromium playing on Analog 5.1 output - no sound:

Sink Input #688
        Driver: PipeWire
        Owner Module: n/a
        Client: 687
        Sink: 653
        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: yes
        Mute: no
        Volume: mono: 65536 / 100% / 0,00 dB
                balance 0,00
        Buffer Latency: 0 usec
        Sink Latency: 0 usec
        Resample method: PipeWire
        Properties:
                client.api = "pipewire-pulse"
                pulse.server.type = "unix"
                application.name = "Chromium"
                application.process.id = "23205"
                application.process.binary = "chromium"
                application.language = "de_AT.UTF-8"
                window.x11.display = ":0"
                application.process.machine_id = "e0c87621b90b4921ae382ccebc002fe3"
                application.process.session_id = "2"
                application.icon_name = "chromium-browser"
                media.name = "Playback"
                node.rate = "1/48000"
                node.latency = "1024/48000"
                stream.is-live = "true"
                node.name = "Chromium"
                node.autoconnect = "true"
                node.want-driver = "true"
                media.class = "Stream/Output/Audio"
                adapt.follower.spa-node = ""
                object.register = "false"
                factory.id = "6"
                clock.quantum-limit = "8192"
                factory.mode = "split"
                audio.adapt.follower = ""
                library.name = "audioconvert/libspa-audioconvert"
                client.id = "82"
                object.id = "149"
                object.serial = "688"
                pulse.attr.maxlength = "4194304"
                pulse.attr.tlength = "8192"
                pulse.attr.prebuf = "6148"
                pulse.attr.minreq = "2048"
                module-stream-restore.id = "sink-input-by-application-name:Chromium"

Sink Input #702
        Driver: PipeWire
        Owner Module: n/a
        Client: 701
        Sink: 653
        Sample Specification: float32le 6ch 48000Hz
        Channel Map: front-left,front-right,front-center,lfe,side-left,side-right
        Format: pcm, format.sample_format = "\"float32le\""  format.rate = "48000"  format.channels = "6"  format.channel_map = "\"front-left,front-right,front-center,lfe,side-left,side-right\""
        Corked: no
        Mute: no
        Volume: front-left: 65536 / 100% / 0,00 dB,   front-right: 65536 / 100% / 0,00 dB,   front-center: 65536 / 100% / 0,00 dB,   lfe: 65536 / 100% / 0,00 dB,   side-left: 65536 / 100% / 0,00 dB,   side-right: 65536 / 100% / 0,00 dB
                balance 0,00
        Buffer Latency: 0 usec
        Sink Latency: 0 usec
        Resample method: PipeWire
        Properties:
                client.api = "pipewire-pulse"
                pulse.server.type = "unix"
                application.name = "Chromium"
                application.process.id = "23205"
                application.process.binary = "chromium"
                application.language = "de_AT.UTF-8"
                window.x11.display = ":0"
                application.process.machine_id = "e0c87621b90b4921ae382ccebc002fe3"
                application.process.session_id = "2"
                application.icon_name = "chromium-browser"
                media.name = "Playback"
                node.rate = "1/48000"
                node.latency = "1024/48000"
                stream.is-live = "true"
                node.name = "Chromium"
                node.autoconnect = "true"
                node.want-driver = "true"
                media.class = "Stream/Output/Audio"
                adapt.follower.spa-node = ""
                object.register = "false"
                factory.id = "6"
                clock.quantum-limit = "8192"
                factory.mode = "split"
                audio.adapt.follower = ""
                library.name = "audioconvert/libspa-audioconvert"
                client.id = "144"
                object.id = "123"
                object.serial = "702"
                pulse.attr.maxlength = "4194288"
                pulse.attr.tlength = "49152"
                pulse.attr.prebuf = "36888"
                pulse.attr.minreq = "12288"
                module-stream-restore.id = "sink-input-by-application-name:Chromium"

Analog Surround 5.1 - with sound:
Sink Input #668

        Driver: PipeWire
        Owner Module: n/a
        Client: 667
        Sink: 653
        Sample Specification: float32le 2ch 48000Hz
        Channel Map: front-left,front-right
        Format: pcm, format.sample_format = "\"float32le\""  format.rate = "48000"  format.channels = "2"  format.channel_map = "\"front-left,front-right\""
        Corked: no
        Mute: no
        Volume: front-left: 65536 / 100% / 0,00 dB,   front-right: 65536 / 100% / 0,00 dB
                balance 0,00
        Buffer Latency: 0 usec
        Sink Latency: 0 usec
        Resample method: PipeWire
        Properties:
                client.api = "pipewire-pulse"
                pulse.server.type = "unix"
                application.name = "Chromium"
                application.process.id = "7436"
                application.process.binary = "chromium"
                application.language = "de_AT.UTF-8"
                window.x11.display = ":0"
                application.process.machine_id = "e0c87621b90b4921ae382ccebc002fe3"
                application.process.session_id = "2"
                application.icon_name = "chromium-browser"
                media.name = "Playback"
                node.rate = "1/48000"
                node.latency = "1024/48000"
                stream.is-live = "true"
                node.name = "Chromium"
                node.autoconnect = "true"
                node.want-driver = "true"
                media.class = "Stream/Output/Audio"
                adapt.follower.spa-node = ""
                object.register = "false"
                factory.id = "6"
                clock.quantum-limit = "8192"
                factory.mode = "split"
                audio.adapt.follower = ""
                library.name = "audioconvert/libspa-audioconvert"
                client.id = "82"
                object.id = "149"
                object.serial = "668"
                pulse.attr.maxlength = "4194304"
                pulse.attr.tlength = "16384"
                pulse.attr.prebuf = "12296"
                pulse.attr.minreq = "4096"
                module-stream-restore.id = "sink-input-by-application-name:Chromium"

compared to firefox - always works:

Sink Input #137
        Driver: PipeWire
        Owner Module: n/a
        Client: 136
        Sink: 51
        Sample Specification: float32le 2ch 44100Hz
        Channel Map: front-left,front-right
        Format: pcm, format.sample_format = "\"float32le\""  format.rate = "44100"  format.channels = "2"  format.channel_map = "\"front-left,front-right\""
        Corked: no
        Mute: no
        Volume: front-left: 47049 /  72% / -8,64 dB,   front-right: 47049 /  72% / -8,64 dB
                balance 0,00
        Buffer Latency: 0 usec
        Sink Latency: 0 usec
        Resample method: PipeWire
        Properties:
                client.api = "pipewire-pulse"
                pulse.server.type = "unix"
                application.name = "Firefox"
                application.process.id = "25272"
                application.process.binary = "firefox"
                application.language = "de_AT.UTF-8"
                window.x11.display = ":0"
                application.process.machine_id = "e0c87621b90b4921ae382ccebc002fe3"
                application.process.session_id = "2"
                media.name = "(8) lofi hip hop radio - beats to relax/study to - YouTube"
                node.rate = "1/44100"
                node.latency = "3307/44100"
                stream.is-live = "true"
                node.name = "Firefox"
                node.autoconnect = "true"
                node.want-driver = "true"
                media.class = "Stream/Output/Audio"
                adapt.follower.spa-node = ""
                object.register = "false"
                factory.id = "6"
                clock.quantum-limit = "8192"
                factory.mode = "split"
                audio.adapt.follower = ""
                library.name = "audioconvert/libspa-audioconvert"
                client.id = "102"
                object.id = "100"
                object.serial = "137"
                pulse.attr.maxlength = "4194304"
                pulse.attr.tlength = "44104"
                pulse.attr.prebuf = "35296"
                pulse.attr.minreq = "8816"
                module-stream-restore.id = "sink-input-by-application-name:Firefox"

Data for non-audible Chromium shows 2 sink-inputs

A mono sink-input shown as corked:

Sink Input #688
        Driver: PipeWire
        Owner Module: n/a
        Client: 687
        Sink: 653
        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: yes
        Mute: no

And a 6-channel surround

Sink Input #702
        Driver: PipeWire
        Owner Module: n/a
        Client: 701
        Sink: 653
        Sample Specification: float32le 6ch 48000Hz
        Channel Map: front-left,front-right,front-center,lfe,side-left,side-right
                Corked: no
        Mute: no
        Volume: front-left: 65536 / 100% / 0,00 dB,   front-right: 65536 / 100% / 0,00 dB,   front-center: 65536 / 100% / 0,00 dB,   lfe: 65536 / 100% / 0,00 dB,   side-left: 65536 / 100% / 0,00 dB,   side-right: 65536 / 100% / 0,00 dB
                balance 0,00

Data for audible Chromium shows only one stereo sink-input

Sink Input #668
        Driver: PipeWire
        Owner Module: n/a
        Client: 667
        Sink: 653
        Sample Specification: float32le 2ch 48000Hz
        Channel Map: front-left,front-right
        Format: pcm, format.sample_format = "\"float32le\""  format.rate = "48000"  format.channels = "2"  format.channel_map = "\"front-left,front-right\""
        Corked: no
        Mute: no

Are you using the same audio sources for both Chromium tests?

I suggest that next time audio fails in chromium you open a local audio file in browser and close any other tabs playing audio, to get a consistent stereo stream
Chromium might be able to playing stereo audio no problem and may just be failing to downmix audio to stereo

pipewire.service should be disabled so it is controlled by pipewire.socket
(see comment in /usr/lib/systemd/user/pipewire.service for more information about sockets and service units)

I suggest you check both systemd units for errors before restarting

systemctl --user -l --no-pager status pipewire.socket pipewire.service

It may also be helpful to check pipewire-pulse.socket; pipewire-pulse.service and wireplumber.service too