IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> Camera HAL中参数管理 --- SprdCamera3Setting.cpp -> 正文阅读

[移动开发]Camera HAL中参数管理 --- SprdCamera3Setting.cpp

在一次拍照请求中,CameraApp会设置一些参数下来,如果只看App,就会以为这就是Camera拍照需要的所有参数了。但其实hal管理着比App下发参数多得多的参数集合,并且提供构建一个默认CameraMetadata对象的方法。
定义一个代表所有参数集合的struct

typedef struct {
    struct img_size preview_size;
    struct img_size picture_size;
    struct img_size video_size;
    struct img_size callback_size;

    COLOR_Tag colorInfo;
    CONTROL_Tag controlInfo;
    CONTROL_Tag resultInfo;
    EDGE_Tag edgeInfo;
    FLASH_Tag flashInfo;
    FLASH_INFO_Tag flash_InfoInfo;
    GEOMETRIC_Tag geometricInfo;
    HOT_PIXEL_Tag hotpixerInfo;
    JPEG_Tag jpgInfo;
    LENS_Tag lensInfo;
    LENS_INFO_Tag lens_InfoInfo;
    NOISE_Tag noiseInfo;
    QUIRKS_Tag quirksInfo;
    REQUEST_Tag requestInfo;
    SCALER_Tag scalerInfo;
    SENSOR_Tag sensorInfo;
    SENSOR_INFO_Tag sensor_InfoInfo;
    SHADING_Tag shadingInfo;
    STATISTICS_Tag statisticsInfo;
    STATISTICS_INFO_Tag statis_InfoInfo;
    TONEMAP_Tag toneInfo;
    LED_Tag ledInfo;
    FACE_Tag faceInfo;
    FACE_Tag orifaceInfo;
    SYNC_Tag syncInfo;
    meta_info_t metaInfo;
    uint8_t info_supported_hardware_level;
    uint8_t black_level_lock;

    SPRD_DEF_Tag sprddefInfo;

    uint8_t supported_hardware_level;
    uint8_t demosaic_mode;
    EIS_CROP_Tag eiscrop_Info;
    OTP_Tag otpInfo;
    VCM_Tag vcmInfo;
    int32_t vcm_dac[VCM_DISTANCE_COUNT];
    int32_t vcm_num;
    int32_t vcm_result;
    int32_t verification_enable;
    VCM_DIST_TAG vcmDist;
    CAL_OTP_Tag calOtpInfo;
    int32_t hist_report[CAMERA_ISP_HIST_ITEMS];
    AUTO_TRACKING_Tag autotrackingInfo;
    MLOG_Tag mlogInfo;
    int32_t fd_score[10];
    uint8_t get_algo_version;
} sprd_setting_info_t;

SprdCamera3Setting.cpp的所有内容便是对这个struct的各个成员变量进行set或者get的操作。

需要注意,所有的参数大致可分为3类:

  1. Android 原生的
  2. SPRD自定义的
  3. CallbackStream(少用)
  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-08-08 11:27:20  更:2021-08-08 11:27:57 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/17 12:13:03-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码