Запись с веб-камеры в Linux с помощью ffmpeg

С помощью ffmpeg возможно организовать захват видео с вебкамеры.
Прежде всего надо убедиться что ядро поддерживает вашу веб камеру. Отмечу что ядра выше 2.6.28 как правило  большинство камер поддерживают "из коробки". Для поддержки камер при настройке ядра в разделе USB нужно просто включить поддержку всех камер.

Будем считать, что ядро определило камеру и создало устройство /dev/video0.Далее  для захвата с камеры даем команду:

ffmpeg -t 10 -f video4linux2 -s 320x240 -r 30 -i /dev/video0 -f oss -i /dev/dsp -f mp4 webcam.mp4

Расшифровка опций:
-t 10 - ограничить время записи десятью секундами
-f - формат видео для захвата
-s 320x240 - разрешение видеозаписи
-r 30 - количество кадров в секунду
-i /dev/video0 - устройство, с которого будем захватывать видео (это может быть не только камера, но и тюнер)
-f oss - используемая система захвата звука
-i /dev/dsp - устройство для захвата звука
-f mp4 webcam.mp4 - имя файла, куда будем писать захваченое видео

Если же у вас нет камеры можете повеселиться захватив видео с рабочего стола:
ffmpeg -t 120 -f x11grab -r 25 -s wsxga -i :0.0 -f oss -i /dev/dsp-f mp4 desktop.mp4
что значит
-t 120 - время записи
-f x11grab - формат видеозахвата
-r 25 - фреймрейт
-s wsxga - выбраное разрешение
-i :0.0 - с какого дисплея захватываем
-f oss - аудиосистема
-i /dev/dsp - устройство для захвата аудио (микрофон?)
-f mp4 desktop.mp4 - файл для записи