CN112189193A - 音乐生成器 - Google Patents
音乐生成器 Download PDFInfo
- Publication number
- CN112189193A CN112189193A CN201980034805.9A CN201980034805A CN112189193A CN 112189193 A CN112189193 A CN 112189193A CN 201980034805 A CN201980034805 A CN 201980034805A CN 112189193 A CN112189193 A CN 112189193A
- Authority
- CN
- China
- Prior art keywords
- music
- loops
- content
- rule
- attributes
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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
- G10H1/00—Details of electrophonic musical instruments
- G10H1/0008—Associated control or indicating means
- G10H1/0025—Automatic or semi-automatic music composition, e.g. producing random music, applying rules from music theory or modifying a musical piece
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/68—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/165—Management of the audio stream, e.g. setting of volume, audio stream path
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
- G06N5/025—Extracting rules from data
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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
- G10H1/00—Details of electrophonic musical instruments
- G10H1/02—Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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/00—Aspects 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/101—Music Composition or musical creation; Tools or processes therefor
- G10H2210/125—Medley, i.e. linking parts of different musical pieces in one single piece, e.g. sound collage, DJ mix
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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/00—Aspects 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/101—Music Composition or musical creation; Tools or processes therefor
- G10H2210/145—Composing rules, e.g. harmonic or musical rules, for use in automatic composition; Rule generation algorithms therefor
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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/00—Aspects 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/155—Musical effects
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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
- G10H2220/00—Input/output interfacing specifically adapted for electrophonic musical tools or instruments
- G10H2220/155—User input interfaces for electrophonic musical instruments
- G10H2220/351—Environmental parameters, e.g. temperature, ambient light, atmospheric pressure, humidity, used as input for musical purposes
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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
- G10H2220/00—Input/output interfacing specifically adapted for electrophonic musical tools or instruments
- G10H2220/155—User input interfaces for electrophonic musical instruments
- G10H2220/441—Image sensing, i.e. capturing images or optical patterns for musical purposes or musical control purposes
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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
- G10H2240/00—Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
- G10H2240/075—Musical metadata derived from musical analysis or for use in electrophonic musical instruments
- G10H2240/081—Genre classification, i.e. descriptive metadata for classification or selection of musical pieces according to style
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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
- G10H2240/00—Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
- G10H2240/075—Musical metadata derived from musical analysis or for use in electrophonic musical instruments
- G10H2240/085—Mood, i.e. generation, detection or selection of a particular emotional content or atmosphere in a musical piece
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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
- G10H2240/00—Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
- G10H2240/121—Musical libraries, i.e. musical databases indexed by musical parameters, wavetables, indexing schemes using musical parameters, musical rule bases or knowledge bases, e.g. for automatic composing methods
- G10H2240/131—Library retrieval, i.e. searching a database or selecting a specific musical piece, segment, pattern, rule or parameter set
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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
- G10H2240/00—Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
- G10H2240/121—Musical libraries, i.e. musical databases indexed by musical parameters, wavetables, indexing schemes using musical parameters, musical rule bases or knowledge bases, e.g. for automatic composing methods
- G10H2240/145—Sound library, i.e. involving the specific use of a musical database as a sound bank or wavetable; indexing, interfacing, protocols or processing therefor
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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
- G10H2250/00—Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
- G10H2250/131—Mathematical functions for musical analysis, processing, synthesis or composition
- G10H2250/211—Random number generators, pseudorandom generators, classes of functions therefor
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC 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
- G10H2250/00—Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
- G10H2250/541—Details of musical waveform synthesis, i.e. audio waveshape processing from individual wavetable samples, independently of their origin or of the sound they represent
- G10H2250/641—Waveform sampler, i.e. music samplers; Sampled music loop processing, wherein a loop is a sample of a performance that has been edited to repeat seamlessly without clicks or artifacts
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Acoustics & Sound (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Molecular Biology (AREA)
- Library & Information Science (AREA)
- Databases & Information Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Auxiliary Devices For Music (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Electrophonic Musical Instruments (AREA)
Abstract
公开了与基于现有音乐内容来确定作曲规则以自动生成新音乐内容有关的技术。在一些实施例中,计算机系统访问音乐内容集并基于分析该音乐内容集中的多个循环的组合来生成作曲规则集。在一些实施例中,系统通过从循环集中选择循环并组合所选择的循环以使得多个循环在时间上重叠来生成新的音乐内容。在一些实施例中,选择和组合循环是基于作曲规则集和循环集中的循环的属性来执行的。
Description
技术领域
本公开涉及音频工程,并且更具体地涉及生成音乐内容。
背景技术
流传输音乐服务通常经由因特网向用户提供歌曲。用户可以订阅这些服务,并通过web浏览器或应用程序来流传输音乐。这样的服务的示例包括PANDORA、SPOTIFY、GROOVESHARK等。经常的,用户可以选择音乐流派或特定艺术家来进行流传输。用户通常可以对歌曲进行评分(例如,使用星级评分系统或“喜欢/不喜欢”系统),并且一些音乐服务可以基于先前的评分来定制哪些歌曲被流传输给用户。运行流传输服务的成本(其可包括为每个流传输的歌曲支付版税)通常由用户订阅成本和/或在歌曲之间播放的广告来承担。
歌曲选择可能受到许可协议和为特定流派编写的歌曲的数量的限制。用户可能变得厌倦听到特定流派的相同歌曲。另外,这些服务无法根据用户的品味、环境、行为等来调节音乐。
附图说明
图1是示出根据一些实施例的基于多个不同类型的输入来生成音乐内容的示例性音乐生成器模块的图。
图2是示出根据一些实施例的具有用于生成输出音乐内容的多个用户交互应用程序的系统的示例性概述的框图。
图3是示出根据一些实施例的示例性规则集生成器的框图,该规则集生成器基于先前创作的音乐来产生规则。
图4是示出根据一些实施例的示例性艺术家图形用户界面(GUI)的框图。
图5是示出根据一些实施例的示例性音乐生成器模块的图,该音乐生成器模块基于多个不同类型的输入(包括针对一个或多个不同类型的乐器的规则集)来生成音乐内容。
图6A-6B是示出根据一些实施例的示例性存储规则集的框图。
图7是示出根据一些实施例的输出视频的音乐内容的示例性音乐生成器模块的框图。
图8是示出根据一些实施例的示例性音乐生成器模块的框图,该音乐生成器模块实时输出视频的音乐内容。
图9A-9B是示出根据一些实施例的示例性图形用户界面的框图。
图10是示出根据一些实施例的实现神经网络的示例音乐生成器系统的框图。
图11是示出根据一些实施例的音乐内容的示例构建部分的图。
图12是示出根据一些实施例的用于编排音乐内容的片段的示例技术的图。
图13是示出根据一些实施例的用于自动生成音乐内容的示例方法的流程图。
具体实施方式
本说明书包括对各种实施例的引用,以表明本公开并非旨在指代一个特定实现方式,而是指代落入包括所附权利要求在内的本公开的精神内的一系列实施例。可以以与本公开一致的任何合适方式来组合特定的特征、结构或特性。
在本公开内,不同的实体(其可以多样地被称为“单元”、“电路”、其他组件等)可被描述或要求保护为“配置”为执行一个或多个任务或操作。在本文中使用该表述方式——配置为[执行一个或多个任务]的[实体]——来指代结构(即,物理的东西,诸如电子电路)。更具体而言,该表述方式用于表明该结构被布置为在操作期间执行一个或多个任务。可以说一结构被“配置为”执行某个任务,即使该结构当前未被操作。“被配置为生成预测的队列图的资源协商器模块”旨在例如涵盖在操作期间执行该功能的模块,即使对应的设备当前未被使用(例如,当其电池未与之连接时)。因此,被描述或叙述为“配置为”执行某个任务的实体是指物理的东西,诸如设备、电路、存储可执行以执行该任务的程序指令的存储器等。该短语在本文中不用于指代无形的东西。
术语“配置为”并不旨在表示“可配置为”。例如,未编程的移动计算设备将不被认为被“配置为”执行某个特定功能,尽管它可能“可配置为”执行该功能。在适当的编程之后,移动计算设备然后可被配置为执行该功能。
所附权利要求中的一种结构被“配置为”执行一个或多个任务的陈述明确旨在对该权利要求元素不援引35U.S.C.§112(f)。因此,所提交的本申请中的权利要求均不旨在被解释为具有装置加功能元素。如果申请人希望在审查期间援引第112(f)条,它将使用“用于[执行功能]的装置”构造来陈述权利要求元素。
如本文所使用的,术语“基于”用于描述影响确定的一个或多个因素。该术语不排除其他因素可能影响确定的可能性。也就是说,确定可以仅基于指定因素,或者基于指定因素以及其他未指定因素。考虑短语“基于B来确定A”。该短语指定B是用于确定A的因素或影响A的确定的因素。该短语不排除A的确定也可以基于某个其他因素,诸如C。该短语也旨在涵盖其中仅基于B来确定A的实施例。如本文所使用的,短语“基于”与短语“至少部分地基于”同义。
详细描述
通过引用而整体并入本文的在2013年8月16日提交的美国专利申请第13/969,372号(现在为美国专利第8,812,144号)讨论了用于基于一个或多个音乐属性来生成音乐内容的技术。就基于’372申请的定义与本公开的其余部分之间的感知冲突做出任何解释来说,旨在以本公开为准。音乐属性可以由用户输入或者可以基于诸如环境噪声、照明等的环境信息来确定。’372的公开内容讨论了用于选择所存储的循环和/或曲目或生成新的循环/曲目并将所选择的循环/曲目分层以生成输出音乐内容的技术。
本公开总地涉及用于生成定制音乐内容的系统。目标音乐属性可以是声明性的,以使得用户为要生成的音乐指定一个或多个目标并且规则引擎选择并组合循环以实现这些目标。该系统还可以修改循环,例如,通过剪切以仅使用循环的一部分或应用一个或多个音频滤波器来改变循环的声音。下面讨论的各种技术可以为不同的上下文提供更多相关的自定义音乐,便于根据特定声音来生成音乐,允许用户对音乐生成方式的更多控制,生成实现一个或多个特定目标的音乐,实时生成音乐以伴随其他内容,等等。
在一些实施例中,计算机学习被用于为特定的艺术家或音乐类型生成“语法”(例如,规则集)。例如,先前的作曲可用于确定用于使用艺术家的风格来实现目标音乐属性的规则集。该规则集然后可用于自动生成该艺术家风格的自定义音乐。注意,规则集可包括明确的用户可理解的规则,诸如“将这些类型的循环组合在一起以实现特定艺术家的声音”,或者例如可被以其他方式编码为机器学习引擎的参数,该机器学习引擎在内部实现作曲规则,其中用户可能无法访问这些规则。在一些实施例中,如在下面更详细讨论的,规则是概率性的。
在一些实施例中,可以使用针对不同类型的循环的多个不同的规则集来实现音乐生成器。例如,可以存储对应于特定乐器的循环集合(例如,鼓循环、低音(bass)循环、旋律循环、节奏吉他循环等)。每个规则集然后可以评估要选择其对应集合中的哪些循环,以及何时与整体作曲中的其他规则集一起加入。另外,主规则集可用于协调各个规则集的输出。
在一些实施例中,规则引擎用于基于视频和/或音频数据来生成音乐。例如,即使当电影正被播放时,音乐生成器也可以自动生成该电影的配乐。另外,可以例如基于文化、语言、人口统计等来将不同的乐谱提供给不同的收听者。在一些实施例中,音乐生成器可以使用环境反馈来实时地调整规则集,例如以在听众中获得期望的情绪。以这种方式,可以调整规则集以实现某些环境目标。
本公开最初参考图1和图2描述了示例音乐生成器模块和具有多个应用的总体系统组织。参考图3和图4讨论了用于为特定的艺术家或音乐风格生成规则集的技术。参考图5和图6A-6B讨论了用于针对不同的循环集合(例如,乐器)使用不同的规则集的技术。参考图7和图8讨论了用于基于视频数据来生成音乐的技术。图9A-9B示出了示例性应用界面。
一般而言,所公开的音乐生成器包括循环数据、元数据(例如,描述循环的信息)以及用于基于元数据来组合循环的语法。生成器可以使用规则来创建音乐体验,以基于元数据和音乐体验的目标特性来识别循环。它可被配置为通过添加或修改规则、循环和/或元数据来扩展它可以创建的体验集合。调整可被手动执行(例如,艺术家添加新的元数据),或者音乐生成器可以在其监视给定环境内的音乐体验和期望的目标/特性时扩充规则/循环/元数据。例如,如果音乐生成器观察人群并看到人们在微笑,则它可以扩充其规则和/或元数据以注意到某些循环组合导致人们微笑。类似地,如果收银机销售增加,则规则生成器可以使用该反馈来扩充与销售增长相关的关联循环的规则/元数据。
如本文所使用的,术语“循环”是指单个乐器在特定时间间隔内的声音信息。可以以重复的方式播放循环(例如,可以连续播放30秒的循环四次以生成2分钟的音乐内容),但是也可以播放循环一次,例如,没有重复。参考循环讨论的各种技术也可以使用包括多个乐器的音频文件来执行。
示例性音乐生成器的概述
图1是示出根据一些实施例的示例性音乐生成器的图。在所示出的实施例中,音乐生成器模块160从多个不同的源接收各种信息,并生成输出音乐内容140。
在所示出的实施例中,模块160访问所存储的(一个或多个)循环以及所存储的(一个或多个)循环的(一个或多个)对应属性110,并且组合这些循环以生成输出音乐内容140。具体而言,音乐生成器模块160基于循环的属性来选择循环,并基于目标音乐属性130和/或环境信息150来组合循环。在一些实施例中,环境信息被间接用于确定目标音乐属性130。在一些实施例中,目标音乐属性130由用户例如通过指定期望的能量水平、情绪、多个参数等来明确指定。目标音乐属性130的示例例如包括能量、复杂度和多样性,但是更具体的属性(例如,对应于所存储的曲目的属性)也可被指定。一般而言,当指定了较高级别的目标音乐属性时,系统可以在生成输出音乐内容之前确定较低级别的特定音乐属性。
复杂度可以是指作曲中包括的许多循环和/或乐器。能量可能与其他属性有关,或者可能与其他属性正交。例如,改变音调或节奏可影响能量。然而,对于给定的节奏和音调,可以通过调整乐器类型(例如,通过添加高帽或白噪声)、复杂度、音量等来改变能量。多样性可以是指所生成的音乐随时间推移的变化量。可以为一组静态的其他音乐属性生成多样性(例如,通过为给定的节奏和音调选择不同的曲目),或者可以通过随时间推移改变音乐属性来生成多样性(例如,通过在期望更大的多样性时更经常地改变节奏和音调)。在一些实施例中,目标音乐属性可被认为是存在于多维空间中,并且音乐生成器模块160可以基于环境变化和/或用户输入例如用路线校正(course correction)(如果需要的话)缓慢地移动通过该空间。
在一些实施例中,与循环一起存储的属性包含关于一个或多个循环的信息,其包括:节奏,音量,能量,多样性,频谱,包络,调制,周期性,上升和衰减时间,噪声,艺术家,乐器,主题,等等。注意,在一些实施例中,对循环进行划分,以使得一个或多个循环的集合特定于特定循环类型(例如,一个乐器或一种类型的乐器)。
在所示出的实施例中,模块160访问(一个或多个)存储的规则集120。在一些实施例中,(一个或多个)存储的规则集120指定以下各项的规则以实现目标音乐属性:多少循环重叠以使得它们被同时播放(这可以对应于输出音乐的复杂度),当在循环或乐句之间转换时要使用那些大调/小调进行,要一起使用哪些乐器(例如,彼此具有亲和力的乐器),等等。换句话说,音乐生成器模块160使用所存储的一个或多个规则集120来实现由目标音乐属性(和/或目标环境信息)定义的一个或多个声明性目标。在一些实施例中,音乐生成器模块160包括一个或多个伪随机数生成器,这些伪随机数生成器被配置为引入伪随机性以避免重复的输出音乐。
在一些实施例中,环境信息150包括以下各项中的一个或多个:照明信息,环境噪声,用户信息(面部表情,身体姿势,活动水平,运动,皮肤温度,某些活动的表现,服装类型,等等),温度信息,区域中的购买活动,一天中的时间,一周中的天,一年中的时间,出现的人数,天气状况,等等。在一些实施例中,音乐生成器模块160不接收/处理环境信息。在一些实施例中,环境信息130由另一模块接收,该模块基于环境信息来确定目标音乐属性130。也可以基于其他类型的内容(例如,视频数据)来得出目标音乐属性130。在一些实施例中,环境信息用于调整一个或多个存储的规则集120,例如以实现一个或多个环境目标。类似地,音乐生成器可以使用环境信息来调整所存储的一个或多个循环的属性,例如,以指示与这些循环特别相关的目标音乐属性或目标观众特性。
如本文所使用的,术语“模块”是指被配置为执行指定操作的电路,或是指物理非暂态计算机可读介质,其存储指示其他电路(例如,处理器)执行指定操作的信息(例如,程序指令)。模块可以以多种方式来实现,包括实现为硬连线电路或实现为其中存储有程序指令的存储器,这些程序指令可由一个或多个处理器执行以执行操作。硬件电路可以例如包括定制的超大规模集成(VLSI)电路或门阵列、现成的半导体(诸如逻辑芯片、晶体管)或其他分立组件。模块也可以在诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑器件等的可编程硬件设备中实现。模块也可以是存储可执行来执行指定操作的程序指令的非暂态计算机可读介质的任何合适形式。
如本文所使用的,短语“音乐内容”既指音乐本身(音乐的可听表示),也指可用于播放音乐的信息。因此,作为文件记录在存储介质(诸如但不限于紧凑盘、闪速驱动器等)上的歌曲是音乐内容的示例;通过输出该记录文件或其他电子表示形式(例如,通过扬声器)而产生的声音也是音乐内容的示例。
术语“音乐”包括其易于理解的含义,包括由乐器产生的声音以及人声。因此,音乐例如包括:乐器演奏或录音、无伴奏演奏或录音、以及包括乐器和人声两者的演奏或录音。本领域普通技术人员将认识到“音乐”并不包含所有的人声录音。不包括诸如节奏或韵律之类的音乐属性的作品(例如语音、新闻广播和有声读物)不是音乐。
可以以任何合适的方式将一条音乐“内容”与另一条音乐内容区分开。例如,对应于第一歌曲的数字文件可以表示第一条音乐内容,而对应于第二歌曲的数字文件可以表示第二条音乐内容。短语“音乐内容”也可以用于区分给定音乐作品内的特定间隔,以使得可以将同一歌曲的不同部分视为不同的音乐内容。类似地,给定音乐作品内的不同音轨(例如,钢琴音轨、吉他音轨)也可以对应于不同的音乐内容。在所生成的音乐的潜在的无尽的流的上下文中,短语“音乐内容”可以用于指该流的某个部分(例如,几小节或几分钟)。
由本公开的实施例生成的音乐内容可以是“新音乐内容”——先前从未生成过的音乐元素的组合。下面进一步描述一个相关的(但更广阔的)概念——“原创音乐内容”。为了促进对该术语的解释,描述了相对于音乐内容生成实例的“控制实体”的概念。与短语“原创音乐内容”不同,短语“新音乐内容”不涉及控制实体的概念。因此,新的音乐内容是指之前从未由任何实体或计算机系统生成过的音乐内容。
在概念上,本公开将某个“实体”称为控制计算机生成的音乐内容的特定实例。这样的实体拥有可能与计算机生成的内容相对应的任何法定权利(例如,版权)(在任何此类权利可能实际存在的范围内)。在一个实施例中,创建(例如,对各种软件例程进行编码)计算机实现的音乐生成器或者操作(例如,将输入提供给)计算机实现的音乐生成的特定实例的个人将是控制实体。在其他实施例中,计算机实现的音乐生成器可以由法人实体(例如,公司或其他商业组织)诸如以软件产品、计算机系统或计算设备的形式创建。在某些情况下,这样的计算机实现的音乐生成器可被部署到许多客户端。根据与该音乐生成器的分发相关联的许可条款,在各种情况下,控制实体可以是创建者、分发者或客户。如果没有这样的明确法律协议,则计算机实现的音乐生成器的控制实体是促进(例如,将输入提供给并由此操作)音乐内容的计算机生成的特定实例的实体。
在本公开的含义内,控制实体对“原创音乐内容”的计算机生成是指:1)控制实体或其他任何人之前从未生成过的音乐元素的组合,以及2)之前已经生成过但是起初由该控制实体生成的音乐元素的组合。内容类型1)在本文中称为“新颖音乐内容”,并且与“新音乐内容”的定义类似,不同之处在于“新颖音乐内容”的定义涉及“控制实体”的概念,而“新音乐内容”的定义不涉及“控制实体”的概念。另一方面,内容类型2)在本文中称为“专有音乐内容”。注意,该上下文中的术语“专有”并不是指内容中的任何隐含法定权利(尽管这样的权利可能存在),而是仅用于表明该音乐内容最初由控制实体生成。因此,控制实体“重新生成”先前最初由该控制实体生成的音乐内容构成了本公开内的“原创音乐内容的生成”。关于特定控制实体的“非原创音乐内容”是如下音乐内容:其不是该控制实体的“原创音乐内容”。
一些音乐内容可包括来自一个或多个其他音乐内容的音乐成分。以这种方式创建音乐内容被称为“取样”音乐内容,并且在某些音乐作品中尤其是在某些音乐流派中是常见的。这样的音乐内容在本文中称为“具有取样成分的音乐内容”、“衍生音乐内容”或使用其他类似术语。相比之下,不包括取样成分的音乐内容在本文中称为“没有取样成分的音乐内容”、“非衍生音乐内容”或使用其他类似术语。
在应用这些术语时,注意到,如果将任何特定的音乐内容减小到足够的粒度级别,则可以提出该音乐内容是衍生的论点(实际上意味着所有音乐内容都是衍生的)。在本公开中不在该意义上使用术语“衍生”和“非衍生”。关于音乐内容的计算机生成,如果计算机生成从除控制实体之外的实体的预先存在的音乐内容中选择了成分的部分(例如,计算机程序选择流行艺术家的作品的音频文件的特定部分,以包含在正在生成的一条音乐内容中),则这样的计算机生成被认为是衍生的(并产生衍生音乐内容)。另一方面,如果计算机生成未利用此类预先存在内容的此类成分,则音乐内容的计算机生成被认为是非衍生的(并产生非衍生音乐内容)。注意,一些“原创音乐内容”可以是衍生音乐内容,而一些则可以是非衍生音乐内容。
注意,与在美国版权法中使用的术语“衍生作品”相比,在本公开内术语“衍生”旨在具有更广泛的含义。例如,根据美国版权法,衍生音乐内容可能是衍生作品,或者可能不是衍生作品。本公开中的术语“衍生”并不旨在传达否定含义;它仅用于表示特定的音乐内容是否“借用”来自另一作品的内容部分。
另外,短语“新音乐内容”、“新颖音乐内容”和“原创音乐内容”并不旨在包含仅与音乐元素的预先存在的组合稍有不同的音乐内容。例如,仅改变预先存在的音乐作品的几个音符不会导致新的、新颖的或原创的音乐内容,如在本公开中使用那些短语一样。类似地,仅改变预先存在的音乐作品的音调或节奏或调整其频率的相对强度(例如,使用均衡器接口)不会产生新的、新颖的或原创的音乐内容。此外,短语“新音乐内容、新颖音乐内容和原创音乐内容”并不旨在涵盖作为原创内容与非原创内容之间的临界情况的那些音乐内容;相反,这些术语旨在涵盖毫无疑问且可证明是原创的音乐内容,包括将对于控制实体有资格获得版权保护的音乐内容(在本文中称为“可保护”音乐内容)。另外,如本文所使用的,术语“可用”音乐内容是指不违反除控制实体以外的任何实体的版权的音乐内容。新的和/或原创的音乐内容常常是可保护和可用的。这在防止复制音乐内容和/或为音乐内容支付版税方面可能是有利的。
尽管本文讨论的各种实施例使用基于规则的引擎,但是各种其他类型的计算机实现的算法可用于本文讨论的计算机学习和/或音乐生成技术中的任何一个。然而,基于规则的方法在音乐环境中可能特别有效。
可在示例性音乐系统中使用的应用程序、存储元素和数据的概述
音乐生成器模块可以与多个不同的应用程序、模块、存储元件等进行交互以生成音乐内容。例如,最终用户可以为不同类型的计算设备(例如,移动设备、台式计算机、DJ设备等)安装多个类型的应用程序之一。类似地,可以向企业用户提供另一种类型的应用程序。在生成音乐内容时与应用程序进行交互可以允许音乐生成器接收外部信息,它可以使用该外部信息来确定目标音乐属性和/或更新用于生成音乐内容的一个或多个规则集。除了与一个或多个应用程序进行交互之外,音乐生成器模块还可以与其他模块进行交互以接收规则集、更新规则集等。最后,音乐生成器模块可以访问在一个或多个存储元件中存储的一个或多个规则集、循环和/或所生成的音乐内容。此外,音乐生成器模块可以将以上列出的任何项目存储在一个或多个存储元件中,这些存储元件可以是本地的或经由网络进行访问(例如,基于云的)。
图2是示出用于基于来自多个不同源的输入来生成输出音乐内容的系统的示例性概述的框图。在所示出的实施例中,系统200包括规则模块210、用户应用程序220、web应用程序230、企业应用程序240、艺术家应用程序250、艺术家规则生成器模块260、所生成的音乐的存储装置270、以及外部输入280。
在所示出的实施例中,用户应用程序220、web应用程序230和企业应用程序240接收外部输入280。在一些实施例中,外部输入280包括:环境输入、目标音乐属性、用户输入、传感器输入,等等。在一些实施例中,用户应用程序220被安装在用户的移动设备上,并且包括图形用户界面(GUI),该GUI允许用户与规则模块210进行交互/通信。在一些实施例中,web应用程序230未被安装在用户设备上,而是被配置为在用户设备的浏览器内运行并且可以通过网站进行访问。在一些实施例中,企业应用程序240是大规模实体用来与音乐生成器进行交互的应用程序。在一些实施例中,应用程序240与用户应用程序220和/或web应用程序230结合使用。在一些实施例中,应用程序240与一个或多个外部硬件设备和/或传感器进行通信以收集关于周围环境的信息。
在所示出的实施例中,规则模块210与用户应用程序220、web应用程序230和企业应用程序240进行通信以产生输出音乐内容。在一些实施例中,音乐生成器160被包括在规则模块210中。注意,规则模块210可被包括在应用程序220、230和240之一中,或者可被安装在服务器上并且经由网络进行访问。在一些实施例中,应用程序220、230和240从规则模块210接收所生成的输出音乐内容,并使该内容被播放。在一些实施例中,规则模块210例如向应用程序220、230和240请求关于目标音乐属性和环境信息的输入,并且可使用该数据来生成音乐内容。
在所示出的实施例中,规则模块210访问(一个或多个)存储的规则集120。在一些实施例中,规则模块210基于与应用程序220、230和240进行通信来修改和/或更新(一个或多个)存储的规则集120。在一些实施例中,规则模块210访问(一个或多个)存储的规则集120以生成输出音乐内容。在所示出的实施例中,(一个或多个)存储的规则集120可包括来自在下面更详细地讨论的艺术家规则生成器模块260的规则。
在所示出的实施例中,艺术家应用程序250与艺术家规则生成器模块260(其例如可以是同一应用程序的一部分或者可以是基于云的)进行通信。在一些实施例中,艺术家应用程序250允许艺术家例如基于先前的作曲为其特定声音创建规则集。下面参考图3至图4进一步讨论该功能。在一些实施例中,艺术家规则生成器模块260被配置为存储所生成的艺术家规则集以供规则模块210使用。用户可以从特定艺术家购买规则集,然后使用其经由其特定应用程序来生成输出音乐。特定艺术家的规则集可以称为签名包(signature pack)。
在所示出的实施例中,当应用规则以选择和组合音轨以生成输出音乐内容时,模块210访问(一个或多个)存储的循环和(一个或多个)对应的属性110。在所示出的实施例中,规则模块210将所生成的输出音乐内容存储在存储元件270中。
在一些实施例中,图2中的一个或多个元件被实现在服务器上并且经由网络进行访问,这可以称为基于云的实现。例如,(一个或多个)存储的规则集120、一(一个或多个)循环/(一个或多个)属性110以及所生成的音乐270都可被存储在云上并由模块210访问。在另一个示例中,模块210和/或模块260也可被在云中实现。在一些实施例中,所生成的音乐270被存储在云中并且被加上数字水印。这例如可允许检测复制所生成的音乐,以及生成大量的自定义音乐内容。
在一些实施例中,所公开的模块中的一个或多个被配置为除了音乐内容之外还生成其他类型的内容。例如,系统可被配置为基于目标音乐属性、所确定的环境条件、当前使用的规则集等来生成输出视觉内容。例如,系统可以基于正在生成的音乐的当前属性来搜索数据库或因特网,并显示图像的拼贴,该拼贴随着音乐改变而动态地改变并且与音乐的属性相匹配。
基于先前创作的音乐的示例性规则集生成器
在一些实施例中,音乐生成器被配置为生成具有与已知艺术家或已知风格类似的风格的输出音乐内容。在一些实施例中,规则集生成器被配置为生成规则集以促进这样的自定义音乐。例如,规则生成器模块可以通过使用来自艺术家的先前创作的音乐内容确定规则集来捕捉该艺术家的特定风格。一旦为艺术家确定了规则集,音乐生成器模块就可以生成该艺术家的风格所独有的新音乐内容。
图3是示出根据一些实施例的示例性规则集生成器的框图,该规则集生成器基于先前创作的音乐来产生规则。在所示出的实施例中,模块300包括先前艺术家作曲的存储装置310,一个或多个艺术家循环的存储装置320,以及艺术家界面330。
在所示出的实施例中,艺术家规则生成器模块260被配置为生成特定艺术家(或者在其他实施例中为特定主题或音乐风格)的规则集,并将该规则集添加到(一个或多个)存储的规则集(120)。在一些实施例中,艺术家上传先前的作曲310和/或艺术家循环320(例如,用于创建先前作曲的循环)。在其他实施例中,艺术家可以仅上传先前的作曲,而不上传对应的循环。但是,上传循环可能促进分解先前创作的音乐,以更准确地生成艺术家的规则集。因此,在所示出的实施例中,规则生成器模块260可以访问先前艺术家作曲310和(一个或多个)艺术家循环320。
(一个或多个)艺术家作曲310可包括由一个或多个艺术家生成的所有音乐内容。类似地,(一个或多个)循环320可包括用于生成(一个或多个)作曲310的所有循环或一部分循环。
在一些实施例中,艺术家规则生成器模块260从(一个或多个)艺术家作曲310中分离出一个或多个单独的循环。在一些实施例中,对循环320的了解可以提高准确性并降低该分解的处理要求。基于分解,规则生成器模块确定关于艺术家通常如何创作的规则集。在一些实施例中,所确定的规则集称为艺术家签名包。例如,规则可以指定艺术家通常将哪些乐器组合在一起、艺术家通常如何改变音调、艺术家的复杂度和多样性等。规则可以是二进制的(例如,真或假)或可以以统计方式确定(例如,在25%的时间内艺术家A从音调A转变为音调E,并且在60%的时间内艺术家A从音调A转变为音调D)。基于统计规则,音乐生成器可能尝试随着时间推移而与所指定的百分比匹配。
在一些实施例中,艺术家可以针对先前创作的音乐指示哪些音乐与某些目标音乐属性匹配。例如,一些作曲可以是高能量或低能量、高或低复杂度、快乐、悲伤等。基于该分类和对分类后的作曲的处理,规则生成器模块260可以确定关于艺术家通常如何针对特定目标属性进行作曲的规则(例如,艺术家A增加节奏以实现更大的能量,而艺术家B可能倾向于增加复杂度)。
在所示出的实施例中,艺术家界面330与艺术家规则生成器模块260进行通信。在一些实施例中,模块260通过界面330向艺术家请求输入。在一些实施例中,艺术家经由界面330向艺术家规则生成器模块260提供反馈。例如,模块260可以针对所生成的艺术家规则集中的一个或多个规则向艺术家请求反馈。这可以允许艺术家添加其他规则、修改所生成的规则等。例如,界面可以显示规则(即“在25%的时间内艺术家A从音调A转变为音调E”),并允许艺术家删除或改变规则(例如,艺术家可以指定该转变应当在40%的时间内发生)。作为另一个示例,模块260可以向艺术家请求反馈,该反馈确认模块260是否恰当地分解了来自艺术家作曲310的一个或多个循环。
在一些实施例中,图3的各种元素可被实现为安装在同一设备上的同一应用程序的一部分。在其他实施例中,图3的一个或多个元素可以与艺术家界面330分开地存储,例如存储在服务器上。另外,可以经由云来提供(一个或多个)存储的规则集120,例如以使得用户可以下载与特定期望的艺术家相对应的规则集。如在上面讨论的,可以使用类似的界面来为主题或上下文生成规则集,这些规则集不一定是特定于艺术家的。
图4是示出根据一些实施例的用于生成艺术家规则集的示例性艺术家界面的框图。在所示出的实施例中,图形用户界面(GUI)400包括:所存储的循环410,选择元素420、430、440和450,以及显示460。注意,所示出的实施例是图3所示的艺术家界面330的示例实施例。
在所示出的实施例中,至少一部分所存储的循环410被显示为循环A-N 412。在一些实施例中,循环是由艺术家上传的,例如,以促进对艺术家的音乐的分解以确定规则集。在一些实施例中,界面允许艺术家从所存储的循环410中选择一个或多个循环412以进行修改或删除。在所示出的实施例中,选择元素420允许艺术家将一个或多个循环添加到所存储循环410的列表中。
在所示出的实施例中,选择元件430允许艺术家添加先前创作的音乐内容。选择该元素可导致显示另一界面,以上传和以其他方式管理这样的内容。在一些实施例中,该界面可允许上传多个不同的音乐集。例如,这可允许艺术家为同一艺术家的不同风格创建不同的规则集。另外,这可允许艺术家上传该艺术家认为适合于某些目标音乐属性的先前生成的音乐,这可促进自动确定该艺术家的(一个或多个)规则集。作为另一示例,该界面可允许艺术家收听先前的音乐内容,并用目标音乐属性来标记先前音乐内容的部分。例如,艺术家可将某些部分标记为较高能量、较低多样性、某些情绪等,并且规则生成器模块260可以使用这些标签作为输入来生成该艺术家的规则集。一般而言,规则生成器模块260可以实现各种适当的计算机学习技术中的任何一种以确定一个或多个规则集。
在所示出的实施例中,选择元素440允许艺术家发起基于先前创作的音乐(其例如是使用元素430添加的)来确定规则集。在一些实施例中,响应于艺术家选择440,艺术家规则生成器模块分析循环并将其从先前创作的音乐中分离出。在一些实施例中,艺术家规则生成器模块基于分离出的循环来生成艺术家的规则集。在所示出的实施例中,选择元素450允许艺术家修改所生成的艺术家规则集(例如,其可以打开另一GUI,该GUI显示所确定的规则并且允许修改)。
在所示出的实施例中,显示460向艺术家显示其规则集(例如,原始集和/或由艺术家修改的规则集)。在其他实施例中,显示460还可以显示本文公开的各种其他信息。
在一些实施例中,规则集生成器可以生成特定用户的规则集。例如,该用户偏好的音乐可被分解以确定该特定用户的一个或多个规则集。用户偏好可以基于显式用户输入、收听历史、首选艺术家的指示等。
具有针对不同类型循环的不同规则集的示例性音乐生成器模块
图5是示出音乐生成器模块的图,该音乐生成器模块被配置为访问具有多个对应规则集的多个循环集合。在一些实施例中,使用多个不同的规则集(例如,针对不同的乐器)可提供更大的变化、音乐与目标属性的更准确匹配、与现实生活音乐家的更多相似度等。
在所示出的实施例中,信息510包括针对多个循环类型的循环集合。可以将循环分组为相同乐器、相同类型的乐器、相同类型的声音、相同情绪、类似属性等的集合。如在上面讨论的,还可以维护每个循环的属性。
在所示出的实施例中,规则集520对应于循环集合中的对应循环集合,并基于目标音乐属性130和/或环境信息150来指定用于选择和/或组合那些循环的规则。这些规则集可以通过决定选择什么循环以及何时加入来与即兴会话中的艺术家类似地进行协调。在一些实施例中,一个或多个主规则集可以操作来选择和/或组合来自其他规则集的输出。
图6A是示出根据一些实施例的用于不同循环类型A-N 612的多个规则集的框图。图6B是示出针对多个循环集合的规则集612和主规则集614的框图。
例如,考虑针对某种类型的鼓的循环集合(例如,循环类型A)。对应的规则集512可以指示在基于目标音乐属性(诸如节奏、音高、复杂度等)选择循环时要确定优先顺序的各种循环参数。对应的规则集612还可以指示究竟是否提供鼓循环(例如,基于期望的能量水平)。另外,主规则集614可以根据鼓规则集确定选中循环的子集以实际并入输出流中。例如,主规则集614可以从针对不同类型的鼓的多个循环集合中进行选择(以使得对应规则集所建议的一些选中循环可能实际上未被合并到输出音乐内容140中)。类似地,例如,主规则集614可以指示绝不包括低于某个指定能量水平的鼓循环,或者总是包括高于另一指定能量水平的一个或多个鼓循环。
另外,主规则集614可以指示由规则集612选择以基于目标音乐属性进行组合的循环输出的数量。例如,如果基于目标音乐属性,七个规则集决定提供来自其对应的循环集合的循环(例如,在总共十个规则集中,因为其中三个规则集决定此时不提供循环),则主规则集614仍可以仅选择所提供的循环中的五个进行组合(例如,通过忽略或丢弃来自其他两个规则集的循环)。另外,主规则集614可以改变所提供的循环,和/或添加其他规则集未提供的附加循环。
在一些实施例中,所有规则集在给定时间具有相同的目标音乐属性。在其他实施例中,可以针对不同的规则集分别确定或指定目标音乐属性。在这些实施例中,主规则集对于避免其他规则集之间的争用可能是有用的。
用于视频内容的示例性音乐生成器
为视频生成音乐内容可以是长且乏味的过程。使用一个或多个规则集应用基于规则的机器学习可以避免该过程和/或为视频提供更相关的音乐内容。在一些实施例中,音乐生成器将视频内容用作在选择和组合循环时的一个或多个规则集的输入。例如,音乐生成器可以基于视频数据生成目标音乐属性和/或直接将视频数据的属性用作规则集的输入。另外,当为视频生成音轨时,可以将不同的规则集用于不同的观众,以便为每个观众产生独特的体验。一旦音乐生成器选择了一个或多个规则集和一个或多个循环以用于视频,音乐生成器就产生音乐内容并在视频正被观看时输出该音乐内容。更进一步,可以例如基于与视频的观看者相关联的环境信息来实时地调整规则集。
图7是示出根据一些实施例的示例性音乐生成器模块的框图,该音乐生成器模块被配置为基于视频数据来输出音乐内容。在所示出的实施例中,系统700包括分析模块710和音乐生成器模块160。
在所示出的实施例中,分析模块710接收视频数据712和与视频数据相对应的音频数据714。在一些实施例中,分析模块710不接收与视频数据712相对应的音频数据714,而是被配置为仅基于视频数据来生成音乐。在一些实施例中,分析模块710分析数据712和数据714,从而识别数据的某些属性。在所示出的实施例中,视频和音频内容的一个或多个属性716被发送到音乐生成器模块160。
在所示出的实施例中,音乐生成器模块160访问(一个或多个)存储的循环、(一个或多个)对应的属性110和(一个或多个)存储的规则集120。为了生成视频的音乐内容,模块160评估(一个或多个)属性716,并使用一个或多个规则集来选择和组合循环以生成输出音乐内容140。在所示出的实施例中,音乐生成器模块160输出音乐内容140。在一些实施例中,音乐内容140由音乐生成器模块基于视频数据712和音频数据714两者来生成。在一些实施例中,仅基于视频数据712生成音乐内容140。
在一些实施例中,音乐内容被生成为视频的音轨。例如,可以基于一个或多个视频和/或音频属性来为视频生成音轨。在该示例中,来自视频的以下视频属性中的一个或多个可用于更新视频的规则集:语音的音调(例如,视频中的角色是否生气),文化(例如,在场景中使用什么口音、服装等),场景中的物体/道具,场景的颜色/暗度,场景之间的切换频率,由音频数据指示的声音效果(例如,爆炸、对话、移动声音),等等。注意,所公开的技术可用于为任何类型的视频(例如,30秒剪辑、短片、商业广告、静态照片、静态照片的幻灯片,等等)生成音乐内容。
在另一示例中,为一个或多个观众生成多个不同的音轨。例如,可以基于观看者年龄为两个不同的观众生成音乐内容。例如,可以应用针对30岁以上的成人观众的第一规则集,同时可以应用针对16岁以下的儿童观众的第二规则集。在该示例中,为第一观众生成的音乐内容可以比为第二观众生成的音乐内容更成熟。可以使用类似的技术来为诸如以下各项的各种不同的上下文生成不同的音乐内容:一天中的不同时间,用于显示视频的显示设备,可用的音频设备,显示的国家,语言,等等。
具有对规则集的实时更新的视频内容的示例性音乐生成器
在一些实施例中,使用基于规则的机器学习来为视频生成音乐内容可以允许基于环境信息实时调整规则集(例如,音乐内容所基于的规则集)。该生成音乐内容的方法可以为同一视频内容的不同观众产生不同的音乐。
图8是示出根据一些实施例的示例性音乐生成器模块160的框图,该音乐生成器模块160被配置为利用对规则集的实时调整来输出视频的音乐内容。
在所示出的实施例中,在视频的显示期间,环境信息150被输入到音乐生成器模块160。在所示出的实施例中,音乐生成器模块基于环境信息810来执行对(一个或多个)规则集的实时调整。在一些实施例中,从观看视频的观众获得环境信息150。在一些实施例中,信息150包括以下各项中的一个或多个:面部表情(例如,皱眉、微笑、专心,等等)、身体运动(例如,拍手、坐立不安、专心,等等)、语言表达(例如,笑声、叹气、哭泣,等等)、人口统计、年龄、照明、环境噪声、观看者的数量,等等。
在各种实施例中,与观看视频的观众同时地基于调整后的规则集来播放输出音乐内容140。这些技术可以为同时显示给多个不同观众的视频生成独特的音乐内容。例如,在不同屏幕上观看同一视频的同一剧院中的两个观众可能听到完全不同的音乐内容。该示例的类似应用包括飞机、地铁、运动酒吧等上的不同观众。另外,如果用户具有个人音频设备(例如,头戴式耳机),则可以为每个单独的用户创建自定义音轨。
所公开的技术还可用于在观众中强调特定期望情绪。例如,恐怖电影的目的可以是使观众害怕。基于观众反应,可以动态地调整规则集以增加强度、恐惧等。类似地,对于悲伤/快乐的场景,可以基于目标观众实际上是悲伤还是快乐来调整规则集(例如,目标是增加期望的情感)。在一些实施例中,视频制作者可以用某些目标属性来标记其视频的某些部分,这些目标属性可被输入到音乐生成器模块以更准确地产生期望类型的音乐。一般而言,在一些实施例中,音乐生成器基于观众所表现的属性是否对应于视频和/或音频内容的先前确定的属性来更新规则集。在一些实施例中,这些技术提供了自适应观众反馈控制回路,其中观众反馈用于更新规则集或目标参数。
在一些实施例中,可以为多个观众播放视频以实时调整规则集。可以记录环境数据并将其用于选择最终规则集(例如,基于与期望的目标观众属性匹配得最紧密的一个或多个观众的规则集)。然后可以使用该规则集为视频静态或动态地生成音乐,而没有对最终规则集的实时更新。
示例性的用户和企业GUI
图9A-9B是示出根据一些实施例的图形用户界面的框图。在所示出的实施例中,图9A包含由用户应用程序910显示的GUI,并且图9B包含由企业应用程序930显示的GUI。在一些实施例中,在图9A和图9B中显示的GUI是由网站生成的,而不是由应用程序生成的。在各种实施例中,可以显示各种适当的元素中的任何一个,包括以下元素中的一个或多个:刻度盘(例如,用于控制音量、能量等)、按钮、旋钮、显示框(例如,用于向用户提供更新后的信息),等等。
在图9A中,用户应用程序910显示一GUI,该GUI包含用于选择一个或多个艺术家包(pack)的部分912。在一些实施例中,包914可以可替代地或另外地包括主题包或用于特定场合(例如,婚礼、生日聚会、毕业典礼,等等)的包。在一些实施例中,在部分912中显示的包的数量大于一次可以在部分912中显示的包的数量。因此,在一些实施例中,用户在部分912中向上滚动和/或向下滚动以查看一个或多个包914。在一些实施例中,用户可以基于他/她希望听到输出音乐内容的艺术家包914来选择艺术家包914。在一些实施例中,例如,艺术家包可被购买和/或下载。
在所示出的实施例中,选择元素916允许用户调整一个或多个音乐属性(例如,能量水平)。在一些实施例中,选择元素916允许用户添加/删除/修改一个或多个目标音乐属性。
在所示出的实施例中,选择元素920允许用户让设备(例如,移动设备)倾听环境以确定目标音乐属性。在一些实施例中,在用户选择选择元素920之后,设备使用一个或多个传感器(例如,相机、麦克风、温度计,等等)来收集关于环境的信息。在一些实施例中,应用910还基于当用户选择元素920时由应用程序收集的环境信息来选择或建议一个或多个艺术家包。
在所示出的实施例中,选择元素922允许用户组合多个艺术家包以生成新的规则集。在一些实施例中,该新规则集基于用户选择同一艺术家的一个或多个包。在其他实施例中,该新规则集基于用户选择不同艺术家的一个或多个包。用户可以指示不同规则集的权重,例如,以使得高权重的规则集比低权重的规则集对所生成的音乐有更多影响。音乐生成器可以以多种不同方式(例如,通过在来自不同规则集的规则之间进行切换,对来自多个不同规则集的规则的值求平均,等等)来组合规则集。
在所示出的实施例中,选择元素924允许用户手动调整一个或多个规则集中的一个或多个规则。例如,在一些实施例中,用户希望通过调整用于生成音乐内容的规则集中的一个或多个规则来在更细粒度的级别上调整正在生成的音乐内容。在一些实施例中,这允许应用程序910的用户通过使用在图9A中的GUI中显示的控件调整由音乐生成器用来生成输出音乐内容的规则集来成为其自己的唱片骑师(DJ)。这些实施例还可允许对目标音乐属性进行更细粒度的控制。
在图9B中,企业应用程序930显示一GUI,该GUI还包含具有艺术家包914的艺术家包选择部分912。在所示出的实施例中,由应用程序930显示的企业GUI还包含元素916,以调整/添加/删除一个或多个音乐属性。在一些实施例中,图9B中显示的GUI在企业或店面中用于通过生成音乐内容来生成(例如,用于优化销售的)一定环境。在一些实施例中,雇员使用应用程序930来选择一个或多个先前已证明能增加销售的艺术家包(例如,给定规则集的元数据可以指示在现实世界环境中使用该规则集的实际实验结果)。
在所示出的实施例中,输入硬件940将信息发送到应用程序或正在显示企业应用程序930的网站。在一些实施例中,输入硬件940是以下各项之一:收银机、热传感器、光传感器、时钟、噪声传感器,等等。在一些实施例中,从上面列出的硬件设备中的一个或多个发送的信息用于调整目标音乐属性和/或规则集,以针对特定环境生成输出音乐内容。在所示出的实施例中,选择元件938允许应用程序930的用户选择从其接收环境输入的一个或多个硬件设备。
在所示出的实施例中,显示器934基于来自输入硬件940的信息向应用程序930的用户显示环境数据。在所示出的实施例中,显示器932显示基于环境数据对规则集的改变。在一些实施例中,显示器932允许应用程序930的用户看到基于环境数据做出的改变。
在一些实施例中,在图9A和图9B中示出的元素是针对主题包和/或场合包的。即,在一些实施例中,使用由应用程序910和930显示的GUI的用户或企业可以选择/调整/修改规则集以针对一个或多个场合和/或主题生成音乐内容。
详细示例音乐生成器系统
图10至图12示出了关于音乐生成器模块160的具体实施例的细节。注意,尽管出于说明的目的而公开了这些具体示例,但是它们并不旨在限制本公开的范围。在这些实施例中,根据循环构造音乐是由诸如个人计算机、移动设备、媒体设备等的客户端系统执行的。循环可被划分成专业组织的循环包,其可以称为艺术家包。可以针对音乐属性来分析循环,并且可将这些属性存储为循环元数据。可以(例如,实时地)分析所构造的音轨中的音频,并对其进行滤波以混合和控制输出流。各种反馈可被发送到服务器,这些反馈包括诸如来自用户与滑块或按钮的交互的显式反馈以及例如由传感器基于音量变化、基于收听长度、环境信息等生成的隐式反馈。在一些实施例中,控制输入具有已知的效果(例如,直接或间接地指定目标音乐属性)并且被作曲模块使用。
以下讨论介绍了参考图10至图12使用的各种术语。在一些实施例中,循环库是循环的主库,其可由服务器存储。每个循环可包括音频数据和描述该音频数据的元数据。在一些实施例中,循环包是循环库的子集。循环包可以是针对特定艺术家、针对特定情绪、针对特定类型的事件等的包。客户端设备可以下载循环包以用于离线收听,或者按需下载循环包的部分,例如以用于在线收听。
在一些实施例中,所生成的流是指定用户在他们使用音乐生成器系统时听到的音乐内容的数据。注意,例如基于音频输出设备的能力,对于给定所生成的流,实际的输出音频信号可能稍有变化。
在一些实施例中,作曲模块根据循环包中可用的循环来构造作曲。作曲模块可接收循环、循环元数据和用户输入作为参数,并且可由客户端设备执行。在一些实施例中,作曲模块输出演奏脚本,该演奏脚本被发送到演奏模块和一个或多个机器学习引擎。在一些实施例中,演奏脚本概述了将在所生成的流的每个音轨上播放哪些循环以及将把什么效果应用于该流。演奏脚本可利用节拍相对定时来表示事件何时发生。演奏脚本还可以编码效果参数(例如,用于诸如混响、延迟、压缩、均衡等的效果)。
在一些实施例中,演奏模块接收演奏脚本作为输入,并将其渲染为所生成的流。演奏模块可产生由演奏脚本指定的多个音轨,并将这些音轨混合成流(例如,立体声流,但是该流在各种实施例中可具有各种编码,包括环绕声编码、基于对象的音频编码、多声道立体声等)。在一些实施例中,当被提供特定的演奏脚本时,演奏模块将总是产生相同的输出。
在一些实施例中,分析模块是服务器实现的模块,其接收反馈信息并配置作曲模块(例如,实时地,周期性地,基于管理员命令,等等)。在一些实施例中,分析模块使用机器学习技术的组合来将用户反馈与演奏脚本和循环库元数据相关联。
图10是示出根据一些实施例的包括分析和作曲模块的示例音乐生成器系统的框图。在一些实施例中,图10的系统被配置为利用用户对音乐的情绪和风格的直接控制来生成可能无限的音乐流。在所示出的实施例中,系统包括分析模块1010、作曲模块1020、演奏模块1030、以及音频输出设备1040。在一些实施例中,分析模块1010由服务器实现,并且作曲模块1020和演奏模块1030由一个或多个客户端设备实现。在其他实施例中,模块1010、1020和1030可以全部在客户端设备上实现,或者可以全部在服务器侧实现。
在所示出的实施例中,分析模块1010存储一个或多个艺术家包1012,并实现特征提取模块1014、客户端模拟器模块1016和深度神经网络1018。
在一些实施例中,特征提取模块1014在分析循环音频之后将循环添加到循环库中(但是注意,一些循环可能在元数据已被生成的情况下被接收并且可能不需要分析)。例如,可以针对可量化的音乐属性(诸如乐器分类、音高转录、节拍定时、节奏、文件长度、以及多个频率仓中的音频幅度)来分析诸如wav、aiff或FLAC之类的格式的原始音频。分析模块1010还可以例如基于艺术家的手动标记或机器收听来存储循环的更多抽象音乐属性或情绪描述。例如,可以使用多个离散类别对情绪进行量化,其中每个类别的值范围针对给定循环。
例如考虑循环A,其被分析以确定音符G2、Bb2和D2被使用,第一节拍在文件进行到6毫秒的时候开始,节奏是122bpm,文件是6483毫秒长,并且该循环在五个频率仓上具有0.3、0.5、0.7、0.3和0.2的归一化幅度值。艺术家可将该循环标记为具有以下情绪值的“疯客(funk)流派”:
超越 | 和平 | 力量 | 喜悦 | 悲伤 | 张力 |
高 | 高 | 低 | 中等 | 无 | 低 |
分析模块110可以将该信息存储在数据库中,并且客户端可以下载例如作为循环包的信息的子分段。尽管出于说明目的示出了艺术家包1012,但是分析模块1010可以向作曲模块1020提供各种类型的循环包。
在所示出的实施例中,客户端模拟器模块1016分析各种类型的反馈以以深度神经网络1018所支持的格式提供反馈信息。在所示出的实施例中,深度神经网络1018还接收由作曲模块生成的演奏脚本作为输入。在一些实施例中,深度神经网络基于这些输入来配置作曲模块,例如以改善所生成的音乐输出的类型与期望的反馈之间的相关性。例如,深度神经网络可以周期性地将更新推送到实现作曲模块1020的客户端设备。注意,深度神经网络1018是出于说明的目的而示出的,并且可以在所公开的实施例中提供强大的机器学习性能,但是并不旨在限制本公开的范围。在各种实施例中,各种类型的机器学习技术可被单独实现或以各种组合来实现以执行类似的功能。注意,机器学习模块在一些实施例中可用于直接实现规则集(例如,布置规则或技术),或者可用于例如使用所示出的实施例中的深度神经网络1018来控制实现其他类型的规则集的模块。
在一些实施例中,分析模块1010生成作曲模块1020的作曲参数,以改善期望的反馈与某些参数的使用之间的相关性。例如,实际的用户反馈可用于调整作曲参数,例如以尝试减少负反馈。
作为一个示例,考虑模块1010发现负反馈(例如,明确的低排名、低音量收听、短收听时间,等等)与使用大量层的作曲之间的相关性的情况。在一些实施例中,模块1010使用诸如反向传播之类的技术来确定调整用于添加更多音轨的概率参数减少了该问题的频率。例如,模块1010可预测使概率参数降低50%将使负反馈降低8%,并且可决定执行降低并将更新后的参数推送到作曲模块(注意,下面详细讨论了概率参数,但是可以类似地调整统计模型的各种参数中的任何一个)。
作为另一示例,考虑模块1010发现负反馈与用户将情绪控制设置为高张力相关的情况。还可以找到具有低张力标签的循环与要求高张力的用户之间的相关性。在这种情况下,模块1010可以增加参数,以使得当用户要求高张力音乐时选择具有高张力标签的循环的概率增加。因此,机器学习可以基于各种信息,其包括作曲输出、反馈信息、用户控制输入等。
在所示出的实施例中,作曲模块1020包括部分排序器1022、部分安排器1024、技术实现模块1026和循环选择模块1028。在一些实施例中,作曲模块1020基于循环元数据和用户控制输入(例如,情绪控制)来组织和构造作曲的部分。
在一些实施例中,部分排序器1022对不同类型的部分进行排序。在一些实施例中,部分排序器1022实现有限状态机以在操作期间连续输出下一类型的部分。例如,作曲模块1020可被配置为使用不同类型的部分,诸如前奏(intro)、建立(buildup)、破坏(drop)、减弱(breakdown)和桥段(bridge),如下面参考图12更详细地讨论的。另外,每个部分可包括多个定义音乐如何在整个部分中改变的子部分,例如,其包括转入(transition-in)子部分、主要内容子部分和转出(transition-out)子部分。
在一些实施例中,部分编排器1024根据编排规则来构造子部分。例如,一个规则可以指定通过逐渐添加音轨来进行转入。另一个规则可以指定通过逐渐增加一组音轨上的增益来进行转入。另一个规则可以指定砍掉人声循环以创建旋律。在一些实施例中,循环库中的循环被附加到音轨的概率是如下项的函数:部分或子部分中的当前位置、另一音轨上在时间上重叠的循环以及诸如情绪变量之类的用户输入参数(其可用于确定所生成的音乐内容的目标属性)。该函数可以被调整,例如通过基于机器学习来调整系数。
在一些实施例中,技术实现模块1020被配置为通过添加例如由艺术家指定的规则或通过分析特定艺术家的作曲而确定的规则来促进部分编排。“技术”可以描述特定艺术家如何在技术层面上实施编排规则。例如,对于指定通过逐渐添加音轨来进行转入的编排规则,一种技术可以指示按鼓声(drum)、低音、垫音(pad)然后是人声的顺序添加音轨,而另一种技术可以指示按低音、垫音、人声然后是鼓声的顺序添加音轨。类似地,对于指定砍掉人声循环以创建旋律的编排规则,一种技术可以指示在每第二节拍上砍掉人声,并在移动到下一个砍掉部分之前重复循环的砍掉部分两次。
在所示出的实施例中,循环选择模块1028根据编排规则和技术来选择循环,以包含在部分编排器1024的部分中。一旦部分是完整的,就可以生成对应的演奏脚本并将其发送到演奏模块1030。演奏模块1030可以以各种粒度接收演奏脚本部分。这可以例如包括一定长度的演奏的整个演奏脚本、每个部分的演奏脚本、每个子部分的演奏脚本等。在一些实施例中,编排规则、技术或循环选择是以统计方式实现的,例如,其中不同的方法使用不同百分比的时间。
在所示出的实施例中,演奏模块1030包括滤波器模块1031、效果模块1032、混音模块1033、母带处理(master)模块1034,以及演奏模块1035。在一些实施例中,这些模块处理演奏脚本并以音频输出设备1040支持的格式生成音乐数据。演奏脚本可以指定:要播放的循环,它们应在何时被播放,模块1032应当应用什么效果(例如,基于每个音轨或每个子部分),模块1031应当应用什么滤波器,等等。
例如,演奏脚本可以指定在特定音轨上从0到5000毫秒应用从1000升到20000Hz的低通滤波器。作为另一示例,演奏脚本可以指定在特定音轨上从5000到15000毫秒应用具有0.2湿设置的混响。
在一些实施例中,混音模块1033被配置为对正在组合的音轨执行自动电平控制。在一些实施例中,混音模块1033使用对组合音轨的频域分析来测量具有太多或太少能量的频率,并且将增益应用于不同频带中的音轨以使混音平坦。在一些实施例中,母带处理模块1034被配置为执行多频带压缩、均衡(EQ)或限制过程,以生成供演奏模块1035进行最终格式化的数据。图10的实施例可以根据用户输入或其他反馈信息自动生成各种输出音乐内容,而机器学习技术可允许随着时间推移而改善的用户体验。
图11是示出根据一些实施例的音乐内容的示例构建部分的图。图10的系统可以通过应用编排规则和技术来构成这样的部分。在所示出的示例中,构建部分包括三个子部分以及用于人声、垫音、鼓声、低音和白噪声的单独音轨。
在所示出的示例中,子部分中的过渡包括鼓循环A,其对于主内容子部分也被重复。子部分中的过渡还包括低音循环A。如图所示,该部分的增益开始较低,并且在整个部分中线性地增加(但是设想到非线性增加或减少)。在所示出的示例中,主要内容和转出子部分包括各种人声、垫音、鼓声和低音循环。如上所述,所公开的用于自动对部分进行排序、对部分进行编排的技术以及实现技术可以基于各种用户可调整的参数来生成输出音乐内容的近乎无限的流。
在一些实施例中,计算机系统显示类似于图11的界面,并且允许艺术家指定用于构成部分的技术。例如,艺术家可以创建诸如在图11中示出的结构,其可被解析成作曲模块的代码。
图12是示出根据一些实施例的用于编排音乐内容的部分的示例技术的图。在所示出的实施例中,所生成的流1210包括多个部分1220,每个部分包括开始子部分1222、发展子部分1224和过渡子部分1226。在所示出的示例中,每个部分/子部分的多种类型在经由虚线连接的表中示出。在所示出的实施例中,圆形元素是编排工具的示例,其还可以使用如在下面讨论的特定技术来实现。如图所示,可以根据统计百分比伪随机地执行各种构成决策。例如,可以以统计方式确定子部分的类型、针对特定类型或子部分的编排工具或用于实现编排工具的技术。
在所示出的示例中,给定的部分1220是以下五种类型之一:前奏、建立、破坏、减弱、以及桥段,每种类型具有控制该部分上的强度的不同函数。在该示例中,状态子部分是以下三种类型之一:缓慢构建。突然转变。或最低限度,每种类型具有不同的行为。在该示例中,发展子部分是约简(reduce)、变换或扩充这三种类型之一。在该示例中,过渡子部分是以下三种类型之一:瓦解(collapse)、斜升(ramp)、或提示。例如,可以基于规则选择不同类型的部分和子部分,或者可以伪随机地选择不同类型的部分和子部分。
在所示出的示例中,使用一个或多个编排工具来实现针对不同子部分类型的行为。对于缓慢构建,在该示例中,在40%的时间内应用低通滤波器,并且在80%的时间内添加层。对于变换发展子部分,在该示例中,砍掉25%的时间循环。示出各种其他编排工具,包括单拍、丢弃节拍、应用混响、添加垫音、添加主题、去除层和白噪声。这些示例出于说明的目的而被包括,并不旨在限制本公开的范围。另外,为了便于说明,这些示例可能不是完整的(例如,实际的编排通常可涉及数量大得多的编排规则)。
在一些实施例中,可以使用特定技术(其可以是艺术家指定的或基于对艺术家内容的分析来确定的)来实现一个或多个编排工具。例如,可以使用声音效果或人声来实现单拍,可以使用口吃(stutter)或对半砍技术实现循环砍掉,可以通过去除合成器(synth)或去除人声来实现去除层,可以通过使用斜坡或脉冲函数来实现白噪声,等等。在一些实施例中,可以根据统计函数来选择为给定的编排工具选择的特定技术(例如,在30%的时间内去除层可以去除合成器,并且在70%的时间内其可以去除给定艺术家的人声)。如在上面讨论的,通过例如使用机器学习来分析现有作曲,可以自动确定编排规则或技术。
示例方法
图13是示出根据一些实施例的用于生成输出音乐内容的方法的流程图。图13所示的方法可以与本文公开的计算机电路、系统、设备、元件或组件中的任何一个结合使用。在各种实施例中,所示出的一些方法元素可被同时执行,以与所示出的顺序不同的顺序执行,或者可被省略。还可以根据需要执行其他方法元素。
在1310,在所示出的实施例中,计算机系统访问音乐内容集。例如,该音乐内容集可以是特定艺术家的专辑、歌曲、完整作品等。作为另一示例,该音乐内容集可以与特定流派、事件类型、情绪等相关联。
在1320,在所示出的实施例中,系统基于分析音乐内容集中的多个循环的组合来生成作曲规则集。作曲规则可被以统计方式指定,并且可以利用随机或伪随机过程来满足统计指标。可以为音乐内容集明确地提供循环,或者系统可以分解音乐内容集以确定循环。在一些实施例中,除了对技术实现模块1026的直接艺术家输入之外或代替对技术实现模块1026的直接艺术家输入,分析模块1010可以生成用于构成音乐内容集的技术(其也可以称为规则集或语法),并且作曲模块1020可以使用这些技术来生成新的音乐内容。在一些实施例中,可以在元素1320处确定编排规则。
在1330,在所示出的实施例中,系统通过从循环集中选择循环并组合所选择的循环以使得循环中的多个循环在时间上重叠来生成新的输出音乐内容,其中选择和组合是基于作曲规则集和循环集中的循环的属性来执行的。注意,在一些实施例中,计算系统的不同设备可以生成输出音乐内容并生成作曲规则。在一些实施例中,客户端设备基于由服务器系统提供的(例如,由深度神经网络1018生成的)参数来生成输出音乐内容。
在一些实施例中,生成新的输出音乐内容包括修改所选择的循环中的一个或多个。例如,系统可剪切循环,将滤波器应用于循环,等等。
在一些实施例中,基于目标音乐属性(例如,作曲模块1020的用户控制输入)来执行循环选择和组合。在一些实施例中,可以基于环境信息来调整各种系统参数。例如,系统可以基于环境信息或其他反馈信息来调整规则/技术/语法本身(例如,使用诸如深度神经网络1018之类的机器学习引擎)。作为另一示例,系统可以基于环境信息来调整目标属性或对其进行加权。
尽管上面已经描述了特定实施例,但是这些实施例并不旨在限制本公开的范围,即使在关于特定特征仅描述了单个实施例的情况下也是如此。除非另有说明,否则在本公开中提供的特征的示例旨在是说明性的而不是限制性的。以上描述旨在覆盖对于受益于本公开的本领域技术人员将是显而易见的这样的替代、修改和等同物。
本公开的范围包括本文中(明确地或隐含地)公开的任何特征或特征组合或其任何概括,无论其是否减轻了本文中解决的任何或所有问题。因此,可以在本申请(或要求其优先权的申请)的审查过程中根据任何这样的特征组合制定新的权利要求。具体而言,参考所附权利要求,来自从属权利要求的特征可以与独立权利要求中的那些特征进行组合,并且可以以任何适当的方式而不是仅以在所附权利要求中列举的特定组合来组合来自各个独立权利要求的特征。
Claims (20)
1.一种方法,包括:
由计算机系统来访问音乐内容集;
由所述计算机系统基于分析所述音乐内容集中的多个循环的组合来生成作曲规则集;和
由所述计算机系统通过如下操作来生成新的输出音乐内容:从循环集中选择循环并组合所述循环中的选定循环以使得所述循环中的多个循环在时间上重叠,其中,所述选择和组合是基于所述作曲规则集和所述循环集中的循环的属性来执行的。
2.如权利要求1所述的方法,其中,所述选择和组合还基于针对所述新的输出音乐内容的一个或多个目标音乐属性来执行。
3.如权利要求2所述的方法,还包括:
基于环境信息来调整所述作曲规则集中的至少一个作曲规则或所述一个或多个目标音乐属性,所述环境信息与在其中播放所述新的输出音乐内容的环境相关联。
4.如权利要求1所述的方法,其中,生成所述作曲规则集包括:针对用于所述多个循环中的循环的对应的不同类型的乐器来生成多个不同的规则集。
5.如权利要求1所述的方法,其中,所述多个循环由所述音乐内容集的创建者提供。
6.如权利要求1所述的方法,还包括:
通过处理所述音乐内容集以针对所述音乐内容集中包括的不同乐器生成循环,来确定所述多个循环。
7.如权利要求1所述的方法,其中,生成所述新的输出音乐内容还包括:基于所述作曲规则集来修改所述循环中的至少一个循环。
8.如权利要求1所述的方法,其中,所述作曲规则集中的一个或多个规则被以统计方式指定。
9.如权利要求1所述的方法,其中,所述规则集中的至少一个规则指定目标音乐属性与一个或多个循环属性之间的关系,其中,所述一个或多个循环属性包括以下各项中的一个或多个:节奏,音量,能量,多样性,频谱,包络,调制,周期性,上升时间,衰减时间,或噪声。
10.如权利要求1所述的方法,其中,所述音乐内容集包括针对特定类型的场合的内容。
11.如权利要求1所述的方法,其中,生成所述作曲规则集包括:训练一个或多个机器学习引擎以实现所述作曲规则集,其中,所述选择和组合由所述一个或多个机器学习引擎执行。
12.如权利要求1所述的方法,其中,所述作曲规则集包括针对特定类型的循环的多个规则集以及主规则集,该主规则集指定用于组合不同类型的循环的规则。
13.一种非暂态计算机可读介质,其上存储有指令,所述指令可由计算设备执行以执行操作,所述操作包括:
访问音乐内容集;
基于分析所述音乐内容集中的多个循环的组合来生成作曲规则集;和
通过从循环集中选择循环并组合所述循环中的选定循环以使得所述循环中的多个循环在时间上重叠来生成新的输出音乐内容,其中,所述选择和组合是基于所述作曲规则集和所述循环集中的循环的属性来执行的。
14.如权利要求13所述的非暂态计算机可读介质,其中,所述选择和组合还基于针对所述新的输出音乐内容的一个或多个目标音乐属性来执行。
15.如权利要求14所述的非暂态计算机可读介质,其中,所述操作还包括:
基于环境信息来调整所述作曲规则集中的至少一个作曲规则或所述一个或多个目标音乐属性,所述环境信息与在其中播放所述新的输出音乐内容的环境相关联。
16.如权利要求13所述的非暂态计算机可读介质,其中,生成所述作曲规则集包括:针对用于所述多个循环中的循环的对应的不同类型的乐器来生成多个不同的规则集。
17.如权利要求13所述的非暂态计算机可读介质,其中,所述操作还包括:
通过处理所述音乐内容集以针对所述音乐内容集中包括的不同乐器生成循环,来确定所述多个循环。
18.如权利要求13所述的非暂态计算机可读媒体,其中,所述规则集中的至少一个规则指定目标音乐属性与一个或多个循环属性之间的关系,其中,所述一个或多个循环属性包括以下各项中的一个或多个:节奏,音量,能量,多样性,频谱,包络,调制,周期性,上升时间,衰减时间,或噪声。
19.如权利要求13所述的非暂态计算机可读介质,其中,生成所述作曲规则集包括:训练一个或多个机器学习引擎以实现所述作曲规则集,其中,所述选择和组合由所述一个或多个机器学习引擎执行。
20.一种装置,包括:
一个或多个处理器;和
一个或多个存储器,其上存储有程序指令,所述程序指令可由所述一个或多个处理器执行以执行以下操作:
访问音乐内容集;
基于分析所述音乐内容集中的多个循环的组合来生成作曲规则集;和
通过从循环集中选择循环并组合所述循环中的选定循环以使得所述循环中的多个循环在时间上重叠来生成新的输出音乐内容,其中,所述选择和组合是基于所述作曲规则集和所述循环集中的循环的属性来执行的。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862676150P | 2018-05-24 | 2018-05-24 | |
US62/676,150 | 2018-05-24 | ||
PCT/US2019/033686 WO2019226861A1 (en) | 2018-05-24 | 2019-05-23 | Music generator |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112189193A true CN112189193A (zh) | 2021-01-05 |
Family
ID=68613471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980034805.9A Pending CN112189193A (zh) | 2018-05-24 | 2019-05-23 | 音乐生成器 |
Country Status (6)
Country | Link |
---|---|
US (3) | US10679596B2 (zh) |
EP (1) | EP3803633A1 (zh) |
JP (2) | JP7214852B2 (zh) |
KR (4) | KR102505818B1 (zh) |
CN (1) | CN112189193A (zh) |
WO (1) | WO2019226861A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113299255A (zh) * | 2021-05-13 | 2021-08-24 | 中国科学院声学研究所 | 基于深度神经网络和音乐元素驱动的情感音乐生成方法 |
CN113923517A (zh) * | 2021-09-30 | 2022-01-11 | 北京搜狗科技发展有限公司 | 一种背景音乐生成方法、装置及电子设备 |
TWI775401B (zh) * | 2021-04-22 | 2022-08-21 | 盛微先進科技股份有限公司 | 雙聲道之音訊處理系統及其運作方法 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IES86526B2 (en) | 2013-04-09 | 2015-04-08 | Score Music Interactive Ltd | A system and method for generating an audio file |
US9721551B2 (en) | 2015-09-29 | 2017-08-01 | Amper Music, Inc. | Machines, systems, processes for automated music composition and generation employing linguistic and/or graphical icon based musical experience descriptions |
CN111512359B (zh) * | 2017-12-18 | 2023-07-18 | 字节跳动有限公司 | 模块化自动音乐制作服务器 |
US10424280B1 (en) | 2018-03-15 | 2019-09-24 | Score Music Productions Limited | Method and system for generating an audio or midi output file using a harmonic chord map |
KR102505818B1 (ko) * | 2018-05-24 | 2023-03-07 | 에이미 인코퍼레이티드 | 음악 생성기 |
EP3864647A4 (en) * | 2018-10-10 | 2022-06-22 | Accusonus, Inc. | AUDIO STEMS PROCESSING METHOD AND SYSTEM |
US11037538B2 (en) | 2019-10-15 | 2021-06-15 | Shutterstock, Inc. | Method of and system for automated musical arrangement and musical instrument performance style transformation supported within an automated music performance system |
US11024275B2 (en) | 2019-10-15 | 2021-06-01 | Shutterstock, Inc. | Method of digitally performing a music composition using virtual musical instruments having performance logic executing within a virtual musical instrument (VMI) library management system |
US10964299B1 (en) | 2019-10-15 | 2021-03-30 | Shutterstock, Inc. | Method of and system for automatically generating digital performances of music compositions using notes selected from virtual musical instruments based on the music-theoretic states of the music compositions |
WO2021159203A1 (en) * | 2020-02-10 | 2021-08-19 | 1227997 B.C. Ltd. | Artificial intelligence system & methodology to automatically perform and generate music & lyrics |
JP7440651B2 (ja) | 2020-02-11 | 2024-02-28 | エーアイエムアイ インコーポレイテッド | 音楽コンテンツの生成 |
JP7189169B2 (ja) * | 2020-02-25 | 2022-12-13 | 株式会社豊田中央研究所 | 自動作曲システム及び自動作曲方法 |
US11670322B2 (en) * | 2020-07-29 | 2023-06-06 | Distributed Creation Inc. | Method and system for learning and using latent-space representations of audio signals for audio content-based retrieval |
CN115885276A (zh) * | 2020-08-21 | 2023-03-31 | 艾米有限公司 | 用于音乐生成器的比较训练 |
KR102673406B1 (ko) * | 2020-09-23 | 2024-06-17 | 주식회사 패튼코 | 딥뉴럴 네트워크 기반의 음원 자동 생성 서비스를 제공하는 장치 및 방법 |
US11756516B2 (en) * | 2020-12-09 | 2023-09-12 | Matthew DeWall | Anatomical random rhythm generator |
WO2022160054A1 (en) * | 2021-01-29 | 2022-08-04 | 1227997 B.C. Ltd. | Artificial intelligence and audio processing system & methodology to automatically compose, perform, mix, and compile large collections of music |
US11183160B1 (en) * | 2021-02-16 | 2021-11-23 | Wonder Inventions, Llc | Musical composition file generation and management system |
US20240241914A1 (en) * | 2021-08-30 | 2024-07-18 | Anup Tikku | Method, system and computer program product for generating and presenting customized content |
KR20230033526A (ko) * | 2021-09-01 | 2023-03-08 | 현대자동차주식회사 | 차량의 주행음 생성 장치 및 방법 |
US20230188108A1 (en) * | 2021-12-09 | 2023-06-15 | Bellevue Investments Gmbh & Co. Kgaa | System and method for increasing energy level of songs |
WO2024081836A1 (en) * | 2022-10-14 | 2024-04-18 | Aimi Inc. | Dynamic control of generative music composition |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5963916A (en) | 1990-09-13 | 1999-10-05 | Intouch Group, Inc. | Network apparatus and method for preview of music products and compilation of market data |
AUPP547898A0 (en) | 1998-08-26 | 1998-09-17 | Canon Kabushiki Kaisha | System and method for automatic music generation |
FR2785438A1 (fr) | 1998-09-24 | 2000-05-05 | Baron Rene Louis | Procede et dispositif de generation musicale |
US7169996B2 (en) | 2002-11-12 | 2007-01-30 | Medialab Solutions Llc | Systems and methods for generating music using data/music data file transmitted/received via a network |
US7601904B2 (en) * | 2005-08-03 | 2009-10-13 | Richard Dreyfuss | Interactive tool and appertaining method for creating a graphical music display |
US20090231968A1 (en) | 2005-08-31 | 2009-09-17 | Matsushita Electric Industrial Co., Ltd. | Recording medium storing management information for content attribute and recording device and playback device for the recording medium |
US7491878B2 (en) | 2006-03-10 | 2009-02-17 | Sony Corporation | Method and apparatus for automatically creating musical compositions |
US7594079B2 (en) * | 2006-09-29 | 2009-09-22 | Mips Technologies, Inc. | Data cache virtual hint way prediction, and applications thereof |
US7541534B2 (en) * | 2006-10-23 | 2009-06-02 | Adobe Systems Incorporated | Methods and apparatus for rendering audio data |
WO2008053409A1 (en) | 2006-10-31 | 2008-05-08 | Koninklijke Philips Electronics N.V. | Control of light in response to an audio signal |
JP5259075B2 (ja) | 2006-11-28 | 2013-08-07 | ソニー株式会社 | マッシュアップ装置およびコンテンツの作成方法 |
JP4306754B2 (ja) | 2007-03-27 | 2009-08-05 | ヤマハ株式会社 | 楽曲データ自動生成装置及び音楽再生制御装置 |
US8173883B2 (en) | 2007-10-24 | 2012-05-08 | Funk Machine Inc. | Personalized music remixing |
US8426715B2 (en) | 2007-12-17 | 2013-04-23 | Microsoft Corporation | Client-side audio signal mixing on low computational power player using beat metadata |
US20090164902A1 (en) | 2007-12-19 | 2009-06-25 | Dopetracks, Llc | Multimedia player widget and one-click media recording and sharing |
US10311446B2 (en) | 2008-12-05 | 2019-06-04 | Nokia Technologies Oy | Method and apparatus for obfuscating context information |
US8035023B2 (en) | 2009-08-25 | 2011-10-11 | Volkswagen Ag | Predictive environment music playlist selection |
JP5949544B2 (ja) * | 2010-12-01 | 2016-07-06 | ヤマハ株式会社 | リズムパターンの類似度に基づく楽音データの検索 |
CN102903375B (zh) | 2011-07-25 | 2017-06-13 | 富泰华工业(深圳)有限公司 | 音乐播放装置及播放方法 |
US8812144B2 (en) * | 2012-08-17 | 2014-08-19 | Be Labs, Llc | Music generator |
US9640163B2 (en) * | 2013-03-15 | 2017-05-02 | Dts, Inc. | Automatic multi-channel music mix from multiple audio stems |
US8927846B2 (en) * | 2013-03-15 | 2015-01-06 | Exomens | System and method for analysis and creation of music |
GB2538994B (en) * | 2015-06-02 | 2021-09-15 | Sublime Binary Ltd | Music generation tool |
US20160379611A1 (en) * | 2015-06-23 | 2016-12-29 | Medialab Solutions Corp. | Systems and Method for Music Remixing |
US10068556B2 (en) * | 2015-11-18 | 2018-09-04 | Pandora Media, Inc. | Procedurally generating background music for sponsored audio |
US9799312B1 (en) * | 2016-06-10 | 2017-10-24 | International Business Machines Corporation | Composing music using foresight and planning |
US10325580B2 (en) * | 2016-08-10 | 2019-06-18 | Red Pill Vr, Inc | Virtual music experiences |
KR102505818B1 (ko) * | 2018-05-24 | 2023-03-07 | 에이미 인코퍼레이티드 | 음악 생성기 |
CN109189974A (zh) * | 2018-08-08 | 2019-01-11 | 平安科技(深圳)有限公司 | 一种作曲模型的建立方法、系统、设备和存储介质 |
GB2581319B (en) * | 2018-12-12 | 2022-05-25 | Bytedance Inc | Automated music production |
EP3798865A1 (en) * | 2019-09-30 | 2021-03-31 | Moodagent A/S | Methods and systems for organizing music tracks |
US11024275B2 (en) * | 2019-10-15 | 2021-06-01 | Shutterstock, Inc. | Method of digitally performing a music composition using virtual musical instruments having performance logic executing within a virtual musical instrument (VMI) library management system |
US11037538B2 (en) * | 2019-10-15 | 2021-06-15 | Shutterstock, Inc. | Method of and system for automated musical arrangement and musical instrument performance style transformation supported within an automated music performance system |
US10964299B1 (en) * | 2019-10-15 | 2021-03-30 | Shutterstock, Inc. | Method of and system for automatically generating digital performances of music compositions using notes selected from virtual musical instruments based on the music-theoretic states of the music compositions |
JP7440651B2 (ja) * | 2020-02-11 | 2024-02-28 | エーアイエムアイ インコーポレイテッド | 音楽コンテンツの生成 |
JP2023516135A (ja) * | 2020-02-24 | 2023-04-18 | ルシード インコーポレイテッド | 情動音楽の推薦および作曲のための方法、システム、および媒体 |
-
2019
- 2019-05-23 KR KR1020227036657A patent/KR102505818B1/ko active IP Right Grant
- 2019-05-23 KR KR1020237006839A patent/KR102621546B1/ko active IP Right Grant
- 2019-05-23 KR KR1020207037226A patent/KR102459109B1/ko active IP Right Grant
- 2019-05-23 JP JP2021516539A patent/JP7214852B2/ja active Active
- 2019-05-23 EP EP19730624.4A patent/EP3803633A1/en active Pending
- 2019-05-23 CN CN201980034805.9A patent/CN112189193A/zh active Pending
- 2019-05-23 KR KR1020237045330A patent/KR20240007944A/ko not_active Application Discontinuation
- 2019-05-23 WO PCT/US2019/033686 patent/WO2019226861A1/en unknown
- 2019-05-23 US US16/420,456 patent/US10679596B2/en active Active
-
2020
- 2020-06-05 US US16/894,153 patent/US11450301B2/en active Active
-
2022
- 2022-09-15 US US17/932,552 patent/US20230020181A1/en active Pending
-
2023
- 2023-01-18 JP JP2023005538A patent/JP2023052454A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI775401B (zh) * | 2021-04-22 | 2022-08-21 | 盛微先進科技股份有限公司 | 雙聲道之音訊處理系統及其運作方法 |
CN113299255A (zh) * | 2021-05-13 | 2021-08-24 | 中国科学院声学研究所 | 基于深度神经网络和音乐元素驱动的情感音乐生成方法 |
CN113923517A (zh) * | 2021-09-30 | 2022-01-11 | 北京搜狗科技发展有限公司 | 一种背景音乐生成方法、装置及电子设备 |
CN113923517B (zh) * | 2021-09-30 | 2024-05-07 | 北京搜狗科技发展有限公司 | 一种背景音乐生成方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
KR20230037056A (ko) | 2023-03-15 |
JP7214852B2 (ja) | 2023-01-30 |
US10679596B2 (en) | 2020-06-09 |
KR102505818B1 (ko) | 2023-03-07 |
KR20240007944A (ko) | 2024-01-17 |
JP2021524945A (ja) | 2021-09-16 |
US20190362696A1 (en) | 2019-11-28 |
WO2019226861A1 (en) | 2019-11-28 |
US20230020181A1 (en) | 2023-01-19 |
JP2023052454A (ja) | 2023-04-11 |
EP3803633A1 (en) | 2021-04-14 |
KR20220147156A (ko) | 2022-11-02 |
KR102459109B1 (ko) | 2022-10-27 |
KR20210013621A (ko) | 2021-02-04 |
US20210027754A1 (en) | 2021-01-28 |
KR102621546B1 (ko) | 2024-01-08 |
US11450301B2 (en) | 2022-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11450301B2 (en) | Music generator | |
US11635936B2 (en) | Audio techniques for music content generation | |
US11625217B2 (en) | Music generator | |
US12051394B2 (en) | Automated midi music composition server | |
US11669296B2 (en) | Computerized systems and methods for hosting and dynamically generating and providing customized media and media experiences | |
US20220059062A1 (en) | Comparison Training for Music Generator | |
O'Connell | Musical Mosaicing with High Level | |
RODRÍGUEZ SALGADO | Music recommendation system based on audio segmentation and feature evolution |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |