一种曲谱实时互译方法及终端与流程

文档序号:26554402发布日期:2021-09-08 00:42阅读:140来源:国知局
一种曲谱实时互译方法及终端与流程

1.本发明涉及曲谱生成领域,尤其涉及一种曲谱实时互译方法及终端。


背景技术:

2.为了方便专业音乐人士或者音乐爱好者的使用,现有出现了很多音乐编辑软件能够实现对曲谱的打谱,比如五线谱打谱工具、简谱打谱工具。但是,现有比较少有能够支持简谱和五线谱互相翻译的工具,即制作简谱时,能够单独翻译并显示为五线谱,或者显示简谱、五线谱之间的对照谱。
3.为了实现简谱和五线谱的互相翻译,现有的软件支持的是在打完整张曲谱后,才能根据整张曲谱翻译出对应的另一种曲谱,还不能够做到实时互译,即无法做到在输入简谱时,能即时查看对应的五线谱,或者在输入五线谱时,能即时查看对应的简谱。


技术实现要素:

4.本发明所要解决的技术问题是:提供一种曲谱实时互译方法及终端,能够实现不同曲谱类型之间的实时互译。
5.为了解决上述技术问题,本发明采用的一种技术方案为:
6.一种曲谱实时互译方法,包括步骤:
7.构建曲谱数据结构库,所述曲谱数据结构库包括各类曲谱各自特有元素及各类曲谱共有元素;
8.建立基础曲谱图形库,所述基础曲谱图形库包括各类曲谱图形;
9.建立曲谱数据结构库与基础曲谱图形库的映射关系;
10.接收曲谱编辑请求,所述曲谱编辑请求包括待编辑的曲谱图形;
11.根据所述曲谱数据结构库、所述基础曲谱图形库、所述待编辑的曲谱图形及映射关系,确定所述待编辑的曲谱数据结构的类型;
12.根据所述待编辑的曲谱数据结构的类型,进行不同曲谱间翻译及编辑对应的曲谱图形。
13.为了解决上述技术问题,本发明采用的另一种技术方案为:
14.一种曲谱实时互译终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述曲谱实时互译方法中的各个步骤。
15.本发明的有益效果在于:构建包含各类曲谱各自特有元素及各类曲谱共有元素的曲谱数据结构库,并建立包含各类曲谱图形的基础曲谱图形库,当进行曲谱编辑时,能够根据待编辑的曲谱数据结构的类型进行多种不同曲谱的编辑以及互译,由于对各类曲谱基于曲谱元素进行了拆分,所以在进行曲谱编辑时,能够以谱曲元素为单位进行对应的编辑以及刷新,相较于现有是以一个五线谱或简谱为单位进行编辑和刷新,由于引入了各类曲谱共有元素,实现了各类曲谱的数据共用,所以在编辑各类曲谱共有元素时,可以直接反应为
各类曲谱的共同修改,而当仅编辑各类曲谱各自特有元素时,仅需要单独编辑对应的曲谱,所以大大提高了编辑和刷新效率,能够实现各类曲谱之间的实时互译,让互译打谱变得即时可靠。
附图说明
16.图1为本发明实施例的一种曲谱实时互译方法的步骤流程图;
17.图2为本发明实施例的一种曲谱实时互译终端的结构示意图;
18.图3为本发明实施例的简谱和五线谱实时互译方法的步骤流程图。
具体实施方式
19.为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
20.请参照图1,一种曲谱实时互译方法,包括步骤:
21.构建曲谱数据结构库,所述曲谱数据结构库包括各类曲谱各自特有元素及各类曲谱共有元素;
22.建立基础曲谱图形库,所述基础曲谱图形库包括各类曲谱图形;
23.建立曲谱数据结构库与基础曲谱图形库的映射关系;
24.接收曲谱编辑请求,所述曲谱编辑请求包括待编辑的曲谱图形;
25.根据所述曲谱数据结构库、所述基础曲谱图形库、所述待编辑的曲谱图形及映射关系,确定所述待编辑的曲谱数据结构的类型;
26.根据所述待编辑的曲谱数据结构的类型,进行不同曲谱间翻译及编辑对应的曲谱图形。
27.由上述描述可知,本发明的有益效果在于:构建包含各类曲谱各自特有元素及各类曲谱共有元素的曲谱数据结构库,并建立包含各类曲谱图形的基础曲谱图形库,当进行曲谱编辑时,能够根据待编辑的曲谱数据结构的类型进行多种不同曲谱的编辑以及互译,由于对各类曲谱基于曲谱元素进行了拆分,所以在进行曲谱编辑时,能够以谱曲元素为单位进行对应的编辑以及刷新,相较于现有是以一个五线谱或简谱为单位进行编辑和刷新,由于引入了各类曲谱共有元素,实现了各类曲谱的数据共用,所以在编辑各类曲谱共有元素时,可以直接反应为各类曲谱的共同修改,而当仅编辑各类曲谱各自特有元素时,仅需要单独编辑对应的曲谱,所以大大提高了编辑和刷新效率,能够实现各类曲谱之间的实时互译,让互译打谱变得即时可靠。
28.进一步地,所述根据所述待编辑的曲谱数据结构的类型,进行不同曲谱间翻译及编辑对应的曲谱图形包括:
29.根据所述待编辑的曲谱数据结构的类型,判断是否需要进行不同曲谱间的翻译;
30.若是,将所述待编辑的曲谱数据结构翻译为一种以上其他类型曲谱的曲谱图形,显示翻译后的曲谱图形,并同步编辑和显示对应的曲谱图形;
31.若否,则编辑并显示对应的曲谱图形。
32.由上述描述可知,在进行不同曲谱间翻译及编辑对应的曲谱图形时,先根据待编辑的曲谱数据结构的类型,判断是否需要进行不同曲谱间的翻译,若需要,再进行对应的翻
译以及显示,并同步地编辑和显示对应的曲谱图形,若不需要,则直接编辑并显示对应的曲谱图形,能够根据待编辑的曲谱数据结构的类型进行不同的处理操作,大大提高了不同曲谱类型之间互译的效率,从而实现不同曲谱类型之间的实时互译。
33.进一步地,所述根据所述待编辑的曲谱数据结构的类型,判断是否需要进行不同曲谱间的翻译包括:
34.根据所述待编辑的曲谱数据结构的类型,判断所述待编辑的曲谱数据结构是否为各类曲谱共有元素,若是,则需要进行不同曲谱间的翻译,若否,则不需要进行不同曲谱间的翻译;
35.所述将所述待编辑的曲谱数据结构翻译为一种以上其他类型曲谱的曲谱图形,显示翻译后的曲谱图形包括:
36.将所述待编辑的曲谱数据结构翻译为除所述待编辑曲谱以外的一种以上曲谱的曲谱图形,显示翻译后的各类曲谱图形。
37.由上述描述可知,根据待编辑的曲谱数据结构是否为各类曲谱共有元素来判断是否需要进行不同曲谱间的翻译,若为各类曲谱共有元素,则需要进行不同曲谱间的翻译,若为各类曲谱各自特有元素时,则不需要进行不同曲谱间的互译,大大提高了翻译效率。
38.进一步地,所述进行不同曲谱间翻译及编辑对应的曲谱图形之后还包括:
39.判断编辑后的曲谱图形是否缺少其中一种曲谱的特有元素,若缺少,则进行曲谱补充操作;
40.所述曲谱补充操作包括增加缺少的曲谱的特有元素对应映射的曲谱图形。
41.由上述描述可知,在进行曲谱实时互译和编辑的过程中,当发现缺少其中一种曲谱的特有元素对应的曲谱图形时,能够进行实时补充,保证了曲谱实时互译的可靠性。
42.进一步地,所述进行不同曲谱间翻译及编辑对应的曲谱图形之后还包括:
43.接收曲谱切换请求,根据所述曲谱切换请求在显示界面上实时切换待编辑的曲谱类型。
44.由上述描述可知,在对曲谱进行编辑的过程中,能够实时地切换不同曲谱进行编辑,提高了曲谱编辑的灵活性以及实时性。
45.进一步地,所述构建曲谱数据结构库包括:
46.设置预设的标准曲谱格式作为底层数据结构;
47.根据预设的各类曲谱各自特有元素及各类曲谱共有元素确定所述预设的标准曲谱格式无法表示的曲谱元素,得到缺失曲谱元素;
48.在所述底层数据结构中添加所述缺失曲谱元素对应的曲谱元素表示格式,得到更新后的数据结构;
49.根据所述更新后的数据结构构建曲谱数据结构库。
50.由上述描述可知,以预设的标准曲谱格式作为底层数据结构,在此基础上再添加预设的标准曲谱格式无法表示的曲谱元素,根据更新后的数据结构构建曲谱数据结构库,能够大大提高曲谱数据结构库的构建效率。
51.进一步地,所述曲谱图形根据svg树形结构的形式渲染生成,所述svg树形结构的节点存储与每一曲谱元素对应的曲谱图形,所述曲谱元素包括各类曲谱各自特有元素及各类曲谱共有元素;
52.所述编辑对应的曲谱图形包括:
53.根据所述待编辑的曲谱数据结构的类型确定其对应的曲谱图形在所述svg树形结构的节点位置;
54.在所述svg树形结构中搜索所述节点位置,对所述节点位置对应的节点进行对应的编辑。
55.进一步地,所述编辑包括增加、删除或修改;
56.所述对所述节点位置对应的节点进行对应的编辑包括:
57.对所述节点位置对应的节点插入重新生成的节点、进行删除或进行修改。
58.由上述描述可知,通过svg树形结构的形式渲染生成曲谱图形,能够方便快捷地实现对曲谱图形的显示以及编辑。
59.进一步地,所述各类曲谱各自特有元素至少包括五线谱特有元素和简谱特有元素;
60.所述各类曲谱图形至少包括五线谱图形和简谱图形。
61.由上述描述可知,在各类曲谱各自特有元素中至少包括五线谱特有元素和简谱特有元素,在各类曲谱图形中至少包括五线谱图形以及简谱图形,能够方便、快捷地实现五线谱与简谱之间的实时互译。
62.请参照图2,一种曲谱实时互译终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述曲谱实时互译方法中的各个步骤。
63.本发明上述曲谱实时互译方法及终端能够应用于各种不同类型的曲谱之间的互译,比如五线谱与简谱,或者简谱与吉他谱,或者五线谱与吉他谱,或者五线谱、简谱与吉他谱等,以下通过具体的实施方式进行说明:
64.实施例一
65.请参照图1,一种曲谱实时互译方法,包括步骤:
66.s1、构建曲谱数据结构库,所述曲谱数据结构库包括各类曲谱各自特有元素及各类曲谱共有元素;
67.其中,曲谱可以包括各种类型的曲谱,凡是涉及到要进行互译,并且不同曲谱之间存在一些共性,能够具有共有元素的都适应于本实施例,比如五线谱与简谱;
68.本实施例中,所述各类曲谱各自特有元素至少包括五线谱特有元素和简谱特有元素;
69.s2、建立基础曲谱图形库,所述基础曲谱图形库包括各类曲谱图形;
70.本实施例中,所述各类曲谱图形至少包括五线谱图形和简谱图形;
71.s3、建立曲谱数据结构库与基础曲谱图形库的映射关系;
72.s4、接收曲谱编辑请求,所述曲谱编辑请求包括待编辑的曲谱图形;
73.s5、根据所述曲谱数据结构库、所述待编辑的曲谱图形及映射关系,确定所述待编辑的曲谱数据结构的类型;
74.s6、根据所述待编辑的曲谱数据结构的类型,进行不同曲谱间翻译及编辑对应的曲谱图形;
75.其中,根据所述待编辑的曲谱数据结构的类型,进行不同曲谱间翻译及编辑对应
的曲谱图形包括:
76.根据所述待编辑的曲谱数据结构的类型,判断是否需要进行不同曲谱间的翻译;
77.若是,将所述待编辑的曲谱数据结构翻译为一种以上其他类型曲谱的曲谱图形,显示翻译后的曲谱图形,并同步编辑和显示对应的曲谱图形;
78.若否,即如果待编辑的曲谱图形映射的曲谱数据结构为其中一种曲谱特有元素,则编辑并显示对应的曲谱图形;
79.具体的,所述根据所述待编辑的曲谱数据结构的类型,判断是否需要进行不同曲谱间的翻译包括:
80.根据所述待编辑的曲谱数据结构的类型,判断所述待编辑的曲谱数据结构是否为各类曲谱共有元素,若是,则需要进行不同曲谱间的翻译,若否,则不需要进行不同曲谱间的翻译;
81.所述将所述待编辑的曲谱数据结构翻译为一种以上其他类型曲谱的曲谱图形,显示翻译后的曲谱图形包括:
82.将所述待编辑的曲谱数据结构翻译为除所述待编辑曲谱以外的一种以上曲谱的曲谱图形,显示翻译后的各类曲谱图形;
83.以五线谱和简谱之间的互译为例,可以构建一个包含各种曲谱元素的曲谱数据结构库,该曲谱数据结构库里包括简谱特有元素、五线谱特有元素以及简谱五线谱共有元素;
84.其中,简谱五线谱共有元素包括音符、小节、声部、连音线、连奏线等基础谱表元素,简谱特有元素包括简谱上的标注性文字、与绘图相关的信息,比如坐标等,五线谱特有元素包括五线谱上的踏板记号等;
85.根据构建的曲谱数据结构库为每一个曲谱元素建立对应的曲谱图形,构成基础曲谱图形库,并建立曲谱数据结构库与基础曲谱图形库之间的映射关系;
86.当接收到曲谱编辑请求时,曲谱编辑请求包括待编辑的曲谱图形;
87.根据所述曲谱数据结构库、所述基础曲谱图形库、所述待编辑的曲谱图形及映射关系,确定所述待编辑的曲谱图形对应的曲谱数据结构的类型;
88.比如待编辑的是一个简谱中的特有元素对应的曲谱图形,则根据所述曲谱图形在所述基础曲谱图形库中定位到对应的目标曲谱图形,然后根据建立的映射关系在曲谱数据结构库寻找到与目标曲谱图形对应的曲谱元素,确定其对应的曲谱数据结构类型属于简谱特有元素;
89.由于待编辑的曲谱数据结构的类型是简谱特有元素,所以并不需要进行曲谱之间的互译,只需要在简谱中找到对应的曲谱图形,然后根据曲谱编辑请求进行对应的编辑并显示编辑后的曲谱图形即可,也就是说,只需要刷新对应的简谱图形即可,同理,如果待编辑的是五线谱特有元素,也只需要刷新对应的五线谱图形即可;
90.若编辑的是一个简谱对应的曲谱图形,则根据上述的对应,可以在曲谱数据结构库寻找到与该曲谱图形对应的曲谱元素,确定其对应的曲谱数据结构类型属于简谱五线谱共有元素;
91.由于待编辑的曲谱数据结构的类型是简谱五线谱共有元素,需要进行不同曲谱间的翻译,即需要将其翻译成对应的五线谱图形并进行显示,并且同步地对简谱对应的曲谱图形进行对应的编辑和显示,也就是说要同时刷新对应的简谱、五线谱图形。
92.实施例二
93.本实施例在实施例一的基础上进一步限定了:
94.在步骤s6之后还包括:
95.判断编辑后的曲谱图形是否缺少其中一种曲谱的特有元素,若缺少,则进行曲谱补充操作;
96.所述曲谱补充操作包括增加缺少的曲谱的特有元素对应映射的曲谱图形;也就是说,在进行曲谱编辑的过程中,有可能会造成特有元素的遗漏,当发现缺少其中一种曲谱的特有元素对应的曲谱图形时,能够进行实时补充,避免了曲谱元素的遗漏,由此保证了曲谱实时互译的可靠性。
97.实施例三
98.本实施例在实施例一或实施例二的基础上进一步限定了:
99.在步骤s6之后还包括:
100.接收曲谱切换请求,根据所述曲谱切换请求在显示界面上实时切换待编辑的曲谱类型;
101.也就是说用户可以根据需要实时地切换不同的曲谱类型进行编辑,假设当前进行编辑的是五线谱,则在编辑完后,可以进行实时地切换,切换成简谱进行简谱编辑,由此大大提高了编辑的灵活性。
102.实施例四
103.本实施例进一步限定了如何构建曲谱数据结构库,具体的:
104.设置预设的标准曲谱格式作为底层数据结构;
105.根据预设的各类曲谱各自特有元素及各类曲谱共有元素确定所述预设的标准曲谱格式无法表示的曲谱元素,得到缺失曲谱元素;
106.在所述底层数据结构中添加所述缺失曲谱元素对应的曲谱元素表示格式,得到更新后的数据结构;
107.根据所述更新后的数据结构构建曲谱数据结构库;
108.本实施例以musicxml作为预设的标准曲谱格式,musicxml是计算机音乐的标准数字曲谱格式,可以很好地表示一张五线谱,因此经常用于五线谱的制谱工具;
109.由于musicxml对五线谱的支持比较完善,所以五线谱特有元素部分不需要额外设计,可以直接引用;
110.而在musicxml里,是以音名的方式记录一个音符,如:
111.<step>c</step><octave>4</octave>,表示中央c;另,在已知大调的情况下,可以推算出唱名表示——假如大调是c,则上述音名(中央c)的唱名是1(do);因此,musicxml的音符记录方式,既可以表示五线谱,也可以表示简谱,可以用作共有元素,其他连音、强弱记号等同理;
112.musicxml里另有default

x/default

y等字段表示曲谱元素的绘图信息,这部分当做五线谱特有元素,因为互译时,一般需要将简谱元素对齐到五线谱元素,以保持美观,因此,不另外记录简谱的坐标信息,而是在渲染代码里直接计算出合适坐标;
113.即可以直接根据所述musicxmll的格式构建五线谱特有元素和五线谱简谱共有元素;
114.为了在musicxml中标识简谱特有元素,可以在所述musicxml中增设独立的xml数组,所述xml数组存储标签以及标签对应的位置;
115.根据所述标签的格式构建简谱特有元素;
116.简谱常见的特有元素是一些标注性文本、图片等,如“前1=c,转1=d”这样的转调描述,将这些描述性信息,设计为“标签”,“标签”在musicxml的最后以一个独立的xml组记录,并把“标签”位置也记录下来,其他简谱特有元素的处理类似,例如<tags><text jianpu

x=30jianpu

y=20>前1=c,转1=d</text></tags>。
117.实施例五
118.本实施例进一步限定了如何对谱曲图像进行渲染:
119.所述曲谱图形根据svg树形结构的形式渲染生成,所述svg树形结构的节点存储与每一曲谱元素对应的曲谱图形,所述曲谱元素包括各类曲谱各自特有元素及各类曲谱共有元素;
120.如果以musicxml作为底层数据结构,则进行渲染时,以svg为底层渲染技术,解析musicxml中的曲谱元素后,根据所述曲谱数据结构库、所述基础曲谱图形库及映射关系将解析后的曲谱元素渲染为对应的一个svg节点或svg节点组,每个节点存在与曲谱元素对应的曲谱图形,最终将整张曲谱渲染为一个svg树形结构;
121.如果是实现五线谱、简谱之间的互译,则五线谱、简谱使用交叉混排的对照谱形式渲染——即一行简谱、一行五线谱的方式;
122.所述编辑对应的曲谱图形包括:
123.根据所述待编辑的曲谱数据结构的类型确定其对应的曲谱图形在所述svg树形结构的节点位置;
124.在所述svg树形结构中搜索所述节点位置,对所述节点位置对应的节点进行对应的编辑;
125.其中,所述编辑包括增加、删除或修改;
126.所述对所述节点位置对应的节点进行对应的编辑包括:
127.对所述节点位置对应的节点插入重新生成的节点、进行删除或进行修改;
128.即当一个曲谱元素发生增、删、改时,会反应为对musicxml节点的对应增、删、改操作,然后,根据该操作影响的musicxml节点属于哪一类型(简谱五线谱共有元素、简谱特有元素、五线谱特有元素),确定是否要同时修改简谱和五线谱的曲谱图形,还是只需修改简谱或五线谱的曲谱图形,然后在svg属性结构里,找到要删除、重新生成或修改的svg节点/节点组,并对该节点/节点组执行删除、重新生成、插入或修改动作,并最终由浏览器体现到界面上;
129.以图3所示的流程图为例,详细论述如何进行曲谱与五线谱的互译渲染:
130.若所述待编辑的曲谱为简谱,判断待编辑的曲谱元素是否为五线谱简谱共有元素,若是,判断所述待编辑的曲谱元素对应的修改是否需要翻译,若不需要,则根据所述待编辑的曲谱元素对应的修改生成musicxml标准数据,若需要,将所述待编辑的曲谱元素对应的修改翻译为musicxml标准数据;
131.如果用户修改简谱影响了五线谱简谱共有元素,需要将简谱翻译为musicxml标准数据,比如,将简谱的1(do)修改为2(re),那么,就需要根据曲谱大调(假设是c大调),得到
应该将musicxml里的c修改为d,并且在渲染时,需要“将musicxml改动部分翻译为简谱表示”,如musicxml里发现c被修改为了d,就需要根据曲谱大调(假设是c大调),将简谱的1(do)修改为2(re);
132.如果用户修改五线谱影响共有元素,在渲染时,需要“将musicxml改动部分翻译为简谱表示”,如musicxml里发现c被修改为了d,就需要根据曲谱大调(假设是c大调),将简谱的1(do)修改为2(re);
133.将所述musicxml标准数据记录到musicxml文件中;
134.将所述musicxml文件的修改部分翻译为简谱,根据所述简谱生成对应的简谱svg图形;
135.根据所述musicxml文件的修改部分生成五线谱svg图形;
136.若不是,根据所述待编辑的曲谱元素对应的修改生成简谱特有元素,以标签的格式将所述简谱特有元素记录到musicxml文件中;
137.根据所述musicxml文件的修改部分生成简谱svg图形;
138.若所述待编辑的曲谱为五线谱,根据所述待编辑的曲谱元素对应的修改生成musicxml标准数据,将所述musicxml标准数据记录到musicxml文件中;
139.判断所述待编辑的曲谱元素是否为五线谱简谱共有元素,若是,将所述musicxml文件的修改部分翻译为简谱,根据所述简谱生成对应的简谱svg图形;
140.根据所述musicxml文件的修改部分生成五线谱svg图形;
141.若不是,根据所述musicxml文件的修改部分生成五线谱svg图形;
142.在根据svg树形结构渲染生成的曲谱中搜索待编辑的简谱元素所在的目标节点,将生成的svg图形替换对应的目标节点。
143.实施例六
144.请参照图2,一种曲谱实时互译终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现实施例一至五中任一个所述的曲谱实时互译方法中的各个步骤。
145.综上所述,本发明提供的一种曲谱实时互译方法及终端,构建包含各类曲谱各自特有元素及各类曲谱共有元素的曲谱数据结构库,并建立包含各类曲谱图形的基础曲谱图形库,当进行曲谱编辑时,能够根据待编辑的曲谱数据结构的类型进行多种不同曲谱的编辑以及互译,由于对各类曲谱基于曲谱元素进行了拆分,所以在进行曲谱编辑时,能够以谱曲元素为单位进行对应的编辑以及刷新,相较于现有是以一个五线谱或简谱为单位进行编辑和刷新,由于引入了各类曲谱共有元素,实现了各类曲谱的数据共用,所以在编辑各类曲谱共有元素时,可以直接反应为各类曲谱的共同修改,而当仅编辑各类曲谱各自特有元素时,仅需要单独编辑对应的曲谱,所以大大提高了编辑和刷新效率,能够实现各类曲谱之间的实时编辑和互译,让互译打谱变得即时可靠,同时可以实时地切换不同类型的曲谱的编辑,方便用户根据需要灵活改变需要编辑的曲谱类型,并且在编辑完成后,如果发现缺少其中一种曲谱的特有元素对应的曲谱图形时,能够进行实时补充,保证了曲谱实时互译的可靠性。
146.以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括
在本发明的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1