Acorp 3DeMON BT878F и Linux

Наконец-то руки дошли до компа... Так сказать "рубит компы не линукс, рубит компы винда...". Собственно, руки дошли из-за того, что винда опять чем-то забилась и стала гнать (особенно достали глюки с flash-плеером в браузерах).

Ставить без размышлений стал Kubuntu 12.04.1 LTS. Всё прошло как по маслу, часть конфигов брал с бука. Когда перевёл дух, понял, что не работает старенький тв-тюнер (можно конечно заюзать интернет-телевидение, но раз есть - надо подрубать).

Итак, порядок действий:
1. Вбиваем в консоль следующее:
sudo apt-get install tvtime linux-doc kradio gnomeradio lirc gnome-lirc-properties gnome-alsamixer libao4 libao-common

2. Подгружаем необходимый модуль через консоль командой:
modprobe bttv card=136 tuner=25 radio=1
Запускаем tvtime через консоль и смотрим появилась ли картинка, если нет - вбиваем в консоль это:
rmmod bt878 bttv
Это для того, чтобы выгрузить модуль, который подгрузило само ядро...

3. Правим конфиг по пути ~/.tvtime/tvtime.xml
Нужно добавить в конец, перед тегом строку:
<option name="MixerDevice" value="hw:0/Line"/>
Так мы задали устройство на которое подаётся звук с тюнера (звук идёт не по шине PCI, а через шнур от аудиовыхода тюнера к линейному входу звуковой карты ПК).

4. У тюнера есть один неприятный глюк - если закрыть плеер, то звук всё равно будет воспроизводится. Под виндой есть утилита, которая глушит линейный вход при выключении тв-плеера. Под линь я ничего подобного не нашёл, но за пять минут написал скрипт заменяющий все телодвижения. Создаём в папке ~/.tvtime текстовый файл tv-mute.sh
Вбиваем в него следующее:
#!/bin/bash

amixer set Line 100
tvtime

TM=`pgrep tvtime`
while [ $TM -ne 0 ]
  do
    echo "TV is run"
    sleep 2
    TM=`pgrep tvtime`
done
echo "TV is stop"
amixer set Line 0
exit

Скрипт глушит и активирует линейный вход при закрытии/запуске Tvtime.

Всё работает отлично. Писал скорее для себя, не думаю, что кто-то ещё юзает такие раритетные девайсы, но всё же...


Оригинал статьи