Saturday, 22 February 2020
TreeVNC on Wifi 動いた
なんと一年かかったよ〜 いや、実働2ヶ月か。Wifi 上のMulticastで画面を zlib で圧縮して配信します。
ただ、Root が Core i5 だと辛いっぽいな。Core i7 ならノートPCで問題なく動く。まだ、いろいろバグって言うか変なところがあるけど。
どうかなと思ってたけど、こんなにばっちり動くとは。
4MByteくらいの画面を圧縮しながら64kbyteずつに blocking しながら送るわけですが、zlib が垂れ流し仕様。結局、margin 取ってやる方式で。
ところが、Blocking のバグが取れなくて... 一つは、
TightVNC が singleton buffer を使っていた
いや、それはちょっと無理だから。5年くらい前にもやろうとしたんですが、その時はPCの能力が低すぎた。
で、Blocking の様子を Perl/Tk で視覚化してやって、ようやっと様子がわかった。64x64 のtile単位で処理して、それをつなげて Block にする。
それが重なったり、はみ出たりしたらアウト。で、ばっちり重なってる。でも、
視覚化はどこがバグかは教えくれない
でも、視覚化楽しいのでモチベが上がるし、視覚化の情報を取るのにコードが整理されたりする利点があるみたい。
バグはいつものように簡単なバグで書込幅のresetを忘れてたとかそんなのでしたが。
いやでも、Perl/Tk ってのはなぁ。golang の fyne も悪くはないんだが、やっぱり、なれてるものがな。
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment