説明

オーディオ信号符号化装置、および符号化プログラム

【課題】 入力オーディオ信号に対する動的マスキング閾値を適応的に調整して、量子化ノイズのレベルを最適化し、復号時の音質を向上させる。
【解決手段】 入力オーディオ信号を周波数分析した結果の各スペクトルのパワーを算出する手段と、該算出結果を用いて入力オーディオ信号のスペクトル周波数範囲を複数のサブバンドに分割した時の各サブバンドにおける入力オーディオ信号の純音性を示すトーナリティパラメータを算出する手段と、該トーナリティパラメータを用いて入力オーディオ信号のマスキングエネルギーに対する動的マスキング閾値を算出する手段とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、オーディオ信号の符号化方式に係り、さらに詳しくはMPEG方式などの符号化装置における符号化処理において、入力オーディオ信号の純音性を判定し、その判定結果に対応して適応的なマスキングを行うことによって、量子化ノイズを低減させるオーディオ信号符号化装置、および符号化プログラムに関する。
【背景技術】
【0002】
近年のディジタル圧縮技術の進歩に伴い、パーソナルコンピュータや携帯端末等はテキスト、オーディオ(可聴周波数)、音声および映像等の各種のデータ形式に対応可能になっている。
【0003】
オーディオ信号(オーディオデータまたはオーディオ信号データ)の圧縮符号化方式は、MPEGによってMPEG1 Audioとして標準化されており、Layer1〜Layer3の3種類のモードが規定されている。これらの規格としては、例えばMPEG1についてのMP3、MPEG2についてのAAC等があり、またMP3はISO/IEC(国際標準化機構/国際電気標準会議)11172−3として、さらに、MPEG2−AACはISO/IEC13818−7として、それぞれ、符号化アルゴリズムが標準化されている。
【0004】
これらの標準化において出されている勧告においては、復号処理に関しては詳細に記述されている反面、符号化処理(エンコード処理)に関しては、符号化アルゴリズムの概要が示されているのみである。これらの勧告された符号化アルゴリズムの概要は、以下の(i)〜(iii)に示す
ようになっている。
【0005】
(i)符号化装置は、入力されたオーディオ信号を周波数変換する。ここで、オーディオ信号は、マイク、アンプ等によって取得されたオーディオ信号である。
【0006】
(ii)符号化装置は、周波数変換された周波数成分について、人の聴覚特性を利用して、各周波数帯域に対して許容される量子化誤差(マスキング特性)を決定する。
【0007】
(iii)符号化装置は、量子化から逆量子化した際に発生する量子化ノイズが、(ii)にて決定されたマスキング特性を下回るように、前記(i)にて変換された各周波数成分と各周波数帯域のゲインとを符号化する。
【0008】
従って、符号化処理に関しては、オーディオ信号が符号化されたビット列(ビットストリーム)のフォーマット(文法)が勧告に準拠していればよく、オーディオ復号装置は、例えばISO規格に準拠したものが用いられる。すなわち、符号化されたビットストリームのフォーマットは、予め決められた復号アルゴリズムに基づいて復号処理できればよく、符号化アルゴリズムの範囲においては比較的自由度がある。このため、各種パラメータを符号化するときに必要なビット数に関する厳密な規定はない。この反面、オーディオ復号装置は勧告に準拠した復号アルゴリズムにのみ対応するので、勧告または仕様により決定された処理と異なる処理はできない。
【0009】
従来のオーディオ信号符号化方式について図15から図18を用いて説明する。図15は一般的なMPEG2−AAC方式符号化器のブロック構成図であり、図16は符号化処理のフローチャートである。本発明が対象とするマスキングレベル適応化はこれらの図の中で聴覚心理モデルに対応する処理であり、その処理に関する従来技術の詳細は図17、および図18で説明するものとし、図15、および図16の全体処理については簡単に説明する。
【0010】
図15、および図16において、符号化器に入力されたオーディオ信号は、聴覚心理モデル部とMDCT(変形離散コサイン)変換部とに与えられる。聴覚心理モデル部による周波数分析の結果として算出されたマスキング閾値特性はビットレート・歪み制御部に与えられ、MDCT変換部の変換結果は音質を向上させるためのオプションツールとしてのTNS、ISステレオ、およびMSステレオに与えられる。
【0011】
聴覚心理モデル部から出力されるマスキング閾値特性は、各周波数帯域毎に人間が知覚できるレベルを示し、このレベルより入力オーディオ信号のレベルが大きければ音として知覚でき、逆に小さければ音として知覚できないことになる。このマスキング閾値特性は、ピットレート・歪み制御部に与えられ、図16のフローチャートの後半において行われる符号化処理において発生する量子化ノイズのレベルがこのマスキング閾値を超えないようにすることによって、復号後にこのノイズが知覚されないようにする制御が行われる。従ってMPEG2−AAC方式のオーディオ符号化器においては、マスキング閾値特性が音質に大きく影響することになる。
【0012】
すなわち図16の後半の処理において、各周波数のMDCT係数に対して行われる非線形量子化、およびそれに続く逆量子化処理において発生する量子化誤差が許容範囲内、且つ量子化ビット数が図16のフローチャートの最初において決定された最大量子化ビット数未満となるようにスケールファクタおよびコモンスケールファクタの更新が行われ、符号化ビットストリームが生成される。
【0013】
図17、および図18は、従来の符号化方式における聴覚心理モデル部のブロック構成と処理フローチャートである。聴覚心理モデル部における詳細な処理はISO/IEC13818−7によって規定されているが、この規定に厳密に従う必要はなく、例えばこの規定では入力オーディオ信号に対するFFT(高速フーリエ変換)処理を必要とするが、FFT処理の処理量が膨大であるため、実際の処理においては図15、図16におけるMDCT変換処理によって代用することも可能である。
【0014】
図17において、入力オーディオ信号はMDCT(変形離散コサイン変換)処理において周波数成分であるMDCT係数に変換される。入力オーディオ信号が48kHzサンプリングの場合は、1024個のMDCT係数に変換される。次にパワー算出において各MDCT係数の二乗を行いパワーに変換する。次にパワー平均値算出において、聴覚心理分析用のサブバンド単位でMDCT係数パワー値の平均値を算出する。聴覚心理分析用のサブバンドはISO/IEC13818−7のTableB.2.1.9.a Psychoacoustic parameters for 48kHz long FFTで定義された分割に従う。
【0015】
各サブバンド毎に算出されたパワー平均値からspreading関数を用いて、任意の周波数の音が近隣の音に与えるマスキングエネルギーが算出される。ここでの処理により入力オーディオ信号のスペクトル状態に応じたマスキングエネルギーenb[sb]が生成される。すなわちspreading関数を用いてある周波数の1本のスペクトルだけでなく、周囲のスペクトルを重みをつけて考慮し、enb[sb]が求められる。マスキングエネルギーenb[sb]は次の動的マスキング閾値算出においてマスキング閾値nb[sb]に変換される。
【0016】
ここで、マスキング閾値はマスキングされる音が純音であるか雑音であるかによって特性が変化する性質がある。そのため、spreading関数によって求められたマスキングエネルギーに対しては、より純音らしい音はマスキングレベルを低くし、より雑音らしい音はマスキングレベルが高くなるように重み付けを行う必要がある。この重み付けの係数をトーナリティパラメータ(tb[sb])とする。トーナリティパラメータ(tb[sb])は1.0〜0.0の範囲をとり、純音性が高いときには1.0に近づき、雑音性が高いときには0.0となる。動的マスキング閾値nb[sb]はマスキングエネルギーenb[sb]、およびトーナリティパラメータ(tb[sb])を用いて以下の様に与えられる。
【0017】
SNR=tb[sb]*18+(1.0−tb[sb])*6
bc=10^(−SNR/10.0)
nb[sb]=enb[sb]*bc
(sb=0〜68)
動的マスキング閾値nb[sb]は静的マスキング閾値比較によって、静的マスキング閾値と比較され、両者の値で大きい値が選択される。静的マスキング閾値は入力オーディオ信号が48kHzサンプリング時はISO/IEC13818−7のTableB.2.1.9.a Psychoacoustic parameters for 48kHz long FFTのqsthrの欄で定義されており、各サブバンド毎にこの値と比較を行う。なお、qsthr[sb]はdB表示(対数表示)であるために、nb[sb]との比較の際はqsthr[sb]の値をリニアに変換して比較を行う。
【0018】
静的マスキング閾値比較で処理されたマスキング閾値はサブバンド変換で量子化処理時に適したサブバンドに再分割される。これは聴覚心理モデル分析時に適用されるサブバンドと量子化処理時のサブバンドの分割が異なるためである。量子化処理時に適用されるサブバンドの定義は、入力オーディオ信号が48kHzサンプリング時はISO/IEC1318−7のTable8.4 scalefactor band for LONG_WINDOW,LONG_START_WINDOW,LONG_STOP_WINDOW at 44.1kHz and48kHz で示されている。
【0019】
ISO/IEC13818−7では動的マスキング閾値算出で使用されるトーナリティパラメータを算出するためには、入力オーディオ信号をFFTし、そこで得られる各周波数毎の振幅情報および位相情報を使用している。コンパクトな符号化器を実現する際にはFFTの処理は負荷が大きい。そこで、前述のように従来では、符号化処理で必要なMDCT係数を聴覚心理モデル分析時にも適用して処理量の削減を行っていた。
【0020】
しかしながらこのようにFFT処理の代わりに用いられるMDCT処理では、各周波数成分に対するコサイン成分、すなわち振幅情報が算出されるが、位相情報は求められず、このためトーナリティパラメータの算出を行うことができなかったため、動的マスキング閾値の算出処理ではトーナリティパラメータは時間的に一定の定数値として処理が行われていた。そこで入力オーディオ信号の周波数成分が純音性を持つか、雑音性を持つかに対応して適応的にマスキングレベルを調整することができず、純音性の信号に対する符号化処理に当って発生する量子化ノイズが大きくなり、結果的に復号時に音質劣化が生じるという問題点があった。
【0021】
以上のようなオーディオデータの符号化方式について次の従来技術がある。
【特許文献1】特開2002−351500号公報 「ディジタルデータの符号化方法」
【0022】
この文献では、入力オーディオ信号の全周波数範囲に渡ってスペクトルパワーの最大値と平均値から純音性の高低を判定し、マスキング特性を切り替える技術が開示されている。
【0023】
しかしながら、この技術では純音性の高低が全周波数帯域に渡って判定され、その判定結果に対応して全周波数帯域に渡って平坦な平坦マスキング特性と、ROM化された基準マスキング特性のいずれかが用いられるため、入力オーディオ信号のパワースペクトルがどの周波数帯域にピークを持つかなどの周波数特性や、その時間的変化に対応して柔軟にマスキング閾値特性の適応化を行うことができないという問題点を解決することができなかった。
【発明の開示】
【発明が解決しようとする課題】
【0024】
本発明の課題は、上述の問題点に鑑み、入力オーディオ信号のパワースペクトルの各周波数帯域における純音性の高低を判定して、動的マスキング閾値特性を適応的に調整することによって量子化ノイズのレベルを最適化し、オーディオ信号符号化における音質向上を実現することである。
【課題を解決するための手段】
【0025】
図1は、本発明のオーディオ信号符号化装置の原理構成ブロック図である。同図において符号化装置1は、スペクトルパワー算出手段2、トーナリティパラメータ算出手段3、および動的マスキング閾値算出手段4を備える。
【0026】
スペクトルパワー算出手段2は入力オーディオ信号を周波数分析した結果の各スペクトルのパワーを算出するものであり、トーナリティパラメータ算出手段3はスペクトルパワーの算出結果を用いて、入力オーディオデータのスペクトルの周波数範囲を複数のサブバンドに分割したときの各サブバンドにおける入力オーディオデータの純音性を示すトーナリティパラメータを算出するものであり、動的マスキング閾値算出手段4は算出されたトーナリティパラメータを用いて入力オーディオ信号のマスキングエネルギーに対する動的マスキング閾値を算出するものである。
【0027】
ここでトーナリティパラメータ算出手段3は、前述の複数のサブバンドのそれぞれにおけるスペクトルパワーの総和SSと、各サブバンド内に存在するスペクトルパワーの最大値とそのサブバンドの幅との積SMとを求め、SS/SMの値に対応して、トーナリティパラメータを求める。
【0028】
また実施の形態においては、トーナリティパラメータ算出手段3が前述のSS/SMの値が小さいときにトーナリティパラメータを大きくし、その値が大きいときにトーナリティパラメータを小さくすることもでき、またこのSS/SMの値の範囲を複数に分割し、分割された複数の範囲のそれぞれに対応して、それぞれ一定のトーナリティパラメータを決定することもできる。さらに前述の複数のサブバンドとして入力オーディオデータのスペクトル周波数範囲を低域、中域、および高域の3つのサブバンドに分割することもできる。
【0029】
また実施の形態においては、動的マスキング閾値算出手段4がトーナリティパラメータが大きいときに動的マスキング閾値を低くし、トーナリティパラメータが小さいときに動的マスキング閾値を高くすることもできる。
【0030】
次に本発明のオーディオ信号符号化プログラムは、入力オーディオ信号を周波数分析した結果の各スペクトルのパワーを算出する手順と、その算出結果を用いて入力オーディオデータのスペクトル周波数範囲を複数のサブバンドに分割した時の各サブバンドにおける入力オーディオデータの純音性を示すトーナリティパラメータを算出する手順と、算出されたトーナリティパラメータを用いて入力オーディオ信号のマスキングエネルギーに対する動的マスキング閾値を算出する手順とを計算機に実行させるものである。
【0031】
発明の実施の形態においては、このプログラムが格納された計算機読出し可能可搬型記憶媒体、およびこのプログラムに対応するオーディオ信号符号化方法が用いられる。
【発明の効果】
【0032】
本発明によれば、入力オーディオ信号のスペクトル周波数範囲を複数のサブバンドに分割して、各サブバンドにおける入力オーディオデータの純音性を示すトーナリティパラメータを求めてマスキング閾値特性の適応化を行うことが可能になり、量子化雑音の大きさを低減させるオーディオ信号符号化、および復号時における音質向上に寄与するところが大きい。
【発明を実施するための最良の形態】
【0033】
まず本発明における入力オーディオ信号の純音性判定方式について図2、および図3を用いて説明する。図2は、純音性が高いサブバンドの例であり、サブバンドの周波数幅Wの中におけるスペクトルのうちで最大のスペクトルのパワーの値をHとし、WとHとの積をSMで表し、スペクトルの大きさの合計面積をSSとすると、図2ではSSとSMとの比が小さくなり、純音性が高いものと判定される。
【0034】
これに対して図3では、SSとSMとの比は大きくなり、純音性が低い、すなわち雑音性が高いものと判定される。
図4は本発明における視聴覚心理モデル部のブロック構成を示し、図5は聴覚心理モデル部による処理のフローチャートを示す。これらの図を従来例における図17、および図18と対比させて説明する。
【0035】
図4においてはMDCT処理10からサブバンド変換16までの処理は、動的マスキング閾値算出14における算出方法が従来技術と一部異なる、すなわちトーナリティ判定用サブバンドの分割に応じて各サブバンドに対応するトーナリティパラメータが用いられる点を除いて、他の部分の処理は同様である。
【0036】
図17、および図18の従来技術と異なる処理は、図4では最大値検出20から純音性判定24までのブロックであり、図5ではステップS10、すなわち最大値検出からステップS14の純音性判定までの処理である。
【0037】
まずパワー算出11によって求められた各スペクトルパワーの値を用いて、純音性を判定するために複数のサブバンド、本実施形態では3つのサブバンドのそれぞれについてスペクトルパワーの最大値検出20が行われる。サブバンドの分け方については後述する。
【0038】
続いてサブバンド最大面積計算21において前述のSM[i]が求められ、スペクトル面積計算22によって前述の合計面積SS[i]が求められる。ここでiはサブバンドのインデックス、すなわち番号である。続いて面積比計算23によってSS[i]とSM[i]との比が計算され、純音性判定24によってその比R[i]の値に対応して純音性を示すトーナリティパラメータtb[i]の値が算出される。この算出については後述する。
【0039】
図4の動的マスキング閾値算出14においては、従来技術と同様に算出されたマスキングエネルギーenb[sb](sb=0〜68)に対応して、トーナリティパラメータtb[i](i=0〜2)を使用して動的マスキング閾値nb[sb](sb=0〜68)が次式によって算出される。なおsbの値による式の区分は図6で説明するサブバンドの分割に対応する。
【0040】
if(sb<10)then tb=tb[0]
else if(sb<30)then tb=tb[1]
else(sb≧30)then tb=tb[2]
SNR=tb*18+(1.0−tb)*6
bc=10^(−SNR/10.0)
nb[sb]=enb[sb]*bc
(sb=0〜68)
なお図5ではステップS4の処理の後にステップS10の最大値検出が行われているが、図4と比較することにより、ステップS2の処理の後にステップS10からS14の処理をステップS3、S4の処理と遂行して実行可能であることがわかる。
【0041】
続いて本実施形態における聴覚心理モデル処理の詳細について、図6に示す純音性判定用のサブバンド設定の具体例を用いて図7から図13によって説明する。図6においては、入力オーディオ信号48kHzサンプリング時に、1024個のMDCT係数が得られたものとする。この1024個のMDCT係数に対するスペクトルパワーが聴覚心理モデル分析用に69個のサブバンド(P0−P68)に分けられる。なおこの1024の個数はMDCTにおけるポイント数に相当する。
【0042】
このサブバンドの詳細についてはISO/IEC13818−7のTableB.2.1.9.a Psychoacoustic parameters for 48kHz long FFTと同様である。
【0043】
トーナリティ判定用のサブバンドとしては聴覚心理分析用サブバンドのP0〜P9,P10〜P29,P30〜P68をそれぞれ1個のサブバンドとし、全体を3個のサブバンドに分ける。
【0044】
このとき、それぞれのサブバンドのバンド幅W[0]〜W[2]の大きさはそのサブバンドに存在するMDCT係数の本数とする。
つまり、W[0]=20(i0〜i19)
W[1]=54(i20〜i73)
W[2]=950(i74〜i1023)
となる。
【0045】
ここで1024個のMDCT係数をmdct_line[i](i=0〜1023)としたとき、各トーナリティ判定用のサブバンドにおけるスペクトル総和面積Ss[0]〜Ss[2]は、
【0046】
【数1】

【0047】
となる。
また、各トーナリティ判定用のサブバンドにおけるMDCT係数パワー最大値H[0]〜H[2]は
H[0]=max(mdct_line[i]*mdct_line[i]) (i=0〜19)
H[1]=max(mdct_line[i]*mdct_line[i]) (i=20〜73)
H[2]=max(mdct_line[i]*mdct_line[i]) (i=74〜1023)
となり、各トーナリティ判定用サブバンドにおける最大面積SM[0]〜SM[2]は、
M[i]=W[i]*H[i] (i=0〜2)
となる。
【0048】
また、各トーナリティ判定用のサブバンドにおける面積比R[i]は、
R[i]=SS[i]/SM[i] (i=0〜2)
と表せる。
【0049】
図7は最大値検出処理の詳細フローチャートである。同図において処理が開始されると、まずステップS20で番号0のサブバンドにおけるスペクトルパワーの最大値を示すmax[0]の値が0に初期化され、ステップS21からステップS26で、聴覚心理モデル分析用の69個のサブバンドのうちのサブバンド番号sb=0から始めて、10未満のsbに対する処理が繰り返される。
【0050】
ステップS22では、wlow(sb)の値から初めてwlow(sb+1)の値未満のiに対して、iをインクリメントさせながらステップS25までの処理が行われる。このwlow(sb)は0から68の69個のサブバンドのそれぞれに含まれる複数のスペクトルのうちで、最も番号の小さいスペクトルの番号を示す。
【0051】
図8はこのwlowの値を示すものである。図6と比較することによって、例えばsb=0のサブバンドに対してはその値は0、sb=1のサブバンドに対しては2であり、また例えばsb=10、すなわちサブバンドP10に対するwlowの値は11番目の値、すなわち20である。
【0052】
ステップS23ではwlow(sb)の値で最も小さい番号のスペクトルが決定されるサブバンドの中のスペクトルパワーのそれぞれについて、その大きさrw[i]がmax[0]の値を超えているか否かが判定され、超えている場合にはステップS24でmax[0]の値がこのスペクトルパワーのrw[i]の値に置き換えられた後に、また超えていない場合には直ちにiの値がインクリメントされて、ステップS22以降の処理が行われる。これによって、ステップS20からステップS26において、トーナリティ判定用の3つのサブバンドのうち最も低域側のサブバンド(i=0)のサブバンドにおける最大値H[0]=max[0]の検出処理が終了する。
【0053】
ステップS30からステップS36は、図6のトーナリティ判定用サブバンドのうち、中域のサブバンドに対する最大値検出処理であり、ステップS40からS46は高域のサブバンドに対する最大値検出処理を示す。その内容は、低域のサブバンドに対応するステップS20からS26における処理と同様である。
【0054】
図9は各サブバンドに対応するスペクトル面積計算処理の詳細フローチャートである。同図において処理が開始されると、まずステップS48で3つのサブバンドに対応するスペクトル面積SSの値がすべて0に初期化された後に、ステップS50からS54で低域、ステップS55からS59で中域、ステップS60からS64で高域のトーナリティ判定用のサブバンドに対するスペクトル面積計算処理が行われる。
【0055】
ステップS50からS54で、聴覚心理分析用サブバンドの番号sbが0のサブバンドから、サブバンド番号をインクリメントさせながら、sbの値が10未満のサブバンドに対する処理が行われる。この処理では、ステップS51からS53でそのサブバンドに対応する前述のwlowの値に対応するiをインクリメントさせながら、wlow(sb+1)未満のiに対してそのサブバンドの内部における各スペクトルのスペクトルパワーrw[i]が次々とSS[0]に加算される処理が行われる。ステップS55からS59、およびステップS60からS64までの処理は、ステップS50からS54における処理と同様である。
【0056】
図10はサブバンド最大面積計算処理の詳細フローチャートである。ステップS66では、図6におけるトーナリティ判定用の3つのサブバンドのうちで、低域のサブバンドに対するサブバンド最大面積の値が求められる。すなわちこのサブバンドにおけるスペクトルパワーの最大値max[0]と、wlow[10]、すなわち図6で聴覚心理分析用サブバンドP10の中で最も小さいスペクトル番号20との積によって、最大面積SM[0]の値が計算される。
【0057】
ステップS67では、中域のサブバンドに対する最大面積が、ステップS68では高域のサブバンドに対する最大面積が求められる。例えばステップS67では、中域のサブバンドにおけるスペクトルパワーの最大値max[1]に対してwlow[30]とwlow[10]との差が乗算されて、SM[1]の値が求められる。ここでwlow[30]の値は図6において74であり、これから前述のwlow[10]の値20を減算することによって中域のサブバンドに含まれるスペクトルの本数が求められる。
【0058】
図11は面積比計算・純音性判定処理の詳細フローチャートである。同図の処理を図12のトーナリティパラメータの具体例を用いて説明する。図11において処理が開始されると、まずステップS70からS74の処理が、トーナリティ判定用サブバンドの番号を示すiの値が0からインクリメントされながら、3未満のiの値に対して繰り返される。この処理ではまずステップS71でスペクトル面積SS[i]と、サブバンド最大面積SM[i]との比R[i]が求められ、ステップS72でトーナリティパラメータtb[i]の値が1.0とされ、ステップS73でR[i]が0.1を超えているか否かが判定される。
【0059】
図12のトーナリティパラメータの具体例においては、R[i]の値が0から0.1の範囲では純音性が高いものとしてトーナリティパラメータの値が1.0とされる。図11のステップS72でトーナリティパラメータの値として1.0が設定されているために、R[i]の値が0.1を超えている場合には、トーナリティパラメータの値として1.0より低い値を設定しなければならないため、面積比R[i]の値が0.1を超えていなければiの値をインクリメントしてステップS70以降の処理が行われるが、0.1を超えている場合にはステップS75の処理に移行する。
【0060】
ステップS75ではトーナリティパラメータの値が0.5に設定され、ステップS76で面積比が0.5を超えているか否かが判定される。0.5を超えている場合にはトーナリティパラメータの値として0.5より小さい値を設定しなければならないため、超えていない場合にはiの値をインクリメントさせてステップS70以降の処理が行われるが、超えている場合にはステップS77の処理に移行する。
【0061】
ステップS77ではトーナリティパラメータの値が0.2に設定され、ステップS78で面積比が0.8を超えているか否かが判定され、0.8を超えていない場合にはiをインクリメントさせてステップS70以降の処理が行われるが、超えている場合にはステップS79でトーナリティパラメータの値として0.0が設定された後に、iをインクリメントさせてステップS70以降の処理が行われる。
【0062】
図13は動的マスキング閾値算出処理の詳細フローチャートである。同図においては前述の式に対応する処理が行われる。ステップS81からS87で、聴覚心理分析用サブバンドの番号sb=0から始めて、その値をインクリメントさせながら69未満のsbの値のサブバンドに対する処理が行われる。
【0063】
この処理では、まずステップS82でsbの値が10未満であるか否かが判定され、10未満である時には図6における低域のトーナリティ判定用サブバンドに対する処理を行うために、ステップS83で低域のサブバンドに対するトーナリティ係数tb[0]の値がtbの値とされ、ステップS84からS86において動的マスキング閾値nb[sb]の計算が行われる。
【0064】
ステップS82でsbの値が10未満でないと判定されると、ステップS88でその値が30未満であるか否かが判定される。30未満である時には図6の中域のサブバンドに対する計算を行うべきことになり、ステップS89で中域のトーナリティパラメータtb[1]の値がtbの値とされた後に、また30未満でない時にはステップS90で高域のサブバンドに対するトーナリティパラメータtb[2]の値がtbの値とされた後に、ステップS84以降の処理が実行される。
【0065】
前述のマスキング閾値nb[sb]の算出式において、tb[i]が0.0に近い時(雑音性が高い)よりも、1.0に近い方がSNRの値が大きくなって係数bcの値が小さくなり、純音性の信号の時は雑音性の信号の時よりもenb[sb]の大きさを下げる幅が大きくなる。この動作により純音性が高いほどそのサブバンドにおける動的マスキング閾値が低くなり、また、雑音性の高い信号の時はそのサブバンドにおける動的マスキング閾値は純音性の高い信号のそれよりも大きい閾値となる。この動作により、入力オーディオ信号の純音性・雑音性に応じてマスキング閾値を動的に補正することが可能となり、純音性が高いときは符号化処理における許容量子化誤差が小さくなるために量子化ノイズの低減を行うことが可能となる。
【0066】
以上において本発明のオーディオ信号符号化装置および符号化プログラムについてその詳細を説明したが、この符号化装置は当然一般的なコンピュータシステムを基本として構成することが可能である。図14はそのようなコンピュータシステム、すなわちハードウェア環境の構成ブロック図である。
【0067】
図14においてコンピュータシステムは中央処理装置(CPU)20、リードオンリメモリ(ROM)21、ランダムアクセスメモリ(RAM)22、通信インタフェース23、記憶装置24、入出力装置25、可搬型記憶媒体の読取り装置26、およびこれらの全てが接続されたバス27によって構成されている。
【0068】
記憶装置24としてはハードディスク、磁気ディスクなど様々な形式の記憶装置を使用することができ、このような記憶装置24、またはROM21に図5、図7、図9〜図11、図13などのフローチャートに示されたプログラムや、本発明の特許請求の範囲の請求項5のプログラムなどが格納され、そのようなプログラムがCPU20によって実行されることにより、本実施形態におけるサブバンド毎の純音性判定、その判定結果に基づく動的マスキング閾値の適応化による音質向上が可能となる。
【0069】
このようなプログラムは、プログラム提供者28からネットワーク29、および通信インタフェース23を介して、例えば記憶装置24に格納されることも、また市販され、流通している可搬型記憶媒体30に格納され、読取り装置26にセットされて、CPU20によって実行されることも可能である。可搬型記憶媒体30としてはCD−ROM、フレキシブルディスク、光ディスク、光磁気ディスク、DVDなど様々な形式の記憶媒体を使用することができ、このような記憶媒体に格納されたプログラムが読取り装置26によって読取られることにより、本実施形態におけるサブバンド毎の純音性判定などが可能となる。
【0070】
以上説明したとおり、本発明によればMDCT係数のみから入力オーディオ信号の純音性・雑音性を判定し、それに応じて聴覚心理モデル処理の出力であるマスキング閾値特性に対して、純音性信号・雑音性信号に応じた補正を行うことが可能になる。このことにより、オーディオ符号化処理における量子化雑音の大きさを低減でき、オーディオ符号化・復号機器の音質向上に寄与できる。
【0071】
(付記1) オーディオ信号を符号化する符号化装置であって、
入力オーディオ信号を周波数分析した結果の各スペクトルのパワーを算出するスペクトルパワー算出手段と、
該算出結果を用いて、入力オーディオ信号のスペクトルの周波数範囲を複数のサブバンドに分割した時の各サブバンドにおける入力オーディオ信号の純音性を示すトーナリティパラメータを算出するトーナリティパラメータ算出手段と、
該算出されたトーナリティパラメータを用いて入力オーディオ信号のマスキングエネルギーに対する動的マスキング閾値を算出する動的マスキング閾値算出手段とを備えることを特徴とするオーディオ信号符号化装置。
【0072】
(付記2) 前記トーナリティパラメータ算出手段が、
前記サブバンドのそれぞれにおけるスペクトルパワーの総和SSと、サブバンド内に存在するスペクトルパワーの最大値とサブバンドの幅との積SMとを求め、SS/SMの値に対応して、トーナリティパラメータの値を求めることを特徴とする付記1記載のオーディオ信号符号化装置。
【0073】
(付記3) 前記トーナリティパラメータ算出手段が、
前記SS/SMの値が小さいときにトーナリティパラメータの値を大きくし、SS/SMの値が大きいときにトーナリティパラメータの値を小さくすることを特徴とする付記2記載のオーディオ信号符号化装置。
【0074】
(付記4) 前記トーナリティパラメータ算出手段が、
前記SS/SMの値の範囲を複数に分割し、該分割された複数の範囲のそれぞれに対して、一定のトーナリティパラメータの値を決定することを特徴とする付記3記載のオーディオ信号符号化装置。
【0075】
(付記5) 前記トーナリティパラメータ算出手段が、
前記入力オーディオ信号のスペクトルの周波数範囲を低域、中域、および高域の3つのサブバンドに分割してトーナリティパラメータの値を算出することを特徴とする付記1記載のオーディオ信号符号化装置。
【0076】
(付記6) 前記動的マスキング閾値算出手段が、
前記トーナリティパラメータの値が大きいときに動的マスキング閾値を低くし、トーナリティパラメータの値が小さいときに動的マスキング閾値を高くすることを特徴とする付記1記載のオーディオ信号符号化装置。
【0077】
(付記7) オーディオ信号を符号化する計算機によって用いられるプログラムであって、
入力オーディオ信号を周波数分析した結果の各スペクトルのパワーを算出する手順と、
該算出結果を用いて、入力オーディオ信号のスペクトルの周波数範囲を複数のサブバンドに分割した時の各サブバンドにおける入力オーディオ信号の純音性を示すトーナリティパラメータを算出する手順と、
該算出されたトーナリティパラメータを用いて入力オーディオ信号のマスキングエネルギーに対する動的マスキング閾値を算出する手順とを計算機に実行させるためのオーディオ信号符号化プログラム。
【0078】
(付記8) 前記トーナリティパラメータ算出の手順において、
前記サブバンドのそれぞれにおけるスペクトルパワーの総和SSと、サブバンド内に存在するスペクトルパワーの最大値とサブバンドの幅との積SMとを求め、SS/SMの値に対応して、トーナリティパラメータの値を求めることを特徴とする付記7記載のオーディオ信号符号化プログラム。
【0079】
(付記9) オーディオ信号を符号化する計算機によって用いられる記憶媒体であって、
入力オーディオ信号を周波数分析した結果の各スペクトルのパワーを算出するステップと、
該算出結果を用いて、入力オーディオ信号のスペクトルの周波数範囲を複数のサブバンドに分割した時の各サブバンドにおける入力オーディオ信号の純音性を示すトーナリティパラメータを算出するステップと、
該算出されたトーナリティパラメータを用いて入力オーディオ信号のマスキングエネルギーに対する動的マスキング閾値を算出するステップとを計算機に実行させるためのオーディオ信号符号化プログラムを格納した計算機読出し可能可搬型記憶媒体。
【0080】
(付記10) オーディオ信号を符号化する方法であって、
入力オーディオ信号を周波数分析した結果の各スペクトルのパワーを算出し、
該算出結果を用いて、入力オーディオ信号のスペクトルの周波数範囲を複数のサブバンドに分割した時の各サブバンドにおける入力オーディオ信号の純音性を示すトーナリティパラメータを算出し、
該算出されたトーナリティパラメータを用いて入力オーディオ信号のマスキングエネルギーに対する動的マスキング閾値を算出することを特徴とするオーディオ信号符号化方法。
【図面の簡単な説明】
【0081】
【図1】本発明のオーディオ信号符号化装置の原理構成ブロック図である。
【図2】純音性の高いサブバンドの例を示す図である。
【図3】純音性の低いサブバンドの例を示す図である。
【図4】本実施形態における聴覚心理モデルのブロック構成を示す図である。
【図5】本実施形態における聴覚心理モデル処理のフローチャートである。
【図6】トーナリティ判定用のサブバンド設定の具体例を示す図である。
【図7】サブバンド内の最大値検出処理の詳細フローチャートである。
【図8】聴覚心理分析用サブバンドのそれぞれの内部の最も小さいスペクトル番号の説明図である。
【図9】スペクトル面積計算処理の詳細フローチャートである。
【図10】サブバンド最大面積計算処理の詳細フローチャートである。
【図11】面積比計算・純音性判定処理の詳細フローチャートである。
【図12】トーナリティパラメータ設定の具体例を示す図である。
【図13】動的マスキング閾値算出処理の詳細フローチャートである。
【図14】本発明におけるプログラムのコンピュータへのローディングを説明する図である。
【図15】AAC符号化器の従来例の構成を示すブロック図である。
【図16】AAC符号化器の従来例における処理フローチャートである。
【図17】聴覚心理モデル部の従来例の構成を示すブロック図である。
【図18】聴覚心理モデル部の従来例の処理フローチャートである。
【符号の説明】
【0082】
1 オーディオ信号符号化装置
2 スペクトルパワー算出手段
3 トーナリティパラメータ算出手段
4 動的マスキング閾値算出手段
10 MDCT処理
11 パワー算出
12 パワー平均値算出
13 spreading関数
14 動的マスキング閾値算出
15 静的マスキング閾値比較
16 サブバンド変換
20 最大値検出
21 サブバンド最大面積計算
22 スペクトル面積計算
23 面積比計算
24 純音性判定

【特許請求の範囲】
【請求項1】
オーディオ信号を符号化する符号化装置であって、
入力オーディオ信号を周波数分析した結果の各スペクトルのパワーを算出するスペクトルパワー算出手段と、
該算出結果を用いて、入力オーディオ信号のスペクトルの周波数範囲を複数のサブバンドに分割した時の各サブバンドにおける入力オーディオ信号の純音性を示すトーナリティパラメータを算出するトーナリティパラメータ算出手段と、
該算出されたトーナリティパラメータを用いて入力オーディオ信号のマスキングエネルギーに対する動的マスキング閾値を算出する動的マスキング閾値算出手段とを備えることを特徴とするオーディオ信号符号化装置。
【請求項2】
前記トーナリティパラメータ算出手段が、
前記サブバンドのそれぞれにおけるスペクトルパワーの総和SSと、サブバンド内に存在するスペクトルパワーの最大値とサブバンドの幅との積SMとを求め、SS/SMの値に対応して、トーナリティパラメータの値を求めることを特徴とする請求項1記載のオーディオ信号符号化装置。
【請求項3】
前記トーナリティパラメータ算出手段が、
前記SS/SMの値が小さいときにトーナリティパラメータの値を大きくし、SS/SMの値が大きいときにトーナリティパラメータの値を小さくすることを特徴とする請求項2記載のオーディオ信号符号化装置。
【請求項4】
前記動的マスキング閾値算出手段が、
前記トーナリティパラメータの値が大きいときに動的マスキング閾値を低くし、トーナリティパラメータの値が小さいときに動的マスキング閾値を高くすることを特徴とする請求項1記載のオーディオ信号符号化装置。
【請求項5】
オーディオ信号を符号化する計算機によって用いられるプログラムであって、
入力オーディオ信号を周波数分析した結果の各スペクトルのパワーを算出する手順と、
該算出結果を用いて、入力オーディオ信号のスペクトルの周波数範囲を複数のサブバンドに分割した時の各サブバンドにおける入力オーディオ信号の純音性を示すトーナリティパラメータを算出する手順と、
該算出されたトーナリティパラメータを用いて入力オーディオ信号のマスキングエネルギーに対する動的マスキング閾値を算出する手順とを計算機に実行させるためのオーディオ信号符号化プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate


【公開番号】特開2006−18023(P2006−18023A)
【公開日】平成18年1月19日(2006.1.19)
【国際特許分類】
【出願番号】特願2004−195713(P2004−195713)
【出願日】平成16年7月1日(2004.7.1)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】