説明

プログラム、及び編集装置

【課題】編集前の楽曲の音色を可能な限り保持しつつも、楽曲の印象を編集前の楽曲から変更するように音楽を編集するプログラム、及び編集装置の提供。
【解決手段】 対象楽曲Aの楽音波形を、対象楽曲Aにて用いられている音源毎に分離して、楽器音波形を生成する音源分離処理を実行する(S130)。楽器音波形での時間軸上の個々の音符に対応する区間である単音波形に関する情報である楽音分類情報を生成し(S140)、対象楽曲Aから特定楽曲Bへと変更する内容(以下、変更内容とする)が予め規定された1つの移植パターンを取得する(S160)。その取得した移植パターンに従って、対象楽曲Aの楽譜データを編集して編集楽曲A'の楽譜データを生成した結果、及び楽音分類情報に基づいて、本発明の特定音波形に相当する対象楽曲A'の楽音波形を生成する(S180)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、音楽を編集するプログラム、及び編集装置に関する。
【背景技術】
【0002】
従来、予め作られた楽曲Aを表し、MIDI形式のデータによって作製されたMIDI楽曲データを、そのMIDI楽曲データにおいて変更すべき音楽の要素(楽曲のテンポや、リズム、伴奏音の音高、伴奏音の強さ等)及び変更内容について記述した編集データに基づいて編集した編集楽曲データを作成するデータ編集装置が知られている(特許文献1参照)。
【0003】
このように、特許文献1に記載のデータ編集装置では、編集データに記述された内容に従って、編集データに記述された音と、MIDI楽曲データを構成する一部の音(以下、特定構成音とする)とを合成することや、編集データに記述された音へと特定構成音を変更することで、編集楽曲データを作成している。
【0004】
これにより、特許文献1に記載のデータ編集装置によって作成された編集作曲データは、当該編集作曲データに基づいて演奏された楽曲A'の印象を、編集前の楽曲Aの印象とは異なる印象とする(アレンジする)ことができる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2002−169550号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、MIDI楽曲データに基づいて楽曲を演奏した演奏音は、一般的に、その楽曲データを演奏するMIDIの音源(以下、楽曲音源)の機種によって、音色そのものが異なる。また、楽曲音源は、機種によってコントロールチェンジ(即ち、演奏制御)が異なるため、たとえ、同一のMIDI楽曲データを演奏しても、その楽曲音源の機種(例えば、カラオケ装置)から出力される演奏音の音色が異なる。
【0007】
したがって、楽曲音源の機種によっては、特許文献1に記載のデータ編集装置によって編集された編集楽曲データに基づく楽曲A'の音色が、編集前の楽曲Aの音色から大きくかけ離れるという問題があった。このように楽曲A'の音色が編集前の楽曲Aの音色から大きくかけ離れると、それぞれの楽曲を聞いた利用者に違和感を与えるという問題があった。
【0008】
つまり、特許文献1に記載のデータ編集装置では、楽曲A'の印象を、編集前の楽曲Aの印象から変更しつつも、楽曲A'の音色を編集前の音色に維持することができない、つまり、楽曲音源の音色が大きく異なる場合には,アレンジの変化以上の聴感変化が生じてしまう、という問題があった。
【0009】
そこで、本発明は、楽曲の印象を編集前の楽曲から変更したときに、編集前の楽曲の音色を可能な限り保持するように音楽を編集するプログラム、及び編集装置を提供することを目的とする。
【課題を解決するための手段】
【0010】
上記目的を達成するためになされた本発明は、楽音波形取得手順と、採譜手順と、音源分離手順と、楽音分類手順と、楽譜編集手順と、波形変更手順とをコンピュータに実行させるプログラムに関する。
【0011】
本発明のプログラムは、楽音波形取得手順にて、楽曲の一つである対象楽曲を構成する1つ1つの音である楽音が時間軸に沿って推移した波形(以下、楽音波形とする)を取得し、採譜手順にて、その取得した楽音波形を採譜することで、対象楽曲の楽譜データ(以下、対象楽譜データとする)を生成する。
【0012】
ただし、本発明における楽譜データとは、楽曲にて用いられる音源である楽曲音源毎に出力される個々の出力音について、少なくとも音高及び出力タイミングが規定された楽譜トラックを備えるデータである。また、本発明における音源とは、音を出力する物体であり、例えば、楽器や人物(人の発声)を含む。そして、本発明において、音源のうち楽曲音源(即ち、出力音を出力する音源)は、楽譜データに基づいて音を出力する装置(例えば、MIDI音源)である。
【0013】
さらに、音源分離手順にて、楽音波形取得手順で取得した楽音波形を、対象楽曲にて用いられる音源毎に出力された楽音が時間軸に沿って推移した波形(以下、楽器音波形)に分離する。すると、楽音分類手順にて、採譜手順で生成された対象楽譜データ、及び音源分離手順で分離した楽器音波形に基づいて、時間軸上の個々の音符に対応する楽器音波形での区間である単音波形を、該音符に対応する楽音の楽器種類と音高とに分類した情報である楽音分類情報として、音源の種類と対応付けて生成する。
【0014】
一方、楽譜編集手順では、対象楽曲とは異なる楽曲である特定楽曲の楽譜データ(以下、特定楽譜データとする)を取得すると共に、予め生成された情報によって規定された音源に対応する楽譜トラックの少なくとも一部の楽音を、採譜手順で生成した対象楽譜データに含まれるものから、特定楽譜データに含まれるものへと変更した楽譜トラック(以下、変更楽譜トラックとする)を生成する。
【0015】
その後、波形変更手順にて、変更楽譜トラックに対応する音源の種類の中で、変更楽譜トラックで規定された出力音に対しては、楽音分類情報を用いて、対応する楽音を表す特定音の楽器種類と音高との単音波形を時間軸に沿って配置することで、特定音が時間軸に沿って推移した波形である特定音波形を生成する。
【0016】
このような本発明のプログラムによれば、対象楽曲にて用いられる音源にて演奏された楽音の一部、つまり楽音の波形を、特定楽曲の予め規定された楽曲の波形へと変更することができる。したがって、本発明のプログラムによれば、楽曲音源の種類によって生じる「音色」の違いを可能な限り排除しつつ、楽曲のアレンジによって生じる楽曲全体の印象の変化を際立たせることができる。
【0017】
しかも、本発明のプログラムでは、対象楽曲の一部を変更する際に、対象楽曲のMIDI楽譜情報を変更し、対象楽曲における楽音の波形を用いて、変更後の楽音である特定音が時間軸に沿って推移した特定音波形、即ち、変更後の楽曲のデータを波形出力として生成している。
【0018】
よって、本発明のプログラムによれば、対象楽曲の一部を変更しても、その変更後の楽曲の音色については、変更前の楽曲の音色を可能な限り維持することができる。
すなわち、本発明のプログラムによれば、対象楽曲の音色を可能な限り保持しつつも、楽曲の印象を編集前の楽曲から変更した音楽を生成(編集)することができる。
【0019】
なお、本発明のプログラムによれば、例えば、DVD−ROM、CD−ROM、ハードディスク等のコンピュータ読み取り可能な記録媒体に当該プログラムを記録し、必要に応じてコンピュータにロードさせて起動することや、必要に応じて通信回線を介してコンピュータに取得させて起動することにより用いることができる。
【0020】
また、本発明のプログラムにおける音源分離手順は、出力音取得手順と、補正量導出手順と、修正手順と、楽音解析手順と、修正音取得手順と、修正音解析手順と、振幅比率導出手順と、区間波形導出手順と、分離実行手順とをコンピュータに実行させても良い(請求項2)。
【0021】
このうち、出力音取得手順では、採譜手順で生成された対象楽譜データに基づいて、全ての出力音が時間軸に沿って推移した波形(以下、出力音波形とする)を取得する。続く、補正量導出手順では、楽音波形の特性を表す楽音情報と、出力音波形の特性を表す出力音情報とを、楽音情報と出力音情報とが一致するように照合した結果に基づき、出力音の音高及び出力タイミングについて、対象楽譜データの補正量を導出する。
【0022】
そして、修正手順では、その導出した補正量に従って、出力音を補正することで修正出力音へと修正した対象楽譜データである修正楽譜データを生成し、楽音解析手順では、楽音波形取得手順で取得した楽音波形に含まれる周波数と各周波数における強度とを表す楽音振幅スペクトルを、対象楽曲に時間軸に沿って単位時間毎に導出する。
【0023】
さらに、修正音取得手順では、修正手順で生成された修正楽譜データにおける楽譜トラックの一つに規定された修正出力音が、修正楽譜データにおける時間軸に沿って推移した波形である修正音波形を取得する。続く、修正音解析手順では、その取得した修正音波形に含まれる周波数と各周波数における強度とを表す修正音振幅スペクトルを、修正楽譜データの時間軸に沿って単位時間毎に導出する。そして、振幅比率導出手順では、楽音振幅スペクトルでの周波数における強度と、修正音振幅スペクトルでの周波数における強度との比を表す振幅比率を、各周波数について導出する。
【0024】
さらには、区間波形導出手順にて、振幅比率導出手順で導出された振幅比率それぞれを、楽音振幅スペクトルでの各周波数における強度に乗じた結果である分離スペクトルから、時間軸に沿った音の波形である区間波形を導出する。その後、分離実行手順にて、区間波形を対象楽曲の時間軸に沿って配することで、楽器音波形を生成する。
【0025】
このような本発明のプログラムによれば、出力音の音高及び出力タイミングについて補正した後に導出した分離スペクトルから区間波形、ひいては、楽器音波形を生成するため、楽音波形からの楽器音波形の分離を精度良く実行することができる。
【0026】
また、本発明のプログラムにおいて、楽譜編集手順は、変更楽譜トラックを生成するときに、対象楽譜データにおける楽譜トラックから、変更した変更点を表す変更点情報を、変更楽譜トラックの一部として生成しても良い。
【0027】
この場合、本発明のプログラムにおける波形変更手順は、楽譜編集手順で生成された変更点情報によって表された変更点を、変更対象とする楽譜トラックに対応する楽器音波形に反映することで、特定音波形を生成しても良い(請求項3)。
【0028】
このような本発明のプログラムによれば、変更点情報によって表された変更点について、変更対象とする楽譜トラックに対応する楽器音波形から変更することで、特定音波形を生成することができる。この結果、本発明のプログラムによれば、変更した箇所だけを処理するので、全体を処理するのに比べて、特定音波形の生成に要する処理量を低減できる。
【0029】
さらに、本発明のプログラムにおいて、楽音分類手順は、音源毎に予め用意され、かつ各音源から出力される音の振幅スペクトルを表す楽音モデルを、楽器音波形の振幅スペクトルに照合した結果、一致度が最も高い楽音モデルに対応する音源の種類を、楽音分類情報と対応付けても良い(請求項4)。
【0030】
このような楽音分類手順によれば、楽器音推移を演奏した音源の種類を確実に特定することができ、楽音分類情報と対応付けることができる。
また、本発明のプログラムにおいて、楽音分類手順は、該楽音の音高、音長、及び強さの組合せ毎に、単音波形を分類することで、楽音分類情報を生成しても良い(請求項5)。
【0031】
このような本発明のプログラムによれば、対象楽曲を構成する楽音を、より詳細に分類することができる。
なお、本発明は、音楽(楽曲)を編集する編集装置としてなされたものでも良い(請求項6)。
【0032】
このように、本発明が編集装置としてなされている場合、本発明の編集装置は、楽音波形取得手段と、採譜手段と、音源分離手段と、楽音分類手段と、楽譜編集手段と、波形変更手段とを備えていても良い。
【0033】
ただし、本発明の編集装置においては、楽音波形取得手段が、楽曲の一つである対象楽曲を構成する1つ1つの音である楽音が時間軸に沿って推移した波形(即ち、楽音波形)を取得し、その取得した楽音波形を採譜することで、採譜手段が、対象楽曲の楽譜データ(即ち、対象楽譜データ)を生成する。そして、音源分離手段が、楽音波形取得手段で取得した楽音波形を、対象楽曲にて用いられる音源毎に出力された楽音が時間軸に沿って推移した波形(即ち、楽器音波形)に分離する。
【0034】
さらに、楽音分類手段が、採譜手段で生成された対象楽譜データ、及び音源分離手段で分離した楽器音波形に基づいて、時間軸上の個々の音符に対応する楽器音波形での区間である単音波形を、該音符に対応する楽音の楽器種類と音高とに分類した情報である楽音分類情報として、前記音源の種類と対応付けて生成する。これと共に、楽譜編集手段が、対象楽曲とは異なる楽曲である特定楽曲の楽譜データ(即ち、特定楽譜データ)を取得すると共に、予め生成された情報によって規定された音源に対応する楽譜トラックの少なくとも一部の楽音を、採譜手段で生成した対象楽譜データに含まれるものから、特定楽譜データに含まれるものへと変更した楽譜トラック(即ち、変更楽譜トラック)を生成する。
【0035】
すると、波形変更手段が、変更楽譜トラックに対応する音源の種類の中で、変更楽譜トラックで規定された出力音に対しては、楽音分類情報を用いて、対応する楽音を表す特定音の楽器種類と音高との単音波形を時間軸に沿って配置することで、特定音が時間軸に沿って推移した波形である特定音波形を生成する。
【0036】
このような楽曲編集装置によれば、請求項1に記載のプログラムと同様の効果を得ることができる。
【図面の簡単な説明】
【0037】
【図1】本発明が適用された編集装置の概略構成を示すブロック図である。
【図2】音楽編集処理の処理手順を示すフローチャートである。
【図3】音楽編集処理にて用いられる移植パターンを例示した図面である。
【図4】音楽編集処理にて実行される音源分離処理の処理手順を示すフローチャートである。
【図5】音源分離処理にて実行されるトラック分離処理の処理手順を示すフローチャートである。
【図6】音楽編集処理にて用いられる移植パターンの変形例を例示した図面である。
【発明を実施するための形態】
【0038】
以下に本発明の実施形態を図面と共に説明する。
〈編集装置の構成について〉
本発明が適用された編集装置は、予め生成された1つの楽曲である対象楽曲Aを編集するものである。具体的には、本実施形態の編集装置は、対象楽曲Aに対応する音響データ、及び対象楽曲Aとは別の楽曲として予め生成された特定楽曲Bに対応する楽譜データに基づき、対象楽曲Aにおける一部の楽音を、特定楽曲Bにおける一部の楽音へと変更するように編集し、編集楽曲A'に対応する楽譜データ及び音響データを生成する装置である。
【0039】
この編集装置を実現するために、本実施形態の編集装置は、図1に示す情報処理装置10によって構成されている。図1に示すように、情報処理装置10は、通信部11と、音響データ読取部12と、入力受付部13と、表示部14と、音声入力部15と、音声出力部16と、音源モジュール17と、記憶部18と、制御部20とを備えている。
【0040】
このような編集装置を実現するための音響データは、楽曲にて用いられた全ての音源から出力される個々の楽音の音圧が時間軸に沿って推移した波形(以下、楽音波形と称す)を表すデータである。この音響データは、一般的に、CDやDVDなどの記憶媒体に記憶される。なお、ここで言う楽音とは、楽曲を構成する1つ1つの音(音符に対応する音)である。
【0041】
また、楽譜データは、楽曲の楽譜を表すデータであり、例えば、周知のMIDI(musical instrument deigital interface)規格によって作成されている。
【0042】
本実施形態における楽譜データは、対応する楽曲を区別するデータである識別データと、本発明の楽曲音源の一例である音源モジュール17が演奏する楽譜を表した楽譜トラックとを少なくとも備えている。
【0043】
このうち、各楽譜トラックは、個々の楽音に対応し、音源モジュール17(例えば、MIDI音源)から出力される音である出力音について規定されている。その楽譜トラックに規定される内容として、少なくとも、個々の出力音を出力する期間(以下、音符長)、及び個々の出力音の音高(いわゆるノートナンバー)、個々の出力音の強さ(いわゆるアタック、ベロシティ、ディケイなど)がある。
【0044】
ただし、楽譜トラックでの音符長は、当該出力音の出力を開始するまでの当該楽曲の演奏開始からの時刻を表す出力タイミング(いわゆるノートオンタイミング)と、当該出力音の出力を終了するまでの当該楽曲の演奏開始からの時刻を表す終了タイミング(いわゆるノートオフタイミング)とによって規定されている。なお、以下では、楽譜トラックに規定された出力音を演奏音とも称す。
【0045】
次に、本実施形態の情報処理装置10を構成する通信部11は、情報処理装置10をネットワーク(例えば、専用回線やWAN)に接続し、その接続されたネットワークを介して外部と通信を行うものである。
【0046】
音響データ読取部12は、記憶媒体に記憶されている音響データに基づいて、その音響データに対応する楽曲を構成する楽音の波形を読み取る装置(例えば、CDやDVDの読取装置)である。
【0047】
そして、入力受付部13は、外部からの操作に従って情報や指令の入力を受け付ける入力機器(例えば、キーボードやポインティングデバイス)である。表示部14は、画像を表示する表示装置(例えば、液晶ディスプレイやCRT等)である。また、音声入力部15は、音声を電気信号に変換して制御部20に入力する装置(いわゆるマイクロホン)である。音声出力部16は、制御部20からの電気信号を音声に変換して出力する装置(いわゆるスピーカ)である。
【0048】
音源モジュール17は、楽譜データに基づいて、出力音を出力する装置であり、例えば、周知のMIDI(Musical Instrument Digital Interface)音源によって構成されている。そして、音源モジュール17において、出力音として音が模擬される楽器は、鍵盤楽器(例えば、ピアノやパイプオルガンなど)、弦楽器(例えば、バイオリンやビオラ、ギター、琴など)、打楽器(例えば、ドラムやシンバル、ティンパニー、木琴など)、及び管楽器(例えば、クラリネットやトランペット、フルート、尺八など)などであり、予め登録されている。
【0049】
また、記憶部18は、記憶内容を読み書き可能に構成された不揮発性の記憶装置(例えば、ハードディスク装置)である。この記憶部18には、特定楽曲Bに対応する楽譜データや処理プログラムが格納される。
【0050】
さらに、制御部20は、電源が切断されても記憶内容を保持する必要がある処理プログラムやデータを格納するROM21と、処理プログラムやデータを一時的に格納するRAM22と、ROM21やRAM22に記憶された処理プログラムに従って各処理(各種演算)を実行するCPU23とを少なくとも有した周知のコンピュータを中心に構成されている。
【0051】
なお、本実施形態における処理プログラムとして、対象楽曲Aに対応する音響データ、及び特定楽曲Bに対応する楽譜データに基づいて、対象楽曲Aにおける一部の楽音を、特定楽曲Bにおける一部の楽音へと変更して編集し、編集楽曲A'に対応する音響データを生成する音楽編集処理を、制御部20が実行する処理プログラムが予め用意されている。
〈音楽編集処理の処理内容について〉
次に、制御部20が実行する音楽編集処理の処理内容について説明する。
【0052】
この音楽編集処理は、入力受付部13を介して音楽編集処理を起動するための起動指令が入力されると実行される。
そして、音楽編集処理は、起動されると、図2に示すように、音響データ読取部12にて対象楽曲Aに対応する音響データを読み取ることで、対象楽曲Aの楽音波形を取得する(S110)。
【0053】
続いて、S110にて取得した対象楽曲Aの楽音波形に対して採譜処理を実行することで、対象楽曲Aの楽音波形を採譜して、対象楽曲Aにて用いられた音源(楽器)毎に楽譜トラック、ひいては、対象楽曲Aに対応する楽譜データを生成する(S120)。以下、このS120にて生成される対象楽曲Aの楽譜データを対象楽譜データと称す。
【0054】
ただし、本実施形態の採譜処理には、楽譜トラック毎に対応する音源の種類を特定する処理(以下、音源特定処理とする)が含まれている。この音源特定処理を実行することで、対象楽譜データを構成する各楽譜トラックには、当該楽譜トラックに対応する音源(楽器)の種類が対応付けられる。
【0055】
具体的に、音源特定処理では、採譜した結果である個々の音について、その各音の振幅スペクトルに、音源が出力する音の振幅スペクトルとして音源毎に予め用意された各楽音モデルを照合し、その照合した結果として類似度を導出する。そして、類似度が最も高い楽音モデルに対応する音源から出力された楽音であるものと特定し、その特定した音源の種類を楽譜トラックに対応付けている。
【0056】
このように、音源特定処理において導出される類似度は、振幅スペクトルにおける周波数ピークや振幅スペクトルの包絡の波形といった振幅スペクトルの包絡同士の類似度合いである。そして、導出される類似度は、1つの楽譜トラックに対して1つの値、即ち、1つの楽譜トラックを構成する全ての出力音に対応する値が平均化されたものであることが好ましい。
【0057】
なお、採譜処理において、楽音波形を採譜して楽譜データを生成する過程は、周知の処理であるため、ここでの詳しい説明は省略する。
さらに、対象楽曲Aの楽音波形を、対象楽曲Aにて用いられている音源毎に分離して、各音源からの楽音が時間軸に沿って推移した波形である楽器音波形を生成する音源分離処理を実行する(S130)。
【0058】
その音源分離処理にて分離された楽器音波形、及びS120にて生成された対象楽譜データに基づいて、時間軸上の個々の音符(即ち、対象楽譜データを構成する楽譜トラックの各出力音)に対応する楽器音波形での区間である単音波形に関する情報である楽音分類情報を生成し、記憶部18に記憶する音源推定処理を実行する(S140)。本実施形態の音源推定処理では、単音波形を、対応する音符(出力音)の楽器種類、音高、音の強さ(ベロシティなど)の組合せ毎に分類して、平均化した情報を楽音分類情報としている。
【0059】
このS140にて生成された楽音分類情報が記憶された記憶部18は、各音符(出力音)に対応する単音波形が、対応する音符(出力音)の楽器種類、音高、音の強さが紐付けられたデータベース(以下、音源DBとも称す)として機能する。
【0060】
なお、本実施形態のS140では、対象楽譜データにおける音符が和音である場合、その和音を構成する個々の音符毎に、楽音分類情報を生成する。このように和音を、当該和音を構成する個々の音符に分割する方法としては、和音を構成する個々の楽音の振幅スペクトルにおける周波数ピークを検出することなどが考えられる。
【0061】
続いて、予め用意された特定楽曲Bの楽譜データを取得し(S150)、さらに、対象楽曲Aから特定楽曲Bへと変更する内容(以下、変更内容とする)が予め規定された1つの移植パターン(本発明の「予め規定された情報」に相当)を取得する(S160)。
【0062】
本実施形態における移植パターンは、楽曲毎に予め用意されたものであり、変更内容として、一部の楽譜トラックにおける少なくとも一つの楽音からなる区間(即ち、少なくとも1つの音符、以下、変更対象楽音とする)と、その変更対象楽音に対する変更の具体的な内容とを含む。
【0063】
本実施形態における変更の具体的な内容とは、図3に示すように、対象楽曲A(図3中:原曲)の内容を維持するか、特定楽曲B(図3中:適応曲)の内容へと変更するかが規定された情報である。さらに、本実施形態における変更対象楽音としては、例えば、図3に示すように、楽曲のメロディを構成する楽譜トラックや、楽曲のハーモニーを構成する楽譜トラック、楽曲のリズムを決定する楽譜トラックにおける少なくとも一部の楽音からなる区間が挙げられる。ただし、本実施形態の移植パターンでは、楽曲のメロディを構成する楽譜トラックに関する変更の具体的な内容は、対象楽曲Aの内容を維持するように規定されている。
【0064】
なお、本実施形態における変更対象楽音は、変更対象とする楽譜トラックを構成する全ての楽音(出力音)でも良いし、変更対象とする楽譜トラックを構成する一部の楽音でも良い。
【0065】
続いて、S160にて取得した移植パターンに従って、対象楽曲Aの楽譜データを編集し、編集楽曲A'の楽譜データを生成する。(S170)。具体的には、本実施形態におけるS170では、S160にて取得した移植パターンにおける変更対象楽音を、その変更対象楽音についての「変更の具体的な内容」に従って、対象楽曲Aの楽譜データの内容から特定楽曲Bの楽譜データの内容へと変更する。さらに、本実施形態のS170では、対象楽曲Aの楽譜データから、編集楽曲A'の楽譜データを生成する際に、対象楽曲Aの楽譜データから変更した変更点(即ち、変更対象楽音をどのように変更したのかという点)を表す情報である変更点情報を生成する。
【0066】
続いて、少なくともS140にて生成した楽音分類情報に基づいて、対象楽曲Aの楽音波形を編集して、本発明の特定音波形に相当する編集楽曲A'の楽音波形を生成する(S180)。具体的に、本実施形態のS180では、変更点情報によって表わされた変更点、即ち、変更対象楽音に対応する楽音である特定音について、音源DBとして機能する記憶部18に記憶されている音源波形の中から、その特定音に対応する単音波形を読み出す。その読み出した単音波形を、対象楽曲Aの楽器音波形における対応する区間に置き換えることで、編集楽曲A'の楽器音波形、ひいては、編集楽曲A'全体の楽音波形を生成する。
【0067】
さらに、S170で生成した編集楽曲A'の楽譜データ、及びS180で生成した編集楽曲'の楽音波形を出力する(S190)。ここでの出力とは、記憶部18に記憶することでも良いし、通信部11を介して外部に出力することでも良いし、音声出力部16などから演奏音を出力することでも良い。
【0068】
その後、本音楽編集処理を終了する。
〈音源分離処理の処理内容について〉
次に、制御部20が実行する音源分離処理について説明する。
【0069】
図4に示すように、音源分離処理は、音楽編集処理のS130にて起動されると、対象楽曲Aの楽譜データを取得する(S310)。
そして、S310にて取得した楽譜データと、先のS110にて取得した楽音波形とに基づいて、対象楽曲Aを構成する楽音の音高に、演奏音の音高が一致するように、周波数軸方向に沿って当該楽譜データを修正する音高補正処理を実行する(S320)。具体的に、本実施形態のS320では、対象楽曲Aを構成する楽音のパワースペクトルを楽音情報とし、対象楽曲Aの演奏音のパワースペクトルを出力音情報として、それらのパワースペクトルが周波数軸に沿って一致する補正量を導出した上で、対象楽曲Aの楽譜データを修正する。
【0070】
以下、演奏音について修正が実行された楽譜データを修正楽譜データと称し、修正された演奏音を修正演奏音と称す。
さらに、音高補正処理によって、楽音の音高に音高が一致するように修正した修正演奏音の出力タイミングが、対象楽曲Aの楽音の演奏開始タイミングに一致するように、時間軸方向に沿って修正楽譜データを修正する時間補正処理を実行する(S330)。具体的に、本実施形態のS330では、対象楽曲Aを構成する楽音の非調波成分における振幅ピークを楽音情報とし、対象楽曲Aの演奏音の非調波成分における振幅ピークを出力音情報として、それらの非調波成分における振幅ピークが時間軸に沿って一致する補正量を導出した上で、対象楽曲Aの楽譜データを修正する。
【0071】
続いて、時間補正処理によって、楽音の演奏開始タイミングに出力タイミングが一致するように修正した修正演奏音の強さが、楽音の強さ(即ち、音量)に一致するように、修正楽譜データを修正するための補正量である音量比率kvを導出する音量補正処理を実行する(S340)。
【0072】
そして、演奏音の音高や出力タイミングが修正された修正楽譜データ、及び音量比率を用いて、楽音波形から、一つの音源から出力された音が時間軸に沿って推移した波形である楽器音波形を生成するトラック分離処理を実行する(S350)。
【0073】
その後、本音源分離処理を終了する。
〈トラック分離処理の処理内容について〉
次に、音源分離処理のS350にて起動されるトラック分離処理について説明する。
【0074】
このトラック分離処理は、起動されると、図5に示すように、先のS110で取得した楽音波形の全体を、時間軸に沿って設定された分析時間twi毎に周波数解析(本実施形態では、離散フーリエ変換)し、その周波数解析の結果をRAM22(または記憶部18)に記憶する(S410)。このS410の周波数解析により、各分析時間twiの楽音波形に含まれる周波数、及び各周波数における強度(以下、楽音スペクトル振幅値とする)tusp(twi,fi)が、実数部及び虚数部の両方について導出される。また、符合fiは、周波数の区分(即ち、離散フーリエ変換によって導出される周波数区分:単位[bin])である。
【0075】
次に、楽譜トラック毎に対応付けられたインデックス番号mtiを初期値(本実施形態では、初期値=0)に設定する(S420)。続いて、設定されている楽譜トラックのインデックス番号(以下、設定インデックスとする)mtiが、対象楽譜データにおける最大のインデックス番号(以下、最終インデックス)MTN未満であるか否かを判定する(S430)。
【0076】
そのS430での判定の結果、設定インデックスmtiが最終インデックスMTN未満であれば(S430:YES)、設定インデックスmtiを1つインクリメントする(S440)。続いて、楽器音波形を初期値に設定する(S450)。本実施形態において、楽器音波形の初期値は、音圧が時間軸に沿って全て「0」に設定されたゼロ波形である。
【0077】
そして、設定インデックスmtiに対応する楽譜トラックの演奏音のインデックス番号(以下、演奏音インデックスとする)niを初期値(本実施形態では、0とする)に設定する(S460)。続いて、演奏音インデックスniが、設定インデックスmtiに対応する楽譜トラックにおいて、最大のインデックス番号(以下、最終演奏音とする)NNPT(mti)未満であるか否かを判定する(S470)。
【0078】
そのS470での判定の結果、演奏音インデックスniが、最終演奏音NNPT(mti)未満であれば(S470:YES)、演奏音インデックスniを規定数インクリメントする(S480)。続いて、今回のS480でインクリメントされた規定数の演奏音インデックスniに対応する演奏音が、時間軸に沿って推移した波形である修正音波形を取得する(S490)。
【0079】
そして、取得した修正音波形を、時間軸に沿って設定された分析時間twi毎に周波数解析(ここでは、離散フーリエ変換)する(S500)。この周波数解析の結果、修正音波形における分析時間twiに含まれる周波数毎に、その周波数における強度(以下、スペクトル振幅値)ntsp(twi,fi)が、実数部及び虚数部の両方について導出される。
【0080】
続いて、先の音量補正量導出処理で導出された音量比率kvを、個々のスペクトル振幅値ntsp(twi,fi)に乗じた修正音スペクトル振幅値ntsp_n(twi,fi)を導出する(S510)。その修正音スペクトル振幅値ntsp_n(twi,fi)と、楽音スペクトル振幅値tusp(twi,fi)との比を表す振幅比率kr(twi,fi)を導出する(S520)。本実施形態のS520では、振幅比率krを、周波数区分fi毎に導出する。ただし、振幅比率kr(twi,fi)の値は、修正音スペクトル振幅値ntsp(twi,fi)が、楽音スペクトル振幅値tusp(twi,fi)よりも大きければ、「1」とし、修正音スペクトル振幅値ntsp(twi,fi)が、楽音スペクトル振幅値tusp(twi,fi)よりも小さければ、両スペクトル振幅値の比としている。
【0081】
そして、楽音スペクトル振幅値tusp(twi,fi)に、振幅比率krを乗算して分離スペクトル振幅値ntcpsp(twi,fi)、即ち、分離スペクトルを導出する(S530)。具体的には、このS530では、実数部及び虚数部それぞれの楽音スペクトル振幅値tusp(twi,fi)に、分析時間twiと周波数区分fiとの組み合わせに対応する振幅比率kr(twi,fi)を乗算する。
【0082】
さらに、S530にて導出された分離スペクトル振幅値ntcpsp(twi,fi)を、RAM22(または記憶部18)に記憶され、対応する時間(期間)における楽音スペクトル振幅値tuspから減算することで、RAM22(または記憶部18)に記憶された楽音スペクトル振幅値tuspを新たな楽音スペクトル振幅値tuspへと更新する(S540)。
【0083】
続いて、分離スペクトル振幅値ntcpsp(twi,fi)を逆離散フーリエ変換(IDFT)して、区間波形を導出する(S550)。そして、初期値に設定されている楽器音波形のうち、対応する区間について、S550で導出された区間波形へと置き換えることで、新たな楽器音波形へと更新する(S560)。
【0084】
その後、S470へと戻り、演奏音インデックスniが、設定インデックスmtiにおける最終演奏音NNPT(mti)未満であれば(S470:YES)、S470からS560のステップを繰り返す。そして、演奏音インデックスniが、設定インデックスmtiにおける最終演奏音NNPT(mti)以上となると(S470:NO)、その時点での楽器音波形を記憶部18に記憶する(S570)。すなわち、音響データから、対象トラックに対応する音源から出力される音(つまり、楽器音波形)を分離し終えると、S570を経てS430へと戻る。
【0085】
そのS570を経て戻ったS430では、設定インデックスmtiが、最終インデックスMTN未満であれば(S430:YES)、S440からS570のステップを繰り返す。そして、設定されている設定インデックスmtiが、最終インデックスMTN以上となると(S430:NO)、本音源分離処理を終了する。すなわち、楽譜データに含まれる全ての楽譜トラックについて、音響データから楽器音波形を生成して分離し終えると、本音源分離処理を終了する。
[実施形態の効果]
以上説明したように、本実施形態の編集装置1によれば、対象楽曲Aにて用いられる音源にて演奏された楽音の一部を、特定楽曲Bの予め規定された楽音へと変更することができる。したがって、本実施形態の編集装置1によれば、聴取者による対象楽曲Aの聴感上の印象を、変更前の楽音の波形での曲の印象から、楽音の波形が変更された後の曲の印象へと、変えることができる。
【0086】
しかも、本実施形態の編集装置1では、対象楽曲Aの一部を変更する際に、対象楽曲Aの楽譜データを変更して曲の演奏出力を変えるのではなく、対象楽曲Aにおける楽音の波形を用いて、変更後の楽音である特定音が時間軸に沿って推移した特定音波形、即ち、編集楽曲Bを波形出力として生成している。
【0087】
よって、本実施形態の編集装置1によれば、対象楽曲Aの一部を変更しても、その変更後の楽曲(即ち、編集楽曲A')の音色については、対象楽曲Aの音色を可能な限り維持することができる。
【0088】
すなわち、本実施形態の編集装置1によれば、対象楽曲Aの音色を可能な限り保持しつつも、楽曲の印象を編集前の楽曲から変更した音楽(即ち、編集楽曲A')を生成(編集)することができる。
【0089】
なお、本実施形態の編集装置1では、変更対象とする楽譜トラックに対応する楽器音波形を、変更点情報によって表された変更点についてのみ変更することで、特定音波形を生成することができる。この結果、本実施形態の編集装置1によれば、対象楽曲Aから変更した箇所だけを処理するので、楽曲全体を処理する場合に比べて、特定音波形の生成に要する処理量を低減できる。
[その他の実施形態]
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において、様々な態様にて実施することが可能である。
【0090】
例えば、上記実施形態における移植パターンの変更対象楽音は、楽曲のメロディを構成する楽譜トラックや、楽曲のハーモニーを構成する楽譜トラックにおける少なくとも一部の楽音が規定されていたが、変更対象楽音は、これに限るものではない。つまり、変更対象楽音として、図6に示すように、ボーカルに対応する楽譜トラックや、メインバッキングに対応する楽譜トラック、ベースに対応する楽譜トラック、ドラムに対応する楽譜トラックを構成する楽音などが規定されていても良い。さらに、上記実施形態における移植パターンによって対象楽曲Aから特定楽曲Bに変更可能な音楽の要素として、楽曲のテンポや、楽曲の拍子、楽曲の曲構造、音楽のキー、楽曲のコード進行などが含まれていても良い。
【0091】
ただし、移植パターンが図6に示すように構成されている場合であっても、楽曲のメロディ関連する音楽の要素(図6では、拍子、曲構造、キーなど)に関しては、対象楽曲Aの内容を維持するように、「具体的な変更内容」が規定されていることが好ましい。
【0092】
なお、上記実施形態の音源分離処理におけるS140では、対象楽曲Aにて用いられた楽音についてのみ、楽音分類情報を生成していたが、この楽音分類情報は、対象楽曲Aにて用いられていない楽音の単音波形についても、対象楽曲Aにて用いられた楽音の単音波形から近似するように生成しても良い。このように、対象楽曲Aにて用いられていない楽音の単音波形について、対象楽曲Aにて用いられた楽音の単音波形から近似して生成する手法は、周知(例えば、特開2006−071806号)であるため、ここでの詳しい説明は省略する。ただし、対象楽曲Aにて用いられていない楽音の単音波形について、対象楽曲Aにて用いられた楽音の単音波形から近似して生成する際には、当該楽音に対応する演奏音のアタックの位置などは、基礎とした楽音のアタックの位置を維持することが好ましい。
【0093】
また、音楽編集処理における音源分離処理は、上記実施形態の手法に限るものではなく、楽音波形から、各音源について楽器音波形を分離可能であれば、どのような手法を用いても良い。
【0094】
さらに、上記実施形態の編集装置では、編集楽曲A'に対応する楽譜データ及び音響データの両方を生成していたが、生成するデータは、編集楽曲A'に対応する音響データのみでも良い。
[実施形態と特許請求の範囲との対応関係]
最後に、上記実施形態の記載と、特許請求の範囲の記載との関係を説明する。
【0095】
上記実施形態の音楽編集処理におけるS110が、本発明の楽音波形取得手順に相当し、音楽編集処理におけるS120が、本発明の採譜手順に相当し、音楽編集処理におけるS130が、本発明の音源分離手順に相当する。さらに、音楽編集処理におけるS140が、本発明の楽音分離手順に相当し、音楽編集処理におけるS150からS170が、本発明の楽譜編集手順に相当し、音楽編集処理のS180が、波形変更手順に相当する。
【符号の説明】
【0096】
10…情報処理装置 11…通信部 12…音響データ読取部 13…入力受付部 14…表示部 15…音声入力部 16…音声出力部 17…音源モジュール 18…記憶部 20…制御部 21…ROM 22…RAM 23…CPU

【特許請求の範囲】
【請求項1】
楽曲の一つである対象楽曲を構成する1つ1つの音である楽音が時間軸に沿って推移した波形である楽音波形を取得する楽音波形取得手順と、
楽曲にて用いられる音源である楽曲音源毎に出力される個々の出力音について、少なくとも音高及び出力タイミングが規定された楽譜トラックを備えるデータを楽譜データとし、前記楽音波形取得手順で取得した楽音波形を採譜することで、前記対象楽曲の楽譜データである対象楽譜データを生成する採譜手順と、
前記楽音波形取得手順で取得した楽音波形を、対象楽曲にて用いられる音源毎に出力された楽音が時間軸に沿って推移した波形である楽器音波形に分離する音源分離手順と、
前記採譜手順で生成された対象楽譜データ、及び前記音源分離手順で分離した楽器音波形に基づいて、各楽音に対応する前記楽器音波形での、時間軸上の個々の音符に対応する区間である単音波形を、対応する楽音の楽器種類と音高とに分類した情報である楽音分類情報として、前記音源の種類と対応付けて生成する楽音分類手順と、
前記対象楽曲とは異なる楽曲である特定楽曲の楽譜データである特定楽譜データを取得し、予め生成された情報によって規定された音源に対応する楽譜トラックの少なくとも一部の楽音を、前記採譜手順で生成した対象楽譜データに含まれるものから、前記特定楽譜データに含まれるものへと変更した楽譜トラックである変更楽譜トラックを生成する楽譜編集手順と、
前記変更楽譜トラックに対応する前記音源の種類の中で、前記変更楽譜トラックで規定された出力音に対しては、前記楽音分類情報を用いて、対応する楽音を表す特定音の楽器種類と音高との単音波形を時間軸に沿って配置することで、前記特定音が時間軸に沿って推移した波形である特定音波形を生成する波形変更手順と
をコンピュータに実行させることを特徴とするプログラム。
【請求項2】
前記音源分離手順は、
前記採譜手順で生成された対象楽譜データに基づいて、全ての出力音が時間軸に沿って推移した波形である出力音波形を取得する出力音取得手順と、
前記楽音波形取得手順にて取得した楽音波形の特性を表す楽音情報と、前記出力音取得手順にて取得した出力音波形の特性を表す出力音情報とを、前記楽音情報と前記出力音情報とが一致するように照合した結果に基づき、前記出力音の音高及び出力タイミングについて、前記対象楽譜データの補正量を導出する補正量導出手順と、
前記補正量導出手順にて導出した補正量に従って、前記出力音を補正することで修正出力音へと修正した前記対象楽譜データである修正楽譜データを生成する修正手順と、
前記楽音波形取得手順で取得した楽音波形に含まれる周波数と各周波数における強度とを表す楽音振幅スペクトルを、前記対象楽曲に時間軸に沿って単位時間毎に導出する楽音解析手順と、
前記修正手順で生成された修正楽譜データにおける楽譜トラックの一つに規定された前記修正出力音が、前記修正楽譜データにおける時間軸に沿って推移した波形である修正音波形を取得する修正音取得手順と、
前記修正音取得手順で取得した修正音波形に含まれる周波数と各周波数における強度とを表す修正音振幅スペクトルを、前記修正楽譜データの時間軸に沿って単位時間毎に導出する修正音解析手順と、
前記楽音解析手順で導出された楽音振幅スペクトルでの周波数における強度と、前記修正音解析手順で導出された修正音振幅スペクトルでの周波数における強度との比を表す振幅比率を、各周波数について導出する振幅比率導出手順と、
前記振幅比率導出手順で導出された振幅比率それぞれを、前記楽音振幅スペクトルでの各周波数における強度に乗じた結果である分離スペクトルから、時間軸に沿った音の波形である区間波形を導出する区間波形導出手順と、
前記区間波形導出手順にて導出した区間波形を前記対象楽曲の時間軸に沿って配することで、前記楽器音波形を生成する分離実行手順とを
コンピュータに実行させることを特徴とする請求項1に記載のプログラム。
【請求項3】
前記楽譜編集手順は、
前記変更楽譜トラックを生成するときに、前記対象楽譜データにおける楽譜トラックから、変更した変更点を表す変更点情報を、前記変更楽譜トラックの一部として生成し、
前記波形変更手順は、
前記楽譜編集手順で生成された変更点情報によって表された変更点を、変更対象とする楽譜トラックに対応する楽器音波形に反映することで、前記特定音波形を生成する
ことを特徴とする請求項1または請求項2に記載のプログラム。
【請求項4】
前記楽音分類手順は、
音源毎に予め用意され、かつ各音源から出力される音の振幅スペクトルを表す楽音モデルを、前記楽器音波形の振幅スペクトルに照合した結果、一致度が最も高い楽音モデルに対応する音源の種類を、前記楽音分類情報と対応付けることを特徴とする請求項1から請求項3のいずれか一項に記載のプログラム。
【請求項5】
前記楽音分類手順は、
該楽音の音高、音長、及び強さの組合せ毎に、前記単音波形を分類することで、前記楽音分類情報を生成することを特徴とする請求項1から請求項4のいずれか一項に記載のプログラム。
【請求項6】
楽曲の一つである対象楽曲を構成する1つ1つの音である楽音が時間軸に沿って推移した波形である楽音波形を取得する楽音波形取得手段と、
楽曲にて用いられる音源である楽曲音源毎に出力される個々の出力音について、少なくとも音高及び出力タイミングが規定された楽譜トラックを備えるデータを楽譜データとし、前記楽音波形取得手段で取得した楽音波形を採譜することで、前記対象楽曲の楽譜データである対象楽譜データを生成する採譜手段と、
前記楽音波形取得手段で取得した楽音波形を、対象楽曲にて用いられる音源毎に出力された楽音が時間軸に沿って推移した波形である楽器音波形に分離する音源分離手段と、
前記採譜手段で生成された対象楽譜データ、及び前記音源分離手段で分離した楽器音波形に基づいて、各楽音に対応する前記楽器音波形での、時間軸上の個々の音符に対応する区間である単音波形を、対応する楽音の楽器種類と音高とに分類した情報である楽音分類情報として、前記音源の種類と対応付けて生成する楽音分類手段と、
前記対象楽曲とは異なる楽曲である特定楽曲の楽譜データである特定楽譜データを取得し、予め生成された情報によって規定された音源に対応する楽譜トラックの少なくとも一部の楽音を、前記採譜手段で生成した対象楽譜データに含まれるものから、前記特定楽譜データに含まれるものへと変更した楽譜トラックである変更楽譜トラックを生成する楽譜編集手段と、
前記変更楽譜トラックに対応する前記音源の種類の中で、前記変更楽譜トラックで規定された出力音に対しては、前記楽音分類情報を用いて、対応する楽音を表す特定音の楽器種類と音高との単音波形を時間軸に沿って配置することで、前記特定音が時間軸に沿って推移した波形である特定音波形を生成する波形変更手段と
を備えることを特徴とする編集装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate