効率的なスクリーンキャプチャプログラム
-
28-09-2019 - |
質問
ある種のリモートデスクトップソフトウェアの作成を検討しています。ユーザー画面をインターネット経由で視聴者に転送する必要があります。
私の目標は、画面全体を1秒に10回転送する必要がないように、最適化されたキャプチャを作成することです。
私が持っていたアイデアは、ローカルコンピューターでスクリーンショットを撮ってから、最後のスクリーンショットから変更されたピクセルのみを決定することでした。したがって、基本的に彼らが何かをした場合、画面上で変更されたものだけが送信され、反対側で再構築されるので、帯域幅を保存して、より遅いインターネット接続のためにスピードアップできます。
私の質問:
- 新しいスクリーンショットを古いスクリーンショットと比較して、何が変わったかを決定するにはどうすればよいですか。
- ステップ1で発見された情報を標準のTCPストリームでどのように送信しますか。
- そのデータを再構築して、画面の更新を反対側に1回正しく表示するにはどうすればよいですか。
解決
VNCは、オープンソースのリモートデスクトップソフトウェアです。ソースをダウンロードして、それがどのように機能するかを見てみることをお勧めします。ただし、C#で書かれていないと確信しています。
TightVNCのソースコードへのリンクは次のとおりです。http://www.tightvnc.com/download.php
Fogcreekは最近、Copilot製品にVNCソースを使用しました。ここからソースもダウンロードできます。https://www.copilot.com/faq/#t28
それが役立つことを願っています
所属していません StackOverflow