Задача: снять видео с рабочего стола Ubuntu.
Устанавливаем ffmpeg и кодеки:
sudo apt-get install ffmpeg
sudo apt-get install libavcodec-unstripped-52 libavdevice-unstripped-52 libavformat-unstripped-52 \
libavutil-unstripped-49 libpostproc-unstripped-51 libswscale-unstripped-0 ffmpeg faac
Команда, которая пишет видео с рабочего стола:
ffmpeg -f x11grab -s 1280x800 -r 25 -i :0.0 -vcodec qtrle screenvideo.mov
Разберёмся с параметрами командной строки:
-f x11grab - источник сигнала (в нашем случае X-сервер);
-i :0.0 - экран X-сервера или просто номер монитора;
-s 1280x800 - захватываемое разрешение экрана (тут очень рекомендую сохранять пропорции экрана,
а ещё лучше жать в натуральное разрешение экрана, ибо потеря качества очень серьезная);
-r 25 - количество кадров в секунду;
-vcodec qtrle - кодек для захвата (параметр необязательный, по идее ffmpeg определяет тип кодека
автоматически по расширению выходного файла);
screencast.mov - собственно выходной файл. Можно указывать полный путь.
После выполнения указанной команды сразу же начнётся процесс записи.
Чтобы остановить запись необходимо нажать "q" в терминале, в котором идёт процесс захвата.
Для удобства публикации, полученный файл можно конвертировать в формат .flv тем
же ffmpeg'ом, например так:
ffmpeg -i screencast.mov screencast.flv
|