一种电子键盘乐器重奏方法和系统

文档序号:685139 发布日期:2021-04-30 浏览:14次 >En<

阅读说明:本技术 一种电子键盘乐器重奏方法和系统 (Electronic keyboard instrument replay method and system ) 是由 王晓伟 管伯良 于 2020-12-29 设计创作,主要内容包括:本发明提供了一种电子键盘乐器重奏方法和系统,该方法包括:制作不同声部的乐谱数据,将各个声部的乐谱数据上传服务端,建立重奏组合,从云端加载电子乐谱,不同演奏声部加载各自的乐谱;由领奏方在App内发起重奏合练请求,跟奏方在App内搜索发起的重奏合练请求,并加入;领奏方点击开始重奏,将重奏指令发给跟奏方,并且开启伴奏,跟奏方收到开始指令后,不开伴奏,开始各自走谱;领奏方和跟奏方在演奏过程中可以实时纠错并打分。通过本发明提供的重奏方法,一个App可以同时控制多个演奏声部的乐谱,可以通过指令同时演奏,达到交响乐团效果,演奏过程中可纠错、打分、自动翻谱,能有效帮助用户练习提升。(The invention provides a method and a system for playing an electronic keyboard musical instrument, wherein the method comprises the following steps: making music score data of different vocal parts, uploading the music score data of each vocal part to a server, establishing a repetition combination, loading electronic music scores from a cloud, and loading respective music scores of different playing vocal parts; initiating a repeat and ensemble request in the App by a leader, searching the initiated repeat and ensemble request in the App by a follower, and adding; the leading party clicks to start the repeat, the repeat instruction is sent to the following party, the accompaniment is started, and the following party starts each self-walking music score without starting the accompaniment after receiving the start instruction; the leading player and the following player can correct errors and score in real time during the playing process. Through the ensemble method provided by the invention, one App can simultaneously control the music scores of a plurality of playing vocal parts, the music scores can be played simultaneously through instructions, the symphony orchestra effect is achieved, error correction, scoring and automatic score turning can be realized in the playing process, and the practice promotion of a user can be effectively helped.)

一种电子键盘乐器重奏方法和系统

技术领域

本发明属于音乐教育领域,尤其是涉及一种电子键盘乐器重奏方法和系统。

背景技术

随着互联网技术的发展,越来越多的互联网技术应用到音乐教育领域,比如乐谱电子化,逐步代替纸质乐谱,电子乐谱可自由拆分、自由组合,显示电子乐谱的电子显示屏也可以拆分和组合拼接,便于部分谱练习或者多人协作演奏。目前,存在一些音乐软件如″魔幻古筝″、″古琴″、″Magic Piano″软件等,这些软件可以按照从曲库中选择的曲目,通过在触摸屏幕上的点、滑动作,控制系统发出乐音,实现乐曲演奏。但是这类产品没有基于电子乐器,不能独立、并行演奏多声部,而且不支持多人、多乐器重奏,而且,目前电子键盘乐器领域还没有专门针对重奏的自动化系统。

现有的重奏类教学方法和系统有以下缺点:

1.传统重奏,需采用纸质教材,无法自动翻谱,且开始须通过指挥的手势指令,无法做到整齐同步,演奏过程中无纠错提示。

2.陪练App,虽然可以纠错打分,但是无法通知控制多个不同声部的乐谱,无法同时开始演奏,从而达到合奏的目的。

发明内容

有鉴于此,本发明旨在提出一种电子键盘乐器重奏方法和系统,以解决传统方法在重奏时无法通知控制多个不同声部的乐谱、无法同时开始演奏、无法自动翻谱、无纠错功能等问题。

为了解决上述技术问题,本发明采用如下技术方案:

第一方面,本发明提供了一种电子键盘乐器重奏方法,所述方法包括:

S1:制作重奏乐谱,制作不同声部的乐谱数据,将各个声部的乐谱数据上传服务端,建立重奏组合,APP从从云端加载乐谱,不同演奏声部加载各自的乐谱。

S2:由领奏方在App内发起重奏合练请求,领奏方在App上选择发起合练,本地开放一个合练端口,并建立Socket开始循环监听,采用TCP的Socket链接。

S3:跟奏方在App内搜索发起的重奏合练请求,搜索方式为,开启广播监听操作,监听本地网络的广播数据包,跟奏方收到数据包后,开始解析包,获取分组ID,然后当前打开曲目的分组ID进行比较,如果一致,则发起TCP连接请求,连接广播数据包里的IP和端口;如果分组不一致,则丢弃,继续接收广播数据包。

S4:领奏方在等待所有跟奏方加入重奏后,准备开始重奏,领奏方点击开始重奏,将重奏指令发给跟奏方,并且开启伴奏,跟奏方收到开始指令后,开始各自走谱,不开伴奏。

S5:领奏方和跟奏方在演奏过程中可以实时纠错并打分。

具体的,如果演奏过程需要自动翻谱,翻谱过程如下:

a)首先根据乐谱的XML数据,解析得到每个音符的坐标(x,y);

b)然后根据示范MIDI解析得到每个音符的演奏时间点T;

c)初始状态,走谱的光标位于乐谱第一个音符的位置(X0,Y0)和演奏时间点T0;

d)当演奏开始时,开始计时,获取下一个音符的坐标(X1,Y1)和演奏时间点T1;

e)然后计算出两点之间的距离L,所需时间t=(T1-T2);

f)然后光标按照L/t的速度移动到下一个音符位置;

g)如果遇到换行,需瞬间移到该行第1个音符位置;

h)重复d、e、f、g步骤,直到所有音符走完。

第二方面,本发明还提供了一种电子键盘乐器重奏系统,所述系统包括移动终端,该移动终端中装有重奏app、服务端、电子键盘乐器,所述系统还包括:

制作单元,用于制作重奏乐谱,制作不同声部的乐谱数据,将各个声部的乐谱数据上传服务端,建立重奏组合,APP从从云端加载乐谱,不同演奏声部加载各自的乐谱。

领奏方处理单元,用于领奏方在App上选择发起合练,本地开放一个合练端口,并建立Socket开始循环监听,采用TCP的Socket链接。

跟奏方处理单元,跟奏方在App内搜索发起的重奏合练请求,搜索方式为,开启广播监听操作,监听本地网络的广播数据包,跟奏方收到数据包后,开始解析包,获取分组ID,然后当前打开曲目的分组ID进行比较,如果一致,则发起TCP连接请求,连接广播数据包里的IP和端口;如果分组不一致,则丢弃,继续接收广播数据包。

重奏单元,用于领奏方在等待所有跟奏方加入重奏后,开始重奏,领奏方点击开始重奏,将重奏指令发给跟奏方,并且开启伴奏,跟奏方收到开始指令后,开始各自走谱,不开伴奏。

纠错打分单元,领奏方和跟奏方在演奏过程中可以实时纠错并打分。

具体的,还包括自动翻谱单元,用于自动翻谱,该自动翻谱的过程如下:

a)首先根据乐谱的XML数据,解析得到每个音符的坐标(x,y);

b)然后根据示范MIDI解析得到每个音符的演奏时间点T;

c)初始状态,走谱的光标位于乐谱第一个音符的位置(X0,Y0)和演奏时间点T0;

d)当演奏开始时,开始计时,获取下一个音符的坐标(X1,Y1)和演奏时间点T1;

e)然后计算出两点之间的距离L,所需时间t=(T1-T2);

f)然后光标按照L/t的速度移动到下一个音符位置;

g)如果遇到换行,需瞬间移到该行第1个音符位置;

h)重复d、e、f、g步骤,直到所有音符走完。

第三方面,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的电子键盘乐器重奏方法。

相对于现有技术,本发明所述的电子键盘乐器重奏方法和系统,通过制作电子化重奏乐谱,且领奏方在APP内发起重奏请求,跟奏方在APP中进行请求并加入重奏,可以实现一个APP可以同时控制多个演奏分布的乐谱,且通过指令同时演奏,可以达到交响乐团效果,演奏过程中可纠错、打分、自动翻谱,以帮助用户练习提升。

附图说明

构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。

在附图中:

图1是本发明实施例提供的电子键盘乐器重奏方法流程图;

图2表示本发明实施例提供的电子键盘乐器重奏系统框图。

具体实施方式

下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。

需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

此外,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。

下面将参考附图并结合实施例来详细说明本发明。

如图1所示,一种电子键盘乐器重奏方法,包括:

S1:制作重奏乐谱,制作不同声部的乐谱数据,将各个声部的乐谱数据上传服务端,建立重奏组合,APP从从云端加载乐谱,不同演奏声部加载各自的乐谱。

其中,在制作重奏乐谱时,通过Finale软件制作不同声部的重奏乐谱,并将乐谱导出MusicXML格式乐谱数据,将需要重奏的各个声部的MuiscXML格式数据上传到服务端,建立重奏组合,获取每个声部的ID,并创建1个分组,即分组[ID1,ID2,ID3]。

进一步的,在移动终端上打开重奏APP,选择要演奏的重奏曲目,向服务端请求分组信息和乐谱数据,当移动终端的的App端,获取乐谱数据后,通过画布方式,将电子乐谱绘制出来。

S2:由领奏方在App内发起重奏合练请求,领奏方在App上选择发起合练,本地开放一个合练端口,并建立Socket开始循环监听,采用TCP的Socket链接。具体的,开启监听后,在当前链接的局域网内,在广播信道上,每个10毫秒发布一个广播数据包,数据包的结构为:分组ID+IP+端口。

S3:跟奏方在App内搜索发起的重奏合练请求,搜索方式为,开启广播监听操作,监听本地网络的广播数据包,跟奏方收到数据包后,开始解析数据包,获取分组ID,然后当前打开曲目的分组ID进行比较,如果一致,则发起TCP连接请求,连接广播数据包里的IP和端口;如果分组不一致,则丢弃,继续接收广播数据包。具体的,领奏方在收到跟奏方的TCP连接请求后,建立长连接,并每隔3秒发送一个心跳包,检测是否在线。

S4:领奏方在等待所有跟奏方加入重奏后,开始重奏,领奏方点击开始重奏,将开始指令发给跟奏方,并且开启伴奏,跟奏方收到开始指令后,开始各自走谱,不开伴奏。

具体的,领奏方点击开始,通过建立的TCP长连接,发送开始指令给各个加入的跟奏方,指令数据包括:开始指令+开始时间,然后进入睡眠,等到开始时间到达后,领奏方开始走谱;跟奏方收到开始指令后,进行解析,发现是开始指令,然后解析开始时间,如果还未开始,则先暂时睡眠,循环检测,如果到时间了,则立即开始走谱,不开启伴奏。

S5:领奏方和跟奏方在演奏过程中可以实时纠错并打分。

具体的,该纠错打分过程如下:演奏过程中程序将采集的演奏数据,表现为MIDI信息,包括:音高、按下时间点t1、松开时间点t2),然后与示范演奏MIDI(音高、按下时间点T1,松开时间点T2)进行比对纠错,允许误差为Q,比对过程如下;

(1)如果音高不一致,则判定:错音

(2)如果按下时间点t1-T1>Q,则判定:弹晚

(3)如果按下时间点T1-t1>Q,则判定:弹早

(4)如果松开时间点t2-T2>Q,则判定:松晚

(5)如果松开时间点T2-t2>Q,则判定:松早

(6)如果没有采集到对应的音高,则判定:漏弹

(7)其它情况判定:正确

演奏结束后,统计正确数与错误数,计算得分,得分按照如下公式计算:

其中,c为得分,a为正确数,b为总数。

具体的,如果演奏过程需要自动翻谱,翻谱过程如下:

a)首先根据乐谱的XML数据,解析得到每个音符的坐标(x,y);

b)然后根据示范MIDI解析得到每个音符的演奏时间点T;

c)初始状态,走谱的光标位于乐谱第一个音符的位置(X0,Y0)和演奏时间点T0;

d)当演奏开始时,开始计时,获取下一个音符的坐标(X1,Y1)和演奏时间点T1;

e)然后计算出两点之间的距离L,所需时间t=(T1-T2);

f)然后光标按照L/t的速度移动到下一个音符位置;

g)如果遇到换行,需瞬间移到该行第1个音符位置;

h)重复d、e、f、g步骤,直到所有音符走完。

图2显示了一种电子键盘乐器重奏系统,所述系统包括移动终端,该移动终端中装有重奏app、服务端、电子键盘乐器,所述系统还包括:

制作单元,用于制作重奏乐谱,制作不同声部的乐谱数据,将各个声部的乐谱数据上传服务端,建立重奏组合,APP从从云端加载乐谱,不同演奏声部加载各自的乐谱。

其中,制作单元在制作重奏乐谱时,通过Finale软件制作不同声部的重奏乐谱,并将乐谱导出MusicXML格式乐谱数据,将需要重奏的各个声部的MuiscXML格式数据上传到服务端,建立重奏组合,获取每个声部的ID,并创建1个分组,即分组[ID1,ID2,ID3]。

进一步的,在移动终端上打开重奏APP,选择要演奏的重奏曲目,向服务端请求分组信息和乐谱数据,当移动终端的的App端,获取乐谱数据后,通过画布方式,将电子乐谱绘制出来。

领奏方处理单元,用于领奏方在App上选择发起重奏合练,本地开放一个合练端口,并建立Socket开始循环监听,采用TCP的Socket链接。具体的,开启监听后,在当前链接的局域网内,在广播信道上,每个10毫秒发布一个广播数据包,数据包的结构为:分组ID+IP+端口。

跟奏方处理单元,用于跟奏方在App内搜索发起的重奏合练请求,搜索方式为,开启广播监听操作,监听本地网络的广播数据包,跟奏方收到数据包后,开始解析数据包,获取分组ID,然后当前打开曲目的分组ID进行比较,如果一致,则发起TCP连接请求,连接广播包里的IP和端口,如果分组不一致,则丢弃,继续接收广播数据包。

具体的,领奏方在收到跟奏方的TCP连接请求后,建立长连接,并每隔3秒发送一个心跳包,检测是否在线。

重奏单元,用于当领奏方在等待所有跟奏方加入重奏后,准备开始重奏合练,领奏方点击开始重奏,将开始指令发给跟奏方,并且开启伴奏,跟奏方收到开始指令后,开始各自走谱,不开伴奏。

具体的,领奏方点击开始,通过建立的TCP长连接,发送开始指令给各个加入的跟奏方,指令数据包括:开始指令+开始时间,然后进入睡眠,等到开始时间到达后,领奏方开始走谱;跟奏方收到开始指令后,进行解析,发现是开始指令,然后解析开始时间,如果还未开始,则先暂时睡眠,循环检测,如果到时间了,则立即开始走谱,不开启伴奏。

纠错打分单元,用于领奏方和跟奏方在演奏过程中实时纠错并打分。

具体的,该纠错打分过程如下:演奏过程中程序将采集的演奏数据,表现为MIDI信息,包括:音高、按下时间点t1、松开时间点t2),然后与示范演奏MIDI(音高、按下时间点T1,松开时间点T2)进行比对纠错,允许误差为Q,比对过程如下;

(1)如果音高不一致,则判定:错音

(2)如果按下时间点t1-T1>Q,则判定:弹晚

(3)如果按下时间点T1-t1>Q,则判定:弹早

(4)如果松开时间点t2-T2>Q,则判定:松晚

(5)如果松开时间点T2-t2>Q,则判定:松早

(6)如果没有采集到对应的音高,则判定:漏弹

(7)其它情况判定:正确

演奏结束后,统计正确数与错误数,计算得分,得分按照如下公式计算:

其中,c为得分,a为正确数,b为总数。

具体的,还包括自动翻谱单元,用于自动翻谱,该自动翻谱的过程如下:

a)首先根据乐谱的XML数据,解析得到每个音符的坐标(x,y);

b)然后根据示范MIDI解析得到每个音符的演奏时间点T;

c)初始状态,走谱的光标位于乐谱第一个音符的位置(X0,Y0)和演奏时间点T0;

d)当演奏开始时,开始计时,获取下一个音符的坐标(X1,Y1)和演奏时间点T1;

e)然后计算出两点之间的距离L,所需时间t=(T1-T2);

f)然后光标按照L/t的速度移动到下一个音符位置;

g)如果遇到换行,需瞬间移到该行第1个音符位置;

h)重复d、e、f、g步骤,直到所有音符走完。

具体的,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的电子键盘乐器重奏方法。

本发明所述的电子键盘乐器重奏方法和系统,通过制作电子化重奏乐谱,且领奏方在APP内发起重奏合练请求,跟奏方在APP中进行请求并加入重奏,可以实现一个APP可以同时控制多个演奏分布的乐谱,且通过指令同时演奏,可以达到交响乐团效果,演奏过程中可纠错、打分、自动翻谱,以帮助用户练习提升。

上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

11页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种电子键盘乐器智能变奏方法和系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!