无线视频传输系统的设计

时间:2022-09-19 03:06:54

无线视频传输系统的设计

摘 要:给出了一种无线视频传输系统的设计方法。发送部分的设计是基于TI开放式多媒体应用平台(OMAP),接收部分由普通PC控制。将采集到的图像数据按MPEG[CD*2]4或MJPEG标准进行编码,得到的码流通过蓝牙进行传输。对于MPEG[CD*2]4码流,帧率可以达到30 f/s,传输距离可以达到100 m。对于MJPEG码流,可以得到高质量的图片。当接收部分只接收数据而不进行解码时,80 m内的稳定的传输速率可达到11 Mb/s。

关键词:蓝牙;无线传输;MPEG-4;MJPEG

中图分类号:TN9198 文献标识码:B

文章编号:1004373X(2008)0101803オ

Design of Wireless Video Transmission System

WANG Yingli,ZHUANG Yiqi,TANG Hualian,LI Cong

(School of Microelectronics,Xidian University,Xi′an,710071,China)

Abstract:This paper presents the design of a wireless video transmission system.The transmitting part is designed on the basis of TI′s Open Multimedia Application Platform(OMAP).The receiving part is controlled by common PC.The video data we collected is encoded by the MPEG[CD*2]4 or MJPEG standard,and the encoded bitstream is transferred by Bluetooth.For the MPEG[CD*2]4 bitstream,the frame rate can reach 30 f/s and the transmission distance can reach 100 meters.For the MJPEG bitstream,the picture with high quality is received.When the receiving part receives data only and doesn′t decode the data,the stable transmission speed can reach 1.1Mb/s in 80 meters.

Keywords:bluetooth;wireless transmission;MPEG[CD*2]4;MJPEG

1 引 言

随着无线通信技术和视频压缩技术的迅速发展,使得无线视频传输成为人们研究的热点。目前的短距离无线通讯技术有蓝牙、红外、IEEE 802.11无线局域网技术、HomeRF家用无线局域网技术、Zigbee技术和UWB技术等。与其他技术相比,蓝牙具有成本低、功耗低、体积小和应用范围广泛等特点[1],但其带宽有限,而视频信息的数据量十分惊人,要实现无线视频传输,必须对视频信息进行压缩编码。现有的视频压缩标准如MPEG[CD*2]4,H.263和H.264等都可以满足无线实时视频传输系统的要求。

基于以上考虑,本文设计了一个无线视频传输系统,说明了该系统的硬件架构和软件设计,并进行了实验测试和数据分析。

2 硬件架构

系统硬件的实现方案为:发送端由摄像机,专用视频编码芯片、OMAP5910和蓝牙模块CLASS1(BC04)等部分组成。该蓝牙模块,发射功率约为100 mW(20 dBm),支持蓝牙2.0+EDR协议,最高传输速率为3 Mb/s,传输距离可达100 m,天线是普通的微带天线。

视频编码部分使用专用视频编码芯片。该芯片通过USB口供电和传输数据,输出的视频码流可以是MPEG[CD*2]1,MPEG[CD*2]2,MPEG[CD*2]4,MJPG或者H.263格式,输出图像的分辨率范围为64×64~720×576,而且可以根据具体需要修改相应寄存器和编码参数的设置。

对于TI OMAP5910 SoC,其主要作用是运行嵌入式Linux操作系统,配置专用视频编码芯片上的控制寄存器,初始化蓝牙模块,运行和蓝牙协议栈相关的应用程序。该SoC有32 MB的SDRAM以及4 MB的FLASH。SDRAM用来运行操作系统,应用程序以及文件系统,FLASH用来存储内核镜像文件和文件系统。OMAP5910 SoC中的ARM925MPU可满足控制和接口方面的处理需要[2]。

接收端由蓝牙模块CLASS1(BC04),PC主机和显示器组成,系统构架如图1所示。

工作过程为摄像机将外界图像转换为视频信号,将视频信号传递给专用视频编码芯片得到标准的MPEG[CD*2]4,MJPEG等格式的码流,然后再将编码后的码流存储到OMAP5910的SDRAM中,最后通过蓝牙模块CLASS1(BC04)发送出去。接收过程为发送的逆过程,通过蓝牙模块CLASS1(BC04)接收到码流数据,PC主机部分再进行存储、解码等处理,最终将解码后的图像送到显示器进行显示。

3 软件设计

3.1 蓝牙协议的软件实现

和许多通信系统一样,蓝牙的通信协议也采用层次式结构。蓝牙协议可以分为4层[3],即核心协议层、电缆替代协议层、电话控制协议层和可选协议层。蓝牙的核心协议包括基带协议(Baseband)、链路管理协议(LMP)、逻辑链路控制与适应协议(L2CAP)以及业务搜寻协议(SDP)四部分;电缆替代协议层包括基于TS 07.10的RFCOMM协议;电话控制协议层包括TCS二进制、AT命令集;可选协议根据不同的应用可以包括很多,例如PPP,UDP/TCP/IP,OBEX,WAP,vCard,vCal,IrMC以及WAE等。

除上述协议层外,规范还定义了主机控制器接口HCI(HostControl Interface),他为基带控制器、链路管理器、硬件状态和控制寄存器提供命令接口。以HCI作为分界线,将蓝牙协议分为底层和应用层。通过HCI来实现底层和应用层的连接。

蓝牙通信的具体实现方案有多种,既可以全部由硬件芯片来实现,也可以采用硬件和软件结合的方法。本系统采用硬件和软件相结合的方法,其中基带和链路管理由蓝牙模块CLASS1(BC04)实现,并通过HCI交互;L2CAP和SDP等采用软件实现。蓝牙软件协议栈在系统中的实现如图2所示。蓝牙视频码流的发送是当发送端和接收端建立ACL链接后,通过SPP(Serial Port Profile)层应用框架进行传输。

3.2 发送端的软件设计

发送端的软件包括嵌入式Linux操作系统,蓝牙软件和其他应用程序。根据发送端的硬件架构和数据流动方向设计的软件流程图如图3所示。发送端首先将FLASH中的内核镜像文件解压到SDRAM中,并运行操作系统,然后初始化蓝牙模块和配置专用编码芯片,当和接收端建立好ACL链路后,发送端分为两个进程,一个用于采集数据和编码,另一个用于码流的转存和发送,整个系统开始工作。应用程序主要是配置专用视频编码芯片来实现不同的视频编码模式,参数的设置必须和蓝牙的传输速率匹配,图像传输的实时性才能得到保证。

3.3 接收端的软件设计

接收端的软件包括MPEG[CD*2]4解码程序,MJPEG(运动的JPEG图像,即一张张的JPEG图像的连续播放)解码程序和蓝牙协议栈等相关程序。接收端的简易流程图如图4所示。接收端首先初始化蓝牙模块,根据发送端蓝牙模块的地址与发送端建立ACL链路,然后向发送端发送消息,接收码流数据,并解码和显示,整个通信系统建立起来。

通过多线程技术实现了蓝牙接收数据和视频解码的同步运行,主程序包括蓝牙接收数据线程和解码(包括视频显示)线程。由于在Linux系统中一个进程中的线程之间可以共享一些全局变量,这样通过设计全局的缓存就可以实现解码线程和蓝牙数据接收线程之间数据的交换。由于解码器的速度大于蓝牙接收数据的速度,可以在解码函数中增加一些必要的等待语句(主要是等待码流数据),来实现两个线程之间的同步。接收端的线程如图5所示,在创建解码线程前,先进行视频模式的选择,根据不同的视频模式,创建解码线程时调用不同的解码函数。

4 实验结果和分析

系统传输速率的测试,当发送端不停地发送数据,而接收端只进行数据的接收、速率统计,而不进行解码时,特定位置上的传输速率如表1所示,整个测试过程是在空旷地进行的,取多次数据的平均值,通信距离可以达到110 m,增大蓝牙模块的发射功率和天线的增益可以进一步提高蓝牙的传输距离。

通过表1可以看到,80 m范围内传输速率都比较稳定,在11 Mb/s左右。随着距离的增加,传输速率在80 m后下降比较快。在距离100 m时传输速率也能达到803 kb/s。但是蓝牙模块CLASS1(BC04)理论上能达到3 Mb/s的传输速率,实际上在80 m内的最高传输速率为12 Mb/s左右。在传输速率方面,研究发现蓝牙传输的每一包的数据量的大小对速率影响比较大。当每一包的数据量的大小为1 510×8 b时传输速率不到1 Mb/s。当每一包的数据量的大小为3 040×8 b时,传输速率最高可以达到12 Mb/s左右。

最终通过配置专用视频编码芯片实现了三种模式的实时视频传输:模式1:采用MPEG[CD*2]4编码,图像分辨率为352×288,传输的速率为512 kb/s,帧率为30 f/s;模式2:采用MPEG[CD*2]4编码,图像分辨率为496×384,传输的速率为768 kb/s,帧率为30 f/s;模式3:采用MJPEG编码,图像分辨率为640×480,帧率为2 f/s,此种模式的传输速率主要受信道影响,不用配置。在发送端与接收端距离为20 m时进行测试,主观图像质量非常好,三种视频模式下的实验结果如表2所示。

对于模式1和模式2,延迟时间都在100 ms以内,基本上满足实时性的要求。模式3的传输数据量比较大,图像质量比较高,但帧率比较低,延迟较大。

当发送端与接收端距离为100 m时,进行测试,得到的实验数据如表3所示。此时模式1和模式2图像质量也比较好,实时性也很好。但模式3丢包严重,图像质量比较差,与其传输的数据量太大有关。

关于图像质量方面,由于无线信道是一种时变信道,存在多径衰落,位差错率很高;压缩后的视频流是可变速率的,在网络拥塞或数据突发时,丢包严重;当前广泛应用

的低码率视频应用中的视频压缩标准,如H.263/H.26L/H.264、MPEG[CD*2]2/4等,使用预测编码和可变长度编码去减少帧间的时间和统计冗余,这些措施可增大压缩率,但会造成视频信号受传输错误的影响[4]。

对于模式1和模式2,码流格式为MPEG[CD*2]4,由I帧(intra[CD*2]frame)和P帧(inter[CD*2]frame)构成。I帧是独立编码的,没有采用任何参考帧,可独立解码,每隔一定时间出现一次;P帧是当前帧和前面的P帧或I帧的差值编码构成的。如果编码时全是I帧,很少会出现图像花的情况,但由于I帧的数据量比P帧的数据量大,传输的帧率不会太高,但P帧数量如果太多,尽管帧率可以提高,但P帧使用预测编码,一旦出现丢包现象,图像质量会严重变坏,直到I帧才可以恢复。经过测试两个I帧之间有5个P帧可以得到最佳的图像质量和很高的帧率。对于模式3,码流格式为MJPEG格式,可以认为每一帧都为I帧,传输的数据量较大,但图像质量比较高。

5 结 语

本文对无线视频传输系统的硬件架构和软件设计都进行了详细地说明,实现了三种视频模式,前两种模式使用MPEG[CD*2]4编码,延迟只有100 ms,实时性达到了要求,传输距离可以达到100 m,帧率能达到30 f/s。模式3使用MJPEG编码,图像质量比较高,帧率可以进一步提高。本文还探讨了影响图像质量和传输速率等因素,当接收端不进行解码时的最高传输速率为12 Mb/s。本系统成本低、图像质量高,可以应用到视频监控,多媒体娱乐等许多领域。

参 考 文 献

[1]马建仓,罗亚军,赵玉亭.蓝牙核心技术及应用[M].北京:科学技术出版社,2003.

[2]OMAP1510 Multimedia Process Technical Reference Manual[EB/OL].2002.

[3]Bluetooth Special Interest Group.Bluetooth Specification Version 2.0+EDR[S].November,2004.

[4]陈敏.网络实时视频传输研究[D].广州:华南理工大学,2004.

[5]刘嘉,庄奕琪,汤华莲.蓝牙视频传输系统设计[J].现代电子技术,2006,29(17):18-20.

[6]鲍立,庄奕琪.基于蓝牙的MPEG[CD*2]4无线视频传输研究[J].电子科技,2003(23):36-38,40.

[7][美]Jerry D G.多媒体数字压缩原理和标准[M].李煜晖,朱山风,段上为,等译.北京:电子工业出版社,2000.

[8]沈兰荪,田栋.无线视频传输技术的发展[J].电子技术应用,2001,27(1):6[CD*2]9.

[9]李建,别红霞.H.263无线视频传输的关键技术改进[J].计算机工程与应用,2006,42(3):152-154,160.

注:“本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。”

上一篇:浅谈人口计生信息网网络组建与网络安全 下一篇:新时期电信智能网业务的应用思考