[英]Qt Multi-Touch with qTUIO and mtdev2tuio embedded linux
我有一个嵌入式Linux项目,希望在Qt上使用多点触控。 我一直在看qTUIO( https://github.com/x29a/qTUIO ),它看起来很棒。
我交叉编译了qTUIO库并部署到了开发板上。
我还交叉编译并部署了TUIO“服务器”的要求:
在板上,我启动了“服务器”:
./mtdev2tuio /dev/input/touchscreen osc.udp://127.0.0.1:3333/
Sending OSC/TUIO packets to osc.udp://127.0.0.1:3333/
为了确保它正在读取输入设备,我还做了以下操作,并且在触摸屏上移动手指时看到“名称解析失败”:
./mtdev2tuio /dev/input/touchscreen osc.udp://localhost:3333/
Sending OSC/TUIO packets to osc.udp://localhost:3333/
...
OSC error -3: Temporary failure in name resolution
OSC error -3: Temporary failure in name resolution
OSC error -3: Temporary failure in name resolution
OSC error -3: Temporary failure in name resolution
OSC error -3: Temporary failure in name resolution
...
然后,我在板上运行了“ pinchzoom”示例的qTUIO版本,该示例如下所示运行:
# ./pinchzoom -qws
graphicsview initialized
listening to TUIO messages on UDP port 3333
因此,我有一个服务器声称要解释我的触摸并将其UDP发送到端口3333,而qt应用程序声称要读取这些TUIO事件并将它们传递给Qt。 当我触摸屏幕时,没有任何反应。 有人对此有想法吗?
您实际上可以启动网络记录器(例如tcpdump,Wireshark)并查看OSC数据包是否实际上从服务器发送吗?
错误
OSC错误-3:名称解析暂时失败
在服务器端看起来像是一个问题,因此要消除客户端作为错误源,请选择与您不同的服务(跟踪程序)。 http://tuio.org/?软件功能概述不错,如果您碰巧有Android Fon,请尝试http://code.google.com/p/tuiodroid/模拟OSC数据包。
现在给客户。 qTUIO实际上还远远没有完成,因此很有可能是罪魁祸首。 测试数据包是否正确接收和转发的一种好方法是查看代码中的重载event()方法,并查看其是否触发,如果触发,则使用哪种类型。 我只能告诉您,将CCV 1.4用作跟踪器可以正常工作。 另外,请尽可能使用paint示例,因为它实际上将touchevents转换为paintevents,可能会出错的魔术更少。
在嵌入式领域中工作只会为错误源增加另一种特色。 您可能有end病吗? 时间问题?
您可以提供有关正在使用的库,操作系统,硬件等版本的更多信息吗?
我将很乐意更新这篇文章,以提供一个真正的解决方案,一旦它清楚了,是什么组件导致了错误。 祝好运!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.