« Ver.1.2.0 リリース | トップページ | マウスカーソルを追いかけるマウスカーソル »

2015年12月10日 (木)

パブリックモード互換サーバの実現について考える

現在のQt Brynhildrはクライアントモードしか持ちません。

で、なんとなくパブリックモード互換のサーバ機能を実装できるかなと考えました。
おおまかに言って必要なのは以下の3つかなと思います。

1、デスクトップのスクリーンキャプチャ機能

Qt5の機能でデスクトップの画面キャプチャを行い、jpegで圧縮したファイルイメージデータを用意し、これをクライアントに転送する。

2、サウンドのレコーディング機能

Qt5のレコーディング機能で生のPCMデータを取得し、これをクライアントに転送する。

3、入力デバイスの制御

送られてきた情報に基づいてキーボード、マウス他の入力デバイスの制御を行う。


これらが実現できれば、互換サーバを実現できそうです。 Qt5で互換サーバを実現できれば、Windows以外もサーバとすることが可能になります、つまり色んな組み合わせで相互にサーバ/クライアントが構成できそうです。

(追記)

QGuiApplication::primaryScreen()で取得したQScreenオブジェクトからgrabWindows()でスクリーンショットであるpixmapデータが取得できるようです。これをjpegファイルイメージにメモリ上で変換してクライアントに送ればよさそうですが、充分な変換スピードが出るか試してみないとわからないですね。

サウンドキャプチャの方はQAudioRecorderを使えばなんとかなりそうですが、サンプルがあるみたいなので読んでみないといけません。

入力デバイスのコントロールはOS依存な実装になりそうな予感がします。

« Ver.1.2.0 リリース | トップページ | マウスカーソルを追いかけるマウスカーソル »

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: パブリックモード互換サーバの実現について考える:

« Ver.1.2.0 リリース | トップページ | マウスカーソルを追いかけるマウスカーソル »