AVCHD-Videoschnitt

Einführung
Hohe Rechenlast bei AVCHD
Intermediate-Format
Zwischenformat bei Videoschnitt

Einführung

Wenn man sich (wie ich) einen der neuen Camcorder mit AVCHD-Aufzeichnung zulegt und die Videos dann wie die früheren D8- oder DV-Videos schneiden möchte, stellt man sehr schnell fest, daß man entweder eine Workstation zum Schneiden benötigt oder doch zumindest einen Rechner, der weit über das hinausgeht, was ein "Standard-PC" auch 2009 noch darstellt.

Zum Vergleich: Für die Wiedergabe von BD "reicht" ein Pentium Core Duo mit ca. 2,5GHz aus, wenn man eine Grafikkarte hat, die Hardware-Beschleunigung für den H.264-Codec beherrscht, reicht unter Umständen schon ein Core Solo mit ca. 2 GHz aus.

Bei AVCHD sieht das anders aus: Mein Notebook mit Centrino Duo mit 2 GHz ist definitiv gerade so in der Lage, mit z.B. Nero ShowTime einen AVCHD-Stream darzustellen, der mit 8MBit/s in einer Auflösung von 1440x1080 Pixel codiert ist (das ist bei AVCHD die "Standard"-Einstellung, aber AVCHD spezifiziert auch die Auflösung von 1920x1080 Pixel mit einer Datenrate von 23 MBit/s). Selbst dabei pendelt die CPU-Auslastung (beider Prozessorkerne) bei 85 - 100% und es kann durchaus zu kurzen Rucklern kommen.

Versucht man, ein solches Video mit VLC abzuspielen oder ein Videoschnittprogramm auf dem gleichen Rechner zu verwenden, dann endet das mit einer "bewegten Standbildshow" mit zwischen 0,3 und 2 Bildern/s. Live-Videoschnitt ist etwas anderes...

Hohe Rechenlast von AVCHD

Die hohe Rechenlast beim Dekomprimieren von AVCHD-Material hat verschiedene Gründe:

  1. Die hohe Auflösung. 1440x1080 Pixel sind ca. 4 mal mehr Pixel als bei PAL-Material, die komplette HDTV-Auflösung von 1920x1080 sind sogar exakt 5x so viele Pixel wie die üblicherweise für PAL verwendete Auflösung von 720x576 Pixel.
  2. Das Kompressionsprofil. AVCHD verwendet nicht das "Baseline Profile" ähnlich dem bei DivX zugrunde liegenden H.263, sondern das "High Profile", das weitaus komplexere Kodierungen erlaubt
  3. CABAC: Dahinter verbirgt sich ein digitaler, verlustfreier Kompressionsalgorithmus, der am Ende der verlustbehafteten Kompression noch einmal die Datendichte erhöhen hilft. Dieser "Context Adaptive Binary Arithmetic Coding" genannte Algorithmus ist sehr Speicher- und Rechenzeitaufwendig, auch beim Dekodieren. Bei 25MBit/s kann das einen Core einer 2 GHz Dual-Core CPU schon alleine ausreizen.

Insgesamt kann man dadurch große Probleme erhalten, überhaupt nur einen AVCHD-Videostrom flüssig zu dekodieren. Für Videoschnitt mit in der Regel bis zu zwei HD-Spuren (Überblendungen!) und einer Titelspur reicht das aber bei weitem nicht. Pinnacle Systems etwa gibt an, daß für AVCHD-Videoschnitt mindestens ein Dual Core mit ~2.6 GHz vorhanden sein sollte, aber selbst dann ist der Videoschnitt etwa auf dem Niveau von DV-Videoschnitt mit einem 400MHz schnellen Pentium III ...

Intermediate-Format

Zum Schneiden bei nicht ausreichender Rechenleistung gibt es schon aus grauer Vorzeit des PC-Videoschnitts ein probates Mittel: Schneiden auf einem temporären Format, das entweder durch Konvertieren in gleicher Auflösung aus dem Ursprungsmaterial entstanden ist oder sogar in einer geringeren (etwa SDTV-)Auflösung speziell für das Schneiden erstellt wurde und vor dem Rendern mit einem in höherer Auflösung erstellten Duplikat ersetzt wurde. So wurde bereits 1996 auf Pentium-PCs im SD/2-Format MPG1-kodiertes Videomaterial in der Auflösung von 320x240 für den Schnitt verwendet (ähnlich dem Format einer Video-CD). Erst für die (nicht unbedingt in Echtzeit nötige) Ausgabe konnte man dann auf das mit voller Auflösung gesampelte Material der zurückgreifen.

Für das Schneiden von AVCHD auf einem zu schwachen PC bieten sich drei Formate an:

Je nachdem, ob man ein AVCHD-Format mit 1440x1080 oder 1920x1080 Pixeln Auflösung gewählt hat, sollte man das entsprechende Format für die Ausgabe verwenden, um zusätzliches Umskalieren zu vermeiden. Falls man nicht in der Lage ist, diese Formate für den Schnitt zu verarbeiten, kann man zum Schneiden nochmals entweder einfach die Datenrate reduzieren oder aber man verwendet nochmals eine halbierte Auflösung, also 720x540 oder 960x540 und etwa ein Viertel der HDV/HDV2-Datenrate. Damit geht der Videoschnitt sogar mit einem älteren System mit Pentium 4 oder AMD Athlon.

WICHTIG: Man sollte vermeiden, das zum Schneiden verwendete Videomaterial in einem anderen Seitenverhältnis als das vollwertige Videomaterial zu rendern. Ansonsten kann es vorkommen, daß das Videoschnittprogramm das finale Video mit schwarzen Balken rendert und das Seitenverhältnis nicht mehr stimmt.

Auch das Generieren der Zwischenformate geht recht schnell. Selbst auf dem oben genannten Notebook codiert HDV2 mit ca. 1/3 der Echtzeit, eine Kodierung mit 720x540 alleine geht sogar schneller als in Echtzeit, hier bremst die vorher nötige Dekodierung der AVCHD-Daten die Kodierung aus.

Die oben genannten Zwischenformate mit voller Auflösung sind für die jeweiligen AVCHD-Formate als kompletter Ersatz verwendbar. Es geht keinerlei Bildinformation verloren (soweit man das beim Übergang von einem verlustbehafteten Format auf ein anderes überhaupt sagen kann), lediglich die Kompressionsrate wird reduziert und die Dateien dadurch um etwa einen Faktor 1,5 bis 5 größer (abhängig von der beim Ursprungsformat verwendeten Kompression, typischerweise liegt das Verhältnis eher bei 1,5 bis 2).

Die auflösungsreduzierten Zwischenformate kann man für die endgültige Ausgabe als Videodaten verwenden, indem man die Datei mit dem Video im Zwischenformat löscht oder umbenennt. Pinnacle Studio stellt dann fest, daß die Quelldatei nicht mehr existiert und fragt, welche Datei es als Quelldatei verwenden soll. Hier verwendet man dann die Zwischendatei im vollen Format, also 1440x1080 oder 1920x1440.

Nutzen der Zwischenformate für den Videoschnitt

Immer wenn man mit intermediären Dateien arbeitet, hat man das Problem, daß man die einzelnen Szenen wiederfinden muß.

Dafür bieten praktisch alle Videoschnittprogramme seit den Zeiten des PC-Schnitts die Möglichkeit, in den Videoströmen nach Schnitten zu suchen (=Punkten, an denen sich der Bildinhalt aufgrund des Szenenwechsels schlagartig ändert). Das funktioniert auch in aller Regel sehr gut, nur wenn man Szenen hat, in denen mit Blitzlicht von Fotokameras "hineinfotografiert" wurde erhält man für jedes "verblitzte" Einzelbild eine neue Szene.

Das von mir benutzte Schnittprogramm "Pinnacle Studio 12" führt diese Szenenerkennung automatisch durch, wenn man in der Liste der Dateien auf eine Videodatei doppelklickt, für die noch keine Szenendatei (Endung .scn) besteht. Es öffnet sich ein Fenster mit dem Titel "Szenenerkennung", einem Fortschrittsbalken und einem Button "Abbrechen".

Durch den Doppelklick auf die Videodatei schaltet Pinnacle automatisch vom Modus "Dateiansicht" (=jede Datei enthält nur eine Szene, Standard für AVCHD-Kameras) auf den Modus "Szenenansich" (=in einer Datei sind 1 oder mehrere Szenen enthalten, Standard für z.B. Bandbasierte Aufzeichnungsverfahren).

Stand: 24.08.2011