如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
本文档为PVPlayer开发者提供详细的SDK开发信息.包括媒体信息的层次结构,流程的控制和数据流图,状态机,错误处理,异步事件的处理,以及用例场景。该文档还包括在android平台下调试的相关介绍。1.1PVPlayerSDK定义PVPlayerSDKisasetofcomponentsandmodulesthatallowssynchronizedplaybackofmultimediapresentations.Amultimediapresentationisdefinedasacollectionofvariousmediathatarerenderedtogetherinsomesortofasynchronousmanner.Thiscouldbeintheformofafileencodedintoaspecificformat(likeMP4,3GPP),aliveRTSPstreamingsession,oraSMILpresentationoranyotherform.Inadditiontostandardplaybackfeaturessuchasrepositioningandvolumecontrol,PVPlayerSDKoffersmoresophisticatedfeaturessuchasdownloadingofcontentandplaybackofcontentasitisbeingdownloaded.TheamountoffeaturescontainedinaparticularPVPlayerSDKdependsontherequirements,designdecisions,andlimitationsimposedbytheplatformsandchosendesign.1.2PVPlayerSDK使用范围PVPlayerSDKincludesallcomponentsneededtosatisfythedefinitionabovebutexcludestheapplication(graphicalorcommand-line)whichusesthePVPlayerSDK,theoperatingsystemorplatformthatPVPlayerSDKrunsonanddatasources(e.g.multimediafile,streamingserver)andsinks(e.g.audiodevice,display)forthemultimediapresentation.ThescopeofPVPlayerSDKcouldbefurtherreducedforparticularplatformwithparticularfeaturesets,butthisdocumentcoversthelargestextentofPVPlayerSDK.PVPlayerSDKiscomposedofandutilizesothercomponentsfromPacketVideo(e.g.OSCL,PVMFnodes)socertaindetailsmightbereferredtoanotherdocument.2.高层次设计(HLD)2.1简介和局限性PVPlayerSDK包含所有必要的特点来支持这个要求先前的部分。这个特性的要求是被设计来处理的很全面的应用程序。这个模块结构和设计的扩展提供了便利的机制,不过由于opencore的复杂性,相对起MPLAYER,VLC等多媒体播放器来说,扩展格式相对麻烦点。而且PVPlayer在新版本和升级PVPlayer的SDK里,可能会有不兼容的BUG。2.2开发环境和工具PVPlayerSDK是c++语言实现的,所以它需要ANSIC++开发工具支持平台。不过对于开发者不要求每个特征定义为c++标准。例如,RTTI异常处理。然而,C++编译环境是必需的,在Android环境中用的是G++3.3.3编译,PVPlayerSDK也需要另一种类型的接口(例如。C,Java),PVPlayerSDK提供了一种适配接口,但内部部件还需在c++环境下编译.PVPlayerSDK源代码是基于PacketVideo的操作系统(OSCL)和PacketVideo多媒体框架(PVMF)。PVPlayerSDK依赖OSCL来提供系统的功能,是便携式在平台上(例如,它作为一个操作系统的抽象层提供了平台的API来了PVPlayerSDK)。PVMF框架是确定多媒体架构包PVPlayerSDK。OSCL需要一个平台和服务的相对完整操作系统,如动态记忆、管理、多线程、文件I/O、网络、域名服务,时钟信息。2.3