SymbianV6.0
使用媒体服务器(media server)处理多媒体应用,这种模型基于单线程工作模型,即所有的多媒体服务处在同一个线程中。这种模型在视频流,CD音质,移动商务和位置服务等性 能要求较高的服务处理时不能达到理想的效果;而且缺乏实时流支持,难以处理异步请求,在大量数据的装载过程中会遇到速度瓶颈。
SymbianV7.0
采用另外一种架构模型MMF(multimedia framework)
特点:
1. 支持多线程处理 multiple thread
2. 媒体格式识别 format recognition
3. 流传输 streaming
4. 媒体插件库 plug-in media component library
5. 控制框架中基础类库 base media classes wrapped in controller framework
6. 方便证书和第三方多媒体应用开发
总体描述:
MMF 主要依赖于controller framework,controller framework能够支持多媒体插件程序。
MMF类似于一个多媒体处理插件程序的仓库,它为硬件设备提供一般的接口,其中的关键部分是controller framework,由其管理插件程序的选择,装载以及插件间的交互。MMF采用Client/Server架构模型。
MMF为每个插件创建一个客户端线程和服务器端线程,如果有多个MMF插件程序执行,那么就会有更多的线程。所有线程运行在一个进程中,能减少服务请求时 的上下文交换,这样能提供MMF的效率。此外MMF的线程间通信用ITC(interthread communication)取代了IPC机制。
详细架构
总体模块结构
1.客户端插件APIs为应用程序访问插件提供途径,具体的途径由Plug-in Utility对象提供。
2.Controller Framework 选择和启动相应的插件程序,即传递客户端消息到相应的插件程序。
3.相应的controller plug-ins 负责处理从客户端来的数据。
4.Sound device 通过硬件设备接口为音频硬件提供通用接口。
5.Audio policy 解决客户端同时请求音频硬件使用的优先权问题。
6.Hardware device API提供一些底层的硬件接口。