Bagikan melalui


Intrinsik kamera

Driver kamera (atau sebagai alternatif, melalui DMFT) dapat memasang atribut intrinsik kamera ke penyimpanan atribut aliran menggunakan MFStreamExtension_PinholeCameraIntrinsics, atau melampirkan ke penyimpanan atribut bingkai media menggunakan MFSampleExtension_PinholeCameraIntrinsics. Jika dilampirkan ke penyimpanan atribut aliran, nilai intrinsik kamera tidak berubah selama streaming kamera. Jika dilampirkan ke penyimpanan atribut bingkai media, maka nilai intrinsik mungkin berubah untuk setiap bingkai.

Untuk dua atribut di atas, nilainya harus merupakan struktur jenis MFPinholeCameraIntrinsics, yang melaporkan daftar model intrinsik kamera. Setiap entri dalam daftar ini adalah dengan jenis MFPinholeCameraIntrinsic_IntrinsicModel, berisi resolusi (lebar/tinggi), model pinhole, dan model distorsi MFCameraIntrinsic_DistortionModel .

Saat menggunakan MFPinholeCameraIntrinsics dengan penyimpanan atribut stream, daftar ini harus berisi setidaknya satu, dan mungkin banyak model intrinsik. Sistem akan memilih model intrinsik berdasarkan format bingkai streaming aktif dengan mencocokkan lebar dan tinggi bingkai. Jika kecocokan yang tepat ditemukan, intrinsik akan digunakan. Jika tidak, intrinsik pertama dengan rasio aspek yang sama akan digunakan sebagai gantinya, misalnya, ketika daftar berisi dua entri, masing-masing 640x480 dan 1920x1080. Jika streaming dengan format media 1280x720, intrinsik 1080p akan digunakan dengan penskalakan yang tepat.

Saat menggunakan MFPinholeCameraIntrinsics dengan penyimpanan atribut bingkai media, daftar ini harus berisi tepat satu model intrinsik dengan resolusi yang sama dengan resolusi bingkai.