Chinaunix首页 | 论坛 | 博客
  • 博客访问: 62240
  • 博文数量: 21
  • 博客积分: 651
  • 博客等级: 上士
  • 技术积分: 320
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-11 21:28
文章分类
文章存档

2012年(12)

2011年(9)

我的朋友
最近访客

分类: 嵌入式

2011-04-10 13:45:35

 OpenCore是Android的多媒体核心,它是一个基于C++的实现,定义了全功能的操作系统移植层,各种基本的功能均被封装成类的形式,各层次之间的接口多使用继承等方式。OpenCore是一个多媒体的框架,从宏观上来看,它主要包含了两大方面的内容:
  PVPlayer:提供媒体播放器的功能,完成各种音频(Audio)、视频(Video)流的回放(Playback)功能
  PVAuthor:提供媒体流记录的功能,完成各种音频(Audio)、视频(Video)流的以及静态图像捕获功能
  PVPlayer和PVAuthor以SDK的形式提供给开发者,可以在这个SDK之上构建多种应用程序和服务。在移动终端中常常使用的多媒体应用程序,例如媒体播放器、照相机、录像机、录音机等等。
  为了更好的组织整体的架构,OpenCore在软件层次在宏观上分成几个层次:
  OSCL:Operating System Compatibility Library (操作系统兼容库),包含了一些操作系统底层的操作,为了更好地在不同操作系统移植。包含了基本数据类型、配置、字符串工具、IO、错误处理、线程等内容,类似一个基础的C++库。
  PVMF:PacketVideo Multimedia Framework(PV多媒体框架),在框架内实现一个文件解析(parser)和组成(composer)、编解码的NODE,也可以继承其通用的接口,在用户层实现一些NODE。
  PVPlayer Engine:PVPlayer引擎。
  PVAuthor Engine:PVAuthor引擎。
  事实上,OpenCore中包含的内容非常多:从播放的角度,PVPlayer的输入(Source)是文件或者网络媒体流,输出(Sink)是音频视频的输出设备,其基本功能包含了媒体流控制、文件解析、音频视频流的解码(Decode)等方面的内容。除了从文件中播放媒体文件之外,还包含了与网络相关的RTSP流(Real Time Stream Protocol,实时流协议)。在媒体流记录的方面,PVAuthor的输入(Source)是照相机、麦克风等设备,输出(Sink)是各种文件,包含了流的同步、音频视频流的编码(Encode)以及文件的写入等功能。
  在使用OpenCore的SDK的时候,有可能需要在应用程序层实现一个适配器(Adaptor),然后在适配器之上实现具体的功能,对于PVMF的NODE也可以基于通用的接口,在上层实现,以插件的形式使用。

目录Opencore 中文文档
1
2
3
4
5
6

阅读(1431) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~