Привет заранее скажу что пользовался вот этой инструкцией, за что спасибо автору.
http://www.cetlot.com/2009/05/ubuntu-an ... tudio-505/ ну кое что свае добавил (правда мало) так что сильно не ругайте, это мой первый топик. (Помочь хочу)
Для ясности сразу скажу, что нам нужно:
1. программа tvtime, в которой мы будем смотреть.
2. пакет lirc, обеспечивающий дистанционное управление через ИК-пульты.
3. Холодный ум, горячее сердце и большой радиус кривизны рук
Первым делом, установим tvtime и lirc через менеджер пакетов Synaptic или через консоль: (я ставил через Synaptic)
sudo apt-get install tvtime
sudo apt-get install lirc
В процессе установки tvtime нужно будет выбрать систему вещания в вашей сети – PAL или SECAM и частотную таблицу.
Напомню, что в России вещание, чаще всего, ведётся в телевизионных стандартах PAL-DK и SECAM.
Выберем для частотной таблицы Россию и PAL-DK, т.к. большинство каналов у моего кабельного тв транслируется именно в этой системе. А при установке lirc нас спросят, какой у нас тв-тюнер, не затрудняйтесь выбором, это мы настроим потом )
Внимание: все конфигурационные файлы lirc, saa7134, udev из данной статьи, со всеми необходимыми настройками есть в архиве
http://www.cetlot.com/wp-content/upload ... 505.tar.gz и создавать их самим не нужно
После завершения установки, из приложенного выше архива, скопируем содержимое «etc» в одноимённую директорию /etc в корневом разделе системы, т.е. папки lirc, modprobe.d и udev, в которых лежат файлы конфигураций, которые мы будем править ниже.
Затем через консоль откроем файл конфигурации для нашего тв-тюнера:
sudo nano /etc/modprobe.d/saa7134.conf
в котором видим следующее:
alias char-major-81 videodev
alias char-major-81-0 saa7134
options i2c-algo-bit bit_test=1
options saa7134 card=35 tuner=51 i2c_scan=1 radio_nr=1
options tuner secam=d
alias char-major-81-1 off
alias char-major-81-2 off
alias char-major-81-3 off
Тут немного теории:
Для других тв-тюнеров на базе чипсета Philips saa7134 (не AverTV Studio 505), нужно будет подобрать свои значения «card» и «tuner», вместо указанных выше. В моём случае подошли card=35 и tuner=51 (чип c FM).
Лично у меня card=126 tuner=63 (описоное выше кард и тюнер мне не подошло)
Кстати, для Studio 505, значения card/tuner, указанные выше, в моём случае, действительны и в 9.04 и в 9.10. Правда, радио в 9.10 не работает, но дело уже не в этих значениях, и во второй статье (ссылка внизу поста) я опишу как включить и радио.
! Важно: для тюнеров значения card и tuner подбираются на основе прилагающихся к ядрам CARDLIST.saa7134 и CARDLIST.tuner, причем у разных ядер значения card и tuner тоже могут быть разными, поэтому мои рабочие значения (для моего тюнера AverTV Studio 505 и моего ядра 2.6.28-16) могут вам запросто не подойти.
Из этого следует, что если тюнер прекрасно работал в 9.04, то в 9.10 скорее всего (из-за смены ядра), нужно будет подбирать значения заново
далее у автора приведен скрипт для проверки значений card и tuner, методом перебора мне он непомог. может я что-то делал не так, незнаю. я его пропущу пожелуй.
После того как значения card и tuner пойманы, заносим их в /etc/modprobe.d/saa7134.conf и идём дальше.
После перезагрузки запускаем tvtime (в меню Ubuntu он находится в разделе «Аудио и видео»), клацая правой кнопкой мыши по экрану, заходим в меню: «Channel management» > «Сканирование каналов» и … правильно – запускаем сканирование

Сканировать так же можно консольной утилитой tvtime-scanner.
Кстати, замечу, что пункт «Сканирование каналов» виден в меню tvtime, только при включённом режиме обнаружения входного сигнала.
После сканирования, скорее всего, часть каналов не будет показываться (будет синий экран или «война микробов»

), т.к. у них другая система вещания, например SECAM, в отличие от выбранного вначале PAL-DK.
Посмотрев в «Channel management», какие основной видео и аудио стандарты у основной массы нормально показывающих каналов, выставляем их для видео и аудио по умолчанию в «Основные настройки». Они будут использоваться в дальнейшем, для новых пойманных каналов.
Затем идём на первый из каналов, который не показывает и в «Channel management» меняем стандарт видео и аудио на рабочие, и повторяем это для каждого неработающего канала.
Если нет звука, то тут возможны два варианта: либо мы забыли соединить кабелем аудио выход тюнера с линейным входом звуковой карты, либо в настройках аудиомиксера линейный вход аудиокарты отключен или его громкость стоит на нуле.
Для решения этой проблемы открываем звуковой миксер щелкая на значок динамика на панели либо отрываем его в консоли:
sudo alsamixer
Затем включаем Line In, если он отключен, и прибавляем на нём громкость.
далее у меня была проблема при переключении каналов,у меня какналы переключались только цифрами клавиши вверх вниз некак непереключали. Как оказалось в stationlist.xml разпаложенный /home/user/.tvtime для примера ( <station>) в active="1" был "0" я его заменил на "1" (это я проделал в тех строках каторые каналы мне были нужны.
Да и есщо редактировал я каналы с помощью gedit
В итоге, мы имеем работающий под линём AverTV Studio 505, и телек работает, но не время расслабляться, ведь мы хотим переключать каналы пультом, сидя на диване?
Для этого, мы должны определить устройство ИК-приемника тюнера. Есть разные способы определения устройства ИК-приемника:
Способ №1: вводим в консоли следующую команду:
cat /proc/bus/input/devices
в выдаче которой, находим кусок со словами «saa7134″,»IR» и «Aver», у меня он такой:
I: Bus=0001 Vendor=11d4 Product=198b Version=0001
N: Name="HDA Digital PCBeep"
P: Phys=card0/codec#0/beep0
S: Sysfs=/devices/pci0000:00/0000:00:06.1/input/input6
U: Uniq=
H: Handlers=kbd event6
B: EV=40001
B: SND=6
Из вышеприведенного куска, нам совершенно ясно

, что ИК-приёмником тюнера является устройство event6, а точнее /dev/input/event6
Этот способ плох тем, что номер event-та после перезагрузки может измениться, особенно это характерно при наличии USB-устройств ввода, т.е. мыши, клавиатуры и т.д.
Способ №2: набиваем в консоли следующую команду:
pci-0000:02:01.0-event-ir
что нашим устройством ИК-приемника тюнера будет
/dev/input/by-path/pci-0000:02:01.0-event-ir
Этот способ более универсальный и сгодится для большинства случаев, но только не в моём

) Дело в том, что у меня нет файлов ИК-устройств ни в /dev/input/by-path/ ни в /dev/input/by-id/ , а есть только event в /dev/input/ как в первом способе, но он, как я говорил, может измениться после перезагрузки, и соответственно, ненадёжен.
Способ №3 Универсальный (я так думаю

: Чтобы не искать устройство ИК-приемника по всему /dev, мы просто создадим правило для udev, благодаря которому, в /dev/input/ появится постоянная символическая ссылка на наше искомое ИК-устройство, вида /dev/input/event-ir
Для этого, в начале статьи, мы уже скопировали файлы из архивной папки etc в /etc, среди которых есть папка udev, находящаяся теперь в /etc/udev и содержащая нужное нам правило в готовом виде (файл /etc/udev/rules.d/z70_input_compro_ir.rules):
мне он тоже подашол
KERNEL==»event[0-9]*», SUBSYSTEM==»input», DRIVERS==»saa7134″, SYMLINK+=»input/event-ir»
Теперь ИК-приёмник тюнера будет уже навечно

устройством /dev/input/event-ir
На что уже и указано в готовом конфиге lirc-а, убедиться в этом можно, открыв файл hardware.conf:
sudo nano /etc/lirc/hardware.conf
и увидев следующие строки:
# /etc/lirc/hardware.conf
#
#Chosen Remote Control
REMOTE="AverTV Studio 505"
REMOTE_MODULES=""
REMOTE_DRIVER="dev/input"
REMOTE_DEVICE="/dev/input/event-ir"
REMOTE_LIRCD_CONF="/etc/lirc/lircd.conf"
REMOTE_LIRCD_ARGS=""
#Chosen IR Transmitter
TRANSMITTER="None"
TRANSMITTER_MODULES=""
TRANSMITTER_DRIVER=""
TRANSMITTER_DEVICE=""
TRANSMITTER_LIRCD_CONF=""
TRANSMITTER_LIRCD_ARGS=""
#Enable lircd
Если что-то будете копировать с этой статьи в конфиги, то будьте внимательны с кавычками, вордпресс опять напакостил с ними, сцуко (конфиги привожу свои)
А в файле lircd.conf:
sudo nano /etc/lirc/lircd.conf
находится уже готовый набор соответствий кнопок и сигналов пульта для нашего тюнера:
#This configuration has been automatically generated via
#the Ubuntu LIRC package maintainer scripts.
#
#It includes the default configuration for the remote and/or
#transmitter that you have selected during package installation.
#
#Feel free to add any custom remotes to the configuration
#via additional include directives or below the existing
#Ubuntu include directives from your selected remote and/or
#transmitter.
begin remote
name Beholder-607FM.cfg
bits 16
eps 30
aeps 100
one 0 0
zero 0 0
pre_data_bits 16
pre_data 0x8001
gap 135991
toggle_bit_mask 0x80010000
begin codes
POWER 0x0074
TV/FM 0x0000000080010179
1 0x0002
2 0x0003
3 0x0004
4 0x0005
5 0x0006
6 0x0007
7 0x0008
8 0x0009
9 0x000A
0 0x000B
RECALL 0x0081
MODE 0x0175
ASPECT 0x0177
FULL_SCREEN 0x0174
CH_UP 0x0192
CH_DOWN 0x0193
VOL_UP 0x0073
VOL_DOWN 0x0072
OK 0x0160
MUTE 0x0071
INFO 0x0166
RECORD 0x00A7
PLAY_PAUSE 0x00A4
STOP 0x0080
TELETEXT 0x0184
RED 0x018E
YELLOW 0x0190
GREEN 0x018F
BLUE 0x0191
SLEEP 0x008E
FREEZE 0x00EA
SNAPSHOT 0x0199
CD 0x000000008001017F
TELETEXT 0x0000000080010184
VIDEO 0x0000000080010189
AUDIO 0x0000000080010188
FULLSCREEN 0x0000000080010174
PREVIEW 0x00000000800100D2
DISPLAY 0x0000000080010172
LOOP 0x00000000800100A8
AUTOSCAN 0x00000000800100D9
FREEZE 0x000000008001008E
CAPTURE 0x000000008001019A
PLAY 0x00000000800100CF
PAUSE 0x0000000080010077
BLUE 0x0000000080010191
end codes
end remote
Правда чесно говоря у меня на пульте невсе кнопки работают. буду презнателен если кто выложит свой конфинг на пульт, может подайдет
Теперь перезапустим демона lirс-а, чтобы он прочитал отредактированные нами файлы:
sudo /etc/init.d/lirc restart
и проверим его работу, запустив в консоли утилиту irw. Если, при нажатии на кнопки пульта, мы увидим нечто похожее на это:
0000000080010193 00 CH_DOWN AVerMediaMy
0000000080010072 00 VOL_DOWN AVerMediaMy
0000000080010073 00 VOL_UP AVerMediaMy
0000000080010192 00 CH_UP AVerMediaMy
0000000080010071 00 MUTE AVerMediaMy
значит мы в полушаге от завершения )
Теперь нужно, чтобы одна из утилит lirc-а irexec запускалась автоматически при загрузке системы, т.к. именно она исполняет команды, закрепленные за определёнными кнопками пульта. В Xubuntu/Ubuntu/Kubuntu для этого нужно запустить из меню «Настройка» или «Параметры» приложение, ответственное за настройку сеансов, оно называется по разному в разных убунтах, но везде содержит слово «Сеансы», в нём то и добавляем в автозапуск приложение irexec
И последний этап

– это копирование из архива файла .lircrc в корень вашей домашней директории, читая который, irexec будет знать, какую именно команду исполнить, при нажатии на определенную кнопку пульта.
И опять в консоли наберем следующее:
cd ~
sudo nano .lircrc
и увидим следующие настройки:
begin
prog = irexec
button = POWER
config = tvtime &
config = tvtime-command QUIT
end
begin
prog = irexec
button = VOL_UP
repeat = 2
config = tvtime-command RIGHT
end
begin
prog = irexec
button = VOL_DOWN
repeat = 2
config = tvtime-command LEFT
end
begin
prog = irexec
button = CH_UP
repeat = 8
config = tvtime-command CHANNEL_UP
end
begin
prog = irexec
button = CH_DOWN
repeat = 8
config = tvtime-command CHANNEL_DOWN
end
begin
prog = irexec
button = 1
config = tvtime-command CHANNEL_1
end
begin
prog = irexec
button = 2
config = tvtime-command CHANNEL_2
end
begin
prog = irexec
button = 3
config = tvtime-command CHANNEL_3
end
begin
prog = irexec
button = 4
config = tvtime-command CHANNEL_4
end
begin
prog = irexec
button = 5
config = tvtime-command CHANNEL_5
end
begin
prog = irexec
button = 6
config = tvtime-command CHANNEL_6
end
begin
prog = irexec
button = 7
config = tvtime-command CHANNEL_7
end
begin
prog = irexec
button = 8
config = tvtime-command CHANNEL_8
end
begin
prog = irexec
button = 9
config = tvtime-command CHANNEL_9
end
begin
prog = irexec
button = 0
config = tvtime-command CHANNEL_0
end
begin
prog = irexec
button = MUTE
config = tvtime-command TOGGLE_MUTE
end
begin
prog = irexec
button = FULLSCREEN
config = tvtime-command TOGGLE_FULLSCREEN
end
begin
prog= irexec
button = CAPTURE
config = tvtime-command SCREENSHOT
end
На всякий случай, в архиве я выложил файл .lircrc с командами не только для TvTime, но и для управления Totem-ом и Gnomeradio (ссылка на статью об их настройке в самом низу)
Для чистоты эксперимента перезагружаемся и включаем tvtime с пульта.
Чтобы послушать FM-радио, нужно установить либо пакет gnomeradio, либо gqradio или же плагин gkrellm-radio, если стоит системный монитор GKrellM. Единственное, при запуске надо будет правильно указать устройство радио, которое зачастую, программы выставляют в /dev/radio, что не всегда совпадает с действительностью, поэтому зайдем в папку устройств /dev и посмотрим, как точно называется устройство. В моём случае это устройство radio1, и в программе я указал /dev/radio1
В одном из прошлых постов (настройка AverTV Studio 505 в Ubuntu 9.04), мы настраивали тв-тюнер AverTV Studio 505 и программу Tvtime для просмотра телевизионных каналов, теперь же настало время прикрутить к нашему пульту дистанционного управления еще и контроль над FM-радио Gnomeradio и дефолтным, для Убунты, видеопроигрывателем Totem, дабы познать всю прелесть дистанционного управления
1. Начнём, конечно же, с установки Gnomeradio, и конечно же в консоли

:
sudo apt-get install gnomeradio
Теперь нужно посмотреть в буфере сообщений ядра, под каким устройством зарегистрировано FM-радио тюнера, для этого в окне терминала вводим следующее:
dmesg | grep «saa713″
Мы получим листинг, в котором нас интересуют следующие строки:
[ 11.488160] saa7130[0]: registered device video0 [v4l2]
[ 11.488219] saa7130[0]: registered device vbi0
[ 11.488268] saa7130[0]: registered device radio1
и из которых видно, что устройством FM-радио является /dev/radio1, что мы и укажем в окне настроек Gnomeradio, в поле «Устройство радио»
Затем выходим из программы и запускаем из консоли поиск FM-станций, после которого можно полноценно пользоваться Gnomeradio:
gnomeradio –scan
я ставил каналы вручную, т.к. у нас их всего 3 поэтому нетрудно запомнить на какой частоте они вещают
Если звука нет или слышен только писк, то причин может быть несколько:
а) Не присоединена антенна
б) При настройке тюнера в файле конфигурации /etc/modprobe.d/saa7134 были неправильно подобраны значения значения «card» и/или «tuner» (ссылка на пост о настройке тюнера AverTV Studio 505 и tvtime)
в) LineIn звуковой карты не соединён кабелем с Audio Out-ом тюнера.
г) И последняя причина, про неё я расскажу поподробнее (в моем случае это была именно она):
Как я писал в первой статье, о настройке AvertTv Studio 505, в Ubuntu 9.10 у меня отказалось работать радио, хотя пара card/tuner (оставшиеся с Ubuntu 9.04) была рабочей и телевидение продолжало показываться на ура. Но радио не работало (молчало, но без писка), и причина была в том что, gnomeradio неправильно определял драйвер.
Мне помагло только вот это:
Для исправления этого нужно в консоли запустить гномовский редактор конфигурации gconf-editor и перейдя в ветку /apps/gnomeradio , изменить значение «driver» c any на v4l2, и выйти.
вот и все у меня заработало и радио и телевизор
P.S. надеюсь это каму нибудь поможет.