wiki:

Capture

/

Desktop


Version 3 (modified by richardpl, 4 years ago) (diff)

fix links

Linux

Use the x11grab device:

ffmpeg -f x11grab -r 25 -s 1024x768 -i :0.0+100,200 output.flv

This will grab the image from desktop, starting with the upper-left corner at (x=100, y=200) with the width and height of 1024x768.

If you need audio too, you can use this:

ffmpeg -f x11grab -r 25 -s 1024x768 -i :0.0+100,200 -f alsa -ac 2 -i pulse output.flv

Windows

Use the dshow device:

ffmpeg -f dshow -i video="UScreenCapture" output.flv

This will grab the image from entire desktop.

If you need audio too, you can use this:

ffmpeg -f dshow -i video="UScreenCapture":audio="Microphone" output.flv

If you want to capture the audio that is playing from your speakers, you may also need to configure so-called "Stereo Mix" device.

You can list your devices with:

ffmpeg -list_devices true -f dshow -i dummy

General note

If you have a slow computer, it will not be smart to grab and encode your video at the same time, because slow CPU will not be able to do this. In that case, first grab all you need and save it as uncompressed video/audio and when you finish the grabbing process then start converting it to whatever you need:

Linux:

ffmpeg -f x11grab -r 25 -s 1024x768 -i :0.0+100,200 -f alsa -ac 2 -i pulse -vcodec libx264 -crf 0 -preset ultrafast -acodec pcm_s16le output.flv
ffmpeg -i output.flv -acodec ... -vcodec ... final.flv

Windows:

ffmpeg -f dshow -i video="UScreenCapture":audio="Microphone" -vcodec libx264 -crf 0 -preset ultrafast -acodec pcm_s16le output.flv
ffmpeg -i output.flv -acodec ... -vcodec ... final.flv