




已阅读5页,还剩47页未读, 继续免费阅读
(计算机应用技术专业论文)应用层组播系统中流媒体关键技术研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 随着互联网上并发用户对流媒体应用需求的不断增加,流媒体技术和应用层 组播技术的紧密结合,解决了大规模一对多通信问题,成为当前互联网上一个重 要的研究方向。本文基于“中国下一代互联网大规模路由和组播技术的研究与试 验”项目,对应用层组播流媒体系统中的核心流媒体处理技术进行了研究与 实现。 流媒体的处理因其重要性和复杂性成为该领域研究的焦点,本文通过对流媒 体技术、应用层组播技术的深入研究,提出了一个应用层组播系统中流媒体处理 过程的设计方案,并对其合理性、高效性等进行分析论证,在此基础上实现了一 个采用面向对象技术、基于i p v 4 i p v 6 网络环境的流媒体数据处理系统。 本文详细论述了流媒体数据处理系统的设计与研发过程,包括采集编码、数 据封装缓存管理、网络传输、转发以及本地回放等关键环节,采用多线程同步 机制与调度策略实现了各环节间相互协作,对各环节中涉及到的技术难点如接口 设计、网络传输控制、缓存填充及替换策略、数据包的调度、读写速度控制等进 行深入的研究,并提出解决方案。由于网络的动态变化,给流媒体处理也带来不 可预测的问题,本文采用异常安全与异常中立机制增强了系统的健壮性,并解决 了视频直播系统中遇到的判断节点离开的问题,减少了节点重连时缓冲时间,优 化了系统性能。 该系统已在中国教育科研网c e r n e t 及中国下一代互联网c n g i c e r n e t 2 上实 际运行,经过测试,结果表明系统中有关流媒体处理所采用的技术及实现方案是 合理的、有效的,同时系统具有可扩展、低成本、易于实现、通用等特点,有较 高的应用价值。 关键词应用层组播;流媒体;a s f ;缓存;异常机制 a b s t r a c t a b s t r a c t a st h en e e df o rm e d i aa p p l i c a t i o no f t h ec o n c u r r e n tu s 豇 si n c r e a s e sg r a d u a l l y , t h e c o m b i n a t i o no ft h es t r e a m i n gm e d i at e c h n o l o g ya n da l ms o l v e st h ep r o b l e mo ft h e o n e - t o - m a n yc o m m u n i c a t i o n , a n dh a sb e c o m ea ni m p o r t 卸tr e s e a r c hd i r e c t i o no nt h e c u r r e n ti n t e r n e t t h i st h e s i sm a k e sr e s e a r c ha n di m p l e m e n t a t i o no nt h ek e y t e c h n o l o g yi nt h ea l m v i d e ol i v i n gs y s t e m - - - s t r e a m i n gm e d i ap r o c e s s i n gw h i c hi s b a s e do nt h ep r o j e c to f c n g l ( c h i n an e x tg e n e r a t i o ni n t e r n e t ) t h es t r e a m i n gm e d i ap r o c e s s i n gh a sb e c o m et h ef o c u sr e s e a r c hb e c a u s eo fi t s i m p o r t a n c ea n dc o m p l e x i t y t h r o u g ht h ea n a l y s i so fk e yt e c h n o l o g yi n t h es t r e a m m e d i ap r o c e s s i n g , ad e s i g ns c h e m ew h i c hi sf o rs t r e a m i n gm e d i ap r o c e s s i n gi na l m s y s t e mi sp r e s e n t e d , a n di t sr a t i o n a l i t ya n de f f i c i e n c yi sd e m o n s t r a t e d o nt h eb a s eo f t h a t ,t h es t r e a m i n gm e d i ap r o c e s s i n gs y s t e mc o n s t r u c t e do nt h ei p v 4 i p v 6n e t w o r k w i t ht h eo b j e c to r i e n t e dt e c h n o l o g yi si m p l e m e n t e di nt h i st h e s i s t h et h e s i sd i s c u s s e st h ed e s i g na n dd e v e l o p m e n tp r o c e s so ft h es y s t e mi nd e t a i l , i n c l u d i n gc o l l e c t i n g e n c o d e r , d a t ae n c a p s u l a t i o n c a c h em a n a g e m e n t ,n e t w o r k t r a n s m i t t i n g ,n e t w o r kt r a n s f e r r i n ga n dp l a y i n g w i t ht h es y n c h r o n i z a t i o nm e c h a n i s m a n ds c h e d u l i n gt a c t i c s ,t h i st h e s i sm a k e sa l lt h ep h a s e sc o o p e r a t ew i t he a c ho t h e r a l s ot h ep a p e rt a k e sad e e ps t u d yo nt h ek e yp r o b l e m si ne a c hp h a s ea n ds o l v e st h e m , s u c ha si n t e r f a c ed e s i g n ,n e t w o r kt r a n s m i s s i o nc o n t r o l ,c a c h er e p l a c e m e n ts t r a t e g y , t h e s c h e d u l i n go ft h ed a t ap a c k a g e ,t h es p e e dc o n t r o lo ft h ew r i t i n ga n dr e a d i n gp a c k e t s d y n a m i cc h a n g e so fi n t e r a c tb r i n go u tt h ep r o c e s so fs t r e a mm e d i au n p r e d i c t a b l e p r o b l e m s ,w i t h t h ee x c e p t i o n s a f ea n de x c e p t i o n - n e n t r a lm e c h a n i s m ,t h es y s t e m r o b u s t n e s si si n c r e a s e d ,a l s ot h ep r o b l e mo f j u d g m e n tn o d e sl e a v i n gi ss o l v e di nt h e v i d e ol i v i n gb r o a d c a s ts y s t e mw h i c hr e d u c e st h en o d e sr e - c o n n e c t i o nt i m e t h es y s t e mi se x e c u t e do nt h ec e r n e ta n dc n g i - c e r n e t 2 t h et e s tr e s u l t s a n da n a l y t i c a l r e p o r t sf o rt h i ss u b s y s t e ma r ep r o v i d e d i n t h i st h e s i s ,a n dt h e e x p e r i m e n t a ld a t as h o w st h a tt h es t r e a m i n gm e d i as c h e m e su s e di nt h es u b s y s t e mi s r e a s o n a b l e ,e f f e c t i v e ,a n dt h es y s t e mi ss c a l a b l e ,l o w c o s t , e a s yt oi m p l e m e n t ,w i d e a p p l i c a t i o n ,e t c k e y w o r d sa p p l i c a t i o nl a y e rm u l t i c a s t ;s t r e a m i n gm e d i a ;a s f ;c a c h e ;e x c e p t i o n m e c h a n i s m i h 第1 章绪论 第1 章绪论 随着i n t e r n e t 技术的发展,基于流媒体技术的大规模视频应用具有很大的 市场需求,流媒体的需求速度正以指数级增长。由于它的实时性、高速性、宽带 性使得当前i n t e r n e t 上的网络设施常常不能满足人们对流媒体应用的需求,节 约网络资源保证流媒体应用成为挑战性的研究课题。基于应用层组播技术“1 的流 媒体视频直播系统作为一种解决方案,在近年来得到了一定的应用。 1 1 课题研究背景与意义 近年来,随着计算机技术、通信技术和网络条件的高速发展,用户对网络服 务提出来愈来愈高的要求,人们不再满足于传统的文本、f t p 、e - m a i l 等服务, 利用网络实时传送集音频、视频、图文字、数据为一体的多媒体信息已经成为业 界的共识并具有极大的需求,流媒体技术改变了传统互联网的呆板形象,丰富了 互联网的功能,成为一种有强大吸引力的新媒体。 由于流媒体应用具有高带宽、持续时间长等特点,随着并发客户不断增加, 服务器受到如带宽、内存大小的限制,不能为大量用户同时提供高质量的视频直 播,系统的可扩展性极差。为了解决系统的可扩展性问题,许多研究都提出了相 应的解决办法。如i p 组播。1 ( i pm u l t i c a s t ) 通过路由器来实现数据的复制和 分发,是最有效率的群组通信方式,实现在网络上一对多的通信,提高了系统的 可扩展性,但同时i p 组播也由于其难部署、灵活性差、地址空问少、难于管理 等种种限制,并没有取得预期的成功,至今还没有大范围内的因特网组播业务。 另一个解决方法是利用c d n 跚“1 技术,构建流媒体分发网络,依靠放置在各地的 缓存或媒体服务器,通过系统中心平台的智能负载均衡、内容分发、调度等功能 模块,将用户最感兴趣的那部分流媒体内容贴近用户部署。然而c d n 服务器可能 会导致系统瓶颈,所以c d n 技术只适用于小规模的试验网络和过渡方案。 应用层组播技术能够较好的解决以上问题,它在端系统间构造一个叠加网 ( o v e r l a y n e t w o r k s ) 。它不需要改变底层网络的结构,可以快速部署所需的网络 功能,改变了传统模式下的服务方式和数据传输路径。应用层组播以其灵活性、 第1 章绪论 可大规模部署等优点受到了越来趣多的关注,如何利用应用层组播来提供大规模 视频应用成为了i n t e r n e t 上研究和开发的热点。 本课题来源于国家下一代互联网示范工程研究开发、产业化及应用试验项目 中的子项目“c n g i 互联网大规模路由和组播技术的研究与试验”,旨在下一代 互联网上采用应用层组播技术实现流媒体直播系统,为大规模并发用户提供稳定 和流畅的视频直播节目。 1 2 流媒体组播应用研究现状 正如几年前的i p 网络和w e b 技术,流媒体应用正处于持续高速增长时期, 近几年来,p p l i v e 嘲瑚,p p s t r e a m m ,c o o l s t r e a m 嗍这样的网络电视软件在网络中 的空前盛行,引发了人们对流媒体应用相关技术的极大关注。 目前,多媒体及网络领域的相应国际标准和协议充分考虑了流媒体的应用。 在多媒体领域,m p e g 系列( m p e g - i m p e g - 2 m p e g - 4 ) 对网络传输的重视逐渐加强。 v , p e g - 2 定义了传输流( t r a n s p o r ts t r e a m ) ,支持多路m p e g - 2 码流在网络中的传 输复用;m p e g 一4 标准中精细的可扩展编码。1 ( f i n eg r a n u l a rs c a l a b l ec o d i n g ) 、 渐进的精细可扩展编码“”( p r o g r e s s i v ef g sc o d i n g ) 、精细的空域可扩展编码 ( f i n eg r a n u l a rs p a t i a l l ys c a l a b l e ) “”都是适合网络传输的典型编码算法。 流媒体的应用推动了流媒体编码技术、流媒体服务器技术、端到端9 2 1 流媒体 技术和流媒体系统技术的发展。 ( 1 ) 流媒体编解码技术建立在传统多媒体编解码技术的基础上得到迅速发 展。到目前为止,最具代表性的流媒体编解码技术为可扩展性编解码f g s 和p f g s ; ( 2 ) 典型的流媒体服务器技术包括数据放置策略、磁盘调度算法、内存缓冲 区管理算法等; ( 3 ) 流媒体系统技术不仅仅关注流媒体的o o s “”( q u a l i t yo fs e r v i c e ) , 还注重提高流媒体的系统效率。由于流媒体系统技术不仅要涉及流媒体的关键技 术,还要优化性能,因此该类研究非常具有挑战性,也是流媒体技术研究的重点 和趋势; ( 4 ) 端到端流媒体技术用以解决流媒体在两个端系统间传输的相关问题,研 究目标是为了提高流媒体应用的o o s 。 2 第1 章绪论 目前,流媒体的应用主要有两种架构:c s 架构、基于代理的架构,如图卜i , 卜2 所示。采用c s 架构,服务器必须通过网络给每个用户发送多份相同的数据, 因为多媒体的数据量大,随着客户端数目的增加,很容易造成s e r v e r 端的网络 拥塞,并且加重了s e r v e r 端的负载。 图i - ic s 架构的流媒体应用 a b c 图l - 2 使用代理服务器的流媒体应用 流媒体代理服务器“”使用了缓存技术“”,将一些频繁访问的数据存贮在内存 或者硬盘中。这样代理服务器承担了一部分用户访问,有效的降低了主服务器的 访问负载;提高了用户的响应速度,降低了启动延迟;提高了服务器的鲁棒性; 节省了网络资源。但是流媒体代理服务器在配置管理、更新缓存内容、相互协作 以及智能处理上存在一定的问题。 m i x c a s t 系统是一个支持大规模用户的流媒体解决方案,基于m i x c a s t 通信 模型“6 “1 ”,采用二级服务结构,第一级是在域间进行数据转发,第二级是在域内 进行转发,如图i - 3 所示,域间通过设立若干个分支节点联系,用户请求由距离 用户最近的边缘节点提供服务,使得用户请求可以在本地进行,改善用户的访问 效果。 3 第1 章绪论 用络屡组播俦精线路一应用层组播传输境路 1 3 作者主要工作 图l - 3m i x c a s t 系统服务模型 实现基于应用层组播的大规模流媒体应用系统,需要解决两个主要问题,一 个是如何构造一棵有效的支持大规模节点的转发树,以及如何维护该转发树的可 靠性;二是如何进行流媒体数据的处理,包括数据的缓存、采集、传输、回放、 转发等环节,如果流媒体数据的处理方法不当,将会导致音视频流的数据丢失, 影像播放质量的下降,甚至无法收看。目前,研究如何构造应用层组播转发树的 方案较多,例如c a n m u t i c a s t m l ,y o i d “”,n i c e 口0 1 等,但是针对第二个问题的研 究还比较少。 本文结合实际项目的需求,以流媒体技术在应用层组播视频直播系统 m i x c a s t 中的应用作为研究对象,主要完成了以下工作: ( 1 ) 深入研究了流媒体技术与应用层组播技术的原理及相关技术; ( 2 ) 在分析基于m i x c a s t 模型的应用层组播视频直播系统需求的基础上,研 究并设计w i n d o w s 平台下流媒体数据处理系统。详细介绍了在系统中流媒体数据 处理的一些关键技术及其实现方案。包括流媒体数据的缓存管理、数据采集、网 络传输、本地回放、节点间转发等; ( 3 ) 对a s f ( a d v a n c e ds t r e a m i n gf o r m a t ) 口1 1 视频流在i n t e r n e t 上的传输 技术进行研究和应用,并利用流数据传输异常机制。”对整个系统m i x c a s t 的难点 4 第1 章绪论 提出了解决方案; ( 4 ) 采用网络编程对设计进行了实现,并在中国教育与科研计算网内对本系 统进行了系统实际测试,包括系统的c p u 占用率、内存的使用情况、所占带宽, 平均响应时间、平均延时及重构时延等,并对测试结果进分析。 1 4 本文的组织结构 全文分为六章,组织如下: 第一章“绪论”,介绍了本文的课题研究背景、意义,介绍了当前应用层组 播和流媒体应用的研究现状以及作者的主要工作、论文的组织结构; 第二章“a l m 视频直播系统相关技术”,首先讨论了流媒体技术相关概念和 理论,包括流媒体的基本知识、技术原理、适合流式传输的编码技术、网络传输 协议、常见的几种流媒体文件格式。然后探讨了应用层组播技术的发展、工作原 理及其面临的问题; 第三章“流媒体处理系统的研究与设计”,提出了流媒体数据处理系统的整 体解决方案和详细设计过程; 第四章“流媒体处理系统关键技术的实现”,实现了系统的五个核心技术方 案,数据采集编码、数据包封装及缓存管理、网络传输、转发、及本地回放; 第五章“系统性能测试与探讨”,对应用了该方案的的m i x c a s t 直播系统进 行了性能测试并对结果进行分析; 第六章“结束语”,对本文所做的研究工作加以总结,并指出下一步研究方 向。 第2 章a l m 视频直播系统相关技术 第2 章a l m 视频直播系统相关技术 流媒体的广泛应用向现有i n t e r n e t 网络服务提出了挑战,一个解决方法是 采用应用层级组播技术构建流媒体转发网络,本章将主要探讨了应用层组播流媒 体系统相关技术网络流媒体技术、应用层组播技术。 2 1 网络流媒体 2 1 1 流媒体概况 流媒体1 是指运用可变带宽技术,在数据网络上按时间先后次序传输和播放 的连续音视频数据的一种格式,而流媒体技术则是在i p 网络上发布多媒体数据 流的技术。流媒体技术有别于传统播放技术由客户端从服务器下载完整的文件后 进行播放,而是采用了流式传输方式,将整个多媒体文件压缩解析成多个压缩包, 向客户端实时地顺序传送,用户可以一边解压播放前面传送过来的压缩包,一边 下载后溃的压缩包,与传统媒体技术相比,视频流媒体技术具有如下特点: ( 1 ) 服务实时性强,流媒体技术实现在线播放,基本忽略下载等待的时间, 提高了服务质量; ( 2 ) 用户本地不需要准备大量的磁盘空间; ( 3 ) 网络资源利用率高,流数据的传输速率在网络稳定的情况下基本上是固 定的,避免了因为网络缺乏流量控制,“尽力而为”而导致的网络局部 拥塞; ( 4 ) 可以实现现场直播形式的实时数据传输; ( 5 ) 服务更合理,由于启动时延很少,用户对于不感兴趣的节目可以及时中 止播放,从而有效的减少了资源浪费。 2 1 2 流媒体工作原理 流媒体实现的关键技术是流式传输,流媒体传输技术是一种基于时间的连续 实时传输技术,其关键在于网络数据传输和客户端播放的并行性。 6 第2 章a l m 视频直播系统相关技术 流媒体将连续的影像和声音信息经过特殊的压缩方式分成一个个压缩包,音 视频服务器向用户计算机连续、实时的传送。用户可以一边下载一边观看、收 听,并不下载整个文件。流媒体在处理的过程中,会首先在用户端的电脑上创建 一个缓冲区,在播放之前先下载文件的一部分存入缓冲区,用户可在计算机上利 用相应的播放器或其它的硬件、软件对压缩的流式多媒体文件解压后进行播放。 在播放的同时,继续从服务器获取文件的后续部分到缓冲区,这样,即使网络传 输数据速度小于文件播放数据速度,也可以避免文件播放的中断,还能保持文件 播放的品质。 2 1 3 流媒体传输协议 根据网络分层原理,传输协议可以分为以下三类: ( 1 ) 网络层协议( i p ) :提供最基本的网络服务; ( 2 ) 传输层协议包括t c p u d p 和r t p r t c p e “1 :提供端到端到传输服务,其中 t c p u d p 是最基本的传输协议,更加底层一些,r t p r t c p 是端到端的协 议,实现在t c p 或u d p 之上,有时被划为应用层协议; ( 3 ) 应用层协议:定义多媒体会话过程中的消息控制及处理。 2 1 4 适应流式传输的编码技术 当前多媒体技术已经成为信息传递的主要手段,音视频编码作为制约多媒体 技术发展的“瓶颈”,成为人们研究的焦点,一些现代编码技术应运而生,多媒 体及网络领域的相应国际标准化组织正在逐步重视流媒体的应用。 ( 1 ) 经典编码技术 变换编码利用数字图像像素间存在高度相关性,来进行某种变换来消除这种 相关性。它不是直接对空域图像像素编码,而是先对空域图像像素的某一块数据 进行线性组合( 线性变换) ,信号空间转换为变换空间,产生一组变换系数,然 后对这些系数进行量化、编码和传输;预测编码根据数据的统计特性得到预测值, 然后传输各像素与其预测值的差值信号,使传输码率降低,达到压缩的目的;统 计编码根据统计特性,寻找概率与码字长度间的最优匹配。 ( 2 ) 适合网络传输的编码方法 7 第2 章a l m 视频直播系统相关技术 目前为止最具有代表性的适合网络传输的编码算法有m p e g 一4f g s ( f i n e g r a n u l a r i t ys c a l a b l e ) 、渐进的精细可扩展编码( p r o g r e s s i v ef g sc o d i n g ) 、 小波编码,以下将重点介绍前两种算法。 精细的可扩展编码( f g s ) 使用基于分块运动补偿和d c t 变换的编码方式达 到网络传输的最低要求,f g s 的体系结构如图2 - 1 ;增强层使用拉平面编码技术对 d c t 残差进行编码来覆盖网络带宽的变化范围,每一帧的增强层码流可以在任何 地点截断,解码器重建的视频质量与收到并解码的比特数成正比。 f r a m e s 图2 1f g s 体系结构 f g s 的基本层和所有增强层都以参考帧的基本层图像为参考进行运动补 偿,这样f g s 可以及时恢复增强层出现的错误; 由于基本层解码的图像质量比较低,与原始图像的差别较大,于是形成 的d c t 残差就大,相应生成的码流长,导致效率低; 渐进的精细可扩展编码( p f g s ) 使用了两种不同质量的参考图像,其原理如 下: 基本层图像使用前一帧重建的基本层图像为参考进行运动预测和补偿; 增强层图像原则上都是用前一帧重建的某个增强层图像为参考进行运动 预测和补偿; 条件:当前一帧增强层未传输到解码端时,才使用前一帧的基本层。 图2 _ 2 为p f g s 的体系结构图,由于重构的增强层图像的质量要明显高于重 构的基本层图像的质量,因而在p f g s 中运动补偿更有效,从而提高了f f g s 的编 码效率。 第2 章a l m 视频直播系统相关技术 2 1 5 流媒体文件格式 图2 - 2 渐进的精细可扩展编码 目前,互联网上使用较多的流媒体格式主要有r e a ln e t w o r k s 公司的r e a l m e d i a 、m i c r o s o f t 公司的w i n d o w sm e d i a 呲1 嘲及a p p l e 公司的q u i c k t i m e 电影 文件格式。 ( 1 ) r e a lm e d i a 文件格式 r e a l n e t w o r k s 公司的r e a l m e d i a 包括r e a l a u d i o 、r e a l v i d e o 和r e a l f l a s h 三类文件,其中r e a l a a d i o 用来传输接近c d 音质的音频数据,r e a l v i d e o 用来 传输不问断的视频数据,r e a l f l a s h 则是r e a l n e t w o r k s 公司与m a c r o m e d i a 公司 新近联合推出的一种高压缩比的动画格式。 r e a lm e d i a 文件格式是标准的标志文件格式,使用四字符编码来标识文件 元素,块c h u n k 是该文件格式的基本组成部件,它是数据的逻辑单位,每个流数 据包都有3 部分组成:报头信息、数据、索引,文件格式如图2 3 所示: 标记块 标记块 块数据 图2 - 3r e a lm e d i a 文件格式 报头信息有以下4 种: r e a lm e d i a 文件报头; _ c o n t e n td e s c r i p t i o nh e a d e r :内容描述报头; 9 第2 章a l m 视频直播系统相关技术 - m e d i ap r o p e r t i e sh e a d e r :媒体属性报头; p r o p e r t i e sh e a d e r :属性报头; 其中,r e a lm e d i a 文件报头必须是文件的第一个c h u n k ,其它的属性报头可 以任意顺序。 数据信息包括以下2 部分内容: _ 报头:数据部分的报头; _ 数据包:数据部分的实际媒体信息; 索引包括以下内容: 一报头:描述索引区内容的索引块的报头 _ 多条索引记录; r e a ls y s t e m 最突出的特点是采用了自适应流技术,可通过一个编码流自动 提高合适不同带宽用户的流播放,适合网络上播放或是在线直播方式,在r e a l s y s t e m 所用的视频流媒体格式中】i j l 格式是品质最差的,但文件是最小的,低速 用户也可以很轻松的在线欣赏节目。 ( 2 ) a s f 文件格式 a s f 是m i c r o s o f t 公司专为流媒体而采用的一种数据格式,包括音频、视频、 图像以及控制命令、脚本等多媒体信息,a s f 用于媒体内容和编码方案的打包。 与r e a l s y s t e m 相似,w i n d o w sm e d i at e c h n o l o g y 也有相应的三部分构成,分别 是m e d i at o o l s ,m e d i as e r v e r 和m e d i ap l a y e r ,m e d i at o o l s 是整个方案的重 要组成部分,包含一整套用于采集、编码和生成a s f 格式多媒体流文件的工具。 a s f 采用对象( o b j e c t ) 的概念来组织文件结构,一个典型的a s f 文件有3 种顶级对象:头对象( h e a do b j e c t ) 、数据对象( d a t a o b j e c t ) 和索引对象( i n d e x o b j e c t ) 。文件中的对象都用一个1 2 8 位的g u i d 来标识,每个对象的结构如图 2 4 所示,对象大小等于对象数据的大小n 加上2 4 。 图2 - 4a s f 文件对象结构 头对象:可嵌套其他的次级对象,用于描述文件的全局信息,包括文件 1 0 第2 章a l m 视频直播系统相关技术 大小、流的数量、纠错方法、编解码信息等;头对象是必须要有的,它出在a s f 文件的开始处,头对象的数据结构主要包括下面3 个参数: - o b j e c t l d :标识对象的g u i d ; 一o b j e c t s i z e :对象的大小; - n u m b e r o f h e a d e r o b j e c t s :表示头对象嵌套的次级对象个数; 头对象里没有实际的描述信息,描述信息是由头对象嵌套的次级对象提供 的,下面介绍几个次级对象: f i l ep r o p e r t i e s 对象:描述a s f 文件的全局信息; - s t r e a mp r o p e r t i e s 对象:描述流的编号、类型、纠错方法、编解码信 息等内容; s t r e a mb i t r a t ep r o p e r t i e s 对象:记录a s f 每个流的平均比特率; _ c o n t e n td e s c r i p t i o n 对象:保存有关a s f 内容的描述信息: _ b i t r a t em u t u a le x c l u s i o n 对象:记录比特率互斥的各个流编号; 一h e a de x t e n s i o n 对象:提供了灵活的扩展机制。 数据对象:保存真正的流数据,以固定大小的数据包( d a t ap a c k e t ) 的形 式存储;数据对象的数据结构主要包括以下参数: _ 0 b j e c t i d :标识对象的g u i d ; _ o b j e c t s i z e :对象的大小; _ f i l e l d :文件的i d : - t o a l d a t a p a c k e t s :总的数据包个数; d a t a p a c k e t s :紧跟数据包。 数据包( d a t a p a c k e t ) 以负载( p a y l o a d ) 的形式封装流数据。图2 5 给出了数 据包的两种结构( 左边的是典型结构,右边的是为向后兼容考虑使用的结构) 。 纠错数据( 可选) 负载解析信息 负载l 负载数据 负载n 填充数据( 可选) 纠错数据( 可选) 不透明数据 填充数据( 可选) 图2 - 5 数据包结构 1 1 第2 章a i m 视频直播系统相关技术 一个数据包可以包括一个或多个负载,一个负载可以包含一个或多个媒体对 象( m e d i ao b j e c t ) 。对于一个大尺寸的媒体对象来说( 比如视频关键帧或是音频 数据) ,可能被分成多块,跨越多个负载,甚至多个数据包;而对于一个小尺寸 的媒体对象来说,多个对象会被装进同一个负载中。纠错数据是可选的;负载解 析信息包括数据包的长度、填充数据的长度、数据包的发送时间( s e n dt i m e ) 、 数据包的时间长度等;负载数据是真正的流媒体数据。 索引对象:是出现在a s f 文件最后一种顶级对象,是可选的,主要保存时 间与数据位置的映射信息,便于应用程序随机访问。 用户可以将图形、声音和动画数据组合成一个a s f 格式的文件,当然也可以 将其他格式的视频和音频转换为a s f 格式,而且用户还可以通过声卡和视频捕获 卡将诸如麦克风、录像机等等外设的数据保存为a s f 格式。 ( 3 ) q u i c k t i m e 文件格式 a p p l e 公司于1 9 9 1 年开始发布q u i c k t i m e ,它几乎支持所有主流的个人计算 平台和各种格式的静态图像文件、视频和动画格式,是创建3 d 动画、实时效果、 虚拟现实、a v 和其他数字流媒体的重要基础。 q u i c k t i m e 电影文件格式定义了存储数字媒体内容的标准方法,使用这种文 件格式不仅可以存储单个的媒体内容( 如视频帧或音频采样) ,而且能保存对该媒 体作品的完整描述。q u i c k t i m e 文件格式被设计用来适应为与数字化媒体一同工 作需要存储的各种数据,因为这种文件格式能用来描述几乎所有的媒体结构,所 以它是应用程序间( 不管运行平台如何) 交换数据的理想格式。o u i c k t i m e 文件 格式中媒体描述和媒体数据是分开存储的,媒体描述或元数据( m e t a d a t a ) 叫 做电影( m o v i e ) ,包含轨道数目、视频压缩格式和时间信息。同时m o v i e 包含媒 体数据存储区域的索引。 ( 4 ) 其它文件格式 婶e g 一4 被认为是对抗微软向媒体市场进军的一种技术,咿阱- 4 将块头很大 的数字文件压缩成较小的文件,以便在互联网上进行传输,并提供交互功能,使 影视节目具有在当今只有互联网网站和视频游戏才能提供的交互性。 第2 章a l m 视频直播系统相关技术 2 2 应用层组播技术 2 2 1 组播技术的发展 随着多媒体技术在网络中的广泛应用,造成网络的通信量急剧增加,在不久 的将来,l i v e 流媒体将形成i n t e r n e t 上的主要通信量。流媒体技术的应用向 i n t e r n e t 提出了挑战,组播是一种比较理想的实现组通信的网络通信技术。 组播己在网络的不同层上实现,( 数据) 链路层组播存在的问题是,由网络代 理商建立的多路广播组是静态的,需要改变时必须对网络进行重新配置。而在网 络层实现的i p 组播就比较灵活,网络中的路由器采用分布式算法构造出一棵 组播树,在组播树的分支节点处,由路由器进行数据包复制,并向组播树中的直 接下游节点转发。它没有得到广泛发展的原因是;对i p 组播缺乏广泛的支持; 不存在广泛可用的跨域的i p 组播。 网络“边缘论”( e n d t o e n da g u m e n t ) 嘲原则指出,某项功能除非在 底层实现可以获得性能上的极大收益,超过了因为底层复杂性增加而形成的开 销,否则就应该把该功能提升到更高层实现。简单概括就是“核心简单,边缘复 杂”。于是很自然的,在覆盖网络上实现组播服务的应用层组播就被提了出来。 在a 埘中,数据分发节点是主机,而分发节点之间的数据传输是通过传统的 单播技术来实现,与网络层组播相比应用层组播有以下特点: ( 1 ) 易于部署、效率高、可扩展性强; ( 2 ) 不依赖于互联网的底层实现,用户可以根据自己的需求设计更加灵活的 组播模型; ( 3 ) 数据分发点是各主机,有独立的利益,不象i p 组播各分发节点( 路由器) 之间遵守网络协议; “) 实现高层功能相当灵活,中间转发节点可以支持对数据进行应用层处 理。 2 2 2 应用层组播分类 根据a l m 中节点的类别和参与方式,可以分为基于固定节点的方案和基于 第2 章a l m 视频直播系统相关技术 动态节点的方案2 ”,即基于p r o x y 和基于p 2 p 。基于固定节点的方案在i n t e r n e t 中策略性地放置一些高性能的端系统节点,即所谓的固定节点,并由这些固定节 点承担数据复制和转发的任务,组成员节点通过单播或者本地的i p 组播连接到 这些固定节点上来获得服务,基于p 2 p 的a l m 中,苦于可扩展性的考虑,每个节 点一般不会维护其它所有参加组播会话的节点,而只维护其中一部分节点作为邻 居节点啪1 ,这些维持的邻居关系的信息构成了应用层组播的控制结构,这也是组 播树的构造与维护的重要基础目前根据a l m 组播数据结构的特征,将a l m 协议 大致分为2 类,即基于树( t r e e ) 应用层组播、基于网状( m e s h ) 的应用层组播, 这两种协议的数据转发结构如图2 6 和图2 7 ( r 为源节点) : 图2 - 6 基于树的数据转发结构树图2 - 7 基于图的数据转发结构图 基于树状的应用层组播,其数据结构与网络层组播相似,在o v e r l a y 网上构 造一棵数据转发树。组播树可以通过集中式或分布式方法构造。采用集中式方法 时,每个成员节点分别探测其周围的网络状况,并将结果传递到一个特定的r p 节点。根据这些信息,r p 节点负责构造组播树,并将树结构信息分发给所有成 员节点。采用分布式方法时,每个成员找到若干在组播树( 数据拓扑) 中不是其 邻居的其它成员节点,建立并维护到这些成员的控制连接。一旦上下游节点的关 系建立,节点之间除了传输组播数据之外,只需要根据控制结构的动态变化对组 播树进行调整。比较典型的基于树优先a l m 协议包括a l m i 啪1 、t a g 。”和y o i d 等。 在基于网状的应用层组播中,组成员首先被连接成一个覆盖网络,此即所谓 的控制拓扑m e s h 网。与基于树状的应用层组播不同,它的组播结构不再是一棵 节点父子关系明确的转发树,m e s h 网中一对成员节点间可能存在多条路径,因此 所有成员都参与到该网状结构上运行的路由协议中,并分布式地计算出到每个其 它成员节点的唯一的覆盖网络路径,从而避免随后生成的组播树出现环路。这种 基于网状优先的应用层组墙能更好的适应节点的动态变化,频繁的加入退出,这 对于组成员是单个p c 机的网络环境是非常重要的。比较典型的基于网状优先的 1 4 第2 章a l m 视频直播系统相关技术 a l m 包括s p l i t s t r e a m 3 “,c o o p n e t ,d o n e t 8 1 等。 2 2 3 应用层组播面临的问题 近年来,关于a l m 的研究十分活跃,随着研究的不断深入,发现a l m 尚存在 许多问题有待解决。 ( 1 ) 组播转发树的优化 由于网络是高度动态的环境,或组播树的可靠性、稳定性很差,则使得组播 成员频繁的加入或离开,导致实时视频流经常被中断传输,那么a l m 组播的优势 也将得不到应用,所以一棵转发树的构建及维护对于a i m 是至关重要的,然而由 于组播网络环境中的网络异构性使得a l m 组播树的优化变得更加复杂。 ( 2 ) 组播的自私性 a u l 中组成应用层组播数据结构的节点是应用层的主机用户,具有自私性 m 1 ,它们总希望尽可能多的接收组播数据的利益,尽量减少转发组数据的负担, 出于这样的目的,就会出现很多的f r e er i d e r 。用户自私性对可信任的、鲁棒 的应用层组播会话极为重要。 ( 3 ) 组播协议的可扩展性 随着互联网应用的不断发展,基于流媒体技术的大规模视频应用具有很大的 市场需求,然而目前已经开发并应用的a l m 协议大多只能应用于小规模组播组, 小规模的实验系统,满足不了很多应用如实时新闻和股票行情发布等需要对大规 模组播组支持的需要。开销导致a l m 方案难以扩展的原因包括每个节点维护的状 态规模和控制消息的,随着组规模的扩大,为了改善覆盖网络质量而进行的网络 探测将是爆炸性的。如何利用应用层组播技术实现大规模流媒体信息转发,成为 当今具有挑战性的问题。 ( 4 ) 组播的安全性 安全性问题一直是开放式的i n t e r n e t 应用研究的主要课题之一,当然a d i 也不例处,由于a l m 中组播成员的参与者是多个用户主机,节点性能、带宽、链 路的差异性很大,因此安全性问题更加复杂。 第2 章a l m 视频直播系统相关技术 2 3 本章小结 本章主要对课题中涉及的主要技术:网络流媒体技术、应用层组播技术做了 详细的探讨。网络流媒体技术主要总结了流媒体的基本理论、原理、适应流式应 用的编码技术、流媒体的常用的文件格式及网络传输协议等,应用层组播技术论 述组播技术的发展、特点、原理及a l m 的分类,最后讨论了其发展所面临的主要 问题。 1 6 第3 章流媒体处理系统的研究与设计 第3 章流媒体处理系统的研究与设计 在深入了解流媒体技术基础及其关键技术之后,本章从一般流媒体组播系统 的结构,引出了a u l 视频直播系统m i x c a s t 中流媒体数据处理的关键技术,并给 出了解决方案。 3 1 流媒体系统组成 广义上的流是使音频和视频形成稳定和连续的传输流和回放流的一系列技 术、方法和协议的总称,习惯上称之为流媒体系统。一个完整的流媒体系统包括 3 大模块,如图3 - 1 所示。 瀛摸体服务嚣 唇口一 争7 1 瞍 j 嘲文件辙 赫k 爹 编玛匮缩 预处理横块 发布橇疑孵晤传输 图3 - l流媒体系统组成结构图 ( 1 ) 预处理模块:流媒体数据源可以是从输入设备采集的信息,也可是其它 多媒体格式文件,预处理首先要对这些信息进行高效的压缩编码,然后,把压缩 后的媒体信息转换成可用于网络传输的文件格式并存储,供流媒体发布模块使 用,也可以为发布模块提供各种实时媒体流,用于音视频直播。 ( 2 ) 发布模块:包括流媒体服务器、存储区、节目发布服务器。流媒体服 务器把存储在存储区中的视频信息以音视频流的形式通过网络接口送给相应的 客户,响应客户的交互请求,保证视频流的连续输出;存储区存储有流媒体内容; 发布模块提供流媒体节目在网络上发布或将视频流地址邮寄给用户。 ( 3 ) 播放模块:客户端在本地创建一个缓冲区,连续地从流媒体服务器接收
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 复印机品牌选择与质量保证措施
- 肩肘倒立动作难度梯度计划
- 2025年急救护理急救常识知识检测答案及解析
- 2025贵州省职工医院合同制工作人员招聘(第一批)考试备考题库及答案解析
- 冬雨季智能楼宇消防施工方案措施
- 边缘云协同调度机制-洞察及研究
- 幼儿园防欺凌制度建设工作计划
- 2025年光学仪器及其他行业规模分析及投资前景研究报告
- 三年级下册写字教师培训计划
- 2025年塑胶地板行业当前发展趋势与投资机遇洞察报告
- 数字化教学环境下小学语文板书设计优化策略
- JG/T 237-2008混凝土试模
- JG/T 232-2008卫浴型散热器
- 灭火员初级习题库
- T/CAQP 001-2017汽车零部件质量追溯体系规范
- 燃气入户可行性报告
- 技术赋能医疗创新-深入解析数字化口腔诊所建设指南
- 眼内炎护理疑难病例讨论
- 配送车辆消毒管理制度
- 理发店消防安全制度
- 脾脏解剖学与脾切除术指导
评论
0/150
提交评论