1

Qtでマルチタッチを使用したい組み込みLinuxプロジェクトがあります。私は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に送信すると主張するサーバーと、これらのTUIOイベントを読み取ってQtに渡すと主張するqtアプリケーションがあります。画面をタッチしても何も起こりません。誰かがこれについてアイデアを持っていますか?

4

1 に答える 1

1

実際にネットワーク ロガー (tcpdump、Wireshark など) を起動して、OSC パケットが実際にサーバーから送信されるかどうかを確認できますか?

エラー

OSC エラー -3: 名前解決の一時的な失敗

サーバー側の問題のように見えるので、クライアントをエラーソースとして排除するには、自分のものとは異なるサーブ (トラッカー) を選択してください。http://tuio.org/?softwareには優れた概要があります。Android Fon をお持ちの場合は、http://code.google.com/p/tuiodroid/で OSC パケットをシミュレートしてみてください。

ではクライアントへ。qTUIO は実際には完成にはほど遠いので、それが原因である可能性は十分にあります。パケットが正しく受信および転送されているかどうかをテストする良い方法は、コード内のオーバーロードされた event() メソッドを見て、それがトリガーされるかどうか、トリガーされる場合はどのタイプであるかを確認することです。トラッカーとしてCCV 1.4を使用しても問題なく機能したとしか言えません。また、可能であればペイントの例を使用してください。これにより、実際に touchevents が paintevents に変換され、うまくいかない可能性のある魔​​法が少なくなります。

埋め込みフィールドで作業すると、エラー ソースに別の特別なフレーバーが追加されます。おそらくエンディアンの問題がありますか?タイミングの問題?

使用しているライブラリ、OS、ハードウェアなどのバージョンに関する詳細情報を提供できますか?

どのコンポーネントがエラーの原因であるかが明確になったら、この投稿を更新して実際の解決策を提供します。幸運を!

于 2012-08-16T19:56:48.283 に答える