JP7322900B2 - 情報処理装置、情報処理方法及び情報処理プログラム - Google Patents

情報処理装置、情報処理方法及び情報処理プログラム Download PDF

Info

Publication number
JP7322900B2
JP7322900B2 JP2020572065A JP2020572065A JP7322900B2 JP 7322900 B2 JP7322900 B2 JP 7322900B2 JP 2020572065 A JP2020572065 A JP 2020572065A JP 2020572065 A JP2020572065 A JP 2020572065A JP 7322900 B2 JP7322900 B2 JP 7322900B2
Authority
JP
Japan
Prior art keywords
information
application
user
music data
music
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.)
Active
Application number
JP2020572065A
Other languages
English (en)
Other versions
JPWO2020166094A1 (ja
Inventor
治彦 岸
智敦 菊地
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Sony Group Corp
Original Assignee
Sony Corp
Sony Group Corp
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 Sony Corp, Sony Group Corp filed Critical Sony Corp
Publication of JPWO2020166094A1 publication Critical patent/JPWO2020166094A1/ja
Priority to JP2023121958A priority Critical patent/JP2023129639A/ja
Application granted granted Critical
Publication of JP7322900B2 publication Critical patent/JP7322900B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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/0033Recording/reproducing or transmission of music for electrophonic musical instruments
    • G10H1/0041Recording/reproducing or transmission of music for electrophonic musical instruments in coded form
    • G10H1/0058Transmission between separate instruments or between individual components of a musical system
    • G10H1/0066Transmission between separate instruments or between individual components of a musical system using a MIDI interface
    • 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/36Accompaniment arrangements
    • G10H1/38Chord
    • 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
    • G10H2220/00Input/output interfacing specifically adapted for electrophonic musical tools or instruments
    • G10H2220/091Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith
    • G10H2220/101Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith for graphical creation, edition or control of musical data or parameters
    • G10H2220/106Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith for graphical creation, edition or control of musical data or parameters using icons, e.g. selecting, moving or linking icons, on-screen symbols, screen regions or segments representing musical elements or parameters
    • 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/095Identification code, e.g. ISWC for musical works; Identification dataset
    • 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/311Neural networks for electrophonic musical instruments or musical processing, e.g. for musical recognition or control, automatic composition or improvisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Auxiliary Devices For Music (AREA)

Description

本開示は、情報処理装置、情報処理方法及び情報処理プログラムに関する。詳しくは、機械学習に基づいて作曲される楽曲データの利用に関する。
AI(Artificial Intelligence)の進歩に伴い、芸術分野におけるコンピュータの活用が進められている。
例えば、既存の楽曲を学習データとして機械学習を行って楽曲生成のための学習モデルを生成し、新たな楽曲をコンピュータに作曲させる技術が知られている(例えば、特許文献1)。かかる技術では、マルコフモデルを用いて、既存の楽曲の特徴を模倣したり、より自然な旋律を生成したりすることが可能である。
米国特許第9110817号明細書
従来技術によれば、作曲作業においてAIによって提案(生成)された楽曲データを利用することができるため、ユーザは、より多様な観点に基づいて作曲を行うことができる。
しかしながら、上記の従来技術では、AIによる自動作曲機能の利便性を向上させることができるとは限らない。例えば、現状ではユーザの多くはDAW(Digital Audio Workstation)を利用して作曲や編曲、録音等の作業を行う。しかし、ユーザが上記の従来技術をDAWと併用して利用する際には、異なる作業環境を行き来しながら作業を進めることになるため、作業効率が低下するおそれがある。また、AIによる自動作曲機能は、一般に情報処理の負荷が大きいため、端末装置においてDAWと同時に実行すると、充分な機能が発揮できなかったり、DAW側の処理に遅延を発生させたりするおそれがある。
そこで、本開示では、AIによる自動作曲機能の利便性を向上させることができる情報処理装置、情報処理方法及び情報処理プログラムを提案する。
上記の課題を解決するために、本開示に係る一形態の情報処理装置は、第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置であって、前記第1アプリは、前記第1アプリにおける前記第2アプリの動作を制御する制御部を備え、前記第2アプリは、機械学習に基づく作曲機能を制御するための設定情報を選択する選択部と、ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する送受信部と、を備える。
実施形態に係る情報処理の流れを示す概念図である。 実施形態に係るユーザインターフェイスの一例を示す図(1)である。 実施形態に係るユーザインターフェイスの一例を示す図(2)である。 実施形態に係るスタイルパレットの一例を示す図である。 実施形態に係る情報処理の流れを示すブロック図である。 本開示の実施形態に係る情報処理システムを示す図である。 実施形態に係るユーザ端末の構成例を示す図である。 実施形態に係る作曲設定情報の一例を示す図である。 実施形態に係る作曲楽曲情報の一例を示す図である。 実施形態に係る履歴情報の一例を示す図である。 実施形態に係る担当楽器情報の一例を示す図である。 実施形態に係る処理サーバの構成例を示す図である。 実施形態に係るユーザ情報の一例を示す図である。 実施形態に係る楽曲情報の一例を示す図である。 実施形態に係るスタイルパレット情報の一例を示す図である。 実施形態に係るスタイルパレットシーケンス情報の一例を示す図である。 実施形態に係るユーザ作曲情報の一例を示す図である。 実施形態に係る履歴情報の一例を示す図である。 実施形態に係る情報処理の手順を示すフローチャートである。 情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
以下に、本開示の実施形態について図面に基づいて詳細に説明する。なお、以下の各実施形態において、同一の部位には同一の符号を付することにより重複する説明を省略する。
以下に示す項目順序に従って本開示を説明する。
1.実施形態
1-1.実施形態に係る情報処理の一例
1-2.実施形態に係る情報処理システムの構成
1-3.実施形態に係る情報処理装置(ユーザ端末)の構成
1-4.実施形態に係る外部サーバ(処理サーバ)の構成
1-5.実施形態に係る情報処理の手順
2.変形例
2-1.楽曲データの形態
2-2.ホストアプリ
2-3.DAWによる制御
2-4.情報処理システムの態様
3.その他の実施形態
4.本開示に係る情報処理装置の効果
5.ハードウェア構成
(1.実施形態)
[1-1.実施形態に係る情報処理の一例]
まず、図1を用いて、本開示に係る情報処理の一例を説明する。図1は、実施形態に係る情報処理の流れを示す概念図である。実施形態に係る情報処理は、本開示に係る情報処理装置の一例であるユーザ端末10、及び、本開示に係る外部サーバの一例である処理サーバ100によって実行される。ユーザ端末10及び処理サーバ100は、図1に示す有線又は無線のネットワークN(例えばインターネット等)を用いて相互に通信を行う。なお、ユーザ端末10及び処理サーバ100の台数は、図1に図示したものに限られない。
図1に示すユーザ端末10は、本開示に係る情報処理装置の一例である。例えば、ユーザ端末10は、PC(personal computer)やタブレット端末、スマートフォン等の情報処理端末である。ユーザ端末10には、各種のプログラムアプリケーション(以下、単に「アプリ」と称する)が備えられる(インストールされる)。ユーザ端末10は、各種アプリを起動実行し、各種情報処理を実行する。
実施形態では、ユーザ端末10は、総合的な音楽制作環境を実現するアプリ(いわゆるDAW)を備える。以下の説明では、当該アプリ(DAW)を、第1アプリもしくはホストアプリと称する。実施形態に係る第1アプリは、機能を拡張するための他のアプリを組み込む(挿入する)ことが可能である。すなわち、第1アプリは、機能を拡張するための他のアプリである、いわゆるプラグインを利用可能であるものとする。この場合、第1アプリは、組み込まれたプラグインのホストアプリとして機能する。
また、実施形態では、ユーザ端末10は、AIによる自動作曲機能を有するアプリを備える。以下の説明では、当該アプリ(AIによる自動作曲機能を有するアプリ)を第2アプリもしくはプラグインと称する。実施形態に係る第2アプリは、上記した第1アプリのプラグインとして組み込まれるものとする。プラグインは、例えば、VST(Steinberg's Virtual Studio Technology)(登録商標)、AudioUnits、AAX(Avid Audio eXtension)等の形態をとることができる。
図1に示す処理サーバ100は、ユーザ端末10が備える第2アプリに関する情報処理を実行するサーバ装置である。例えば、処理サーバ100は、いわゆるクラウドサーバであり、ネットワークNを介してユーザ端末10から指令された情報に基づいて、所定の情報処理を実行する。具体的には、処理サーバ100は、ユーザ端末10から送信された情報に基づき、所定の学習処理や、学習したモデルから出力されるデータに基づいて楽曲データを生成する。言い換えれば、処理サーバ100は、ユーザ端末10の指令に基づき、AIによる自動作曲機能を実行する。例えば、処理サーバ100は、上述した先行技術文献等に示されるように、マルコフモデル等を用いて自動作曲された楽曲データをユーザ端末10に提供する。
上記のように、ユーザ端末10は、プラグインとして第2アプリを利用することで、第2アプリ上で処理サーバ100から提供された楽曲データを第1アプリ上にドラッグアンドドロップしたり、第1アプリ上で編集作業を行ったりすることができる。また、従来では、自動作曲機能は、処理が実行される端末の処理性能(CPUパワー等)に依存していたが、図1に示すように、ユーザ端末10は、自装置で学習処理等を行わず、処理サーバ100に処理を実行させる。これにより、ユーザ端末10は、自装置のリソースを節約しつつ、自動作曲機能という処理負荷の比較的高い処理を実行することができる。このため、ユーザ端末10は、従来の課題であったDAWの処理遅延(レイテンシーの発生等)を解決することができる。結果として、本開示に係るユーザ端末10は、AIによる自動作曲機能の利便性を向上させることができる。以下、本開示に係る情報処理の概要について、図1を用いて流れに沿って説明する。
図1に示すように、ユーザ端末10は、ホストアプリ(第1アプリ)20を起動する(ステップS1)。また、ユーザ端末10は、ホストアプリ20で動作するプラグインの一例として、プラグイン(第2アプリ)22を起動する(ステップS2)。
ユーザ端末10は、ユーザの操作に従い、プラグイン22において自動作曲する楽曲の設定情報を選択する。詳細は後述するが、ユーザ端末10は、ユーザの操作に従い、自動作曲する楽曲のコード進行や、楽曲の主観的イメージ(暗い、明るいなど)、楽曲の構成等の設定情報を選択する。そして、ユーザ端末10は、選択した設定情報を処理サーバ100に送信する(ステップS3)。
処理サーバ100は、ユーザ端末10から送信された設定情報に基づいて、所定の学習処理を行い、学習結果に基づいて作曲処理を行う(ステップS4)。かかる作曲処理には、例えば上記の先行技術文献に記載された処理が利用されてもよい。そして、処理サーバ100は、作曲した楽曲データを生成する。
続いて、処理サーバ100は、生成した楽曲データをユーザ端末10に送信する(ステップS5)。ユーザ端末10は、プラグイン22において、処理サーバ100から送信された楽曲データを受信する。例えば、楽曲データには、処理サーバ100によって生成されたコード進行や、メロディや、ベース音進行等の情報が含まれる。なお、楽曲データは、MIDI(Musical Instrument Digital Interface)データ等の標準規格データであってもよいし、波形データであってもよいし、DAW独自規格データであってもよい。ユーザは、受信した楽曲データをプラグイン22上で編集してもよいし、また、楽曲データをホストアプリ20にコピーし、ホストアプリ20上で利用してもよい。
このように、ユーザ端末10は、ホストアプリ20と、ホストアプリ20の機能を拡張するプラグインとして機能するプラグイン22とを制御する。また、ホストアプリ20は、ホストアプリ20におけるプラグイン22の動作を制御する。また、プラグイン22は、機械学習に基づく作曲機能を制御するための設定情報を選択し、ネットワークNを介して、設定情報を処理サーバ100に送信し、処理サーバ100によって作曲された楽曲データを受信する。
すなわち、ユーザ端末10は、DAWのプラグインとして自動作曲機能を利用する。このため、ユーザは、DAWという通常の作業環境のままで自動作曲機能の支援を受けることができる。また、ユーザは、自動作曲機能における処理負荷を処理サーバ100に担わせることで、DAWにおいて処理の遅延が発生することを回避できる。結果として、ユーザ端末10は、AIによる自動作曲機能の利便性を向上させることができる。
次に、図2乃至図4を用いて、プラグイン22による自動作曲機能の詳細について説明する。
図2は、実施形態に係るユーザインターフェイスの一例を示す図(1)である。図2には、プラグイン22がユーザ端末10の画面上に表示された際のユーザインターフェイスの一例を示す。
図2に示す例では、ユーザインターフェイス30は、プラグイン22が受信した楽曲データを表示する。なお、詳細は後述するが、プラグイン22における楽曲データは、メロディとコードとベース音の3種類の異なるデータから構成される。図2に示すユーザインターフェイス30は、3種類の異なるデータのうち、メロディに関するデータを表示する。
設定情報31は、自動作曲機能における設定情報の一例である、スタイルパレットに関する情報を表示する。スタイルパレットとは、機械学習の学習データとなる素材楽曲を指定するための指定情報である。
設定情報32は、自動作曲機能における設定情報の一例である、ハーモニーに関する情報を表示する。ハーモニーに関する情報とは、例えば、処理サーバ100によって作曲される楽曲データにおける、コードに含まれる構成音がメロディに登場する確率を決定するための情報である。例えば、ユーザがハーモニーに関する情報を「厳格(strict)」に設定すると、自動作曲された楽曲データにおいて、コードに含まれる構成音がメロディに登場する確率が高くなる。一方、ユーザがハーモニーに関する情報を「ゆるい(loose)」に設定すると、自動作曲された楽曲データにおいて、コードに含まれる構成音がメロディに登場する確率が低くなる。図2の例では、ユーザは、ハーモニーに関する情報を「厳格(strict)」よりに適用させたことを示している。
設定情報33は、自動作曲機能における設定情報の一例である、音符の長さ情報を表示する。音符の長さ情報とは、例えば、処理サーバ100によって作曲される楽曲データにおける、音符の長さを決定するための情報である。例えば、ユーザが音符の長さ情報を「長い(long)」に設定すると、自動作曲された楽曲データにおいて、発音される音の長さが比較的長い音符(例えば、全音符や2分音符等)が登場する確率が高くなる。一方、ユーザが音符の長さ情報を「短い(short)」に設定すると、自動作曲された楽曲データにおいて、発音される音の長さが比較的短い音符(例えば、8分音符や16分音符等)が登場する確率が高くなる。
設定情報34は、自動作曲機能における設定情報の一例である、指定情報(ユーザが指定したスタイルパレット)に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を表示する。かかる情報は、例えば、処理サーバ100によって作曲される楽曲データにおいて、ユーザが指定したスタイルパレットに含まれる楽曲に基づいて学習を厳格に行うか否かを決定するための情報である。例えば、ユーザがかかる情報を「利用しない(never)」に設定すると、自動作曲における学習において、スタイルパレットに含まれる楽曲以外の楽曲が利用される傾向が低くなる。一方、ユーザがかかる情報を「利用する(only)」に設定すると、自動作曲における学習において、スタイルパレットに含まれる楽曲以外の楽曲が利用される傾向が高くなる。
楽曲データ35は、処理サーバ100から送信された具体的な楽曲データを表示する。図2の例では、楽曲データ35は、Cm等のコード進行を示す情報や、小節内の音高や音符の長さを示す情報、音符の高さの移り変わり(言い換えればメロディ)等を含む。また、図2に示すように、楽曲データ35は、例えば4種類の異なる内容を含んでもよい。すなわち、処理サーバ100は、自動作曲された楽曲データとして1種類だけを送信するのではなく、複数の楽曲データを送信してもよい。これにより、ユーザは、生成された複数の楽曲データの候補から、自身が好む楽曲データを選択したり、複数の楽曲データを組み合わせて好みの楽曲を作曲したりすることができる。
なお、図2に示すユーザインターフェイス30は、楽曲データに含まれるメロディ、コード、ベース音の3種類の異なるデータのうち、メロディに関するデータを表示しているが、他のデータについては、他のユーザインターフェイスに表示される。この点について、図3を用いて説明する。図3は、実施形態に係るユーザインターフェイスの一例を示す図(2)である。
図3に示すように、ユーザ端末10は、メロディに関するデータを表示するユーザインターフェイス30に加えて、コードに関するデータを表示するユーザインターフェイス38や、ベース音に関するデータを表示するユーザインターフェイス39を画面上に表示してもよい。図3での図示は省略しているが、ユーザインターフェイス38やユーザインターフェイス39には、ユーザインターフェイス30における楽曲データ35とは異なる音符情報が表示される。具体的には、ユーザインターフェイス38には、楽曲データのメロディに対応するコードに関する音符情報(例えば、コードCmの構成音等)が表示される。また、ユーザインターフェイス39には、楽曲データのメロディやコードに対応するベース音に関する音符情報(例えば、コードCmであれば「C」音等)が表示される。
ユーザは、表示されたユーザインターフェイス30、ユーザインターフェイス38、ユーザインターフェイス39の中から、ホストアプリ20にコピーする情報を選択したり、例えばベース音の一部を編集したりといった作業を行うことができる。
続いて、図4を用いて、上記した設定情報の一例であるスタイルパレットに関して説明する。図4は、実施形態に係るスタイルパレットの一例を示す図である。
図4に示すウインドウ40は、プラグイン22において表示されるユーザインターフェイスの一例である。ユーザは、例えば、ウインドウ40に表示されたスタイルパレットの特徴情報を参照して、自動作曲させたい楽曲と一致するイメージを選択する。例えば、ユーザは、「明るい」という特徴情報が記載されたスタイルパレット41や、「暗い」という特徴情報が記載されたスタイルパレット42等を選択する。また、ユーザは、「アメリカン」という、楽曲のジャンルや種別が特徴情報として記載されたスタイルパレット43や、「Aメロ→Bメロ→サビ」という、楽曲の構成が特徴情報として記載されたスタイルパレット44を選択する。
なお、上記のように、スタイルパレットとは、処理サーバ100が学習に用いる楽曲を指定するための情報である。すなわち、各スタイルパレットには、予め作曲された既存楽曲を特定するための情報が含まれる。例えば、スタイルパレット41には、構成楽曲リスト50が対応付けられているものとする。構成楽曲リスト50には、複数の既存楽曲が含まれる。また、スタイルパレット42には、構成楽曲リスト51が対応付けられているものとする。構成楽曲リスト51には、構成楽曲リスト50に含まれる楽曲とは異なる複数の既存楽曲が含まれる。
このため、スタイルパレット41に基づいて機械学習されて生成される学習モデルと、スタイルパレット42に基づいて機械学習されて生成される学習モデルとは異なる。これは、ユーザが選択したスタイルパレットによって、機械学習における学習データが変化することによる。すなわち、スタイルパレットとは、自動作曲における学習データを指定するための指定情報ともいえる。
スタイルパレットを構成する楽曲は、例えば、プラグイン22の管理者や提供者等により予め登録されるものとする。例えば、プラグイン22の管理者は、主観として「明るい」と感じられる複数の楽曲を抽出して構成楽曲リスト50を生成し、構成楽曲リスト50とスタイルパレット41とを対応付ける。なお、スタイルパレット及びスタイルパレットに対応する楽曲は、プラグイン22を利用するユーザによって任意に編集されてもよい。例えば、ユーザは、楽曲配信サービスやSNS(Social Networking Service)等のウェブサービスから楽曲を選択し、選択した楽曲を組み合わせて、所望するスタイルパレットを生成してもよい。具体的には、ユーザは、所定の音楽アプリが自動的に生成したプレイリストや、音楽アプリを利用するユーザに対して提供しているプレイリストに含まれる楽曲を任意に抽出して、自身が生成したスタイルパレットの構成楽曲を変更したり、新たにスタイルパレットを生成したりしてもよい。これにより、ユーザは、自身の好むスタイルパレットを柔軟に生成することができる。
なお、ユーザは、設定情報としてスタイルパレットを選択する際に、複数のスタイルパレットを選択してもよい。例えば、ユーザは、曲の一部(例えば、先頭の8小節)を作曲させるための設定情報としてスタイルパレット41を選択し、曲の異なる一部(例えば、中間の8小節)を作曲させるための設定情報としてスタイルパレット42を選択してもよい。このような複数のスタイルパレットを含む情報を、以下では、スタイルパレットシーケンスと称する。言い換えれば、スタイルパレットシーケンスとは、スタイルパレットという楽曲を指定する指定情報を組み合わせた、組み合わせ指定情報といえる。ユーザは、スタイルパレットシーケンスを設定して作曲を行わせることで、一つの楽曲中に複数の特徴を有するような多様な楽曲データを簡易に作成することができる。
続いて、図5を用いて、ホストアプリ20とプラグイン22との関係性を概念的に示す。図5は、実施形態に係る情報処理の流れを示すブロック図である。
図5に示す処理ブロック60は、DAW(ホストアプリ20)とプラグイン22とで実行される処理の流れを示す。通常、演奏者は、楽器を演奏した音を録音したり、MIDI等のデータを作成したりする。また、実施形態に係る情報処理では、演奏者に代わり、プラグイン22によってメロディやコード、ベース音に対応する楽曲データが生成される。例えば、演奏者やプラグイン22によって、メロディ61や、コード62や、ベース音63が生成される。
その後、ユーザは、DAWに係るレコーダにおいて、楽曲に用いるメロディ61や、コード62や、ベース音63を録音し、メロディやコードやベース音に対応する各トラック(track)を作成する。例えば、ユーザは、プラグイン22によって生成されたメロディ61に対して、演奏に用いる楽器を示す楽器情報を設定する。具体的には、ユーザは、DAWに登録されているギターでメロディ61を演奏する、といった楽器情報を設定する。そして、ユーザは、レコーダにおいて、仮想的なギターで演奏された音を録音し、ギターに対応するトラックを作成する。なお、DAWは複数のトラックを作成することが可能であるため、演奏者による演奏音に基づくトラックと、プラグイン22によって作成された楽曲データに基づくトラックとが併存してもよい。
その後、ユーザは、DAW上でミキシングを行い、トラックダウン等を経て楽曲データを作成する。また、ユーザは、DAW上でマスタリングを行い、音響信号レベルの調整等を経て、再生機器等で再生可能な音楽ファイル65を作成する。
このように、実施形態に係る情報処理によれば、ユーザは、演奏者が演奏を行った演奏データや、作成したMIDIデータに合わせて、プラグイン22によって自動作曲されたデータを利用してDAW上で楽曲作成を行うことができる。例えば、ユーザは、DAW上で、演奏者が演奏を行った演奏データに、AIによって自動作曲されたメロディをミックスしたり、AIから提案されたコード進行を組み込んだりして楽曲を作成することができる。
以上、本開示に係る情報処理の全体の流れの概要を説明した。図6以下では、ユーザ端末10を含む情報処理システム1の構成を説明するとともに、種々の処理の詳細を順に説明する。
[1-2.第1の実施形態に係る情報処理システムの構成]
図6は、本開示の第1の実施形態に係る情報処理システム1の一例を示す図である。図1に示すように、情報処理システム1は、ユーザ端末10と、処理サーバ100と、管理サーバ200とを含む。
ユーザ端末10は、本開示に係る情報処理装置の一例であり、ホストアプリ20やプラグイン22の動作を制御する。
処理サーバ100は、本開示に係る外部サーバの一例であり、プラグイン22と協働して自動作曲処理を行う。
管理サーバ200は、例えばプラグイン22を提供する事業者等によって管理されるサーバである。
例えば、管理サーバ200は、プラグイン22を利用するユーザのユーザ権限を管理したり、プラグイン22で利用可能なスタイルパレットの情報を管理したりする。例えば、管理サーバ200は、ユーザを一意に特定する利用者IDに基づいて、ユーザがプラグイン22を利用する権限を有するか否かを判定する。また、管理サーバ200は、スタイルパレットを作成したり、スタイルパレットを構成する楽曲を編集したりするとともに、スタイルパレットに関する情報をユーザ端末10や処理サーバ100に送信する。なお、管理サーバ200は、処理サーバ100と一体に構成されてもよい。
[1-3.実施形態に係る情報処理装置(ユーザ端末)の構成]
次に、図7を用いて、本開示に係る情報処理装置の一例であるユーザ端末10の構成について説明する。図7は、本開示の実施形態に係るユーザ端末10の構成例を示す図である。図7に示すように、ユーザ端末10は、通信部11と、入力部12と、表示部13と、記憶部15と、制御部16とを有する。
通信部11は、例えば、NIC(Network Interface Card)等によって実現される。通信部11は、ネットワークN(インターネット等)と有線又は無線で接続され、ネットワークNを介して、処理サーバ100や管理サーバ200等との間で情報の送受信を行う。
入力部12は、ユーザから各種操作を受け付ける入力装置である。例えば、入力部12は、ユーザ端末10に備えられた操作キー等によって実現される。表示部13は、各種情報を表示するための表示装置である。例えば、表示部13は、液晶ディスプレイ等によって実現される。なお、ユーザ端末10にタッチパネルが採用される場合には、入力部12の一部と表示部13とは一体化される。
記憶部15は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部15は、情報処理に用いる各種データを記憶する。
図7に示すように、記憶部15は、作曲設定情報151や、作曲楽曲情報152、履歴情報153、担当楽器情報154といった各種情報を記憶する。以下、各情報について説明する。
作曲設定情報151は、プラグイン22(第2アプリ)が自動作曲を実行する際に利用する情報である。図8に、実施形態に係る作曲設定情報151の一例を示す。図8は、実施形態に係る作曲設定情報151の一例を示す図である。
図8に示すように、作曲設定情報151は、作曲コーパス情報及び演奏スタイル情報を含む。作曲コーパス情報は、自動作曲の学習データとして用いられる楽曲のデータもしくは楽曲のデータが保存された場所(例えばデータサーバのアドレス等)が記憶される。また、作曲コーパス情報は、例えば、各楽曲の音符の平均長や転調等の情報を含む。
演奏スタイル情報は、自動作曲の学習データとして用いられる楽曲における演奏スタイル等の情報が記憶される。演奏スタイルは、例えば、全体のシャッフルの割合やコードとベースの音符割、全体のバランス等の情報を含む。
作曲楽曲情報152は、プラグイン22が自動作曲を実行する際に利用する楽曲の情報である。図9に、実施形態に係る作曲楽曲情報152の一例を示す。図9は、実施形態に係る作曲楽曲情報152の一例を示す図である。
図9に示すように、作曲楽曲情報152は、楽曲ID、スタイルパレットID、スタイルパレットシーケンスIDを含む。楽曲IDは、学習データとして用いられる既存楽曲を一意に特定するための識別情報を示す。スタイルパレットIDは、複数の既存楽曲によって構成されるスタイルパレットを特定するための識別情報を示す。スタイルパレットシーケンスIDは、複数のスタイルパレットから構成されるスタイルパレットシーケンスを特定するための識別情報を示す。
履歴情報153は、ホストアプリ20やプラグイン22においてユーザが操作した履歴や、ユーザにより作成された楽曲の履歴を示す。図10に、実施形態に係る履歴情報153の一例を示す。図10は、実施形態に係る履歴情報153の一例を示す図である。
図10に示すように、履歴情報153は、作曲楽曲情報を含む。作曲楽曲情報は、処理サーバ100から送信された楽曲データや、楽曲データに含まれる複数の候補データ(例えば図2に示したように、ある設定情報に基づいて生成された4種類の符割等を含む楽曲データ35等)や、ユーザの編集後の楽曲データ等を含む。
担当楽器情報154は、処理サーバ100から送信された楽曲データや、楽曲データに含まれる複数の候補データに対して設定される楽器情報を示す。図11に、実施形態に係る担当楽器情報154の一例を示す。図11は、実施形態に係る担当楽器情報154の一例を示す図である。
図11に示すように、担当楽器情報154は、担当楽器情報を含む。担当楽器情報は、処理サーバ100から送信された楽曲データや、楽曲データに含まれる複数の候補データを仮想的に演奏するために設定される楽器を特定するための情報や、楽曲データに設定された楽器の名称等を示す。例えば、担当楽器情報は、メロディ、コード、ベース音のそれぞれに異なる情報が設定可能である。
図7に戻って説明を続ける。制御部16は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)、GPU(Graphics Processing Unit)等によって、ユーザ端末10内部に記憶されたプログラム(例えば、本開示に係る情報処理プログラム)がRAM(Random Access Memory)等を作業領域として実行されることにより実現される。また、制御部16は、コントローラ(controller)であり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。
図7に示すように、制御部16は、ホストアプリ制御部161と、プラグインアプリ制御部165とを有し、以下に説明する情報処理の機能や作用を実現または実行する。ホストアプリ制御部161は、プラグイン制御部162と、再生部163と、表示制御部164とを含む。プラグインアプリ制御部165は、選択部166と、送受信部167と、再生部168と、表示制御部169とを含む。なお、制御部16の内部構成は、図7に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
ホストアプリ制御部161は、ホストアプリ20(第1アプリであるDAW)を制御する。
プラグイン制御部162は、ホストアプリ20における各種プラグインの動作を制御する。例えば、プラグイン制御部162は、ホストアプリ20においてプラグインを呼び出したり、ホストアプリ20上でプラグインを起動したり、プラグイン内のデータをホストアプリ20にコピーしたりする動作を制御する。
例えば、プラグイン制御部162は、プラグインが処理サーバ100から受信した楽曲データに含まれるコード、メロディ又はベース音を再生する際の音色を指定するための楽器情報を個別に設定する。例えば、プラグイン制御部162は、DAW上に登録されている仮想楽器の情報を読み出し、プラグインの楽曲データに含まれるコード、メロディ又はベース音のそれぞれを演奏させるために、各々に仮想楽器の情報を設定する。
再生部163は、ホストアプリ20における再生処理を制御する。再生部163は、ホストアプリ20における同期再生機能や、再生情報送出機能や、音合成再生機能や、再生スタイルアレンジ機能等を有する。
例えば、再生部163は、プラグインの再生部168の有する同期再生機能と連携し、プラグインが保持する楽曲データを再生する。例えば、再生部163は、ホストアプリが再生している位置を示す時間情報をプラグインに渡すことにより、当該再生位置に対応する箇所のメロディやコード、ベース音を取得し、再生することができる。
また、再生部163は、プラグインにおいて演奏スタイル等が設定されている場合、当該演奏スタイルに従って再生データを加工し、加工したデータを再生してもよい。
表示制御部164は、ホストアプリ20における表示制御処理を制御する。例えば、表示制御部164は、各トラックの情報を画面(表示部13)に表示する演奏情報表示機能や、楽曲データ等の情報をトラックにコピーする作曲楽曲情報貼り付け機能等を有する。
また、表示制御部164は、プラグインが処理サーバ100から受信した楽曲データに含まれるコード、メロディ又はベース音に関する情報を表示するウインドウを各々個別に表示するよう制御する。例えば、表示制御部164は、図3に示すように、コード、メロディ又はベース音の各々に対応するユーザインターフェイスをDAWの画面上に表示する。
また、表示制御部164は、ユーザの操作に従い、コード、メロディ又はベース音に関する情報を表示する各ウインドウと、ホストアプリに関する情報が表示されたウインドウ間の情報の送受信を制御する。これにより、ユーザは、DAW上において、自動作曲された楽曲データを任意のトラックにコピーしたり、編集作業を行ったりといった処理を迅速に行うことができる。
なお、表示制御部164は、ホストアプリとプラグイン間の情報のみならず、表示されたプラグインのウインドウ間の情報のやりとりを制御してもよい。すなわち、表示制御部164は、ユーザの操作に従い、コード、メロディ又はベース音に関する情報を表示する各ウインドウ間の情報の送受信を制御してもよい。
プラグインアプリ制御部165は、ホストアプリ20上で動作するプラグインの動作を制御する。例えば、プラグインアプリ制御部165は、ユーザの操作に従い、ホストアプリ20上でプラグインを起動する。
選択部166は、機械学習に基づく作曲機能を制御するための設定情報を選択する。例えば、選択部166は、設定情報として、機械学習の学習データとなる素材楽曲を指定するための指定情報を選択する。具体的には、指定情報とは、図4等で示したスタイルパレットが該当する。
例えば、選択部166は、ユーザの操作に従い、予め記憶部15に記憶された指定情報であって、指定情報の特徴を示す特徴情報と、特徴情報に対応付けられた複数の素材楽曲とを含む指定情報を選択する。例えば、ユーザは、図4で示したウインドウ40等を介して、スタイルパレットの特徴情報(「明るい」、「暗い」等)を参照する。そして、ユーザは、特徴情報に基づいて、AIに作曲させたい楽曲において所望する特徴情報を含むスタイルパレットを選択する。
また、選択部166は、外部サーバによって作曲される楽曲データのうち一部の小節に対応する第1の指定情報と、他の一部の小節に対応する第2の指定情報とを組み合わせた組み合わせ指定情報を選択してもよい。上記のように、組み合わせ指定情報とは、スタイルパレットシーケンスに対応する。また、第1の指定情報とは、一部の小節を作曲させるための設定情報であるスタイルパレットに対応する。また、第2の指定情報とは、他の一部の小節を作曲させるための設定情報であるスタイルパレットに対応する。
また、選択部166は、スタイルパレットの他に、作曲される楽曲データに関する詳細な設定情報を選択してもよい。
例えば、選択部166は、設定情報として、スタイルパレットに基づいて処理サーバ100によって作曲される楽曲データに含まれる音符の長さ情報を選択してもよい。例えば、選択部166は、図2に示すユーザインターフェイス30等に含まれる設定情報33のスライダ等の表示を介して、ユーザから音符の長さ情報の選択を受け付ける。
また、選択部166は、設定情報として、スタイルパレットに基づいて処理サーバ100によって作曲される楽曲データにおける、コードに含まれる構成音がメロディに登場する確率を決定するための情報を選択してもよい。例えば、選択部166は、図2に示すユーザインターフェイス30等に含まれる設定情報32のスライダ等の表示を介して、ユーザから、コードに含まれる構成音がメロディに登場する確率を決定するための情報の選択を受け付ける。
また、選択部166は、設定情報として、スタイルパレットに基づいて処理サーバ100によって作曲される楽曲データにおける、当該スタイルパレットに含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を選択してもよい。例えば、選択部166は、図2に示すユーザインターフェイス30等に含まれる設定情報34のスライダ等の表示を介して、ユーザから、スタイルパレットに含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報の選択を受け付ける。
また、選択部166は、自動作曲させるための設定情報として、スタイルパレット以外の情報を選択してもよい。一例として、選択部166は、設定情報として、作曲される楽曲におけるコード進行をユーザの操作に基づいて選択してもよい。この場合、処理サーバ100は、ユーザが選択したコード進行に基づいて楽曲データを自動生成する。
送受信部167は、ネットワークNを介して、選択部166によって選択された設定情報を、機械学習に基づく作曲機能を実行する処理サーバ100に送信し、処理サーバ100によって作曲された楽曲データを受信する。
例えば、送受信部167は、選択部166によって選択されたスタイルパレットを処理サーバ100に送信する。そして、送受信部167は、スタイルパレットに基づき処理サーバ100によって生成された楽曲データを受信する。
送受信部167は、楽曲データとして、例えば、規定された長さの小節におけるコード、小節におけるメロディ、小節におけるベース音を受信する。かかる情報は、MIDIやMusicXML等のデータであってもよいし、DAW独自規格の情報であってもよいし、波形データ(WAVファイル等)であってもよい。
また、送受信部167は、選択部166によって選択されたスタイルパレットシーケンスを処理サーバ100に送信してもよい。この場合、送受信部167は、スタイルパレットシーケンスに基づき処理サーバ100によって生成された楽曲データを受信する。
送受信部167は、スタイルパレットシーケンスに基づいて処理サーバ100によって作曲された楽曲データを受信した場合、スタイルパレットシーケンスと当該楽曲データとを対応付けて記憶部15に格納してもよい。これにより、ユーザは、どのようなスタイルパレットシーケンスによってどのような楽曲データが作成されたかを履歴として参照することができるため、かかる情報を作曲作業に活用できる。
また、送受信部167は、スタイルパレットやスタイルパレットシーケンス以外の各種設定情報を処理サーバ100に送信してもよい。例えば、送受信部167は、ユーザによって設定された音符の長さ情報や、コードに含まれる構成音がメロディに登場する確率を決定するための情報や、スタイルパレットに含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報等を処理サーバ100に送信する。
また、送受信部167は、処理サーバ100によって作曲された楽曲データを受信したのち、ユーザによって楽曲データに対する再生もしくは編集操作が行われた場合、当該再生もしくは編集操作に関する情報を処理サーバ100に送信してもよい。これにより、処理サーバ100は、作曲した楽曲データがどのように利用されたか、あるいは、どれくらい利用されたかといった情報を取得することができる。この場合、処理サーバ100は、かかる情報に基づいて、学習手法や生成する楽曲データを調整してもよい。例えば、処理サーバ100は、より多くのユーザに利用される過去の楽曲データを分析し、かかる特徴を有する楽曲データを優先的に生成するようにしてもよい。
再生部168は、プラグインにおける再生処理を制御する。例えば、再生部168は、送受信部167によって受信された楽曲データを再生する。具体的には、再生部168は、楽曲データに含まれるメロディやコード、ベース音の各々に任意の楽器情報を設定し、各々のデータを再生する。なお、再生部168は、メロディやコード、ベース音の各々を組み合わせて再生してもよい。
表示制御部169は、プラグインにおける表示処理を制御する。例えば、表示制御部169は、プラグインの情報を示すユーザインターフェイス等のウインドウを画面上に表示する。
表示制御部169は、例えば図2に示したように、4小節の楽曲データを4種類取得し、ユーザインターフェイス内に4つの候補を並べて表示する。ユーザは、4種類の楽曲データの候補から良い箇所を時間軸に沿って繋ぎ合わせて(すなわちコンピング(comping)を行って)、最終候補を選択することができる。例えば、ユーザは、メロディの音符を一部削除したり、繋げたり、音符の長さを変えたり、音符の高さを変えたりすることができる。
また、表示制御部169は、ユーザの操作に従い、処理サーバ100によって作曲された過去の楽曲データの履歴を記憶部15から呼び出すとともに、過去の楽曲データの履歴を表示するよう制御してもよい。これにより、ユーザは、過去に処理サーバ100によって作曲されたデータを参照しながら、作曲作業を進めることができる。例えば、ユーザは、編集によって作成された最新の楽曲と、過去に編集した楽曲の履歴とを比べながら、最終候補を決定することができる。
また、表示制御部169は、処理サーバ100によって作曲された過去の楽曲データに対して実行された編集操作の履歴を記憶部15から呼び出すとともに、過去の楽曲データに対して実行された編集操作を表示するよう制御してもよい。これにより、ユーザは、過去に行った編集操作や、編集操作によって生じた楽曲データ等を参照することができるので、作曲作業を効率良く行うことができる。
なお、図2や図3では、楽曲データが音高や音符の長さを示す、いわゆるピアノロールのような形式でユーザインターフェイス上に表示される例を示したが、表示制御部169は、五線譜やDAW独自の形式で楽曲データを表示してもよい。
[1-4.実施形態に係る外部サーバ(処理サーバ)の構成]
次に、本開示に係る外部サーバの一例である処理サーバ100の構成について説明する。図12は、実施形態に係る処理サーバ100の構成例を示す図である。
図12に示すように、処理サーバ100は、通信部110と、記憶部120と、制御部130とを有する。なお、処理サーバ100は、処理サーバ100を管理する管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
通信部110は、例えば、NIC等によって実現される。通信部210は、ネットワークNと有線又は無線で接続され、ネットワークNを介して、ユーザ端末10や管理サーバ20等との間で情報の送受信を行う。
記憶部120は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部120は、情報処理に用いる各種データを記憶する。
図12に示すように、記憶部120は、ユーザ情報121や、楽曲情報122や、スタイルパレット情報123や、スタイルパレットシーケンス情報124や、ユーザ作曲情報125や、履歴情報126といった各種情報を記憶する。以下、各情報について説明する。
ユーザ情報121は、プラグイン22(第2アプリ)を利用するユーザの情報を示す。図13に、実施形態に係るユーザ情報121の一例を示す。図13は、実施形態に係るユーザ情報121の一例を示す図である。
図13に示すように、ユーザ情報121は、利用者ID、利用者メタ情報、権限情報を含む。利用者IDは、ユーザを一意に特定するための識別情報を示す。利用者メタ情報は、例えば、ユーザの氏名や住所など、ユーザの付加情報である。権限情報は、例えば、プラグインを利用するユーザが管理者であるか、一般利用者であるか、特別利用者であるか等の識別情報である。
楽曲情報122は、自動作曲処理に利用される楽曲の情報を示す。図14に、実施形態に係る楽曲情報122の一例を示す。図14は、実施形態に係る楽曲情報122の一例を示す図である。
図14に示すように、楽曲情報122は、楽曲ID、楽曲メタ情報、メロディー情報、コード進行情報、ベース音進行情報を含む。楽曲IDは、楽曲を一意に特定するための識別情報を示す。楽曲メタ情報は、例えば、楽曲の曲名、作曲者、年代、ジャンル等の情報である。メロディー情報は、例えば、ボーカルパートを表現する音階情報等である。コード進行情報は、例えば、楽曲の和音の遷移を表現する時系列情報である。ベース音進行情報は、コード進行情報のルート音を示す時系列情報である。
スタイルパレット情報123は、自動作曲処理に利用されるスタイルパレットに関する情報を示す。図15に、実施形態に係るスタイルパレット情報123の一例を示す。図15は、実施形態に係るスタイルパレット情報123の一例を示す図である。
図15に示すように、スタイルパレット情報123は、スタイルパレットID、スタイルパレットメタ情報、楽曲IDを含む。スタイルパレットIDは、スタイルパレットを一意に特定するための識別情報を示す。スタイルパレットメタ情報は、例えば、スタイルパレットの名称や、明るいか暗い、速いか遅い等の主観的な特徴情報や、曲の構造がAメロ、Bメロ、サビで構成されているといった構造や、コード進行の特徴等の情報である。なお、スタイルパレットメタ情報の名称にはコード進行の情報等が付されてもよい。これにより、ユーザは、直感的にスタイルパレットの特徴を把握することが可能となる。また、図15に示すように、スタイルパレットには、複数の楽曲IDが紐付けられて登録される。スタイルパレット情報123は、例えば管理サーバ200等によって登録される。
スタイルパレットシーケンス情報124は、自動作曲処理に利用されるスタイルパレットシーケンスに関する情報を示す。図16に、実施形態に係るスタイルパレットシーケンス情報124の一例を示す。図16は、実施形態に係るスタイルパレットシーケンス情報124の一例を示す図である。
図16に示すように、スタイルパレットシーケンス情報124は、スタイルパレットシーケンスID、スタイルパレットシーケンスメタ情報、スタイルパレットID、調合情報を含む。スタイルパレットシーケンスIDは、スタイルパレットシーケンスを一意に特定するための識別情報を示す。スタイルパレットシーケンスメタ情報は、例えば、スタイルパレットシーケンスの名称や、明るいか暗い、速いか遅い等の主観的な特徴情報である。また、図16に示すように、スタイルパレットシーケンスには、複数のスタイルパレットIDが紐付けられて登録される。また、調合情報とは、スタイルパレットシーケンスにおけるスタイルパレットの並びに関する情報等である。
ユーザ作曲情報125は、ユーザ端末10から受信した、作曲に関する情報を示す。図17に、実施形態に係るユーザ作曲情報125の一例を示す。図17は、実施形態に係るユーザ作曲情報125の一例を示す図である。
図17に示すように、ユーザ作曲情報125は、利用者ID、楽曲ID、スタイルパレットID、スタイルパレットシーケンスIDを含む。利用者IDは、ユーザを一意に特定するための識別情報を示す。楽曲IDは、利用者IDで特定されるユーザに対して生成した楽曲を識別する識別情報を示す。スタイルパレットIDは、利用者IDで特定されるユーザから送信されたスタイルパレットを識別する識別情報を示す。スタイルパレットシーケンスIDは、利用者IDで特定されるユーザから送信されたスタイルパレットシーケンスを識別する識別情報を示す。
履歴情報126は、処理サーバ100の情報処理に関する各種履歴である。図18に、実施形態に係る履歴情報126の一例を示す。図18は、実施形態に係る履歴情報126の一例を示す図である。
図18に示すように、履歴情報126は、作曲履歴情報、操作履歴情報を含む。作曲履歴情報は、処理サーバ100が生成した楽曲の履歴である。操作履歴情報は、ユーザ端末10上でユーザが編集操作した履歴等の情報である。操作履歴情報は、例えば、ユーザが再作曲した情報や作曲された楽曲データを選択した情報、楽曲データを編集した情報、再生した回数、再生をスキップした回数等の情報である。これらの情報は、後述する作曲部134の学習データとして利用されてもよい。
図12に戻って説明を続ける。制御部130は、例えば、CPUやMPU、GPU等によって、処理サーバ100内部に記憶されたプログラムがRAM等を作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASICやFPGA等の集積回路により実現されてもよい。
図12に示すように、制御部130は、受付部131と、管理部132と、取得部133と、作曲部134と、送信部135とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図12に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
受付部131は、管理サーバ200から送信される各種情報を受け付ける。例えば、受付部131は、プラグインを利用するユーザの情報や、スタイルパレットに関する情報や、自動作曲で用いられる素材楽曲等の情報を受け付ける。例えば、受付部131は、ユーザが製品(プラグインやDAW等)の購入時にアクティベーションを行う際に、当該ユーザに対して利用者IDを発行したり、当該ユーザに関する情報を受け付けたりする処理を実行する。また、受付部131は、管理サーバ200からの操作や指令に従い、スタイルパレットに紐付ける楽曲の登録や、スタイルパレットの編集等を受け付ける。
管理部132は、受付部131によって受け付けられた各種情報を管理する。例えば、管理部132は、各種情報を記憶部120内に格納し、また、格納した情報を適宜更新する。
例えば、管理部132によるスタイルパレットの登録処理が完了すると、ユーザは、スタイルパレット情報の一覧を取得、閲覧することが可能となる。
取得部133は、ユーザ端末10から送信される自動作曲のリクエストを取得する。また、取得部133は、リクエストとともに送信された設定情報を取得する。例えば、取得部133は、設定情報として、ユーザが所望するスタイルパレットを取得する。
作曲部134は、取得部133によって取得された設定情報に基づいて作曲を行う。作曲部134は、種々の既存の楽曲生成アルゴリズムを利用して作曲を行ってもよい。例えば、作曲部134は、マルコフ連鎖を用いた楽曲生成アルゴリズムを利用してもよいし、深層学習を用いた楽曲生成アルゴリズムを利用してもよい。上述のように、作曲部134は、ユーザから送信された一つの設定情報に対して、複数の楽曲データを生成する。これにより、ユーザは、複数の提案を作曲部134から受けることができるため、より多様な情報を利用して作曲作業を進めることができる。
作曲部134は、作曲処理によって楽曲データを生成すると、生成した楽曲データと、スタイルパレットを送信したユーザの利用者IDとを対応付けて、履歴情報として記憶部120内に記憶する。
送信部135は、作曲部134によって生成された楽曲データをユーザ端末10に送信する。
[1-5.実施形態に係る情報処理の手順]
次に、図19を用いて、実施形態に係る情報処理の手順について説明する。図19は、実施形態に係る情報処理の手順を示すフローチャートである。
図19に示すように、ユーザ端末10は、ユーザの操作に従い、ホストアプリ上において自動作曲機能(プラグイン)を起動する(S101)。
続いて、ユーザ端末10は、スタイルパレット等の選択をユーザから受け付けたか否かを判定する(ステップS102)。スタイルパレット等の選択をユーザから受け付けていない場合(ステップS102;No)、ユーザ端末10は、選択を受け付けるまで待機する。
一方、スタイルパレット等の選択をユーザから受け付けた場合(ステップS102;Yes)、ユーザ端末10は、ユーザの操作に従い、スタイルパレットを選択する(ステップS103)。なお、ユーザ端末10は、ステップS102において、スタイルパレット以外の種々の設定情報を受け付けてもよい。
その後、ユーザ端末10は、作曲要求をユーザから受け付けたか否かを判定する(ステップS104)。作曲要求をユーザから受け付けていない場合(ステップS104;No)、ユーザ端末10は、要求を受け付けるまで待機する。
一方、作曲要求をユーザから受け付けた場合(ステップS104;Yes)、ユーザ端末10は、作曲要求とともに、受け付けた設定情報を処理サーバ100に送信する(ステップS105)。その後、ユーザ端末10は、処理サーバ100によって作曲(生成)された楽曲データを受信する(ステップS106)。
続けて、ユーザ端末10は、ユーザ端末10上でユーザによって編集処理等が行われたか否かを判定する(ステップS107)。編集処理等が行われていない場合(ステップS107;No)、ユーザ端末10は、編集処理等を受け付けるまで待機する(ステップS107)。
一方、編集処理等が行われた場合(ステップS107;Yes)、ユーザ端末10は、編集を反映するとともに、編集操作に関する情報を処理サーバ100に送信する(ステップS108)。
その後、ユーザ端末10は、再び作曲要求をユーザから受け付けたか否かを判定する(ステップS109)。作曲要求をユーザから受け付けた場合(ステップS109;Yes)、ユーザ端末10は、ユーザから新たな設定情報を受け付ける。
一方、作曲要求をユーザから受け付けない場合(ステップS109;No)、ユーザ端末10は、ホストアプリの終了要求を受け付けたか否かを判定する(ステップS110)。ホストアプリの終了要求を受け付けていない場合(ステップS110;No)、ユーザ端末10は、現時点で受信している楽曲データの編集処理を継続する。一方、ホストアプリの終了要求を受け付けた場合(ステップS110;Yes)、ユーザ端末10は、ホストアプリ及びプラグインを終了させ、処理を終了する。
(2.変形例)
上述した情報処理システム1は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、実施形態の変形例について説明する。
[2-1.楽曲データの形態]
上記実施形態では、プラグインにおける楽曲データの担当楽器情報154等において、設定される情報の種類を、メロディ、コード、ベース音と想定したが、これに限られない。例えば、担当楽器情報154は、メロディ、コード、ベース音のみならず、例えば、フルオーケストラの各楽器の演奏パートにも適用可能である。
[2-2.ホストアプリ]
上記実施形態では、ホストアプリとしてDAWを想定したが、これに限られない。例えば、ホストアプリは、音楽編集用アプリではなく、映像編集アプリ等であってもよい。
[2-3.DAWによる制御]
上記実施形態では、ユーザ端末10がプラグイン上で設定情報を選択し、選択した情報を処理サーバ100に送信する例を示した。しかし、設定情報等は、ホストアプリによって選択されてもよい。すなわち、ユーザ端末10は、ホストアプリにおいて選択された設定情報(例えば、コード進行)等を処理サーバ100に送信し、自動作曲処理を実行させてもよい。この場合、ホストアプリは、例えばプラグインがホストアプリの情報を利用するためのAPI(Application Programming Interface)等をプラグインに提供し、スタイルパレットを生成するための情報をホストアプリ上から取得させたり、処理サーバ100との送受信処理等を制御したりしてもよい。
例えば、ユーザ端末10は、ホストアプリであるDAWが備えるコード生成機能を利用して任意のコード進行を生成する。そして、ユーザ端末10は、DAWによって生成されたコード進行に基づいて、自動作曲を実行させてもよい。例えば、ユーザ端末10は、DAWよって生成されたコード進行をプラグインに入力し、プラグインを介して、コード進行を処理サーバ100に送信する。
すなわち、ホストアプリは、ホストアプリにおいて生成されたコード進行に関する情報をプラグインに送るよう制御する。そして、プラグインは、設定情報として、ホストアプリにおいて生成されたコード進行に関する情報を選択する。さらに、プラグインは、ホストアプリにおいて生成されたコード進行に関する情報を処理サーバ100に送信し、コード進行に関する情報に基づいて作曲された楽曲データを受信する。
また、ユーザ端末10は、DAWによって生成されたコード進行に基づいて、処理サーバ100に送信するスタイルパレットを自動的に選択してもよい。例えば、ユーザ端末10は、DAWによって生成されたコード進行と類似する特徴を有するスタイルパレットを選択し、処理サーバ100に送信してもよい。また、ユーザ端末10は、DAWによって生成されたコード進行に基づいて、進行に合わせたスタイルパレットを順次選択し、スタイルパレットシーケンスを生成し、生成したスタイルパレットシーケンスを処理サーバ100に送信してもよい。
また、ユーザ端末10は、プラグインがホストアプリ上のベーストラックへの情報アクセスを可能にするよう設定してもよい。例えば、ユーザは、DAWのベーストラックにおいて、当該トラックが自動作曲された楽曲データに従う、といった設定を行う。この場合、当該ベーストラックは、例えば処理サーバ100によって生成された楽曲データや、DAWが生成したコード進行に従い、自動的に補完される。
また、ユーザ端末10は、プラグインがホストアプリ上のメロディトラックへの情報アクセスを可能にするよう設定してもよい。例えば、ユーザは、DAWのメロディトラックにおいて、当該トラックが自動作曲された楽曲データに従う、といった設定を行う。この場合、ユーザが、ある小節を選択して自動作曲要求を行うと、生成されたメロディが自動的に当該トラックに挿入される。また、ユーザは、複数の楽曲データを組み合わせて編集するモード(Compingモード等と称される)にDAWを設定すると、画面に現れる複数トラックの所望の部分を選択してメロディを完成させることができる。
また、ユーザ端末10は、プラグインがホストアプリ上のメロディトラックとMIDI入力への情報アクセスを可能にするよう設定してもよい。この場合、ユーザは、自動作曲機能とMIDI入力の双方を駆使して作曲作業を行うことができる。例えば、ユーザは、4小節に任意のコード進行を入力し、DAWにループ演奏させる。そして、ユーザは、ループ演奏に合わせて、MIDI鍵盤で入力を行う。ユーザ端末10は、このコード進行とメロディの情報を処理サーバ100にアップロードすることで、処理サーバ100側で個人スタイルパレットを自動作成することができる。例えば、ユーザは、DAW上における新規追加されたスタイルパレットメニューにて、これら個人スタイルパレット作成開始や停止、保存や名前付け、削除等が指示できる。このような個人スタイルパレットは、スタイルパレットメニューを介して一般に公開可能としてもよい。
また、ユーザ端末10は、プラグインがホストアプリ上のオーディオトラックへの情報アクセスを可能にするよう設定してもよい。オーディオトラックとは、例えば、楽器演奏音を録音したトラックであり、例えば、ピアノによるコード演奏、ベースギターによるベース音演奏、リード楽器によるメロディ等によるトラックである。プラグインは、オーディオトラックにアクセスし、各トラックのメロディやコード、ベース音等のオーディオデータを信号処理により分析し、メロディのNIDI情報や、コード進行情報等を得る。プラグインは、分析に際して、例えば12音解析技術等を用いてもよい。この場合、ユーザ端末10は、分析された情報を処理サーバ100に送信し、最適なコード進行を機械学習等により自動的に推論させてもよい。そして、処理サーバ100は、このコード進行情報をもとにスタイルパレットシーケンスを定義する。これにより、ユーザは、処理サーバ100により生成されたスタイルパレットシーケンスに基づくアシスト作曲作業を行うことができるため、例えば全体を再作曲したり、部分的に再作曲して差し替えたりすることが可能となる。
また、ユーザ端末10は、プラグインがホストアプリ上の既存のマスタートラックへの情報アクセスを可能にするよう設定してもよい。マスタートラックとは、例えば、DAW内のミキシングを経て、ステレオ2チャンネルにトラックダウンされたものである。プラグインは、マスタートラックにアクセスし、オーディオデータを信号処理により分析し、コード進行情報等を得る。ユーザ端末10は、分析された情報を処理サーバ100に送信し、最適なコード進行を機械学習等により自動的に推論させてもよい。そして、処理サーバ100は、このコード進行情報をもとにスタイルパレットシーケンスを定義する。これにより、ユーザは、処理サーバ100により生成されたスタイルパレットシーケンスに基づくアシスト作曲作業を行うことができるため、例えば全体を再作曲したり、部分的に再作曲して差し替えたりすることが可能となる。
上記のように、ユーザ端末10は、ホストアプリに種々の機能が備わっている場合、かかる機能をプラグインに適用させ、本開示に係る情報処理に利用してもよい。例えば、上記のように、ユーザ端末10は、DAWにより生成されたコード進行に基づいてスタイルパレットシーケンスを生成させたり、当該スタイルパレットシーケンスをネットワーク上で公開したりすることにより、ユーザ間の作曲処理を活性化させることができる。
[2-4.情報処理システムの態様]
実施形態では、処理サーバ100は、クラウドネットワーク上に設置されることを前提としているが、この例に限られず、ユーザ端末10と通信可能であれば、処理サーバ100や管理サーバ200は、LAN(Local Area Network)等のネットワーク上に設置されてもよい。
実施形態では、ユーザ端末10内に第1アプリと第2アプリとがインストールされる例を示したが、第1アプリと第2アプリは、別の装置にインストールされるアプリであってもよい。例えば、ユーザ端末10は、第1アプリの機能のみを保持し、別の装置であるタブレット端末やスマートフォン等にインストールされた第2アプリを制御することにより、音源の再生等を行ってもよい。
(3.その他の実施形態)
上述した各実施形態に係る処理は、上記各実施形態以外にも種々の異なる形態にて実施されてよい。
また、上記各実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上述してきた各実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
また、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、他の効果があってもよい。
(4.本開示に係る情報処理装置の効果)
上述してきたように、本開示に係る情報処理装置(実施形態ではユーザ端末10)は、第1アプリ(実施形態ではホストアプリ20)と、第1アプリの機能を拡張するプラグインとして機能する第2アプリ(実施形態ではプラグイン22)とを制御する。第1アプリは、第1アプリにおける第2アプリの動作を制御する制御部(実施形態ではホストアプリ制御部161)を備える。第2アプリは、機械学習に基づく作曲機能を制御するための設定情報を選択する選択部(実施形態では選択部166)と、ネットワークを介して、設定情報を機械学習に基づく作曲機能を実行する外部サーバ(実施形態では処理サーバ100)に送信し、外部サーバによって作曲された楽曲データを受信する送受信部(実施形態では送受信部167)と、を備える。
このように、本開示に係る情報処理装置は、自動作曲機能を有する第2アプリをプラグインとして取り扱うとともに、実際の作曲処理を外部サーバに実行させる。これにより、情報処理装置は、処理負荷を抑制しつつ、作業効率のよい環境をユーザに提供することができる。すなわち、情報処理装置は、AIによる自動作曲機能の利便性を向上させることができる。
送受信部は、楽曲データとして、規定された長さの小節におけるコード、小節におけるメロディ、小節におけるベース音を受信する。これにより、情報処理装置は、楽曲データを個別に参照したり編集したりすることができるので、ユーザの利便性を向上させることができる。
制御部は、楽曲データに含まれるコード、メロディ又はベース音を再生する際の音色を指定するための楽器情報を個別に設定する。これにより、情報処理装置は、多様な再生環境を提供することができる。
制御部は、楽曲データに含まれるコード、メロディ又はベース音に関する情報を表示するウインドウを各々個別に表示するよう制御する。これにより、情報処理装置は、ユーザの編集操作の利便性を向上させることができる。
制御部は、ユーザの操作に従い、コード、メロディ又はベース音に関する情報を表示する各ウインドウと、第1アプリに関する情報が表示されたウインドウ間の情報の送受信を制御する。これにより、情報処理装置は、第1アプリと第2アプリ間でドラッグアンドドロップ等の操作で情報のやりとりを行うことができるため、ユーザの編集操作の利便性を向上させることができる。
制御部は、ユーザの操作に従い、コード、メロディ又はベース音に関する情報を表示する各ウインドウ間の情報の送受信を制御する。これにより、情報処理装置は、ユーザの編集操作の利便性を向上させることができる。
選択部は、設定情報として、機械学習の学習データとなる素材楽曲を指定するための指定情報(実施形態ではスタイルパレット)を選択する。送受信部は、選択部によって選択された指定情報を外部サーバに送信する。これにより、情報処理装置は、ユーザが所望する種々の特徴を指定して自動作曲を実行することができる。
選択部は、ユーザの操作に従い、予め記憶部(実施形態では記憶部15)に記憶された指定情報であって、指定情報の特徴を示す特徴情報と、特徴情報に対応付けられた複数の素材楽曲とを含む指定情報を選択する。これにより、情報処理装置は、ユーザが指定情報を選択する際の利便性を向上させることができる。
選択部は、外部サーバによって作曲される楽曲データのうち一部の小節に対応する第1の指定情報と、他の一部の小節に対応する第2の指定情報とを組み合わせた組み合わせ指定情報(実施形態ではスタイルパレットシーケンス)を選択する。これにより、情報処理装置は、多様な楽曲を自動生成することができる。
送受信部は、組み合わせ指定情報に基づいて外部サーバによって作曲された楽曲データを受信した場合、組み合わせ指定情報と楽曲データとを対応付けて記憶部に格納する。これにより、情報処理装置は、過去に作成した楽曲データの基となった組み合わせ指定情報等をユーザが参照する際の利便性を向上させることができる。
選択部は、設定情報として、指定情報に基づいて外部サーバによって作曲される楽曲データに含まれる音符の長さ情報を選択する。送受信部は、指定情報及び音符の長さ情報を外部サーバに送信する。これにより、情報処理装置は、ユーザが所望する特徴を有する楽曲データを生成することができる。
選択部は、設定情報として、指定情報に基づいて外部サーバによって作曲される楽曲データにおける、コードに含まれる構成音がメロディに登場する確率を決定するための情報を選択する。送受信部は、指定情報及びコードに含まれる構成音がメロディに登場する確率を決定するための情報を外部サーバに送信する。これにより、情報処理装置は、ユーザが所望する特徴を有する楽曲データを生成することができる。
選択部は、設定情報として、指定情報に基づいて外部サーバによって作曲される楽曲データにおいて、指定情報に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を選択する。送受信部は、指定情報及び指定情報に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を外部サーバに送信する。これにより、情報処理装置は、ユーザが所望する特徴を有する楽曲データを生成することができる。
第2アプリは、ユーザの操作に従い、外部サーバによって作曲された過去の楽曲データの履歴を記憶部から呼び出すとともに、過去の楽曲データの履歴を表示するよう制御する表示制御部(実施形態では表示制御部169)をさらに備える。これにより、情報処理装置は、過去の操作履歴等をユーザが参照する際の利便性を向上させることができる。
表示制御部は、外部サーバによって作曲された過去の楽曲データに対して実行された編集操作の履歴を記憶部から呼び出すとともに、過去の楽曲データに対して実行された編集操作を表示するよう制御する。これにより、情報処理装置は、過去の操作履歴等をユーザが参照する際の利便性を向上させることができる。
送受信部は、外部サーバによって作曲された楽曲データを受信したのち、ユーザによって楽曲データに対する再生もしくは編集操作が行われた場合、再生もしくは編集操作に関する情報を外部サーバに送信する。これにより、情報処理装置は、ユーザが行った編集等を基づいて更なる学習を処理サーバ100に実行させることができる。
選択部は、設定情報として、作曲される楽曲におけるコード進行をユーザの操作に基づいて選択する。送受信部は、選択部によって選択されたコード進行を外部サーバに送信する。これにより、情報処理装置は、指定情報によらずとも、ユーザが所望する楽曲データを提供することができる。
制御部は、第1アプリにおいて生成されたコード進行に関する情報を第2アプリに送るよう制御する。選択部は、設定情報として、第1アプリにおいて生成されたコード進行に関する情報を選択する。送受信部は、第1アプリにおいて生成されたコード進行に関する情報を外部サーバに送信し、コード進行に関する情報に基づいて作曲された楽曲データを受信する。これにより、情報処理装置は、DAW等の第1アプリの機能を活かした作曲処理を実行することができる。
(5.ハードウェア構成)
上述してきた各実施形態に係るユーザ端末10やや処理サーバ100や管理サーバ200等の情報機器は、例えば図20に示すような構成のコンピュータ1000によって実現される。以下、実施形態に係るユーザ端末10を例に挙げて説明する。図20は、ユーザ端末10の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス1500、及び入出力インターフェイス1600を有する。コンピュータ1000の各部は、バス1050によって接続される。
CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。例えば、CPU1100は、ROM1300又はHDD1400に格納されたプログラムをRAM1200に展開し、各種プログラムに対応した処理を実行する。
ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるBIOS(Basic Input Output System)等のブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を非一時的に記録する、コンピュータが読み取り可能な記録媒体である。具体的には、HDD1400は、プログラムデータ1450の一例である本開示に係る情報処理プログラムを記録する記録媒体である。
通信インターフェイス1500は、コンピュータ1000が外部ネットワーク1550(例えばインターネット)と接続するためのインターフェイスである。例えば、CPU1100は、通信インターフェイス1500を介して、他の機器からデータを受信したり、CPU1100が生成したデータを他の機器へ送信したりする。
入出力インターフェイス1600は、入出力デバイス1650とコンピュータ1000とを接続するためのインターフェイスである。例えば、CPU1100は、入出力インターフェイス1600を介して、キーボードやマウス等の入力デバイスからデータを受信する。また、CPU1100は、入出力インターフェイス1600を介して、ディスプレイやスピーカーやプリンタ等の出力デバイスにデータを送信する。また、入出力インターフェイス1600は、所定の記録媒体(メディア)に記録されたプログラム等を読み取るメディアインターフェイスとして機能してもよい。メディアとは、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
例えば、コンピュータ1000が実施形態に係るユーザ端末10として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされた情報処理プログラムを実行することにより、制御部16等の機能を実現する。また、HDD1400には、本開示に係る情報処理プログラムや、記憶部15内のデータが格納される。なお、CPU1100は、プログラムデータ1450をHDD1400から読み取って実行するが、他の例として、外部ネットワーク1550を介して、他の装置からこれらのプログラムを取得してもよい。
なお、本技術は以下のような構成も取ることができる。
(1)
第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置であって、
前記第1アプリは、
前記第1アプリにおける前記第2アプリの動作を制御する制御部を備え、
前記第2アプリは、
機械学習に基づく作曲機能を制御するための設定情報を選択する選択部と、
ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する送受信部と、
を備える情報処理装置。
(2)
前記送受信部は、
前記楽曲データとして、規定された長さの小節におけるコード、当該小節におけるメロディ、当該小節におけるベース音を受信する
前記(1)に記載の情報処理装置。
(3)
前記制御部は、
前記楽曲データに含まれるコード、メロディ又はベース音を再生する際の音色を指定するための楽器情報を個別に設定する
前記(2)に記載の情報処理装置。
(4)
前記制御部は、
前記楽曲データに含まれるコード、メロディ又はベース音に関する情報を表示するウインドウを各々個別に表示するよう制御する
前記(3)に記載の情報処理装置。
(5)
前記制御部は、
ユーザの操作に従い、前記コード、メロディ又はベース音に関する情報を表示する各ウインドウと、前記第1アプリに関する情報が表示されたウインドウ間の情報の送受信を制御する
前記(4)に記載の情報処理装置。
(6)
前記制御部は、
ユーザの操作に従い、前記コード、メロディ又はベース音に関する情報を表示する各ウインドウ間の情報の送受信を制御する
前記(4)又は(5)に記載の情報処理装置。
(7)
前記選択部は、
前記設定情報として、前記機械学習の学習データとなる素材楽曲を指定するための指定情報を選択し、
前記送受信部は、
前記選択部によって選択された指定情報を前記外部サーバに送信する
前記(1)~(6)のいずれかに記載の情報処理装置。
(8)
前記選択部は、
ユーザの操作に従い、予め記憶部に記憶された指定情報であって、前記指定情報の特徴を示す特徴情報と、当該特徴情報に対応付けられた複数の素材楽曲とを含む指定情報を選択する
前記(7)に記載の情報処理装置。
(9)
前記選択部は、
前記外部サーバによって作曲される楽曲データのうち一部の小節に対応する第1の指定情報と、他の一部の小節に対応する第2の指定情報とを組み合わせた組み合わせ指定情報を選択する
前記(7)又は(8)に記載の情報処理装置。
(10)
前記送受信部は、
前記組み合わせ指定情報に基づいて前記外部サーバによって作曲された楽曲データを受信した場合、当該組み合わせ指定情報と当該楽曲データとを対応付けて記憶部に格納する
前記(9)に記載の情報処理装置。
(11)
前記選択部は、
前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データに含まれる音符の長さ情報を選択し、
前記送受信部は、
前記指定情報及び前記音符の長さ情報を前記外部サーバに送信する
前記(7)~(10)のいずれかに記載の情報処理装置。
(12)
前記選択部は、
前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データにおける、コードに含まれる構成音がメロディに登場する確率を決定するための情報を選択し、
前記送受信部は、
前記指定情報及び前記コードに含まれる構成音がメロディに登場する確率を決定するための情報を前記外部サーバに送信する
前記(7)~(11)のいずれかに記載の情報処理装置。
(13)
前記選択部は、
前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データにおいて、当該指定情報に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を選択し、
前記送受信部は、
前記指定情報及び当該指定情報に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を前記外部サーバに送信する
前記(7)~(12)のいずれかに記載の情報処理装置。
(14)
前記第2アプリは、
ユーザの操作に従い、前記外部サーバによって作曲された過去の楽曲データの履歴を記憶部から呼び出すとともに、当該過去の楽曲データの履歴を表示するよう制御する表示制御部をさらに備える
前記(1)~(13)のいずれかに記載の情報処理装置。
(15)
前記表示制御部は、
前記外部サーバによって作曲された過去の楽曲データに対して実行された編集操作の履歴を記憶部から呼び出すとともに、当該過去の楽曲データに対して実行された編集操作を表示するよう制御する
前記(14)に記載の情報処理装置。
(16)
前記送受信部は、
前記外部サーバによって作曲された楽曲データを受信したのち、ユーザによって当該楽曲データに対する再生もしくは編集操作が行われた場合、当該再生もしくは編集操作に関する情報を当該外部サーバに送信する
前記(1)~(15)のいずれかに記載の情報処理装置。
(17)
前記選択部は、
前記設定情報として、作曲される楽曲におけるコード進行をユーザの操作に基づいて選択し、
前記送受信部は、
前記選択部によって選択されたコード進行を前記外部サーバに送信する
前記(1)~(16)のいずれかに記載の情報処理装置。
(18)
前記制御部は、
前記第1アプリにおいて生成されたコード進行に関する情報を前記第2アプリに送るよう制御し、
前記選択部は、
前記設定情報として、前記第1アプリにおいて生成されたコード進行に関する情報を選択し、
前記送受信部は、
前記第1アプリにおいて生成されたコード進行に関する情報を前記外部サーバに送信し、当該コード進行に関する情報に基づいて作曲された楽曲データを受信する
前記(1)~(17)のいずれかに記載の情報処理装置。
(19)
第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置によって実行される情報処理方法であって、
前記第1アプリは、
前記第1アプリにおける前記第2アプリの動作を制御し、
前記第2アプリは、
機械学習に基づく作曲機能を制御するための設定情報を選択し、
ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する
情報処理方法。
(20)
第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置において、
前記第1アプリは、
前記第1アプリにおける前記第2アプリの動作を制御し、
前記第2アプリは、
機械学習に基づく作曲機能を制御するための設定情報を選択し、
ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する
ように前記情報処理装置を機能させる情報処理プログラム。
1 情報処理システム
10 ユーザ端末
11 通信部
12 入力部
13 表示部
15 記憶部
151 作曲設定情報
152 作曲楽曲情報
153 履歴情報
154 担当楽器情報
16 制御部
161 ホストアプリ制御部
162 プラグイン制御部
163 再生部
164 表示制御部
165 プラグインアプリ制御部
166 選択部
167 送受信部
168 再生部
169 表示制御部
100 処理サーバ
200 管理サーバ

Claims (18)

  1. 第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置であって、
    前記第1アプリは、
    前記第1アプリにおける前記第2アプリの動作を制御する制御部を備え、
    前記第2アプリは、
    機械学習に基づく作曲機能を制御するための設定情報を選択する選択部と、
    ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信する送受信部と、
    を備え
    前記選択部は、
    前記設定情報として、前記機械学習の学習データとなる素材楽曲を指定するための指定情報であって、前記指定情報の特徴を示す特徴情報と、当該特徴情報に対応付けられた複数の素材楽曲とを含む指定情報を選択し、
    前記特徴情報に対応付けられた複数の素材楽曲は、楽曲配信サービスにおいてユーザが任意に組み合わせた楽曲から構成され、
    前記送受信部は、
    前記選択部によって選択された指定情報を前記外部サーバに送信する
    情報処理装置。
  2. 前記送受信部は、
    前記楽曲データとして、規定された長さの小節におけるコード、当該小節におけるメロディ、当該小節におけるベース音を受信する
    請求項1に記載の情報処理装置。
  3. 前記制御部は、
    前記楽曲データに含まれるコード、メロディ又はベース音を再生する際の音色を指定するための楽器情報を個別に設定する
    請求項2に記載の情報処理装置。
  4. 前記制御部は、
    前記楽曲データに含まれるコード、メロディ又はベース音に関する情報を表示するウインドウを各々個別に表示するよう制御する
    請求項3に記載の情報処理装置。
  5. 前記制御部は、
    ユーザの操作に従い、前記コード、メロディ又はベース音に関する情報を表示する各ウインドウと、前記第1アプリに関する情報が表示されたウインドウ間の情報の送受信を制御する
    請求項4に記載の情報処理装置。
  6. 前記制御部は、
    ユーザの操作に従い、前記コード、メロディ又はベース音に関する情報を表示する各ウインドウ間の情報の送受信を制御する
    請求項4に記載の情報処理装置。
  7. 前記選択部は、
    前記外部サーバによって作曲される楽曲データのうち一部の小節に対応する第1の指定情報と、他の一部の小節に対応する第2の指定情報とを組み合わせた組み合わせ指定情報を選択する
    請求項に記載の情報処理装置。
  8. 前記送受信部は、
    前記組み合わせ指定情報に基づいて前記外部サーバによって作曲された楽曲データを受信した場合、当該組み合わせ指定情報と当該楽曲データとを対応付けて記憶部に格納する
    請求項に記載の情報処理装置。
  9. 前記選択部は、
    前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データに含まれる音符の長さ情報を選択し、
    前記送受信部は、
    前記指定情報及び前記音符の長さ情報を前記外部サーバに送信する
    請求項に記載の情報処理装置。
  10. 前記選択部は、
    前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データにおける、コードに含まれる構成音がメロディに登場する確率を決定するための情報を選択し、
    前記送受信部は、
    前記指定情報及び前記コードに含まれる構成音がメロディに登場する確率を決定するための情報を前記外部サーバに送信する
    請求項に記載の情報処理装置。
  11. 前記選択部は、
    前記設定情報として、前記指定情報に基づいて前記外部サーバによって作曲される楽曲データにおいて、当該指定情報に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を選択し、
    前記送受信部は、
    前記指定情報及び当該指定情報に含まれる素材楽曲以外の素材楽曲の種別及び量を決定するための情報を前記外部サーバに送信する
    請求項に記載の情報処理装置。
  12. 前記第2アプリは、
    ユーザの操作に従い、前記外部サーバによって作曲された過去の楽曲データの履歴を記憶部から呼び出すとともに、当該過去の楽曲データの履歴を表示するよう制御する表示制御部をさらに備える
    請求項1に記載の情報処理装置。
  13. 前記表示制御部は、
    前記外部サーバによって作曲された過去の楽曲データに対して実行された編集操作の履歴を記憶部から呼び出すとともに、当該過去の楽曲データに対して実行された編集操作を表示するよう制御する
    請求項12に記載の情報処理装置。
  14. 前記送受信部は、
    前記外部サーバによって作曲された楽曲データを受信したのち、ユーザによって当該楽曲データに対する再生もしくは編集操作が行われた場合、当該再生もしくは編集操作に関する情報を当該外部サーバに送信する
    請求項1に記載の情報処理装置。
  15. 前記選択部は、
    前記設定情報として、作曲される楽曲におけるコード進行をユーザの操作に基づいて選択し、
    前記送受信部は、
    前記選択部によって選択されたコード進行を前記外部サーバに送信する
    請求項1に記載の情報処理装置。
  16. 前記制御部は、
    前記第1アプリにおいて生成されたコード進行に関する情報を前記第2アプリに送るよう制御し、
    前記選択部は、
    前記設定情報として、前記第1アプリにおいて生成されたコード進行に関する情報を選択し、
    前記送受信部は、
    前記第1アプリにおいて生成されたコード進行に関する情報を前記外部サーバに送信し、当該コード進行に関する情報に基づいて作曲された楽曲データを受信する
    請求項1に記載の情報処理装置。
  17. 第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置によって実行される情報処理方法であって、
    前記第1アプリは、
    前記第1アプリにおける前記第2アプリの動作を制御し、
    前記第2アプリは、
    機械学習に基づく作曲機能を制御するための設定情報を選択し、
    ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信し、
    さらに前記第2アプリは、
    前記設定情報として、前記機械学習の学習データとなる素材楽曲を指定するための指定情報であって、前記指定情報の特徴を示す特徴情報と、当該特徴情報に対応付けられた複数の素材楽曲とを含む指定情報を選択し、
    前記特徴情報に対応付けられた複数の素材楽曲は、楽曲配信サービスにおいてユーザが任意に組み合わせた楽曲から構成され、
    前記選択された指定情報を前記外部サーバに送信する
    情報処理方法。
  18. 第1アプリと、当該第1アプリの機能を拡張するプラグインとして機能する第2アプリとを制御する情報処理装置において、
    前記第1アプリは、
    前記第1アプリにおける前記第2アプリの動作を制御し、
    前記第2アプリは、
    機械学習に基づく作曲機能を制御するための設定情報を選択し、
    ネットワークを介して、前記設定情報を前記機械学習に基づく作曲機能を実行する外部サーバに送信し、当該外部サーバによって作曲された楽曲データを受信し、
    さらに前記第2アプリは、
    前記設定情報として、前記機械学習の学習データとなる素材楽曲を指定するための指定情報であって、前記指定情報の特徴を示す特徴情報と、当該特徴情報に対応付けられた複数の素材楽曲とを含む指定情報を選択し、
    前記特徴情報に対応付けられた複数の素材楽曲は、楽曲配信サービスにおいてユーザが任意に組み合わせた楽曲から構成され、
    前記選択された指定情報を前記外部サーバに送信する
    ように前記情報処理装置を機能させる情報処理プログラム。
JP2020572065A 2019-02-12 2019-03-08 情報処理装置、情報処理方法及び情報処理プログラム Active JP7322900B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023121958A JP2023129639A (ja) 2019-02-12 2023-07-26 情報処理装置、情報処理方法及び情報処理プログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962804450P 2019-02-12 2019-02-12
US62/804,450 2019-02-12
PCT/JP2019/009353 WO2020166094A1 (ja) 2019-02-12 2019-03-08 情報処理装置、情報処理方法及び情報処理プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023121958A Division JP2023129639A (ja) 2019-02-12 2023-07-26 情報処理装置、情報処理方法及び情報処理プログラム

Publications (2)

Publication Number Publication Date
JPWO2020166094A1 JPWO2020166094A1 (ja) 2021-12-16
JP7322900B2 true JP7322900B2 (ja) 2023-08-08

Family

ID=72044448

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020572065A Active JP7322900B2 (ja) 2019-02-12 2019-03-08 情報処理装置、情報処理方法及び情報処理プログラム
JP2023121958A Pending JP2023129639A (ja) 2019-02-12 2023-07-26 情報処理装置、情報処理方法及び情報処理プログラム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023121958A Pending JP2023129639A (ja) 2019-02-12 2023-07-26 情報処理装置、情報処理方法及び情報処理プログラム

Country Status (6)

Country Link
US (1) US20220130359A1 (ja)
EP (1) EP3926619A4 (ja)
JP (2) JP7322900B2 (ja)
CN (1) CN113424253A (ja)
DE (1) DE112019006852T5 (ja)
WO (1) WO2020166094A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116057622A (zh) * 2020-08-31 2023-05-02 索尼集团公司 信息处理方法、信息处理程序和信息处理装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008541149A (ja) 2005-05-02 2008-11-20 サイレントミュージックバンド コーポレーション インターネットを通したパターン組み合わせによる音楽製作システム及び方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IES20020519A2 (en) * 2001-10-09 2004-11-17 Thurdis Developments Ltd Multimedia apparatus
US7169996B2 (en) * 2002-11-12 2007-01-30 Medialab Solutions Llc Systems and methods for generating music using data/music data file transmitted/received via a network
US20140000440A1 (en) * 2003-01-07 2014-01-02 Alaine Georges Systems and methods for creating, modifying, interacting with and playing musical compositions
US20070044639A1 (en) * 2005-07-11 2007-03-01 Farbood Morwaread M System and Method for Music Creation and Distribution Over Communications Network
US20090071315A1 (en) * 2007-05-04 2009-03-19 Fortuna Joseph A Music analysis and generation method
US20090125799A1 (en) * 2007-11-14 2009-05-14 Kirby Nathaniel B User interface image partitioning
US8779268B2 (en) * 2009-06-01 2014-07-15 Music Mastermind, Inc. System and method for producing a more harmonious musical accompaniment
US9257053B2 (en) * 2009-06-01 2016-02-09 Zya, Inc. System and method for providing audio for a requested note using a render cache
US9177540B2 (en) * 2009-06-01 2015-11-03 Music Mastermind, Inc. System and method for conforming an audio input to a musical key
WO2012021799A2 (en) * 2010-08-13 2012-02-16 Rockstar Music, Inc. Browser-based song creation
US9110817B2 (en) 2011-03-24 2015-08-18 Sony Corporation Method for creating a markov process that generates sequences
KR101274961B1 (ko) * 2011-04-28 2013-06-13 (주)티젠스 클라이언트단말기를 이용한 음악 컨텐츠 제작시스템
US20180374461A1 (en) * 2014-08-22 2018-12-27 Zya, Inc, System and method for automatically generating media
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
WO2017094327A1 (ja) * 2015-11-30 2017-06-08 ソニー株式会社 情報処理装置、情報処理システム、情報処理方法及びプログラム
KR101886534B1 (ko) * 2016-12-16 2018-08-09 아주대학교산학협력단 인공지능을 이용한 작곡 시스템 및 작곡 방법
US20180190250A1 (en) * 2016-12-30 2018-07-05 ILIO Enterprises, LLC Control system for audio production
CN114051635A (zh) * 2019-07-08 2022-02-15 索尼集团公司 信息处理设备、信息处理方法和信息处理程序
JPWO2021106694A1 (ja) * 2019-11-26 2021-06-03
US20220406280A1 (en) * 2019-11-26 2022-12-22 Sony Group Corporation Information processing apparatus, information processing method, and information processing program
CN116057622A (zh) * 2020-08-31 2023-05-02 索尼集团公司 信息处理方法、信息处理程序和信息处理装置
US11183160B1 (en) * 2021-02-16 2021-11-23 Wonder Inventions, Llc Musical composition file generation and management system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008541149A (ja) 2005-05-02 2008-11-20 サイレントミュージックバンド コーポレーション インターネットを通したパターン組み合わせによる音楽製作システム及び方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BRIOT,Jean-Pierre and PACHET, Francois,Music Generation by Deep Learning - Challenges and Directions,Neural Computing and Applications, Springer Verlag,2018年09月30日,pp.1-17,https://arxiv.org/pdf/1712.04371.pdf,Sections 2.3, 5.2
JEAN-PIERRE BRIOT ET AL,Deep Learning Techniques for Music Generation-A Survey,arxiv:1709.01620v1,2017年09月06日,インターネット<URL:arxiv.org/pdf/1709.01620v1.pdf>

Also Published As

Publication number Publication date
CN113424253A (zh) 2021-09-21
US20220130359A1 (en) 2022-04-28
EP3926619A1 (en) 2021-12-22
EP3926619A4 (en) 2022-04-20
WO2020166094A1 (ja) 2020-08-20
JPWO2020166094A1 (ja) 2021-12-16
JP2023129639A (ja) 2023-09-14
DE112019006852T5 (de) 2021-10-28

Similar Documents

Publication Publication Date Title
US11277216B2 (en) System and method for generating an audio file
US8173883B2 (en) Personalized music remixing
JP6151426B2 (ja) Djステムシステム及び方法
CN101454824B (zh) 用于自动产生音乐作品的方法和装置
US7792782B2 (en) Internet music composition application with pattern-combination method
US20100250510A1 (en) System and method of multimedia content editing
US11869468B2 (en) Musical composition file generation and management system
JP2008165837A (ja) マッシュアップ用データの配布方法、マッシュアップ方法、マッシュアップ用データのサーバ装置およびマッシュアップ装置
WO2021216115A1 (en) System, method, and non-transitory computer-readable storage medium for collaborating on a musical composition over a communication network
JP2019506065A (ja) 音楽のセグメント別動画再生方法及び装置
US20120072841A1 (en) Browser-Based Song Creation
JP2023129639A (ja) 情報処理装置、情報処理方法及び情報処理プログラム
US20110231426A1 (en) Song transition metadata
US7612279B1 (en) Methods and apparatus for structuring audio data
WO2020054064A1 (ja) 楽曲編集システム、及び楽曲編集方法
Cliff hpDJ: An automated DJ with floorshow feedback
US20240055024A1 (en) Generating and mixing audio arrangements
CN115064143A (zh) 一种伴奏音频生成方法、电子设备及可读存储介质
KR20020027683A (ko) 인터넷상에서 하나의 곡에 대한 다양한 음악 정보 제공 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230228

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230627

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230710

R151 Written notification of patent or utility model registration

Ref document number: 7322900

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151