Video-Encoding für die Flash Plattform

Transcrição

Video-Encoding für die Flash Plattform
Video-Encoding
für die Flash Plattform
Montag, 16. November 2009
Florian Plag | November 2009
www.video-flash.de
Florian Plag
www.video-flash.de
www.florian-plag.de
Montag, 16. November 2009
Encoding für das Web
Encoding
Original-Video
Montag, 16. November 2009
Web-Video
Intro
Montag, 16. November 2009
Intro
Profil
Encoder
F4V
CBR
VBR
AAC
Montag, 16. November 2009
FLV
CABAC
MPEG-4
2-Pass-Encoding
Level
Bitrate
H.264
16:9
fps
Deinterlacing
Agenda
• Teil 1
• Format- und Codecwahl
• MPEG-4
• H.264 und AAC
• Dateiendungen
• Teil 2
• Encoding-Parameter
Montag, 16. November 2009
Kapitel 1
Format- und Codecwahl
Montag, 16. November 2009
H.264-Encoding-Software (kommerziell)
...
Montag, 16. November 2009
H.264-Encoding-Software (Open Source)
...
Montag, 16. November 2009
Beispiel: Encoder-Qualität
QuickTime
1280x720 Pixel, 2-pass Encoding
Video: 800 KBit/s & Audio: 80 Kbit/s
Montag, 16. November 2009
x264
Formatwahl
mp4
Montag, 16. November 2009
Codecs im FLV-Container (.flv)
Sorenson Spark
MP3
ab Flash Player 6/7
Montag, 16. November 2009
Codecs im FLV-Container (.flv)
Sorenson Spark
On2 VP6
MP3
MP3
ab Flash Player 6/7
Montag, 16. November 2009
ab Flash Player 8
Codecs im MPEG-4 Container
H.264
AAC
ab Flash Player 9,0,115
(auch in AIR 1.0)
Release: Dez 2007
Montag, 16. November 2009
Flash Player Verbreitung (Europa)
Flash Player 8
99,3!%
Flash Player 9
99,3!%
Flash Player 10
91!%
http://www.adobe.com/products/player_census/flashplayer/version_penetration.html
Montag, 16. November 2009
Übersicht: Codecs in Flash
Flash
CS4 /
FP 10
Flash 8 /
FP 8
Flash
MX
FP 6
7 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009
Flash
MX 2004 /
FP 7
Flash CS3 /
FP 9
Sorenson Spark
On2 VP6
VP6-S
H.264
MP3
AAC
Montag, 16. November 2009
Vorteile von MPEG-4/H.264 in Flash
Montag, 16. November 2009
Vorteile von MPEG-4/H.264 in Flash
• Große Auswahl an Encoding-Lösungen (kommerziell + Open Source)
Montag, 16. November 2009
Vorteile von MPEG-4/H.264 in Flash
• Große Auswahl an Encoding-Lösungen (kommerziell + Open Source)
• kein zeitraubendes Mehrfach-Encoding
Montag, 16. November 2009
Vorteile von MPEG-4/H.264 in Flash
• Große Auswahl an Encoding-Lösungen (kommerziell + Open Source)
• kein zeitraubendes Mehrfach-Encoding
• kann von anderer Software/Hardware abgespielt werden
(QuickTime, Silverlight, HTML 5, iPod, Playstation, ...)
Montag, 16. November 2009
Vorteile von MPEG-4/H.264 in Flash
• Große Auswahl an Encoding-Lösungen (kommerziell + Open Source)
• kein zeitraubendes Mehrfach-Encoding
• kann von anderer Software/Hardware abgespielt werden
(QuickTime, Silverlight, HTML 5, iPod, Playstation, ...)
• offener Standard / „zukunftssicher”, aber evtl. Lizenzkosten
Montag, 16. November 2009
Vorteile von MPEG-4/H.264 in Flash
• Große Auswahl an Encoding-Lösungen (kommerziell + Open Source)
• kein zeitraubendes Mehrfach-Encoding
• kann von anderer Software/Hardware abgespielt werden
(QuickTime, Silverlight, HTML 5, iPod, Playstation, ...)
• offener Standard / „zukunftssicher”, aber evtl. Lizenzkosten
• hohe Qualität
Montag, 16. November 2009
Kapitel 2
MPEG-4
Montag, 16. November 2009
Einsatzgebiete von MPEG-4 (H.264)
• DVB-S2
• Bluray, HD-DVD
• (Mobile) Devices
• Internet
Montag, 16. November 2009
Einsatzgebiete
Full HD
HD
SD
3G
Montag, 16. November 2009
credit: booleansplit
Montag, 16. November 2009
MPEG-4
MPEG-4
Part 1
...
Part 3
...
...
...
...
...
...
...
...
Part 25
Montag, 16. November 2009
MPEG-4
MPEG-4
Part 1
DivX,...
...
Part 3
...
...
...
...
...
...
...
...
Part 25
Montag, 16. November 2009
Part 2
MPEG-4
MPEG-4
Part 1
DivX,...
...
AAC
Part
3
Part 3
...
...
...
...
...
...
...
...
Part 25
Montag, 16. November 2009
Part 2
MPEG-4
MPEG-4
Part 1
DivX,...
...
Part 2
AAC
Part
3
Part 3
...
...
H.264
...
Part 10
...
...
...
...
...
Part 25
Montag, 16. November 2009
MPEG-4
MPEG-4
AAC
Part
3
Part 3
Part 1
DivX,...
...
...
H.264
...
Part 10
...
...
...
...
Montag, 16. November 2009
Part 2
...
Media File
Format
...
Part 12
Part 25
MPEG-4
MPEG-4
AAC
Part
3
Part 3
Part 1
DivX,...
...
...
H.264
...
Part 10
...
...
Timed
... Text
...
Montag, 16. November 2009
Part 2
Part 17
...
Media File
Format
...
Part 12
Part 25
Kapitel 3
H.264 und AAC
Montag, 16. November 2009
H.264
• H.264 = MPEG 4 Part 10 = MPEG 4/AVC
• H.264 wurde 2003 verabschiedet
• Ziel:
Bitrate
MPEG-2
H.264
Qualität
Montag, 16. November 2009
Deblocking in H.264
• ca. 5-10% niedrigere Datenrate bei gleicher visueller Qualität
ohne Deblocking
Montag, 16. November 2009
mit Deblocking
H.264: Profile
Baseline
Extended
Main
High
High 10
High 4:2:2
High 4:4:4
In-loop
Deblocking
ja
ja
ja
ja
ja
ja
ja
B-Frames
nein
ja
ja
ja
ja
ja
ja
CAVLC
ja
ja
ja
ja
ja
ja
ja
CABAC
nein
nein
ja
ja
ja
ja
ja
...
...
...
Montag, 16. November 2009
H.264: Levels
Flash Player unterstützt alle 15 Levels
te,
a
r
t
i
>B
1
1.1
1.2
1.3
2
ng,
u
s
ö
Aufl
2.1
te
era
m
a
r
F
2.2
3
3.1 3.2
4
4.1
4.2
5
3.1
2.1
max 4 MBit/s
(Baseline, Main, Extended)
max 14 MBit/s
(Baseline, Main, Extended)
max. 5 MBit/s (High)
max. 17,5 MBit/s (High)
z.B. 352x480/30.0 oder
352x576/25.0
z.B. 1280x720/30.0 oder
720x576/66.7
Montag, 16. November 2009
5.1
H.264: Profile
• Flash Player unterstützt alle Profile und Level
• High-Profil und hohes Level
können bedenkenlos genutzt
werden
Montag, 16. November 2009
MPEG 4 Part 3 = Advanced Audio Coding (AAC)
• seit 1999 in MPEG-4
• Vergleich mit MP3:
„gleiche Qualität bei
niedrigerer Bitrate“
• Flash Player kompatibel zu:
• (LC-) AAC
AAC
• HE-AAC v1
HE-AAC v1
• HE-AAC v2
HE-AAC v2
Montag, 16. November 2009
SBR
PS
LC-AAC, HE-AAC v1 und v2
LC-AAC
z.B.
128 KBit/s
HE-AAC
(AAC+)
< 96 Kbit/s
(z.B. 64 KBit/s)
HE-AAC v2
(AAC+)
< 48 Kbit/s
(z.B. 24 KBit/s)
Montag, 16. November 2009
AAC-Varianten
Montag, 16. November 2009
Kapitel 4
Dateiendungen
Montag, 16. November 2009
Dateiendungen für MPEG-4 Dateien
Container --> funktionieren nur, wenn Inhalt H.264+AAC ist
.mp4v
.mp4
.mov
.3gp2
.m4v
.m4a
Montag, 16. November 2009
.3gp
Neue Dateiendungen von Adobe
.f4v
Video for Adobe Flash Player
.f4p
Protected Media for Adobe Flash Player
.f4a
Audio for Adobe Flash Player
.f4b
Audio Book for Adobe Flash Player
Hinweis: Flash Player schaut nicht auf Dateiendung!
Montag, 16. November 2009
Kapitel 5
Encoding-Parameter
Montag, 16. November 2009
Eine Bitrate für alle Videos
Montag, 16. November 2009
Verschiedene Bitraten (abhängig von Komplexität)
Montag, 16. November 2009
Einteilung des Videos
• Komplexität beurteilen:
• Bewegung im Bild
• Bewegung der Kamera
• Rauschen
• Blenden
• etc.
Montag, 16. November 2009
• Einteilung in:
• niedrig (Talkshow, Interview,
„talking heads“, etc.) -->
niedrige Bitrate
• mittel (TV, Nachrichten, etc. ) -->
mittlere Bitrate
• hoch (Sport, Action, etc.) -->
hohe Bitrate
Herangehensweise
• gleiche Einstellungen (z.B. Bitrate) bei verschiedener Komplexität
--> unterschiedliche Qualität
• angepasste Einstellungen (z.B. Bitrate) an Komplexität
--> konstante Qualität
Montag, 16. November 2009
Web Video Bitrate Starter
• http://www.flashsupport.com/resources/
Montag, 16. November 2009
Konstante Bitrate vs. Variable Bitrate
Montag, 16. November 2009
Datenrate
Konstante Bitrate vs. Variable Bitrate
CBR
Relevanz
Zeit
Montag, 16. November 2009
Datenrate
Konstante Bitrate vs. Variable Bitrate
CBR
VBR
Relevanz
Zeit
Montag, 16. November 2009
Konstante Bitrate vs. Variable Bitrate
• CBR
• VBR
• konstante Datenrate,
dafür schwankende Qualität
• schwankende Datenraten,
gleichmäßige Qualität
• gut für Streaming
• gut für Progressive Download
Montag, 16. November 2009
2-Pass Encoding
• Zuerst Analyse, dann Encoding
• höhere Qualität, dafür längere Encodingdauer
1-Pass
Montag, 16. November 2009
2-Pass
H.264: Entropiekodierung
• CAVLC
= kontextabhängige
Lauflängenkodierung
• CABAC
= kontextabhängige binärarithmetische Kodierung
- nur im Main-/High-Profil
- 5 bis 15% effizienter als CAVLC
- jedoch mehr Rechenleistung
• Empfehlung: CABAC immer
aktivieren
Montag, 16. November 2009
Auflösungen im 4:3-Seitenverhältnis
720x576 (DV PAL)
entspricht
768x576
(=4:3)
720x480 (DV NTSC)
entspricht
720x540
(=4:3)
Im Web:
...
640x480
448x336
320x240
...
Generell: Möglichst immer Vielfache von 16 (8, 4, 2) verwenden
Montag, 16. November 2009
Auflösungen im 16:9-Seitenverhältnis
1920x1080 (=1080i)
-
1280x720 (=720p)
-
720x576 (anamorphotisch,
DV-PAL)
entspricht
1024x576
1440x1080
(anamorphotisch, HD)
entspricht
1920x1080
Montag, 16. November 2009
Im Web:
...
768x432
512x288
256x144
...
Framerate
• Framerate des Originals verwenden = keine Bewegungsinformationen gehen
verloren
• Bei Reduktion: Ganzzahligen Teiler verwenden
• Beispiel 25 / 2 = 12,5 fps
Montag, 16. November 2009
Deinterlacing
• Videos mit Halbbildern
( z.B. SD, 1080i, ...)
• Gleichzeitiges Anzeigen beider
Halbbilder = Kammartefakte
Montag, 16. November 2009
Deinterlacing
• Weglassen eines Halbbilds
• Empfehlung: Adaptives und/oder „Motion Compensation”
discard field
Montag, 16. November 2009
adaptive
Preprocessing
• Rauschen entfernen
• Temporale
Rauschverminderung
Montag, 16. November 2009
credit: bettybraun
Montag, 16. November 2009
Video-Encoding
für die Flash Plattform
Montag, 16. November 2009
Florian Plag | November 2009
www.video-flash.de

Documentos relacionados