Getting Started with VP9

Introduction

To try encoding with VP9 video, you will need:

  1. a sample video
  2. a way of encoding the video to VP9 so you can experiment with settings
  3. a way of playing the VP9 to see the quality impact of those settings

Step 1: Get Sample Video

The Tears of Steel short movie covers a range of test cases including action sequences and animation.

To test low-bitrate encoding profiles (for web and mobile), we use the WebM 1080p version of the clip. This file is encoded using VP8 video, compressed at about 6Mbps -- a suitable starting point for web and mobile compression testing.

For higher bit-rate encoding, you may wish to download the 4K version of the same movie.

Step 2: Encode VP9

A variety of encoding products and cloud service providers allow you to encode VP9 video.

These pages assume you are using FFmpeg. You can download a pre-compiled version of FFmpeg, or compile FFmpeg with the --enable-libvpx option on your system.

FFmpeg is a command-line program. Once you have it installed, you can perform encodes from the command line.

An easy example to get started, using the Tears of Steel clip above, is:

ffmpeg -i tears_of_steel_1080p.webm -c:v libvpx-vp9 -c:a libopus output.webm

This command tells FFmpeg to:

  • Use tears_of_steel_1080p.webm as input (-i tears_of_steel_1080p.webm)
  • Set the output video codec to VP9 (-c:v libvpx-vp9)
  • Set the output audio codec to Opus (-c:a libopus)
  • Create a WebM output file named output.webm

Step 3: Play the video

You can play WebM/VP9 in most major browsers, including Firefox, Opera, Chrome and Microsoft Edge. In Chrome, you can drag the file into the browser and it will play in that tab.

Other players also support VP9/WebM decoding, including:

Player Platform Version
VLC Most Platforms Version 2.1.3 or later
MPC-HC Windows Version 1.7.1 or later