JP4601865B2 - 音響信号の符号化方法 - Google Patents
音響信号の符号化方法 Download PDFInfo
- Publication number
- JP4601865B2 JP4601865B2 JP2001178319A JP2001178319A JP4601865B2 JP 4601865 B2 JP4601865 B2 JP 4601865B2 JP 2001178319 A JP2001178319 A JP 2001178319A JP 2001178319 A JP2001178319 A JP 2001178319A JP 4601865 B2 JP4601865 B2 JP 4601865B2
- Authority
- JP
- Japan
- Prior art keywords
- phoneme data
- data
- integrated
- frequency
- signal
- 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.)
- Expired - Fee Related
Links
Images
Description
【産業上の利用分野】
本発明は、放送メディア(ラジオ、テレビ)、通信メディア(CS映像・音声配信、インターネット音楽配信、通信カラオケ)、パッケージメディア(CD、MD、カセット、ビデオ、LD、CD−ROM、ゲームカセット、携帯音楽プレーヤ向け固体メモリ媒体)などで提供する各種オーディオコンテンツの制作、並びに、専用携帯音楽プレーヤ、携帯電話・PHS・ポケベルなどに向けたボーカルを含む音楽コンテンツ、歌舞伎・能・読経・詩歌など文芸作品の音声素材または語学教育音声教材のMIDI伝送に利用するのに好適な音響信号の符号化技術に関する。
【0002】
【従来の技術】
音響信号に代表される時系列信号には、その構成要素として複数の周期信号が含まれている。このため、与えられた時系列信号にどのような周期信号が含まれているかを解析する手法は、古くから知られている。例えば、フーリエ解析は、与えられた時系列信号に含まれる周波数成分を解析するための方法として広く利用されている。
【0003】
このような時系列信号の解析方法を利用すれば、音響信号を符号化することも可能である。コンピュータの普及により、原音となるアナログ音響信号を所定のサンプリング周波数でサンプリングし、各サンプリング時の信号強度を量子化してデジタルデータとして取り込むことが容易にできるようになってきており、こうして取り込んだデジタルデータに対してフーリエ解析などの手法を適用し、原音信号に含まれていた周波数成分を抽出すれば、各周波数成分を示す符号によって原音信号の符号化が可能になる。
【0004】
一方、電子楽器による楽器音を符号化しようという発想から生まれたMIDI(Musical Instrument Digital Interface)規格も、パーソナルコンピュータの普及とともに盛んに利用されるようになってきている。このMIDI規格による符号データ(以下、MIDIデータという)は、基本的には、楽器のどの鍵盤キーを、どの程度の強さで弾いたか、という楽器演奏の操作を記述したデータであり、このMIDIデータ自身には、実際の音の波形は含まれていない。そのため、実際の音を再生する場合には、楽器音の波形を記憶したMIDI音源が別途必要になるが、その符号化効率の高さが注目を集めており、MIDI規格による符号化および復号化の技術は、現在、パーソナルコンピュータを用いて楽器演奏、楽器練習、作曲などを行うソフトウェアに広く採り入れられている。
【0005】
そこで、音響信号に代表される時系列信号に対して、所定の手法で解析を行うことにより、その構成要素となる周期信号を抽出し、抽出した周期信号をMIDIデータを用いて符号化しようとする提案がなされている。例えば、特開平10−247099号公報、特開平11−73199号公報、特開平11−73200号公報、特開平11−95753号公報、特開2000−99009号公報、特開2000−99092号公報、特開2000−99093号公報、特開2000−261322号公報、特開2001−5450号公報、特開2001−148633号公報には、任意の時系列信号について、構成要素となる周波数を解析し、その解析結果からMIDIデータを作成することができる種々の方法が提案されている。
【0006】
【発明が解決しようとする課題】
上記各公報において提案してきたMIDI符号化方式により、演奏録音等から得られる音響信号の効率的な符号化が可能になった。しかしながら、上記従来の符号化手法は、1つのチャンネルからなる音響信号を処理するための方法であるため、モノラルの音響信号を処理することには適しているが、ステレオの音響信号のような2チャンネルからなる音響信号については、必ずしも効率的に符号化処理することができない。もちろん、複数のチャンネルからなる信号を処理することは可能であるが、各チャンネルの信号を独立して処理するため、当然にチャンネル数分の演算処理を行う必要があり、負荷が膨大なものとなっている。また、符号化の結果得られる符号データ量についてもチャンネル数に応じて増大する。
【0007】
上記のような点に鑑み、本発明は、ステレオ音響信号のような複数のチャンネルからなる音響信号についても、モノラル音響信号のような1つのチャンネルからなる音響信号とほぼ同程度の演算負荷で処理を行うことができると共に、符号データ量も抑えることが可能な音響信号の符号化方法を提供することを課題とする。
【0008】
【課題を解決するための手段】
上記課題を解決するため、本発明では、複数のチャンネルからなる音響信号に対して、時間軸上に複数の単位区間を設定し、前記単位区間ごとに周波数解析を行なって、周波数と、強度値と、単位区間の始点に対応する区間開始時刻と、単位区間の終点に対応する区間終了時刻で構成される音素データを算出し、音素データ算出の処理を各入力チャンネルにおける全単位区間に対して行うことにより得られる全ての音素データについて、同一時刻、同一周波数をもつ音素データ同士を各入力チャンネル間において統合すると共に、統合元の複数の音素データの強度値に基づいて強度比率を付加した統合音素データを作成することにより、統合音素データの集合である符号データを得るようにしたことを特徴とする。
【0009】
本発明によれば、ステレオ音響信号のような複数の入力チャンネルを有する音響信号について、各入力チャンネルごとに音素データを作成し、各入力チャンネルの音素データを統合すると共に、強度比率を付加するようにしたので、複数の入力チャンネルからの音響信号を、統合された1つのチャンネルの符号データとして扱うことができ、データ量および処理負荷の削減が行われる。この際、強度比率の情報を付加しているので、元の入力チャンネルの強度値バランスを失うことはない。
【0010】
【発明の実施の形態】
以下、本発明の実施形態について図面を参照して詳細に説明する。
【0011】
(音響信号符号化方法の基本原理)
はじめに、本発明に係る音響信号の符号化方法の基本原理を述べておく。この基本原理は、前掲の各公報に開示されているので、ここではその概要のみを簡単に述べることにする。
【0012】
図1(a)に示すように、時系列信号としてアナログ音響信号が与えられたものとする。図1の例では、横軸に時間t、縦軸に振幅(強度)をとって、この音響信号を示している。ここでは、まずこのアナログ音響信号を、デジタルの音響データとして取り込む処理を行う。これは、従来の一般的なPCMの手法を用い、所定のサンプリング周波数でこのアナログ音響信号をサンプリングし、振幅を所定の量子化ビット数を用いてデジタルデータに変換する処理を行えば良い。ここでは、説明の便宜上、PCMの手法でデジタル化した音響データの波形も図1(a)のアナログ音響信号と同一の波形で示すことにする。
【0013】
続いて、この解析対象となる音響信号の時間軸上に、複数の単位区間を設定する。図1(a)に示す例では、時間軸t上に等間隔に6つの時刻t1〜t6が定義され、これら各時刻を始点および終点とする5つの単位区間d1〜d5が設定されている。図1の例では、全て同一の区間長をもった単位区間が設定されているが、個々の単位区間ごとに区間長を変えるようにしてもかまわない。あるいは、隣接する単位区間が時間軸上で部分的に重なり合うような区間設定を行ってもかまわない。
【0014】
こうして単位区間が設定されたら、各単位区間ごとの音響信号(以下、区間信号と呼ぶことにする)について、それぞれ代表周波数を選出する。各区間信号には、通常、様々な周波数成分が含まれているが、例えば、その中で成分の強度割合の大きな周波数成分を代表周波数として選出すれば良い。ここで、代表周波数とはいわゆる基本周波数が一般的であるが、音声のフォルマント周波数などの倍音周波数や、ノイズ音源のピーク周波数も代表周波数として扱うことがある。代表周波数は1つだけ選出しても良いが、音響信号によっては複数の代表周波数を選出した方が、より精度の高い符号化が可能になる。図1(b)には、個々の単位区間ごとにそれぞれ3つの代表周波数を選出し、1つの代表周波数を1つの代表符号(図では便宜上、音符として示してある)として符号化した例が示されている。ここでは、代表符号(音符)を収容するために3つのトラックT1,T2,T3が設けられているが、これは個々の単位区間ごとに選出された3つずつの代表符号を、それぞれ異なるトラックに収容するためである。
【0015】
例えば、単位区間d1について選出された代表符号n(d1,1),n(d1,2),n(d1,3)は、それぞれトラックT1,T2,T3に収容されている。ここで、各符号n(d1,1),n(d1,2),n(d1,3)は、MIDI符号におけるノートナンバーを示す符号である。MIDI符号におけるノートナンバーは、0〜127までの128通りの値をとり、それぞれピアノの鍵盤の1つのキーを示すことになる。具体的には、例えば、代表周波数として440Hzが選出された場合、この周波数はノートナンバーn=69(ピアノの鍵盤中央の「ラ音(A3音)」に対応)に相当するので、代表符号としては、n=69が選出されることになる。もっとも、図1(b)は、上述の方法によって得られる代表符号を音符の形式で示した概念図であり、実際には、各音符にはそれぞれ強度に関するデータも付加されている。例えば、トラックT1には、ノートナンバーn(d1,1),n(d2,1)・・・なる音高を示すデータとともに、e(d1,1),e(d2,1)・・・なる強度を示すデータが収容されることになる。この強度を示すデータは、各代表周波数の成分が、元の区間信号にどの程度の度合いで含まれていたかによって決定される。具体的には、各代表周波数をもった周期関数の区間信号に対する相関値に基づいて強度を示すデータが決定されることになる。また、図1(b)に示す概念図では、音符の横方向の位置によって、個々の単位区間の時間軸上での位置が示されているが、実際には、この時間軸上での位置を正確に数値として示すデータが各音符に付加されていることになる。
【0016】
音響信号を符号化する形式としては、必ずしもMIDI形式を採用する必要はないが、この種の符号化形式としてはMIDI形式が最も普及しているため、実用上はMIDI形式の符号データを用いるのが好ましい。MIDI形式では、「ノートオン」データもしくは「ノートオフ」データが、「デルタタイム」データを介在させながら存在する。「ノートオン」データは、特定のノートナンバーNとベロシティーVを指定して特定の音の演奏開始を指示するデータであり、「ノートオフ」データは、特定のノートナンバーNとベロシティーVを指定して特定の音の演奏終了を指示するデータである。また、「デルタタイム」データは、所定の時間間隔を示すデータである。ベロシティーVは、例えば、ピアノの鍵盤などを押し下げる速度(ノートオン時のベロシティー)および鍵盤から指を離す速度(ノートオフ時のベロシティー)を示すパラメータであり、特定の音の演奏開始操作もしくは演奏終了操作の強さを示すことになる。
【0017】
前述の方法では、第i番目の単位区間diについて、代表符号としてJ個のノートナンバーn(di,1),n(di,2),・・・,n(di,J)が得られ、このそれぞれについて強度e(di,1),e(di,2),・・・,e(di,J)が得られる。そこで、次のような手法により、MIDI形式の符号データを作成することができる。まず、「ノートオン」データもしくは「ノートオフ」データの中で記述するノートナンバーNとしては、得られたノートナンバーn(di,1),n(di,2),・・・,n(di,J)をそのまま用いれば良い。一方、「ノートオン」データもしくは「ノートオフ」データの中で記述するベロシティーVとしては、得られた強度e(di,1),e(di,2),・・・,e(di,J)を所定の方法で規格化した値を用いれば良い。また、「デルタタイム」データは、各単位区間の長さに応じて設定すれば良い。
【0018】
(周期関数との相関を求める具体的な方法)
上述した基本原理の基づく方法では、区間信号に対して、1つまたは複数の代表周波数が選出され、この代表周波数をもった周期信号によって、当該区間信号が表現されることになる。ここで、選出される代表周波数は、文字どおり、当該単位区間内の信号成分を代表する周波数である。この代表周波数を選出する具体的な方法には、後述するように、短時間フーリエ変換を利用する方法と、一般化調和解析の手法を利用する方法とがある。いずれの方法も、基本的な考え方は同じであり、あらかじめ周波数の異なる複数の周期関数を用意しておき、これら複数の周期関数の中から、当該単位区間内の区間信号に対する相関が高い周期関数を見つけ出し、この相関の高い周期関数の周波数を代表周波数として選出する、という手法を採ることになる。すなわち、代表周波数を選出する際には、あらかじめ用意された複数の周期関数と、単位区間内の区間信号との相関を求める演算を行うことになる。そこで、ここでは、周期関数との相関を求める具体的な方法を述べておく。
【0019】
複数の周期関数として、図2に示すような三角関数が用意されているものとする。これらの三角関数は、同一周波数をもった正弦関数と余弦関数との対から構成されており、128通りの標準周波数f(0)〜f(127)のそれぞれについて、正弦関数および余弦関数の対が定義されていることになる。ここでは、同一の周波数をもった正弦関数および余弦関数からなる一対の関数を、当該周波数についての周期関数として定義することにする。すなわち、ある特定の周波数についての周期関数は、一対の正弦関数および余弦関数によって構成されることになる。このように、一対の正弦関数と余弦関数とにより周期関数を定義するのは、信号に対する周期関数の相関値を求める際に、相関値が位相の影響を受ける事を考慮するためである。なお、図2に示す各三角関数内の変数Fおよびkは、区間信号Xについてのサンプリング周波数Fおよびサンプル番号kに相当する変数である。例えば、周波数f(0)についての正弦波は、sin(2πf(0)k/F)で示され、任意のサンプル番号kを与えると、区間信号を構成する第k番目のサンプルと同一時間位置における周期関数の振幅値が得られる。
【0020】
ここでは、128通りの標準周波数f(0)〜f(127)を図3に示すような式で定義した例を示すことにする。すなわち、第n番目(0≦n≦127)の標準周波数f(n)は、以下に示す〔数式1〕で定義されることになる。
【0021】
〔数式1〕
f(n)=440×2γ (n)
γ(n)=(n−69)/12
【0022】
このような式によって標準周波数を定義しておくと、最終的にMIDIデータを用いた符号化を行う際に便利である。なぜなら、このような定義によって設定される128通りの標準周波数f(0)〜f(127)は、等比級数をなす周波数値をとることになり、MIDIデータで利用されるノートナンバーに対応した周波数になるからである。したがって、図2に示す128通りの標準周波数f(0)〜f(127)は、対数尺度で示した周波数軸上に等間隔(MIDIにおける半音単位)に設定した周波数ということになる。
【0023】
続いて、任意の区間の区間信号に対する各周期関数の相関の求め方について、具体的な説明を行う。例えば、図4に示すように、ある単位区間dについて区間信号Xが与えられていたとする。ここでは、区間長Lをもった単位区間dについて、サンプリング周波数Fでサンプリングが行なわれており、全部でw個のサンプル値が得られているものとし、サンプル番号を図示のように、0,1,2,3,・・・,k,・・・,w−2,w−1とする(白丸で示す第w番目のサンプルは、右に隣接する次の単位区間の先頭に含まれるサンプルとする)。この場合、任意のサンプル番号kについては、X(k)なる振幅値がデジタルデータとして与えられていることになる。短時間フーリエ変換においては、X(k)に対して各サンプルごとに中央の重みが1に近く、両端の重みが0に近くなるような窓関数W(k)を乗ずることが通常である。すなわち、X(k)×W(k)をX(k)と扱って以下のような相関計算を行うもので、窓関数の形状としては余弦波形状のハミング窓が一般に用いられている。ここで、wは以下の記述においても定数のような記載をしているが、一般にはnの値に応じて変化させ、区間長Lを超えない範囲で最大となるF/f(n)の整数倍の値に設定することが望ましい。
【0024】
このような区間信号Xに対して、第n番目の標準周波数f(n)をもった正弦関数Rnとの相関値を求める原理を示す。両者の相関値A(n)は、図5の第1の演算式によって定義することができる。ここで、X(k)は、図4に示すように、区間信号Xにおけるサンプル番号kの振幅値であり、sin(2πf(n)k/F)は、時間軸上での同位置における正弦関数Rnの振幅値である。この第1の演算式は、単位区間d内の全サンプル番号k=0〜w−1の次元について、それぞれ区間信号Xの振幅値と正弦関数Rnの振幅ベクトルの内積を求める式ということができる。
【0025】
同様に、図5の第2の演算式は、区間信号Xと、第n番目の標準周波数f(n)をもった余弦関数との相関値を求める式であり、両者の相関値はB(n)で与えられる。なお、相関値A(n)を求めるための第1の演算式も、相関値B(n)を求めるための第2の演算式も、最終的に2/wが乗ぜられているが、これは相関値を規格化するためのものでり、前述のとおりwはnに依存して変化させるのが一般的であるため、この係数もnに依存する変数である。
【0026】
区間信号Xと標準周波数f(n)をもった標準周期関数との相関実効値は、図5の第3の演算式に示すように、正弦関数との相関値A(n)と余弦関数との相関値B(n)との二乗和平方根値E(n)によって示すことができる。この相関実効値の大きな標準周期関数の周波数を代表周波数として選出すれば、この代表周波数を用いて区間信号Xを符号化することができる。
【0027】
すなわち、この相関値E(n)が所定の基準以上の大きさとなる1つまたは複数の標準周波数を代表周波数として選出すれば良い。なお、ここで「相関値E(n)が所定の基準以上の大きさとなる」という選出条件は、例えば、何らかの閾値を設定しておき、相関値E(n)がこの閾値を超えるような標準周波数f(n)をすべて代表周波数として選出する、という絶対的な選出条件を設定しても良いが、例えば、相関値E(n)の大きさの順にQ番目までを選出する、というような相対的な選出条件を設定しても良い。
【0028】
(一般化調和解析の手法)
ここでは、本発明に係る音響信号の符号化を行う際に有用な一般化調和解析の手法について説明する。既に説明したように、音響信号を符号化する場合、個々の単位区間内の区間信号について、相関値の高いいくつかの代表周波数を選出することになる。一般化調和解析は、より高い精度で代表周波数の選出を可能にする手法であり、その基本原理は次の通りである。
【0029】
図6(a)に示すような単位区間dについて、信号S(j)なるものが存在するとする。ここで、jは後述するように、繰り返し処理のためのパラメータである(j=1〜J)。まず、この信号S(j)に対して、図2に示すような128通りの周期関数すべてについての相関値を求める。そして、最大の相関値が得られた1つの周期関数の周波数を代表周波数として選出し、当該代表周波数をもった周期関数を要素関数として抽出する。続いて、図6(b)に示すような含有信号G(j)を定義する。この含有信号G(j)は、抽出された要素関数に、その振幅として、当該要素関数の信号S(j)に対する相関値を乗じることにより得られる信号である。例えば、周期関数として図2に示すように、一対の正弦関数と余弦関数とを用い、周波数f(n)が代表周波数として選出された場合、振幅A(n)をもった正弦関数A(n)sin(2πf(n)k/F)と、振幅B(n)をもった余弦関数B(n)cos(2πf(n)k/F)との和からなる信号が含有信号G(j)ということになる(図6(b)では、図示の便宜上、一方の関数しか示していない)。ここで、A(n),B(n)は、図5の式で得られる規格化された相関値であるから、結局、含有信号G(j)は、信号S(j)内に含まれている周波数f(n)をもった信号成分ということができる。
【0030】
こうして、含有信号G(j)が求まったら、信号S(j)から含有信号G(j)を減じることにより、差分信号S(j+1)を求める。図6(c)は、このようにして求まった差分信号S(j+1)を示している。この差分信号S(j+1)は、もとの信号S(j)の中から、周波数f(n)をもった信号成分を取り去った残りの信号成分からなる信号ということができる。そこで、パラメータjを1だけ増加させることにより、この差分信号S(j+1)を新たな信号S(j)として取り扱い、同様の処理を、パラメータjをj=1〜Jまで1ずつ増やしながらJ回繰り返し実行すれば、J個の代表周波数を選出することができる。
【0031】
このような相関計算の結果として出力されるJ個の含有信号G(1)〜G(J)は、もとの区間信号Xの構成要素となる信号であり、もとの区間信号Xを符号化する場合には、これらJ個の含有信号の周波数を示す情報および振幅(強度)を示す情報を符号データとして用いるようにすれば良い。尚、Jは代表周波数の個数であると説明してきたが、標準周波数f(n)の個数と同一すなわちJ=128であってもよく、周波数スペクトルを求める目的においてはそのように行うのが通例である。
【0032】
こうして、各単位区間について、所定数の周波数群が選出されたら、この周波数群の各周波数に対応する「音の高さを示す情報」、選出された各周波数の信号強度に対応する「音の強さを示す情報」、当該単位区間の始点に対応する「音の発音開始時刻を示す情報」、当該単位区間に後続する単位区間の始点に対応する「音の発音終了時刻を示す情報」、の4つの情報を含む所定数の符号データを作成すれば、当該単位区間内の区間信号Xを所定数の符号データにより符号化することができる。符号データとして、MIDIデータを作成するのであれば、「音の高さを示す情報」としてノートナンバーを用い、「音の強さを示す情報」としてベロシティーを用い、「音の発音開始時刻を示す情報」としてノートオン時刻を用い、「音の発音終了時刻を示す情報」としてノートオフ時刻を用いるようにすれば良い。
【0033】
(本発明に係る音響信号の符号化方法)
ここまでに説明した従来技術とも共通する本発明の基本原理を要約すると、原音響信号に単位区間を設定し、単位区間ごとに複数の周波数に対応する信号強度を算出し、得られた信号強度を基に用意された周期関数を利用して1つまたは複数の代表周波数を選出し、選出された代表周波数に対応する音の高さ情報と、選出された代表周波数の強度に対応する音の強さ情報と、単位区間の始点に対応する発音開始時刻と、単位区間の終点に対応する発音終了時刻で構成される符号データを作成することにより、音響信号の符号化が行われていることになる。
【0034】
本発明の音響信号符号化方法は、上記基本原理において、得られた信号強度を基に、用意された周期関数に対応する周波数を全て利用し、これら各周波数と、各周波数の強度と、単位区間の始点に対応する区間開始時刻と、単位区間の終点に対応する区間終了時刻で構成されるデータを「音素データ」と定義し、この音素データをさらに加工することにより最終的な符号化データを得るようにしたものである。
【0035】
ここからは、本発明の音響信号符号化方法について、図7に示すフローチャートを用いて説明する。まず、音響信号として複数のチャンネルからなる音響信号を与える。ここでは、一例として2チャンネルのステレオ音響信号を与えるものとする。そして、左右のチャンネルの音響信号について、その時間軸上の全区間に渡って単位区間を設定する(ステップS1:図中、S1a・S1bとして図示)。このステップS1における手法は、上記基本原理において、図1(a)を用いて説明した通りである。
【0036】
続いて、各単位区間ごとの音響信号、すなわち区間信号について、周波数解析を行って各周波数に対応する強度値を算出し、周波数、強度値、単位区間の始点、終点の4つの情報からなる音素データを算出する(ステップS2:図中、S2a・S2bとして図示)。具体的には、図2に示したような128種の周期関数に対して区間信号の相関強度を求め、その周期関数の周波数、求めた相関強度、単位区間の始点、終点の4つの情報を音素データと定義する。ただし、本実施形態では、上記基本原理で説明した場合のように、代表周波数を選出するのではなく、用意した周期関数全てに対応する音素データを取得する。このステップS2の処理を全単位区間に対して行うことにより、音素データ[m,n](0≦m≦M−1,0≦n≦N−1)群が得られる。ここで、Nは周期関数の総数(上述の例ではN=128)、Mは音響信号において設定された単位区間の総数である。つまり、M×N個の音素データからなる音素データ群が得られることになる。
【0037】
上記ステップS2における処理は、各チャンネルの音響信号に対して行われる。そのため、各チャンネルについて、音素データの集合である音素データ群が得られることになる。音素データ群が得られたら、左チャンネルの音響信号から得られた音素データ群、および右チャンネルの音響信号から得られた音素データ群の統合処理を行う(ステップS3)。具体的には、同一の単位区間および同一の周波数の音素データ同士を統合することにより行う。この際、得られる統合音素データの強度値としては、統合される元の2つの音素データの強度値の平均値を与えるようにする。さらに、この統合音素データには、以下の〔数式2〕により算出されるバランス情報が付加される。
【0038】
〔数式2〕
Val = EL /( EL + ER )
【0039】
上記〔数式2〕において、ELは左チャンネルの音素データの強度値、ERは右チャンネルの音素データの強度値を示す。すなわち、〔数式2〕によるバランス情報の数値が高ければ高い程、左チャンネルの信号の強度値が高いことを示している。結局、統合音素データは、周波数と、周波数の強度と、単位区間の始点に対応する区間開始時刻と、単位区間の終点に対応する区間終了時刻と、バランス情報で構成されるものとなる。さらに、この際、各単位区間ごとに、強度値が高いものから所定数の統合音素データには、その属性として優先マークを示すデータを付与しておく。この所定数としては、MIDI音源の同時発音数の関係から16個程度が望ましい。このステップS3における統合処理により、左右のチャンネルの音響信号から得られた2つの音素データ群が、1つの統合音素データ群に統合された。元の音素データ群と統合音素データ群のデータ量は、ほぼ等しいので、全体としては、データ量が半分になったことになる。
【0040】
この統合音素データ群を目的とする符号データとすることもできるが、さらに以下のステップS4、ステップS5の処理を行うことにより、データ量の削減を行うことができる。統合音素データの集合である統合音素データ群が得られたら、この統合音素データ群のうち、その強度値が所定値に達していない統合音素データを削除し、残った統合音素データを有効な強度値を有する有効音素データとして抽出する(ステップS4)。このステップS4において、強度値が所定値に達しない統合音素データを削除するのは、信号レベルがほとんど0であって、実際には音が存在していないと判断される音素を削除するためである。そのため、この所定値としては、音が実際に存在しないレベルとみなされる値が設定される。
【0041】
このようにして有効音素データの集合である有効音素データ群が得られたら、同一周波数で時系列方向に連続する複数の有効音素データを1つの連結音素データとして連結する(ステップS5)。図8は有効音素データの連結を説明するための概念図である。図8(a)は連結前の統合音素データ群の様子を示す図である。図8(a)において、格子状に仕切られた各矩形は統合音素データを示しており、網掛けがされている矩形は、上記ステップS3において強度値が所定値に達しないために削除された統合音素データであり、その他の矩形は有効音素データを示す。ステップS5においては、同一周波数(同一ノートナンバー)で時間t方向に連続する有効音素データを連結するため、図8(a)に示す有効音素データ群に対して連結処理を実行すると、図8(b)に示すような連結音素データ群が得られる。例えば、図8(a)に示した有効音素データA1、A2、A3は連結されて、図8(b)に示すような連結音素データAが得られることになる。このとき、新たに得られる連結音素データAの周波数としては、有効音素データA1、A2、A3に共通の周波数が与えられ、強度値としては、有効音素データA1、A2、A3の強度値のうち最大のものが与えられ、開始時刻としては、先頭の有効音素データA1の区間開始時刻t1が与えられ、終了時刻としては、最後尾の有効音素データA3の区間終了時刻t4が与えられ、バランス情報としては、有効音素データA1、A2、A3のうち強度値が最大となる有効音素データが有するバランス情報が与えられる。有効音素データ、連結音素データ共に、周波数(ノートナンバー)、強度値、開始時刻、終了時刻、バランス情報の5つの情報で構成されるため、3つの有効音素データが1つの連結音素データに統合されることにより、データ量は3分の1に削減される。このことは、最終的にMIDI符号化される場合には、短い音符3つではなく、長い音符1つとして表現されることを意味している。
【0042】
さらに、ステップS5においては、連結の元となった有効音素データのうち最大の強度値をもつ有効音素データに優先マークが付与されていた場合に、統合された連結音素データに対して優先マークが付与される。例えば、図8(a)において、有効音素データA1、A2、A3のうち有効音素データA2の強度値が最大であったとする。この場合、有効音素データA2に優先マークが付与されていれば、連結音素データAに優先マークが付与されるが、有効音素データA2に優先マークが付与されていなければ、有効音素データA1や有効音素データA3に優先マークが付与されていても、連結音素データAには優先マークが付与されない。
【0043】
上記のようにして連結音素データ群が得られたら、この連結音素データ群のうち、優先マークが付与されていない連結音素データを削除して、最終的な符号データを得る(ステップS6)。通常のMIDI音源では同時発音数が16〜64という制約があるため、解析により得られる音素をこれに合わせなければならない。従来は、上記ステップS5に示したような連結処理を行う前に、各単位区間ごとに強度値の強いものから所定数を抽出していたが、本発明では、音素データの連結後のこの時点で抽出を行う。この際、ステップS3で各単位区間ごとに所定数(本実施形態では16個程度)の統合音素データに付与され、ステップS5において連結音素データに反映された優先マークの有無に基づいて、連結音素データの抽出を行うので、最終的に残る連結音素データは、同時刻においては所定数以下となる。このようにして同時刻に存在する連結音素データを所定数以下とすることにより、通常のMIDI音源を使用した場合に、符号データが無駄なく利用されることになる。なお、ステップS4、ステップS5の処理を行わない場合は、統合音素データの集合が目的とする符号データとなる。ただし、連結音素データも統合音素データのうち無効なデータを削除した後、有効なもののみを連結したものであるので、広い意味では、「統合音素データ」という言葉には、「連結音素データ」も含まれることになる。
【0044】
符号データとして、MIDIデータを作成する場合は、「周波数」をノートナンバーに変換し、「周波数の強度」をベロシティーに変換し、「区間の始点に対応する区間開始時刻」をノートオン時刻に変換し、「区間の終点に対応する区間終了時刻」をノートオフ時刻に変換し、バランス情報をパンポットに変換する。パンポットとは、MIDI規格において音量比率を示す制御パラメータである。具体的には、上記〔数式2〕で算出したバランス情報に100を乗じて0〜100の値をとり得るものとし、「0」が左最強、「50」が中央、「100」が右最強とする。通常のMIDI音源は、このMIDIデータ中からパンポットを読取ると、このパンポットに応じて、MIDIデータの復号化時に左右にそれぞれ強度の異なる音響信号を送るようになっている。そのため、本発明により符号化された符号データを用いることにより、元々左右の2チャンネルからなるデータを1つに統合しても左右のバランスを失わず、ステレオ再生が可能となる。
【0045】
(音源分離への応用)
以上のようにして、本発明に係る符号化方法により、ステレオ音響信号のような複数のチャンネルからなる音響信号を効率的に符号化することが可能となるが、本発明を応用することにより、複数音源を有するステレオ音響信号から各音源ごとの符号データを得ることができる。すなわち、複数音源が混在したステレオ音響信号から音源の分離を行うことが可能となる。以下にこのような手法について具体的に説明する。
【0046】
音源分離を行うためには、各連結音素データに含まれているバランス情報を利用する。通常、楽曲をステレオで録音しようとする場合、ボーカル、楽器等の各音源ごとの演奏を録音し、ミキシング時に各音源を左右どちらに録音するかを決定する。このとき、各楽器を左右どちらに記録するかについては、所定のルールがある。例えば、ボーカルは中央から聴こえるようにするため、左右ほぼ同等の信号強度で記録される。他の楽器についても左側に強い信号強度で記録するもの、右側に、強い信号強度で記録するものなどが決まっている。本発明では、このようなルールと上述のバランス情報を利用する。
【0047】
具体的には、上記ステップS6において符号化する際、各連結音素データのバランス情報を読取って、あらかじめ設定された閾値にしたがって、連結音素データ群を複数のグループに分類する。例えば、バランス情報Valが「0.5」付近のものを1つのグループに分けることにより、そのグループの連結音素データを復号化することにより、ボーカルだけを再現することができるようになる。
【0048】
この符号データとして、MIDIデータを作成する場合は、グループ化した連結音素データ群を、グループごとにMIDI規格のチャンネルに記録する。そして、チャンネルごとにパンポットを指定しておけば、そのチャンネルについては、常に同一の左右バランスで演奏されることになる。MIDI規格のパンポットは、連結音素データに対応するMIDIイベント情報(デルタタイム、ノートナンバー、ベロシティ)単位に付加することもできるが、チャンネルごとに付加して、1つのチャンネルに記録されたすべてのMIDIイベント情報に影響させることもできる。チャンネルごとにパンポットを設定することにより、 MIDIイベント情報単位に付加するのに比べてデータ量を削減することもできる。
【0049】
以上、本発明の好適な実施形態について説明したが、上記符号化方法は、コンピュータ等で実行されることは当然である。具体的には、図7のフローチャートに示したようなステップを上記手順で実行するためのプログラムをコンピュータに搭載しておく。そして、複数のチャンネルからなる音響信号をPCM方式等でデジタル化した後、コンピュータに取り込み、ステップS1〜ステップS5の処理を行った後、MIDI形式等の符号データをコンピュータより出力する。出力された符号データは、例えば、MIDIデータの場合、MIDIシーケンサ、MIDI音源を用いて音声として再生される。
【0050】
【発明の効果】
以上、説明したように本発明によれば、複数の独立した波形情報で与えられた音響信号に対して、時間軸上に複数の単位区間を設定し、設定された単位区間ごとに周波数解析を行なって、周波数と、強度値と、単位区間の始点に対応する区間開始時刻と、単位区間の終点に対応する区間終了時刻で構成される音素データを算出し、音素データ算出の処理を各入力チャンネルにおける全単位区間に対して行うことにより得られる全ての音素データについて、同一時刻、同一周波数をもつ音素データ同士を各入力チャンネル間において統合すると共に、統合元の複数の音素データの強度値に基づいて強度比率を付加した統合音素データを作成することにより、統合音素データの集合である符号データを得るようにしたので、複数の入力チャンネルからの音響信号を、統合された1つのチャンネルの符号データとして扱うことができ、データ量および処理負荷の削減が可能となるという効果を奏する。
【0051】
また、各出力チャンネルの符号データの復号化の際に、音源の左右バランスのルールを考慮して、強度比率に応じた音源を割り当てるようにすることにより、音源が混在した音響信号の音源分離に利用することもできる。
【図面の簡単な説明】
【図1】本発明の音響信号の符号化方法の基本原理を示す図である。
【図2】本発明で利用される周期関数の一例を示す図である。
【図3】図2に示す各周期関数の周波数とMIDIノートナンバーnとの関係式を示す図である。
【図4】解析対象となる信号と周期信号との相関計算の手法を示す図である。
【図5】図4に示す相関計算を行うための計算式を示す図である。
【図6】一般化調和解析の基本的な手法を示す図である。
【図7】本発明の音響信号符号化方法のフローチャートである。
【図8】有効音素データの連結を説明するための概念図である。
【符号の説明】
A(n),B(n)・・・相関値
d,d1〜d5・・・単位区間
E(n)・・・相関値
G(j)・・・含有信号
n,n1〜n6・・・ノートナンバー
S(j),S(j+1)・・・差分信号
X,X(k)・・・区間信号
Claims (5)
- 複数のチャンネルからなる音響信号に対して、時間軸上に複数の単位区間を設定し、前記単位区間ごとに周波数解析を行なって、周波数と、強度値と、単位区間の始点に対応する区間開始時刻と、単位区間の終点に対応する区間終了時刻で構成される音素データを算出する音素データ算出段階と、
前記音素データ算出段階の処理を各入力チャンネルにおける全単位区間に対して行うことにより得られる全ての音素データについて、同一時刻、同一周波数をもつ音素データ同士を各入力チャンネル間において統合すると共に、統合元の複数の音素データの強度値に基づいて強度比率を付加した統合音素データを作成する音素データ統合段階を有し、
前記統合音素データの集合である符号データを得ることを特徴とする音響信号の符号化方法。 - 複数のチャンネルからなる音響信号に対して、時間軸上に複数の単位区間を設定し、前記単位区間ごとに周波数解析を行なって、周波数と、強度値と、単位区間の始点に対応する区間開始時刻と、単位区間の終点に対応する区間終了時刻で構成される音素データを算出する音素データ算出段階と、
前記音素データ算出段階の処理を各入力チャンネルにおける全単位区間に対して行うことにより得られる全ての音素データについて、同一時刻、同一周波数をもつ音素データ同士を各チャンネル間において統合すると共に、統合元の複数の音素データの強度値に基づいて強度比率を付加した統合音素データを作成する音素データ統合段階と、
前記統合音素データの強度比率を用いて、再生用音源装置の出力チャンネル間音量バランスを制御し、複数の出力チャンネルより音響信号を再現する復号化段階と、
を有することを特徴とする音響信号の符号化復号化方法。 - さらに、前記統合音素データの強度比率を基に前記統合音素データのグループ化を行うと共にグループ化された統合音素データ群に強度比率を付加する符号化段階を有し、
前記復号化段階が、前記グループ化された統合音素データ群に対して、その強度比率に基づいて、所定の音源を割り当てることにより音響信号を再現するものであることを特徴とする請求項2に記載の音響信号の符号化復号化方法。 - 前記音響信号が2チャンネルのステレオ音響信号であり、前記符号データが、ノートナンバー、ベロシティ、デルタタイムからなるMIDIデータであり、前記強度比率がパンポット情報であることを特徴とする請求項2または請求項3に記載の音響信号の符号化復号化方法。
- コンピュータに、複数のチャンネルからなる音響信号に対して、時間軸上に複数の単位区間を設定し、前記単位区間ごとに周波数解析を行なって、周波数と、強度値と、単位区間の始点に対応する区間開始時刻と、単位区間の終点に対応する区間終了時刻で構成される音素データを算出する音素データ算出段階、前記音素データ算出段階の処理を各入力チャンネルにおける全単位区間に対して行うことにより得られる全ての音素データについて、同一時刻、同一周波数をもつ音素データ同士を各入力チャンネル間において統合すると共に、統合元の複数の音素データの強度値に基づいて強度比率を付加した統合音素データを作成する音素データ統合段階を実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001178319A JP4601865B2 (ja) | 2001-06-13 | 2001-06-13 | 音響信号の符号化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001178319A JP4601865B2 (ja) | 2001-06-13 | 2001-06-13 | 音響信号の符号化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002366146A JP2002366146A (ja) | 2002-12-20 |
JP4601865B2 true JP4601865B2 (ja) | 2010-12-22 |
Family
ID=19019037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001178319A Expired - Fee Related JP4601865B2 (ja) | 2001-06-13 | 2001-06-13 | 音響信号の符号化方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4601865B2 (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04150652A (ja) * | 1990-10-15 | 1992-05-25 | Nippon Telegr & Teleph Corp <Ntt> | 会議通話装置 |
JPH1042398A (ja) * | 1996-07-25 | 1998-02-13 | Sanyo Electric Co Ltd | サラウンド再生方法及び装置 |
JPH1195798A (ja) * | 1997-09-19 | 1999-04-09 | Dainippon Printing Co Ltd | 音声合成方法および音声合成装置 |
JPH11331248A (ja) * | 1998-05-08 | 1999-11-30 | Sony Corp | 送信装置および送信方法、受信装置および受信方法、並びに提供媒体 |
JP2001005450A (ja) * | 1999-06-24 | 2001-01-12 | Dainippon Printing Co Ltd | 音響信号の符号化方法 |
-
2001
- 2001-06-13 JP JP2001178319A patent/JP4601865B2/ja not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04150652A (ja) * | 1990-10-15 | 1992-05-25 | Nippon Telegr & Teleph Corp <Ntt> | 会議通話装置 |
JPH1042398A (ja) * | 1996-07-25 | 1998-02-13 | Sanyo Electric Co Ltd | サラウンド再生方法及び装置 |
JPH1195798A (ja) * | 1997-09-19 | 1999-04-09 | Dainippon Printing Co Ltd | 音声合成方法および音声合成装置 |
JPH11331248A (ja) * | 1998-05-08 | 1999-11-30 | Sony Corp | 送信装置および送信方法、受信装置および受信方法、並びに提供媒体 |
JP2001005450A (ja) * | 1999-06-24 | 2001-01-12 | Dainippon Printing Co Ltd | 音響信号の符号化方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2002366146A (ja) | 2002-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4132362B2 (ja) | 音響信号の符号化方法およびプログラム記録媒体 | |
JP2000099009A (ja) | 音響信号の符号化方法 | |
JPH1195753A (ja) | 音響信号の符号化方法およびコンピュータ読み取り可能な記録媒体 | |
JP4601865B2 (ja) | 音響信号の符号化方法 | |
JP4695781B2 (ja) | 音響信号の符号化方法 | |
JP4331289B2 (ja) | 音響信号の符号化方法 | |
JP4156252B2 (ja) | 音響信号の符号化方法 | |
JP4268328B2 (ja) | 音響信号の符号化方法 | |
JP4580548B2 (ja) | 周波数解析方法 | |
JP3776782B2 (ja) | 音響信号の符号化方法 | |
JP2003216147A (ja) | 音響信号の符号化方法 | |
JP2002244691A (ja) | 音響信号の符号化方法 | |
JP2002215142A (ja) | 音響信号の符号化方法 | |
JP4156269B2 (ja) | 時系列信号の周波数解析方法および音響信号の符号化方法 | |
JP3935745B2 (ja) | 音響信号の符号化方法 | |
JP2002123296A (ja) | 音響信号の符号化方法および分離方法 | |
JP4473979B2 (ja) | 音響信号の符号化方法および復号化方法ならびに当該方法を実行するプログラムを記録した記録媒体 | |
JP4220108B2 (ja) | 音響信号符号化システム | |
JP4662407B2 (ja) | 周波数解析方法 | |
JP4662406B2 (ja) | 周波数解析方法および音響信号の符号化方法 | |
JP4156268B2 (ja) | 時系列信号の周波数解析方法および音響信号の符号化方法 | |
JP4697919B2 (ja) | 音響信号の符号化方法 | |
JP4268327B2 (ja) | 音響信号の符号化方法 | |
JP4061070B2 (ja) | 周波数解析方法および音響信号の符号化方法 | |
JP2003216169A (ja) | 周波数解析方法および音響信号の符号化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080521 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090901 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091104 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091225 |
|
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: 20100921 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100929 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131008 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |