Question

I am trying to record my desktop and save it as videos but ffmpeg fails.

Here is the terminal output:

$ ffmpeg -f alsa -i pulse -r 30 -s 1366x768 -f x11grab -i :0.0 -vcodec libx264 - preset ultrafast -crf 0 -y screencast.mp4
...
Unable to find a suitable output format for 'pipe:'
Was it helpful?

Solution

typo

Use -preset, not - preset (notice the space). ffmpeg uses - to indicate a pipe, so your typo is being interpreted as a piped output.

pipe requires the -f option

For users who get the same error, but actually want to output via a pipe, you have to tell ffmpeg which muxer the pipe should use.

Do this with the -f output option. Examples: -f mpegts, -f nut, -f wav, -f matroska. Which one to use depends on your video/audio formats and your particular use case.

You can see a list of muxers with ffmpeg -muxers (not all muxers can be used with pipe).

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top