飞凌嵌入式搭载全志A40i处理器的FETA40i-C核心板,可支持4路模拟摄像头PAL(720x576)/NTSC(720x480)。而实际使用过程中,PAL或者NTSC格式的分辨率无法满足实际需求,经常有客户提出,是否可支持高清模拟摄像头?高清摄像头分辨率能否支持720P或者1080P?针对此需求,小编整理编辑了FETA40i-C核心板Linux/Android 系统支持720P高清模拟摄像头解决思路。
' a: v( o) a5 L5 g+ q
4 ~0 `% D3 Q. ]0 p0 ~9 g: j6 g 一、方案评估 5 j3 }1 N' P6 B7 ~, P
根据A40i CPU手册描述,CSI0支持最大到1080p@30fps,支持8-bit BT656接口。
# E, U# ], a o1 [% v* \- N
/ z) i* U A# } . |0 W! g# h. v0 q- z! Z
4 S1 O1 c' D7 r
根据上述信息,硬件选择RN6752芯片,支持2路CVBS转BT656高清视频解码芯片,输入为2路不同时输入的CVBS,输出为BT656格式,自动检测NTSC/PAL输入,720P和1080P解码,其中ADC采样率高达72MHz,可实现最佳色彩和图像瞬态响应。 6 @# Q7 l9 k8 A6 x; L2 M( L
V+ e! M, x" w3 X. Q
8 p. F2 i n3 _" [6 V; e& X n 二、参考原理图 ! C8 J1 h, }3 K, |# ]$ J
VINA与VINB为不同时输入,默认采用VINA输入。内部有寄存器可控制通道切换。
8 U9 d# q, C" S: `3 u4 a0 C; M. A4 O! ]1 t- q
* V( C' x7 l% I6 b: o% h+ v( ]5 ~6 b- @% Y+ w- e
三、驱动移植 2 ~) X& b9 ] G! s! G, q, E$ y1 W# X
■ 将对应驱动放入如下路径:drivers/media/platform/sunxi-vfe/device/rn6752.c ■ 修改Makefile文件obj-y +=rn6752.o ■ 驱动编译 ■ 修改sys_config1024x600.fex中csi0对应csi0_dev0_mname,csi0_dev0_twi_addr等参数 ■ 编译内核并重新打包镜像,烧写 , K% s+ _. Q- I! P) r1 @
驱动移植时,需要注意: 0 [: C" L" [. U( r
1.摄像头所用引脚的复用需要去掉。
$ Q$ _) ]$ x5 u8 x. m& R3 j0 e2.CSI接口采用BT656,输入格式为YUV422,输出为NV21/NV12。
" K" f0 o4 Q% g! Y$ d9 k3.RN6752采用V4L2_MBUS_FMT_UYVY8_2X8格式。
/ S M, t! e* p, u7 N4.RN6752 采用的晶振为72MHz。
- {" `3 ?* H- E+ z4 P7 W" c8 e' q) ?. F
四、Linux和Android上显示效果
; _& I( F' k0 j: [1、Linux上 ( _5 ` j9 o8 B+ o
在Linux上可采用默认出厂的Cameratest进行测试。
5 n( q) Y" x$ Y3 @ 预览效果如下:
" c$ l, Q8 c! e- b
7 R1 }& i. A; A5 \. ~: J2 V( R. _ 0 n4 m8 ` P. g( A3 ?( x
3 g8 e" d8 Y% N( H
2、Android上
1 l3 B( E0 P( }2 e1 b# a 在Android上可采用 Multiple Camera 进行测试。
; a1 g: a$ O6 h9 C& v6 B S 预览效果如下: * X! t+ p* E ]: {& y
2 l! L! ]- e. L! p3 m
5 {5 g: U1 x5 s/ |3 n8 d2 l) ?: ~: c* H: f0 {* z* v
拓展阅读 7 X! P" E5 J! W
目前Android上行车记录仪APP只支持video4对应的模拟摄像头,其他3路未做支持。可采用Multiple Camera预览4路模拟摄像头图像。具体如图: ' W2 V7 C6 g4 C& ^, `, l3 N
因手头摄像头有限,测试采用2个摄像头:(默认支持NTSC格式的模拟摄像头) 8 U5 D* Q8 n) T- ]5 Y L
4 j7 p- _: t0 D
' q. M+ ~. n+ N' C
6 n$ Q* s6 G1 }9 ?* q5 R9 b
总结
" R) t0 u- P; f( e 最后总结一下FETA40i-C核心板支持HD摄像头方案: , u% o5 r4 z* r) N4 ~- @% ?
■ 目前调试了RN6752 的支持。其它解码芯片方案,可考虑项目定制。 6 [. [) E8 }. W5 I* D. h0 k' {) c
■ 目前只调试了720P@30fps 的支持。
/ `6 L7 X9 p9 p$ ]* k8 N■ Multiple Camera为简单测试DEMO,旨在验证摄像头通路可预览,不做其它支持。
- ]8 u" ]( g) @% J■ 其中RN6752驱动与配置,以及Multiple Camera测试程序,后续如果客户如有需要此方案可联系销售工程师。 6 A! d ?' C8 t" p. P( y
8 t/ q y8 V2 P: i+ H
1 {/ S7 f. B! E% I- |; f
2 o( \$ L% y8 c5 U0 E1 O* v6 @: H$ {, q- x
相关产品: , V$ s+ U+ [2 @3 u2 I
6 `% C8 z7 s& \8 z( e' U Z3 ^
3 Y: w! ?2 U0 }7 L |