一键进入高通9008模式_如何进入高通模式

一键进入高通9008模式_如何进入高通模式Android8.0高通PDAF调试-actuatorsensitivity有一说一遇到的问题点调试过程中发现进不来pdaf流程log显示如下:01-0108:08:54.42524146352Dmm-camera:<STATS_AF><LOW>3994:af_port_handle_module_event:HandleAFmoduleeventoftype:001-0108:08:54.42524146352

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Android8.0 高通PDAF 调试 – actuator sensitivity

有一说一

遇到的问题点
调试过程中发现进不来pdaf流程 log显示如下:

01-01 08:08:54.425  2414  6352 D mm-camera: <STATS_AF ><  LOW> 3994: af_port_handle_module_event: Handle AF module event of type: 0
01-01 08:08:54.425  2414  6352 D mm-camera: <STATS_AF ><  LOW> 3158: af_port_handle_sensor_update: Sensor Res width: 4208 height: 3120 FocalLength: 3.460000 and FNum: 2.200000
01-01 08:08:54.425  2414  6352 E mm-camera: <STATS_AF ><ERROR> 3167: af_port_handle_sensor_update: Depth_Err: actuator sensitivity: 0.000000 is invalid
01-01 08:08:54.425  2414  6352 D mm-camera: <STATS_AF ><  LOW> 3173: af_port_handle_sensor_update: Depth_Err: pdaf cal data from sensor supported 1 pdaf_ptr 0xef1e4010

01-01 08:08:54.701  2414  6370 D mm-camera: <STATS_AF ><  LOW> 4216: af_port_handle_module_event: Received PDAF stats: frame_id: 3, buf_idx: 0
01-01 08:08:54.701  2414  6370 D mm-camera: <STATS_AF >< HIGH> 3831: af_port_handle_pdaf_stats: Depth_Err Pdaf not supported. Shouldn't get PDAF stats

问题分析:

Review 代码发现逻辑如下:


    /* update depth service cal data */
    af_port->ds_input.cal_data.eff_focal_length = sensor_info->actuator_info.focal_length;
    af_port->ds_input.cal_data.f_num = sensor_info->actuator_info.af_f_num;
    af_port->ds_input.cal_data.pixel_size  = sensor_info->actuator_info.af_f_pix;
    af_port->ds_input.cal_data.is_pdaf_supported = sensor_update->is_pdaf_supported;
    af_port->ds_input.cal_data.actuator_sensitivity = sensor_update->actuator_sensitivity;
    if(sensor_update->actuator_sensitivity <= 0) { 
   
      AF_ERR("Depth_Err: actuator sensitivity: %f is invalid",
        sensor_update->actuator_sensitivity);
      rc = FALSE;
    }

    if(sensor_update->is_pdaf_supported && FALSE == rc) { 
   
      AF_LOW("Depth_Err: pdaf cal data from sensor supported %d pdaf_ptr %p",
        sensor_update->is_pdaf_supported, sensor_update->pdaf_data);
       af_port->ds_input.cal_data.is_pdaf_supported = 0;
    }

actuator_sensitivity invalid时, 无法启用pdaf support
那么这个问题是哪里来的呢?
sensor初始化的时候 我们可以发现 计算actuator_sensitivity的过程

boolean module_sensor_actuator_init_calibrate(
    module_sensor_bundle_info_t *s_bundle)
{ 
   
        /* calcualte actuator sensitivity assuming total_steps is tuned to number of um */
        s_bundle->actuator_sensitivity =
          (float)af_driver_ptr->actuator_tuned_params.region_params[0].qvalue /
          af_driver_ptr->actuator_tuned_params.region_params[0].code_per_step;
    }
    /* protect the qvalue */
    else { 
   
      af_driver_ptr->actuator_tuned_params.region_params[0].qvalue = 1;
    }
}

这个时候 需要马达的qvuale值,经过对比
发现马达驱动没有此设置
遂改之

    .actuator_tuned_params =
    { 
   
      .scenario_size =
      { 
   
        2, /* MOVE_NEAR */
        3, /* MOVE_FAR */
      },
      .ringing_scenario =
      { 
   
        /* MOVE_NEAR */
        { 
   
          36,
          243,
        },
        /* MOVE_FAR */
        { 
   
          72,
          198,
          243,
        },
      },
      .initial_code = 136,
      .region_size = 1,
      .region_params =
      { 
   
        { 
   
          .step_bound =
          { 
   
            243, /* Macro step boundary*/
            0, /* Infinity step boundary*/
          },
          .code_per_step = 1,
          .qvalue = 1,
        },
      },
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/197487.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号