优秀的毕业设计论文网
计算机 JAVA 电子信息 单片机 机械机电 模具 土木工程 建筑结构 论文
热门搜索词:网络 ASP.NET 汽车 电气 数控 PLC

基于RTSP协议的H.264码流媒体播放器的设计与实现

以下是资料介绍,如需要完整的请充值下载.
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
  
资料介绍:
摘??? 要 随着网络技术和多媒体技术的飞速发展,网络流媒体融合了计算机、多媒体、通信、电视和数字压缩等技术,以其快捷、直观等特点被广泛运用到各行各业。视频会议、视频点播、远程教育、无人监控等分布式多媒体应用正迅速走入人们的生活,使用者根据自己的需求主动获得多媒体信息,它们和传统信息发布的最大不同在于其主动性和选择性,这给人们的工作和生活带来了极大的便利和无穷的乐趣。 本文重点研究了一种基于RTSP协议的H.264码流媒体放器,播放器是基于C/S结构的,该系统在Microsoft Visual studio 2005平台下开发完成,使用C++语言作为开发语言。 关键词:流媒体;RTSP协议;H.264编码;C++语言。 3.1.1流媒体的概念 流媒体[2]就是应用流技术在网络上传输的多媒体文件。流是对在网络上传输特别编码的数字媒体内容,如音频、视频、动画片、图形、照片、文本到最终用户的一种描述。只要是用流服务器传输媒体,通过网络向用户计算机连续、实时传送数据包,用户能够立即、不中断播放,并且不需要固定的存储空间在最终用户的磁盘上,都可以说是流。一个以流方式传输的媒体文件数据包在开始装入后只需经过几秒或几十秒的启动延时就能利用计算机上的解压设备(硬件或软件)对压缩的媒体数据包解压、重组、排序后进行播放和观看。此时后台就会边收取多媒体数据包,边连续播放,用播放一系列连续的媒体片段(Clip)来代替等待一个完全的媒体文件下载后再播放。前一个片段播放后就从缓存空间丢弃,以腾出更多的空间用来接受组成下一个片段的数据。流技术主要应用在多媒体数据传输上。与单纯的下载方式相比,这种对多媒体文件边下载边播放的流式传输具有以下几点: 1、启动延时大幅度地缩短 流媒体文件的播放时采用边传输、边播放的方式。在用户端,当用户点击播放链接时,只需要经过一段较短的预置时间,文件就开始播放了,免除了用户长时间等待的痛苦。一般来说,一个5分钟的片段在半分钟以内就显示在客户端上,而且在播放过程中一般不会出现断断续续的情况。 2、节省了存储空间 由于Internet是以包传输为基础进行的,数据被分解为许多包进行传输,动态变化的网络使各个包可能选择不同的路由,故而到达用户端的时间延迟也就不同。因此,在客户端,需要划分出专门的缓存区来弥补延迟和抖动的影响,以此来保证数据包传输顺序的正确,使媒体数据能连续输出。虽然流式传输仍然需要缓存,但由于流式传输是边下载边播放,不需要把所有的内容都下载到缓存中,所以在很大程度上节省了存储空间。 3.1.2流媒体技术原理 在进行流式传输之前,我们首先要解决三个问题: 1、对多媒体数据进行预处理[3]。目前有限的网络带宽对多媒体巨大的数据量来说是远远不够的,而且有些多媒体文件也不一定不支持流式传输,所以在传输之前要对多媒体数据进行预处理。一是采用先进高效的压缩算法减少多媒体文件的大小;二是向文件加入流式信息。 2、流式传输需要缓存。虽然流式传输较之前的传统下载方式节省了很大的存储空间,但是延时和抖动的问题依然会影响多媒体传输的质量,所以在流媒体传输技术中仍然需要使用缓存技术来保证数据包的顺序正确。 3、流式传输的实现需要合适的传输协议。由于TCP是一种面向连接的可靠文件的传输协议,它的重发机制会破坏数据的连续性、实时性,高效的流要求数据准时到达。所以采用UDP取代TCP用于传输音视频。UDP是无连接协议,没有重发机制,会主动丢弃已经延迟和损坏的数据包。当这种情况发生时,媒体播放质量可能瞬间降低,但这种感觉微乎其微,且流仍然继续。在流式传输的实现的方案中,一般采用HTTP/TCP来传输控制信息,而用RTP/UDP来传输实时音/视频数据。RTSP作为应用层协议,体系结构位于RTP之上,它使用RTP完成数据的传输。 流式传输的过程如下图所示:用户选择选择某一流媒体服务后,Web浏览器与Web服务器之间使用HTTP/TCP交换控制信息,以便把需要传输的实时数据从原始信息中检索出来;然后客户机上的Web浏览器启动A/V player程序,使用HTTP从Web服务器检索相关参数对player程序初始化[4-5]。这些参数可能包括目录信息、A/V数据的编码类型或与A/V检索相关的服务器地址。A/V player程序及A/V服务器运行实时流控制协议(RTCP),以交换A/V传输所需的控制信息。A/V服务器使用RTP/UDP协议将A/V数据传输给A/V客户程序,一旦A/V数据抵达客户端,A/V客户程序即可播放输出。