Talk2Camera
Menü
de-DE
video editing

Warum Video-Exporte so lange dauern

Ein Dokument zu speichern geht sofort. Ein Video zu speichern heißt oft, es im Telefon Bild für Bild neu zu drehen — außer wenn es das wirklich nicht muss.

Ein Textdokument zu speichern dauert keine messbare Zeit. Eine Tabelle, eine Fotobearbeitung, eine Präsentation — alles sofort erledigt, oder fast. Dann beendest du ein zehnminütiges Video, tippst auf Exportieren, und ein Fortschrittsbalken richtet sich häuslich ein, länger als dein Kaffee warm bleibt. Der naheliegende Schluss lautet: Irgendetwas stimmt nicht. Die App ist langsam, das Telefon alt, irgendwer hat irgendwo nicht optimiert. Meistens stimmt nichts davon. Das Warten ist echte Arbeit, und wer versteht, worin die Arbeit tatsächlich besteht, für den wird der Balken von einem Ärgernis zu so etwas wie einer Quittung. Der Ausgangspunkt ist eine Tatsache, die die meisten Menschen nie lernen mussten: Eine Videodatei ist kein Stapel von Bildern. Zehn Minuten Material bei dreißig Bildern pro Sekunde sind achtzehntausend Einzelbilder, und naiv gespeichert würden diese Bilder ein Telefon komplett verschlingen. Was tatsächlich auf deinem Gerät liegt, ist ein komprimierter Strom — eine dichte, ineinander verzahnte Beschreibung, in der fast nichts geradeheraus abgelegt ist.

Kompression ist der ganze Trick, und sie funktioniert, indem sie sich weigert, sich zu wiederholen. Nur ein gelegentliches Bild wird als vollständiges Bild gespeichert. Fast jedes andere wird als Bündel von Unterschieden abgelegt: Dieser Pixelblock ist leicht nach links gewandert, jene Region hat sich gar nicht verändert, diese Ecke ist um so viel dunkler geworden. Jedes Bild stützt sich auf seine Nachbarn, und die Nachbarn stützen sich auf ihre, in langen Ketten. Es ist weniger ein Daumenkino als ein Rezept, das immer wieder sagt: Wiederhole den vorigen Schritt, aber wärmer. Deshalb sind Videodateien klein genug, um überhaupt zu existieren — und deshalb ist es teuer, sie zu bearbeiten. In dem Moment, in dem du veränderst, wie irgendein Bild aussieht, beschreibt die Kette von Unterschieden, zu der es gehört, nicht mehr die Wirklichkeit. Um deine Änderung zu speichern, muss das Gerät die Ketten zu echten Bildern auspacken, die Änderung auf jedes einzelne anwenden und danach die gesamte verzahnte Struktur von Grund auf neu errichten. Dieser Neubau heißt Encodieren, und er ist wirklich schwer: Der Encoder sucht nach Bewegung zwischen Bildern, entscheidet, was sich billig beschreiben lässt und was ausbuchstabiert werden muss, und trifft Millionen kleiner Urteile pro Sekunde Material.

Wenn ein Export also Minuten dauert, dreht dein Telefon dein Video in einem sehr realen Sinn von innen neu — es decodiert achtzehntausend Bilder, zeichnet sie neu und komprimiert wieder achtzehntausend Bilder. Die Zeit wächst mit Länge und Auflösung, aus demselben Grund, aus dem eine größere Wand länger zu streichen dauert. Und die Kosten sind nicht nur Zeit. Kompression ist verlustbehaftet: Jedes Encodieren wirft ein wenig Information weg, sorgfältig so gewählt, dass du es nicht bemerkst. Einmal encodiert, bleibt der Verlust unsichtbar. Aber encodiere eine Datei neu, die schon encodiert war, und die Verluste stapeln sich — wie die Fotokopie einer Fotokopie. Eine Generation ist in Ordnung. Mehrere Generationen — hier schneiden, speichern, dort nachjustieren, wieder speichern — und das Verschmieren zeigt sich genau dort, wo Zuschauer hinsehen: Gesichter, Text, sanfte Verläufe im Himmel. Das ist das leise Argument dafür, sich zu interessieren, was eine Export-Pipeline tut, während du nicht hinschaust.

Es ist auch der Grund, warum es ein bestimmtes Verhalten in Talk2Camera gibt. Nicht jede Bearbeitung verändert, wie Bilder aussehen. Ein schlichter Schnitt — den verpatzten Anfang kappen, die tote Luft am Ende weglassen — lässt jedes verbleibende Bild exakt so, wie es war. Wenn der Clip bereits zum Export-Preset passt, gibt es nichts neu zu zeichnen und darum nichts neu zu encodieren, und Talk2Camera tut das Ehrliche: Es kopiert die Bilder hinüber, statt sie noch einmal zu komprimieren. Der Export ist dramatisch schneller fertig, weil Kopieren billig ist und Encodieren nicht. Besser noch: Die Kopie ist bitgenau — keine Generation Qualität wird für eine Bearbeitung geopfert, die nie einen Pixel berührt hat. Das Warten, wenn du es auf diese Weise überspringst, war nie der Preis des Exportierens. Es war der Preis dafür, Pixel zu verändern, und du hast keinen verändert.

Die ehrlichen Einschränkungen laufen in die andere Richtung. Sobald eine Bearbeitung tatsächlich Rendern erfordert — alles, was verändert, was ein Bild wirklich zeigt —, encodiert der Export neu, und das Warten kehrt zurück, weil es jetzt echte Arbeit gibt. Bilder müssen neu gezeichnet, Ketten neu gebaut, Urteile gefällt werden. Keine Pipeline kann sich daran vorbeikopieren; ein Werkzeug, das etwas anderes behauptete, würde dich anlügen. Was du von guter Software vernünftigerweise erwarten kannst, ist enger und wertvoller: dass sie neu encodiert, wenn sie muss, kopiert, wenn sie kann, und den Unterschied kennt. Wenn sich also das nächste Mal ein Fortschrittsbalken häuslich einrichtet, lohnt die Frage, in welchem der beiden Wartezustände du steckst. Hast du verändert, wie das Video aussieht, dann ist der Balken eine Maschine, die achtzehntausend Bilder ehrlicher Arbeit für dich verrichtet. Hast du bloß die Enden abgeschnitten, sollte der Balken kaum Zeit haben zu erscheinen — und in Talk2Camera hat er das meistens auch nicht. Der Export, der keine Zeit braucht, ist kein Trick. Er ist der Export, der keine Arbeit zu tun hatte und endlich so behandelt wird.

In diesem Artikel erwähnt

Kein Neukodieren, wenn nichts es braucht

Ein reiner Schnitt, der ohnehin schon zur Vorlage passt, kopiert seine Bilder, statt sie erneut zu komprimieren — schneller, und keine Generation Qualität umsonst verloren.

Einen Export abbrechen

Brich einen langen Export mitten im Lauf ab. Ist er fertig, sagt er dir, was wirklich passiert ist — neu kodiert oder kopiert, in welcher Größe, und ob das Bild beschnitten wurde.