Pipe ffmpeg output to other process

ffmpegpipe

I want to pipe ffmpeg output to some other process like this:
ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0 - | process. I get Unable to find a suitable output format for 'pipe:'
pipe:: Invalid argument
. How do I achieve piping?

Best Answer

You have to provide the format with -f, such as:

ffmpeg … -f matroska - | process
  • For a list for available formats see ffmpeg -formats.
  • Note that some formats (typically MOV), require the output protocol to be seekable, so they will fail with the pipe output protocol.
  • Also see FFmpeg Documentation: Pipe Protocol.
Related Question