相機內部函數
相機驅動程式 (或透過 DMFT) 可以將相機內建屬性附加至使用 MFStreamExtension_PinholeCameraIntrinsics 的串流屬性存放區,或使用 MFSampleExtension_PinholeCameraIntrinsics 附加至媒體畫面屬性存放區。 如果附加至串流屬性存放區,相機內部函數的值就不會在相機串流期間變更。 如果附加至媒體畫面屬性存放區,則每個畫面的內建值可能會變更。
針對上述兩個屬性,此值必須是 類型為 MFPinholeCameraIntrinsics 的結構,其會報告相機內建模型的清單。 此清單中的每個專案都有類型 MFPinholeCameraIntrinsic_IntrinsicModel,其中包含解析度 (寬度/高度) 、針孔模型和 MFCameraIntrinsic_DistortionModel 失真模型。
搭配串流屬性存放區使用 MFPinholeCameraIntrinsics 時,此列表必須至少包含一個,而且可能包含許多內建模型。 系統會根據主動串流畫面格式來挑選內建模型,方法是比對畫面的寬度和高度。 如果找到完全相符的專案,則會使用內部函數。 否則,當清單分別包含兩個專案 640x480 和 1920x1080 時,將會改用具有相同外觀比例的第一個內部函數。 如果使用 1280x720 媒體格式進行串流處理,1080p 內部函數將會搭配適當的縮放使用。
搭配媒體畫面屬性存放區使用 MFPinholeCameraIntrinsics 時,此列表必須包含與畫面解析度相同的內建模型。