资源描述
南 京 邮 电 大 学硕士学位论文摘要学科、专业:工学 信号与信息处理研 究 方 向:图像处理与多媒体通信题 目:P2P VOD系统中多描述视频编解码的应用与研究英 文 题 目:Research and application on Multiple Description Video Coding in P2P VOD system主 题 词:多描述编码 H.264 对等网络 视频点播Keywords: MDC H.264 P2P VOD南京邮电大学硕士学位论文 摘要毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日摘 要随着网络和多媒体技术的迅猛发展,宽带多媒体应用受到人们的广泛欢迎,P2P技术的引入使得大规模流媒体的部署和应用成为可能。然而,视频巨大的数据量对网络带宽的占用、网络服务质量、传输实时性等方面提出了更高要求。此外,现有接入网络的异构性导致的服务能力差异,以及用户随时加入或退出而造成的服务网络拓扑动态变化等问题给P2P流媒体系统的设计带来极大挑战,传统的生成单流的视频压缩技术已不能满足用户需求。多描述编码与分层编码都生成多个压缩子流,不同的是,分层编码的基本层数据丢失则增强层将毫无用处;而多描述编码生成的各个子描述地位相同,任一子流都能独立解码重建原始视频。多描述编码不仅能降低系统延时,还能使得视频的传输与现有网络基础架构更匹配。为此,本文作者首次将多描述编码应用于P2P VOD系统中。本文首先简要介绍了P2P流媒体的相关知识,研究了各种多描述编码算法,并分析这些算法的优势和局限性;其次,根据P2P VOD系统性能目标及现有网络状况,设计了视频图像空间亚采样加H.264编码的多描述编码方案,将标清格式的视频节目划分为4个码率低于ADSL上行链路带宽的子描述,以适应现有接入网络的异构性;再次,对开源的H.264编解码库进行测评,选择合适的开源库并进行二次开发,使用c语言在VC6.0平台上实现多描述编解码的各个模块;最后,选用不同题材的节目对多描述编码进行试验。试验结果表明,本文所设计实现的多描述视频编解码方案,易于实现、解码速度满足实时要求,且能在可接受的冗余度下恢复出标清分辨率(720576)较高质量的重建视频。关键词:多描述编码 H.264 对等网络 视频点播- 73 -AbstractWith the rapid development of network and multi-media technologies, the application of wide-band multi-media would be more and more popular with people. The introduction of P2P technology makes the large-scale deploy and application of streaming media possible. However, the huge quantity of video data demands better conditions in many aspects such as the use of network bandwidth, quality of service of network, real-time transmission. Besides, the difference between the access networks contributes to the difference between the ability of the service. And the dynamic change of the service network architecture which is caused by the join and leave action by users momentarily, challenges the design of steaming media system. The traditional video compression technology which generates the single stream could not meet with the users requirement any more. MDC and the Layered coding can both generate multiple streams, however, the basic layer data is essential in the Layered coding, if it is lost, the data of enhanced layer will be useless. While in MDC, each sub-stream is equal to each other and can reconstruct the original video. MDC can not only reduce system delay but can also better fit the translation of video with the internet infrastructure. Thus, this paper firstly apply MDC in P2P VOD system.This paper is organized as follows. First, this paper briefly introduces knowledge related with peer-to-peer streaming and MDC methods. Then, according to the Internt infrastructure and the system goal, MDC method for P2P VOD system composed of spatial sub-sampling and H.264 is proposed. Finally the experiments are carried out based on open H.264 sources X264 and p264.The experimental results show that the proposed MDC scheme is easy to implement, its decoding time can satisfy the real-time application, and can reconstruct standard definition video of 720*576 resolution with high quality.Key words: MDC H.264 P2P VOD南京邮电大学硕士学位论文 目录目 录第一章 绪论11.1 课题背景11.2 研究现状21.3 本文主要工作及组织安排4第二章 多描述P2P视频系统62.1 P2P流媒体相关技术62.1.1 流媒体技术62.1.2 P2P技术72.1.3 P2P流媒体主要应用92.2 多描述编码简介92.2.1 多描述编码的基本原理102.2.2 常用的多描述编码方法112.2.3 视频多描述编码存在的普遍问题142.3 多描述P2P视频系统152.3.1 多描述P2P视频传输系统152.3.2 多描述P2P视频系统性能优势162.4 本章小结17第三章 基于MDC的P2P VOD系统简介183.1 城域网现状183.2 系统性能指标193.3 系统架构及关键机制193.3.1 混合式P2P网络结构193.3.2视频多描述编码213.3.3 流搜索/协商/传输机制213.3.4 缓存机制223.3.5 网络实体223.4 媒体流在系统中的运作流程243.4.1 媒体制作243.4.2 媒体发布243.4.3 媒体接收273.5 本章小结27第四章 多描述视频编解码方案设计284.1 多描述视频编解码方案设计284.1.1 子描述数目的确定284.1.2 多描述编码算法284.2 YUV图像格式简介294.2.1 YUV主要采样格式304.2.2 YUV存储格式314.3 H.264标准简介324.3.1 H.264的特征324.3.2 H.264的档次334.3.3 H.264的编码数据格式334.4 本章小结35第五章 多描述视频编解码的实现365.1 H.264开源编解码器选择365.1.1 H.264开源编码器选择365.1.2 H.264开源解码器选择375.2 多描述视频编码实现395.2.1 子流划分395.2.2H.264编码415.2.3 X264码流分析425.3 多描述视频解码实现435.3.1 接口参数定义445.3.2 数据可用性验证455.3.2 网络丢包处理465.3.3 p264 decoder二次开发475.3.4 图像重建485.4 本章小结51第六章 试验结果及分析526.1 试验环境介绍526.1.1 开发及测试环境526.1.2 测试节目源526.2 试验结果分析536.2.1 多描述冗余度测试536.2.2 重建图像质量测试546.2.3 多描述解码时间测试576.3 本章小结58总结59参考文献61致谢64作者攻读硕士期间参加的科研项目和发表的论文65南京邮电大学硕士学位论文 第一章 绪论 第一章 绪论1.1 课题背景随着通信技术、数字视频技术的发展和网络基础设施建设的日益完善,传统的基于文本和图片浏览的Internet服务已逐渐被以音视频为主体的网络多媒体服务所取代,标志着多媒体时代的到来。流媒体12(Streaming Media)以音视频数据流的方式在网络上传递多媒体信息,用户可以边播放边下载所需的音视频服务而不必等待所有的数据下载到本地。因此,以影视服务为主的宽带流媒体服务受到人们的欢迎,现在人们已经越来越习惯在网络上收听在线音乐、收看在线电视和视频节目,甚至通过网络进行视频聊天。流媒体应用作为未来高速网络的主流应用的趋势已经越来越明确,P2P34(peer-to-peer,对等网络)技术的出现使得大规模流媒体系统的部署成为可能。与传统的C/S模式的流媒体系统不同,P2P流媒体系统中每一个节点的地位相同,具备客户端和服务器的双重特性:既充当服务器为其他节点服务,又充当客户机享用其他节点提供的服务,从而减少甚至是克服了对中心服务器的依赖,能够避免因为过度依赖服务器而产生的服务瓶颈。此外,随着网络中对等体数量的不断增加,网络所能提供的资源越来越丰富,性能也越来越强,能够有效地利用网络上大量闲置的资源,消除信息孤岛、增强互联网的分布和共享。基于以上优势,近年来P2P流媒体发展迅速。1998年,国际上第一个利用P2P技术实现大规模流媒体点播和直播的系统Webcast出现,此后各种原型系统、高度可扩展的应用层多播协议纷纷涌现。2004年5月欧洲杯期间,香港科技大学张欣研博士开发的CoolStreaming原型系统在Planetlab网上试用获得成功,标志P2P直播技术进入准商业运作阶段。此后,中国流媒体直播技术和业务发展迅速,在世界上独树一帜,目前有10多个网站使用各自发展的软件提供P2P流媒体直播业务,主要有:PPLive网络,PPStream网络,QQ直播网络(已与新版QQ进行了捆绑), 猫眼网络电视(猫扑网),TVKoo网络(沸点网络电视),Rox磊客网等。一些电信运营商也开始加入这一潮流,贵州网通采用上海网用公司的技术开展实验运营,上海电信也在实验。可以说,P2P流媒体已经获得初步成功,开始迈入大规模商业运作阶段。但是,视频巨大的数据量对网络带宽的占用、网络服务质量、传输实时性等方面提出了更高的要求。一方面,需要高压缩率的音/视频编码技术,在保证一定音/视频质量的前提下使得媒体流的码流速率尽量低,以减少对网络带宽的占用。另一方面,流媒体文件需要在网络上实时传输,必须考虑传输中数据丢失对解码重建质量的影响。此外,P2P技术的引入也使得多媒体数据流的分发、传输设计变得更加复杂。1.2 研究现状在P2P流媒体中,引入了应用层组播5(ALM: Application Layer Multicast)的概念,即将服务器和参与服务的节点组织成组播组,通过组播组中节点之间建立的P2P覆盖网络(Overlay Network)来传送数据。ALM无需更改网络协议和网络设备的配置,在客户机间复制数据并沿逻辑链路转发,即可在客户间建立一个叠加在IP网络上,实现组播业务逻辑功能的网络。为此,目前基于P2P的视频系统大多采用应用层组播的方式,每个用户(组播树上的一个节点)从自己的父节点处获得完整的视频流进行收看,同时向下游的儿子节点转发视频数据,见图1-1。图1-1 常见的P2P多播树模型在这种方式的传输中,由于组播树中的每个peer节点都要能够为其他节点提供服务,对网络I/O带宽有较高要求。然而,由于用户接入方式的不同,各个peer节点所能提供的带宽通常存在着很大的差异性。在某些用户接入方式下ALM工作不太理想,如ADSL用户,上行带宽仅512kbps,不能支持一个完整的码率高于512kbps的视频流的传送。为了兼顾低带宽用户,目前P2P视频系统播放的电视节目的码率一般为300500 kb/s,接近VCD的画面质量,这样不仅影响了用户的视觉体验,还造成其他高速接入用户的资源浪费。对于更高码率的视频,常常需要多个节点同时对一个节点服务,造成数据的极大冗余。此外,P2P流媒体系统中,用户随时可能加入或退出服务。当组播树上的某个节点,特别是位于上层的节点由于断电、发生故障或结束观看而退出系统时,其服务的子节点将受到影响。系统需要从其他节点处查找需要的视频流来代替退出的节点,而这需要一定的时间且存在难度,被服务用户可能出现停止播放等现象。可见,传统的生成单流的视频编码技术已经远远不能满足用户的需要,成为系统性能的“瓶颈”。为此,人们尝试将生成多流的编码技术应用于P2P流媒体系统,主要有可分层编码和多描述编码两种。可分层编码6是将原始的视频流压缩成一个基本流和多个增强流,基本流可以被单独解码,提供最基本的视频质量,增强流解码后叠加在基本流上,可以提供更好的视频质量。这样,在P2P系统中,低带宽的用户可以为其他节点提供基本层数据,以减少对带宽资源的利用;而高带宽的用户,可以同时提供基本流和增强流以充分利用网络资源,为其他用户提供高码率高质量的码流。美国奥利根大学研究的PALS7自适应分层媒体流框架就利用了媒体流的分层编码技术。然而,基本层数据丢失时,增强层的比特流将毫无用处。为此,可采用纠错机制来保证部分数据,特别是基本层数据的正确传输,但这种方法或不便实现或代价太高;也可以利用ARQ 协议重传来保证数据的无误传输,但由此造成的延时可能是实时传输中难以接受的。多描述编码8(MDC: Multiple Description Coding)的基本思想是将原视频信号分解成多个同等重要、可独立解码的流,每个流称为一个描述。不同的描述之间存在一定的相关性,任何一个描述都能独立解码生成质量可接受的重建视频,而随着描述的增加,重建的视频质量也随之提高。与可分层编码相似,在基于多描述编码的P2P流媒体系统中,低带宽用户可以提供一个或多个子描述,为其他用户提供一定质量的节目;而高带宽用户可以提供多个甚至所有的子描述,从而提供更高质量的码流。与可分层编码不同的是,多描述编码系统中的每个子描述同等重要且都能独立解码,单个子描述的丢失不会影响其他子描述,提高了系统的稳健性。另一方面,采用多源多通道的方式传输各个子描述,被服务节点同时接收来自不同父节点的不同子描述,当组播树中的某个父节点退出时,只会影响到部分子描述,被服务节点可以利用其他父节点提供的子描述保证视频的流畅播放,从而提高了系统的抗网络波动性。此外,多描述编码技术在部分描述丢失的情况下仍可重建出质量可接受的视频图像,不需要重传丢失帧,大大降低了延时,适合于实时视频传输;采用不同的路径传输各个子描述,由于各网络通道的丢包情况不尽相同,同时发生丢包的概率大大减小,从而提高了对网络视频传输错误的容错性。可见,多描述编码不仅能降低系统延时提高系统的抗传输差错性,还能很好地适应网络服务能力的差异及服务网络拓扑动态变化性,从而提高了P2P流媒体系统的性能;而P2P平台天生的多通道特性也能使多描述编码更有效地发挥作用。因此,国内外学者及机构开始对多描述编码在P2P系统中的应用展开研究,给出部分模型及仿真结果9。然而,目前将多描述编码技术应用于实际的P2P流媒体系统还处于起步阶段,这主要是因为目前对于多描述编码的研究大多集中在理论领域,大多数的多描述编码方案算法复杂度高实用性差。此外,还需要考虑到多描述编码带来的冗余、描述数目、解码实时性等实际因素对系统性能的影响。如何在现有的Internet条件下,利用合理的多描述编码方案部署高效的P2P流媒体系统是当前的研究热点,也是本文的主要关注点。1.3 本文主要工作及组织安排本文课题来源于校企合作项目,主要针对特定的流媒体应用视频点播,结合P2P技术及多描述编码技术,开发出运营于现有城域网基础架构的P2P VOD(Video-on-demand,视频点播)原型系统。本文主要关注多描述视频编解码技术在P2P VOD系统中的应用,主要内容包括:根据系统的性能需求,从工程应用的角度设计多描述编解码方案,介绍相关知识;在VC平台下实现,包括H.264开源编解码器的测评,多描述视频编解码各个模块的实现;最后给出多描述编码冗余度、视频重建质量、解码速度的结果及分析。本文共分六章,内容组织如下:第一章绪论部分,介绍本文的课题背景;第二章简要介绍了P2P流媒体相关技术及主要应用,重点介绍了多描述编码,包括其基本原理、常用算法及存在问题,最后给出基于多描述编码视频系统模型,并指出其相对于单描述视频系统的性能优势;第三章介绍本文课题所设计的P2P VOD系统,包括系统网络构架及关键机制,详细介绍了多描述媒体流在系统中的运作流程;第四章多描述视频编解码方案设计,包括子描述个数、多描述算法,介绍了与方案相关的YUV及H.264编码的相关知识;第五章多描述视频编解码的实现,包括H.264开源编解码器的评测,多描述编解码各个模块的实现;第六章给出多描述算法冗余度、重建图像质量、解码运行速度的实测结果及分析;最后对论文工作进行了总结,并提出下一步工作的方向。南京邮电大学硕士研究生学位论文 第二章 多描述P2P视频第二章 多描述P2P视频系统对等网络流媒体系统基于流媒体技术和P2P技术,流媒体技术涉及到媒体数据的采集、流传输和播放,P2P技术涉及到P2P平台及路由协议。多描述编码不仅能降低系统延时,还能使得视频的传输与现有网络基础架构更匹配。本章对相关知识进行简要介绍。2.1 P2P流媒体相关技术2.1.1 流媒体技术流媒体(Streaming Media) 又叫流式媒体,是指用户通过网络或者特定数字信道边下载边播放媒体数据的一种工作方式。流媒体技术出现之前,多媒体文件需要从服务器上下载后才能播放,由于一般多媒体文件都比较大,下载整个文件需要很长的时间,限制了人们使用多媒体数据在网上的交流。流媒体应用的一个最大好处是用户不需要花费很长时间将数据全部下载到本地才能播放,而只需要将起始几秒的数据先下载到本地的缓冲区中就可以开始播放,然后边下载边播放。随着网络音视频数据交流需求的急剧增加,流媒体技术的应用和研究近年来得到了迅速发展。流媒体在Internet上传输需要合适的传输协议,IETF(Internet工程任务组)已设计出的主要几种支持流媒体传输的协议有:实时传输控制协议RTP/RTCP、实时流协议RTSP、资源预留协议RSVP。在实时流式传输的实现方案中,一般采用RTSP/TCP来传输控制信息,而用RTP/UDP来传输实时媒体数据。实时传输控制协议RTP 10 (Real-time Transport Protocol)为交互式音频、视频等具有实时特征的数据提供端到端的传送服务,如果底层网络支持多播,RTP还可使用多播同时向多个目的端点发送数据。RTP协议包含两个密切相关的部分,即实时传输协议RTP和实时传输控制协议RTCP(Real-time Transport Control Protocol)。RTP负责传送具有实时特征的多媒体数据,在RTP数据包的头部中包含了一些标识字段使接收端能够对收到的数据包恢复发送时的定时关系和进行正确的排序以及统计包丢失率等。RTCP是RTP的控制协议,负责反馈控制、监测QoS(服务质量)和传递相关信息,它周期性地与所有会话的参与者进行通信,并采用和传送数据包相同的机制来发送控制包。值得注意的是,RTP协议本身并不提供任何QoS,必须由下层网络来保证。但是通过RTCP控制包可以为应用程序动态提供网络的当前信息,据此可对RTP的数据收发作相应调整使之最大限度地利用网络资源。实时流控制协议RTSP11(Real-time Streaming Protocol)用于定义一对多的应用程序如何有效地通过IP网络传送多媒体数据。它的主要功能是定义流媒体会话过程中的消息控制及处理,提供VCR(Video Cassette Recorder)操作,如停止、暂停、继续、快进、快退等。RTSP协议是应用层协议,既可以采用TCP协议传输也可以采用UDP协议传输,为了保证控制的可靠性,一般将RTSP协议构建于TCP协议之上。2.1.2 P2P技术P2P即Peer-to-Peer,称为对等连接或对等网络,是指不同系统之间通过直接交换,实现计算机资源和服务共享的一种应用模式。P2P模式与传统客户/服务器模式的关键区别在于Peer与Peer在通信过程中,可以摒弃服务器的角色,完成一种直接通信,获取共享资源或服务。在P2P系统中,每一个Peer都是平等的参与者,承担服务使用者和服务提供者两种角色。资源的所有权和控制权被分散到网络的每一个节点中。服务使用者和服务提供者之间进行直接通信,可充分利用网络带宽,减少网络的拥塞状况,使得资源的有效利用率大大提高。P2P网络存在三种不同的结构12 (如图2-1所示):集中式P2P有一个中心服务器负责记录共享信息以及响应对这些信息的查询,每一个对等实体对它共享的信息和通信行为负责,根据需要下载其它对等实体上的信息。分布式P2P是一种纯P2P模式1314,这种形式不需要有中心服务器和中心路由器,其上的每一个节点都作为对等实体,地位是完全平等的,每一个节点既可以作为客户机又可以作为服务器。混合式P2P结合了集中式和分布式P2P的优点,在设计思想和处理能力上都得到进一步优化。它在分布式模式基础上,将用户节点按能力进行分类,使某些节点担任部分管理的任务,成为局部网络的普通节点文件索引的管理者。图2-1 P2P 网络结构综上所述,P2P网络具有如下特点:1) 非中心化(Decentralization):网络中的资源和服务分散在所有节点上,信息的传输和服务的实现都可以直接在节点之间进行,无需中间环节和服务器的介入,避免了可能的瓶颈。P2P的非中心化基本特点,带来了其在可扩展性、健壮性等方面的优势。2) 可扩展性:在P2P网络中,随着用户的加入,不仅服务的需求增加了,系统整体的资源和服务能力也在同步地扩充,能较容易地满足用户的需要。理论上其可扩展性几乎可以认为是无限的。3) 健壮性:P2P架构天生具有耐攻击、高容错的优点。由于服务是分散在各个节点之间进行的,部分节点遭到破坏时对其可提供的服务影响很小。P2P网络通常都是以自组织的方式建立起来的,允许节点自由地加入和离开,且在部分节点失效时能够自动调整整体拓扑以保持其它节点的连通性。4) 高性能/价格比:性能优势是P2P被广泛关注的一个重要原因。随着硬件技术的发展,个人计算机的计算和存储能力以及网络带宽等性能依照摩尔定理高速增长。采用P2P架构可以有效地利用互联网中散布的大量普通节点,将计算任务或存储资料分布到所有节点上,利用其中闲置的计算能力或存储空间,达到高性能计算和海量存储的目的。5) 隐私保护:在P2P网络中,由于信息的传输分散在各节点之间进行而无需经过某个集中环节,用户的隐私信息被窃听和泄漏的可能性大大缩小。此外,目前解决Internet隐私问题主要采用中继转发的技术方法,从而将通信的参与者隐藏在众多的网络实体之中。在传统的一些匿名通信系统中,实现这一机制依赖于某些中继服务器节点。而在P2P中,所有参与者都可以提供中继转发的功能,因而大大提高了匿名通讯的灵活性和可靠性,能够为用户提供更好的隐私保护。6) 负载均衡: P2P网络环境下由于每个节点既是服务器又是客户机,减少了对传统C/S结构服务器计算能力、存储能力的要求,同时因为资源分布在多个节点,更好的实现了整个网络的负载均衡。2.1.3 P2P流媒体主要应用P2P流媒体技术打破了传统的客户/服务器模式,使服务分散化,从而减轻了服务器的负载并支持更大范围流媒体发布。目前,P2P流媒体的最常见应用为:P2P视频直播(Living Media)和P2P视频点播(VOD,Video on demand)。1)P2P视频直播网络直播是一种借助计算机网络的现场直播,而传统的电视直播借助的是电视有线网络或者无线电。P2P直播系统进行网络直播时,首先将现场节目通过视频采集卡和声卡输入到压缩工作站中,然后压缩工作站根据预先设置的时间进行采集、编码、压缩,并将音视频流传输到服务器上,用户可以通过WEB方式或者应用程序客户端方式查询直播节目并点击观看。P2P直播不支持VCR操作,因此用户不可以随意选择播放的进度和内容,只能按时间点来观看节目,用户也只能在频道之间进行选择。所以,P2P直播形式上更像是网络上的电视。2)P2P视频点播点播是当代网络技术、多媒体技术和计算机技术发展的产物,VOD改变了人们观看节目的被动地位,能够按照自己的意愿自由地点播,自由地控制节目进行暂停、前进、后退等VCR操作。与视频直播相比,视频点播为用户提供了更多的互操作性,其复杂度也远大于视频直播。2.2 多描述编码简介稳健的视频编码压缩方法是实时网络视频传输的关键,多描述编码是近年来兴起的一种新的面向不可靠信道传输的编码方法,与分层编码同属错误恢复范畴,即通过冗余信息使解码器具有一定的错误恢复能力。2.2.1 多描述编码的基本原理多描述编码可以理解成这样一个问题:在发端,一个信息源有多种描述形式,这些描述构成一个集合,接收端从集合的子集中尽可能的精确恢复出信息源。这与多用户信息论中的多址接入问题十分相似。实际上常把多描述编码抽象成多用户信息论的问题,很多多描述编码的理论结果直接来源于多用户信息论,或是用其中的方法、结论加上特定的条件推导得到。多描述编码的模型见图2-2:图2-2 多描述编码模型信源通过多描述编码器得到、多个描述,各描述通过独立的信道传送到解码端,解码器最少接收0个描述,最多接收n个描述,一共有-1种接收情况。显然接收到的描述数目不同,解码器能恢复的信源程度也不同,当所有描述都收到时,能最大限度地恢复信源,收到的描述少,恢复的效果要差一些。有关收到描述与信源失真之间的关系一直是多描述编码的难点,在理论上它等价于多用户的信息率失真问题,但在应用中不完全由理论指导实践,还要考虑算法复杂度、算法效率等实际问题。 在实时视频传输中,多描述编码作为保证传输可靠性的一种有效方法得到了应用。其基本思想是对同一视频内容采用多个描述,每个描述分别在独立的信道上传送,并且接收端根据每个描述都可以获得可接受的视频质量,同一视频的多个描述结合起来可以使视频质量得到增强,图2-3为两个描述情况下的多描述编码示意图。进行MDC编码的意义在于,如果一幅图像是通过多个独立的描述叠加合成的,那么,丢失其中的一个描述只是降低重建图像的质量,而不会终止整个解码过程。图2-3 两描述编码的框图为了保证从任一描述中都可以恢复出一定质量的视频,每个描述都必须包含足够多的视频信息,这意味着多描述编码方案要比一般的编码方案效率低。但是由于同一视频内容的所有描述在采用不同信道传输的过程中同时被破坏的概率非常小,因此与一般编码方法相比,这种编码方法虽然会降低压缩效率,但在传输时提高了可靠性。2.2.2 常用的多描述编码方法多描述编码可以从预测、量化、DCT变换、熵编码、信道编码等方面进行。目前已有的应用于静态图像和视频编码的多描述编码算法主要分为以下几类:1)基于量化的多描述编码;2)基于变换的多描述编码;3)基于空域或变换域的多描述编码;4)基于时域采样的多描述编码;5)基于空间亚采样的多描述编码等。在实际应用中主要是从编码冗余度、编码质量、编码复杂度、丢包复原能力、主观效果等方面考察算法的优劣。1)基于量化的多描述编码多描述量化的基本思想是:设计量化区间相互重叠的量化器(通常一个量化器的量化区间是另一个的平移),每个量化器量化原信号产生一个描述。对两个描述的多描述编码,收到一个描述时,相当于原信号经两倍的量化步长量化得到重建信号(粗量化),收到两个描述时则相当于使用原量化步长量化(精细量化)。这类方法包括多描述标量量化15、多描述矢量量化以及多描述格型量化16 17等。其中,Vaishampayan 提出的多描述标量量化方法(MDSQ)是多描述量化的经典方法,在图像多描述中得到成功应用。然而,该方法却不能直接应用于基于预测编码的视频多描述,主要是因为预测环是基于先前的重建信号,而每个描述的重建信号未必相同,这违背了多描述的基本假设即相同信号被映射到不同的描述。因此,Vaishampayan在文献18中通过在两个边预测环上增加额外的量化器将MDSQ扩展到了多描述视频编码中,且Regunathan等对此进行了改进19。总的来说,这类方法的主要问题在于冗余度较高。因此,如何设计出比较好的量化过程,既不产生很大的冗余,又能够达到理想的效果成为关键。2)基于变换的多描述编码在压缩编码中,变换的作用是去相关。但在基于变换的多描述编码中,信源被编码成多个描述,若要从其他描述中恢复出丢失的描述就需要这些描述之间具有一定的相关性,因此这里的变换是为了使各个描述之间具有相关性。多描述变换编码可被认为是针对于删除信道的一种联合信源信道的编码技术,它的基本思想是通过变换在多个描述之间引入相关,这样丢失的数据便可以从接收的数据中估计出来。它与多描述量化的不同在于,冗余的引入是通过相关变换来实现的,而多描述量化中的冗余是通过量化而引入的。基于对相关变换PCT(Pairwise Correlating Transform)的多描述编码是其中较为常见的一类,文献20中将预测误差编码到两个描述中,并且为解决误匹配问题,把中央预测和边沿预测之间的误匹配信号也部分编码到每个描述中。该方法的对相关变换表示为 ,其中,和分别为预测误差的DCT系数对。文献21的方法和文献20相似,也是利用相关编换PCT对I帧和预测误差帧的DCT系数进行变换引入冗余,只是系数配对的方法有所不同。这类方法的优点在于总冗余度可由PCT参数和误匹配信号量化步长所控制,缺点主要是产生质量可接受的视频信号,其信号冗余度过大。3)基于空域或变换域的多描述编码这类方法主要是在变换域将变换系数交替送入多路描述来实现多描述编码,其中最重要的一些系数送入每一路描述,或是借助重叠块运动补偿技术生成一个具有很强相关性的运动矢量场,并对运动矢量场和残差信号场同时采用多描述编码。文献22提出了一种简单的与H.263 兼容的多描述视频编码方案,每个描述可由标准H.263 解码器解码。其基本思路如下:对帧内不同的DCT 系数块,采用不同的阈值进行判断,若非零系数大于该阈值,则两个描述中都包含该系数,反之对小于阈值的非零系数则根据其幅值选择出现在某一描述中。该方法在高冗余度下性能较好,但低冗余度下性能欠佳。4)基于运动矢量的多描述编码这类方法利用重叠块运动补偿来引入冗余,将运动矢量信息包含在不同的描述之中。文献23中将每帧视频图像划分为88的块,但运动矢量是以1616宏块进行运动估计,然后对运动矢量按梅花阵列进行次采样分成两个粗糙的场,这两个场通过不同的信道传输到解码器。解码器使用重叠块运动补偿技术,根据信道情况提供不同的运动补偿的预测图像。该方法冗余度低,但存在误匹配累积问题。图2-4梅花形抽样基于运动矢量的多描述编码要解决的主要问题是当某个描述丢失时,如何从已收到的描述中恢复出丢失的运动矢量。5)基于运动补偿的多描述编码这类方法24252627是多描述编码的研究热点所在,其基本思想是采用高阶预测来增强描述之间的相关性,然后将编码得到的数据打上奇帧或是偶帧的标记,平均分配到不同的描述中。为避免产生由于编解码器预测所用参考帧不一致而造成的解码图像信号质量下降问题,需另外设置边沿预测器。这类方法中,预测器和误匹配错误量化器可以控制编码冗余度,以适应信道状况的变换。但在描述数增加时,解码端的复杂度将显著提高。6)基于时域采样的多描述编码这类方法主要是利用视频序列间的时间相关性进行编码。最简单的做法28是将视频流按奇数帧和偶数帧分解为两个描述,每个描述采用独立的预测环,即奇数帧(或偶数帧)用其前面重建的奇数帧(或偶数帧)进行预测。该方法冗余度固定,但时间预测距离太长。7) 基于空间亚采样的多描述编码通过空间亚采样来得到多幅子图像,然后对这多幅子图像进行独立的预测编码,是最简单直接的多描述视频编码方案29。在对图像进行亚采样之后,相邻象素间的相关性降低,在进行独立的预测编码时,其运动补偿的效率将大为下降。为此,可以采用基于棋盘分割插值的多描述编码30,借助一些成熟的图像修复技术,将输入图像按照棋盘模式分割并插值成两路相同分辨率的近似图像,再对这两路图像进行独立的运动预测、补偿和编码。2.2.3 视频多描述编码存在的普遍问题无论是采用何种方式的视频多描述编码,面临的普遍问题在于:1)发生丢包时,编码端和解码端的参考帧将会不一致(基于空间亚采样的方法除外);2)冗余。解决第一个问题的方法通常是在编码端模拟出解码端可能遇到的各种情况,如图2-5所示。其中,X表示输入的原始数据,表示当两个描述都收到时恢复出的数据,表示只收到一个描述时恢复出来的数据,表示两个描述都收到时当前帧与重建的当前帧的预测误差,、表示只收到一个描述时当前帧与重建的当前帧的预测误差,虽然都是当前帧的重建帧,但是与、之间存在着差异,用( i=1、2)表示它们之间存在的差异,称之为不匹配信息。往往根据实际需要对采用不同的处理方式,通常有两种处理方式:让所包含的全部信息成为描述中的内容或者只提取出中的某些重要信息成为描述中的内容。图 2-5 编码端模拟解码端可能遇到的所有情况视频多描述编码带来的另一个问题是冗余,从上图可看出,冗余主要来自。当两个描述都收到时,这部分信息是不发挥作用的。控制冗余的方法也很多,比如编码中的重要信息、调整量化步长等。2.3 多描述P2P视频系统2.3.1 多描述P2P视频传输系统多描述视频编码技术与P2P多路径技术结合可以在丢包网络中提供可靠的视频通信31,图2-6给出了一种将多描述视频编码技术与多路径技术结合的可靠视频传输系统。该系统包括两部分:多描述视频编解码子系统和多路径传输子系统。多描述视频编解码子系统主要解决差错传播的问题,多路径传输子系统主要是将数据包通过不同的路径传输。其中,多描述编解码子系统具备以下特点,只要有一个流正确接收,就可以解码,同时结合其他已被部分破坏的流中的正确信息恢复出破坏的流。多路径传输子系统提高了正确接收流的概率。图 2-6 多描述视频传输系统设计该系统时要考虑两个主要问题:1)编码端应将视频编码成几个描述;2)传输时应采用几条路径。显然,描述越多,解码端解码的可能性就越大,但同时还要考虑到编码效率的问题,目前算法大都采用两个描述。至于采用几条路径传输才恰当,这个问题比较复杂,随着传输路径增多,通信中断率不断下降,传输质量更加稳定,但是同时网络也变得更加复杂。2.3.2 多描述P2P视频系统性能优势与传统的基于单流的P2P 视频系统相比,基于多描述编码的P2P 视频系统在性能上有如下优势:1) 有效对抗网络丢包在基于包交换的通信系统中,由于网络拥塞等原因造成的包丢失是不可避免的,如何提高音视频信号在网络中传输质量变得越来越重要。传统的压缩编码加纠错机制要么不便实现要么造成很大的延时。而对视频数据进行多描述编码,生成多个相互独立可解码的子描述,并采用不同的通道进行传输。接收端收到任一描述都能够生成质量可接受的重建视频,且由于各个信道互不相关,所有描述丢失的概率远小于单个描述丢失的概率,这就大大提高了抗传输差错性。2)降低系统时延与基于单流的P2P系统相比,多描述编码方案在网络发生丢包的情况下不进行重传,而是利用接收到的部分描述生成质量可接受的重建视频,大大降低了网络时延。3) 网络异构性在目前的网络架构中,用户可能通过以太网、ADSL、无线网络等多种方式接入Internet,其中,ADSL的网络带宽具有不对称性,上行链路远低于下行链路带宽。P2P系统中要求各个Peer节点或多或少地具备向其他用户提供服务的能力。采用适当的多描述编码方案,使得每个描述的码率低于上行链路带宽,而所有描述的总码率低于下行链路带宽。这样可以降低对上行带宽的要求,以确保单个ADSL用户至少能够提供一个描述,而高带宽用户可根据需要传输多个甚至全部的子描述,从而充分利用网络资源。4) 降低服务负载对原视频数据进行多描述编码,将生成的多个描述分散到多个服务节点,新加入的用户可以从多个服务节点获得所需的描述,从而避免了对单个服务节点的集中访问,大大提高了服务负载能力。5) P2P服务网络拓扑的动态性节点频繁地加入或退出服务在P2P系统中很常见,在基于多描述的P2P流媒体系统中,当一个服务节点失去作用,仅导致单个描述暂时的丢失,接受服务的节点仍可利用其余的描述重建音视频,从而大大降低了由于网络震荡造成的服务中断。6) 版权问题在基于多描述编码的P2P流媒体系统中,媒体数据的所有描述分散在网络中,除媒体服务器外,不大可能存储在同一个节点上,从而阻止了节点对媒体数据的非法访问。2.4 本章小结本章介绍基于多描述编码的P2P流媒体相关基础理论,简要介绍了流媒体和P2P技术,着重介绍多描述编码,常用的多描述编码方法,并给出基于多描述P2P视频传输系统模型及性能优势。这些理论将作为本文后续章节的基础。南京邮电大学硕士研究生学位论文 第三章 基于MDC的P2P VOD系统简介第三章 基于MDC的P2P VOD系统简介本文作者作为校企合作项目的参与者之一,完成的多描述编解码方案属于整个P2P VOD原型系统的一部分,此外还包括P2P平台的搭建,流搜索传输,缓存管理、音视频同步播放等方面的内容,为此本章对整个基于多描述编码的P2P VOD系统做宏观介绍,并给出媒体流在系统中的运作流程。3.1 城域网现状由于本项目实现的P2P VOD原型系统运营于城域网,本节首先对城域网现状做简要介绍。城域网作为开放型的综合网络平台,可实现话音、图像、数据、多媒体、IP接入等业务及各种增值、智能业务。它主要包括3个网络层次,分别为接入层、汇聚层和核心层。核心层和汇聚层采用高端路由器组网,提供强大的路由处理和流量的快速转发,支持业务隔离和用户隔离。接入层由业务接入控制点设备组成,包括宽带接入服务器(Bras)和业务接入路由器(SR)。Bras与路由器的区别在于Bras不仅有路由功能,还具有业务控制功能。目前业务接入路由器主要由三层交换机承担,在路由能力、多业务支持及业务处理能力方面尚显不足,所以现在的城域网大多采用Bras集中式设备对用户进行接入控制管理。图 3-1 城域网结构城域网中典型的宽带接入方式主要有ADSL和以太网两种。ADSL用户利用电信运营商的传统铜缆,通过ADSL Modem接入到局端的DSLAM设备,再通过二层接入设备接入到Bras。以太网用户通过楼道、小区、局端的以太网交换机接入到Bras,如图3-1所示。3.2 系统性能目标根据用户需求,项目最终实现的运行于城域网范围内的P2P VOD原型系统需满足以下性能要求:1) 能够在现有Internet条件下,为所有的终端用户提供标清(720576)的画面质量;2) 要求从用户点播节目开始到播放之前的初始延时小于1.5s,用户对节目进行前进、后退、暂停等操作后恢复播放的延时小于2秒;3) 能够有效地解决网络终端异构问题,既能充分利用高带宽用户的网络资源,也能使得ADSL用户具备一定的服务能力,使P2P网络有更多的贡献者;4) 对运营商来说,目前大部分P2P应用都是不可控、不可管理的。本文设计的P2P VOD系统需要充分考虑网络的可控、可管理性;5) 将数据缓存在内存中,不占用终端用户的硬盘空间。3.3 系统架构及关键机制为了达到系统的设计目标,我们结合城域网现状给出P2P VOD原型系统的设计方案,从P2P网络结构、音/视频编码、流搜索/协商/传输机制、缓存机制、网络实体等方面加以阐述。3.3.1 混合式P2P网络结构P2P系统中首先要解决的问题就是网络的组织问题,具体来讲,就是节点的发现模型和资源的定位机制。节点发现,就是应用程序中的对等点彼此定位以便相互之间可以交互的过程;资源定位,就是节点要完成某项任务,如何找到它所需要的资源。对这两个问题的实现方式,决定了网络的体系结构,目前P2P网络模型有集中式、分布式及混合式模型三种(详见2.1.1节)。在本项目的P2P VOD原型系统中,为了实现系统的可管理性,我们采用混合式P2P网络结构进行P2P平台部署,即在城域网的Bras上部署业务承载控制点功能Border。Border负责管理其连接的Bras域下的用户,它可与和其连接的Bras交互,完成节点的认证、计费、本地化调度等,也可与相邻的Border进行信息交互。可见,系统的P2P结构分成两个层次:客户端之间的P2P和业务承载调度点Border之间的P2P,如图3-2所示。图3-2 P2P 网络结构下层客户端之间的P2P采用集中目录式的网络结构,Border负责对域内的所有节点进行管理,负责维护Bras域内成员加入、离开信息及各成员所拥有资源信息,查询域内节点的服务能力,调度节点的服务能力等。同时Border还负责响应用户的数据源查询请求,为请求用户查找数据源。上层为业务承载调度点Border之间的P2P,互联的Border构成P2P Overlay,采用P2P路由算法进行内容发布和路由,当Border从本域查找不到数据源时,通过互联的Border查找其他域内用户作为数据源。每个Border发布本域总的服务能力。可见,这种P2P网络结构易于实现域内/域间双重搜索,有利于服务节点的快速定位,避免了泛洪式搜索的盲目性。3.3.2视频多描述编码音/视频编码是所有流媒体系统成功的关键技术之一,在P2P流媒体系统中,不仅要考虑音视频编码的压缩效率及传输实时性,系统中的客户端还需要具备为其他用户提供服务的能力。目前,国内超过70%的互联网用户是ADSL宽带用户,其余用户为以太网接入用户和少数其他用户。ADSL的上下行链路不对称,上行链路带宽仅512kbps。本系统设计的P2P VOD系统要求能为用户提供标清大小的视频节目,且要求ADSL用户也能具备一定的为其他用户服务的能力。对于标清格式的视频,如帧频为25fps,采用YUV420格式,则
展开阅读全文