Videoschnitt - Hintergrundwissen
Transcription
Videoschnitt - Hintergrundwissen
Videoschnitt - Hintergrundwissen Jakob 2009 1/7 Videoschnitt - Hintergrundwissen 1 Welche Werkzeuge benötige ich? 1.1 Das Archiv mit den Beispieldateien zu diesem Teil Es enthält u.a. eine Kopiervorlage für ein Daumenkino, sowie verschiedene Grafik-, Audio- und Videodateien. 1.2 Programmwerkzeuge Für Alle: Gimp, für die Einzelbilder und Avidemux, um die Beispielvideodatei zu schneiden. Für besonders Interessierte: Jhead, FFMpeg bzw. WinFF, Mplayer und DVGrab um die Beispieldateien auch genauer zu untersuchen. 2 Was sollte ich dazu wissen? Bild 1 Bild 2 Bandlaufrichtung 2.1 Filme bestehen aus Einzelbildern Das menschliche Auge kann Bilder unterhalb einer Bildrate von etwa 14 Bildern pro Sekunde (frames per second, fps) gerade noch als Einzelbilder wahrnehmen. Wenn diese Bildrate überschritten wird, entsteht der Eindruck eines zunächst etwas "ruckeligen" Films. Ab einer Bildrate von etwa 24 Bildern entsteht ein flüssiger Eindruck. Bei Zelluloidfilmstreifen wird das Bild mittels eines Projektors durch Durchleuchten auf eine Leinwand gestrahlt. Die Bildrate wird also über die Bandlaufgeschwindigkeit des Zelluloidfilmstreifens gesteuert. Da man in den 50er Jahren eine Möglichkeit suchte, die Bildrate auch im Fernsehen konstant zu halten, wurde einfach die Frequenz des Wechselstromnetzes benutzt. Leider führte dies zu zwei getrennten Standards, nämlich PAL und NTSC. Standard PAL NTSC Bildrate (fps) bzw. Frequenz (Hz) 50 60 Bildgröße* (Pixel, px) 352x288 (bei DVD 720x576) 352x240 (bei DVD 720x480) (Halb-)Bildrate* *(fps) 25 30 Subtraktions-Farbsystem*** YUV (analog) oder YCrCb (digital) YIQ *übliche Bildschirm-Seitenverhältnisse: 4:3 (analoges Fernsehen), 16:9 (digitales Wide-Screen) Wenn 16:9-Filme auf einem 4:3-Bildschirm angezeigt werden, müssen sie entweder auf beiden Seiten etwas abgeschnitte werden, oder sie werden verkleinert, und oben und unten wird ein schwarzer Balken angezeigt. Diese letztere Anzeigemethode bezeichnet man als "Letterbox". **Da die Fernsehröhren bis in die 90er Jahre nicht schnell genug waren, um eine Bildrate von 50 fps auf dem ganzen Bildschirm zu erreichen, wurde beim sogenannten Zeilensprungverfahren (Interlacing) einfach jedes Einzelbild in zwei Teilbilder zerlegt. Das erste Teilbild bestand aus den geradzahligen Bildzeilen, das darauf folgende zweite Teilbild aus den ungeradzahligen Bildzeilen. Die eigentliche Bildrate der Einzelbilder lag also bei 25 fps. Für Standbilder ist das natürlich schlecht. ***Das auf den drei Stäbchentypen in der Netzhaut beruhende additive Rot-Grün-Blau (RGB)-System konnte auf den vorhandenen alten Schwarz-Weiß (SW)-Fernsehern nicht verwendet werden, da dort Farbfilme sonst gar nicht angezeigt worden wären. Daher wurden zu der Helligkeitsinformation (Luminanz, Y) für SW einfach zusätzliche Farbinformationen (Chrominanz, Cr und Cb) hinzugefügt, die in Farbfernsehern dann beide verarbeitet wurden. A1 Drucke zu Hause die Datei daumenkino.pdf aus und erstelle daraus ein funktionierendes Daumenkino. Wie viele Hundertstel-Sekunden würde der entstehende Film dauern, bei einer Framerate von 14 fps? Wie viele Einzelbilder bräuchtest Du für einen Film von zehn Sekunden Dauer bei einer Framerate von 24 fps? Die Einzelbilder (frames) können über den Zeitstempel (timecode) eindeutig angesprochen werden. Dies ist später wichtig für Schnittmarken. Der Zeitstempel setzt sich zusammen aus Stunde:Minute:Sekunde:Frame hour:minute:second:frame hh:mm:ss:ff A2 Wie lange dauert ein Film, den Du mit einem (analogen VHS oder einem digitalen) Videorekorder aufnimmst, beginnend (am gleichen Tag) bei 15:15:00:00 und endend bei 16:45:00 ? Minuten Wie viele Frames sind das bei einer Bildrate von 24 fps? Videoschnitt - Hintergrundwissen Jakob 2009 2/7 2.2 Eigenschaften eines Einzelbilds Eine Bilddatei hat u.a. die Eigenschaften Bildgröße, Farbtiefe und ggfs. Bildkompression bzw. Metadaten. Aus den entsprechenden Werten resultiert dann die Dateigröße. 2.2.1 Bildgröße (umgangssprachlich: Bildauflösung) Pixel sind die kleinsten Einheiten einer Rastergrafik (= Pixelgrafik, Bitmapgrafik im Gegensatz zur Vektorgrafik). Die Bildgröße ergibt sich aus der Anzahl der Pixel des Bildrasters Breite mal Höhe. Vereinfacht werden Pixel oft quadratisch dargestellt, jedoch geben sie nur jeweils an einem Punkt Informationen vor, der Rest dazwischen wird nach bestimmten Regeln ergänzt, so dass sich auch kreisförmige oder linienförmige Pixeldarstellungen ergeben können. A3 Öffne die Datei 2_2_bild_pixel_treppeneffekt.jpg mit einem Bildbetrachter und vergrößere die Ansicht so stark wie möglich. In Abhängigkeit des Ausgabegerätes sind v.a. Schriftzeichen betroffen. Versuche, unter verschiedenen Betriebssysstemen bzw. Desktopumgebungen die Kantenglättung (Antialiasing) für die Schriftdarstellung ab- bzw. anzuschalten und betrachte den Unterschied. Beachte, dass für die Druckausgabe die Einheit Punkte pro Zoll (Dots per Inch, dpi, ein Zoll = 2,54 cm) verwendet wird. Diese kreisförmigen "Punkte" sind nicht identisch mit den Pixeln! Für die Ausgabe auf einem Monitor reicht eine Auflösung von 72 dpi aus, zum Ausdrucken sollten es 300 dpi sein. A4 Lege mit einem Bildbearbeitungsprogramm (z.B. GIMP) drei neue Bilddateien mit den folgenden (erweiterten) Einstellungen an und ergänze die Dateigröße. Alle drei Dateien sollen eine einfarbig schwarze Fläche enthalten und ohne Komprimierung als Windows Bitmap (BMP) gespeichert werden. Dateiname Breite Höhe X-Auflösung Y-Auflösung Farbraum 2_2_bild_rgb.bmp 100px 100px 72dpi 72dpi RGB 2_2_bild_rgb_gross.bmp 1000px 1000px 72dpi 72dpi RGB 72dpi Graustufen 2_2_bild_graustufen.bmp 100px 100px 72dpi Dateigröße in KB 2.2.2 Farbtiefe (Speicherplatz eines Pixels in Bits pro Pixel, bpp) Bits pro Pixel (bpp) Zahl der darstellbaren Farben 8 Typisch für 8 2 (= 256) Bilder mit Farbtabelle, Indizierte Farben 24 224 (= 16.777.216) True Color, RGB 30 230 (= 1.073.741.824) PAL Die ungefähre Bilddatengröße unkomprimierter Bilddateien wie in Aufgabe A4 errechnet sich also wie folgt: Die Metadaten im Dateianfang (Header) werden hier vernachlässigt. Dateigröße = Anzahl der Pixel Breite x Anzahl der Pixel Höhe x Farbinformationen in Bits pro Pixel Dateigröße = 720 px x 576 px x 30 bpp Dateigröße = 12 441 600 b Dateigröße ≈ 1,48 MB Bei einer Einzelbildanzahl von 1500 (bei einer Bildrate von 25 fps) pro Minute Film wären das (noch ohne Ton!) bereits etwa 2,2 GB Speicherplatzbedarf pro Filmminute! Bereits die Einzelbilder müssen also unbedingt verkleinert (komprimiert) werden. 2.2.3 Bildkomprimierung a) Verlustfreie Komprimierung: - Identische, sich wiederholende Muster werden nur einmal abgespeichert und durch einen kurzen Verweis auf die gespeicherte Version ersetzt, Farbinformationen werden ggfs. bei kleinem Farbraum in eine Tabelle ausgelagert. (z.B. LZW in GIF, gut für einfarbige Flächen, PNG für Photos und einfache Flächen) - Aufeinanderfolgende, identische Bytes werden an Ort und Stelle durch ihren Wert und die Anzahl ihres Vorkommens abgekürzt (z.B. Lauflängencodierung Run Length Encoding RLE). b) Verlustbehaftete Komprimierung: - Es werden möglichst nur solche Daten entfernt, deren Fehlen wenig oder gar nicht bemerkt wird. Videoschnitt - Hintergrundwissen Jakob 2009 3/7 (z.B. JPEG für Pixelgrafik: Viele Farbtöne werden verworfen, da Helligkeitsunterschiede stärker wahrgenommen werden. Auch werden die RGB Farbinformationen nach YCrCb umgerechnet; z.B. MP3 für Audiodateien: Die Töne werden herausgefiltert, die nur unterschwellig gehört werden.) A5 Öffne die Bilddatei 2_2_bild_rgb_gross.bmp mit GIMP und speichere sie als JPEG-Bild 2_2_bild_rgb_gross.jpg ab. Öffne erneut die gleiche Ausgangsdatei und speichere sie als GIF-Bild 2_2_bild_rgb_gross.gif ab. Ergänze in der Tabelle die jeweiligen Dateigrößen: 2_2_bild_rgb_gross.bmp 2_2_bild_rgb_gross.jpg 2_2_bild_rgb_gross.gif A6 Führe nun im Terminal im Verzeichnis beispieldateien_videoschnitt den folgenden Befehl aus und ergänze in der Tabelle die ausgegebenen Metadaten: jhead 2_2_bild_rgb_gross.jpg File name: File size: File date: Resolution Bei JPEG-Bildern werden von Digitalkameras im Header häufig Metadaten im sogenannten Exchangeable Image File Format (Exif)-Format eingefügt. Neben den eher harmlosen Informationen aus der Tabelle von A6, die sogar beim Bildimport von einer Digitalkamera zum automatischen Erstellen von Dateinamen benutzt werden, können aber auch unter Datenschutz-Gesichtspunkten problematische Informationen wie GPS-Koordinaten oder kleine Vorschaubilder (Thumbnails) auch anderer Bilder enthalten sein. Vor einer Veröffentlichung eigener Bilder im Internet sollte dieser Artikel berücksichtigt werden. A7 Führe nun die folgenden Befehle nacheinander aus. Welche Veränderung hat sich im Vergleich zu A6 ergeben? Teste dies zu Hause auch mit Kopien eigener Digitalfotos! Bei vielen Bilddateien kann diese Bereinigung auch z.B. mit dem Programm Irfanview durchgeführt werden. jhead -purejpg 2_2_bild_rgb_gross.jpg jhead 2_2_bild_rgb_gross.jpg A8 Zerlegen eines Films in Einzelbilder Führe im Terminal im Verzeichnis beispieldateien_videoschnitt den folgenden Befehl aus und ergänze die Lücken in der Tabelle: ffmpeg -i kurzfilm.avi -r 1 -s 352x288 -f image2 kurzfilm_zerlegt-%03d.jpg Länge des Films in Sekunden: Dateigröße des Films in MB: Zahl der Einzelbilder bei einer Rate von einem Bild pro Sekunde (Befehlsoption: -r 1): Dateigröße der Einzelbilder bei einer Rate von einem Bild pro Sekunde: Zahl der Einzelbilder bei einer Rate von 24 Bildern pro Sekunde (nur Ausrechnen!): Dateigröße der Einzelbilder bei einer Rate von 24 Bildern pro Sekunde (nur Ausrechnen!) : A9 Erstellen eines sehr kurzen Films aus Einzelbildern (=> z.B. für eigene Animationen!) Erstelle mit dem folgenden Befehl einen neuen Film aus den Einzelbildern aus A8. Welche Information ist neben den vielen fehlenden Bildern (Frames) noch im Vergleich zum Originalfilm verlorengegangen? ffmpeg -f image2 -i kurzfilm_zerlegt-%03d.jpg -r 12 -s 352x288 kurzfilm_zusammengesetzt.avi Videoschnitt - Hintergrundwissen Jakob 2009 4/7 2.3 Neben den Vidoedaten liegen auch ebenfalls komprimierte Audiodaten vor. A10 Komprimiere die Beispiel-WAV-Datei ins MP3-Format und ergänze die Lücken in der Tabelle. ffmpeg -i song.wav -ab 128k song.mp3 song.wav Audiodatei song.mp3 Dateigröße Je nach Bitrate (z.B. Option -ab 192k) beträgt das Verkleinerungsverhältnis von der Ursprungs- zur Enddatei etwa : 2. 4 In Videodateien liegen die Videodaten und die Audiodaten in einem Behälter (Container) vor Schema: Container Videocodec Videodaten (komprimiert) Audiocodec Audiodaten (komprimiert) Das Containerformat legt den Ort fest, an dem die Codecs liegen. Im gleichen Containerformat können verschiedene Codecs vorliegen. Diese Information steht meist am Dateianfang (Header). Der Multiplexer trennt beim Abspielen die Video- und Audiodaten, der Demultiplexer führt sie wieder zusammen, etwa beim Umcodieren. Ein Codec (von coder und decoder) bezweichnet sowohl das jeweilige (Kompressions-/Dekompressions-) Verfahren als auch das dazu notwendige Programm! A11 Kreuze an, welche Fehlerquellen wohl zu den folgenden Film-Abspielfehlern führen könnten: Beobachteter Fehler/ mögliche Feherursache Videocodec Audiocodec Container nicht installiert in Datei defekt nicht installiert in Datei defekt in Datei defekt Nur Bild, aber kein Ton Kein Bild, nur Ton Weder Bild noch Ton A 12 Ergänze mit Hilfe des Vergleichs der Ausgaben der folgenden Befehle die Lücken in der Tabelle. file Dateiname ffmpeg -i Dateiname Dateiname song.wav song.mp3 kurzfilm.avi Containerformat Audiocodec Bitrate in kb/s Videocodec Framerate (fps) Für Videocodecs werden meist folgende Video-Kompressionsverfahren kombiniert: 1. Komprimieren der Einzelbilder (JPEG, daher verlustbehaftet) 2. Speicherung nur der Unterschiede zweier (oder mehrerer) aufeinanderfolgender Frames. 3. Evtl. Verringerung der Anzahl der Frames Bei modernen, stärkeren Kompressionsverfahren für hochauflösende Bilder, werden die Informationen oft erst beim Abspielen entpackt, so dass die Anforderungen an die Rechnerleistung viel höher sind, als z.B. noch bei MPEG-2! Videoschnitt - Hintergrundwissen Jakob 2009 5/7 2.5 Video- und Audioformate können ineinander umgewandelt werden A13 Teste das folgende kurze Skript flv2mpeg.sh zur Umwandlung von FLV-Videos (z.B. von www.youtube.com) in MPEG-2-Videos. Welchen Vorteil hat hier eine Schleife? Ergänze die Lücken in folgender Tabelle: Befehlsoption -i Bedeutung Eingabe-Datei -vcodec -s Alle FLV-Dateien im angegebenen Verzeichnis (vgl. 2.4, Schema) mpeg2video Ausgabegröße (Pixelbreite x Pixelhöhe) -acodec -ab Hier benutzter Wert (vgl. 2.4, Schema) libmp3lame (= mp3) Audiobitrate (als Qualitätsmaß) (vgl. 2.3) #!/bin/bash UMWANDLUNGSVERZEICHNIS='.' cd "$UMWANDLUNGSVERZEICHNIS" for VIDEO in *.flv ; do ffmpeg \ -i "$VIDEO" \ -vcodec mpeg2video \ -s 320x240 \ -b 500k \ -acodec libmp3lame \ -ar 22050 \ -ab 56k \ "${VIDEO}.mpg" done for FEHLBENENNUNG in *.flv.mpg ; do NEUERNAME=$(echo "$FEHLBENENNUNG"| sed -e 's/.flv.mpg$/.mpg/') mv "$FEHLBENENNUNG" "$NEUERNAME" done 2.6 Audio- und Videodaten können voneinander getrennt werden A14 Wandle das Beispielvideo youtubevideo.flv mit Hilfe des Skripts flv2mp3.sh in eine MP3Audiodatei um. Hier wird vorausgesetzt, dass bereits im FLV-Video mp3 als Audiocodec vorliegt. #!/bin/bash if [ "$1" == "" ] ; then echo "Verwendung: flv2mp3.sh [file.flv]" elif [ "$1" == "-help" ] ; then echo "Verwendung: flv2mp3.sh [file.flv]" else ffmpeg -i "$1" -acodec copy "$1".mp3 fi for FEHLBENENNUNG in *.flv.mp3 ; do NEUERNAME=$(echo "$FEHLBENENNUNG"| sed -e 's/.flv.mp3$/.mp3/') mv "$FEHLBENENNUNG" "$NEUERNAME" done Videoschnitt - Hintergrundwissen Jakob 2009 6/7 2.7 Videodateien können aus unterschiedlichen Quellen stammen Die vier Hauptquellen für Videodateien sind: 1. Internet-Streams 2. DVD, VCD 3. Camcorder/Digitale Videokamera 4. Digitaler Videorecorder 2.7.1 Internet Streams A15 Viele Universitäten stellen online Vorlesungen als Videostream bereit. Ein gutes Beispiel ist der Tübinger Internet Multimedia Server. Suche weitere Videostreams und versuche, die Links wie in folgendem Beispiel zu analysieren. Achte darauf, ob das Einfangen (Capturing) überhaupt erlaubt ist! Ein vollständiger Original-Link zu einer solchen Vorlesung hat z.B. die Form: http://timms.uni-tuebingen.de/Player/AccessASF.aspx?ref=mms%3a%2f%2fu-003-stimms03.uni-tuebingen.de %2fUT_2008%2f10%2f16%2fUT_20081016_001_info1_0001.wmv500.wmv&starttime=0.0&title=Vorlesung+Informatik+1%2c+1 .+Stunde©right=%c2%a92008+Universit%c3%a4t+T%c3%bcbingen%2c+duplication+and+capturing+prohibited Die rot gefärbten Abschnitte können weggelassen werden. Es wird hier eine Get-Anfrage verwendet in der Form: ?Argument1=Wert1&Argument2=Wert2 Das Übertragungsprotokoll ist hier mms statt http. Die kryptischen Zeichenfolgen %3a und %2f werden durch : bzw. / ersetzt. (Ein + steht oft für ein Leerzeichen.) Es ergibt sich also folgender bereinigter direkt-Link zu einem WMV-Video: mms://u-003-stimms03.uni-tuebingen.de/UT_2008/10/16/UT_20081016_001_info1_0001.wmv500.wmv Diese bereinigten Links kann man nun z.B. wie folgt mit Hilfe eines Arrays und einer Schleife, sowie z.B. des Programms Mplayer zum Herunterladen verwenden. Der Download benötigt dann allerdings jeweils die reale Abspielzeit! Die Videodateien des hier angegeben Beispiels müssen anschließend sofort wieder gelöscht werden! 2.7.2 DVD, VCD Auf optischen Speichermedien wie DVD oder VCD liegen die Audio- und Videodaten jeweils in einer ganz bestimmten Struktur vor. Auf einer DVD sind die Audio- und die Video-Daten zusammengeführt in Form von VOB (Video-Object)-Container-Dateien mit der Endung .VOB in einem Verzeichnis VIDEO_TS gespeichert. Die Menüführung dagegen befindet sich in der IFO-Datei (mit der Endung .IFO). Es ist also meist nicht sinnvoll, einfach die VOB-Dateien direkt in ein anderes Format umzuwandeln, sondern es werden hierfür spezielle Rip-Programme empfohlen. Im Falle eines vorhandenen Kopierschutzes, zunächst den folgenden Artikel lesen. Programme wie DVD Shrink (nur für Windows) funktionieren zwar häufig recht gut, aufgrund der unsicheren Download-Quellen und der ungeklärten rechtlichen Situation ist aber derzeit eher davon abzuraten. 2.7.3 Camcorder/Digitale Videokamera Um Filme von einer Digitalkamera auf die Festplatte ins AVI-Format zu importieren empfiehlt sich z.B. das Programm DVGrab oder (unter Linux) Kino. Videoschnitt - Hintergrundwissen Jakob 2009 7/7 2.7.4 Digitaler Videorecorder Um Filme von einem digitalen Festplattenrecorder auf die PC-Festplatte zu bekommen, gibt es häufig einen FTPZugang zu einer angeschlossenen externen USB-Festplatte. Anschließend einfach mit Avidemux schneiden. 2.8 Die Originaldateien bleiben beim nicht-destruktiven Videoschnitt erhalten 2.8.1 Arbeitsweise Wenn aus einem Zelluloidfilmstreifen (vgl. 2.1) Stücke herausgeschnitten und die Enden wieder zusammengefügt werden, so wird der Originalfilm dabei zerstört, das traditionelle Verfahren ist also "destruktiv". Wenn man mit alten VHS-Magnetbändern einen Film schneiden will, so benötigt man zwei Videorekorder. Man spielt mit dem ersten Videorekorder die gewünschten Abschnitte ab, die parallel mit dem zweiten aufgenommen werden. Dieses Verfahren ist "linear", da die Szenen immer in der richtigen Reihenfolge überspielt werden müssen. Moderne digitale Videoschnitt-Programme arbeiten im Gegensatz dazu "nicht-destruktiv" und "nicht-linear". 2.8.2 Fähigkeiten A Schneiden einer kurzen Filmsequenz (eines "Clips"), die Originalfilmdatei bleibt erhalten. - Die Schnittanweisungen werden in eigenen Projektdateien (meist in einem XML basierten Textformat) gespeichert. - Der Video- und Audiocodec der Originalfilmdatei kann dabei erhalten bleiben, oder es findet eine Umwandlung in ein neues Ausgabeformat statt. B Schneiden der Audiospur C Aneinanderhängen (Verketten) mehrer solcher Clips zu einem neuen Gesamtfilm. - Dabei kann ein Export in ein neues Ausgabe-Videoformat (sehr rechenintensiv) oder ein einfacher Kopiervorgang stattfinden. D Einfügen besonderer Effekte, v.a. an den Übergängen Je nach Aufgabe sollte immer möglichst das einfachste Programm ausgewählt werden. Kostenloses GUI-Beispielprogramm Avidemux A x Audacity Fähigkeit B C Betriebssystem(e) D Linux, Windows x Linux, Windows Kino x x Linux Kdenlive x x x x Linux Windows Movie Maker x x x x Windows A16 Schneide mit dem Programm Avidemux aus dem Beispielvideo kurzfilm.avi die zweite Hälfte ab etwa 30 Sekunden aus und entferne sie. - Setze dazu die Marke A [ bei 30 Sekunden, die marke B ] am Ende und drücke die Taste Entf . - Speichere das Projekt als kurzfilm_projekt und betrachte diese Datei mit einem Texteditor. - Speichere nun unter Datei - Speichern - Video Speichern (oder mit Strg+S) den neuen gekürzten Film als kurzfilm_bearbeitet.avi 3 Üben - Üben - Üben Versuche nun zu Hause, z.B. mit Hilfe des folgenden Tutorials für den Windows Movie Maker: - Videodateien aus unterschiedlichen Quellen zu gewinnen - Videodateien zu schneiden und neu zusammenzusetzen - Videodateien in andere Formate umzuwandeln - Videodateien neu zu vertonen - Screencasts zu vertonen - Effekte hinzuzufügen - Komplexere Programme wie LiVES oder Cinelerra auszuprobieren - Bei auftretenden Problemen die Fehlermeldungen zu analysieren und selbständig mit der Hilfefunktion oder der Online-Dokumentation die Lösungen zu finden.