(通信与信息系统专业论文)基于brew平台的移动流媒体客户端的设计与实现.pdf_第1页
(通信与信息系统专业论文)基于brew平台的移动流媒体客户端的设计与实现.pdf_第2页
(通信与信息系统专业论文)基于brew平台的移动流媒体客户端的设计与实现.pdf_第3页
(通信与信息系统专业论文)基于brew平台的移动流媒体客户端的设计与实现.pdf_第4页
(通信与信息系统专业论文)基于brew平台的移动流媒体客户端的设计与实现.pdf_第5页
已阅读5页,还剩63页未读 继续免费阅读

(通信与信息系统专业论文)基于brew平台的移动流媒体客户端的设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

肿i l l l i i p l l i i l l l li j r ri l l l l l l u i r l l l l l l l l l l l y 2 0 6 7 4 17 与电脑相比,流媒体客户端体积小、处理能力有限,并且处于无线环境中。 所以如何实现流媒体的流畅播放,提高客户端的处理能力,是流媒体系统的关键 问题。 本文是基于b r e w 平台上实现了移动流媒体系统解决方案,主要对客户端进 行了设计、实现和改进。研究了系统中采取的编码和传输策略,对平台进行了优 化设计。重点设计实现客户端,对客户端的网络模块、音频播放模块、视频解码 与显示模块、音视频同步模块、缓存机制这五个模块进行分析实现。客户端接收 服务器传过来的数据包,进行整理重组,对音、视频分别进行解码显示,实现流 媒体播放、暂停、快迸、快退、停止等远程v c r 操作;同时可以对流媒体进行声 音、亮度调节。在流媒体客户端的实现过程中,考虑到会出现并发事件,对并发 事件方案进行了设计并加以实现。为了提高服务质量,提高客户端的处理速度, 在流媒体播放客户端使用了m d p 技术,并对其进行了实验测试,降低了手机a r m 利用率。 关键词:移动流媒体b r e w 客户端m d p 技术 基于b r e w 平台的移动流媒体客户端的设计与实现 a b s 仃a c t c o m p a r e d 、) l ,i mc o m p u t e r , t h ec l i e n to fm o b i l es t r e a m i n gm e d i ah a ss m a l l e rs i z e , l i m i t e dp r o c e s sp o w e ra n da l w a y sw a sp l a c e di nt h ew i r e l e s se n v i r o n m e n t s ot h eh i g h q u a l i t yo f c l i e n t sp r o c e s s i n gp o w e ri sq u i ti m p o r t a n t am o b i l es t r e a m i n gm e d i as y s t e ms o l u t i o nb a s e do nb r e wp l a t f o r mw a s p r e s e n t e di nt h et h e s i s w ef o c u so nt h ec l i e n t sd e s i g n a t i o n , i m p l e m e n t a t i o na n d i m p r o v e m e n t w er e s e a r c hac o d i n ga n dt r a n s m i s s i o ns t r a t e g yu s e di nt h eb r e w p l a t f o r mt h a ti sa l r e a d yo p t i m i z e db yu s n l ed e s i g n a t i o na n di m p l e m e n t a t i o no ft h e c l i e n ti ss t u d i e dp r o f u n d i t y t h ef i v em o d u l e so ft h ec l i e n t ( i n c l u d i n gn e t w o r k , a u d i o p l a y i n g ,v i d e od e c o d i n ga n dd i s p l a y i n g ,a u d i oa n dv i d e os y n c h r o n i z a t i o n ,c a c h i n g m e c h a n i s m ) a l ea n a l y s i sa n di m p r o v e d d a t ap a c k e t st r a n s m i t t e df r o mt h es e r v e ra r e r e c e i v e da n dr e c o m b i n e sb yt h ec l i e n t , a u d i oa n dv i d e oa r ed e c o d e da n dd i s p l a y e d r e s p e c t i v e l yt h o u g h t h i st h ec l i e n ti m p l e m e n t sav a r i o u so p e r a t i o n so fs 行e a m i n gm e d i a i n c l u d i n gp l a y , p a u s e ,f a s tf o r w a r d , r e w i n d , s t o p ,s o u n d b r i g h t n e s sa d j u s t m e n ta n ds oo n c o n c u r r e n te v e n t st h a tm a yb ea p p e a r e di nt h ei m p l e m e n t a t i o no fs t r e a m i n gm e d i aa r e d e s i g n e da n di m p l e m e n t e d i no r d e rt oi m p r o v et h es e r v eq u a l i t ya n dt h ec l i e n t p r o c e s s i n gs p e e d , t h em d pt e c h n o l o g i e sa r ee m p l o y e da tt h es t r e a mm e d i ac l i e n t t h e r e s u l t ss h o w st h a tt h e yc a l lr e d u c et h eu t i l i z a t i o no ft h em o b i l e sa r m k e y w o r d s :m o b i l es t r e a m i n gm e d i a ,b r e w , s t r e a m i n gm e d i ac l i e n t ,m d p t e c h n o l o g i e s 基于b r e w 平台的移动流媒体客户端的设计与实现 第一章绪论 1 1 1 研究背景 第一章绪论弟一早珀下匕 1 1 研究背景和现状 随着移动通信技术飞速发展,传统的网络流媒体技术可以应用到无线传输领 域,并且手机等移动终端的处理能力的飞速提高,人们不再满足于仅有的声音和 图像信息的交流,更希望能够随时随地得到视频媒体信息服务。移动视频媒体服 务被认为是3 g 通信时代的重要服务之一,已经成为移动通信应用领域的新热点l l 】。 与传统的播放方式相比,移动流媒体可以按时间先后次序在移动网络上传输 和播放连续音视频数据流。它可以通过移动网络将部分内容缓存,使流媒体数据 流边传送边播放,无需下载整个文件,这样就节省了下载等待时间和存储空间。 流媒体数据流它具有三个特点:连续性、实时性、时序性 2 1 。 b r e w ( b i n a r yr u n t i m ee n v i r o n m e n tf o rw i r e l e s s ,无线二进制运行环境) 是 高通公司推出的基于c d m a 无线网络的增值业务运行平台【3 4 】,它提供了一个高 效、低成本、可扩展和应用程序执行环境。b r e w 是基于无线网络,开放,完整, 端到端的移动增值业务解决方案。 b r e w 将手机芯片的效用发挥到了极致,开发商可以很容易开发出具有动作、 声音效果更加逼真和视频效果更加流畅的应用,而且b r e w 更加灵活和自由【5 1 。 应用开发商利用b r e w 构建端到端的服务器客户端模式,向用户提供实时股票信 息、歌曲、视频频道等服务。它可以给开发商带来巨大的商机,也为用户创造更 好地服务。 b r e w 与j a v a 相比,它具有更底层的技术,它的应用效果和对手机终端的 支持会更好,而j a v a 属于中间层的应用。因而b r e w 具有5 个最基本的特点: 1 快速,b r e w 平台位于芯片系统软件之上,启用了快速c c + + 本地应用程 序,以及浏览器与基于j a v a 技术扩展的虚拟机; 2 兼容,它支持多种语言,包括j a v a 、可扩展标识语言等执行环境; 3 可扩展,可以进行b r e w 平台编写扩展,提供附加功能向应用程序; 4 成本效益高,它的使用降低开发成本,并缩短设备制造商的产品面市时间; 5 拥有完善的程序分发机制和收入分配系统而遥遥领先于j a v a 。 由于这些特点,在b r e w 平台上开发流媒体客户端处理技术方面,它具备有 很多优点: 2 基于b r e w 平台的移动流媒体客户端的设计与实现 1 ) 真正的实时处理,借助客户端处理特性,应用可以即刻启动,特别是那些 基于语音的应用;。 2 ) 快速信息交互,所有用户都可以只需几秒就下载资料到自己的手机,而无 需考虑网络的带宽等问题; 3 ) 更加个性化的移动体验,无线方式,最终用户可以利用多种应用以及各种 生活信息精确定制自己的电话,并根据自己的意愿随时修改这些应用; 4 ) 最低的软硬件要求,b r e w 平台精致小巧,仅占用大约1 5 0 k 的空间,高 效而功能强大1 6 1 。 基于b r e w 上开发手机各种增值业务,已经行成为全球运营商、应用开发商 的产业链,它为运营商带来了巨大商机,它成为无线数据业务市场的收入源泉。 1 1 2 研究现状 无线增值业务价值链上有四个节点,它们是运营商、设备制造商、应用开发 商和消费者。b r e w 提供了一个可以贯穿无线增值业务价值链各个环节的开发的 端到端的解决方案,开启了进入这一快速增长的广大市场的大门。 在国外b r e w 业务的应用上,c d m a 在韩国、日本和美国三个国家都发展很 迅速,三者都是c d m a 移动通信制式上的倡导者。b r e w 已经在三个国家运营 商得到了应用,作为一个成功的开发环境,运营商也正从中逐步得到相当的回报。 k t f 公司是韩国的第二大移动通信运营商,在运营商中是全球第一个正式推 出基于高通公司b r e w 平台数据应用业务,目前已有1 0 0 0 万b r e w 用户。b r e w 平台使k t f 向用户提供创新的、快速的无线数据应用。在推出b r e w 的前三个月 中,b r e w 成功地拉动k t f 公司9 5 0 万用户的数据业务a r p u 值( 即平均每用户 受益) 增长了9 。在日本,第二大移动运营商k d d i 公司已经在本土推出基于 b r e w 平台的大量业务,并提供了预装b r e w 应用的手机。同样美国的v e r i z o n w i r e l e s s 公司通过在全美推出b r e w 手机和业务应用p 1 。 在国内,中国联通的神奇宝典b r e w 业务,从2 0 0 4 年初的7 万用户到年末的 1 1 0 万用户,b r e w 的注册用户为1 7 0 万,b r e w 应用下载量从4 0 万增加到l 千 万,在7 个月中b r e w 手机激活率从2 2 上升到4 2 ,b r e w 业务在2 0 0 4 年1 2 月达到了1 3 5 0 万人民币,b r e w 业务在5 个月中的平均月增长率为4 0 ,b r e w 的a r p u 值为1 3 元。目前国内的b r e w 用户数成爆炸式的增长,如图1 1 所示。 手机方面,我们已经有很多的低端手机,这也是比较符合中国市场的。目前中国 联通已经推出许多超低端c d m a 手机1 6 1 。 第一章绪论 2 0 0 42 0 0 52 0 0 62 0 0 9 年份 图1 1b r e w 用户数 基于b r e w 移动流媒体技术成为一个新兴重要的领域,市场空间很大。但是 由于它运行在无线环境中,干扰、带宽对它有很大影响,而且客户端处理能力的 对流媒体的质量有着很重要的影响。所以在客户端必须要有有效的编解码、严格 的音视频同步、缓冲机制的设计等技术。如何使用最佳的策略是提高基于b r e w 移动流媒体服务质量的重要方法,具有非常重要的意义。 屯。 1 2 研究目的和意义 基于b r e w 平台的数字移动流媒体服务是一个新兴的应用领域,具有广阔的 市场前景。本课题在理论和实际应用方面都是非常有意义和价值的。 t 移动流媒体的应用对于网络带宽、实时性、容错性、播放平滑性、媒体同步 等方面都有严格要求。比如当语音延迟超过2 5 0 m s 或者视频延迟超过i s ,明显就能 感觉到停顿 7 1 ;可用带宽在网络中小于2 8 k b p s 时,易导致网络拥塞【8 1 ;网络状况出 现波动后,保证播放的流畅性需要缓冲机制等消除抖动【9 】;网络进行传输时,允 许流媒体数据有一定程度的丢包率,并保持音视频同步【l 叭。这些严格的性能要求 在实际的移动流媒体应用中并不能完全得到满足,具体原因如下: 1 移动网络有待改进 移动网络由于其特殊性和异构性【1 1 1 ,与有线网络相比,主要会有以下问题: 1 ) 带宽不足,用户使用量很大时,即使使用3 g 网络还会出现带宽严重不足 的情况; 2 ) 波动性较大,由于终端高速运动或者基站切换等因素,导致网络带宽和时 延等参数发生剧烈变化,使得稳定性方面不高; 3 ) 误码率和丢包率比较高,在接收端进行流媒体播放的时候,会出现不连续 和不同步的情况,最终在播放过程中出现音视频延迟不匹配、声音画面的抖动、 马赛克等播放质量不佳的现象【比】。 4 基于b r e w 平台的移动流媒体客户端的设计与实现 2 移动终端的性能还需要提升 由于成本等因素的制约,在处理能力等方面移动终端受到很大的限制。所以 在硬件配置和软件方面如果性能不是很足,在进行流媒体播放的时候会出现解码 和显示速度的不协调,导致声音出现跳变、视频画面停顿等的问题。影响终端性 能的主要因素有1 1 2 j :, 1 ) 手机终端的运算能力和内存容量,目前市场上的高端b r e w 手机是基于 a r m 9 芯片的,但其运算速度只具有1 3 0 m i p s 左右的能力,而基于a r m 7 芯片的手 机,运行速度只具有6 0 m i p s 左右,这对于计算繁重的音视频解码任务来说尚嫌 低下; 2 ) 电池容量,解码处理越复杂,对手机的计算能力要求就越高,对手机的供 电能力要求也更高,但现在手机电池的容量普遍有待提高。 本系统在主要研究了两个方面: ( 1 ) 在网络方面,传输上进行适当调整,与手机的处理能力相匹配,编解码 上采用最新的h 2 6 4 ,降低因手机编解码造成的处理速度慢的问题; ( 2 ) 在终端方面使用m d p 技术,降低客户端的a r m 利用率,使流媒体播 放更加流畅清晰,使得用户可以享受高质量的视频服务。 综上所述,本课题实现一个移动流媒体客户端系统,并对客户端加以改进, 移动流媒体在终端上流畅、稳定地为用户带来高品质的视听享受。所以本课题在 理论和实际应用方面都是非常有意义和价值的。 1 3 主要内容及结构安排 本论文主要对流媒体系统进行分析,对开发平台进行优化,通过对移动流媒 体客户端的功能设计,将其划分为彼此独立的五个功能模块:网络模块,音频数 据组织与播放模块,视频数据解码与显示模块,音、视频同步模块,以及缓冲机 制【1 3 】。 客户端实现采用了事件驱动机制,各种消息( 包括定时器到时通知、数据到 达的消息、以及用户操作产生的消息) 协调驱动各部分模块的工作,从而可以高 效地运行在b r e w 应用程序执行环境所提供的单用户线程上。 移动流媒体客户端发送消息请求服务,服务器对客户端的请求做出响应,并 通过无线网络将压缩后的多媒体数据打包后传送到客户端,在客户端进行数据的 重组、解码和回放操作,最终实现移动客户端的播放、暂停、快进、停止等四种 远程v c r 功能【l 引。 论文共分为五章,其他章节安排如下: 第一章绪论 第二章:移动流媒体系统框架。主要介绍了流媒体系统的总体框架和主要技 术,即流媒体的传输技术和移动流媒体编解码技术。 第三章:基于b r e w 平台移动流媒体客户端的设计。主要介绍了平台b r e w 开发平台的技术特点及优势,并对平台进行了优化。对客户端的五个功能模块: 网络模块,音频数据组织与播放模块,视频数据解码与显示模块,音、视频同步 模块,以及缓冲机制进行相关策略的设计。 第四章:移动流媒体客户端的实现和改进设计。主要介绍了客户端软件的工 作流程,即各功能模块如何相互协调、触发以实现流媒体音、视频服务。给出了 系统的运行效果图,实现各种v c r 功能。并对客户端进行了改进设计,使用了 m d p 技术,对a r m 的利用率进行测试,对结果进行了分析。 第五章:结束语。对本论文主要工作进行总结。 6 基于b r e w 平台的移动流媒体客户端的设计与实现 第二章移动流媒体系统框架 7 第二章移动流媒体系统框架 流媒体是一种多媒体文件,它在网络上的传输过程中应用了流技术。所谓流 技术,就是把完整的影像和声音数据经过压缩处理后保存到网站服务器上,用户 可以实时观看而不需要将整个压缩文件下载。随着信息技术的飞速发展,网络硬 件环境的不断完善,流媒体技术得到了越来越广泛的应用。它涉及到了流媒体数 据的采集、压缩、编码、存储、传输以及通信等多项技术。 与传统多媒体相比,流媒体主要优势在于运用了智能流技术,可以边下载边 观看,这样避免了用户必须等到整个文件全部从因特网上下载完才能观看的缺点, 人们可以在较低的带宽到较高的带宽环境下欣赏到连续不断的较高品质的音、视 频节刚1 3 1 。 移动流媒体技术可以降低移动终端存储容量的限制程度,达到可以连续,实 时播放流媒体视频,音频等多媒体内容。 2 1 流媒体系统组成结构 流媒体业务主要有视频点播和视频直播。视频直播业务是边压缩边传输媒体 数据,而视频点播业务要先进行压缩存储,它不涉及音、视频实时编码的技术【1 4 , 1 5 】。 视频进行点播业务时,用户要进行一些操作,这样的交互活动影响流媒体数据传 输,例如快迸、倒退、暂停等。这样的操作产生的连接被称为“干涉传输 。而 在实时直播业务情况下,用户对访问资源无法进行复杂操作,用户交互活动对直 播流媒体数据传输的影响较小,一般仅能对其启动或者终止。 一个完整的流媒体系统必须包括:节目制作系统、流媒体服务器、用户终端1 1 6 1 。 如图2 1 。 基于b r e w 平台的移动流媒体客户端的设计与实现 节目源制作流媒体服务器 高质 视频 降尺寸 降帧率 鬻h 喜磊文件l l 音频 节目源的制作: 曩蒙h 多路复用 压缩l 音频ii 发送控制 c d “屹0 0 01 x 图2 1 流媒体系统框架 客户端 图形用户界面i il 音频解码h ; 视频解码卜- 一 节目源制作可以提供流媒体的音、视压缩码流,通过对各种节目源的处理, 可以达到很好的效果在移动终端播放。在视频中需要对图像大小和帧率进行适当 调整,以适应终端的显示能力和网络带宽的传输能力。 流媒体服务器: 流媒体服务器提供的功能主要有:侦听并响应客户端的服务请求;以帧为单 位对视频压缩流进行分割,组成一个媒体数据单元,适应r t p 协议进行封装打包; 解析r t s p 协议,响应移动客户端发出的远程命令,实现v c r 功能;管理媒体文 件数据;负责系统的稳定运行。 客户端: 客户端主要是接收媒体文件服务列表和媒体数据,对数据包进行重新组合, 对视频解码、显示及音频的解码、播放,实现二者同步,提供接口使用户可以进 行v c r 操作。 2 2 系统中流媒体编码策略 第二章移动流媒体系统框架 9 目前3 g 网络的应用,使得流媒体业务运行在高速数据通道上。如何解决在带 宽有限、干扰大、传输不稳定的无线环境中,这就需要流媒体技术的支撑。好的 编解码技术可以提高终端的处理能力。 2 2 1 高效的压缩编码技术 因为无线信道提供的带宽是有限的,所以多媒体数据在传输前必须要先经过 编码压缩。以减少对网络资源的占用。 视频解码模块可以播放v i d e o 及a u d i o 文件,因此编码格式涉及以下两个方 面: 视频编码格式:a m p e g - 4s i m p l ep r o f i l e b h 2 6 3p r o f i l e0 3 c h 2 6 4b a s e l i n e d r e a l v i d e ov e r l o e w i n d o w sm e d i av e r9 音频编码格式:钆a m r n b 灿lr a t e s b a a c - u p t o1 2 8k b p sa t4 8l d - i z 。啦 c a a cp l u s u p t o1 2 8k b p s a t 4 8k h z denhanced a a c + - u p t o1 2 8k b p sa t4 8k h z e q c e l p 一1 3k b p sf i x e df u l la n dh a l fr a t e s e v r c 一8 k b p sf l x e df u l lr a t e g r e a l a u d i ov e r 8 h w i n d o w sm e d i aa u d i ov e r9 本系统中音频编码采用的p u r ev o i c e ,它是高通公司开发的一项语音编码技 术,视频编码采用的是h 2 6 4 。下面介绍h 2 6 4 编码的方法。 2 2 2h 2 6 4 编码策略 t ( j o i n tv i d e ot e a m ,视频联合工作组) 于2 0 0 1 年1 2 月在泰国p a t t a y a 成 立。它由i t u t 和i s o 两个国际标准化组织的有关视频编码的专家联合组成。t 的工作目标是制定一个新的视频编码标准,以实现视频的高压缩比、高图像质量、 网络适应性好等目标。被i s o 接纳的新标准h 2 6 4 是m p e g 4 的第1 0 部分,称为 a v c ( a d v a n c e dv i d e oc o d i n g ) 标准0 7 , 1 羽。 h 2 6 4 标准可分为三档: 1 ) 基本档次( 版本简单,应用面广) ; 1 0 基于b r e w 平台的移动流媒体客户端的设计与实现 2 ) 主要档次( 增加压缩比和提高图像质量,可用于h d t v 和d v d 等) ; 3 ) 扩展档次( 用于网络中传输视频流) 。 相比h 2 6 3 和m p e g - 4 ,h 2 6 4 节约了5 0 的码率,更好的支持网络传输功能。 它引入了面向m 包的编码机制,有利于网络中的分组传输,支持网络中视频的流 媒体传输。h 2 6 4 具有较强的抗误码特性,可适应丢包率高、干扰严重的无线信道 中的视频传输。h 2 6 4 支持不同网络资源下的分级编码传输,从而获得平稳的图像 质量。h 2 6 4 能适应于不同网络中的视频传输,网络亲和性好。 1 h 2 6 4 视频压缩系统【1 9 1 h 2 6 4 标准压缩系统由视频编码层( v c l ) 和网络提取层( n e t w o r ka b s t r a c t i o n l a y e r ,n a l ) 两部分组成。v c l 中包括v c l 编码器与v c l 解码器,主要功能是 视频数据压缩编码和解码,它包括运动补偿、变换编码、熵编码等压缩单元。n a l 则用于为v c l 提供一个与网络无关的统一接1 2 1 ,它负责对视频数据进行封装打包 后使其在网络中传送,它采用统一的数据格式,包括单个字节的包头信息、多个 字节的视频数据与组帧、逻辑信道信令、定时信息、序列结束信号等。包头中包 含存储标志和类型标志。存储标志用于指示当前数据不属于被参考的帧。类型标 志用于指示图像数据的类型。v c l 可以传输按当前的网络情况调整的编码参数。 2 h 2 6 4 的特点 h 2 6 4 和h 2 6 1 、h 2 6 3 一样,也是采用d c t 变换编码加d p c m 的差分编码, 即混合编码结构。同时,h 2 6 4 在混合编码的框架下引入了新的编码方式,提高了 编码效率,更贴近实际应用。 h 2 6 4 没有繁琐的选项,而是力求简洁的“回归基本 ,它具有比h 2 6 3 + + 更 好的压缩性能,又具有适应多种信道的能力。 h 2 6 4 的应用目标广泛,可满足各种不同速率、不同场合的视频应用,具有较 好的抗误码和抗丢包的处理能力。 尽管h 2 6 4 与h 2 6 1 、h 2 6 3 编码基本结构类似,但它改进了很多环节 2 0 - 2 3 1 。 如下: 1 ) 多种更好的运动估计 高精度估计,相比h 2 6 3 中的半像素估计,h 2 6 4 采用1 4 像素的运动估计。 理论上,如果精度增加一倍,则可以达到0 5 b i t s a m p l e 的编码增益;但实际 如果精度超过1 8 像素后系统增益不明显。因此在h 2 6 4 中,不采用1 8 像素的精 度,而采用1 4 像素精度。 2 ) 多宏块划分模式估计 h 2 6 4 预测模式中,一个宏块( m b ) 可以划分成7 种不同模式的尺寸,这种 灵活、细微的宏块划分更切合图像中的实际运动物体的形状。 3 性能优势 第二章移动流媒体系统框架 与m p e g - 4 、h 2 6 3 + + 编码性能测试相比,在不同速率下h 2 6 4 都具有更好的 p s n r 性能。平均比m p e g - 4 要高2 d b ,比h 2 6 3 + + 高3 d b ,所以实际中选择h 2 6 4 。 2 3 系统中流媒体传输协议策略 在移动通信中必须要有相应的传输协议支持,才能使数据到达客户端。流媒 体中协议有:网络层的i p 协议,运输层的t c p u d p 、r t p r t c p 协议,以及应用 层的r t s p ,s i p 协议。 r t p 为实时传输协议,通过u d p 协议传输。r t c p 为实时传输控制协议,可 以通过t c p 协议传输,也可以通过u d p 协议传输,但与r t p 采用不同的端口号, 加以分离。r t p 和r t c p 为一对紧密结合的协议,是高层传输协议。u d p 和t c p 是底层传输协议。r t s p 为实时流协议,也可以说是话路控制协议,支持如像v c r 那样的操作控制,如暂停、快进、快退等。r t s p 也通过u d p 来传输。会话初始 协议s i p 用于初始、管理和终止分组网络中的语音和视频会话,具体地说就是用套 来生成、修改和终结一个或多个参与者之间的会话。 1 实时流协议( r t s p ) 实时流协议( r t s p ) 【2 4 ,2 5 建立并控制一个或几个时间同步的连续流媒体,、 并提供了可扩展框架,可受控、按需传送实时数据。r t s p 在控制多数据发送会话 时提供了选择发送通道( 如u d p 、组播u d p 与t c p 等) 的方式,并提供了选择 基于r t p 的发送机制的方法。 。 r t s p 框架可以使得音视频数据按需自适应控制传输,可以进行远程控制功 能,提供传输信道,可以基于r t p 的传输机制。在语法和操作上r t s p 与h t t p 1 1 类似,在多数情况下h t t p 的扩展机制可加入r t s p 。但是r t s p 有许多重要方面 不同于h t t p : 1 ) r t s p 具有一个不同的协议标识符,可传送多媒体数据; 2 ) 在一般情况下,r t s p 服务器和客户端是双向服务的,h t t p 请求是客户 端发出,是单向服务。 3 ) r t s p 是具有状态的协议,实现过程中维护所有会话状态,而h t t p 是无 状态的【1 3 阗。 2 实时传输协议( r t p ) r t p 2 4 2 7 1 是一种提供端对端的实时传输协议,r t c p 协议是用来对实时数据进 行监视和控制。 r t p 可以看成是传输层的子层,在r t p 之上一般是使用r t p 协议的应用程序, 而执行r t p 的程序运行在u d p 的上层。数据块封装在r t p 信息包中,r t p 信息 包又封装在u d p 消息段中,最后一起封装到i p 数据包中进行传输。 1 2 基于b r e w 平台的移动流媒体客户端的设计与实现 r t p 信息包可以在多媒体中应用很广,可以在电视会议、影视点播等中应用。 比如假设有6 4 k b s 的p c m 编码声音,每个数据块为2 0 毫秒的编码数据,即它有1 6 0 个字节声音数据。应用程序添加r t p 标题后成为r t p 信息包,然后通过u d p 套 接接口封装成u d p 信息包。在接收端,应用程序通过套接接口收到r t p 信息包, 并从中抽出声音数据块,然后使用r t p 信息包的标题域中的信息正确地译码和播 放声音口引。 2 4 本章小结 本章主要介绍了流媒体系统组成结构,它由节目源的制作、服务器和客户端 组成。分析了流媒体的编码策略和传输策略,对h 2 6 4 特点优势进行了分析;同时 对系统中两个重要的传输协议进行介绍,即实时流协议和实时传输协议。 第三章基于b r e w 平台移动流媒体客户端的设计 1 3 第三章基于b r e w 平台移动流媒体客户端的设计 3 1b r e w 平台的优化 b r e w ( b i n a r yr u n t i m ee n v i r o n m e n tf o rw h l e s s ) 是高通公司提供的通用的、 开放的、跨平台的应用软件开发平台。b r e w 是基于无线网络,开放,完整,端 到端的移动增值业务解决方案,它不是单一的产品,而是为无线网络和移动终端 量身定制的解决方案,是可以帮助用户解决自身问题的一个业务系统。b r e w 是 专门面向无线网络和移动终端的,作为解决方案,b r e w 是面向移动增值业务这 一特定领域【2 9 1 。 b r e w 是开放的,具有开放式的体系结构,无论是运营商、手机厂商、业务 运营商、还是内容提供商或者用户,都可以在基于b r e w 的平台上根据自己的需 要随意增删自己想要的东西。开放是指规范公开的结构。开放结构一个很大优势 就是任何人都可以设计它的插件产品。b r e w 经过专门的设计,开发者可以使用 自己所选的任何语言进行编程。 b r e w 是完整的,不仅仅是一个手机上的模块,或者一套编程接口,它是一 个t u r n k e y ( 交钥匙) 形式的解决方案。b r e w 不仅是一个软硬件系统整合方案, 统一管理前端设备,交易系统以及后端大型机平台,而且还整合了整个商用坏境, 它贯穿于整个无线增值业务产业链之中。在完整解决方案思维主导的产业链下, 有两种模式:面向产品和面向客户。b r e w 是根据客户的需求和市场需求来设计 的完整解决方案,使整个产业链向下游移动,真正做到以客户为中心【3 0 】。 b r e w 是端到端的解决方案。端到端是指网络连接、网络通信,必须在源和 目的间建立连接。 b r e w 由四大部分构成:b r e w 分发系统,b r e w 应用执行环境,b r e w 应 用开发包和各种各样的b r e w 的应用。 b r e w 的分发系统即b d s ( b r e wd i s t r i b u t e ds y s t e m ) 。b d s 使得终端用户 可以利用手机或其它无线设备以无线的方式下载应用和相关的内容。 b r e w 的应用执行环境( a e e ) 是一个软件接口层,保证开发的应用可以在 多种设备种以一致的方式来运行。由于a e e 占用的r a m 和闪存极小,所以b r e w 可以在低端手机上大显身手【3 0 】。 3 1 1b r e w 的核心技术 1 4 基于b r e w 平台的移动流媒体客户端的设计与实现 b r e w 的核心技术主要包括类c o m 的应用模型,事件驱动,集中分布式应用 管理,与用户相关的安全加密技术等等。 1 c o m 的应用模型 c o m 是c o m p o n e n to b j e c tm o d e l ( 组件对象模型) 的缩写。c o m 要求计算 机软件生产符合人类的行为方式而设计的技术。在c o m 构架下,很多功能专一的 组件被开发出来,然后将它们按照需要的组合起来,构成应用系统。它的好处是: 可以将系统中的组件用新的替换掉,系统的升级比较容易;可以在多个应用种重 复利用同一个组件;可以方便的将应用扩展到网络环境下【3 0 j 。 b r e w 基本遵从c o m 这一组件构架,b r e w 中所提供的服务实际上一些小 的二进制可执行程序形成的组件,它们可以给应用程序,操作系统以及其他组件 提供服务。 b r e w 中接口是包含了一组函数的数据结构,通过这组数据结构,代码可以 调用组件对象的功能。b r e w 提供了一组固定的接口,使用基于接1 3 对象的引用 计数来控制接1 3 的生存期,b r e w 接1 3 的引用计数使用方式是针对每个接口类, 这样可以精确控制对象的生存期,并且在复杂度和资源消耗上能够达到较好的平 衡。 应用程序用一个指向接e l 数据结构的指针来调用接口成员函数,如图3 1 。 函数指针l 一| ,l 函数指针2 , i 接口指针 指针 r 具体 函数指针3 膏硐 一 一| 图3 1 应用程序用指针调用接口成员函数 实际上,所有的接1 3 指针也是一个指针,这个指针指向一组函数的定义( 即 接口函数表,又叫虚函数表) 。每个接1 3 成员函数表的第一个参数必须为指向定 义这个接1 3 的组件类型的指针( 既编译时自动添加的t h i s 指针) ,这是因为接1 3 本身不能独立存在,它必须依附于每个c o m 组件而存在。 对于同一个类的所有对象,它们分别拥有不同的数据成员存储区,但是共享 同一份成员函数的拷贝,在不同的对象调用成员函数的时候根据对象隐式传递的 t h i s 指针判别哪个对象调用了成员函数p u j 。 2 b r e w 的事件处理 第三章基于b r e w 平台移动流媒体客户端的设计 1 5 囤a p p l i c a t i o n 咖 b i 匝w b r e w o e m c mu a s m sp d s m s n dn v d m s s a m s ss o f t , r a r e a p p l i c a t i o n e x e c u t i o n e n v i r o n m e n t l a y e r o e m l a y e r 图3 2 b r e w 的架构 b r e w 的架构如图3 2 ,b r e w 中事件处理的过程:b r e w 应用程序模型是基 于事件驱动的引擎。加载a p p l e t 以后,a p p l e t 将通过h a n d l e e v e n t 函数收到的事件 接收所有输入信息。 b r e w 将事件传递给小程序时,小程序会通过返回t r u e ( 已处理) 或f a l s e ( 未处理) 指示是否已处理事件。b o o l e a nh a n d l e e v e m ( i a p p l e t p i a p p ,a e e e v e n t e c o d e ,u i n t l 6w p a r a m ,u i n t 3 2d w p a r a m ) ,h a n d l e e v e n t 函数的第二、第三和第四 个参数包含与一个事件相关的信息。第二个参数为a e e e v e n t 类型,用于指定小程 序接收的主要事件。小程序接收的事件包括e v t a p p s t a r t 、e v t a p p s t o p 等等。第三个和第四个参数是根据接收事件来定义的数据。这些值取决于事件本 身,并根据不同事件而定义。 常见的事件类型: e v ta p ps t a r t 启动小程序 e v ta p ps t o p 小程序停止 e v ta p ps u s p e n d 小程序挂起 e v tk e y 按键事件 e v tk e yp r e s s 按键事件( 键按下) e v tk e yr e l e a s e 按键事件( 键释放) e v td i a l o gi n i t 对话框初始化 e v td i a l o gs t a r t 对话框运行 e v td i a l o ge n d 对话框结束 e v tu s e r 用户自定义事件 事件的分发与代理:当控件被激活时,事件应该传递到激活的控件,使控件 自动更新,如菜单事件激活,将事件传递到i m e n u c t l _ h a n d l e e v e n t 如果是文 1 6 基于b r e w 平台的移动流媒体客户端的设计与实现 本控件处于激活,将事件传递到i t e x t c t l h a n d l e e v e n t ,然后控件就会采用相应 的操作,比如重新绘制等。 菜单控件的事件分发如图3 3 t 3 0 l 。 图3 3 菜单控件的事件分发 事件代理机制如图3 4 1 3 0 1 。 3 1 2b r e w 在手机中的位置 图3 4 事件的代理机制 b r e w 在手机中是一个执行环境,是一种应用框架。b r e w 提供了一个高效, 低成本,可扩展的应用程序执行环境。 b r e w 平台提供的应用执行环境类似于p c 上的操作系统,屏蔽了底层硬件设 备和网络协议的差异,使手持设备可以下载指定类型的应用程序来使用,而无需 第三章基于b r e w 平台移动流媒体客户端的设计 1 7 关注底层硬件设备或网络协议的不同实现【3 0 l 。如图3 5 。( 分层的观点阐述b r e w 在手机中的位置) 图3 5b r e w 在手机中的位置 1 ) 硬件设备层和操作系统 硬件设备层包括硬件设备和处理器,支持b r e w 运行的终端都采用基于嵌入 式r i s c 微处理器的a r m 体系结构。操作系统一般采用实时操作系统。 2 ) 基础软件层 包含所有设备驱动以及硬件相关功能都在这一层实现。 3 ) 硬件抽象层 芯片层提供了和芯片相关的a p i 。b r e w 移植时的o e m 层主要是这一层, o e m 层重要的工作之一是将下层的状态机封装成应用要求的状态。 移动层主要提供除了芯片层之外的所有功能。如内存管理等。 4 ) a e e 层 1 8 基于b r e w 平台的移动流媒体客户端的设计与实现 具体包含b r e w 应用以及应用扩展类等。 表3 1b r e w 提供功能 功能接口接口 系统 i a p p l e t ,l b a s e ,i s h e l l ,i m o d u l e ,w e e k , l _ n o t i f i e r ,i l i c e n s e ,i h e a p 等 显示与用 户界面 i d i s p l a y ,i d i a l o g ,i s t a t i c ,i m e n u c t l ,i t e x t c f l ,i f o n t , i m o d e l 等 网络 i n e t m g r , i n e t w o r k , i s o c k e t , i s o c k e t p o r t , i s o u r s e 等 文件系统 i d b m g r , i d b r e c o r d , d a t a b a s e ,i f i l e m g r , i f i l e ,等 多媒体 i s o u n d , i m a g e ,i m a g e c t l ,i g r a p h i c s ,i m e d i a , i c a m e r a , 等 安全 i c i p h e r , n - i a s h , i r s a ,i s s l ,等 位置服务i p o s d e t 电信服务i t a p i ,i v o c o d e r , i b t ,i c a l l ,i s m s ,等 其他 i b a c k l i g h t , i b a t t e r y ,i f u p ,等 b r e w 提供的服务分为九种主要功能,每种功能对应的接口如表3 1 p 0 。 3 1 3b r e w 平台优化设计 由于高通提供的d i a l o g 机制的开发有很多问题,为了改进对话框的机制,使 用基于w i n d o w 机制的b r e w 应用。平台提供的对话框主要有以下问题: 1 ) d i a l o g 堆栈的管理是集成在a e e 库里面,流程控制不灵活。比如在开发中, 有些界面在进行操作中,需要连续退出两层u i 时,往往会出现一次白屏的闪动。 原因就是d i a l o g 的结束流程受限制于a e e 本身的d i a l o g 的堆栈管理机制,每次只 能够将一个d i a l o g 出栈,同时会重绘栈顶的d i a l o g 。 2 ) d i a l o g 的事件处理流程无法更改。b r e w 的事件分发过程是在a e e 环境 中,只有部分标准的b r e w 事件能够默认发送给当前的d i a l o g 。对于用户定义事

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论