自动作曲装置、方法

文档序号:9867701阅读:568来源:国知局
自动作曲装置、方法【专利说明】自动作曲装置、方法[0001]本申请基于2014年11月20日提出申请的日本申请第2014-235235号主张优先权,并援引该在先申请的全部内容。
技术领域
[0002]本发明涉及自动作曲装置以及方法。【
背景技术
】[0003]已知根据由多个音符(note)数据构成的乐旨旋律(motifmelody)进行自动作曲的技术。例如,已知如下那样的现有技术(例如特开2002-32080号公报中记载的技术)。如果从存储有特定调的和弦进行(chordprogress1n)的数据库中选择规定的和弦进行,并将乐旨(motif)以规定的调输入,贝Ij从输入乐旨检测出乐旨调(motifkey)。基于检测出的乐旨调将和弦进行数据变调为乐旨调,在旋律生成中,基于输入乐旨以及向乐旨调变调后的和弦进行,生成乐旨调的旋律。此外,基于检测出的乐旨调将乐旨变调为特定调,根据特定调的和弦进行以及变调后乐旨生成特定调的旋律,然后,变调为乐旨调的旋律。[0004]此外,还已知如下那样的现有技术(例如特开平10-105169号公报中记载的技术)。从乐曲数据的卡拉OK演奏用数据和引导(guide)旋律数据提取4分音符以上的长度的音符,统计其音调名称(Pitchname)(C?B)的出现频度的分布。比较该频度分布和大调判断音阶及小调判断音阶,将分布形状最一致处判断为作为主音(音阶音(scalenote))的调,根据该调判断结果和引导旋律数据生成和声数据,并根据该和声数据形成和声声音信号。[0005]但是,上述现有技术是从乐旨中提取某些精华(essences)并进行变形的例子。通常,虽然也有乐旨旋律和副歌(refrain)旋律相似而具有共通的特征的情况,但不这样的情况较多。即,分别根据独立的创作意图来制作乐旨和副歌旋律的情况较多。因而,如果如上述现有技术那样强行从乐旨自动生成副歌旋律,则在通常的意义上具有大多得不到自然的旋律的课题。[0006]另一方面,还已知有输入乐旨和副歌旋律双方而进行自动生成的现有技术,但输入方法等复杂,不适合作为使初学者简单地享受作曲的方法。【
发明内容】[0007]因此,本发明的目的在于,使乐旨和副歌旋律的对比能够自动生成自然的旋律。[0008]根据实施方式的一例,具备自动作曲装置,其具备:输入部,将含有多个音符数据的乐句(phrase)作为输入乐旨来输入,并将所输入的上述乐句的类别输入;以及处理部,执行:检索处理,从存储将类别分别不同的多个乐句进行了组合的多种乐句集合的乐句集合数据库中,检索包含与所指定的上述类别相同且与上述输入乐旨相对类似度高的乐句的乐句集合;以及旋律生成处理,基于所检索的上述乐句集合生成旋律。【附图说明】[0009]图1是自动作曲装置的实施方式的框图。[0010]图2是表示本实施方式中被自动作曲的乐曲的构造例的图。[0011]图3是输入乐旨108与和弦进行数据的适合动作例。[0012]图4是表示输入乐旨的数据结构例的图。[0013]图5是表示伴奏/和弦进行DB的数据结构例的图。[0014]图6是表示I个记录中的曲构造数据的数据结构例的图。[0015]图7是表示标准音级集合表(tandardpitchclasssettable)的数据结构例的图。[0016]图8是有关音符类型、邻接音程(adjacenttone)、以及音符类型与邻接音程的数组变量(arrayvariable)数据的说明图。[0017]图9是表示音符连接规则的数据结构例的图。[0018]图10是和弦进行选择部102的动作说明图。[0019]图11是表示乐句集合DB的数据结构例的图。[0020]图12是旋律变形处理以及旋律优化处理的动作说明图。[0021]图13是旋律优化处理的详细动作说明图。[0022]图14是表示自动作曲装置的硬件结构例的图。[0023]图15A是表示各种变量数据、数组变量数据、以及常数数据的列表的图(其I)。[0024]图15B是表示各种变量数据、数组变量数据、以及常数数据的列表的图(其2)。[0025]图16是表示自动作曲处理的例子的流程图。[0026]图17是表示和弦进行选择处理的详细例的流程图。[0027]图18是表示和弦设计数据制作处理的详细例的流程图。[0028]图19是表示输入乐旨与和弦进行的适合度(matchinglevel)检查处理的详细例的流程图。[0029]图20是表示检查处理的详细例的流程图。[0030]图21是表示与输入乐旨的当前的音符的定时相对应的和弦信息的取得处理的详细例的图。[0031]图22是表示音符类型取得处理的详细例的图。[0032]图23是表示音符连接性检查处理的详细例的图。[0033]图24是表示旋律生成处理的详细例的图。[0034]图25是表示旋律生成I处理的详细例的图。[0035]图26是表示乐句集合DB检索处理的详细例的图。[0036]图27是表示旋律变形处理的详细例的图。[0037]图28是表示旋律优化处理的详细例的图。[0038]图29是表示旋律生成2处理的详细例的图。【具体实施方式】[0039]以下,参照附图详细说明用于实施本发明的方式。图1是自动作曲装置100的实施方式的框图。该自动作曲装置100具备乐旨输入部101、和弦进行选择部102、伴奏/和弦进行数据库(以下,将“数据库”称为“DB”)103、规则DB104、旋律生成部105、乐句集合DB106以及输出部107。[0040]乐旨输入部101使用户将所谓A旋律(Amelody)、B旋律、C旋律(副歌旋律)等决定曲调的特征性旋律部分中的某一个作为输入乐旨108来输入。输入乐旨108是A旋律部分的乐旨即乐旨A、B旋律部分的乐旨即乐旨B、或者C旋律(副歌旋律)部分的乐旨即乐旨C中的某一个,例如具有各旋律部分的开头的2小节的长度。乐旨输入部101例如具备用户通过键盘将旋律输入的键盘输入部101-1、用户从麦克风通过歌声将旋律输入的声音输入部101-2、用户从键盘等将构成旋律的音符的数据输入的音符输入部101—3中的任I个以上的机构。此外,输入部101具有将A旋律、B旋律、C旋律(副歌旋律)等乐旨的类别输入的、独立的操作单元等。[0041]和弦进行选择部102按照在伴奏/和弦进行DB103中存储的多个和弦进行数据的每个,一边参照规则DB104,一边计算表示该和弦进行数据与从乐旨输入部101输入的输入乐旨108以何种程度适合的适合度,输出适合度高的例如分别指示上位3个和弦进行数据的#0、#1、#2的和弦进行候选指示数据(图1中显示为“和弦进行候选”)109。[0042]旋律生成部105例如使用户选择与和弦进行选择部102输出的#0、#1、#2的和弦进行候选指示数据109对应的3个和弦进行候选中的I个。或者,旋律生成部105也可以使得自动地按顺序选择与#0、#1、#2的和弦进行候选指示数据109的某一个对应的和弦进行候选。结果,旋律生成部105将与所选择的和弦进行候选对应的曲构造数据从伴奏/和弦进行DB103读入。旋律生成部105按照由该曲构造数据表示的小节的每个乐句,一边参照输入乐旨108和登记在乐句集合DB106中的乐句集合、以及规则DB104,一边自动生成该乐句的旋律。旋律生成部105遍及乐曲整体的小节而执行旋律的自动生成处理,将自动生成的旋律110输出。[0043]输出部107具备:乐谱显示部107—I,根据旋律生成部105自动生成的旋律数据110来显示旋律的乐谱;乐音再现部107-2,根据旋律数据110以及从伴奏/和弦进行DB103取得的伴奏用MIDI(MusicalInstrumentDigitalInterface)数据,执行旋律及伴奏的再现。[0044]接着,对具有图1的功能结构的自动作曲装置100的动作概略进行说明。图2是表示在本实施方式中被自动作曲的乐曲的构造例的图。乐曲通常由序曲(introduct1n)、A旋律、B旋律、间奏、C旋律(副歌旋律)、尾声(ending)等的乐句构成。序曲是仅由旋律开始前的伴奏构成的前奏部分。A旋律通常是指在序曲之后出现的乐句,在曲中通常演奏平稳后的旋律。B旋律是指在A旋律之后出现的乐句,多为与A旋律相比稍微激烈的曲调。对于C旋律而言,在B旋律之后出现的乐句的情况较多,日本的曲子中C旋律为曲子中最激烈的副歌旋律的情况较多。尾声与序曲相反,是指曲子的结尾的乐句。间奏例如是I曲目和2曲目之间的不存在旋律的仅乐器演奏的乐句。图2所示的乐曲的构造例中,按照序曲、A旋律、B旋律、A旋律、间奏、A旋律、B旋律、C旋律、尾声的顺序构成乐曲。[0045]本实施方式中,用户例如能够将乐曲中最初出现的A旋律的例如开头2小节的旋律从乐旨输入部101(参照图1)输入以作为图2的(a)的乐旨A(图1的输入乐旨108的一例)。或者,用户例如能够将乐曲中最初出现的B旋律的例如开头2小节的旋律从乐旨输入部101(参照图1)输入以作为图2的(b)的乐旨B(图1的输入乐旨108的另一例)。或者,用户例如能够将乐曲中最初出现的C旋律(副歌旋律)的例如开头2小节的旋律从乐旨输入部101(参照图1)输入以作为图2的(c)的乐旨C(图1的输入乐旨108的又一例[0046]图3A是表示如上述那样输入的输入乐旨108的音符例的图。这样,作为输入乐旨108,例如被指定2小节的旋律。[0047]对于这样的输入,和弦进行选择部102(参照图1)从在伴奏/和弦进行DB103中登记的和弦进行数据之中,提取例如上位3位的由适合的和弦及调、音阶构成的和弦进行数据。构成和弦进行数据的和弦以及调、音阶如图2的(f)以及图2的(g)所示,遍及乐曲整体被设定。[0048]图3B是表示由到上位3位为止的和弦进行数据表示的和弦进行(和弦以及调、音阶)#0,#1,#2的例子的图。[0049]图1的旋律生成部105根据这些信息,将输入乐旨108被输入的图2的(a)、图2的(b)、或图2的(C)的某一个的乐句部分以外的图2的(d)所示的乐句部分对应的旋律自动生成,并与输入乐旨108的旋律一起作为旋律110输出。并且,图1的输出部107进行与自动生成的旋律110对应的乐谱显示或放音。另外,关于伴奏,与伴奏/和弦进行DB103中被最终选择的和弦进行对应地登记的伴奏用MIDI数据被依次读出,基于该数据如图2的(e)所示那样遍及乐曲整体进行伴奏。[0050]图4是表示在图1的乐旨输入部101中基于用户输入而生成的输入乐旨108的数据结构例的图。如图4A所示,输入乐旨108由#0、#1、..?等多个音符数据构成,在最后存储终端和弦。各音符数据例如对应于构成图3A中例示的输入乐旨108的例如2小节的各个音符,是指示成为乐旨的旋律音的发音的数据。如图4B所示,I个音符数据由以下数据构成:将与该音符数据对应的音符的发音定时例如作为从输入乐旨108的开头起的经过时间而表示的“时间”数据、表示音符的长度的“长度”数据、表示音符的强度的“强度”数据、和表示音符的音高的“音高”数据。通过这些数据,表示图3A中例示那样的2小节的输入乐旨108中的I个音符。[0051]图5是表示图1的伴奏/和弦进行DB103的数据结构例的图。如图5A所示,和弦进行DB中,存储有I个记录(record)(图5A的I行)由和弦进行数据、伴奏用MIDI数据以及曲构造数据构成的、#0、#1、..?等多个记录,在最后存储有终端和弦。[0052]I个记录中的和弦进行数据表示乐曲的I曲的和弦进行。图5A所示的和弦进行DB中,例如存储有50记录=50曲的和弦进行数据。I记录中(=I曲)的和弦进行数据如图5B所示,由#0、#1、...等多个和弦数据构成,在最后存储有终端和弦。和弦数据中,有指定某定时中的调以及音阶的数据(图5C)、和指定某定时中的和弦的数据(图f5D)(参照图3B)。指定调以及音阶的数据如图5C所示,由表示该调以及音阶开始的定时的“时间”数据、“调”数据、和“音阶”数据构成。指定和弦的数据如图f5D所示,由表示该和弦开始的定时的“时间”数据、表示和弦的基音(root)的“基音”数据、以及表示和弦的类型(种类)的“类型”数据构成。和弦进行数据例如作为MIDI规格的元数据(metadata)被存储。[0053]图5A所示的伴奏/和弦进行DB103的I记录中(=I曲分)的曲构造数据具有图6所示的数据结构例。该曲构造数据按I曲中的每小节形成I个记录(图6的I行)。曲构造数据中的I个记录中,存储与该小节对应的乐句的类别以及表示在该乐句中是否存在旋律的信息。[0054]图6所示的曲构造数据中,在「(Measure)」项目中,登记有表示各记录的数据是乐曲中的第几小节的值。以后,将「Measure」项目的值为M的记录作为第M记录,将该记录表示的小节作为第M+1小节。例如「Measure」项目的值为O时该记录为第O记录/第I小节,其值为I时该记录为第I记录/第2小节。[0055]图6所示的曲构造数据中,「PartName[M]」项目以及「iPartID[M]」项目(「M」是「Measure(小节)」项目的值)中分别登记有第M记录/第M+1小节的乐句的类别以及表示与该类别对应的识别值的数据。例如,第O记录(第I小节)的「PartName[Μ]」项目以及「iPartID[M]」项目的值「Null」以及「O」表示该小节是无声的。第1、2记录(第2、3小节)的「PartName[M]」项目以及「iPartID[M]」项目的值「Intro」以及「I」表示该小节是序曲乐句。第3?10、28?34记录(第4?11、29?35小节)的「PartName[M]」项目以及「iPartID[M]」项目的值「A」以及「11」表示该小节是A旋律的乐句。第11?18记录(第12?19小节)的「PartName[M]」项目以及「iPartID[M]」项目的值「B」以及「12」表示该小节是B旋律的乐句。第19?27记录(第20?28小节)的「PartName[M]」项目以及「iPartID[M]」项目的值「C」以及「13」表示该小节是C旋律(或副歌旋律)的乐句。第35记录(第36小节)的「PartName[M]J项目以及「iPartID[M]J项目的值「Ending」以及「3」表示该小节是尾声的乐句。[0056]此外,图6所示的曲构造数据中,ΓExistMelody[M]」项目(「M」是「Measure」项目的值)中,登记有表示第M记录(第M+1小节)的乐句中是否存在旋律的值。如果旋律存在则登记值「1」,如果不存在则登记值「O」。例如,M=0、1、2、或35(第0、1、2、35记录(第1、2、3、36小节))的「PartName[M]J项目为「Null」、「Intro」、或「Ending」的各乐句的「ExistMelody[M]」项目中登记有值「O」,表示不存在旋律。PartName[M]=「Null」的情况下是无声的,PartName[M]=「Intro」、或「Ending」的情况下仅存在伴奏。[0057]此外,图6所示的曲构造数据中,「iPartTime[M]」项目(「M」是「Measure」项目的值)中,登记有与第M记录对应的第M+1小节的小节开始时间数据。图6中虽然为空栏,但在各记录中保存实际的时间值。[0058]以上的图6所示的曲构造数据例如作为MIDI规格的元数据被存储。[0059]如在图2中描述过的那样,用户例如能够将在图6的曲构造数据中最初出现的A旋律的例如开头2小节即第3、4记录(第4、5小节)的旋律作为乐旨A(参照图2的(a))从乐旨输入部101(参照图1)输入。或者,用户例如能够将在图6的曲构造数据中最初出现的B旋律的例如开头2小节即第11、12记录(第12、13小节)的旋律作为乐旨B(参照图2的(b))从乐旨输入部101输入。或者,用户例如能够将在图6的曲构造数据中最初出现的C旋律(副歌旋律)的例如开头2小节即第19、20记录(第20、21小节)的旋律作为乐旨C(参照图2的(c))从乐旨输入部101输入。[0060]和弦进行选择部102按照在伴奏/和弦进行DB103中存储的每个和弦进行数据(以下记作“评价对象和弦进行数据”),计算表示该评价对象和弦进行数据与从乐旨输入部101输入的输入乐旨108以何种程度相适合的适合度。[0061]在本实施方式中,将评价对象和弦进行数据对输入乐旨108的适合度,使用音乐理论中的有效音符音阶(availablenotescale)的概念来计算。有效音符音阶在提供了和弦进行时将能够在旋律中使用的音表示为音阶。作为构成有效音符音阶的音符的种类(以下称作“音符类型”),例如有和弦音(chordtone)、有效音符(availablenote)、音阶音符(scalenote)、延伸音符(tens1nnote)、避免音符(avoidnote)。和弦音是成为音阶的基础的和弦的构成音,是优选使用I个音作为旋律的音符类型。有效音符是在旋律中通常能够使用的音符类型。音阶音符是音阶的构成音,如果将该音用较长的音等相加,则会与原本的和弦声冲突,所以是在处理中需要注意的音符类型。延伸音符是叠加于和弦音的在和弦的延伸中使用的音,是越是高次的延伸则声的紧张感越增加而成为色彩丰富的声的音符类型。避免音符是与和弦不和谐的音,是希望避免使用或在较短的音符中使用的音符类型。本实施方式中,关于构成输入乐旨108的各音符(图3A的各音符),根据与该音符的发音定时对应的评价对象和弦进行数据中的调及音阶与和弦的基音及和弦类型,计算该音符的该和弦进行上的音符类型。[0062]为了取得上述的构成输入乐旨108的各音符(图3A的各音符)的音符类型,在本实施方式中,使用标准音级集合表(standardpitchclasssettable)。图7是表示标准音级集合表的数据结构例的图。标准音级集合表设置在和弦进行选择部102内的存储区域(例如后述的图4的ROM1402内)。标准音级表由图7A中例示的和弦音表、图7B中例示的延伸音符表、以及图7C中例示的音阶音符表构成。[0063]在图7A、图7B或图7C的表中,与其I行对应的I组的音级集合由对将和弦或音阶的基音设为第O音(第O位)的音阶构成音时的构成I个八度(octave)的半音阶的第O音(第O位)(图中的行的右端)到第11音(当前第1页1 2 3 4 5 6 
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1