Ich bin derzeit auf der Suche nach einem Videobearbeitungsprogramm, das ich über die Kommandozeile steuern kann. Die Hauptfunktion, die ich benötige, ist die Möglichkeit, Overlay-Text hinzuzufügen. Gibt es etwas, das dies tun kann?
Meine ideale Plattform wäre Linux, aber ich wäre offen für die Verwendung von Windows oder OSX, wenn es nötig wäre.
FFmpeg ( Wiki ) ist eine Option; entweder mit dem subtitles filter (siehe auch hier ) oder dem drawtext filter kannst du erreichen was du willst .
Für den Untertitelfilter muss ffmpeg mit kompiliert werden --enable-libass
und für drawtext muss es mit kompiliert werden --enable-libfreetype
. Wenn Sie Linux verwenden, ist ersteres wahrscheinlich der Fall, letzteres jedoch möglicherweise nicht. Passen Sie auch auf, dass Debian und seine Derivate (einschließlich Ubuntu et al.) das Fork-Tool avconv aus dem libav-Projekt verwenden (siehe hier für eine Zusammenfassung der Situation); einige Leute haben Probleme mit avconv vs. ffmpeg gemeldet. Ich würde die Verwendung von ffmpeg empfehlen, vor allem, weil es anscheinend mehr ffmpeg-Benutzer als avconv-Benutzer im SE-Netzwerk gibt, sodass Sie hier bessere Hilfe erhalten können.
Wenn die Version in Ihren Repos nicht dafür kompiliert ist, können Sie einen statischen Build von der FFmpeg-Website abrufen oder ihn selbst kompilieren, indem Sie einer der Anleitungen im ffmpeg-Wiki folgen und sicherstellen, dass Sie die richtigen Flags verwenden.
Obwohl ffmpeg über Bearbeitungsfunktionen verfügt, ist es nicht speziell für die Bearbeitung konzipiert und funktioniert nicht wie ein NLE. es nimmt Input(s) und erzeugt Output(s), anstatt zerstörungsfreie Bearbeitungen an mehreren Quelldateien vorzunehmen.
Melt basiert jedoch auf dem mlt-Framework , das kdenlive antreibt , und ist als
„leistungsfähiger, wenn auch etwas obskurer, mehrspuriger, befehlszeilenorientierter Videoeditor…“
Ein Melt-Befehl kann die gleiche Aufgabe erfüllen wie die Zeitleiste in einem NLE. Hier ist ein Beispiel von ihrer Website, das eine bearbeitete Sammlung von Aufnahmen aus den Quelldateien a.dv, b.mpg und c.png abspielt:
$ melt a.dv in=50 out=100 b.mpg out=500 c.png out=500
Es gibt auch die Möglichkeit, Effekte hinzuzufügen, und Sie können auch Bearbeitungen als XML-Dateien erstellen.
Ich habe ein plattformübergreifendes Node.js-basiertes CLI-Tool für einfache Videobearbeitungen erstellt. Es ist eigensinniger und begrenzter als mlt
, aber es zielt darauf ab, viele einfach zu verwendende Komponenten und Übergänge und vernünftige Standardwerte zu haben.
editly \
title:'My video' \
clip1.mov \
clip2.mov \
title:'My slideshow' \
img1.jpg \
img2.jpg \
title:'THE END' \
--audio-file-path /path/to/music.mp3
Es unterstützt auch eine anspruchsvollere Bearbeitungsspezifikation als JSON und kann problemlos von JavaScript aus aufgerufen werden.
Ich habe vor ein paar Jahren eine Low-Level-Audio/Video-FFMPEG-basierte Mikro-Engine in Produktionsqualität erstellt:
https://github.com/costa/ffmprb
und seitdem pflege ich es.
Es hat eine Befehlszeilenschnittstelle – mit rudimentärer Ruby-Skripterstellung, die im Moment erforderlich ist, und ich arbeite an einer saubereren FS+CLI-Unterstützung.
A. J. Henderson