




已阅读5页,还剩57页未读, 继续免费阅读
(通信与信息系统专业论文)视频点播系统客户端设计及h264差错隐藏的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
北京邮电大学硕士论文 视频点播系统客户端设计及i - i 2 6 4 差错隐藏的研究 摘要 随着宽带技术的发展,基于流媒体技术的多媒体业务的应用在网 络上也越来越广泛,人们追求高质量多媒体业务的脚步一刻也没有停 止。然而,网络带宽的限制依然是目前i n t e m e t 上高清晰度视频业务 发展的瓶颈。如何在有限带宽上提供高质量的视频服务依然是研究的 热点。h 2 6 4 a v c 是i t u t 的视频编码专家组和i s o i e c 的运动图 像专家组联合提出新一代的视频编码标准,具有很高的压缩效率和很 强的鲁棒性,非常适合于网络传输。基于这样的背景,我们研究开发 了基于h 2 6 4 的视频点播系统。由于i p 网络是尽力而为的,视频数 据包在经过网络传输过程中,往往会发生数据包丢失的情况。由于 h 2 6 4 的高压缩率,相比以前的视频压缩标准,数据包丢失会对h 2 6 4 码流造成更加严重的后果。 为此,本文主要研究视频点播系统中客户端设计以及客户端的 o o s 技术。具体的,本文主要完成以下工作:1 、本文设计并开发了 视频点播系统的客户端,实现了客户端建连、点播、播放、暂停等基 本用户需求,同时提出客户端r t p 乱序重排和可调节大小的环形缓冲 区算法,有效的缓解了视频传输中延时抖动等问题;2 、本文针对 h 2 6 4 视频压缩的特性,提出了一种实时差错隐藏技术,对于帧间编 码的图像利用相邻宏块的宏块划分模式有效的预测了丢失宏块的宏 块划分模式以及运动向量;对于帧内编码的图像使用运动搜索获得周 围宏块的运动信息,根据自适应的门限条件将运动补偿与双线性插值 结合使用。实验结果表明本算法能在解码时实时进行差错隐藏,同时 主观和客观质量比双线性插值有较大的提高。 关键词:视频点播客户端h 2 6 4 差错隐藏 北京邮电大学硕士论文 t h ed e s i g no ft h ec l i e n to fv o ds y s t e ma n d t h er e s e a r c ho fe r r o rc o n c e a l m e n tf o r h 2 6 4 a b s t r a c t m u l t i m e d i as e r v i c e ,b a s e do ns t r e a m i n gm e d i at e c h n o l o g y , w a s a p p l i e da b r o a do nt h ei n t e m e t p e o p l en e v e rs t o pp u r s u i n gm u l t i m e d i a s e r v i c eo fh i g hq u a l i t yf o ram o m e n t h o w e v e r , t h el i m i t a t i o no f b a n d w i d t hs t i l li st h eb o t t l e n e c ko ft h ed e v e l o p m e n to fh i g hq u a l i t y m u l t i m e d i as e r v i c e h o wt op r o v i d eh i g hq u a l i t ym u l i m e d i as e r v i c eo n l i m i t e db a n d w i d t hb e c o m e st h ef o c u so fr e s e a r c hf i e l d h 2 6 4 c , w h i c hh a so u t s t a n d i n gc o m p r e s sp e r f o r m a n c ea n ds t r o n gr o b u s t n e s s ,i sa n e wv i d e oc o m p r e s ss t a n d a r d ,i s s u e db yt h ej o i n tv i d e ot e a m ( j v t ) c o n s i s t i n go ft h em e m b e r so fm p e ga n dt h ei t u sv i d e oc o d i n ge x p e r t s g r o u p i t i s v e r ys u i t a b l ef o rn e t w o r kt r a n s m i s s i o n b a s e do nt h e b a c k g r o u n d ,w er e s e a r c ha n dd e v e l o pt h e v i d e oo nd e m a n d ( v o d ) s y s t e mf o rh 2 6 4 b e c a u s ei pn e t w o r kp r o v i d e sb e s te f f o r ts e r v i c e ,t h e v i d e od a t ap a c k e tm a yl o s td u r i n gn e t w o r kt r a n s m i s s i o n h o w e v e r , d u et o h i g hc o m p r e s sr a t e ,i nc o n t r a s tw i t hp r e v i o u sv i d e oc o m p r e s ss t a n d a r d s , t h ei n f l u e n c eo fd a t ap a c k e tl o s sw i l lm a k em o r es e r i o u se f f e c to v e r h 2 6 4b i t s t r e a m t h e r e f o r e ,t h i st h e s i sm a i n l yd i s c u s s e st h ed e s i g na n di m p l e m e n t a t i o n o ft h ec l i e n to ft h ev o ds y s t e m o u rm a j o rc o n t r i b u t i o n sa r el i s t e da s f o l l o w f i r s t , w ed e s i g na n dd e v e l o pt h ec l i e n to ft h ev o ds y s t e m 。眙 i m p l e m e n tb a s i cf u n c t i o n f o ru s e ro p e r a t i o n ,s u c ha sc o n n e c t i o no ft h e c l i e n t ,p r o g r a m m eo r d e r , p l a y , p a u s e w r e a l s o p r o p o s e a s o r t i n g a l g o r i t h mt od e a lw i t ho u t o f - o r d e ro fr t pd a t ap a c k e t a n daa l g o r i t h m f o ra u t o a d j u s t m e n to fr i n gb u f r e rs i z ei s d e v e l o p e d a sw e l l t h i s a l g o r i t h mm a yr e d u c et h ei m p a c to fd e l a yj i t t e rd u r i n gd a t ap a c k e t t a n s m i s s i o n s e c o n d ,w ep r o p o s ean e wr e a l t i m ee l t o rc o n c e a l m e n t a l g r i t h m , b a s e do nt h en e wf e a t u r eo fh 2 6 4 w r e p r e d i c tt h el o s t m a c r o b l o c kp a r t i o nm o d e la n dm o t i o nv e c t o rb yu s i n go ft h em a c r o b l o c k k e yw o r d s :v o d c l i e n t h 2 6 4 e r o r rc o n c e a l m e n t = 烈舭m| 莹印n眦似淌 眦惭萨 n c d翟 :i a m 枷侧 酱一 硼m 呈星恤踟 d m 血砌砌m l 专吣嗣 f e 剐 2 州 d 1 m d n 既 础m p m m 通 n k 1 蔷删 n e 巾 a 烈 呻叩唧 北京邮电大学硕士论文 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处, 本人签名:二千冬毒卑一 j 州。i , 本人承担一切相关责任。 日期:丛墨:3 :鉴 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保留并向国家 有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借阅;学校可以公布 学位论文的全部或部分内容,可以允许采用影印、缩印或其它复制手段保存、汇编学位 论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在一年解密后适用本授权书。非保密论 文注释:本学位论文不属于保密范围,适用本授权书。 本人签名: 显堂日期:盖遂:2 :竖 导师签名: 盏盈选选日期:塑塑:圣:! 北京邮电大学硕士论文 第一章绪论 1 1研究背景 随着社会的发展,传统的被动接收固定煤体信息的广播、电视节目已无法满 足人们的需要。人们希望能够按照自己的意愿,随心所欲地选择收看自己喜爱的 节目。因此视频点播系统( v o d ) 应运而生。v o d 的基本含义就是观众随时点 播自己想看的视频节目。随着宽带技术的发展,越来越多的人们开始抛弃传统的 只能被动接受的广播式的普通电视,进而去选择i n t e r n e t 网上那些自己能够主动 选择节目内容的点播服务,基于流媒体技术的视频点播的应用在网络上也越来越 广泛。然而,由于带宽的限制以及采用低压缩率的视频标准,目前在i n t e r a c t 上 还是无法提供高清晰度高质量的视频点播服务。网络带宽的限制依然是目前 i n t e r n e t 上高清晰度视频业务发展的瓶颈,如何在有限带宽上提供高质量的视频 服务依然是研究的热点。h 2 6 4 a v c i i j 是r r u t 的视频编码专家组和i s o i e c 的 运动图像专家组联合提出的能同时适合会话式与非会话式应用的视频编码标准, 具有很高的压缩效率和很强的鲁棒性【2 】,非常适合于网络传输。目前i n t e r n e t 上 的视频点播服务,如p p l i v e ,p p s t r e a m 等都是采用微软的w m v 作为视频流格式。 w m v 采用的视频压缩标准是m p e g - 4 ,并且w m v 的解码器在有宏块丢失的情 况下会出现马赛克的情况。而在相同图像质量的情况下,h 2 6 4 的压缩率是 m p e g - 4 的两倍,在同样带宽下,h 2 6 4 能够提供比m p e g - 4 清晰度更高的视频。 因此,研究采用h 2 6 4 作为视频压缩标准的视频点播系统是非常有价值的。基于 这样的背景,我们研究开发了基于h 2 6 4 的视频点播系统。 1 2 本人工作及论文安排 本人在硕士研究生期间,查阅了大量的技术资料,仔细研究了相关的多媒体 传输协议和h 2 6 4 标准,在此基础上,独立开发了视频点播系统的客户端软件, 并且在客户端软件中的h 2 6 4 解码器中实现了一种实时高效的差错隐藏算法。以 下将介绍在研制和开发此系统中本人所做的具体工作: 1 视频点播系统客户端软件 包括各种协议数据包的发送、接收、解析。视频数据的接收和解码播放。这 其中关键部分是r t p 数据包的排序、环型缓冲区、f e c 解码等模块。 2 h 2 6 4 差错隐藏 在系统中选择使用合适的i - i 2 6 4 错误恢复工具;利用h 2 6 4 新的特性,开发 了一种时间差错隐藏和空间差错隐藏相结合的差错隐藏算法。 北京邮电大学硕士论文 论文具体安排如下: 第一章首先简要介绍了本课题的研究背景和研究意义,然后综合阐述了视频 点播服务研究现状,最后介绍了本人的工作和论文的安排。 第二章介绍客户端相关的支撑技术:多媒体传输相关协议、流媒体技术、 d i r e c t s h o w 、h 2 6 4 标准等。 第三章介绍整个视频点播系统客户端的设计和开发。 第四章介绍客户端解码器中所采取的差错隐藏技术。 第五章总结了本文所做的工作,并展望未来。 2 北京邮电大学硕士论文 第二章客户端支撑技术 视频点播系统客户端中主要涉及到流媒体技术、多媒体传输协议、 d i r e c t s h o w 技术、f e c 和h 2 6 4 标准。为了使读者更好的理解本文,先简单介绍 这些相关的支撑技术。 2 1r t p 协议 r t p ( r e a l t i m e t r a n s p o r tp r o t o c 0 1 ) i s l 是用于i n t c m e t 上针对多媒体数据流的 一种传输协议。r t p 被定义为在一对一或一对多的传输情况下工作,其目的是提 供时间信息和实现流同步。r t p 通常使用u d p 来传送数据,但r t p 也可以在 t c p 或a t m 等其他协议之上工作。当应用程序开始一个r t p 会话时将使用两个 端口:一个给r t p ,一个给r t c p 4 1 。r t p 本身并不能为按顺序传送数据包提供 可靠的传送机制,也不提供流量控制或拥塞控制,它依靠r t c p 提供这些服务。 通常r 1 r p 算法并不作为一个独立的网络层来实现,而是作为应用程序代码的一 部分。r t p 和r t c p 配合使用,它们能以有效的反馈和最小的开销使传输效率最 佳化,因而特别适合传送网上的实时数据。 一个标准的r t p 报文是由固定头和数据负载两部分构成的,如图2 1 所示: 图2 1r t p 报文格式 其中的固定头部分如图2 2 所示: 0123 012 34567890l2345678901234567890l + - - + 一+ 一+ 一+ - 4 - - + - - + 一+ 一+ 一+ 一+ 一+ - - + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ - + - - + - - 4 - - + 一+ - + - - + 一4 - - + - - + 一+ l v = 2 f p l x i c c p ti s e q u e n c en u m b e r i + 一+ 一+ 一+ 一+ 一+ + 一+ + 一+ 一+ 一+ 一+ 一+ 一4 - - + - 4 - - + - - + - + 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一+ 一4 - - + 一+ i t i m e s t a m p i + 一+ 一+ 一+ 一+ 一+ + + + 一+ 一+ 一+ + 一+ + + 一+ - 4 - - + 一+ 一+ 一+ + 一+ + 一+ + + 一+ 一+ 一+ 一+ 一+ s y n c h r o n i z a t i o ns o u r c e ( s s r c ) i d e n t i f i e ri + = + = + = + = + = + = + = + = + = + = + :+ :+ = + = + = + = + = + = + = + :+ = + = + = + = + = + = + = + = + = + = + = + = + fc o n t r i b u t i n gs o u r c e ( c s r c ) i d e n t i f i e r si i i + 一1 - 一+ 一一 0 4 一 + 一1 一 - 一4 - - + - - - i - - 一0 4 一 一0 一 + 一0 4 + 一_ 一卜+ 图2 - 2r t p 报文头结构 每个r t p 报文都有头1 2 字节。报文头中各项含义如下: 3 北京邮电大学硕士论文 版本号( v ) :2 比特 标识r t p 版本号。 填充标志( p ) :1 比特 若为l 表示r t p 报文的负载域中含有填充字节,这时负载域中最后一个字 节的值表示负载域中无用字节的数目。当某些封装算法需要数据块尺寸固定的传 输或低层协议封装多个r t p 报文时,需有填充字节使用。 c s r c 记数器( c c ) :4 比特 记录c s r c 标识的数目。c s r c 是成份源( c o n t r i b u t i n gs o u r c e ) 的标识。 标记( m ) :l 比特 标记( m a r k e r ) 位的具体含义由用户选用的轮廓文件所决定。该位往往被用来 标明连续码流中的某些特殊位置,如视频帧边界等。应用可以在选用的轮廓文件 中根据具体需求更改标记位所占用的比特位数。 扩展( x ) :l 比特 扩展位为1 表示固定报文头后附带一个报文头扩展,其格式如图2 3 所示。 前1 6 位内容由轮廓文件决定,主要用来标识不同的头扩展类型。这种方式可用 来传送那些独立于具体负载格式的应用信息。 d e f i n e db yp r o f il e ( 1 6b i t s ) l e n g t h h e a d e re x t e n s i o n 图2 - 3r t p 头扩展 负载类型( p t ) :7 比特 负载类型标识了r t p 报文负载域数据的格式,其具体取值和含义由所选用 的轮廓文件所决定。轮廓文件规定了默认的负载类型对应的负载格式。r t p 协议 还允许用户在一定的数值范围内( 9 6 1 2 7 ) 为特殊的数据编码方式动态地指定标 识符值。 序列号( s e q u e n c en u m b e r ) : 1 6 比特 序列号用来标识r t p 报文的顺序,用于接收方接收检验。序列号的值随r t p 报文的发送加l 递增。接收方据此可以做出判断。初始的序列号是一个随机数, 以防止恶意攻击。 时间戳( t u n es t a m p ) :3 2 比特 一般用来表示r t p 报文所带数据的采样时刻。用户也可以根据应用的需要 灵活地指定时间戳的取值,例如,时间戳的取值可以被用来表示r t p 报文的发 送时刻。时间间隔的选择必须能够充分表示同步的精度,即能用来评估时延的抖 动( 以每个视频帧为白j 隔是不够的) 。时钟的频率由以下几方面约定:负载及其 4 北京邮电大学硕士论文 轮廓文件,或负载格式,或非r t p 方式动态决定的负载格式。如果r t p 报文是 周期性产生,则可使用数据的取样周期,而不需系统时钟。比如对于固定码率的 音频流,时间戳以音频采样周期进行递增。如应用每1 6 0 取样从设备中取数据, 则时间戳每次增加1 6 0 。最初的时间戳是随机产生的,类似于序列号。如果几个 r t p 报文同时产生的话,它们可能会有相同的时间戳,这意味着它们之间有着同 步关系。连续的r t p 报文的时间戳不一定是递增的,这发生在数据不按照其抽 样顺序发送的情况下,( 例如m p e g 码流的i 帧数据) 。但是即使在这种情况下, 序列号也是递增的。 同步源标识( s s r c ) :3 2 比特 同步源标识用来唯一标识会话中的一个源,即不同源的r t p 码流含有不同 的s s r c 。即使那些码流是来自于同一个用户的相同媒体类型( 如都为音频流) 的源,其r t p 报文的s s r c 值也不相同。如果信源改变了源地址,相应的s s r c 也应改变。 成份源链表( c s r cl i s t ) :0 到1 5 项,每项3 2 比特。 标识负载中的成份数据标识。成份数据的数量用c c 字段标明。如果有超过 1 5 项的成份数据,则只有1 5 项被表示。 一个r t p 会话的参加者可能同时收到多个具有相同媒体类型的码流( 如多 个音频流) ,来自不同码流的r t p 报文有着不同的s s r c ( s y n c h r o n i z a t i o ns o u r c e ) 值,也就是说r t p 通过s s r c 来实现在一个会话中源自不同参加者的码流的逻 辑复用解复用功能。 2 2 流媒体技术 所谓流媒体是指采用流式传输的方式在i n t e r n e t 播放的媒体格式,如音频、视 频或多媒体文件。流媒体在播放前并不下载整个文件,只是将开始部分的内容存 入内存,在计算机中对数据包进行缓存并使媒体数据正确的输出。流媒体的数据 流随时传送随时播放,与传统单纯的下载方式相比,这种对多媒体文件边下载边播 放的流式传输方式不仅使启动延时大幅度地缩短,而且对系统缓存容量的需求也 大大降低,极大的减少用户等待的时间。 流媒体的出现 长期以来,由于受到网路带宽的限制,互联网上的数据都是以文字、图片之 类的静态内容为主,而那些音频、视频数据很难在网上发布,因为一般非压缩的 广播级品质视频需要1 6 0 m b p s 的网络带宽;非压缩c d 音质的音频则需要大约 2 8 m b p s 的网络带宽。网络带宽很难在短期内得到迅速提升,因此要实现网上音 频、视频传播就必须在传播文件本身下功夫,这样就出现了流媒体( s t r e a m i n g 5 北京邮电大学硕士论文 m e d i a ) 。所谓流媒体是指采用流式传输的方式在i n t e r n e t 播放的媒体格式,而流 式传输方式则是将整个视音频等多媒体文件经过特殊的压缩方式分成一个个压 缩包,由视频服务器向用户计算机连续、实时传送。 流媒体技术的开发创意是从传统的t c p i p 协议对通过网络传送信息的控制 方法中得到的。当我们通过t c p i p 协议下载文件时,服务器会按照一定的次序 将文件分成若干个独立的数据包,然后依次发送出去。而客户端的程序会将这些 数据包重新组装起来,最终形成和原来完全一样的完整的文件。这时候,我们就 可以对这个文件进行任何可能的操作了。流技术则不然。流技术能够按照特定的 顺序将文件发送出去,而播放程序则可以边接收数据边播放他们。 流媒体实现的关键技术流式传输 流式传输主要指通过网络传送媒体( 如视频、音频等) 的技术总称。 1 流式传输的方式 流式传输方式是指将动画、视音频等多媒体文件分成一个个压缩包,由视频 服务器向用户计算机连续、实时传送。在采用流式传输方式的系统中,用户不必 像非流式播放那样等到整个文件全部下载完毕后才能看到当中的内容,而是只需 经过几秒或几十秒的启动延时即可在用户的计算机上利用相应的播放器或其它 的硬件、软件对压缩的动画、视音频等流式多媒体文件解压后进行播放和观看, 多媒体文件的剩余部分将在后台继续下载。 2 流式传输的实现途径与过程 首先,多媒体数据必须进行预处理才能适合流式传输,这是因为目前的网络 带宽对多媒体巨大的数据流量来说还显得远远不够。预处理主要包括两方面:一 是降低质量;二是采用先进高效的压缩算法。 其次,流式传输的实现需要缓存。这是因为i n t e r n e t 是以包传输为基础进行 断续的异步传输。数据在传输中它们要被分解为许多包,由于网络是动态变化的, 各个包选择的路由可能不尽相同,故到达客户端的时间延迟也就不等。为此,使 用缓存系统来弥补延迟和抖动的影响,并保证数据包的顺序正确,从而使媒体数 据能连续输出,而不会因网络暂时拥塞使播放出现停顿。 再次,流式传输的实现需要合适的传输协议。由于t c p 需要较多的开销, 故不太适合传输实时数据。在流式传输的实现方案中,一般采用t c p 来传输控 制信息,而用r t p u d p 来传输实时声音和图像数据。 2 3d i r e c t s h o w 技术 d i r e c t s h o w 主要建立在c o m 技术之上,是微软提供的基于w i n d o w s 平台的 功能强大的多媒体技术开发体系,支持各种媒体类型的解码与回放。在 6 北京邮电大学硕士论文 d i r o c t s h o w 中,最基本的概念是过滤器( f i l t e r ) 。一个过滤器是一个c o m 对象, 它能够对数据流进行多种操作,如:读取、拷贝、压缩和写入文件等。每个过滤 器都有引脚( p i n ) ,引脚也是一个c o m 对象,过滤器之间通过引脚进行连接。 输入引脚负责将数据送入过滤其中,输出引脚负责将数据提供给下一级的过滤 器。d i r o c t s h o w 对多媒体数据的处理模型是多媒体数据流通过一系列由引脚相互 连接的过滤器,过滤器对数据流进行操作。引脚如下图所示: 丽剥然陬丽苁刊激 图2 - 4d i r e c t s h o w 框架 d i r e c t s h o w 提供了很多过滤器,大多数过滤器按照功能可以分为3 类:源 过滤器( s o u r c ef i l t e r ) 、转换过滤器( t r a n s f o n l lf i l t e r ) 和渲染过滤器( r e n d e r f i l t e r ) 。源过滤器从数据源获取数据,数据源可以是磁盘文件、i n t e m e t 服务器、 录像机和视频捕获卡等。转换过滤器对获取的数据流进行处理,例如视频流和音 频流的分离,视频流的解压缩,字幕的增加,图像效果的变换等。渲染过滤器主 要是把接收的多媒体数据流在硬件上进行回放或保存,d i r e c t s h o w 提供了多种 渲染过滤器,如d i r e c t s o u n d 的音频回放、m i d i 回放、全屏视频回放和写入文 件掣8 】【9 l 。除了d i r e e t s h o w 提供的过滤器外,我们可以根据规范自己开发所需的 过滤器,d i r e c t s h o ws d k 提供了相应的开发包,因此d i r e c t s h o w 对多媒体数 据的处理模型具有很强的开放性,这也是c o m 技术优越性的充分体现。 j 开发基于d i r e c t s h o w 系统的最核心的工作就是构造可以实现不同功能的 f i l t e r 的组合。过滤器的一种组合叫做过滤器图,应用程序创建一个称为过滤器 图管理器的c o m 对象,由它实现过滤器图的组织和连接功能。下图是基于 d i r e c t s h o w 开发程序的总体系统框架图。 7 北京邮电大学硕士论文 媒体源 图2 - 5 基于d i r e c t s h o w 开发程序的系统框架 2 4 前向纠错编码( f e c ) 媒体目标 前向纠错( f e c ) 技术是一种在目前通信系统中得到广泛应用的技术。前向 纠错是指发送端在要传输的数据中加入一定的冗余数据,生成特定的码;接收端 收到这些码后,通过译码不但能够自动检测错误,而且能够纠正错误。这种方法 具有较精确的差错恢复能力,并且处理开销较低。因此,对于实时性要求很强的 视频数据通信来说,前向纠错技术是一种非常好的保证传输服务质量的方法。 在目前基于口的分组网的视频传输系统中,一帧视频图像信息往往被分成 若干个m 分组包进行传输。这样,口分组包的丢失将严重影响视频图像帧的质 量。因此,对一帧视频图像的若干p 分组包进行前向误差校验处理,以此来恢 复丢失的或出现差错的p 分组包,从而保障视频传输的质量。在视频点播系统 中,我们采用前向纠错技术中的分组编码方法( b l o c kc o d i n g ) ,对一帧图像的k 个分组包生成一个或多个校验包。这样,帧图像共包括n 个分组包,其中包 含n k 个校验包。在图像传输系统的接收端,只要接收到n 个分组包中的任意 k 个分组包就可以再生出视频图像帧原来的k 个分组包数据,从而恢复出正确 的视频图像信息。 2 5h 2 6 4 标准简介 由国际电联my 厂r 和国际标准化组织i s o f i e c 联合制定的视频编码新标准 h 2 6 4 与其它己有视频编码标准一样,属于混合视频编码。它在吸收现有标准优 点的基础上,首次应用了多个视频编码界的理论和技术成果,从而获得了更高的 8 北京邮电大学硕士论文 编码效率,在网络适应性方面也大有改善。 2 5 1 h 2 “的结构 j v t 在开发h 2 6 4 视频编码规范的时候,为它设计了很广的应用层面。为了 增加灵活性和可扩展性,j 、,t 在结构上为h 2 6 4 定义了视频编码层( v c l ,v i d e o c o d i n gl a y e r ) 和网络适配层( n a l ,n c 疳w o r k a b s t r a s t i o nl a y e r ) 两层结构,如图2 - 6 所示。视频编码层主要规定如何有效地表示视频内容,即视频编码的问题;而网 络适配层主要负责为编码后的数据进行打包并提供头信息,以适应网络传输或者 媒体存储的需要。网络适配层把数据封装成为若干网络适配单元,这些网络适配 单元可以在现有的大部分网络中以包的形式传送。 封装于网络适配单元中的数据称为原始字节序列载荷( r a wb y t es e q u 饥 p a y l o a d s ) ,简称r b s p 。h 2 6 4 中的r b s p 主要有两种,一种为视频编码数据, 一种为控制数据。视频编码数据可以以片( 每个片由若干宏块组成) 为单位进行组 织,也可以对片进行数据分割。控制数据是指视频序列参数、图像参数等信息。 图2 - 6 h 2 6 4 分层结构 2 5 2 灵活的运动补偿技术 可变尺寸块、多参考帧和1 4 像素精度是h 2 6 4 运动补偿技术的三个新特征。 在h 2 6 4 中它所支持的运动补偿块大小从1 6 x 1 6 至u 4 x 4 亮度块大小其中有许 多种方式如图2 7 所示。 9 北京邮电大学硕士论文 子容龇功:嘲- 4 1 t l , 鼬i ,鼍一 图2 - 7 宏块及子宏块分割 每个1 6 x 1 6 的亮度宏块可以细分为4 种方式:1 6 x 1 6 、8 x 1 6 、1 6 x 8 、8 x 8 。每个 分割区域都是一个子宏块区域。其中8 x 8 模式的子宏块可以进一步划分为8 x 8 、 4 x 8 、8 x 4 、4 x 4 的小块。对于每个划分区域或子宏块都有一个独立的运动向量。 宏块的色度成分( c r 和c b ) 则为相应亮度的一半( 水平和垂直各一半) 。这种宏 块划分方式是为了提高宏块和子宏块的预测精度。多参考帧技术是指对于一幅待 编码图像,其可以有多个参考帧进行预测,同样提高了预测的精度,进而提高了 压缩效率。 在h 2 6 4 中,允许采用多个参考帧来进行运动补偿,这在很多自然场景的周 期变换以及镜头在两个场景中交替转换等情况下可以提高编码效率。在四种宏块 的编码模式中,每个1 6 x 1 6 块、1 6 x 8 块、8 x 1 6 块和8 x 8 块均可以采用不同的参 考帧。 2 5 3h 2 6 4 错误恢复工具 h 2 6 4 标准继承了以前视频编码标准中某些优秀的错误恢复工具,同时也改 进和创新了多种错误恢复工具,这使得h 2 6 4 具有很强的数据抗误码的健壮性, 从而保证了压缩视频网络传输的q o s 。h 2 6 4 的错误恢复工具包括:参数集 ( p a r a m e t e rs e t ) 、灵活的宏块排序( f m o ) 、数据分割( d a t ap a r t i t i o n ) 、冗 余片( r e s i d u a ls l i c e ) 和帧内编码( i n t r ac o d e ) 。 1 参数集 对于压缩视频流,如果在传输过程中一些关键信息比特丢失( 比如序列和图 像头的信息) 将会造成解码的严重负面效应。而h 2 6 4 标准把这些关键信息分离出 来,凭借参数集的设计,确保在易错的环境中正确传输它们。这种码流结构无疑增 加了码流传输的抗差错能力。 参数集是图像序列或者图像中很少变化的信息,用于大量n a l 单元的解码,共 1 0 田田日日 北京邮电大学硕士论文 分为两种类型:序列参数集( s p $ ) 和图像参数集( p p s ) 。s p s 包括了一个图像序列 的所有公用信息,作用于一串连续的视频图像,即视频序列。而p p s 包括了一个图 像所有分片的公用信息,作用于视频序列中的一个或多个独立的图像。图像参数 集本身也要使用和参考序列参数集中的参数。多个不同的参数集存储在解码器中, 解码器通过参考每个已编码片的片头来选择使用恰当的参数集。 在差错信道中,对序列的参数和图像的参数进行重点保护才能很好地增强 h 2 6 4 错误隐藏性能而使用参数集的关键是保证参数集及时可靠地到达解码器。 h 2 6 4 标准的参数集机制将一个序列或者一幅图像的公用信息提取出来,不但减 少了重复参数的传输而且便于采用带外信道或者可靠的信道来传输这些重要的 信息。 2 数据分割 通常情况下,一个宏块的数据是存放在一起而组成片的,数据分割使得一个 片中的宏块数据重新组合,把宏块语义相关的数据组成一个划分。 在h 2 6 4 中有a 、b 、c 三类数据分割。a 类包括片中宏块的类型,量化参数和 运动失量,是片中最重要的信息。如果该数据丢失,即使其他类型的数据分割被 正确接受也将不可能对码流解码。因此,a 类数据分割因被赋予最大程度的保护; b 类包含帧内c b p s 和帧内系数,该类型数据结合a 类数据可以解出帧内宏块。相对 于帧间c b p s 和帧间系数,通常比前两类分割要大得多。该类数据分割重要性最低。 解码端若获得所有的分割,就可以完整重构片。而如果解码器发现b 类或c 类数据 分割丢失,可用的a 类数据仍然能用来提高错误隐藏效果,而仅仅丢失了部分细 节信息。 3 f m o 灵活宏块排序( f m o ,f l e x i b l em a c r o b l o c ko r d e r i n g ) 是h 2 6 4 的一大特色, 适用于h 2 6 4 的基本档次和扩展档次。f m o 通过宏块分配映射技术,把每个宏块 分配到不按光栅扫描顺序排列的各个片中。图像内部的预测机制,例如帧内预测 或矢量预测,仅允许采用同一个片组里的空间相邻的宏块。这样就有效避免了因 预测带来的错误扩散。 4 冗余片 h 2 6 4 中的参考图像的选择与以前在h 2 6 3 种一样。在基于反馈的系统中, 解码器接收到丢失或被破坏的图像信息时,选择参考图像序列中正确的参考宏 块,来进行错误恢复;而对于无反馈的系统,h 2 6 4 提出了冗余分片编码。 冗余分片允许编码器在同一个码流中添加同一m b 的一个或更多冗余表示。 这些冗余片的编码参数与非冗余片的编码参数不同,例如主片可用低q p ( 高质 量) 来编码,而冗余信息可用高q p ( 低质量) 的方式来编码,这样质量粗糙一 北京邮电大学硕士论文 些但码率更低。解码器在重构时,首先使用主片,如果它可用就抛弃冗余片;而 如果主片( 比如因为分组丢失) 冗余片也能被用于重构。冗余片主要用于支持高 误码的移动环境。 5 帧内编码 帧间编码由于采用了预测方法而且具有很高的编码效率,但同时也对差错很 敏感。与之相比,帧内编码帧不以任何重建帧作为参考,可以有效防止错误扩散 问题。因此,h 2 6 4 也采用帧内编码宏块作为一种抗差错的手段,并较之以前标 准做了改进。在h 2 6 4 中,只包含帧内宏块的片有两种:帧内片和立即刷新片( i d i n s t a n t a n e o u sd e c o d i n gr e f r e s h ) 。 与以前标准不同的是,在h 2 6 4 标准中,帧内片中的宏块编码时可以参考帧 间的编码宏块。而采用预测的帧内编码比非预测的帧内编码有更好的编码效率, 但减少了帧内编码的重同步性能,可以通过设置限制帧内预测标记来恢复这一性 能。 i d r 片只存在于i d r 图像中,其中的宏块编码时只能采用帧内宏块作为参考。 i d r 图像在编解码视频序列中的作用是:解码完一幅i d r 图像后,立即将所有 的参考图像标示为“尚未用作参考 。并且解码顺序在其后的编码图像在解码时, 帧间预测将不参考该i d r 图像前面的任何图像。一般说来,每个视频序列的第 一幅图像一定是i d r 图像。 如果在视频序列的编码过程中,在一定时间间隔内插入i d r 图像,不仅能改 善解码端的视频重建质量,也会有效地抑制误码扩散。但是帧内方式编码压缩效 率相比帧间方式编码大大降低。也就是说通过引入帧内编码宏块的方法使压缩码 流获得的错误自恢复能力是以牺牲编码效率为的代价的。 1 2 北京邮电大学硕士论文 第三章视频点播系统客户端设计和开发 视频点播系统是以多媒体信息主要是视频信息的共享为目的,实现远程多媒 体信息在本地的播放。用户可以在客户端平台上以流媒体播放视频素材,其结构 示意图如图3 1 所示。系统采用c s 模型,为多用户系统。一台服务器为多个客 户端提供视频服务。 客户端 视频服务器 客户端 图3 - 1v o d 系统结构 在视频点播系统中,客户端为用户提供点播,观看节目的接口;客户端要下 载节目列表,向服务器发送点播请求,接收服务器发送的r t p 数据,将用户的 控制命令发送给服务器,并周期性的向服务器发送r t c p 报文反馈信道质量信 息。根据这些功能需求,我们设计出客户端层次结构,如下图所示: 图3 2 客户端层次结构 客户端主线程负责与服务器进行r t s p 通信;r t p 接收线程负责接收服务器 发送的r t p 数据包,进行f e c 解码然后放入客户端缓冲区中。视频解码播放线 1 3 北京邮电大学硕士论文 程:从缓冲区中读取数据并进行视频解码差错隐藏及播放。r t c p 发送线程:根 据接收到的r t p 包计算网络的丢包率,延时和抖动,生成r t c p 报文向服务器 发送。 图3 3 是客户端的功能模块图。包括信令交互模块、r t p 接受模块、f e c 解 码模块( 可选) 、视频解码播放模块、r t c p 模块。信令交互模块负责和服务器 交互信令,即接收和发送r t s p 报文。r t p 接受模块负责接收服务器发送的r t p 数据包。f e c 解码模块是可选模块,负责f e c 解码,即丢失包恢复。解码播放 模块采用了w i n d o w s 平台上的d i r e c t s h o w 技术进行解码播放。r t c p 模块根据 对接收到的r t p 数据包进行丢包率和时延等质量信息的统计,每5 秒钟将这些 统计到的实时质量信息通过r t c p 数据包发送给服务器。 数 收 质 l i 反馈 r t s p 上 t 信令交互i 王黑! 只j 叫盯c p 模块l i r 。 lr 帔收模块l 上 视频觯描放 模块 图3 - 3 客户端功能模块图 虚线左侧模块对应于客户端主进程,右侧对应于各个线程。 我们先简单阐述一下视频点播系统中所采用各种传输协议,然后再对客户端 主要模块的关键部分的设计开发进行详述,包括r t p 接收模块中的环型缓冲区、 r t p 排序、f e c 解码模块中的算法以及视频解码播放模块中的d i e r c t s h o wf i l t e r 的开发。 3 1 传输协议的应用 在服务器与客户端之间传输的数据包按照o s i 七层网络参考模型来划分,在 应用层主要分为承载视频数据的r t p 数据包、承载信令的r t s p 数据包和承载网 络质量反馈信息的r t c p 数据包。下文将介绍三个协议在v o d 系统中的应用。 3 1 1r t p 协议的应用 r t p ( r e a l - t i m et r a n s p o r tp r o t o c 0 1 ) 是用于h l t 锄e t 上针对多媒体数据流的一 1 4 北京邮电大学硕士论文 种传输协议。 在v o d 系统采用h 2 6 4 作为视频压缩格式,因此我们选用了标准r t p ( r f c 3 5 5 0 ) 的改进版本r t pp a y l o a df o r m a tf o rh 2 6 4v i d c o ( r f c 3 9 8 4 ) 。r f e 3 9 8 4 相 对于r f c 3 5 5 0 主要改进是在负载类型( p t ) 域,根据h 2 6 4 的n a l 单元中的 h a lu n i tt y p e 来填写对应的p t 域。 与以往的视频编码标准不同,h 2 6 4 标准从系统层面定义了视频编码层 ( v c l ,v i d e oc o d i n gl a y e r ) 和网络提取层( n a l ,n e t w o r ka b s t r a c t i o nl a y e r ) , 如下图所示。其中,视频编码层独立于网络,主要包括核心压缩引擎和块、宏块 和片的语法句法定义。网络提取层的主要功能是定义数据的封装格式,把v c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 第17课《夏天里的成长》(第二课时)(说课稿)六年级语文上册同步高效课堂系列(五四制)
- 2024年五年级英语上册 Unit 2 My week第一课时说课稿 人教PEP
- 吉林省长春九年级历史上册 活动科三:我看拿破仑说课稿 新人教版
- 古董典当质押借款合同模板
- 员工因个人原因辞职补偿及心理咨询服务协议
- 食堂员工权益保障与劳动纠纷处理协议
- 民用建筑工程施工阶段绿色施工及环保保密合同
- 教育培训咨询服务合同终止及学员权益保障协议
- 土地承包经营权延期及农业科技创新成果转化补充协议
- 2025年FIDIC合同条件体系的发展
- 2025年甘肃省公职人员考试时事政治考试试题(附含答案)
- 花岗岩铺设方案
- 2025年护理疼痛试题及答案
- 桥梁工程监理工作实施方案
- 年产5万吨氧化铁新材料(磁性材料及锂电材料)项目报告书
- 服装辅料基础知识培训
- 江苏南京2020-2023年中考满分作文53篇
- 2025-2026学年青岛版(五四制)(2024)小学科学三年级上册(全册)教学设计(附目录P230)
- 2025年电梯安全培训试题附答案
- 2025年职业技能鉴定考试(涂装工·高级/三级)历年参考题库含答案详解(5套)
- 国家事业单位招聘2025农业农村部国际交流服务中心招聘拟聘用人员笔试历年参考题库附带答案详解
评论
0/150
提交评论