1 引言
Symbian S60 平台的Multimedia Framework( MMF) API 可以为上层应用程序提供多媒体服务,为用户创建和分发丰富多彩的音乐应用。作为一个多媒体处理单元的插件集,MMF 提供了操作终端硬件的通用接口,支持不同的音频操作,可实现本地回放和流式回放两种模式,可播放多种音频格式。
在现有基于Symbian OS 的多媒体播放器的相关文献中,讨论了基于Symbian 平台的流媒体播放器移动客户端的设计原理,给出了指导性意见,并在结构、缓冲等方面给出了优化建议,在此基础上提出了用户界面的设计方案。但该文献没有给出多媒体技术的具体实现。本文设计并实现了基于Symbian 平台的多媒体播放器,但其仅支持本地播放,并没涉及到流式播放的相关技术。
MMusic 是一款基于MMF 架构,用于播放多种音乐文件的多媒体播放软件。它不仅实现了音乐文件的本地播放,同时支持流式播放。除此之外,该音乐播放器还支持音乐下载、歌词下载及播放同步等功能。其界面美观、操作简单且具有多种功能。
2 系统总体框架设计
在设计系统框架时,首先明确了播放器需要实现的四项基本功能: ①支持mp3、wmv、aac 等多种格式的本地音频播放; ②支持流式音频播放; ③支持歌曲搜索及下载的功能; ④支持歌词同步的功能。
MMusic 播放器的程序实现基于Symbian S60 平台的应用程序架构,采用多视图框架,根据不同的功能构造不同的视图。其视图包括播放界面( 主界面) 、搜索歌曲界面、音乐媒体库界面和电台列表界面。其中播放界面是整个播放器的核心界面,主要负责音频媒体的播放,包括本地播放和流式播放。
根据播放模式的不同,动态选择相应的菜单和播放引擎。本地播放使用CPlayerAdapter 引擎。该引擎使用音频播放类CMdaAudioPlayerUTIlity 类及其相关的观察器MMdaAudioPlayerCallback 来实现本地音频播放。流式播放则使用CPluginAdaper 引擎来实现,它使用了CMdaAudioOutputSTream 和MMdaAudioOutputStreamCallback 类。
MMusic 音乐播放器按功能可划分为六个模块:
①UI 模块,负责各个界面显示和界面间的切换,并对用户按键进行处理;②本地播放模块,可以提供本地音频文件播放及音量控制等服务;③流式播放模块,实现与服务器的交互与流式播放;④数据下载模块,负责音频数据的下载及存储;⑤歌词同步模块,保证音频播放与歌词播放的同步;⑥服务器模块,提供音乐文件和歌词等下载资源。不同模块的关系如图1 所示。

图1 MMusic 播放器功能关系图
3 关键技术的介绍
3. 1 音频播放
音频播放功能可以通过MMF 所提供的接口来实现。其中音频播放类CMdaAudioPlayerUtility 类提供本地播放的API,而CMdaAudioOutputStream 类则提供流式播放的API。
3. 1. 1 本地播放引擎
MMusic 播放器把对音频文件的初始化、播放、暂停等操作封装在本地播放引擎CPlayer - Adapter中。该引擎包含支持音频回放操作和简单元数据读取操作的音频播放类CMdaAudio - PlayerUtility。由于它的所有操作都是异步的,需要一个客户端来*音频播放操作。播放引擎CPlayerAdapter 须继承MMdaAudioPlayerCallback 接口类。该接口类提供了两个方法,MapcInitComplete( ) 和MapcPlayComplete( ) 。本地播放流程如图2 所示。首先通过调用CMdaAudioPlayerUtility: : NewFilePlayerL( ) 函数构造并创建一个音频播放器的实例。当打开及初始化一个音频采样的工作结束后,系统自动调用MapcInit-Complete( ) 方法,通知客户端创建实例的结果。若成功创建,则可调用CMdaAudioPlayerUtility: : Play( ) 方法来播放音频文件。当播放某段音频采样操作完成后,系统再通过MapcPlayComplete( ) 回调函数通知客户端播放已完成。
突破人形机器人控制器性能瓶颈:高效稳定的...
时间:2026-03-05
一文讲懂开关电源的阻尼振荡
时间:2026-03-05
使用过滤器电容器和诱导器来抑制受辐射的EM...
时间:2026-03-05
智能硬件遭遇销量困局 看社区O2O如何破解
时间:2026-03-05
物联网新时代,关于安全的5大错误认知
时间:2026-03-05
智能停车场一体化控制器方案简述
时间:2026-03-05
ZigBee应用于智能家居是否存在严重漏洞?
时间:2026-03-05
推动物联网发展,供电是基础设备的生命线
时间:2026-03-05
楼宇对讲走向标准化 四大发展方向明确
时间:2026-03-05
最帅“黑”科技:让普通手机可扫描3D
时间:2026-03-05
瞬间抑制二极管(TVS)/瞬间抑制二极管(TVS)是...
时间:2026-03-04
什么是霍尔传感器
时间:2026-03-05
半导体材料的主要种类有哪些?
时间:2026-03-04
高级封装,高级封装是什么意思
时间:2026-03-04
数字比较器,数字比较器是什么意思
时间:2026-03-04
常用整流二极管型号大全
时间:2026-03-04
S/HS固态继电器原理简介
时间:2026-03-04
稳压二极管的选用和代换
时间:2026-03-04
TVS器件的电特性有哪些
时间:2026-03-04
TVS二极管的分类/应用,TVS二极管的特点/选用...
时间:2026-03-04