This document discusses video codecs and their role in web-based communications. It provides a brief history of codecs from analog to digital formats. It then focuses on codecs used for WebRTC, including VP8, H.264, VP9 and future developments. It explores the ongoing "game of chess" between codec developers as different browsers and companies support different options. Finally, it discusses efforts by the Alliance for Open Media and IETF to develop future open, high quality video codecs.
2. Speakers
• Anatoli
Levine
– Director
of
Product
Mgmt
Developer
Tools
BU
– Spirent
• Vince
Puglia
– Developer
Advocate
– Dialogic
3. Anatoli
Levine
• Director
of
Product
Management,
Developer
Tools
BU,
Spirent
CommunicaEons
• President
of
InternaEonal
MulEmedia
TelecommunicaEons
ConsorEum
(IMTC)
• Founded
in
1936,
public
company
(LSE:
SPT)
• Leader
in
CommunicaEon
TesEng
Tools
• Leading
supplier
of
enabling
soluEons
and
technologies
for
developers
4. Codecs
–
From
Analog
to
Digital
• 1982
-‐
Audio
CD
commercially
available
• 1991
–
Cinepac
video
codec
created
6. At
first,
everything
was
simple
in
WebRTC
• WebRTC
started
from
Google
project
in
2011
• Standardized
in
W3C
and
IETF
• G.711,
OPUS
and
VP8
for
media
Web
Browser
JavaScript/HTML5
ApplicaEon
Media
Stack/
Transport
7. WebRTC
Codecs
–
A
Game
of
Chess
• VP8,
H.264,
VP9,
H.265,
VP10…
• Royalty
Free
versus
not
• Google
-‐
VP8
• Nokia
–
no
VP8
• Cisco
–
H.264,
openH264
• 2015:
IETF
–
both
VP8
and
H.264
are
mandatory
• Google
–
VP8
• …
8. Browsers,
Browsers…
• Browser
as
a
key
communicaEon
component
– JavaScript
APIs
– Codecs/WebRTC
media
• Chrome,
FireFox,
Opera,
Safari,
IE,
Edge…
– Not
created
equal
– Boast
various
levels
of
codecs
and
API
support
• Resiliency
on
unmanaged
networks
is
dependent
on
codecs
–
requires
in-‐browser
implementaEon
9.
10. WebRTC
Video
Codecs
Today
• VP8
–
widely
deployed,
with
excepEon
• H.264
–
deployed,
with
quality
issues
and
lack
of
SVC
support
– IMTC
created
open
source
test
tool
for
browser
video
bit-‐stream
tesEng
• VP9
–
opEonal,
supported
in
Chrome,
Edge
– Absolute
majority
of
YouTube
content
re-‐encoded
in
VP9
– SVC
available
– Hardware
acceleraEon
support
limited
• H.265/HEVC
–
no
support
in
the
browsers
– Licensing
issues
are
squarely
in
the
way
11. Future
Codecs
–
Alliance
for
Open
Media
• Established
in
2015
• Founding
members:
Amazon,
ARM,
Cisco,
Google,
Intel,
Microsog,
Mozilla,
Nehlix
and
NVIDIA
• “Open.
Fast.
Royalty-‐free.”
• OpEmized
for
use
over
Internet
• Supports
ultra
high
definiEon
• First
source
code
build
available
as
of
April
2016
12. Future
Codecs
–
IETF
NETVC
• Internet
Video
Codec
(NETVC)
WG,
formed
in
2015
• Goal
is
to
produce
high
quality
video
codec,
open
and
with
favorable
IPR
• Requirements
cover
use
cases
of
video
streaming,
IPTV,
conferencing,
surveillance
and
more
– Include
resoluEons
up
to
4k,
scalability
• Current
submission
-‐
Thor
video
codec
14. Not
sure
if
you
heard
but
VP9
is
out…
Source:
hkps://groups.google.com/forum/#!topic/discuss-‐webrtc/_5hL0HeBeEA
15. WHY
THIS
IS
GOOD
Rio
2016
Olympics
by
the
Numbers
• Number
of
global
viewers
expected
to
watch
Rio
2016
More
than
3.6
billion
(3.635
billion
for
London
2012)
• Number
of
American
viewers
expected
to
watch
Rio
2016
More
than
217
million
who
watch
2012
London
Olympics
• Viewers
likely
to
use
second-‐screen
devices
during
the
Olympics
85
percent
of
likely
Olympic
viewers,
according
to
Global
Web
Index
• Number
of
minutes
users
are
likely
to
spend
on
online
video
41
minutes
on
average,
according
to
Global
Web
Index
Source:
hkp://digiday.com/brands/markeEng-‐rio-‐2016-‐olympics-‐numbers/
~100
PETABYTES
OF
DATA
30. Encoder
performance
comparisons
–
VP8
vs
VP9
VP9
vs.
VP8
1.00
0.86
1.31
VP9
encoding
consumes
about
30%
more
cycles
than
VP8
encoding***
VP9
Encoder
FR(fps)
BR(kbps)
ProcessTime
(usec)
Avg
30.01
627.14
16936.92
30.01
627.14
16936.92
30.03
611.58
12571.01
30.03
634.36
11114.81
VP8
Encoder
FR(fps)
BR(kbps)
ProcessTime
(usec)
Size
Avg
640*480
30.03
747.91
13420.88
640*480
30.01
716.50
12729.60
640*480
30.03
719.03
9934.55
640*480
30.02
719.33
7848.25
***
Trade
off
modes
(speed
vs
compression
efficiency)
selected
based
on
conferencing
and
real
Eme
communicaEon
requirements
31. RenegoEaEon
not
just
for
I-‐Frames
anymore
An
I‑frame
is
an
'Intra-‐coded
picture',
in
effect
a
fully
specified
picture,
like
a
convenEonal
staEc
image
file.
A
P‑frame
('Predicted
picture')
holds
only
the
changes
in
the
image
from
the
previous
frame.
A
B‑frame
('Bi-‐predicEve
picture')
saves
even
more
space
by
using
differences
between
the
current
frame
and
both
the
preceding
and
following
frames
to
specify
its
content.
Other
codecs
(including
VP8)
only
send
renegoEaEon
requests
in
I-‐
frames
VP9
can
send
renegoEaEon
requests
in
I-‐frames
AND
P-‐
frames
Source:
hkps://en.wikipedia.org/wiki/Video_compression_picture_types
32. Conclusions
and
Future
ConsideraEons
Conclusions
• VP9
is
a
badass
codec…..
But
then
so
is
VP8
• Both
VP8
and
VP9
dynamically
adapt
to
varying
network
bitrates
equally
• Both
VP8
and
VP9
respond
from
minor
to
extreme
network
packet
loss
• Bits
on
the
wire
–
VP9
outperforms
VP8
(confirmed)
• Processing
–
VP9
consumes
30%
more
cycles
for
decode
and
encoding
(based
on
our
tesEng
and
trade-‐offs
selected)
Future
ConsideraEons
• Quality
measurements
too
subjecEve
-‐
No
more
waving
or
thumbs
up
– QoE
measurement
• VP9
vs
H.264/H.265
• Mobile(?)