- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Linux下视频流多播速率控制方法的设计与实现 摘要:针对目前流媒体中视频数据发送速度难以控制的问题,以当前广泛使用的MPEG2视频解码模型为例,设计并实现了一种Linux下视频流多播速率控制方法。这种方法能够有效的控制服务器视频数据的发送速率,具有占用服务器资源少,适应各种网络要求的优点。经Linux平台验证结果表明,传送视频数据的网络速度平稳,未出现视频数据溢出现象,可以得到良好的视频效果,具有很好的实用价值。 关键词:视频流;多播;速率控制;解码器 中图分类号:TP37文献标识码:A文章编号:1009-3044(2008)08-10ppp-0c 1 引言 随着网络、通信等技术的发展,流媒体技术在很多领域都得到了广泛的应用,例如VOD、电视会议、远程教育等,而流媒体技术的关键技术之一就是流媒体的网络传输技术。一般来说,网络传输方式包括单播、多播和广播。与网络单播和广播技术相比,组播是一种优化使用带宽的路由技术,允许数据流从一个源或多个源发送到多个目的地。采用组播技术后,应用仅发送每个数据包的一个拷贝给一组要接受信息的计算机,因而组播有助于控制网络的流量,减少主机的处理量[1]。正是因为组播具有单播、广播所不具有的优点,而流媒体又有流量大、实时性强的特点,所以组播技术在流媒体技术中得到了广泛的应用。 从当今市场上来看,主流的流媒体技术产品有三种,分别是Microsoft的Windows Media Techology系统、Real Networks公司的Real System系统以及Apple的Quicktime系统[2]。尽管它们有些产品也具备了组播的功能,但是它们有一个缺点就是必须满足它们自己的视频压缩格式,才能进行流媒体传送。而本文的目的是只需有视频的解码器,就可以开发出适合自身需要的流媒体系统,这样就可以满足不同视频压缩格式文件网络传输的需要。 如果视频发送速率没有得到有效的控制,当发送速率高于正常发送速率时,将会出现如图1所示的情况,出现许多的马赛克;当发送速率低于正常发送速率时,解码器将会因为不能及时的解码器而出现画面暂停的现象。目前,视频组播速率控制研究主要基于三种速率控制手段,即基于发送端的速率控制、基于接收端的速率控制和混合性速率控制的方法。发送端的速率控制方法主要基于反馈信息进行速率调节,可以适用于单播的方式或组播的方式。在基于接受端的速率控制中,发送方不参与速率控制,而由接受方通过增加和减少通道的数量来进行速率的调整。通常,这种方法用于采用可扩展编码的组播的情况,组播的视频流分为多层,每个层对应组播树的一个通道。混合性速率控制的方法,兼有二者的特点,即接受方增加减少通道,而发送方同时根据反馈调整各个通道的速率[3]。 本文设计并实现了一种Linux下视频流多播速率控制方法。这种方法属于发送端的速率控制方法,基于实时解码情况,得到反馈信息,从而实现视频组播发送速率控制。这种方法以视频解码模型为基础,以MPEG2为例,测试环境为局域网。在此基础上,采用类比的方法,MPEG2压缩格式可以推广到MPEG4、H.263和H.264等视频压缩格式;同理,局域网环境也可以推广到校园网、企业网等网络环境。 图1 原图与发送速率高于正常发送速率的视频对比图 2 发送速率控制方法 如图2所示,为一个局域网环境的连接图。本方法由发送端来进行数据发送速率的控制,由服务器来完成。客户端可以用视频组播接收软件如VLC、mplayer接收并播放,也可以自己编写一个解码器来进行网络接收和视频的播放。这种方法包含两部分内容,分别是负责网络组播的视频组播发送程序,另一部分是负责网络组播接收、视频解码、发送速率控制以及发送握手信息等功能。视频组播发送程序运行服务器上,但用于速率控制的解码程序可以放在局域网环境的任意一台服务器或者PC上。 图2 局域网连接示意图 下面介绍一下这两部分程序的工作原理及如何进行协同工作。整个方法的执行过程为: (1)视频组播发送程序首先读取需要发送的一组视频文件数据; (2)视频组播发送程序然后将这部分视频数据组播至解码程序; (3)解码程序在接收到视频组播发送程序发送过来的组播数据之后进行解码; (4)解码程序解码完之后,如果: ①未解完一帧数据,则继续,跳至5)继续执行; ②解完一帧数据,判断是否继续执行,判断的依据为: (当前时间 - 上次显示的时间) = (1000000/帧率)… (依据1) 当满足依据1的时候,则跳至(5)继续执行,否则: while((当前时间 - 上次显示的时间) 1000000/帧率)
有哪些信誉好的足球投注网站
文档评论(0)