Encoding Praxis - Häufige Video Encoding Probleme
Ansteigende Audio/Video Asynchronität
Man spricht von einer sogenannten ansteigenden Audio/Video Asynchronität, wenn der zeitliche Versatz zwischen der Tonspur und dem Videobild während der Filmlaufzeit stetig steigt.
Mögliche Gründe für eine ansteigende Audio/Video Asynchronität
Ändern der Audiofrequenzrate
Ein häufiger Fehler ist die Reduktion der Audiofrequenzrate. Wenn Quellvideos mit einer Audiofrequenzrate von 48.000 khz vorliegen, jedoch das Zielvideo mit einer Audiofrequenzrate von 22.050 khz encodiert wird, könnte dies zu negativen Ergebnissen führen. Wenn nun im Quellvideo auch noch ein verlustfreier Audiocodec (Lossless Codec) wie PCM mit enorm hohen Bitraten verwendet wird, kann der zeitliche Versatz bis zu 1 Sekunde je 30 Minuten Filmzeit betragen.
Bedenken Sie auch das eine Reduktion der Audiofrequenzrate auch qualitative Einbußen mit sich bringt. Verwenden Sie im Zweifelsfall immer die gleiche Audiofrequenzrate wie im Sourcevideo, solange diese mindestens 22.050 khz beträgt.
"dropped" video Frames (skipped frames)
Es kann vorkommen, daß FFmpeg, Mencoder oder Mediacoder fehlerhafte Frames, doppelte Frames (duplicate frames) und Frames, die nicht auf die Timestamps passen (non-monotone-timestamps) skippt bzw. auslässt. Nur die wenigsten Encoding-Tools lassen sich hinsichtlich dieser Verhaltensweisen beeinflussen.
Das Encoding Tool Mencoder bietet 2 Schalter für diese Problemfälle an: -noskip und -skiplimit 0. Unter Umständen können Sie FFmpeg mit der Ergänzung Ihrer Linux Befehlszeile um den FFmpeg Parameter -skip_threshold 0 das Überspringen fehlerhafter Frames abgewöhnen. Dies sind aber auch nur behelfsmäßige Lösungen, da das Hauptproblem in der Regel im Sourcevideo liegt und nur sehr schwer zu korrigieren ist.
gemischte Bildwiederholraten (Frameraten)
Eine entscheidende Rolle beim Video Encoding spielt die Framerate, auch Bildwiederholrate genannt. Sie legt fest, aus wie vielen Frames/Bildern eine Sekunde Video besteht. In Deutschland und den meisten anderen europäischen Ländern haben wir die Fernsehnorm PAL (Phase Alternating Line). Diese Fernsehnorm hat sich 25 Frames pro Sekunde als Standard gesetzt.
In Amerika, dem pazifischen Raum und in weiten Teilen Asiens hat sich der Standard NTSC (National Television System Committee) durchgesetzt, welcher eine konstante Bildwiederholrate von 29.97 Frames pro Sekunde definiert. Bei den Kinofilmen wurde ein eigener Standard geschaffen, sie haben in der Regel eine Bildwiederholrate von 24 Frames pro Sekunde Kinofilm.
Die meisten Handykameras und Kleinbild Fotoapparate mit Filmfunktion nehmen für gewöhnlich mit einer Bildwiederholrate von 30 Frames pro Sekunde auf. Wie Sie erkennen können ist eine Sekunde PAL kürzer als eine Sekunde NTSC, und dadurch entstehen die uns bekannten Video Encoding Probleme als eine konstante oder ansteigende A/V Asynchronität. Die Standardisierungen sind sehr unübersichtlich und teilweise verwirrend. Lassen Sie sich davon nicht entmutigen! Im Zweifelsfall sollten Sie die Bildwiederholrate des Sourcevideos beibehalten.
Analysieren Sie akribisch Ihr Sourcevideo! Sie können dies mit kostenfreien Videoanalyse-Tools bewerkstelligen. Diese Tools analysieren, wie der Name schon sagt Videodetails wie Videogröße, Bitrate, Bildwiederholfreqenz und Seitenverhältnis und stellen diese Informationen übersichtlich in einer Liste dar. Das bekannteste Open Source Tool auf dem Markt ist Media Info. Dieses nützliche und kostenlose Tool ist auf der Media Info Projektseite erhältlich, und für Windows und sämtliche Linux Distributionen verfügbar.
Im Fall eines "worst case" kann auch eine Kombination aus beiden Asynchronitäten – konstante und ansteigende Audio/Video Asynchronität – möglich sein! Solche Videos sind kaum reparabel, geschweige denn synchron zu bekommen. Zunächst müsste aufwendig die Audiospur extrahiert und korrigiert werden. Anschließend wird Sie mit dem neu erstellten Video in den entsprechenden Videocontainer gepackt (gemuxt). Oftmals rechnet sich der Zeitaufwand jedoch nicht, in diesem Fall würden wir den Einsatz eines besseren Sourcevideos empfehlen.