2.1 简 介和局限性
PVPlayer SDK包含所有必要的特点来支持这个要求先前的部分。这个特性的要求是被设计来处理的很全面的应 用程序。这个模块结构和设计的扩展提供了便利的机制,不过由于opencore的复杂性,相对起MPLAYER,VLC等多媒体播放器来说,扩展格式相对 麻烦点。而且PVPlayer在新版本和升级PVPlayer的SDK里,可能会有不兼容的BUG。
2.2 开 发环境和工具
PVPlayer SDK是c++语言实现的,所以它需要ANSI C + +开发工具支持平台。不过对于开发者不要求每个特征定义为c++标准。例如,RTTI异常处理。然而,C + +编译环境是必需的,在Android环境中用的是G++ 3.3.3编译,PVPlayer SDK也需要另一种类型的接口(例如。C,Java),PVPlayer SDK提供了一种适配接口,但内部部件还需在c++环境下编译.
PVPlayer SDK源代码是基于PacketVideo的操作系统(OSCL)和PacketVideo多媒体框架(PVMF)。PVPlayer SDK依赖OSCL来提供系统的功能,是便携式在平台上(例如,它作为一个操作系统的抽象层提供了 平台的API来了PVPlayer SDK)。PVMF框架是确定多媒体架构包PVPlayer SDK。OSCL需要一个平台和服务的相对完整操作系统,如动态记忆、管理、多线程、文件I / O、网络、域名服务,时钟信息。
2.3 结 构和组件
PVPlayer SDK是一个标准架构,结构灵活的、可扩展 的,轻巧的多媒体播放框架。PVPlayer引擎是播放器的核心。引擎使用PVMF节点和节点图表数据处理和内部注册 时,节点的图形结构。下图是PVPlayer SDK简单框架图。
2.4 控制流
回放控制PVPlayer SDK是user(这里一般是开发者)的PVPlayer,典型的LINUX应用程序,通过BINDLE一个服务给JAVA层调用。PVPlayer SDK api提供了如调用初使化、setdatasourse、prepare、开始(停止)多媒体播放等等。在PVPlayer SDK、控制流量通常是自上而下的。这个应用程序请求被PVPlayer收到后经引擎适配。这个PVPlayer引擎根据先前注册的节点并通过相应 的标识控制PVMF节点数据。有一些控制数据连接节点之间,但主要的控制数据PVPlayer引擎和PVMF节点之间。
2.5 数 据流
PVPlayer SDK多媒体数据流过程的通过一个或更多的PVMF节点连接在一起。PVMF节点类型使用和结构将取决于回放文 件源参数的类型进行相应播放操作。文件类型主要是提取文件元数据的具体参数,由PVPlayer引擎或PVMF提取节点PVPlayer SDK通过适当的接口返回给用户。