




已阅读5页,还剩67页未读, 继续免费阅读
(通信与信息系统专业论文)iptv机顶盒中流媒体播放器的研究与设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
重庆邮电大学硕士论文摘要 摘要 论文是对应用于l t r r v 机顶盒的嵌入式流媒体播放器的研究与设计,提出了播 放器软件的设计方案并利用c 语言来实现,设计完成后的播放器软件能够支持m p e g 1 、m p e g - 2 、m p e g - 4 的解码功能。 该论文中i p t v 机顶盒采用m ms t b 0 2 5 0 0 作为主芯片,该芯片集成了p o w e r p c4 0 5 处理器,同时内嵌了m p e g - 1 、m p e g - 2 解码芯片,但不具备e g - 4 解码 的能力。为支持m p e g - 4 解码,采用a d i 公司的a d s pb f 5 3 3 来实现m p e g - 4 解 码。所以机顶盒硬件是采用的主芯片+ d s p 的架构。 i p t v 机顶盒以m o n t av i s t a 嵌入式l i n u x 作为操作系统。 播放器软件部分采用模块化设计,将整个播放器软件按功能划分为四个模块: g r a p h 模块、f i l e r e a d e r 模块、d e m u x 模块、! c o d e r 模块。其中g r a p h 模块是主控 模块,用来控制和协调其它三个模块;f i l e r e a d e r 模块从网络或本地存储设备读取 数据;= i n l d ( 模块将音频和视频数据分开,并提供d i e c o d c r 模块所需要的重要参数; d e c o d e r 模块对音频和视频数据进行解码。 播放器的快进和快退实现机制采用了纯i 帧的播放,而不是当前很多播放器都 采用的倍速播放。为实现这一点在服务器端需要增加i f 和i b 文件,这两个附加文件 中的内容是从原始文件中提取出来的纯i 帧数据。在快进或快退操作时,f i l e r e a d e r 模块通过网络从服务器读取这两个文件中的数据。 该论文设计的播放器软件能够播放m p e g - 1 、m p e g - 2 、m p e g - 4 编码的多媒体 文件,快进和快退时采用的纯i 帧播放的机制也取得了不错的效果。该播放器能够 较好支持视频点播等流行的m t v 业务,对于i p t v 业务的深入开展有积极意义。 关键词:嵌入式系统,嵌入式l i n u x ,流媒体,播放器,d e m u x 重庆邮电大学硕士论文 摘要 a b s t r a c t t i f f sp a p e ri sar e s e a r c ha n dd e s i g nf o re m b e d d e ds t 锄i n gm e s ap l a y e rw h i c hi s a p p l i e di nm t v s t b i tr a i s e sad e s i g n i n gp l a no fp l a y e r f h v a a n dw i l li m p l e m e n ti t w i t hcp r o g r a m n l ep l a y e rs h o d ds u p p o r tt h ed e c o d i n go fm p e g - i ,m p e g - 2a n d m p e g - 4 t h e t vs t bi nt h i sp a p e ra d o p t si b m 0 2 5 0 0t ob em a 或e l c o n t r o l l e r , w h i c h i n t e g r a t e sp o w e r p c4 0 5p r o c e s s o r , am p e g - ld e c o d e ra n dam p e g - 2d e c o d e rb u tc a n t s u p p o r tm p e g - 4d e c o d i n g i no r d e rt os u p p o r t i i l gm p e g - 4d e c o d i n g ,a d s pb f 5 3 3i s i n t r o d u c e d s ot h eh a r d w a r es t r u c t u r eo f i p t vs t bi sm a s t e rc o n t r o l l e r + d s p 皿eo so f t h i s 口t vs t bi sm o n t av i s t ae m b e d d e dl i n u x t h ep l a y e rs o i t w a r ei sd i v i d e di n t of o u rm o d u l e sb yf u n e t i o n t h eg r a p hm o d u l e , w h i c hc o n t r o l sa n dh a r m o n i z e st h eo t h e rt h r e em o d u l e s , i st h em a s t e rc o n t r o l l e rm o d u l e 1 1 圮f i l e r e a d e rm o d u l eg e t sm e d i ad a t af o r mi n t e m e to rl o c a lm e m o r yd e v i c e n 圮 1 ) e - w n u xm o d u l es e p a r a t e sa u d i od a t aa n dv i d e od a t a , a n dp r o v i d e si m p o r t a n tp a r a n l e t e r s f o rd e c o d e rm o d l l l e 1 1 帕d e c o d e rm o d u l ed e c o d e st h ea u d i oa n dv i d e od a t a t h ei m p l e m e n to f f a s t - f o r w a r da n df a s t - b a c k w a r do p e r a t i o mi st h ep l a y i n go f p u r ei f l a m e ,b u tn o t2 x ( o rn x ) p l a y i n g , w h i c hi sa d o p t e db ym a n yp o p u l a rp l a y e r t w o a d d i t i o n a lf i l e s , i ff i l ea n di bf i l ew h o s ee o n t e r l ti sp u r eif r a m ee x t r a c t e df r o mp r i m a r y m u l t i m e d i af i l e ,s h o u l db ep u to nt h es e r v e rt e r m w h e nf a s t - f o r w a r do rf a s t - b a c k w a r d o p e r a t i o ni sg o i n go n , t h ef i l e r e a d e rm o d u l eg e t sd a t af r o mi f f i l e0 r i bf i l ev i an e t w o r k t h ep l a y e rs o f t w a r ed e s i g n e di nt h i sp a p e rg a l lp l a ym u l t i m e d i af i l e ,w h i c hi sc o d e d w i t hm p e g 1 m p e g - 2a n dm p e g - 4 t h em e e h a m s mo fp u r eif l a m ep l a y i n gi sa l s o v e r ye f f e c t i v e n l i sp l a y e rh a st h ec a p a c i t yo fs u p p o r t i n gp o p u l a r 哪s e r v i c es u c ha s v o d s oi ti sb e n e f i c i a lf o r f u r t h e rd e v e l o p m e n to f t vs e f v i c e k e yw o r d s :e m b e d d e ds y s t e m , e m b e d d e dl i n u x ,s t r e a m i n gm e d i a , p l a y e r , i ) e i n u x h 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究 成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已 经发表或撰写过的研究成果,也不包含为获得重庆鲣血太堂或其他教育机构的 学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均己在 论文中作了明确的说明并表示谢意。 学位论文作者签名:丧字峰 签字日期: 年岁月, 7 h 学位论文版权使用授权书 本学位论文作者完全了解 重庆噬虫太堂有关保留、使用学位论文的规 定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅 和借阅。本人授权 重庞整立太堂可以将学位论文的全部或部分内容编入有关 数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后适用本授权书) 一躲芬亏峥 签字嗍2 叼年占月7 7 聊繇乙 日辩醐冲妇。日 重庆邮电大学硕士论文 第一章绪论 1 1 项目背景和意义 第一章绪论 。口t v 业务是包含了计算机、电视机、手机以及便携终端,融合了广播和通 信技术,汇集了有线和无线球网络的多媒体综合业务。所有p 网络上的音视频多 媒体服务都是p t v 服务! ”2 0 0 6 年7 月1 0 号至1 4 号,在国际电信联盟i p t v 热 点工作组在日内瓦召开的第一次会议上确定了i p t v 的官方定义【l 】。 目前我国上网人数已超过一亿,宽带用户超过5 3 0 0 万,手机用户也超过了4 亿台,更是拥有庞大的电视机资源( 约四亿台) ,所以说i p t v 业务在中国具有相 当好的发展前景。据业界预测,到2 0 0 8 年中国的i p t v 用户总数将达到l 亿。如果 按照用户人均消费1 0 0 0 元计算,未来两年时间,中国的网络电视市场将达到1 0 0 0 亿元。 口t v 系统的用户端一般有三种接收方式,包括了p c 个人电脑、机顶盒+ 电视 和手机。 p c 终端包括了各种台式计算机以及各种可以移动的计算机,如p d a 等,此类 设备的特点是自身具备较强的处理能力,不仅可以独立完成视频解码显示任务,同 时还可以安装其它软件完成信息交互、自动升级和远程管理等功能,如浏览器和终 端管理代理等。 手机作为i p t v 业务的终端设备必须具备处理和显示数字视频信号的能力,一 般用于移动业务。目前市场上具有处理显示动态画面的手机基本受其网络传 输速率和视频解码处理能力的限制还无法提供比较流畅的视频信号,因此在3 g 网 络投入运营以及有更为有效的编码方案后,手机才会逐步成为i p t v 的终端设备。 电视一般仅具备显示各类模拟和数字视频信号的能力,而不具备交互能力,无 法满足i p r r v 的业务要求。因此目前采用机顶盒+ 电视的终端应用较多。机项盒主要 作为数字视频信号的接收和处理设备,与网络进行交互控制,实现r 业务功能。 而且,相较于p c 终端,机顶盒+ 电视的方式更有利于开拓广大的农村市场。 i p t v 的一大特色是其丰富的多媒体业务,以p c 为终端的实现方式,具有强大 的流媒体播放功能和非常好的用户界面。但手机和机顶盒则属于资源受限的嵌入式 终端,因此需要设计基于嵌入式技术的嵌入式流媒体播放器。和基于p c 的流媒体 播放器相比,基于嵌入式技术的流媒体播放器具有体积小、功能专业化高、成本低 等特点。 重庆邮电大学硕士论文第一章绪论 1 2 课题来源与论文组织结构 1 2 1 课题来源 本课题来源于郑州威科姆公司研发部于2 0 0 6 年4 月成立的研发项目 n d v d 9 0 2 6 li p t v 机项盒终端。该终端平台以m ms t b 0 2 5 0 0 作为主处理器,以 b l a e k f i nb f 5 3 3 数字信号处理器( d s p ) 做软解码,采用m o n t av i s t a 嵌入式l i n u x 操作系统,以c 语言作为开发语言。 n d v m 2 6 l 设计实现网络浏览、视频v o d 、卡拉0 k 、电视短信、网络通讯、 游戏等功能。支持m p e g - i 、m p e g - 2 、m p e g - 4 等多种编码格式。其中的视频v o d 的媒体播放器部分是本课题的直接来源。 在该项目中本人参与了播放器软件整体架构的设计和m p 4 文件格式的d e m u x 工作。所以本文也对播放器的d e m u x 部分有所侧重。 1 2 2 论文组织结构 论文的组织结构为: 第一章是绪论部分,首先介绍项目背景和课题来源,然后对论文的组织结构做 以说明。 第二章是对流媒体播放器相关技术的概述,其中包括嵌入式系统、视音频压缩 编码标准和流媒体传输协议。 第三章介绍嵌入式流媒体播放器的硬件和软件实现的方案,提出了软件设计模 块化的思想,将播放器软件划分为四个模块:g r a p h 模块、f i l e r e a d e r 模块、d g l n u x 模块、d e c o d e r 模块,对四个模块的功能都做了详细描述。 第四章对嵌入式流媒体播放器软件设计中采用的关键技术和机制作了详细描 述。 第五章是媒体文件格式的介绍,首先阐述了在服务器端添加附加文件的思想, 对m p 4 文件格式及三个附加文件i d x 、i f 和i b 本件的格式作了详细解析,最后对三 个附加文件的生成方法做了简介。 第六章是d e w f l u x 模块的具体实现过程,对其中的关键部分做了详细分析并给出 了程序实现的流程图。 第七章是总结和展望部分。 2 重庆邮电大学硕士论文第一章绪论 1 - 3 本章小结 本章为绪论部分。首先介绍了项目的背景和意义,然后说明了课题的来源和论 文的组织结构。 重庆邮电大学硕士论文 第二章嵌入式浏媒体播放器相关技术 第二章嵌入式流媒体播放器相关技术 2 1 嵌入式系统概述 2 1 1 嵌入式系统 以应用为中心,以计算机技术为基础,软件、硬件可裁剪,对功能、可靠性、 成本、体积、功耗要求严格的专用计算机系统,称为嵌入式系统。 嵌入式系统一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户 的应用程序等四个部分组成【2 】。 2 1 2 嵌入式操作系统 现在许多嵌入式系统要胜任的工作越来越复杂,需要采用3 2 位的嵌入式处理 器,这样嵌入式操作系统就成为嵌入式系统设计中必不可少的一个环节。众所周知 通用操作系统( 如m i c r o s o f tw i n d o w s 系列的操作系统) 并不适合直接应用在嵌入式 系统上,为了适应嵌入式系统的需要,必须在整个系统的软件架构中引入嵌入式操 作系统【2 】。 流行的嵌入式操作系统有v x w o r k s 、w i n d o w sc e 、嵌入式l i n u x 等。 v x w o r k s 操作系统是美国w m d r i v e r 公司于1 9 8 3 年设计开发的一种嵌入式实时 操作系统( r 1 0 s ) ,是t o r n a d o 嵌入式开发环境的关键组成部分。良好的持续发展 能力、高性能的内核以及友好的用户开发环境,在嵌人式实时操作系统领域逐渐占 据一席之地。 w m d o w sc e 是微软开发的一个开放的、可升级的3 2 位嵌入式操作系统,其中 c e 中的c 代表袖珍( c o m p a c t ) 、消费( c o n s u m e r ) 、通信能力( c o n n e c t i v i t y ) 和 伴侣( c o m p a n i o n ) :e 代表电子产品( e l e c t r o n i c s ) 。它是精简的w i n d o w s9 5 ,与 w m d o w s9 5 9 8 、w i n d o w sn t 不同的是,w i n d o w sc e 是所有源代码全部由微软自 行开发的嵌入式新型操作系统,其操作界面虽来源于w m d o w s9 5 9 8 ,但w i n d o w sc e 是基于晰1 1 3 2a p i 重新开发的、新型的信息设备平台。w m d o w sc e 具有模块化、 结构化和基于w m 3 2 应用程序接口以及与处理器无关等特点 3 1 。 4 重庆邮电人学硕十论文 第二章嵌入式浏媒体播放器相关技术 嵌入式l i n u x 是嵌入式操作系统的一个新成员,其最大的特点是源代码公开并 且遵循g p l 协议,近年以来成为研究热点。 嵌入式l i n u x 有大量的应用软件可用,其中大部分都遵从g p l ,是开放源代码 和免费的,可以稍加修改后应用于用户自己的系统。嵌入式l i n u x 有庞大的开发人 员群体,无需专门的人才,只要懂u n i x l i n u x 和c 语言即可。随着l i n u x 在中国的 普及,这类人才越来越多,所以软件的丌发和维护成本很低。嵌入式l i n u x 具有优 秀的网络功能,这在i n t e r n c t 时代尤其重要。 2 1 3 典型嵌入式系统机顶盒 机顶盒( 英文名全称是s e tt o pb o x ,简称s t b ) 是指用来增强或扩展电视机功 能的一种信息设备,由于人们通常将它放在电视机的上面,所以又被称为机顶盒或 顶置盒。 根据信号传输介质的不同可将机顶盒分为数字卫星机顶盒、数字地面机顶盒、 数字有线电视机顶盒、坤机顶盒四类。 数字卫星机顶盒又称为综合业务接收机( m d ) ,用来接收数字卫星电视节目。 我们所看的许多卫视节目都是有线电视台通过专业的i r d 从卫星接收下来,再通过 有线电视送入用户家中的。 数字地面机顶盒的功能与数字卫星机项盒类似,所不同的只是传输介质由卫星 信道变成了地面广播信道。该类机顶盒所使用频率与有线电视频率相同,但由于无 线信道的情况比有线电视网络复杂得多,所以它的信号传输技术与数字有线电视机 顶盒也有较大差别。 数字有线电视机顶盒的基本原理与数字卫星机项盒、数字地面机顶盒相同,只 是信号传输介质是有线电视广播所采用的全电缆网络或光纤侗轴混合网。由于有线 电视网络较好的传输质量以及电缆调制解调器技术的成熟,使得该类机顶盒可以实 现各种交互式应用,并被业界广泛看好。 近年来,随着宽带网络的发展,互联网应用越来越广泛,人们萌发了利用互联 网收看电视的想法。特别是i p t v 如火如荼的发展带动了终端市场的活跃,电信设 备制造商纷纷投入机顶盒的研发生产,原有数字电视机项盒厂商也在试水双向m 机 顶盒。机项盒由原来单一的解扰或数,模转换专用机顶盒,发展到支持多种接入方式 和m ,具有多种编解码能力和图形浏览器功能,可以支持包括数字电视在内的视频 点播、时移电视、网络浏览、信息服务、远程教学和医疗、互动游戏等业务功能的 i p t v 机顶盒。未来i p t v 机顶盒将作为一种家用数字平台被广泛用于不断扩大的交 互式多媒体数字内容服务领域。 重庆邮电大学硕士论文 第二章嵌入式流媒体播放器相关技术 2 2 视音频压缩编码标准 2 2 1 视频压缩标准 编码技术是多媒体通信中使用的基本技术之一。多媒体通信的一个显著特点就 是要传输的信息量非常大,尤其是视频数据,其编码技术甚至会在较大程度上影响 业务质量,因此视频编码技术在口t v 中的地位非常重要。 随着人们对视频编码技术研究的不断深入,一些视频编码技术成果相继诞生, 有的已经被国际电信联盟( r r u ) 和国际标准化组织( i s o ) 接受为国际标准,其中最有 影响力的是m p e g 标准。m p e g 是动态图像专家组( m o v i n gp i c t u r e se x p e r t sc r o u p ) 的英文缩写,它是在1 9 8 8 年由国际标准化组织( i s o ) 和国际电子委员会( i n t o n a t i o n a l e l e c t r o n i cc o m m i t t e e ) 联合成立的专家组,致力于运动图像及其伴音编码的标准化 工作。自成立以来,m p e g 专家组发布了一系列的多媒体压缩标准,目前使用较广 泛的有m p e g - i 、m p e g - 2 、m p e g - 4 等1 4 1 5 1 6 1 。 m p e g - l 视频 m p e g - l ( 标准代号i s o i e c i 11 7 2 ) 制定于1 9 9 1 年底,处理的是标准图像交换 格式( s t a n d a r di n t e r c h a n g ef o r m a t ,s i f ) 或者称为源输入格式( s o u r c ei n p u tf o r m a t , s i f ) 的多媒体流,是针对1 5 m b p s 以下数据传输率的数字存储媒质运动图像及其伴 音编码( m p e g - 1a u d i o ,标准代号i s o i e c1 1 1 7 2 3 ) 的国际标准,伴音标准后来衍 生为今天的m p 3 编码方案。m p e g - l 规范了p a l 制( 3 5 2 2 8 8 ,2 5 帧,秒) 和n t s c 制( 为3 5 2 x 2 4 0 ,3 0 帧秒) 模式下的流量标准,提供了相当于家用录象系统( s ) 的影音质量,此时视频数据传输率被压缩至1 1 5 m b p s ,其视频压缩率为2 6 :l 。使 用m p e g - i 的压缩算法,可以把一部1 2 0 分钟长的多媒体流压缩到1 2 g b 左右大小。 常见的v c d 就是m p e g - 1 编码创造的杰作1 6 。 m p e g 2 视频 1 9 9 2 年7 月m p e g 专家组制订了m p e g - 2 。m p e g - 2 是m p e g 制定的第二个 国际标准。经过多次讨论和测试,于1 9 9 3 年1 1 月产生了m p e g - 2 草案,即“活动 图像及声音的通用编码”。1 9 9 4 年正式定为国际标准,而其中的视频编码部分就是 h 2 6 2 标准。与m p e g 1 相比,m p e g - 2 在视频编码算法上有了一些小小的改良, 例如增加隔行扫描电视的编码,m p e g - 2 的视频质量看齐p a l 或n t s c 的广播级质 量。m p e g - 2 在n t s c 制式下的分辨率可达7 2 0 x 4 8 6 。m p e g - 2 还能够提供s n r 、 时间、空间三种分级编码。该标准应用于卫星广播时,在当前的一个模拟信道中, 不牺牲质量的情况下能提供5 路数字的编码节目。 6 重庆邮电大学硕士论文 第二章嵌入式流媒体播放器相关技术 因为m p e g 一2 可以提供一个较广的范围改变压缩比,以适应不同画面质量、存 储容量以及带宽的要求,所以除了作为v c d 和d v d 的指定标准外,m p e g - 2 还可 为广播、有线电视网、电缆网络以及卫星直播提供广播级的数字视频【6 】。 m p e g - 4 视频 m p e g - 4 于1 9 9 8 年公布,和m p e g - 2 所针对的不同,m p e g - 4 追求的不是高品 质而是高压缩率以及适用于网络的交互能力。m p e g - 4 提供了非常惊人的压缩率, 如果以v c d 画质为标准,m p e g - 4 可以把1 2 0 分钟的多媒体流压缩至3 0 0 m 。m p e g - 4 标准主要应用于视像电话( v i d e op h o n e ) ,视像电子邮件( v i d e oe m a i l ) 和电子新 闻( e l e c t r o n i cn e w s ) 等,其传输速率要求较低,在4 8 0 0 6 4 0 0 0 b s 之间,分辨率为l 7 6 x1 4 4 。m p e g - 4 利用很窄的带宽,通过帧重建技术,压缩和传输数据,以求以最 少的数据获得最佳的图象质量【5 1 1 6 1 1 7 1 。 2 2 2 音频压缩标准 对于声音的数字化设计较广的数学和感知领域的知识,只做简单介绍。 砌p 3 音频 m p e g - i 音频定义了3 个分明的层次,它们的基本模型是相同的。层l 是最基 础的,层2 和层3 都在层l 的基础上有所提高。每个后继的层次都有更高的压缩比, 但也因此需要更加复杂的解码器。我们平时说的m p 3 解码就是说m p e g - l 音频解 码标准的第三层 5 1 1 7 1 1 8 1 。 m p 3 的数据是以帧流的形式存储或传输的,每个帧有帧头和帧数据组成。每一 帧包含的比特数可以是不定的,但是能从帧头信息中的数据计算得到。对于m p 3 , 帧内数据包含2 x 5 7 6 个时城采样值,采样率有4 4 1 k h z , 4 8 k h z , 3 2 k h z3 种,位率是 从3 2 k b s 到3 2 0 k b s 。 a a c 音频 a a c 的全名为a d v a n c e d a u d i o c o d i n g ,其意思为高级音频编码,是国际标准 化组织( i s 0 ) 制定的音频标准格式,也是m p e g 规范的一部分。在m p e g - 2 里提出, 在m p e g - 4 里进一步扩展和完善。采样频率选择性更高,更接近c d 音质;并且采 用了解析度更高的滤波器组,达到很高的压缩率,并且可大幅度降低传输时间及介 绍存储空间,适合新一代音乐产品使用。 和m p 3 相比,a a c 有如下一些有点可以使a a c 在不久的将来替代m p 3 成为 网络音频的音频数据格式的首选。 先进的数据压缩技术使得在更小的数据量的前提下获得更好的音质; 支持多声道音频,最高支持4 8 路的全音域声道; 7 重庆邮电大学硕士论文 第二章嵌入式流媒体播放器相关技术 更高的音频采样,最高支持9 6 k h z 的采样频率; 提高了解码效率,使得解码器所占的资源更少。 一般来说,对于专家级的听众听不出1 2 8 k b p s ( 双声道) 的a a c 音频数据和无压 缩数据之间的区别,9 6 k b s 的a a c 音频数据就可以达到1 2 8 k b s 的m p 3 音频数据 的音质,就是6 4 k b s 的a a c 音频数据的音质也好于绝大多数其他的数据压缩格式 的音剧郝】【9 】。 2 3 网络传输协议 流式传输的实现需要合适的传输协议。t c p 需要较多的开销,故不太适合传输 实时数据。在流式传输的实现方案中,一般采用h t t p t c p 来传输控制信息,而用 r t p u d p 来传输实时多媒体数据【l o i 1 1 l 。 2 3 i 实时传输协议r t p 与p t c p r t p 是用于i n t e m e t i n u a n c t 针对多媒体数据流的一种传输协议。r t p 被定义为 在一对一或一对多传输的情况下工作,其目的是提供时间信息和实现流同步。r t p 通常使用u d p 来传送数据,但r t p 也可以在t c p 或a t m 等其他协议上工作。当 应用程序开始一个i 汀p 会话时将使用两个端口:一个给r t p ,一个给r t c p 。r t p 本身并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控 制,它依靠r t c p 提供这些服务。r t c p 和r t p 一起提供流量控制和拥塞控制服务。 r t p 和r t c p 配合使用,它们能以有效的反馈和最小的开销使传输效率最佳化,因 而特别适合传送网上的实时数据1 2 1 【1 3 】【1 4 】【。 2 3 2 实时流协议r t s p 实时流协议r t s p 是由r c a l n e t w o r k s 和n c t s c a p c 共同提出的,该协议定义了一 对多应用程序如何有效地通过p 网络传送多媒体数据,同时提供用于音频和视频流 的“v c r 模式”远程控制功能,如停止、快进、快退和定位。r t s p 在体系结构上 位于r t p 和r t c p 之上,它使用t c p 或r t p 完成数据传输。m t p 与r t s p 相比, h r r p 传送h t m l ,而r t p 传送的是多媒体数据。h t f p 请求由客户机发出,服务 器作出响应;使用r t s p 时,客户机和服务器都可以发出请求,即r t s p 可以是双 向的【1 2 】【1 3 l 【1 5 】【1 6 【忉。 8 重庆邮电大学硕士论文第二章嵌入式流媒体播放器相关技术 2 4 本章小结 本章对嵌入式流媒体播放器的相关技术做了简单介绍,其中涉及到了嵌入式系 统、视音频压缩编解码标准、网络传输协议。 9 重庆邮电大学硕士论文第三章嵌入式流媒体播放器总体实现方案 第三章嵌入式流媒体播放器总体实现方案 3 1 嵌入式流媒体播放器硬件实现方案 播放器硬件采用主芯片+ d s p 的配置。其中主芯片采用m ms t b 0 2 5 0 0 ,可以进 行m p e g - 1 和m p e g - 2 的解码,但不具备m p e g - 4 解码能力。d s p 采用a d i ( 美国 模拟器械) 公司的a d s pb f 5 3 3 ,主要进行m p e g - 4 的解码和o s d 解码。整个系统 的硬件框图如图3 1 所示。 m ms t b 0 2 5 0 0 主芯片,集成了一颗p o w e r p c4 0 5 处理器,p o w e r p c4 0 5 是一 种高性能、低功耗的c p u ,耗电小于l w ,同时内嵌了一个m p e g 2 解压缩芯片。 s t b 0 2 5 0 0 工作频率为2 5 2 m h z ,运算速度达3 5 0 m i p s t i $ 1 1 1 9 1 。 b f 5 3 3 处理器内核包含两个1 6 位乘法器、两个4 0 位的累加器、两5 - 4 0 位的a l u 以及4 个视频a l u 和1 个4 0 位移位器,该处理器有8 0 k b 的l l 指令存储器,6 4 k b 的 l 1 数据存储器s r m ,高速缓冲存储器,4 k b 的l 1 中间结果寄存器s r a m ,有1 2 通道 存储器d m a 控制器 2 0 】【2 l l 。 图3 1 嵌入式流媒体播放器硬件框图 3 2 嵌入式流媒体播放器软件实现方案 3 2 1 播放器在机顶盒软件系统中的位置 机顶盒的软件结构如图3 2 所示。 1 0 重庆邮电大学硕士论文第三章嵌入式流媒体播放器总体实现方案 机顶盒的软件大多采用分层结构,一般分成三层:应用层、中间解释层和资源 层脚1 ,其中资源层软件包括实时操作系统及机顶盒硬件的驱动程序,主要用于完成 对硬件设备的管理和操作。解释层的主要功能是将机顶盒应用程序翻译成c p u 能识 别的指令,去调动硬件设备完成相应的操作。应用层包括播放器、浏览器、电子节 目指南等应用程序1 2 2 。 播放器所在的位置如图3 2 中的阴影部分所示,它属于应用层软件。 l 一搔主器。i 浏览器 e p g 应用程序编程接口或中间件 条件接解复用音频解视频解硬件 收驱动器驱动码驱动码驱动驱动 摸作系统核 图3 2 机顶盒软件结构图 3 2 2 模块化程序设计的思想 应用层 1 - 解释层 1 资源层 j 对于较大型的软件系统,往往包含大量的信息交换和复杂的逻辑关系,如果把 它编成一份大程序是绝不可取的,这样的程序,不但不易读,更难调试、修改和扩 充。正确的方法是采用模块化、结构化的程序设计思想 2 3 1 。 按照功能将一个软件切分成许多部分单独开发,然后再组装起来,每一个部分即 为模块,这就是模块化软件设计的思想1 2 4 1 1 2 5 1 。其中模块是数据说明、可执行语句等 程序对象的集合。 模块化软件设计的优点是利于控制质量、利于多人合作、利于扩充功能等,是软 件工程中一种重要的开发方法。可以降低软件的复杂性,实现了软件的可重用性, 便于软件测试,另外更有利于软件的维护,便于软件的扩展和升级 2 6 1 。 软件模块化设计由总体设计和详细设计两部分组成。总体设计是确定系统的模 块结构,即将系统划分模块、确定模块间接口和评价模块划分质量;而详细设计就 是根据要求设计各个模块。软件的模块化设计的关键问题是多级的层次模块结构和 模块的独立性,前者是一个自顶向下、逐步分解、抽象和求精的模块化过程;后者 与具体设计相关。良好的模块化设计可以大大提高软件的质量和开发效率。 重庆邮电大学硕士论文 第三章嵌入式流媒体播放器总体实现方案 流媒体播放器的设计也采用模块化设计的思想,将播放器软件分为两层四个模 块,一下一节将主要介绍播放器内部模块的设计。 。 3 2 3 播放器内部模块设计 如图3 3 所示,播放器分为四个模块:g r a p h 模块、f i l e r e a d e r 模块、d e m u x 模 块、d c c d c r 模块。 图3 3 播放器模块示意图 g r a p h 模块接收来自外界的消息,同时它还是个控制模块,它通过和另外三个 模块之间的参数传递来协调三个模块之间的工作,从而实现播放器的播放、暂停、 快进、快退、选时、停止等一系列操作。 f i l e r e a d e r 模块通过网络从服务器读取媒体数据或者从本地存储器读取媒体数 据【“j ,将读取到的数据去除协议头信息后,存储在本模块内建立的缓冲空间,以供 d e m u x 模块进行进一步的处理。图3 4 是f i l e r e a d e r 模块的功能示意图。 协议头 口数据 图3 4f i l e r e a d e r 模块的功能示意图 d e m u x 模块从f i l e r e a d e r 模块的缓冲空间读取数据,对数据进行音频和视频的 重庆邮电大学硕士论文第三章嵌入式流媒体播放器总体实现方案 分离,将分离后的音频数据存储在本模块建立的音频缓冲区,将分离后的视频数据 存储在本模块建立的视频缓冲区。其功能示意图如图3 5 。 嘲ll ;潮l 黝le 鞠l 潮卜+d 。叫;赫l v i d e o l _ 囵音频数据 口 视频数据 图3 5d e m t l x 模块功能示意图 经过d e m u x 后的数据是一帧一帧的视频数据和音频数据,另外为了d e c o d e r 模块做同步用,还需要在每帧数据前面加上一个帧头信息,帧头信息中包括帧类型、 时间标签和帧长。一个完整的帧格式如图3 6 。 帧头信息帧数据 图3 6 视音频帧数据格式 播放器对于m p e g - 4 编码的视音频数据通过d s p 进行解码,d e c o d e r 模块所做 的工作主要是音频数据和视频数据的同步,d e c o d e r 模块利用封装在数据帧中的 t i m e 的值,通过一定的策略来实现这一点。经过同步处理后的数据送给_stamp d s p 进行解码,解码后的音频和视频数据通过数据线传给电视机终端进行播放 2 7 1 。 d e c o d e r 模块功能示意图如图3 7 。 图3 7d e c o d e r 模块功能示意图 重庆邮电大学硕士论文第三章嵌入式流媒体播放器总体实现方案 3 2 4 播放器各模块间的信息交互 在播放器程序的实现过程中,g r a p h 模块是做为播放器的主进程,f i l e r e a d e r 、 d e m u x 、d e c o d e r 模块都是主进程下创建的线程,在程序运行时,各模块之间的信 息交互是难以避免的。模块之间的信息交互包括g r a p h 模块与f i l e r e a d e r 、d c m u x 、 d e c o d e r 模块之间的交互以及f i l e r e a d e r 、i ) e m u x 、d o y , o d e a 三个模块之间的交互。 g r a p h 模块与f i l e r e a d e r 、d e m u x 、d l c c o d e f 模块之间的交互渠道有参数传递( 包 括输入和输出) 和回调函数。当g r a p h 模块接收到改变播放状态的命令时,会调用 相应的函数,g r a p h 模块会将要传递给这三个模块的信息作为函数调用时的参数, 三个模块获得的信息也会作为函数的返回参数传递给g r a p h 模块。当在f i l e r e a d e r 、 d e m u x 、d e c o d e l 三个模块中出现了异常的情况或者当一些不能预测处理时问的工 作完成的时候,三个模块就利用回调函数通知g r a p h 模块。比如d e l n u x 模块在获得 视频制式的时候需要告诉g r a p h 模块,但这个信息是要经过一定的计算过程才能得 到的,d g , m 1 1 x 模块就在得到这个信息后以回调函数的形式通知g r a p h 模块。关于回 调函数的用法会在后面的小节介绍。 f i l e r e a d e r 、d f f l l l u x 、d e c o d e 三个模块之间的信息交互渠道也有两个,一个是 模块之间的存储缓冲,另一个是通过g r a p h 模块中转。在进行数据处理时需要对缓 冲区中的数据进行读写操作,其它情况下基本上都需要通过g r a p h 模块来传递信息。 比如在播放转快进时d e c o d e r 模块需要传递给d e m u x 模块一个时间信息( d e m u x 模块要根据这个信息来计算从哪个i 帧开始播放) ,d e c o d e r 模块需要将这个信息先 传递给g r a p h 模块,g r a p h 模块再在函数调用中把这个信息作为参数传递给d e l l l l l x 模块。 3 2 5 播放器支持的状态 播放器支持的状态有:播放、快进、快退、选时、暂停、停止。表3 1 给出了 各个状态之间的转换关系。 表3 1 播放器状态转换表 1 4 重庆邮电大学硕士论文 第三章嵌入式流媒体播放器总体实现方案 3 3 本章小结 播放暂停 播放 停止 快进播放 快进 快进 停止 快退播放 快退 快退 停止 选时选时播放 暂停暂停燔放 停止 本章介绍了嵌入式流媒体播放器的整体设计方案,其中包括硬件和软件部分, 在软件部分对软件模块化设计的思想做了简介,然后对播放器的各个模块及各模块 的功能都作了详细描述。 重庆邮电大学硕士论文第四章嵌入式流媒体播放器软件设计采用的关键技术 第四章嵌入式流媒体播放器软件设计采用的关键技术 4 1 播放器中的缓冲机制 在介绍播放器的各个模块的时候提到了在f i l e r e a d e r 模块和d c n l u x 模块内都需 要创建缓冲区,f i l e r e a d e r 模块中的缓冲区用来存储从网络或本地读到的数据, d e m u x 模块中的缓冲区用来存储已经过解复用后的音频数据和视频数据。这些缓冲 区是内存中的一段存储区域,因为嵌入式设备内存容量有限,所以这个缓冲区的容 量不可能太大。而且在流媒体系统中,数据是边下载边释放的,所以当到达存储区 的上限的时候,如果存储区的前面部分有已经读取过的数据,就可以继续将数据保 存在已读取数据所占的存储空间,即覆盖已经读取的数据。 采用数据结构中的循环队列存储结构是实现缓冲区的最佳机制网。 r e a r r e a r f r o n t ( a ) 队列空( b ) a b c 入队列 ( c ) a b 出队列( d ) c d e f 出队列 i ) e f 入队列队列空 图4 1 循环队列示意图 1 6 重庆邮电大学硕士论文第四章嵌入式流媒体播放器软件设计采用的关键技术 利用队首指针f r o n t 和队尾指针r e a r 的相互关系来作为队列空和队列满的判别 标志。如图4 1 ( a ) ,当队列初始化时,令f r o n t = r e a r ,队列为空;插入a b c3 个 元素后的状态见图4 1 ( b ) ,尾指针r e a r 指向队尾元素c ;元素d e f 入队列、a b 出队列后的状态见图4 1 ( c ) ,队尾指针r e a r 指向队尾元素f 队首f r o n t 指针指向 元素c 的前趋单元;当元素c d e f 继续出队列后,见图4 1 ( d ) ,f r o n t 又与r e a r 相等,因此,f r o n t = r e a r 可作为判别“空”队列的条件。 那么,如何判别“满”队列呢? 有两种方法可以选择。图4 2 ( a ) 和( b ) 是在 图4 1 ( c ) 的基础上分别插入g i n3 个和g h i j4 个元素以后的状态。这两种状态都 可以定义为“满”队列,显然选用图4 2 ( a ) 比( b ) 更好,因为后者影响了判别“空” 条件的唯一性。选用前者,f r o n t 指针所指示的单元永远是空闲的,虽然浪费了一个 单元,却带来了判别队列状态和操作上的许多方便。 综合考虑上述各种因素,我们可得到判别“满”队列的条件
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025安康高新集团旗下子公司招聘(4人)模拟试卷及答案详解(易错题)
- 【教师招聘】2025年九江经济技术开发区中心幼儿园公开招聘顶岗教师考前自测高频考点模拟试题及答案详解(名师系列)
- 2025年九江市工业发展集团有限公司招聘工作人员模拟试卷及参考答案详解一套
- 焦煤集团职称考试题库及答案
- 法官入额考试题库及答案
- 最强大脑考试题库及答案
- 东莞医疗招聘考试题库及答案
- 孔子考试题库及答案大全
- 绿色低碳园区承诺函5篇范文
- 2025年锅炉水处理作业人员G3证考试试题题库有答案
- 建筑室外围蔽板材(简化)
- YS/T 397-2015海绵锆
- GB/T 3217-1992永磁(硬磁)材料磁性试验方法
- GB/T 250-2008纺织品色牢度试验评定变色用灰色样卡
- GB/T 2091-2008工业磷酸
- GB/T 19816.2-2005涂覆涂料前钢材表面处理喷射清理用金属磨料的试验方法第2部分:颗粒尺寸分布的测定
- 市政工程工程量计算规范课件
- 隐身技术概述课件
- 《红细胞血型系统》课件
- 古诗词诵读《江城子乙卯正月二十日夜记梦》课件-统编版高中语文选择性必修上册
- 《家庭暴力中的正当防卫问题分析(论文)9500字》
评论
0/150
提交评论