Gibt es gute Videobearbeitungsprogramme mit Kommandozeilenschnittstelle?

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.

Antworten (5)

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-libassund 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.

Avisynth ( Wiki ) ist eine scriptgesteuerte App und sollte in Verbindung mit Filtern die Arbeit erledigen können.

In diesem Zusammenhang ist AvxSynth eine Linux-Portierung von AviSynth, da AVISynth zwar sehr leistungsfähig ist (ich habe es erst letzte Nacht gelernt), aber nur Windows ist. Es scheint jedoch, dass Sie es möglicherweise in WINE zum Laufen bringen können.

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.

Gibt es einen Windows-Build für Melt oder nur Linux? Ich habe gestern Abend nach einem Tool gesucht, das ich für eine automatisierte Bearbeitung erstellt habe, aber am Ende habe ich mit AVISynth gearbeitet, weil ich kein Windows-Build finden konnte. (Zugegeben, die ideale Plattform für diese spezielle Frage war Linux, also ist dies eine großartige Antwort.)
Ich denke, es ist Quellcode nur für Windows. Aber für Mac-Benutzer ist es über Hombrew verfügbar (>brew install mlt).
@stib laut der Features-Seite ist es auch unter Windows über MinGW verfügbar (und auf Mac über Macports für diejenigen ohne Homebrew).

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.

https://github.com/mifi/editly/

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.