In the last few years, we've seen a staggering increase
in media consumption on the web, while worldwide internet
bandwidth has not kept the same pace.
To help with this, my name is Vignesh,
I'm here to talk about how you can take advantage
of a new video format for the web.
Video already accounts for more than half
of the peak internet bandwidth worldwide and almost 2/3
of the peak internet bandwidth in certain parts of the world.
The WebM project is a collection of open tools and media
technologies that aim to tackle the challenges of media
at internet scale and enable open and free communication
of ideas through media.
The WebM project develops two video codecs-- VP8 and VP9--
the media container, that's the WebM container,
and an image format called WebP.
These technologies together power
some of your favorite Google services at a large scale,
like YouTube and Hangouts.
They're also widely used on the web.
For example, Netflix and Facebook use WebP.
We announced VP9, our next generation open video codec,
at I/O 2013.
Videos encoded in VP9 see up to 50% improvement
in conversion efficiency.
Today, VP9 video playback is supported in Chrome, Firefox,
Opera, and Android.
Since I/O 2013, we've improved both the speed
and the compression efficiency of VP9.
This has enabled YouTube to choose
VP9 as their next generation video codec.
If you're curious about updates to VP9 since I/O 2013,
check out our video, "Updates to VP9."
Additionally, if you want to deep dive
into the encoding techniques used to achieve the compression
performance, we highly recommend checking out
our I/O 2013 session on VP9.
It's called, "The New Open Video Codec."
In this video, I'm going to focus
on how to easily encode VP9 videos using open source tools
and then go on to talk about how we can play those videos back.
First, the simple progressive encode.
Let's say that you just want to encode a video
and want it to be played back across multiple devices.
In other words, all you want to do
is just host a video and play it back using the video tag
by using the hosted URL as the source.
Here is how you do it.
Progressive encodes are simple and will allow any supported
VP9 player to download and play the file.
Examples include Chrome, Firefox, and Android.
Here is how you create a progressive VP9 encode.
All you need to do is bind ffmpeg to your input
file and ask it to use the VP9 encoder.
Here's how you play back this video.
That was simple, wasn't it?
If you have ideas on making it even simpler
we welcome all your thoughts at this email.
OK, now if you plan to serve video over the web,
chances are that you want to take advantage
of some of the HTML5 technologies
that'll allow you to provide a great streaming
experience to your customers.
This has traditionally been tough,
and an industry standard was spawned
to solve this called DASH.
DASH stands for Dynamic Adaptive Streaming over HTTP,
and it allows you to select the stream that'll
provide the best perceived quality, depending
on the client's constraints.
Traditionally, this is [INAUDIBLE]
with the term adaptive playback.
At Google, we use adaptive playback using DASH and HTML5
technologies like media source extensions
to provide a great streaming experience on YouTube.
For example, with VP9 and DASH, we've
improved the key metrics of streaming videos-- rebuffers.
VP9 DASH videos have improved rebuffers
by 25% in developed markets and up to 50% in emerging markets.
We've heard from multimedia developers
that creating a DASH manifest for VP9 has been challenging.
I'm happy to announce that we've worked with ffmpeg
and are announcing a set of open source tools
to simplify the encoding process.
Let's now take a look at how to encode VP9 DASH videos
and generate the manifest.
Encoding a VP9 video to be compatible with DASH
is very similar to doing a progressive encode,
with a few minor changes.
For DASH, the video and audio has
to be encoded separately into two different files.
You also need to pass the extra DASH parameter
to ffmpeg so that it creates WebM files which
are DASH compliant.
Now that you have the video and audio files encoded,
you can make use of the WebM DASH manifest tool
to generate the DASH manifest file.
The WebM DASH manifest tool is part of the WebM Tools project.
You can download the tools we use
to create DASH streams and the manifest from the links found
on this slide.
OK, let's now talk about integrating a video player
to play back VP9 videos using DASH.
Just to reiterate, VP9 decoding support
is already available in Chrome, Firefox, Opera, and Android.
Together, they represent over a billion devices and browsers
that can playback VP9 video.
But creating a VP9 player to play back adaptive video
is a little more difficult, although there
are two players that makes it easy.
To put together they enable adaptive VP9 playback on two
of the most popular platforms-- the web and Android.
First off, Android.
YouTube open sources a player called
Exoplayer that supports adaptive playback of VP9.
To know more about how to use Exoplayer to enable VP9 DASH
videos in your app, see the talk by YouTube on Exoplayer.
For the web, we added VP9 DASH support
to dash.js, which is a fantastic all-in-one media
player built entirely in HTML5.
For more information on how we use dash.js to play back
adaptive VP9 videos, you can follow the link on this slide.
With these tools, encoding and decoding VP9 content
has never been easier.
Now it's your job to tell a great story
or ship the next great video player.
And of course, we're here to help.
Drop us a line at webm-discuss@webmproject.org.
Thank you.