カメラの組み込み
カメラ ドライバー (または DMFT を介して) は、MFStreamExtension_PinholeCameraIntrinsics を使用してストリーム属性ストアにカメラ組み込み属性をアタッチするか、MFSampleExtension_PinholeCameraIntrinsics を使用してメディア フレーム属性ストアにアタッチできます。 ストリーム属性ストアにアタッチされている場合、カメラのストリーミング中にカメラ内部パラメータの値は変更されません。 メディア フレーム属性ストアにアタッチされている場合は、フレームごとに内部パラメータの値が変更される可能性があります。
上記の 2 つの属性の場合、値は MFPinholeCameraIntrinsics 型の構造である必要があります。これは、カメラの組み込みモデルの一覧を報告します。 この一覧の各エントリは、MFPinholeCameraIntrinsic_DistortionModel 型であり、解像度(幅/高さ)、ピンホール モデル、および MFCameraIntrinsic_DistortionModel 歪みモデルを含んでいます。
ストリーム属性ストアで MFPinholeCameraIntrinsics を使用する場合、このリストには少なくとも 1 つの内部モデル、および場合によっては複数の内部モデルが含まれる必要があります。 システムは、フレームの幅と高さを一致させることによって、アクティブなストリーミング フレーム形式に基づいて内部モデルを選択します。 完全一致が見つかった場合は、内部モデルが使用されます。 それ以外の場合、同じ縦横比の最初の内部モデルが代わりに使用されます。たとえば、リストにそれぞれ 640x480 と 1920x1080 の 2 つのエントリが含まれている場合です。 1280 x 720 メディア形式でストリーミングする場合、1080p の内部モデルが適切なスケーリングで使用されます。
メディア フレーム属性ストアで MFPinholeCameraIntrinsics を使用する場合、このリストには、フレーム解像度と同じ解像度を持つ内部モデルがちょうど 1 つ含まれる必要があります。