Захват видео в консоли — dvgrab

9 Фев
2008

Для захвата видео с цифровой камеры подключенной по FireWire или USB не обязательно запускать Kino. Хотя это вполне и удобно. Любители консоли могут использовать dvgrab, от того же разработчика.

Он умеет захваченое видео сохранять в видео файлы RAW, avi, QuickTime DV или JPEG. В некоторых дистрибутивах dvgrab устанавливается вместе с Kino, в Ubuntu он идет отдельным пакетов, поэтому придется потрудиться:

$ sudo apt-get install dvgrab

В простейшем случае для начала захвата достаточно просто ввести команду:

$ dvgrab
Found AV/C device with GUID 0x00805780b78d823d
Capture Started
«dvgrab-001.avi»: 28.78 MB 156 frames timecode 00:41:54.22 date 2007.09.01 00:04:44

Начнется захват видеопотока с устройства /dev/raw1394, когда нужно остановить, просто убиваем процесс нажатием Ctrl+C. На выходе получаем файл в формате DV c расширением AVI.

$ file dvgrab-001.avi
dvgrab-001.avi: RIFF (little-endian) data, AVI, 720 x 576, 25.00 fps, video:, audio: uncompressed PCM (stereo, 32000 Hz)

Если dvgrab ругается на отсутствие  /dev/raw1394, в большинстве случаев достаточно просто загрузить модуль raw1394.

$ sudo modprobe raw1394

Такой подход не всегда удобен, файл с часовым фильмом получается очень большой, и с ним могут быть проблемы. Поэтому будем использовать такую конструкцию:

$ dvgrab —timestamp —autosplit —size 1998 —csize 4400 —cmincutsize 10 new_video-

Параметр timestamp, указывает на необходимость добавления метки времени к результирующему файлу. Это очень удобно, когда гонишь кассеты оптом, а потом их собираешь в DVD. Максимальный размер файла ограничили в 1998 Мб, это предел ISO9660 в старых ядрах. Сегодня с этим уже проблем нет, поэтому можно опустить этот параметр. Второе ограничение csize указывает на предельный размер файлов собранных в одну группу. Учитывая будущее перекодирование в MPEG, его также можно не использовать. Соотвественно cmincutsize показывает минимальный размер файла. Запустив такую команду, на выходе получим набор авишек с именем new_video-*. Так как у нас принят PAL не лишним будет добавить -frames 25, который укажет на количество фреймов, которые нужно сохранить в новый файл при разделении.
Для захвата через USB с использование video4linux используем команду:

$ dvgrab -v4l -input /dev/video1

Конечно захватывать так неудобно, иногда хочется как то руководить процессом. Без проблем — используем интерактивный режим:

$ dvgrab -i

….
Going interactive. Press ‘?’ for help.
q=quit, p=play, c=capture, Esc=stop, h=reverse, j=backward scan, k=pause
l=forward scan, a=rewind, z=fast forward, 0-9=trickplay, <space>=play/pause

Теперь по подсказке для захвата нажимаем клавишу “c”, воспроизведение/пауза – “пробел” и так далее.
Для получения на выходе  MPEG-2 видеофайла, можно использовать один из наверное миллиона вариантов, которые можно найти в Интернет. Если мощность позволяет, самое простое конвертировать на лету подобрав нужный параметр. Например на форуме Ubuntu я нашел такое решение использующее VLC:

$ dvgrab —format dv2 —timestamp — | vlc — :demux=rawdv —no-sub-autodetect-file «:sout=#transcode{vcodec=mp2v,vb=4096,scale=1,acod ec=a52,ab=128,channels=2}:duplicate{dst=display,ds t=std{access=file,mux=file,dst=»~/my_video.mpg»}}» —sout-ffmpeg-strict-rc

Но работать она будет, только если установлен dvgrab 3.1. В репозитарии Ubuntu:

$ dvgrab -v
dvgrab 3.0

Поэтому вперед за исходниками. Есть варианты с mencoder и ffmpeg.

Видео с камеры готово.

4 Комментариев к Захват видео в консоли — dvgrab

Аватар

vehn

Февраль 12th, 2008 | 0:44

Отличная статья. Как-раз недавно себе dv-камеру взял, всё руки прикрутить не доходят.

Аватар

Вася Пупкин

Ноябрь 5th, 2009 | 12:19

Всё красиво написано, уважаемый. Но никак оно не привинчивается.Камера ПНЫСОНИК NV-GS320.Ubuntu 8. Соединялка USB. ДВгробик версии 3.1.Просто пишет raw1394 в системе не обнаружен. Модепробе raw1394 проглатывает молча.И тишина…Мёртвые с косами…так кажется у Крамарова там?

Аватар

grinder

Ноябрь 5th, 2009 | 12:23

USB это USB, а я для захвата использую IEEE1394 (FireWare), через USB неудобно и все.

Аватар

Вася Пупкин

Ноябрь 5th, 2009 | 12:37

..Угу. Да я тоже знаю, что не удобно спать на потолке- одеяло падает…Куды бечь если ТОЛЬКО УСБ, мать их за ноги?
За 15 мин поставил бы выньдуу и родной захват , закатал бы то кино через час на дивидю-диск, кабы не екзотические дрова на звук для выпендрёжной мамы от интела…
В нашей стране всё так? В линухе звук, а в винде изображение?
На ядро ругается равв тот, чтоб нам всегда так жить…весело.

Комментировать

Наверх