News:

--

Main Menu

16:9 voreinstellbar?

Started by _Katharina, May 11, 2020, 08:22:20 AM

Previous topic - Next topic

_Katharina

Hallo, ich habe zwei avi-Dateien, die ich zusammenfügen möchte. Es handelt sich um Fernsehaufnahmen von onlinetvrecorder. Den Dateien scheint die Information zu fehlen, dass es sich um 16:9-Bilder handelt. Wenn man so eine Datei im Videobetrachter oder am Fernseher ansieht, startet sie im 4:3-Format für eine Sekunde, dann wechselt die Wiedergabe auf 16:9.

Beim Zusammenfügen denkt nun auch Avidemux, dass es eine 4:3-Datei wäre und verzerrt so alles. Kann ich irgendwo einstellen, dass es eine 16:9-Aufnahme ist?

Wer sich das ansehen möchte: http://ovh.to/kB9ySh

PS: Beim Öffnen meldet Avidemux: "Dieses Video enthält B-Frames, aber Presentation Timestamps (PTS) entweder fehlen oder monoton ansteigen. Avidemux kann durch Dekodierung des ganzen Videos die korrekten PTS zu rekonstruieren versuchen. Das kann viel Zeit in Anspruch nehmen. Fortfahren?" Ich habe das mit "ja" beantwortet (dauerte nicht sooo lang), aber die Rekonstruktion verlief nicht so ganz erfolgreich. Kann man diese PTS irgendwo einstellen?

eumagga0x2a

PTS kann man nicht "einstellen", sie sind durch das Speichern des mit H.264 komprimierten Videos im antiken AVI-Container, der PTS überhaupt nicht unterstützt, verlustig gegangen. Avidemux ist für jegliche Editiervorgänge, angefangen bei der Navigation im Video, auf PTS angewiesen. PTS vom Container erlauben es, die richtige Reihenfolge der Bilder ohne die relativ rechenintensive Dekodierung der Slice Headers, wo diese Reihenfolge vom POC-Wert ("picture order count") abgeleitet werden kann, zu ermitteln. Leider sieht es nicht danach aus, dass es bei Nutzung von libavcodec möglich wäre, die fürs reine Sortieren der Bilder überflüssige und so richtig ressourcenfressende Dekodierung des eigentlichen Bildinhalts (der Makroblocks) zu vermeiden.

Dass onlinetvrecorder Aufnahmen, in H.264 kodiert, in AVI packt, ist eine schlechte Idee, gelinde gesagt.

Die Rekonstruktion verläuft erfolgreich (kein Crash), wenn man in den Avidemux-Einstellungen Dekodierung in Hardware deaktiviert. Das Problem hier sind die ersten zwei (eigentlich nur eine plus ein einsames I-Frame) GOPs, die ein anderes Pixelformat (die Datenstrukturen, die die Werte für Helligkeit und Farbe beschreiben, nicht nur ein anderes Dispaly Aspect Ratio) als das restliche Video verwenden. Wenn dieser kurze Schnipsel unbedingt erhalten werden soll, muss er nach der Rekonstruktion der Zeitstempel getrennt gespeichert und neu kodiert werden. Dabei sollen Filter ("Bildgröße ändern", um die Breite auf 432 zu reduzieren, dann "Ränder hinzufügen", um links und rechts 144 px breite schwarze Balken zu erzeugen) angewendet werden.

Nach dem Anhängen des restlichen Videos muss das Ergebnis wiederum komplett neu kodiert und vorzugsweise entweder als mp4 oder als mkv gespeichert werden. Das richtige Seitenverhältnis (DAR, display aspect ratio) wird in der Konfiguration dieser beiden Muxer eingestellt. Für Anzeige in Avidemux werden grundsätzlich quadratische Pixel verwendet, daher sieht anamorphes Videomaterial immer entweder gestreckt oder gestaucht aus.

Besonders für alles, was mit mp4 zu tun hat, empfehle ich den jeweils neuesten Nightly von Avidemux, keineswegs den zunehmend veralteten Release zu verwenden.