14

Every now and then, for whatever reason, I have to restart pulseaudio to fix my audio. The problem I'm running into is that Chrome completely refuses to recognize my microphone after doing so without restarting chrome. If I restart chrome it seems to fix it but I tend to have many windows and work open and I shouldn't have to restart the whole program to have it recognize that my microphone exists. I have tested in Firefox and it does still see my micrphone after restarting pulseaudio so Chrome should be able to do it too.

Is there something I'm missing as to why Chrome would not be able to look at my audio devices? I'm guessing it's because it's "connection" to pulse is broken from the restart and it's not reconstructing it while running. Alternatively is there a better way to restart pulseaudio without running pulseaudio -k that might not break Chrome's connection?

I'm running Kubuntu 20.04.

UPDATE Jan, 2023: This issue doesn't seem to happen for me anymore. This is a pretty old issue and a lot has changed in my setup since then so I can't say what exactly fixed it. I recently upgraded to Kubuntu 22.04 and I'm now on Chrome v108.0.5359.98. I can confirm I just had to do pulseaudio -k to restart it and chrome did pick up audio again.

However I know this issue is still getting views so if it still happens for you the solution below always worked for me even though it's an extra step so I recommend trying that.

jjspace
  • 143

2 Answers2

19

This is a known issue with chromium (and chromium based browsers).

https://bugs.chromium.org/p/chromium/issues/detail?id=1085744#c3

The only current workaround without restarting is to restart the browser audio service.

Press Shift + Esc. In the Task Manager window that opens find Utility: Audio Service (it's usually the very bottom for me) and click End Process. Refresh your page and voila.

  • 3
    It sucks that this is an open issue but that workaround is exactly the kind of thing I was hoping for, much easier than restarting my whole browser with many windows. Thanks! – jjspace May 21 '21 at 18:38
1

I had a similar issue where after restarting pipewire and pipewire-pulse the microphone would stop working in Google Meet. When I tried changing it the settings would show a few error messages:

Microphone is blocked

No microphone found

Speaker selection is blocked

pipewire pipewire-pulse Chrome Google Meet Error: Microphone is blocked. No microphone found. Speaker selection is blocked.

Following Michael's answer I was able to fix the issue by killing the Chrome Audio Service and then reloading Google Meet:

# Restart system audio
systemctl --user restart pipewire pipewire-pulse
systemctl --user daemon-reload
sleep 10

check default sink (Speakers) and source (Microphone)

pactl info | grep Default

fix defaults using system sound settings or:

pactl list short sinks pactl set-default-sink $SINKID pactl list short sources pactl set-default-source $SOURCEID

Can also try moving existing streams to the new default (doesn't always work):

pactl list short sink-inputs | cut -f1 | xargs -I{} pactl move-sink-input {} $SINKID pactl list short source-outputs | cut -f1 | xargs -I{} pactl move-source-output {} $SOURCEID

Fix issues with existing chrome sessions (page may need to be refreshed)

pkill -f "/opt/google/chrome/chrome --type=utility --utility-sub-type=audio" sleep 10

Greg Bray
  • 286
  • 3
  • 10