VerwandlungskünstlerVerwandlungskünstler
Videos konvertieren und bearbeiten mit transcode
Eingeengte Sichtverhältnisse
Liegt das Filmmaterial im Letterbox Format vor, gibt es in der Regel schwarze Balken am oberen und unteren Bildrand. Da die schwarzen Balken in der Zieldatei nur unnötig Platz verschwenden, soll Transcode sie entfernen. Der entsprechende Vorgang läuft in zwei Schritten ab. Zunächst muss Transcode die Größe der Balken analysieren, dann muss es herausfinden wo sie genau positioniert sind. Es benutzt dazu den detectclipping Filter. Ein entsprechendes Beispiel ist in Listing 2 zu sehen.
Listing 2
Schwarze Balken analysieren
transcode -V -i e4.mpv -J detectclipping … [detectclipping#0] valid area: X: 9..712 Y: 57..519 -> -j 58,10,56,6 …
Dabei analysiert Transcode jedes Einzelbild und gibt das Ergebnis auf der Kommandozeile aus. Wenn sich die Ausgabe nicht mehr verändert, hat Transcode die entsprechenden Einstellungen gefunden. Mit -j 58,10,56,6 entfernt das Programm die schwarzen Balken 58 Zeilen oben, 10 Zeilen links, 56 Zeilen unten und 6 Zeilen rechts.
Leider lassen sich die Werte nicht 1:1 übernehmen, weil sonst die endgültige Bildgröße nicht mehr durch 16 teilbar ist. Dies ist aber eine Voraussetzung der meisten Kodierer, so auch für XviD. Hier hilft ein wenig Kopfrechnen: Der Einfachheit halber schneiden wir die wenigen Pixel links und rechts gar nicht, sondern nur oben und unten. Wenn wir nun auf 56 statt 58 Zeilen gehen, macht das insgesamt 112 Zeilen weniger. 576 PAL-Zeilen minus 112 ist 464, durch 16 teilbar – prima. Als Resultat bleibt -j 56,0,56,0, das Transcode auch in der Kurzform -j 56 übergeben werden kann, da das Programm per Default symmetrisch zuschneidet.
Streifen entfernen
Ein häufiger Begriff in der Videotechnik ist das Zeilensprungverfahren, im Fachjargon Interlacing genannt. Interlaced bedeutet, dass die geraden und ungeraden Zeilen des Bildes separat dargestellt werden – bei Fernsehern der Normalfall. Bei der Wiedergabe am PC Monitor stört das aber, da sich hier sehr schnell störende Fransen an bewegten Objekten bilden, gut zu sehen in Abbildung 1a. Deshalb benutzen die meisten Videoplayer oder -umwandler einen Deinterlace-Effekt, der diese Streifen entfernt (siehe Abbildung 1b).
Um festzustellen, ob das Videomaterial überhaupt Frames mit Interlacing hat, benutzt Transcode den 32detect Filter (siehe Listing 3).
Listing 3
Ermitteln von Interlaced Frames
transcode -V -i e4.mpv -J 32detect=verbose=1 … (0) frame [000086]: (1) = 2141 | (2) = 2161 | (3) = 10 | interlaced = yes …
Für jedes Einzelbild gibt Transcode eine entsprechende Zeile aus. Erscheinen Frames mit der Angabe interlaced = yes, lohnt es sich einen Deinterlace-Filter anzuwenden. Die Codierung nimmt dann allerdings deutlich mehr Zeit in Anspruch. In Transcode bietet sich dazu der smartyuv Filter an, eine auf den YUV Farbraum geschwindigkeitsoptimierte Variante des smart deinterlacer Filters von VirtualDub. Letztgenanntes ist ein in der Windows-Welt verbreitetes Programm, das ähliche Aufgaben wie Transcode erfüllt. Transcodes Filter hat etliche Optionen, mit denen man herumspielen kann. Die Defaulteinstellungen erfüllen aber in den meisten Fällen ihren Zweck.



