admin 管理员组

文章数量: 1184232


2023年12月17日发(作者:opengl过时了吗)

201 0年第1 9卷第1 1期 计算机系统应用 基于ARM 11的视频实时传输系统① 李 岸 许雪梅 郭巧云 黄 帅 墨 芹 (中南大学物理学院湖南长沙41 0083) 摘要:本文介绍了一种H。264视频流实时传输系统的设计和实现方法。该系统包括服务器和客户端两大部分。 服务器端以三星公司最新ARM11芯片¥3C641 0作为主控制器,在嵌入式linxu环境下,利用V4L2 接口技术、最新的H.264视频编码技术、RTP/RTCP传输协议完成视频的实时采集、编码、传输。在 客户端完成了视频实时显示与存储的应用程序开发。经测试,该系统可达到25fps@720X480的画质 效果,传输视频清晰、稳定,具有很强的实用性和广阔的应用前景。 关键词:ARM11;视频监控;H.264;RTP Video Streaming Real—Time Transmission System Based on ARM11 LI An,XU Xue—Mei,GUO Qiao・Yun,HUANG Shuai,MO Qin (Institute ofPhysits,Central South University,Changsha 4 1 0083,Chma) Abstract: This paper presents a method of design and realization of H.264 video streaming real-time transmission system,which contains two parts--server and client.Using the Samsung S latest ARM 1 l chip¥3C64 1 0 as the main controller,Server adopts V4L2 interface technology,the latest H.264 video coding technology, and RTP/RTCP Real-time nansport Protocol to complete video capture,encoding,and transmission process in the embedded environment of linux.The application development of video real-time display and storage can be achieved in the client end.Experimental results show that the system can achieve 25fps@ 720×480 image quality,and the video is delivered clear and stable with strong practical and broad application prospects. Keywords: ARM1 l:video surveillance;H.246;RTP 1 引言 随着信息技术与网络技术的发展,人们对视频传 输的效果如实时性、清晰度等,传输设备的体积大小, 功耗节能等方面提出了更高的要求。因此开发出便携 本文采用三星公司最新的ARM 11芯片进行开发,利 用内部模块MFC完成H。264的编解码,在嵌入式 Linux环境下,完成视频的采集、传输、实时显示、 存储等功能。本嵌入式视频传输系统具有功耗低、画 质效果好,轻巧便携等优点,将在家庭安防、智能交 通监控、远程教育、森林防火监控、远程医疗等众多 领域产生巨大影响。 轻巧的高清视频传输设备迫在眉睫。自新一代视频编 码标准H.264/11颁布以来,因其优异的压缩性能、良 好的网络的亲和性、很强的抗误码能力,获得了广泛 的应用【2l。但以往的应用主要集中在PC平台上,依靠 软件方式完成H.264的编解码功能,从而在很多场所 受到限制。 2嵌入式视频服务器的硬件构架 基于ARM 11的视频采集与编码系统的硬件部分 ①基金项目:中南大学米塔尔创新创业项目(08MX02);中国博士后基金项目(20070420825) 收稿时间:201 0—03—1 6:收到修改稿时间:201 0—04—1 5 System Construction系统建设1 5 

计算机系统应用 主要由主控制板模块和摄像头模块组成,其中主控制 板选择以ARM11 76JZF—S为内核的¥3C641 0微处理 器作为控制器。¥3C641 O接口丰富,通过CameralF 接口连接摄像头,串口与PC机相连。系统整体框图 如图1所示。 图1 系统整体框图 嵌入式系统硬件部分主要包括:微处理器及存储 电路模块,电源、时钟和复位电路模块,外围接口电 路模块等。本系统由¥3C64 1 0处理器控制接收摄像 头的视频信号,利用¥3C641 0内部集成的多媒体编 解码器(MFC)进行基于H.264的压缩编码【3】,实现视 频数据的快速采集和高效压缩,以后将进行传输方面 的研究。本系统中NAND FLASH用于存储各种固化 程序,SDRAM用于系统运行时程序的存取,JTAG用 于程序的下载,串口用于系统打印信息的输出及程序 的调试。其中基于¥3C641 0微处理器的核心控制板 如图2所示。 图2嵌入式核心控制板 3视频采集、编码和驱动实现 嵌入式视频服务器的实现,需在硬件平台上移植 linux操作系统,建立好交叉开发环境,开发视频采 集驱动ov9650.ko,完成视频采集、编码和传输等应 1 6系统建设System Construction 201 0年第1 9卷第11期 用程序。 3.1嵌入式Linux下的视频采集 采用Linux下最新视频操作标准V4L2(Video For Linux Two)对Camera接口进行控制,并利用内 存映射方式见图5,获取视频数据。由于是把设备里 的内存映射到应用程序的地址空间,只是指向数据 buffer的指针被交换,数据本身不用被拷贝,因此可 以减少采集时间,提高视频数据的采集效率。视频采 集在打开设备,初始化采集图像的大小、颜色、帧率 等后,进行数据采集,具体如图3和图4所示: 图3视频采集流程 图4 内存映射方式获取视频数据示意图 

201 0年第1 9卷第11期 3.2 H.264视频编码 H.264视频的编码由¥3C641 0内多媒体编解码 模块MFC完成,MFC由内嵌的位流处理器和视频编 解码核心模块组成,支持MPEG4、H.263、H.264、 VC1等多种视频格式。在嵌入式服务器上,加载了 MFC驱动后,可以像操作普通文件一样调用MFC函 数对视频数据进行H.264编码,系统实现时主要用到 的函数有: (1)mfc—fd=open(MFC—DEV—NAME,O—RDWRIO—N DELAY);此函数的作用是打开MFC设备,如果打开 成功,则返回MFC设备号 (2)ioctl(mfc—fd。|OCTL—MFC—GET—.FRAM—.BUF..AD DR.&get—buf_addr); 此函数的作用是/获得到MFC输入缓 中区地址, 获得的地址是get—buf_addr结构体内的指针所指地 址。 in—buf=(char )get—bufl_addr.out—buf_addr; (3)ioctl(mfc—fd,IOCTL—MFC—GET—LINE—BUF—ADD R。&get—buf-addr); 此函数的作用是获得到MFC输出缓 中区地址,获 得的地址为get—buf_addr结构体内的指针所指地址。 out—buf=(char )get—buf-addr.out—bur—addr; (4)read(cam—fp,in—buf,(out_width out—height 3/2)): 此函数的作用是读取摄像头的YUV原始数据,并 将此数据作为MFC数据的输入,如果读取成功,则返 回读取的字节数。 (5)ioctl(mfc—fd,IOCTL—MFC—H264一ENC—EXE,&enc —exe); 此函数的作用是控制MFC对输入缓 中区数据进 行H.264编码,并将压缩后数据放入输出缓 中区。 4嵌入式编码器平台组网及视频传输的实现 嵌入式视频编码器可通过有线或无线的方式连入 互联网完成视频服务器的功能,实现视频的传输。 4.1实时传输模型 本系统采用ISMA2.0传输方式【4】,通过c/s架构, 在应用层采用RTSP[S]控制协议,传输SDP文件开启 会话,视频数据采用RTp[61封装后承载在UDP上,并 通过RTCP协议监测传输质量。开销相对较小,传输 效率较高。 计算机系统应用 (1)RTSP 见 钨: 频 (2)SDP 户 H匣 驾赭 务 (3)RTP(} 频流) 播 器 放 (4)RTCP 器 图5 ISMA方式的流传输基本过程 音/视数据 SDP RTP RTSP UDP TCP IP 以太网/无线网 图6 ISMA方式的传输协议栈 4.2分层结构及打包策略 H.264编码后的视频数据分为视频编码层(VCL: Video Coding Layer) ̄D网络提取层(NAL:Network Abstraction Layer)。VCL层负责高效的数字视频压 缩,而NAL层负责以网络要求的方式对数据进行封 装,使得VCL层中数据能够有效地在各种协议的网络 系统传输。同时对于TCP/IP四层网络协议,IP层位 于链路层之上,在传输层如UDP/TCP数据做为IP包 的负荷进行传输,RTP数据则作为UDP数据包的负荷。 打包策略:如果一个NAL单元大JjwJx于网络的 MTU,且与后一个NAL单元重组后大小超过MTU, 则将它用单一打包方案进行封装,即将此NAL单元作 为RTP包的有效载荷部分,加上RTP报文头部后封装 成一个RTP包;否则,将于后面的NAL单元重组, 直到重组后的NAL单元的大小最大且不超过MTU, 对重组后的NAL单元封装成RTP包;如果一个NAL单 元大小大干网络的MTU,对此NAL单元进行分割,然 后再对分割后的NAL单元进行单一打包方式进行封装。 4.3程序设计 下面给出实现该算法的实现: whi le(FrameEndFlag!=TRUE || H.264视频流未结束 { next~start—code:find—next—start—code(readbuf):// System Construction系统建设1 7 

计算机系统应用 201 0年第1 9卷第11期 寻找下一个NAL单元头地址 if(next—start—code>0) {length=next—start—code一4: if(1ength<fMaxSize) {//判断当前的NAL长 度是否小于lP最大传输单元MTU if(1ength+find—next—start—code(readbuf)一4< fMaxSize) //判断是否组包MTU {Length-I-=find—next—start—code(readbuf)一4: //长度取两NAL单元长度之和 STAP—A_packet—deliver();//对组合后的NAL 单元进行封包} else simple—packet—deliver();/ 哿此NAL 单元进行简单RTP封包; } else{//进行分包处理 FU—A—packet—deliver(); //将此NAL单元进行 分割封包 Length:fMaxSize; ) else//未发现下一个NAL单元头,H.264视频流结束; {FrameEndFlag=TRUE:) sess.SendPacket((void )sendbuf,length,99,true ,0): //A送封装好的RTP包 } 5系统测试及分析 在局域网内数台PC机上对系统进行测试,该系 统采用前面介绍的硬件开发平台,其主频为5 53MHz, 系统上运行专门定制的Linux系统,该系统内核版本为 2.6。2 1,交叉编译器为arm—linux—gcc4.1 客户端系 统为PC机上的XP系统或Linux系统,播放器为VLC。 原始图像 1 8系统建设System Construction 压缩后图像 图7视频对比截图 首先对图像编码质量进行测试,将摄像头 OV9650采集得到的未被压缩的原始的YUV图像,与 经过MFC模块H.264压缩编码后的图像(都转换为 YUV格式)进行PSNR值计算比较。设置编码率为 2.4Mbit/s,测试帧率为25f/s的VGA(720 480)视频 80s,对1 998帧图像进行Y—PSNR值计算,得到 PSNR的平均值为35.56。对比视频截图如图7所 示。绘出的Y~PSNR曲线如图8所示。由结果可以看 出:从整个视频图像来说,PSNR值变化稳定,视频图像 压缩整体质量较高i但具体到每一帧来看,相对而言, 当图像画面运动较为剧烈时,Y—PSNR值较低i反之, 画面较为稳定时,Y—PSNR值较高。 图8 PSNR曲线图 其次对网络传输质量进行了实验,在其它编码 参数相同和保证平均PSNR大于30(dB)的情况下, 对不同分辩率的视频(2 5f/s)的码率和丢包率各进行 30min的统计,并计算平均值得出实验数据如下表1: (下转第42页) 

计算机系统应用 201 0年第1 9卷第11期 的本体表达化,可以解决数据的结构异构和语义异 4刘文韬,陈智宏,许焱,李星毅.基于本体论的交通异构 数据集成系统计算机系统应用,2010,19(3):7一l1. 5朱承,曹泽文,张维明.知识库系统建模框架的发展与 现状.计算机工程,2002,(8):3—5. 6 Tokosumi A,Matsumoto N,Murai H.Medical Ontologies as a Knowledge Repository.Complex 构,方便数据间的传递和共享;②引入本体知识库构 建汉语自动分词系统,一定程度上提高词语切分的正 确率。 本系统还存在一些不足,例如基于电子商务领域 的概念和术语包含的数据量非常庞大,各术语问的关 系要完全的收集并加载到本体知识库中有一定难度: Medical Engineering,2007.EEE/ICME lnternational 本体知识库中的术语提取过程效率不高,影响了分词 Conference on 23-27 May 2007.487—490. 速度等,这些将在今后研究工作中加以改进。 7 Neri Mario Arrigoni,Colombetti Marco.Ontology— based Learning Objects Search and Courses 参考,:献 Generation.Applied Artiifcial Intelligence,2009 1 Gruber TR.Translation Approach to Portable Ontology 23(3):233~260. Speciifcations.Knowledge Acquisition,1 993,5(2): 8杨保明,刘晓东,姚兰,赵飞蓉.基于本体论的农业知 199~220. 识的OWL描述.微电子学与计算机,2007,(5):58— 2 Uschold M.et a1.The Enterprise Ontology.The 60.65. Knowledge Engineering Review,1 998. 9文坤梅.基于本体知识库推理的语义搜索研究[博士 3 Guarino N,Masolo C,Vetere G OntoSeek:Content- 学位论文1.武汉:华中科技大学,2007. based Access to the Wleb.IEEE Intelligent Systems. 10张春霞,郝天永.汉语自动分词的研究现状与困难. 1999,14(3):70—80. 系统仿真学报,2005,(i):138—144. (上接第1 8页) 表1 码率与丢包率测试表 错控制、差错恢复和安全传输方面做进一步改进。 分辩率 QCIF(1 76 1 44) CIF(352 288) D1(720 480) 参考 :j氏 平均码率 43.21 254.37 2256. (kbls) 1毕厚杰.新一代视频压缩编码标准一一H.264/AVC. 平均丢 0.O8 0.O7 1.14 北京:人民邮电出版社,2005. 包率 ) 2余兆明,查日勇.图像编码标准H.264技术.北京:人民 实验表明:随着分辩率的增大,平均码率相应增 邮电出版社,2006. 3 Rahul Vanam Eve A.Riskin H.264/MPEG-4 A ̄,C 加,将占用更多的带宽,导致丢包率有所上升,同时 Encoder Parameter Selection Algorithms for 在实验过程中发现,视频场景相对静止时,码率较小, Complexity Distortion Tradeoff.IEEE Data Compre。 场景快速变化时,码率明显上升,导致丢包率增加, ssion Conference,2009. 本系统在传输720 480的视频时,平均丢包率较小, 4卢官明,宗叻.IPTV技术及应用.北京:人民邮电出版 图像质量无明显下降。 社.2007. 5 Baugher M,McGrew D,Naslund M,Carrara E, 6 总结 Norrman K.The Secure Rea1.time Transport Protocol 本文采用新型处理器ARM11,设计并实现了一 (SRTP),RFC 37ll,2004. 个DVD画质的视频实时传输系统。本系统在完成视频 6 Schulzrinne H,Casner S,Frederick R,Jacobson V.RTP: 的采集、H.264压缩编码和网络传输等视频服务功能, A Transport Protocol for Real-Time Applications,IETF 更具有便携、低功耗等优点。本文作者将对系统在差 RFC 3550,2003. 42系统建设System Construction 


本文标签: 视频 系统 传输