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

基于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
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值