Is there a way to disable or hide output thrown by FFmpeg? [duplicate]

I went through the documentation but couldn't find a solution. I'm hoping there is some kind of argument that will tell FFmpeg to not show the output in the console.

The output that I'm referring to is in the screenshot given below

enter image description here


Solution 1:

There are two possibilities to either vastly reduce the amount of output, or redirect it to somewhere else.

  1. From ffmpeg manual: Run ffmpeg with the -loglevel quiet option.

  2. Do what @martineau said and redirect it to a null file descriptor. FFmpeg outputs to stderr by default, so in Windows you'd do ffmpeg ... 2>NUL; on Cygwin or Linux/OS X/BSD, you'd do ffmpeg ... 2> /dev/null.

Solution 2:

As per the other answer, -loglevel quiet supresses everything. But, sometimes it's useful to retain some output. Here are some other options:

  • You can suppress report printing (the lines beginning with frame= that are output every few frames) by adding the -nostats option to your command line.

  • You can suppress the banner (copyright notice, libraries, etc) by adding the -hide_banner option to your command line.

There are other options, see the documentation for details.