[Armadillo:07444] Re: Armadillo-420 MJPG-streamer の画像乱れ問題について

Yasuhisa Nakamura email@hidden
2011年 7月 29日 (金) 19:36:48 JST


中村です。

2011年 7月 29日(金)18:47 に Shin-ya Koga さんは書きました:
> USB アイソクロナス転送で読みこぼしが起きる結果、フレーム
> データを UVC データが再構築する(データ片を集積してフレーム
> データを完成させる)際に、不正なフレームデータが出来てしま
> う(内容の一部が欠落したフレームデータが出来てしまう)、と
> いうのが、今回問題となっている状況ですよね。

そういうことです。

> で、フレームデータを正しく再構築できたかどうかというのは、
> UVC ドライバのレベルでは、知ることができません。UVC の場合、
> フレームデータ片を UVC パケットへ載せる際、それがフレーム先頭
> なのかということと、フレーム末尾なのかということは知ることが
> できるのですが、フレーム全体のサイズは、(UVC デバイスから
> ホストに)伝送されないからです。
>
> UVC のコントロール転送において、フレームの最大サイズを知る
> ことはできますが、各フレームのサイズを知ることは、できません。
>
> 従って、UVC ドライバが再構築したフレームデータの内容が不正な
> ものでないかどうかは、UVC ドライバの上位レイヤで判定する、と
> いうのが自然な設計となるんじゃないかと思います。

すべてが正しく書かれていれば、ですね。
ほとんど遭遇しないようなケースで(そこに今回ぶち当たった)、
チョンボや条件判定の漏れなんてことがあって、間違った処理を
してしまったとかであれば、その責任はドライバ。

フレームデータの内容が不正かどうかを知ることができるかどうか
とは違う論点です。
私が「もしかしたら・・・」と思ているのは、こちらの方です。

-- 
なかむら




armadillo メーリングリストの案内