Меню Рубрики

Установка tvtime для linux

Похожие записи

Плюсы и минусы Linux

linux. Как настроить интерфейс в Linux?

Шифрование данных в убунту а стоит ли?

Три лазейки для вирусов в Линукс

А у меня такой же тюнер сделал всё как тут написано а ловит только три канала те что можно словить в эфире антенной но у меня ведь кабельное телевидение и на винде этот тюнер ловит 60 каналов. Настройки все перепробовал, выбирал там частоты Европы, России Китая, всё равно ловит три канала только чуть в другом месте. В чем может быть проблема?

Nagual ты сканировал на PAL или SECAM, или на том и на том пробовал, по своему опыту знаю, что ели сначала сканирует 3−4 канала значит тюнер установился нормально, просто его нужно подстроить.

Повторное сканирование должно помочь, если вдруг не поможет, то выполните в консоли из под пользователя команду :

О! просканировал в secam и заработало. Приогромнейшее Вам спасибо!

Добрый день!
У меня тв тюнер Compro VideoMate TV PVR/FM
В Ubuntu 12.04 x64:
dmesg| grep tuner
[ 12.072861] tuner 0-0060: Tuner -1 found with type(s) Radio TV.
[ 12.547646] tuner-simple 0-0060: creating new instance
[ 12.547650] tuner-simple 0-0060: type set to 69 (Tena TNF 5335 and similar models)

dmesg| grep saa
[ 10.908753] saa7130/34: v4l2 driver version 0, 2, 17 loaded
[ 10.908809] saa7134[0]: found at 0000:04:01.0, rev: 1, irq: 18, latency: 32, mmio: 0xfbbff000
[ 10.908817] saa7134[0]: subsystem: 185b:c200, board: Compro V > [ 10.908832] saa7134[0]: board init: gpio is 4c003f
[ 11.051630] input: saa7134 IR (Compro VideoMate TV as /devices/pci0000:00/0000:00:1c.1/0000:03:00.0/0000:04:01.0/rc/rc0/input5
[ 11.051694] rc0: saa7134 IR (Compro VideoMate TV as /devices/pci0000:00/0000:00:1c.1/0000:03:00.0/0000:04:01.0/rc/rc0
[ 11.199098] saa7134[0]: i2c eeprom 00: 5b 18 00 c2 ff ff ff ff ff ff ff ff ff ff ff ff
[ 11.199111] saa7134[0]: i2c eeprom 10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 11.199121] saa7134[0]: i2c eeprom 20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 11.199131] saa7134[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 11.199141] saa7134[0]: i2c eeprom 40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 11.199154] saa7134[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff 04 ff 00 05 34 33 cb
[ 11.199160] saa7134[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 11.199165] saa7134[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 11.199171] saa7134[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 11.199176] saa7134[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 11.199181] saa7134[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 11.199187] saa7134[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 11.199192] saa7134[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 11.199198] saa7134[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 11.199203] saa7134[0]: i2c eeprom e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 11.199209] saa7134[0]: i2c eeprom f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 12.562584] saa7134[0]: registered device video1 [v4l2]
[ 12.562612] saa7134[0]: registered device vbi0
[ 12.562632] saa7134[0]: registered device radio0
[ 12.656933] saa7134 ALSA driver for DMA sound loaded
[ 12.656955] saa7134[0]/alsa: saa7134[0] at 0xfbbff000 irq 18 registered as card -2

В файле /etc/modprobe.d/saa1734
alias char-major-81 videodev
alias char-major-81−0 saa7134
options i2c-algo-bit bit_test=1
options saa7134 card=40 tuner=69
secam=dk
options saa7134 alsa=1 secam=d

Программа TVTime отлично работает, Но в 14.04 x64 мы получаем:
dmesg| grep tuner
[ 13.494932] tuner 0-0060: Tuner -1 found with type(s) Radio TV.
[ 13.578968] tuner-simple 0-0060: creating new instance
[ 13.578973] tuner-simple 0-0060: type set to 5 (Philips PAL_BG (FI1216 and compatibles))

источник

Настройка ТВ тюнеров в Linux

Если вы обладатель ТВ тюнеров AverMedia, Beholder и т.п., на базе чипов от Philips 7134 и их производных (7131/7133/7135), то это инструкция для вас.

Откройте терминал, в Jeder Linux это делается из пункта Меню -> Стандартные -> Терминал
Скопируйте эту команду и вставьте в окно терминала:

sudo gedit /etc/modprobe.d/saa7134

Введите пароль администратора.

В открывшийся документ вставьте следующий код:

alias char-major-81 videodev
alias char-major-81-0 saa7134
options i2c-algo-bit bit_test=1
options saa7134 card= XXX secam=dk
options tuner secam=d

Теперь перейдите в [список ТВ тюнеров] и найдите по номеру модели свою карту.

У меня ТВ тюнер AverMedia 507. Ввожу 507 в поиск по странице и нахожу там такую строчку:

102 -> Avermedia AVerTV Studio 507 [1461:9715]

Нас интересует цифра перед названием тюнера – 102, если у вас другой тюнер, то у него будет другая цифра.
Теперь заменим символы XXX в верхнем коде на цифры нашего тюнера, т.е. на 102 .

Всё. Больше ничего менять не надо. Нажимаем сохранить у текстового редактора и закрываем его.

Теперь в терминале вводим поочерёдно следующие команды:

sudo rmmod saa7134_alsa
sudo rmmod saa7134
sudo modprobe saa7134

Конфигурация тюнера завершена.

Теперь запускаем TVtime – программу для просмотра телевизора в Jeder Linux.

Меню -> Аудио и видео -> TVtime Television Viewer

При запуске программа сама начнёт сканирование каналов. Просто подождите когда она это закончит делать. При этом у вас будут мелькать каналы.

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

Читайте также:  Установка замка багажника калина на 2109

Меню настройки в TVtime вызывается по нажатию правой кнопки мыши в окне программы.
Левая кнопка мыши показывает или прячет номер канала, если меню настройки неактивно.
Колесо мыши, а также клавиши вверх/вниз переключают каналы.

Спасибо за статью) Я, возможно, скоро ей воспользуюсь =)
А если номер, например, двузначный то как вводить: 035 или просто 35?

Спасибо помогла ваша инфо, но только вот у меня видео есть а звука нет, немогли бы помочь а то я неочень в LINUX можно сказать чайник.
вот моя audioкарта

0 [NVidia ]: HDA-Intel – HDA NVidia
HDA NVidia at 0xdfdf8000 irq 22
1 [SAA7134 ]: SAA7134 – SAA7134
saa7134[0] at 0xdfeffc00 irq 18
2 [HDMI ]: HDA-Intel – HDA ATI HDMI
HDA ATI HDMI at 0xdffec000 irq 17

а вот ето я прописал как в верху немного по другому

alias char-major-81 videodev
options i2c-algo-bit bit_test=1
options saa7134 card=12 tuner=12 i2c_scan=1 radio_nr=1
options tuner pal=i

alias char-major-81-0 saa7134
alias char-major-81-1 off
alias char-major-81-2 off
alias char-major-81-3 off

///ответ jeder
1. Немного по-другому зачем? Напишите как надо
2. Звука нет на всех каналах или только на каком-то одном-двух?
3. Скажите название тюнера и какая версия ядра или какой дистрибутив у вас?

а вот ещё если я живу в германии то нада secam=dk на pal менять
моя система последняя Ubuntu, а звука в телевизоре вообще нету, а в системе всё ок.

///ответ jeder
Сначала впишите код как в инструкции, а потом уже может звук и сам заработает. Вроде бы в Европе тоже в секаме есть каналы?
card=12, это у вас тюнер Medion 7134 что ли?

да ти прав модел Medion 7134, сделал всё как в верху но звука нет, я так думаю что проблемма в передаче звука с PCI на audiocarte. и ещё насчот модели в винде она опредиляется как Creatix карта но чип saa7134 может ето тоже важно

///ответ jeder
Есть подозрение, что в 10.04 что-то сломали, т.к. там многое работать перестало, может и звук у тюнеров заодно.
Могу посоветовать только перебором менять коды карты – подставлять от разных производителей, вдруг заработает.

///ответ jeder
Пожалуйста
А до этого другими убунтами или дистрами пользовались?

Автор чем я тебя так обидел что ты даже мои посты снес с форума. Ну не захотел общатся дальше, сказал бы сразу, я же понимаю,свобода есть свобода…тем более в СПО.

///ответ jeder
Ты что! Ничем ты меня не обидел. Ты ж хотел, чтобы никто не видел нашу переписку, я тебя добавил в новую группу, а нашу тему на форуме перенёс в скрытый раздел, который можем видеть только ты и я.
Зайди на форум, найди там так и называется Скрытый раздел и в нём твоя тема. Я тебе там ответ написал, жду тебя, а ты и не видишь. Ну ты даёшь!

да openSuse пробывал тоже самое

///ответ jeder
Вчера погуглил, смотрю у многих проблемы с этим тюнером в линуксах, причём ещё с 2007 года.
У меня тюнер не все каналы со звуком показывает, так что проблема распространена, но не у всех линуксоидов есть тюнеры
Может в следующих версиях ядра исправят эти глюки со звуком

усе зделал как надо но тюнер неподнялси

///ответ jeder
Значит не всё, а телепаты у нас в отпуске

не вру нагло я сделал………. что он как клава обнаружился

///ответ jeder
Что сделал? И как так надо было сделать, чтобы тюнер стал клавой?
Повторяю – телепаты в отпуске, проблемы с настройкой решаются на форуме и только после предоставления вами информации о том что и как вы делали.
Всё. Хватит засорять эфир

привет еще раз вобщем переустановил систему mandriva 2010 тв тюнер cronos video shuttle 2 от суперпользовател прописую sudo gedit /etc/modprobe.d/saa7134 ответ command not found

ответ jeder
Читай мой ответ на твой предыдущий коммент.

поставил твою систему стала армально)но с тв тюнером порблемы так и остались я в списке не нашел своего Cronos Video Shuttle TV II

ответ jeder
Если тюнера в списке нет, значит линукс его не поддерживает.

что-то нифига не хочет настраиваться.
В общем у меня тв-тюнер KWorld 210, а точнее PCI Hybrid TV Card (DVB-T 210SE)
Значит ввожу в терминале:
sudo gedit /etc/modprobe.d/saa7134
записываю в saa7134 такие строки
alias char-major-81 videodev
alias char-major-81-0 saa7134
options i2c-algo-bit bit_test=1
options saa7134 card=0 secam=dk
options tuner secam=d
и никак, в общем не работает, в tvtime показывает чёрный экран,каналы не сканирует, потому как даже такого пункта нет ‘сканировать”.

Для более понятного уточнения:
ввожу dmesg
выдало:

[ 8.115478] gameport gameport0: NS558 PnP Gameport is pnp00:04/gameport0, io 0x201, speed 547kHz
[ 8.216825] input: ImPS/2 Generic Wheel Mouse as /devices/platform/i8042/serio1/input/input5
[ 8.401585] saa7130/34: v4l2 driver version 0, 2, 17 loaded
[ 8.401704] saa7134 0000:00:09.0: PCI INT A -> Link[LNKB] -> GSI 11 (level, low) -> IRQ 11
[ 8.401718] saa7133[0]: found at 0000:00:09.0, rev: 209, irq: 11, latency: 32, mmio: 0xdffff800
[ 8.401733] saa7133[0]: subsystem: 17de:7253, board: Philips EUROPA V3 reference design [card=69,insmod option]
[ 8.401769] saa7133[0]: board init: gpio is 100
[ 8.564134] saa7133[0]: i2c eeprom 00: de 17 53 72 54 20 1c 00 43 43 a9 1c 55 d2 b2 92
[ 8.564157] saa7133[0]: i2c eeprom 10: ff ff ff 0f ff 20 ff ff ff ff ff ff ff ff ff 01
[ 8.564176] saa7133[0]: i2c eeprom 20: 01 40 01 03 03 01 01 03 08 ff 00 fe ff ff ff ff
[ 8.564195] saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 8.564214] saa7133[0]: i2c eeprom 40: ff 21 00 c2 96 10 03 32 15 56 ff ff ff ff ff ff
[ 8.564233] saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 8.564251] saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 8.564270] saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 8.564289] saa7133[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 8.564308] saa7133[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 8.564326] saa7133[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 8.564345] saa7133[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 8.564363] saa7133[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 8.564382] saa7133[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 8.564401] saa7133[0]: i2c eeprom e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 8.564419] saa7133[0]: i2c eeprom f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[ 8.641837] IR NEC protocol handler initialized
[ 8.652579] i2c-core: driver [tuner] using legacy suspend method
[ 8.652587] i2c-core: driver [tuner] using legacy resume method
[ 8.676325] tuner 1-0061: Tuner -1 found with type(s) Radio TV.
[ 8.748202] IR RC5(x) protocol handler initialized
[ 8.909714] IR RC6 protocol handler initialized
[ 8.914835] tuner-simple 1-0061: unable to probe Philips TD1316 Hybrid Tuner, proceeding anyway.
[ 8.914845] tuner-simple 1-0061: creating new instance
[ 8.914853] tuner-simple 1-0061: type set to 67 (Philips TD1316 Hybrid Tuner)
[ 8.915041] tuner-simple 1-0061: i2c i/o error: rc == -5 (should be 4)
[ 8.915228] tuner-simple 1-0061: i2c i/o error: rc == -5 (should be 4)
[ 8.915409] tuner-simple 1-0061: i2c i/o error: rc == -5 (should be 4)
[ 8.919694] saa7133[0]: registered device video0 [v4l2]
[ 8.920263] saa7133[0]: registered device vbi0
[ 8.997274] IR JVC protocol handler initialized
[ 9.014020] tuner-simple 1-0061: i2c i/o error: rc == -5 (should be 4)
[ 9.016231] tuner-simple 1-0061: i2c i/o error: rc == -5 (should be 4)
[ 9.161059] IR Sony protocol handler initialized
[ 9.174007] dvb_init() allocating 1 frontend
[ 9.193498] IR MCE Keyboard/mouse protocol handler initialized
[ 9.215443] tda10046: chip is not answering. Giving up.
[ 9.215511] saa7133[0]/dvb: frontend initialization failed
[ 9.225094] lirc_dev: IR Remote Control driver registered, major 251
[ 9.227517] IR LIRC bridge handler initialized
[ 9.989105] saa7134 ALSA driver for DMA sound loaded
[ 9.989203] saa7133[0]/alsa: saa7133[0] at 0xdffff800 irq 11 registered as card -1
[ 10.199098] snd_via82xx 0000:00:11.5: PCI INT C -> Link[LNKC] -> GSI 11 (level, low) -> IRQ 11
[ 10.199287] snd_via82xx 0000:00:11.5: setting latency timer to 64

Читайте также:  Установка и подключение конденсатора

Т.е у меня получается так:
Имя драйвера – saa7133
Название тюнера – B UNKNOWN/GENERIC, номер карты card=0
Номер драйвера для тюнера tuner-simple 2-004b: type set to 69 (Tena TNF 5335 and similar models)

rmmod saa7134
выдал: ERROR: Module saa7134 is in use by saa7134_alsa,saa7134_dvb

modprobe saa7134 tuner=69 card=0
выдал:
WARNING: All config files need .conf: /etc/modprobe.d/saa7134, it will be ignored in a future release.

rmmod tuner
выдал: ERROR: Module tuner is in use

modprobe tuner secam=d
выдал: WARNING: All config files need .conf: /etc/modprobe.d/saa7134, it will be ignored in a future release.

я даже вот так пробовал прописывать в saa7134
alias char-major-81 videodev
options i2c-algo-bit bit_test=1
options saa7134 card=0 tuner=69
options tuner secam=d
и всё равно нифига не работает, мож кто чем подскажет?
Уже не знаю где искать, уйму форумов перерыл.

источник

Настройка tv тюнера Beholder 609 на linux Mint 13

Надеюсь, что эта статья поможет кому-нибудь сэкономить время на настройку. Статья рассчитана на новичков, но надеюсь и опытные пользователи найдут что-нибудь полезное. Все действия производились в linux mint, но полагаю, что все будет работать и на Ububntu и на других дебианоподобных дистрибутивах.

Картинка для привлечения внимания. На фото тюнер Aver 307 грубо и безжалостно переделанный мной много лет назад в Behold 407.

Итак приступим.

Первоначальная настройка

Тв тюнер установлен, в него вставлена антенна, шнурок инфракрасного датчика и аудио кабель, второй конец которого в линейном входе звуковой карты. Для просмотра будем использовать программу tvtime.

При установке у вас спросят стандарт вещания и вариант частотной сетки каналов. Стандарт для России SECAM, а частотная сетка Мозамбик Россия.
При установке в каталоге пользователя создается каталог .tvtime, который недоступен для пользователя. Поэтому:

/.tvtime будут созданы файлы tvtime.xml и stationlist.xml.
Если вы увидели изображение с телевизора и услышали звук, вам сказочно повезло. Можете переходить к следующему пункту.
Если вы видите изображение не с тюнера, а, например, с Web камеры, добавьте в файл tvtime.xml

и попробуйте подобрать номер устройства.
Если вы не слышите звук (99% так оно и есть). Запускаете

и увеличиваете громкость по линии Line. Если под ползунком стоят буквы MM, значит линия отключена. Включаем — жмем клавишу «М».

Звук должен появиться. Если нет, то дальше уже зависит от конкретной модели звуковой карты. Проверьте с какого канала карта берет Line-In (у меня есть вариант Line-In и Rear Out). Могут быть и другие экзотические фишки связанные с вашей моделью оборудования. Например интегрированная звуковая Via vt1828s имеет параметр — loopback. Так вот когда он Enebled звук с тв тюнера идет, но не работают больше никакие звуки (немое кино, и неслышная музыка). При Disabled все наоборот.

Со звуком справились и чтобы окончательно закрыть тему, добавляем в tvtime.xml строку

Она указывает программе каким каналом громкости рулить. Можно указать Line, да и вообще любой канал по вашему вкусу. Названия каналов смотрите в alsamixer. Регистр букв имеет значение.
Можно добавить опции глушить звук при выходе и поверх всех окон.

Читайте также:  Установка лебедки на ммс паджеро

Настройка каналов

Вместо /dev/video1 подставьте ваше устройство. Если вы пользуетесь услугами кабельного провайдера, то он может транслировать передачи в стандарте PAL. Ничего страшного в этом нет. Канал будет найден все равно. Изменить кодировку для конкретного канала можно будет позднее в файле stationlist.xml.
После сканирования каналов открываем stationlist.xml, удаляем лишние каналы, добавляем, если что-то не нашлось (но это вряд ли).
Так выглядит строка с каналом.

name — имя канала, которое будет выводиться на экране при переключении. Если в именах каналах будут не только английские буквы, добавьте в объявление xml
Иначе после запуска tvtime буквы преобразуются в Unicode коды.
active — если 0, то при листании каналов он будет пропущен
position — на какой кнопке будет сидеть канал.
Остальные параметры нет необходимости менять вручную.

Программа телепередач

Самое большое преимущество компьютерного тюнера по сравнению с обычным телевизором — это возможность выводить программу телепередач прямо на экран. Переключаем канал и видим рекламу, но мы то знаем ЧТО будет сразу после нее и делаем звук погромче скорее листаем дальше.


Tvtime умеет работать с файлами формата xmltv и мы воспользуемся этим.
В tvtime.xml добавляем.

Качаем и распаковываем программу.

Теперь нужно связать каналы из xmltv.xml и stationlist.xml. У каждого канала в xmltv.xml есть id. Прописываем его в атрибут xmltvid в файл stationlist.xml вот так:

Вот и все. Теперь можно включить телевизор и наслаждаться программой передач на экране. Правда если вы живете не в Default city столице нашей родины Москве, то ваша радость, скорее всего, будет неполной. Так как время фактической трансляции не будет совпадать со временем в программе телепередач. Причем для разных каналов отклонение во времени будет различным.
Исправим это:

Изначально в файле xmltv.xml указан часовой пояс +4 часа (видимо от Гринвича), а мы сделаем +6 часов. Нужно выполнить подобную команду для каждого канала.

Настройка пульта

Самый сложный и самый затратный по времени этап.
Есть два способа работы с пультом:
1. Через lirc,
2. Как с дополнительно клавиатурой.
Мы пойдем по второму пути. Частично пульт уже должен работать. Работают цифровые клавиши и кнопки регулировки громкости. Остальные кнопки нет.
Дело в том, что пульт уже определился системой как клавиатура. Соответствие сканкодов и кейкодов клавиатуры задается на уровне ядра.
Порядок конвертации значений следующий (описываю как сам понял дилетантским языком, исправления и уточнения приветствуются):
1. Драйвер переводит сканкод (физический сигнал) кнопки в однобайтный или многобайтный кейкод (код клавиши) и отправляет «заинтересованным лицам».
2. Заинтересованным лицом, в нашем случае, является X сервер, который в зависимости от модели клавиатуры определяет как интерпретировать полученный кейкод. Т.е. Даже один и тот же код, но полученный от разных моделей устройств X сервер может интерпретировать по разному. Это, обычно не касается буквенно-цифровых символов и основных (вроде стрелок и ентера) кнопок. А вот интересующих нас мультимедийных кнопок очень даже касается.
Есть и еще одна проблема. X сервер способен принимать только однобайтные кейкоды, а некоторые кнопки у пульта бехолдера имеют более длинный код. Будем исправлять. Устанавливаем утилиты:

Считываем текущую кодовую таблицу для пульта:

Пояснение для новичков. На самом деле все не так страшно. Эту строку можно заменить на такую

и она будет работать ничуть не хуже. Просто нужно знать каким именно event’ом числится ваш пульт в системе. Вся остальная страшная строка — это просто вычисление номера. Этой командой можно прочитать кодовую таблицу любой клавиатуры подключенной к компьютеру.

Появился файл /etc/rc_keymaps/behold-key с текущей раскладкой. Выглядит он так:

Редактируем этот файл так чтобы не осталось многобайтных кодов и кодов, которые не понимает X сервер:

Получаем до перезагрузки пульт с новой кодовой таблицей. После перезагрузки все станет как раньше. Я не знаю как сделать чтобы результат оставался навсегда, поэтому последнюю команду добавил в автозагрузку файл /etc/rc.local.
Привожу для примера мой отредактированный файл behold-key:

А вот некоторые коды, которые нормально воспринимает X сервер (данные получены методом сурового брутфорса). Обращаю ваше внимание, что так воспринимаются коды именно от пульта бехолдер. От других клавиатур код 0x94 может идентифицироваться вовсе не как KEY_PROG1.

При проведении работ по настройке кнопок пульта удобно пользоваться следующим методом мониторинга. Запускаем

Где 60 это время ожидания нажатия в секундах, 5 номер клавиатуры в системе. И жмем кнопки на пульте.
Выдача имеет примерно следующий вид.

Вывод происходит при нажатии и при отпускании кнопки.
7046683 — это физический сканкод кнопки пульта в десятичной системе. Он будет выводиться в любом случае.
(0xa4) — кейкод который драйвер отправил дальше. Если его длина не равна одному байту, то X сервер его не увидит.
KEY_PLAYPAUSE — это имя кнопки. Если имени нет, то на эту кнопку нельзя будет повесить команду. Меняйте кейкод.

Последние штрихи

Мы получили пульт воспринимаемый системой как дополнительная клавиатура с мультимедийными клавишами. Осталось настроить реакцию системы на нажатия. Громкость и переключение каналов в tvtime уже работают, так как кнопки крестовины настроены как стрелки и Enter.
Идем в Настройки клавиатуры и задаем клавиши воспроизведения, которые будут работать в большинстве плееров.

На остальные кнопки настраиваем дополнительные команды.
Я назначил клавише FullScreen пульта значение F11. Эту клавишу понимает большинство программ как переход в полноэкранный режим и обратно, но не tvtime. Поэтому добавляем в файл tvtime.xml

К сожалению tvtime не понимает мультимедийные клавиши, поэтому задать действие на нажатие KEY_SWITCHVIDEOMODE не получится. Но для этого есть другой способ.
В разделе дополнительных команд настроек клавиатуры задаем команду

полный список команд tvtime читайте в документации.
Если нужна кнопка для закрытия активного окна, устанавливаем:

Вот и все. Буду рад исправлениям и уточнениям. Если тема интересна, то можно будет изучить вопрос по настройке медиакомбайна MythTV в многотюнерной конфигурации и с сетевыми клиентами. Между прочим, у MythTV есть фронтэнды под андроид. Можно смотреть эфирное ТВ с планшета или смарта… Заманчиво?!

источник

Добавить комментарий