¿Cómo puedo hacer que ffmpeg sea más silencioso/menos detallado?

¿Cómo puedo hacer que ffmpeg sea más silencioso/menos detallado?

De forma predeterminada, ffmpeg envía una gran cantidad de mensajes a stderr: cuándo se creó, cómo se creó, códecs, etc, etc, etc.

¿Cómo puedo hacerlo más silencioso?

Lo intenté -v 0(y -v 10dado que la documentación simplemente dice tímidamente Set the logging verbosity level.sin indicación de cuál es el rango de entradas), todavía no estoy en silencio.

Lo he intentado -loglevel quiet, todavía no estoy tranquilo.

Debo mencionar que estoy buscando "más silencioso", no "nunca sin salida". Si hay un error, quiero verlo, pero no necesito escuchar sobre la configuración de ffmpeg cada vez. soltero. tiempo.

Respuesta1

ffmpeg -hide_banner -loglevel error

A esto se alude en un comentario debajo de la respuesta actual.

La opción -hide_bannerse introdujo a finales de 2013.https://lists.ffmpeg.org/pipermail/ffmpeg-devel/2013-December/152349.html)

-loglevel warninggenera más resultados que el errornivel (pero menos que el nivel predeterminado info), ya que muestra todos los mensajes de advertencia.

-loglevel panices el resultado menos detallado (omitiendo incluso mensajes de error) pero no está documentado.

La -logleveldocumentación oficial se puede encontrar en elDocumentación ffmpegbajoOpciones genéricas, subsección-loglevel [flags+]loglevel | -v [flags+]loglevel.

Respuesta2

No lo he probado, pero veo una opción en la página de manual para hacer:

ffmpeg -loglevel panic [rest of your ffmpeg stuff]

Debería hacerlo de modo que, en teoría, solo se registren errores graves

Respuesta3

Aquí tienes los niveles de registro del código fuente (FFmpeg versión 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   },
    };

Respuesta4

ffmpeg -loglevel error [other commands]

Esto oculta el banner y solo muestra errores. Úselo -loglevel warningsi desea ver advertencias.

Probado en Ffmpeg 3.0.2.

Desde eldocumentación:

-nivel de registro [repetir+]nivel de registro | -v [repetir+]nivel de registro

Establezca el nivel de registro utilizado por la biblioteca. Agregar "repetir+" indica que la salida del registro repetido no debe comprimirse en la primera línea y se omitirá la línea "Último mensaje repetido n veces". "repetir" también se puede utilizar solo. Si se usa "repetir" solo y sin un nivel de registro previo establecido, se usará el nivel de registro predeterminado. Si se proporcionan varios parámetros de nivel de registro, el uso de 'repetir' no cambiará el nivel de registro. loglevel es una cadena o un número que contiene uno de los siguientes valores:

'tranquilo, -8'

No mostrar nada en absoluto; guarda silencio.

'pánico, 0'

Solo muestra errores fatales que podrían provocar que el proceso falle, como por ejemplo y afirmar falla. Actualmente esto no se utiliza para nada.

'fatal, 8'

Sólo muestra errores fatales. Se trata de errores tras los cuales el proceso no puede continuar en absoluto.

'error, 16'

Muestra todos los errores, incluidos aquellos de los que se puede recuperar.

'advertencia, 24'

Mostrar todas las advertencias y errores. Se mostrará cualquier mensaje relacionado con eventos posiblemente incorrectos o inesperados.

'información, 32'

Mostrar mensajes informativos durante el procesamiento. Esto se suma a las advertencias y errores. Este es el valor predeterminado.

'detallado, 40'

Igual que info, excepto que es más detallado.

'depurar, 48'

Muestra todo, incluida la información de depuración.

'rastro, 56'

De forma predeterminada, el programa inicia sesión en stderr; si el terminal admite colores, los colores se utilizan para marcar errores y advertencias. La coloración del registro se puede desactivar configurando la variable de entorno AV_LOG_FORCE_NOCOLORo NO_COLORse puede forzar la configuración de la variable de entorno AV_LOG_FORCE_COLOR. El uso de la variable de entorno NO_COLORestá obsoleto y se eliminará en la siguiente versión de FFmpeg.

información relacionada