Was ist falsch an dieser MP4-Datei? Ist das Pixel-Seitenverhältnis falsch?

Ähnlich wie in diesem Beitrag habe ich einige Videobänder zur Digitalisierung verschickt. In diesem Fall handelt es sich um Mini-DV-Bänder, die eine Auflösung von 720x480 (mehr oder weniger) haben sollten. Die resultierenden MP4-Dateien geben vor, 720 x 480 zu sein, aber die Bilder sehen nicht richtig aus. Ich habe einen solchen Film hier hochgeladen , es ist ein bisschen schwer zu sagen, aber selbst für Tänzer sind sie nicht ganz so geformt. Das Video lässt sie eher wie Elfen als wie Menschen aussehen, was wahrscheinlich besser ist, als wie Hobbits auszusehen, aber immer noch nicht richtig. Wenn ich diese MP4 mit dem Standard-Windows-Player abspiele, anhalte und einen Screenshot mache , ist das resultierende Bild 1118 x 832, was einem Seitenverhältnis von 1,34 entspricht, was die Elfenhaftigkeit erklärt. Aber warum?

Ich war mit dem Konzept des Pixel-Seitenverhältnisses nicht vertraut , bis ich anfing, mich über das DV-Format zu informieren, aber ich schätze, genau das passiert hier. Die Wikipedia-Seite zu DV sagt, dass es "unterschiedliche Pixel-Seitenverhältnisse für Vollbild- und Breitbildvideos" gibt, sagt aber nicht, was diese Werte sind.

Da Windows dieses Video beim Abspielen streckt, denke ich, dass in der MP4-Datei ein Pixel-Seitenverhältnis eingebettet ist, aber das standardmäßige Windows "Eigenschaften anzeigen" zeigt es nicht an. Oder spielt Windows vielleicht immer Videos mit einem Seitenverhältnis von 1,33 Pixel oder so ab?

Was ich denke, ist, dass sie das Video nicht neu digitalisieren müssen, da DV mit 480 Abtastzeilen aufgezeichnet wird und das resultierende Bild 480 Pixel hoch ist. Ich könnte die MP4 in meine Videobearbeitungssoftware (Sony's Vegas Movie Studio) ziehen und sie mit einer "vertikal komprimieren"-Verformung treffen, aber es scheint, als würde das dazu führen, dass das Video unscharf wird. Ich habe alle richtigen Pixel, aber meine Pixel haben nicht die richtige Form (richtig?) Ist das Pixel-Seitenverhältnis in dieser MP4-Datei an einem Ort gespeichert, an dem ich es anpassen und mein Video richtig aussehen lassen kann?

BEARBEITEN

Zunächst meldet ffmpeg dies für mein Video:

Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 720x480 [SAR 10:11 DAR 15:11], 2886 kb/s, SAR 109:120 DAR 109:80, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)

Ein DAR (Display-Seitenverhältnis) von 109:80 ist 1,36, was grundsätzlich für Vollbild-DV richtig ist, also vermute ich, dass mein Video tatsächlich Breitbild ist (16:9 = 1,77777). Wenn ich ffmpeg mit diesem Befehl ausführe:

ffmpeg -i input.mp4 -aspect 1.7777777 -c copy output.mp4

Ich bekomme ein Video, das ffmpeg so beschreibt:

Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 720x480 [SAR 10:11 DAR 15:11], 2886 kb/s, SAR 32:27 DAR 16:9, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)

was fast OK aussieht - es sagt DAR 16:9, aber dann auch DAR 15:11, was 1,36 ist und nicht das, was ich will. Und tatsächlich, wenn ich dieses Video mit Windows 10 "Filme & TV" abspiele, zeigt der Screenshot, dass das Video immer noch bei den 1,36 DAR ist, nicht bei den gewünschten 1,77.

Gibt es einen ffmpeg-Befehl, der das erzeugt, was ich brauche? Oder kann der Windows 10 Movie Player die DAR-Einstellung nicht wirklich verarbeiten?

Antworten (1)

Du hast Recht. Das Pixel-Seitenverhältnis ist falsch. DV hat eine feste horizontale Auflösung, kann aber 16:9-Frames anzeigen, indem die Pixel gestreckt werden. Die Anzeigeauflösung wird in den Metadaten festgelegt, sodass es möglich ist, die Datei ohne erneute Codierung korrekt wiederzugeben, indem die Metadaten geändert werden.

Das kostenlose Open-Source-Tool ffmpeg kann das. Dies wäre der Befehl, den Sie verwenden würden:

ffmpeg -i infile.mp4 -c:copy -aspect 16/9 outfile.mp4
Eindrucksvoll! Bevor ich Änderungen vornehme, meldet ffmpeg "Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 720x480 [SAR 10:11 DAR 15:11], 2995 kb/s, SAR 109:120 DAR 109:80, 29,97 fps, 29,97 tbr, 30.000 tbn, 59,94 tbc (Standard)"
Warum werden sowohl für das Display-Seitenverhältnis als auch für das Sample-Seitenverhältnis zwei Werte gemeldet?
Das Beispiel-Seitenverhältnis ist die Form der Pixel. Das Anzeigeseitenverhältnis ist die Form des Rahmens. Die beiden sind verwandt, aber nicht gleich: DAR = SAR * X / Y, wobei X und Y die Anzahl der Pixel über und unter sind.