Video codecs

Latenz never uses software encoders. The codec for each session is the best match among three constraints: what your GPU encodes in hardware, what the RTP stack supports, and what your browser can decode over WebRTC.

Preference order

AV1 → H.265 → H.264. If the browser cannot decode the chosen codec (e.g. Chrome rejecting H.265), the host falls back to H.264 automatically and restarts the session.

Codec matrix

CodecHost encodeBrowser decode
H.264NVENC, VAAPIUniversal
H.265NVENC (Maxwell 2+), VAAPISafari yes; Chrome no over WebRTC
AV1NVENC (RTX 40+), VAAPI (Arc / RDNA2+)Chrome, Firefox

Browser check

The dashboard shows which codecs this browser advertises via RTCRtpReceiver.getCapabilities. The viewer sends that list during signaling so the host never offers an undecodable codec. For step-by-step fixes when a codec is missing, see Browser compatibility.

Force a codec

Set BEAM_CODEC=h264|h265|av1 on the host to override negotiation. Use auto (default) for safe cross-browser behavior.