(Спасибо William Burrow за эту главу.)
Если вы боитесь самостоятельно открывать корпус своего компьютера, то сначала прочтите данное HOWTO, соберите всю информацию о карте: тип тюнера, номера использующихся микросхем и т.д. А затем позовите того, кто может вам правильно установить карту.
Иначе, откройте корпус и установите карту в нужный слот. Выберите тот PCI слот, который поддерживает режим PCI bus master (если ваша материнская плата поддерживает эти режимы не на всех слотах).
Существует два способа подключить вашу карту оцифровки видео и звуковую карту. Подсоедините аудио кабель вашего CD-ROM к аудио входу видео карты, затем аудио выход с видео карты к аудио входу тюнера или CD-ROM. Иначе вам надо соединить внешний разъем 1/8'' аудио выхода видео карты к такому же разъему входа на аудиокарте. Если вы не хотите пропускать звук через аудиокарту или у вас ее попросту нет, то подсоедините активные колонки к аудио выходу видеокарты. (Некоторые новейшие карты bt878 не имеют аудио разъемов, так как они непосредственно посылают оцифрованный звук шине PCI.)
Для проверки работоспособности карты очень удобно использовать внешний источник видеосигнала. Многие карты имеют композитный вход, вход S-Video и, если есть тюнер, то вход RF. Для каждого из этих входов существует свой разъем.
Ядро должно быть правильно настроено для того, чтобы поддерживать карту. Большинство новых дистрибутивов 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.x , сначала возьмите ее с сайтов, указанных выше, разверните ее командой
tar -xvzf bttv-0.6.x.tar.gz
зайти в созданный каталог . su и набрать
make
(Вы можете не следовать указаниям из файла INSTALL, касательно редактирования makefiles.) Затем для их установки
make install
И в завершении
/sbin/depmod -a
для изменения информации о зависимости модуля.
Теперь вам надо создать несколько файлов в каталоге /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
У драйвера 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 тюнера.
card=n тип карты 0: Auto-Detect 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 |
теперь загрузите модуль тюнера
modprobe tuner type=n
Вам надо знать, какой вид тюнера у вас. Некоторые карты (Miro и Hauppauge) позволяют автоматически определить вид тюнера. На тюнере должно быть указано имя производителя, вы должны осмотреть микросхемы и узнать, какого вида у вас тюнер (NTSC или PAL). Для тюнеров PAL на микросхеме должно быть указано 28.xxxMHz (где xxx три цифры). Для тюнеров NTSC на микросхеме должно быть указано 35.xxxMHz. Теперь, когда вы узнали вид тюнера, выберите n из последующего списка (8 и 9 поддерживаются только bttv-0.6.4h):
type=n типы тюнеров по микросхеме: 0: Temic PAL tuner 1: Philips PAL_I tuner 2: Philips NTSC tuner 3: Philips SECAM tuner 4: no tuner 5: Philips PAL tuner 6: Temic NTSC tuner 7: Temic PAL tuner 8: Alps TSBH1 NTSC tuner 9: Alps TSBE1 PAL tuner |
И в последнюю очередь загрузите модули, которые вам еще понадобятся. Не забудьте, что драйверы для карт TEA6300, TDA8425, TDA9855 и DPL3518 есть только в версии 0.6.4h.
modprobe msp3400 или tea3600 или tda8425 или tda9855 или dpl3518(прочтите приложение)
Теперь запустите вашу программу для video4linux и посмотрите работает ли она. Если вы не можете сменить канал, проверьте, может вы установили неправильны модуль. Если возникли проблемы со звуком, перепроверьте модуль звука и посмотрите на установку "mute" звукового канала, в случае использования звуковой карты.
Теперь, когда вы узнали какие модули и опции нужны, вы можете автоматизировать процесс, занеся эту информацию в /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 |