(57)【要約】  入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割し、任意の数に分割されたセグメントごとにスペクトルパワーと、当該スペクトルパワーの特徴を示す特徴パラメタとを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出し、算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正し、補正されたセグメントのスペクトルパワーと、算出されたパラメタとを符号化する。
2009004727.tif 000002
【特許請求の範囲】
【請求項１】
入力信号を一定のサンプルからなるフレームに分割し、前記入力信号における高域の周波数帯域を符号化して高域符号化データを生成する符号化装置であって、
前記入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割するセグメント分割手段と、
前記セグメント分割手段により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出する閾値算出手段と、
前記閾値算出手段により算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するパワー補正手段と、
を備えたことを特徴とする符号化装置。
【請求項２】
前記セグメント分割手段により分割されたセグメントごとのスペクトルパワーから、当該スペクトルパワーの特徴を示す特徴パラメタを、分割されたセグメントごとに算出するパラメタ算出手段と、
前記パワー補正手段により補正されたセグメントのスペクトルパワーと、前記パラメタ算出手段により算出された特徴パラメタとを符号化する符号化手段とをさらに備えたことを特徴とする請求項１に記載の符号化装置。
【請求項３】
前記パワー補正手段は、前記検出されたセグメントと隣接するセグメントのスペクトルパワーから、前記検出されたセグメントのスペクトルパワーを補正する補正量を算出し、算出された補正量を前記検出されたセグメントのスペクトルパワーに付加することで、当該スペクトルパワーを補正することを特徴とする請求項１または２に記載の符号化装置。
【請求項４】
前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値に基づいて、前記セグメント分割手段により分割された各セグメントのスペクトルパワーが平滑化する補正量を算出し、算出された補正量を前記検出されたセグメントのスペクトルパワーに付加することで、当該スペクトルパワーを補正することを特徴とする請求項３に記載の符号化装置。
【請求項５】
前記パワー補正手段は、前記検出されたセグメントと隣接するセグメントのスペクトルパワーから、前記検出されたセグメントのスペクトルパワーを補正する補正量として量子化値を算出し、算出された量子化値を用いて前記検出されたセグメントのスペクトルパワーを補正することを特徴とする請求項１または２に記載の符号化装置。
【請求項６】
前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値に基づいて、前記セグメント分割手段により分割された各セグメントのスペクトルパワーの量子化値が平滑化する補正量を算出し、算出された補正量を用いて前記検出されたセグメントのスペクトルパワーを補正することを特徴とする請求項１または２に記載の符号化装置。
【請求項７】
前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値の範囲内で、前記補正量を算出することを特徴とする請求項１または２に記載の符号化装置。
【請求項８】
前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値の範囲内で、前記量子化値を算出することを特徴とする請求項１または２に記載の符号化装置。
【請求項９】
前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値の範囲内で、最終的に生成される高域側符号化データの符号化ビット数が少なくなるように前記補正量を算出することを特徴とする請求項１または２に記載の符号化装置。
【請求項１０】
前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値の範囲内で、最終的に生成される高域側符号化データの符号化ビット数が少なくなるように前記量子化値を算出することを特徴とする請求項１または２に記載の符号化装置。
【請求項１１】
前記閾値算出手段は、前記セグメント分割手段により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーから時間方向、周波数方向、時間方向および周波数方向のいずれかのマスキング閾値を算出することを特徴とする請求項１または２に記載の符号化装置。
【請求項１２】
入力信号を一定のサンプルからなるフレームに分割し、前記入力信号における高域の周波数帯域を符号化して高域符号化データを生成する符号化装置の符号化方法であって、
前記入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割するセグメント分割工程と、
前記セグメント分割工程により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出する閾値算出工程と、
前記閾値算出工程により算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するパワー補正工程と、
を含んだことを特徴とする符号化方法。
【請求項１３】
入力信号を一定のサンプルからなるフレームに分割し、前記入力信号における高域の周波数帯域を符号化して高域符号化データを生成する方法をコンピュータに実行させる符号化プログラムであって、
前記入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割するセグメント分割手順と、
前記セグメント分割手順により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出する閾値算出手順と、
前記閾値算出手順により算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するパワー補正手順と、
をコンピュータに実行させることを特徴とする符号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、入力信号を一定のサンプルからなるフレームに分割し、入力信号における高域の周波数帯域を符号化して高域符号化データを生成する符号化装置、符号化方法および符号化プログラムに関する。
【背景技術】
【０００２】
従来より、音声や音楽などのオーディオ信号を圧縮または伸張するのにオーディオ符号化技術が多く利用されている。このようなオーディオ符号化技術では、圧縮効率を上げるために、つまり、符号化後の符号化ビット数を削減するため様々な手法が実施されている一方で、符号化後の音質劣化が問題となっている。【０００３】
そこで、この符号化後の音質劣化を防止する様々な技術が開示されている（特許文献１参照）。また、最近では、音質劣化を防止しつつ、高い圧縮率を実現することができるＭＰＥＧ−２で用いられるＨＥ−ＡＡＣ（High−Efficiency  Advanced  Audio  Coding）符号化方式が利用されている（以下、「ＨＥ−ＡＡＣ符号化方式」と表記する）。【０００４】
このＨＥ−ＡＡＣ技術を用いたＨＥ−ＡＡＣ符号化装置とは、入力された音声信号の高域側周波成分を符号化するＳＢＲ（Spectral  Band  Replication）部と、低域側周波数成分を符号化するＡＡＣ（Advanced  Audio  Coding）部とを備える符号化装置である。【０００５】
具体的には、このＨＥ−ＡＡＣ符号化装置は、ＳＢＲ符号化部により高域成分が符号化された高域成分符号化データが生成され、ＡＡＣ符号化部により低域成分が符号化された低域成分符号化データが生成される。そして、ＨＥ−ＡＡＣ符号化装置は、生成された高域成分符号化データおよび低域成分符号化データを多重化し、ＨＥ−ＡＡＣビットストリームを生成する。【０００６】
図１２は、従来の符号化装置の構成を示す機能ブロック図である。図１２に示すように、この符号化装置は、ＳＢＲ符号器と、ＡＡＣ符号器と、ビットストリーム生成部とを備えて構成される。【０００７】
ＡＡＣ符号器は、入力信号を周波数領域に変換した領域で符号化する技術であり、入力信号の低域の周波数帯域信号から低域成分符号化データを生成する。具体的には、ＡＡＣ符号器は、入力信号をダウンサンプリングして低域入力信号を取得し、取得した低域入力信号を一定の間隔で分割し、分割した間隔ごとの周波数帯域信号を符号化したＡＡＣ符号化情報を生成する。【０００８】
ＳＢＲ符号器は、入力された入力信号の低域成分から高域成分を複製するための情報を符号化することにより情報の圧縮を行う。具体的には、ＳＢＲ符号器は、入力信号の性質（信号変化の大小）に応じて、入力信号を時間および周波数方向に分割したセグメント区間（時間／周波数グリッド）を生成する。そして、ＳＢＲ符号器は、生成した時間／周波数グリッド内のスペクトルパワーと低域成分から複製できない情報をそれぞれ算出して量子化する。その後、ＳＢＲ符号器は、さらに隣接グリッドの量子化値の差分情報をハフマン符号化し、入力信号の高域周波数成分を符号化したＳＢＲ符号化情報を生成する。【０００９】
ＨＥ−ＡＡＣ符号化装置は、ＳＢＲ符号器により生成されたＳＢＲ符号化情報とＡＡＣ符号器により生成されたＡＡＣ符号化情報とを用いて、高域成分符号化情報および低域成分符号化情報を多重化し、ＨＥ−ＡＡＣビットストリームを生成する。【００１０】
【特許文献１】特開２００１−２８２２８８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、従来のＨＥ−ＡＡＣ符号化方式を用いた符号化装置では、ＳＢＲ符号化に使用されるビット数を削減することができないという課題があった。【００１２】
従来のＨＥ−ＡＡＣ符号化装置では、ＨＥ−ＡＡＣにおいて利用できる全体の符号化ビット数がビットレートにより決定される。つまり、ＨＥ−ＡＡＣ符号化装置では、ＡＡＣ符号器で利用できるビット数とＳＢＲ符号器で利用できるビット数の合計で与えられる。したがって、ＨＥ−ＡＡＣ符号化装置は、低ビットレートの場合は、利用できる全体の符号化ビット数が少ないという性質がある。【００１３】
また、ＡＡＣ符号器は、符号化における量子化誤差と符号化ビット数とを任意に制御することが可能である。この時、ＡＡＣ符号器において量子化誤差と符号化ビット数とは、トレードオフの関係にある。つまり、ＡＡＣ符号器は、ビット数が少ないと量子化誤差が増大して音質が劣化し、逆に、ビット数が多いと量子化誤差が減少して音質が向上する。【００１４】
これに対して、ＳＢＲ符号化では、ＳＢＲで利用するビット数を制限する方法が規格になく、入力信号の性質に応じて符号化ビット数が変動する性質がある。つまり、ＳＢＲ符号化に用いられたビット数が増加すると、ＡＡＣ符号化に利用できるビット数が減少するため、ＡＡＣ符号化における量子化誤差が増大する。この結果、従来のＨＥ−ＡＡＣ符号化装置では、高域成分符号化データと低域成分符号化データとを復号化して音声出力した場合に、全体として音声の劣化が生じてしまう。【００１５】
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、ＳＢＲ符号化に使用されるビット数を削減することが可能である符号化装置を提供することを目的とする。
【課題を解決するための手段】
【００１６】
上述した課題を解決し、目的を達成するため、本発明は、入力信号を一定のサンプルからなるフレームに分割し、前記入力信号における高域の周波数帯域を符号化して高域符号化データを生成する符号化装置であって、前記入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割するセグメント分割手段と、前記セグメント分割手段により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出する閾値算出手段と、前記閾値算出手段により算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するパワー補正手段と、を備えたことを特徴とする。【００１７】
また、本発明は、上記の発明において、前記セグメント分割手段により分割されたセグメントごとのスペクトルパワーから、当該スペクトルパワーの特徴を示す特徴パラメタを、分割されたセグメントごとに算出するパラメタ算出手段と、前記パワー補正手段により補正されたセグメントのスペクトルパワーと、前記パラメタ算出手段により算出された特徴パラメタとを符号化する符号化手段とをさらに備えたことを特徴とする。【００１８】
また、本発明は、上記の発明において、前記パワー補正手段は、前記検出されたセグメントと隣接するセグメントのスペクトルパワーから、前記検出されたセグメントのスペクトルパワーを補正する補正量を算出し、算出された補正量を前記検出されたセグメントのスペクトルパワーに付加することで、当該スペクトルパワーを補正することを特徴とする。【００１９】
また、本発明は、上記の発明において、前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値に基づいて、前記セグメント分割手段により分割された各セグメントのスペクトルパワーが平滑化する補正量を算出し、算出された補正量を前記検出されたセグメントのスペクトルパワーに付加することで、当該スペクトルパワーを補正することを特徴とする。【００２０】
また、本発明は、上記の発明において、前記パワー補正手段は、前記検出されたセグメントと隣接するセグメントのスペクトルパワーから、前記検出されたセグメントのスペクトルパワーを補正する補正量として量子化値を算出し、算出された量子化値を用いて前記検出されたセグメントのスペクトルパワーを補正することを特徴とする。【００２１】
また、本発明は、上記の発明において、前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値に基づいて、前記セグメント分割手段により分割された各セグメントのスペクトルパワーの量子化値が平滑化する補正量を算出し、算出された補正量を用いて前記検出されたセグメントのスペクトルパワーを補正することを特徴とする。【００２２】
また、本発明は、上記の発明において、前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値の範囲内で、前記補正量を算出することを特徴とする。【００２３】
また、本発明は、上記の発明において、前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値の範囲内で、前記量子化値を算出することを特徴とする。【００２４】
また、本発明は、上記の発明において、前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値の範囲内で、最終的に生成される高域側符号化データの符号化ビット数が少なくなるように前記補正量を算出することを特徴とする。【００２５】
また、本発明は、上記の発明において、前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値の範囲内で、最終的に生成される高域側符号化データの符号化ビット数が少なくなるように前記量子化値を算出することを特徴とする。【００２６】
また、本発明は、上記の発明において、前記閾値算出手段は、前記セグメント分割手段により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーから時間方向、周波数方向、時間方向および周波数方向のいずれかのマスキング閾値を算出することを特徴とする。【００２７】
また、本発明は、上記の発明において、入力信号を一定のサンプルからなるフレームに分割し、前記入力信号における高域の周波数帯域を符号化して高域符号化データを生成する符号化装置の符号化方法であって、前記入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割するセグメント分割工程と、前記セグメント分割工程により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出する閾値算出工程と、前記閾値算出工程により算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するパワー補正工程と、を含んだことを特徴とする。【００２８】
また、本発明は、上記の発明において、入力信号を一定のサンプルからなるフレームに分割し、前記入力信号における高域の周波数帯域を符号化して高域符号化データを生成する方法をコンピュータに実行させる符号化プログラムであって、前記入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割するセグメント分割手順と、前記セグメント分割手順により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出する閾値算出手順と、前記閾値算出手順により算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するパワー補正手順と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００２９】
本発明によれば、入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割し、任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出し、算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するので、ＳＢＲ符号化に使用されるビット数を削減することが可能である。【００３０】
例えば、ＳＢＲ符号化器とＡＡＣ符号化器とから構成されるＨＥ−ＡＡＣ符号化装置を用いた場合、ＳＢＲ符号化器は、入力信号の性質に応じて、入力信号を時間及び周波数方向に分割したセグメント区間（時間/周波数グリッド）を生成し、生成した時間/周波数グリッド内のスペクトルパワーと低域成分から複製できない情報とをそれぞれ算出して量子化するのに際して、聴覚的に聞こえないマスキング閾値以下のスペクトルパワーを補正することで、ハフマン符号化において符号化される量子化値の差分を小さくすることができる。このハフマン符号化では、量子化値の差分が小さいほど短い符号が割り当てられるため、符号化ビット数を少なくすることができる。このようにＳＢＲ符号化で使用されるビット数を削減することができるため、ＡＡＣ符号化で使用できるビット数を多く確保することができる。その結果、ＡＡＣ符号化の量子化誤差が減少するため、ＨＥ−ＡＡＣ符号化装置で符号化される符号化情報全体として、音質を向上させることが可能である。【００３１】
また、本発明によれば、分割されたセグメントごとのスペクトルパワーから、当該スペクトルパワーの特徴を示す特徴パラメタを、分割されたセグメントごとに算出し、補正されたセグメントのスペクトルパワーと、算出された特徴パラメタとを符号化するので、ＳＢＲ符号化において細かい情報を漏らすことなく符号化することが可能である。【００３２】
また、本発明によれば、検出されたセグメントと隣接するセグメントのスペクトルパワーから、検出されたセグメントのスペクトルパワーを補正する補正量を算出し、算出された補正量を検出されたセグメントのスペクトルパワーに付加することで、当該スペクトルパワーを補正するので、確実に聴覚的に影響のない範囲に対して補正することが可能である。【００３３】
また、本発明によれば、算出されたマスキング閾値に基づいて、分割された各セグメントのスペクトルパワーが平滑化する補正量を算出し、算出された補正量を検出されたセグメントのスペクトルパワーに付加することで、当該スペクトルパワーを補正するので、ＳＢＲ符号化に使用されるビット数をさらに削減することが可能である。【００３４】
また、本発明によれば、検出されたセグメントと隣接するセグメントのスペクトルパワーから、検出されたセグメントのスペクトルパワーを補正する補正量として量子化値を算出し、算出された量子化値を用いて検出されたセグメントのスペクトルパワーを補正するので、ＳＢＲ符号化に使用されるビット数をさらに削減することが可能である。【００３５】
また、本発明によれば、算出されたマスキング閾値に基づいて、分割された各セグメントのスペクトルパワーの量子化値が平滑化する補正量を算出し、算出された補正量を用いて検出されたセグメントのスペクトルパワーを補正するので、補正後に実施されるハフマン符号化において符号化される量子化値の差分を小さくすることが可能である。【００３６】
また、本発明によれば、算出されたマスキング閾値の範囲内で、補正量を算出するので、補正に要するビット数を最小限にとどめることが可能である。【００３７】
また、本発明によれば、算出されたマスキング閾値の範囲内で、量子化値を算出するので、補正に要するビット数を最小限にとどめることが可能である。【００３８】
また、本発明によれば、算出されたマスキング閾値の範囲内で、最終的に生成される高域符号化データの符号化ビット数が少なくなるように補正量を算出するので、補正後に実施されるハフマン符号化において符号化される量子化値の差分を小さくすることが可能である。【００３９】
また、本発明によれば、算出されたマスキング閾値の範囲内で、最終的に生成される高域符号化データの符号化ビット数が少なくなるように量子化値を算出するので、補正後に実施されるハフマン符号化において符号化される量子化値の差分を小さくすることが可能である。【００４０】
また、本発明によれば、任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーから時間方向、周波数方向、時間方向および周波数方向いずれかのマスキング閾値を算出することとしたので、複数の組み合わせを用いて符号化することが可能である。
【図面の簡単な説明】
【００４１】
【図１】図１は、実施例１に係るオーディオ符号化装置の構成を示すブロック図である。
【図２】図２は、マスキング閾値を説明するための図である。
【図３】図３は、動的マスキング閾値の算出方法を説明するための図である。
【図４】図４は、動的マスキング閾値の算出を説明するための図である。
【図５】図５は、マスキング閾値の算出を説明するための図である。
【図６】図６は、実施例１に係るビットストリーム生成処理を示すフローチャートである。
【図７】図７は、実施例１に係るパワー補正処理を示す図である。
【図８】図８は、実施例２に係るビットストリーム生成処理を示すフローチャートである。
【図９】図９は、実施例３に係るオーディオ符号化装置の構成を示すブロック図である。
【図１０】図１０は、実施例３に係るビットストリーム生成処理を示すフローチャートである。
【図１１】図１１は、オーディオ符号化プログラムを実行するコンピュータを示す図である。
【図１２】図１２は、従来のＨＥ−ＡＡＣ符号化装置の構成を示すブロック図である。
【符号の説明】
【００４２】
１００  オーディオ符号化装置
２００  ＡＡＣ符号器
３００  ＳＢＲ符号器
３０１  分析フィルタ部
３０２  時間／周波数グリッド生成部
３０３  パワー算出部
３０４  補助情報算出部
３０５  マスキング閾値算出部
３０６  補正候補探索部
３０７  補正部
３０８  第一量子化部
３０９  第一符号化部
３１０  第二量子化部
３１１  第二符号化部
３１２  多重化部
４００  ビットストリーム生成部
【発明を実施するための最良の形態】
【００４３】
以下に添付図面を参照して、この発明に係るオーディオ符号化装置の実施例を詳細に説明する。なお、以下では、実施例１に係るオーディオ符号化装置の概要および特徴、オーディオ符号化装置の構成および処理の流れを順に説明し、最後に本実施例による効果を説明する。
【実施例１】
【００４４】
［用語の説明］
まず最初に、本実施例で用いる主要な用語を説明する。本実施例で用いるオーディオ符号化装置とは、入力された入力信号の高域成分を符号化するＳＢＲ符号器（特許請求の範囲に記載の「符号化装置」に対応する。）と、当該入力信号の低域成分を符号化するＡＡＣ符号器とを備えたエンコーダのことである。このオーディオ符号化装置は、ＳＢＲ符号器により生成されたＳＢＲ符号化情報と、ＡＡＣ符号器により生成されたＡＡＣ符号化情報とを多重化して、ＨＥ−ＡＡＣビットストリームを生成する。【００４５】
また、ＳＢＲ符号器は、入力された入力信号の低域成分から高域成分を複製するための情報を符号化することにより情報の圧縮を行う。具体的には、ＳＢＲ符号器は、入力信号の性質に応じて、入力信号を時間及び周波数方向に分割したセグメント区間（時間/周波数グリッド）を生成する。そして、ＳＢＲ符号器は、生成した時間/周波数グリッド内のスペクトルパワーと低域成分から複製できない情報とをそれぞれ算出して量子化する。その後、ＳＢＲ符号化は、さらに隣接グリッドの量子化値の差分情報をハフマン符号化し、入力信号の高域周波成分を符号化したＳＢＲ符号化情報を生成する。このハフマン符号化は、量子化値の差分が小さいほど少ないビット数で符号化することができる。【００４６】
また、ＡＡＣ符号器は、入力信号を周波数領域に変換した領域で符号化する技術であり、入力信号の低域の周波数帯域信号から低域符号化データを生成する。具体的には、ＡＡＣ符号器は、入力信号をダウンサンプリングして低域入力信号を取得し、取得した低域入力信号を一定の間隔で分割し、分割した間隔ごとの周波数帯域信号を符号化したＡＡＣ符号化情報を生成する。【００４７】
ここで、ＳＢＲ符号器とＡＡＣ符号器とで使用されるビット数の関係について説明する。このオーディオ符号化装置では、使用することのできるビット数（例えば、Ｚビット）が決められている。また、ＡＡＣ符号化は、ＳＢＲ符号化の後に、残りビット数（例えば、Ｙビット）を用いて高域成分のＡＡＣ符号化情報を生成する。つまり、ＳＢＲ符号化において使用されたビット数が「Ｘビット」であったとすると、ＡＡＣ符号化で使用することのできるビット数「Ｙビット」は「Ｙ＝Ｚ−Ｘ」となる。そのため、ＳＢＲ符号化において使用されたビット数が多くなると、ＡＡＣ符号化で使用することのできるビット数が少なくなり、ＡＡＣ符号器で符号化された符号化データに歪みが発生する。【００４８】
また、オーディオ符号化装置からＨＥ−ＡＡＣビットストリームを受信した復号化装置（デコーダ）では、受信したＡＡＣ符号化情報を復号して低域データを取得し、ＳＢＲ符号化情報を復号して高域データ生成に必要な制御信号を取得し、取得された低域データと制御信号とから高域データを生成する。【００４９】
このように、デコーダは、ＡＡＣのデコード結果（低域成分）より、ＳＢＲ符号化情報を用いて高域成分を生成するので、ＡＡＣ（低域成分）のスペクトル歪がＳＢＲ（高域成分）へ伝播することで全体のスペクトル歪が増大し、音質が劣化する。そのため、ＳＢＲの符号化ビット数をいかに少なくし、ＡＡＣ符号化のスペクトル歪みを軽減するかが重要である。【００５０】
［オーディオ符号化装置の概要および特徴］
次に、実施例１に係るオーディオ符号化装置の概要および特徴を説明する。実施例１に係るオーディオ符号化装置は、入力された入力信号の高域成分を符号化してＳＢＲ符号化情報（高域符号化データ）を生成するＳＢＲ符号器と、入力された入力信号の低域成分を符号化してＡＡＣ符号化情報（低域符号化データ）を生成するＡＡＣ符号器と、生成されたＳＢＲ符号化情報およびＡＡＣ符号化情報を多重化するビットストリーム生成部とから構成される。【００５１】
このような構成において、実施例１に係るオーディオ符号化装置は、上記したように、入力信号を一定のサンプルからなるフレームに分割し、入力信号における高域の周波数帯域を符号化して高域符号化データを生成することを概要とするものであり、特に、ＳＢＲ符号化に使用されるビット数を削減することが可能である点に主たる特徴がある。【００５２】
つまり、実施例１に係るオーディオ符号化装置は、入力信号の性質に応じて、入力信号を時間及び周波数方向に分割したセグメント区間（時間/周波数グリッド）を生成し、生成した時間/周波数グリッド内のスペクトルパワーと低域成分から複製できない情報とをそれぞれ算出して量子化するのに際して、聴覚的に聞こえないマスキング閾値以下のスペクトルパワーを補正することで、ハフマン符号化において符号化される量子化値の差分を小さくすることができ、ハフマン符号化において、ビット数の少ない符号で符号化される。この結果、ＳＢＲ符号化に使用されるビット数を削減することが可能である。【００５３】
［オーディオ符号化装置の構成］
次に、図１を用いて、実施例１に係るオーディオ符号化装置の構成を示すブロック図を説明する。図１は、実施例１に係るオーディオ符号化装置の構成を示すブロック図である。図１に示すように、オーディオ符号化装置１００は、ＡＡＣ符号器２００、ＳＢＲ符号器３００およびビットストリーム生成部４００から構成される。【００５４】
（ＡＡＣ符号器）
ＡＡＣ符号器２００は、入力信号が入力された場合に、当該入力信号をダウンサンプリングし、ダウンサンプリングして得られる低域成分をエンコードしてＡＡＣ出力としてＡＡＣ符号化情報を出力する。【００５５】
具体的には、ＡＡＣ符号器２００は、オーディオ符号化装置１００に入力信号が入力された場合に、当該入力信号を、より低い周波数でサンプリングするダウンサンプリングした信号をＡＡＣ符号化し、ＡＡＣ出力としてＡＡＣ符号化情報を後述するビットストリーム生成部４００に送信する。【００５６】
（ＳＢＲ符号器の構成）
図１に示すように、ＳＢＲ符号器３００は、分析フィルタ部３０１、時間／周波数グリッド生成部３０２、パワー算出部３０３、補助情報算出部３０４、マスキング閾値算出部３０５、補正候補探索部３０６、補正部３０７、第一量子化部３０８、第一符号化部３０９、第二量子化部３１０、第二符号化部３１１および多重化部３１２から構成される。【００５７】
分析フィルタ部３０１は、入力信号が入力された場合に、当該入力信号を周波数領域のスペクトル信号に変換する。具体的には、分析フィルタ部３０１は、オーディオ符号化装置１００に入力信号が入力された場合に、入力された入力信号の時間周波数スペクトルを算出して周波数領域のスペクトル信号に変換する。分析フィルタ部３０１は、この変換によりＳＢＲ符号器３００で符号化されることとなる入力信号の高域成分を抽出する。そして、分析フィルタ部３０１は、変換されたスペクトル信号を、後述する時間／周波数グリッド生成部３０２、パワー算出部３０３および補助情報算出部３０４に送信する。【００５８】
時間／周波数グリッド生成部３０２は、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割する。具体的には、時間／周波数グリッド生成部３０２は、分析フィルタ部３０１により変換されて送信された周波数領域のスペクトル信号を、時間および周波数方向に任意のセグメントに分割する。そして、時間／周波数グリッド生成部３０２は、分割したセグメントのセグメント分割情報を生成して、後述するパワー算出部３０３、補助情報算出部３０４、マスキング閾値算出部３０５、補正候補探索部３０６、補正部３０７および多重化部３１２に送信する。【００５９】
パワー算出部３０３は、任意の数に分割されたセグメントごとにスペクトルパワーを算出する。具体的には、パワー算出部３０３は、時間／周波数グリッド生成部３０２により任意の数に分割されて送信されたセグメントごとに、スペクトルパワーを算出する。そして、パワー算出部３０３は、算出されたスペクトルパワーを、後述するマスキング閾値算出部３０５、補正候補探索部３０６および補正部３０７に送信する。【００６０】
補助情報算出部３０４は、任意の数に分割されたセグメントごとにスペクトルの特徴パラメタを算出する。具体的には、補助情報算出部３０４は、時間／周波数グリッド生成部３０２により任意の数に分割されて送信されたセグメントごとに、時間周波数スペクトルおよび分解能情報に基づいて、低域成分から複製できない情報であるスペクトルの特徴パラメタを算出する。そして、補助情報算出部３０４は、算出されたパラメタを、後述する第二量子化部３１０に送信する。【００６１】
マスキング閾値算出部３０５は、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出する。具体的には、マスキング閾値算出部３０５は、パワー算出部３０３により算出されて送信された各セグメントごとのスペクトルパワーから、静寂時に聴覚が検知できる音の最小レベルと、隣接するスペクトルパワーが大きいために聴覚的に聞こえなくなる音のレベルとを合わせたマスキング閾値を算出する。そして、マスキング閾値算出部３０５は、算出されたマスキング閾値を、後述する補正候補探索部３０６に送信する。【００６２】
ここで、図２に示すように、マスキング閾値とは、静寂時に聴覚が検知できる音の最小レベルである静的マスキング閾値（最小可聴域）と、ある音（例えば、隣接するスペクトルパワー）のレベルが大きいために、他の音がマスクされて聞こえなくなる音のレベルである動的マスキング閾値とをマージしたものである。このマスキング閾値は、静的マスキング閾値と動的マスキング閾値とを合わせた閾値であり、例えば、図２に示す太線の部分となる。なお、図２は、マスキング閾値を説明するための図である。【００６３】
ここで、図３を用いて、動的マスキング閾値の算出方法を説明する。図３は、動的マスキング閾値の算出方法を説明するための図である。図３に示すように、ｆ０の音（スペクトルパワー＝Ｅ０）が、ｆ０（自身）に与えるマスキング閾値（ｄｔｈｒ０）は、「ｄｔｈｒ０＝ｗ（ｆ０）Ｅ０」である。また、ｆ０の音（スペクトルパワー＝Ｅ０）が、ｆ１（ｆ１＜ｆ０）に与えるマスキング閾値（ｄｔｈｒ１）は、「ｄｔｈｒ１＝ｄｔｈｒ０＋ＳＬ（ｆ１−ｆ０）」である。また、ｆ０の音（スペクトルパワー＝Ｅ０）が、ｆ２（ｆ２＞ｆ０）に与えるマスキング閾値（ｄｔｈｒ２）は、「ｄｔｈｒ２＝ｄｔｈｒ０＋ＳＨ（ｆ２−ｆ０）」である。ここで、ｗ（ｆ）、ＳＬおよびＳＨは、重み係数であり、ｗ（ｆ）は、各周波数で一律でもよいし、一律ではなく変えてもよいものとする。【００６４】
次に、図４を用いて、動的マスキング閾値の算出を説明する。図４は、動的マスキング閾値の算出を説明するための図である。図４に示すように、まず、ｆ０、ｆ１およびｆ２の音（スペクトルパワーＰ０、Ｐ１およびＰ２）が自身に与えるマスキング閾値を求める。具体的に例を挙げて説明すると、「ｄｔｈｒ０＝ｗ（ｆ０）Ｐ０」、「ｄｔｈｒ１＝ｗ（ｆ１）Ｐ１」、「ｄｔｈｒ２＝ｗ（ｆ２）Ｐ２」となる。そして、ｆ０の音（パワー「Ｐ０」、マスキング「Ｍ０」）が、ｆ１の帯域に与えるマスキング閾値「ｄｔｈｒ（ｆ０，ｆ１）」を求める。具体的に例を挙げて説明すると、「ｄｔｈｒ（ｆ０，ｆ１）＝ｄｔｈｒ０＋ＳＨ（ｆ０−ｆ１）」となる。続いて、ｆ２の音（パワー「Ｐ２」、マスキング「Ｍ２」）が、ｆ１の帯域に与えるマスキング閾値「ｄｔｈｒ（ｆ２，ｆ１）」を求める。具体的に例を挙げて説明すると、「ｄｔｈｒ（ｆ２，ｆ１）＝ｄｔｈｒ２＋ＳＬ（ｆ２−ｆ１）」となる。この結果、Ｍ１、Ｍ（ｆ０，ｆ１）およびＭ（ｆ２，ｆ１）の最大値が、ｆ１における新しい動的マスキング閾値となる。具体的には、「ｄｔｈｒＡ１＝ｍａｘ（ｄｈｔｒ１，ｄｔｈｒ（ｆ０、ｆ１），ｄｔｈｒ（ｆ２，ｆ１））」となる。なお、上記した同様の手順により、全帯域について新しい動的マスキング閾値を求めることとなる。【００６５】
次に、図５を用いて、マスキング閾値の算出を説明する。図５は、マスキング閾値の算出を説明するための図である。図５に示すように、まず、ｆ０、ｆ１およびｆ２の動的マスキングと静的マスキングとの大小を比較する。具体的に例を挙げて説明すると、ｆ０、ｆ１およびｆ２の動的マスキング閾値「ｄｔｈｒＡ０、ｄｔｈｒＡ１およびｄｔｈｒＡ２」と、ｆ０、ｆ１およびｆ２の静的マスキング閾値「ｑｔｈｒ０、ｑｔｈｒ１およびｑｔｈｒ２」との大小を比較する。そして、上記した動的マスキングと静的マスキングとの大きいほうが、その帯域のマスキング閾値となる。具体的に例を挙げて説明すると、Ｍ０＝ｍａｘ（ｑｔｈｒ０，ｄｔｈｒＡ０）、Ｍ１＝ｍａｘ（ｑｔｈｒ１，ｄｔｈｒＡ１）およびＭ２＝ｍａｘ（ｑｔｈｒ２，ｄｔｈｒＡ２）となる。なお、マスキング閾値は、動的マスキングのみを利用してもよいし、静的マスキングのみを利用してもよい。【００６６】
補正候補探索部３０６は、算出されたマスキング閾値以下において、補正候補となる帯域を探索する。具体的には、補正候補探索部３０６は、マスキング閾値算出部３０５により算出されて送信されたマスキング閾値以下において、当該マスキング閾値とセグメントのスペクトルパワーとを比較して得られるセグメントを探索する。そして、補正候補探索部３０６は、探索されたセグメントを補正候補とする。その後、補正候補探索部３０６は、探索された補正候補を、後述する補正部３０７に送信する。【００６７】
補正部３０７は、探索された補正候補となる帯域について、マスキング閾値に基づいてスペクトルパワーの補正量を決定し、決定された補正量に基づいてセグメントのスペクトルパワーを補正する。【００６８】
具体的には、補正部３０７は、補正候補探索部３０６により探索されて送信された補正候補となる帯域について、当該補正候補のセグメントのマスキング閾値と、当該補正候補に隣接するセグメントのスペクトルパワーとを比較する。そして、補正部３０７は、この比較においてマスキング閾値が補正候補に隣接するセグメントのスペクトルパワー以上である帯域のスペクトルパワーを補正量として決定し、決定された補正量に基づいて補正候補のセグメントのスペクトルパワーを補正する。その後、補正部３０７は、補正されたスペクトルパワーを、後述する第一量子化部３０８に送信する。【００６９】
第一量子化部３０８は、補正部３０７により補正されたスペクトルパワーを量子化する。そして、第一量子化部３０８は、量子化されたスペクトルパワーを、後述する第一符号化部３０９に送信する。【００７０】
第一符号化部３０９は、量子化されたスペクトルパワーを符号化する。具体的には、第一符号化部３０９は、第一量子化部３０８により量子化されて送信されたスペクトルパワーを一定の規則に基づいて圧縮する符号化を行う。そして、第一符号化部３０９は、符号化されたスペクトルパワーを、後述する多重化部３１２に送信する。【００７１】
第二量子化部３１０は、補助情報算出部３０４により算出された低域成分から複製できない情報であるスペクトルの特徴パラメタを量子化する。そして、第二量子化部３１０は、量子化された特徴パラメタを、後述する第二符号化部３１１に送信する。【００７２】
第二符号化部３１１は、量子化された特徴パラメタを符号化する。具体的には、第二符号化部３１１は、第二量子化部３１０により量子化されて送信された特徴パラメタを一定の規則に基づいて圧縮する符号化を行う。そして、第二符号化部３１１は、符号化された特徴パラメタを、後述する多重化部３１２に送信する。【００７３】
多重化部３１２は、セグメント分割情報と、符号化されたスペクトルパワーと、符号化された特徴パラメタとを多重化する。具体的には、多重化部３１２は、時間／周波数グリッド生成部３０２により生成されて送信されたセグメントの分割情報であるセグメント分割情報と、第一符号化部３０９により符号化されて送信されたスペクトルパワーと、第二符号化部３１１により符号化されて送信された特徴パラメタとを多重化する。そして、多重化部３１２は、多重化されたセグメント分割情報と、符号化されたスペクトルパワーと、符号化された特徴パラメタとをＳＢＲ出力としてＳＢＲ符号化情報を出力し、後述するビットストリーム生成部４００に送信する。【００７４】
オーディオ符号化装置１００のビットストリーム生成部４００は、出力されたＡＡＣ符号化情報とＳＢＲ符号化情報とを多重化してビットストリームを生成する。具体的には、オーディオ符号化装置１００のビットストリーム生成部４００は、ＡＡＣ符号器２００およびＳＢＲ符号器３００により出力されたＡＡＣ符号化情報およびＳＢＲ符号化情報を多重化してＨＥ−ＡＡＣビットストリームを生成する。【００７５】
［実施例１に係るビットストリーム生成処理のフローチャート］
次に、図６および図７を用いて、実施例１に係るビットストリーム生成処理を説明する。図６は、実施例１に係るビットストリーム生成処理を示すフローチャートである。図７は、実施例１に係るパワー補正処理を示す図である。【００７６】
図７に示すように、オーディオ符号化装置１００のＡＡＣ符号器２００は、入力信号が入力された場合に（ステップＳ６０１肯定）、当該入力信号をダウンサンプリングし、ダウンサンプリングして得られる低域成分をエンコードしてＡＡＣ出力としてＡＡＣ符号化情報を出力する（ステップＳ６０２）。【００７７】
具体的には、オーディオ符号化装置１００のＡＡＣ符号器２００は、当該オーディオ符号化装置１００に入力信号が入力された場合に、当該入力信号を、より低い周波数でサンプリングするダウンサンプリングをして得られる低域成分を、一定の規則に基づいて符号化（音声圧縮）するエンコードをして、ＡＡＣ出力としてＡＡＣ符号化情報を出力する。【００７８】
続いて、分析フィルタ部３０１は、入力信号が入力された場合に、当該入力信号を周波数領域のスペクトル信号に変換する（ステップＳ６０３）。具体的には、分析フィルタ部３０１は、オーディオ符号化装置１００に入力信号が入力された場合に、入力された入力信号の時間周波数スペクトルを算出して周波数領域のスペクトル信号に変換する。この分析フィルタ部３０１は、入力信号をスペクトル信号に変換して、ＳＢＲ符号器３００において符号化される高域成分を抽出する。【００７９】
そして、時間／周波数グリッド生成部３０２は、分析フィルタ部３０１により変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割する（ステップＳ６０４）。具体的には、時間／周波数グリッド生成部３０２は、分析フィルタ部３０１により変換された周波数領域のスペクトル信号を、時間および周波数方向に任意のセグメントに分割する。例えば、図７の（Ａ）に示すように、時間（ｔｉ）と周波数（ｆｊ）とから構成されるグリッドにおいて、Ｅ（ｔ０，ｆ０）、Ｅ（ｔ０，ｆ１）およびＥ（ｔ０，ｆ２）とに分割する。ここでは、時間方向の分割数は「１」とし、周波数方向の分割数は「３」としている。【００８０】
その後、パワー算出部３０３は、時間／周波数グリッド生成部３０２により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、補助情報算出部３０４は、時間／周波数グリッド生成部３０２により任意の数に分割されたセグメントごとにスペクトルの特徴パラメタを算出する（ステップＳ６０５）。【００８１】
具体的には、パワー算出部３０３は、時間／周波数グリッド生成部３０２により任意の数に分割されたセグメントごとに、スペクトルパワーを生成する。また、補助情報算出部３０４は、時間／周波数グリッド生成部３０２により任意の数に分割されたセグメントごとに、時間周波数スペクトルおよび分解能情報に基づいて、低域成分から複製できない情報であるスペクトルの特徴パラメタを算出する。例えば、図７の（Ｂ）に示すように、図７の（Ａ）において分割されたＥ（ｔ０，ｆ０）、Ｅ（ｔ０，ｆ１）およびＥ（ｔ０，ｆ２）のスペクトルパワーを生成する。なお、図７の（Ｂ）は、時間「ｔ０」のセグメントの周波数とパワーとの関係を示している。【００８２】
続いて、マスキング閾値算出部３０５は、パワー算出部３０３により算出されたスペクトルパワーからマスキング閾値を算出する（ステップＳ６０６）。具体的には、マスキング閾値算出部３０５は、パワー算出部３０３により算出されたスペクトルパワーから、静寂時に聴覚が検知できる音の最小レベルと、隣接するスペクトルパワーが大きいために聴覚的に聞こえなくなる音のレベルとを合わせたマスキング閾値を算出する。例えば、図７の（Ｃ）に示すように、パワーＥ（ｔ０，ｆ０）、Ｅ（ｔ０，ｆ１）およびＥ（ｔ０，ｆ２）のマスキング閾値は、それぞれＭ（ｔ０，ｆ０）、Ｍ（ｔ０，ｆ１）およびＭ（ｔ０，ｆ２）となる。【００８３】
そして、補正候補探索部３０６は、マスキング閾値算出部３０５により算出されたマスキング閾値以下において、補正候補となる帯域を探索する（ステップＳ６０７）。具体的には、補正候補探索部３０６は、マスキング閾値算出部３０５により算出されたマスキング閾値以下において、当該マスキング閾値とセグメントのスペクトルパワーとを比較して得られるセグメントを探索し、探索されたセグメントを補正候補とする。【００８４】
その後、補正部３０７は、補正候補探索部３０６により探索された補正候補となる帯域について、マスキング閾値に基づいてスペクトルパワーの補正量を決定し、決定された補正量に基づいてセグメントのスペクトルパワーを補正する（ステップＳ６０８〜ステップＳ６１０）。【００８５】
具体的には、補正部３０７は、補正候補探索部３０６により探索された補正候補となる帯域について、当該補正候補のセグメントのマスキング閾値（例えば、「Ｍ」とする。）と、当該補正候補に隣接するセグメントのスペクトルパワー（例えば、「Ｅ」とする。）とを比較する。そして、補正部３０７は、この比較においてマスキング閾値「Ｍ」が補正候補に隣接するセグメントのスペクトルパワー「Ｅ」以上「Ｍ≧Ｅ」である帯域のスペクトルパワーを補正量として決定し、決定された補正量に基づいて補正候補のセグメントのスペクトルパワーを補正する。【００８６】
例えば、図７の（Ｄ）に示すように、補正候補のセグメントのマスキング閾値「Ｍ（ｔ０，ｆ１）」と、当該補正候補に隣接するセグメントのスペクトルパワー「Ｅ（ｔ０，ｆ０）」および「Ｅ（ｔ０，ｆ２）」とを比較している。また、例えば、図７の（Ｅ）に示すように、この比較の結果、「Ｍ（ｔ０，ｆ１）≧Ｅ（ｔ０，ｆ０）」となる「Ｅ（ｔ０，ｆ０）」を補正量として決定し、決定された補正量に基づいて補正候補のセグメントのスペクトルパワーを補正して「ＥＡ（ｔ０，ｆ１）」としている。【００８７】
続いて、第一量子化部３０８は、補正部３０７により補正されたスペクトルパワーを量子化する。そして、第一符号化部３０９は、第一量子化部３０８により量子化されたスペクトルパワーを符号化する（ステップＳ６１１）。【００８８】
具体的には、第一量子化部３０８は、補正部３０７により補正されたスペクトルパワーの強弱を数値化（ディジタル化）する量子化を行う。そして、第一符号化部３０９は、第一量子化部３０８により量子化されたスペクトルパワーを一定の規則に基づいて圧縮する符号化を行う。【００８９】
その後、第二量子化部３１０は、補助情報算出部３０４により算出された特徴パラメタを量子化する。続いて、第二符号化部３１１は、第二量子化部３１０により量子化された特徴パラメタを符号化する（ステップＳ６１２）。【００９０】
具体的には、第二量子化部３１０は、補助情報算出部３０４により算出された低域成分から複製できない情報であるスペクトルの特徴パラメタを数値化（ディジタル化）する量子化を行う。そして、第二符号化部３１１は、第二量子化部３１０により量子化された特徴パラメタを一定の規則に基づいて圧縮する符号化を行う。【００９１】
そして、多重化部３１２は、時間／周波数グリッド生成部３０２により生成されたセグメント分割情報と、第一符号化部３０９により符号化されたスペクトルパワーと、第二符号化部３１１により符号化された特徴パラメタとを多重化する（ステップＳ６１３）。【００９２】
具体的には、多重化部３１２は、時間／周波数グリッド生成部３０２により生成されたセグメントの分割情報であるセグメント分割情報と、第一符号化部３０９により符号化されたスペクトルパワーと、第二符号化部３１１により符号化された特徴パラメタとを多重化する。【００９３】
続いて、オーディオ符号化装置１００のビットストリーム生成部４００は、ＡＡＣ符号器２００およびＳＢＲ符号器３００により出力されたＡＡＣ符号化情報とＳＢＲ符号化情報とを多重化してビットストリームを生成する（ステップＳ６１４）。【００９４】
具体的には、オーディオ符号化装置１００のビットストリーム生成部４００は、ＡＡＣ符号器２００およびＳＢＲ符号器３００により出力されたＡＡＣ符号化情報およびＳＢＲ符号化情報を多重化してＨＥ−ＡＡＣビットストリームを生成する。【００９５】
［実施例１による効果］
このように、実施例１によれば、入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割し、任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出し、算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するので、ＳＢＲ符号化に使用されるビット数を削減することが可能である。【００９６】
例えば、ＳＢＲ符号化器とＡＡＣ符号化器とから構成されるＨＥ−ＡＡＣ符号化装置を用いた場合、ＳＢＲ符号化器は、入力信号の性質に応じて、入力信号を時間及び周波数方向に分割したセグメント区間（時間/周波数グリッド）を生成し、生成した時間/周波数グリッド内のスペクトルパワーと低域成分から複製できない情報とをそれぞれ算出して量子化するのに際して、聴覚的に聞こえないマスキング閾値以下のスペクトルパワーを補正することで、ハフマン符号化において符号化される量子化値の差分を小さくすることができる。このハフマン符号化では、量子化値の差分が小さいほど短い符号が割り当てられるため、符号化ビット数を少なくすることができる。このようにＳＢＲ符号化で使用されるビット数を削減することができるため、ＡＡＣ符号化で使用できるビット数を多く確保することができる。その結果、ＡＡＣ符号化の量子化誤差が減少するため、ＨＥ−ＡＡＣ符号化装置で符号化される符号化情報全体として、音質を向上させることが可能である。【００９７】
また、実施例１によれば、分割されたセグメントごとのスペクトルパワーから、当該スペクトルパワーの特徴を示す特徴パラメタを、分割されたセグメントごとに算出し、補正されたセグメントのスペクトルパワーと、算出された特徴パラメタとを符号化するので、ＳＢＲ符号化において細かい情報を漏らすことなく符号化することが可能である。【００９８】
また、実施例１によれば、検出されたセグメントと隣接するセグメントのスペクトルパワーから、検出されたセグメントのスペクトルパワーを補正する補正量を算出し、算出された補正量を検出されたセグメントのスペクトルパワーに付加することで、当該スペクトルパワーを補正するので、確実に聴覚的に影響のない範囲に対して補正することが可能である。
【実施例２】
【００９９】
ところで、実施例１では、補正対象を補正する際に、補正対象セグメントのマスキング閾値と、当該マスキング閾値に隣接するセグメントのスペクトルパワーとを比較して補正する場合を説明したが、本発明はこれに限定されるものではなく、補正対象に隣接するセグメントについてスペクトルパワーを量子化および符号化したものと、補正対象についてスペクトルパワーを量子化および符号化したものとを比較して補正することもできる。【０１００】
そこで、以下の実施例２では、図８を用いて、補正対象に隣接するセグメントについてスペクトルパワーを量子化および符号化したものと、補正対象についてスペクトルパワーを量子化および符号化したものとを比較して補正する場合を説明する。【０１０１】
［実施例２に係るビットストリーム生成処理］
図８は、実施例２に係るビットストリーム生成処理を示すフローチャートである。なお、図８において、ステップＳ８０１〜ステップＳ８０７は、図６に示したステップＳ６０１〜ステップＳ６０７と同様であり、また、ステップＳ８１７〜ステップＳ８２１は、図６に示したステップＳ６１０〜ステップＳ６１４と同様となるのでその説明を省略する。なお、ここでは、ステップＳ８０６において算出された補正候補のマスキング閾値を「Ｍ（ｔ０，ｆ１）」として説明する。【０１０２】
図８に示すように、ステップＳ８０１〜ステップＳ８０７により補正候補を探索されたＳＢＲ符号器３００は、探索された補正候補となる帯域に隣接するセグメントについて、スペクトルパワーを量子化する（ステップＳ８０８）。具体的には、ＳＢＲ符号器３００は、探索された補正候補ではなく、当該補正候補に隣接するセグメントについて、スペクトルパワーを量子化（ディジタル化）する。例えば、補正候補は、「Ｅ（ｔ０，ｆ１）」とし、補正候補に隣接するセグメントは、「Ｅ（ｔ０，ｆ０）」および「Ｅ（ｔ０，ｆ２）」とする。但し、補正候補に隣接するセグメントの大小は、Ｅ（ｔ０，ｆ０）＜Ｅ（ｔ０，ｆ２）とする。【０１０３】
そして、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補に隣接するセグメントを、ハフマン符号化して符号化ビット数を計算する（ステップＳ８０９）。具体的には、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補に隣接する各セグメントについて、データの欠落がまったく起こらない可逆圧縮であるハフマン符号化をして、当該各セグメントの符号化ビット数を計算する。ここでは、符号化ビット数の計算結果を「ｂ」とする。【０１０４】
続いて、ＳＢＲ符号器３００は、補正候補「Ｅ（ｔ０，ｆ０）」を「ＥＡ＝Ｅｎｅｗ＝Ｅ（ｔ０，ｆ０）」として（ステップＳ８１０）、補正候補のスペクトルパワーを修正する（ステップＳ８１１）。具体的には、ＳＢＲ符号器３００は、補正候補「Ｅ（ｔ０，ｆ０）」を、「ＥＡ＝Ｅｎｅｗ」として、当該補正候補「ＥＡ」のスペクトルパワーを修正する（「ＥＡ＝Ｅ＋ΔＥ」）。なお、ΔＥは、セグメントの量子化値が「１」だけ変化するパワーの変換分であり、当該ΔＥの変化量は、正方向だけでなく負方向でもよい。【０１０５】
その後、ＳＢＲ符号器３００は、修正された補正候補「ＥＡ」とマスキング閾値「Ｍ」とを比較して、補正候補「ＥＡ」がマスキング閾値「Ｍ」より小さい（ＥＡ＜Ｍ）場合に（ステップＳ８１２肯定）、補正候補についてスペクトルパワーを量子化する（ステップＳ８１３）。【０１０６】
具体的には、ＳＢＲ符号器３００は、修正された補正候補「ＥＡ」と、ステップＳ８０６において算出された補正候補のマスキング閾値「Ｍ（ｔ０，ｆ１）」とを比較して、補正候補「ＥＡ」が算出された補正候補のマスキング閾値「Ｍ」より小さい場合に（ＥＡ＜Ｍ）、補正候補が可聴領域以下となり補正が必要となるので、当該補正候補についてスペクトルパワーを量子化する。なお、ＳＢＲ符号器３００は、ステップＳ８１２において、補正候補「ＥＡ」がマスキング閾値「Ｍ」より大きい場合に（ステップＳ８１２否定）、ステップＳ８１７の処理を行う。【０１０７】
そして、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補のセグメントを、ハフマン符号化して符号化ビット数を計算する（ステップＳ８１４）。具体的には、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補のセグメントについて、データの欠落がまったく起こらない可逆圧縮であるハフマン符号化をして、当該補正候補のセグメントの符号化ビット数「ｂＡ」を計算する。【０１０８】
続いて、ＳＢＲ符号器３００は、補正候補について、当該補正候補の補正前の符号化ビット数「ｂ」と、当該補正候補の修正後の符号化ビット数「ｂＡ」とを比較して、修正前「ｂ」が修正後「ｂＡ」より大きい（ｂ＞ｂＡ）場合に（ステップＳ８１５肯定）、補正候補の帯域の補正量を保存する（ステップＳ８１６）。【０１０９】
具体的には、ＳＢＲ符号器３００は、補正候補について、当該補正候補の修正前の符号化ビット数「ｂ」と、当該補正候補の修正後の符号化ビット数「ｂＡ」とを比較して、修正前「ｂ」が修正後「ｂＡ」より大きい場合に（ｂ＞ｂＡ）、当該補正候補の帯域について、「ｂＡ」として保存する。ここでは、「Ｅｎｅｗ＝ＥＡ」「ｂ＝ｂＡ」として保存する。なお、ＳＢＲ符号器３００は、ステップＳ８１５において、修正前「ｂ」が修正後「ｂＡ」より小さい場合にステップＳ８１１から処理し、ステップＳ８１６の処理が完了した場合にも同様にステップＳ８１１から処理することとなる。【０１１０】
［実施例２による効果］
このように、実施例２によれば、検出されたセグメントと隣接するセグメントのスペクトルパワーから、検出されたセグメントのスペクトルパワーを補正する補正量として量子化値を算出し、算出された量子化値を用いて検出されたセグメントのスペクトルパワーを補正するので、ＳＢＲ符号化に使用されるビット数をさらに削減することが可能である。
【実施例３】
【０１１１】
ところで、実施例１では、補正対象を補正する際に、補正対象セグメントのマスキング閾値と、当該マスキング閾値に隣接するセグメントのスペクトルパワーとを比較して補正する場合を説明したが、本発明はこれに限定されるものではなく、補正前の補正対象についてスペクトルパワーを量子化し、量子化されたスペクトルパワーと、当該補正対象のセグメントのマスキング閾値を量子化したものとを比較して補正することもできる。【０１１２】
そこで、以下の実施例３では、図９および図１０を用いて、補正前の補正対象についてスペクトルパワーを量子化し、量子化されたスペクトルパワーと、当該補正対象のセグメントのマスキング閾値を量子化したものとを比較して補正する場合を説明する。【０１１３】
［実施例３に係るオーディオ符号化装置の構成］
図９は、実施例３に係るオーディオ符号化装置の構成を示すブロック図である。図９に示すように、オーディオ符号化装置１００は、ＡＡＣ符号器２００、ＳＢＲ符号器３００およびビットストリーム生成部４００から構成される。【０１１４】
ここで、実施例３に係るオーディオ符号化装置１００において、実施例１と異なる点は、「補正前」の補正対象についてスペクトルパワーを量子化する点であり、機能構成や各処理は実施例１と同様のもとなるのでその説明を省略する。【０１１５】
実施例１において、パワー算出部３０３は、算出したスペクトルパワーを補正部３０７に送信していたが、実施例３におけるパワー算出部３０３は、算出したスペクトルパワーを第一量子化部３０８に送信する。【０１１６】
第一量子化部３０８は、算出されたスペクトルパワーの量子化を行う。具体的には、第一量子化部３０８は、パワー算出部３０３により算出されて送信された補正前の補正候補のスペクトルパワーの量子化を行い補正部３０７に送信する。【０１１７】
補正部３０７は、探索された補正候補となる帯域について、当該補正候補のスペクトルパワーの量子化値と、当該補正候補のマスキング閾値の量子化値とを比較して補正量を決定し、決定された補正量に基づいてスペクトルパワーを補正する。【０１１８】
具体的には、補正部３０７は、補正候補探索部３０６により探索されて送信された補正候補となる帯域について、第一量子化部３０７により量子化された補正候補のスペクトルパワーの量子化値を「１」ずつ増減させたものと、当該補正候補のマスキング閾値の量子化値とを比較する。そして、補正部３０７は、この比較において補正候補のスペクトルパワーの量子化値が、当該補正候補のマスキング閾値の量子化値より小さい範囲で、かつ、ハフマン符号化した際の符号化ビット数が少なくなった場合の値を補正量として決定し、決定された補正量に基づいて補正候補のセグメントのスペクトルパワーの量子化値を補正する。その後、補正部３０７は、補正されたスペクトルパワーの量子化値を第一符号化部３０９に送信する。【０１１９】
［実施例３に係るビットストリーム生成処理のフローチャート］
次に、図１０を用いて、実施例３に係るビットストリーム生成処理を説明する。図１０は、実施例３に係るビットストリーム生成処理を示すフローチャートである。なお、図１０において、ステップＳ１００１〜ステップＳ１００７は、図６に示したステップＳ６０１〜ステップＳ６０７と同様であり、また、ステップＳ１０１７〜ステップＳ１０２１は、図６に示したステップＳ６１０〜ステップＳ６１４と同様となるのでその説明を省略する。なお、ここでは、ステップＳ１００６において算出された補正候補のマスキング閾値の量子化値を「Ｍｑ」として説明する。【０１２０】
図１０に示すように、ステップＳ１００１〜ステップＳ１００７により補正候補を探索されたＳＢＲ符号器３００は、探索された補正前の補正候補となる帯域についてスペクトルパワーを量子化する（ステップＳ１００８）。具体的には、ＳＢＲ符号器３００は、探索した補正前の補正候補となる帯域について、スペクトルパワーを量子化（ディジタル化）する。例えば、補正候補の量子化値は、「ｑ（ｔ０，ｆ１）」とし、補正候補に隣接するセグメントは、「ｑ（ｔ０，ｆ０）」および「ｑ（ｔ０，ｆ２）」とする。但し、補正候補に隣接するセグメントの量子化値の大小は、ｑ（ｔ０，ｆ０）＜ｑ（ｔ０，ｆ２）とする。【０１２１】
そして、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補の帯域を、ハフマン符号化して符号化ビット数を計算する（ステップＳ１００９）。具体的には、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補の帯域について、データの欠落がまったく起こらない可逆圧縮であるハフマン符号化をして、当該補正候補の帯域の符号化ビット数を計算する。ここでは、符号化ビット数の計算結果を「ｂ」とする。【０１２２】
続いて、ＳＢＲ符号器３００は、補正候補の量子化値「ｑ（ｔ０，ｆ１）」を「ｑＡ＝ｑｎｅｗ＝ｑ（ｔ０，ｆ１）」として（ステップＳ１０１０）、補正候補のスペクトルパワーを修正する（ステップＳ１０１１）。具体的には、ＳＢＲ符号器３００は、補正候補の量子化値「ｑ（ｔ０，ｆ１）」を、「ｑＡ＝ｑｎｅｗ」として、当該補正候補の量子化値「ｑＡ」のスペクトルパワーを修正する（「ｑＡ＝ｑＡ＋Δｑ」）。なお、Δｑは、１ずつ修正してもよいし、Ｎ（整数）ずつ修正してもよいし、当該Δｑの変換量は、正方向だけでなく負方向でもよい。【０１２３】
その後、ＳＢＲ符号器３００は、修正された補正候補の量子化値「ｑＡ」と、マスキング閾値の量子化値「Ｍｑ」とを比較して、補正候補の量子化値「ｑＡ」がマスキング閾値の量子化値「Ｍｑ」より小さい（ｑＡ＜Ｍｑ）場合に（ステップＳ１０１２肯定）、補正候補についてスペクトルパワーを量子化する（ステップＳ１０１３）。【０１２４】
具体的には、ＳＢＲ符号器３００は、修正された補正候補の量子化値「ｑＡ」と、ステップＳ１００６において算出された補正候補のマスキング閾値の量子化値「Ｍｑ」とを比較して、補正候補の量子化値「ｑＡ」が算出された補正候補のマスキング閾値の量子化値「Ｍｑ」より小さい場合に（ｑＡ＜Ｍｑ）、補正候補が可聴領域以下となり補正が必要となるので、当該補正候補についてスペクトルパワーを量子化する。この場合、補正候補のスペクトルパワーの量子化値は、量子化値の領域で補正候補を探索しているため「ｑＡ」と等しい。なお、ＳＢＲ符号器３００は、ステップＳ１０１２において、補正候補の量子化値「ｑＡ」がマスキング閾値の量子化値「Ｍｑ」より大きい場合に（ステップＳ１０１２否定）、ステップＳ１０１７の処理を行う。【０１２５】
そして、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補のセグメントを、ハフマン符号化して符号化ビット数を計算する（ステップＳ１０１４）。具体的には、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補のセグメントについて、データの欠落がまったく起こらない可逆圧縮であるハフマン符号化をして、当該補正候補のセグメントの符号化ビット数「ｂＡ」を計算する。【０１２６】
続いて、ＳＢＲ符号器３００は、補正候補について、当該補正候補の修正前の符号化ビット数「ｂ」と、当該補正候補の修正後の符号化ビット数「ｂＡ」とを比較して、修正前「ｂ」が修正後「ｂＡ」より大きい（ｂ＞ｂＡ）場合に（ステップＳ１０１５肯定）、補正候補の帯域の補正量を保存する（ステップＳ１０１６）。【０１２７】
具体的には、ＳＢＲ符号器３００は、補正候補について、当該補正候補の修正前の符号化ビット数「ｂ」と、当該補正候補の修正後の符号化ビット数「ｂＡ」とを比較して、修正前「ｂ」が修正後「ｂＡ」より大きい場合に（ｂ＞ｂＡ）、当該補正候補の帯域について、「ｂＡ」として保存する。ここでは、「ｑｎｅｗ＝ｑＡ」「ｂ＝ｂＡ」として保存する。なお、ＳＢＲ符号器３００は、ステップＳ１０１５において、修正前「ｂ」が修正後「ｂＡ」より小さい場合にステップＳ１０１１から処理し、ステップＳ１０１６の処理が完了した場合にも同様にステップＳ１０１１から処理することとなる。【０１２８】
［実施例３による効果］
このように、実施例３によれば、算出されたマスキング閾値に基づいて、分割された各セグメントのスペクトルパワーの量子化値が平滑化する補正量を算出し、算出された補正量を用いて検出されたセグメントのスペクトルパワーを補正するので、補正後に実施されるハフマン符号化において符号化される量子化値の差分を少なくすることが可能である。
【実施例４】
【０１２９】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、（１）符号化手法、（２）補正手法、（３）システム構成、（４）プログラムにそれぞれ区分けして異なる実施例を説明する。【０１３０】
（１）符号化手法
例えば、実施例１〜３では、周波数方向の符号化をする場合について説明したが、本発明はこれに限定されるものではなく、例えば、時間方向に隣接するグリッドの符号化にも適用することができる。【０１３１】
（２）補正手法
例えば、実施例１〜３では、隣接するセグメントのスペクトルパワーや自身のセグメント（補正候補）のスペクトルパワーから量子化値を算出して補正量としたが、本発明はこれに限定されるものではなく、この補正量を決定するのに際して、マスキング閾値の範囲内で補正量や量子化値を決定したり、マスキング閾値の範囲内で最もビット数が少なくなるように補正量や量子化値を決定したりするようにしてもよい。このようにすることで、補正に要するビット数を最小限にとどめることが可能であり、また、補正後に実施されるハフマン符号化において符号化される量子化値の差分を小さくすることが可能である。【０１３２】
（３）システム構成
また、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメタを含む情報（例えば、図２に示す「マスキング閾値」など）については、特記する場合を除いて任意に変更することができる。【０１３３】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、例えば、補正候補探索部３０６および補正部３０７を、補正部として統合するなど、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。【０１３４】
（４）プログラム
なお、本実施例で説明したオーディオ符号化装置は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図１１を用いて、上記の実施例に示したオーディオ符号化装置と同様の機能を有するオーディオ符号化プログラムを実行するコンピュータの一例を説明する。図１１は、オーディオ符号化プログラムを実行するコンピュータを示す図である。【０１３５】
図１１に示すように、オーディオ符号化装置としてのコンピュータ１１０は、キーボード１２０、ＨＤＤ１３０、ＣＰＵ１４０、ＲＯＭ１５０、ＲＡＭ１６０およびディスプレイ１７０をバス１８０などで接続して構成される。【０１３６】
ＲＯＭ１５０には、上記の実施例１に示したオーディオ符号化装置１００と同様の機能を発揮するオーディオ符号化プログラム、つまり、図１１に示すように分析フィルタプログラム１５０ａと、時間／周波数グリッド生成プログラム１５０ｂと、パワー算出プログラム１５０ｃと、補助情報算出プログラム１５０ｄと、マスキング閾値算出プログラム１５０ｅと、補正候補探索プログラム１５０ｆと、補正プログラム１５０ｇと、第一量子化プログラム１５０ｈと、第一符号化プログラム１５０ｉと、第二量子化プログラム１５０ｊと、第二符号化プログラム１５０ｋと、多重化プログラム１５０ｌとが、あらかじめ記憶されている。なお、これらのプログラム１５０ａ〜１５０ｌについては、図１に示したオーディオ符号化装置の各構成要素と同様、適宜統合または、分散してもよい。【０１３７】
そして、ＣＰＵ１４０がこれらのプログラム１５０ａ〜プログラム１５０ｌをＲＯＭ１５０から読み出して実行することで、図１１に示すように、プログラム１５０ａ〜プログラム１５０ｌは、分析フィルタプロセス１４０ａと、時間／周波数グリッド生成プロセス１４０ｂと、パワー算出プロセス１４０ｃと、補助情報算出プロセス１４０ｄと、マスキング閾値算出プロセス１４０ｅと、補正候補探索プロセス１４０ｆと、補正プロセス１４０ｇと、第一量子化プロセス１４０ｈと、第一符号化プロセス１４０ｉと、第二量子化プロセス１４０ｊと、第二符号化プロセス１４０ｋと、多重化プロセス１４０ｌとして機能するようになる。なお、プロセス１４０ａ〜プロセス１４０ｌは、図１に示した、分析フィルタ部３０１と、時間／周波数グリッド生成部３０２と、パワー算出部３０３と、補助情報算出部３０４と、マスキング閾値算出部３０５と、補正候補探索部３０６と、補正部３０７と、第一量子化部３０８と、第一符号化部３０９と、第二量子化部３１０と、第二符号化部３１１と、多重化部３１２とにそれぞれ対応する。【０１３８】
そして、ＣＰＵ１４０はＲＡＭ１６０に記録されたデータに基づいてオーディオ符号化プログラムを実行する。【０１３９】
なお、上記した各プログラム１５０ａ〜１５０ｌについては、必ずしも最初からＲＯＭ１５０に記憶させておく必要はなく、例えば、コンピュータ１１０に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」、またはコンピュータ１１０の内外に備えられるＨＤＤなどの「固定用の物理媒体」、さらには公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ１１０に接続される「他のコンピュータ（またはサーバ）」などに各プログラムを記憶させておき、コンピュータ１１０がこれから各プログラムを読み出して実行するようにしてもよい。
【産業上の利用可能性】
【０１４０】
以上のように、本発明に係る符号化装置、符号化方法および符号化プログラムは、入力信号の性質に応じてスペクトルパワーを補正する場合に有用であり、特に、ＳＢＲ符号化に使用されるビット数を削減することに適する。
【図１】
2009004727.tif 000003
【図２】
2009004727.tif 000004
【図３】
2009004727.tif 000005
【図４】
2009004727.tif 000006
【図５】
2009004727.tif 000007
【図６】
2009004727.tif 000008
【図７】
2009004727.tif 000009
【図８】
2009004727.tif 000010
【図９】
2009004727.tif 000011
【図１０】
2009004727.tif 000012
【図１１】
2009004727.tif 000013
【図１２】
2009004727.tif 000014
【手続補正書】
【提出日】平成21年10月6日(2009.10.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
入力信号を一定のサンプルからなるフレームに分割し、前記入力信号における高域の周波数帯域を符号化して高域符号化データを生成する符号化装置であって、
前記入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割するセグメント分割手段と、
前記セグメント分割手段により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出する閾値算出手段と、
前記閾値算出手段により算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するパワー補正手段と、
を備えたことを特徴とする符号化装置。
【請求項２】
前記パワー補正手段は、前記検出されたセグメントと隣接するセグメントのスペクトルパワーから、前記検出されたセグメントのスペクトルパワーを補正する補正量を算出し、算出された補正量を前記検出されたセグメントのスペクトルパワーに付加することで、当該スペクトルパワーを補正することを特徴とする請求項１に記載の符号化装置。
【請求項３】
前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値に基づいて、前記セグメント分割手段により分割された各セグメントのスペクトルパワーが平滑化する補正量を算出し、算出された補正量を前記検出されたセグメントのスペクトルパワーに付加することで、当該スペクトルパワーを補正することを特徴とする請求項２に記載の符号化装置。
【請求項４】
前記パワー補正手段は、前記検出されたセグメントと隣接するセグメントのスペクトルパワーから、前記検出されたセグメントのスペクトルパワーを補正する補正量として量子化値を算出し、算出された量子化値を用いて前記検出されたセグメントのスペクトルパワーを補正することを特徴とする請求項１に記載の符号化装置。
【請求項５】
前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値に基づいて、前記セグメント分割手段により分割された各セグメントのスペクトルパワーの量子化値が平滑化する補正量を算出し、算出された補正量を用いて前記検出されたセグメントのスペクトルパワーを補正することを特徴とする請求項１に記載の符号化装置。
【請求項６】
入力信号を一定のサンプルからなるフレームに分割し、前記入力信号における高域の周波数帯域を符号化して高域符号化データを生成する符号化装置の符号化方法であって、
前記入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割するセグメント分割工程と、
前記セグメント分割工程により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出する閾値算出工程と、
前記閾値算出工程により算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するパワー補正工程と、
を含んだことを特徴とする符号化方法。
【請求項７】
入力信号を一定のサンプルからなるフレームに分割し、前記入力信号における高域の周波数帯域を符号化して高域符号化データを生成する方法をコンピュータに実行させる符号化プログラムであって、
前記入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割するセグメント分割手順と、
前記セグメント分割手順により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出する閾値算出手順と、
前記閾値算出手順により算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するパワー補正手順と、
をコンピュータに実行させることを特徴とする符号化プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、入力信号を一定のサンプルからなるフレームに分割し、入力信号における高域の周波数帯域を符号化して高域符号化データを生成する符号化装置、符号化方法および符号化プログラムに関する。
【背景技術】
【０００２】
従来より、音声や音楽などのオーディオ信号を圧縮または伸張するのにオーディオ符号化技術が多く利用されている。このようなオーディオ符号化技術では、圧縮効率を上げるために、つまり、符号化後の符号化ビット数を削減するため様々な手法が実施されている一方で、符号化後の音質劣化が問題となっている。
【０００３】
そこで、この符号化後の音質劣化を防止する様々な技術が開示されている（特許文献１参照）。また、最近では、音質劣化を防止しつつ、高い圧縮率を実現することができるＭＰＥＧ−２で用いられるＨＥ−ＡＡＣ（High−Efficiency  Advanced  Audio  Coding）符号化方式が利用されている（以下、「ＨＥ−ＡＡＣ符号化方式」と表記する）。
【０００４】
このＨＥ−ＡＡＣ技術を用いたＨＥ−ＡＡＣ符号化装置とは、入力された音声信号の高域側周波成分を符号化するＳＢＲ（Spectral  Band  Replication）部と、低域側周波数成分を符号化するＡＡＣ（Advanced  Audio  Coding）部とを備える符号化装置である。
【０００５】
具体的には、このＨＥ−ＡＡＣ符号化装置は、ＳＢＲ符号化部により高域成分が符号化された高域成分符号化データが生成され、ＡＡＣ符号化部により低域成分が符号化された低域成分符号化データが生成される。そして、ＨＥ−ＡＡＣ符号化装置は、生成された高域成分符号化データおよび低域成分符号化データを多重化し、ＨＥ−ＡＡＣビットストリームを生成する。
【０００６】
図１２は、従来の符号化装置の構成を示す機能ブロック図である。図１２に示すように、この符号化装置は、ＳＢＲ符号器と、ＡＡＣ符号器と、ビットストリーム生成部とを備えて構成される。
【０００７】
ＡＡＣ符号器は、入力信号を周波数領域に変換した領域で符号化する技術であり、入力信号の低域の周波数帯域信号から低域成分符号化データを生成する。具体的には、ＡＡＣ符号器は、入力信号をダウンサンプリングして低域入力信号を取得し、取得した低域入力信号を一定の間隔で分割し、分割した間隔ごとの周波数帯域信号を符号化したＡＡＣ符号化情報を生成する。
【０００８】
ＳＢＲ符号器は、入力された入力信号の低域成分から高域成分を複製するための情報を符号化することにより情報の圧縮を行う。具体的には、ＳＢＲ符号器は、入力信号の性質（信号変化の大小）に応じて、入力信号を時間および周波数方向に分割したセグメント区間（時間／周波数グリッド）を生成する。そして、ＳＢＲ符号器は、生成した時間／周波数グリッド内のスペクトルパワーと低域成分から複製できない情報をそれぞれ算出して量子化する。その後、ＳＢＲ符号器は、さらに隣接グリッドの量子化値の差分情報をハフマン符号化し、入力信号の高域周波数成分を符号化したＳＢＲ符号化情報を生成する。
【０００９】
ＨＥ−ＡＡＣ符号化装置は、ＳＢＲ符号器により生成されたＳＢＲ符号化情報とＡＡＣ符号器により生成されたＡＡＣ符号化情報とを用いて、高域成分符号化情報および低域成分符号化情報を多重化し、ＨＥ−ＡＡＣビットストリームを生成する。
【００１０】
【特許文献１】特開２００１−２８２２８８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、従来のＨＥ−ＡＡＣ符号化方式を用いた符号化装置では、ＳＢＲ符号化に使用されるビット数を削減することができないという課題があった。
【００１２】
従来のＨＥ−ＡＡＣ符号化装置では、ＨＥ−ＡＡＣにおいて利用できる全体の符号化ビット数がビットレートにより決定される。つまり、ＨＥ−ＡＡＣ符号化装置では、ＡＡＣ符号器で利用できるビット数とＳＢＲ符号器で利用できるビット数の合計で与えられる。したがって、ＨＥ−ＡＡＣ符号化装置は、低ビットレートの場合は、利用できる全体の符号化ビット数が少ないという性質がある。
【００１３】
また、ＡＡＣ符号器は、符号化における量子化誤差と符号化ビット数とを任意に制御することが可能である。この時、ＡＡＣ符号器において量子化誤差と符号化ビット数とは、トレードオフの関係にある。つまり、ＡＡＣ符号器は、ビット数が少ないと量子化誤差が増大して音質が劣化し、逆に、ビット数が多いと量子化誤差が減少して音質が向上する。
【００１４】
これに対して、ＳＢＲ符号化では、ＳＢＲで利用するビット数を制限する方法が規格になく、入力信号の性質に応じて符号化ビット数が変動する性質がある。つまり、ＳＢＲ符号化に用いられたビット数が増加すると、ＡＡＣ符号化に利用できるビット数が減少するため、ＡＡＣ符号化における量子化誤差が増大する。この結果、従来のＨＥ−ＡＡＣ符号化装置では、高域成分符号化データと低域成分符号化データとを復号化して音声出力した場合に、全体として音声の劣化が生じてしまう。
【００１５】
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、ＳＢＲ符号化に使用されるビット数を削減することが可能である符号化装置を提供することを目的とする。
【課題を解決するための手段】
【００１６】
上述した課題を解決し、目的を達成するため、本発明は、入力信号を一定のサンプルからなるフレームに分割し、前記入力信号における高域の周波数帯域を符号化して高域符号化データを生成する符号化装置であって、前記入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割するセグメント分割手段と、前記セグメント分割手段により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出する閾値算出手段と、前記閾値算出手段により算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するパワー補正手段と、を備えたことを特徴とする。
【００１７】
また、本発明は、上記の発明において、前記セグメント分割手段により分割されたセグメントごとのスペクトルパワーから、当該スペクトルパワーの特徴を示す特徴パラメタを、分割されたセグメントごとに算出するパラメタ算出手段と、前記パワー補正手段により補正されたセグメントのスペクトルパワーと、前記パラメタ算出手段により算出された特徴パラメタとを符号化する符号化手段とをさらに備えたことを特徴とする。
【００１８】
また、本発明は、上記の発明において、前記パワー補正手段は、前記検出されたセグメントと隣接するセグメントのスペクトルパワーから、前記検出されたセグメントのスペクトルパワーを補正する補正量を算出し、算出された補正量を前記検出されたセグメントのスペクトルパワーに付加することで、当該スペクトルパワーを補正することを特徴とする。
【００１９】
また、本発明は、上記の発明において、前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値に基づいて、前記セグメント分割手段により分割された各セグメントのスペクトルパワーが平滑化する補正量を算出し、算出された補正量を前記検出されたセグメントのスペクトルパワーに付加することで、当該スペクトルパワーを補正することを特徴とする。
【００２０】
また、本発明は、上記の発明において、前記パワー補正手段は、前記検出されたセグメントと隣接するセグメントのスペクトルパワーから、前記検出されたセグメントのスペクトルパワーを補正する補正量として量子化値を算出し、算出された量子化値を用いて前記検出されたセグメントのスペクトルパワーを補正することを特徴とする。
【００２１】
また、本発明は、上記の発明において、前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値に基づいて、前記セグメント分割手段により分割された各セグメントのスペクトルパワーの量子化値が平滑化する補正量を算出し、算出された補正量を用いて前記検出されたセグメントのスペクトルパワーを補正することを特徴とする。
【００２２】
また、本発明は、上記の発明において、前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値の範囲内で、前記補正量を算出することを特徴とする。
【００２３】
また、本発明は、上記の発明において、前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値の範囲内で、前記量子化値を算出することを特徴とする。
【００２４】
また、本発明は、上記の発明において、前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値の範囲内で、最終的に生成される高域側符号化データの符号化ビット数が少なくなるように前記補正量を算出することを特徴とする。
【００２５】
また、本発明は、上記の発明において、前記パワー補正手段は、前記閾値算出手段により算出されたマスキング閾値の範囲内で、最終的に生成される高域側符号化データの符号化ビット数が少なくなるように前記量子化値を算出することを特徴とする。
【００２６】
また、本発明は、上記の発明において、前記閾値算出手段は、前記セグメント分割手段により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーから時間方向、周波数方向、時間方向および周波数方向のいずれかのマスキング閾値を算出することを特徴とする。
【００２７】
また、本発明は、上記の発明において、入力信号を一定のサンプルからなるフレームに分割し、前記入力信号における高域の周波数帯域を符号化して高域符号化データを生成する符号化装置の符号化方法であって、前記入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割するセグメント分割工程と、前記セグメント分割工程により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出する閾値算出工程と、前記閾値算出工程により算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するパワー補正工程と、を含んだことを特徴とする。
【００２８】
また、本発明は、上記の発明において、入力信号を一定のサンプルからなるフレームに分割し、前記入力信号における高域の周波数帯域を符号化して高域符号化データを生成する方法をコンピュータに実行させる符号化プログラムであって、前記入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割するセグメント分割手順と、前記セグメント分割手順により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出する閾値算出手順と、前記閾値算出手順により算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するパワー補正手順と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００２９】
本発明によれば、入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割し、任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出し、算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するので、ＳＢＲ符号化に使用されるビット数を削減することが可能である。
【００３０】
例えば、ＳＢＲ符号化器とＡＡＣ符号化器とから構成されるＨＥ−ＡＡＣ符号化装置を用いた場合、ＳＢＲ符号化器は、入力信号の性質に応じて、入力信号を時間及び周波数方向に分割したセグメント区間（時間/周波数グリッド）を生成し、生成した時間/周波数グリッド内のスペクトルパワーと低域成分から複製できない情報とをそれぞれ算出して量子化するのに際して、聴覚的に聞こえないマスキング閾値以下のスペクトルパワーを補正することで、ハフマン符号化において符号化される量子化値の差分を小さくすることができる。このハフマン符号化では、量子化値の差分が小さいほど短い符号が割り当てられるため、符号化ビット数を少なくすることができる。このようにＳＢＲ符号化で使用されるビット数を削減することができるため、ＡＡＣ符号化で使用できるビット数を多く確保することができる。その結果、ＡＡＣ符号化の量子化誤差が減少するため、ＨＥ−ＡＡＣ符号化装置で符号化される符号化情報全体として、音質を向上させることが可能である。
【００３１】
また、本発明によれば、分割されたセグメントごとのスペクトルパワーから、当該スペクトルパワーの特徴を示す特徴パラメタを、分割されたセグメントごとに算出し、補正されたセグメントのスペクトルパワーと、算出された特徴パラメタとを符号化するので、ＳＢＲ符号化において細かい情報を漏らすことなく符号化することが可能である。
【００３２】
また、本発明によれば、検出されたセグメントと隣接するセグメントのスペクトルパワーから、検出されたセグメントのスペクトルパワーを補正する補正量を算出し、算出された補正量を検出されたセグメントのスペクトルパワーに付加することで、当該スペクトルパワーを補正するので、確実に聴覚的に影響のない範囲に対して補正することが可能である。
【００３３】
また、本発明によれば、算出されたマスキング閾値に基づいて、分割された各セグメントのスペクトルパワーが平滑化する補正量を算出し、算出された補正量を検出されたセグメントのスペクトルパワーに付加することで、当該スペクトルパワーを補正するので、ＳＢＲ符号化に使用されるビット数をさらに削減することが可能である。
【００３４】
また、本発明によれば、検出されたセグメントと隣接するセグメントのスペクトルパワーから、検出されたセグメントのスペクトルパワーを補正する補正量として量子化値を算出し、算出された量子化値を用いて検出されたセグメントのスペクトルパワーを補正するので、ＳＢＲ符号化に使用されるビット数をさらに削減することが可能である。
【００３５】
また、本発明によれば、算出されたマスキング閾値に基づいて、分割された各セグメントのスペクトルパワーの量子化値が平滑化する補正量を算出し、算出された補正量を用いて検出されたセグメントのスペクトルパワーを補正するので、補正後に実施されるハフマン符号化において符号化される量子化値の差分を小さくすることが可能である。
【００３６】
また、本発明によれば、算出されたマスキング閾値の範囲内で、補正量を算出するので、補正に要するビット数を最小限にとどめることが可能である。
【００３７】
また、本発明によれば、算出されたマスキング閾値の範囲内で、量子化値を算出するので、補正に要するビット数を最小限にとどめることが可能である。
【００３８】
また、本発明によれば、算出されたマスキング閾値の範囲内で、最終的に生成される高域符号化データの符号化ビット数が少なくなるように補正量を算出するので、補正後に実施されるハフマン符号化において符号化される量子化値の差分を小さくすることが可能である。
【００３９】
また、本発明によれば、算出されたマスキング閾値の範囲内で、最終的に生成される高域符号化データの符号化ビット数が少なくなるように量子化値を算出するので、補正後に実施されるハフマン符号化において符号化される量子化値の差分を小さくすることが可能である。
【００４０】
また、本発明によれば、任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーから時間方向、周波数方向、時間方向および周波数方向いずれかのマスキング閾値を算出することとしたので、複数の組み合わせを用いて符号化することが可能である。
【発明を実施するための最良の形態】
【００４１】
以下に添付図面を参照して、この発明に係るオーディオ符号化装置の実施例を詳細に説明する。なお、以下では、実施例１に係るオーディオ符号化装置の概要および特徴、オーディオ符号化装置の構成および処理の流れを順に説明し、最後に本実施例による効果を説明する。
【実施例１】
【００４２】
［用語の説明］
まず最初に、本実施例で用いる主要な用語を説明する。本実施例で用いるオーディオ符号化装置とは、入力された入力信号の高域成分を符号化するＳＢＲ符号器（特許請求の範囲に記載の「符号化装置」に対応する。）と、当該入力信号の低域成分を符号化するＡＡＣ符号器とを備えたエンコーダのことである。このオーディオ符号化装置は、ＳＢＲ符号器により生成されたＳＢＲ符号化情報と、ＡＡＣ符号器により生成されたＡＡＣ符号化情報とを多重化して、ＨＥ−ＡＡＣビットストリームを生成する。
【００４３】
また、ＳＢＲ符号器は、入力された入力信号の低域成分から高域成分を複製するための情報を符号化することにより情報の圧縮を行う。具体的には、ＳＢＲ符号器は、入力信号の性質に応じて、入力信号を時間及び周波数方向に分割したセグメント区間（時間/周波数グリッド）を生成する。そして、ＳＢＲ符号器は、生成した時間/周波数グリッド内のスペクトルパワーと低域成分から複製できない情報とをそれぞれ算出して量子化する。その後、ＳＢＲ符号化は、さらに隣接グリッドの量子化値の差分情報をハフマン符号化し、入力信号の高域周波成分を符号化したＳＢＲ符号化情報を生成する。このハフマン符号化は、量子化値の差分が小さいほど少ないビット数で符号化することができる。
【００４４】
また、ＡＡＣ符号器は、入力信号を周波数領域に変換した領域で符号化する技術であり、入力信号の低域の周波数帯域信号から低域符号化データを生成する。具体的には、ＡＡＣ符号器は、入力信号をダウンサンプリングして低域入力信号を取得し、取得した低域入力信号を一定の間隔で分割し、分割した間隔ごとの周波数帯域信号を符号化したＡＡＣ符号化情報を生成する。
【００４５】
ここで、ＳＢＲ符号器とＡＡＣ符号器とで使用されるビット数の関係について説明する。このオーディオ符号化装置では、使用することのできるビット数（例えば、Ｚビット）が決められている。また、ＡＡＣ符号化は、ＳＢＲ符号化の後に、残りビット数（例えば、Ｙビット）を用いて高域成分のＡＡＣ符号化情報を生成する。つまり、ＳＢＲ符号化において使用されたビット数が「Ｘビット」であったとすると、ＡＡＣ符号化で使用することのできるビット数「Ｙビット」は「Ｙ＝Ｚ−Ｘ」となる。そのため、ＳＢＲ符号化において使用されたビット数が多くなると、ＡＡＣ符号化で使用することのできるビット数が少なくなり、ＡＡＣ符号器で符号化された符号化データに歪みが発生する。
【００４６】
また、オーディオ符号化装置からＨＥ−ＡＡＣビットストリームを受信した復号化装置（デコーダ）では、受信したＡＡＣ符号化情報を復号して低域データを取得し、ＳＢＲ符号化情報を復号して高域データ生成に必要な制御信号を取得し、取得された低域データと制御信号とから高域データを生成する。
【００４７】
このように、デコーダは、ＡＡＣのデコード結果（低域成分）より、ＳＢＲ符号化情報を用いて高域成分を生成するので、ＡＡＣ（低域成分）のスペクトル歪がＳＢＲ（高域成分）へ伝播することで全体のスペクトル歪が増大し、音質が劣化する。そのため、ＳＢＲの符号化ビット数をいかに少なくし、ＡＡＣ符号化のスペクトル歪みを軽減するかが重要である。
【００４８】
［オーディオ符号化装置の概要および特徴］
次に、実施例１に係るオーディオ符号化装置の概要および特徴を説明する。実施例１に係るオーディオ符号化装置は、入力された入力信号の高域成分を符号化してＳＢＲ符号化情報（高域符号化データ）を生成するＳＢＲ符号器と、入力された入力信号の低域成分を符号化してＡＡＣ符号化情報（低域符号化データ）を生成するＡＡＣ符号器と、生成されたＳＢＲ符号化情報およびＡＡＣ符号化情報を多重化するビットストリーム生成部とから構成される。
【００４９】
このような構成において、実施例１に係るオーディオ符号化装置は、上記したように、入力信号を一定のサンプルからなるフレームに分割し、入力信号における高域の周波数帯域を符号化して高域符号化データを生成することを概要とするものであり、特に、ＳＢＲ符号化に使用されるビット数を削減することが可能である点に主たる特徴がある。
【００５０】
つまり、実施例１に係るオーディオ符号化装置は、入力信号の性質に応じて、入力信号を時間及び周波数方向に分割したセグメント区間（時間/周波数グリッド）を生成し、生成した時間/周波数グリッド内のスペクトルパワーと低域成分から複製できない情報とをそれぞれ算出して量子化するのに際して、聴覚的に聞こえないマスキング閾値以下のスペクトルパワーを補正することで、ハフマン符号化において符号化される量子化値の差分を小さくすることができ、ハフマン符号化において、ビット数の少ない符号で符号化される。この結果、ＳＢＲ符号化に使用されるビット数を削減することが可能である。
【００５１】
［オーディオ符号化装置の構成］
次に、図１を用いて、実施例１に係るオーディオ符号化装置の構成を示すブロック図を説明する。図１は、実施例１に係るオーディオ符号化装置の構成を示すブロック図である。図１に示すように、オーディオ符号化装置１００は、ＡＡＣ符号器２００、ＳＢＲ符号器３００およびビットストリーム生成部４００から構成される。
【００５２】
（ＡＡＣ符号器）
ＡＡＣ符号器２００は、入力信号が入力された場合に、当該入力信号をダウンサンプリングし、ダウンサンプリングして得られる低域成分をエンコードしてＡＡＣ出力としてＡＡＣ符号化情報を出力する。
【００５３】
具体的には、ＡＡＣ符号器２００は、オーディオ符号化装置１００に入力信号が入力された場合に、当該入力信号を、より低い周波数でサンプリングするダウンサンプリングした信号をＡＡＣ符号化し、ＡＡＣ出力としてＡＡＣ符号化情報を後述するビットストリーム生成部４００に送信する。
【００５４】
（ＳＢＲ符号器の構成）
図１に示すように、ＳＢＲ符号器３００は、分析フィルタ部３０１、時間／周波数グリッド生成部３０２、パワー算出部３０３、補助情報算出部３０４、マスキング閾値算出部３０５、補正候補探索部３０６、補正部３０７、第一量子化部３０８、第一符号化部３０９、第二量子化部３１０、第二符号化部３１１および多重化部３１２から構成される。
【００５５】
分析フィルタ部３０１は、入力信号が入力された場合に、当該入力信号を周波数領域のスペクトル信号に変換する。具体的には、分析フィルタ部３０１は、オーディオ符号化装置１００に入力信号が入力された場合に、入力された入力信号の時間周波数スペクトルを算出して周波数領域のスペクトル信号に変換する。分析フィルタ部３０１は、この変換によりＳＢＲ符号器３００で符号化されることとなる入力信号の高域成分を抽出する。そして、分析フィルタ部３０１は、変換されたスペクトル信号を、後述する時間／周波数グリッド生成部３０２、パワー算出部３０３および補助情報算出部３０４に送信する。
【００５６】
時間／周波数グリッド生成部３０２は、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割する。具体的には、時間／周波数グリッド生成部３０２は、分析フィルタ部３０１により変換されて送信された周波数領域のスペクトル信号を、時間および周波数方向に任意のセグメントに分割する。そして、時間／周波数グリッド生成部３０２は、分割したセグメントのセグメント分割情報を生成して、後述するパワー算出部３０３、補助情報算出部３０４、マスキング閾値算出部３０５、補正候補探索部３０６、補正部３０７および多重化部３１２に送信する。
【００５７】
パワー算出部３０３は、任意の数に分割されたセグメントごとにスペクトルパワーを算出する。具体的には、パワー算出部３０３は、時間／周波数グリッド生成部３０２により任意の数に分割されて送信されたセグメントごとに、スペクトルパワーを算出する。そして、パワー算出部３０３は、算出されたスペクトルパワーを、後述するマスキング閾値算出部３０５、補正候補探索部３０６および補正部３０７に送信する。
【００５８】
補助情報算出部３０４は、任意の数に分割されたセグメントごとにスペクトルの特徴パラメタを算出する。具体的には、補助情報算出部３０４は、時間／周波数グリッド生成部３０２により任意の数に分割されて送信されたセグメントごとに、時間周波数スペクトルおよび分解能情報に基づいて、低域成分から複製できない情報であるスペクトルの特徴パラメタを算出する。そして、補助情報算出部３０４は、算出されたパラメタを、後述する第二量子化部３１０に送信する。
【００５９】
マスキング閾値算出部３０５は、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出する。具体的には、マスキング閾値算出部３０５は、パワー算出部３０３により算出されて送信された各セグメントごとのスペクトルパワーから、静寂時に聴覚が検知できる音の最小レベルと、隣接するスペクトルパワーが大きいために聴覚的に聞こえなくなる音のレベルとを合わせたマスキング閾値を算出する。そして、マスキング閾値算出部３０５は、算出されたマスキング閾値を、後述する補正候補探索部３０６に送信する。
【００６０】
ここで、図２に示すように、マスキング閾値とは、静寂時に聴覚が検知できる音の最小レベルである静的マスキング閾値（最小可聴域）と、ある音（例えば、隣接するスペクトルパワー）のレベルが大きいために、他の音がマスクされて聞こえなくなる音のレベルである動的マスキング閾値とをマージしたものである。このマスキング閾値は、静的マスキング閾値と動的マスキング閾値とを合わせた閾値であり、例えば、図２に示す太線の部分となる。なお、図２は、マスキング閾値を説明するための図である。
【００６１】
ここで、図３を用いて、動的マスキング閾値の算出方法を説明する。図３は、動的マスキング閾値の算出方法を説明するための図である。図３に示すように、ｆ０の音（スペクトルパワー＝Ｅ０）が、ｆ０（自身）に与えるマスキング閾値（ｄｔｈｒ０）は、「ｄｔｈｒ０＝ｗ（ｆ０）Ｅ０」である。また、ｆ０の音（スペクトルパワー＝Ｅ０）が、ｆ１（ｆ１＜ｆ０）に与えるマスキング閾値（ｄｔｈｒ１）は、「ｄｔｈｒ１＝ｄｔｈｒ０＋ＳＬ（ｆ１−ｆ０）」である。また、ｆ０の音（スペクトルパワー＝Ｅ０）が、ｆ２（ｆ２＞ｆ０）に与えるマスキング閾値（ｄｔｈｒ２）は、「ｄｔｈｒ２＝ｄｔｈｒ０＋ＳＨ（ｆ２−ｆ０）」である。ここで、ｗ（ｆ）、ＳＬおよびＳＨは、重み係数であり、ｗ（ｆ）は、各周波数で一律でもよいし、一律ではなく変えてもよいものとする。
【００６２】
次に、図４を用いて、動的マスキング閾値の算出を説明する。図４は、動的マスキング閾値の算出を説明するための図である。図４に示すように、まず、ｆ０、ｆ１およびｆ２の音（スペクトルパワーＰ０、Ｐ１およびＰ２）が自身に与えるマスキング閾値を求める。具体的に例を挙げて説明すると、「ｄｔｈｒ０＝ｗ（ｆ０）Ｐ０」、「ｄｔｈｒ１＝ｗ（ｆ１）Ｐ１」、「ｄｔｈｒ２＝ｗ（ｆ２）Ｐ２」となる。そして、ｆ０の音（パワー「Ｐ０」、マスキング「Ｍ０」）が、ｆ１の帯域に与えるマスキング閾値「ｄｔｈｒ（ｆ０，ｆ１）」を求める。具体的に例を挙げて説明すると、「ｄｔｈｒ（ｆ０，ｆ１）＝ｄｔｈｒ０＋ＳＨ（ｆ０−ｆ１）」となる。続いて、ｆ２の音（パワー「Ｐ２」、マスキング「Ｍ２」）が、ｆ１の帯域に与えるマスキング閾値「ｄｔｈｒ（ｆ２，ｆ１）」を求める。具体的に例を挙げて説明すると、「ｄｔｈｒ（ｆ２，ｆ１）＝ｄｔｈｒ２＋ＳＬ（ｆ２−ｆ１）」となる。この結果、Ｍ１、Ｍ（ｆ０，ｆ１）およびＭ（ｆ２，ｆ１）の最大値が、ｆ１における新しい動的マスキング閾値となる。具体的には、「ｄｔｈｒＡ１＝ｍａｘ（ｄｈｔｒ１，ｄｔｈｒ（ｆ０、ｆ１），ｄｔｈｒ（ｆ２，ｆ１））」となる。なお、上記した同様の手順により、全帯域について新しい動的マスキング閾値を求めることとなる。
【００６３】
次に、図５を用いて、マスキング閾値の算出を説明する。図５は、マスキング閾値の算出を説明するための図である。図５に示すように、まず、ｆ０、ｆ１およびｆ２の動的マスキングと静的マスキングとの大小を比較する。具体的に例を挙げて説明すると、ｆ０、ｆ１およびｆ２の動的マスキング閾値「ｄｔｈｒＡ０、ｄｔｈｒＡ１およびｄｔｈｒＡ２」と、ｆ０、ｆ１およびｆ２の静的マスキング閾値「ｑｔｈｒ０、ｑｔｈｒ１およびｑｔｈｒ２」との大小を比較する。そして、上記した動的マスキングと静的マスキングとの大きいほうが、その帯域のマスキング閾値となる。具体的に例を挙げて説明すると、Ｍ０＝ｍａｘ（ｑｔｈｒ０，ｄｔｈｒＡ０）、Ｍ１＝ｍａｘ（ｑｔｈｒ１，ｄｔｈｒＡ１）およびＭ２＝ｍａｘ（ｑｔｈｒ２，ｄｔｈｒＡ２）となる。なお、マスキング閾値は、動的マスキングのみを利用してもよいし、静的マスキングのみを利用してもよい。
【００６４】
補正候補探索部３０６は、算出されたマスキング閾値以下において、補正候補となる帯域を探索する。具体的には、補正候補探索部３０６は、マスキング閾値算出部３０５により算出されて送信されたマスキング閾値以下において、当該マスキング閾値とセグメントのスペクトルパワーとを比較して得られるセグメントを探索する。そして、補正候補探索部３０６は、探索されたセグメントを補正候補とする。その後、補正候補探索部３０６は、探索された補正候補を、後述する補正部３０７に送信する。
【００６５】
補正部３０７は、探索された補正候補となる帯域について、マスキング閾値に基づいてスペクトルパワーの補正量を決定し、決定された補正量に基づいてセグメントのスペクトルパワーを補正する。
【００６６】
具体的には、補正部３０７は、補正候補探索部３０６により探索されて送信された補正候補となる帯域について、当該補正候補のセグメントのマスキング閾値と、当該補正候補に隣接するセグメントのスペクトルパワーとを比較する。そして、補正部３０７は、この比較においてマスキング閾値が補正候補に隣接するセグメントのスペクトルパワー以上である帯域のスペクトルパワーを補正量として決定し、決定された補正量に基づいて補正候補のセグメントのスペクトルパワーを補正する。その後、補正部３０７は、補正されたスペクトルパワーを、後述する第一量子化部３０８に送信する。
【００６７】
第一量子化部３０８は、補正部３０７により補正されたスペクトルパワーを量子化する。そして、第一量子化部３０８は、量子化されたスペクトルパワーを、後述する第一符号化部３０９に送信する。
【００６８】
第一符号化部３０９は、量子化されたスペクトルパワーを符号化する。具体的には、第一符号化部３０９は、第一量子化部３０８により量子化されて送信されたスペクトルパワーを一定の規則に基づいて圧縮する符号化を行う。そして、第一符号化部３０９は、符号化されたスペクトルパワーを、後述する多重化部３１２に送信する。
【００６９】
第二量子化部３１０は、補助情報算出部３０４により算出された低域成分から複製できない情報であるスペクトルの特徴パラメタを量子化する。そして、第二量子化部３１０は、量子化された特徴パラメタを、後述する第二符号化部３１１に送信する。
【００７０】
第二符号化部３１１は、量子化された特徴パラメタを符号化する。具体的には、第二符号化部３１１は、第二量子化部３１０により量子化されて送信された特徴パラメタを一定の規則に基づいて圧縮する符号化を行う。そして、第二符号化部３１１は、符号化された特徴パラメタを、後述する多重化部３１２に送信する。
【００７１】
多重化部３１２は、セグメント分割情報と、符号化されたスペクトルパワーと、符号化された特徴パラメタとを多重化する。具体的には、多重化部３１２は、時間／周波数グリッド生成部３０２により生成されて送信されたセグメントの分割情報であるセグメント分割情報と、第一符号化部３０９により符号化されて送信されたスペクトルパワーと、第二符号化部３１１により符号化されて送信された特徴パラメタとを多重化する。そして、多重化部３１２は、多重化されたセグメント分割情報と、符号化されたスペクトルパワーと、符号化された特徴パラメタとをＳＢＲ出力としてＳＢＲ符号化情報を出力し、後述するビットストリーム生成部４００に送信する。
【００７２】
オーディオ符号化装置１００のビットストリーム生成部４００は、出力されたＡＡＣ符号化情報とＳＢＲ符号化情報とを多重化してビットストリームを生成する。具体的には、オーディオ符号化装置１００のビットストリーム生成部４００は、ＡＡＣ符号器２００およびＳＢＲ符号器３００により出力されたＡＡＣ符号化情報およびＳＢＲ符号化情報を多重化してＨＥ−ＡＡＣビットストリームを生成する。
【００７３】
［実施例１に係るビットストリーム生成処理のフローチャート］
次に、図６および図７を用いて、実施例１に係るビットストリーム生成処理を説明する。図６は、実施例１に係るビットストリーム生成処理を示すフローチャートである。図７は、実施例１に係るパワー補正処理を示す図である。
【００７４】
図７に示すように、オーディオ符号化装置１００のＡＡＣ符号器２００は、入力信号が入力された場合に（ステップＳ６０１肯定）、当該入力信号をダウンサンプリングし、ダウンサンプリングして得られる低域成分をエンコードしてＡＡＣ出力としてＡＡＣ符号化情報を出力する（ステップＳ６０２）。
【００７５】
具体的には、オーディオ符号化装置１００のＡＡＣ符号器２００は、当該オーディオ符号化装置１００に入力信号が入力された場合に、当該入力信号を、より低い周波数でサンプリングするダウンサンプリングをして得られる低域成分を、一定の規則に基づいて符号化（音声圧縮）するエンコードをして、ＡＡＣ出力としてＡＡＣ符号化情報を出力する。
【００７６】
続いて、分析フィルタ部３０１は、入力信号が入力された場合に、当該入力信号を周波数領域のスペクトル信号に変換する（ステップＳ６０３）。具体的には、分析フィルタ部３０１は、オーディオ符号化装置１００に入力信号が入力された場合に、入力された入力信号の時間周波数スペクトルを算出して周波数領域のスペクトル信号に変換する。この分析フィルタ部３０１は、入力信号をスペクトル信号に変換して、ＳＢＲ符号器３００において符号化される高域成分を抽出する。
【００７７】
そして、時間／周波数グリッド生成部３０２は、分析フィルタ部３０１により変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割する（ステップＳ６０４）。具体的には、時間／周波数グリッド生成部３０２は、分析フィルタ部３０１により変換された周波数領域のスペクトル信号を、時間および周波数方向に任意のセグメントに分割する。例えば、図７の（Ａ）に示すように、時間（ｔｉ）と周波数（ｆｊ）とから構成されるグリッドにおいて、Ｅ（ｔ０，ｆ０）、Ｅ（ｔ０，ｆ１）およびＥ（ｔ０，ｆ２）とに分割する。ここでは、時間方向の分割数は「１」とし、周波数方向の分割数は「３」としている。
【００７８】
その後、パワー算出部３０３は、時間／周波数グリッド生成部３０２により任意の数に分割されたセグメントごとにスペクトルパワーを算出し、補助情報算出部３０４は、時間／周波数グリッド生成部３０２により任意の数に分割されたセグメントごとにスペクトルの特徴パラメタを算出する（ステップＳ６０５）。
【００７９】
具体的には、パワー算出部３０３は、時間／周波数グリッド生成部３０２により任意の数に分割されたセグメントごとに、スペクトルパワーを生成する。また、補助情報算出部３０４は、時間／周波数グリッド生成部３０２により任意の数に分割されたセグメントごとに、時間周波数スペクトルおよび分解能情報に基づいて、低域成分から複製できない情報であるスペクトルの特徴パラメタを算出する。例えば、図７の（Ｂ）に示すように、図７の（Ａ）において分割されたＥ（ｔ０，ｆ０）、Ｅ（ｔ０，ｆ１）およびＥ（ｔ０，ｆ２）のスペクトルパワーを生成する。なお、図７の（Ｂ）は、時間「ｔ０」のセグメントの周波数とパワーとの関係を示している。
【００８０】
続いて、マスキング閾値算出部３０５は、パワー算出部３０３により算出されたスペクトルパワーからマスキング閾値を算出する（ステップＳ６０６）。具体的には、マスキング閾値算出部３０５は、パワー算出部３０３により算出されたスペクトルパワーから、静寂時に聴覚が検知できる音の最小レベルと、隣接するスペクトルパワーが大きいために聴覚的に聞こえなくなる音のレベルとを合わせたマスキング閾値を算出する。例えば、図７の（Ｃ）に示すように、パワーＥ（ｔ０，ｆ０）、Ｅ（ｔ０，ｆ１）およびＥ（ｔ０，ｆ２）のマスキング閾値は、それぞれＭ（ｔ０，ｆ０）、Ｍ（ｔ０，ｆ１）およびＭ（ｔ０，ｆ２）となる。
【００８１】
そして、補正候補探索部３０６は、マスキング閾値算出部３０５により算出されたマスキング閾値以下において、補正候補となる帯域を探索する（ステップＳ６０７）。具体的には、補正候補探索部３０６は、マスキング閾値算出部３０５により算出されたマスキング閾値以下において、当該マスキング閾値とセグメントのスペクトルパワーとを比較して得られるセグメントを探索し、探索されたセグメントを補正候補とする。
【００８２】
その後、補正部３０７は、補正候補探索部３０６により探索された補正候補となる帯域について、マスキング閾値に基づいてスペクトルパワーの補正量を決定し、決定された補正量に基づいてセグメントのスペクトルパワーを補正する（ステップＳ６０８〜ステップＳ６１０）。
【００８３】
具体的には、補正部３０７は、補正候補探索部３０６により探索された補正候補となる帯域について、当該補正候補のセグメントのマスキング閾値（例えば、「Ｍ」とする。）と、当該補正候補に隣接するセグメントのスペクトルパワー（例えば、「Ｅ」とする。）とを比較する。そして、補正部３０７は、この比較においてマスキング閾値「Ｍ」が補正候補に隣接するセグメントのスペクトルパワー「Ｅ」以上「Ｍ≧Ｅ」である帯域のスペクトルパワーを補正量として決定し、決定された補正量に基づいて補正候補のセグメントのスペクトルパワーを補正する。
【００８４】
例えば、図７の（Ｄ）に示すように、補正候補のセグメントのマスキング閾値「Ｍ（ｔ０，ｆ１）」と、当該補正候補に隣接するセグメントのスペクトルパワー「Ｅ（ｔ０，ｆ０）」および「Ｅ（ｔ０，ｆ２）」とを比較している。また、例えば、図７の（Ｅ）に示すように、この比較の結果、「Ｍ（ｔ０，ｆ１）≧Ｅ（ｔ０，ｆ０）」となる「Ｅ（ｔ０，ｆ０）」を補正量として決定し、決定された補正量に基づいて補正候補のセグメントのスペクトルパワーを補正して「ＥＡ（ｔ０，ｆ１）」としている。
【００８５】
続いて、第一量子化部３０８は、補正部３０７により補正されたスペクトルパワーを量子化する。そして、第一符号化部３０９は、第一量子化部３０８により量子化されたスペクトルパワーを符号化する（ステップＳ６１１）。
【００８６】
具体的には、第一量子化部３０８は、補正部３０７により補正されたスペクトルパワーの強弱を数値化（ディジタル化）する量子化を行う。そして、第一符号化部３０９は、第一量子化部３０８により量子化されたスペクトルパワーを一定の規則に基づいて圧縮する符号化を行う。
【００８７】
その後、第二量子化部３１０は、補助情報算出部３０４により算出された特徴パラメタを量子化する。続いて、第二符号化部３１１は、第二量子化部３１０により量子化された特徴パラメタを符号化する（ステップＳ６１２）。
【００８８】
具体的には、第二量子化部３１０は、補助情報算出部３０４により算出された低域成分から複製できない情報であるスペクトルの特徴パラメタを数値化（ディジタル化）する量子化を行う。そして、第二符号化部３１１は、第二量子化部３１０により量子化された特徴パラメタを一定の規則に基づいて圧縮する符号化を行う。
【００８９】
そして、多重化部３１２は、時間／周波数グリッド生成部３０２により生成されたセグメント分割情報と、第一符号化部３０９により符号化されたスペクトルパワーと、第二符号化部３１１により符号化された特徴パラメタとを多重化する（ステップＳ６１３）。
【００９０】
具体的には、多重化部３１２は、時間／周波数グリッド生成部３０２により生成されたセグメントの分割情報であるセグメント分割情報と、第一符号化部３０９により符号化されたスペクトルパワーと、第二符号化部３１１により符号化された特徴パラメタとを多重化する。
【００９１】
続いて、オーディオ符号化装置１００のビットストリーム生成部４００は、ＡＡＣ符号器２００およびＳＢＲ符号器３００により出力されたＡＡＣ符号化情報とＳＢＲ符号化情報とを多重化してビットストリームを生成する（ステップＳ６１４）。
【００９２】
具体的には、オーディオ符号化装置１００のビットストリーム生成部４００は、ＡＡＣ符号器２００およびＳＢＲ符号器３００により出力されたＡＡＣ符号化情報およびＳＢＲ符号化情報を多重化してＨＥ−ＡＡＣビットストリームを生成する。
【００９３】
［実施例１による効果］
このように、実施例１によれば、入力信号を周波数領域のスペクトル信号に変換し、変換されたスペクトル信号を、時間方向および周波数方向に任意の数のセグメントに分割し、任意の数に分割されたセグメントごとにスペクトルパワーを算出し、算出された各セグメントごとのスペクトルパワーからマスキング閾値を算出し、算出されたマスキング閾値以下となるスペクトルパワーを持つセグメントを検出し、検出されたセグメントのスペクトルパワーを補正するので、ＳＢＲ符号化に使用されるビット数を削減することが可能である。
【００９４】
例えば、ＳＢＲ符号化器とＡＡＣ符号化器とから構成されるＨＥ−ＡＡＣ符号化装置を用いた場合、ＳＢＲ符号化器は、入力信号の性質に応じて、入力信号を時間及び周波数方向に分割したセグメント区間（時間/周波数グリッド）を生成し、生成した時間/周波数グリッド内のスペクトルパワーと低域成分から複製できない情報とをそれぞれ算出して量子化するのに際して、聴覚的に聞こえないマスキング閾値以下のスペクトルパワーを補正することで、ハフマン符号化において符号化される量子化値の差分を小さくすることができる。このハフマン符号化では、量子化値の差分が小さいほど短い符号が割り当てられるため、符号化ビット数を少なくすることができる。このようにＳＢＲ符号化で使用されるビット数を削減することができるため、ＡＡＣ符号化で使用できるビット数を多く確保することができる。その結果、ＡＡＣ符号化の量子化誤差が減少するため、ＨＥ−ＡＡＣ符号化装置で符号化される符号化情報全体として、音質を向上させることが可能である。
【００９５】
また、実施例１によれば、分割されたセグメントごとのスペクトルパワーから、当該スペクトルパワーの特徴を示す特徴パラメタを、分割されたセグメントごとに算出し、補正されたセグメントのスペクトルパワーと、算出された特徴パラメタとを符号化するので、ＳＢＲ符号化において細かい情報を漏らすことなく符号化することが可能である。
【００９６】
また、実施例１によれば、検出されたセグメントと隣接するセグメントのスペクトルパワーから、検出されたセグメントのスペクトルパワーを補正する補正量を算出し、算出された補正量を検出されたセグメントのスペクトルパワーに付加することで、当該スペクトルパワーを補正するので、確実に聴覚的に影響のない範囲に対して補正することが可能である。
【実施例２】
【００９７】
ところで、実施例１では、補正対象を補正する際に、補正対象セグメントのマスキング閾値と、当該マスキング閾値に隣接するセグメントのスペクトルパワーとを比較して補正する場合を説明したが、本発明はこれに限定されるものではなく、補正対象に隣接するセグメントについてスペクトルパワーを量子化および符号化したものと、補正対象についてスペクトルパワーを量子化および符号化したものとを比較して補正することもできる。
【００９８】
そこで、以下の実施例２では、図８を用いて、補正対象に隣接するセグメントについてスペクトルパワーを量子化および符号化したものと、補正対象についてスペクトルパワーを量子化および符号化したものとを比較して補正する場合を説明する。
【００９９】
［実施例２に係るビットストリーム生成処理］
図８は、実施例２に係るビットストリーム生成処理を示すフローチャートである。なお、図８において、ステップＳ８０１〜ステップＳ８０７は、図６に示したステップＳ６０１〜ステップＳ６０７と同様であり、また、ステップＳ８１７〜ステップＳ８２１は、図６に示したステップＳ６１０〜ステップＳ６１４と同様となるのでその説明を省略する。なお、ここでは、ステップＳ８０６において算出された補正候補のマスキング閾値を「Ｍ（ｔ０，ｆ１）」として説明する。
【０１００】
図８に示すように、ステップＳ８０１〜ステップＳ８０７により補正候補を探索されたＳＢＲ符号器３００は、探索された補正候補となる帯域に隣接するセグメントについて、スペクトルパワーを量子化する（ステップＳ８０８）。具体的には、ＳＢＲ符号器３００は、探索された補正候補ではなく、当該補正候補に隣接するセグメントについて、スペクトルパワーを量子化（ディジタル化）する。例えば、補正候補は、「Ｅ（ｔ０，ｆ１）」とし、補正候補に隣接するセグメントは、「Ｅ（ｔ０，ｆ０）」および「Ｅ（ｔ０，ｆ２）」とする。但し、補正候補に隣接するセグメントの大小は、Ｅ（ｔ０，ｆ０）＜Ｅ（ｔ０，ｆ２）とする。
【０１０１】
そして、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補に隣接するセグメントを、ハフマン符号化して符号化ビット数を計算する（ステップＳ８０９）。具体的には、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補に隣接する各セグメントについて、データの欠落がまったく起こらない可逆圧縮であるハフマン符号化をして、当該各セグメントの符号化ビット数を計算する。ここでは、符号化ビット数の計算結果を「ｂ」とする。
【０１０２】
続いて、ＳＢＲ符号器３００は、補正候補「Ｅ（ｔ０，ｆ０）」を「ＥＡ＝Ｅｎｅｗ＝Ｅ（ｔ０，ｆ０）」として（ステップＳ８１０）、補正候補のスペクトルパワーを修正する（ステップＳ８１１）。具体的には、ＳＢＲ符号器３００は、補正候補「Ｅ（ｔ０，ｆ０）」を、「ＥＡ＝Ｅｎｅｗ」として、当該補正候補「ＥＡ」のスペクトルパワーを修正する（「ＥＡ＝Ｅ＋ΔＥ」）。なお、ΔＥは、セグメントの量子化値が「１」だけ変化するパワーの変換分であり、当該ΔＥの変化量は、正方向だけでなく負方向でもよい。
【０１０３】
その後、ＳＢＲ符号器３００は、修正された補正候補「ＥＡ」とマスキング閾値「Ｍ」とを比較して、補正候補「ＥＡ」がマスキング閾値「Ｍ」より小さい（ＥＡ＜Ｍ）場合に（ステップＳ８１２肯定）、補正候補についてスペクトルパワーを量子化する（ステップＳ８１３）。
【０１０４】
具体的には、ＳＢＲ符号器３００は、修正された補正候補「ＥＡ」と、ステップＳ８０６において算出された補正候補のマスキング閾値「Ｍ（ｔ０，ｆ１）」とを比較して、補正候補「ＥＡ」が算出された補正候補のマスキング閾値「Ｍ」より小さい場合に（ＥＡ＜Ｍ）、補正候補が可聴領域以下となり補正が必要となるので、当該補正候補についてスペクトルパワーを量子化する。なお、ＳＢＲ符号器３００は、ステップＳ８１２において、補正候補「ＥＡ」がマスキング閾値「Ｍ」より大きい場合に（ステップＳ８１２否定）、ステップＳ８１７の処理を行う。
【０１０５】
そして、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補のセグメントを、ハフマン符号化して符号化ビット数を計算する（ステップＳ８１４）。具体的には、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補のセグメントについて、データの欠落がまったく起こらない可逆圧縮であるハフマン符号化をして、当該補正候補のセグメントの符号化ビット数「ｂＡ」を計算する。
【０１０６】
続いて、ＳＢＲ符号器３００は、補正候補について、当該補正候補の補正前の符号化ビット数「ｂ」と、当該補正候補の修正後の符号化ビット数「ｂＡ」とを比較して、修正前「ｂ」が修正後「ｂＡ」より大きい（ｂ＞ｂＡ）場合に（ステップＳ８１５肯定）、補正候補の帯域の補正量を保存する（ステップＳ８１６）。
【０１０７】
具体的には、ＳＢＲ符号器３００は、補正候補について、当該補正候補の修正前の符号化ビット数「ｂ」と、当該補正候補の修正後の符号化ビット数「ｂＡ」とを比較して、修正前「ｂ」が修正後「ｂＡ」より大きい場合に（ｂ＞ｂＡ）、当該補正候補の帯域について、「ｂＡ」として保存する。ここでは、「Ｅｎｅｗ＝ＥＡ」「ｂ＝ｂＡ」として保存する。なお、ＳＢＲ符号器３００は、ステップＳ８１５において、修正前「ｂ」が修正後「ｂＡ」より小さい場合にステップＳ８１１から処理し、ステップＳ８１６の処理が完了した場合にも同様にステップＳ８１１から処理することとなる。
【０１０８】
［実施例２による効果］
このように、実施例２によれば、検出されたセグメントと隣接するセグメントのスペクトルパワーから、検出されたセグメントのスペクトルパワーを補正する補正量として量子化値を算出し、算出された量子化値を用いて検出されたセグメントのスペクトルパワーを補正するので、ＳＢＲ符号化に使用されるビット数をさらに削減することが可能である。
【実施例３】
【０１０９】
ところで、実施例１では、補正対象を補正する際に、補正対象セグメントのマスキング閾値と、当該マスキング閾値に隣接するセグメントのスペクトルパワーとを比較して補正する場合を説明したが、本発明はこれに限定されるものではなく、補正前の補正対象についてスペクトルパワーを量子化し、量子化されたスペクトルパワーと、当該補正対象のセグメントのマスキング閾値を量子化したものとを比較して補正することもできる。
【０１１０】
そこで、以下の実施例３では、図９および図１０を用いて、補正前の補正対象についてスペクトルパワーを量子化し、量子化されたスペクトルパワーと、当該補正対象のセグメントのマスキング閾値を量子化したものとを比較して補正する場合を説明する。
【０１１１】
［実施例３に係るオーディオ符号化装置の構成］
図９は、実施例３に係るオーディオ符号化装置の構成を示すブロック図である。図９に示すように、オーディオ符号化装置１００は、ＡＡＣ符号器２００、ＳＢＲ符号器３００およびビットストリーム生成部４００から構成される。
【０１１２】
ここで、実施例３に係るオーディオ符号化装置１００において、実施例１と異なる点は、「補正前」の補正対象についてスペクトルパワーを量子化する点であり、機能構成や各処理は実施例１と同様のもとなるのでその説明を省略する。
【０１１３】
実施例１において、パワー算出部３０３は、算出したスペクトルパワーを補正部３０７に送信していたが、実施例３におけるパワー算出部３０３は、算出したスペクトルパワーを第一量子化部３０８に送信する。
【０１１４】
第一量子化部３０８は、算出されたスペクトルパワーの量子化を行う。具体的には、第一量子化部３０８は、パワー算出部３０３により算出されて送信された補正前の補正候補のスペクトルパワーの量子化を行い補正部３０７に送信する。
【０１１５】
補正部３０７は、探索された補正候補となる帯域について、当該補正候補のスペクトルパワーの量子化値と、当該補正候補のマスキング閾値の量子化値とを比較して補正量を決定し、決定された補正量に基づいてスペクトルパワーを補正する。
【０１１６】
具体的には、補正部３０７は、補正候補探索部３０６により探索されて送信された補正候補となる帯域について、第一量子化部３０７により量子化された補正候補のスペクトルパワーの量子化値を「１」ずつ増減させたものと、当該補正候補のマスキング閾値の量子化値とを比較する。そして、補正部３０７は、この比較において補正候補のスペクトルパワーの量子化値が、当該補正候補のマスキング閾値の量子化値より小さい範囲で、かつ、ハフマン符号化した際の符号化ビット数が少なくなった場合の値を補正量として決定し、決定された補正量に基づいて補正候補のセグメントのスペクトルパワーの量子化値を補正する。その後、補正部３０７は、補正されたスペクトルパワーの量子化値を第一符号化部３０９に送信する。
【０１１７】
［実施例３に係るビットストリーム生成処理のフローチャート］
次に、図１０を用いて、実施例３に係るビットストリーム生成処理を説明する。図１０は、実施例３に係るビットストリーム生成処理を示すフローチャートである。なお、図１０において、ステップＳ１００１〜ステップＳ１００７は、図６に示したステップＳ６０１〜ステップＳ６０７と同様であり、また、ステップＳ１０１７〜ステップＳ１０２１は、図６に示したステップＳ６１０〜ステップＳ６１４と同様となるのでその説明を省略する。なお、ここでは、ステップＳ１００６において算出された補正候補のマスキング閾値の量子化値を「Ｍｑ」として説明する。
【０１１８】
図１０に示すように、ステップＳ１００１〜ステップＳ１００７により補正候補を探索されたＳＢＲ符号器３００は、探索された補正前の補正候補となる帯域についてスペクトルパワーを量子化する（ステップＳ１００８）。具体的には、ＳＢＲ符号器３００は、探索した補正前の補正候補となる帯域について、スペクトルパワーを量子化（ディジタル化）する。例えば、補正候補の量子化値は、「ｑ（ｔ０，ｆ１）」とし、補正候補に隣接するセグメントは、「ｑ（ｔ０，ｆ０）」および「ｑ（ｔ０，ｆ２）」とする。但し、補正候補に隣接するセグメントの量子化値の大小は、ｑ（ｔ０，ｆ０）＜ｑ（ｔ０，ｆ２）とする。
【０１１９】
そして、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補の帯域を、ハフマン符号化して符号化ビット数を計算する（ステップＳ１００９）。具体的には、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補の帯域について、データの欠落がまったく起こらない可逆圧縮であるハフマン符号化をして、当該補正候補の帯域の符号化ビット数を計算する。ここでは、符号化ビット数の計算結果を「ｂ」とする。
【０１２０】
続いて、ＳＢＲ符号器３００は、補正候補の量子化値「ｑ（ｔ０，ｆ１）」を「ｑＡ＝ｑｎｅｗ＝ｑ（ｔ０，ｆ１）」として（ステップＳ１０１０）、補正候補のスペクトルパワーを修正する（ステップＳ１０１１）。具体的には、ＳＢＲ符号器３００は、補正候補の量子化値「ｑ（ｔ０，ｆ１）」を、「ｑＡ＝ｑｎｅｗ」として、当該補正候補の量子化値「ｑＡ」のスペクトルパワーを修正する（「ｑＡ＝ｑＡ＋Δｑ」）。なお、Δｑは、１ずつ修正してもよいし、Ｎ（整数）ずつ修正してもよいし、当該Δｑの変換量は、正方向だけでなく負方向でもよい。
【０１２１】
その後、ＳＢＲ符号器３００は、修正された補正候補の量子化値「ｑＡ」と、マスキング閾値の量子化値「Ｍｑ」とを比較して、補正候補の量子化値「ｑＡ」がマスキング閾値の量子化値「Ｍｑ」より小さい（ｑＡ＜Ｍｑ）場合に（ステップＳ１０１２肯定）、補正候補についてスペクトルパワーを量子化する（ステップＳ１０１３）。
【０１２２】
具体的には、ＳＢＲ符号器３００は、修正された補正候補の量子化値「ｑＡ」と、ステップＳ１００６において算出された補正候補のマスキング閾値の量子化値「Ｍｑ」とを比較して、補正候補の量子化値「ｑＡ」が算出された補正候補のマスキング閾値の量子化値「Ｍｑ」より小さい場合に（ｑＡ＜Ｍｑ）、補正候補が可聴領域以下となり補正が必要となるので、当該補正候補についてスペクトルパワーを量子化する。この場合、補正候補のスペクトルパワーの量子化値は、量子化値の領域で補正候補を探索しているため「ｑＡ」と等しい。なお、ＳＢＲ符号器３００は、ステップＳ１０１２において、補正候補の量子化値「ｑＡ」がマスキング閾値の量子化値「Ｍｑ」より大きい場合に（ステップＳ１０１２否定）、ステップＳ１０１７の処理を行う。
【０１２３】
そして、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補のセグメントを、ハフマン符号化して符号化ビット数を計算する（ステップＳ１０１４）。具体的には、ＳＢＲ符号器３００は、スペクトルパワーを量子化された補正候補のセグメントについて、データの欠落がまったく起こらない可逆圧縮であるハフマン符号化をして、当該補正候補のセグメントの符号化ビット数「ｂＡ」を計算する。
【０１２４】
続いて、ＳＢＲ符号器３００は、補正候補について、当該補正候補の修正前の符号化ビット数「ｂ」と、当該補正候補の修正後の符号化ビット数「ｂＡ」とを比較して、修正前「ｂ」が修正後「ｂＡ」より大きい（ｂ＞ｂＡ）場合に（ステップＳ１０１５肯定）、補正候補の帯域の補正量を保存する（ステップＳ１０１６）。
【０１２５】
具体的には、ＳＢＲ符号器３００は、補正候補について、当該補正候補の修正前の符号化ビット数「ｂ」と、当該補正候補の修正後の符号化ビット数「ｂＡ」とを比較して、修正前「ｂ」が修正後「ｂＡ」より大きい場合に（ｂ＞ｂＡ）、当該補正候補の帯域について、「ｂＡ」として保存する。ここでは、「ｑｎｅｗ＝ｑＡ」「ｂ＝ｂＡ」として保存する。なお、ＳＢＲ符号器３００は、ステップＳ１０１５において、修正前「ｂ」が修正後「ｂＡ」より小さい場合にステップＳ１０１１から処理し、ステップＳ１０１６の処理が完了した場合にも同様にステップＳ１０１１から処理することとなる。
【０１２６】
［実施例３による効果］
このように、実施例３によれば、算出されたマスキング閾値に基づいて、分割された各セグメントのスペクトルパワーの量子化値が平滑化する補正量を算出し、算出された補正量を用いて検出されたセグメントのスペクトルパワーを補正するので、補正後に実施されるハフマン符号化において符号化される量子化値の差分を少なくすることが可能である。
【実施例４】
【０１２７】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、（１）符号化手法、（２）補正手法、（３）システム構成、（４）プログラムにそれぞれ区分けして異なる実施例を説明する。
【０１２８】
（１）符号化手法
例えば、実施例１〜３では、周波数方向の符号化をする場合について説明したが、本発明はこれに限定されるものではなく、例えば、時間方向に隣接するグリッドの符号化にも適用することができる。
【０１２９】
（２）補正手法
例えば、実施例１〜３では、隣接するセグメントのスペクトルパワーや自身のセグメント（補正候補）のスペクトルパワーから量子化値を算出して補正量としたが、本発明はこれに限定されるものではなく、この補正量を決定するのに際して、マスキング閾値の範囲内で補正量や量子化値を決定したり、マスキング閾値の範囲内で最もビット数が少なくなるように補正量や量子化値を決定したりするようにしてもよい。このようにすることで、補正に要するビット数を最小限にとどめることが可能であり、また、補正後に実施されるハフマン符号化において符号化される量子化値の差分を小さくすることが可能である。
【０１３０】
（３）システム構成
また、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメタを含む情報（例えば、図２に示す「マスキング閾値」など）については、特記する場合を除いて任意に変更することができる。
【０１３１】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、例えば、補正候補探索部３０６および補正部３０７を、補正部として統合するなど、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【０１３２】
（４）プログラム
なお、本実施例で説明したオーディオ符号化装置は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図１１を用いて、上記の実施例に示したオーディオ符号化装置と同様の機能を有するオーディオ符号化プログラムを実行するコンピュータの一例を説明する。図１１は、オーディオ符号化プログラムを実行するコンピュータを示す図である。
【０１３３】
図１１に示すように、オーディオ符号化装置としてのコンピュータ１１０は、キーボード１２０、ＨＤＤ１３０、ＣＰＵ１４０、ＲＯＭ１５０、ＲＡＭ１６０およびディスプレイ１７０をバス１８０などで接続して構成される。
【０１３４】
ＲＯＭ１５０には、上記の実施例１に示したオーディオ符号化装置１００と同様の機能を発揮するオーディオ符号化プログラム、つまり、図１１に示すように分析フィルタプログラム１５０ａと、時間／周波数グリッド生成プログラム１５０ｂと、パワー算出プログラム１５０ｃと、補助情報算出プログラム１５０ｄと、マスキング閾値算出プログラム１５０ｅと、補正候補探索プログラム１５０ｆと、補正プログラム１５０ｇと、第一量子化プログラム１５０ｈと、第一符号化プログラム１５０ｉと、第二量子化プログラム１５０ｊと、第二符号化プログラム１５０ｋと、多重化プログラム１５０ｌとが、あらかじめ記憶されている。なお、これらのプログラム１５０ａ〜１５０ｌについては、図１に示したオーディオ符号化装置の各構成要素と同様、適宜統合または、分散してもよい。
【０１３５】
そして、ＣＰＵ１４０がこれらのプログラム１５０ａ〜プログラム１５０ｌをＲＯＭ１５０から読み出して実行することで、図１１に示すように、プログラム１５０ａ〜プログラム１５０ｌは、分析フィルタプロセス１４０ａと、時間／周波数グリッド生成プロセス１４０ｂと、パワー算出プロセス１４０ｃと、補助情報算出プロセス１４０ｄと、マスキング閾値算出プロセス１４０ｅと、補正候補探索プロセス１４０ｆと、補正プロセス１４０ｇと、第一量子化プロセス１４０ｈと、第一符号化プロセス１４０ｉと、第二量子化プロセス１４０ｊと、第二符号化プロセス１４０ｋと、多重化プロセス１４０ｌとして機能するようになる。なお、プロセス１４０ａ〜プロセス１４０ｌは、図１に示した、分析フィルタ部３０１と、時間／周波数グリッド生成部３０２と、パワー算出部３０３と、補助情報算出部３０４と、マスキング閾値算出部３０５と、補正候補探索部３０６と、補正部３０７と、第一量子化部３０８と、第一符号化部３０９と、第二量子化部３１０と、第二符号化部３１１と、多重化部３１２とにそれぞれ対応する。
【０１３６】
そして、ＣＰＵ１４０はＲＡＭ１６０に記録されたデータに基づいてオーディオ符号化プログラムを実行する。
【０１３７】
なお、上記した各プログラム１５０ａ〜１５０ｌについては、必ずしも最初からＲＯＭ１５０に記憶させておく必要はなく、例えば、コンピュータ１１０に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」、またはコンピュータ１１０の内外に備えられるＨＤＤなどの「固定用の物理媒体」、さらには公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ１１０に接続される「他のコンピュータ（またはサーバ）」などに各プログラムを記憶させておき、コンピュータ１１０がこれから各プログラムを読み出して実行するようにしてもよい。
【産業上の利用可能性】
【０１３８】
以上のように、本発明に係る符号化装置、符号化方法および符号化プログラムは、入力信号の性質に応じてスペクトルパワーを補正する場合に有用であり、特に、ＳＢＲ符号化に使用されるビット数を削減することに適する。
【図面の簡単な説明】
【０１３９】
【図１】図１は、実施例１に係るオーディオ符号化装置の構成を示すブロック図である。
【図２】図２は、マスキング閾値を説明するための図である。
【図３】図３は、動的マスキング閾値の算出方法を説明するための図である。
【図４】図４は、動的マスキング閾値の算出を説明するための図である。
【図５】図５は、マスキング閾値の算出を説明するための図である。
【図６】図６は、実施例１に係るビットストリーム生成処理を示すフローチャートである。
【図７】図７は、実施例１に係るパワー補正処理を示す図である。
【図８】図８は、実施例２に係るビットストリーム生成処理を示すフローチャートである。
【図９】図９は、実施例３に係るオーディオ符号化装置の構成を示すブロック図である。
【図１０】図１０は、実施例３に係るビットストリーム生成処理を示すフローチャートである。
【図１１】図１１は、オーディオ符号化プログラムを実行するコンピュータを示す図である。
【図１２】図１２は、従来のＨＥ−ＡＡＣ符号化装置の構成を示すブロック図である。
【符号の説明】
【０１４０】
１００  オーディオ符号化装置
２００  ＡＡＣ符号器
３００  ＳＢＲ符号器
３０１  分析フィルタ部
３０２  時間／周波数グリッド生成部
３０３  パワー算出部
３０４  補助情報算出部
３０５  マスキング閾値算出部
３０６  補正候補探索部
３０７  補正部
３０８  第一量子化部
３０９  第一符号化部
３１０  第二量子化部
３１１  第二符号化部
３１２  多重化部
４００  ビットストリーム生成部
【国際調査報告】
2009004727.tif 000015
2009004727.tif 000016
2009004727.tif 000017
2009004727.tif 000018