Форум XBMC и Kodi. Помощь, поддержка, обсуждение, плагины.
   

Вернуться   Форум XBMC и Kodi. Помощь, поддержка, обсуждение, плагины. > Помощь и поддержка > Поддержка платформы Linux \ Live

Ответ
 
Опции темы Опции просмотра
Старый 01.12.2010, 13:15   #1
Alsnake
Junior Member
 
Регистрация: 18.11.2010
Сообщений: 7
По умолчанию Настройка ПДУ раздельно для XBMC и системы

Приветствую!
Помогите решить проблему с настройкой ПДУ (lircrc).
Система LinuxMint 9 XFCE (Ubuntu), приемник и пульт TwinHan DVB, XBMC 1:9.11-lucid3, lirc 0.8.6.
Установлено все на буке, который, в основном, стоит в стойке под телеком (типа медиа центр).
Пульт в системе определяется (devinput) как клавиатура и мышь.
Через irw все кнопки распознаются.
Запуск XBMC привязал в lircrc на кнопку Power через скрипт

#/bin/sh

if [ "`ps -C xbmc.bin -o comm=`" != 'xbmc.bin' ]; then
nohup xbmc &
exit 1
fi

в файле /usr/share/xbmc/system/Lircmap.xml добавил секцию под свой пульт -

<!-- This file contains the mapping of LIRC keys to XBMC keys used in Keymap.xml -->
<!-- -->
<!-- How to add remotes -->
<!-- <remote device="name_Lirc_calls_the_remote"> -->
<!-- -->
<!-- For the commands the layout following layout is used -->
<!-- <XBMC_COMMAND>LircButtonName</XBMC_COMMAND> -->
<!-- -->
<!-- For a list of XBMC_COMMAND's check out the <remote> sections of keymap.xml -->

<lircmap>
<remote device="TwinHan_Remote">
<play>KEY_PLAY</play>
<pause>KEY_PAUSE</pause>
<stop>KEY_STOP</stop>
<skipplus>KEY_FORWARD</skipplus>
<skipminus>KEY_REWIND</skipminus>
<pageplus>KEY_CHANNELUP</pageplus>
<pageminus>KEY_CHANNELDOWN</pageminus>
<select>KEY_5</select>
<back>KEY_0</back>
<menu>KEY_LIST</menu>
<star>KEY_FAVORITES</star>
<title>KEY_TAB</title>
<info>KEY_TEXT</info>
<display>KEY_SCREEN</display>
<record>KEY_RECORD</record>
<volumeplus>KEY_VOLUMEUP</volumeplus>
<volumeminus>KEY_VOLUMEDOWN</volumeminus>
<mute>KEY_MUTE</mute>
<power>KEY_POWER2</power>
<printscreen>KEY_PRINT</printscreen>
<start>KEY_RESTART</start>
<hash>KEY_EPG</hash>
<rotate>KEY_CANCEL</rotate>
<clear>KEY_PROGRAM</clear>
</remote>
...
(это вариант без кнопок управления)
все замечательно работает.
Но, необходимо настроить использование пульта в системе помимо XBMC. С помощью xdotool через lircrc, irexec и скрипты вешаю на пульт имитацию мыши (на те же кнопки, что и курсор в xbmc) -

#.lircrc
#Включение XBMC
begin
prog = irexec
button = KEY_POWER2
config = sh ~/.scripts/irexec/xbmc.sh
#
mode = xbmc
#
end

#Разворот на полный экран (Fullscreen)
begin
prog = irexec
button = KEY_SCREEN
config = xdotool key Alt_L+F11
end

###Управление мышью через lircd, irexec и xdotool
#Шайтан-мышь влево
begin
prog = irexec
button = KEY_4
config = /home/ira/.scripts/mouseIR/mmove_left
repeat = 2
end
#Шайтан-мышь вправо
begin
prog = irexec
button = KEY_6
config = /home/ira/.scripts/mouseIR/mmove_right
repeat = 2
end
#Шайтан-мышь вверх
begin
prog = irexec
button = KEY_2
config = /home/ira/.scripts/mouseIR/mmove_up
repeat = 2
end
#Шайтан-мышь вниз
begin
prog = irexec
button = KEY_8
config = /home/ira/.scripts/mouseIR/mmove_down
repeat = 2
end
#Правая кнопка мыши (триггер)
begin
prog = irexec
button = KEY_3
config = xdotool mousedown 3
config = xdotool mouseup 3
end
#Левая кнопка мыши (краткое нажатие)
begin
prog = irexec
button = KEY_1
config = xdotool click 1
end
#Колесо мыши вверх
begin
prog = irexec
button = KEY_9
config = xdotool click 4
end
#Колесо мыши вниз
begin
prog = irexec
button = KEY_7
config = xdotool click 5
end

в системе все нормально работает и меня устраивает.
А вот теперь в XBMC начинаются глюки с этими кнопками. Они пытаются работать как мышь и курсор одновременно. Управлять, в принципе, можно но жутко неудобно. Удалил эти кнопки из Lircmap.xml ничего не поменялось.
Надо как-то сделать, чтобы при запуске xbmc irexec все кнопки отдавал ему, а при выходе опять забирал себе. man lircrc, google и форумы курил но ничего внятного не нашел. Или руки такие. Так как XBMC работает с lirc напрямую, через опцию mode у меня не получилось. Посоветуйте как организовать раздельное использование клавиш пульта в XBMC и в системе?

Последний раз редактировалось Alsnake; 03.12.2010 в 00:06.
Alsnake вне форума   Ответить с цитированием
   
Старый 01.12.2010, 19:27   #2
bigbax
Senior Member
 
Аватар для bigbax
 
Регистрация: 12.12.2009
Адрес: Моск.обл.
Сообщений: 4,454
Отправить сообщение для bigbax с помощью ICQ
По умолчанию

Ну а через Система -Параметры-Комбинации клавиш клавиатуры >>> не получается?
Я вот обнаружил новизм в rс1 : в xbmc.log не отражается key id нажатия клавиш пульта, хорошо , что старая наработка осталась. Может конечно это косяк xbmcfreak_1000-nuvoton-rc1 ?
__________________
Ubuntu 20.0.х, Kodi next

Последний раз редактировалось bigbax; 01.12.2010 в 20:04.
bigbax вне форума   Ответить с цитированием
Старый 01.12.2010, 21:25   #3
Alsnake
Junior Member
 
Регистрация: 18.11.2010
Сообщений: 7
По умолчанию

А где это
У меня XFCE. Если через настройку горячих клавиш, то я не пойму как там можно настроить разделение по программам, да и мышинные движения повесить на горячие кнопки возможно ли?
Можно поподробней, что вы имели ввиду?
Alsnake вне форума   Ответить с цитированием
Старый 01.12.2010, 22:14   #4
bigbax
Senior Member
 
Аватар для bigbax
 
Регистрация: 12.12.2009
Адрес: Моск.обл.
Сообщений: 4,454
Отправить сообщение для bigbax с помощью ICQ
По умолчанию

Я имел ввиду пульт, а не мышь. В Ubuntu в Комбинации клавиш клавиатуры для кнопок пульта настраивается оч просто. Ось воспринимает пульт как клавиатуру. Мышь там конечно не настраивается.
Я полагаю это пакет X11-xkb-utils - утилиты X11 XKB
setxkbmap -- инструмент для запросов и изменений текущей карты XKB.

xkbbell -- генерирует звуковое событие от клавиатуры.

xkbcomp -- инструмент для компиляции описаний XKB в файлы карт, которые
могут читаться сервером.

xkbevd -- экспериментальная утилита для слежения за определёнными
событиями XKB и исполнения назначенных обработчиков при их возникновении.

xkbprint -- инструмент для генерации изображения физического представления
клавиатуры как она воспринимается XKB.

xkbvleds показывает изменение состояния лампочек клавиатуры.

xkbwatch показывает изменение состояния модификаторов и лампочек.

Но это уже противоречит философии легковесности Xfce .
__________________
Ubuntu 20.0.х, Kodi next

Последний раз редактировалось bigbax; 01.12.2010 в 22:21.
bigbax вне форума   Ответить с цитированием
Старый 02.12.2010, 20:28   #5
Alsnake
Junior Member
 
Регистрация: 18.11.2010
Сообщений: 7
По умолчанию

2 bigbax
Если я правильно понял, Вы предлагаете снести lirc и настроить пульт как клавиатуру через х11. По моему неудобное решение.
Я вот чего не пойму, если я не назначил клавиши (1,2,4...) в файле Lircmap.xml почему XBMC на них пытается реагировать.
Например клавиша 2 = движение мыши (курсора) вверх. В системе так и работает, но в XBMC (допустим в главном меню) при нажатии на 2 и курсор двигается вверх и, одновременно, реагирует как будто я жму стрелку вверх на клавиатуре.
Подскажите в каком месте в бубен постучать?
Alsnake вне форума   Ответить с цитированием
Старый 02.12.2010, 22:17   #6
bigbax
Senior Member
 
Аватар для bigbax
 
Регистрация: 12.12.2009
Адрес: Моск.обл.
Сообщений: 4,454
Отправить сообщение для bigbax с помощью ICQ
По умолчанию

1. Lirc сносить не надо. Lirc - это linux приложение. Не важно что это будет LinuxMint, Ubuntu , Arch или ещё что-то из семейства unix осей. Работает как в оси так и в хбмс. С помощью lirc приложения настраиваются для каждого отдельно.
2.В хбмс , чтобы настроить пульт под себя, используется lircmap.xml . Он является частью хбмс , но не имеет отношения к самой системе.
Вы хотите настроить пульт.
Вот тогда на помощь приходит Lirc . С его помощью , а также с помощью утилит , входящих в пакет Lirc (irexec,irrecord,irevent...) Вы можете переназначить и "переделать" пульт под себя.
3. В системе Вы при помощи того же lirc настраиваете пульт , но уже под ситемные приложения. При этом в lircmap.xml никакие измененя не вносятся и на него не влияют.
4. Для кнопок, которым не назначены действия в lircmap.xml XBMC и в системе для приложений , остаётся правилом использование глобальной keymap linux на основании считывания scancode (сканкодов ) по key id. Если за кнопкой Close было закреплено в системе "Свернуть все окна" , то как бы Вы её не переназначили в lircmap.xml для хбмс , в самой ситеме эта кнопка будет соответствовать команде оси , т.е. Alt+F4.
5. Если Вам удобно в системе использовать xdtools , то Вам уже не понадобится lirc и его загрузка вместе с системой и совместное использование xdtools/lirc. Произойдёт чехарда команд.
Цитата:
Сообщение от Alsnake Посмотреть сообщение
клавиша 2 = движение мыши (курсора) вверх. В системе так и работает, но в XBMC (допустим в главном меню) при нажатии на 2 и курсор двигается вверх и, одновременно, реагирует как будто я жму стрелку вверх на клавиатуре.
Это про цифровую кнопку "2" ? Вы ей назначили в Lircmap.xml действие Up ? Event устройства могут одновременно работать в хбмс и под Lirc используя Lircmap.xml , и в соответствии с умолчаниями keyboard.xml , remote.xml, keymap linux.
То как прописываются кнопки пульта , клавиатуры в Lircmap.xml - это имеет значение только для хбмс и только когда он работает.
Поэтому свой Lircmap.xml копируют соответствующую папку XBMC, а не в системную.
__________________
Ubuntu 20.0.х, Kodi next

Последний раз редактировалось bigbax; 02.12.2010 в 22:54.
bigbax вне форума   Ответить с цитированием
Старый 03.12.2010, 00:19   #7
Alsnake
Junior Member
 
Регистрация: 18.11.2010
Сообщений: 7
По умолчанию

Благодарю за подробный ответ. Разобрался где ступил.
Сдвоенная реакция на нажатия была т.к. не полностью очистил lircmap.xml (поправил).
Вариант с назначением кнопкам пульта кнопок клавиатуры возможен, но назначить кнопке движение курсора мыши через х11-xkb я не нашел как. Получается, что без xdotool не обойтись.
В общем нужно либо переназначит какие нибудь клавиши пульта под курсор (проще но не хотелось бы), либо что-то мудрить с lircrc, например, чтоб кнопки мыши (на пульте) активировались при нажатии на какую либо клавишу (в идеале отключались при нажатии Power (включении xbmc) и включались при повторном нажатии. Вот только как это реализовать?
Alsnake вне форума   Ответить с цитированием
Ответ
 


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Текущее время: 19:22. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.