1,MTK 平台如何查询当前使用的是哪颗摄像头及相关的模组信息?
在该目录下可以查到当前平台及相关项目的配置文件 ProjectConfig.mk
\ALPS.JB.MP.V1_W_20120919\mediatek\config\project**\
该文件中配置了当前项目中使用的硬件芯片等信息
//如这个是指收音机所使用的芯片信息
CUSTOM_HAL_FMRADIO = mt6628
//下面这个是指当前项目所采用的 ROM 芯片
CUSTOM_HAL_EEPROM=IMX111OTP_EEPROM
//闪光灯信息
CUSTOM_HAL_FLASHLIGHT=dummy_flashlight
//当前项目中可以配置的 imagesensor
CUSTOM_HAL_IMGSENSOR= ov5647_mipi_raw a5141_mipi_raw ov2659_yuv mt9d113_yuv
//镜头信息
CUSTOM_HAL_LENS=fm50af dummy_lens
//主镜头信息
CUSTOM_HAL_MAIN_LENS=fm50af
//主摄像头所采用的 imageSensor
CUSTOM_HAL_MAIN_IMGSENSOR= ov5647_mipi_raw
//音效处理芯片
CUSTOM_HAL_MSENSORLIB= yamaha532 #hscdtd004a #yamaha530
//主摄像头另一种 imageSensor, 一般不取作用
CUSTOM_HAL_MAIN_BACKUP_IMGSENSOR=a5141_mipi_raw
//副摄像头所使用的 imageSensor
CUSTOM_HAL_SUB_IMGSENSOR=ov2659_yuv
CUSTOM_HAL_SUB_BACKUP_IMGSENSOR=mt9d113_yuv
还有很多其它的硬件信息,不一一列举……
2,如何查询当前sensor所支持的预览分辨率? 如何给当前sensor 添加一种预览分辨率?
\ALPS.JB.MP.V1_W_20120919\mediatek\custom\project**\hal\camera\camera
目录下有一个 cfg_ftbl_custom_raw_main.h 的文件,在该文件中可以看到该imageSensor 相关的配置信息
如下所示为预览尺寸
#if 1
// Preview Size
CONFIG_FEATURE(FID_PREVIEW_SIZE,
BY_DEFAULT(PREVIEW_SIZE_320_240),
PREVIEW_SIZE_176_144, PREVIEW_SIZE_320_240,
PREVIEW_SIZE_352_288, PREVIEW_SIZE_480_368,
PREVIEW_SIZE_640_480, PREVIEW_SIZE_720_480, PREVIEW_SIZE_800_480,
PREVIEW_SIZE_864_480, PREVIEW_SIZE_1280_720, PREVIEW_SIZE_1920_1080
)
#endif
如果我们需要给该 imageSensor 添加一种分辨率,只需要加到该 feature 中即可,如 PREVIEW_SIZE_480_320,
副摄像头是类似的,文件目录不一样:\ALPS.JB.MP.V1_W_20120919\mediatek\custom\mt65**\hal\camera\camera\cfg_ftbl_custom_yuv_sub.h
4,修改完之后如何快速编译该部分代码?
之前修改了硬件相关的部分,我都不知道要编译哪一个目录,都是 remake 的。这样会浪费大量的时间
后面听人说只需要编译下面的模块即可。
若想要进一步在摄像中添加该分辨率还需要再修改 MediaProfiles 文件,可以参考之前写的一个blog,附链接:
MTK 平台上如何给 camera 添加一种 preview size