1.1.3 Infrared remote control support in video4linux drivers

红外遥控器支持
Authors: Gerd Hoffffmann, Mauro Carvalho Chehab
1.1.3.1 Basics
大多数模拟和数字电视板都支持遥控器。其中有几个电视板带有微处理器,用于接收红外线载波并将其转换为脉冲/空间序列,然后扫描代码,并将这些代码返回到用户空间(“扫描代码模式”)。其他电视板只返回脉冲/空间序列(“原始模式”)。
扫描代码模式下的遥控器支持是由标准的 Linux 输入层提供的。关于原始模式下的遥控器支持则通过 LIRC 提供。
为了检查支持并测试它,建议下载 v4l-utils 工具集。v4l-utils 提供了两个工具来处理遥控器:
• ir-keytable:提供一种查询遥控器、列出其支持的协议、启用内核中的 IR 解码器支持或切换协议以及测试扫描代码接收的方式;
• ir-ctl:提供按照 LIRC 接口支持原始模式的遥控器的工具。
通常情况下,当检测到 TV 卡时,遥控器模块会自动加载。然而,对于一些设备,您需要手动加载 ir-kbd-i2c 模块。
1.1.3.2 How it works
遥控器模块会将遥控器注册为键盘在Linux输入层中进行识别,也就是说,您可以将遥控器的按键看作普通的按键(如果启用了CONFIG_INPUT_KEYBOARD)。
使用事件设备(CONFIG_INPUT_EVDEV),应用程序可以通过/dev/input/event<n>设备访问遥控器。udev/systemd 将自动创建这些设备。如果您安装了 v4l-utils,它可能会自动加载不同于默认的 keytable。请参阅 v4l-utils ir-keytable.1 的 man 页面以获取详细信息。
ir-keytable 工具非常适合进行故障排除,例如检查输入设备是否真正存在,确定它是哪个设备,检查按遥控器键是否会产生事件等。您也可以使用任何其他更改按键映射的输入实用程序,例如输入 kbd 实用程序。
Using with lircd
最新版本的 lircd 守护程序支持通过事件设备从 Linux 输入层读取事件。它还支持在 lirc 模式下接收 IR 代码。
Using without lircd
Xorg 可以识别数值小于 247 的多个 IR 按键代码。随着 Wayland 的出现,输入驱动程序也得到了更新,并且现在应该接受所有键码。然而,您可能希望将键码重新分配为您喜欢的媒体应用程序所支持的内容。
可以通过在运行时设置 v4l-utils 来加载自己的 keytable 来实现这一点。请参阅 ir-keytable.1 的 man 页面获取详细信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值