Я запускаю пакетный скрипт для конвертации видеофайла в Python, но может случиться так, что выходной файл уже существует, так есть ли возможность избежать вопроса ffmpeg о том, что делать, если выходной файл уже существует? Я хочу, чтобы он автоматически пропускал процесс.
решение1
-n
(Глобальный)
Не перезаписывать выходные файлы и немедленно выйти, если указанный выходной файл уже существует.
Использование:
$ ffmpeg -n -i input output.mp4
…
File 'output.mp4' already exists. Exiting.
-n
является глобальной опцией. Глобальные опции должны быть указаны первыми.- Противоположный вариант —
-y
автоматически перезаписывает вывод без запроса.
Примечание:Есть ошибка, которая приводит к -n
неработоспособности в некоторых случаях, например, с тройником и мультиплексорами изображений. См. отчет об ошибке#8492: tee muxer молча перезаписывает выходные файлыПока эта ошибка не будет исправлена, рекомендуется сначала провести тестирование или использовать свой язык сценариев, чтобы проверить, существует ли вывод.
решение2
В идеале ваш скрипт должен проверять наличие входных и выходных файлов до того, как вы вызовете ffmpeg для выполнения его (потенциально) опасной операции. Под опасной я подразумеваю перезапись существующих файлов...
Убедившись, что выходные данные уже существуют, ваш скрипт может перейти к обработке следующего файла.