基于Linux系统H.264标准实时视频压缩及传输系统设计.docVIP

基于Linux系统H.264标准实时视频压缩及传输系统设计.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Linux系统H.264标准实时视频压缩及传输系统设计

基于Linux系统H.264标准实时视频压缩及传输系统设计   摘 要: 随着计算机网络媒体的迅猛发展,研究时视频压缩及传输技术具有十分重要的意义。首先建立基于Ubuntu Linux操作系统的H.264实时视频压缩及传输系统,并详细介绍该系统相关软、硬件实现方法和系统结构的设计思想。然后通过实时视频的采集和编码模块设计系统,并采用系统的实现代码具体实现系统的各个模块。结果表明,使用该设计系统进行传输,可以获得较好的图像质量以及较低传输的延时,能满足实时性应用的需求。   关键词: H.264; 视频压缩; 传输系统; Ubuntu Linux   中图分类号: TN919?34; TP391.4 文献标识码: A 文章编号: 1004?373X(2015)22?0078?02   近年来,视频压缩技术和网络传输技术发展迅速,实时视频通信技术已渐渐进入人们的生活。H.264视频压缩标准的日趋成熟,RTP 协议的出现进一步推动了视频通信的发展,视频压缩技术和视频通信技术一直是人们所关心的重要问题,对原始的视频数合理有效的压缩和网络传输中的拥塞控制始终是研究的热点[1]。笔者通过对大量文献资料的学习[2],对H.264视频压缩标准,实时传输协议RTP/RTCP等相关知识梳理和研究,建立了一种基于Ubuntu Linux系统的H.264实时视频压缩及传输系统。   1 系统的的软硬件环境及整体结构   1.1 系统的软、硬件环境   整个系统的设计目标是完成通过经路由器建立的局域网,在两台加入相同多播组的计算机间,进行实时视频的压缩及传输。在编解码模块使用的是基于开放源代码的RTP库――libccrtp设计的一种软件。硬件方面,需要现在广泛使用的PC机及一般的USB接口数码摄像头一个,网络连接方案如前所述,通过经路由器建立的局域网。   选用的操作系统是Ubuntu 10.10。视频的获取通过Video4Linux2(简称V4L2),是Linux中关于视频设备的内核驱动。视频编解码部分使用的是VLC或Mplayer及Mencoder,VLC多媒体播放器(最初命名为VideoLAN客户端)是VideoLAN计划的多媒体播放器。视频的传输部分使用的是开放源代码的RTP库――libccrtp,以及基于libccrtp而编写的实时流媒体传输软件。   1.2 系统的整体结构   系统采用了客户机/服务器设计模式,服务器端(发送端)采集发送视频,客户端(接收端)接收回放视频,系统可分为5个功能模块:视频采集模块、视频编码模块、包处理模块、网络传输模块和视频解码模块,总体结构如图1所示。   2 系统各个模块的具体实现   2.1 系统实时视频采集及编码模块的设计   2.1.1 编码器的选择   与其他视频压缩技术相比,H.264的压缩码率能降低一半以下,但这种高效率的压缩性能是以运算复杂度为代价的,对机器的处理能力有很高要求[3]。因此需要根据实际需要选择一个好的H.264编码器,目前H.264的开源编码器主要有三个:JM,X264,T264。通过比较:T264(fast mode)、T264(high quality mode)的编码性能和X264性能相比有一定劣势; X264的编码速度也相当快,完全可以达到实用的要求。本设计选用X264编码器。   2.1.2 基于VLC的实时视频采集及编码   VLC是一款功能强大的视频编码及播放软件,使用它对视频流编码的一般格式如下:   vlc input_stream ??sout   #module1{option1=parameter1{parameter?option1},option2=parameter2}:module2{option1=...,option2=...}:...   其中module表示各个模块,本系统所使用的两个模块为transcode(编码)模块和std(标准)模块,将在下文中进行介绍。   在Ubuntu系统下安装了VLC并连接了摄像头后在终端中运行以下命令即可完成实时视频的获取及压缩编码:   vlc ?vvv v4l2:// :v4l2?vdev=/dev/video0 :v4l2?adev=/dev/dsp :v4l2?norm=3 :v4l2?frequency=?1 ??run?time 600 ??sout   ′#transcode{vcodec=h264,vb=300,scale=1,acodec=mpga,ab=128,channels=2}:std{access=file,mux=ts,dst=pipe}′   2.1.3 基于mencoder的实时视频采集及编码   整体代码如下,功能依然

文档评论(0)

317960162 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档