CN109637268A - 一种音乐教学app操作方法及其实现系统 - Google Patents
一种音乐教学app操作方法及其实现系统 Download PDFInfo
- Publication number
- CN109637268A CN109637268A CN201811639004.9A CN201811639004A CN109637268A CN 109637268 A CN109637268 A CN 109637268A CN 201811639004 A CN201811639004 A CN 201811639004A CN 109637268 A CN109637268 A CN 109637268A
- Authority
- CN
- China
- Prior art keywords
- layer
- chinese operas
- interface
- music score
- music
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B15/00—Teaching music
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种音乐教学APP操作方法及其实现系统,操作方法包括,步骤一:应用层用户进行打开曲谱文件的操作;步骤二:应用层根据用户操作调用相应接口层提供的接口,请求下位层对音乐教学用曲谱XML文件进行解析;步骤三:接口层吸收不同移动平台间的差异,并将应用层发来的解析XML请求传递给服务层;步骤四:服务层完成XML文件的解析,生成对应的曲谱PDF文件和对应的音频数据;步骤五:服务层将解析结果与生成的PDF文件传回应用层;步骤六:服务层将生成的音频数据发送给驱动层;将钢琴音色模块抽取出来作为独立的音色库,实现了移动平台对音色库的快速加载,解决了播放过程中因为加载时间过长导致声音出现卡顿的问题。
Description
技术领域
本发明属于音乐教学技术领域,具体涉及一种音乐教学APP操作方法及其实现系统。
背景技术
随着近年来音乐教学的盛行,辅助音乐学习的工具(硬件/软件,PC/移动平台)也如雨后春笋般出现(例如iGlove智能钢琴杆,以及与其配套的移动平台音乐教学APP等)。
其中现有的移动平台音乐教学APP存在着以下问题:
1、加载过大的音色库对于高性能的PC来说一般问题不大,但移动平台的性能往往不及PC,在加载过大音色库时会非常耗时,播放曲谱时也会因此导致卡顿现象发生。
2、现有的音乐教学APP系统没有采用分层架构进行开发,在各个平台上往往自成一套体系,同一套软件在不同平台上甚至有着不同的展现效果。这样不利于软件在多平台上进行持续性的开发和维护。
发明内容
本发明的目的在于提供一种音乐教学APP操作方法及其实现系统,以解决上述背景技术中提出的问题;本发明提供的一种音乐教学APP操作方法及其实现系统,具有提高曲谱加载速度和便于开发维护等特点。
为实现上述目的,本发明提供如下技术方案:一种音乐教学APP操作方法。操作方法包括,
步骤一:应用层用户进行打开曲谱文件的操作;
步骤二:应用层根据用户操作调用相应接口层提供的接口,请求下位层对音乐教学用曲谱XML文件进行解析;
步骤三:接口层吸收不同移动平台间的差异,并将应用层发来的解析XML请求传递给服务层;
步骤四:服务层完成XML文件的解析,生成对应的曲谱PDF文件和对应的音频数据;
步骤五:服务层将解析结果与生成的PDF文件传回应用层;
步骤六:服务层将生成的音频数据发送给驱动层;
步骤七:应用层获取PDF文件后展示曲谱PDF,并根据用户操作通知下位层开始曲谱播放;
步骤八:驱动层根据上位层的播放指令进行曲谱播放。
在本发明中进一步地,所述应用层通过调用接口层的读取XML文件接口,将曲谱XML信息传入服务层,服务层开始解析曲谱。
在本发明中进一步地,服务层解析曲谱后生成曲谱PDF文件和音频数据,并将PDF文件信息传回应用层用于曲谱展示,将音频数据传给驱动层用于曲谱播放。
在本发明中进一步地,所述驱动层的内部设有监听器,通过监听器对实时播放的情况进行监听,并向应用层回传播放进度等信息。
在本发明中进一步地,应用层展示PDF文件后,通过调用设置监听器接口配置监听器,然后可以调用播放接口开始曲谱播放。
在本发明中进一步地,所述驱动层设置有播放状态接口,用于通知应用层当前的播放状态。
在本发明中进一步地,所述的一种音乐教学APP操作方法的实现系统,实现系统包括:该系统采用分层架构,包括应用层、接口层、服务层、驱动层,其中,应用层负责UI交互,将用户的打开曲谱文件的操作指令传递到接口层,接口层吸收平台差异后将操作指令传递到服务层,服务层根据操作指令解析曲谱XML文件并生成相应的曲谱PDF文件和音频数据,并将曲谱PDF文件传回应用层,将音频数据传给驱动层,驱动层将音频数据播放进度实时回传给应用层,并在应用层的UI界面上进行曲谱PDF及播放进度的展示,且该系统基于移动平台。
在本发明中进一步地,所述移动平台包括Android平台和iOS平台,所述驱动层包括Android音频驱动模块和iOS音频驱动模块分别用于驱动Android平台和iOS平台下的音频设备。
在本发明中进一步地,所述应用层实现了不同移动平台下音乐教学App的UI界面,所述接口层为不同平台的应用层提供对应的服务层接口所述服务层主要由合成器、音序器、音乐对象类模块构成,其中,音序器用于对音频数据进行定位,并将期望播放的音频数据传给驱动层,合成器用于合成特定的声音。
在本发明中进一步地,所述合成器与音色库相连接,音色库为合成器提供多种乐器演奏效果,所述音色库包含钢琴音色、吉他音色等等的音色模块,将钢琴音色模块从所述音色库中提取出来生成独立的音色库,以加快软件对所述独立的音色库的加载。
与现有技术相比,本发明的有益效果是:
1、将钢琴音色模块抽取出来作为独立的音色库,实现了移动平台对音色库的快速加载,解决了播放过程中因为加载时间过长导致声音出现卡顿的问题。
2、通过抽象出接口层来吸收平台差异,实现不同平台应用层与同一服务层的交互;针对不同平台的APP应用层提供类似的功能接口,统一下位层处理。将下位层的处理状态通过回调的方式通知给应用层,有利于上位层对下位层的状态监视。分层架构还有利于各层的独立调试,进而有利于APP整体的持续维护与开发。
附图说明
图1为本发明的操作流程示意图;
图2为本发明的系统结构示意图;
图3为本发明的系统内部结构示意图;
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例
请参阅图1,其为本发明的操作流程示意图,为本发明提供以下技术方案:一种音乐教学APP操作方法,操作方法包括,
步骤一:应用层用户进行打开曲谱文件的操作;
步骤二:应用层根据用户操作调用相应接口层提供的接口,请求下位层对音乐教学用曲谱XML文件进行解析;
步骤三:接口层吸收不同移动平台间的差异,并将应用层发来的解析XML请求传递给服务层;
步骤四:服务层完成XML文件的解析,生成对应的曲谱PDF文件和对应的音频数据;
步骤五:服务层将解析结果与生成的PDF文件传回应用层;
步骤六:服务层将生成的音频数据发送给驱动层;
步骤七:应用层获取PDF文件后展示曲谱PDF,并根据用户操作通知下位层开始曲谱播放;
步骤八:驱动层根据上位层的播放指令进行曲谱播放。
本实施例中驱动层分为初始化子模块,播放开始子模块,播放停止子模块和回调与处理子模块,初始化子模块负责对应驱动层的初始化工作:生成驱动对象,配置音频参数,分配缓冲空间,注册回调函数;播放开始子模块驱动硬件开始音频数据的播放,并在音频数据缓冲区空闲后调用回调函数来获取接下来需要播放的音频数据;播放停止子模块驱动硬件停止音频数据的播放,并停止调用回调函数;回调与处理子模块负责在播放过程中回调音序器的处理函数,从合成器获取下一帧待播放的音频数据,并压入播放缓冲队列等待硬件播放。
具体的,应用层通过调用接口层的读取XML文件接口,将曲谱XML信息传入服务层,服务层开始解析曲谱,本实施例中应用层通过调用读取XML文件接口,传入对应乐谱的XML信息,服务层会开始解析,服务层解析完毕后将解析结果通过读取XML文件接口对应的回调函数通知回应用层,将生成的音频数据传给驱动层。
具体的,服务层解析曲谱后生成曲谱PDF文件和音频数据,并将PDF文件信息传回应用层用于曲谱展示,将音频数据传给驱动层用于曲谱播放,本实施例中若读取XML文件成功的话,应用层可以调用导出曲谱PDF文件接口并等待回调信息,PDF文件若生成成功,导出曲谱PDF文件对应回调函数会被调用并将结果以及生成的PDF文件地址通知应用层,应用层展示PDF以后,可以通过调用设置监听器接口配置监听器回调函数,以准备播放曲谱。
具体的,驱动层的内部设有监听器,通过监听器对实时播放的情况进行监听,并向应用层回传播放进度等信息,本实施例中监听器设置完毕后可以通过调用设置播放状态接口,并传入开始播放参数来命令底层开始曲谱播放,驱动层开始播放后通过设置播放状态接口对应的回调函数通知上层播放已开始。
具体的,应用层展示PDF文件后,通过调用设置监听器接口配置监听器,然后可以调用播放接口开始曲谱播放,本实施例中播放过程中设置了监听器,会根据底层播放情况调用设置监听器接口对应的回调函数实时向应用层进行通知(播放到的音符坐标情报等等),应用层可根据回调信息进行相应的UI展示。
具体的,驱动层设置有播放状态接口,用于通知应用层当前的播放状态,本实施例中播放状态接口用于传入停止播放参数来命令底层停止曲谱播放,底层停止曲谱播放后通过设置播放状态接口回调函数通知上层播放已停止。
请参照图2,为本发明的系统结构示意图,配合参照图1,进一步地,本发明所述的一种音乐教学APP操作方法的实现系统,该系统采用分层架构,包括应用层、接口层、服务层、驱动层,其中,应用层负责UI交互,将用户的打开曲谱文件的操作指令传递到接口层,接口层吸收平台差异后将操作指令传递到服务层,服务层根据操作指令解析曲谱XML文件并生成相应的曲谱PDF文件和音频数据,并将曲谱PDF文件传回应用层,将音频数据传给驱动层,驱动层将音频数据播放进度实时回传给应用层,并在应用层的UI界面上进行曲谱PDF及播放进度的展示,且该系统基于移动平台。
请参照图3,为本发明的系统内部结构示意图,配合参照图1和2,具体的,移动平台包括Android平台和iOS平台,驱动层包括Android音频驱动模块和iOS音频驱动模块分别用于驱动Android平台和iOS平台下的音频设备,本实施例中该APP既可用于Android客户端也可用于iOS客户端,满足各类服务人群的需求。
具体的,应用层实现了不同移动平台下音乐教学App的UI界面,所述接口层为不同平台的应用层提供可以简单使用的服务层接口,服务层主要由合成器、音序器、音乐对象类模块构成,其中,音序器用于对音频数据进行定位,并将期望播放的音频数据传给驱动层,合成器用于合成特定的声音,本实施例中接口层针对不同平台下APP应用层提供功能接口;将下位层的处理状态通过回调方法告知应用层。
具体的,合成器与音色库相连接,音色库为合成器提供多种乐器演奏效果,音色库包含钢琴音色、吉他音色等等的音色模块,将钢琴音色模块提取出来生成独立的音色库以加快音色库的加载,本实施例中音乐教学APP是针对钢琴的教学,因此将音色库中钢琴音色进行单独抽出,并打包生成更为精简的音色库来使用,以此解决播放过程中可能发生的卡顿问题。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (10)
1.一种音乐教学APP操作方法,其特征在于:操作方法包括,
步骤一:应用层用户进行打开曲谱文件的操作;
步骤二:应用层根据用户操作调用相应接口层提供的接口,请求下位层对音乐教学用曲谱XML文件进行解析;
步骤三:接口层吸收不同移动平台间的差异,并将应用层发来的解析XML请求传递给服务层;
步骤四:服务层完成XML文件的解析,生成对应的曲谱PDF文件和对应的音频数据;
步骤五:服务层将解析结果与生成的PDF文件传回应用层;
步骤六:服务层将生成的音频数据发送给驱动层;
步骤七:应用层获取PDF文件后展示曲谱PDF,并根据用户操作通知下位层开始曲谱播放;
步骤八:驱动层根据上位层的播放指令进行曲谱播放。
2.根据权利要求1所述的一种音乐教学APP操作方法,其特征在于:所述应用层通过调用接口层的读取XML文件接口,将曲谱XML信息传入服务层,服务层开始解析曲谱。
3.根据权利要求1所述的一种音乐教学APP操作方法,其特征在于:服务层解析曲谱后生成曲谱PDF文件和音频数据,并将PDF文件信息传回应用层用于曲谱展示,将音频数据传给驱动层用于曲谱播放。
4.根据权利要求1所述的一种音乐教学APP操作方法,其特征在于:所述驱动层的内部设有监听器,通过监听器对实时播放的情况进行监听,并向应用层回传播放进度等信息。
5.根据权利要求4所述的一种音乐教学APP操作方法,其特征在于:应用层展示PDF文件后,通过调用设置监听器接口配置监听器,然后可以调用播放接口开始曲谱播放。
6.根据权利要求1所述的一种音乐教学APP操作方法,其特征在于:所述驱动层设置有播放状态接口,用于通知应用层当前的播放状态。
7.根据权利要求1-6中任一项所述的一种音乐教学APP操作方法的实现系统,其特征在于:该系统采用分层架构,包括应用层、接口层、服务层、驱动层,其中,应用层负责UI交互,将用户的打开曲谱文件的操作指令传递到接口层,接口层吸收平台差异后将操作指令传递到服务层,服务层根据操作指令解析曲谱XML文件并生成相应的曲谱PDF文件和音频数据,并将曲谱PDF文件传回应用层,将音频数据传给驱动层,驱动层将音频数据播放进度实时回传给应用层,并在应用层的UI界面上进行曲谱PDF及播放进度的展示,且该系统基于移动平台。
8.根据权利要求7所述的一种音乐教学APP操作方法的实现系统,其特征在于:所述移动平台包括Android平台和iOS平台,所述驱动层包括Android音频驱动模块和iOS音频驱动模块分别用于驱动Android平台和iOS平台下的音频设备。
9.根据权利要求7所述的一种音乐教学APP操作方法的实现系统,其特征在于:所述应用层实现了不同移动平台下音乐教学App的UI界面,所述接口层为不同平台的应用层提供对应的服务层接口,所述服务层主要由合成器、音序器、音乐对象类模块构成,其中,音序器用于对音频数据进行定位,并将期望播放的音频数据传给驱动层,合成器用于合成特定的声音。
10.根据权利要求9所述的一种音乐教学APP操作方法的实现系统,其特征在于:所述合成器与音色库相连接,所述音色库为所述合成器提供多种乐器演奏效果,将钢琴音色模块从所述音色库中提取出来生成独立的音色库,以加快软件对所述独立的音色库的加载。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811639004.9A CN109637268A (zh) | 2018-12-29 | 2018-12-29 | 一种音乐教学app操作方法及其实现系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811639004.9A CN109637268A (zh) | 2018-12-29 | 2018-12-29 | 一种音乐教学app操作方法及其实现系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109637268A true CN109637268A (zh) | 2019-04-16 |
Family
ID=66055212
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811639004.9A Pending CN109637268A (zh) | 2018-12-29 | 2018-12-29 | 一种音乐教学app操作方法及其实现系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109637268A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114845169A (zh) * | 2022-04-29 | 2022-08-02 | 东风汽车有限公司东风日产乘用车公司 | 播放控制方法、播放控制装置、播放终端以及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1462395A (zh) * | 2001-05-07 | 2003-12-17 | 科学园株式会社 | 电子计算机的接口驱动器程序 |
CN103064662A (zh) * | 2012-08-28 | 2013-04-24 | 华南理工大学 | 基于Android平台的PhoneGap跨平台媒体扩展框架 |
CA2799041A1 (en) * | 2011-12-23 | 2013-06-23 | Research In Motion Limited | Cross-platform software distribution |
CN103777942A (zh) * | 2013-12-06 | 2014-05-07 | 深圳市证通电子股份有限公司 | 应用于金融终端的嵌入式软件产品的开发框架 |
US9082380B1 (en) * | 2011-10-31 | 2015-07-14 | Smule, Inc. | Synthetic musical instrument with performance-and/or skill-adaptive score tempo |
CN106155697A (zh) * | 2016-07-30 | 2016-11-23 | 北京慧摩尔科技有限公司 | 一种面向服务的开发框架(YC‑Framework) |
CN106951457A (zh) * | 2017-02-24 | 2017-07-14 | 北京银河润泰科技有限公司 | 曲谱的处理方法及装置 |
CN106970790A (zh) * | 2017-03-09 | 2017-07-21 | 腾讯科技(深圳)有限公司 | 一种应用程序创建的方法、相关设备及系统 |
CN108228253A (zh) * | 2017-12-29 | 2018-06-29 | 武汉璞华大数据技术有限公司 | 一种app构建方法及系统 |
CN108319413A (zh) * | 2018-01-29 | 2018-07-24 | 咪咕音乐有限公司 | 一种音乐播放方法、装置及存储介质 |
-
2018
- 2018-12-29 CN CN201811639004.9A patent/CN109637268A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1462395A (zh) * | 2001-05-07 | 2003-12-17 | 科学园株式会社 | 电子计算机的接口驱动器程序 |
US9082380B1 (en) * | 2011-10-31 | 2015-07-14 | Smule, Inc. | Synthetic musical instrument with performance-and/or skill-adaptive score tempo |
CA2799041A1 (en) * | 2011-12-23 | 2013-06-23 | Research In Motion Limited | Cross-platform software distribution |
CN103064662A (zh) * | 2012-08-28 | 2013-04-24 | 华南理工大学 | 基于Android平台的PhoneGap跨平台媒体扩展框架 |
CN103777942A (zh) * | 2013-12-06 | 2014-05-07 | 深圳市证通电子股份有限公司 | 应用于金融终端的嵌入式软件产品的开发框架 |
CN106155697A (zh) * | 2016-07-30 | 2016-11-23 | 北京慧摩尔科技有限公司 | 一种面向服务的开发框架(YC‑Framework) |
CN106951457A (zh) * | 2017-02-24 | 2017-07-14 | 北京银河润泰科技有限公司 | 曲谱的处理方法及装置 |
CN106970790A (zh) * | 2017-03-09 | 2017-07-21 | 腾讯科技(深圳)有限公司 | 一种应用程序创建的方法、相关设备及系统 |
CN108228253A (zh) * | 2017-12-29 | 2018-06-29 | 武汉璞华大数据技术有限公司 | 一种app构建方法及系统 |
CN108319413A (zh) * | 2018-01-29 | 2018-07-24 | 咪咕音乐有限公司 | 一种音乐播放方法、装置及存储介质 |
Non-Patent Citations (1)
Title |
---|
熊伟: "混合型移动应用开发框架的设计与实现", 《东南大学硕士学位论文》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114845169A (zh) * | 2022-04-29 | 2022-08-02 | 东风汽车有限公司东风日产乘用车公司 | 播放控制方法、播放控制装置、播放终端以及存储介质 |
CN114845169B (zh) * | 2022-04-29 | 2023-07-25 | 东风汽车有限公司东风日产乘用车公司 | 播放控制方法、播放控制装置、播放终端以及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11551673B2 (en) | Interactive method and device of robot, and device | |
CN104822093B (zh) | 弹幕发布方法和装置 | |
CN101627424B (zh) | 数字音频混合 | |
CN1240045C (zh) | 用于卡拉ok、游戏机之类的声音重放装置和方法 | |
US6510438B2 (en) | Electronic mail system, method of sending and receiving electronic mail, and storage medium | |
CN108806560A (zh) | 屏幕发声显示屏及声场画面同步定位方法 | |
CN110166816A (zh) | 用于人工智能教育的基于语音识别的视频编辑方法和系统 | |
CN107770628A (zh) | 一种卡拉ok实现方法及系统、智能家庭终端 | |
CN105929967B (zh) | 多路实时音频信号处理的仿真系统 | |
CN109637268A (zh) | 一种音乐教学app操作方法及其实现系统 | |
CN104902145B (zh) | 一种直播流视频的播放方法及装置 | |
CN202632713U (zh) | 一种展示系统 | |
CN108492823A (zh) | 一种语音点歌交互系统及语音点歌交互方法 | |
CN107544805B (zh) | 基于Android系统可复用框架的手机游戏系统架构 | |
CN1347261A (zh) | 对移动通信终端上同时显示乐曲信息和不同信息的控制 | |
CN1629931A (zh) | 音乐播放设备,音乐播放方法和电话终端装置 | |
CN102982138A (zh) | 一种客户关系图形化展现方法和装置 | |
CN100375429C (zh) | 通过浏览器实时观看玩家游戏的方法 | |
JP5041853B2 (ja) | コンテンツ生成装置及びコンテンツ生成プログラム | |
CN2711852Y (zh) | 演奏信息再现设备 | |
CN109743528A (zh) | 一种视频会议的音频采集与播放优化方法、装置及介质 | |
CN103177715A (zh) | It数码钢琴 | |
CN111768755A (zh) | 信息处理方法、装置、车辆和计算机存储介质 | |
CN203055435U (zh) | 园区智能语音控制调度系统 | |
CN111768756B (zh) | 信息处理方法、装置、车辆和计算机存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190416 |
|
WD01 | Invention patent application deemed withdrawn after publication |