クライアント マシンに仮想 USB デバイスを追加して、ネットワーク上の USB デバイスをリダイレクトする USB リダイレクト ソフトウェアに取り組んでいます。すべて正常に動作していますが、クライアントは、解像度 640X480 の Web カメラを接続すると 100 Mbps のネットワークが詰まると不満を漏らしています。1 Gbps アダプターで Web カメラをテストしたところ、約 16% (160 Mbps) の帯域幅が使用されました。ウェブカメラはこれほど多くの帯域幅を使用する必要がありますか? とにかく、彼はネットワークの使用を 50 Mbps 未満にしたいと考えています。
DeviceIoControl から取得したデータを圧縮してから、DeviceIoControl に渡す前にクライアント側で解凍しようとしました。ファイル転送には問題なく動作しますが、ビデオは機能しなくなり、帯域幅は約 50 Mbps に低下します。データを送信する前に短い遅延を追加しようとしましたが、これも黒い画面になります。今、どうにかしてカメラの解像度を強制的に 320X240 に下げようと考えています。DeviceIoControl によってスローされるデータを減らす他の方法があるかどうかはわかりません。
あなたの考えを共有して、私を正しい方向に導いていただければ幸いです。前もって感謝します。
編集:
YUV2 フォーマットのウェブカメラです。
Windows プラットフォームで Web カメラのフレーム レートまたは解像度を下げるために使用できるオープンソース ライブラリはありますか?