ffmpeg - Prozess überspringen, wenn bereits eine Ausgabe vorhanden ist


20

Ich führe ein Batch-Skript zum Konvertieren von Videodateien in Python aus, aber es kann vorkommen, dass die Ausgabedatei bereits vorhanden ist. Gibt es also eine Option, um zu vermeiden, dass ffmpeg mich fragt, was zu tun ist, wenn die Ausgabe bereits vorhanden ist? Ich möchte, dass der Prozess automatisch übersprungen wird.

Antworten:


29

Aus der ffmpegDokumentation :

-n (global)
Überschreiben Sie keine Ausgabedateien und beenden Sie das Programm sofort, wenn bereits eine bestimmte Ausgabedatei vorhanden ist.

Verwendungszweck:

$ ffmpeg -n -i input output.mp4
  …
  File 'output.mp4' already exists. Exiting.
  • -nist eine globale Option. Globale Optionen sollten zuerst angegeben werden.
  • Die entgegengesetzte Option -yüberschreibt die Ausgabe automatisch, ohne zu fragen.

3

Idealerweise sollte Ihr Skript prüfen, ob die Eingabe- und Ausgabedateien vorhanden sind, bevor Sie ffmpeg aufrufen, um den (möglicherweise) gefährlichen Vorgang auszuführen. Mit gefährlich meine ich, vorhandene Dateien zu überschreiben ...

Sobald Sie festgestellt haben, ob die Ausgabe bereits vorhanden ist, kann Ihr Skript zur Verarbeitung mit der nächsten Datei fortfahren.


So etwas wie stackoverflow.com/a/638980/1265980 könnte helfen.
Ereli

1
Wenn Sie Python verwenden, können Sie überprüfen, ob die Datei mit pathlib - stackoverflow.com/a/82852/1265980
Ereli
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.