Pinnacle DC10 plus Howto и некоторые программы для работы с видео

english * | russian

Оригинал: genphys.phys.msu.su/~dmitriy
Автор: Дмитрий Кувшинов

  1. Pinnacle Studio DC10 Plus
  2. bigphysarea patch
  3. Xawtv и Motv
  4. Linux Video Studio
В этом тексте описывается установка Linux Video Studio (программы обрабоки видеофайлов под Linux), bigphysarea patch, Xawtv и Motv на ASPLinux9 c ядром 2.4.20-9, для карточки аппаратного видеозахвата Pinnacle Studio DC10 Plus на чипах zoran 36060 , 36067 и saa711. Все, что тут описано, работает при стандартной установке ASPLinux9(версия для разработки).

1) Чтобы установить карточку Pinnacle Studio DC10 Plus на чипах zoran 36060/67 и saa711 необходимо на mjpeg.sourceforge.net скачать driver-zoran-0.9.4.tar.gz и распаковать его, затем в файле zoran_driver.c(хачить драйвер необходимо для ядра редхата, в других линухах вроде работает без хака) строчку(под номером 4512) #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0) изменить на строчку #if 0

Далее установить исходники ядра и в файле /usr/src/[linux-version]/Makefile в строке 4 заменить EXTRAVERSION = -9aspcustom на EXTRAVERSION = -9asptest

или любое другое. Смысл с том, чтобы убрать custom(это важно!!! на custom не будет грузиться драйвер). Далее нужно сказать make oldconfig dep clean bzImage modules modules_install install

Далее в файле /etc/X11/XF86Config в секции Module необходимо написать строчку, которая загрузит video4linux в X-сервер: Load "v4l" # Video4Linux

После установки ядра нужно зайти в директорию driver-zoran-0.9.4, сказать make, после этого необходимо ввести строчку ./update dc10plus PAL и будут загружены стандартные драйвера для видеокарты. После загруки драйверов необходимо перезапустить X-сервер(или наладить автоматическую загрузку драйверов до запуска X-сервера) при помощи комбинаций клавиш Ctrl+Shift+BackSpace.

2) bigphysarea patch

Если Вам необходимо использовать xawtv или motv для видеозаписи или получать скриншоты в режиме overlay (без синих экранов :), то необходимо установить bigphysarea patch. Во время компилирования пропатченного ядра (а перед этим очень внимательного прочтения README, поставляющегося с ядерным патчем) выскочит ошибка, с комментариями, из которых следует, что в одном из файлов (будет сказано в каком) надо заменить в блоке #define malloc.h на slab.h. Далее надо собственно освободить память, дав при загрузке ядра команду: mem=xxxM bigphysarea=4096 Как прописывать эту команде в загрузчике, сказано в описаниях к zoran_driver В ASPLinux9 же это делается так(кусок текста из /etc/aspldr.conf): [linux1067443216@Linux(2.4.20-20.9observ)] icon linux kernel /boot/vmlinuz-2.4.20-20.9observ mem=235M bigphysarea=4096 root=/dev/hda6 ro initrd /boot/initrd-2.4.20-20.9observ.img

где xxxM это разница в мегабайтах между размером оперативной памяти и памяти, которую Вы хотите высвободить для работы с видео. bigphysarea=4096 означает, что ядром будет выделено 16 мегабайт оперативной памяти для работы с буферами, использующимися для нужд оцифровки видео. После корректной загрузки системы вы можете проверить наличие свободной памяти [vilfred@mobile100 vilfred]$ cat /proc/bigphysarea Big physical area, size 4096 kB free list: used list: number of blocks: 1 0 size of largest block: 4096 kB 0 kB total: 4096 kB 0 kB [vilfred@mobile100 vilfred]$ Для автзагрузки до запуска X в файле /etc/modules.conf надо явно указать размер буфера: options zoran card=2 v4l_bufsize=4096 alias char-major-81-0 zoran alias char-major-81 zr36067

Может сложиться, что у вас возникнут проблемы такого толка: tail -f /var/log/messages: Oct 19 16:54:52 mobile100 kernel: DC10plus[0]: v4l_set_format() - video buffer size (128 kB) is too small при kernet boot options bigphysarea=4096

избежать этой ошибки можно, указав ядру параметром помимо bigphysarea=4096 дополнительную опцию mem=xxxM

Однако Ronald Bultje (rbultje[dig]ronald[point]bitfreak[point]net Linux Video/Multimedia developer), разработчик последней версии драйвера для dc10plus, предлагает пойти иным путем: However, you need to "make clean && make" in the driver sources to recompile it with bigphysarea support, too.

т.е. эта ошибка (не позволяющая делать скриншоты в Xawtv и Motv при overlay) может быть вызвана тем, что после перекомпиляции ядра с поддержкой bigphysarea необходимо также перекомпилировать и zoran_driver, т.к. он был скомпилирован под прежнее ядро.

3) XawTv и Motv.

Для установки Xawtv и Motv необходимо сначала удалить родной для ASPLinux xawtv (т.к. он не содержит motv). Далее надо скачать c сайта XawTv последнюю версию программы xawtv (в исходники уже включен motv) и установить её. При установке родного xawtv может потребоваться библиотека sys/asoundlib.h, которая содержится в пакете alsa-lib-devel, поставляющемся ASPLinux (второй пакет нужен для совместимости): [root@mobile100 video1]# rpm -Uhv alsa-lib-devel-0.9.6-1asp.i386.rpm alsa-driver-headers-0.9.6-1.9asp.i386.rpm Подготовка... ########################################### [100%] 1:alsa-driver-headers ########################################### [ 50%] 2:alsa-lib-devel ########################################### [100%] [root@mobile100 video1]# Собственно все это выглядит как-то так:

XawTV Motv

4) Чтобы установить Linux Video Studio(http://ronald.bitfreak.net/) необходимо установить jpeg-mmx-0.1.4.tar.gz

после ./configure и make сказать make install, а затем сказать(это важно, установщик jpeg-mmx не копирует файл jpegint.h в директорию /usr/local/include/, а это необходимо программе libmovtar, которая, в свою очередь, необходима для mjpegtools, без которых не будет работать Linux Video Studio) cp jpegint.h /usr/local/include/

далее нужно установить libmovtar-0.1.3.tar.gz и после этого установить mjpegtools-1.6.1.90.tar.gz

После проделанных операций необходимо установить linuxvideostudio-0.1.7 и заниматься полноценным записью и монтажем видео под Linux :)

Описанное наверняка пройдет и под другими версиями Linux.

Чтобы устроить броадкаст вещание в сети(локальной или internet) можно воспользоваться, например, програмным обеспечением palantir. Сервер под Linux и клиенты под Windows и Linux прилагаются.

Cергей Миридонов, автор самой первой версии драйвера для чипов zoran, пишет, что возможно использовать две программы для overlay и для записи видеофайлов: On Thursday 18 September 2003 18:11, you wrote: >> А можно ли сделать так, чтобы повесить на 1 устройство >> видеозахвата две(например) программы одновременно? >> Допустим одна пишет, а другая параллельно ей overlay >> осуществляет, чтобы конторлировать, что пишется на диск. >> тоесть запустить одновременно xawtv и lavrec например? >> Может быть вы где-то встречались с такими штуками? В моём драйвере на http://www.cicese.mx/~mirsev/Linux/DC10plus/ такое можно делать, хотя никаких гарантий, что ничего не слетит - я дать не могу. Там это как durty hack было. У меня работало... Сначала надо запустить xawtv, чтобы смотреть, а потом - lavrec. Точно также можно было и смотреть видео с диска. Сейчас есть новый драйвер на http://mjpeg.sourceforge.net/driver-zoran/ Я его не писал и поэтому ничего определённого сказать не могу. Вообще, я его ещё не пробовал... Однако, если мне не изменяет память, там такая возможность закладывалась, а следовательно - должно быть сделано более аккуратно. Поэтому советую попробовать. Тем более, что мой драйвер с новыми ядрами может и не работать. Сергей.

Linux Video Studio внешне выглядит примерно так:

Отдельное спасибо Алексею Крашенинникову за английскую версию этого howto.