web-dev-qa-db-ja.com

Linux、Windows、またはOSXで画面/モニターをエミュレートするための最良の方法は何ですか?

私は、ネットワークを介して別のレンダリングデバイス(ある種の画面に接続された別のコンピューター)に送信したい仮想セカンドスクリーンデバイスを作成するプロジェクトに取り組んでいます。Windowsのmiracastの実装のようなものです。

HDMIまたはVGAを介してローカルマシンに接続されたモニターまたは画面をエミュレートするための最良の方法は何でしょうか。

これを行うためにどの言語を検討する必要がありますか?構築しているカスタム仮想デバイス用に独自のオペレーティングシステムドライバーを作成する必要がありますか?

2
tensai

タスクに最も類似したソリューションはSpacedeskです。 https://www.spacedesk.net/ 彼らは素晴らしい仕事をしており、これには多くの特定の知識が必要です。ここであなたを待っていることへの応答として:「仮想ディスプレイを偽造し、多くのWindowsリリースでそれらを維持できるような非標準のWDDMドライバーを作成できるのは、地球上でほんの一握りの人々(もちろん私たち自身も含む)です。そして長期間にわたって」 (MarcelRüdinger、Spacedesk/datronicsoft Inc.)

2
IGRIG

任意の接続(I.E. Miracast)を介して真のディスプレイインターフェイスを抽象化するためのオープンな技術標準はまだ初期段階にあり、(非)互換性の問題に満ちているようです。一方、独自の仮想ディスプレイドライバーとクライアントを作成すると、ほぼ確実に、さまざまなディスプレイプロトコル、ハードウェアベンダーなどで、あらゆる種類の問題が発生します。

ただし、ディスプレイインターフェイスのimportant部分はビデオデータのみであり、それをキャプチャしてストリーミングするためのあらゆる種類の標準があります。

したがって、仮想化されたセカンドスクリーンの効果を実現する最も簡単な方法は、OSを構成して(実際のディスプレイデバイスを接続せずに)レンダリングし、従来の既製のスクリーンキャプチャおよび記録ソフトウェアを使用してキャプチャおよび送信することです。 、OBS、さらにはSkypeなど。

最終的なソリューションに安価なハードウェアコンポーネントを含めても問題がない場合、仮想化された2番目の画面をローカルマシンにレンダリングさせる最も簡単な方法は、次の製品のような物理ドングルを使用することです。

CompuLab Display Emulator(fit-Headless)

(つまり、プラグインして他のモニターと同じようにセットアップし、OBSストリーム、Skype通話、リモートデスクトップセッション、またはビデオストリーミングのいずれかの方法を使用して2台のコンピューターを接続できます。)

これには、ユーザーランドでのみ、さらには広くサポートされているシステムでのみカスタマイズが必要になるという利点もあります。

2
Will Chen

Teamviewerアプリケーションは、無料のクロスプラットフォームであるここであなたの友達になる可能性があるようです。 https://www.teamviewer.com/en/ それはあなたが意味することですか?

1
Sean Davey