学术文化网:本站代理期刊可作为职称及学位评审依据;并代写(职称、本科、硕士、博士)论文,代写代发论文一条龙服务;保证原创,保证质量,100%通过,保密服务

学术文化网

重点推荐省级国家级期刊、北大中文核心、CSSCI、EI、SCI发表,稳妥操作,速度快,包发表。有意向联系客服咨询。
论文代写:十年专业服务品质,全部由期刊编辑、硕士、博士撰写;保证原创、版权归您;保证通过、否则全额退款。代写论文申请表
论文发表:与百家优秀期刊合作,代理审核组稿,论文发表涵盖所有专业领域,全部正刊,保证出刊,否则全额退款。代写代发论文申请表
业务合作:因业务发展需要,诚招优秀写手合作,要求硕士以上学历,不限专业,另诚征优秀期刊代理合作,具体详谈。QQ:415835425 代写论文写手申请表
当前位置: 主页 > 工科论文

基于Symbian OS的卡拉OK应用的设计与实现

基于Symbian OS 的卡拉OK 应用的设计与
实现
罗寅卓1,汤跃忠2**
作者简介:罗寅卓,(1986-),男,研究生,智能手机应用研发
通信联系人:汤跃忠,男,架构系统软件工程师,智能手机应用. E-mail: yuezhong.tang@nokia.com
5 (1. 北京邮电大学信息与通信工程学院先进网络技术实验室,北京 100876;
2. 诺基亚(中国)投资有限公司,北京 100176)
摘要:本文给出了一种在智能手机操作系统Symbian OS 上面实现卡拉OK 功能的方法。文章
首先讨论了当前移动音乐应用的发展现状,得出将卡拉OK 与移动终端结合来产生新的移动
音乐应用的新观点。随后结合MVC 框架和Symbian OS 的特点,进而设计出了卡拉OK 应用的
10 程序架构,并在NOKIA N97 mini 上进行了实现。最后,结合此应用给移动终端用户带来的
新的用户体验,总结展望手机音乐应用未来的发展方向。
关键词:移动音乐应用;卡拉OK;Symbian
中图分类号:TP311
 30
0 引言
近几年来,中国移动娱乐市场发展迅猛。根据《2010 年中国移动娱乐市场盘点》[1],这
份报告指出:无线音乐是中国移动娱乐市场中贡献最大的无线娱乐应用(无线音乐用户渗透
率较高,无线音乐用户数已突破5.5 亿)。但报告同时也指出,无线音乐业务目前主要以彩
35 铃、振铃为主要音乐产品,无线音乐产品形式较为简单;而一半以上用户习惯把手机当作音
乐播放器使用,线上下载和视听的用户渗透率低。
经过对目前音乐娱乐市场现状进行调查后,发现卡拉OK 是现今最受大众欢迎的音乐休
闲娱乐方式之一。传统的无线音乐产品始终将用户放在了一个被动接收的位置,而卡拉OK
这种音乐娱乐形式则为用户提供了巨大的积极参与的空间。因此,如果能将卡拉OK 这种音
40 乐娱乐方式引入到无线音乐娱乐市场中,将会为中国移动娱乐市场的发展做出更加卓越的贡
献。
在调研的过程中也发现:虽然目前市场上有很多手机号称是“卡拉OK”手机或是拥有
 “卡拉OK”应用,但经过调研发现这些手机应用只不过是能将歌词同步显示的音乐播放器,
并没有完全实现卡拉OK 这种音乐娱乐方式的完整功能。因此,本文以智能手机巨头NOKIA
公司出产的搭载有45 Symbian OS 的N97 mini 为平台,进行了大胆探索,最终得出了一套基于
Symbian OS 的个性化卡拉OK 应用的解决方案,为今后卡拉OK 娱乐应用在个人移动终端
上的发展提供了有价值的参考和启发。
1 背景介绍和技术难点分析
1.1 卡拉OK 娱乐方式简介
50 卡拉OK 源于日语,意指无人乐队,是一种音乐娱乐休闲方式。这种娱乐方式通过把歌
曲原唱和去除掉原唱人声的音乐伴奏以及相应的歌词存储在某种存储介质上,然后再利用专
门的设备一边播放音乐伴奏、一边同步显示相应的歌词,使得卡拉OK 参与者可以一边看着
歌词一边跟随音乐伴奏演唱歌曲。因为有了音乐伴奏和同步歌词提示,极大的降低了卡拉
OK 参与者的歌唱难度。并且设备还可以同步录入参与者的歌声,以便与好友进行分享,从
55 而增加了这项娱乐活动的趣味性。另外参与者在演唱过程中,还可以在原唱和伴奏之间无缝
的进行切换,这可以帮助参与者在演唱时更容易找到歌曲的旋律。因此自从1971 年井上大
佑发明了最早的音乐伴奏带之后,卡拉OK已成为现今最受欢迎的大众休闲娱乐方式之一[2]。
1.2 Symbian OS 简介
Symbian OS(中文译音“塞班操作系统”)是专门针对手机研发的操作系统。Symbian
60 OS 的前身是EPOC(Electronic Piece of Cheese),其意为“用户在使用手机时可以像吃乳酪
一样简单”,这就是Symbian OS 最初的设计理念[3]。
经过不断的发展,Symbian OS 已成为一个功能强大、反应迅速、支持多任务同时执行
的纯32 位操作系统。同时由于Symbian OS 具有低功耗、内存开销小的优点,因而非常适
合搭载在体积小、电量有限的手持移动设备上。特别是今天,以N97 mini 为代表的Symbian
65 OS 的智能手机,其性能已经可以等同甚至优于一台小型的个人PC。
1.3 技术难点分析
首先,应用本身需要对卡拉OK 资源文件进行高效可靠的管理。为了完全实现卡拉OK
的功能,需要应用中的每一首歌曲都必须同时具有以下三个文件:歌曲原唱文件、去除掉人
声的音乐伴奏文件和相应的歌词文件。在这三个文件中,无论缺少了哪一个,都会影响到卡
70 拉OK 应用的正常运行。另一方面,随着歌曲艺术的不断发展,歌曲的总数将会越来越多,
如何为用户简化歌曲库的更新,同时又要保证对歌曲库的操作不会出错,成为本应用实现过
程中的第一个难点。
其次,卡拉OK 这种音乐应用和其它传统的音乐应用相比,最大的不同点是:它不仅需
要放音,还需要录音,并且放音和录音需要同步进行。这就需要操作系统支持高实时性的多
75 任务处理。一般来说,操作系统在执行多任务时,对比执行单一任务时,系统的运行效率会
有所降低,且会消耗更多的系统资源。由于手机的体积小、电量少等因素,使得手机的硬件
资源会比较紧张。因此如何在满足高实时性的同时又不太多的降低手机的效率和较少的消耗
系统资源成为本应用实现过程中的第二个难点。
 2 架构设计
80 2.1 架构简介
OK
图1 基于MVC 框架的卡拉OK 应用结构设计图
Fig.1 Karaoke application architecture design based on MVC framework
85
本文中的卡拉OK 应用是参照MVC 框架(Model-View-Controller)[4]进行设计的。如图
1 所示,整个应用包括模型、视图和控制器三大部分:模型(Model)实现了卡拉OK 的基
本功能,包括卡拉OK 播放、录音、歌词同步和文件管理;视图(View)负责将卡拉OK 歌
曲信息、即时的歌词和程序界面呈现给用户;控制器(Controller)用来接收用户输入的命
90 令从而对模型进行控制管理。
按照MVC 框架来设计应用程序结构的好处有:1、通过将程序的逻辑和显示相分离,
使得模型中的每个模块可以被不同的视图进行调用,从而大大提高了代码的可重用性;2、
将整个应用分成模型、视图和控制器三个相互独立的模块,可以减少模块之间的干扰;3、
控制器的引入提高了应用程序的灵活性。
95 2.2 核心功能模块说明
2.2.1 卡拉OK 文件管理模块
如前所述,每一首可用的卡拉OK 歌曲都需要包括三个文件:歌曲原唱文件、歌曲伴奏
文件和歌词文件。为了实现对这些卡拉OK 文件的高效可靠的管理,本应用设计了一种以
“.ok”为扩展名的文件来解决文件管理的难题。这种“.ok”扩展名的文件的结构如下表所
100 示:
105
 表1 “.ok”扩展名文件结构
Tab.1 “.ok” file structure
模块顺序 模块名称 模块内容简介
1 卡拉OK 歌曲信息模块 遵循当前使用范围最广的metadata 容器标准——ID3v2.3.0 规
范[5],来制作ID3 头部。其中包含的ID3 的标签有:APIC(附
加图片)、SYLT(同步歌词)、TIT2(歌曲名称)、TOPE(歌
手名称)、TSIZ(卡拉OK 歌曲原声文件大小)等
2 卡拉OK 歌曲原声模块 采用192Kbps,44100Hz,恒定采样精度(CBR),立体声的
MP3 格式的歌曲原声文件
3 卡拉OK 歌曲伴音模块 采用192Kbps,44100Hz,恒定采样精度(CBR),立体声的
MP3 格式的歌曲伴音文件
110 从上表中可以看出,这种“.ok”扩展名的文件是一种二进制文件,通过将歌曲原唱文
件、歌曲伴奏文件和歌词文件合并成为一个新的文件,减轻了应用对文件的管理工作。因而,
只需要将这种制作好的文件拷贝到手机设备中,应用就可以通过扩展名去自行搜索并更新用
户的歌曲库,从而使得用户在查找本机上的卡拉OK 歌曲时更加方便。
另外,将卡拉OK 歌曲原声模块和卡拉OK 歌曲伴音模块按照上表中的结构和设定来放
115 置,大大简化了用户在卡拉OK 播放过程中伴音和原声之间切换的工作。因为以相同的位律、
采样率、声道数、恒定采样精度来产生的MP3 数据的每一帧的长度近似相等。所以当用户
需要从原声切换到伴音或是从伴音切换到原声的时候,应用只需要将文件的指针移到当前的
位置值加上或是减去原声模块的长度的地方后,继续取后续的歌曲数据即可。而这个原声模
块的长度可以在歌曲开始播放前,“.ok”文件中的卡拉OK 歌曲信息模块中的TSIZ 标签中
120 得到。
2.2.2 卡拉OK 播放和录音模块
如前文所述,为了实现卡拉OK 同步播放和录音功能,本文对Symbian OS 上的多任务
解决方案进行了详细的探究,发现Symbian OS 上的多任务解决方案有活动对象和多线程两
种方式。他们实现的原理各有不同,首先是活动对象的工作方式如下图所示:
125
图2 活动对象工作时序图
Fig.2 Active object sequence diagram
从上图中不难看出,活动对象这种机制是一个将每个活动对象的请求进行收集、排队然
130 后处理的方式。活动对象在提交请求时,不会妨碍到系统进程的运行,因为只有当系统进程
空闲的时候才会向活动对象管理器索要具有最高优先级的请求来进行处理。这种实现方式有
利于减少任务切换过程中系统资源的消耗,并且由于活动对象提交请求时不会中断应用进程
中正在处理的任务,因而活动对象随时都可以向活动对象管理器发送请求。但也正因为这个
 原因,活动对象这种机制无法实现卡拉OK 中具有高实时性的同步放音录音功能。因为按照
135 这种实现方式,放音和录音这两个请求中,总有一个请求的优先级会高于另一个的优先级,
且由于从应用开始播放音乐开始,直到整首歌曲播放完毕为止,播放的请求和录音的请求都
会一直不断的发送个活动对象管理器。这将导致在每次活动对象管理器对请求进行排序后,
要么总是播放的请求在第一个,要么总是录音的请求在第一个,这就使得应用进程一直都只
在处理同一个请求,也即要么一直在放音,要么一直在录音。好在Symbian OS 还有另一种
140 支持多任务的方式——多线程。多线程的工作方式如下图所示:
图3 多线程工作时序图
Fig.3 Multi-thread sequence diagram
145 由于在多线程的工作方式下,播放线程和录音线程是通过抢占应用进程的方式来为自己
学术论文网Tag:论文发表 计算机论文 代发论文 代写管理论文 职称论文发表

本站郑重声明:
  1、我们与数十所知名高校博士强强联手,保持常年稳定合作关系,论文质量更有保证;;
  2、写作领域涉及所有专业,实力操作,出稿更快,质量更高,通过率100%;
  3、所有代写文章,全部原创,包检测,保证质量,后续免费修改,保证通过;
  4、信誉实力服务,专业代写毕业论文,职称论文,硕博士论文,留学生论文,成熟操作;
------分隔线----------------------------
栏目列表
联系我们
服务承诺
推荐内容