MCPcopy Create free account
hub / github.com/android/ndk-samples / PrintCameras

Function PrintCameras

camera/camera-utils/src/main/cpp/camera_utils.cpp:363–400  ·  view source on GitHub ↗

* PrintCamera(): * Enumerate existing camera and its metadata. */

Source from the content-addressed store, hash-verified

361 * Enumerate existing camera and its metadata.
362 */
363void PrintCameras(ACameraManager* cmrMgr) {
364 if (!cmrMgr) return;
365
366 ACameraIdList* cameraIds = nullptr;
367 camera_status_t status = ACameraManager_getCameraIdList(cmrMgr, &cameraIds);
368 LOGI("camera Status = %d, %s", status, GetErrorStr(status));
369
370 for (int i = 0; i < cameraIds->numCameras; ++i) {
371 const char* id = cameraIds->cameraIds[i];
372 LOGI("=====cameraId = %d, cameraName = %s=====", i, id);
373 ACameraMetadata* metadataObj;
374 CALL_MGR(getCameraCharacteristics(cmrMgr, id, &metadataObj));
375
376 int32_t count = 0;
377 const uint32_t* tags = nullptr;
378 ACameraMetadata_getAllTags(metadataObj, &count, &tags);
379
380 for (int tagIdx = 0; tagIdx < count; ++tagIdx) {
381 ACameraMetadata_const_entry val = {};
382 camera_status_t status =
383 ACameraMetadata_getConstEntry(metadataObj, tags[tagIdx], &val);
384 if (status != ACAMERA_OK) {
385 LOGW("Unsupported Tag: %s",
386 GetTagStr(static_cast<acamera_metadata_tag_t>(tags[tagIdx])));
387 continue;
388 }
389
390 PrintTagVal("Camera Tag:", val);
391
392 if (ACAMERA_LENS_FACING == tags[tagIdx]) {
393 PrintLensFacing(val);
394 }
395 }
396 ACameraMetadata_free(metadataObj);
397 }
398
399 ACameraManager_deleteCameraIdList(cameraIds);
400}
401
402void PrintRequestMetadata(ACaptureRequest* req) {
403 if (!req) return;

Callers

nothing calls this directly

Calls 4

GetErrorStrFunction · 0.85
GetTagStrFunction · 0.85
PrintTagValFunction · 0.85
PrintLensFacingFunction · 0.85

Tested by

no test coverage detected