Video Codec Support Detector

Codec Detection

This tool detects video and audio codecs supported by your browser and identifies hardware acceleration capabilities for both encoding and decoding.

Detection Mode: Testing Both Encode/Decode
Video Codecs
Audio Codecs
Raw Data
Codec Usage Guide

Video Codec Support

Click "Start Comprehensive Detection" to begin...

Audio Codec Support

Click "Start Comprehensive Detection" to begin...

Raw Detection Data


    

How to Use Codecs in VDO.Ninja

Video Codec Selection (&codec)

Control which codec is used to encode and transmit video.

Basic Usage
https://vdo.ninja/?view=abc123&codec=h264
https://vdo.ninja/?room=xxx7654&scene&bitrate=2000&codec=vp9
Option
Description
Use Case
h264
Request H.264 codec
Better battery life on mobile devices, hardware acceleration on many devices
vp8
Request VP8 codec
Default codec, works on most devices
vp9
Request VP9 codec
Better compression, cleaner image for screen sharing
av1
Request AV1 codec
Most advanced compression, requires Chrome v90+
h265
Request H.265/HEVC codec
High efficiency codec, limited browser support
webp
Request WebP codec
Alternative image-based codec
hardware
Android-specific option for hardware encoding
Android devices struggling with video quality
av1,h264
Comma-separated fallback options
Try AV1 first, fall back to H264 if not supported
Selection Tips
  • H.264: Hardware accelerated on many devices, good for mobile battery life
  • VP8: Default choice, software-encoded but compatible with most devices
  • VP9: Better quality at same bitrate vs VP8, but more CPU intensive
  • AV1: Best compression ratio but highest CPU usage, limited device support
  • H.265: Limited browser support, needs command-line flags in Chrome
Important Notes
  • The &codec parameter is added to the viewer-side (use with &view or &scene)
  • Hardware encoding capabilities vary by device, OS, and browser.
  • H.264 hardware encoding might use less battery but sometimes has compatibility issues
  • AV1 and VP9 tends to look better for screen sharing but uses more CPU
  • AV1 tends to offer more accurate colours; useful for chroma green screening
  • Use the detection tool above to see which codecs have hardware acceleration on your device

Recording Options (&record)

Configure how video and audio are recorded to disk.

Basic Usage
https://vdo.ninja/?push=abc123&record=2000
https://vdo.ninja/?push=xxx7654&record=0
Option
Description
Use Case
0
No video, audio recorded as 32bit PCM lossless
High-quality audio only recording
-120 (negative)
No video, audio at specified kbps (OPUS)
Audio-only recording with specific bitrate
2000 (positive)
Video bitrate in kbps
Video recording with specific quality setting
false or off
Disable recording feature
Prevents user from recording
Recording Notes
  • Recorded file format is WebM with VP8/H264 video and OPUS/PCM audio
  • Default bitrate is approximately 4000 kbps if not specified
  • The director of a room will be notified when a user is recording
  • The director can trigger recording remotely
  • Video/audio is saved in real-time to the local download folder
  • Recording should be stopped manually before closing the browser

Recording Codec Selection (&recordcodec)

Set the specific codec used when recording to disk.

Basic Usage
https://vdo.ninja/?push=abc123&record=2000&recordcodec=h264
Option
Description
h264
Record using H.264 codec
vp8
Record using VP8 codec (default fallback)
vp9
Record using VP9 codec
av1
Record using AV1 codec
Important Notes
  • The container format is always WebM regardless of codec, unless using Safari, and maybe then its MP4
  • If a codec is not supported, it will fall back to VP8
  • Especially useful for Chrome on Android where VP8 performance can be poor
  • Remember to add &record to enable the recording function
  • Use &rc as a shorter alias for &recordcodec

Advanced WebRTC Features

WebRTC supports additional features like SVC (Scalable Video Coding) and WHiP.

SVC (Scalable Video Coding)

SVC allows a single bitstream to have multiple resolutions, frame rates, or quality layers.

  • Improves streaming adaptability for viewers with different connection qualities
  • Support varies by browser and codec
  • Common modes include L1T1 (single layer), L2T1 (2 spatial layers), S2T1 (2 temporal layers)
  • The detection tool above shows supported SVC modes for your browser
WHiP (WebRTC HTTP ingest Protocol)

WHiP is a standardized protocol for sending WebRTC streams to a server.

  • Enables WebRTC streaming to CDNs and streaming platforms
  • Simpler to implement than custom signaling servers
  • Useful for broadcast scenarios with many viewers
  • Check your streaming platform documentation for WHiP support details
H.265/HEVC Support

H.265 (HEVC) offers excellent compression efficiency but has limited browser support. Visit our H.265 guide for detailed instructions on:

  • Enabling H.265 in Chrome using command-line flags
  • Browser compatibility information
  • Fallback strategies using comma-separated codec preferences
  • Testing your browser's H.265 support