第15讲 cameraserver进程启动之与CameraID和CameraDevice相关变量梳理 - Android Camera Native Framework

https://deepinout.com/android-camera-native-framework/cameraserver-process-startup-cameraid-cameradevice-variable.html

1 CameraProviderManager与Camera ID和Device相关的变量梳理

在这里插入图片描述
frameworks\av\services\camera\libcameraservice\common\CameraProviderManager.h

std::vector> mProviders;

struct ProviderInfo : public virtual RefBase {
std::vector> mDevices;
    std::unordered_set mUniqueCameraIds;
    std::vector mUniqueAPI1CompatibleCameraIds;
    // The initial public camera IDs published by the camera provider.
    // Currently logical multi-camera is not supported for hot-plug camera.
    // And we use this list to keep track of initial public camera IDs
    // advertised by the provider, and to distinguish against "hidden"
    // physical camera IDs.
    std::vector mProviderPublicCameraIds;

    struct DeviceInfo {
        const std::vector& mPublicCameraIds;
    }
}

2 CameraService与Camera ID和Device相关的变量梳理

在这里插入图片描述

// Number of camera devices (excluding hidden secure cameras)
int mNumberOfCameras;
// Number of camera devices (excluding hidden secure cameras and
// system cameras)
int mNumberOfCamerasWithoutSystemCamera;
std::vector mNormalDeviceIds;
std::vector mNormalDeviceIdsWithoutSystemCamera;
std::set mPerfClassPrimaryCameraIds;
// Mapping from camera ID -> state for each device, map is protected by mCameraStatesLock
std::map> mCameraStates;
// camera id -> torch status
KeyedVector mTorchStatusMap;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值