KR20210013621A - 음악 생성기 - Google Patents

음악 생성기 Download PDF

Info

Publication number
KR20210013621A
KR20210013621A KR1020207037226A KR20207037226A KR20210013621A KR 20210013621 A KR20210013621 A KR 20210013621A KR 1020207037226 A KR1020207037226 A KR 1020207037226A KR 20207037226 A KR20207037226 A KR 20207037226A KR 20210013621 A KR20210013621 A KR 20210013621A
Authority
KR
South Korea
Prior art keywords
loops
music
content
music content
rule set
Prior art date
Application number
KR1020207037226A
Other languages
English (en)
Other versions
KR102459109B1 (ko
Inventor
에드워드 발라싸니안
패트릭 허칭스
Original Assignee
에이미 인코퍼레이티드
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 에이미 인코퍼레이티드 filed Critical 에이미 인코퍼레이티드
Priority to KR1020227036657A priority Critical patent/KR102505818B1/ko
Publication of KR20210013621A publication Critical patent/KR20210013621A/ko
Application granted granted Critical
Publication of KR102459109B1 publication Critical patent/KR102459109B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/0008Associated control or indicating means
    • G10H1/0025Automatic or semi-automatic music composition, e.g. producing random music, applying rules from music theory or modifying a musical piece
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/68Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/16Sound input; Sound output
    • G06F3/165Management of the audio stream, e.g. setting of volume, audio stream path
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data
    • 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
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/02Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/101Music Composition or musical creation; Tools or processes therefor
    • G10H2210/125Medley, i.e. linking parts of different musical pieces in one single piece, e.g. sound collage, DJ mix
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/101Music Composition or musical creation; Tools or processes therefor
    • G10H2210/145Composing rules, e.g. harmonic or musical rules, for use in automatic composition; Rule generation algorithms therefor
    • 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/155Musical effects
    • 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
    • G10H2220/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/155User input interfaces for electrophonic musical instruments
    • G10H2220/351Environmental parameters, e.g. temperature, ambient light, atmospheric pressure, humidity, used as input for musical purposes
    • 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
    • G10H2220/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/155User input interfaces for electrophonic musical instruments
    • G10H2220/441Image sensing, i.e. capturing images or optical patterns for musical purposes or musical control purposes
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/075Musical metadata derived from musical analysis or for use in electrophonic musical instruments
    • G10H2240/081Genre classification, i.e. descriptive metadata for classification or selection of musical pieces according to style
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/075Musical metadata derived from musical analysis or for use in electrophonic musical instruments
    • G10H2240/085Mood, i.e. generation, detection or selection of a particular emotional content or atmosphere in a musical piece
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/121Musical 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/131Library retrieval, i.e. searching a database or selecting a specific musical piece, segment, pattern, rule or parameter set
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/121Musical 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/145Sound library, i.e. involving the specific use of a musical database as a sound bank or wavetable; indexing, interfacing, protocols or processing therefor
    • 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
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/131Mathematical functions for musical analysis, processing, synthesis or composition
    • G10H2250/211Random number generators, pseudorandom generators, classes of functions therefor
    • 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
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/541Details of musical waveform synthesis, i.e. audio waveshape processing from individual wavetable samples, independently of their origin or of the sound they represent
    • G10H2250/641Waveform 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)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Acoustics & Sound (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Library & Information Science (AREA)
  • Databases & Information Systems (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

음악 생성기
본 발명은 오디오 엔지니어링에 관한 것으로, 특히 음악 콘텐츠 생성에 관한 것이다.
스트리밍 음악 서비스는 일반적으로 인터넷을 통해 사용자에게 노래를 제공한다. 사용자는 이러한 서비스에 가입하고 웹 브라우저 또는 애플리케이션을 통해 음악을 스트리밍할 수 있다. 이러한 서비스의 예로는 PANDORA, SPOTIFY, GROOVESHARK 등이 있다. 종종, 사용자는 스트리밍할 음악 장르 또는 특정 아티스트를 선택할 수 있다. 사용자는 일반적으로 (예를 들어, 별점 평가 또는 좋아요/싫어요 시스템을 사용하여) 노래를 평가할 수 있으며, 일부 음악 서비스는 이전 평가를 기반으로 사용자에게 스트리밍되는 노래를 맞춤화할 수 있다. 스트리밍 서비스 실행 비용(스트리밍된 각 노래에 대한 로열티 지불을 포함할 수 있음)은 일반적으로 사용자 구독 비용 및/또는 노래들 간에 재생되는 광고로 충당된다.
곡 선택은 라이선스 계약 및 특정 장르에 대해 작성된 곡 수에 따라 제한될 수 있다. 사용자는 특정 장르의 동일한 노래를 듣는 것에 지칠 수 있다. 또한, 이러한 서비스는 사용자의 취향, 환경, 행동 등에 맞게 음악을 맞춤화하지 않을 수 있다.
도 1은 일부 실시예에 따라 다수의 상이한 유형의 입력에 기초하여 음악 콘텐츠를 생성하는 예시적인 음악 생성기 모듈을 예시하는 다이어그램이다.
도 2는 일부 실시예에 따라 출력 음악 콘텐츠를 생성하기 위한 사용자 상호 작용을 위한 다수의 애플리케이션을 갖는 시스템의 예시적인 개요를 도시하는 블록도이다.
도 3은 일부 실시예에 따라 이전에 작곡된 음악에 기초하여 규칙을 생성하는 예시적인 규칙 세트 생성기를 나타내는 블록도이다.
도 4는 일부 실시예에 따른 예시적인 아티스트 그래픽 사용자 인터페이스(GUI)를 나타내는 블록도이다.
도 5는 일부 실시예에 따라 하나 이상의 상이한 유형의 악기에 대한 규칙 세트를 포함하는, 다수의 상이한 유형의 입력에 기초하여 음악 콘텐츠를 생성하는 예시적인 음악 생성기 모듈을 예시하는 다이어그램이다.
도 6a 내지 6b는 일부 실시예에 따라 예시적인 저장된 규칙 세트를 도시하는 블록도이다.
도 7은 일부 실시예에 따라 비디오에 대한 음악 콘텐츠를 출력하는 예시적인 음악 생성기 모듈을 나타내는 블록도이다.
도 8은 일부 실시예에 따라 실시간으로 비디오에 대한 음악 콘텐츠를 출력하는 예시적인 음악 생성기 모듈을 나타내는 블록도이다.
도 9a 내지 도 9b는 일부 실시예에 따른 예시적인 그래픽 사용자 인터페이스를 도시하는 블록도이다.
도 10은 일부 실시예에 따른 신경망을 구현하는 예시적인 음악 생성기 시스템을 나타내는 블록도이다.
도 11은 일부 실시예에 따른 음악 콘텐츠의 예시적인 빌드업 섹션을 예시하는 다이어그램이다.
도 12는 일부 실시예에 따라 음악 콘텐츠의 섹션들을 정렬하기 위한 예시적인 기술을 예시하는 다이어그램이다.
도 13은 일부 실시예에 따라 음악 콘텐츠를 자동으로 생성하기 위한 예시적인 방법을 예시하는 흐름도이다.
본 명세서는 다양한 실시예에 대한 참조를 포함하며, 이는 본 발명이 하나의 특정 구현예를 참조하도록 의도된 것이 아니라 첨부된 청구 범위를 포함하는 본 발명의 사상 내에 속하는 실시예의 범위를 참조하는 것을 의도한다. 특정 특징들, 구조들 또는 특성들은 본 발명과 일치하는 임의의 적절한 방식으로 결합될 수 있다.
본 발명 내에서, 상이한 엔티티("유닛", "회로", 기타 구성요소 등으로 다양하게 지칭될 수 있음)는 하나 이상의 작업 또는 동작을 수행하도록 "구성된" 것으로 설명되거나 청구될 수 있다. 이러한 표현 방식, 즉 [하나 이상의 작업을 수행]하도록 구성된 엔티티는 구조(즉, 전자 회로와 같은 물리적인 것)를 지칭하기 본원에서 위해 사용된다. 보다 구체적으로, 이러한 표현 방식은 이러한 구조가 동작 중에 하나 이상의 작업을 수행하도록 구성되어 있음을 나타내는 데 사용된다. 이러한 구조가 현재 동작하지 않는 경우에도 일부 작업을 수행하도록 "구성"된다고 할 수 있다. "예측 큐 맵을 생성하도록 구성된 자원 협상자 모듈"은, 해당 장치가 현재 사용되지 않는 경우(예를 들어, 그의 배터리가 자신에게 연결되지 않은 경우)에도 동작 중에 이러한 기능을 수행하는 모듈을 포함하기 것으로 의도된다. 따라서, 일부 작업을 수행하도록 "구성된" 것으로 설명되거나 인용된 엔티티는 이러한 작업을 구현하기 위해 실행 가능한 장치, 회로, 프로그램 인스트럭션을 저장하는 메모리 등과 같은 물리적인 것을 의미한다. 이러한 문구는 본 명세서에서 무형의 것을 가리키는 데 사용되지 않는다.
용어 "하도록 구성됨"은 "하도록 구성 가능"을 의미하지 않는다. 예를 들어, 프로그래밍되지 않은 모바일 컴퓨팅 장치는 일부 특정 기능을 수행하도록 "구성된" 것으로 간주되지 않지만, 이는 해당 기능을 수행하도록 "구성 가능"할 수 있다. 적절한 프로그래밍 후에, 모바일 컴퓨팅 장치는 해당 기능을 수행하도록 구성될 수 있다.
첨부된 청구 범위에서 구조가 하나 이상의 작업을 수행하도록 "구성"된다고 언급하는 것은 해당 청구항 구성요소에 대해서 35 U.S.C. § 112(f)를 초래하지 않도록 명시적으로 의도된다. 따라서, 출원된 본 출원서의 청구 범위는 기능식 기재 청구항을 갖는 것으로 해석되지 않는다. 출원인이 심사 중에 섹션 112(f)를 초래하기를 원하는 경우, [기능을 수행하기 위한] "수단"이라는 표현을 사용하여 청구항 구성요소를 인용할 것이다.
본원에서 사용된 용어 "에 기반하여"는 결정에 영향을 미치는 하나 이상의 인자를 설명하는 데 사용된다. 이러한 용어는 추가 인자들이 해당 결정에 영향을 미칠 수 있다는 가능성을 배제하지 않는다. 즉, 결정은 지정된 인자만을 기반으로하거나 지정된 인자 및 기타 지정되지 않은 인자를 기반으로 할 수 있다. "B를 기반으로 A 결정한다"라는 문구를 고려해보자. 이 문구는 B가 A를 결정하는 데 사용되거나 A의 결정에 영향을 미치는 인자임을 지정한다. 이러한 문구는 A의 결정이 C와 같은 다른 인자를 기반으로 할 수도 있다는 것을 배제하지 않는다. 이러한 문구는 또한 A가 B에만 기초하여 결정되는 실시예를 포함하도록 의도된다. 본 명세서에서 사용되는 바와 같이, "에 기반하여"이라는 문구는 "에 적어도 부분적으로 기반하여"라는 문구와 동의어이다.
그 전체가 본 명세서에서 참고로서 포함된 2013 년 8 월 16 일 출원된 미국 특허 출원 번호 13/969,372(현재, 미국 특허 8,812,144)는 하나 이상의 음악적 속성에 기초하여 음악 콘텐츠를 생성하는 기술을 논의한다. '372 출원의 정의사항들과 본 발명의 나머지 부분 사이에 인식된 상충에 근거하여 해석이 이루어진 경우, 본 발명이 적용되도록 의도된다. 음악적 속성은 사용자에 의해 입력되거나 주변 소음, 조명 등과 같은 환경 정보에 기초하여 결정될 수 있다. '372 출원은 저장된 루프 및/또는 트랙을 선택하거나 새로운 루프/트랙을 생성하고, 선택된 루프/트랙을 계층화하여 출력 음악 콘텐츠를 생성하는 기술을 논의한다.
본 발명은 전반적으로 커스텀 음악 콘텐츠를 생성하기 위한 시스템에 관한 것이다. 목표 음악 속성은 선언적일 수 있으며, 이로써 사용자가 생성될 음악에 대한 하나 이상의 목표를 지정하고 규칙 엔진이 이러한 목표를 달성하기 위해 루프를 선택하고 결합한다. 시스템은 예를 들어 루프의 일부만 사용하도록 커팅하거나 오디오 필터를 적용하여 루프에 대한 사운드를 변경함으로써 루프를 수정할 수도 있다. 아래에서 설명하는 다양한 기술은 다양한 상황에 대해 보다 관련성이 높은 사용자 맞춤 음악을 제공하고, 특정 사운드에 따라 음악을 생성하는 것을 용이하게 하며, 사용자가 음악이 생성되는 방식을 더 많이 제어할 수 있도록 하고, 하나 이상의 특정 목표를 달성하는 음악을 생성하고, 다른 콘텐츠과 함께 실시간으로 음악을 생성할 수 있다.
일부 실시예에서, 컴퓨터 학습은 특정 아티스트 또는 음악 유형에 대한 "그래머(grammar)"(예를 들어, 규칙 세트)를 생성하는 데 사용된다. 예를 들어, 아티스트의 스타일을 사용하여 목표 음악 속성을 달성하기 위한 일련의 규칙을 결정하기 위해 이전 작곡이 사용될 수 있다. 그런 다음, 이러한 규칙 세트를 사용하여 해당 아티스트의 스타일로 맞춤 음악을 자동으로 생성할 수 있다. 규칙 세트에는 "특정 아티스트의 사운드를 달성하기 위해 이러한 유형의 루프를 함께 결합"과 같은 명시적인 사용자가 이해할 수 있는 규칙이 포함될 수 있거나, 이러한 규칙 세트는 사용자가 규칙에 액세스할 수 없는 경우에, 작곡 규칙을 내부적으로 구현하는 기계 학습 엔진을 위한 파라미터로서, 다른 방식으로 인코딩될 수 있다. 일부 실시예에서, 규칙은 아래에서 더 상세히 논의되는 바와 같이 확률적이다.
일부 실시예에서, 음악 생성기는 상이한 유형의 루프에 대해 다수의 상이한 규칙 세트를 사용하여 구현될 수 있다. 예를 들어, 특정 악기(예를 들어, 드럼 루프,베이스 루프, 멜로디 루프, 리듬 기타 루프 등)에 해당하는 루프 세트가 저장될 수 있다. 그런 다음, 각 규칙 세트는 해당 세트 중 어느 루프를 선택할지를 평가하며 전체 구성에서 다른 규칙 세트와 결합할 시기를 평가할 수 있다. 또한, 마스터 규칙 세트를 사용하여 개별 규칙 세트의 출력들을 조율할 수 있다.
일부 실시예에서, 규칙 엔진은 비디오 및/또는 오디오 데이터에 기초하여 음악을 생성하는 데 사용된다. 예를 들어, 음악 생성기는 영화가 재생되는 동안에도 영화의 사운드 트랙을 자동으로 생성할 수 있다. 또한, 예를 들어, 문화, 언어, 인구 통계학 등에 기초하여 상이한 청취자에게 상이한 점수가 제공될 수 있다. 일부 실시예에서, 음악 생성기는 예를 들어 청중에서 원하는 감정을 얻기 위해 실시간으로 규칙 세트를 조절하기 위해 환경 피드백을 사용할 수 있다. 이러한 방식으로, 특정 환경 목표를 달성하도록 규칙 세트를 조절할 수 있다.
본 발명은 먼저, 도 1 및 도 2를 참조하여 예시적인 음악 생성기 모듈 및 다수의 애플리케이션을 갖는 전체 시스템 구성을 설명한다. 특정 아티스트 또는 음악 스타일에 대한 규칙 집합을 생성하는 기술은 도 3과 도 4를 참조하여 설명한다. 서로 다른 루프 세트(예를 들어, 기기)에 대해 서로 다른 규칙 세트를 사용하는 기술은 도 5 및 도 6A 및 도 6B를 참조하여 설명한다. 비디오 데이터를 기반으로 음악을 생성하는 기술은 도 7과 도 8을 참조하여 설명한다. 도 9A 및 도 9B는 예시적인 애플리케이션 인터페이스를 보여준다.
일반적으로, 개시된 음악 생성기는 루프 데이터, 메타 데이터(예를 들어, 루프를 설명하는 정보) 및 메타 데이터에 기초하여 루프를 결합하기 위한 그래머를 포함한다. 생성기는 음악 경험의 메타 데이터 및 대상 특성을 기반으로 루프를 식별하는 규칙을 사용하여 음악 경험을 생성할 수 있다. 규칙, 루프 및/또는 메타 데이터를 추가하거나 수정함으로써 생성할 수 있는 경험 세트를 확장하도록 구성할 수 있다. 조절은 수동으로 수행될 수 있다(예를 들어, 아티스트가 새 메타 데이터를 추가). 또는 음악 생성기가 소정의 환경 및 원하는 목표/특성 내에서 음악 경험을 모니터링할 때 규칙/루프/메타 데이터를 증가시킬 수 있다. 예를 들어, 음악 생성기가 군중을 보고 사람들 이 웃고 있는 것을 본다면 규칙 및/또는 메타 데이터를 보강하여 특정 루프 조합이 사람들을 웃게 만든다는 사실을 알 수 있다. 마찬가지로, 금전 등록기 판매가 증가하면, 규칙 생성기는 해당 피드백을 사용하여 판매 증가와 관련된 관련 루프에 대한 규칙/메타 데이터를 늘릴 수 있다.
본 명세서에서 사용되는 용어, "루프"는 특정 시간 간격 동안 단일 악기에 대한 사운드 정보를 의미한다. 루프는 반복되는 방식으로 재생될 수 있지만(예를 들어, 30 초 루프는 연속으로 4 번 재생되어 2 분 분량의 음악 콘텐츠를 생성할 수 있음), 예를 들어 반복되지 않고 한 번 재생될 수도 있다. 루프와 관련하여 논의된 다양한 기술은 여러 악기를 포함하는 오디오 파일을 사용하여 수행될 수도 있다.
예시적인 음악 생성기 개요
도 1은 일부 실시예에 따른 예시적인 음악 생성기를 도시하는 다이어그램이다. 예시된 실시예에서, 음악 생성기 모듈(160)은 다수의 상이한 소스로부터 다양한 정보를 수신하고 출력 음악 콘텐츠(140)를 생성한다.
예시된 실시예에서, 모듈(160)은 저장된 루프(들) 및 저장된 루프(들)에 대한 대응하는 속성(들)(110)에 액세스하고 루프들을 결합하여 출력 음악 콘텐츠(140)를 생성한다. 특히, 음악 생성기 모듈(160)은 그들의 속성에 기초하여 루프를 선택하고 타겟 음악 속성(130) 및/또는 환경 정보(150)에 기초하여 루프를 결합한다. 일부 실시예에서, 환경 정보는 타겟 음악 속성(130)을 결정하기 위해 간접적으로 사용된다. 일부 실시예에서, 타겟 음악 속성(130)은 예를 들어 원하는 에너지 레벨, 분위기, 다수의 파라미터 등을 지정함으로써 사용자에 의해 명시적으로 지정된다. 타겟 음악 속성(130)의 예는 에너지, 복잡성 및 다양성을 포함하지만, 예를 들어, 보다 구체적인 속성(예를 들어, 저장된 트랙의 속성에 대응함)이 또한 지정될 수 있다. 일반적으로 말하면, 상위 레벨의 타겟 음악 속성이 지정되면, 출력 음악 콘텐츠를 생성하기 전에 시스템에 의해 하위 레벨의 특정 음악 속성이 결정될 수 있다.
복잡성은 작곡에 포함된 여러 루프 및/또는 악기를 의미할 수 있다. 에너지는 다른 속성과 관련되거나 다른 속성과 직교할 수 있다. 예를 들어, 키나 템포를 변경하면 에너지에 영향을 미칠 수 있다. 그러나, 소정의 템포 및 키에 대해, 악기 유형을 조절하거나(예를 들어, 높은 햇(hat) 또는 백색 잡음 추가), 복잡성, 볼륨 등을 조절하여 에너지를 변경할 수 있다. 다양성은 시간이 지남에 따라 생성되는 음악의 변화량을 의미할 수 있다. (예를 들어, 소정의 템포 및 키에 대해 상이한 트랙들을 선택함으로써) 다른 음악적 속성의 정적인 세트에 대해 다양성이 생성되거나, (예를 들어, 보다 큰 다양성이 바람직한 경우에 템포 및 키를 더 자주 변경함으로써) 시간에 따라서 음악 속성을 변경함으로써 다양성이 생성될 수 있다. 일부 실시예에서, 목표 음악 속성은 다차원 공간에 존재하는 것으로 생각될 수 있고 음악 생성기 모듈(160)은 예를 들어 환경 변화 및/또는 사용자 입력에 기초하여 필요한 경우 코스 수정과 함께 해당 공간을 통해 천천히 이동할 수 있다.
일부 실시예에서, 루프와 함께 저장된 속성은 다음을 포함하는 하나 이상의 루프에 대한 정보를 포함한다: 템포, 볼륨, 에너지, 다양성, 스펙트럼, 엔벨로프, 변조, 주기, 상승 및 감쇠 시간, 노이즈, 아티스트, 악기, 테마 등. 일부 실시예에서, 루프는 하나 이상의 루프의 세트가 특정 루프 유형(예를 들어, 하나의 악기 또는 하나의 악기 유형)에 특정되도록 분할된다는 점에 유의한다.
예시된 실시예에서, 모듈(160)은 저장된 규칙 세트(들)(120)에 액세스한다. 저장된 규칙 세트(들)(120)는, 일부 실시예에서, (출력 음악의 복잡성에 대응할 수 있는) 동시에 재생되도록 오버레이할 루프의 수에 대한 규칙을 지정하고, 루프 또는 음악 프레이즈 간에 천이할 때에 어느 메이저/마이너 키 진행을 사용할 것인지를 지정하고, 목표 음악 속성을 달성하기 위해 함께 사용할 악기(예를 들어, 서로 친화력이 있는 악기)를 지정할 수 있다. 달리 말하면, 음악 생성기 모듈(160)은 저장된 규칙 세트(들)(120)를 사용하여 타겟 음악 속성(및/또는 타겟 환경 정보)에 의해 정의된 하나 이상의 선언적 목표를 달성한다. 일부 실시예에서, 음악 생성기 모듈(160)은 반복적인 출력 음악을 피하기 위해 의사 랜덤성을 도입하도록 구성된 하나 이상의 의사 난수 생성기를 포함한다.
일부 실시예에서, 환경 정보(150)는 조명 정보, 주변 소음, 사용자 정보(얼굴 표정, 신체 자세, 활동 수준, 움직임, 피부 온도, 특정 활동 수행, 의복 유형 등), 온도 정보, 지역의 구매 활동, 시간, 요일, 년도, 참석자 수, 날씨 상태 등 중 하나 이상을 포함한다. 일부 실시예에서, 음악 생성기 모듈(160)은 환경 정보를 수신/처리하지 않는다. 일부 실시예에서, 환경 정보(130)는 다른 모듈에 의해서 수신되고, 이 모듈이 환경 정보에 기초하여 타겟 음악 속성(130)을 결정한다. 타겟 음악 속성(130)은 또한 다른 유형의 콘텐츠, 예를 들어, 비디오 데이터에 기초하여 도출될 수 있다. 일부 실시예에서, 환경 정보는 예를 들어, 하나 이상의 환경 목표를 달성하기 위해 하나 이상의 저장된 규칙 세트(들)(120)를 조절하는 데 사용된다. 이와 유사하게, 음악 생성기는 하나 이상의 루프에 대해 저장된 속성을 조절하기 위해 환경 정보를 사용할 수 있으며, 이로써, 예를 들어, 이러한 루프가 특히 관련이 있는 타겟 음악 속성 또는 타겟 청중 특성을 표시할 수 있다.
본 명세서에서 사용된 바와 같이, 용어 "모듈"은 지정된 동작을 수행하도록 구성된 회로 또는 다른 회로(예를 들어, 프로세서)에게 지정된 동작을 수행하도록 지시하는 정보(예를 들어, 프로그램 인스트럭션)를 저장하는 물리적 비일시적 컴퓨터 판독 가능 매체를 의미한다. 모듈은 하드 와이어 회로 또는 동작을 수행하기 위해 하나 이상의 프로세서에 의해 실행 가능한 프로그램 인스트럭션이 저장된 메모리를 포함하여, 여러 방식으로 구현될 수 있다. 하드웨어 회로는 예를 들어, 맞춤형 VLSI(very large scale integration) 회로 또는 게이트 어레이, 로직 칩, 및 트랜지스터와 같은 기성품 반도체 또는 기타 개별 부품을 포함할 수 있다. 모듈은 또한 필드 프로그래밍 가능 게이트 어레이, 프로그래밍 가능 어레이 로직, 프로그래밍 가능 로직 장치 등과 같은 프로그래밍 가능 하드웨어 장치로 구현될 수 있다. 모듈은 또한 지정된 동작을 수행하도록 실행 가능한 프로그램 인스트럭션을 저장하는 비일시적 컴퓨터 판독 가능 매체의 임의의 적절한 형태일 수 있다.
본 명세서에서 사용된 바와 같이, "음악 콘텐츠"라는 문구는 음악 자체(음악의 가청 표현)뿐만 아니라 음악을 재생하는 데 사용할 수 있는 정보를 모두 지칭한다. 따라서, 저장 매체(예를 들어, 이로 제한되지 않지만, 컴팩트 디스크, 플래시 드라이브 등) 상에 파일로서 녹음된 노래는 음악 콘텐츠의 예이다. 이 녹음된 파일 또는 기타 전자적 표현을 (예를 들어, 스피커를 통해) 출력하여 생성된 사운드도 음악 콘텐츠의 예이다.
"음악"이라는 용어에는 악기에서 생성된 소리와 보컬 사운드를 포함하여 잘 이해된 의미가 포함된다. 따라서, 음악에는 예를 들어, 악기 연주 또는 녹음, 아카펠라 연주 또는 녹음, 악기와 음성을 모두 포함하는 연주 또는 녹음이 포함된다. 당업자는 "음악"이 모든 보컬 녹음을 포함하지 않는다는 것을 인식할 것이다. 리듬이나 운율과 같은 음악적 속성을 포함하지 않는 저작물(예를 들어, 연설물, 뉴스 캐스트 및 오디오북)은 음악이 아니다.
하나의 음악 "콘텐츠"는 적절한 방식으로 다른 음악 콘텐츠와 구별될 수 있다. 예를 들어, 제 1 노래에 해당하는 디지털 파일은 제 1 음악 콘텐츠를 나타낼 수 있고, 제 2 노래에 해당하는 디지털 파일은 제 2 음악 콘텐츠를 나타낼 수 있다. "음악 콘텐츠"라는 문구는 또한 소정의 음악 작품 내에서 특정 간격들을 서로 구별하는 데 사용될 수 있으므로, 동일한 노래의 상이한 부분들이 다른 음악 콘텐츠로 간주될 수 있다. 유사하게, 소정의 음악 작품 내의 상이한 트랙들(예를 들어, 피아노 트랙, 기타 트랙)은 또한 상이한 음악 콘텐츠에 대응할 수 있다. 생성된 음악의 잠재적으로 끝이 없는 스트림의 맥락에서 "음악 콘텐츠"라는 문구는 스트림의 일부(예를 들어, 몇 마디 또는 몇 분)를 지칭하는 데 사용될 수 있다.
본 발명의 실시예들에 의해 생성된 음악 콘텐츠는 이전에 생성된 적이 없는 음악적 요소들의 조합인 "새로운 음악 콘텐츠"일 수 있다. 관련(하지만 보다 광범위한) 개념인 "원작 음악 콘텐츠"는 아래에 자세히 설명되어 있다. 이 용어의 설명을 용이하게 하기 위해, 음악 콘텐츠 생성의 인스턴스와 관련된 "제어 엔티티"의 개념이 설명된다. "원작 음악 콘텐츠"라는 문구와 달리, "새로운 음악 콘텐츠"라는 문구는 제어 엔티티의 개념을 의미하지 않는다. 따라서, 새로운 음악 콘텐츠는 임의의 엔테티나 컴퓨터 시스템에서 이전에, 생성된 적이 없는 음악 콘텐츠를 의미한다.
개념적으로, 본 발명은 컴퓨터 생성 음악 콘텐츠의 특정 인스턴스를 제어하는 것으로 일부 "엔티티"를 지칭한다. 그러한 엔티티는 컴퓨터 생성 콘텐츠에 해당할 수 있는 모든 법적 권리(예를 들어, 저작권)를 소유한다(해당 권리가 실제로 존재할 수 있는 범위까지). 일 실시예에서, 컴퓨터로 구현된 음악 생성기를 생성(예를 들어, 다양한 소프트웨어 루틴을 코딩)하거나 컴퓨터로 구현된 음악 생성의 특정 인스턴스를 동작시키는(예를 들어, 입력을 공급)하는 개인이 제어 엔티티가 될 것이다. 다른 실시예에서, 컴퓨터로 구현된 음악 생성기는 소프트웨어 제품, 컴퓨터 시스템 또는 컴퓨팅 장치의 형태와 같이 법적 엔티티(예를 들어, 기업 또는 기타 비즈니스 조직)에 의해 생성될 수 있다. 일부 경우에, 그러한 컴퓨터 구현 음악 생성기는 많은 클라이언트에 배포될 수 있다. 이 음악 생성기의 배포와 관련된 라이선스 조건에 따라, 제어 엔티티는 다양한 예들에서, 제작자, 배포자 또는 클라이언트일 수 있다. 그러한 명시적인 법적 계약이 없는 경우, 컴퓨터로 구현된 음악 생성기의 제어 엔티티는 컴퓨터로 음악 콘텐츠를 생성하는 특정 인스턴스를 용이하게하는 (예를 들어, 입력을 제공하여 이를 동작시키는) 엔티티이다.
본 발명의 의미 내에서, 제어 엔티티에 의한 "원작 음악 콘텐츠"의 컴퓨터 생성은, 1) 제어 엔티티 또는 타인에 의해 이전에, 생성된 적이 없는 음악적 요소의 조합 및 2) 이전에 생성되었지만 제어 엔티티에 의해 첫 번째 인스턴스에서 생성된 음악적 요소들의 조합을 지칭한다. 콘텐츠 유형 1)은 본 명세서에서 "신규 음악 콘텐츠"라고 하며, "새로운 음악 콘텐츠"의 정의와 유사하지만, "신규 음악 컨텐츠"의 정의는 "제어 엔티티"의 개념을 지칭하지만, "새로운 음악 콘텐츠"의 정의와 그렇지 않는다는 점에서 차이가 난다. 한편, 콘텐츠 유형 2)는 본 명세서에서 "독점 음악 콘텐츠"라고 한다. 이 문맥에서, "독점적"이라는 용어는 콘텐츠의 묵시적 법적 권리를 의미하는 것이 아니라(해당 권리가 존재할 수 있을 지라도), 음악 콘텐츠가 원래 제어 엔티티에 의해 생성되었음을 나타내는 데 사용된다. 따라서, 제어 엔티티에 의해 이전에 원래 생성된 음악 콘텐츠를 "재생하는" 제어 엔티티는 본 발명에서 "원작 음악 콘텐츠의 생성"을 구성한다. 특정 제어 엔티티와 관련하여 "비원작 음악 콘텐츠"는 해당 제어 엔티티에 대한 "원작 음악 콘텐츠"가 아닌 음악 콘텐츠이다.
일부 음악 콘텐츠에는 하나 이상의 다른 음악 콘텐츠의 음악 구성 요소가 포함될 수 있다. 이러한 방식으로 음악 콘텐츠를 생성하는 것을 음악 콘텐츠를 "샘플링"하는 것이라고 하며 특정 음악 작품, 특히 특정 음악 장르에서 일반적이다. 이러한 음악 콘텐츠는 본 명세서에서 "샘플링된 구성 요소를 갖는 음악 콘텐츠", "2차적 음악 콘텐츠" 또는 다른 유사한 용어를 사용하여 지칭된다. 대조적으로, 샘플링된 구성 요소를 포함하지 않는 음악 콘텐츠는 본 명세서에서 "샘플링된 구성 요소가 없는 음악 콘텐츠", "비-2차적 음악 콘텐츠" 또는 다른 유사한 용어를 사용하여 지칭된다.
이러한 용어를 적용할 때, 특정 음악 콘텐츠가 충분한 입도 수준으로 환원되면, 이 음악 콘텐츠가 2차적이라는 주장이 제기될 수 있다(실제로는 모든 음악 콘텐츠가 2차적임). 본 발명에서, "2차적" 및 "비-2차적"이라는 용어는 이러한 의미로 사용되지 않는다. 음악 콘텐츠의 컴퓨터 생성과 관련하여, 이러한 컴퓨터 생성이 제어 엔티티가 아닌 다른 엔티티의 기존 음악 콘텐츠로부터의 구성 요소의 일부를 선택하는 경우(예를 들어, 컴퓨터 프로그램은 생성되는 음악 콘텐츠에 포함하기 위해 인기 아티스트 작품의 오디오 파일의 특정 부분을 선택하는 경우), 이러한 컴퓨터 생성은 2차적인 것으로 간주된다. 반면에, 음악 콘텐츠의 컴퓨터 생성은, 이러한 컴퓨터 생성이 그러한 기존 콘텐츠의 그러한 구성 요소를 사용하지 않는 경우에는, 비-2차적이라고 한다(그리고, 비-2차적 음악 콘텐츠를 생성한다). "원작 음악 콘텐츠"의 일부는 2차적 음악 콘텐츠일 수 있고 다른 일부는 비-2차적 음악 콘텐츠일 수 있다.
용어 "2차적"은 미국의 저작권법에서 사용되는 "2차적 저작물"이라는 용어보다 본 발명 내에서 더 넓은 의미를 갖는 것으로 의도된다는 점에 유의한다. 예를 들어, 2차적 음악 콘텐츠는 미국 저작권법에서 2차적 저작물일 수도 있고 아닐 수도 있다. 본 발명에서 용어 "2차적"는 부정적인 의미를 전달하려는 것이 아니다; 이는 특정 음악 콘텐츠가 다른 작품에서 콘텐츠의 일부를 "차용"하는지 여부를 나타내는 데 사용된다.
또한, "새로운 음악 콘텐츠", "신규 음악 콘텐츠", "원작 음악 콘텐츠"라는 문구는 음악 요소들의 기존의 조합과 사소한 차이만 있는 음악 콘텐츠를 포함하려는 의도가 아니다. 예를 들어, 기존 음악 작품의 몇 개의 음표를 변경하는 것만으로 본 명세서에서 사용되는 구절과 같은 새롭거나 신규하거나 독창적인 음악 콘텐츠가 생성되지 않는다. 마찬가지로, 기존 음악 작품의 키 또는 템포를 단지 변경하거나 (예를 들어, 이퀄라이저 인터페이스를 사용하여) 주파수의 상대적 강도를 조절하는 것만으로는 새롭거나 신규하거나 독창적인 음악 콘텐츠가 생성되지 않는다. 더욱이, 이러한 구절들, 새롭고 신규하고 독창적인 음악 콘텐츠는 원작 콘텐츠와 원작이 아닌 콘텐츠 사이의 경계가 되는 음악 콘텐츠를 포함하는 것도 아니다. 이 대신에, 이러한 용어는 제어 엔티티에 대한 저작권 보호를 받을 자격이 있는 음악 콘텐츠(이하 "보호 가능한" 음악 콘텐츠라고 함)를 포함하여 의심할 여지없이 명백하게 독창적인 음악 콘텐츠를 포함한다. 또한, 본 명세서에서 사용되는 "사용 가능한" 음악 콘텐츠라는 용어는 제어 엔티티가 아닌 다른 엔티티의 저작권을 위반하지 않는 음악 콘텐츠를 의미한다. 새로운 또는 원작 음악 콘텐츠는 종종 보호가능하며 사용 가능하다. 이는 음악 콘텐츠의 복제를 방지하고 음악 콘텐츠에 대한 로열티를 지불하는 데 유리할 수 있다.
본 명세서에서 논의된 다양한 실시예가 규칙 기반 엔진을 사용하지만, 다양한 다른 유형의 컴퓨터 구현 알고리즘이 본 명세서에서 논의되는 임의의 컴퓨터 학습 및/또는 음악 생성 기술에 사용될 수 있다. 그러나, 규칙 기반 접근 방식은 음악 맥락에서 특히 효과적일 수 있다.
예시적인 음악 시스템에서 사용될 수 있는 애플리케이션, 저장 요소 및 데이터의 개요
음악 생성기 모듈은 다수의 상이한 애플리케이션, 모듈, 저장 요소 등과 상호 작용하여 음악 콘텐츠를 생성한다. 예를 들어, 최종 사용자는 다양한 유형의 컴퓨팅 장치(예를 들어, 모바일 장치, 데스크톱 컴퓨터, DJ 장비 등)에 대해 여러 유형의 애플리케이션 중 하나를 설치할 수 있다. 마찬가지로, 기업 사용자에게 다른 유형의 응용 프로그램을 제공할 수 있다. 음악 콘텐츠를 생성하는 동안 애플리케이션과 상호 작용하면 음악 생성기가 외부 정보를 수신하고 이를 사용하여 대상 음악 속성을 결정하거나 음악 콘텐츠를 생성하는 데 사용되는 하나 이상의 규칙 세트를 업데이트할 수 있다. 하나 이상의 애플리케이션과 상호 작용하는 것 외에도, 음악 생성기 모듈은 규칙 세트를 수신하고 규칙 세트를 업데이트하도록 다른 모듈과 상호 작용할 수 있다. 마지막으로, 음악 생성기 모듈은 하나 이상의 저장 요소에 저장된 하나 이상의 규칙 세트, 루프 및/또는 생성된 음악 콘텐츠에 액세스할 수 있다. 또한, 음악 생성기 모듈은 로컬이거나 네트워크(예를 들어, 클라우드 기반)를 통해 액세스할 수 있는 하나 이상의 저장 요소 내에 위에 나열된 항목 중 임의의 항목을 저장할 수 있다.
도 2는 다수의 상이한 소스로부터의 입력에 기초하여 출력 음악 콘텐츠를 생성하기 위한 시스템의 예시적인 개요를 나타내는 블록도이다. 예시된 실시예에서, 시스템(200)은 규칙 모듈(210), 사용자 애플리케이션(220), 웹 애플리케이션(230), 기업 애플리케이션(240), 아티스트 애플리케이션(250), 아티스트 규칙 생성기 모듈(260), 생성된 음악의 저장부(270) 및 외부 입력들(280)을 포함한다.
예시된 실시예에서, 사용자 애플리케이션(220), 웹 애플리케이션(230) 및 기업 애플리케이션(240)은 외부 입력(280)을 수신한다. 일부 실시예에서, 외부 입력(280)은 환경 입력, 타겟 음악 속성, 사용자 입력, 센서 입력 등을 포함한다. 일부 실시예에서, 사용자 애플리케이션(220)은 사용자의 모바일 장치에 설치되고 사용자가 규칙 모듈(210)과 상호 작용/통신하도록 하게 하는 그래픽 사용자 인터페이스(GUI)를 포함한다. 일부 실시예에서, 웹 애플리케이션(230)은 사용자 장치에 설치되지 않지만, 사용자 장치의 브라우저 내에서 실행되도록 구성되고 웹 사이트를 통해 액세스될 수 있다. 일부 실시예에서, 기업 애플리케이션(240)은 음악 생성기와 상호 작용하기 위해 대규모 엔티티에 의해 사용되는 애플리케이션이다. 일부 실시예에서, 애플리케이션(240)은 사용자 애플리케이션(220) 및/또는 웹 애플리케이션(230)과 조합하여 사용된다.일부 실시예에서, 애플리케이션(240)은 주변 환경에 관한 정보를 수집하기 위해 하나 이상의 외부 하드웨어 장치 및/또는 센서와 통신한다.
예시된 실시예에서, 규칙 모듈(210)은 출력 음악 콘텐츠를 생성하기 위해 사용자 애플리케이션(220), 웹 애플리케이션(230) 및 기업 애플리케이션(240)과 통신한다. 일부 실시예에서, 음악 생성기(160)는 규칙 모듈(210)에 포함된다. 규칙 모듈(210)은 애플리케이션(220, 230, 240) 중 하나에 포함될 수 있거나 서버에 설치되어 네트워크를 통해 액세스될 수 있다는 점에 유의한다. 일부 실시예에서, 애플리케이션(220, 230 및 240)은 규칙 모듈(210)로부터 생성된 출력 음악 콘텐츠를 수신하고 이 콘텐츠가 재생되게 한다. 일부 실시예에서, 규칙 모듈(210)은 예를 들어, 타겟 음악 속성 및 환경 정보에 대하여 애플리케이션(220, 230 및 240)으로부터의 입력을 요청하고, 이 데이터를 사용하여 음악 콘텐츠를 생성할 수 있다.
예시된 실시예에서, 저장된 규칙 세트(들)(120)는 규칙 모듈(210)에 의해 액세스된다. 일부 실시예에서, 규칙 모듈(210)은 애플리케이션(220, 230 및 240)과의 통신에 기초하여 저장된 규칙 세트(들)(120)를 수정 및/또는 업데이트한다. 일부 실시예에서, 규칙 모듈(210)은 출력 음악 콘텐츠를 생성하기 위해 저장된 규칙 세트(들)(120)에 액세스한다. 예시된 실시예에서, 저장된 규칙 세트(들)(120)는 아래에서 더 상세히 논의되는 아티스트 규칙 생성기 모듈(260)로부터의 규칙을 포함할 수 있다.
예시된 실시예에서, 아티스트 애플리케이션(250)은 아티스트 규칙 생성기 모듈(260)(예를 들어, 동일한 애플리케이션의 일부일 수 있거나 클라우드 기반일 수 있음)과 통신한다. 일부 실시예에서, 아티스트 애플리케이션(250)은 아티스트가 예를 들어 이전 작곡에 기초하여 자신의 특정 사운드에 대한 규칙 세트를 생성하도록 하게 한다. 이러한 기능은 아래에서, 도 3 및 도 4를 참조하여 자세히 설명한다. 일부 실시예에서, 아티스트 규칙 생성기 모듈(260)은 규칙 모듈(210)에 의해 사용하기 위해 생성된 아티스트 규칙 세트를 저장하도록 구성된다. 사용자는 특정 애플리케이션을 통해 출력 음악을 생성하기 위해 사용하기 전에 특정 아티스트로부터 규칙 세트를 구매할 수 있다. 특정 아티스트에 대한 규칙 세트를 서명 팩이라고할 수 있다.
예시된 실시예에서, 저장된 루프(들) 및 대응하는 속성(들)(110)은 출력 음악 콘텐츠를 생성하기 위해 트랙을 선택하고 결합하기 위한 규칙을 적용할 때 모듈(210)에 의해 액세스된다. 예시된 실시예에서, 규칙 모듈(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)에 대한 지식은 정확도를 개선하고 이러한 분해에 대한 처리 요건을 감소시킬 수 있다. 분해 결과를 기반으로, 규칙 생성기 모듈은 아티스트가 일반적으로 작곡하는 방법에 대한 규칙 세트를 결정한다. 일부 실시예에서, 결정된 규칙 세트를 아티스트 서명 팩이라고한다. 예를 들어, 규칙은 아티스트가 일반적으로 함께 결합하는 악기, 아티스트가 일반적으로 키, 아티스트 복잡성 및 다양성 등을 변경하는 방법을 지정할 수 있다. 규칙은 이진법(예를 들어, 참 또는 거짓)이거나 통계적으로 결정될 수 있다(예를 들어, 아티스트 A가 A 키에서 E 키로 전환하는 시간의 25 %, 아티스트 A가 A 키에서 D 키로 전환하는 시간의 60 %). 통계 규칙에 따라, 음악 생성기는 시간에 따라서 지정된 백분율 매칭을 시도할 수 있다.
일부 실시예에서, 아티스트는 이전에 작곡된 음악에 대해, 어떤 음악이 특정 타겟 음악 속성과 일치하는지 표시할 수 있다. 예를 들어, 일부 작곡물들은 높거나 낮은 에너지, 높거나 낮은 복잡성, 행복, 슬픔 등일 수 있다. 분류된 작곡물의 이러한 분류 및 처리에 기초하여, 규칙 생성기 모듈(260)은 아티스트가 특정 타겟 속성에 대해 일반적으로 작곡하는 방법에 대한 규칙을 결정할 수 있다(예를 들어, 아티스트 A는 더 큰 에너지를 달성하기 위해 템포를 증가시키는 반면 아티스트 B는 복잡성을 추가하는 경향이 있음).
예시된 실시예에서, 아티스트 인터페이스(330)는 아티스트 규칙 생성기 모듈(260)과 통신한다. 일부 실시예에서, 모듈(260)은 인터페이스(330)를 통해 아티스트로부터 입력을 요청한다. 일부 실시예에서, 아티스트는 인터페이스(330)를 통해 아티스트 규칙 생성기 모듈(260)에 피드백을 제공한다. 예를 들어, 모듈(260)은 생성된 아티스트 규칙 세트 내의 하나 이상의 규칙에 대해 아티스트로부터 피드백을 요청할 수 있다. 이로써, 아티스트가 추가 규칙을 추가하고 생성된 규칙을 수정하는 등의 작업을 할 수 있다. 예를 들어, 인터페이스는 "아티스트 A가 A 키에서 E 키로 전환하는 시간의 25 %"라는 규칙을 표시하고 아티스트가 해당 규칙을 삭제하거나 변경할 수 있도록 하게 할 수 있다(예를 들어, 아티스트가 이러한 전환은 해당 시간의 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를 열 수 있음).
예시된 실시예에서, 디스플레이(460)는 아티스트에게 그들의 규칙 세트(예를 들어, 원본 세트 및/또는 아티스트에 의해 수정된 세트)를 보여준다. 다른 실시예에서, 디스플레이(460)는 또한 본 명세서에서 개시된 다양한 다른 정보를 디스플레이할 수 있다.
일부 실시예에서, 규칙 세트 생성기는 특정 사용자에 대한 규칙 세트를 생성할 수 있다. 예를 들어, 사용자가 선호하는 음악은 특정 사용자에 대한 하나 이상의 규칙 세트를 결정하기 위해 분해될 수 있다. 사용자 선호도는 명시적인 사용자 입력, 청취 이력, 선호하는 아티스트의 표시 등에 기초할 수 있다.
서로 다른 유형의 루프에 대해 서로 다른 규칙 세트를 가진 예시적인 음악 생성기 모듈
도 5는 다수의 대응하는 규칙 세트를 사용하여 다수의 루프 세트에 액세스하도록 구성된 음악 생성기 모듈을 나타내는 다이어그램이다. 일부 실시예에서, (예를 들어, 상이한 악기에 대한) 다수의 상이한 규칙 세트를 사용하는 것은 더 큰 변형, 보다 정확한 음악의 타겟 속성 매칭, 실제 음악가와의 보다 큰 유사성 등을 제공할 수 있다.
예시된 실시예에서 정보(510)는 다수의 루프 유형에 대한 루프 세트를 포함한다. 루프는 동일한 악기, 동일한 유형의 악기, 동일한 유형의 사운드, 동일한 분위기, 유사한 속성 등에 대한 세트들로 그룹화될 수 있다. 위에서 설명한 것처럼 각 루프의 속성도 유지될 수 있다.
예시된 실시예에서, 규칙 세트(520)는 루프 세트 중 각각에 대응하고 타겟 음악 속성(130) 및/또는 환경 정보(150)에 기초하여 이들 루프를 선택 및/또는 결합하기 위한 규칙을 지정한다. 이러한 규칙 세트는 선택할 루프와 참여 시기를 결정하여 즉흥 연주 세션에서 아티스트와 유사하게 조율될 수 있다. 일부 실시예에서, 하나 이상의 마스터 규칙 세트는 다른 규칙 세트로부터의 출력을 선택 및/또는 결합하도록 동작할 수 있다.
도 6a는 일부 실시예에 따른, 상이한 루프 유형 A-N(612)에 대한 다수의 규칙 세트를 예시하는 블록도이다. 도 6b는 다수의 루프 세트에 대한 규칙 세트(612) 및 마스터 규칙 세트(614)를 예시하는 블록도이다.
예를 들어, 특정 유형의 드럼(예를 들어, 루프 유형 A)에 대한 루프 세트를 고려해보자. 대응하는 규칙 세트(512)는 템포, 피치, 복잡도 등과 같은 타겟 음악 속성에 기초하여 루프를 선택할 때 우선 순위를 매길 다양한 루프 파라미터를 나타낼 수 있다. 대응하는 규칙 세트(612)는 또한 (예를 들어, 원하는 에너지 레벨에 기초하여) 드럼 루프를 제공할지 여부를 나타낼 수도 있다. 또한, 마스터 규칙 세트(614)는 출력 스트림에 실제로 통합하기 위해 드럼 규칙 세트로부터 선택된 루프의 서브세트를 결정할 수 있다. 예를 들어, 마스터 규칙 세트(614)는 상이한 유형의 드럼에 대한 다수의 루프 세트 중에서 선택할 수 있다(이로써, 대응하는 규칙 세트에 의해 제안된 일부 선택된 루프가 실제로 출력 음악 콘텐츠(140)로 결합되지 않을 수 있음). 유사하게, 마스터 규칙 세트(614)는 예를 들어, 특정 지정된 에너지 레벨 아래의 드럼 루프를 포함하지 않거나, 다른 지정된 에너지 레벨 위의 하나 이상의 드럼 루프를 언제나 포함하도록 표시할 수 있다.
또한, 마스터 규칙 세트(614)는 타겟 음악 속성에 기초하여 결합하기 위해 규칙 세트(612)에 의해 선택된 루프 출력의 수를 나타낼 수 있다. 예를 들어, 대상 음악 속성을 기반으로, (예를 들어, 규칙 세트들 중 3 개가 이 경우에 루프를 제공하지 않기로 결정하기 때문에 총 10 개의 규칙 세트 중에서) 7 개의 규칙 세트가 해당 루프 세트로부터의 루프를 제공하기로 결정하는 경우, 마스터 규칙 세트(614)는 (예를 들어, 다른 2 개의 규칙 세트로부터의 루프를 무시하거나 폐기함으로써) 제공된 루프들 중 5 개만을 결합하기로 선택할 수 있다. 또한, 마스터 규칙 세트(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) 둘 모두에 기초하여 음악 생성기 모듈에 의해 생성된다. 일부 실시예에서, 음악 콘텐츠(140)는 비디오 데이터(712)만을 기반으로 생성된다.
일부 실시예에서, 음악 콘텐츠는 비디오에 대한 사운드 트랙으로 생성된다. 예를 들어, 하나 이상의 비디오 및/또는 오디오 속성에 기초하여 비디오에 대한 사운드 트랙이 생성될 수 있다. 본 예에서, 비디오로부터의 다음과 같은 비디오 속성 중 하나 이상을 사용하여 비디오에 대한 규칙 세트를 업데이트할 수 있다: 음성 톤(예를 들어, 비디오 내의 캐릭터가 화가 났는지 여부), 문화(예를 들어, 해당 장면에서 어떤 악센트, 의복 등이 사용되었는지), 장면 내의 물체/소품, 장면의 색상/어두움, 장면들 간 전환 빈도, 오디오 데이터가 나타내는 음향 효과(예를 들어, 폭발, 대화, 움직임 소리) 등. 개시된 기술은 임의의 유형의 비디오(예를 들어, 30 초 클립, 단편 영화, 광고, 스틸 사진, 스틸 사진의 슬라이드 쇼 등)에 대한 음악 콘텐츠를 생성하는 데 사용될 수 있다.
다른 예에서, 하나 이상의 청중에 대해 여러 개의 서로 다른 사운드 트랙이 생성된다. 예를 들어, 시청자 연령에 따라 서로 다른 두 명의 시청자를 위해 음악 콘텐츠가 생성될 수 있다. 예를 들어, 30 세 이상의 성인을 대상으로 하는 제 1 규칙 세트가 적용될 수 있는 반면, 16 세 이하의 어린이를 대상으로 하는 제 2 규칙 세트가 적용될 수 있다. 본 예에서, 제 1 청중을 위해 생성된 음악 콘텐츠는 제 2 청중을 위해 생성된 음악 콘텐츠보다 성숙할 수 있다. 유사한 기술을 사용하여 다음과 같은 다양한 상이한 상황에 대해 다른 음악 콘텐츠를 생성할 수 있다: 예를 들어, 하루 중 다른 시간, 비디오를 표시하는 데 사용되는 디스플레이 장비, 사용 가능한 오디오 장비, 표시되는 국가, 언어 등.
규칙 세트에 대한 실시간 업데이트를 갖는 비디오 콘텐츠용 예시적인 음악 생성기
일부 실시예에서, 규칙 기반 기계 학습을 사용하여 비디오에 대한 음악 콘텐츠를 생성하는 것은 환경 정보에 기초하여 (예를 들어, 음악 콘텐츠가 기반으로 하는) 규칙 세트의 실시간 조절을 실현할 수 있다. 이러한 음악 콘텐츠를 생성하는 방법은 동일한 비디오 콘텐츠의 상이한 청중들에 대해 상이한 음악들을 생성할 수 있다.
도 8은 일부 실시예에 따라 규칙 세트에 대한 실시간 조절으로 비디오에 대한 음악 콘텐츠를 출력하도록 구성된 예시적인 음악 생성기 모듈(160)을 나타내는 블록도이다.
예시된 실시예에서, 환경 정보(150)는 비디오의 디스플레이 동안 음악 생성기 모듈(160)에 입력된다. 예시된 실시예에서, 음악 생성기 모듈은 환경 정보(810)에 기초하여 규칙 세트(들)의 실시간 조절을 수행한다. 일부 실시예에서, 환경 정보(150)는 비디오를 시청하는 청중으로부터 획득된다. 일부 실시예에서, 정보(150)는 다음 중 하나 이상을 포함한다: 얼굴 표정(예를 들어, 찡그린 얼굴, 미소 짓기, 주의를 기울임 등), 신체적 움직임(예를 들어, 박수 치기, 안절부절 못함, 주의를 기울임, 등), 언어적 표현(예를 들어, 웃음, 한숨, 울음 등), 인구 통계, 연령, 조명, 주변 소음, 시청자 수 등.
다양한 실시예에서, 출력 음악 콘텐츠(140)는 청중이 비디오를 시청하는 것과 동시에, 조절된 규칙 세트에 기초하여 재생된다. 이러한 기술은 동시에 여러 다른 청중에게 표시되는 비디오에 대한 고유한 음악 콘텐츠를 생성할 수 있다. 예를 들어, 같은 극장에 있는 두 명의 청중이 서로 다른 화면에서 같은 비디오를 보는 경우, 완전히 서로 다른 음악 콘텐츠를 들을 수 있다. 이러한 예의 유사한 애플리케이션에는 비행기, 지하철, 스포츠 바 등의 다양한 청중이 포함된다. 또한, 사용자가 개인용 오디오 장치(예를 들어, 헤드폰)를 가지고 있는 경우, 각 개별 사용자에 대해 사용자 지정 사운드 트랙이 생성될 수 있다.
개시된 기술은 또한 청중에서 특정한 원하는 감정을 강조하는데 사용될 수 있다. 예를 들어, 공포 영화의 목표는 청중을 놀라게 하는 것일 수 있다. 청중의 반응에 따라, 규칙 세트를 동적으로 조절하여 강도, 공포 등을 높일 수 있다. 유사하게, 슬프고/행복한 장면의 경우, (예를 들어, 원하는 감정을 높이기 위한 목표로) 목표 청중이 실제로 슬픈지 행복한 지에 따라 규칙 세트가 조절될 수 있다. 일부 실시예에서, 비디오 제작자는 원하는 유형의 음악을 보다 정확하게 생성하기 위해 음악 생성기 모듈에 입력될 수 있는 특정 타겟 속성으로 비디오의 특정 부분에 태그를 지정할 수 있다. 일반적으로 말하면, 일부 실시예에서, 음악 생성기는 청중에 의해 표시된 속성이 비디오 및/또는 오디오 콘텐츠의 이전에 결정된 속성에 대응하는지 여부에 기초하여 규칙 세트를 업데이트한다. 일부 실시예에서, 이러한 기술은 청중 피드백이 규칙 세트 또는 타겟 파라미터를 업데이트하는 데 사용되는 적응형 청중 피드백 제어 루프를 제공한다.
일부 실시예에서, 비디오는 실시간으로 규칙 세트를 조절하기 위해 다수의 청중을 위해 재생될 수 있다. 환경 데이터는 기록되고, 최종 규칙 집합을 선택하는 데 사용될 수 있다(예를 들어, 원하는 목표 청중 속성과 가장 근접하게 매칭되는 청중에 대한 규칙 세트를 기반으로 선택됨). 이 규칙 세트는 최종 규칙 세트에 대한 실시간 업데이트 없이, 비디오에 대한 음악을 정적으로 또는 동적으로 생성하는 데 사용할 수 있다.
예시적인 사용자 GUI 및 기업 GUI
도 9a 및 도 9b는 일부 실시예에 따른 그래픽 사용자 인터페이스를 예시하는 블록도이다.
예시된 실시예에서, 도 9a는 사용자 애플리케이션(910)에 의해 디스플레이된 GUI를 포함하고 도 9a는 기업 애플리케이션(930)에 의해 디스플레이된 GUI를 포함한다. 일부 실시예에서, 도 9a 및 도 9b에 표시된 GUI는 애플리케이션이 아닌 웹 사이트에 의해 생성된다. 다양한 실시예에서, 다이얼(예를 들어, 볼륨, 에너지 등을 제어하기 위함), 버튼, 노브, 디스플레이 박스(예를 들어, 사용자에게 업데이트된 정보 제공) 중 하나 이상을 포함하는 다양한 적절한 요소 중 임의의 것이 디스플레이될 수 있다.
도 9a에서, 사용자 애플리케이션(910)은 하나 이상의 아티스트 팩을 선택하기 위한 섹션(912)을 포함하는 GUI를 표시한다. 일부 실시예에서, 팩(914)은 대안 적으로 또는 추가적으로 테마 팩 또는 특정 행사(예를 들어, 결혼식, 생일 파티, 졸업식 등)를 위한 팩을 포함할 수 있다. 일부 실시예에서, 섹션(912)에 도시된 팩의 수는 한 번에 섹션(912)에 디스플레이될 수 있는 수보다 많다. 따라서, 일부 실시예에서, 사용자는 하나 이상의 팩(914)을 보기 위해 섹션(912)에서 위 및/또는 아래로 스크롤한다. 일부 실시예에서, 사용자는 자신이 듣기 원하는 출력 음악 콘텐츠의 기반이 된 아티스트 팩(914)을 선택할 수 있다. 일부 실시예에서, 아티스트 팩은 예를 들어 구매 및/또는 다운로드될 수 있다.
예시된 실시예에서, 선택 요소(916)는 사용자가 하나 이상의 음악 속성(예를 들어, 에너지 레벨)을 조절할 수 있게 한다. 일부 실시예에서, 선택 요소(916)는 사용자가 하나 이상의 타겟 음악 속성을 추가/삭제/수정하도록 하게 한다.
예시된 실시예에서, 선택 요소(920)는 사용자가 장치(예를 들어, 모바일 장치)가 목표 음악적 속성을 결정하기 위해 환경을 청취하게 할 수 있게 한다. 일부 실시예에서, 장치는 사용자가 선택 요소(920)를 선택한 후 하나 이상의 센서(예를 들어, 카메라, 마이크, 온도계 등)를 사용하여 환경에 대한 정보를 수집한다. 일부 실시예에서, 애플리케이션(910)은 또한 사용자가 선택 요소(920)를 선택할 때 애플리케이션에 의해 수집된 환경 정보에 기초하여 하나 이상의 아티스트 팩을 선택하거나 제안한다.
예시된 실시예에서, 선택 요소(922)는 사용자가 새로운 규칙 세트를 생성하기 위해 다수의 아티스트 팩을 결합할 수 있게 한다. 일부 실시예에서, 새로운 규칙 세트는 사용자가 동일한 아티스트에 대해 하나 이상의 팩을 선택하는 것에 기초한다. 다른 실시예에서, 새로운 규칙 세트는 사용자가 상이한 아티스트들에 대해 하나 이상의 팩을 선택하는 것에 기초한다. 예를 들어, 사용자는 상이한 규칙 세트에 대한 가중치를 표시할 수 있으며, 이로써, 예를 들어, 가중치가 높은 규칙 세트는 가중치가 낮은 규칙 세트보다 생성된 음악에 더 많은 영향을 미친다. 음악 생성기는 예를 들어, 상이한 규칙 세트로부터의 규칙들 간을 스위칭하고, 다수의 상이한 규칙 세트로부터의 규칙들에 대한 값들을 평균화함으로써, 다수의 상이한 방식으로 규칙 세트를 결합할 수 있다.
예시된 실시예에서, 선택 요소(924)는 사용자가 하나 이상의 규칙 세트 내의 규칙(들)을 수동으로 조절할 수 있게 한다. 예를 들어, 일부 실시예에서, 사용자는 음악 콘텐츠를 생성하는 데 사용되는 규칙 세트에서 하나 이상의 규칙을 조절함으로써 더 세분화된 레벨에서 생성되게 음악 콘텐츠를 조절하기를 원한다. 일부 실시예에서, 이로써, 애플리케이션(910)의 사용자가, 출력 음악 콘텐츠를 생성하기 위해 음악 생성기에 의해 사용되는 규칙 세트를 조절하기 위해, 도 9a의 GUI에 디스플레이된 제어사항을 사용함으로써, 자신의 디스크 자키(DJ)가 되도록 하게 한다. 이들 실시예는 또한 타겟 음악 속성의 보다 세밀한 제어를 실현할 수 있다.
도 9b에서, 기업 애플리케이션(930)은 아티스트 팩(914)을 갖는 아티스트 팩 선택 섹션(912)을 또한 포함하는 GUI를 디스플레이한다. 예시된 실시예에서, 애플리케이션(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와 같은 형식의 로우(raw) 오디오는 다수의 주파수 빈에서 악기 분류, 피치 트랜스크립션, 비트 타이밍, 템포, 파일 길이 및 오디오 진폭과 같은 정량화 가능한 음악 속성에 대해 분석될 수 있다. 분석 모듈(1010)은 또한 예를 들어 아티스트 또는 기계 청취에 의한 수동 태깅에 기초하여 루프에 대한 더 추상적인 음악 속성 또는 분위기 기술사항들을 저장할 수 있다. 예를 들어, 분위기는 소정의 루프에 대한 각 범주의 값 범위와 함께 다수의 개별 범주를 사용하여 정량화될 수 있다.
예를 들어, 루프 A가 분석되어, G2, Bb2, D2 음표가 사용되고, 제 1 비트는 파일에서 6 밀리초에서 시작하며, 템포는 122bpm이며, 파일 길이는 6483 밀리초이며, 루프는 5 개의 주파수 빈에 걸쳐 0.3, 0.5, 0.7, 0.3 및 0.2의 정규화된 진폭 값을 갖는다고 결정된 것을 고려해보자. 아티스트는 다음의 분위기 값을 사용하여 루프를 "펑크 장르"로 분류할 수 있다.
초월 평화 기쁨 슬픔 긴장
높음 높음 낮음 중간 없음 낮음
분석 모듈(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)은 도 12를 참조하여 아래에서 더 상세히 논의되는 바와 같이, 인트로, 빌드업, 드롭, 브레이크다운 및 브리지와 같은 상이한 유형의 섹션을 사용하도록 구성될 수 있다. 또한, 각 섹션은 예를 들어, 트랜지션-인 서브섹션, 메인 콘텐츠 서브섹션 및 트랜지션-아웃 서브섹션과 같은, 섹션 전체에 걸쳐서 음악이 어떻게 변경되는지를 정의하는 다수의 서브섹션을 포함할 수 있다.
섹션 정렬기(1024)는 일부 실시예에서, 정렬 규칙에 따라 서브섹션들을 구성한다. 예를 들어, 일 규칙은 트랙을 점진적으로 추가함으로써 트랜지션-인되도록 지정할 수 있다. 또 다른 규칙은 트랙 세트에서 게인(gain)을 점진적으로 증가시킴으로써 트랜지션-인되도록 지정할 수 있다. 또 다른 규칙은 멜로디를 만들기 위해 보컬 루프를 자르도록 지정할 수 있다. 일부 실시예에서, 루프 라이브러리 내의 루프가 트랙에 추가될 확률은 섹션 또는 서브섹션 내에서의 현재 위치, 다른 트랙 상에서 시간적으로 겹치는 루프들, 및 (생성된 음악 콘텐츠에 대한 타겟 속성을 결정하는 데 사용될 수 있는) 분위기 변수와 같은 사용자 입력 파라미터의 함수이다. 예를 들어, 기계 학습을 기반으로 계수를 조절함으로써 상기 함수가 조절될 수 있다.
일부 실시예에서, 기법 구현 모듈(1020)은 예를 들어, 아티스트에 의해 지정되거나 특정 아티스트의 작곡물을 분석함으로써 결정되는 규칙들을 추가함으로써 섹션 정렬을 용이하게 하도록 구성된다. "기법"은 특정 아티스트가 테크니컬 수준에서 정렬 규칙을 구현하는 방식을 설명할 수 있다. 예를 들어, 트랙들을 점진적으로 추가하여 트랜지션-인되도록 지정하는 정열 규칙의 경우, 일 기법은 드럼, 베이스, 패드, 보컬 순으로 트랙들을 추가하도록 지시할 수 있고, 다른 기법은 베이스, 패드, 보컬, 드럼의 순으로 트랙을 추가하도록 지시할 수 있다. 유사하게, 멜로디를 만들기 위해 보컬 루프를 자르도록 지정하는 정렬 규칙의 경우, 기법은 매 두 번째 비트에서 보컬을 자르고, 다음의 잘린 섹션으로 이동하기 전에 루프의 잘린 섹션을 두 번 반복하도록 지시할 수 있다.
예시된 실시예에서, 루프 선택 모듈(1028)은 섹션 정렬기(1024)가 섹션에 포함시킬 루프를, 정렬 규칙 및 기법에 따라, 선택한다. 섹션이 완료되면, 대응하는 연주 스크립트가 생성되어 연주 모듈(1030)로 전송될 수 있다. 연주 모듈(1030)은 다양한 입도에서 연주 스크립트 부분을 수신할 수 있다. 예를 들어, 이는 특정 길이의 연주에 대한 전체 연주 스크립트, 각 섹션에 대한 연주 스크립트, 각 서브섹션에 대한 연주 스크립트 등을 포함할 수 있다. 일부 실시예에서, 정렬 규칙, 기법 또는 루프 선택은 통계적으로 구현되며, 예를 들어, 상이한 방식들이 상이한 시간 비율을 사용한다.
예시된 실시예에서, 연주 모듈(1030)은 필터 모듈(1031), 효과 모듈(1032), 믹스 모듈(1033), 마스터 모듈(1034) 및 수행 모듈(1035)을 포함한다. 일부 실시예에서, 이들 모듈은 연주 스크립트를 처리하고 오디오 출력 장치(1040)에 의해 지원되는 포맷으로 음악 데이터를 생성한다. 연주 스크립트는 재생될 루프, 재생되어야하는 시기, 모듈(1032)에 의해 적용되어야 하는 효과(예를 들어, 트랙별 또는 서브섹션별), 모듈(1031)에 의해 적용되어야 하는 필터, 등을 지정할 수 있다.
예를 들어, 연주 스크립트는 특정 트랙 상에서 0에서 5000 밀리초까지 1000에서 20000Hz까지 램핑하는 저역 통과 필터를 적용하도록 지정할 수 있다. 또 다른 예로, 연주 스크립트는 특정 트랙 상에서 5000에서 15000 밀리초까지 0.2 웨트(wet) 설정으로 리버브(reverb)를 적용하도록 지정할 수 있다.
일부 실시예에서, 믹스 모듈(1033)은 결합되는 트랙에 대해 자동화된 레벨 제어를 수행하도록 구성된다. 일부 실시예에서, 믹스 모듈(1033)은 결합된 트랙의 주파수 도메인 분석을 사용하여 너무 많거나 너무 적은 에너지를 갖는 주파수를 측정하고 믹스에도 상이한 주파수 대역들의 트랙들에 대한 이득을 적용한다. 일부 실시예에서, 마스터 모듈(1034)은 수행 모듈(1035)에 의한 최종 포맷팅을 위한 데이터를 생성하기 위해 다중 대역 압축, 등화(EQ) 또는 제한 절차를 수행하도록 구성된다. 도 10의 실시예는 사용자 입력 또는 다른 피드백 정보에 따라 다양한 출력 음악 콘텐츠를 자동으로 생성할 수 있는 반면, 기계 학습 기술은 시간이 지남에 따라 개선된 사용자 경험을 실현할 수 있다.
도 11은 일부 실시예에 따른 음악 콘텐츠의 예시적인 빌드업 섹션을 예시하는 다이어그램이다. 도 10의 시스템은 정렬 규칙과 기법을 적용하여 이러한 섹션을 구성할 수 있다. 예시된 예에서, 빌드업 섹션에는 보컬, 패드, 드럼,베이스 및 화이트 노이즈에 대한 세 개의 서브섹션과 별도의 트랙이 포함되어 있다.
예시된 예에서, 트랜지션-인 서브섹션은 드럼 루프 A를 포함하며, 이는 메인 콘텐츠 서브섹션에 대해서도 반복된다. 트랜지션-인 서브섹션은 베이스 루프 A도 포함한다. 도시된 바와 같이, 섹션에 대한 이득은 낮게 시작하여 섹션 전체에 걸쳐 선형적으로 증가한다(단, 비선형 증가 또는 감소가 고려될 수도 있다). 예시된 예에서, 메인 콘텐츠 및 트랜지션-아웃 서브섹션에는 다양한 보컬, 패드, 드럼 및 베이스 루프가 포함된다. 전술한 바와 같이, 섹션들을 자동으로 시퀀싱하고, 섹션들을 정렬하고, 기법을 구현하기 위한 개시된 기술은, 다양한 사용자 조절 가능한 파라미터에 기초하여 출력 음악 콘텐츠의 거의 무한 스트림을 생성할 수 있다.
일부 실시예에서, 컴퓨터 시스템은 도 11과 유사한 인터페이스를 표시하고 아티스트가 섹션들을 구성하는 데 사용되는 기법들을 지정할 수 있도록 한다. 예를 들어, 아티스트는 작곡 모듈을 위한 코드 내로 파싱될될 수 있는 도 11과 같은 구조를 생성할 수 있다.
도 12는 일부 실시예에 따라, 음악 콘텐츠의 섹션을 정렬하기 위한 예시적인 기술을 예시하는 다이어그램이다. 예시된 실시예에서, 생성된 스트림(1210)은 각각이 시작 서브섹션(1222), 전개 서브섹션(1224) 및 트랜지션 서브섹션(1226)을 포함하는 다수의 섹션(1220)을 포함한다. 예시된 예에서, 각 섹션/서브섹션의 다수의 유형이 점선으로 연결된 테이블에 표시된다. 예시된 실시예에서, 원형 요소는 정렬 도구의 예이며, 이는 아래에서 논의되는 특정 기법을 사용하여 추가로 구현될 수 있다. 도시된 바와 같이, 다양한 작곡 결정사항은 통계적 백분율에 따라 의사 무작위로 수행될 수 있다. 예를 들어, 서브섹션의 유형, 특정 유형 또는 서브섹션에 대한 정렬 도구 또는 정렬 도구를 구현하는 데 사용되는 기법이 통계적으로 결정될 수 있다.
예시된 예에서, 소정의 섹션(1220)은 인트로, 빌드업, 드롭, 브레이크다운 및 브리지의 5 가지 유형 중 하나이며, 각각은 해당 섹션에 대한 강도를 제어하는 상이한 기능을 갖는다. 본 예에서, 상태 서브섹션은 느린 빌드, 갑작스러운 시프트 또는 미니멀과 같은 세 가지 유형 중 하나이며, 각각은 상이한 거동을 갖는다. 본 예에서, 전개 서브섹션은 축소, 변환 또는 증가의 세 가지 유형 중 하나이다. 본 예에서, 트랜지션 서브섹션은 컬랩스(collapse), 램프(ramp) 또는 힌트의 세 가지 유형 중 하나이다. 상이한 유형의 섹션 및 서브섹션은 규칙에 기초하여 선택될 수 있거나, 예를 들어 의사 무작위로 선택될 수 있다.
예시된 예에서, 상이한 서브섹션 유형에 대한 거동은 하나 이상의 정렬 도구를 사용하여 구현된다. 느린 빌드의 경우, 본 예에서는, 시간의 40 %만큼, 저역 통과 필터가 적용되고, 시간의 80 %만큼, 레이어가 추가된다. 변환 전개 서브섹션의 경우, 본 예에서는, 시간의 25 %만큼, 루프가 잘린다(chopped). 원샷, 드롭 아웃 비트, 리버브 적용, 패드 추가, 테마 추가, 레이어 제거 및 화이트 노이즈를 포함한 다양한 추가 정렬 도구가 표시된다. 이들 예는 예시의 목적으로 포함되며 본 발명 내용의 범위를 제한하려는 의도가 아니다. 또한, 예시를 용이하게 하기 위해, 이러한 예는 완전하지 않을 수 있다(예를 들어, 실제 정렬은 일반적으로 훨씬 더 많은 정렬 규칙을 포함할 수 있음).
일부 실시예에서, 하나 이상의 정렬 도구는 특정 기법(아티스트의 콘텐츠의 분석에 기초하여 결정되거나 아티스트에 의해서 특정될 수 있음)을 사용하여 구현될 수 있다. 예를 들어, 원샷은 사운드 효과 또는 보컬을 사용하여 구현할 수 있으며, 루프 쵸핑(loop chopping)은 스터터(stutter) 또는 촙-인-하프(chop-in-half) 기법을 사용하여 구현할 수 있으며, 레이어 제거는 신스(synth)를 제거하거나 보컬을 제거하여 구현할 수 있으며, 화이트 노이즈는 램프 또는 펄스 기능 등을 사용하여 구현될 수 있다. 일부 실시예에서, 소정의 정렬 도구에 대해 선택된 특정 기법은 통계 함수에 따라 선택될 수 있다(예를 들어, 시간의 30 %만큼, 레이어 제거는 신스를 제거할 수 있고 시간의 70%만큼, 소정의 아티스트에 대한 보컬을 제거할 수 있음). 위에서 논의한 바와 같이, 정렬 규칙 또는 기법은 예를 들어 기계 학습을 사용하여 기존의 작곡물들을 분석함으로써 자동으로 결정될 수 있다.
예시적 방법
도 13은 일부 실시예에 따른, 출력 음악 콘텐츠를 생성하기 위한 방법을 예시하는 흐름도이다. 도 13에 도시된 방법은 특히 본 명세서에서 개시된 컴퓨터 회로, 시스템, 장치, 요소 또는 구성 요소 중 임의의 것과 함께 사용될 수 있다. 다양한 실시예에서, 도시된 방법 요소들 중 일부는 동시에 수행되거나, 도시된 것과 다른 순서로 수행될 수 있거나 생략될 수 있다. 추가 방법 요소들도 원하는대로 수행할 수 있다.
1310에서, 예시된 실시예에서, 컴퓨터 시스템은 음악 콘텐츠 세트에 액세스한다. 예를 들어, 음악 콘텐츠의 세트는 특정 아티스트의 앨범, 노래, 전집 등일 수 있다. 다른 예로서, 음악 콘텐츠 세트는 특정 장르, 이벤트 유형, 분위기 등과 연관될 수 있다.
1320에서, 예시된 실시예에서, 시스템은 음악 콘텐츠 세트 내의 복수의 루프의 조합을 분석하는 것에 기초하여 작곡 규칙 세트를 생성한다. 작곡 규칙은 통계적으로 지정될 수 있으며 통계 지표를 충족하기 위한 무작위 또는 의사 무작위 절차를 사용할 수 있다. 루프는 음악 콘텐츠 세트에 대해 명시적으로 제공되거나 시스템이 음악 콘텐츠 세트를 분해하여 루프를 결정할 수 있다. 일부 실시예에서, 기법 구현 모듈(1026)로의 직접적인 아티스트 입력에 추가하여 또는 이에 대신하여, 분석 모듈(1010)은 음악 콘텐츠 세트(규칙 세트 또는 그래머로도 지칭될 수 있음)를 구성하는 데 사용되는 기법들을 생성할 수 있고 작곡 모듈(1020)은 새로운 음악 콘텐츠를 생성하기 위해 이러한 기법들을 사용할 수 있다. 일부 실시예에서, 정렬 규칙은 요소(1320)에서 결정될 수 있다.
1330에서, 예시된 실시예에서, 시스템은 루프 세트로부터 루프를 선택하고 시간적으로 다수의 루프들이 중첩되도록 선택된 루프들을 결합함으로써 새로운 출력 음악 콘텐츠를 생성하며, 여기서 이러한 선택 및 결합은 작곡 규칙 세트 및 루프 세트 내의 루프의 속성에 기초하여 수행된다. 일부 실시예에서, 컴퓨팅 시스템의 상이한 장치들은 출력 음악 콘텐츠를 생성하고 작곡 규칙을 생성할 수 있음에 유의한다. 일부 실시예에서, 클라이언트 장치는 서버 시스템에 의해 제공되는 파라미터(예를 들어, 심층 신경망(1018)에 의해 생성됨)에 기초하여 출력 음악 콘텐츠를 생성한다.
일부 실시예에서, 새로운 출력 음악 콘텐츠를 생성하는 것은 하나 이상의 선택된 루프를 수정하는 것을 포함한다. 예를 들어, 시스템은 루프를 절단하고 루프에 필터를 적용하는 등의 작업을 수행할 수 있다.
일부 실시예에서, 루프 선택 및 결합은 예를 들어, 작곡 모듈(1020)에 대한 사용자 제어 입력과 같은, 타겟 음악 속성에 기초하여 수행된다. 일부 실시예에서, 다양한 시스템 파라미터는 환경 정보에 기초하여 조절될 수 있다. 예를 들어, 시스템은 (예를 들어, 심층 신경망(1018)과 같은 기계 학습 엔진을 사용하여) 환경 정보 또는 기타 피드백 정보에 기초하여 규칙/기법/그래머 자체를 조절할 수 있다. 다른 예로서, 시스템은 환경 정보에 기초하여 타겟 속성을 조절하거나 가중치를 부여할 수 있다.
특정 실시예가 위에서 설명되었지만, 이러한 실시예는 특정 특징에 대해 단일 실시예만이 설명되는 경우에도, 본 발명의 범위를 제한하려는 의도는 아니다. 본 발명에서 제공되는 특징들의 예는 달리 언급되지 않는 한 제한적이기 보다는 예시적인 것으로 의도된다. 상기 설명은 본 발명의 이점을 갖는 당업자에게 명백한 대안, 수정 및 등가물을 포함하도록 의도된다.
본 발명의 범위는 본 명세서에서 언급된 문제의 일부 또는 전부를 완화하는지 여부에 관계없이, 본 명세서에서 (명시적 또는 내포적으로) 개시된 임의의 특징 또는 특징들의 조합, 또는 이들의 임의의 일반화를 포함한다. 따라서, 이러한 특징들의 조합에 대해 본 출원(또는 우선권을 주장하는 출원)을 심사하는 동안 새로운 청구항들이 작성될 수 있다. 특히, 첨부된 청구항을 참조하면, 종속 청구항의 특징은 독립 청구항의 특징과 결합될 수 있으며, 각 독립 청구항의 특징은 첨부된 청구항에 열거된 특정 조합만이 아닌 임의의 적절한 방식으로 결합될 수 있다.

Claims (20)

  1. 컴퓨터 시스템이 음악 콘텐츠 세트에 액세스하는 단계;
    상기 컴퓨터 시스템이, 상기 음악 콘텐츠 세트 내의 복수의 루프(loop)들의 조합을 분석한 결과에 기초하여, 작곡 규칙 세트를 생성하는 단계; 및
    상기 컴퓨터 시스템이, 루프 세트로부터 루프들을 선택하고 다수의 루프들이 시간적으로 중첩되도록 상기 선택된 루프들을 결합함으로써 새로운 출력 음악 콘텐츠를 생성하는 단계로서, 상기 선택 및 결합은 상기 작곡 규칙 세트 및 상기 루프 세트 내의 루프들의 속성에 기초하여 수행되는, 상기 새로운 출력 음악 콘텐츠를 생성하는 단계;를 포함하는, 방법.
  2. 제 1 항에 있어서,
    상기 선택 및 결합은, 상기 새로운 출력 음악 콘텐츠에 대한 하나 이상의 타겟 음악 속성에 기초하여 수행되는, 방법.
  3. 제 2 항에 있어서,
    상기 새로운 출력 음악 콘텐츠가 재생되는 환경과 관련된 환경 정보에 기초하여, 상기 작곡 규칙 세트 중 적어도 하나 또는 상기 하나 이상의 타겟 음악 속성 를 조절하는 단계를 더 포함하는, 방법.
  4. 제 1 항에 있어서,
    상기 작곡 규칙 세트를 생성하는 단계는, 상기 복수의 루프들 중의 루프들에 대해 사용되는 대응하는 상이한 유형의 악기들에 대한 복수의 상이한 규칙 세트들을 생성하는 단계를 포함하는, 방법.
  5. 제 1 항에 있어서,
    상기 복수의 루프들은 상기 음악 콘텐츠 세트의 생성자에 의해 제공되는, 방법.
  6. 제 1 항에 있어서,
    상기 음악 콘텐츠 세트 내에 포함된 상이한 악기들에 대한 루프들을 생성하기 위하여 상기 음악 콘텐츠 세트를 처리함으로써 상기 복수의 루프들을 결정하는 단계를 더 포함하는, 방법.
  7. 제 1 항에 있어서,
    상기 새로운 출력 음악 콘텐츠를 생성하는 단계는, 상기 작곡 규칙 세트에 기초하여 상기 루프들 중 적어도 하나를 수정하는 단계를 더 포함하는, 방법.
  8. 제 1 항에 있어서,
    상기 작곡 규칙 세트 내의 하나 이상의 규칙은 통계적으로 특정되는, 방법.
  9. 제 1 항에 있어서,
    상기 작곡 규칙 세트 내의 적어도 하나의 규칙은 타겟 음악 속성과 하나 이상의 루프 속성 간의 관계를 특정하고,
    상기 하나 이상의 루프 속성은, 템포, 볼륨, 에너지, 다양성, 스펙트럼, 엔벨로프, 변조, 주기, 상승 시간, 감쇠 시간, 또는 노이즈 중 하나 이상을 포함하는, 방법.
  10. 제 1 항에 있어서,
    상기 음악 콘텐츠 세트는 특정 유형의 행사에 대한 콘텐츠를 포함하는, 방법.
  11. 제 1 항에 있어서,
    상기 작곡 규칙 세트를 생성하는 단계는 상기 작곡 규칙 세트를 구현하기 위해 하나 이상의 기계 학습 엔진을 훈련시키는 단계를 포함하고,
    상기 선택 및 결합은 상기 하나 이상의 기계 학습 엔진에 의해 수행되는, 방법.
  12. 제 1 항에 있어서,
    상기 작곡 규칙 세트는 특정 유형들의 루프들에 대한 다수의 규칙 세트들 및 상이한 유형의 루프들을 결합하기 위한 규칙들을 특정하는 마스터 규칙 세트를 포함하는, 방법.
  13. 동작들을 수행하도록 컴퓨팅 장치에 의해서 실행가능한 인스트럭션이 저당된 비일시적 컴퓨터-판독가능한 매체로서,
    상기 동작들은,
    음악 콘텐츠 세트에 액세스하는 동작;
    상기 음악 콘텐츠 세트 내의 복수의 루프(loop)들의 조합을 분석한 결과에 기초하여, 작곡 규칙 세트를 생성하는 동작; 및
    루프 세트로부터 루프들을 선택하고 다수의 루프들이 시간적으로 중첩되도록 상기 선택된 루프들을 결합함으로써 새로운 출력 음악 콘텐츠를 생성하는 동작으로서, 상기 선택 및 결합은 상기 작곡 규칙 세트 및 상기 루프 세트 내의 루프들의 속성에 기초하여 수행되는, 상기 새로운 출력 음악 콘텐츠를 생성하는 동작;을 포함하는, 비일시적 컴퓨터-판독가능한 매체.
  14. 제 13 항에 있어서,
    상기 선택 및 결합은, 상기 새로운 출력 음악 콘텐츠에 대한 하나 이상의 타겟 음악 속성에 기초하여 수행되는, 비일시적 컴퓨터-판독가능한 매체.
  15. 제 14 항에 있어서,
    상기 동작들은, 상기 새로운 출력 음악 콘텐츠가 재생되는 환경과 관련된 환경 정보에 기초하여, 상기 작곡 규칙 세트 중 적어도 하나 또는 상기 하나 이상의 타겟 음악 속성을 조절하는 동작을 더 포함하는, 비일시적 컴퓨터-판독가능한 매체.
  16. 제 13 항에 있어서,
    상기 작곡 규칙 세트를 생성하는 동작은, 상기 복수의 루프들 중의 루프들에 대해 사용되는 대응하는 상이한 유형의 악기들에 대한 복수의 상이한 규칙 세트들을 생성하는 동작을 포함하는, 비일시적 컴퓨터-판독가능한 매체.
  17. 제 13 항에 있어서,
    상기 동작들은, 상기 음악 콘텐츠 세트 내에 포함된 상이한 악기들에 대한 루프를 생성하도록 상기 음악 콘텐츠 세트를 처리함으로써 상기 복수의 루프들을 결정하는 동작을 더 포함하는, 비일시적 컴퓨터-판독가능한 매체.
  18. 제 13 항에 있어서,
    상기 작곡 규칙 세트 내의 적어도 하나의 규칙은 타겟 음악 속성과 하나 이상의 루프 속성 간의 관계를 특정하고,
    상기 하나 이상의 루프 속성은, 템포, 볼륨, 에너지, 다양성, 스펙트럼, 엔벨로프, 변조, 주기, 상승 시간, 감쇠 시간, 또는 노이즈 중 하나 이상을 포함하는, 비일시적 컴퓨터-판독가능한 매체.
  19. 제 13 항에 있어서,
    상기 작곡 규칙 세트를 생성하는 동작은, 상기 작곡 규칙 세트를 구현하기 위해 하나 이상의 기계 학습 엔진을 훈련시키는 동작을 포함하고,
    상기 선택 및 결합은 상기 하나 이상의 기계 학습 엔진에 의해 수행되는, 비일시적 컴퓨터-판독가능한 매체.
  20. 하나 이상의 프로세서; 및
    프로그램 인스트럭션을 저장하는 하나 이상의 메모리;를 포함하는 장치로서,
    상기 인스트럭션은 상기 하나 이상의 프로세서에 의해 실행되어,
    음악 콘텐츠 세트에 액세스하고;
    상기 음악 콘텐츠 세트 내의 복수의 루프(loop)들의 조합을 분석한 결과에 기초하여, 작곡 규칙 세트를 생성하며; 및
    루프 세트로부터 루프들을 선택하고 다수의 루프들이 시간적으로 중첩되도록 상기 선택된 루프들을 결합함으로써 새로운 출력 음악 콘텐츠를 생성하며,
    상기 선택 및 결합은 상기 작곡 규칙 세트 및 상기 루프 세트 내의 루프들의 속성에 기초하여 수행되는, 장치.
KR1020207037226A 2018-05-24 2019-05-23 음악 생성기 KR102459109B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020227036657A KR102505818B1 (ko) 2018-05-24 2019-05-23 음악 생성기

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862676150P 2018-05-24 2018-05-24
US62/676,150 2018-05-24
US16/420,456 2019-05-23
PCT/US2019/033686 WO2019226861A1 (en) 2018-05-24 2019-05-23 Music generator
US16/420,456 US10679596B2 (en) 2018-05-24 2019-05-23 Music generator

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020227036657A Division KR102505818B1 (ko) 2018-05-24 2019-05-23 음악 생성기

Publications (2)

Publication Number Publication Date
KR20210013621A true KR20210013621A (ko) 2021-02-04
KR102459109B1 KR102459109B1 (ko) 2022-10-27

Family

ID=68613471

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020237045330A KR20240007944A (ko) 2018-05-24 2019-05-23 음악 생성기
KR1020207037226A KR102459109B1 (ko) 2018-05-24 2019-05-23 음악 생성기
KR1020227036657A KR102505818B1 (ko) 2018-05-24 2019-05-23 음악 생성기
KR1020237006839A KR102621546B1 (ko) 2018-05-24 2019-05-23 음악 생성기

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020237045330A KR20240007944A (ko) 2018-05-24 2019-05-23 음악 생성기

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020227036657A KR102505818B1 (ko) 2018-05-24 2019-05-23 음악 생성기
KR1020237006839A KR102621546B1 (ko) 2018-05-24 2019-05-23 음악 생성기

Country Status (6)

Country Link
US (3) US10679596B2 (ko)
EP (1) EP3803633A1 (ko)
JP (2) JP7214852B2 (ko)
KR (4) KR20240007944A (ko)
CN (1) CN112189193A (ko)
WO (1) WO2019226861A1 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
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
CN111566724B (zh) * 2017-12-18 2023-06-27 字节跳动有限公司 模块化自动音乐制作服务器
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
CN112189193A (zh) * 2018-05-24 2021-01-05 艾米有限公司 音乐生成器
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
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
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
WO2022040410A1 (en) * 2020-08-21 2022-02-24 Aimi Inc. Comparison training for music generator
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
TWI775401B (zh) * 2021-04-22 2022-08-21 盛微先進科技股份有限公司 雙聲道之音訊處理系統及其運作方法
CN113299255A (zh) * 2021-05-13 2021-08-24 中国科学院声学研究所 基于深度神经网络和音乐元素驱动的情感音乐生成方法
KR20230033526A (ko) * 2021-09-01 2023-03-08 현대자동차주식회사 차량의 주행음 생성 장치 및 방법
CN113923517B (zh) * 2021-09-30 2024-05-07 北京搜狗科技发展有限公司 一种背景音乐生成方法、装置及电子设备
EP4195196A1 (en) * 2021-12-09 2023-06-14 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

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140052282A1 (en) * 2012-08-17 2014-02-20 Be Labs, Llc Music generator
US9471271B2 (en) * 2003-01-07 2016-10-18 Medialab Solutions Corp. Systems and methods for portable audio synthesis
WO2017087333A1 (en) * 2015-11-18 2017-05-26 Pandora Media, Inc. Procedurally generating background music for sponsored audio

Family Cites Families (31)

* Cited by examiner, † Cited by third party
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
US7601904B2 (en) * 2005-08-03 2009-10-13 Richard Dreyfuss Interactive tool and appertaining method for creating a graphical music display
CN101253567A (zh) 2005-08-31 2008-08-27 松下电器产业株式会社 存储针对内容属性的管理信息的记录介质、针对这种记录介质的记录装置以及再生装置
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
CN101536609A (zh) 2006-10-31 2009-09-16 皇家飞利浦电子股份有限公司 响应音频信号控制光
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
EP2648181B1 (en) * 2010-12-01 2017-07-26 YAMAHA Corporation Musical data retrieval on the basis of rhythm pattern similarity
CN102903375B (zh) 2011-07-25 2017-06-13 富泰华工业(深圳)有限公司 音乐播放装置及播放方法
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
US9799312B1 (en) * 2016-06-10 2017-10-24 International Business Machines Corporation Composing music using foresight and planning
CN112189193A (zh) * 2018-05-24 2021-01-05 艾米有限公司 音乐生成器
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
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
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
JP7440651B2 (ja) * 2020-02-11 2024-02-28 エーアイエムアイ インコーポレイテッド 音楽コンテンツの生成
JP2023516135A (ja) * 2020-02-24 2023-04-18 ルシード インコーポレイテッド 情動音楽の推薦および作曲のための方法、システム、および媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9471271B2 (en) * 2003-01-07 2016-10-18 Medialab Solutions Corp. Systems and methods for portable audio synthesis
US20140052282A1 (en) * 2012-08-17 2014-02-20 Be Labs, Llc Music generator
WO2017087333A1 (en) * 2015-11-18 2017-05-26 Pandora Media, Inc. Procedurally generating background music for sponsored audio

Also Published As

Publication number Publication date
KR102505818B1 (ko) 2023-03-07
KR102621546B1 (ko) 2024-01-08
JP7214852B2 (ja) 2023-01-30
US20190362696A1 (en) 2019-11-28
EP3803633A1 (en) 2021-04-14
KR20230037056A (ko) 2023-03-15
JP2023052454A (ja) 2023-04-11
CN112189193A (zh) 2021-01-05
KR20220147156A (ko) 2022-11-02
KR20240007944A (ko) 2024-01-17
US11450301B2 (en) 2022-09-20
US20210027754A1 (en) 2021-01-28
WO2019226861A1 (en) 2019-11-28
US20230020181A1 (en) 2023-01-19
KR102459109B1 (ko) 2022-10-27
JP2021524945A (ja) 2021-09-16
US10679596B2 (en) 2020-06-09

Similar Documents

Publication Publication Date Title
KR102621546B1 (ko) 음악 생성기
GB2550090B (en) Method of splicing together two audio sections and computer program product therefor
US11610568B2 (en) Modular automated music production server
JP7440651B2 (ja) 音楽コンテンツの生成
CN110603537B (zh) 增强的内容跟踪系统和方法
CN108780653B (zh) 音频内容制作、音频排序和音频混合的系统和方法
US20220059062A1 (en) Comparison Training for Music Generator
US11669296B2 (en) Computerized systems and methods for hosting and dynamically generating and providing customized media and media experiences
US11341184B2 (en) User consumption behavior analysis and composer interface
O'Connell Musical Mosaicing with High Level

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right