Di Exterior View System (EVS) 1.1, perangkat kamera logis yang terdiri dari beberapa perangkat kamera fisik didukung. Untuk menggunakan perangkat virtual ini, penerapan perangkat harus mendukung Framework Sinkronisasi.
Mencantumkan, membuka, dan menutup perangkat kamera logis
Aplikasi dapat menggunakan metode IEvsEnumerator
yang sama untuk menggunakan
perangkat kamera logis yang tersedia. Objek EvsCamera
yang ditampilkan, yang
mewakili perangkat kamera logis, harus berisi item berikut dalam metadata:
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA
Jika objek EvsCamera yang ditampilkan mewakili kamera logis, metadata kameranya harus berisi kunci kemampuan ini di kolomANDROID_REQUEST_AVAILABLE_CAPABILITIES
.- Kolom
ANDROID_LOGICAL_MULTI_CAMERA_PHYSICAL_IDS
mencantumkan ID perangkat kamera fisik. - Kolom
ANDROID_LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE
dapat memiliki salah satu nilai enum di bawah:ANDROID_LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE_APPROXIMATE
adalah untuk sensor dalam mode master-master, tanpa sinkronisasi eksposur/shutter hardware.ANDROID_LOGICAL_MULTI_CAMERA_SENSOR_SYNC_TYPE_CALIBRATED
adalah untuk sensor dalam mode master-slave, sinkronisasi eksposur/rana hardware. Kamera GMSL2 yang disinkronkan harus memiliki nilai ini.
Aplikasi dapat mengambil deskripsi perangkat kamera fisik melalui
IEvsCamera
dalam metode
getPhysicalCameraInfo(stringcameraId)
baru.
/** * Returns the description of the physical camera device that backs this * logical camera. * * If a requested device does not either exist or back this logical device, * this method returns a null camera descriptor. And, if this is called on * a physical camera device, this method is the same as getCameraInfo_1_1() * method if a given device ID is matched. Otherwise, this returns a * null camera descriptor. * * @param deviceId Physical camera device identifier string. * @return info The description of a member physical camera device. * This must be the same value as reported by * EvsEnumerator::getCameraList_1_1(). */ getPhysicalCameraInfo(string deviceId) generates (CameraDesc info);
Mengonfigurasi dukungan multi-kamera
Semua kamera logis harus ditentukan secara statis dan harus dienumerasikan melalui implementasi pengelola konfigurasi. Karena EVS memungkinkan setiap perangkat dalam grup dikonfigurasi secara berbeda, EVS menyediakan daftar perangkat anggota dan menunjukkan apakah pengambilan gambar disinkronkan atau tidak.
<!-- camera group 0 --> <group id='group0' synchronized='CALIBRATED'> <caps> <!-- list of supported controls supported by all physical devices --> <supported_controls> <control name='BRIGHTNESS' min='0' max='255'/> <control name='CONTRAST' min='0' max='255'/> </supported_controls> <!-- list of stream configuration supported by all physical devices --> <stream id='0' width='640' height='480' format='RGBA_8888' framerate='30'/> </caps> <!-- list of parameters --> <characteristics> <parameter name='REQUEST_AVAILABLE_CAPABILITIES' type='enum' size='1' value='LOGICAL_MULTI_CAMERA' /> <parameter name='LOGICAL_MULTI_CAMERA_PHYSICAL_IDS' type='byte[]' size='2' value='/dev/video3,/dev/video4' /> </characteristics> </group>