一、典型的视频方案(以TI的DM368为例)。如图1。
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIyVGduV2QvwVe0lmdhJ3ZvwFM38CXlZHbvN3cpR2Lc1TPB10QGtWUCpEMJ9CXsxWam9CXwADNvwVZ6l2c052bm9CXUJDT1wkNhVzLcRnbvZ2Lc1zaYplcKhFZwEzVhZXUYpVd1kmYr50MZV3YyI2cKJDT29GRjBjUIF2LcRHelR3LcJzLctmch1mclRXY39DM1ITOwQTNxITOxIDM0EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
这个方案可以同时接入数字摄像头和模拟摄像头。数字摄像头和模拟摄像头的区别我们前面的文章已经讲过了。下面我们来分两个部分来阐述这个方案。
二、视频外设
1) 数字摄像头
图中的红线标出了数字摄像头的数据流向。
数字摄像头输出的是YUV格式的数据。我们以OV7726为例,查看OV7726的datasheet,我们可以看到OV7726可以输出YUV422的数据,输出的图像分辨率可以为VGA,QVGA,并支持scaling down。OV7726输出YUV数据后可以直接交给DM368处理。
2) 模拟摄像头
模拟摄像头输出的S-Video/Composite模拟视频信号。tvp5150的作用是将模拟视频信号转化成YUV422的视频信号。查看tvp5150的datasheet,可以查到tvp5150有两个输入输入口,支持输入两个Composite的两个模拟视频信号输入,或者1个Composite + 1 个S-Video的模拟视频输入,然后输出BT.656的YUV数据。tvp5150还支持BT.601, BT.1120格式的数据输出。
tvp5150输出YUV数据可以直接交给DM368处理。
二、DM368的VPSS
YUV的视频数据流进DM368后主要由VPSS负责。DM368的视频子处理系统由两个部分组成:VPFE+VPBE。VPFE用于捕获视频,VPBE用于处理视频显示。
1) VPFE
VPFE的内部结构如下:
VPFE由H3A,ISIF,IPIPE, IPIPEIF组成。
ISIF负责从CCD或者CMOS传感器接收raw data,它有对应的CCD控制器。图1 DM368就是直接和CMOS镜头OV7726直接连接。也可以直接接受各种格式的YUV数据。这些YUV数据一般都来自视频解码器。图1 tvp5150的数据就是直接进入ISIF。
IPIPE里有一个resizer,可以对视频进行resize. IPIPE可以将CCD或者CMOS的数据转换成YUV422或者YUV420后再将数据存放到DDR中。
IPIPEIF从ISIF和SDRAM接收数据,经过一些特定的处理后再把数据回送到ISIF和IPIPE,是ISIF和IPIPE连接的桥梁。IPIPEIF也可以从并口接收数据。
2) VPBE
VPBE的内部结构如下:
VPBE由OSD和VENC两大模块组成。
OSD模块用来管理各种显示数据并将许多显示窗口融合成一个窗口,然后将融合后的数据传递给VENC模块。OSD的数据来自于DDR,它支持2个视频窗口和2个osd位图窗口,并且这些窗口能同时显示。视频窗口支持YUV422,YUV420格式的数据,支持2x,4x的放大。
OSD将来自DDR的数据转换成YUV各式,然后按照显示优先级和透明规则将各个窗口的数据混合在一起,然后才送给VENC显示。
各个显示window的优先级如下:cursor_window> OSD0 > OSD1 > VIDEO0 > VIDOE1
高清显示只能使用VIDEO0窗口。
VENC模块则接收OSD的数据,然后将其转换成需要的格式。VENC又包含如下三个模块:
1.模拟视频编码器,可以进行DA转换,并支持NTSC/PAL接口,输出模拟视频信号。
2.LCD控制器,产生YUV数据,支持各种HMDI/DVI/HD视频接口。
3.时序发生器。