Linux mini-HOWTO

         

Автоматизация процесса


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

# TV alias char-major-81 bttv pre-install bttv modprobe -k tuner; modprobe -k msp3400 options bttv radio=1 card=3 options tuner type=2

Замените модули и опции для вашей карты. (Запустите /sbin/depmod -a для того, чтобы удостовериться, что ваша информация не устарела.)



Использование версий 0.6.x


Если вы хотите использовать версию 0.6.x , сначала возьмите ее с сайтов, указанных выше, разверните ее командой

tar -xvzf bttv-0.6.x.tar.gz

зайти в созданный каталог . su и набрать

make

(Вы можете не следовать указаниям из файла INSTALL, касательно редактирования makefiles.) Затем для их установки

make install

И в завершении

/sbin/depmod -a

для изменения информации о зависимости модуля.



Настройка ядра


Ядро должно быть правильно настроено для того, чтобы поддерживать карту. Большинство новых дистрибутивов Linux идут вместе с необходимыми модулями, поэтому, если вы сможете найти у себя videodev.o, bttv.o, и tuner.o в каталоге /lib/modules/2.x.x/misc, то у вас уже все установлено.

Если нет, то придется перекомпилировать ядро с

CONFIG_VIDEO_DEV

и

CONFIG_VIDEO_BT848

желательно в качестве загружаемых модулей. Прочтите Linux Kernel HOWTO (http://www.linuxdoc.org/HOWTO/Kernel-HOWTO.html) для уточнения деталей перекомпилирования.



значения аргументов для всех модулей


Пункты отмеченные значком "*" есть только в драйверах 0.6.4h

videodev.o это основной модуль video4linux module, все видеодрайверы (включая bttv)регистрируются здесь.

i2c.o общий модуль поддержки i2c. Он выполняет большинство функций управления шиной i2c, и все остальные модули (кроме videodev.o)используют его

аргументы insmod: scan=1 обнаружение устройств на шине i2c verbose=0 уменьшает объем сообщений, выдаваемых драйвером i2c_debug=1 этот ключ предназначен для отладки вся информация, передаваемая по шине, записывается в системный журнал



bttv.o драйвер bt848 (микросхемы оцифровки)

аргументы insmod: remap=adr переназначить память Bt848 на адрес, равный adr>20 triton1=0/1 для совместимости с Triton1 Triton1 автоматически распознается pll=0/1/2 установки pll 0: не использовать PLL 1: установлена микросхема 28 MHz 2: установлена микросхема 35 MHz radio=0/1 карта поддерживает радио card=n тип карты 0: Автоопределение 1: Miro 2: Hauppauge (старая карта bt848) 3: STB 4: Intel 5: Diamond 6: AVerMedia 7: MATRIX Vision MV-Delta 8: FlyVideo 9: TurboTV 10: Hauppauge (новые карты bt878) 11: MIRO PCTV pro 12: Terratec/Vobis TV-Boostar 13: Newer Hauppauge WinCam (bt878) 14: MAXI TV Video PCI2 15: Terratec TerraTV+ 16: Aimslab VHX 17: PXC200 18: AVermedia98 19: FlyVideo98 (новые карты FlyVideo) *20: Zoltrix TV-Max *21: iProTV *22: ADS Technologies Channel Surfer TV *23: Pixelview PlayTV (bt878) *24: Leadtek WinView 601 *25: AVEC Intercapture *26: LifeView FlyKit w/o Tuner *27: Intel Create and Share PCI

параметры remap, card, radio и pll поддерживают до четырех, разделенных запятыми, аргументов (если у вас несколько карт). Параметры CARD и PLL определяются по умолчанию в файле Makefile

msp3400.o Драйвер для микросхем обработки звука msp34xx. Вам придется использовать этот модуль, если у вас стереокарта.

аргументы insmod: debug=1/2 выводить отладочную информацию в системный журнал, 2 - более подробно.

*tea6300.o Драйвер для звукового чипа tea6300. Если у вас стереокарта, а драйвер msp3400.o не работает, то попытайтесь использовать этот. Этот чип используется на большинстве TV/FM-карт фирмы STB (обычно взятых с распродаж излишков Gateway).


аргументы insmod: debug=1 выводить отладочную информацию в системный журнал.

*tda8425. o Драйвер для звукового чипа tda8425. Этот драйвер был встроен в bttv.c, поэтому если ваш драйвер раньше работал, а сейчас перестал - загрузите этот модуль.

аргументы insmod: debug=1 выводить отладочную информацию в системный журнал.

*tda9855.o Драйвер для чипа стерео-декодера/аудио-процессора tda9855.

аргументы insmod: debug=1 выводить отладочную информацию в системный журнал.

*dpl3518.o Драйвер для процессора Dolby Pro Logic dpl3518a

аргументы insmod: debug=1 выводить отладочную информацию в системный журнал.

tuner.o Драйвер тюнера. Используйте этот драйвер, если хотите работать со встроенным в карту тюнером...

аргументы insmod: debug=1 выводить отладочную информацию в системный журнал. type=n задать тип чипа тюнера, где n равно: 0:Тюнер Temic PAL 1:Тюнер Philips PAL_I 2:Тюнер Philips NTSC 3:Тюнер Philips SECAM 4:отключить поддержку тюнера 5:Тюнер Philips PAL 6:Тюнер Temic NTSC 7:Тюнер Temic PAL *8:Тюнер Alps TSBH1 NTSC *9:Тюнер Alps TSBE1 PAL

i2c_chardev.o создает символьное устройство для доступа к шине i2c. Работает только с версией 2.1.x и автоматически не собирается.



Проигрыватели


Теперь, когда ядро и устройства настроены, а модули загружены, вам понадобится приложение, при помощи которого можно просмотреть видео с вашей карты. Их существует множество:

bttvgrab - Обеспечивает высококачественную оцифровку, пригодную для записи

http://moes.pmnet.uni-oldenburg.de/bttvgrab/

Gnome-o-Vision - Программа для просмотра для среды Gnome (в данный момент находится в стадии разработки)

http://cvs.gnome.org/lxr/source/gnomovision/

kwintv - Программа для просмотра телепрограмм, основанная на Qt, для среды KDE

http://www.mathematik.uni-kl.de/~wenk/kwintv/

wmtune - Радио тюнер для ТВ/радио карт основанный на bttv

http://home.pages.de/~fionn/archive/wmtune-1.0_bttv.tar.bz2

wmtv - WindowMaker TV dock.app

http://www.student.uwa.edu.au/~wliang/

XawTV - программа для просмотра телепрограмм и несколько утилит

http://www.in-berlin.de/User/kraxel/xawtv.html

XtTV - Простенькая программа для ТВ/видео под Linux/X Windows

http://home.pages.de/~rasca/xttv/

Еще есть интересный драйвер для карты FlyVideo98 на http://wolf.ifj.edu.pl/~jochym/FlyVideo98/

Обязательно прочтите документацию, перед тем как использовать эти приложения. Большинство из них требует для работы тщательной настройки!



Создание файлов /dev


Теперь вам надо создать несколько файлов в каталоге /dev. Наберите ls /dev/video*; ls /dev/radio* , чтобы проверить, существуют ли эти файлы. Если нет, то вам придется их создать. Номер устройства у этих файлов, в основном, равен 81, другие номера устройств зависят от их типа (видео, радио и т.д.). Для более подробной информации загляните на страничку Video4Linux API по адресу (http://roadrunner.swansea.uk.linux.org/v4lapi.shtml).

В каталоге driver есть скрипт MAKEDEV, который создаст четыре видео устройства. Вы можете сделать это и сами, если у вас есть карта для оцифровки видео. Как пользователь root наберите:

mknod /dev/video0 c 81 0

chmod 666 /dev/video0

ln -s /dev/video0 /dev/video

mknod /dev/radio0 c 81 64

chmod 666 /dev/radio0

ln -s /dev/radio0 /dev/radio

Возможно у вас есть приложения, которые потребуют устройства видеотекста и VBI. Тогда вам следует набрать следующие команды:

mknod /dev/vtx0 c 81 192

chmod 666 /dev/vtx0

ln -s /dev/vtx0 /dev/vtx

mknod /dev/vbi0 c 81 224

chmod 666 /dev/vbi0

ln -s /dev/vbi0 /dev/vbi



The BTTV Mini-HOWTO


Eric Sandeen
eric_sandeen@bigfoot.com
Перевод: Михаил Корепанов, ASPLinux

В этом документе дается описание всего программного и аппаратного обеспечения, необходимого для использования в Linux карты оцифровки видеоизображения или ТВ-тюнера, основанных на чипсете bt8x8.



Требования к аппаратному обеспечению


Из файла bttv README:

Bttv - это драйвер для карт оцифровки видео, использующих семейство чипов Conexant (http://www.conexant.com) Bt848. Среди них Bt848, Bt848A, Bt849, Bt878 и Bt879. Основным отличием этих карт у разных производителей является тип тюнеров и наличие дополнительных устройств. Например, некоторые карты Hauppauge имеют дополнительный декодер Videotext и/или микросхему декодирования звука. Но не все из дополнительных устройств поддерживаются bttv. Единственные различия между платами различных изготовителей - типы блоков настройки и наличие дополнительных компонентов на платах. Например, несколько карт от компании Hauppauge имеют дополнительно декодер видеотекста и/или звуковой декодер. Только некоторые из этих дополнительных компонентов поддерживаются bttv. Также отличаются типы (композитный или S-Video) и количество входов.

Поддерживаются следующие карты:

AverMedia TV98

http://www.aver.com/products.html

AVerMedia TV-Phone

http://www.aver.com/lite/products/avertvphone.html

Diamond DTV2000

http://www.diamondmm.com/products/current/dtv-2000.cfm

Hauppauge Win/TV pci (and other Hauppauge cards)

http://www.hauppauge.com/

IDS Imaging FALCON

http://www.ids-imaging.de/

Lifeview Flyvideo II

http://www.lifeview.de/lifeview/html/produkte.htm#karte

Matrix Vision MV-Delta

http://www.matrix-vision.de/

miroVIDEO PCTV

http://www.pinnaclesys.com/

Osprey-100

http://www.mmac.com/products/osprey/osprey100.html

STB TV PCI

http://www.stb.com/products/multimedia/tvpci/tvpci.html

Terratec TERRA TV+

http://www.terratec.de/produkte/terratv/terratv_info.htm

Videologic Captivator PCI

http://www.videologic.com/Productinfo/capt_pci.htm

Если вы узнаете, что и другие карты поддерживаются драйвером, то пожалуйста напишите мне об этом и я дополню этот список.



Требования к программному обеспечению


Для использования ТВ тюнера под Linux, вам понадобятся соответствующие драйверы ядра, начиная с версии ядра 2.2.0, драйверы bttv входят в состав дистрибутива ядра.

Иначе вы можете взять драйвер tbe, который будет работать с ядрами 2.0.35 и более поздними. Однако, он не гарантирует работу с ядром более старым, чем 2.0.x. Драйверы bttv можно взять на http://www.thp.uni-koeln.de/~rjkm/linux/bttv.html, а самая последняя их версия размещена у Gerd Knorr по адресу http://www.in-berlin.de/User/kraxel/xawtv.html В них добавлена поддержка звуковых чипов, таких как TEA6300, TDA8425, и DPL3518.

Если вы новичок в обращении с драйвером bttv, я бы вам посоветовал просто взять ядро с этим драйвером. Если у вас возникнут с ним проблемы или окажется, что он не поддерживает вашу карту, то возьмите драйвер версии 0.6 по адресу, указанному выше. Если вы уже имели дело с этим драйвером, то возьмите у Gerd Knorr драйвер версии 0.7 , который будет работать с ядром 2.4. Драйверы серии 0.7 можно получить еще на http://www.in-berlin.de/User/kraxel/xawtv.html.

Этот документ описывает драйверы, идущие с ядром 2.2.14, с упоминанием некоторых возможностей версии 0.6 , а версия 0.7 здесь совсем не затронута.



Установка аппаратного обеспечения


(Спасибо William Burrow за эту главу.)

Если вы боитесь самостоятельно открывать корпус своего компьютера, то сначала прочтите данное HOWTO, соберите всю информацию о карте: тип тюнера, номера использующихся микросхем и т.д. А затем позовите того, кто может вам правильно установить карту.

Иначе, откройте корпус и установите карту в нужный слот. Выберите тот PCI слот, который поддерживает режим PCI bus master (если ваша материнская плата поддерживает эти режимы не на всех слотах).

Существует два способа подключить вашу карту оцифровки видео и звуковую карту. Подсоедините аудио кабель вашего CD-ROM к аудио входу видео карты, затем аудио выход с видео карты к аудио входу тюнера или CD-ROM. Иначе вам надо соединить внешний разъем 1/8'' аудио выхода видео карты к такому же разъему входа на аудиокарте. Если вы не хотите пропускать звук через аудиокарту или у вас ее попросту нет, то подсоедините активные колонки к аудио выходу видеокарты. (Некоторые новейшие карты bt878 не имеют аудио разъемов, так как они непосредственно посылают оцифрованный звук шине PCI.)

Для проверки работоспособности карты очень удобно использовать внешний источник видеосигнала. Многие карты имеют композитный вход, вход S-Video и, если есть тюнер, то вход RF. Для каждого из этих входов существует свой разъем.



Загрузка модулей


У драйвера bttv есть множество модулей с различными опциями, как описано в приложении. Но с таким количеством модулей и опций вы можете справиться сами. Для того,чтобы сбросить буферы на диск, напечатайте

sync; sleep 1; sync

Затем с правами пользователя root, используя команду insmod, попробуйте загрузить модули. Первые два модуля довольно просто загрузить, так как они обычно не требуют указания опций:

insmod videodev

insmod i2c

Теперь можно загрузить сам модуль драйвера bttv:

modprobe bttv

По умолчанию модуль bttv сам определяет тип карты. Просмотрите /var/log/messages , чтобы увидеть то, что он обнаружил. Если он не правильно определил тип, вам надо будет добавить опцию card=n в конце вышеуказанной строки, где n это карта из последующего списка. (Карты с 0 по 19 поддерживаются драйверами ядра, а bttv-0.6.4h поддерживает еще с 20 по 27) По желанию вы можете добавить опцию radio=1, если у вашей карты есть функция FM тюнера.