Какие правильные параметры использовать для проверки видеофайлов с помощью ffmpeg.exe в Windows 7?

У меня есть тысячи видео файлов, чтобы проверить / проверить, есть ли у них ошибка или предупреждение. Фирма просто оцифровывала их на старых лентах (VHS, Umatic ...). Все эти видео в формате mp4, и я хочу проверить их автоматически с помощью программного обеспечения. После небольшого поиска я нашел этот веб-сайт ( http://videofilechecker.com/), но пробной версии программного обеспечения нет, поэтому я не смог протестировать его с моими видеофайлами. Затем я увидел, что программное обеспечение использует ffmpeg для проверки всех этих видео. Во втором поиске я нашел этот вопрос в суперпользователе. ( Как я могу проверить целостность видеофайла (avi, mpeg, mp4...)?).

На этот вопрос ответ таков:

ffmpeg.exe -v 5 -i file.avi -f null - >error.log

я проверил error.log, и он был полностью пуст (вероятно, в видео не было ошибки)

но я изучил документацию по ffmpeg и обнаружил кое-что еще, например:

ffmpeg.exe -v error -i file.mp4 -f null - >error.log

но потом я получил ошибку:

Unknown input format: null
Failed to set value 'null' for option 'f': Error number -22 occurred

Если я попробую с -v 5 ошибки нет вообще, но в документации написано с -v error

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

1 ответ

Решение

Это то, что я использую:

./ffmpeg.exe -v debug -threads 8 -nostats -i "path/to/file.ts" -f null - >~/error.log 2>&1

Или же:

./ffmpeg.exe -v debug -threads 8 -nostats -i "path/to/file.ts" -f null - 2>~/error.log

Второй перенаправляет только stderr в файл, тогда как первый перенаправляет оба, stderr и stdout.

Опция -v debug напечатает все ошибки, предупреждения и отладочную информацию, так что это может быть полезно при сравнении двух видеофайлов (например, чтобы увидеть, в каком из них меньше ошибок). Чтобы ограничить количество сообщений, используйте другие уровни в соответствии с документацией ffmpeg:

https://www.ffmpeg.org/ffmpeg.html

Ищите вариант: -loglevel [repeat+]loglevel | -v [repeat+]loglevel, Другие уровни quiet, panic, fatal, error, warning, info, verbose, debug,

Другие вопросы по тегам