質問

ある種のリモートデスクトップソフトウェアの作成を検討しています。ユーザー画面をインターネット経由で視聴者に転送する必要があります。

私の目標は、画面全体を1秒に10回転送する必要がないように、最適化されたキャプチャを作成することです。

私が持っていたアイデアは、ローカルコンピューターでスクリーンショットを撮ってから、最後のスクリーンショットから変更されたピクセルのみを決定することでした。したがって、基本的に彼らが何かをした場合、画面上で変更されたものだけが送信され、反対側で再構築されるので、帯域幅を保存して、より遅いインターネット接続のためにスピードアップできます。

私の質問:

  1. 新しいスクリーンショットを古いスクリーンショットと比較して、何が変わったかを決定するにはどうすればよいですか。
  2. ステップ1で発見された情報を標準のTCPストリームでどのように送信しますか。
  3. そのデータを再構築して、画面の更新を反対側に1回正しく表示するにはどうすればよいですか。
役に立ちましたか?

解決

VNCは、オープンソースのリモートデスクトップソフトウェアです。ソースをダウンロードして、それがどのように機能するかを見てみることをお勧めします。ただし、C#で書かれていないと確信しています。

TightVNCのソースコードへのリンクは次のとおりです。http://www.tightvnc.com/download.php

Fogcreekは最近、Copilot製品にVNCソースを使用しました。ここからソースもダウンロードできます。https://www.copilot.com/faq/#t28

それが役立つことを願っています

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top