2009-09-24 9 views
7

アナログカメラを搭載したデバイスがあります。私たちはそれをサンプリングしてデジタル化するカードを持っています。これはすべてdirectxで行われます。現時点では、ハードウェアの交換はオプションではありませんが、将来発生するハードウェアやオペレーティングシステムの変更に関係なく、このビデオフィードをリアルタイムで見ることができるようにコードを作成する必要があります。IPカメラを実装する

私たちは、このカメラのフィードを表示するGUIを実装するためにQtを選択しました。しかし、今後Linuxやその他の組み込みプラットフォームに移行し、他のハードウェア(カメラ/ビデオサンプラーが存在する物理的なデバイスを含む)を変更する場合は、カメラのディスプレイソフトウェアも変更する必要があります。私たちのGUIにそれを統合する必要があるので、痛みです。

私が提案したのは、データがソケットを介してGUIに送信され、ビデオがソケットストリームから解析された後にライブで表示される、より抽象的なモデルに移行したことでした。

まず、これは良いアイデアか悪いアイデアですか?

第2に、このようなことをどのように実装しますか?ビデオサンプラーは、通常、どのように使用可能な出力を出すのですか?どのようにしてこの出力をソケット上にプッシュできますか?受信側で出力を解析すると、出力をどのように扱うべきかをどのように知ることができますか(出力をどのようにレンダリングするか)私が考えることができるのは、各サンプルをファイルに書き込んだ後、新しいサンプルが到着するたびにファイルの内容を表示することだけです。これは全く役に立たない場合、私にとっては非効率的な解決策のように思えます。

どうすればこのことをお奨めしますか?そのようなことに利用できるクロスプラットフォームのライブラリはありますか?

ありがとうございます。

編集:私は上記のものではなく、何か異なる提案を受け入れることを望んでいます。

答えて

2

ビデオストリームを複製するものはすべて、特に埋め込みスペースでのパフォーマンスに悪影響を及ぼします。ほとんどのビデオの状況では、ローカルハードウェアアクセラレーションを使用してビデオを画面に直接吹き飛ばす方がよいと思います。適切なカプセル化をすると、ビデオを囲むGUIにQtを使用できるようになり、画面に実際のビデオ描画を制御するために使用するプラットフォーム固有のクラス(描画する場所、大きさなど)を持たせる必要があります。 )。

編集:また、フォノンのライブラリを見てみたいことがあり

。私はそれをあまり見ていませんが、さまざまなソースから取得できるビデオの表示をサポートしているようです。

+0

私はどこから来ているのか理解していますが、ローカルハードウェアアクセラレーションがまったく別のデバイスにあるか、同じデバイス上にある可能性があります。今は、USB経由でディスプレイに表示されます。私たちがソケットのアイデアを投げてもいいですが、これはQtでそのようなことを達成するのに役立つLGPLや独自のクロスプラットフォームライブラリを知っていますか? –

+0

また、答えにスペースや何かを追加して+1できるようにしてください。それは投票が変わるには古すぎると言います。 –

3

あなたはQVisionを見ましたか?ビデオとビデオの処理を管理するQtベースのフレームワークです。あなたは処理をする必要はありませんが、私はそれがあなたが望むことをすると思います。

+0

は面白そうですね、ありがとう。 –

関連する問題