Skip to content

Command Line Flags

LLrdc provides command-line flags and environment variables to fine-tune the container behavior, enable hardware acceleration, and output debugging information.

These flags are passed to the docker-run.sh script to configure the container environment.

Enables GPU acceleration for video encoding. This automatically maps NVIDIA GPU devices into the Docker container and sets the encoder to use NVENC (Nvidia Encoder). This substantially reduces CPU usage and decreases latency.

Requirements: You must have the NVIDIA Container Toolkit installed on your host machine for Docker to access the GPU.

Supported GPU Codecs: When this flag is enabled, you gain access to the following ultra-low-latency NVENC codecs in the web viewer panel:

  • H.264 (GPU - NVENC): Excellent compatibility across all modern browsers.
  • AV1 (GPU - NVENC): Next-generation compression offering the highest quality at the lowest bitrates (requires an AV1-capable NVIDIA GPU, such as the RTX 40 series or newer).

A master debug flag that enables verbose logging across the entire stack, including both FFmpeg streaming components and the X11 virtual display.

Enables debugging output specifically for FFmpeg. Helpful for diagnosing issues with the video encoder, inspecting frame rates, or identifying pipeline bottlenecks.

Enables debugging output specifically for the X11 virtual display and XFCE desktop environment. Use this to trace input events, keyboard mapping problems, or startup errors.

These flags help WebRTC select the correct network interface for streaming.

Restricts WebRTC to use only the specified network interface. This is useful for forcing traffic through a specific adapter (e.g., eth0) or a VPN (e.g., tailscale0).

Prevents WebRTC from using a specific network interface. This is helpful if you want to avoid streaming over a slow or congested network.

These flags are supported directly by the llrdc server binary running inside the container (or natively). They can be used to further customize the server’s behavior.

  • --port: Port for both HTTP and WebRTC UDP (default: 8080).
  • --fps: Target frames per second (default: 30).
  • --video-codec: Choice of vp8 (default), h264, h264_nvenc, av1, or av1_nvenc.
  • --use-gpu: Enable GPU acceleration for NVENC codecs.
  • --use-debug-ffmpeg: Enable verbose FFmpeg logging.
  • --use-debug-x11: Enable verbose X11/XFCE session logging.
  • --display-num: X11 display number inside the container (default: 99).
  • --wallpaper: Path to a custom wallpaper image.
  • --webrtc-public-ip: Manually set the public IP for ICE candidates.
  • --webrtc-interfaces: Comma-separated allowlist of network interfaces.
  • --webrtc-exclude-interfaces: Comma-separated blocklist of network interfaces.
  • --enable-clipboard: Enable clipboard synchronization (default: true).
  • --test-pattern: Run with an FFmpeg testsrc pattern instead of capturing the X11 desktop.
  • --test-minimal-x11: Start a bare X11 session without the full XFCE desktop environment.