google-meet-background-blur-dark-screen
Problem
When using Logitech Brio webcam on Ubuntu with Google Meet, attempting to blur the background causes the video to go dark/black. Other webcams work fine with background blur feature.
Root Causes
- WebRTC/PipeWire Integration: Chrome/Chromium may not be properly configured to use PipeWire for video capture on Ubuntu (especially with Wayland)
- Auto-Exposure Issues: Brio’s auto-exposure may incorrectly adjust when background blur processing is enabled
- Hardware Acceleration Conflicts: Chrome’s hardware acceleration may interfere with Google Meet’s background processing
Solutions (In Priority Order)
Solution 1: Enable WebRTC PipeWire Support (Most Likely Fix)
This resolves black screen issues with USB webcams on Ubuntu 22.04+ with Wayland.
Steps:
- Open Chrome/Chromium browser
- Navigate to:
chrome://flags/#enable-webrtc-pipewire-capturer - Set to “Enabled”
- Restart browser
- Test Google Meet with background blur
Why this works: Ensures proper video capture pipeline on modern Ubuntu with Wayland display server.
Solution 2: Configure PipeWire Metadata Support
Required for Ubuntu 22.04+ to properly handle screen/video capture.
# Create PipeWire config directorysudo mkdir -p /etc/pipewire/media-session.d/
# Copy default configsudo cp /usr/share/pipewire/media-session.d/media-session.conf /etc/pipewire/media-session.d/
# Enable metadata supportsudo sed -i 's/#metadata/metadata/g' /etc/pipewire/media-session.d/media-session.conf
# Restart PipeWiresystemctl --user restart pipewireSolution 3: Adjust Brio Camera Exposure Settings
The Brio may auto-adjust exposure incorrectly when background blur is active. Manual exposure control can fix this.
Install v4l-utils:
sudo apt install v4l-utilsIdentify your camera device:
v4l2-ctl --list-devicesAdjust exposure settings (replace /dev/video0 with your actual device):
# Disable auto exposurev4l2-ctl -d /dev/video0 -c exposure_auto=1
# Set manual exposure (adjust value between 3-2047 as needed)v4l2-ctl -d /dev/video0 -c exposure_absolute=250
# Optionally increase gain if too darkv4l2-ctl -d /dev/video0 -c gain=100GUI Alternative: Install guvcview or qv4l2 for graphical camera control:
sudo apt install guvcview qv4l2Solution 4: Hardware Acceleration Toggle
Try toggling Chrome’s hardware acceleration:
- Chrome Settings → System
- Toggle “Use hardware acceleration when available”
- Restart Chrome
- Test both ON and OFF states
Note: Hardware acceleration should typically be ON for background blur to work, but toggling can reset stuck states.
Solution 5: Switch to X11 (Last Resort)
If running Wayland, switching to X11 may resolve video capture issues:
- Log out
- At login screen, click gear icon
- Select “Ubuntu on Xorg”
- Log back in
Note: This is a workaround, not a proper fix. Solutions 1-3 are preferred.
Diagnostic Commands
Check current camera settings:
v4l2-ctl -d /dev/video0 --allList all video devices:
ls -l /dev/video*Check if using Wayland or X11:
echo $XDG_SESSION_TYPECheck Chrome GPU status:
Navigate to: chrome://gpu/
Related Issues
- Other high-end webcams (Brio, StreamCam) have similar issues on Linux due to advanced auto-exposure/HDR features
- Google Meet’s background processing may conflict with camera’s built-in processing
- Issue typically specific to Chromium-based browsers on Linux
Verification Steps
After applying solutions:
- Close all Chrome/browser instances completely
- Restart browser
- Join Google Meet test call: https://meet.google.com/
- Enable background blur
- Check video preview
Troubleshooting
Issue: Google Meet Shows Black Screen / Won’t Load After Enabling Flags
Symptom: After enabling flags, Google Meet page is completely black and won’t load. May see warning: “You are using an unsupported command-line flag”
Cause: Wrong flag was enabled or conflicting flags are active.
Solution:
- Navigate to
chrome://flags/ - Search for any enabled flags
- Disable these flags if present:
enable-unsafe-webgpu(WRONG FLAG - causes issues)- Any other experimental flags
- Enable ONLY this flag:
enable-webrtc-pipewire-capturer(CORRECT FLAG)
- Restart Chrome completely (close all windows)
- Test Google Meet again
Common mistake: Enabling enable-unsafe-webgpu instead of enable-webrtc-pipewire-capturer
Issue: Background Blur Option Grayed Out/Missing
Possible causes:
- Hardware acceleration disabled (needs to be ON)
- Browser too old (update Chrome/Chromium)
- Account restrictions (check Google Workspace admin settings)
Solutions:
- Check Chrome Settings → System → “Use hardware acceleration when available” is ON
- Update browser:
sudo apt update && sudo apt upgrade google-chrome-stable - Try in incognito mode to rule out extensions
Status
- Date Identified: 2025-11-16
- System: Ubuntu (version TBD)
- Browser: Chrome/Chromium (version TBD)
- Webcam: Logitech Brio
- Resolution Status: Testing in progress
- Last Updated: 2025-11-16 (Added troubleshooting for wrong flag issue)