(57)【特許請求の範囲】
【請求項１】
複数のチャンネルからなる音響信号に対して、時間軸上に複数の単位区間を設定し、前記単位区間ごとに周波数解析を行なって、周波数と、強度値と、単位区間の始点に対応する区間開始時刻と、単位区間の終点に対応する区間終了時刻で構成される音素データを算出する音素データ算出段階と、
前記音素データ算出段階の処理を各入力チャンネルにおける全単位区間に対して行うことにより得られる全ての音素データについて、同一時刻、同一周波数をもつ音素データ同士を各入力チャンネル間において統合すると共に、統合元の複数の音素データの強度値に基づいて強度比率を付加した統合音素データを作成する音素データ統合段階を有し、
前記統合音素データの集合である符号データを得ることを特徴とする音響信号の符号化方法。
【請求項２】
複数のチャンネルからなる音響信号に対して、時間軸上に複数の単位区間を設定し、前記単位区間ごとに周波数解析を行なって、周波数と、強度値と、単位区間の始点に対応する区間開始時刻と、単位区間の終点に対応する区間終了時刻で構成される音素データを算出する音素データ算出段階と、
前記音素データ算出段階の処理を各入力チャンネルにおける全単位区間に対して行うことにより得られる全ての音素データについて、同一時刻、同一周波数をもつ音素データ同士を各チャンネル間において統合すると共に、統合元の複数の音素データの強度値に基づいて強度比率を付加した統合音素データを作成する音素データ統合段階と、
前記統合音素データの強度比率を用いて、再生用音源装置の出力チャンネル間音量バランスを制御し、複数の出力チャンネルより音響信号を再現する復号化段階と、
を有することを特徴とする音響信号の符号化復号化方法。
【請求項３】
さらに、前記統合音素データの強度比率を基に前記統合音素データのグループ化を行うと共にグループ化された統合音素データ群に強度比率を付加する符号化段階を有し、
前記復号化段階が、前記グループ化された統合音素データ群に対して、その強度比率に基づいて、所定の音源を割り当てることにより音響信号を再現するものであることを特徴とする請求項２に記載の音響信号の符号化復号化方法。
【請求項４】
前記音響信号が２チャンネルのステレオ音響信号であり、前記符号データが、ノートナンバー、ベロシティ、デルタタイムからなるＭＩＤＩデータであり、前記強度比率がパンポット情報であることを特徴とする請求項２または請求項３に記載の音響信号の符号化復号化方法。
【請求項５】
コンピュータに、複数のチャンネルからなる音響信号に対して、時間軸上に複数の単位区間を設定し、前記単位区間ごとに周波数解析を行なって、周波数と、強度値と、単位区間の始点に対応する区間開始時刻と、単位区間の終点に対応する区間終了時刻で構成される音素データを算出する音素データ算出段階、前記音素データ算出段階の処理を各入力チャンネルにおける全単位区間に対して行うことにより得られる全ての音素データについて、同一時刻、同一周波数をもつ音素データ同士を各入力チャンネル間において統合すると共に、統合元の複数の音素データの強度値に基づいて強度比率を付加した統合音素データを作成する音素データ統合段階を実行させるためのプログラム。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、放送メディア（ラジオ、テレビ）、通信メディア（ＣＳ映像・音声配信、インターネット音楽配信、通信カラオケ）、パッケージメディア（ＣＤ、ＭＤ、カセット、ビデオ、ＬＤ、ＣＤ−ＲＯＭ、ゲームカセット、携帯音楽プレーヤ向け固体メモリ媒体）などで提供する各種オーディオコンテンツの制作、並びに、専用携帯音楽プレーヤ、携帯電話・ＰＨＳ・ポケベルなどに向けたボーカルを含む音楽コンテンツ、歌舞伎・能・読経・詩歌など文芸作品の音声素材または語学教育音声教材のＭＩＤＩ伝送に利用するのに好適な音響信号の符号化技術に関する。
【０００２】
【従来の技術】
音響信号に代表される時系列信号には、その構成要素として複数の周期信号が含まれている。このため、与えられた時系列信号にどのような周期信号が含まれているかを解析する手法は、古くから知られている。例えば、フーリエ解析は、与えられた時系列信号に含まれる周波数成分を解析するための方法として広く利用されている。
【０００３】
このような時系列信号の解析方法を利用すれば、音響信号を符号化することも可能である。コンピュータの普及により、原音となるアナログ音響信号を所定のサンプリング周波数でサンプリングし、各サンプリング時の信号強度を量子化してデジタルデータとして取り込むことが容易にできるようになってきており、こうして取り込んだデジタルデータに対してフーリエ解析などの手法を適用し、原音信号に含まれていた周波数成分を抽出すれば、各周波数成分を示す符号によって原音信号の符号化が可能になる。
【０００４】
一方、電子楽器による楽器音を符号化しようという発想から生まれたＭＩＤＩ（Musical Instrument Digital Interface）規格も、パーソナルコンピュータの普及とともに盛んに利用されるようになってきている。このＭＩＤＩ規格による符号データ（以下、ＭＩＤＩデータという）は、基本的には、楽器のどの鍵盤キーを、どの程度の強さで弾いたか、という楽器演奏の操作を記述したデータであり、このＭＩＤＩデータ自身には、実際の音の波形は含まれていない。そのため、実際の音を再生する場合には、楽器音の波形を記憶したＭＩＤＩ音源が別途必要になるが、その符号化効率の高さが注目を集めており、ＭＩＤＩ規格による符号化および復号化の技術は、現在、パーソナルコンピュータを用いて楽器演奏、楽器練習、作曲などを行うソフトウェアに広く採り入れられている。
【０００５】
そこで、音響信号に代表される時系列信号に対して、所定の手法で解析を行うことにより、その構成要素となる周期信号を抽出し、抽出した周期信号をＭＩＤＩデータを用いて符号化しようとする提案がなされている。例えば、特開平１０−２４７０９９号公報、特開平１１−７３１９９号公報、特開平１１−７３２００号公報、特開平１１−９５７５３号公報、特開２０００−９９００９号公報、特開２０００−９９０９２号公報、特開２０００−９９０９３号公報、特開２０００−２６１３２２号公報、特開２００１−５４５０号公報、特開２００１−１４８６３３号公報には、任意の時系列信号について、構成要素となる周波数を解析し、その解析結果からＭＩＤＩデータを作成することができる種々の方法が提案されている。
【０００６】
【発明が解決しようとする課題】
上記各公報において提案してきたＭＩＤＩ符号化方式により、演奏録音等から得られる音響信号の効率的な符号化が可能になった。しかしながら、上記従来の符号化手法は、１つのチャンネルからなる音響信号を処理するための方法であるため、モノラルの音響信号を処理することには適しているが、ステレオの音響信号のような２チャンネルからなる音響信号については、必ずしも効率的に符号化処理することができない。もちろん、複数のチャンネルからなる信号を処理することは可能であるが、各チャンネルの信号を独立して処理するため、当然にチャンネル数分の演算処理を行う必要があり、負荷が膨大なものとなっている。また、符号化の結果得られる符号データ量についてもチャンネル数に応じて増大する。
【０００７】
上記のような点に鑑み、本発明は、ステレオ音響信号のような複数のチャンネルからなる音響信号についても、モノラル音響信号のような１つのチャンネルからなる音響信号とほぼ同程度の演算負荷で処理を行うことができると共に、符号データ量も抑えることが可能な音響信号の符号化方法を提供することを課題とする。
【０００８】
【課題を解決するための手段】
上記課題を解決するため、本発明では、複数のチャンネルからなる音響信号に対して、時間軸上に複数の単位区間を設定し、前記単位区間ごとに周波数解析を行なって、周波数と、強度値と、単位区間の始点に対応する区間開始時刻と、単位区間の終点に対応する区間終了時刻で構成される音素データを算出し、音素データ算出の処理を各入力チャンネルにおける全単位区間に対して行うことにより得られる全ての音素データについて、同一時刻、同一周波数をもつ音素データ同士を各入力チャンネル間において統合すると共に、統合元の複数の音素データの強度値に基づいて強度比率を付加した統合音素データを作成することにより、統合音素データの集合である符号データを得るようにしたことを特徴とする。
【０００９】
本発明によれば、ステレオ音響信号のような複数の入力チャンネルを有する音響信号について、各入力チャンネルごとに音素データを作成し、各入力チャンネルの音素データを統合すると共に、強度比率を付加するようにしたので、複数の入力チャンネルからの音響信号を、統合された１つのチャンネルの符号データとして扱うことができ、データ量および処理負荷の削減が行われる。この際、強度比率の情報を付加しているので、元の入力チャンネルの強度値バランスを失うことはない。
【００１０】
【発明の実施の形態】
以下、本発明の実施形態について図面を参照して詳細に説明する。
【００１１】
（音響信号符号化方法の基本原理）
はじめに、本発明に係る音響信号の符号化方法の基本原理を述べておく。この基本原理は、前掲の各公報に開示されているので、ここではその概要のみを簡単に述べることにする。
【００１２】
図１（ａ）に示すように、時系列信号としてアナログ音響信号が与えられたものとする。図１の例では、横軸に時間ｔ、縦軸に振幅（強度）をとって、この音響信号を示している。ここでは、まずこのアナログ音響信号を、デジタルの音響データとして取り込む処理を行う。これは、従来の一般的なＰＣＭの手法を用い、所定のサンプリング周波数でこのアナログ音響信号をサンプリングし、振幅を所定の量子化ビット数を用いてデジタルデータに変換する処理を行えば良い。ここでは、説明の便宜上、ＰＣＭの手法でデジタル化した音響データの波形も図１（ａ）のアナログ音響信号と同一の波形で示すことにする。
【００１３】
続いて、この解析対象となる音響信号の時間軸上に、複数の単位区間を設定する。図１（ａ）に示す例では、時間軸ｔ上に等間隔に６つの時刻ｔ１〜ｔ６が定義され、これら各時刻を始点および終点とする５つの単位区間ｄ１〜ｄ５が設定されている。図１の例では、全て同一の区間長をもった単位区間が設定されているが、個々の単位区間ごとに区間長を変えるようにしてもかまわない。あるいは、隣接する単位区間が時間軸上で部分的に重なり合うような区間設定を行ってもかまわない。
【００１４】
こうして単位区間が設定されたら、各単位区間ごとの音響信号（以下、区間信号と呼ぶことにする）について、それぞれ代表周波数を選出する。各区間信号には、通常、様々な周波数成分が含まれているが、例えば、その中で成分の強度割合の大きな周波数成分を代表周波数として選出すれば良い。ここで、代表周波数とはいわゆる基本周波数が一般的であるが、音声のフォルマント周波数などの倍音周波数や、ノイズ音源のピーク周波数も代表周波数として扱うことがある。代表周波数は１つだけ選出しても良いが、音響信号によっては複数の代表周波数を選出した方が、より精度の高い符号化が可能になる。図１（ｂ）には、個々の単位区間ごとにそれぞれ３つの代表周波数を選出し、１つの代表周波数を１つの代表符号（図では便宜上、音符として示してある）として符号化した例が示されている。ここでは、代表符号（音符）を収容するために３つのトラックＴ１，Ｔ２，Ｔ３が設けられているが、これは個々の単位区間ごとに選出された３つずつの代表符号を、それぞれ異なるトラックに収容するためである。
【００１５】
例えば、単位区間ｄ１について選出された代表符号ｎ（ｄ１，１），ｎ（ｄ１，２），ｎ（ｄ１，３）は、それぞれトラックＴ１，Ｔ２，Ｔ３に収容されている。ここで、各符号ｎ（ｄ１，１），ｎ（ｄ１，２），ｎ（ｄ１，３）は、ＭＩＤＩ符号におけるノートナンバーを示す符号である。ＭＩＤＩ符号におけるノートナンバーは、０〜１２７までの１２８通りの値をとり、それぞれピアノの鍵盤の１つのキーを示すことになる。具体的には、例えば、代表周波数として４４０Ｈｚが選出された場合、この周波数はノートナンバーｎ＝６９（ピアノの鍵盤中央の「ラ音（Ａ３音）」に対応）に相当するので、代表符号としては、ｎ＝６９が選出されることになる。もっとも、図１（ｂ）は、上述の方法によって得られる代表符号を音符の形式で示した概念図であり、実際には、各音符にはそれぞれ強度に関するデータも付加されている。例えば、トラックＴ１には、ノートナンバーｎ（ｄ１，１），ｎ（ｄ２，１）・・・なる音高を示すデータとともに、ｅ（ｄ１，１），ｅ（ｄ２，１）・・・なる強度を示すデータが収容されることになる。この強度を示すデータは、各代表周波数の成分が、元の区間信号にどの程度の度合いで含まれていたかによって決定される。具体的には、各代表周波数をもった周期関数の区間信号に対する相関値に基づいて強度を示すデータが決定されることになる。また、図１（ｂ）に示す概念図では、音符の横方向の位置によって、個々の単位区間の時間軸上での位置が示されているが、実際には、この時間軸上での位置を正確に数値として示すデータが各音符に付加されていることになる。
【００１６】
音響信号を符号化する形式としては、必ずしもＭＩＤＩ形式を採用する必要はないが、この種の符号化形式としてはＭＩＤＩ形式が最も普及しているため、実用上はＭＩＤＩ形式の符号データを用いるのが好ましい。ＭＩＤＩ形式では、「ノートオン」データもしくは「ノートオフ」データが、「デルタタイム」データを介在させながら存在する。「ノートオン」データは、特定のノートナンバーＮとベロシティーＶを指定して特定の音の演奏開始を指示するデータであり、「ノートオフ」データは、特定のノートナンバーＮとベロシティーＶを指定して特定の音の演奏終了を指示するデータである。また、「デルタタイム」データは、所定の時間間隔を示すデータである。ベロシティーＶは、例えば、ピアノの鍵盤などを押し下げる速度（ノートオン時のベロシティー）および鍵盤から指を離す速度（ノートオフ時のベロシティー）を示すパラメータであり、特定の音の演奏開始操作もしくは演奏終了操作の強さを示すことになる。
【００１７】
前述の方法では、第ｉ番目の単位区間ｄｉについて、代表符号としてＪ個のノートナンバーｎ（ｄｉ，１），ｎ（ｄｉ，２），・・・，ｎ（ｄｉ，Ｊ）が得られ、このそれぞれについて強度ｅ（ｄｉ，１），ｅ（ｄｉ，２），・・・，ｅ（ｄｉ，Ｊ）が得られる。そこで、次のような手法により、ＭＩＤＩ形式の符号データを作成することができる。まず、「ノートオン」データもしくは「ノートオフ」データの中で記述するノートナンバーＮとしては、得られたノートナンバーｎ（ｄｉ，１），ｎ（ｄｉ，２），・・・，ｎ（ｄｉ，Ｊ）をそのまま用いれば良い。一方、「ノートオン」データもしくは「ノートオフ」データの中で記述するベロシティーＶとしては、得られた強度ｅ（ｄｉ，１），ｅ（ｄｉ，２），・・・，ｅ（ｄｉ，Ｊ）を所定の方法で規格化した値を用いれば良い。また、「デルタタイム」データは、各単位区間の長さに応じて設定すれば良い。
【００１８】
（周期関数との相関を求める具体的な方法）
上述した基本原理の基づく方法では、区間信号に対して、１つまたは複数の代表周波数が選出され、この代表周波数をもった周期信号によって、当該区間信号が表現されることになる。ここで、選出される代表周波数は、文字どおり、当該単位区間内の信号成分を代表する周波数である。この代表周波数を選出する具体的な方法には、後述するように、短時間フーリエ変換を利用する方法と、一般化調和解析の手法を利用する方法とがある。いずれの方法も、基本的な考え方は同じであり、あらかじめ周波数の異なる複数の周期関数を用意しておき、これら複数の周期関数の中から、当該単位区間内の区間信号に対する相関が高い周期関数を見つけ出し、この相関の高い周期関数の周波数を代表周波数として選出する、という手法を採ることになる。すなわち、代表周波数を選出する際には、あらかじめ用意された複数の周期関数と、単位区間内の区間信号との相関を求める演算を行うことになる。そこで、ここでは、周期関数との相関を求める具体的な方法を述べておく。
【００１９】
複数の周期関数として、図２に示すような三角関数が用意されているものとする。これらの三角関数は、同一周波数をもった正弦関数と余弦関数との対から構成されており、１２８通りの標準周波数ｆ（０）〜ｆ（１２７）のそれぞれについて、正弦関数および余弦関数の対が定義されていることになる。ここでは、同一の周波数をもった正弦関数および余弦関数からなる一対の関数を、当該周波数についての周期関数として定義することにする。すなわち、ある特定の周波数についての周期関数は、一対の正弦関数および余弦関数によって構成されることになる。このように、一対の正弦関数と余弦関数とにより周期関数を定義するのは、信号に対する周期関数の相関値を求める際に、相関値が位相の影響を受ける事を考慮するためである。なお、図２に示す各三角関数内の変数Ｆおよびｋは、区間信号Ｘについてのサンプリング周波数Ｆおよびサンプル番号ｋに相当する変数である。例えば、周波数ｆ（０）についての正弦波は、ｓｉｎ（２πｆ（０）ｋ／Ｆ）で示され、任意のサンプル番号ｋを与えると、区間信号を構成する第ｋ番目のサンプルと同一時間位置における周期関数の振幅値が得られる。
【００２０】
ここでは、１２８通りの標準周波数ｆ（０）〜ｆ（１２７）を図３に示すような式で定義した例を示すことにする。すなわち、第ｎ番目（０≦ｎ≦１２７）の標準周波数ｆ（ｎ）は、以下に示す〔数式１〕で定義されることになる。
【００２１】
〔数式１〕
ｆ（ｎ）＝４４０×２γ(n)
γ（ｎ）＝（ｎ−６９）／１２
【００２２】
このような式によって標準周波数を定義しておくと、最終的にＭＩＤＩデータを用いた符号化を行う際に便利である。なぜなら、このような定義によって設定される１２８通りの標準周波数ｆ（０）〜ｆ（１２７）は、等比級数をなす周波数値をとることになり、ＭＩＤＩデータで利用されるノートナンバーに対応した周波数になるからである。したがって、図２に示す１２８通りの標準周波数ｆ（０）〜ｆ（１２７）は、対数尺度で示した周波数軸上に等間隔（ＭＩＤＩにおける半音単位）に設定した周波数ということになる。
【００２３】
続いて、任意の区間の区間信号に対する各周期関数の相関の求め方について、具体的な説明を行う。例えば、図４に示すように、ある単位区間ｄについて区間信号Ｘが与えられていたとする。ここでは、区間長Ｌをもった単位区間ｄについて、サンプリング周波数Ｆでサンプリングが行なわれており、全部でｗ個のサンプル値が得られているものとし、サンプル番号を図示のように、０，１，２，３，・・・，ｋ，・・・，ｗ−２，ｗ−１とする（白丸で示す第ｗ番目のサンプルは、右に隣接する次の単位区間の先頭に含まれるサンプルとする）。この場合、任意のサンプル番号ｋについては、Ｘ（ｋ）なる振幅値がデジタルデータとして与えられていることになる。短時間フーリエ変換においては、Ｘ（ｋ）に対して各サンプルごとに中央の重みが１に近く、両端の重みが０に近くなるような窓関数Ｗ（ｋ）を乗ずることが通常である。すなわち、Ｘ（ｋ）×Ｗ（ｋ）をＸ（ｋ）と扱って以下のような相関計算を行うもので、窓関数の形状としては余弦波形状のハミング窓が一般に用いられている。ここで、ｗは以下の記述においても定数のような記載をしているが、一般にはｎの値に応じて変化させ、区間長Ｌを超えない範囲で最大となるＦ／ｆ（ｎ）の整数倍の値に設定することが望ましい。
【００２４】
このような区間信号Ｘに対して、第ｎ番目の標準周波数ｆ（ｎ）をもった正弦関数Ｒｎとの相関値を求める原理を示す。両者の相関値Ａ（ｎ）は、図５の第１の演算式によって定義することができる。ここで、Ｘ（ｋ）は、図４に示すように、区間信号Ｘにおけるサンプル番号ｋの振幅値であり、ｓｉｎ（２πｆ（ｎ）ｋ／Ｆ）は、時間軸上での同位置における正弦関数Ｒｎの振幅値である。この第１の演算式は、単位区間ｄ内の全サンプル番号ｋ＝０〜ｗ−１の次元について、それぞれ区間信号Ｘの振幅値と正弦関数Ｒｎの振幅ベクトルの内積を求める式ということができる。
【００２５】
同様に、図５の第２の演算式は、区間信号Ｘと、第ｎ番目の標準周波数ｆ（ｎ）をもった余弦関数との相関値を求める式であり、両者の相関値はＢ（ｎ）で与えられる。なお、相関値Ａ（ｎ）を求めるための第１の演算式も、相関値Ｂ（ｎ）を求めるための第２の演算式も、最終的に２／ｗが乗ぜられているが、これは相関値を規格化するためのものでり、前述のとおりｗはｎに依存して変化させるのが一般的であるため、この係数もｎに依存する変数である。
【００２６】
区間信号Ｘと標準周波数ｆ（ｎ）をもった標準周期関数との相関実効値は、図５の第３の演算式に示すように、正弦関数との相関値Ａ（ｎ）と余弦関数との相関値Ｂ（ｎ）との二乗和平方根値Ｅ（ｎ）によって示すことができる。この相関実効値の大きな標準周期関数の周波数を代表周波数として選出すれば、この代表周波数を用いて区間信号Ｘを符号化することができる。
【００２７】
すなわち、この相関値Ｅ（ｎ）が所定の基準以上の大きさとなる１つまたは複数の標準周波数を代表周波数として選出すれば良い。なお、ここで「相関値Ｅ（ｎ）が所定の基準以上の大きさとなる」という選出条件は、例えば、何らかの閾値を設定しておき、相関値Ｅ（ｎ）がこの閾値を超えるような標準周波数ｆ（ｎ）をすべて代表周波数として選出する、という絶対的な選出条件を設定しても良いが、例えば、相関値Ｅ（ｎ）の大きさの順にＱ番目までを選出する、というような相対的な選出条件を設定しても良い。
【００２８】
（一般化調和解析の手法）
ここでは、本発明に係る音響信号の符号化を行う際に有用な一般化調和解析の手法について説明する。既に説明したように、音響信号を符号化する場合、個々の単位区間内の区間信号について、相関値の高いいくつかの代表周波数を選出することになる。一般化調和解析は、より高い精度で代表周波数の選出を可能にする手法であり、その基本原理は次の通りである。
【００２９】
図６（ａ）に示すような単位区間ｄについて、信号Ｓ（ｊ）なるものが存在するとする。ここで、ｊは後述するように、繰り返し処理のためのパラメータである（ｊ＝１〜Ｊ）。まず、この信号Ｓ（ｊ）に対して、図２に示すような１２８通りの周期関数すべてについての相関値を求める。そして、最大の相関値が得られた１つの周期関数の周波数を代表周波数として選出し、当該代表周波数をもった周期関数を要素関数として抽出する。続いて、図６（ｂ）に示すような含有信号Ｇ（ｊ）を定義する。この含有信号Ｇ（ｊ）は、抽出された要素関数に、その振幅として、当該要素関数の信号Ｓ（ｊ）に対する相関値を乗じることにより得られる信号である。例えば、周期関数として図２に示すように、一対の正弦関数と余弦関数とを用い、周波数ｆ（ｎ）が代表周波数として選出された場合、振幅Ａ（ｎ）をもった正弦関数Ａ（ｎ）ｓｉｎ（２πｆ（ｎ）ｋ／Ｆ）と、振幅Ｂ（ｎ）をもった余弦関数Ｂ（ｎ）ｃｏｓ（２πｆ（ｎ）ｋ／Ｆ）との和からなる信号が含有信号Ｇ（ｊ）ということになる（図６（ｂ）では、図示の便宜上、一方の関数しか示していない）。ここで、Ａ（ｎ），Ｂ（ｎ）は、図５の式で得られる規格化された相関値であるから、結局、含有信号Ｇ（ｊ）は、信号Ｓ（ｊ）内に含まれている周波数ｆ（ｎ）をもった信号成分ということができる。
【００３０】
こうして、含有信号Ｇ（ｊ）が求まったら、信号Ｓ（ｊ）から含有信号Ｇ（ｊ）を減じることにより、差分信号Ｓ（ｊ＋１）を求める。図６（ｃ）は、このようにして求まった差分信号Ｓ（ｊ＋１）を示している。この差分信号Ｓ（ｊ＋１）は、もとの信号Ｓ（ｊ）の中から、周波数ｆ（ｎ）をもった信号成分を取り去った残りの信号成分からなる信号ということができる。そこで、パラメータｊを１だけ増加させることにより、この差分信号Ｓ（ｊ＋１）を新たな信号Ｓ（ｊ）として取り扱い、同様の処理を、パラメータｊをｊ＝１〜Ｊまで１ずつ増やしながらＪ回繰り返し実行すれば、Ｊ個の代表周波数を選出することができる。
【００３１】
このような相関計算の結果として出力されるＪ個の含有信号Ｇ（１）〜Ｇ（Ｊ）は、もとの区間信号Ｘの構成要素となる信号であり、もとの区間信号Ｘを符号化する場合には、これらＪ個の含有信号の周波数を示す情報および振幅（強度）を示す情報を符号データとして用いるようにすれば良い。尚、Ｊは代表周波数の個数であると説明してきたが、標準周波数ｆ（ｎ）の個数と同一すなわちＪ＝１２８であってもよく、周波数スペクトルを求める目的においてはそのように行うのが通例である。
【００３２】
こうして、各単位区間について、所定数の周波数群が選出されたら、この周波数群の各周波数に対応する「音の高さを示す情報」、選出された各周波数の信号強度に対応する「音の強さを示す情報」、当該単位区間の始点に対応する「音の発音開始時刻を示す情報」、当該単位区間に後続する単位区間の始点に対応する「音の発音終了時刻を示す情報」、の４つの情報を含む所定数の符号データを作成すれば、当該単位区間内の区間信号Ｘを所定数の符号データにより符号化することができる。符号データとして、ＭＩＤＩデータを作成するのであれば、「音の高さを示す情報」としてノートナンバーを用い、「音の強さを示す情報」としてベロシティーを用い、「音の発音開始時刻を示す情報」としてノートオン時刻を用い、「音の発音終了時刻を示す情報」としてノートオフ時刻を用いるようにすれば良い。
【００３３】
（本発明に係る音響信号の符号化方法）
ここまでに説明した従来技術とも共通する本発明の基本原理を要約すると、原音響信号に単位区間を設定し、単位区間ごとに複数の周波数に対応する信号強度を算出し、得られた信号強度を基に用意された周期関数を利用して１つまたは複数の代表周波数を選出し、選出された代表周波数に対応する音の高さ情報と、選出された代表周波数の強度に対応する音の強さ情報と、単位区間の始点に対応する発音開始時刻と、単位区間の終点に対応する発音終了時刻で構成される符号データを作成することにより、音響信号の符号化が行われていることになる。
【００３４】
本発明の音響信号符号化方法は、上記基本原理において、得られた信号強度を基に、用意された周期関数に対応する周波数を全て利用し、これら各周波数と、各周波数の強度と、単位区間の始点に対応する区間開始時刻と、単位区間の終点に対応する区間終了時刻で構成されるデータを「音素データ」と定義し、この音素データをさらに加工することにより最終的な符号化データを得るようにしたものである。
【００３５】
ここからは、本発明の音響信号符号化方法について、図７に示すフローチャートを用いて説明する。まず、音響信号として複数のチャンネルからなる音響信号を与える。ここでは、一例として２チャンネルのステレオ音響信号を与えるものとする。そして、左右のチャンネルの音響信号について、その時間軸上の全区間に渡って単位区間を設定する（ステップＳ１：図中、Ｓ１ａ・Ｓ１ｂとして図示）。このステップＳ１における手法は、上記基本原理において、図１（ａ）を用いて説明した通りである。
【００３６】
続いて、各単位区間ごとの音響信号、すなわち区間信号について、周波数解析を行って各周波数に対応する強度値を算出し、周波数、強度値、単位区間の始点、終点の４つの情報からなる音素データを算出する（ステップＳ２：図中、Ｓ２ａ・Ｓ２ｂとして図示）。具体的には、図２に示したような１２８種の周期関数に対して区間信号の相関強度を求め、その周期関数の周波数、求めた相関強度、単位区間の始点、終点の４つの情報を音素データと定義する。ただし、本実施形態では、上記基本原理で説明した場合のように、代表周波数を選出するのではなく、用意した周期関数全てに対応する音素データを取得する。このステップＳ２の処理を全単位区間に対して行うことにより、音素データ[ｍ，ｎ]（０≦ｍ≦Ｍ−１，０≦ｎ≦Ｎ−１）群が得られる。ここで、Ｎは周期関数の総数（上述の例ではＮ＝１２８）、Ｍは音響信号において設定された単位区間の総数である。つまり、Ｍ×Ｎ個の音素データからなる音素データ群が得られることになる。
【００３７】
上記ステップＳ２における処理は、各チャンネルの音響信号に対して行われる。そのため、各チャンネルについて、音素データの集合である音素データ群が得られることになる。音素データ群が得られたら、左チャンネルの音響信号から得られた音素データ群、および右チャンネルの音響信号から得られた音素データ群の統合処理を行う（ステップＳ３）。具体的には、同一の単位区間および同一の周波数の音素データ同士を統合することにより行う。この際、得られる統合音素データの強度値としては、統合される元の２つの音素データの強度値の平均値を与えるようにする。さらに、この統合音素データには、以下の〔数式２〕により算出されるバランス情報が付加される。
【００３８】
〔数式２〕
Val  ＝  ＥL  ／（ ＥL ＋ ＥR ）
【００３９】
上記〔数式２〕において、ＥLは左チャンネルの音素データの強度値、ＥRは右チャンネルの音素データの強度値を示す。すなわち、〔数式２〕によるバランス情報の数値が高ければ高い程、左チャンネルの信号の強度値が高いことを示している。結局、統合音素データは、周波数と、周波数の強度と、単位区間の始点に対応する区間開始時刻と、単位区間の終点に対応する区間終了時刻と、バランス情報で構成されるものとなる。さらに、この際、各単位区間ごとに、強度値が高いものから所定数の統合音素データには、その属性として優先マークを示すデータを付与しておく。この所定数としては、ＭＩＤＩ音源の同時発音数の関係から１６個程度が望ましい。このステップＳ３における統合処理により、左右のチャンネルの音響信号から得られた２つの音素データ群が、１つの統合音素データ群に統合された。元の音素データ群と統合音素データ群のデータ量は、ほぼ等しいので、全体としては、データ量が半分になったことになる。
【００４０】
この統合音素データ群を目的とする符号データとすることもできるが、さらに以下のステップＳ４、ステップＳ５の処理を行うことにより、データ量の削減を行うことができる。統合音素データの集合である統合音素データ群が得られたら、この統合音素データ群のうち、その強度値が所定値に達していない統合音素データを削除し、残った統合音素データを有効な強度値を有する有効音素データとして抽出する（ステップＳ４）。このステップＳ４において、強度値が所定値に達しない統合音素データを削除するのは、信号レベルがほとんど０であって、実際には音が存在していないと判断される音素を削除するためである。そのため、この所定値としては、音が実際に存在しないレベルとみなされる値が設定される。
【００４１】
このようにして有効音素データの集合である有効音素データ群が得られたら、同一周波数で時系列方向に連続する複数の有効音素データを１つの連結音素データとして連結する（ステップＳ５）。図８は有効音素データの連結を説明するための概念図である。図８（ａ）は連結前の統合音素データ群の様子を示す図である。図８（ａ）において、格子状に仕切られた各矩形は統合音素データを示しており、網掛けがされている矩形は、上記ステップＳ３において強度値が所定値に達しないために削除された統合音素データであり、その他の矩形は有効音素データを示す。ステップＳ５においては、同一周波数（同一ノートナンバー）で時間ｔ方向に連続する有効音素データを連結するため、図８（ａ）に示す有効音素データ群に対して連結処理を実行すると、図８（ｂ）に示すような連結音素データ群が得られる。例えば、図８（ａ）に示した有効音素データＡ１、Ａ２、Ａ３は連結されて、図８（ｂ）に示すような連結音素データＡが得られることになる。このとき、新たに得られる連結音素データＡの周波数としては、有効音素データＡ１、Ａ２、Ａ３に共通の周波数が与えられ、強度値としては、有効音素データＡ１、Ａ２、Ａ３の強度値のうち最大のものが与えられ、開始時刻としては、先頭の有効音素データＡ１の区間開始時刻ｔ１が与えられ、終了時刻としては、最後尾の有効音素データＡ３の区間終了時刻ｔ４が与えられ、バランス情報としては、有効音素データＡ１、Ａ２、Ａ３のうち強度値が最大となる有効音素データが有するバランス情報が与えられる。有効音素データ、連結音素データ共に、周波数（ノートナンバー）、強度値、開始時刻、終了時刻、バランス情報の５つの情報で構成されるため、３つの有効音素データが１つの連結音素データに統合されることにより、データ量は３分の１に削減される。このことは、最終的にＭＩＤＩ符号化される場合には、短い音符３つではなく、長い音符１つとして表現されることを意味している。
【００４２】
さらに、ステップＳ５においては、連結の元となった有効音素データのうち最大の強度値をもつ有効音素データに優先マークが付与されていた場合に、統合された連結音素データに対して優先マークが付与される。例えば、図８（ａ）において、有効音素データＡ１、Ａ２、Ａ３のうち有効音素データＡ２の強度値が最大であったとする。この場合、有効音素データＡ２に優先マークが付与されていれば、連結音素データＡに優先マークが付与されるが、有効音素データＡ２に優先マークが付与されていなければ、有効音素データＡ１や有効音素データＡ３に優先マークが付与されていても、連結音素データＡには優先マークが付与されない。
【００４３】
上記のようにして連結音素データ群が得られたら、この連結音素データ群のうち、優先マークが付与されていない連結音素データを削除して、最終的な符号データを得る（ステップＳ６）。通常のＭＩＤＩ音源では同時発音数が１６〜６４という制約があるため、解析により得られる音素をこれに合わせなければならない。従来は、上記ステップＳ５に示したような連結処理を行う前に、各単位区間ごとに強度値の強いものから所定数を抽出していたが、本発明では、音素データの連結後のこの時点で抽出を行う。この際、ステップＳ３で各単位区間ごとに所定数（本実施形態では１６個程度）の統合音素データに付与され、ステップＳ５において連結音素データに反映された優先マークの有無に基づいて、連結音素データの抽出を行うので、最終的に残る連結音素データは、同時刻においては所定数以下となる。このようにして同時刻に存在する連結音素データを所定数以下とすることにより、通常のＭＩＤＩ音源を使用した場合に、符号データが無駄なく利用されることになる。なお、ステップＳ４、ステップＳ５の処理を行わない場合は、統合音素データの集合が目的とする符号データとなる。ただし、連結音素データも統合音素データのうち無効なデータを削除した後、有効なもののみを連結したものであるので、広い意味では、「統合音素データ」という言葉には、「連結音素データ」も含まれることになる。
【００４４】
符号データとして、ＭＩＤＩデータを作成する場合は、「周波数」をノートナンバーに変換し、「周波数の強度」をベロシティーに変換し、「区間の始点に対応する区間開始時刻」をノートオン時刻に変換し、「区間の終点に対応する区間終了時刻」をノートオフ時刻に変換し、バランス情報をパンポットに変換する。パンポットとは、ＭＩＤＩ規格において音量比率を示す制御パラメータである。具体的には、上記〔数式２〕で算出したバランス情報に１００を乗じて０〜１００の値をとり得るものとし、「０」が左最強、「５０」が中央、「１００」が右最強とする。通常のＭＩＤＩ音源は、このＭＩＤＩデータ中からパンポットを読取ると、このパンポットに応じて、ＭＩＤＩデータの復号化時に左右にそれぞれ強度の異なる音響信号を送るようになっている。そのため、本発明により符号化された符号データを用いることにより、元々左右の２チャンネルからなるデータを１つに統合しても左右のバランスを失わず、ステレオ再生が可能となる。
【００４５】
（音源分離への応用）
以上のようにして、本発明に係る符号化方法により、ステレオ音響信号のような複数のチャンネルからなる音響信号を効率的に符号化することが可能となるが、本発明を応用することにより、複数音源を有するステレオ音響信号から各音源ごとの符号データを得ることができる。すなわち、複数音源が混在したステレオ音響信号から音源の分離を行うことが可能となる。以下にこのような手法について具体的に説明する。
【００４６】
音源分離を行うためには、各連結音素データに含まれているバランス情報を利用する。通常、楽曲をステレオで録音しようとする場合、ボーカル、楽器等の各音源ごとの演奏を録音し、ミキシング時に各音源を左右どちらに録音するかを決定する。このとき、各楽器を左右どちらに記録するかについては、所定のルールがある。例えば、ボーカルは中央から聴こえるようにするため、左右ほぼ同等の信号強度で記録される。他の楽器についても左側に強い信号強度で記録するもの、右側に、強い信号強度で記録するものなどが決まっている。本発明では、このようなルールと上述のバランス情報を利用する。
【００４７】
具体的には、上記ステップＳ６において符号化する際、各連結音素データのバランス情報を読取って、あらかじめ設定された閾値にしたがって、連結音素データ群を複数のグループに分類する。例えば、バランス情報Valが「０．５」付近のものを１つのグループに分けることにより、そのグループの連結音素データを復号化することにより、ボーカルだけを再現することができるようになる。
【００４８】
この符号データとして、ＭＩＤＩデータを作成する場合は、グループ化した連結音素データ群を、グループごとにＭＩＤＩ規格のチャンネルに記録する。そして、チャンネルごとにパンポットを指定しておけば、そのチャンネルについては、常に同一の左右バランスで演奏されることになる。ＭＩＤＩ規格のパンポットは、連結音素データに対応するＭＩＤＩイベント情報（デルタタイム、ノートナンバー、ベロシティ）単位に付加することもできるが、チャンネルごとに付加して、１つのチャンネルに記録されたすべてのＭＩＤＩイベント情報に影響させることもできる。チャンネルごとにパンポットを設定することにより、 ＭＩＤＩイベント情報単位に付加するのに比べてデータ量を削減することもできる。
【００４９】
以上、本発明の好適な実施形態について説明したが、上記符号化方法は、コンピュータ等で実行されることは当然である。具体的には、図７のフローチャートに示したようなステップを上記手順で実行するためのプログラムをコンピュータに搭載しておく。そして、複数のチャンネルからなる音響信号をＰＣＭ方式等でデジタル化した後、コンピュータに取り込み、ステップＳ１〜ステップＳ５の処理を行った後、ＭＩＤＩ形式等の符号データをコンピュータより出力する。出力された符号データは、例えば、ＭＩＤＩデータの場合、ＭＩＤＩシーケンサ、ＭＩＤＩ音源を用いて音声として再生される。
【００５０】
【発明の効果】
以上、説明したように本発明によれば、複数の独立した波形情報で与えられた音響信号に対して、時間軸上に複数の単位区間を設定し、設定された単位区間ごとに周波数解析を行なって、周波数と、強度値と、単位区間の始点に対応する区間開始時刻と、単位区間の終点に対応する区間終了時刻で構成される音素データを算出し、音素データ算出の処理を各入力チャンネルにおける全単位区間に対して行うことにより得られる全ての音素データについて、同一時刻、同一周波数をもつ音素データ同士を各入力チャンネル間において統合すると共に、統合元の複数の音素データの強度値に基づいて強度比率を付加した統合音素データを作成することにより、統合音素データの集合である符号データを得るようにしたので、複数の入力チャンネルからの音響信号を、統合された１つのチャンネルの符号データとして扱うことができ、データ量および処理負荷の削減が可能となるという効果を奏する。
【００５１】
また、各出力チャンネルの符号データの復号化の際に、音源の左右バランスのルールを考慮して、強度比率に応じた音源を割り当てるようにすることにより、音源が混在した音響信号の音源分離に利用することもできる。
【図面の簡単な説明】
【図１】本発明の音響信号の符号化方法の基本原理を示す図である。
【図２】本発明で利用される周期関数の一例を示す図である。
【図３】図２に示す各周期関数の周波数とＭＩＤＩノートナンバーｎとの関係式を示す図である。
【図４】解析対象となる信号と周期信号との相関計算の手法を示す図である。
【図５】図４に示す相関計算を行うための計算式を示す図である。
【図６】一般化調和解析の基本的な手法を示す図である。
【図７】本発明の音響信号符号化方法のフローチャートである。
【図８】有効音素データの連結を説明するための概念図である。
【符号の説明】
Ａ（ｎ），Ｂ（ｎ）・・・相関値
ｄ，ｄ１〜ｄ５・・・単位区間
Ｅ（ｎ）・・・相関値
Ｇ（ｊ）・・・含有信号
ｎ，ｎ１〜ｎ６・・・ノートナンバー
Ｓ（ｊ），Ｓ（ｊ＋１）・・・差分信号
Ｘ，Ｘ（ｋ）・・・区間信号
【図１】
0004601865.tif 000002
【図２】
0004601865.tif 000003
【図３】
0004601865.tif 000004
【図４】
0004601865.tif 000005
【図５】
0004601865.tif 000006
【図６】
0004601865.tif 000007
【図７】
0004601865.tif 000008
【図８】
0004601865.tif 000009