基于PCI总线的MPEG-1压缩卡软硬件设计及实现
随着计算机技术、多媒体和数据通信技术的高速发展,人们生活水平的提高,对计算机视频的需求和应用越来越多,如视频监控、视频会议、计算机视觉等。计算机视频提供给人的信息很多,但是视频的数据量很大,不利于传输和存储,使其应用受到不少限制。为解决视频数据的存储和传输,唯一途径就是对视频数据进行压缩。
目前常见的视频压缩方法有MPEG-1、MPEG-2、MPEG-4、H.261、H.263等。考虑压缩技术的成熟度和该压缩卡的主要用途,本文采用MPEG-1作为压缩标准,研制了基于PCI总线的MPEG-I压缩卡。该卡适用于视频监控、视频会议等多种应用场合。该卡加上一台主机、摄像头和软件可构成一个完整的视频采集压缩系统。

1 系统特点
(1)支持BNC、RCA、S-VIDEO视频接口;
(2)支持PAL和NTSC制式;
(3)可对视频实时预览,最大分辨率可达720×576×32;
(4)可对声音进行同步监听;
(5)可对音、视频信号进行MPEG-I压缩,生成MPEG文件和VCD文件;
(6)用户可编程MPEG-1编码设置,可支持CBR和VBR;
(7)可一机多卡同时工作;
(8)可从动态影像中捕获单帧,生成JPG和BMP文件;
(9)支持Win98/Win2000。
2 系统硬件设计
2.1 系统组成
该系统主要由视频解码、音频解码、压缩核心和PCI接口等组成,其总体框图如图1所示。
2.2 视频解码设计
视频解码部分主要完成模拟视频到数字视频的处理,以供后面预览、压缩用。视频解码芯片常用的有SAA7110、SAA7113和SAA7114等。本方案中采用Philips公司的SAA7114。SAA7114有六路模拟输入,内置模拟源选择器可构成6×CVBS、2×Y/C2×CVBS、1×Y/C和4 ×CVBS;两路模拟预处理通道,内有抗混迭滤波器;CVBS或Y/C通道含完全可编程静态增益控制或自动增益控制功能,对CVBS、Y/C通道可进行自动钳位控制;能自动检测50Hz/60Hz场频,并可自动在PAL和NTSC制式进行切换;能将PAL、NTSC和SECAM信号解码及模数变换得到符合ITU-601/ITU-656的数字电视信号。该芯片是目前视频解码芯片中接收视频源的宽容性及视频解码图像质量最好的一种。其通过I2C接口,进行初始化设置。
本系统采用Image Port作为数字视频输出端口,数字视频格式采用ITU-656AI11(PIN 20)作为BNC/RCA输入脚,AI12、AI22作为S-VIDEO输入脚。
图2 SAA7146A方框图
2.3 音频解码设计
音频解码的数据一部分提供给SAA7146A作声音监听用,另一部分用于压缩。考虑到成本,本系统采用BURR-BROWN公司的PCM1800E。该芯片是双声道单片ΔΣ型20 位ADC单+5V电源供电,信噪比为95dB(典型值),动态范围95dB(典型值),内嵌高通滤波器,支持四种接口方式和四种数据格式。其采样频率为32kHz、44.1kHz和48kHz可选。
本系统采用从模式,20位I2S数据格式。主时钟由SAA7114提供。
2.4 MPEG-1压缩部分设计
本系统中MPEG-I压缩芯片选用ZAPEX公司的SZ1510。该芯片基于TI的TMS320C54x DSP内核,能对ITU-601/ITU-656数字电视信号和PCM音频流进行MPEG-1实时压缩,可生成多种流,如音频基本流、视频基本流、音视频复合流等。
该芯片外接27MHz晶振,可支持多种主机接口,可工作在复用或非复用、Intel或Motorola类型总线。通过输入管脚HCONFIG1:0和SysConfig寄存器可设置成六种总线接口类型:Intel 8051类型的数据/地址复用的8位总线、Motorola类型的数据/地址复用的8位总线、Intel 8051类型的非复用的8位数据总线、Motorola类型的非复用的8位数据总线、Intel 8051类型的非复用的16位数据总线和Motorola类型的非复用的16位数据总线。支持I2S声音接口。
本系统中采用Intel 8051类型的非复用的16位数据总线。
评论