2011-04-13 22 views
2

私はC#と、YUY2またはMJPG画像形式をサポートするUSB​​ウェブカメラで作業しています。これまでのところ、私はいつもYUY2モードでそれを持っていました。最近私は、MJPGのフォーマットを、1つのフレームキャプチャにつき1つのJPEG画像を自分のプログラムに送ることを考えて、フォーマットを変更しようとしました。 のように見えます。ほぼです。私はバッファを表示しようとすると、私のアプリは常に漠然とした例外をとりますが、ストリームが無効であることを示すようです。私はその後バッファの一つをファイルにコピーし、IrfanViewでそれを見ようとしましたが、それはハフマンテーブルがないことを私に伝えます。バイナリエディタでバッファを見ると、SOIとEOFのJPEGマーカー(およびその他のもの)があることがわかります。ただし、ハフマンテーブルマーカーは含まれていません。私がここで間違っていることは何ですか?私はJPEGについて少し読んだことがあります。画像がファイルサイズを縮小するために標準的なハフマンテーブルを使用できるケースがあるようです。しかし、そうであれば、これを画像に挿入するにはどうすればいいですか? これは、Microsoft Lifecamを参考にしています。MJPG画像形式のウェブカメラ

答えて

3

AVIファイルのMotion-JPEG標準の一部は、すべてのフレームに格納する必要がないように、固定ハフマンテーブルが使用されることです。

+0

申し訳ありませんが、明らかに、私は「notify-me-with-responses」をチェックするのを忘れていました。 :-(このデフォルトのhuffmanテーブルをJPEG画像に挿入して、その画像を正しく表示できるようにする必要がありますか? –

+0

はい、MJPEGデータストリームにハフマンテーブルを挿入することができます。ファイル内で絶対オフセットを使用しないでください。 – BitBank

関連する問題