CN106297760A - 一种软件快速演奏乐器的算法 - Google Patents

一种软件快速演奏乐器的算法 Download PDF

Info

Publication number
CN106297760A
CN106297760A CN201610643248.9A CN201610643248A CN106297760A CN 106297760 A CN106297760 A CN 106297760A CN 201610643248 A CN201610643248 A CN 201610643248A CN 106297760 A CN106297760 A CN 106297760A
Authority
CN
China
Prior art keywords
node
pitch
duration
data block
algorithm
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
Application number
CN201610643248.9A
Other languages
English (en)
Inventor
高逦
张昌武
唐雨晨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Northwestern Polytechnical University
Original Assignee
Northwestern Polytechnical University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Northwestern Polytechnical University filed Critical Northwestern Polytechnical University
Priority to CN201610643248.9A priority Critical patent/CN106297760A/zh
Publication of CN106297760A publication Critical patent/CN106297760A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H7/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/08Instruments in which the tones are synthesised from a data store, e.g. computer organs by calculating functions or polynomial approximations to evaluate amplitudes at successive sample points of a tone waveform
    • G10H7/10Instruments in which the tones are synthesised from a data store, e.g. computer organs by calculating functions or polynomial approximations to evaluate amplitudes at successive sample points of a tone waveform using coefficients or parameters stored in a memory, e.g. Fourier coefficients
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H7/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/08Instruments in which the tones are synthesised from a data store, e.g. computer organs by calculating functions or polynomial approximations to evaluate amplitudes at successive sample points of a tone waveform
    • G10H7/12Instruments in which the tones are synthesised from a data store, e.g. computer organs by calculating functions or polynomial approximations to evaluate amplitudes at successive sample points of a tone waveform by means of a recursive algorithm using one or more sets of parameters stored in a memory and the calculated amplitudes of one or more preceding sample points
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/101Music Composition or musical creation; Tools or processes therefor
    • G10H2210/105Composing aid, e.g. for supporting creation, edition or modification of a piece of music
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/101Music Composition or musical creation; Tools or processes therefor
    • G10H2210/111Automatic composing, i.e. using predefined musical rules

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Auxiliary Devices For Music (AREA)

Abstract

一种软件快速演奏乐器的算法,具体应用在音乐类的系统开发中,属于多媒体创作技术领域。算法围绕着寻找简谱中的“节点”(音符‘0’~‘7’),对简谱进行数据块分割,每个数据块都有自己的音乐特征——音高和音长;利用音高计算方法,通过该“节点”的相对音高r(n,d)、该数据块的增值音高a(n,i)和整首音乐的基础调式basis得到该数据块对应的音频资源s(n);利用音长计算方法,通过该数据块的延时跨度t(n,j)和单位延时跨度time得到该音频资源对应的播放时长y(n);可以通过修改basis和time的值来改变整首音乐的音高和节奏;每个“节点”对应的数据块的特征值为{s(n),y(n)};最终,一个音乐简谱被翻译成大的数据块集合{{s(0),y(0)},{s(1),y(1)},…{s(n),y(n)}}。本发明节约开发时间,运行效率高,操作简便,实用性强。

Description

一种软件快速演奏乐器的算法
技术领域
本发明涉及一种软件快速演奏乐器的算法,具体应用在音乐类的系统开发,属于多媒体创作技术领域。
背景技术
目前,音乐类的算法主要集中于音乐的分类、检索与推荐,并没有多少针对于音乐创作方面的算法。而音乐创作类的软件多数应用数据库对资源进行存储管理,没有对算法进行过深入的探讨。在现有的文献及发明中,很少有对这类的算法进行研究的,使用软件快速演奏乐器相关的算法更是一片空白。
另外,国内音乐创作类的软件发展比较滞后,音乐创作类的软件市场多被国外主流公司垄断,国内的相关软件参差不齐,没有形成竞争力,其中的一个主要原因就是很少可以找到相关的技术支持。所以,此类的软件开发门槛较高,从事相关方面的研究人员更是少之又少,于是出现了“使用软件的音乐爱好者多、从事开发的专业人员少”的局面,因为既懂音乐又懂开发技术的人不多。
发明内容
针对现在软件演奏乐器这一算法领域的空白,本发明提供了一种软件快速演奏乐器的算法。
本发明从简谱“节点”定位、音频资源关联和时间调度三个方面对数字化简谱进行译谱分析,降低音乐创作类软件的开发难度,缩短开发周期。
一种软件快速演奏乐器的算法的具体内容如下:
S1:简谱输入;
S2:对简谱按照“节点”进行分割,“节点”就是“0”~“7”这8个乐符,一个完整的简谱一定是由若干个以“节点”为中心的数据块组成;定位“节点”的方法就是从简谱的起始位置开始顺序向简谱结尾位置遍历,遇上“0”~“7”就进行位置标定;“节点”定位完成以后,需要围绕“节点”对简谱进行拆分,得到若干个数据块;
S3:通过设定基础音高basis和和基础音长time的值,确定整体的音乐节奏和风格;
S4:确定第n个“节点”对应的音高;每个“节点”位置的值d对应一个相对音高r(n,d),当前“节点”数据块范围内的表示音高变化的k个音符都各自对应一个增值音高a(n,i),整首音乐的基础调式对应一个基本音高basis,最终该“节点”对应的音频资源的音高为
S5:确定第n个“节点”对应的音长;即每个“节点”对应的音频文件有各自播放的时长;当前“节点”数据块内的表示时间的m个音符都各自对应一个延时跨度t(n,j),单位延时跨度为time,那么当前“节点”对应的音频资源的播放时长为
y ( n ) = t i m e * Σ j = 1 m t ( n , j )
S6:一个完整的数字化简谱就被拆分成各个“节点”数据块,对应了各个音频资源和播放时长,即{{s(0),y(0)},{s(1),y(1)},…{s(n),y(n)}},其中y表示音长,s表示音高,n为节点号。
本发明有以下优势:
(1)算法协议简单,应用该算法,开发人员可以快速的编写音乐创作软件;
(2)使用者不须学习专业的乐理知识就可以进行译谱和音乐创作;
(3)算法生成的音乐文本文件小巧,可以直接跨平台播放,便于传播和编辑;
(4)本算法运行效率高,结构清晰,大大缩短了开发周期。
附图说明
图1为本发明的算法流程图。
图2为本发明的算法过程。
图3为本发明的WINDOWS输入平台。
图4为本发明的ISO输入平台。
图5为本发明的FPGA输入平台。
具体实施方式
为使本发明的一种软件快速演奏乐器的算法的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明做进一步详细说明,但是,应当说明的是,以下所描述的具体实施例仅用于说明本发明,但不用来限定本发明的范围。
1、图1是本发明的算法流程图。如图1所示,
该算法涉及三个用户输入单元和若干个算法处理单元。
用户输入单元可以是各种具有数据交互功能的软硬件终端,如电脑、手机、带有按键的微处理器平台及其相关的系统软件等。用户输入单元内容包括“音乐简谱输入”、“音乐的基础音高”(即basis)和“音乐的基础音长”(即time)。输入方式可以是软件操作界面的交互,如编辑框输入、按钮点击等,也可以是硬件平台的交互,如键盘、触摸屏等。
算法处理单元按照功能分为三大模块。第一个模块包括“节点定位”和“数据块划分”,主要完成的功能是对简谱按照“节点”进行分割;第二个模块包括“确定节点音高”和“音频资源关联”,主要功能是结合输入的“音乐基础音高”,按照音高计算公式计算当前“节点”对应的音高,并通过所得到的音高值找到相关的音频资源;第三个模块包括“确定节点音长”和“时间调度”,主要功能是结合输入的“音乐基础音长”,按照音长计算公式计算当前“节点”对应的音频资源的播放时长。
根据算法的调度,一个完整的简谱最终被拆分成若干个“节点”数据块,每个“节点”对应着自己的音高和音长,所以输出音乐时就有对应的音频资源和播放时长,达到软件快速演奏乐器的效果。
2、图2是本发明的算法过程图;如图2所示,该过程包括:
步骤1:如图3、4、5所示,通过多平台输入音乐简谱;
步骤2:对输入的简谱,进行“节点”分割和定位。首先对简谱“节点”定位,设定“节点”为“0”~“7”这8个乐符,一个完整的简谱是由若干个以“节点”为中心的数据块组成;定位“节点”的方法就是从简谱的起始位置开始顺序向简谱结尾位置遍历,遇上“0”~“7”就进行位置标定,“节点”定位完成以后,围绕“节点”对简谱进行拆分,得到若干个数据块;具体步骤如下:
假设节点为Node,简谱为Buffer[],那么寻找节点的操作的主体示例程序可以表示为:
WHILE(Buffer[Node]<’0’||Buffer[Node]>’7’){Node++;…}
步骤3:通过设定基础音高basis和和基础音长time的值,确定整体的音乐节奏和风格。
步骤4:确定该“节点”对应的音高;每个“节点”的音符d对应一个相对音高r(n,d),当前“节点”数据块范围内的表示音高变化的k个音符都各自对应一个增值音高a(n,i),整首音乐的基础调式对应一个基本音高basis,最终该“节点”对应的音频资源的音高为
s ( n ) = r ( n , d ) + &Sigma; i - 1 k a ( n , i ) + b a s i s
其中,r(n,d)的值对应于下表:
表1
d 0 1 2 3 4 5 6 7
r(n,d) 0 0 2 4 5 7 9 11
其中,a(n,i)的值对应于下表:
表2
音符 > < # b
a(n,i) 12 -12 1 -1
其中,basis的值对应于下表:
表3
调式 A B C D E F G
basis 49 51 40 42 44 45 47
假设当前节点位置为Node1,上一节点位置为Node0,简谱为Buffer,音高为S,那么音高计算的主体示例程序可以表示为:
步骤5:确定各个“节点”对应的音长,即每个“节点”对应的音频文件有各自播放的时长;当前“节点”数据块内的表示时间的m个音符都各自对应一个延时跨度t(n,j),单位延时跨度time,那么当前“节点”对应的音频资源的播放时长为
其中,t(n,j)的值对应于下表:
表4
音符 - - .
t(n,j) (()+1) (()×0.5) (()×1.5)
假设当前节点位置为Node1,下一节点位置为Node2,简谱为Buffer,音长为y,那么音长计算的主体示例程序可以表示为:
步骤6:最后,一个完整的数字化简谱就被拆分成各个“节点”数据块,对应了各个音频资源和播放时长,即{{s(0),y(0)},{s(1),y(1)},…{s(n),y(n)}},其中y表示音长,s表示音高,n为节点号。

Claims (6)

1.一种软件快速演奏乐器的算法,其特征在于,包括以下步骤:
S1:简谱输入;
S2:设定“节点”,并将简谱进行分割和定位,得到若干个数据块;
S3:设定整体的音乐节奏和风格;
S4:确定当前“节点”音高;
S5:确定当前”节点”音长;
S6:将各“节点”的特征值数据块组合,对应音频资源和播放时长。
2.根据权利要求1所述的一种软件快速演奏乐器的算法,其特征在于:所述步骤2中:设定节点为“0”~“7”这8个乐符,将简谱从起始位置开始向结尾位置进行遍历,并寻找节点,遇上“0”~“7”就进行标定;每次WHILE循环结束后的Node指向的位置就是一个节点,具体步骤如下:
WHILE(Buffer[Node]<’0’||Buffer[Node]>’7’){Node++;…}
其中Node为节点,Buffer[]为简谱 。
3.根据权利要求1所述的一种软件快速演奏乐器的算法,其特征在于:所述步骤3中:通过设定基础音高basis和和基础音长time的值,可以确定整体的音乐节奏和风格。
4.根据权利要求1所述的一种软件快速演奏乐器的算法,其特征在于:所述步骤4中:确定当前第n个“节点”对应的音高;即每个“节点”位置的值d对应一个相对音高r(n,d),当前“节点”数据块范围内的表示音高变化的k个音符都各自对应一个增值音高a(n,i),整首音乐的基础调式对应一个基础音高basis,最终该“节点”对应的音频资源的音高为:
5.根据权利要求1所述的一种软件快速演奏乐器的算法,其特征在于:所述步骤5中:确定当前第n个“节点”对应的音长,即每个“节点”对应的音频文件有各自播放的时长;当前“节点”数据块内的表示时间的m个音符都各自对应一个延时跨度t(n,j),而单位延时跨度为time,那么当前“节点”对应的音频资源的播放时长为
6.根据权利要求1所述的一种软件快速演奏乐器的算法,其特征在于:所述步骤6中:一个完整的数字化简谱由各“节点”数据块组成,对应了音频资源和播放时长,即{{s(0),y(0)},{s(1),y(1)},…{s(n),y(n)}},其中y表示音长,s表示音高,n为节点号。
CN201610643248.9A 2016-08-08 2016-08-08 一种软件快速演奏乐器的算法 Pending CN106297760A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610643248.9A CN106297760A (zh) 2016-08-08 2016-08-08 一种软件快速演奏乐器的算法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610643248.9A CN106297760A (zh) 2016-08-08 2016-08-08 一种软件快速演奏乐器的算法

Publications (1)

Publication Number Publication Date
CN106297760A true CN106297760A (zh) 2017-01-04

Family

ID=57666644

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610643248.9A Pending CN106297760A (zh) 2016-08-08 2016-08-08 一种软件快速演奏乐器的算法

Country Status (1)

Country Link
CN (1) CN106297760A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108337367A (zh) * 2018-01-12 2018-07-27 维沃移动通信有限公司 一种基于移动终端的乐器演奏方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070261536A1 (en) * 2006-05-09 2007-11-15 Zeus Partnership Method and system for processing music on a computer device
CN101203904A (zh) * 2005-04-18 2008-06-18 Lg电子株式会社 音乐谱写设备的操作方法
CN102194348A (zh) * 2010-03-04 2011-09-21 高苏 乐器学习、演奏、娱乐辅助设备
CN103902647A (zh) * 2013-12-27 2014-07-02 上海斐讯数据通信技术有限公司 一种应用于智能设备上的乐谱识别方法及智能设备
CN104361884A (zh) * 2014-11-18 2015-02-18 张正贤 一种能弹奏出人声唱谱的电子装置及其操作方法
CN104408992A (zh) * 2014-12-19 2015-03-11 李荣广 电脑模拟乐器演奏同时记录乐谱的方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101203904A (zh) * 2005-04-18 2008-06-18 Lg电子株式会社 音乐谱写设备的操作方法
US20070261536A1 (en) * 2006-05-09 2007-11-15 Zeus Partnership Method and system for processing music on a computer device
CN102194348A (zh) * 2010-03-04 2011-09-21 高苏 乐器学习、演奏、娱乐辅助设备
CN103902647A (zh) * 2013-12-27 2014-07-02 上海斐讯数据通信技术有限公司 一种应用于智能设备上的乐谱识别方法及智能设备
CN104361884A (zh) * 2014-11-18 2015-02-18 张正贤 一种能弹奏出人声唱谱的电子装置及其操作方法
CN104408992A (zh) * 2014-12-19 2015-03-11 李荣广 电脑模拟乐器演奏同时记录乐谱的方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108337367A (zh) * 2018-01-12 2018-07-27 维沃移动通信有限公司 一种基于移动终端的乐器演奏方法及装置
CN108337367B (zh) * 2018-01-12 2021-01-12 维沃移动通信有限公司 一种基于移动终端的乐器演奏方法及装置

Similar Documents

Publication Publication Date Title
CN106503184B (zh) 确定目标文本所属业务类别的方法及装置
CN107301170B (zh) 基于人工智能的切分语句的方法和装置
CN102479223B (zh) 数据查询方法及系统
CN104731954A (zh) 基于群透视音乐推荐方法与系统
Bittner et al. MedleyDB 2.0: New data and a system for sustainable data collection
WO2015103899A1 (zh) 事件知识库的构建方法及装置
KR101637282B1 (ko) 음악 플레이리스트 생성방법, 및 음악 플레이리스트 생성장치
CN105161116B (zh) 多媒体文件高潮片段的确定方法及装置
CN105488068B (zh) 搜索音乐和建立索引的方法及装置、搜索结果判断方法
CN109460354B (zh) 一种基于rdf推理进行测试用例约简的方法
CN105988996A (zh) 一种索引文件生成方法及装置
ATE434787T1 (de) Kontext-menü, das abhängigkeits-beziehungen für gegenstände unterschiedlicher art bereitstellt
CN111785238A (zh) 音频校准方法、装置及存储介质
CN104778221A (zh) 一种歌曲串烧拼接的方法及装置
Stasis et al. Audio processing chain recommendation
CN102902759A (zh) 一种歌曲处理方法及系统
CN106297760A (zh) 一种软件快速演奏乐器的算法
CN104636324B (zh) 话题溯源方法和系统
Frid Sonification of women in sound and music computing-the sound of female authorship in ICMC, SMC and NIME proceedings
WO2024001756A1 (zh) 数据存储方法、装置、电子设备和存储介质
WO2018082320A1 (zh) 数据流连接方法及装置
CN111460552A (zh) 一种卫生间样板间自动设计方法
CN106484833A (zh) 一种音源筛选方法及电子设备
CN105824857A (zh) 一种语音搜索方法、装置及终端
JP2007026115A (ja) ラベル付与システムおよびラベル付与方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20170104