Files
2026-07-13 12:20:06 +08:00

1.7 KiB

PulseAudio Setup for Linux

Why PulseAudio is Required

The Zoom Video SDK for Linux requires PulseAudio for raw audio functions. Without it, audio raw data callbacks will not work.

Installation

sudo apt update
sudo apt install -y pulseaudio

Configuration

1. Create Configuration File

mkdir -p ~/.config
cat > ~/.config/zoomus.conf << 'CONFIG'
[General]
system.audio.type=default
CONFIG

2. Start PulseAudio (if not running)

pulseaudio --check || pulseaudio --start

Docker/Headless Setup

For Docker or headless environments:

# Install PulseAudio
apt-get update && apt-get install -y pulseaudio

# Create virtual devices
pactl load-module module-null-sink sink_name=virtual_speaker
pactl load-module module-null-source source_name=virtual_mic

# Configure Zoom
mkdir -p ~/.config
echo "[General]" > ~/.config/zoomus.conf
echo "system.audio.type=default" >> ~/.config/zoomus.conf

Better Approach: Use virtual audio speaker/mic in SDK:

session_context.virtualAudioSpeaker = new VirtualSpeaker();
session_context.virtualAudioMic = new VirtualMic();

Verification

# Check PulseAudio is running
pulseaudio --check && echo "Running" || echo "Not running"

# List audio devices
pactl list sinks short
pactl list sources short

# Test config
cat ~/.config/zoomus.conf

Common Issues

Issue: PulseAudio not starting

# Kill existing instance
pulseaudio --kill

# Start fresh
pulseaudio --start

# Check status
pulseaudio --check

Issue: Permission denied

# Add user to audio group
sudo usermod -aG audio $USER

# Logout and login again

Issue: No audio in Docker

Solution: Use virtual audio devices in SDK instead of system audio.