So setzen Sie einen Rand um ein Video, um das Beschneiden von Inhalten zu verhindern

6774
AmadeusDrZaius

Mein Fernsehgerät ist alt und aus irgendeinem Grund werden einige Inhalte vom linken Rand abgeschnitten. Ich versuche, ein Video darauf zu zeigen, in dem der linke Rand für die Präsentation von entscheidender Bedeutung ist.

Gibt es eine Möglichkeit (mit iMovie / ffmpeg / Gimp usw.), dass ich die Videogröße verkleinern und sie mit einem dicken schwarzen Rand umgeben kann, sodass dieser Rand abgeschnitten wird, wenn ich ihn auf meinem Fernseher sehe, und nicht den Inhalt?

Mit anderen Worten, ich möchte davon ausgehen:

enter image description here

zu diesem:

enter image description here

Aber ich möchte das mit einem Video machen (im mp4-Format).

1
Ist es eine Option, die Größe während der Wiedergabe beliebig anzupassen? Auf diese Weise muss das Video nicht neu codiert werden. Mit welchem ​​Betriebssystem wird es abgespielt? oder ist das dvd bluray oder so? Psycogeek vor 9 Jahren 0
Auf die Datei wird über das DLNA-Protokoll zugegriffen. Ich verwende den Server [Plex] (https://plex.tv/), um die Dateien über WLAN an meinen Sony Media Player (eine TV-Top-Box) zu liefern. Leider verfügt mein Fernsehgerät nicht über eine Einstellung zum Skalieren oder Verschieben des Videos. Die einzige Einstellung, die mein SONY-Player hat, besteht darin, das Seitenverhältnis auf 4: 3 festzulegen. AmadeusDrZaius vor 9 Jahren 0
Können Sie uns mehr Informationen zum Fernseher geben? Der Typ und das Modell würden wirklich helfen. Erzählen Sie uns bitte auch von Ihrer Grafikkarte. krowe vor 9 Jahren 0
Sorry, FFMpeg ist nicht bekannt, aber in virtualDub und anderen Videoprogrammen wird es häufig in den Größenänderungsoptionen gefunden, wenn Sie die Größe des Videos ändern und es auf die angegebene Größe "Leinwand" plotten, Framing-Optionen. Psycogeek vor 9 Jahren 0

2 Antworten auf die Frage

4
Rajib

Methode 1: Skala mit fester Größe mit Auffüllung:

ffmpeg -i inputfile.mov -filter_complex 'scale=578:462, pad=720:576:71:57' outputfile.mp4 

Dies setzt die Eingabe und Ausgabe der SD-PAL-Größe voraus. Dies verwendet einfach ein Pad mit fester Größe.

Methode 2: Prozentuale Skalierung mit Overlay über Schwarz durch Filter generiert:

ffmpeg -y -i inputfile.mov -f lavfi -i color=c=black:s=1920x1080 \ -filter_complex "[0:v]scale=w=0.80*iw:h=0.80*ih[scaled]; \ [1:v][scaled]overlay=x=0.10*main_w:y=0.10*main_h:eof_action=endall[out]; \ [0:a]anull[aud]" \ -map "[out]" -map "[aud]" \ -strict -2 \ outputfile.mp4 

Dies setzt voraus, dass die Eingangs- und Ausgangsgröße Full HD (1920 x 1080) ist. Die Skalierung liegt bei 80 Prozent. Die Überlagerungsposition ist also 20 Prozent innen, aber da diese 20 auf beiden Seiten gleichmäßig aufgeteilt ist, verwendet die Überlagerung 10 Prozent der Hauptbreite und addiert diese zur x-Position.

Dies eof_actionist erforderlich, damit die Verarbeitung beendet werden kann, wenn die Videodatei beendet ist. Sonst wird der erzeugte schwarze Hintergrund (Hintergrund) -f lavfieinfach weitergehen.

Meine Datei ist eine mp4-Datei und ich habe diese Meldung erhalten, wenn Sie Methode 2 ausführen: `Der Encoder 'aac' ist experimentell, aber experimentelle Codecs sind nicht aktiviert. Fügen Sie '-strict -2' hinzu, wenn Sie sie verwenden möchten "-strict -2" bis zum Ende, aber die Fehlermeldung wurde nicht geändert. Irgendwelche Ideen? AmadeusDrZaius vor 9 Jahren 0
@AmadeusDrZaius Ich habe den Parameter -strict -2 hinzugefügt. Rajib vor 9 Jahren 0
Das hat funktioniert! Ich habe versucht, überall den "-strict -2" hinzuzufügen, aber es hat nicht funktioniert. Ich danke dir sehr. Irgendwelche guten Ressourcen außer der Manpage oder der Website ffmpeg.org? AmadeusDrZaius vor 9 Jahren 0
Ich habe mir gerade Ihre anderen Antworten angesehen und Sie haben viel Wissen über ffmpeg. Sind Sie ein Entwickler / Entwickler von ffmpeg? So oder so, danke nochmal. AmadeusDrZaius vor 9 Jahren 0
@AmadeusDrZaius Nicht weit davon entfernt. Nur ein glücklicher Benutzer. Suchen Sie [hier] (https://ffmpeg.org/ffmpeg-filters.html) nach Filtern. Stackexchange Superuser und StackOverflow sind großartige Ressourcen. Rajib vor 9 Jahren 1
@AmadeusDrZaius https://trac.ffmpeg.org/wiki, http://blog.superuser.com/2012/02/24/ffmpeg-the-ultimate-video-and-audio-manipulation-tool/ (schamloser Plug) ansonsten einfach hier eine Frage stellen. Wir haben hier eine Handvoll Leute, die sich in ffmpeg auskennen. slhck vor 9 Jahren 2
@AmadeusDrZaius Wenn das Eingangsaudio mit dem Ausgabe-Container-Format kompatibel ist, ziehen Sie [Stream-Kopieren] (http://ffmpeg.org/ffmpeg.html#Stream-copy) mit `-c: a copy` statt erneut. Codierung. LordNeckbeard vor 9 Jahren 2
0
AmadeusDrZaius

Ich habe ein Video gefunden, in dem erklärt wird, wie Sie in iMovie einen Rahmen über ein Video setzen. So kannst du es machen:

  1. Verwenden Sie Gimp (oder ein anderes Werkzeug), um ein Bild mit schwarzen Rändern zu erstellen. Stellen Sie sicher, dass dieses Bild größer ist als die Größe des Videos, um das Sie einen Rahmen setzen möchten.

  2. Öffnen Sie iMovie und importieren Sie sowohl den Clip als auch das Rahmenbild.

  3. Öffnen Sie iMovie> Voreinstellungen und aktivieren Sie das Kontrollkästchen "Erweiterte Tools anzeigen".

  4. Ziehen Sie das Rahmenbild in das Projektfenster, und verlängern Sie die Zeit des Clips mit der Verzahnung auf die Länge des Videos. Das Limit eines Bildclips beträgt 10 Minuten. Kopieren Sie den Bildhintergrundclip und fügen Sie ihn so oft ein, dass er der Länge des Films entspricht.

  5. Ziehen Sie den Movieclip aus dem Import in das Projektfenster und richten Sie ihn am Anfang des Hintergrundbilds aus. Sie sollten ein Popup-Menü mit Optionen zum Kombinieren von Bild und Movieclips sehen. Wählen Sie "Bild-in-Bild".

  6. Passen Sie die Filmgröße im oberen rechten Fenster an, bis nur der gewünschte Rand angezeigt wird.

  7. Exportieren Sie den Film wie gewünscht.

Nur eine Anmerkung: Dies wird wahrscheinlich sehr lange dauern (der Export dauerte etwa eine Stunde und mein Film war 30 Minuten lang). Es gibt also wahrscheinlich einen effizienteren Weg, dies zu tun.