CN105659322A - 推荐音频样本组合 - Google Patents

推荐音频样本组合 Download PDF

Info

Publication number
CN105659322A
CN105659322A CN201480051931.2A CN201480051931A CN105659322A CN 105659322 A CN105659322 A CN 105659322A CN 201480051931 A CN201480051931 A CN 201480051931A CN 105659322 A CN105659322 A CN 105659322A
Authority
CN
China
Prior art keywords
sample
audio
pitch
audio sample
audio frequency
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.)
Granted
Application number
CN201480051931.2A
Other languages
English (en)
Other versions
CN105659322B (zh
Inventor
S·J·鲍尔
J·G·冈萨雷斯
T·布鲁尔
M·K·朗德尔
L·D·韦罗拉
M·梅克瑞
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN105659322A publication Critical patent/CN105659322A/zh
Application granted granted Critical
Publication of CN105659322B publication Critical patent/CN105659322B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • 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/031Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal
    • 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/325Musical pitch modification
    • 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/375Tempo or beat alterations; Music timing control
    • 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/555Tonality processing, involving the key in which a musical piece or melody is played

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Auxiliary Devices For Music (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

自动地生成对多个音频样本或音频样本集合中的至少一个附加音频样本或音频样本集合的推荐以与特定音频样本或音频样本集合组合。该推荐是通过确定特定音频样本或样本集合与多个音频样本或音频样本集合中的每一者的节奏兼容性以及和声兼容性来生成的。对于多个音频样本或音频样本集合中的每一者,基于该音频样本或音频样本集合与特定音频样本或音频样本集合的节奏兼容性及和声兼容性来生成兼容性评级。多个音频样本或音频样本集合中的至少一者被计算设备作为与特定音频样本或音频样本集合组合的推荐来呈现。

Description

推荐音频样本组合
背景
随着计算技术的发展,人们已发现的计算机的使用已经扩展。一个这样的使用是音乐,其中各种软件程序允许创作和回放音乐。虽然这些程序是有用的,但它们并不是没有其问题。一个这样的问题是这些软件程序通常提供对音乐的各方面的大量控制,从而允许用户独立地调整音乐的多个不同方面。然而,该控制就用户而言需要关于如何创作音乐的专业知识,这可导致使没有这样的专业音乐知识的用户体验受挫。
概述
提供本概述以便以简化的形式介绍以下在详细描述中进一步描述的一些概念。本概述并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。
根据一个或多个方面,第一音频和第二音频的节奏兼容性被确定。第一音频是音频样本或音频样本集合,并且第二音频是音频样本或音频样本集合。第一音频和第二音频的和声兼容性也被确定。基于第一音频和第二音频的节奏兼容性以及第一音频和第二音频的和声兼容性,第一音频和第二音频的兼容性评级被生成。响应于第一音频和第二音频的兼容性评级满足阈值兼容性评级,将第一音频呈现为用于与第二音频组合的推荐。
根据一个或多个方面,第一音频被标识出,第一音频包括音频样本和音频样本集合。对于多个附加音频样本或音频样本集合中的每一者,生成第一音频与该音频样本或音频样本集合的兼容性评级,该兼容性评级基于第一音频与该音频样本或集合的节奏兼容性以及该第一音频与音频样本或集合的和声兼容性。附加音频样本或音频样本集合中的至少一个音频样本或音频样本集合被呈现作为与第一音频组合的推荐,该至少一个音频样本或音频样本集合与附加音频样本或音频样本集合中的其他音频样本或音频样本集合相比具有更好兼容性评级。
附图简述
在全部附图中,使用相同的附图标记来指示相同的特征。
图1是示出根据一个或多个实施例的实现推荐音频样本组合的示例音频系统的框图。
图2是示出根据一个或多个实施例的用于自动调整一个或多个音频样本的音高的示例过程的流程图。
图3示出两个不同的示例音频样本的示例音高分布。
图4示出音调分布的示例经变移版本。
图5示出两个示例音频样本的音高变移相关性的示例表格。
图6示出根据一个或多个实施例的音高变移和相应的权重的示例表格。
图7示出音高变移组合的示例表格,该音高变移组合示出相对的正和负变移组合。
图8是示出根据一个或多个实施例的用于生成指示两个样本预期一起听起来有多好的兼容性评级的示例过程的流程图。
图9示出根据一个或多个实施例的基于各样本的拍子彼此有多接近来向这些样本分配的分数的示例表格。
图10示出根据一个或多个实施例的音高变移和相应的权重的示例表格。
图11示出根据一个或多个实施例的基于各样本的音高兼容性评级向这些样本分配的分数的示例表格。
图12是示出根据一个或多个实施例的用于推荐音频样本组合的示例过程的流程图。
图13是示出根据一个或多个实施例的用于组合音频样本的示例过程的流程图。
图14是示出根据一个或多个实施例的用于调整样本或样本集合的节奏使得样本或集合听起来在节奏上一致的示例过程的流程图。
图15和16示出根据一个或多个实施例的将一样本与一样本集合组合的示例。
图17示出包括示例计算设备的示例系统,该示例计算设备代表可实现本文所描述的各种技术的一个或多个系统和/或设备。
详细描述
本文中讨论推荐音频样本组合。自动地生成对多个附加音频样本或音频样本集合中的至少一个附加音频样本或音频样本集合的推荐以与特定音频样本或音频样本集合组合。该推荐是通过以下方式生成的:确定特定音频样本或样本集合与多个附加音频样本或音频样本集合中的每一者的节奏兼容性,以及确定特定音频样本或样本集合与多个附加音频样本或音频样本集合中的每一者的和声兼容性。对于多个附加音频样本或音频样本集合中的每一者,基于该音频样本或音频样本集合与特定音频样本或音频样本集合的节奏兼容性和和声兼容性来生成兼容性评级。多个附加音频样本或音频样本集合中的至少一者被计算设备作为与特定音频样本或音频样本集合组合的推荐来呈现。可接收对推荐之一的用户选择,并且响应于该用户选择,将所选的音频样本或音频样本集合与特定音频样本或音频样本集合组合。
图1是示出根据一个或多个实施例的实现推荐音频样本组合的示例音频系统100的框图。音频系统100可使用各种不同类型的设备(诸如物理设备或虚拟设备)实现。例如,系统100可以使用物理设备来实现,诸如台式计算机、服务器计算机、膝上型或上网本计算机、平板或笔记本计算机、移动站、娱乐设备、可通信地耦合到显示设备的机顶盒、电视机或其他显示设备、蜂窝式或其他无线电话、游戏控制台、车载计算机、任何其他通用计算设备等等。系统100还可使用虚拟设备来实现,诸如在物理设备上运行的虚拟机。虚拟机可在各种各样不同种类的物理设备(例如,上面列出的各种类型中的任一个)中的任一个上运行。因此,系统100可使用范围从具有充足存储器和处理器资源的全资源设备(如个人计算机、游戏控制台)到具有有限存储器和/或处理资源的低资源设备(如传统机顶盒、手持式游戏控制台)的各种不同的设备中的一者或多者来实现。
音频系统100包括用户输入模块102、输出模块104、推荐模块106、音高修改模块108、节奏修改模块110和音频组合模块112。音频系统100从音频存储120中获得音频样本和那些音频样本的元数据。音频存储120可由与实现音频系统100的至少一部分的相同设备来实现,或者替换地可由一个或多个其他设备来实现。音频存储120包括多个音频样本122。每一样本122包括一个或多个声音的音频数据。音频存储120可包括先前存储的样本、实况样本(例如,音频被在与样本被存储在音频存储120中基本上相同的时间(例如,在其阈值时间量内)被呈现)、作为先前组合的样本的结果的样本(如以下更详细讨论的)等等。当样本122中的一个或多个声音的音频数据被设备回放时,该设备播放这一个或多个声音。
多个样本122可任选地被一起分组到样本集合中。样本集合可包括该集合中的多个样本中的一个或多个样本的音频数据,和/或包括在该集合中的样本的指示(例如,文件名或其他标识符)。
样本中的一个或多个声音中的每一者可具有各种特征(也被称为参数),诸如节奏、音高等,如以下更详细讨论的。音频存储120还包括声音元数据124。每一音频样本122具有标识该样本122的至少一些参数的相应音频样本元数据124。每一样本集合还具有标识该样本集合的至少一些参数的相应音频样本元数据124。样本集合的参数指代与该集合中的每一样本相对应的元数据的聚集(例如,串接、平均等)。与样本122或样本集合相对应的样本元数据124可按各种方式被存储,诸如被存储成与相应的样本122或样本集合相同的数据结构或文件的一部分、被存储在分开的数据库或其他记录中、被存储在远程云或基于服务器的数据库中等等。
用户输入模块102从实现系统100的设备的用户处接收用户输入。可用各种不同的方式来提供用户输入,诸如通过按压实现系统100的设备的键区或键盘的一个或多个键、按压实现系统100的设备的控制器(例如,遥控设备、鼠标、跟踪垫等)的一个或多个键、按压实现系统100的设备的触摸板或触摸屏的特定部分、在实现系统100的设备的触摸垫或触摸屏上作出特定姿势、和/或在实现系统100的设备的控制器(例如,遥控设备、鼠标、跟踪垫等)上作出特定姿势。还可经由其他物理反馈输入将用户输入提供给实现系统100的设备,诸如轻击实现系统100的设备的任何部分、可被实现系统100的设备的运动检测或其他组件识别的动作(诸如晃动实现系统100的设备、旋转实现系统100的设备、折起或弯曲实现系统100的设备等)等等。还可用其他方式来提供用户输入,诸如经由语音或其他对话筒的可听输入、经由被图像捕捉设备观察到的手部或其他身体部位的运动等。
输出模块104生成、管理和/或输出内容以供显示、回放和/或其他呈现。该内容可由输出模块104创建或从系统100的其他模块获得。该内容可例如是用户界面(UI)的显示或回放部分。内容可被实现系统100的设备的组件(例如,扬声器、交互式显示设备等)显示或以其他方式回放。替换地,输出模块104可生成被输出到与实现系统100的设备分开的其他设备或组件(例如,扬声器、显示设备等)的一个或多个信号。
推荐模块106分析不同样本122的样本元数据124,并基于该分析生成对于组合样本122中的不同样本的推荐。这些推荐是模块106确定样本122中的两个样本一起对用户听起来有多好的指示。这些指示可以是向样本122中的不同样本分配的排序或其他分数,如以下更详细讨论的。
节奏修改模块110更改样本122中的一个或多个样本的节奏。样本122的节奏被模块110更改为允许样本122在与一个或多个其他样本122组合时听起来更好(例如,与一个或多个其他样本122在节奏上更一致)。如何更改样本122的节奏是基于样本122的拍子以及样本122正与其组合或样本122被设想为正与其组合的一个或多个样本122的拍子来确定的,如以下更详细讨论的。
音高修改模块108更改样本122中的一个或多个样本的音高。样本122的音高被模块108更改为允许样本122在与一个或多个其他样本122组合时听起来更好(例如,与一个或多个其他样本122在和声上更一致)。如何更改样本122的音高是基于样本122的音高分布以及样本122正与其组合或样本122被设想为正与其组合的一个或多个样本122的音高分布来确定的,如以下更详细讨论的。
音频组合模块112组合不同的样本122,任选地创建新的样本122或样本集合。不同样本122的组合可包括调整样本122中的一个或多个样本的音高和/或调整样本122中的一个或多个样本的节奏。以下更详细讨论了不同样本122的组合。
虽然特定模块102-112被示为被包括在音频系统100中,但应当注意,系统100不需要包括模块102-112中的所有模块。例如,如果系统100生成组合音频样本的推荐而不组合这些音频样本,则系统100不需要包括音频组合模块112。
样本元数据
每一样本122具有相应的样本元数据124。对应于样本122的元数据124描述样本122的各特征或参数。对应于样本122的元数据124是描述样本122中的一个或多个声音的一个或多个方面的数据。本文中讨论了样本元数据124的各示例,并且应当注意,音频系统100可使用各种不同的样本元数据。由音频系统100使用的样本元数据可包括本文中包括的各示例和/或附加元数据的各种组合。
对应于样本122的元数据124可按各种不同的方式生成。在一个或多个实施例中,对应于样本122的元数据124被手动地生成,即由一个或多个人(其可以是但不需要是音频系统100的用户)分配。替换地,对应于样本122的元数据124可通过使用各种公共和/或专用技术中的任一者分析样本122而被自动地生成。应当注意,对应于样本122的元数据124可任选地被音频系统100的用户覆盖。例如,样本122的特征或参数可以是如以下讨论的样本122的样本类型(例如,符干(stem)或短音(oneshot)),并且该特征或参数可最初(例如自动地或由另一个人)设置并且由音频系统100的用户覆盖。
相应的样本元数据124中可包括的样本122的一个特征或参数是该样本122的和声内容。在一个或多个实施例中,样本的和声内容指代该样本中使用的调中心(keycenter)和/或音调。调中心指代样本中所使用的音调的平均音阶调。例如,平均音阶调可以是音乐家将分配作为(或用于一般将该样本标记为)样本中的声音的可能调中心的调。平均调可以是例如G、C大调、B小调等。平均调也可能为空,诸如对于由无音调的鼓声或人类鼓掌声音组成的样本而言为空。对于样本集合,调中心指代该集合中的各样本所使用的音调的平均调。
样本中使用的音调指代该样本中包括的音调,而不管那些音调被使用的有多频繁和/或这些音调的八度音阶。样本中使用的音调可以是例如D、E、F#(F升号)和B。对应于样本的元数据可包括样本的每音调元数据,其标识样本中所使用的音调的各特征或参数。替换地,样本中使用的音调可包括音调以及(超过或低于)该音调的八度音阶。所使用的音调也可能为空,诸如对于由无音调的鼓声组成的样本而言为空。对于样本集合,该集合中所使用的音调指代该集合中的各样本中包括的音调(例如,被包括在该集合的至少一个样本中但不需要被包括在该集合中的每一样本中的每一音调)。
可包括在相应的样本元数据124中的样本122的另一特征或参数是该样本122的节奏内容。在一个或多个实施例中,样本的节奏内容指代该样本的平均每分钟节拍数(也被称为该样本的拍子)。例如,节奏内容可以是样本中的主要音乐律动或样本中的最小公共重复音乐节奏的平均每分钟节拍数。应当注意,样本的平均每分钟节拍数与样本内的时间签名或节奏微差(rhythmicnuance)和切分音无关。具有单节奏元素的样本被称为具有为0(零)的平均每分钟节拍数。对于样本集合,该集合的节奏内容可指代该集合中的各样本的平均每分钟节拍数。替换地,节奏内容可以是不同的信息,诸如贯穿该样本使用的各每分钟各种节拍的列表(例如,并且样本的平均每分钟节拍数是从其计算的或可从其计算)。
另选地或替换地,样本的节奏内容还可指代样本的(诸)时间签名。样本的(诸)时间签名还可被称为样本的短语化节奏内容。时间签名一般指代定义样本的结构内的各节奏关系从而定义样本的各节奏单元的(诸)公共长度的脉冲数。样本可包括一个或多个不同的时间签名。对于样本集合,该集合的节奏内容可以指代该集合中的各样本的(诸)时间签名(例如,被包括在该集合的至少一个样本中但不需要被包括在该集合中的每一样本中的每一时间签名)。
另选地或替换地,样本或样本集合的节奏内容还可指代样本或样本集合的节奏一致性或感觉摂。样本或样本集合的节奏一致性指代样本或样本集合中的音乐的类型或样式,诸如摇滚音乐类型、节拍乐队音乐类型等等。样本的感觉摂还可通过描述所弹的音调相对于稳定的节拍律动的位置来量化。例如,一些音乐家弹各音调很晚并且感觉上是懒散的摂,而一些音乐家紧接在节拍律动之前弹各音调且这些可被描述为精力旺盛的摂感觉。样本或音乐章节的感觉摂可通过跨时间线来描述相对于稳定的节拍律动的确切音调位置来量化。
可包括在相应的样本元数据124中的样本122的另一特征或参数是样本122的使用乐器。在一个或多个实施例中,样本的使用乐器指代该样本中的声音所表示的各乐器的描述。样本122的使用乐器描述被设计成指示在样本中的声音的音乐调色板或色彩摂的参数列表。例如,样本122的使用乐器可以是钢琴、鼓、吉他、小提琴、合成器、其组合等。对于样本集合,该集合的使用乐器指代对在该集合中的样本中的声音所表示的乐器的描述(例如,该集合的至少一个样本中的声音所表示的每一乐器,但每一乐器不需要由该集合中的每一样本中的声音来表示)。
可包括在相应的样本元数据124中的样本122的另一特征或参数是样本122或样本集合的流派。在一个或多个实施例中,样本或样本集合的流派指代对样本或样本集合中的声音(例如,音乐)的文化含义的描述。例如,样本或样本集合的流派可以是电子舞曲、独立的流行乐、优雅的爵士乐等等。
可包括在相应的样本元数据124中的样本122的另一特征或参数是样本122的样本类型。在一个或多个实施例中,样本的样本类型为符干或短音。符干指代有节奏的声音,并且通常为一般包括多个音调、一个节奏并且有时随时间展开的长乐节。短音指代不具有节奏的声音,并且通常是构成较长乐节(例如,符干)的有意义分量的短声音(在持续时间方面比符干更短)。例如,符干可以是构成形成主调或节奏元素的一个或多个音调的样本、包含整首歌的完整独奏主声线的样本、包含整首歌中的鼓点混合的样本、包含4小节鼓循环的样本等等。作为另一示例,短音可以是来自单个乐器的单音调、来自单个乐器的单和音音调、从包含许多乐器的完整歌中提取的单合成声音、被设计成仅被播放一次的样本等等。对于样本集合,该集合的类型指代该集合中的样本的类型。
可包括在相应的样本元数据124中的样本122的另一特征或参数是样本122的“补充值”。在一个或多个实施例中,样本的补充值描述音乐的感情或文化含义。例如,样本的补充值可以是样本中的音频的文化根源或基础(例如,印度、中国、德国等)。对于样本集合,该集合的补充值指代该集合中的各样本的补充值(例如,被包括在该集合的至少一个样本中但不需要被包括在该集合中的每一样本中的每一补充值)。
可包括在相应的样本元数据124中的样本122或样本集合的另一特征或参数是样本122或样本集合的情绪。在一个或多个实施例中,样本或样本集合的情绪指代由样本或样本集合中的声音(例如,音乐)预期要传达的情绪或感情的描述。例如,样本或样本集的情绪可以是忧伤的、快乐的/欢快的、内省的等。
音高修改
图1的音高修改模块108确定如何更改样本122的音高以改善那个样本122与一个或多个其他样本122(例如与一个或多个其他样本122组合时)的和声。在一个或多个实施例中,该确定是基于样本的音高分布作出的,并且被用于自动地更改样本122中的一个或多个样本的音高。
图2是示出了根据一个或多个实施例的用于自动地调整一个或多个样本的音高的示例过程200的流程图。过程200由音高修改模块(诸如图1中的音高修改模块108)来实施,并可以用软件、固件、硬件、或其组合来实现。过程200被示为一组动作,并且不仅限于所示出的用于执行各种动作的操作的顺序。过程200是用于自动地调整一个或多个样本的音高的示例性过程;在本文中参考不同的附图包括自动地调整一个或多个样本的音高的附加讨论。
在过程200中,确定一个或多个样本或样本集合的音高分布(动作202)。在一个或多个实施例中,样本的音高分布指示该样本中存在多少每一音高。样本的音高分布是通过以下方式来确定的:将该样本分解成通过回放该样本来生成的各声波中的频率集合。如本领域的技术人员已知的,不同的音高(也被称为半音或音调)与不同的频率或频率范围相关联。声音可以是以下十二个不同的可能音高之一:A、A#、B、C、C#、D、D#、E、F、F#、G或G#(或者有降半音的等音变换音符(enharmonicequivalent))。在样本中存在多少每一音高是通过以下方式来确定的:在回放样本时,该样本中有多少部分导致具有与该音高相关联的根频率的声音(例如,该样本的回放导致具有与该音高相关联的频率的声音的时间百分比是什么)。该分解及确定样本中存在多少每一音高可使用各种公共和/或专用信号处理技术中的任一者来执行。音高分布可替换地用其他方式来表示,诸如仅作为存在的音调的列表(例如,如人类音乐家所检测到的),并不需要取决于计算机或数字信号处理分析。尽管本文中的某些样本中的每一音调的百分比的列表,音高分布数据的来源可以是人类输入的关于所使用的每一样本的元数据。在其中音高分布是所存在的音调的列表的情况下,如本文中所描述的,可执行音高变移和音高相关,但是可使用对音调的存在或缺失的指示(例如,一个值(诸如0表示缺失),并且另一值(诸如1表示存在)),而非每一音调的百分比。
在其中样本集合的音高分布在动作202中被确定的情况下,样本集合的音高分布可通过以下方式来确定:确定样本集合中的每一样本的音高分布,随后将样本集合中的每一音高的音高分布组合(例如,求平均、相加并随后归一化到1等等)。替换地,样本集合的音高分布可用其他方式来确定。例如,各样本可被并发地回放(或就像被并发地回放那样被分析)并且样本集合的音高分布就像该样本集合是单个样本那样被确定。
还确定另外的一个或多个样本或样本集合的音高分布(动作204)。由此,在动作202和204确定两个不同的样本(和/或样本集合)的音高分布。这两个不同的样本(和/或样本集合)是正被评估以生成如本文中讨论的推荐的样本(和/或样本集合)。
图3示出两个不同的示例样本的示例音高分布。示出了样本1的音高分布302,其指示该样本中的7%(例如,被示为0.07)是针对音调A的音高,该样本中的12%(例如,被示为0.12)是针对音调A#的音高,该样本中的4%(例如,被示为0.04)是针对音调B的音高,并以此类推。还示出了样本2的音高分布304,其指示该样本中的9%(例如,被示为0.09)是针对音调A的音高,该样本中的6%(例如,被示为0.06)是针对音调A#的音高,该样本中的17%(例如,被示为0.17)是针对音调B的音高,并以此类推。应当注意,样本的音高分布标识样本中存在多少每一音高,而不管特定音调在哪个八度音阶中。例如,对于样本1,该样本中的7%是针对音调A的音高,并且该7%可包括针对处于一个或多个八度音阶中的音调A的音高。
参考图2,在动作202和204中确定的音高分布是通过以下方式来彼此比较的:计算所确定的音高分布与所确定的音高分布中的一个或两者的经变移版本之间的相关性。音高分布的经变移版本指代音高被向上或向下变移一个或多个半音后的值(例如百分比)。例如,音高可被向上变移一个半音,从而导致音高分布中针对音调A的百分比变成变移之前针对音调G#的百分比是什么,音高分布中针对音调A#的百分比变成变移之前针对音调A的百分比是什么,并以此类推。
图4示出音调分布的示例经变移版本。示出了音高分布402,其中图3中的样本2的音高被向上变移了一个半音。还示出了音高分布404,其中图3中的样本2的音高被向上变移了两个半音。
返回图2,在动作206,计算在动作202和204确定的音高分布与在动作202和204确定的音高分布的经变移版本之间的相关性。将导致不同的音高分布的有一个半音的音高变移的数目为11,使得在动作206中计算出的相关性的数目为12—一个用于原始音高分布,且一个用于每一经变移的音高分布。针对音高分布中的各音高的值可被看作向量,并且相关性是两个样本的音高分布向量的点积。例如,针对图3中的音高分布302中的各音高的值可被看作向量[0.070.120.040.120.040.140.080.030.070.060.160.07]。写出该向量以及图3中的示例音高分布的替换方式是使用整数百分比,从而得到向量[7%12%4%12%4%14%8%3%7%6%16%7%]。音高相关性根据以下公式来确定:
P ( S 1 , S 2 ) = D ( S 1 ) * D ( S 2 ) = Σ i = 0 11 d i * d i ′ - - - ( 1 )
其中P(S1,S2)指代这两个样本之间的音高相关性,D(S1)是这两个样本中的一个样本的音高分布,D(S2)是这两个样本中的另一样本的音高分布,di是这两个样本中的一个样本的音高分布中的音高i的值,并且d′i是这两个样本中的另一样本的音高分布中的音高i的值。
音高相关性是使用公式(1)针对在动作202和204确定的音高分布以及针对在动作202和204中确定的音高分布的经变移版本中的每一者来确定的。图5示出了针对图3中的样本1和样本2的音高变移相关性的示例表格502。表格502示出针对没有变移的样本1和样本2的音高分布的音高变移相关性为0.0689,针对未经变移的样本1和向上变移一个半音的样本2的音高分布的音高变移相关性为0.0904,并以此类推。
返回图2,确定用于增加在动作202和204确定的样本或集合之间的和声的合适音高变移(动作208)。在一个或多个实施例中,合适的音高变移是导致大致最高的(例如,最大的或在最高的阈值量内的)音高相关性的音高变移。例如,参考图5中的表格502,合适的音高变移将为+11半音(具有为0.0945的音高相关性)。应当注意,可发生其中最高音高相关性来自没有变移的各样本,使得在动作208确定的合适的音高变移可以为零(没有变移)的情况。
动作208中对合适的音高变移的确定任选地考虑多少音高修改被执行,以便获得合适的变移。偏好将音高变移较小数目的半音。在一个或多个实施例中,音高相关性被加权以生成经加权的音高相关性,其中较大的权重被用于通过较少音高修改获得的所选音高相关性,而较小的权重被用于通过较多音高修改获得的所选音高相关性。
图6示出根据一个或多个实施例的音高变移和相应的权重的示例表格602。如表格602中所示,为0的音高变移对应于为1.0的权重,为3的音高变移对应于为0.98的权重,为5的音高变移对应于为0.97的权重,并以此类推。将每一音高相关性乘以与音高被变移的变移量(例如,半音数)相对应的权重以获得经加权的音高相关性。例如,将来自被变移+3个半音的音高的音高相关性乘以0.98以获得经加权的音高相关性。图2的动作208中的合适音高变移随后是导致大致最高的(例如,最大的或在最高的阈值量内的)经加权音高相关性的音高变移。
返回图2,将样本或样本集合之一的音高变移由如在动作208中确定的所确定合适音高变移所指示的量(动作210)。其音高被变移的样本或样本集合可以是但不需要是在动作206与所确定的音高分布进行比较时被变移的样本或样本集合。在一个或多个实施例中,样本或样本集合之一被变移由如在动作208确定的所确定的合适音高变移标识的量(例如,使用图5的表格502的示例,被变移+11半音)。
应当注意,由于音高分布不考虑声音的八度音阶,因此可执行负变移而非正变移。图7示出音高变移组合的示例表格702,该音高变移组合示出相对的正和负变移组合。正音高变移被示在表格702的左侧,并且等效的负音高变移被示在表格702的右侧。由此,如表格702中所示,为+1的音高变移等效于为-11的音高变移,并且为+3的音高变移等效于为-9的音高变移,并以此类推。
返回图2,在一个或多个实施例中,在动作210中的变移量为正音高变移和具有较小绝对值的等效负音高变移之一。通过选择具有较小绝对值的正音高变移和负音高变移之一,可减少所执行的变移量,从而导致听起来较接近于样本的原始(未经变移的)版本的样本的经变移的版本。例如,如果如在动作208确定的合适音高变移将为+11,则在动作210,变移量将为-1(根据表格702其等效于+11,并且具有较小的绝对值)。作为另一示例,如果如在动作208确定的合适音高变移将为+5,则在动作201,变移量将为+5(根据表格702,其比为-7的等效值具有更小的绝对值)。
样本或样本集合之一的音高可在动作210被变移,而无需使用各种公共和/或专用技术中的任一者按各种不同的方式中的任一者来改变节奏。对样本的音高进行变移指代例如将样本中的大致所有的音调或声音(例如,阈值数目的音调或声音)变移大致相同的量(例如,变移相同数目的半音或在阈值数目的半音内变移)。对样本集合的音高进行变移指代将该集合中的各样本中的大致所有的音调或声音(例如,阈值数目的音调或声音)变移大致相同的量(例如,变移相同数目的半音或在阈值数目的半音内变移)。
应当注意,虽然过程200是相关于在动作202或动作204确定的样本或样本集合之一的音高被变移来讨论的,替换地,在动作202确定的样本或样本集合的音高以及在动作204确定的样本或样本集合两者都可被变移。例如,如果在动作208确定样本2的音高将被变移+5,则样本2的音高可被变移+3,且样本1的音高可被变移-2。作为另一示例,如果在动作208确定样本2的音高将被变移+5,则样本2的音高可被变移+3,且样本1的音高可被变移-2。
在以上讨论中,对基于在样本中存在多少每一音高来确定的音高分布作出参考,而与特定音调处于哪个八度音阶无关。替换地,音高分布可基于样本中存在多少针对多个音调和多个八度音阶中的每一者的每一音高来确定。例如,可确定该样本中的多少是针对第一八度音阶(A1)中的音调A的音高,该样本中的多少是针对第二八度音阶(A2)中的音调A的音高,该样本中的多少是针对第三八度音阶(A3)中的音调A的音高,并针对每一八度音阶中的(或至少在多个八度音阶中的)每一音调以此类推。如以上所讨论的确定的音高分布和确定的音高分布的经变移版本之间的相关性被确定,但是存在将导致不同的音高分布的更大量的音高变移(例如,针对每一附加八度音阶的附加的十二个音高变移)。还确定用于增加样本或集合之间的和声的合适音高变移,并且如以上所讨论的将样本或样本集合之一的音高变移由所确定的音高变移所指示的量,但是基于正被用来确定音高分布的八度音阶的数目使用不同的相对正和负变移组合。
应当注意,本文中讨论的音高修改使用样本的音高分布来理解样本的和声创作。由此,音高修改不需要依赖于样本中的音调和/或和弦进程。
推荐
图1中的推荐模块106分析不同样本122的样本元数据124,并基于该分析生成对于组合样本122中的不同样本的推荐。这些推荐指示模块106确定在将样本122中的两个样本一起回放时这两个样本对用户而言听起来将有多好。
图8是示出根据一个或多个实施例的用于生成指示两个样本预期一起听起来有多好的兼容性评级的示例过程800的流程图。过程800由推荐模块(诸如图1中的推荐模块106)来实施,并可以用软件、固件、硬件、或其组合来实现。过程800被示为一组动作,并且不仅限于所示出的用于执行各种动作的操作的顺序。过程800是用于生成兼容性评级的示例过程;本文中参考不同附图包括生成兼容性评级的附加讨论。
在过程800,生成针对两个样本、针对一个样本和一个样本集合、或者针对两个样本集合的兼容性评级。该推荐可以是指示当该两个样本、该样本和该样本集合、或者该两个样本集合被一起回放时其预期对用户而言听起来有多好的分数。虽然可对涉及音频样本的过程800作出参考,但过程800类似地适用于音频样本集合。
确定样本或集合的节奏兼容性(动作802)。两个样本的节奏兼容性指代两个样本的节奏彼此有多接近。在一个或多个实施例中,将两个样本的拍子(例如,每分钟的节拍)进行比较,并基于这些拍子彼此有多接近来向这些拍子分配节奏兼容性分数。这些拍子彼此越接近,则对于这些样本而言节奏兼容性分数越高。
如果正确定一样本和一样本集合之间的或两个样本集合之间的节奏兼容性,则可用不同的方式确定样本集合的拍子。在一个或多个实施例中,样本集合中的每一样本被认为具有相同的拍子,并且该拍子是该样本集合的拍子。替换地,样本集合中的不同的样本可具有不同的拍子,并且该样本集合的拍子是基于该样本集合中的各样本的拍子来确定的。例如,样本集合的拍子可通过对该集合中的各样本的拍子求平均、通过使用该集合中的各样本的加权平均(例如,向包括较多音调或较多乐器的样本施加较高的权重)等来确定。
图9示出根据一个或多个实施例的基于各样本的拍子彼此有多接近来向这些样本分配的分数的示例表格902。如表格902所示,如果两个样本的拍子在彼此的一个阈值(0.5%)之内,则为3点的节奏兼容性分数被分配给这两个样本。在一个或多个实施例中,如果在将两个样本中的一个样本或两个样本两者的拍子减半和/或翻倍后这些样本的拍子在彼此的0.5%内,则这些样本被看作具有在彼此的0.5%内的拍子,并且这些样本被分配为3点的节奏兼容性分数。如表格902中进一步示出的,如果两个样本的拍子在彼此的大于一个阈值(0.5%)但小于另一个阈值(10%)内,则为2点的节奏兼容性分数被分配给这两个样本,如果这两个样本的拍子在彼此的大于或等于一个阈值(10%)但小于另一个阈值(20%)内,则为1点的节奏兼容性分数被分配给这两个样本,并依次类推。
例如,参考表格902,如果一个样本具有每分钟70节拍的拍子,并且另一样本具有每分钟72节拍的拍子,则这两个样本的拍子在彼此的0.5%内,并且为3点的节奏兼容性被分配给这些样本。作为进一步示例,如果一个样本具有每分钟34节拍的拍子,并且另一样本具有每分钟70节拍的拍子,则这两个样本的拍子(其中一个样本的拍子被翻倍成每分钟68节拍)在彼此的0.5%内,并且为3点的节奏兼容性分数被分配给这些样本。作为又一示例,如果一个样本具有每分钟70节拍的拍子,并且另一样本具有每分钟110节拍的拍子,则这两个样本的拍子大于彼此的35%,并且为负3点(或者替换地0点)的节奏兼容性分数被分配给这些样本。
应当注意,表格902中示出的阈值(例如,0.5%、5%、10%等)以及节奏兼容性分数值是示例,并且可替换地使用各种其他阈值和/或节奏兼容性分数值。
回到图8,样本或集合的节奏兼容性是在动作802考虑对样本或集合中的至少一者的节奏的各个改变来确定的。例如,一个或两个样本的拍子可被减半和/或翻倍,如以上所讨论的。由此,在确定节奏兼容性时,对样本或集合中的至少一者的节奏的修改或改变被考虑。
还确定样本或集合的节奏兼容性(动作804)。两个样本的和声兼容性指代这两个样本在和声方面彼此有多接近。在一个或多个实施例中,如上所述的确定这两个样本的音高分布,并基于这两个样本之间的所选音高相关性(例如,最高的或大致最高的(例如,在最高的阈值量内)音高相关性)向这两个样本分配分数。这两个样本之间的所选的音高相关性越高,则针对这些样本的和声兼容性的分数越高。
动作804中对和声兼容性的确定任选地考虑多少音高修改被执行以便获得所选的音高相关性。被执行的音高修改越多,则针对这些样本的和声兼容性的分数越低。在一个或多个实施例中,所选的音高相关性被加权以生成音高兼容性评级,其中较大的权重被用于通过较少音高修改获得的所选音高相关性,而较小的权重被用于通过较多音高修改获得的所选音高相关性。
图10示出根据一个或多个实施例的音高变移和相应的权重的示例表格1002。如表格1002中所示,为0的音高变移对应于为1.0的权重,为3的音高变移对应于为0.81的权重,为5的音高变移对应于为0.71的权重,并以此类推。将所选的音高相关性乘以与音高被变移的变移量(例如,半音数)相对应的权重以获得音高兼容性评级。例如,如果所选的音高相关性来自被变移+3半音的音高,则将所选的音高相关性乘以0.81来获得音高兼容性评级。作为另一示例,如果所选的音高相关性来自被变移+11半音的音高,则将所选的音高相关性乘以0.98来获得音高兼容性评级(在该情况下,音高兼容性评级等于所选的音高相关性)。
返回图8,在动作804,该音高兼容性评级被使用来向这些样本分配和声兼容性分数。音高兼容性评级越高,则针对这些样本的和声兼容性分数越高。
图11示出根据一个或多个实施例的基于各样本的音高兼容性评级来向这些样本分配的分数的示例表格1102。将音高兼容性评级乘以特定数字(例如,10)和如表格1102中所示出分配分数,但是替换地,可在表格1102中使用不同的阈值,使得不需要执行这样的乘法。如表格1102中所示出的,如果音高兼容性评级为至少一个阈值(0.90),则为7点的和声兼容性分数被分配给这两个样本。如表格1102中进一步示出的,如果音高兼容性评级小于或等于一个阈值(0.90)但大于另一阈值(0.87),则为6点的和声兼容性分数被分配给这两个样本,如果音高兼容性评级小于或等于一个阈值(0.87)但大于另一阈值(0.84),则为5点的和声兼容性分数被分配给这两个样本,并以此类推。例如,参考表格1102,如果音高兼容性评级乘以10为0.884,则为6点的和声兼容性分数被分配给这些样本。
应当注意,表格1102中示出的阈值(例如,0.90、0.87、0.84等)以及和声兼容性分数值是示例,并且可替换地使用各种其他阈值和/或和声兼容性分数值。
回到图8,样本或集合的和声兼容性是在动作804考虑对样本或集合中的至少一者的音高的各个改变来确定的。例如,一个或两个样本的音高可被变移,如以上所讨论的。由此,在确定和声兼容性时,对样本或集合中的至少一者的音高的修改或改变被考虑。
任选地,还考虑附加的元数据来生成指示两个样本预期一起听起来有多好的兼容性评级(动作806)。各不同的分数值可基于针对这些样本的各不同的元数据中的任一者被分配给这些样本。以上讨论的关于样本的元数据中的任一者可被用作向样本分配分数的基础。对于以上讨论的一个或多个元数据中每一者,特定值或设置可被确定为是兼容的还是不兼容的、相似的还是不相似的、合乎需要的还是不合乎需要的等等。可按各种方式来确定哪些值或设置是兼容的还是不兼容的、相似的还是不相似的、合乎需要的还是不合乎需要的等等,所述方式包括诸如可通过在推荐模块(例如,图1中的模块106)中对其进行预配置,通过由可访问推荐模块的另一模块或服务来对其进行维护,基于用户或管理员反馈等等。可基于两个样本是兼容的还是不兼容的(或者这两个样本有多么兼容或不兼容)、相似的还是不相似的(或者两个样本有多么相似或不相似)、合乎需要的还是不合乎需要的(或者它们有多么合乎需要的或不合乎需要)等等来向这两个样本分配点。
在一个或多个实施例中,样本或样本集合中使用的乐器被使用来向样本或集合分配分数。可基于样本或集合中特定乐器的存在和/或缺失、样本或集合中乐器的类型(例如,钢琴类型、鼓的类型)的相似性和/或差异等等来分配点。例如,如果一个样本或集合包括其他样本或集合所不包括的乐器,则可将特定数目的正数点分配给这些样本或集合,如果样本或集合包括同一乐器的不同类型(例如,一个包括经典钢琴,并且另一个包括电子钢琴),则可将特定数目的负数点分配给这些样本或集合,等等。
在一个或多个实施例中,样本或集合的流派被用来向这些样本或集合分配分数。可基于样本或集合的流派的相似性、基于兼容的和/或不兼容流派的记录等等来分配点。例如,如果样本或集合的流派相同(例如,两者都是硬摇滚歌曲、两者都是摇滚歌曲),可分配特定数目的正数点,如果样本或集合的流派相似(例如一个为硬摇滚,且另一个为轻摇滚),则可分配较少数目的正数点,如果样本或集合的流派被包括在不兼容流派列表上(例如,一个是重金属并且另一个为轻音乐),则可分配特定数目的负数点,等等。
在一个或多个实施例中,样本或集合的感觉或节奏模式被用来向这些样本或集合分配分数。可基于样本或集合的感觉或节奏模式的相似性,基于对兼容和/或不兼容感觉、兼容和/或不兼容节奏模式的记录等等来分配点。例如,如果样本或集合的感觉或节奏模式相同(例如,两者都是摇滚声音),则可分配特定数目的正数点,如果样本或集合的感觉或节奏模式被包括在不兼容感觉或节奏模式列表上(例如,一个为摇滚声音,且另一者为节拍乐队声音类型),则可分配特定数目的负数点等等。
在一个或多个实施例中,样本或集合的情绪被用来向这些样本或集合分配分数。可基于样本或集合的情绪的相似性、基于对兼容和/或不兼容情绪的记录等等来分配点。例如,如果样本或集合的情绪相同(例如,两者都为忧伤的歌曲),则可分配特定数目的正数点,如果样本或集合的情绪被包括在不兼容情绪列表上(例如,一个为忧伤的,且另一个为欢快/快乐的),则可分配特定数目的负数点,等等。
生成样本或集合的兼容性评级(动作808)。在一个或多个实施例中,兼容性评级是通过组合各分数或点(例如,添加在动作802、804和806中分配的点)来生成的。兼容性评级是例如指示如果样本或集合被组合,则预期这些样本或集合一起听起来有多好的分数。与具有较低兼容性评级的两个样本或集合(这些样本或集合之间存在较少量的兼容性)相比,具有较高兼容性评级的两个样本或集合(这些样本或集合之间存在较大量的兼容性)预期对用户而言一起听起来更好。替换地,兼容性评级可采取其他形式,诸如这些分数或点(例如,在增加了在动作802、804和806中分配的点后)映射到或以其他方式对应于的指示或值。例如,这些点的总数(或其他组合或选择)可被映射成二进制指示(例如,将听起来很好摂或将听起来很差摂)。作为另一示例,这些点的总数(或者其他组合或选择)可被映射成指示这两个样本或集合是否被预期一起听起来很好的其他值(例如,针对最大点总数的指示A或“高”,以及针对最低点总数的指示“F或敁差)。”
在过程800的讨论中,对具有较高分数的两个样本或集合作出参考,与具有较低分数的两个样本或集合相比,具有较高分数的这两个样本或集合如果被组合则预期听起来更好。替换地,点的分配可能是相反的(例如,较少的点针对较大的相似性),从而导致与具有较高分数的两个样本或集合相比,具有较低分数的两个样本或集合如果被组合则预期听起来更好。
此外,虽然对数字点和分数作出了参考,但可使用任何其他排名方案。例如,在动作802、804和806中可分配字母分数或低/中/高值,并按各种方式中的任一者将其组合(例如,对字母等级求平均、分别为动作802、804和806的每个列出低/中/高值等)。
图12是示出根据一个或多个实施例的用于推荐音频样本组合的示例过程1200的流程图。过程1200由音频系统(诸如图1中的音频系统100)来实施,并可以用软件、固件、硬件、或其组合来实现。过程1200被示为一组动作,并且不仅限于所示出的用于执行各种动作的操作的顺序。过程1200是用于推荐音频样本组合的示例过程;本文中参考不同附图包括推荐音频样本组合的附加讨论。
在过程1200,标识一个音频样本或音频样本集合(动作1202)。在动作1202标识出的一个音频样本或音频样本集合是要为其推荐至少一个其他音频样本或集合以用于组合的音频样本或集合。动作1202标识出的一个音频样本或音频样本集合可以是用户选择的音频样本或集合、通过实现过程1200的音频系统自动地选择的音频样本或集合、通过另一设备或模块选择的音频样本或集合等等。
还标识一个或多个附加音频样本或音频样本集合(动作1204)。附加音频样本或集合可以用各种不同的方式来标识出。例如,附加音频样本或集合可由音频系统随机地选择、可基于流行度来选择(例如,被其他用户或系统频繁地或不频繁地选择的音频样本或集合)、可基于通过用户输入提供的准则来选择(例如,用户请求查看对具有特定元数据的音频的推荐,诸如具有钢琴或鼓的使用乐器的样本或集合、具有爵士流派的样本或集合等)等等。
生成在动作1204中标识出的多个附加样本或集合中的每一者与在动作1202中标识出的一个音频样本或集合的兼容性评级(动作1206)。如上所述地(例如,参考图8的过程800)生成兼容性评级。由此,在动作1206生成多个兼容性评级,动作1204中标识出的多个附加音频样本或集合中的每一者有一个兼容性评级。
标识出与此多个附加样本或集合中的其他样本或集合相比具有更好兼容性评级的此多个附加样本或集合中的至少一个样本或集合(动作1208)。与具有较低兼容性评级的两个样本或集合相比,具有较好兼容性评级的两个样本或集合如果被组合的话预期听起来更好。可基于如上所述兼容性评级被生成的方式来确定哪个兼容性评级更好,诸如较高兼容性评级比较低兼容性评级更好。
可按不同的方式确定在动作1208标识出了多少音频样本或集合。例如,在动作1208可标识出具有较好(例如,最高)兼容性评级的阈值数目(例如,四个或五个)音频样本或集合。由此,在该示例中,兼容性评级可能不是非常高,但尽管如此这些音频样本或集合仍在动作1208被标识出。作为另一示例,可在动作1208标识出满足阈值兼容性评级(例如,具有大于或等于(或者替换地大于)阈值兼容性评级)的所有音频样本或集合。阈值兼容性评级可以是固定的(例如,并且由此零个音频样本或集合可在动作1208被标识出),或者替换地可以是可变的(例如,被调整,使得至少一个音频样本或集合在动作1208被标识出)。
呈现在动作1208标识出的多个附加音频样本或集合中的至少一者作为要与一个或多个音频样本或集合组合的推荐(动作1202)。由此,呈现在动作1204标识出的多个附加音频样本或集合中的至少一者作为要与在动作1202标识出的一个音频样本或集合组合的推荐。该至少一个音频样本或集合可在动作1210用不同的方式呈现,诸如该样本或集合的标识符(例如,声音或文件名)被显示、关于该样本或集合的各元数据被显示、该样本或集合被可听地回放、其组合等等。
在动作1210呈现该至少一个音频样本或集合以供用户选择。由此,过程1200呈现一个或多个音频样本或集合推荐以与特定音频样本或集合组合,那些推荐是预期在被组合时对用户而言听起来很好的音频样本或集合。用户能够选择这些推荐之一,并且使得这些音频样本或集合组合,如以下所讨论的。
音频组合
图1的音频组合模块112组合不同的样本或样本集合,从而任选地创建新的样本或样本集合。本文中对正被组合的样本或样本集合的引用包括其中一样本被与另一样本组合的情况,其中一样本被与一样本集组合的情况,以及其中一样本集被与另一样本集组合的情况。组合样本和/或集合的结果可以是新的样本或新的样本集合,或者先前的样本或集合可被经组合的样本或集合取代。
图13是示出根据一个或多个实施例的用于组合音频样本的示例过程1300的流程图。过程1300由音频组合模块(诸如图1中的音频组合模块112)来实施,并可以用软件、固件、硬件、或其组合来实现。过程1300被示为一组动作,并且不仅限于所示出的用于执行各种动作的操作的顺序。过程1300是用于组合音频样本的示例过程;本文中参考不同附图包括了组合音频样本的附加讨论。
在过程1300,标识出要组合的音频样本和/或音频样本集合(动作1302)。这些样本或集合可按以上讨论的各种方式来标识(例如,自动地选择、响应于用户输入来选择等等),并包括由音频系统在先前推荐的至少一个样本(例如,如以上参考图12讨论的)。
获得这些样本或集合的元数据(动作1304)。该元数据可按各种方式被获得,诸如通过检索先前生成的元数据、通过响应于对某样本或集合的选择来生成元数据等等。在一个或多个实施例中,在动作1304获得的元数据是与在动作1302选择的样本或集合相对应的元数据。替换地,多个样本或集合(例如,对其的用户选择可被接收到的样本或集合)的元数据可在动作1302接收对样本或集合的用户选择之前被获得。
在动作302选择的样本或集合是使用以下方式来组合的:使用与这些样本或集合相对应的元数据来自动地调整这些样本中的至少一者的特征,以增加这些样本的音乐兼容性(动作1306)。这些样本或集合是响应于组合这些样本或集合的用户请求来组合的,该用户请求可通过各种用户输入中的任一者来接收,如以上所讨论的。例如,用户可选择的“组合”按钮、图标、菜单项等可被显示并被用户选择来请求被组合的所选样本或集合。作为另一示例,对样本或集合的选择可以是组合这些样本或集合的用户请求。对组合这些样本或集合的用户意图的任何表达都可与本文中讨论的技术联用。
可调整这些样本或集合中的至少一者的各种不同的特征,诸如样本或集合的节奏、样本或集合的音高、样本或集合的使用乐器等。因此,在动作1306的调整可包括调整样本或集合的节奏使得样本或集合听起来在节奏上一致,调整样本或集合的音高使得样本或集合听起来在和声上一致,调整样本或集合的其他元数据/参数使得样本或集合听起来一致(例如,使用乐器和流派一致),以及其组合等等。
可按各种不同的方式中的任一者来调整样本或集合的节奏。图14是示出根据一个或多个实施例的用于调整样本或样本集合的节奏使得样本或集合听起来在节奏上一致的示例过程1400的流程图。过程1400被实现为图13的过程1300的动作1306的一部分。过程1400被示为一组动作,并且不仅限于所示出的用于执行各种动作的操作的顺序。过程1400是用于调整样本的节奏使得样本或集合听起来在节奏上一致的示例过程;参考不同的附图,本文中包括调整样本或集合的节奏使得样本听起来在节奏上一致的附加讨论。
在过程1400,对样本或集合A以及样本或集合B作出了参考。样本或集合A以及样本或集合B是用户在图13的动作1302中选择的样本(或样本集合)之一。样本或集合A以及样本或集合B具有标识该样本或集合的拍子或每分钟节拍(BPM)的对应元数据,如以上所讨论的。
检测样本或集合A的每分钟节拍是否大于0(动作1402)。如果样本或集合A的每分钟节拍不大于0(例如,等于0),或者样本或集合A被按其他方式被标识为是短音,则不执行对样本或集合A的节奏改变(动作1404)。在其中样本或集合A是短音的情况下,样本或集合A与样本或集合B听起来节奏上一致,而无需任何节奏修改。应当注意,可按各种不同的方式来确定样本或集合A的每分钟节拍是否大于0,诸如使用数字信号处理算法来确定、由音乐家来确定等等。
然而,如果样本或集合A的每分钟节拍大于0,则确定增量值(动作1406)。动作1406中的增量值是样本或集合A的每分钟节拍与样本或集合B的每分钟节拍之间的差,并且可任选地为该差的绝对值。
检查该增量值是否满足阈值(动作1408)。阈值是在被增量值满足的情况下预期会导致允许样本或集合A的节奏被改变而对用户听起来仍然是可接受的值。例如,阈值可以为20,但是可替换地使用其他值。如果增量值是绝对值,则在该增量值小于(或者替换地小于或等于)阈值的情况下,该增量值满足阈值。如果增量值不是绝对值,则在该增量值小于(或者替换地小于或等于)阈值(例如20)并大于(或者替换地大于或等于)阈值的负数(例如,-20)的情况下,该增量值满足阈值。
如果增量值满足阈值,则将样本或集合A的每分钟节拍改变为大致等于样本或集合B的每分钟节拍(例如,在样本或集合B的每分钟节拍的阈值量内)(动作1410)。样本或集合A的每分钟节拍可通过以下方式来改变:使用各种公共和/或专用技术中的任一者(诸如,使用各种拉伸算法中的任一者)来增加或减少样本或集合A的每分钟节拍。替换地,样本或集合B的每分钟节拍可被改变为大致等于样本或集合A的每分钟节拍(例如,在样本或集合A的每分钟节拍的阈值量内),或者样本或集合A的每分钟节拍以及样本或集合B的每分钟节拍两者都可被改变,使得这些每分钟节拍大致相同(例如,在彼此的阈值量内)。例如,样本或集合A的每分钟节拍可被增加,并且样本或集合B的每分钟节拍可被减小,或者样本或集合A的每分钟节拍可被减小并且样本或集合B的每分钟节拍可被增加。
然而,如果增量值不满足阈值,则增加样本或集合A的每分钟节拍,并重新确定增量值(动作1412)。在一个或多个实施例中,动作1412中的增加指代使样本或集合A的每分钟节拍翻倍,但是样本或集合A的每分钟节拍可替换地被增加其他量。增量值被重新确定为样本或集合A的经增加的每分钟节拍与样本或集合B的每分钟节拍之间的差。
在增加样本或集合A的每分钟节拍后,检查如在动作1412重新确定的增量值是否满足阈值(动作1414)。在动作1414的阈值可以与在动作1408的阈值相同。
如果增量值满足阈值,则将样本或集合A的每分钟节拍改变成为样本或集合B的每分钟节拍的因数(动作1416)。样本或集合A的每分钟节拍可通过以下方式来改变:使用各种公共和/或专用技术中的任一者(诸如,使用各种拉伸算法中的任一者)来增加或减少样本或集合A的每分钟节拍。动作1416中的因数依赖于动作1412中的增加的量,并且在一个或多个实施例中动作1416中的因数是增加乘数的倒数。例如,如果样本或集合A的每分钟节拍在动作1412中被翻倍(增加乘数为2),则动作1416中的因数将为1/2。由此,如果样本或集合A的每分钟节拍为35,并且样本或集合B的每分钟节拍为80,则样本或集合A的每分钟节拍将被增加到70。
然而,如果增量值不满足动作1414中的阈值,则减少样本或集合A的每分钟节拍,并重新确定增量值(动作1418)。在一个或多个实施例中,动作1418中的减少指代使样本或集合A的每分钟节拍减半,但是样本或集合A的每分钟节拍可替换地被减少其他量。增量值被重新确定为样本或集合A的经减少的每分钟节拍与样本或集合B的每分钟节拍之间的差。
在减少样本或集合A的每分钟节拍后,检查如在动作1418重新确定的增量值是否满足阈值(动作1420)。动作1420中的阈值可以与动作1408和1414中的阈值相同。
如果增量值满足阈值,则将样本或集合A的每分钟节拍改变成为样本或集合B的每分钟节拍的乘数(例如整数乘数)(动作1416)。样本或集合A的每分钟节拍可通过以下方式来改变:使用各种公共和/或专用技术中的任一者(诸如,使用各种拉伸算法中的任一者)来增加或减少样本或集合A的每分钟节拍。动作1416中的乘数依赖于动作1412中的增加的量,并且在一个或多个实施例中动作1416中的乘数是减少乘数的倒数。例如,如果样本或集合A的每分钟节拍在动作1418中被减半(减少乘数为1/2),则动作1416中的乘数将为2。由此,如果样本或集合A的每分钟节拍为62,并且样本或集合B的每分钟节拍为30,则样本或集合A的每分钟节拍将被增加到60。
然而,如果增量值不满足动作1420中的阈值,则将样本或集合A的每分钟节拍改变为大致等于样本或集合B的每分钟节拍(例如,在样本或集合B的每分钟节拍的阈值量内)(动作1410)。
返回图13,替换地,可在动作1306用其他方式来调整样本或集合的节奏。例如,一个样本或集合的每分钟节拍可被改变为大致等于另一样本或集合的每分钟节拍(例如,在另一样本或集合的每分钟节拍的阈值量内)。作为另一示例,一个样本或集合的每分钟节拍可被改变为大致等于另一样本或集合的每分钟节拍的特定因素或乘数(例如,在另一样本或集合的每分钟节拍的阈值量内)。作为另一示例,节奏一致性可通过使各个体节拍位置从一个样本或集合到另一样本或集合对准(例如,通过动态地移动某样本或集合中的各个体音调位置使得一个样本或集合中的各个体事件与另一样本或集合中的事件对准,通过拉伸某样本或集合使得节拍位置被对准等等)来实现。在对准这样的个体节拍位置时,样本或集合的每分钟节拍可被忽略。
样本或集合的音高可在动作1306中被调整,使得通过自动地调整这些样本或集合的一者或多者的音高,这些样本或集合听起来在和声上一致。在一个或多个实施例中,如果样本被确定音高(例如,样本具有一个或多个音高),则该系统分析该样本并按需改变其一个或多个音高。然而,如果样本被解除音高化(例如,该样本不具有至少一个音高),则该系统不尝试改变该样本的音高。
可如上参考图2的过程200来修改样本或集合中的一者或多者的音高。替换地,可按其他方式修改样本或集合中的一者或多者的音高。
在一个或多个实施例中,样本或集合的音高可基于该样本或集合的模式来调整。样本或集合的模式可基于该样本或集合中的一个或多个最低音调来确定。在给定样本或集合的模式的情况下,可使用各种映射和/或其他规则来确定该样本或集合的音高的要变移的量,诸如要将处于一种模式的样本或集合的音高变移多少来变成多种其他模式中的每一者的映射。例如,关于如何将处于吕底亚(Lydian)模式的样本音高如何变移以变成通用的爱奥尼亚(Ionian)模式的映射。
在其他实施例中,样本或集合的音高可基于样本或集合的调中心来调整。可确定每一样本或集合的调中心,并可确定各调中心之间的距离。该距离可例如为正或负6半音。样本或集合之一的音高可随后被变移确定的距离,从而导致这些样本或集合的调中心相同。
在其他实施例中,样本或集合的音高可通过标识包括在样本或集合中的音调之间的全音阶或半音阶关系(任选地,不管这些音调处于哪些八度音阶)并尝试将这些关系映射到全音音符来调整。如果包括在该样本或集合中的音调之间的全音阶和半音阶关系与全音音符中的音调之间的全音阶和半音阶关系存在直接匹配,则该集合或样本中的音调被映射到该全音音符。如果不存在这样的直接匹配,则尝试将全音阶关系映射到一全音音符,同时降低半音阶关系中的差异数。如果存在这样的全音音符,则将集合或样本中的音符映射到那个全音音符。如果不存在这样的全音音符,则将该集合或样本中的各音调映射到在半音阶关系之间具有最少不同音调和差异(或在该最少的不同音调和差异的阈值数内)的全音音符。替换地,尝试将这些音调之间的全音阶和半音阶关系映射到其他非全音音符(例如,和声小音阶)。
除了调整节奏一致性和和声一致性外,在动作1306还可作出附加的调整。例如,样本或集合的使用乐器或流派可被调整以增加这些样本或集合的使用乐器和流派一致性。各种不同的规则或准则可被使用来增加样本或集合的使用乐器和流派一致性,并且这些规则或准则是基于各乐器一起起作用或发生的方式来设计的,并被使用来通过调整这些样本或集合中的一者或多者的使用乐器来改善两个样本或集合在被组合时预期在用户听起来的方式。
可改变样本或集合的使用乐器,使得基于其他样本或集合的使用乐器或流派而使用不同类型的乐器。例如,如果一个样本或集合的流派为酒吧钢琴(honky-tonkpiano),则可将其他样本或集合的使用乐器从古典钢琴改变为略微走调的钢琴。样本或集合的使用乐器还可被改变为使得样本或集合中的乐器的角色改变。例如,如果一个样本包括处于中档八度音阶的一个或多个乐器,则通过将样本的音高再下调一个或多个八度音阶而将另一样本中的中档钢琴乐器改变为低音提琴角色。
作为另一示例,可在动作1306作出的附加调整是移动样本或集合中的节拍位置。在节拍不是静态的每分钟节拍数而是略微变化的情况下,可发生各情况。可在动作1306作出的附加调整是按需移动样本或集合中的节拍位置以实现静态的每分钟节拍数。例如,样本或集合可包含具有每分钟58节拍的节奏的某些部分、具有每分钟59.5节拍的节奏的其他部分、具有每分钟61节拍的节奏的其他部分等等。在该示例后面,样本或集合的不同部分中的节奏可被调整,使得所有这些部分都具有相同的每分钟节拍数(例如,每分钟60节拍)。在其中样本不具有节拍器节奏的情况下,也可能移动摂各个体音调事件位置,使得其与静态的节拍器值对准。
在一个或多个实施例中,在动作1306作出的对节奏一致性的调整、对和声一致性的调整和/或其他调整也基于样本或集合的组合的上下文。该上下文可包括样本或集合如何被使用或者预期如何被使用。例如,样本或集合可与一些样本或集合兼容,但不与其他样本或集合兼容(例如,先前记录的样本可以或可以不与被记录为实况演出的部分的样本兼容)。该上下文可按各种方式指定,诸如由用户、由音频系统、由另一组件或模块等指定。
组合样本或集合的上下文还可指代样本或集合的被用作组合的基础的特定子集。在以上讨论中,该组合被讨论为基于与这些样本或集合相对应的元数据,然而,不是所有元数据都需要被使用。这样样本或集合的组合的上下文允许这些样本或集合的特定方面(例如,特定元数据参数)被标识出。例如,来自样本元数据中使用的音调的特定音调可被选择,使得以上讨论的音高分布和音高修改分析基于这些所选的音调被执行,而不管其他音调如何(例如样本中未被选择的音调的音高的百分比可被设为0)。作为另一示例,来自使用乐器元数据的特定乐器可被选择,并且参数调整基于那些所选的乐器,而非未被选择的乐器。
还可保存经调整的样本或集合以及对应于经组合的样本或集合的聚集元数据(动作1308)。经调整的样本或集合可被保存为新样本或集合(例如,音频存储120中的新样本122),或者替换地经调整的样本或集合可覆盖并替换样本的先前版本。如果两个样本被组合,则可创建包括这些样本中的两者(其中的一个或多个样本可能已如以上所讨论的被调整)的新样本集合。如果将一样本与一样本集合组合,则将该样本(其可能已如以上所讨论的被调整)添加到该样本集合,或者替换地可生成包括该样本集合以及该集合正与其组合的样本的新样本集合。对应于该样本和/或样本集合的元数据被按需更新,以反映对该样本的调整和/或该样本到该样本集合的添加。
替换地,经调整的样本和/或聚集元数据不需要被保存。例如,经组合的样本可被回放(例如,作为实况演出)而无需被保存。
在一个或多个实施例中,经调整的样本或集合以及对应于经组合的样本或集合的聚集元数据被自动地保存。替换地,经调整的样本或集合以及对应于经组合的样本或集合的聚集元数据仅响应于用户请求保存经组合样本或集合而被保存。例如,用户可被准许通过回放样本或集合的组合来试听样本或集合的组合,并仅在用户喜欢他或她所听见的组合的情况下(或以其他方式期望保存该组合时),才保存经调整的样本以及对应于经组合的样本或集合的聚集元数据。用户可随后选择不同的组合来试听,从而允许该用户在保存他或她喜欢的组合之前收听多个不同的样本或集合的组合。
图图15和16示出根据一个或多个实施例的将一样本与一样本集合组合的示例。在图15中,示出了具有相应的元数据1502的样本集合1504。样本集合1502包括五个样本(样本1、样本2、样本3、样本4和样本5)。具有相应的元数据1506的样本1508被与样本集合1402组合,从而导致图16中示出的样本集合1502。样本集合1602具有相应的元数据1604,其是被更新来反映对样本6的添加的元数据1504(例如,音调使用的元数据被更新以反映音调G,其不被包括在元数据1504中)。
在本文的讨论中,对被组合的样本作出参考。应当注意,还可发生其中一个样本被从样本集合中移除的情况下。一样本可出于各种原因被移除,诸如响应于请求移除该样本的用户输入、响应于该样本与添加到该样本集合的另一样本不兼容的确定等等。响应于样本被从样本集合中移除,对应于该样本集合的元数据被更新以反映所移除的样本不再被包括在该样本集合中。例如,如果样本6将被从样本集合1602中移除,则元数据1604将被更新以反映所使用的音调不再包括音调G。
由此,使用本文中讨论的音频组合,可自动地将由用户选择的各种声音(诸如,不同的音调、不同的和弦、歌曲的不同章节等等)与由用户选择的各种其他声音(诸如不同的音调、不同的和弦、歌曲的不同章节等等)组合。例如,在吉他上弹奏的特定和弦可被自动地添加到包括钢琴和鼓的声音的样本集合中。作为另一示例,特定鼓的声音可被自动地添加到包括钢琴和语音(唱歌)声音的样本集合中。用户可简单地选择他或她期望要使其组合的音频样本或音频样本集合,并使得那些样本或集合被自动地组合。
示例系统
虽然本文中参考特定模块讨论了特定功能,但应注意,本文中讨论的个体模块的功能可被分成多个模块,和/或多个模块的至少一些功能可被组合在单个模块中。附加地,本文讨论的执行某一动作的特定模块包括该特定模块本身执行该动作或另选地该特定模块调用或与其他方式访问执行该动作的另一组件或模块(或与该特定模块联合执行该动作)。因而,执行某一动作的特定模块包括该特定模块本身执行该动作或该特定模块调用或以其他方式访问的另一模块执行该动作。
图17在1700概括地示出了包括示例计算设备1702的示例系统,该示例系统表示可以实现本文中所描述的各种技术的一个或多个系统和/或设备。计算设备1702可以是,例如,服务提供方的服务器、与客户端相关联的设备(例如,客户端设备)、片上系统、和/或任何其他合适的计算设备或计算系统。
所示的示例计算设备1702包括处理系统1704、一个或多个计算机可读介质1706,以及相互通信地耦合的一个或多个I/O接口1708。尽管没有示出,计算设备1702可进一步包括系统总线或将各种组件相互耦合的其它数据和命令传输系统。系统总线可以包括不同总线结构中的任一个或其组合,诸如存储器总线或存储器控制器、外围总线、通用串行总线和/或利用各种总线体系结构中的任一种的处理器或局部总线。也构想了各种其它示例,诸如控制和数据线。
处理系统1704表示使用硬件执行一个或多个操作的功能。因此,处理系统1704被示为包括可被配置为处理器、功能块等的硬件元件1710。这可包括在作为专用集成电路或使用一个或多个半导体构成的其它逻辑设备的硬件中的实现。硬件元件1710不受形成它们的材料或者其中利用的处理机制的限制。例如,处理器可以由半导体和/或晶体管(例如,电子集成电路(IC))构成。在这一上下文中,处理器可执行指令可以是可电子地执行的指令。
计算机可读介质1706被示为包括存储器/存储1712。存储器/存储1712表示与一个或多个计算机可读介质相关联的存储器/存储容量。存储器/存储1712可包括易失性介质(如随机存取存储器(RAM))和/或非易失性介质(如只读存储器(ROM)、闪存、光盘、磁盘等等)。存储器/存储1712可包括固定介质(例如,RAM、ROM、固定硬盘驱动器等)以及可移动介质(例如闪存、可移动硬盘驱动器、光盘等等)。计算机可读介质1706可以下面进一步描述的各种方式来配置。
输入/输出接口1708表示允许用户向计算设备1702输入命令和信息的功能,并且还允许使用各种输入/输出设备向用户和/或其他组件或设备呈现信息。输入设备的示例包括键盘、光标控制设备(例如,鼠标)、麦克风(例如,用于语音输入)、扫描仪、触摸功能(例如,电容性的或被配置来检测物理触摸的其它传感器)、相机(例如,可采用可见或诸如红外频率的不可见波长来将不涉及触摸的移动检测为姿势),等等。输出设备的示例包括显示设备(例如,监视器或投影仪)、扬声器、打印机、网卡、触觉响应设备,等等。因此,计算设备1702可以下面进一步描述的各种方式来配置以支持用户交互。
计算设备1702还包括音频系统1714。音频系统1714提供用于推荐音频样本的各种功能,诸如如以上所讨论的执行节奏修改、音高修改,生成推荐,组合样本、其组合等等。音频系统1714可实现例如图1的音频系统100。
此处可以在软件、硬件元件或程序模块的一般上下文中描述各种技术。一般而言,此类模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元件、组件、数据结构等等。本文使用的术语“模块”、“功能”和“组件”一般表示软件、固件、硬件或其组合。本文描述的技术的各特征是平台无关的,从而意味着该技术可在具有各种处理器的各种计算平台上实现。
所描述的模块和技术的实现可以被存储在某种形式的计算机可读介质上或跨某种形式的计算机可读介质传输。计算机可读介质可包括可由计算设备1702访问的各种介质。作为示例而非限制,计算机可读介质可包括“计算机可读存储介质”和“计算机可读信号介质”。
“计算机可读存储介质”指相对于仅信号传输、载波或信号本身而言,启用对信息的持久存储和/或有形存储的介质和/或设备。由此,计算机可读存储介质是指非信号承载介质。计算机可读存储介质包括以适合于存储如计算机可读指令、数据结构、程序模块、逻辑元件/电路、或其他数据等的方法或技术来实现的诸如易失性和非易失性、可移动和不可移动介质和/或存储设备的硬件。该计算机可读存储介质的示例包括但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光存储、硬盘、磁带盒、磁带、磁盘存储或其它磁存储设备、或者可适用于存储所需信息并可由计算机访问的其它存储设备、有形介质或制品。
“计算机可读信号介质”可以指被配置为诸如经由网络向计算设备1702的硬件传输指令的信号承载介质。信号介质通常用诸如载波、数据信号、或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其他数据。信号介质还包括任何信息传送介质。术语“已调制数据信号”是指使得以在信号中编码信息的方式来设置或改变其一个或多个特性的信号。作为示例而非限制,通信介质包括有线介质,诸如有线网络或直接线路连接,以及无线介质,诸如声学、RF、红外线和其他无线介质。
如先前所描述的,硬件元件1710和计算机可读介质1706代表以硬件形式实现的指令、模块、可编程器件逻辑和/或固定器件逻辑,其可在某些实施例中被采用来实现此处描述的技术的至少某些方面。硬件元件可包括集成电路或片上系统、应用专用集成电路(ASIC)、现场可编程门阵列(FPGA)、复杂可编程逻辑器件(CPLD),和用硅或其它硬件设备实现的组件。在此上下文中,硬件元件可以充当处理设备,该处理设备执行由该硬件元件以及用于存储供执行的指令的硬件设备(例如前面描述的计算机可读存储介质)所体现的指令、模块和/或逻辑所定义的程序任务。
前面的组合也可被采用来实现本文所述的各种技术。因此,软件、硬件,或模块和其他程序模块可被实现为一个或多个指令和/或在某种形式的计算机可读存储介质上和/或由一个或多个硬件元件1710实现的逻辑。计算设备1702可被配置成实现对应于软件和/或硬件模块的特定指令和/或功能。因此,将模块实现为可由计算设备1702执行为软件的模块可至少部分以硬件完成,例如,通过使用计算机可读存储介质和/或处理系统的硬件元件1710。指令和/或功能可以是一个或多个制品(例如,一个或多个计算设备1702和/或处理系统1704)可执行/可操作的,以实现此处描述的技术、模块、以及示例。
如在图17中进一步例示的,示例系统1700使得用于当在个人计算机(PC)、电视设备和/或移动设备上运行应用时的无缝用户体验的普遍存在的环境成为可能。服务和应用在所有三个环境中基本相似地运行,以便当使用应用、玩视频游戏、看视频等时在从一个设备转换到下一设备时得到共同的用户体验。
在示例系统1700中,多个设备通过中央计算设备互连。中央计算设备对于多个设备可以是本地的,或者可以位于多个设备的远程。在一个或多个实施例中,中央计算设备可以是通过网络、因特网或其他数据通信链路连接到多个设备的一个或多个服务器计算机的云。
在一个或多个实施例中,该互连架构使得功能能够跨多个设备递送以向多个设备的用户提供共同且无缝的体验。多个设备的每一个可具有不同的物理要求和能力,且中央计算设备使用一平台来使得为设备定制且又对所有设备共同的体验能被递送到设备。在一个或多个实施例中,创建目标设备的类,且针对设备的通用类来特制体验。设备类可由设备的物理特征、用途类型或其他共同特性来定义。
在各种实现中,计算设备1702可采取各种各样不同的配置,诸如用于计算机1716、移动设备1718和电视机1720用途。这些配置中的每一个包括可具有一般不同的构造和能力的设备,并且因而计算设备1702可根据不同的设备类中的一个或多个来配置。例如,计算设备1702可被实现为计算机1716类的设备,该类包括个人计算机、台式计算机、多屏幕计算机、膝上型计算机、上网本等。
计算设备1702还可被实现为移动设备1718类的设备,该类包括诸如移动电话、便携式音乐播放器、便携式游戏设备、平板计算机、多屏幕计算机等移动设备。计算设备1702还可被实现为电视机1720类的设备,该类包括在休闲观看环境中具有或连接到通常更大的屏幕的设备。这些设备包括电视机、机顶盒、游戏控制台等。
本文所描述的技术可由计算设备1702的这些各种配置来支持,且不限于在本文描述的各具体示例。这个功能也可被全部或部分通过分布式系统的使用(诸如如下所述的经由平台1724通过“云”1722)来实现。
云1722包括和/或代表资源1726的平台1724。平台1724抽象云1722的硬件(如,服务器)和软件资源的底层功能。资源1726可包括可在计算机处理在位于计算设备1702远程的服务器上执行时使用的应用和/或数据。资源1726也可包括在因特网上和/或通过诸如蜂窝或Wi-Fi网络之类的订户网络上提供的服务。
平台1724可抽象资源和功能以将计算设备1702与其他计算设备相连接。平台1724还可用于抽象资源的缩放以向经由平台1724实现的资源1726所遇到的需求提供对应的缩放级别。因此,在互联设备的实施例中,本文描述的功能的实现可分布在系统1700上。例如,该功能可部分地在计算设备1702上以及经由抽象云1722的功能的平台1724来实现。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述特定特征或动作。更确切而言,上述具体特征和动作是作为实现权利要求的示例形式公开的。

Claims (10)

1.一种方法,包括:
确定第一音频与第二音频的节奏兼容性,所述第一音频包括音频样本或音频样本集合,并且所述第二音频包括音频样本或音频样本集合;
确定所述第一音频与所述第二音频的和声兼容性;
在计算设备处基于所述第一音频与所述第二音频的节奏兼容性以及所述第一音频与所述第二音频的和声兼容性来生成所述第一音频与所述第二音频的兼容性评级;以及
响应于所述第一音频和所述第二音频的兼容性评级满足阈值兼容性评级,将所述第一音频呈现为供与所述第二音频组合的推荐。
2.如权利要求1所述的方法,其特征在于,进一步包括在确定所述第一音频与所述第二音频的节奏兼容性时考虑所述第一音频的节奏的改变。
3.如权利要求1所述的方法,其特征在于,进一步包括在确定所述第一音频与所述第二音频的和声兼容性时考虑所述第一音频的至少一个音高的改变。
4.如权利要求1所述的方法,其特征在于,进一步包括:
确定指示所述第一音频样本与所述第二音频的节奏兼容性的第一分数;
确定指示所述第一音频与所述第二音频的和声兼容性的第二分数;
通过组合所述第一分数和所述第二分数来生成所述兼容性评级。
5.如权利要求1所述的方法,其特征在于,所述生成进一步包括基于所述第一音频和所述第二音频中使用的乐器来生成所述第一音频与所述第二音频的兼容性评级。
6.一种计算设备,包括:
推荐模块,所述推荐模块被配置成标识第一音频,所述第一音频包括音频样本或音频样本集合,并且针对多个附加音频样本或音频样本集合中的每一音频样本或音频样本集合,生成所述第一音频与该音频样本或音频样本集合的兼容性评级,所述兼容性评级基于所述第一音频与该音频样本或集合的节奏兼容性以及所述第一音频与该音频样本或集合的和声兼容性;以及
输出模块,所述输出模块被配置成呈现所述附加音频样本或音频样本集合中的至少一个音频样本或音频样本集合作为与所述第一音频组合的推荐,所述至少一个音频样本或音频样本集合与所述附加音频样本或音频样本集合中的其他音频样本或音频样本集合相比具有更好兼容性评级。
7.如权利要求6所述的计算设备,其特征在于,进一步包括:
输入模块,所述输入模块被配置成响应于所述推荐的呈现接收对所述附加音频样本或音频样本集合中的至少一者中的一个音频样本或音频样本集合的用户选择;以及
音频组合模块,所述音频组合模块被配置成响应于对该一个样本或音频样本集合的用户选择将所述用户选择的一个样本或音频样本集合与所述第一音频组合。
8.如权利要求6所述的计算设备,其特征在于,所述推荐模块还被配置成对于所述多个附加音频样本或音频样本集合中的每一音频样本或音频样本集合,通过考虑对该音频样本或音频样本集合的节奏的改变来确定所述第一音频与该音频样本或音频样本集合的节奏兼容性。
9.如权利要求8所述的计算设备,其特征在于,所述推荐模块还被配置成对于所述多个附加音频样本或音频样本集合中的每一音频样本或音频样本集合,通过考虑对该音频样本或音频样本集合的至少一个音高的改变来确定所述第一音频与该音频样本或音频样本集合的和声兼容性。
10.如权利要求6所述的计算设备,其特征在于,所述推荐模块还被配置成对于所述多个附加音频样本或音频样本集合中的每一音频样本或音频样本集合,基于所述第一音频和该音频样本或音频样本集合中使用的乐器以及所述第一音频和该音频样本或音频样本集合的流派来生成所述第一音频与该音频样本或音频样本集合的兼容性评级。
CN201480051931.2A 2013-09-19 2014-09-17 推荐音频样本组合 Active CN105659322B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/032,158 US9798974B2 (en) 2013-09-19 2013-09-19 Recommending audio sample combinations
US14/032,158 2013-09-19
PCT/US2014/055974 WO2015042083A1 (en) 2013-09-19 2014-09-17 Recommending audio sample combinations

Publications (2)

Publication Number Publication Date
CN105659322A true CN105659322A (zh) 2016-06-08
CN105659322B CN105659322B (zh) 2019-07-05

Family

ID=51662316

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480051931.2A Active CN105659322B (zh) 2013-09-19 2014-09-17 推荐音频样本组合

Country Status (4)

Country Link
US (1) US9798974B2 (zh)
EP (1) EP3047484B1 (zh)
CN (1) CN105659322B (zh)
WO (1) WO2015042083A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106373594A (zh) * 2016-08-31 2017-02-01 华为技术有限公司 一种音调检测方法及装置
CN108172210A (zh) * 2018-02-01 2018-06-15 福州大学 一种基于歌声节奏的演唱和声生成方法
CN109117482A (zh) * 2018-09-17 2019-01-01 武汉大学 一种面向中文文本情感倾向性检测的对抗样本生成方法
CN111968452A (zh) * 2020-08-21 2020-11-20 江苏师范大学 和声学学习方法、装置及电子设备

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10204625B2 (en) 2010-06-07 2019-02-12 Affectiva, Inc. Audio analysis learning using video data
WO2012051605A2 (en) 2010-10-15 2012-04-19 Jammit Inc. Dynamic point referencing of an audiovisual performance for an accurate and precise selection and controlled cycling of portions of the performance
US11271993B2 (en) 2013-03-14 2022-03-08 Aperture Investments, Llc Streaming music categorization using rhythm, texture and pitch
US10061476B2 (en) 2013-03-14 2018-08-28 Aperture Investments, Llc Systems and methods for identifying, searching, organizing, selecting and distributing content based on mood
US10623480B2 (en) 2013-03-14 2020-04-14 Aperture Investments, Llc Music categorization using rhythm, texture and pitch
US10225328B2 (en) 2013-03-14 2019-03-05 Aperture Investments, Llc Music selection and organization using audio fingerprints
US10242097B2 (en) * 2013-03-14 2019-03-26 Aperture Investments, Llc Music selection and organization using rhythm, texture and pitch
US8927846B2 (en) * 2013-03-15 2015-01-06 Exomens System and method for analysis and creation of music
US9857934B2 (en) * 2013-06-16 2018-01-02 Jammit, Inc. Synchronized display and performance mapping of musical performances submitted from remote locations
JP6155950B2 (ja) * 2013-08-12 2017-07-05 カシオ計算機株式会社 サンプリング装置、サンプリング方法及びプログラム
US9280313B2 (en) 2013-09-19 2016-03-08 Microsoft Technology Licensing, Llc Automatically expanding sets of audio samples
US9372925B2 (en) 2013-09-19 2016-06-21 Microsoft Technology Licensing, Llc Combining audio samples by automatically adjusting sample characteristics
US9257954B2 (en) 2013-09-19 2016-02-09 Microsoft Technology Licensing, Llc Automatic audio harmonization based on pitch distributions
US20220147562A1 (en) 2014-03-27 2022-05-12 Aperture Investments, Llc Music streaming, playlist creation and streaming architecture
JP6160599B2 (ja) * 2014-11-20 2017-07-12 カシオ計算機株式会社 自動作曲装置、方法、およびプログラム
JP6160598B2 (ja) 2014-11-20 2017-07-12 カシオ計算機株式会社 自動作曲装置、方法、およびプログラム
FR3038440A1 (fr) * 2015-07-02 2017-01-06 Soclip! Procede d’extraction et d’assemblage de morceaux d’enregistrements musicaux
US11475867B2 (en) * 2019-12-27 2022-10-18 Spotify Ab Method, system, and computer-readable medium for creating song mashups
ES2928652T3 (es) * 2020-03-06 2022-11-21 Tech & Life Solutions Gmbh Método y dispositivo para la armonización automatizada de señales de audio digitales

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101167099A (zh) * 2005-05-02 2008-04-23 雪克音乐股份有限公司 使用模式组合方法的互联网音乐创作应用

Family Cites Families (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5231671A (en) 1991-06-21 1993-07-27 Ivl Technologies, Ltd. Method and apparatus for generating vocal harmonies
US6096962A (en) * 1995-02-13 2000-08-01 Crowley; Ronald P. Method and apparatus for generating a musical score
JP3799761B2 (ja) 1997-08-11 2006-07-19 ヤマハ株式会社 演奏装置、カラオケ装置および記録媒体
JP3704980B2 (ja) * 1997-12-17 2005-10-12 ヤマハ株式会社 自動作曲装置と記録媒体
US6103964A (en) 1998-01-28 2000-08-15 Kay; Stephen R. Method and apparatus for generating algorithmic musical effects
EP1143409B1 (en) * 2000-04-06 2008-12-17 Sony France S.A. Rhythm feature extractor
US6542869B1 (en) 2000-05-11 2003-04-01 Fuji Xerox Co., Ltd. Method for automatic analysis of audio including music and speech
WO2003081578A1 (en) 2002-03-21 2003-10-02 U.S. Army Medical Research And Materiel Command Methods and systems for detecting, measuring, and monitoring stress in speech
US7135635B2 (en) 2003-05-28 2006-11-14 Accentus, Llc System and method for musical sonification of data parameters in a data stream
US7081582B2 (en) 2004-06-30 2006-07-25 Microsoft Corporation System and method for aligning and mixing songs of arbitrary genres
JP4599558B2 (ja) 2005-04-22 2010-12-15 国立大学法人九州工業大学 ピッチ周期等化装置及びピッチ周期等化方法、並びに音声符号化装置、音声復号装置及び音声符号化方法
US20080215340A1 (en) 2005-05-25 2008-09-04 Su Wen-Yu Compressing Method for Digital Audio Files
US7563975B2 (en) 2005-09-14 2009-07-21 Mattel, Inc. Music production system
US7855333B2 (en) 2005-12-09 2010-12-21 Sony Corporation Music edit device and music edit method
EP1959428A4 (en) * 2005-12-09 2011-08-31 Sony Corp MUSICAL EDITING DEVICE AND METHOD
US7834260B2 (en) 2005-12-14 2010-11-16 Jay William Hardesty Computer analysis and manipulation of musical structure, methods of production and uses thereof
US20070137463A1 (en) 2005-12-19 2007-06-21 Lumsden David J Digital Music Composition Device, Composition Software and Method of Use
US7705231B2 (en) 2007-09-07 2010-04-27 Microsoft Corporation Automatic accompaniment for vocal melodies
US7842874B2 (en) 2006-06-15 2010-11-30 Massachusetts Institute Of Technology Creating music by concatenative synthesis
US7812241B2 (en) * 2006-09-27 2010-10-12 The Trustees Of Columbia University In The City Of New York Methods and systems for identifying similar songs
US8168877B1 (en) 2006-10-02 2012-05-01 Harman International Industries Canada Limited Musical harmony generation from polyphonic audio signals
JP5007563B2 (ja) 2006-12-28 2012-08-22 ソニー株式会社 音楽編集装置および方法、並びに、プログラム
WO2008095190A2 (en) 2007-02-01 2008-08-07 Museami, Inc. Music transcription
WO2008101130A2 (en) 2007-02-14 2008-08-21 Museami, Inc. Music-based search engine
EP1970894A1 (fr) 2007-03-12 2008-09-17 France Télécom Procédé et dispositif de modification d'un signal audio
US7667126B2 (en) 2007-03-12 2010-02-23 The Tc Group A/S Method of establishing a harmony control signal controlled in real-time by a guitar input signal
US20080300702A1 (en) 2007-05-29 2008-12-04 Universitat Pompeu Fabra Music similarity systems and methods using descriptors
FR2919975B1 (fr) 2007-08-10 2011-12-09 Voxler Procede pour composer automatiquement une sonnerie telephonique personnalisee a partir d'un enregistrement de voix fredonnee et telephone portable mettant en oeuvre ce procede
US8426715B2 (en) 2007-12-17 2013-04-23 Microsoft Corporation Client-side audio signal mixing on low computational power player using beat metadata
JP2009206629A (ja) 2008-02-26 2009-09-10 Sony Corp オーディオ出力装置、オーディオ出力方法
WO2010048636A1 (en) 2008-10-24 2010-04-29 Magnaforte, Llc Media system with playing component
US8183451B1 (en) * 2008-11-12 2012-05-22 Stc.Unm System and methods for communicating data by translating a monitored condition to music
US20100199833A1 (en) 2009-02-09 2010-08-12 Mcnaboe Brian Method and System for Creating Customized Sound Recordings Using Interchangeable Elements
US9190110B2 (en) 2009-05-12 2015-11-17 JBF Interlude 2009 LTD System and method for assembling a recorded composition
US8492634B2 (en) 2009-06-01 2013-07-23 Music Mastermind, Inc. System and method for generating a musical compilation track from multiple takes
EP2441071A2 (en) * 2009-06-12 2012-04-18 Jam Origin APS Generative audio matching game system
EP2492911B1 (en) 2009-10-21 2017-08-16 Panasonic Intellectual Property Management Co., Ltd. Audio encoding apparatus, decoding apparatus, method, circuit and program
US20110112672A1 (en) * 2009-11-11 2011-05-12 Fried Green Apps Systems and Methods of Constructing a Library of Audio Segments of a Song and an Interface for Generating a User-Defined Rendition of the Song
JP2012103603A (ja) 2010-11-12 2012-05-31 Sony Corp 情報処理装置、楽曲区間抽出方法、及びプログラム
TWI426501B (zh) 2010-11-29 2014-02-11 Inst Information Industry 旋律辨識方法與其裝置
US20120294457A1 (en) * 2011-05-17 2012-11-22 Fender Musical Instruments Corporation Audio System and Method of Using Adaptive Intelligence to Distinguish Information Content of Audio Signals and Control Signal Processing Function
US20120294459A1 (en) * 2011-05-17 2012-11-22 Fender Musical Instruments Corporation Audio System and Method of Using Adaptive Intelligence to Distinguish Information Content of Audio Signals in Consumer Audio and Control Signal Processing Function
US8710343B2 (en) 2011-06-09 2014-04-29 Ujam Inc. Music composition automation including song structure
KR102038171B1 (ko) 2012-03-29 2019-10-29 스뮬, 인코포레이티드 타겟 운율 또는 리듬이 있는 노래, 랩 또는 다른 가청 표현으로의 스피치 자동 변환
US20140018947A1 (en) * 2012-07-16 2014-01-16 SongFlutter, Inc. System and Method for Combining Two or More Songs in a Queue
US9158760B2 (en) * 2012-12-21 2015-10-13 The Nielsen Company (Us), Llc Audio decoding with supplemental semantic audio recognition and report generation
US9183849B2 (en) * 2012-12-21 2015-11-10 The Nielsen Company (Us), Llc Audio matching with semantic audio recognition and report generation
US9280313B2 (en) * 2013-09-19 2016-03-08 Microsoft Technology Licensing, Llc Automatically expanding sets of audio samples
US9372925B2 (en) * 2013-09-19 2016-06-21 Microsoft Technology Licensing, Llc Combining audio samples by automatically adjusting sample characteristics
US9257954B2 (en) 2013-09-19 2016-02-09 Microsoft Technology Licensing, Llc Automatic audio harmonization based on pitch distributions

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101167099A (zh) * 2005-05-02 2008-04-23 雪克音乐股份有限公司 使用模式组合方法的互联网音乐创作应用

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ANONYMOUS ET AL: "How to understanding key and tempo in harmonic mixing", 《URL:HTTP://WWW.NATIVE-INSTRUMENTS.COM》 *
ANONYMOUS: "Camelot Sound", 《URL:HTTP://WEB.ARCHIVE.ORG》 *
ANONYMOUS: "Rapid Evolution -wikipedia,the free encyclopedia", 《URL:HTTP://EN.WIKIPEDIA.ORG》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106373594A (zh) * 2016-08-31 2017-02-01 华为技术有限公司 一种音调检测方法及装置
CN106373594B (zh) * 2016-08-31 2019-11-26 华为技术有限公司 一种音调检测方法及装置
CN108172210A (zh) * 2018-02-01 2018-06-15 福州大学 一种基于歌声节奏的演唱和声生成方法
CN108172210B (zh) * 2018-02-01 2021-03-02 福州大学 一种基于歌声节奏的演唱和声生成方法
CN109117482A (zh) * 2018-09-17 2019-01-01 武汉大学 一种面向中文文本情感倾向性检测的对抗样本生成方法
CN111968452A (zh) * 2020-08-21 2020-11-20 江苏师范大学 和声学学习方法、装置及电子设备

Also Published As

Publication number Publication date
WO2015042083A1 (en) 2015-03-26
US9798974B2 (en) 2017-10-24
EP3047484B1 (en) 2017-08-23
CN105659322B (zh) 2019-07-05
EP3047484A1 (en) 2016-07-27
US20150081613A1 (en) 2015-03-19

Similar Documents

Publication Publication Date Title
CN105659322A (zh) 推荐音频样本组合
CN105659314A (zh) 通过自动地调整样本特征来组合音频样本
CN105684077A (zh) 自动扩展音频样本集合
US10657934B1 (en) Enhancements for musical composition applications
US11947864B2 (en) Music content generation using image representations of audio files
CN105706161B (zh) 基于音高分布的自动音频协调
Turchet et al. Cloud-smart musical instrument interactions: Querying a large music collection with a smart guitar
JP7003040B2 (ja) オーディオコンテンツのダイナミック変更
US10140967B2 (en) Musical instrument with intelligent interface
Greenhalgh et al. Playing fast and loose with music recognition
US20230197042A1 (en) Automated generation of audio tracks
US20240153475A1 (en) Music management services
Pedrosa et al. Perceptually informed roles for haptic feedback in expressive music controllers
Braunsdorf Composing with flexible phrases: the impact of a newly designed digital musical instrument upon composing Western popular music for commercials and movie trailers.
Williams et al. IPad and IPhone For Musicians For Dummies
Barraclough Iterative Design for Approachable, Mobile-Based Collaborative Electronic Music Instruments

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant