ロボットの目からの映像をスマホに映す

この間だいぶ苦労したが、一応、ロボットの目から見た映像をスマホに映すことができた。(今日は赤いワンピースを着て女の子でーす)

技術的には予想以上に手こずった。フレームレートが、安定して映すことができる程度が、1/1000、つまり1秒間に1枚程度であると言う問題がある。が、いずれ改善したい。(プレイストアに公開されている現在のバージョン0.1.3にはこれは組込まれていません。次期バージョンからです。)
苦労したのは、そもそもc++によるALVideoDeviceモジュールから送られてくる画像を、javascriptでうけとるということが組み立て上がややこしかった。320×240pxのスペースのRGBなまデータは、どう見ても230400バイトのはずだが、それより多い307200バイトのデータが送られてくる。そこで1日以上苦しんだ。しかも、unsigned char データと思っているのだが7ビットデータになっている(そこに気付くのにも時間がかかった)。ビット演算で8ビットデータにして映したら、マンデルブロ集合のような画像になって、自分で笑った。
勘の良い方なら、わかっていると思うが、昨日になって全ての原因が分かった。答えは敢えて言いません。しかし、やはり、本物のストリーム処理ではないので、滑らかな画像にはならない。Choregrapheはどうやってあれを映しているのだろう?そこが聞きたい。今度アルデバラン社の技術担当者が秋葉に来て質問に答えるという企画があるので、そこで聞きたいと思っている疑問の一つだ。
Choregrapheでやれることは全てやれる、iBotシステムの中に組込めると思っている。あるいは、そうしなければ、ビジネスモデルなど組み立てられないと思っている。Choregrapheは、ロボットを売るためのもツールであって、ロボットユーザーに何かアプリやソフトを売り込むツールにするということは難しいのではないかと思っている。それでも、「全てやれる」を現実化するのは難しいが、また、必要不可欠というわけでもない。