0

家中に複数のコンピュータ (クライアント) が分散しており、それらは有線 LAN で接続されています。私の目標は、これらすべてのコンピューターからビデオ ストリームを収集し、単一 (サーバー) の大画面に表示することです。クライアントは、デスクトップ、ビデオ ファイル、テキスト (画像として) などをストリーミングできます。

この時点で、クライアント上で低解像度のビジュアル データを準備し、OpenGL を使用してサーバー上で個別に表示します。ここで、動的グリッドを作成し、同じウィンドウに複数のストリームを表示したいと考えています。常に一部のクライアントのみがストリーミングされるため、動的です。アクティブなクライアントの数に応じて、これらのグリッドの構造を変更したいと考えています。クライアントとサーバーはすべて Linux と Gnome を実行しています。私は現在、OpenGLを使用し、クライアントごとに個別のスレッドを使用する傾向があります。各ストリームの更新レートが異なる可能性があるため、これが良いアイデアかどうかはわかりません。

この機能を実現するために、柔軟性を犠牲にすることなくコーディングを減らすなど、最も簡単な方法は何だと思いますか? このタスクに最も適したテクノロジーはどれですか? グラフィックプログラミングに関する知識は非常に限られています。

4

2 に答える 2

2

ビデオごとに 1 つずつ、一連​​の長方形を描画できます。各ビデオ フレームは、その長方形のテクスチャになります。テクスチャは個別に、異なるレートで変更できます。

于 2013-01-14T07:39:36.763 に答える
1

各コンピューターに最新の専用 GPU がある場合は、並列レンダリングと呼ばれるプロセスでそれを活用できます。これは、各 GPU が最終フレームの一部をレンダリングする責任があることを意味します。PC の 1 つがコンポーザになり、残りは「スレーブ」になります。すべてのスレーブはその部分をレンダリングし、最終フレームを組み立てるコンポーザに結果をフェッチします。このようなシステムのセットアップは簡単ではありませんが、大幅なパフォーマンスの向上とスケーラビリティが得られます。

イコライザーフレームワークを見てみましょう 。このような場合の開発工数を削減できます。

于 2013-01-14T07:56:50.953 に答える