Wie konvertiere ich einen 16: 9-Film in eine 4: 3-Letterbox-Version?

11

Angenommen, Sie haben eine großformatige Filmdatei mit einem Seitenverhältnis von 16: 9 und möchten eine Version erstellen, die sich ideal für die Wiedergabe auf einem 4: 3-Gerät eignet. Da Sie kein Bild ausschneiden oder das Bild verzerren möchten, möchten Sie eine Letterbox-Version erstellen.

Das heißt, Sie möchten einen 4: 3-Film mit schwarzen Balken oben und unten, die das Bewegtbildrechteck umgeben und echte 16: 9-Dimensionen haben.

Können Sie uns sagen, wie dies unter Windows oder Linux mit kostenlosen Befehlszeilen- oder GUI-Tools geschieht?

dggoldst
quelle

Antworten:

11

Neuere Versionen von ffmpeg verwerfen die Optionen "padtop" und "padbottom". Verwenden Sie dazu mit der neuen Version dieselbe grundlegende Logik wie oben. In meinem Fall war mein Originalvideo 720 x 404, aber ich wollte 720 x 480 codieren - oben und unten auffüllen. Also per-oben:

(480-404) / 2 = 38

dh Pad 38 Pixel sowohl oben als auch unten. Der Befehl "pad" möchte die Größe des Videos, das Sie codieren, und wie weit Sie das Original nach links und unten verschieben möchten. So:

-vf pad=720:480:0:38

Beachten Sie, dass die Ausgabeauflösung als 720: 480 und nicht als 720 x 480 geschrieben werden muss

Brad
quelle
Einzelheiten finden Sie unter ffmpeg.org/ffmpeg-filters.html#pad .
Meekohi
7

Dies kann in ffmpeg erfolgen. Bevor Sie beginnen, lesen Sie diese großartige Ressource zum Verständnis der Mathematik: http://www.doom9.org/index.html?/aspectratios.htm

Berechnen Sie zunächst die oberen und unteren Füllwerte.

long=width of original,
skinny=height of orginal
totalPadding = .75*long - skinny
top padding = bottom padding = totalPadding / 2

HINWEIS: Wenn die oberen und unteren Polster keine EVEN-Zahlen sind, erzwingen Sie sie gleichmäßig, sodass sie sich zu totalPadding summieren (z. B. nicht 47 und 53, sondern 48 und 52, um 100 zu erhalten).

Fügen Sie zweitens Briefkastenleisten hinzu und stellen Sie sicher, dass die Outfile als 4x3 erkannt wird. Angenommen, Ihre Polster haben oben und unten 58 Pixel

ffmpeg -i Infile.avi -padtop 58 -padbottom 58 -padcolor 000000 -aspect 4:3 Outfile_letterbox.mpg
dggoldst
quelle
2

Laden Sie Avisynth herunter und installieren Sie es . Öffnen Sie den Notizblock und geben Sie Folgendes ein:

AviSource("c:\movies\somemovie.avi")
BicubicResize(720,266,0,0.5)
AddBorders(0, 106, 0, 108)

Speichern Sie es als mymovie.avs und fügen Sie es in Ihren Encoder ein.

Möglicherweise müssen Sie die Größe und die Ränder anpassen, aber im Allgemeinen können Sie sehen, was hier vor sich geht. Wenn Ihr Video nicht mit AviSource geladen wird, ersetzen Sie es durch DirectShowSource.

Durchbruch
quelle
1

Mit "ideal" schätze ich, dass Ihr Wiedergabegerät Videos streckt?

Die ideale Situation besteht darin, dem Video keine schwarzen Balken hinzuzufügen, sondern das Video mit schwarzen Balken anzuzeigen. Das Neucodieren eines Videos zum Hinzufügen von Balken verstößt nicht nur gegen die Regel "einmal codieren", sondern senkt AUCH die Gesamtqualität pro Bit durch Hinzufügen zusätzlicher, nutzloser Informationen.

Können Sie weiter erklären, welches Problem Sie lösen möchten?

Lachsmoose
quelle
Ich habe einen 4: 3 Fernseher. Ich habe 16: 9 Filme. Ich brenne sie auf abspielbare DVDs und eines von zwei Dingen passiert: 1) Sie werden auf 4: 3 verkleinert (dh gedehnt). 2) Sie werden nicht gedehnt, aber nicht als Letterbox angezeigt. Da es unmöglich ist, dass ein ungedehntes 16: 9-Bild einen 4: 3-Bildschirm ausfüllt, werden die Kanten zugeschnitten. Ich verwende eine kitschige kommerzielle Software, um abspielbare DVDs (Cyberlink PowerProducer) zu erstellen. Vielleicht ist das das Problem. Ich bin offen für andere Möglichkeiten, DVDs aus .avi- und .mpg-Dateien zu erstellen.
dggoldst
Ahhh, ok, da ist das Problem - ich benutze keine Festplatten mehr, aber ich schlage vor, nach anderer Software zu suchen - ich denke, Sie müssen in der Lage sein, mit anamorphotischen Pixeln zu exportieren - dies wird das Video dehnen 4: 3, aber fordern Sie den Spieler auf, das Verhältnis zu ändern.
Lachsmoose