最近のカメラの中には映像のアクティブデータの上下の部分にEmbedded Dataと呼ばれる映像以外の情報を埋め込まれている部分があります。
このEmbedded Dataにはフレームカウント値(タイムコード)、ゲインの値(アナログ・デジタル)、ホワイトバランス、露光時間、HDR情報やセンサーの温度・電源モニタ情報などのセンサーに関する様々な情報が入れられていることが多いです。
ただし、メーカーはこの情報を一般的に開示していることは少ないので、カメラモジュールメーカー様とNDA(秘密保持契約)を結んで情報を入手する必要があります。
この情報がわかれば、SVM-06を使うことで、カメラの映像だけでなくEmbedded Dataも同時に取り込むことが可能です。

UVCモード : 映像 + Embedded Dataの転送とPC上でのAVIフォーマットで記録が可能です。
HDMIモード : 映像 + Embedded Dataを HDMI信号として出力することも可能です。

ここではEmbedded Data内のフレームカウント値の解析とその内容を元にインジケータ表示を行う手法を説明いたします。

一般的に映像の先頭部分に何ラインかのEmbedded Dataがあり、映像の最後にも何ラインかのEmbedded Dataが付加されています。

またEmbedded Dataの後ろにはActive Areaの1ラインのピクセル数に満たない場合、足りない領域をPadding Dataが埋められていることもあります。

SVM-06は、初期状態ではサポートしている Data Type以外の Long Packet データを捨てています。
Embedded Data(0x12, 0x35) などを含んだ、サポートしていない Data type 値のLong Packet データをホストPCに転送するかのゲート制御を、Virtual Channel 毎に設定可能です。
この時に、デコード後の1Lineの幅を設定した値となるようカットしたり、Padding Data(00h)を挿入するなどの幅補正の処理も可能です。
また、有効画像では Data Type 毎に異なるアンパック処理をおこないますが、必要に応じて Embedded Data に対しても、有効画像と同等のアンパック処理をVC(Virtual Channel)毎に設定することも可能です。
なお、Embedded Dataとは異なりますが、イメージセンサーの周辺部に光を受けないようにマスクされた部分であるオプティカル・ブラック(Optical Black)に関してもセンサーメーカーでData Type値が定義されていれば、このデータも同時に取り込むことが可能です。

例えばEmbedded Dataが2行あったとして、フレームカウンタの値がFront Embedded Data中の1行目5番目のE1-5から8番目のE1-8の4バイトに埋め込まれているとします。この値は各フレーム毎に+1ずつインクリメントされます。

Embedded Data中のフレームカウンタの値が収められている位置がわかれば、「上からのライン数」「左からのオフセット」で格納位置を特定することが可能となります。そのフレームカウンタの値が2以上変化した場合をフレームドロップとして検知することができます。 またフレームドロップを検知した場合に、エラーの累積値に「1」を加えるようなエラーが発生した数をカウントすることも可能です。

フレームカウンタの値がわかれば、それを映像情報の例えば左上にOSD(オンスクリーン表示)の機能を使って表示することが可能です。例えばフレームドロップを検知した場合、映像上に「3秒間」インジケータを点滅して表示することにより、検査する人が視覚的にエラーを発見することが可能となります。 また、フレームのドロップした数を数値として表示することも可能です。

SVM-06を使うことで、有効画像領域と合わせて各種Embedded Dataを含めたフレーム単位で録画することができます。今回の説明では、フレームカウンタの値を例に使いましたが、Embedded Dataにはセンサーの様々な情報が入っていますので、それらをうまく使うことでシステムの差別化が可能となります。

Embedded Dataの取り込みは個別対応となります。
ご興味がございましたら、お気軽にお問い合わせください。