飞凌嵌入式搭载全志A40i处理器的FETA40i-C核心板,可支持4路模拟摄像头PAL(720x576)/NTSC(720x480)。而实际使用过程中,PAL或者NTSC格式的分辨率无法满足实际需求,经常有客户提出,是否可支持高清模拟摄像头?高清摄像头分辨率能否支持720P或者1080P?针对此需求,小编整理编辑了FETA40i-C核心板Linux/Android 系统支持720P高清模拟摄像头解决思路。
根据A40i CPU手册描述,CSI0支持最大到1080p@30fps,支持8-bit BT656接口。
根据上述信息,硬件选择RN6752芯片,支持2路CVBS转BT656高清视频解码芯片,输入为2路不同时输入的CVBS,输出为BT656格式,自动检测NTSC/PAL输入,720P和1080P解码,其中ADC采样率高达72MHz,可实现最佳色彩和图像瞬态响应。
VINA与VINB为不同时输入,默认采用VINA输入。内部有寄存器可控制通道切换。
■ 将对应驱动放入如下路径:drivers/media/platform/sunxi-vfe/device/rn6752.c
■ 修改Makefile文件obj-y +=rn6752.o
■ 驱动编译
■ 修改sys_config1024x600.fex中csi0对应csi0_dev0_mname,csi0_dev0_twi_addr等参数
■ 编译内核并重新打包镜像,烧写
驱动移植时,需要注意:
1.摄像头所用引脚的复用需要去掉。
2.CSI接口采用BT656,输入格式为YUV422,输出为NV21/NV12。
3.RN6752采用V4L2_MBUS_FMT_UYVY8_2X8格式。
4.RN6752 采用的晶振为72MHz。
在Linux上可采用默认出厂的Cameratest进行测试。
预览效果如下:
在Android上可采用 Multiple Camera 进行测试。
预览效果如下:
拓展阅读
目前Android上行车记录仪APP只支持video4对应的模拟摄像头,其他3路未做支持。可采用Multiple Camera预览4路模拟摄像头图像。具体如图:
因手头摄像头有限,测试采用2个摄像头:(默认支持NTSC格式的模拟摄像头)
最后总结一下FETA40i-C核心板支持HD摄像头方案:
■ 目前调试了RN6752 的支持。其它解码芯片方案,可考虑项目定制。
■ 目前只调试了720P@30fps 的支持。
■ Multiple Camera为简单测试DEMO,旨在验证摄像头通路可预览,不做其它支持。
■ 其中RN6752驱动与配置,以及Multiple Camera测试程序,后续如果客户如有需要此方案可联系销售工程师。