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

  1. WebRTC/PipeWire Integration: Chrome/Chromium may not be properly configured to use PipeWire for video capture on Ubuntu (especially with Wayland)
  2. Auto-Exposure Issues: Brio’s auto-exposure may incorrectly adjust when background blur processing is enabled
  3. 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:

  1. Open Chrome/Chromium browser
  2. Navigate to: chrome://flags/#enable-webrtc-pipewire-capturer
  3. Set to “Enabled”
  4. Restart browser
  5. 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.

Terminal window
# Create PipeWire config directory
sudo mkdir -p /etc/pipewire/media-session.d/
# Copy default config
sudo cp /usr/share/pipewire/media-session.d/media-session.conf /etc/pipewire/media-session.d/
# Enable metadata support
sudo sed -i 's/#metadata/metadata/g' /etc/pipewire/media-session.d/media-session.conf
# Restart PipeWire
systemctl --user restart pipewire

Solution 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:

Terminal window
sudo apt install v4l-utils

Identify your camera device:

Terminal window
v4l2-ctl --list-devices

Adjust exposure settings (replace /dev/video0 with your actual device):

Terminal window
# Disable auto exposure
v4l2-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 dark
v4l2-ctl -d /dev/video0 -c gain=100

GUI Alternative: Install guvcview or qv4l2 for graphical camera control:

Terminal window
sudo apt install guvcview qv4l2

Solution 4: Hardware Acceleration Toggle

Try toggling Chrome’s hardware acceleration:

  1. Chrome Settings → System
  2. Toggle “Use hardware acceleration when available”
  3. Restart Chrome
  4. 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:

  1. Log out
  2. At login screen, click gear icon
  3. Select “Ubuntu on Xorg”
  4. Log back in

Note: This is a workaround, not a proper fix. Solutions 1-3 are preferred.


Diagnostic Commands

Check current camera settings:

Terminal window
v4l2-ctl -d /dev/video0 --all

List all video devices:

Terminal window
ls -l /dev/video*

Check if using Wayland or X11:

Terminal window
echo $XDG_SESSION_TYPE

Check Chrome GPU status: Navigate to: chrome://gpu/


  • 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:

  1. Close all Chrome/browser instances completely
  2. Restart browser
  3. Join Google Meet test call: https://meet.google.com/
  4. Enable background blur
  5. 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:

  1. Navigate to chrome://flags/
  2. Search for any enabled flags
  3. Disable these flags if present:
    • enable-unsafe-webgpu (WRONG FLAG - causes issues)
    • Any other experimental flags
  4. Enable ONLY this flag:
    • enable-webrtc-pipewire-capturer (CORRECT FLAG)
  5. Restart Chrome completely (close all windows)
  6. 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:

  1. Check Chrome Settings → System → “Use hardware acceleration when available” is ON
  2. Update browser: sudo apt update && sudo apt upgrade google-chrome-stable
  3. 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)