ffmpeg - пропустить процесс, если выход уже существует

14

Я запускаю пакетный скрипт для конвертирования видеофайла в Python, но может случиться так, что выходной файл уже существует, поэтому есть ли возможность избежать ffmpeg, спрашивающего меня, что делать, если выход уже существует? Я хочу, чтобы он автоматически пропустил процесс.

Гиперион
источник

Ответы:

20

Из ffmpegдокументации :

-n (global)
Не перезаписывать выходные файлы и немедленно завершать работу, если указанный выходной файл уже существует.

Использование:

$ ffmpeg -n -i input output.mp4
  …
  File 'output.mp4' already exists. Exiting.
  • -nэто глобальный вариант. Глобальные параметры должны быть указаны в первую очередь.
  • Противоположная опция, -yкоторая автоматически перезаписывает вывод без запроса.
llogan
источник
3

В идеале ваш скрипт должен проверять наличие входных и выходных файлов перед тем, как вы вызовете ffmpeg для выполнения его (потенциально) опасной операции. Под опасным я подразумеваю перезапись существующих файлов ...

Как только вы убедились, что выход уже существует, ваш скрипт может перейти к следующему файлу для обработки.

Kinnectus
источник
что-то вроде этого stackoverflow.com/a/638980/1265980 может помочь.
Эрели
1
если вы используете python, вы можете проверить, существует ли файл с помощью pathlib - stackoverflow.com/a/82852/1265980
Ereli