JP2005003835A - オーディオ信号符号化装置、オーディオ信号符号化方法、及びプログラム - Google Patents

オーディオ信号符号化装置、オーディオ信号符号化方法、及びプログラム Download PDF

Info

Publication number
JP2005003835A
JP2005003835A JP2003165921A JP2003165921A JP2005003835A JP 2005003835 A JP2005003835 A JP 2005003835A JP 2003165921 A JP2003165921 A JP 2003165921A JP 2003165921 A JP2003165921 A JP 2003165921A JP 2005003835 A JP2005003835 A JP 2005003835A
Authority
JP
Japan
Prior art keywords
block length
auditory
frame
bit
surplus
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.)
Pending
Application number
JP2003165921A
Other languages
English (en)
Inventor
Masanobu Funakoshi
正伸 船越
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2003165921A priority Critical patent/JP2005003835A/ja
Publication of JP2005003835A publication Critical patent/JP2005003835A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

【課題】プリエコーを適宜抑制し、音質の良いビットストリームを作成することができるオーディオ符号化技術を提供することを課題とする。
【解決手段】オーディオ入力信号を処理単位のフレームに分割するフレーム分割部(1)と、フレーム分割されたオーディオ入力信号を分析して聴覚エントロピー値を出力する聴覚心理演算部(3)と、聴覚心理演算部が出力する聴覚エントロピー値と聴覚エントロピー閾値とを基に、フレームの変換ブロック長を決定するブロック長判定部(4)と、ブロック長判定部が決定したブロック長に応じて、フレームをブロック化し、周波数スペクトルに変換するフィルタバンク(2)と、各フレームに割り当てる余剰ビット量を制御するビットリザーバ(6)とを有し、ブロック長判定部は、ビットリザーバが制御する余剰ビット量に応じて、聴覚エントロピー閾値を決定することを特徴とするオーディオ信号符号化装置が提供される。
【選択図】 図1

Description

【0001】
【発明の属する技術分野】
本発明は、オーディオ信号の符号化技術に関し、特に、変換ブロック長の変更が可能な変換符号化技術を利用したオーディオ信号符号化技術に関する。
【0002】
【従来の技術】
近年、高音質、かつ高効率なオーディオ信号符号化技術は、DVD−Videoの音声トラックや、半導体メモリやHDDなどを利用した携帯オーディオプレイヤー、インターネットを介した音楽配信、家庭内LANにおけるホームサーバなどに広く利用され、幅広く普及するとともにその重要性も増している。
【0003】
このようなオーディオ信号符号化技術の多くは、変換符号化技術を利用して時間周波数変換を行っている。例えば、MPEG2−AACやDolby Digital(AC−3)などでは、MDCTなどの直交変換単体でフィルタバンクを構成しており、MPEG1 Audio Layer3(MP3)やATRAC(MD)では、QMFなどのサブバンド分割フィルタと直交変換を多段接続してフィルタバンクを構成している。
【0004】
これらの高効率オーディオ符号化技術では、人間の聴覚特性を利用したマスキング分析を行うことによって、マスキングされると判断したスペクトル成分を取り除くことにより、圧縮効率を高めている。
【0005】
これらの高効率オーディオ符号化技術で用いられているマスキング分析は、主に、静寂時の可聴周波数領域によるマスキングと、臨界帯域におけるマスカーによる周波数マスキングである。
【0006】
上記マスキング分析により、人間に感知できないと判断される信号は主に高周波域の信号になるため、通常の場合、高周波成分の量子化誤差は多少大きくなってもマスキングされうる。
【0007】
ところが、変換符号化方式では、オーディオ入力信号に急激な変化がある、いわゆる過渡状態の場合、急激な変化が起こっている部分の高周波成分の量子化誤差が、急激な変化の直前や直後の信号にまで影響を与えるため、リンギングノイズが生じる。
【0008】
人間の聴覚特性として、大きな音が発生した場合、その直前と直後の時間は音が聞こえづらくなる。これを時間マスキング効果という。大きな音の後に聞こえなくなる時間は、個人差はあるが約100msec程度と比較的長い。しかしながら、直前に働くマスキング効果の時間は約5〜6msecと短い。従って、リンギングノイズが生じると、大きな音の前のノイズは感知されやすくなってしまう。これは一般にプリエコーと呼ばれる現象である。
【0009】
以下、この現象を図を用いて説明する。
【0010】
図8は、急激に変化しているオーディオ入力信号の一例である。この信号を、MPEG−2 AACの通常のブロック長の場合の変換単位である2048 サンプルで符号化・復号化したオーディオ信号の例を図9に示している。図示したように急激な信号の変化の部分で生じている高周波域の量子化誤差が、ブロック全域に渡って影響している。
【0011】
前述したように、振幅が急激に変化する部分の直前では、時間マスキング効果によって人間はノイズを感知できない。しかしながら、入力信号が音楽用CDに用いられているPCM信号と同様な44.1KHzサンプリング周波数を用いていると仮定して、変換単位を時間に換算すると、2048サンプルの時間は2048÷44100×1000=約46.44msとなるため、この前半の時間にノイズが生じているとしてもプリマスキング時間をはみだしてしまい、人間はプリエコーを感知してしまう。
【0012】
これを抑制するための一方法として、種々のオーディオ符号化方式では、入力信号の急激な変化を検知して変換ブロック長を短くすることにより、急激な変化による高周波成分の量子化誤差が、変化直前の部分に及ばないようにすることで、プリエコーの発生を抑制している。
【0013】
図10では、MPEG−2 AACにおけるショートブロック長の場合の変換単位である256サンプルで図8に示すオーディオ信号を符号化、復号化した場合の時間領域信号を示している。この場合、入力信号の急激な変化による高周波数域の量子化誤差の影響は、変化が発生している256サンプルブロックの中に閉じ込められてしまう。先ほどと同様に、このブロック長を44.1KHzサンプリング周波数で時間に換算すると、約5.80msとなるため、プリマスキング効果によりこのノイズを人間はほぼ感知できなくなり、結果としてプリエコーは消える。
【0014】
なお、実際の処理では、変換によって生じる折り返し歪みを除去するために、変換兆単位のウィンドウ掛けを行った上で変換長の50%ずつ入力サンプルをずらして変換を行ない、その結果の重ねあわせを行なうが、この手続きは本図では説明の便宜上省略している。
【0015】
ところが、一般にブロック長を短くすると、周波数分解能が落ちることによりマスキング分析の精度が落ちるばかりでなく、量子化時に使用する各周波数帯域ごとの正規化係数(以下、スケールファクタ)がブロックの数だけ増大するために、そこで消費される情報量が増えてしまい、量子化時に本来ならスペクトル情報に割り当てるべきビットがスケールファクタに消費されてしまうため、符号化効率が低下する。その結果、特に低ビットレート時には量子化誤差が厳密にマスキングできなくなるため、ブロック長が長い場合に比較して、ノイズが感知されやすくなる恐れがある。
【0016】
そこで、実際のブロック長を決定する場合は、プリエコーの抑制と符号化効率の低下によって発生するノイズとのバランスを適宜考慮して決める必要がある。
【0017】
このブロック長選択方法として、MP3やMPEG−2 AACなどのMPEG Audio符号化方式では、当該ブロック毎に聴覚エントロピー(以下PE)を算出し、予め定められたPE閾値よりも大きい場合に、短いブロック長を選択することになっている。
【0018】
また、上述したように、ショートブロックを選択して符号化処理を行う場合、ロングブロックで符号化処理を行うよりも総合的なビット消費量が増える。このようなフレーム毎のビット消費量の増減を吸収する仕組みとして、ビットリザーバが考案されている。これは、余剰ビットを蓄積するバッファを用意しておき、無音部のようなビット消費量の少ないフレームに割り当てられる余剰ビットを蓄積して、過渡状態のようにビット消費量が増えるフレームに蓄積した余剰ビットを割り当てる手法である。
【0019】
例えば、MPEG2−AACでは、1フレームに割り当てられる最大ビット数が規格によって6144×(LFE(Low Frequency Enhancement)以外のチャンネル数)ビットと定まっている。従って、44.1KHz、2チャンネル、ステレオのオーディオ入力信号を96kbpsのビットレートで符号化する場合、1フレーム当たりの平均ビット消費量は96000×1024/44100=2229ビットであるため、ビットリザーバとして最大6144×2−2229=10059ビットの大きさのバッファが用意される。
【0020】
また、下記の特許文献1では、PEの最大値から最小値を引いた差分と固定の閾値を比較することによってブロック長の切り替えを判断する技術が開示されている。
【0021】
また、下記の特許文献2では、聴覚エントロピーの計算は行わずに、入力PCM信号をブロック長よりも短いセグメントに分割し、振幅の急激な変化を検知し、急激な変化を検知した場合、その前のセグメントにおける量子化ノイズとそれ以前のセグメントのマスキング値を推定し、マスキングできない量子化ノイズが発生する場合に短いブロック長を選択するという方式が開示されている。
【0022】
【特許文献1】
特開2000−276198号公報
【特許文献2】
特開2001−142493号公報
【0023】
【発明が解決しようとする課題】
上記のように、例えばMPEG−2 AAC規格書(ISO/IEC13818−7:1997)に記載されているブロック長判定方法では、ブロック毎のPEと固定のPE閾値との比較のみでブロック長を決定している。ところが、このPE閾値は実際には機器の実装や入力信号により変化するため、固定のPE閾値をあらゆる場合に適用すると、楽曲によってはブロック長の決定が正しくないことが度々生じ、往々にして符号化効率が下がったり、プリエコーが生じたりして音質劣化する場合がある。
【0024】
例えば、従来の固定のPE閾値によって様々なオーディオ信号のブロック長選択を行うと、変化が激しい音楽では、短いブロック長が多用されることになるため、符号化効率が落ち、結果としてマスクされないノイズが増え、音質劣化する。逆に、大人しい音楽では、適切に短いブロック長が選択されずに、プリエコーが生じてしまう。
【0025】
本発明は上記問題点に鑑みて考案されたものであり、ビットリザーバに蓄積されている余剰ビット量によってPE閾値を適宜調整することにより、適切なブロック選択を可能にすることで、必要以上に短いブロック長が選択されることを防止して符号化効率を保ちながら、プリエコーを適宜抑制し、音質の良いビットストリームを作成することができるオーディオ符号化技術を提供するものである。
【0026】
【課題を解決するための手段】
本発明の一観点によれば、オーディオ入力信号を処理単位のフレームに分割するフレーム分割部と、前記フレーム分割されたオーディオ入力信号を分析して聴覚エントロピー値を出力する聴覚心理演算部と、前記聴覚心理演算部が出力する聴覚エントロピー値と聴覚エントロピー閾値とを基に、前記フレームの変換ブロック長を決定するブロック長判定部と、前記ブロック長判定部が決定したブロック長に応じて、前記フレームをブロック化し、周波数スペクトルに変換するフィルタバンクと、各フレームに割り当てる余剰ビット量を制御するビットリザーバとを有し、前記ブロック長判定部は、前記ビットリザーバが制御する余剰ビット量に応じて、前記聴覚エントロピー閾値を決定することを特徴とするオーディオ信号符号化装置が提供される。
本発明の他の観点によれば、オーディオ入力信号を処理単位のフレームに分割するフレーム分割ステップと、前記フレーム分割されたオーディオ入力信号を分析して聴覚エントロピー値を出力する聴覚心理演算ステップと、前記出力された聴覚エントロピー値と聴覚エントロピー閾値とを基に、前記フレームの変換ブロック長を決定するブロック長判定ステップと、前記決定したブロック長に応じて、前記フレームをブロック化し、周波数スペクトルに変換する変換ステップと、各フレームに割り当てる余剰ビット量を制御する制御ステップとを有し、前記ブロック長判定ステップは、前記余剰ビット量に応じて、前記聴覚エントロピー閾値を決定することを特徴とするオーディオ信号符号化方法が提供される。
本発明のさらに他の観点によれば、オーディオ入力信号を処理単位のフレームに分割するフレーム分割ステップと、前記フレーム分割されたオーディオ入力信号を分析して聴覚エントロピー値を出力する聴覚心理演算ステップと、前記出力された聴覚エントロピー値と聴覚エントロピー閾値とを基に、前記フレームの変換ブロック長を決定するブロック長判定ステップと、前記決定したブロック長に応じて、前記フレームをブロック化し、周波数スペクトルに変換する変換ステップと、各フレームに割り当てる余剰ビット量を制御する制御ステップとをコンピュータに実行させるためのプログラムであって、前記ブロック長判定ステップは、前記余剰ビット量に応じて、前記聴覚エントロピー閾値を決定することを特徴とするプログラムが提供される。
【0027】
ビットリザーバによって制御されている余剰ビット量に応じて、変換ブロック長決定の際に参照する聴覚エントロピー閾値を決定するため、プリエコーの発生を極力避けながらより符号化効率の高い符号化処理が可能となり、特に低ビットレート時に音質的な破綻の少ない符号化処理を実現することができる。すなわち、符号化効率の低下を防止しつつ、プリエコーの発生を極力抑えることにより高音質なビットストリームを作成することができる。
【0028】
【発明の実施の形態】
(第1の実施形態)
以下図面を参照しながら本発明を詳細に説明する。
図1は、本発明の第1の実施形態におけるオーディオ符号化装置の一構成例である。
【0029】
図示の構成において、1はオーディオ入力信号を処理単位であるフレームに分割するフレーム分割器である。ここで分割されたフレームは後述するフィルタバンク2と聴覚心理演算器3へ送出される。
【0030】
2はフィルタバンクであり、フレームに分割された入力時間信号をブロック長判定器4によって指定された長さのブロック長で周波数スペクトルに変換する。
【0031】
3は聴覚心理演算器であり、オーディオ入力信号をフレーム単位に分析し、聴覚エントロピー値の算出と、量子化単位となる分割周波数帯域ごとのマスキング計算を行う。この演算の結果、聴覚エントロピー値(PE)がブロック長判定器4に、また、各分割周波数帯域ごとの信号対マスク比(Signal Mask Ratio:SMR)がビット割当て器5にそれぞれ出力される。
【0032】
4はブロック長判定器であり、ビットリザーバ6に蓄積されている余剰ビット量に応じてPE閾値を変更して保持し、聴覚心理演算器3から送出されるPEとPE閾値とを比較して変換ブロック長を判定し、フィルタバンク2に通知する。
【0033】
5はビット割当て器であり、聴覚心理演算器3より送出される分割周波数帯域ごとのSMR値やフィルタバンク2から出力される周波数スペクトルやビットリザーバ6からの割当てビット量を参考にして、各分割周波数帯域に割り当てるビット量を決定する。
【0034】
6はビットリザーバであり、複数のフレームに渡り余剰ビットの調整を行い、蓄積された余剰ビット量をブロック長判定器4に出力し、また、各フレームに割り当てる総ビット量をビット割当て器5に通知する。
【0035】
7は量子化器であり、フィルタバンク2が出力する周波数スペクトルの正規化係数(スケールファクタ)を各周波数帯域毎に算出し、ビット割当て器5が出力する、各周波数帯域に割り当てられたビット量に従って周波数スペクトルを量子化する。
【0036】
8はビット整形器であり、量子化器7が出力するスケールファクタと量子化スペクトルを適宜規定のフォーマットに整形してビットストリームを作成し、出力する。
【0037】
上記構成によるオーディオ信号符号化装置におけるオーディオ信号の処理動作を以下に説明する。
【0038】
なお、本実施形態では説明の便宜のために符号化方式としてMPEG2−AACを例にとって説明するが、MP3など、PEによってブロック長切り替え判定を行うその他の符号化方式についても全く同様な方法で実現可能である。
【0039】
まず、処理に先立ち、各部の初期化を行う。このとき、PE閾値の初期値としては本実施形態において2000が与えられ、ブロック長判定器4に格納される。
【0040】
オーディオPCM信号などの入力オーディオ信号はフレーム分割器1によってフレーム単位に分割され、フィルタバンク2と聴覚心理演算器3に送出される。MPEG2−AAC LC(Low−Complexity)プロファイルの場合、1フレームは1024サンプルのPCM信号で構成される。
【0041】
入力オーディオ信号はフレーム毎に聴覚心理演算器3によって聴覚エントロピーと各周波数帯域ごとのマスキング計算が行われる。算出された聴覚エントロピー値はブロック長判定器4によって、PE閾値と比較される。ここで、PE閾値よりも当該フレームのPE値が大きい場合は、短いブロック長を使用することが判定され、そうでない場合は、長いブロック長を使用することが判定される。フィルタバンク2では、この判定に沿ったブロック長で、入力信号を周波数スペクトルへ変換する。
【0042】
なお、MPEG2−AACでは、フィルタバンクにおいて直交変換によるエイリアシングを除去するために、MDCTによる重複変換が行われる。その都合上、時間周波数変換では、処理対象フレームとその直前のフレームを合わせた2048サンプルを一単位として入力し、1024個の周波数スペクトルを得る。このとき、長いブロック長を用いる場合は、入力信号の2048サンプルを一つのブロックとして直交変換を行い、1024個の周波数スペクトルを出力する。短いブロック長を用いる場合は、入力信号の256サンプルを一つのブロックとして128個の周波数スペクトルを出力する変換を、入力信号を128サンプルずつずらしながら都合8回の変換を行う。
【0043】
フィルタバンク2から出力された周波数スペクトルと、聴覚心理演算器3から出力されたSMR値と、ビットリザーバ6から出力された各フレームの割り当て総ビット数によって、ビット割当て器5は各周波数帯域にビットを割り当て、量子化器7は各周波数帯域のスケールファクタを算出し、各周波数帯域に割り当てられたビットに従って周波数スペクトルを量子化する。
【0044】
各周波数帯域のスケールファクタと量子化スペクトルはビット整形器8によって定められた書式に従ってビットストリームに整形されて、出力される。
【0045】
1フレームの処理を終えると、ビットリザーバ6では余剰ビット量の計算を行い、ブロック長判定器4に出力する。ブロック長判定器4は、受け取った余剰ビット量によってPE閾値を調整する。本実施形態において、余剰ビット量が最大余剰ビット量の二分の一以下の場合、PE閾値を10増加し、余剰ビット量が最大余剰ビット量の二分の一以上の場合、PE閾値を10減らす。すなわち、余剰ビット量が比較的少ない場合にはPE閾値を上げることによってショートブロックが選択されにくくして符号化効率を高め、余剰ビット量が比較的多い場合はPE閾値を下げることによって過渡状態を見逃すことによるプリエコーの発生を避けるようにする。この処理の詳細は図3を用いて後述する。
【0046】
(第2の実施形態)
本発明は汎用的なPC上で動作するソフトウェアプログラムとして実施することも可能である。以下、この場合について図面を用いて説明する。
【0047】
図4は、本発明の第2の実施形態におけるオーディオ信号符号化装置の構成例である。
【0048】
図示の構成において、100はCPUであり、オーディオ信号符号化処理のための演算、論理判断等を行い、102のバスを介して、バスに接続された各構成要素を制御する。
【0049】
101はメモリであり、本実施形態の構成例における基本I/Oプログラムや、実行しているプログラムコード、プログラム処理時に必要なデータなどを格納する。
【0050】
102はバスであり、CPU100の制御の対象とする構成要素を指示するアドレス信号を転送し、CPU100の制御の対象とする各構成要素のコントロール信号を転送し、各構成機器相互間のデータ転送を行う。
【0051】
103は端末であり、装置の起動、各種条件や入力信号の設定、符号化開始の指示を行う。
【0052】
104は外部記憶装置であり、データやプログラム等を記憶するための外部記憶領域である。データやプログラム等は必要に応じて保管され、また、保管されたデータやプログラムは必要な時に呼び出される。
【0053】
105はメディアドライブであり、記録媒体に記録されているプログラムやデータ、デジタルオーディオ信号などはこのメディアドライブ105が読み取ることにより本オーディオ信号符号化装置にロードされる。また、外部記憶装置104に蓄えられた各種データや実行プログラムを、記録媒体に書き込むことができる。
【0054】
106はマイクであり、音を集音してオーディオ信号に変換する。
【0055】
107はスピーカーであり、任意のオーディオ信号データを実際の音にして出力することができる。
【0056】
108は通信網であり、LAN、公衆回線、無線回線、放送電波などで構成されている。
【0057】
109は通信インターフェースであり、通信網108に接続されている。本実施形態のオーディオ信号符号化装置はこの機器を介して通信網を経由し、外部機器と通信し、データやプログラムを送受信することができる。
【0058】
かかる各構成要素からなる本実施形態のオーディオ信号符号化装置においては、端末103からの各種の入力に応じて作動するものであって、端末103からの入力が供給されると、インターラプト信号がCPU100に送られることによって、CPU100がメモリ101内に記憶してある各種の制御信号を読出し、それらの制御信号に従って、各種の制御が行われる。
【0059】
本実施形態の装置は、基本I/Oプログラム、OS、および本オーディオ信号符号化処理プログラムをCPU100が実行することによって動作する。基本I/Oプログラムはメモリ101中に書き込まれており、OSは外部記憶装置104に書き込まれている。そして、本装置の電源がONにされると、基本I/Oプログラム中のIPL(イニシャルプログラムローディング)機能により外部記憶装置104からOSがメモリ101に読み込まれ、OSの動作が開始される。
【0060】
本オーディオ信号符号化処理プログラムは、図2に示されるオーディオ信号符号化処理手順のフローチャートに基づいてプログラムコード化されたものである。
【0061】
図5は、本オーディオ信号符号化処理プログラムおよび関連データを記録媒体に記録したときの内容構成図である。
【0062】
本実施形態において、本オーディオ信号符号化処理プログラムおよび関連データは記録媒体に記録されている。図示したように記録媒体の先頭領域には、この記録媒体のディレクトリ情報が記録されており、その後にこの記録媒体のコンテンツである本オーディオ信号符号化処理プログラムと、オーディオ信号符号化処理関連データがファイルとして記録されている。
【0063】
図6は本オーディオ信号符号化装置に、本オーディオ信号符号化処理プログラムを導入する模式図である。記録媒体に記録されたオーディオ信号符号化処理プログラムおよび関連データは、図6に示したようにメディアドライブ105を通じて本装置にロードすることができる。この記録媒体110を、パーソナルコンピュータのメディアドライブ105にセットすると、OS及び基本I/Oプログラムの制御のもとに本オーディオ信号符号化処理プログラムおよび関連データが記録媒体から読み出され、外部記憶装置104に格納される。その後、再起動時にこれらの情報がメモリ101にロードされて動作可能となる。
【0064】
図7は、本オーディオ信号符号化装置処理プログラムがメモリ101にロードされ実行可能となった状態のメモリマップを示す。メモリ101には、基本I/Oプログラム、OS、オーディオ信号符号化処理プログラム、関連データ及びワークエリアが格納される。このとき、メモリ101のワークエリアには、PE閾値と余剰ビット量が格納されている。
【0065】
以下、本実施形態においてCPU100で実行されるオーディオ信号符号化処理をフローに従って説明する。
【0066】
図2は、本実施形態におけるオーディオ信号符号化処理のフローチャートである。
【0067】
まず、ステップS1は、符号化する入力オーディオ信号をユーザが端末103を用いて指定する処理である。本実施形態において、符号化するオーディオ信号は、外部記憶装置104に格納されているオーディオPCMファイルでも良いし、マイク106で捉えたリアルタイムの音声信号をアナログ・デジタル変換した信号でも良い。処理を終えると、ステップS2へ進む。
【0068】
ステップS2は、符号化する入力オーディオ信号が終了したかどうかを判定する処理である。入力信号が終了している場合は、ステップS13へ処理が進む。未終了の場合は、ステップS3へ処理が進む。
【0069】
ステップS3は、入力信号をチャンネルごとに処理単位であるフレームに分割する処理である。第1の実施形態での説明同様、例えば、MPEG2−AACの場合、オーディオ入力信号をチャンネルごとに1024サンプルのフレームに分割する。処理を終えると、ステップS4へ処理が進む。
【0070】
ステップS4は、符号化対象となっているフレームの聴覚心理演算を行う処理である。この演算の結果、処理対象フレームの聴覚エントロピー(PE)と、量子化単位である分割周波数帯域ごとのSMR値が算出される。処理を終えると、ステップS5へ処理が進む。
【0071】
ステップS5は、ステップS4で算出された処理対象フレームのPE値と、メモリ101上のPE閾値とを比較し、変換ブロック長を判定する処理である。処理対象フレームのPE値がPE閾値よりも大きい場合は、ステップS6へ処理が進む。そうでない場合は、ステップS7へ処理が進む。
【0072】
ステップS6では、ステップS5で行われた判定に基づき、処理対象フレームに対してショートブロック(短いブロック長)による直交変換を行う。MPEG2−AACの場合、この結果128の周波数成分に分割されたスペクトルの組が8組得られる。処理を終えると、ステップS8に処理が進む。
【0073】
ステップS7では、ステップS5で行われた判定に基づき、処理対象フレームに対してロングブロック(長いブロック長)による直交変換を行う。MPEG2−AACの場合、この結果、1024の周波数成分に分割されたスペクトルの組が一組だけ得られる。処理を終えると、ステップS8に処理が進む。
【0074】
ステップS8は、ビット割当てを行う処理である。本実施形態において、ビット割当ては二段階に行われる。まず、処理中のフレーム全体に割り当てるビットをメモリ101上の余剰ビット量やステップS4で算出された処理中のフレームのPE値、変換ブロック長から決定し、次に、ステップS4で算出される分割周波数帯域ごとのSMR値と、ステップS7もしくはステップS8で得られる周波数スペクトルより、各分割周波数帯域に割り当てるビット量を決定する。このような処理は本実施形態のような変換符号化方法において一般的であるので、詳細は説明しない。処理を終えると、ステップS9へ処理が進む。
【0075】
ステップS9は、各分割周波数帯域のスケールファクタを算出するとともに、ステップS8で割り当てられたビット量に従って、周波数スペクトルを量子化する処理である。処理を終えると、ステップS10へ処理が進む。
【0076】
ステップS10は、ステップS9で算出されたスケールファクタと量子化スペクトルを、符号化方式によって定められたフォーマットに従って整形し、ビットストリームとして出力する処理である。本実施形態において、この処理によって出力されるビットストリームは、外部記憶装置104に格納されても良いし、あるいは、通信インターフェース109を介して回線網108に繋がっている外部機器に出力されても良い。処理を終えると、ステップS11へ処理が進む。
【0077】
ステップS11は、ステップS10で実際に出力されたビットストリームのビット量から、使用された余剰ビット、あるいは余ったビットを計算することにより、余剰ビット量を計算する処理である。算出された余剰ビット量は、メモリ101上に再格納される。処理を終えると、ステップS12へ処理が進む。
【0078】
ステップS12は、ステップS11で算出した余剰ビット量によって、メモリ101上のPE閾値を調整する処理である。この処理の詳細は図3を用いて後述する。処理を終えると、ステップS2へ処理が進む。
【0079】
ステップS13は、聴覚心理演算や直交変換などで生じる遅延によってまだ出力されていない量子化スペクトルがメモリ上に残っているため、それらをビットストリームに整形して出力する処理である。処理を終えると、オーディオ信号符号化処理を終了する。
【0080】
図3は、本実施形態におけるステップS12の余剰ビット量によるPE閾値調整処理を詳細化したフローチャートである。
【0081】
ステップS101は、メモリ101上の余剰ビット量が最大余剰ビット量の半数(1/2)よりも少ないかどうかを判定する処理である。この判定の結果、余剰ビット量が最大余剰ビット量の半数よりも少ない場合は、ステップS103へ処理が進む。そうでない場合は、ステップS102へ処理が進む。
【0082】
ステップS102は、余剰ビット量が最大余剰ビット量の半数より多いかどうかを判定する処理である。この判定の結果、余剰ビット量が最大余剰ビット量の半数よりも多い場合はステップS105へ処理が進む。そうでない場合は、余剰ビット量によるPE閾値調整処理を終了し、リターンする。
【0083】
ステップS103は、メモリ101上のPE閾値が閾値上限に達しているかどうかを判定する処理である。この判定の結果、PE閾値が上限に達している場合は余剰ビット量によるPE閾値調整処理を終了し、リターンする。そうでない場合は、ステップS104に処理が進む。
【0084】
ステップS104は、メモリ101上のPE閾値に10を加える処理である。この結果、次回のステップS5のブロック判定時に、PE値が微妙な値の場合、短いブロック長と判断されにくくなり、より符号化効率を重視した判定を行うことになる。処理を終えると、余剰ビット量によるPE閾値調整処理を終了し、リターンする。
【0085】
ステップS105は、PE閾値が閾値下限に達しているかどうかを判定する処理である。この判定の結果、PE閾値が下限に達している場合は余剰ビット量によるPE閾値調整処理を終了し、リターンする。そうでない場合は、ステップS106へ処理が進む。
【0086】
ステップS106は、メモリ101上のPE閾値から10を引く処理である。この結果、次回のステップS5のブロック判定時に、PE値が微妙な値の場合、短いブロック長と判断されやすくなり、よりプリエコーの発生を防止する判定を行うことになる。処理を終えると、余剰ビット量によるPE閾値調整処理を終了し、リターンする。
【0087】
以上説明したように、本実施形態におけるオーディオ信号符号化処理では、ビットリザーバに蓄積されている余剰ビット量が少ない場合は、PE閾値を増加させて符号化効率を重視したブロック選択を行い、逆に余剰ビット量が多い場合はPE閾値を減少させて、よりプリエコー防止を重視したブロック選択を行うことによって、プリエコーの発生を避けながら符号化効率の良い符号化処理が可能となり、音質の良い符号化処理を実現することができる。
【0088】
なお、本実施形態では、PE閾値に上限と下限を設定し、その所定範囲内で調整することによって、極端なPE閾値によって誤ったブロック選択が行われることによる音質劣化を防止している。
【0089】
(その他の実施形態)
なお、本発明は上述した実施形態に限定されるものではない。
【0090】
上述の第2の実施形態では、PE閾値の調整をゆるやかに行う例を示したが、PE閾値を直接余剰ビット量によって制御することも可能である。以下、この場合について図面を用いて説明する。
【0091】
図12は、この場合におけるステップS12の余剰ビット量によるPE閾値調整処理を詳細化したフローチャートである。なお、この場合において、PE閾値の上限を2500、PE閾値の下限を1500とする。
【0092】
ステップS201は、余剰ビットによって直接PE閾値を算出する次式の演算を行う処理である。
PE閾値=2500−1000×(余剰ビット量)/(最大余剰ビット量)
【0093】
この演算を余剰ビット量による関数として、PE閾値との関係の軌跡を、図11に示す。算出されたPE閾値はメモリ101上に格納される。処理を終えると、PE閾値調整処理を終了し、リターンする。
【0094】
図11に示したように、この軌跡は、右下がりの直線となるため、余剰ビット量の増加とともにPE閾値を減少させることになる。PE閾値は、余剰ビット量に反比例する。すなわち、余剰ビット量が大きければ大きいほどショートブロックと判定されやすくなるため、余ったビットを効率的に使用することが可能となり、また、余剰ビット量が少ないほどロングブロックと判定されやすくなるため、余剰ビット量が少ないほどショートブロック選択による符号化効率の劣化を防ぐことができる。
【0095】
また、第2の実施形態の方法と比較して余剰ビット量に応じてPE閾値を直接制御することが可能になるため、余剰ビットの状況に即時に応じたブロック判定が可能になり、特に低ビットレート時において符号化効率を向上させることになるため、音質的な破綻の少ないビットストリームを作成することができる。
【0096】
また、上述の第2の実施形態では、特に記録媒体に関して言及していないが、これは、FD、HDD、CD、DVD、MO、半導体メモリなど、どのような記録媒体を用いても適用可能である。
【0097】
以上説明したように、上記実施形態によれば、ビットリザーバによって管理されている余剰ビット量に応じて、ブロック長判定の際に参照するPE閾値を適宜設定するため、プリエコーの発生を極力避けながらより符号化効率の高い符号化処理が可能となり、特に低ビットレート時に音質的な破綻の少ない符号化処理を実現することができる。すなわち、符号化効率の低下を防止しつつ、プリエコーの発生を極力抑えることにより高音質なビットストリームを作成することができる。
【0098】
また、特許文献1(特開2000−276198号公報)では、PEの最大値から最小値を引いた差分と固定の閾値を比較することによってブロック長の切り替えを判断しているが、本実施形態では、ビットリザーバに蓄積されているビット量によってPE閾値を変更することによって、より適切なブロック判定ができる。
【0099】
また、特許文献2(特開2001−142493号公報)の方式では、詳細な入力信号の分析を行っているため、聴覚心理演算は行わないもののある程度の処理負荷がかかる。また、低ビットレート時にも厳密にブロック長変更を行うために、符号化効率が損なわれる懸念がある。それに対して、本実施形態では、聴覚エントロピー計算は行うものの、ビットリザーバの蓄積量による閾値変更という処理を行うのみであるため、処理負担は標準方式と比べてほとんど変化せず、ビット量を考慮した適切なブロック長選択ができる。
【0100】
本実施形態は、コンピュータがプログラムを実行することによって実現することができる。また、プログラムをコンピュータに供給するための手段、例えばかかるプログラムを記録したCD−ROM等のコンピュータ読み取り可能な記録媒体又はかかるプログラムを伝送するインターネット等の伝送媒体も本発明の実施形態として適用することができる。また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体等のコンピュータプログラムプロダクトも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体及びコンピュータプログラムプロダクトは、本発明の範疇に含まれる。記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0101】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【0102】
【発明の効果】
以上説明したように、ビットリザーバによって制御されている余剰ビット量に応じて、変換ブロック長決定の際に参照する聴覚エントロピー閾値を決定するため、プリエコーの発生を極力避けながらより符号化効率の高い符号化処理が可能となり、特に低ビットレート時に音質的な破綻の少ない符号化処理を実現することができる。すなわち、符号化効率の低下を防止しつつ、プリエコーの発生を極力抑えることにより高音質なビットストリームを作成することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態におけるオーディオ信号符号化装置の一構成例を示す図である。
【図2】本発明の第2の実施形態におけるオーディオ信号符号化処理のフローチャートである。
【図3】本発明の第2の実施形態における余剰ビット量によるPE閾値調整処理のフローチャートである。
【図4】本発明の第2の実施形態におけるオーディオ信号符号化装置の一構成例を示す図である。
【図5】本発明の第2の実施形態におけるオーディオ信号符号化処理プログラムを格納した記憶媒体の内容構成例を示す図である。
【図6】本発明の第2の実施形態におけるオーディオ信号符号化処理をパーソナルコンピュータに導入する模式図である。
【図7】本発明の第2の実施形態におけるメモリマップ構成図である。
【図8】オーディオ信号の模倣図である。
【図9】図8で示されるオーディオ信号を2048サンプル単位で符号化、復号化した場合のオーディオ信号の模倣図である。
【図10】図8で示されるオーディオ信号を256サンプル単位で符号化、復号化した場合のオーディオ信号の模倣図である。
【図11】本発明の他の実施形態におけるPE閾値調整関数の軌跡例を示す図である。
【図12】本発明の他の実施形態における余剰ビット量によるPE閾値調整処理のフローチャートである。
【符号の説明】
1 フレーム分割器
2 フィルタバンク
3 聴覚心理演算器
4 ブロック長判定器
5 ビット割当て器
6 ビットリザーバ
7 量子化器
8 ビット整形器
100 CPU
101 メモリ
102 バス
103 端末
104 外部記憶装置
105 メディアドライブ
106 マイク
107 スピーカー
108 通信回線
109 通信インターフェース
110 記憶媒体

Claims (8)

  1. オーディオ入力信号を処理単位のフレームに分割するフレーム分割部と、
    前記フレーム分割されたオーディオ入力信号を分析して聴覚エントロピー値を出力する聴覚心理演算部と、
    前記聴覚心理演算部が出力する聴覚エントロピー値と聴覚エントロピー閾値とを基に、前記フレームの変換ブロック長を決定するブロック長判定部と、
    前記ブロック長判定部が決定したブロック長に応じて、前記フレームをブロック化し、周波数スペクトルに変換するフィルタバンクと、
    各フレームに割り当てる余剰ビット量を制御するビットリザーバとを有し、
    前記ブロック長判定部は、前記ビットリザーバが制御する余剰ビット量に応じて、前記聴覚エントロピー閾値を決定することを特徴とするオーディオ信号符号化装置。
  2. さらに、前記フィルタバンクによって変換される周波数スペクトルを複数の周波数帯域に分割して、前記聴覚心理演算部が演算する信号対マスク比に応じて各周波数帯域に割り当てるビット量を決定するビット割当て部と、
    前記ビット割当て部によって決定されたビット割当てに応じて、前記フィルタバンクによって変換される周波数スペクトルを量子化する量子化部と、
    前記量子化部によって量子化された量子化スペクトルを規定のフォーマットに従って整形したビットストリームを生成するビット整形部とを有することを特徴とする請求項1記載のオーディオ信号符号化装置。
  3. 前記ブロック長判定部は、前記ビットリザーバが制御する余剰ビット量が最大余剰ビット量の半数より少ない場合、前記聴覚エントロピー閾値を増加することを特徴とする請求項1又は2記載のオーディオ信号符号化装置。
  4. 前記ブロック長判定部は、前記ビットリザーバが制御する余剰ビット量が最大余剰ビット量の半数より多い場合、前記聴覚エントロピー閾値を減少することを特徴とする請求項1〜3のいずれか1項に記載のオーディオ信号符号化装置。
  5. 前記ブロック長判定部は、前記ビットリザーバが制御する余剰ビット量に反比例するように前記聴覚エントロピー閾値を決定することを特徴とする請求項1〜4のいずれか1項に記載のオーディオ信号符号化装置。
  6. 前記ブロック長判定部は、前記聴覚エントロピー閾値を所定範囲内において決定することを特徴とする請求項1〜5のいずれか1項に記載のオーディオ信号符号化装置。
  7. オーディオ入力信号を処理単位のフレームに分割するフレーム分割ステップと、
    前記フレーム分割されたオーディオ入力信号を分析して聴覚エントロピー値を出力する聴覚心理演算ステップと、
    前記出力された聴覚エントロピー値と聴覚エントロピー閾値とを基に、前記フレームの変換ブロック長を決定するブロック長判定ステップと、
    前記決定したブロック長に応じて、前記フレームをブロック化し、周波数スペクトルに変換する変換ステップと、
    各フレームに割り当てる余剰ビット量を制御する制御ステップとを有し、
    前記ブロック長判定ステップは、前記余剰ビット量に応じて、前記聴覚エントロピー閾値を決定することを特徴とするオーディオ信号符号化方法。
  8. オーディオ入力信号を処理単位のフレームに分割するフレーム分割ステップと、
    前記フレーム分割されたオーディオ入力信号を分析して聴覚エントロピー値を出力する聴覚心理演算ステップと、
    前記出力された聴覚エントロピー値と聴覚エントロピー閾値とを基に、前記フレームの変換ブロック長を決定するブロック長判定ステップと、
    前記決定したブロック長に応じて、前記フレームをブロック化し、周波数スペクトルに変換する変換ステップと、
    各フレームに割り当てる余剰ビット量を制御する制御ステップとをコンピュータに実行させるためのプログラムであって、
    前記ブロック長判定ステップは、前記余剰ビット量に応じて、前記聴覚エントロピー閾値を決定することを特徴とするプログラム。
JP2003165921A 2003-06-11 2003-06-11 オーディオ信号符号化装置、オーディオ信号符号化方法、及びプログラム Pending JP2005003835A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003165921A JP2005003835A (ja) 2003-06-11 2003-06-11 オーディオ信号符号化装置、オーディオ信号符号化方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003165921A JP2005003835A (ja) 2003-06-11 2003-06-11 オーディオ信号符号化装置、オーディオ信号符号化方法、及びプログラム

Publications (1)

Publication Number Publication Date
JP2005003835A true JP2005003835A (ja) 2005-01-06

Family

ID=34092222

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003165921A Pending JP2005003835A (ja) 2003-06-11 2003-06-11 オーディオ信号符号化装置、オーディオ信号符号化方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP2005003835A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007029304A1 (ja) 2005-09-05 2007-03-15 Fujitsu Limited オーディオ符号化装置及びオーディオ符号化方法
US10573324B2 (en) 2016-02-24 2020-02-25 Dolby International Ab Method and system for bit reservoir control in case of varying metadata

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007029304A1 (ja) 2005-09-05 2007-03-15 Fujitsu Limited オーディオ符号化装置及びオーディオ符号化方法
KR100979624B1 (ko) * 2005-09-05 2010-09-01 후지쯔 가부시끼가이샤 오디오 부호화 장치 및 오디오 부호화 방법
US10573324B2 (en) 2016-02-24 2020-02-25 Dolby International Ab Method and system for bit reservoir control in case of varying metadata
US11195536B2 (en) 2016-02-24 2021-12-07 Dolby International Ab Method and system for bit reservoir control in case of varying metadata

Similar Documents

Publication Publication Date Title
JP5266341B2 (ja) オーディオ信号処理方法及び装置
JP5154934B2 (ja) 知覚的歪みを最小化する結合オーディオ符号化
KR20010021226A (ko) 디지털 음향 신호 부호화 장치, 디지털 음향 신호 부호화방법 및 디지털 음향 신호 부호화 프로그램을 기록한 매체
JP2007316658A (ja) ステレオ音響信号の処理方法と装置
JP2005338850A (ja) デジタル信号の符号化方法及び装置ならびに復号化方法及び装置
US20090132238A1 (en) Efficient method for reusing scale factors to improve the efficiency of an audio encoder
JP2002196792A (ja) 音声符号化方式、音声符号化方法およびそれを用いる音声符号化装置、記録媒体、ならびに音楽配信システム
JP4021124B2 (ja) デジタル音響信号符号化装置、方法及び記録媒体
JP5390690B2 (ja) 音声コーデックの品質向上装置およびその方法
JP2002023799A (ja) 音声符号化装置及びそれに用いる心理聴覚分析方法
KR100472442B1 (ko) 웨이브렛 패킷 변환을 이용한 오디오 압축 방법 및 그시스템
JP2004199075A (ja) ビット率調節可能なステレオオーディオ符号化・復号化方法及びその装置
WO2004044891A1 (ja) 音楽情報符号化装置及び方法、並びに音楽情報復号装置及び方法
JP2006018023A (ja) オーディオ信号符号化装置、および符号化プログラム
JP2006145782A (ja) オーディオ信号符号化装置および方法
US6128593A (en) System and method for implementing a refined psycho-acoustic modeler
JP2004184975A (ja) 少ない計算量で高周波数成分を復元するオーディオデコーディング方法及び装置
Truman et al. Efficient bit allocation, quantization, and coding in an audio distribution system
JP4627737B2 (ja) デジタルデータ復号化装置
JP2005003835A (ja) オーディオ信号符号化装置、オーディオ信号符号化方法、及びプログラム
JP4649351B2 (ja) デジタルデータ復号化装置
JP4822816B2 (ja) オーディオ信号符号化装置および方法
JP2003280691A (ja) 音声処理方法および音声処理装置
JP2006126372A (ja) オーディオ信号符号化装置、方法及びプログラム
JP4409733B2 (ja) 符号化装置、符号化方法、及びその記録媒体