Как сделать ffmpeg тише/менее многословным?

Как сделать ffmpeg тише/менее многословным?

По умолчанию ffmpeg отправляет множество сообщений в stderr: когда собран, как собран, кодеки и т. д., и т. п., и т. п.

Как сделать его тише?

Я пробовал -v 0-v 10поскольку в документации просто скромно говорится Set the logging verbosity level.об этом, без указания диапазона входных данных) — все равно не тихо.

Я пробовал -loglevel quiet— все равно не тихо.

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

решение1

ffmpeg -hide_banner -loglevel error

Об этом говорится в комментарии под текущим ответом.

Опция -hide_bannerбыла введена в конце 2013 года.https://lists.ffmpeg.org/pipermail/ffmpeg-devel/2013-December/152349.html)

-loglevel warningприводит к большему выводу, чем errorуровень (но меньше, чем infoуровень по умолчанию), поскольку он показывает все предупреждающие сообщения.

-loglevel panicявляется наименее подробным выводом (даже сообщения об ошибках опускаются), но он недокументирован.

Официальную -loglevelдокументацию можно найти вДокументация ffmpegподОбщие варианты, подраздел-loglevel [flags+]loglevel | -v [flags+]loglevel.

решение2

Я не проверял, но на странице руководства вижу такую ​​возможность:

ffmpeg -loglevel panic [rest of your ffmpeg stuff]

Теоретически следует сделать так, чтобы регистрировались только серьезные ошибки.

решение3

Здесь у вас есть уровни логов из исходного кода (FFmpeg версии 0.10.2.git)

const struct { const char *name; int level; } log_levels[] = {
        { "quiet"  , AV_LOG_QUIET   },
        { "panic"  , AV_LOG_PANIC   },
        { "fatal"  , AV_LOG_FATAL   },
        { "error"  , AV_LOG_ERROR   },
        { "warning", AV_LOG_WARNING },
        { "info"   , AV_LOG_INFO    },
        { "verbose", AV_LOG_VERBOSE },
        { "debug"  , AV_LOG_DEBUG   },
    };

решение4

ffmpeg -loglevel error [other commands]

Это скроет баннер и покажет только ошибки. Используйте, -loglevel warningесли хотите видеть предупреждения.

Протестировано в Ffmpeg 3.0.2.

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

-loglevel [повторить+]уровень_журнала | -v [повторить+]уровень_журнала

Установите уровень ведения журнала, используемый библиотекой. Добавление "repeat+" указывает, что повторный вывод журнала не должен сжиматься до первой строки, а строка "Last message repeated n times" будет опущена. "repeat" также можно использовать отдельно. Если "repeat" используется отдельно и без предварительной установки уровня ведения журнала, будет использоваться уровень ведения журнала по умолчанию. Если задано несколько параметров уровня ведения журнала, использование "repeat" не изменит уровень ведения журнала. Уровень ведения журнала — это строка или число, содержащие одно из следующих значений:

«тихо, -8»

Ничего не показывай, молчи.

«паника, 0»

Показывать только фатальные ошибки, которые могут привести к сбою процесса, такие как и assert failure. В настоящее время это ни для чего не используется.

«фатальный, 8»

Показывать только фатальные ошибки. Это ошибки, после которых процесс вообще не может продолжаться.

«ошибка, 16»

Показать все ошибки, включая те, которые можно исправить.

«предупреждение, 24»

Показать все предупреждения и ошибки. Любое сообщение, связанное с возможно неверными или неожиданными событиями, будет показано.

'информация, 32'

Показывать информационные сообщения во время обработки. Это в дополнение к предупреждениям и ошибкам. Это значение по умолчанию.

'многословный, 40'

То же, что и info, но более подробно.

'отладка, 48'

Показывать все, включая отладочную информацию.

'след, 56'

По умолчанию программа записывает данные в stderr, если терминал поддерживает раскрашивание, цвета используются для маркировки ошибок и предупреждений. Раскрашивание журнала можно отключить, установив переменную окружения AV_LOG_FORCE_NOCOLORили NO_COLOR, или принудительно установить переменную окружения AV_LOG_FORCE_COLOR. Использование переменной окружения NO_COLORустарело и будет исключено в следующей версии FFmpeg.

Связанный контент