首页> 中国专利> 一种由MIDI到盲文乐谱的翻译方法及系统

一种由MIDI到盲文乐谱的翻译方法及系统

摘要

一种由MIDI到盲文乐谱的翻译方法及系统包括一种由MIDI到盲文乐谱的翻译方法(简称“方法”)和一种由MIDI到盲文乐谱的翻译系统(简称“系统”)。系统的音轨选择模块与MIDI解析模块、五线谱绘制模块以及盲文转换模块相连,MIDI解析模块与五线谱绘制模块相连,五线谱绘制模块与盲文转换模块相连;方法包括1)将MIDI格式数据文件转换成格式化的乐谱数据;2)根据1)乐谱数据绘制五线谱;3)绘制五线谱并生成盲文乐谱。本发明基于MIDI文件获取乐谱数据,根据乐谱同时生成五线谱和盲文乐谱并对照展示;还能够实现根据MIDI数据自动识别调号、识别双附点音符时值、根据强度信息识别弱起小节以及根据速度输出曲风。

著录项

  • 公开/公告号CN105931621A

    专利类型发明专利

  • 公开/公告日2016-09-07

    原文格式PDF

  • 申请/专利权人 北京理工大学;

    申请/专利号CN201610244257.0

  • 发明设计人 黄河燕;周强;史树敏;

    申请日2016-04-19

  • 分类号G10G3/04(20060101);G09B21/00(20060101);

  • 代理机构

  • 代理人

  • 地址 100081 北京市海淀区中关村南大街5号

  • 入库时间 2023-06-19 00:30:14

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-08-20

    授权

    授权

  • 2016-10-05

    实质审查的生效 IPC(主分类):G10G3/04 申请日:20160419

    实质审查的生效

  • 2016-09-07

    公开

    公开

说明书

技术领域

本发明涉及一种由MIDI到盲文乐谱的翻译方法及系统,属于计算机科学的盲文乐谱处理与分析技术领域。

背景技术

我国盲人使用的记录音乐曲谱的符号,是国际统一的盲文音乐符号。它是由世界盲文鼻祖路易·布莱尔创造的。该方案以6点洞制的布莱尔盲字体系为基础,编排出了一套书写曲谱的盲文音乐符号。1888年,由法国、英国、德国、丹麦等国家组成的国际音乐委员会,在法国科隆召开了第一次国际盲文音乐符号会议。这次会议确认和统一了一系列盲字音乐符号,统称为“科隆盲文音乐符号”。这套盲文音乐符号,绝大多数沿用至今,没有改变。会议还拟定了音组号、双写法、音符分组记法的使用规则。同时规定,键盘乐器的右手部分和高声部乐器的记谱,音程号由上往下计算度数;而左手部分和低声部乐器的记谱,音程号则由下往上计算度数等。于1954年7月下旬在法国巴黎召开了为期8天的第三次国际盲文音乐符号会议,与会代表普遍认同使用平行对节记谱法对盲文乐谱进行排版,高音部音程号使用法经过再次讨论后取得一致意见,音程统一由上往下计算度数。会议强调,出版音乐读物必须重视准确性,译印乐谱要准确反映出每一个细节。为此,还增加了五线谱上方或下方的方括号和特殊的装饰滑音等一些新的盲文音乐符号。

中国残疾人联合会宣教部和中国盲人协会组织召开了多次有盲人教育工作者、盲文出版工作者、文艺工作者等各方面专家参加的盲文民族器乐符号研讨会。针对各地过去所使用的盲文民族器乐符号不规范、不统一、不完备等问题,集思广益,进行了深入广泛的学术研究和探讨。在此基础上,提出了设计、编制“中国盲文民族器乐符号”的基本原则:一是力求国际化,即民族乐器的某个演奏技法如与西洋乐器相同或近似,一般直接引用或借鉴西洋乐器符号;二是对过去使用过的、并在实践中证明是可行的盲文音乐符号,尽量予以肯定和延用;三是不同乐器的某种演奏和效果如相同或近似,尽量采用相同或近似的符号,以求统一规范;四是新设计盲文音乐符号力求省点省方,相互会意,便于读写和记忆。某一乐器的各种演奏方法中,如有某些相似的技巧和方法,则用一个特定的符号加以表示,以求符形安排的系列化;五是部分非乐音和模拟音的记法,一般在音乐字号后加文字词头表示。

按照上述原则,由有关专家组成的编委会搜集整理了大量相关资料,重新拟定了一套较为规范完备的盲文民族器乐符号方案,经过多次专家会议研讨和审定,于1989年12月向社会推出了《中国盲文民族器乐符号集成》。这套民族器乐符号包括了拉弦乐、弹拨乐、吹管乐和打击乐中具有代表性的十几种民族乐器符号,共405个。它的面世,标志着我国盲文民族器乐符号的成熟、规范和统一,必将为广大盲人学习民族器乐提供方便条件。

《中国盲文民族器乐符号》于1990年12月在香港召开的第二届中、港、台点字研讨会上被审定通过,并决定将其作为共同使用的统一方案。

乐器数字接口(Musical Instrument Digital Interface,简称MIDI)是一个工业标准的电子通信协定,为电子乐器等演奏设备(如合成器)定义各种音符或弹奏码,容许电子乐器、电脑、手机或其它的舞台演出配备彼此连接,调整和同步,得以实时交换演奏数据。MIDI存储音调和音乐强度的数据,音量,颤音和相位等参数的控制信号,还有设置节奏的时钟信号。

MIDI文件属于二进制文件,这种文件由以下组成结构:文件头+数据描述。MIDI文件由块(chunk)组成,头部叫做头块(header chunk),一个MIDI文件只有唯一一个头块。剩下的数据描述叫做轨道块(track chunk),有一个或多个。

MIDI的数据是由若干个格式相同的子数据构成的,这些子数据在多音轨的格式中记录了一个轨道的所有信息。全局音轨包括歌曲的附加信息(比如标题和版权)、歌曲速度和系统码(Sysx)等内容。每一个数据有着相同的结构:时间差+事件。所谓时间差,指的是前一个事件到该事件的时间数。时间差后边的就是事件(event)描述,事件大体上可以分为音符、控制器和系统信息这几个种类。对于这些事件,都有统一的表达结构:种类+参数。

事件包含以下三类:

·<midi事件>

·<meta事件>

·<sysex事件>

首先,针对通过MIDI文件生成盲文乐谱方面,对MIDI读取、MIDI转五线谱及五线谱转盲文乐谱的研究方面,均出现了多种方法与系统,经过资料检索,大致有如下几类:

(a)申请号:CN201510472794.6,名称为“MIDI文件解码方法和系统”的发明专利,包括:按照MIDI文件的各个轨道的时间信息参数对MIDI文件进行排序;将排序后的MIDI文件进行解码。上述系统包括排序模块和解码模块。上述MIDI文件解码方法和系统,不需要跳着获取各个轨道的事件,也不需要预解各个轨道的所有事件,能够降低解码资源,节省MIDI文件的解码成本。该方法仅完成了MIDI数据读取和解析,并没有进行到五线谱的转换。

(b)申请号:CN03131603.4,名称为“基于MIDI文件的便携式多媒体音乐作曲系统”的发明专利,分为硬件支撑平台和软件模块两大部分:硬件支撑平台包括微处理器模块、存储模块、液晶显示屏、通信接口、乐谱输入接口以及音频电路模块;软件模块包括系统监控模块、文件下载及管理软件模块、专业音乐转换软件模块、专用乐谱输入软件模块、专业音乐编辑软件模块、音乐合成与回放软件模块以及液晶显示软件模块。该系统是一个开放的系统,具有信息可交换的特点;可以便捷地输入经典的五线谱、简谱,按照传统习惯创作;并具有乐音合成、回放的多媒体功能。该系统虽然完成了MIDI到五线谱的转换工作,但是没有进行盲文乐谱的生成。

(c)申请号:WO2007US03222,名称为“BRAILLE MUSIC SYSTEMS AND METHODS”的专利,其系统包括带处理器的数字键盘、存储设备及点显器,其方法为通过数字键盘输入或Midi文件生成盲文乐谱并由点显器显示。该方法虽然完成了MIDI到盲文乐谱的转换,但是并没有包括五线谱输出部分,无法通过五线谱与盲文乐谱的对照显示给予盲文乐谱出版以便利。

针对上述各公开方法或系统的技术缺陷,本申请致力于克服上述方法及系统无法解决的用于盲文出版的由MIDI到盲文乐谱的自动转换及五线谱与盲文乐谱对照显示的问题,旨在提出一种面向盲文出版的由MIDI到盲文乐谱的自动翻译方法及系统。

发明内容

本发明的目的在于解决当前盲文乐谱快速录入问题,提出了一种由MIDI到盲文乐谱的翻译方法及系统。

本发明一种由MIDI到盲文乐谱的翻译方法及系统包括一种由MIDI到盲文乐谱的翻译方法(简称“方法”)以及一种由MIDI到盲文乐谱的翻译系统(简称“系统”)两部分;

所述的系统主要包括:MIDI解析模块、音轨选择模块、五线谱绘制模块以及盲文转换模块;其中,MIDI解析模块又包括头读取单元、事件读取单元、事件解析单元;

事件读取单元又包括MIDI事件读取单元、系统事件读取单元和Meta事件读取单元;

事件解析单元又主要包含切小节单元、切拍单元、切和弦单元、计算时值单元、休止符补正单元、计算调号单元、修正音符单元;

头读取单元读出的变量主要包括小节长度以及拍长度;

五线谱绘制模块又包括:五线谱基线绘制单元、谱号绘制单元、拍号绘制单元、调号绘制单元、曲风与速度绘制单元、小节线绘制单元、和弦绘制单元、节奏组绘制单元、单独音符绘制单元、连音符绘制单元以及弧线绘制单元;

盲文转换模块又主要包括:小节循环调用模块、全休止符处理单元、音符时值处理单元、谱号转换单元、拍号转换单元、调号转换单元、曲风与速度转换单元、和弦转换单元、节奏组转换单元、单独音符转换单元、连音符转换单元以及弧线转换单元、简写单元;

各个模块的连接关系是:音轨选择模块与MIDI解析模块、五线谱绘制模块以及盲文转换模块相连;MIDI解析模块输出与五线谱绘制模块相连,五线谱绘制模块输出与盲文转换模块相连;

MIDI解析模块中各个单元连接关系如下:

MIDI解析模块中的头读取单元与事件读取单元相连,而事件解析单元与该模块中所有其他单元:计算调号单元、修正音符单元、切小节单元、切拍单元、切和弦单元、计算时值单元以及休止符补正单元相连;MIDI解析模块中的事件读取单元又与其中的MIDI事件读取单元、系统事件读取单元和Meta事件读取单元相连;

五线谱绘制模块各个单元连接关系如下:

五线谱基线绘制单元与曲风与速度绘制单元相连,曲风与速度绘制单元与谱号绘制单元相连,谱号绘制单元与拍号绘制单元相连,拍号绘制单元与调号绘制单元相连,调号单元与和弦绘制单元、节奏组绘制单元、单独音符绘制单元、连音符绘制单元或弧线绘制单元相连;小节线绘制单元与和弦绘制单元、节奏组绘制单元、单独音符绘制单元、连音符绘制单元以及弧线绘制单元并列相连;

盲文转换模块各个单元连接关系如下:

小节循环调用模块与全休止符处理单元、音符时值处理单元、谱号转换单元、拍号转换单元、调号转换单元、曲风与速度转换单元、和弦转换单元、节奏组转换单元、单独音符转换单元、连音符转换单元、弧线转换单元以及简写单元相连;全休止符处理单元又与音符时值处理单元、谱号转换单元、拍号转换单元、调号转换单元、曲风与速度转换单元、和弦转换单元、节奏组转换单元、单独音符转换单元、连音符转换单元、弧线转换单元以及简写单元并列相连;

各个模块的功能为:MIDI解析模块为五线谱绘制模块输出音符数据结构类型的乐谱数据;音轨选择模块选择欲显示的音轨;五线谱绘制模块根据MIDI解析模块输出的乐谱数据进行五线谱绘制,输出五线谱;盲文转换模块根据前两个模块的输出结构进行翻译转换,输出盲文乐谱;

乐谱数据的音符数据结构按顺序为:

音符序号、音符类别标记、调式、音名、音组、力度以及音符时值;

音符类别标记主要包括休止符、谱号、调号、拍号、速度以及小节线;

所述的方法包括如下步骤:

步骤一、将MIDI格式的数据文件转换成格式化的乐谱数据;

步骤二、根据步骤一输出的乐谱数据绘制五线谱;

步骤三、根据步骤一输出的乐谱数据以及步骤二绘制的五线谱,按照盲文乐谱数据与五线谱的转换规则,生成盲文乐谱;

具体的,步骤一又包含:

步骤1.1读出MIDI文件头中的音轨数量,并根据音轨数多少进行如下操作:

1.1.1当音轨数少于两条时,即只有一条音轨数据,此时,将只有一条音轨数据的MIDI拆分成高低两组乐谱数据,跳至步骤1.2;

1.1.2当音轨数大于等于两条时,跳至步骤1.2;

步骤1.2针对每一个音轨,使用休止符填补每一个音轨中的空时间片;

步骤1.3针对每一个音轨,根据文件头中定义的小节长度,将音符切分到每个小节中;

步骤1.4针对每一个音轨,根据文件头中定义的拍长度,确定小节中的每个音符的时值;

进一步的,步骤1.4中还可以根据文件头中的时钟单位识别出带两个附点的音符时值;

步骤1.5针对每一个音轨,根据音符的起止时序构建可能的和弦;

步骤1.6统计每一个音轨内的音符数据,确定调式和谱号;

步骤1.7针对每一个音轨,根据调式修正音符数据;

步骤1.8根据强度及拍号为主的信息识别弱起小节,判断乐谱数据中是否存在弱起小节,来进一步修正格式化乐谱数据中的音符数据,具体为:

1.8.1当乐谱数据中不存在弱起小节时,跳至步骤二;

1.8.2当乐谱数据中存在弱起小节时,进一步修正格式化的乐谱数据,跳至步骤二;

步骤二根据步骤一输出的乐谱数据绘制五线谱,具体为:

步骤2.1选择欲绘制的两条音轨作为当前音轨,若不选择,则默认前两条音轨为当前音轨;

步骤2.2针对步骤2.1确定的两条音轨,绘制一对上下两组五条平行线,作为五线谱基线;

步骤2.3基于步骤2.2输出的五线谱基线绘制曲风以及速度信息;

步骤2.4在步骤2.3基础上在五线谱基线上依次绘制谱号、拍号和调号;

步骤2.5根据乐谱数据音符数据结构中的音符类别标记判断需要绘制的是各种音符还是休止符,并进行如下操作:

2.5.1若音符类别标记为音符,则绘制各种音符,跳到步骤2.6;

2.5.2若音符类别标记为休止符,则绘制休止符;

更具体的,若2.5.1中的各种音符超出了当前五线谱基线范围,则首先绘制加线,再绘制音符的符头,再根据符头位置确定符干,若符头在中线以上则符干向下,否则符干向上;

其中,所述的各种音符包含不同时长、不同音高的音符;

步骤2.6在步骤2.5基础上,进一步绘制小节线以分隔音符;

步骤2.7将时序相同的音符组合成和弦音,并连接和弦符干;

步骤2.8将时值相同的连续短音符组成节奏组或连音符,并连接节奏组或连音符符干;

具体的,若步骤2.8中时值相同的连续短音符组成连音符,则还需要追加数字标识;

步骤2.9在步骤2.8基础上,使用弧线连接跨小节的相邻等高音符;

步骤三根据步骤一输出的乐谱数据以及步骤二绘制的五线谱,按照盲文乐谱数据与五线谱的转换规则生成盲文乐谱,即以每小节的音符数据作为输入,逐个处理单个音符,直到所有音符都处理完毕即可输出盲文,具体步骤如下:

步骤3.1如果当前音符与上一个音符构成和弦,则继续执行,否则跳转到步骤3.3;

步骤3.2计算当前音程与上一音符的音程差,并进行如下操作:

3.2.1如果音程差大于8,则根据当前音符的音高,在盲文字典中查找对应的音组号,将其添加到输出字符串中之后,跳转到步骤3.13;

3.2.2如果音程差小于等于8,则直接跳转到步骤3.13;

步骤3.2、3.2.1及3.2.2中的音程为两个音符之间的音高差;

步骤3.3判断当前音符是否在节奏组中,并进行相应操作:

3.3.1若当前音符在节奏组中,则跳转到步骤3.5;

3.3.2若当前音符不在节奏组中,则跳转到步骤3.4;

步骤3.4在盲文字典中查找当前音符对应的盲文符号,将其添加到输出字符串中,跳转到步骤3.6;

步骤3.5判断当前音符是否是本节奏组中的第一个音符,并进行相应操作:

3.5.1如果当前音符是本节奏组中第一个音符则跳转到步骤3.4;

3.5.2如果当前音符不是本节奏组中第一个音符则添加此音符的8分音符符号,跳至步骤3.6;

步骤3.6判断当前音符是否是本小节的第一个音符,并进行相应操作:

3.6.1如果当前音符是本小节的第一个音符,则跳转到步骤3.8;

3.6.2如果当前音符不是本小节的第一个音符,则跳转到步骤3.7;

步骤3.7判断当前音符与上一个音符组号以及音程差,进行相应操作:

3.7.1若当前音符与上一个音符组号相同并且音程差大于等于6,或者当前音符与上一个音符组号不同并且音程差大于等于4,则跳至步骤3.8;

3.7.2若当前音符与上一个音符组号且音程差不满足3.7.1的情况,则跳至步骤3.9;

步骤3.8根据当前音符的音高,在盲文字典中查找对应的音组号,将其添加到输出字符串中;

步骤3.9添加升降调、还原号,升降还原号紧挨着音符,在组号前;

步骤3.10根据当前音符与上一音符时值相同与否,进行相应操作:

3.10.1如果当前音符与上一音符时值不同,但时值符号相同,则输出时值区分号,并跳到步骤3.11;

3.10.2如果当前音符与上一音符时值及时值符号不符合3.10.1,则跳到步骤3.11;

步骤3.11根据音符的时值在盲文字典中查找对应的时值符号,将其添加到输出字符串中;

步骤3.12判断当前音符是不是连音符符号的开始,进行相应操作:

3.12.1若当前音符是连音符符号的开始,则添加连音符符号,跳至步骤3.13;

3.12.2若当前音符不是连音符符号的开始,则跳至步骤3.13;

至此,从步骤3.1到步骤3.12完成了一个音符的绘制;

步骤3.13判断当前音符是不是最后一个音符,并进行相应操作:

3.13.1若不是最后一个音符,则跳至步骤3.1进行下一个音符的转换;

3.13.2若是最后一个音符,则结束;

步骤一到步骤三完成了一种由MIDI到盲文乐谱的翻译方法。

有益效果

本发明一种由MIDI到盲文乐谱的翻译方法及系统与其他类似方法或系统相比,具有如下有益效果:

1.本发明利用流行的音乐记录方式(MIDI)获取乐谱数据,根据乐谱同时生成五线谱和盲文乐谱,以对照的形式展现出来;

2.本发明可以根据MIDI数据自动识别调号,方便出版时的准确性;

3.本发明为了精确还原MIDI数据,可以识别带两个附点的音符时值;

4.本发明可以根据强度信息识别弱起小节;

5.本发明可以根据速度输出曲风。

附图说明

图1是本发明一种由MIDI到盲文乐谱的翻译方法与系统的系统组成示意图;

图2是本发明一种由MIDI到盲文乐谱的翻译方法与系统的方法流程图;

图3是处理MIDI文件并生成格式化的乐谱数据流程图;

图4是根据乐谱数据绘制五线谱流程图;

图5是五线谱转盲文规则流程图;

图6是本发明实施例2中的一个实际运行的结果示意图,上边的数字是一个MIDI文件开始部分的二进制表现形式,其与五线谱之间的部分是这个乐曲的一些曲风调号等得盲文形式,五线谱之下的是该五线谱对应的盲文乐谱。

具体实施方式

为了进一步说明本发明及有益效果的特点,下面结合附图及实施例进行深入阐述和说明。

实施例1

如图1所示为本发明的一种由MIDI到盲文乐谱的翻译方法的系统组成示意图,图2所示为本发明的方法流程图。

本发明还可以实现非MIDI文件,比如手绘五线谱的转换,此时,步骤3.12后增加如下判断:

3.13A)若当前音符含有延音线,则追加延音线,跳至步骤3.13;

3.13B)若当前音符不含有延音线,则跳至步骤3.13。

本发明还可以连接能够输出MIDI文件的电子乐器作为系统输入来源,连接点显器、显示器等外部设备作为系统输出,用于盲人的乐曲创作。如图2所示为本发明的一种由MIDI到盲文乐谱的翻译方法的示意图,首先,接收MIDI文件,依次经过填充休止符、切分小节、切分拍、构造和弦、确定调式谱号及修正音符等步骤将MIDI文件转换为格式化的乐谱数据;然后,将生成的数据经过绘制谱线、绘制谱号节拍升降调号、绘制音符和休止符、绘制小节线、合成和弦音、连接节奏组、绘制连音线及补充曲风速度等步骤生成五线谱音符;最后,经过曲风速度转换、谱号转换、拍号转换、调号转换、和弦转换、节奏组转换、连音符转换、单独音符转换、弧线转换及简写处理等步骤生成盲文乐谱。具体包括如下步骤:

1.如图3所示为将MIDI文件进行处理,从而生成格式化的乐谱数据的流程,具体步骤如下:

1.1)首先读取MIDI的头块,确定包含几个音轨及音轨类型;然后分别读取MIDI文件中的各音轨数据,依次记录音轨中的MIDI事件、系统事件、Meta事件,将MIDI事件作为音符进行记录,其他事件根据类型存入相应的变量中,以便后续处理使用;

1.2)如果只有一个音轨则根据音符音高进行拆分,主要将时序相同的音符分别填入不同音轨,以形成高低两个音轨,否则继续1.3);

1.3)由于MIDI文件中不使用明显的数据记录休止符,而是暗含在两个连续事件的时间差中,所以需要在读取数据的基础上使用休止符填补音符之间的空隙;

1.4)由于MIDI文件中的时间计量单位是Tick,而不是音乐上常用的节拍,根据文件头中定义的小节长度,将音符切分到每个小节中;

1.5)根据文件头中定义的拍长度,确定小节中的每个音符的时值,由于MIDI的人为因素使音符长度不够精确,则需要将误差进行修正,主要通过判断长度是否为有效音符时值来确定,并允许一个误差范围进行规约,使最后生成的音符可读性更好;

1.6)根据音符的起止时序构建可能的和弦,相同时间开始的不同音高的音符构成和弦音,使用特别标记存储方便后续使用;

1.7)对每一个音轨进行如下计算,依次选择所有调式进行计算每个音符可能添加的升降调,统计这些升降调信息,将总数最少的调式作为当前音轨的调式,再根据音符的平均音高确定谱号是高音谱、中音谱或低音谱;

1.8)根据调式再次修正音符数据,使用确定的调式信息重新调整每一个音符的升降调并保存起来用于后续处理过程;

1.9)根据第一小节中各音符的强度,确定是否为弱起小节。

2.图4由乐谱数据绘制五线谱,步骤如下:

2.1)绘制一对上下两组五条平行线,作为五线谱基线;

2.2)在基线上依次绘制谱号、节拍、升降调号;

2.3)根据乐谱数据依次绘制音符和休止符,如果音符不能显示在当前五条线上,则通过加线的方式绘制符头,确定符头后如果在中线以上则符干向下,否则符干向上;

2.4)绘制小节线以分割音符;

2.5)将时序相同的音符组合成和弦音,连接符干,此时需要判断符头所在的线的平均值,继而判断出共用符干的方向;

2.6)将时值相同的连续短音符组成节奏组或连音符,先统一转换为半数以上方向的符干,再连接符干,如果是连音符还需要在符干上追加弧线和数字标识;

2.7)使用弧线连接跨小节的相邻等高音符;

2.8)补充曲风、速度等信息到五线谱的上面;

3.图5根据乐谱数据、按照盲文乐谱与五线谱的转换方式,生成盲文乐谱,步骤如下:

在盲文转换模块中,以一个小节的音符数据作为输入,输出此小节对应的盲文。转换算法首先要对输入音符做预处理,对于是和弦的音符,按照音调对和弦进行排序,在高音谱中,按照音调从高到低的顺序排序,低音谱按照音调从低到高的顺序排序。接下来处理单个音符,直到所有音符都处理完毕即可输出盲文。

对于单个音符的处理,具体步骤如下:

3.1)如果当前音符与上一个音符构成和弦,则继续执行,否则跳转到3.3);

●和弦

■如果是和弦,则只有第一个音符写完整,其他的写的是与上一个音符的音程差符号。

■在高音谱中,从上往下写音程,即第一个音符是最高音,其他音符按照音调从高到低的顺序写音程。低音谱则从下往上写音程

■和弦中,音程后不需要加附点,只在第一个音符后边加附点即可

3.2)计算当前音程与上一音符的音程差,如果音程差大于8,则根据当前音符的音高,在盲文字典中查找对应的音组号,将其添加到输出字符串中之后,跳转到3.13),否则直接跳转到3.13);

3.3)如果当前音符在节奏组中,则跳转到3.5),否则继续执行;

●节奏组

■构成节奏组的音符(包括休止符)要求时值相同,没有附点,并且是由三个或者三个以上16分或者更小音符组成

■休止符在第一个可以构成节奏组,其他都不行

■16分音符在3/8,6/8,9/8,12/8拍时,6个成一组,而且需要在同一个单拍子内(即力度值递减)。16分音符在5/8,7/8拍时,不能成组。其他情况,都是4个成一组,而且在同一拍内

■节奏组同时有和弦,将和弦看成一个整体,只在和弦的第一个音符做处理

■连音符内音符都是16分音符或者更小的,也算做节奏组

3.4)在盲文字典中查找当前音符对应的盲文符号,将其添加到输出字符串中,跳转到3.6);

3.5)如果当前音符是节奏组中第一个音符则跳转到3.4),否则添加此音符的8分音符符号,继续执行;

3.6)如果当前音符是本小节的第一个音符,则跳转到3.8),否则继续执行;

3.7)如果当前音符与上一个音符组号相同并且音程差大于等于6,或者当前音符与上一个音符组号不同并且音程差大于等于4,则继续执行,否则跳转到3.9);

3.8)根据当前音符的音高,在盲文字典中查找对应的音组号,将其添加到输出字符串中;

3.9)添加升降调、还原号,升降还原号紧挨着音符,在组号前;

3.10)如果当前音符与上一音符时值不同,但时值符号相同,则继续执行,否则跳转到3.11);

3.11)根据当前音符的时值大小,在盲文字典中查找对应的时值符号,将其添加到输出字符串中;

3.12)添加连音符符号:

●连音符

■非三连音时,直接在第一个音符前面加连音符号;

■嵌套的三连音,嵌套内的连音符需要用三方的盲文,其他的可以用两方的盲文;有不是三连音的连音存在时,也需要用三方的盲文;

3.13)添加延音线符号:

●延音线

■遇见延音线写延音线符号即可;

■对于和弦的延音线,在音符或者音程之后写延音线符号即可,同上述规则;

■同时有连线和延音线时,先写延音线,后写连线。

实施例2

图6是本实施例的一个实际运行结果示意图,上边的数字是一个MIDI文件开始部分的二进制表现形式,其与五线谱之间的部分是这个乐曲的一些曲风调号等得盲文形式,五线谱之下的是该五线谱对应的盲文乐谱。由此实施例可以看出,本发明利用流行的音乐记录方式(MIDI)获取乐谱数据,根据乐谱同时生成五线谱和盲文乐谱并对照展示;还能够实现根据MIDI数据自动识别调号、识别双附点音符时值、根据强度信息识别弱起小节以及根据速度输出曲风。

综上所述,以上仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号