JP3984468B2 - 符号化装置、復号化装置及び符号化方法 - Google Patents

符号化装置、復号化装置及び符号化方法 Download PDF

Info

Publication number
JP3984468B2
JP3984468B2 JP2001381807A JP2001381807A JP3984468B2 JP 3984468 B2 JP3984468 B2 JP 3984468B2 JP 2001381807 A JP2001381807 A JP 2001381807A JP 2001381807 A JP2001381807 A JP 2001381807A JP 3984468 B2 JP3984468 B2 JP 3984468B2
Authority
JP
Japan
Prior art keywords
data
quantization
window
unit
spectrum
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001381807A
Other languages
English (en)
Other versions
JP2003186499A (ja
Inventor
孝祐 西尾
武志 則松
峰生 津島
直也 田中
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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
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
Priority to JP2001381807A priority Critical patent/JP3984468B2/ja
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to PCT/JP2002/011255 priority patent/WO2003038389A1/en
Priority to DE60208426T priority patent/DE60208426T2/de
Priority to EP02775413A priority patent/EP1440433B1/en
Priority to CNB02803421XA priority patent/CN1324558C/zh
Priority to DE60204039T priority patent/DE60204039T2/de
Priority to DE60204038T priority patent/DE60204038T2/de
Priority to EP02775412A priority patent/EP1440300B1/en
Priority to PCT/JP2002/011256 priority patent/WO2003038813A1/en
Priority to EP02775411A priority patent/EP1440432B1/en
Priority to CN02809440.9A priority patent/CN1288622C/zh
Priority to PCT/JP2002/011254 priority patent/WO2003038812A1/en
Priority to CN02803419.8A priority patent/CN1209744C/zh
Priority to US10/285,609 priority patent/US7283967B2/en
Priority to US10/285,627 priority patent/US7392176B2/en
Priority to US10/285,633 priority patent/US7328160B2/en
Publication of JP2003186499A publication Critical patent/JP2003186499A/ja
Application granted granted Critical
Publication of JP3984468B2 publication Critical patent/JP3984468B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、デジタル音響データの高音質符号化及び復号化技術に関する。
【0002】
【従来の技術】
現在、音声データを圧縮符号化する様々な音声圧縮方式が開発されている。MPEG−2 Advanced Audio Coding(以下、AACと略称する)もその方式の一つである。AACの詳細は、「ISO/IEC 13818−7(MPEG−2 Advanced Audio Coding、AAC)」という規格書に記載されている。
【0003】
先ず従来の符号化及び復号化手順を、図17を用いて説明する。図17は、従来のMPEG−2 AAC方式による符号化装置300及び復号化装置400の構成を示すブロック図である。符号化装置300は、入力された音響信号をMPEG−2 AAC符号化方式に基づいて圧縮符号化する装置であって、音響信号入力部310、変換部320、量子化部331、符号化部332及びストリーム出力部340から構成される。
【0004】
音響信号入力部310は、例えば、44.1kHzのサンプリング周波数でサンプリングされたデジタル音響データを、連続した1024サンプルごとに切り出す。なお、この1024サンプルの符号化単位を「フレーム」という。
【0005】
変換部320は、音響信号入力部310によって切り出された時間軸上のサンプルデータを、MDCT(Modified Discrete CosineTransform)によって周波数軸上のスペクトルデータに変換する。なお、この時点で変換された1024サンプルのスペクトルデータは、複数のグループに分類される。前記各グループは、複数のグループのそれぞれに、1サンプル以上のスペクトルデータが含まれるように設定される。また、この各グループは、人間の聴覚におけるクリティカルバンドを擬似している。各グループのそれぞれを「スケールファクターバンド」という。
【0006】
量子化部331は、変換部320から得られたスペクトルデータを所定ビット数で量子化する。MPEG−2 AACでは、スケールファクターバンドごとに1つの正規化係数を用いて、スケールファクターバンド内のスペクトルデータを量子化する。この正規化係数のことを「スケールファクター」という。また、各スペクトルデータを各スケールファクターで量子化した結果を「量子化値」という。符号化部332は、量子化部331で量子化されたデータ、すなわち、各スケールファクターと、それを用いて量子化されたスペクトルデータとをストリーム用のフォーマットにハフマン符号化する。この際に、符号化部332は、1フレームにおいて前後に隣接するスケールファクターバンドのスケールファクターの差分を求め、その差分と先頭スケールファクターバンドのスケールファクターとをハフマン符号化する。
【0007】
ストリーム出力部340は、符号化部332から得られた符号化信号を、MPEG−2 AACビットストリームに変換し、出力する。符号化装置300から出力されたビットストリームは、伝送媒体を介して復号化装置400に伝送されたり、CDやDVD等の光ディスク、半導体、ハードディスク等の記録媒体に記録されたりする。
【0008】
復号化装置400は、符号化装置300によって符号化されたビットストリームを復号化する装置であって、ストリーム入力部410、復号化部421、逆量子化部422、逆変換部430及び音響信号出力部440から構成される。
【0009】
ストリーム入力部410は、符号化装置300によって符号化されたビットストリームを伝送媒体を介して、あるいは、記録媒体から再生して入力し、入力したビットストリームから符号化信号を取り出す。復号化部421は、取り出された符号化信号をストリーム用のフォーマットから量子化データに復号化する。
【0010】
逆量子化部422は、復号化部421で復号化された量子化データを逆量子化する。MPEG−2 AACでは、ハフマン符号化されたデータを復号化する。逆変換部430は、逆量子化部422で得られた周波数軸上のスペクトルデータを、時間軸上のサンプルデータに変換する。MPEG−2 AACでは、IMDCT(Inverse Modified Discrete Cosine Transform)を用いて変換する。音響信号出力部440は、逆変換部430で得られた時間軸上のサンプルデータを順次組み合わせ、デジタル音響データとして出力する。
【0011】
なお、MPEG−2 AACでは入力の音響信号に応じて、MDCTの変換長を変更することができる。変換長が2048サンプルのものをLONGブロック、変換長が256サンプルのものをSHORTブロックといい、これらをまとめてブロックサイズという。SHORTブロックでは、入力されるデジタル音響データのサンプリング周波数を44.1kHzとすると、符号化装置において、デジタル音響データの連続する128サンプルごとに、その前後64サンプルを重複して合計256サンプルの音響データが切り出される。切り出されたデジタル音響データはMDCT変換され、変換結果の半分の128サンプルからなるスペクトルデータが量子化及び符号化の対象となる。SHORTブロックでは、この各128サンプルのスペクトルデータからなる連続したウィンドウ8つをまとめて1024サンプルからなる1フレームとし、以降の量子化及び符号化などの処理を、このフレームを1つの処理単位として行う。
【0012】
このように、1ウィンドウ128サンプルのSHORTブロックでは、1ブロック1024サンプルのLONGブロックに比べると、同じ22.05kHzの再生帯域を少ないサンプル数で表すため、音質の点ではLONGブロックに比べて不利であるが、早い周期の音響信号に対する追従性が高いという利点がある。すなわち、LONGブロックの場合、切り出しの周期が長いため、切り出された音響信号の中にアタック(振幅の大きいスパイク波)が含まれていたときには、1024サンプルの全スペクトルに渡ってアタックの周波数成分の影響を受けてしまうという問題がある。これに対しSHORTブロックでは、アタックが含まれていた場合でも、その影響が1つのウィンドウ内だけでおさまるので、他のウィンドウのスペクトルには影響を受けず、より忠実に原音を再生できるという利点がある。
【0013】
符号化装置300において上記な方式で符号化され、復号化装置400に伝送される音響データの音質がどの程度保持されるかを表す1つの目安として、符号化後の再生帯域がある。例えば入力信号のサンプリング周波数が44.1kHzの時、再生帯域は22.05kHzとなる。この22.05kHz分、又は22.05kHzに近い広帯域な音響信号を劣化させることなく符号化し、その符号化データをすべて伝送することにより、高音質な音響信号の伝送を達成することができる。しかし、再生帯域の広さはスペクトルデータの数に影響し、スペクトルデータの数は伝送データ量に影響する。例えば、入力信号のサンプリング周波数が44.1kHzの時、1024サンプルのスペクトルデータが22.05kHz分のデータに対応し、22.05kHzの再生帯域を確保するためには、1024サンプルのスペクトルデータをすべて伝送することが必要である。このためには、音響信号を効率的に符号化し、かつ、そのデータ量を伝送路の転送レート範囲内に納めることが必要になってくる。
【0014】
ところが、携帯電話等の低転送レートの伝送路を考慮すると、実際に1024サンプルのスペクトルデータすべてを伝送することは、データ量が大きすぎて現実的ではない。つまり、転送レートに合わせたデータ量で、この再生帯域の全スペクトルデータを転送しようとすると、各周波数帯域に割り当てることができる情報量がわずかとなり、その結果、量子化ノイズによる影響が大きくなり、符号化による音質劣化を招く。
【0015】
このため、MPEG−2 AACに限らず、多くの音響信号符号化方式において、スペクトルデータに聴覚的重み付けを行い、優先度の低いデータは伝送しないことにより、効率的な音響信号の伝送を実現している。これに従えば、再生帯域に関しては、聴覚的に優先度の高い低域部の符号化精度を向上させるため、低域部の符号化情報に十分なデータ量を割り当て、優先度の低い高域部は伝送対象外とされる確率が高い。
【0016】
【発明が解決しようとする課題】
しかしながら、MPEG−2 AAC方式においてはこのような工夫がなされているにもかかわらず、音響信号の符号化に対して、さらなる高品質化、圧縮効率の向上が求められている。つまり、低転送レートであっても、高域部の音響信号を伝送することの要望が高まってきている。
【0017】
本発明の目的は、符号化後の情報量を大幅に増加させることなく音響信号の高音質な符号化及びその復号化を実現できる符号化装置及び復号化装置を提供することである。
【0018】
【課題を解決するための手段】
上記課題に鑑みて、本発明の符号化装置は、入力された音響信号を符号化する符号化装置であって、入力音響信号を一定時間ごとに切り出して周波数スペクトルに変換することにより、1フレーム時間ごとに、周波数スペクトルの時間変化を示す複数のウィンドウからなるショートブロックスペクトルを生成する変換手段と、前記変換手段によって得られた前記ウィンドウ同士を比較し、それらウィンドウ同士のスペクトルが所定の判断基準を満たす範囲で相似するか否かを判定する共有判定手段と、前記ウィンドウ同士のスペクトルが前記範囲内で相似する場合、他のウィンドウの高域部スペクトルを共有する共有ウィンドウにつき、その共有ウィンドウの高域部スペクトルデータを所定値に置換する置換手段と、前記置換手段による置換処理の後、前記各ウィンドウのスペクトルデータを量子化する第1量子化手段と、前記第1量子化手段による量子化結果を符号化する第1符号化手段と、前記第1符号化手段によって符号化されたデータを出力する出力手段とを備えることを特徴とする。
【0019】
これに対応して、本発明の復号化装置は、音響信号を表した入力符号化データを復号化する復号化装置であって、前記入力符号化データ中の第1の領域に記録されている第1符号化データを復号化する第1復号化手段と、前記第1復号化手段による復号化結果を逆量子化し、1フレーム時間ごとに、周波数スペクトルの時間変化を示す複数のショートブロックスペクトルを出力する第1逆量子化手段と、前記第1逆量子化手段による逆量子化結果を監視し、前記第1逆量子化手段によって出力された前記ウィンドウのうち、周波数高域部スペクトルデータの値が所定値となっている場合、そのウィンドウを、ウィンドウ内の高域部スペクトルデータを他のウィンドウの高域部スペクトルデータを参照して生成する参照ウィンドウであると判定する判定手段と、前記判定手段の判定に基づいて、前記第1逆量子化手段による逆量子化結果から前記参照ウィンドウに参照されるウィンドウである被参照ウィンドウの高域部スペクトルデータをコピーし、コピーしたスペクトルデータを前記参照ウィンドウに対応付けて出力する第2逆量子化手段と、前記第1逆量子化手段によって出力された前記所定値の高域部スペクトルデータであって、前記参照ウィンドウの高域部スペクトルデータの値を、前記第2逆量子化手段によって対応付けられ出力された前記被参照ウィンドウの高域部スペクトルデータの値で置換した後、逆変換し、時間軸上の音響信号として出力する音響信号出力手段とを備えることを特徴とする。
【0020】
また、本発明の符号化装置によれば、前記共有判定手段は、前記ウィンドウ同士のスペクトルが所定の判断基準を満たす範囲で相似するか否かを判定し、前記置換手段は、前記ウィンドウ同士のスペクトルが前記範囲内で相似する場合、他のウィンドウの高域部スペクトルを共有する共有ウィンドウにつき、その共有ウィンドウのさらに低域部のスペクトルデータを所定値に置換する。
【0021】
これに対応して、本発明の復号化装置において、前記判定手段は、前記第1逆量子化手段によって出力された前記各ウィンドウにおいて全スペクトルデータの値が所定値となっている場合、そのウィンドウを前記参照ウィンドウであると判定し、前記第2逆量子化手段は、前記判定手段による判定に基づいて、前記第1逆量子化手段の逆量子化結果から、所定の前記被参照ウィンドウさらに低域部を含んだ全スペクトルデータをコピーし、コピーしたスペクトルデータを前記参照ウィンドウに対応付けて出力し、前記音響信号出力手段は、前記参照ウィンドウの全スペクトルデータの値を、前記第2逆量子化手段によって対応付けられ出力された前記被参照ウィンドウのスペクトルデータの値で置換した後、逆変換し、時間軸上の音響信号として出力する。
【0022】
さらに、本発明の符号化装置は、さらに、前記第1量子化手段に入力されたスペクトルデータのうち、第1量子化手段による量子化の結果、スペクトルのピークに近接したスペクトルデータであって量子化結果が所定値となったものを所定の正規化係数を用いて量子化し直す第2量子化手段と前記第2量子化手段の量子化結果を符号化する第2符号化手段とを備え前記出力手段は、前記第1符号化手段によって符号化されたデータと、前記第2符号化手段によって符号化されたデータとを出力する。
【0023】
これに対応して、本発明の復号化装置は、さらに、前記入力符号化データ中の第2の領域から、同じスペクトルデータについて前記第1符号化データとは異なる所定の正規化係数を用いて量子化された第2符号化データを分離する第2符号化データ分離手段と前記第2符号化データを復号化する第2復号化手段と、前記第1復号化手段による復号化結果を監視して、前記復号化結果のうち連続して所定値となる部分を特定し、特定された部分に対応する前記第2復号化手段による復号化結果を、前記所定の正規化係数を用いて逆量子化し、複数のスペクトルデータを生成する第2逆量子化手段と、前記第1逆量子化手段によって出力されたスペクトルデータのうち、前記特定された部分のスペクトルデータの値を、前記第2逆量子化手段によって生成されたスペクトルデータの値で置換した後、逆変換し、時間軸上の音響信号として出力する音響信号出力手段とを備える。
【0024】
【発明の実施の形態】
(実施の形態1)
以下、本実施の形態における符号化装置100及び復号化装置200について詳細に説明する。図1は、本発明の符号化装置100及び復号化装置200の構成を示すブロック図である。
【0025】
<符号化装置100>
符号化装置100は、従来伝送されている音響信号のデータ量を低減して伝送し、伝送するデータ量が同じであれば、復号化装置200において従来よりも高音質の音響信号を復元できる音響符号化ビットストリームを出力する。具体的には、SHORTブロックの場合に、128サンプル単位のブロック(=ウィンドウ)を8つまとめて伝送するが、2つ以上のウィンドウにおいて高域部のスペクトルデータが類似または相似ならば、高域部の量子化データを共有することによりデータ量を削減する。符号化装置100は、音響信号入力部110、変換部120、第1の量子化部131、第1の符号化部132、第2の符号化部134、共有判定部137及びストリーム出力部140から構成される。
【0026】
音響信号入力部110は、周波数44.1kHzのサンプリング周波数でサンプリングされたMPEG−2 AACと同様の入力信号であるデジタル音響データを、約2.9msec(128サンプルごと)のサイクルで、その前後の64サンプルをオーバーラップさせ、256サンプルずつ切り出す。
【0027】
変換部120は、従来と同様、音響信号入力部110によって切り出された時間軸上のサンプルデータを、周波数軸上のスペクトルデータに変換する。MPEG−2 AACでは、MDCTを用いて、256サンプルの時間軸データを、SHORTブロック256サンプルのスペクトルデータに変換する。しかし、MDCTでは左右対称なスペクトルデータとなるので、片方の128サンプルのみを符号化の対象とする。以下では、SHORTブロックにおける、この128サンプルからなる単位を「ウィンドウ」といい、1フレームは8ウィンドウ1024サンプルからなる。
【0028】
変換部120は、さらに、変換された1ウィンドウのスペクトルデータを、それぞれ1サンプル以上(実用的には4の倍数)のスペクトルデータを含む複数のスケールファクターバンドに分類する。MPEG−2 AACでは、1フレームに含まれるスケールファクターバンドの数が、ブロックサイズとサンプリング周波数に応じて定められており、各スケールファクターバンドに含まれるサンプル(スペクトルデータ)数も、周波数に応じて定められている。このスケールファクターバンドは、周波数低域部においては少数のサンプルごとに細かく区切られ、高域部になるほど多数のサンプルを含むよう大きく区切られている。SHORTブロックにおいては、サンプリング周波数が44.1kHzの場合は、1ウィンドウに含まれるスケールファクターバンドの数は14個である。このような各ウィンドウの128サンプルのスペクトルデータは、入力音源のサンプリング周波数が44.1kHzの場合、それぞれが22.05kHzの再生帯域を表している。
【0029】
図2は、図1に示した符号化装置100において処理される音響信号の変換過程を示す図である。図2(a)は、図1に示した音響信号入力部110によって各SHORTブロックに切り出される時間軸上のサンプルデータを示す波形図である。図2(b)は、図1に示した変換部120によってMDCT変換された後の1フレーム分のSHORTブロックのスペクトルデータを示す波形図である。なお、図2(b)に示すスペクトルデータは、縦軸にスペクトルの値、横軸に周波数を表している。また、図2(a)及び図2(b)において、サンプルデータ及びスペクトルデータはアナログ波形で示されているが、実際には、いずれもデジタル信号である。以下の波形図においても同様である。なお、図2(b)においては簡単に説明するため、正の値のみからなる波形を示しているが、実際にはMDCT変換によるスペクトルデータは負の値をとりうる。
【0030】
音響信号入力部110には、図2(a)のようなデジタル音響信号が入力される。音響信号入力部110は、この入力信号から毎128サンプルを切り出すタイミングで、その前後64サンプルをオーバーラップさせて256サンプルを切り出し、変換部120に出力する。変換部120は、合計256サンプルのデータをMDCTするが、MDCTによって得られるスペクトルが左右対称の波形となるため、その半分の128サンプルに対応するスペクトルデータを生成する。図2(b)は、このように生成された8つのウィンドウからなるSHORTブロック、1フレームのスペクトルデータを示しており、各ウィンドウは変換部120によって約2.9msecごとに生成される128点のスペクトルデータからなる。すなわち、各ウィンドウは、128サンプルの電圧値で表されていた音響信号に含まれる周波数成分の量(大きさ)を、前記サンプル数に対応する128点のスペクトルデータで表している。
【0031】
共有判定部137は、変換部120の出力するスペクトルデータの8つのウィンドウに関して、他のウィンドウと高域部の量子化データを共有するか否かを判定し、かつ、高域部量子化データを他のウィンドウと共有する場合は、そのウィンドウの高域部スペクトルデータの値を「0」に置換する。例えば、具体的な判定の方法として、高域部データを共有しない直前のウィンドウとの間で、スペクトル間のエネルギー差を求め、そのエネルギー差がしきい値未満である場合に共有すると判定する。共有判定部137は、共有するか否かを示すフラグを各ウィンドウに対応して生成し、生成したフラグからなり、どのウィンドウが直前のウィンドウの高域部量子化データを共有するかを示す共有情報を出力する。
【0032】
第1の量子化部131は、共有判定部137の出力するスペクトルデータを入力し、入力されたスペクトルデータの各スケールファクターバンドにつき、それぞれスケールファクターを決定する。さらに、決定したスケールファクターを用いてそのスケールファクターバンド内のスペクトルを量子化し、量子化結果である量子化値とスケールファクターとを第1の符号化部132に出力する。具体的には、第1の量子化部131は、各フレームの符号化後のビット数が伝送路の転送レートの範囲に収まるように各スケールファクターバンドのスケールファクターを計算し、そのスケールファクターを用いて当該スケールファクターバンド内の各スペクトルを正規化し、量子化する。
【0033】
第1の符号化部132は、第1の量子化部131で量子化された1024サンプルのスペクトルデータの量子化値及びその量子化に用いられたスケールファクターなどを、第1の符号化信号としてハフマン符号化して所定のストリーム用のフォーマットに変換する。スケールファクターについては、それぞれの差分を順次求め、先頭のスケールファクターと差分とをハフマン符号化する。
【0034】
第2の符号化部134は、各ウィンドウで直前のウィンドウの高域部量子化値を共有するか否かを示す共有情報を共有判定部137から受け取り、その共有情報を所定のストリーム用のフォーマットにハフマン符号化し、第2の符号化信号として出力する。
【0035】
ストリーム出力部140は、第1の符号化部132から出力される第1の符号化信号にヘッダ情報及びその他必要に応じた副情報を付加してMPEG−2 AACの符号化ビットストリームに変換し、かつ、第2の符号化部134から出力された第2の符号化信号を、上記ビットストリーム中の従来の復号化装置では無視される又はその動作が規定されていない領域に格納する。
【0036】
具体的には、ストリーム出力部140は、第2の符号化部134から出力される符号化信号を、MPEG−2 AACの符号化ビットストリームにおけるFill ElementやData Stream Elementに格納する。
【0037】
符号化装置100から出力されたビットストリームは、携帯電話通信網、インターネットなどの通信回線網、ケーブルテレビ及びデジタルテレビの放送電波などの伝送媒体を介して復号化装置200に伝送されたり、CDやDVD等の光ディスク、半導体、ハードディスク等の記録媒体に記録されたりする。
【0038】
なおまた実際のMPEG−2 AACの符号化処理では、Gain ControlやTNS(Temporal Noise Shaping)、聴覚心理モデル、M/S Stereo、Intensity Stereo、Prediction等のツール利用、及びブロックサイズの切り換え、ビットリザーバー等を使用する場合がある。
【0039】
<復号化装置200>
復号化装置200は、入力された符号化ビットストリームから前記共有情報に基づいて高域部の付加された広帯域の音響データを復元する復号化装置であって、ストリーム入力部210、第1の復号化部221、第1の逆量子化部222、第2の復号化部223、第2の逆量子化部224、逆量子化データ合成部225、逆変換部230及び音響信号出力部240から構成される。
【0040】
ストリーム入力部210は、携帯電話通信網、インターネットなどの通信回線網、ケーブルテレビの伝送路及び放送電波などの伝送媒体を介したり、記録媒体から再生したりして、符号化装置100において生成されたビットストリームを入力し、従来の復号化装置400が復号化するべき領域に格納されている第1の符号化信号と、従来の復号化装置400が無視するかまたはその情報に対する動作が規定されていない領域に格納されている第2の符号化信号(共有情報)とを取り出して、それぞれ第1の復号化部221と第2の復号化部223とに出力する。
【0041】
第1の復号化部221は、ストリーム入力部210の出力する第1の符号化信号を入力し、ハフマン符号化されたデータをストリーム用のフォーマットから量子化データに復号化する。
第2の復号化部223は、ストリーム入力部210の出力する第2の符号化信号を入力し、入力された第2の符号化信号を復号して共有情報を出力する。
第2の逆量子化部224では、第2の復号化部223から出力された共有情報を参照して、他のウィンドウに共有されている部分につき、第1の逆量子化部222より出力されたスペクトルデータをコピーして出力する。
【0042】
逆量子化データ合成部225は、第1の逆量子化部222の出力するスペクトルデータと第2の逆量子化部224の出力するスペクトルデータとを合成する。具体的には、第1の逆量子化部222から入力されたスペクトルデータに対し、第2の逆量子化部224から周波数を指定して入力されたスペクトルデータがあれば、第1の逆量子化部222の出力であるその周波数のスペクトルデータの値を、第2の逆量子化部224の出力であるスペクトルデータの値で置換する。また、第2の逆量子化部224からウィンドウを指定して入力された高域部スペクトルデータがあれば、そのウィンドウの第1の逆量子化部222からの出力である高域部スペクトルデータを、第2の逆量子化部224から入力されたスペクトル値で置換する。
【0043】
逆変換部230は、MPEG−2 AACに従って、逆量子化データ合成部225から出力された周波数軸上のスペクトルデータを、IMDCTを用いて時間軸上の1024サンプルのサンプルデータに変換する。音響信号出力部240は、逆変換部230で得られた時間軸上のサンプルデータを順次組み合わせ、デジタル音響データとして出力する。
【0044】
このように、8つウィンドウのうちいくつかの高域部量子化データを共有化することによって、スペクトルデータの再現性の低下を最小限に抑えながらも、共有された高域部情報の分だけデータの伝送量を削減することができるという効果がある。
【0045】
図3は、図1に示した共有判定部137による高域部データの共有の一例を示す図である。図3は、図2(b)と同様、MDCT変換によって得られる1フレーム分のSHORTブロックのスペクトルデータを示している。図3において各ウィンドウにつき、破線で区切った左側を、例えば0kHzから11.025kHzまでの再生帯域を表す低域部とし、右側を11.025kHzから22.05kHzまでの再生帯域である高域部とする。
【0046】
また、隣接する2つのウィンドウのスペクトルは、ウィンドウを切り出すサイクルが短いため、図3のように相互に類似した波形となる可能性が高い。このような場合、共有判定部137は、相互に類似した波形となるウィンドウ間で高域部量子化データを共有すると判定する。例えば、第1ウィンドウと第2ウィンドウとのスペクトルの相似性が高く、第3ウィンドウから第8ウィンドウまでのスペクトルが相互に相似性が高い場合、共有判定部137は、第1ウィンドウと第2ウィンドウとが高域部量子化データを共有し、第3ウィンドウと第4以降のウィンドウとが高域部量子化データを共有すると判定する。この場合、図3に矢印で示す範囲のスペクトルデータが伝送(すなわち、量子化及び符号化)の対象となり、それ以外の第2ウィンドウと、第4〜第8ウィンドウとの高域部のスペクトルデータは伝送(すなわち、量子化及び符号化)の対象とならず、共有判定部137によって「0」に置換される。
【0047】
図4は、図1に示したストリーム出力部140によって第2の符号化信号(共有情報)が格納されるビットストリームのデータ構造を示す図である。図4(a)は、ビットストリーム内に第2の符号化信号を格納した場合の各領域内部のデータ構造を示す図である。図4(b)は、MPEG−2 AACに準拠する音響符号化ビットストリームの一部データ構造の一例を示す図である。図4(c)は、MPEG−2 AACに準拠する音響符号化ビットストリームの一部データ構造の他の例を示す図である。図4(b)において斜線で示す部分は、例えば、ビットストリームのデータ長を合わせるために「0」で埋められる領域(FillElement)である。また、図4(c)において斜線で示す部分は、例えば、Data Stream Element(DSE)という領域であって、この領域は、将来の拡張のためMPEG−2 AACの規格によってビット長などの物理的構造だけが規定された領域である。前述の共有情報は、第2の符号化部134によって符号化された後、図4(a)のように識別情報を付され、ビットストリーム中の上記Fill Element又はDSEなどの領域に格納される。
【0048】
Fill Elementに第2の符号化信号を格納した場合、従来の復号化装置400では復号化すべき符号化信号とは認識されず、無視される。DSEに第2の符号化信号を格納した場合、従来の復号化装置400によって第2の符号化信号が読み取られたとしても、DSE内で読み取られた第2の符号化信号に対する復号化装置400の動作が規定されていないので、復号化装置400はこれに対応する処理を何も行わない。従って、このような領域に第2の符号化信号を格納しておくことによって、本発明の符号化装置100による符号化ビットストリームが従来の復号化装置400に入力された場合でも、第2の符号化信号は音響符号化信号として復号化されないために、第2の符号化信号を正しく復号化することができないことに起因する雑音の発生等を防止することができる。これにより、従来の復号化装置400であっても、第1の符号化信号のみに従って、音響信号を従来どおり支障なく再生することができるという効果がある。
【0049】
このようなFill Elementに第2の符号化信号を格納する場合、Fill Elementには当初から図4(a)のヘッダ情報が設けられている。このヘッダ情報には、Fill Elementであることを示すFill Element識別子及びFill Element全体のビット長を示すビット数データなどが含まれている。DSEに第2の符号化信号を格納する場合にも、Fill Elementと同様、図4(a)に示したヘッダ情報が設けられており、以下のデータがDSEであることを示すDSE識別子及びDSE全体のビット長を示すビット数データなどが含まれている。ストリーム出力部140は、このヘッダ情報に続いて、識別情報と共有情報とからなる第2の符号化信号を格納する。
【0050】
識別情報は、以下に格納されている符号化情報が、本発明の符号化装置100による符号化情報であるか否かを示す情報である。例えば、識別情報が「0001」であれば、以下の符号化情報が符号化装置100によって符号化された共有情報であることを示している。また、例えば、識別情報が「1000」であれば、以下の符号化情報が符号化装置100によって符号化されたものでないことを示している。本発明の復号化装置200は、上記の例では、識別情報が「0001」であれば、以下の共有情報を第2の復号化部223で復号化し、復号化の結果得られた共有情報に基づいて各ウィンドウの高域部スペクトルデータを復元するが、識別情報が「1000」であれば、以下の符号化データを無視する。このFill ElementやDSEのように、内部に符号化データが格納されていても、従来の復号化装置400には音響符号化信号として認識されない領域に第2の符号化信号を格納する場合、これらの領域には他の方式に基づく符号化情報も格納される可能性がある。このような場合、第2の符号化信号に識別情報を含めておくことによって、他の符号化情報と本発明の第2の符号化信号とを明確に区別することができ、それらの混同を容易に防止することができるという効果がある。
【0051】
さらに、この識別情報を用いることによって、上記に例示した以外にも、前述の共有情報に本発明の以下の実施の形態に基づく他の情報(例えば、補助情報など)を組み合わせて第2の符号化信号に格納する場合などに、その旨を復号化装置200に明示することができるという効果がある。なお、この識別情報は、必ずしも第2の符号化信号の先頭に付す必要はなく、符号化された共有情報の末尾あるいは一部に挿入してもよい。
【0052】
図5は、図1に示したストリーム出力部140によって第2の符号化信号(共有情報)が格納されるビットストリームの他のデータ構造を示す図である。なお、この場合、音響符号化ビットストリームは、MPEG−2 AACに準拠するものでなくてもよい。図5(a)は、第1の符号化信号のみがフレームごとに連続して格納されているストリーム1を示している。図5(b)は、共有情報が符号化された第2の符号化信号のみが、ストリーム1に対応するフレームごとに連続して格納されているストリーム2を示している。図5(b)に示すストリーム2には、図4(a)のようにヘッダ情報及び識別情報を付加された共有情報が、例えば、1フレーム分ずつ順次格納される。このように、ストリーム出力部140は、第1の符号化信号と第2の符号化信号とを、それぞれ全く別のストリーム1とストリーム2とに格納してもよい。例えば、ストリーム1とストリーム2とは、異なるチャンネルで伝送されるビットストリームであってもよい。
【0053】
このように、第1の符号化信号と第2の符号化信号をまったく異なるビットストリームで伝送することにより、入力音響信号の基本的な情報を表す低域部分をあらかじめ伝送又は蓄積しておき、必要に応じて高域部に関する情報を後から付加することができるという効果がある。
【0054】
また、第2の符号化信号を組み込んだ符号化ビットストリームを本発明の復号化装置200のみを対象として出力する場合には、符号化装置100及び復号化装置200間であらかじめ定めた上記以外のヘッダ情報内の所定位置に組み込んでもよいし、第1の符号化信号中の所定の位置に第2の符号化信号を組み込んでもよいし、その両方にまたがって組み込んでもよい。また、ビットストリーム中に第2の符号化信号を格納するために、ヘッダにおいても第1の符号化信号においても、連続した領域を確保しなくてもよい。図5(c)は、第2の符号化信号をビットストリームのヘッダ情報及び第1の符号化信号の中に飛び飛びに挿入した場合のビットストリームのデータ構造を示す図である。すなわち、図5(c)のように、ヘッダ情報と第1の符号化信号との中に、非連続に第2の符号化信号を組み込んでもよい。この場合も、図4(a)のようにヘッダ情報及び識別情報を付加された共有情報が順次格納される。
【0055】
以上のように構成された符号化装置100及び復号化装置200の動作について、以下、図6、図7及び図10のフローチャートと図9の波形図とを用いて説明する。
図6は、図1に示した第1の量子化部131のスケールファクター決定処理における動作を示すフローチャートである。第1の量子化部131は、まず、スケールファクターの初期値として、各スケールファクターバンドに共通のスケールファクターを定め(S91)、そのスケールファクターを用いて、1フレーム分の音響データとして共有判定部137から出力されたスペクトルデータをすべて量子化するとともに、求められたスケールファクターの前後の差分を求め、その差分と先頭のスケールファクターと各量子化値とをハフマン符号化する(S92)。なお、ここでの量子化及び符号化は、ビット数のカウントのためだけに行うので、処理を簡略化するため、データのみについて行い、ヘッダなどの情報は付加しないものとする。次いで、第1の量子化部131は、ハフマン符号化後のデータのビット数が所定のビット数を超えたか否かを判断し(S93)、超えていれば、スケールファクターの初期値を下げ(S101)、そのスケールファクターの値を用いて、同じスペクトルデータにつき、量子化とハフマン符号化とをやり直した上(S92)、ハフマン符号化後の1フレーム分の符号化データのビット数が所定のビット数を超えたか否かを判断して(S93)、所定ビット数以下になるまでこの処理を繰り返す。
【0056】
第1の量子化部131は、符号化データのビット数が所定のビット数を超えていなければ、スケールファクターバンドごとに以下の処理を繰り返し、各スケールファクターバンドのスケールファクターを決定する(S94)。まず、スケールファクターバンド内の各量子化値を逆量子化し(S95)、それぞれの逆量子化値とそれに対応する元のスペクトルデータとの各絶対値の差分を求めて合計する(S96)。さらに、求められた差分の合計が許容範囲内の値であるか否かを判断し(S97)、許容範囲内であれば、次のスケールファクターバンドにつき、上記の処理を繰り返す(S94〜S98)。一方、許容範囲を超えていれば、スケールファクターの値を大きくして当該スケールファクターバンドのスペクトルデータを量子化するとともに(S100)、その量子化値を逆量子化して(S95)、逆量子化値と対応するスペクトルデータとの絶対値の差分を合計する(S96)。さらに、差分の合計が許容範囲内かどうかを判断して(S97)許容範囲を超えていれば、許容範囲内となるまでスケールファクターを順次大きくし(S100)、上記の処理(S95〜S97及びS100)を繰り返す。
【0057】
第1の量子化部131は、すべてのスケールファクターバンドにつき、スケールファクターバンド内の量子化値を逆量子化した値と元のスペクトルデータとの絶対値の差分の合計が許容範囲となるようなスケールファクターを決定すると(S98)、決定されたスケールファクターを用いて、再度、1フレーム分のスペクトルデータを量子化し、各スケールファクターの差分と先頭のスケールファクターと各量子化値とをハフマン符号化し、符号化データのビット数が所定のビット数を超えているか否かを判定する(S99)。符号化データのビット数が所定のビット数を超えていれば、それが所定のビット数以下になるまでスケールファクターの初期値を下げた後(S101)、各スケールファクターバンド内のスケールファクターを決定する処理(S94〜S98)を繰り返す。符号化データのビット数が所定のビット数を超えていなければ(S99)、そのときの各スケールファクターの値を、各スケールファクターバンドのスケールファクターに決定する。
【0058】
なお、スケールファクターバンド内の量子化値を逆量子化した値と元のスペクトルデータとの絶対値の差分の合計が許容範囲となるかどうかの判断は、聴覚心理モデルなどのデータに基づいて行われる。
【0059】
また、ここではスケールファクターの初期値を比較的大きな数値に設定し、ハフマン符号化後の符号化データのビット数が、所定のビット数を超えた場合には、順次、スケールファクターの初期値を下げていく方法でスケールファクターを決定しているが、必ずしもこのようにする必要はない。例えば、あらかじめスケールファクターの初期値を低い値に設定しておき、その初期値を徐々に増加していき、符号化データの全体のビット数が所定のビット数を最初に超えた段階で、直前に設定されていたスケールファクターの初期値を用いて各スケールファクターバンドのスケールファクターを決定するようにしてもよい。
【0060】
さらに、ここでは1フレーム分の符号化データ全体のビット数が所定のビット数を超えないように各スケールファクターバンドのスケールファクターを決定したが、必ずしもこのようにしなくてよい。例えば、各スケールファクターバンドにおいて、スケールファクターバンド内の各量子化値が所定のビット数を超えないようスケールファクターを決定するようにしてもよい。
【0061】
図7は、図1に示した共有判定部137の1フレームの共有判定処理における動作の一例を示すフローチャートである。ここで共有判定部137は、フレーム内の各ウィンドウの判定結果を、例えば8個のウィンドウに対応する8個のフラグからなる共有情報で表すとする。フラグはそれぞれ、値「0」が高域部の量子化データを伝送することを表し、値「1」が高域部の量子化データを他のウィンドウと共有することを表す。
【0062】
共有判定部137は、変換部120から入力した第1ウィンドウの全スペクトルデータを第1の量子化部131に出力し、共有情報の第1ビットであるフラグを「0」にした後(S1)、残りの第2から第8までの各ウィンドウについて、以下の判定処理を繰り返す(S2〜S9)。
【0063】
すなわち、注目しているウィンドウと、その直前のウィンドウであってフラグが「0」のウィンドウとの間でスペクトルのエネルギー差を求め(S3)、エネルギー差が所定のしきい値未満となるか否かを判断する(S4)。
【0064】
判断の結果、エネルギー差がしきい値未満であれば、現在注目しているウィンドウと、前記直前のウィンドウとのスペクトルが相似であるとして、注目ウィンドウと前記直前のウィンドウとの間で高域部スペクトルデータを共有すると判定する。この場合、共有判定部137は、注目ウィンドウの高域部スペクトルを「0」に置換し(S5)、共有情報中の注目ウィンドウに対応するビットを「1」にする(S6)。一方、判断の結果、エネルギー差がしきい値以上であれば、注目ウィンドウと前記直前のウィンドウとの間で高域部スペクトルデータを共有しないと判定する。この場合、共有判定部137は、注目ウィンドウの全スペクトルデータをそのまま第1の量子化部131に出力し(S7)、共有情報中の注目ウィンドウに対応するビットを「0」にする(S8)。
【0065】
例えば、まず、第2ウィンドウを注目ウィンドウとし、第2ウィンドウの128サンプルからなる各スペクトルデータと、第1ウィンドウの128サンプルからなる各スペクトルデータとについて、同じ周波数同士の差分を求め、求められた差分を合計することによって、第2ウィンドウと第1ウィンドウとのスペクトルのエネルギー差を求め(S3)、求められたエネルギー差が所定のしきい値未満であるか否かを判断する(S4)。
【0066】
ここで、第1ウィンドウと第2ウィンドウとのエネルギー差がしきい値未満であったとすると、共有判定部137は、第2ウィンドウと第1ウィンドウとのスペクトルが相似であるので、第2ウィンドウにおいて、第1ウィンドウの高域部データを共有すると判定する。この判定に応じて、共有判定部137は第2ウィンドウの高域部スペクトルデータをすべて「0」に置換し(S5)、共有情報の第2ビットのフラグを「1」にする(S6)。
【0067】
第2ウィンドウについての判定処理はこれで終了した(S9)ので、共有判定部137は、次の第3ウィンドウについて(S2)、第1ウィンドウとのスペクトルのエネルギー差を計算する(S3)。具体的には、第3ウィンドウの128サンプルからなる各スペクトルデータと、第1ウィンドウの128サンプルからなる各スペクトルデータとについて、同じ周波数同士の差分を求め、求められた差分を合計することによって、第2ウィンドウと第1ウィンドウとのスペクトルのエネルギー差を求める。さらに、求められたエネルギー差が所定のしきい値未満であるか否かを判断する(S4)。
【0068】
判断の結果、エネルギー差がしきい値以上であったとすると、第3ウィンドウと第1ウィンドウとのスペクトルは相似でないとして、第3ウィンドウにおいて第1ウィンドウの高域部スペクトルデータを共有しないと判定する。これに応じて、共有判定部137は、第3ウィンドウの高域部スペクトルデータを「0」に置換しないで、そのまま全スペクトルデータを第1の量子化部131に出力するとともに(S7)、共有情報の第3ビットのフラグを「0」にする。
【0069】
共有判定部137は、これで、第3ウィンドウについての判定処理を終了した(S9)ので、次の第4ウィンドウについて(S2)、直前のウィンドウであって高域部スペクトルデータを「0」にしないで出力したウィンドウとのエネルギー差を計算するが、この場合、前記直前のウィンドウとは、他のウィンドウと高域部量子化データを共有する連続したウィンドウの直前にある第3ウィンドウのことである。以下、共有判定部137は上記と同様にして第8ウィンドウまで共有判定処理を繰り返し、第8ウィンドウについての処理を終了すると、1フレームについての処理を終了する。この結果、当該1フレームのスペクトルデータが第1の量子化部131に出力され、そのフレームについての8ビットの共有情報、「01011111」が生成される。この場合、第2ウィンドウが直前の第1ウィンドウと高域部量子化データを共有し、第4から第8までの連続するウィンドウが直前の第3ウィンドウと高域部量子化データを共有することを示している。また、同じ共有情報の別の表現方法として、第1ウィンドウは常に高域部量子化データを伝送すると決めておく場合、共有情報の先頭1ビットを省略して、共有情報を「1011111」と7ビットで表してもよい。なお、共有情報はこのような表現に限ったものでなくてもよい。共有判定部137は、生成された共有情報を第2の符号化部134に出力し、その後、次のフレームについて同様の処理を行う。
【0070】
なお、ここでは、共有判定部137が注目しているウィンドウと、高域部スペクトル値を「0」に置換しないで出力した直前のウィンドウとのスペクトルのエネルギー差を、各ウィンドウの全域128サンプルについて求めたが、必ずしもこのようにする必要はなく、高域部64サンプルについてのみウィンドウ間のエネルギー差を求め、そのエネルギー差がしきい値未満となるウィンドウについて、高域部データを共有すると判定してもよい。
【0071】
また、ここでは、第1ウィンドウについては高域部スペクトルデータを置換しないで、常に全スペクトルデータをそのまま出力する場合を説明したが、必ずしもそうする必要はない。例えば、共有判定部137は、1フレーム内で、どのウィンドウに対してもスペクトルのエネルギー差が最小となるウィンドウをサーチし、その1つ、あるいは、エネルギー差が小さい順に所定の数のウィンドウだけ、ウィンドウ内の全スペクトルデータを(量子化及び符号化し、)伝送するとしてもよい。そうした場合、第1ウィンドウの高域部スペクトルデータを必ず伝送するとは限らない。
【0072】
なお、本実施の形態の形態において、あるウィンドウが他のウィンドウと高域部を共有するか否かの判定は、高域部データを共有しない直前のウィンドウとの間でスペクトルのエネルギー差を求め、そのエネルギー差がしきい値未満であれば共有すると判定したが、ウィンドウ間で高域部量子化データを共有するか否かの判定基準は、エネルギー差でなくてもよい。例えば、各ウィンドウ内においてスペクトル値の絶対値が最大となるスペクトルデータの周波数軸上の位置(周波数)を求め、ウィンドウ間でのその位置のずれが所定のしきい値未満となる場合に、高域部量子化データを共有するとしてもよい。それ以外にも、高域部データを共有しない直前のウィンドウとの間でスペクトルのピークの数および/または位置が類似する場合に、共有すると判定してもよい。また、これらをスケールファクターバンドごとに比較して、類似の度合いに応じて点数評価し、1ウィンドウ全体について総合的に判断してもよい。また単に、高域部データを共有しない直前のウィンドウとの間で、ウィンドウ内において絶対値が最大となるスペクトルデータの位置が類似する場合に、共有すると判定してもよい。さらに、各ウィンドウのスペクトルに所定の関数をかけて比較し、その比較結果に基づいて共有するか否かを判定してもよい。なおまた、高域部データのみを共有する場合には、スペクトルの相似性を比較することなく、あらかじめ定めたウィンドウ間で高域部スペクトルデータを共有するとしてもよい。例えば、第2、第4、第6及び第8というように偶数番目のウィンドウにおいて奇数番目のウィンドウと高域部データを共有するように定めておいてもよく、その逆でもよい。また、それ以外の組み合わせであらかじめ高域部データを「0」に置換しないウィンドウを定めておいてもよい。例えば、特定の1つのウィンドウの高域部データを他の7つのウィンドウで共有するとしておいてもよい。
【0073】
さらにまた、各ウィンドウの高域部、あるいはウィンドウの全域において、スペクトルのピークが複数ある場合には、各ピークの周波数がそれぞれしきい値の範囲内で近似するウィンドウ間で高域部量子化データを共有するとしてもよい。また、各ピークのウィンドウ間の周波数差の合計がしきい値の範囲内となるウィンドウ間で高域部量子化データを共有するとしてもよい。
【0074】
上記のように生成された符号化装置100からの符号化ビットストリームを入力した復号化装置200では、第1の復号化部221において第1の符号化信号を従来の手順に従い復号化すると、1024サンプルのスペクトルデータが得られる。このとき、図7の例では、第2及び第4から第8ウィンドウに関して高域部スペクトルデータのスペクトル値はすべて「0」となっている。これに対し、第2の逆量子化部224は、少なくとも第1の逆量子化部222より出力される1ウィンドウ分の高域部スペクトルデータを保持しておくためのメモリを有し、フラグが「0」であるウィンドウにつき、第1の逆量子化部222の出力である高域部のスペクトルデータをメモリに保持しておき、保持しているスペクトルデータをそれ以降、フラグが「1」となっている各ウィンドウに対し、フラグが「0」のウィンドウが現れるまで繰り返しコピーして出力する。なお、上記メモリは、MPEG−2 AACに準拠した従来の復号化装置400において、1フレーム分のスペクトルデータを保持するために標準的に備えられているものを使用すればよく、新たにメモリを備える必要はない。また、本発明において新たにメモリを備えるとしたら、スペクトルデータのコピー元となるウィンドウの先頭及び高域部先頭を示すポインタを格納するための記憶領域を増設する場合が考えられる。この場合でも、目的とするスペクトルデータの周波数などに基づいて上記メモリ内を検索するように処理手順を設定しておけば、あえてこのような記憶領域を増設する必要はなく、例えば、目的とするスペクトルデータを検索する間の処理時間を削減したい場合などには、必要に応じてメモリを備えればよい。このメモリについては、以下のスペクトルデータのコピー処理においても同様である。以下に、図8のフローチャートを用いてこれにおける第2の逆量子化部224の具体的な動作を説明する。
【0075】
図8は、図1に示した第2の逆量子化部224の高域部スペクトルデータのコピー処理における動作を示すフローチャートである。ここで、第2の逆量子化部224は、少なくとも、ここでは64サンプルの高域部スペクトルデータを記憶するためのメモリを備えているものとし、1フレーム内のすべてのウィンドウについて(S71)、フラグが「0」の場合(S72)、メモリに第1の逆量子化部222の出力である高域部スペクトルデータを保持し(S73)、フラグが「0」でない場合(S72)、メモリ内の高域部スペクトルデータを逆量子化データ合成部225に出力する(S74)という処理を繰り返す(S75)。
【0076】
すなわち、第2の逆量子化部224は、第2の復号化部223によって復号された共有情報のうちの注目ウィンドウに対応する1ビットを調べ、そのビットのフラグが「0」か否かを調べる(S72)。調べた結果、フラグが「0」であれば、第1の逆量子化部222によって逆量子化された注目ウィンドウの高域部スペクトルデータは、「0」に置換されていないスペクトルである。第2の逆量子化部224は、この高域部スペクトルデータをメモリ内に保持し(S73)、メモリ内にすでにデータがあれば、そのデータを更新する。調べた結果(S72)、フラグが「1」であれば、注目ウィンドウに対して第1の逆量子化部222から出力される高域部スペクトルデータは、すべて値が「0」となっている。第2の逆量子化部224は、注目ウィンドウに対してメモリ内のスペクトルデータを読み出し、読み出したスペクトルデータを逆量子化データ合成部225に出力する(S74)。この結果、注目ウィンドウの高域部スペクトルデータは、逆量子化データ合成部225において、第2の逆量子化部224によってメモリから読み出されたスペクトル値に置換される。
【0077】
例えば、まず、第1ウィンドウに注目すると、共有情報の第1ビットのフラグが「0」であったとする。この場合、第2の逆量子化部224は、第1の逆量子化部222で得られた第1ウィンドウの高域部スペクトルデータをメモリに書き込み、メモリ内のデータを更新する(S73)。第2の逆量子化部224は、第1ウィンドウに対してスペクトルデータを逆量子化データ合成部225に出力しないので、第1の逆量子化部222によって出力されたスペクトルデータが、そのまま第1ウィンドウのスペクトルデータとして逆量子化データ合成部225を介して逆変換部230に出力される。
【0078】
次に、第2ウィンドウに注目すると、共有情報の第2ビットのフラグが「1」であったとする。この場合、第2の逆量子化部224は、メモリ内から第1ウィンドウの高域部スペクトルデータを読み出し、読み出したスペクトルデータを第2ウィンドウの高域部スペクトルデータとして逆量子化データ合成部225に出力する(S74)。第1の逆量子化部222からは、第2ウィンドウのスペクトルデータが逆量子化データ合成部225に出力されており、第2ウィンドウの高域部スペクトルデータの値はすべて「0」となっている。この高域部スペクトルデータは、逆量子化データ合成部225において、第2の逆量子化部224によってメモリから読み出された第1ウィンドウのスペクトル値に置換される。
【0079】
このようにして、復号化装置200では、符号化装置100からの共有情報に基づいて、フラグが「1」のウィンドウに対してフラグが「0」のウィンドウの高域部スペクトルデータがコピーされることになる。
【0080】
なお、上記説明では、高域部データを共有するウィンドウは直前のウィンドウの「0」に置換されなかった高域部スペクトルデータをそのままコピーするだけであったが、必要に応じてコピーしたスペクトルデータの振幅を調整してもよい。振幅の調整は、各スペクトルにあらかじめ決められた係数、その値を例えば「0.5」として乗じることにより達成する。この係数は固定値でもよいし、帯域ごとに変更してもよいし、第1の逆量子化部222から出力されるスペクトルデータに応じて変更してもよい。
【0081】
また、ここでは振幅の調整に復号化装置200においてあらかじめ定めた係数を用いるとしたが、符号化装置100においてこの係数を計算しておき、共有情報である第2の符号化信号に付加してもよい。または係数としてスケールファクター値を第2の符号化信号に付加してもよいし、係数として量子化値を第2の符号化信号に付加してもよい。また、振幅調整方法は上記の方法に限らず、それ以外の方法であってもよい。
【0082】
なお上記実施の形態においては、共有される高域部データとして、フラグが「0」のウィンドウの高域部スペクトルデータを従来の方法で量子化及び符号化して伝送したが、これに限ったものでなくてよい。例えば、共有される高域部データとして、フラグが「0」のウィンドウの高域部スペクトルデータを従来のようには伝送せず、すなわち、どのウィンドウについても高域部スペクトルデータをすべて「0」に置換してしまう。その代わり、フラグが「0」のウィンドウの高域部の音響信号をその音響信号の代表値などにより簡略的に表した補助情報を生成して、前記共有情報とこの補助情報とを第2の符号化信号として符号化してもよい。補助情報は、例えば、(1)高域部の各スケールファクターバンド内で絶対最大スペクトルデータ(絶対値が最大となるスペクトルデータ)の量子化値を「1」にするような、スケールファクターバンドごとのスケールファクター、(2)高域部の全スケールファクターバンドに共通なスケールファクターを定め、そのスケールファクターを用いて、スケールファクターバンドごとに絶対最大スペクトルデータを量子化した場合の量子化値、(3)各スケールファクターバンドにおける絶対最大スペクトルデータの位置又は高域部全体における絶対最大スペクトルデータの位置、(4)高域部においてあらかじめ定めた位置のスペクトルの正負を示す符号及び(5)高域部のスペクトルに相似した低域部のスペクトルをコピーして高域部のスペクトルを表す場合のコピー方法などで表される。またこれらを2つ以上組み合わせてもよい。その際、復号化装置200側では、この補助情報に基づいて、前記高域部スペクトルデータを復元する。
【0083】
以下では、上記(1)のスケールファクターを補助情報とした場合について説明する。
図9は、図1に示した共有判定部137によってSHORTブロックの1ウィンドウにつき生成される補助情報(スケールファクター)の具体例を示すスペクトル波形図である。なお、図9において、低域部の周波数軸上に示す区切り及び高域部において周波数方向に破線で示す区切りは、スケールファクターバンドの区切りを示しているが、説明のため簡略的に示したものであって、その位置は実際とは異なる。
【0084】
変換部120から出力されるスペクトルデータのうち、図9に実線の波形で示す再生帯域11.025kHz以下の低域部は、第1の量子化部131に出力され、従来どおり量子化される。一方、図9に破線の波形で示す再生帯域11.025kHzを超える再生帯域22.05kHzまでの高域部は、共有判定部137によって計算される補助情報(スケールファクター)によって表される。以下、図9の具体例を用い、図10のフローチャートに従って共有判定部137の補助情報(スケールファクター)の計算手順を説明する。
【0085】
図10は、図1に示した共有判定部137の補助情報(スケールファクター)計算処理における動作を示すフローチャートである。
共有判定部137は、再生帯域11.025kHzを超える再生帯域22.05kHzまでの高域部のすべてのスケールファクターバンドにつき、各スケールファクターバンドにおける絶対最大スペクトルデータの量子化値を「1」にする最適なスケールファクターを、以下の手順に従って計算する(S11)。
【0086】
共有判定部137は、再生帯域11.025kHzを超える高域部の最初のスケールファクターバンドにおける絶対最大スペクトルデータ(ピーク)を特定する(S12)。図9の具体例において、最初のスケールファクターバンド内で特定されたピークの位置が▲1▼で、そのときのピークの値が「256」であったとする。
【0087】
共有判定部137は、図7のフローチャートに示した手順と同様にして、量子化値を計算する公式にピークの値「256」と初期値のスケールファクター値とをあてはめ、公式から得られる量子化値が「1」となるスケールファクターsfの値を計算する(S13)。例えば、この場合、ピーク値「256」の量子化値を「1」にするスケールファクターsfの値、例えばsf=24が算出される。
【0088】
最初のスケールファクターバンドについて、ピークの量子化値を「1」にするスケールファクターの値sf=24が求められると(S14)、共有判定部137は、次のスケールファクターバンドについて、スペクトルデータのピークを特定し(S12)、例えば、特定されたピークの位置が▲2▼で、その値が「312」であった場合、ピーク値「312」の量子化値が「1」となるスケールファクターsfの値、例えばsf=32を計算する(S13)。
【0089】
同様にして、共有判定部137は、高域部における3番目のスケールファクターバンドについて、ピーク▲3▼の値「288」の量子化値を「1」にするスケールファクターsfの値、例えばsf=26を計算し、4番目のスケールファクターバンドについて、ピーク▲4▼の値「203」の量子化値を「1」にするスケールファクターsfの値、例えばsf=18を計算する。
【0090】
このようにして、高域部のすべてのスケールファクターバンドについて、ピーク値の量子化値を「1」にするスケールファクターが計算されると(S14)、共有判定部137は、計算によって得られた各スケールファクターバンドのスケールファクターを、高域部の補助情報として第2の符号化部134に出力し、処理を終了する。
【0091】
以上のようにして共有判定部137によって補助情報(スケールファクター)が生成されるが、この補助情報(スケールファクター)によれば、高域部を、各スケールファクターバンドに1つのスケールファクターだけで表すことができるという効果がある。さらに、各スケールファクターの値を0〜255までの値で表せば、高域部における各スケールファクターバンド(ここでは4つ)につき、それぞれ8ビットで表すことができる。また、この各スケールファクターの差分をハフマン符号化するようにすれば、データ量をさらに低減できる可能性がある。従って、この補助情報は、高域部の各スケールファクターバンドにつき1つのスケールファクターを示しているに過ぎないが、従来の方法に従って高域部を量子化する場合に比べて、高域部スペクトルデータの数だけある量子化値を符号化しない分だけデータ量が大きく低減されていることがわかる。
【0092】
また、このスケールファクターは、各スケールファクターバンドにおけるピーク値(絶対値)にほぼ比例した値を示しており、高域部におけるサンプル数だけ一定値をとるスペクトルデータを生成するか、あるいは低域部のスペクトルデータをコピーするかして、それにスケールファクターを乗算して得られるスペクトルデータは、入力音響信号に基づいて得られたスペクトルデータを大まかに復元しているといえる。また、これとは別の方法として、スケールファクターバンド毎に、バンド内に生成またはコピーされたスペクトルデータの絶対最大値と、そのバンドに対応するスケールファクター値を用いて量子化値「1」を逆量子化した値との比率を係数として、バンド内の各スペクトルデータに乗じることにより、より精度良くスペクトルデータを復元することができる。(2)スケールファクターバンドごとの絶対最大スペクトルデータの量子化値を補助情報とする場合も上記と同様にして高域部スペクトルデータを復元することができる。また、補助情報を(3)各スケールファクターバンドにおける絶対最大スペクトルデータの位置又は高域部全体における絶対最大スペクトルデータの位置又は(4)高域部においてあらかじめ定めた位置のスペクトルの正負を示す符号とする場合には、復号化装置200において、あらかじめ定めた波形のスペクトルを生成するかあるいは低域部のスペクトルをコピーし、(3)又は(4)の補助情報で表される条件にスペクトルの波形が一致するよう、スペクトルを調整する。(5)高域部のスペクトルに相似した低域部のスペクトルをコピーして高域部のスペクトルを表す場合のコピー方法を補助情報とする場合には、共有判定部137は、ウィンドウ間のスペクトルの相似性を判定する場合と同様にして、高域部の各スケールファクターバンド内のスペクトルと互いに相似するスペクトルをもつ低域部のスケールファクターバンドを特定し、特定したスケールファクターバンド番号を補助情報とする。また、低域部のスペクトルをコピーする方向(低域部から高域部に向かってコピーする場合と、高域部から低域部に向かってコピーする場合との2通りがある)及び低域部のスペクトルと高域部のスペクトルとの符号の関係(スペクトルの正負の符号を反転してコピーするか、反転しないでコピーするか)も併せて補助情報とする。復号化装置200においては、高域部のスケールファクターバンドごとに、この補助情報で示される低域部のスペクトルを高域部にコピーして高域部スペクトルを復元する。さらに、高域部の波形の相違は、低域部ほど聴覚的にはっきり識別されるものではないので、このようにして得られた補助情報は、高域部の波形を表す情報として十分であるといえる。
【0093】
なお、ここでは、高域部の各スケールファクターバンド内のスペクトルデータの量子化値が「1」となるようスケールファクターを計算したが、必ずしも「1」である必要はなく、他の値に定めておいてもよい。
またここでは、補助情報としてスケールファクターのみを符号化したが、これに限ったものでなく、量子化値、特徴的なスペクトルの位置情報、スペクトルの正負の符号を表すサイン情報及びノイズ生成方法等を併せて符号化してもよい。またこれらを2つ以上組み合わせて符号化してもよい。この場合、補助情報内に、振幅の比率を表す係数や絶対最大スペクトルデータの位置などを前記スケールファクターと組み合わせて符号化すれば、特に有効である。
【0094】
なお、上記実施の形態では、共有判定部137が共有情報を生成する場合について説明したが、本発明の符号化装置100においては、必ずしも共有情報を生成しなくてもよい。この場合、第2の符号化部134は不要である。これに対し、復号化装置200側で、高域部スペクトルデータを共有しているウィンドウを判定する必要がある。この場合、第2の逆量子化部224は、少なくとも1つのウィンドウの高域部スペクトルデータを保持しておくためのメモリを有し、例えば、第1の逆量子化部222が逆量子化によって各ウィンドウのスペクトルデータを復元した時点で、「0」以外の値のスペクトルデータを含む64サンプル分の高域部スペクトルデータをメモリに保持するとともに、高域部のスペクトル値がすべて「0」になっているウィンドウを検出し、検出されたウィンドウに対応付けてメモリ内の高域部スペクトルデータを出力する。例えば、第2の逆量子化部224は、検出したウィンドウの番号を指定して、メモリ内の高域部スペクトルデータを逆量子化データ合成部225に出力する。これによって、指定されたウィンドウの高域部スペクトルデータが、逆量子化データ合成部225において、メモリからコピーしたスペクトル値に置換される。
【0095】
これにおいて符号化装置100は、必ずしも第1ウィンドウの高域部スペクトルデータを伝送しなくてよい。この場合には、符号化装置100側では高域部データを伝送するウィンドウを少なくとも1フレームの前半に設けるようにする。第2の逆量子化部224は第1の逆量子化部222の逆量子化結果を常時監視し、第1の逆量子化部222の逆量子化結果において、第1ウィンドウの高域部のスペクトル値がすべて「0」であった場合、第2の逆量子化部224は、それ以降のウィンドウについて、高域部に「0」以外の値のスペクトルデータを含むウィンドウをサーチする。サーチの結果、高域部に「0」以外の値のスペクトルデータを含むウィンドウが得られると、第2の逆量子化部224は、そのウィンドウの高域部スペクトルデータを逆量子化データ合成部225に出力する。それと同時に、その高域部スペクトルデータをメモリにコピーして、以降に検出されるウィンドウに対応付けてその値で置換するよう逆量子化データ合成部225に出力する。
【0096】
以上のように本実施の形態によれば、従来では、低転送レートの伝送路を用いる場合、カットされることが多い高域部スペクトルデータを、SHORTブロックの1フレーム8ウィンドウにつき、少なくとも1ウィンドウ分を伝送するので、復号化装置において、従来よりも、高域の豊かな音質で音響信号を再生することができるという効果がある。また、本実施の形態の符号化装置100では、相似したスペクトルをもつウィンドウ間において、高域部スペクトルデータを共有するので、高域部スペクトルデータを伝送されなかったウィンドウにおいても、原音の音質に相似した音響信号を再生することができるという効果がある。
【0097】
なお、本実施の形態は、サンプリング周波数を44.1kHzとして説明したが、サンプリング周波数は必ずしもこの値に限定されず、他の値であってもよい。また、ここでは高域部を周波数11.025kHz以上の周波数領域としたが、低域部と高域部との区切りは必ずしも周波数11.025kHzでなくてもよく、もっと低域で区切ってもよいし、高域で区切ってもよい。
【0098】
なお、上記実施の形態においては、第2の符号化部134による符号化結果(符号化された共有情報など)に識別情報を付し、これを第2の符号化信号としてビットストリーム中に格納する場合について説明したが、Fill ElementやDSEなどに他の方式に基づく符号化情報が格納される可能性がない場合や、本発明の復号化装置200でのみ復号化が可能なビットストリームに第2の符号化信号を格納する場合などには、必ずしも識別情報を付す必要はない。この場合、復号化装置200は、ビットストリーム中の符号化装置100との間であらかじめ定めた格納位置(例えば、Fill Element)から無条件に第2の符号化信号を抽出し、共有情報を復号化する。
【0099】
なお本実施の形態については、ブロックサイズがSHORTブロックの時のみ有効であるので、ブロックサイズがLONGブロックである時には、内部の機能を従来の符号化装置300及び復号化装置400と同様に切り換えるようにしてもよい。すなわち、この場合、符号化装置100においては、音響信号入力部110の切り出しの周期を1024サンプルとし、その前後512サンプルを重複して切り出すよう機能を切り換え、変換部120のMDCT変換の単位を2048サンプルに切り換えるとともに、その変換結果のうちの片側1024サンプルを、所定の49スケールファクターバンドに分類するよう切り換える。共有判定部137は、入力した変換部120からのスペクトルデータをそのまま第1の量子化部131に出力し、第2の符号化部134は機能を停止する。復号化装置200においては、ストリーム入力部210は符号化音響ストリームから第2の符号化信号を抽出せず、第2の復号化部223と第2の逆量子化部224とは機能を停止し、逆量子化データ合成部225は、入力した第1の逆量子化部222からのスペクトルデータを、逆変換部230にそのまま出力する。このように符号化装置100及び復号化装置200を切り換え可能にすることによって、スローテンポの音楽などについては音質を重視したLONGブロックによる音響データを伝送し、復号化することができるとともに、アタックが頻出するようなアップテンポの音楽については、追従性のよいSHORTブロックによる音響データを伝送し、復号化することができるという効果がある。
【0100】
(実施の形態2)
以下では、図11及び図12を用いて本実施の形態における符号化装置101及び復号化装置201について、実施の形態1と異なる点についてのみ説明する。図11は、符号化装置101及び復号化装置201の構成を示すブロック図である。
<符号化装置101>
符号化装置101は、SHORTブロックで符号化する場合に、2つ以上のウィンドウにおいてスペクトルデータが類似または相似ならば、そのウィンドウ間で、ウィンドウ内の全量子化データを共有することにより、伝送される符号化音響ストリームのデータ量を削減する。符号化装置101は、音響信号入力部110、変換部120、第1の量子化部131、第1の符号化部132、第2の符号化部134、共有判定部138及びストリーム出力部140から構成される。
【0101】
共有判定部138は、ウィンドウ内の高域部スペクトルデータを共有するだけでなく、低域部スペクトルデータを含むウィンドウ内の全帯域のスペクトルデータを共有する点で、実施の形態1の共有判定部137と異なる。すなわち、高周波領域の音響信号と比較した場合、原音に対して聴覚的に、より厳密な忠実性が要求される低周波領域の音響信号についても、そのデータ量を削減する。共有判定部138は、変換手段120の出力するスペクトルデータの8つのウィンドウに関して、他のウィンドウと量子化データを共有するウィンドウを判定し、前述の共有情報を生成するとともに、そのウィンドウ内のスペクトル値をすべて「0」に置換する。
【0102】
例えば、共有判定部138が、第1ウィンドウと第2ウィンドウとで第1ウィンドウのスペクトルデータを共有し、かつ、第3ウィンドウ以降のウィンドウでも第3ウィンドウのスペクトルデータを共有すると判定した場合、第2ウィンドウ及び第4から第8ウィンドウのスペクトル値をすべて「0」にし、共有情報「01011111」を生成する。この結果、第1の量子化部131において共有判定部138から出力されたスペクトルデータを量子化する場合に、第2ウィンドウ及び第4から第8ウィンドウのスペクトル値がすべて「0」であるため、従来と比べてさらに少ないデータ量で量子化することができる。
【0103】
<復号化装置201>
復号化装置201は、符号化装置101によって符号化された音響ビットストリームを復号化する装置であって、ストリーム入力部210、第1の復号化部221、第1の逆量子化部222、第2の復号化部223、第2の逆量子化部226、逆量子化データ合成部227、逆変換部230及び音響信号出力部240を備える。第2の逆量子化部226は、第2の復号化部223において復号化された共有情報に従って、フラグが「0」であらわされているウィンドウにつき、第1の逆量子化部222の逆量子化結果であるスペクトルデータをメモリにコピーし、コピーしたスペクトルデータを、フラグが「1」で表されている以下のウィンドウに対応付けて逆量子化データ合成部227に出力する。逆量子化データ合成部227は、第1の逆量子化部222の出力するスペクトルデータと第2の逆量子化部226の出力するスペクトルデータとをウィンドウ単位で合成する。
【0104】
図12は、図11に示した共有判定部138によるスペクトルデータの共有の一例を示す図である。図12は、図2(b)と同様、MDCT変換によって得られる1フレーム分のSHORTブロックのスペクトルデータを示している。このような各ウィンドウは、入力音響データのサンプリング周波数が例えば44.1kHzの場合、0kHzから22.05kHzまでの再生帯域を表している。
【0105】
すでに説明したように、SHORTブロックでは入力音響データの切り出しのサイクルが短いので、隣接する2つのウィンドウのスペクトルは、相互に類似した波形となる可能性が高い。図12において、例えば、第1ウィンドウと第2ウィンドウとのスペクトルが相似であり、かつ、第3〜第8ウィンドウのスペクトルが相似であると判断した場合、共有判定部138は、相互に類似した波形となるウィンドウ間、すなわち、第1ウィンドウと第2ウィンドウとで第1ウィンドウの量子化データを共有し、第3〜第8ウィンドウにおいて第3ウィンドウの量子化データを共有すると判定する。この場合、図12に矢印で示す範囲のスペクトルデータが伝送(すなわち、量子化及び符号化)の対象となり、それ以外の第2ウィンドウと、第4〜第8ウィンドウとのスペクトルデータは共有判定部138によってすべて「0」の値に置換される。このように、すべて「0」の値に置換されたウィンドウのスペクトルデータは、復号化装置201において、フラグが「0」の直前のウィンドウからコピーされたスペクトルデータによって近似的に復元される。
【0106】
上記のように共有判定部138は、スペクトルが相似するウィンドウ間で、低域部のスペクトルデータまでを共有することによって、符号化ビットストリームのデータ量を大幅に削減することができる。しかし、一般的に、低域部スペクトルは聴覚的に鋭敏な低周波領域の音響信号を表しているため、再生される音響信号の音質を重視する場合には、共有判定部138は、ウィンドウ間のスペクトルの相似性について、より厳密な判定を行う。具体的には、判定の基準は共有判定部137と同様の方法を用いるが、これらにおいて、例えば、しきい値の値を小さくしたり、複数の判定を併用したりすることによって、共有判定部137より厳しい判定を行う。さらにこの場合、同じ理由から、相似性の判定を省略することはできないので、あらかじめ定めたウィンドウのスペクトルデータのみ伝送することは行わない。
【0107】
なお、共有判定部138は、実施の形態1の共有判定部137と同様、必ずしも共有情報を生成しなくてよい。この場合、第2の符号化部134は不要である。例えば、共有判定部138がグルーピングを行う場合、各グループにつき、1つ又はそれ以上のウィンドウのスペクトルデータを従来どおり量子化及び符号化して伝送し、同じグループ内の他のウィンドウのスペクトルデータをすべて「0」に置換した後、量子化及び符号化し伝送する。この場合、共有判定部138は、グルーピングに関する情報を生成し、従来と同様、第1の量子化部131に出力する。なお、ウィンドウ内のスペクトルデータを「0」に置換しないで伝送するウィンドウは、必ずしもグループ内の先頭ウィンドウでなくてもよい。また、グループ内で1つのウィンドウのスペクトルデータを共有する必要はない。
【0108】
なお、グルーピングについては、従来、SHORTブロックにおいて既存のツールを用いて行われている手法であるので簡単に説明するが、このグルーピングによって、互いにスペクトルが相似するウィンドウがグループ化され、各グループ内で各ウィンドウのスケールファクターが共有される。グルーピングを行う際のウィンドウ間のスペクトルの相似性の判定は、スペクトルデータを共有する際の判定基準と同様である。サンプリング周波数44.1kHzのSHORTブロックでは、従来、各ウィンドウに14のスケールファクターバンドが規定されているため、各ウィンドウに14のスケールファクターが存在する。従って、1つのグループにグルーピングされるウィンドウの数が多ければ多いほど、伝送するスケールファクターのデータ量を低減することができる。
【0109】
さらに共有判定部138は、上記のようなグルーピングにおけるスペクトル相似性の判定において、ウィンドウ間で相似性の高いグループがある場合、グループ内で各ウィンドウの同一周波数のスペクトル値の平均値を求め、各周波数のスペクトル値の平均値128サンプルからなるウィンドウを新たに生成して当該グループの第1ウィンドウとし、グループ内の他のウィンドウのスペクトル値をすべて「0」にして第1の量子化部131に出力するとしてもよい。
【0110】
符号化装置101において共有情報を生成しない場合、あらかじめ符号化装置101と復号化装置201との間で、例えば、符号化装置101はグルーピングを行い、同じグループ内の先頭ウィンドウについてのみスペクトルデータを従来どおり量子化及び符号化して送信し、同一グループ内の他のウィンドウについてはスペクトルデータとして「0」を送信すると取り決めておく。これによって第2の逆量子化部226は、復号化されたグルーピングに関する情報に基づいて、各グループの先頭ウィンドウのスペクトルデータをコピーし、コピーしたスペクトルデータを、同一ウィンドウ内の2番目以降の各ウィンドウに対応付けて逆量子化データ合成部227に出力し、逆量子化データ合成部227に合成させる。
【0111】
また、符号化装置101において共有情報を生成せず、必ずしも先頭ウィンドウのスペクトルデータを送信しない場合には、第2の逆量子化部226は、復号化されたグルーピングに関する情報に基づいて、第1の逆量子化部222の逆量子化結果を監視し、第1の逆量子化部222が、あるウィンドウのスペクトルを復元しているとき、逆量子化の結果、値が「0」となったスペクトルデータを検出すると、第2の逆量子化部226は、同じグループ内の他のウィンドウの同じ周波数のスペクトルデータを参照して、その値が「0」でなければその値をコピーして逆量子化データ合成部227に出力し、逆量子化データ合成部227に合成させる。
【0112】
あるいは、第1の逆量子化部222が、あるウィンドウのスペクトルを復元しているとき、スペクトル値がすべて「0」となった場合、第2の逆量子化部226は、同じグループ内の他のウィンドウのスペクトルを参照して、「0」以外の値のスペクトルデータを含むウィンドウ内のスペクトルデータをコピーし、スペクトル値がすべて「0」となったウィンドウに対応付けて逆量子化データ合成部227に出力するとしてもよい。
【0113】
また、共有判定部138は、同一グループ内で複数のウィンドウのスペクトルデータを「0」に置換しないで第1の量子化部131に出力してもよい。この場合、復号化装置201において、第1の逆量子化部222があるウィンドウのスペクトルを復元しているとき、第2の逆量子化部226は、逆量子化の結果、値が「0」となったスペクトルデータを検出すると、同じグループ内の他のウィンドウの同じ周波数のスペクトルデータを参照して、(a)最初に見つけた「0」でないスペクトルデータをコピーする。または、(b)スペクトル値が最大のスペクトルデータをコピーするとしてもよいし、(c)最小のスペクトルデータをコピーするとしてもよい。
【0114】
さらにこの場合、復号化装置201において、第1の逆量子化部222が、あるウィンドウのスペクトルを復元しているとき、スペクトル値がすべて「0」となった場合、第2の逆量子化部226は、同じグループ内の他のウィンドウのスペクトルを参照して、「0」以外の値のスペクトルデータを含むウィンドウのうちで(a)スペクトルのピークの値が最大となるウィンドウのスペクトルデータをコピーするとしてもよいし、(b)エネルギーが最大となるウィンドウのスペクトルデータをコピーするとしてもよい。
【0115】
以上のように、本実施の形態によれば、8つウィンドウのうちいくつかのスペクトルデータを、スペクトルが相似する他のウィンドウと共有することによって、スペクトルデータの再現性の低下を最小限に抑えながらも、伝送する符号化音響ビットストリームのデータ量を削減することができるという効果がある。
【0116】
なお、本実施の形態においても、復号化装置201において、第2の逆量子化部226がコピーしたスペクトルデータの振幅を必要に応じて調整してもよいことはいうまでもない。振幅の調整は各スペクトルデータに予め決められた係数、例えば0.5を乗じる。この係数は固定値でもよいし、帯域ごとに変更してもよいし、第1の逆量子化部222より出力されるスペクトルデータに応じて変更してもよい。なお今回の説明においては予め定めた係数を用いるが、補助情報として第2の符号化信号に付加してもよい。または係数としてスケールファクター値を第2の符号化信号に付加してもよいし、係数として量子化値を第2の符号化信号に付加してもよい。
【0117】
また、本実施の形態において、フラグが「0」のウィンドウについても、高域部のスペクトルデータを「0」に置換してしまい、代わりに高域部のデータとして実施の形態1で説明した補助情報を生成するとしてもよい。この場合、第2の符号化信号内に共有情報と、補助情報とを符号化する。すなわち、符号化装置102において、フラグが「0」のウィンドウについては低域部スペクトルデータのみを従来どおり量子化及び符号化し、高域部スペクトルデータとして「0」を量子化及び符号化する。フラグが「0」のウィンドウについて、実施の形態1で説明した高域部スペクトルを表す補助情報を生成し、共有情報と補助情報とを組み合わせて符号化するようにする。これに対応して、復号化装置201では、共有情報のフラグが「0」のウィンドウについては、低域部スペクトルデータを従来と同様、第1の符号化信号を逆量子化することによって復元し、高域部スペクトルデータを前記補助情報に基づいて復元する。共有情報のフラグが「1」のウィンドウについては、フラグが「0」のウィンドウにおいてこのように復元された全域のスペクトルデータをコピーして復元する。
【0118】
(実施の形態3)
以下では、図13〜図16を用いて本実施の形態における符号化装置102及び復号化装置202について、実施の形態1と異なる点についてのみ説明する。図13は、本発明の符号化装置102及び復号化装置202の構成を示すブロック図である。
<符号化装置102>
符号化装置102は、LONGブロックにおいて量子化の結果、絶対最大スペクトルに隣接するため量子化値が「0」となったスペクトルデータを復元し、復元したスペクトルデータを少ないデータ量で復号化装置202に伝送する。符号化装置102は、音響信号入力部111、変換部121、第1の量子化部151、第1の符号化部152、第2の量子化部153、第2の符号化部154及びストリーム出力部160から構成される。
【0119】
音響信号入力部111は、周波数44.1kHzのサンプリング周波数でサンプリングされたMPEG−2 AACと同様の入力信号であるデジタル音響データを、約23.2msec(1024サンプルごと)のサイクルで、その前後の512サンプルをオーバーラップさせて切り出す。
【0120】
変換部121は、MDCTを用いて、入力信号1024点を前後512サンプルのデータとオーバーラップさせて2048サンプルの時間軸データを、2048サンプルのスペクトルデータに変換する。さらに、変換部121は、MDCTでは左右対称なスペクトルデータとなるため、片方の1024サンプルのスペクトルデータを、それぞれ1サンプル以上(実用的には4の倍数)のスペクトルデータを含む複数のスケールファクターバンドに分類する。ここでは、サンプリング周波数が44.1kHzのデジタル音響データを入力するので、LONGブロック1フレームに含まれるスケールファクターバンドの数は49個である。
【0121】
第1の量子化部151は、変換部121の出力するスペクトルデータを入力し、入力されたスペクトルデータの各スケールファクターバンドにつき、それぞれスケールファクターを決定するとともに、決定したスケールファクターでそのスケールファクターバンド内のスペクトルを量子化し、量子化結果である量子化値を第1の符号化部152に出力する。
【0122】
第1の符号化部152は、第1の量子化部151で量子化されたスペクトルデータ1024サンプルに対応する各スケールファクターバンド内の量子化値及びその量子化に用いられたスケールファクターの差分などを、第1の符号化信号としてハフマン符号化して所定のストリーム用のフォーマットに変換する。
【0123】
第2の量子化部153は、第1の量子化部151の量子化結果を監視し、各スケールファクターバンドにおいて、絶対最大スペクトルデータ(絶対値が最大となるスペクトルデータ)に隣接するために第1の量子化部151の量子化によって量子化値が「0」となった前後各5サンプル、合計10サンプルのスペクトルデータを特定する。第2の量子化部153は、特定したスペクトルデータに対して変換部121から入力したスペクトル値を、符号化装置102と復号化装置202との間であらかじめ定めたスケールファクターを用いて量子化し、量子化値のみを、より少ないデータ量で表現して第2の符号化部154に出力する。
【0124】
第2の符号化部154は、第2の量子化部153が出力した量子化値のみを所定のストリーム用のフォーマットにハフマン符号化し、第2の符号化信号として出力する。第2の量子化部153で用いられたスケールファクターは、符号化しない。
【0125】
ストリーム出力部160は、第1の符号化部152から出力される第1の符号化信号にヘッダ情報及びその他必要に応じた副情報を付加してMPEG−2 AACの符号化ビットストリームに変換し、かつ第2の符号化部154から出力された第2の符号化信号を、上記ビットストリーム中の従来の復号化装置では無視される又はその動作が規定されていない領域に格納する。
【0126】
<復号化装置202>
復号化装置202は、ピークに隣接するため量子化によって量子化値が「0」となったスペクトルデータを、復号化された第2の符号化信号に従って復元する復号化装置であって、ストリーム入力部260、第1の復号化部251、第1の逆量子化部252、第2の復号化部253、第2の逆量子化部254、逆量子化データ合成部255、逆変換部231及び音響信号出力部241から構成される。
【0127】
ストリーム入力部260は、符号化装置102において生成された符号化ビットストリームを入力し、入力した符号化ビットストリームから第1の符号化信号と第2の符号化信号とを取り出して、それぞれ第1の復号化部251と第2の復号化部253とに出力する。
【0128】
第1の復号化部251は、ストリーム入力部260の出力する第1の符号化信号を入力し、ハフマン符号化されたデータをストリーム用のフォーマットから量子化データに復号化する。第1の逆量子化部252は、第1の復号化部251により復号化された量子化データを逆量子化し、再生帯域22.05kHz、1024サンプルのスペクトルデータを出力する。
【0129】
第2の復号化部253は、ストリーム入力部260の出力する第2の符号化信号を入力し、入力された第2の符号化信号を復号して、各スケールファクターバンドにおける絶対最大スペクトルに隣接する前後各5サンプルの量子化値を出力する。
【0130】
第2の逆量子化部254は、第2の復号化部253の出力である量子化値を所定のスケールファクターを用いて逆量子化し、絶対最大スペクトルの前後に隣接する各10サンプルのスペクトルデータを生成する。第2の逆量子化部254は、第1の逆量子化部252から出力されたスペクトルデータをもとに、絶対最大スペクトルの前後に隣接していたために量子化値が「0」となった10サンプルのスペクトルデータの周波数を特定し、生成した10サンプルのスペクトルデータを、特定された周波数に対応付けて逆量子化データ合成部255に出力する。
【0131】
逆量子化データ合成部255は、第1の逆量子化部252の出力であるスペクトルデータと、第2の逆量子化部254の出力であるスペクトルデータとを合成し、逆変換部231に出力する。具体的には、逆量子化データ合成部255は、第2の逆量子化部254から周波数に対応付けて出力されたスペクトルデータの値で、第1の逆量子化部252の出力であるその周波数のスペクトルデータを置換する。逆変換部231は、逆量子化データ合成部255で合成された周波数軸上の1024サンプルのスペクトルデータを、IMDCTを用いて時間軸上の音響信号に変換する。音響信号出力部241は、逆変換部231で得られた時間軸上のサンプルデータを順次組み合わせ、デジタル音響出力データとして出力する。
【0132】
以上のように、本発明の符号化装置102及び復号化装置202によれば、各スケールファクターバンドにおける絶対最大スペクトルデータの前後のスペクトルデータを第1の量子化部151とは異なるスケールファクターを用いて符号化することにより、量子化値が「0」となっていたスペクトルデータを復元するので再生帯域全域におけるピーク近辺の精度が向上し、より高い音質での符号化を行うことができるという効果がある。
【0133】
なお、ここでは、第2の逆量子化部254は、変換部121からの出力であるスペクトルデータを用いて量子化を行ったが、必ずしも変換部121からの出力を用いなくてもよく、例えば、第1の量子化部151の量子化値を逆量子化して用いてもよい。この場合の符号化装置102の構成を、以下の図14に示す。
【0134】
図14は、符号化装置102及び復号化装置202の他の構成を示すブロック図である。符号化装置102は、音響信号入力部111、変換部121、第1の量子化部151、第1の符号化部152、第2の量子化部156、第2の符号化部154、逆量子化部155及びストリーム出力部160から構成される。
【0135】
第2の量子化部156は、逆量子化部155を介して第1の量子化部151の量子化結果を監視し、第1の量子化部151において量子化されたスペクトルデータのうち、絶対最大スペクトルデータの前後に隣接するために量子化値が「0」となった10サンプルのスペクトルデータを特定するとともに、特定されたスペクトルデータを逆量子化部155から入力し、所定のスケールファクターを用いて量子化する。
【0136】
逆量子化部155は、第1の量子化部151の量子化結果である量子化値を逆量子化し、その量子化値とそれに対応するスペクトル値とを第2の量子化部156に出力する。
上記のように構成された符号化装置102及び復号化装置202の動作について、以下に図15及び図16を用いて説明する。
【0137】
符号化装置102の第1の量子化部151において、従来と同様、伝送路の転送レートに符号化データ量を合わせるようスケールファクターを調整して量子化を行っていると、絶対最大スペクトルデータの前後のスペクトルデータが、連続的に「0」になってしまうことがしばしば起こる。このような量子化値を、そのまま復号化装置202において復元すると、絶対最大スペクトルデータのみが正しく復元され、その両側に隣接するスペクトルデータはいずれも「0」となってしまい、その分が量子化誤差となって、復号化装置202から出力される音響信号の音質が劣化してしまうという問題がある。
【0138】
このため、スケールファクターの値を調整することによって絶対最大スペクトルデータの前後のスペクトルデータを「0」にならないように量子化しようとすると、今度は絶対最大スペクトルデータを含む近隣のスペクトルデータの量子化値がいずれも大きな数値となってしまう。これらを符号化した符号化ビットストリームのデータ量は、量子化値の最大値に依存し、量子化値の最大値が大きくなるほど、符号化ビットストリームのデータ量が増大する傾向にある。このため、符号化ビットストリームを伝送路を介して伝送する点において、この方法は現実的でない。
【0139】
図15は、従来の符号化装置300と本発明の符号化装置102との量子化結果の違いを具体値を用いて示すテーブル500である。まず、従来の符号化装置300において、テーブル500のように、例えば{10、40、100、30}というスペクトルデータ501が変換部320から出力された場合に、量子化部331において、符号化ビットストリームの1フレーム分のデータ量に応じてスケールファクターを調整し、量子化を行うと、量子化値502が例えば{0、0、1、0}のようになり、絶対最大スペクトルデータ「100」に隣接するスペクトルデータの値が「0」になってしまう。従来の符号化装置300では、この量子化値502を採用せざるを得ず、この量子化値502が符号化される。この結果、これを入力した復号化装置400では、逆量子化部422によって復元されるスペクトルデータ505の値が{0、0、100、0}となってしまう。
【0140】
これに対し、本発明の符号化装置102では、同じ{10、40、100、30}というスペクトルデータ501が変換部121から出力された場合、第1の量子化部151による量子化値502は、やはり、{0、0、1、0}となる。本発明の符号化装置102では、このような場合、第1の量子化部151においては、量子化値502をそのまま出力するようにしておく。符号化装置102では、これを補うため、さらに第2の量子化部153において、同じスペクトルデータに対して所定のスケールファクターを用いて量子化を行う。第2の量子化部153による量子化値503が{1、4、10、3}であったとすると、量子化値の最小値が「1」となっているので、これ以上スケールファクターを小さくしていくとこの値が「0」になってしまう。従って、量子化値503が、前後のスペクトルデータが「0」にならない範囲で符号化データのデータ量を最も低減した量子化値であるが、それでも量子化値の最大値は「10」となる。
【0141】
これに対し第2の量子化部153では、さらに量子化値のデータ量を低減するため、その量子化結果が量子化値503{1、4、10、3}であれば、この量子化値を、例えば量子化値504{1、2、0、2}というように指数関数表示などを用いて表す。
【0142】
具体的には、先頭サンプルの「1」は、2の1乗として「2」を表し、第2サンプルの「2」は、2の2乗として「4」を表す。第3サンプルの「0」は、この位置のスペクトルデータが絶対最大スペクトルデータであることを示している。絶対最大スペクトルデータのスペクトル値は、第1の符号化信号から得られる(第1の量子化部151で求められた)スケールファクターとその量子化値「1」とから正しく求められる。このように各スケールファクターバンド内の絶対最大スペクトルデータのスペクトル値の符号化を省略することにより、第2の符号化信号のデータ量をさらに低減することができるという効果がある。第4サンプルの「2」は、2の2乗として「4」を表す。このような表現は、第2の量子化部153で得られた量子化値503{1、4、10、3}とは正確に一致しないが、量子化値504{1、2、0、2}のように各サンプルの量子化値を高々2ビットで表すことができる。復号化装置202において、第1の符号化信号から得られる量子化値502と、第2の符号化信号から得られる量子化値504とに基づいてスペクトルデータを復元すると、スペクトルデータ505{20、40、100、40}のようになる。
【0143】
このように、符号化装置102によれば、第2の量子化部153の量子化結果を上記のように表すことによって、第2の符号化信号のデータ量を最小限に抑えつつ、従来の方法ではデータ量を低減しようとするとすべて「0」になってしまっていたピークの前後のスペクトルデータを、大まかではあるがおおよその値で復元することができ、原音に対してより忠実な音響信号を復元することができるという効果がある。
【0144】
なお、ここでは、第2の量子化部153の量子化結果を「2」のべき乗で表したが、底の値は「2」である必要はないし、また整数である必要もなく、どのような数値であってもよい。さらに、第2の量子化部153の量子化結果を表す関数は指数である必要はなく、他の関数であってもよい。
【0145】
図16は、符号化装置102によるピーク周辺の量子化誤差の補正の一例を示す図である。図16(a)は、図13及び図14に示した変換部121の出力であるスペクトルの一部を示す波形図である。同図において、一点鎖線で示す範囲は1つのスケールファクターバンド(sfb)を示しており、破線は当該スケールファクターバンドの絶対最大スペクトルデータの周波数を示している。さらに、二点鎖線で示す範囲は絶対最大スペクトルの前後に隣接する合計10サンプルのスペクトルデータを示している。図16(b)は、図13及び図14に示した第1の量子化部151による図16(a)のスペクトル部分の量子化結果の一例を示す図である。図16(c)は、図13及び図14に示した第2の量子化部153、156による図16(a)のスペクトル部分の量子化結果の一例を示す図である。図16(a)、図16(b)及び図16(c)において横軸は周波数を表している。また、図16(a)において縦軸はスペクトル値を表している。また、図16(b)及び図16(c)において縦軸は量子化値を表している。
【0146】
1つのスケールファクターバンドのスペクトルデータは、同一スケールファクターを用いて正規化され、量子化される。例えば、図16(a)のように絶対最大スペクトルデータが比較的大きな値をとる場合、そのスケールファクターを1フレーム全体のビット量に基づいて調整すると、スケールファクターの値を小さくせざるを得ない。この結果、図16(b)のように、量子化結果として、絶対最大スペクトルデータのみが「0」以外の値をもち、それ以外のスペクトルデータの値はすべて「0」になる場合がしばしば生じる。第1の量子化部151は、このような量子化結果を、そのまま第1の符号化部152に出力する。符号化装置102においては、これに対してさらに、第2の量子化部153による図16(c)のような量子化結果を第2の符号化信号として伝送する。第2の量子化部153では、絶対最大スペクトルデータの量子化値として「0」を出力し、その前後10サンプルについて量子化を行う。
【0147】
第2の量子化部153においては、あらかじめ定めたスケールファクターを用いて量子化を行うので、その値が第1の量子化部151が用いたスケールファクターとあまり変わらない場合には、第1の量子化部151において「0」になった量子化値が第2の量子化部153において「0」以外の値をとるとは必ずしもいえない。しかし、第2の量子化部153に対し、あらかじめスケールファクターバンドごとに適切なスケールファクターを定めておくことによって、より多くのスケールファクターバンドにおいて、「0」になった第1の量子化部151の量子化結果を図16(c)のように復元することができる。
【0148】
すなわち、第2の量子化部153は、第1の量子化部151の量子化結果が図16(b)のようになるスペクトルデータにつき、それらのスペクトル値を、図13に示した変換部121又は図14に示した逆量子化部155から取得し、符号化装置102と復号化装置202との間であらかじめ定めたスケールファクターを用いて量子化を行うとともに、その量子化結果を、より短いビット量で表し、第2の符号化部154に出力する。このように、第2の量子化部153では、▲1▼符号化装置102と復号化装置202との間であらかじめ定めたスケールファクター及び関数を用いることによって、これらのスケールファクター及び関数を符号化しない。▲2▼絶対最大スペクトルデータを量子化しない。▲3▼絶対最大スペクトルデータの前後に隣接する10サンプルの量子化値をさらに関数表現する。これらのことにより、第2の符号化信号のデータ量を最低限に抑えることができる。
【0149】
なお、本実施の形態においては絶対最大スペクトルデータに隣接するために、第1の量子化部151による量子化結果が連続して「0」になったスペクトルデータの量子化を、第2の量子化部153においてやり直す場合について説明したが、量子化のやり直しの対象となるスペクトルデータは必ずしも連続していなくてもよく、絶対最大スペクトルデータの近隣で量子化値が「0」となっているものであれば、該当するスペクトルデータ同士は隣接していなくても上記と同様にして、復号化されたスペクトル値の補正を行うことができる。具体的には、第2の量子化部153は、第1の量子化部151の量子化結果から、絶対最大スペクトルデータの近隣で量子化値が「0」となったスペクトルデータを、絶対最大スペクトルデータの両側にそれぞれ5サンプル特定し、特定されたスペクトルデータを、すでに説明したようにあらかじめ定めたスケールファクターを用いて量子化を行うとともに、その量子化結果を、より短いビット量で表し、第2の符号化部154に出力する。復号化装置202では、第1の逆量子化部252の逆量子化結果から、絶対最大スペクトルデータの近隣で量子化値が「0」となったスペクトルデータを、絶対最大スペクトルデータの両側にそれぞれ5サンプル特定し、特定されたスペクトルデータに対応付けて、それぞれ第2の符号化信号から復号化及び逆量子化することによって得られたスペクトル値を逆量子化データ合成部255に出力する。また、上記実施の形態においては、第2の量子化部153は、絶対最大スペクトルデータに隣接する前後の合計10サンプルについて量子化を行ったが、このサンプル数は必ずしも前後各5サンプルである必要はなく、5サンプルより多くても少なくてもよい。また、第2の量子化部153が各フレームの符号化ビットストリームのデータ量に応じてサンプル数を決めてもよい。この場合には、第2の符号化信号内に、各サンプルの量子化値とサンプル数とを組み合わせて符号化すればよい。
【0150】
また、本実施の形態においては、第2の符号化信号として伝送される量子化値に対応するスケールファクターを、予め定めた値にしたが、スケールファクターバンドごとに最適なスケールファクター値を計算し、第2の符号化信号に付加して伝送してもよい。例えば、量子化値の最大値が「7」となる様にスケールファクターを選択すれば、量子化値の伝送に必要なデータ量がより少なくて済むという効果がある。
【0151】
なお、本実施の形態においては、第2の符号化信号内に第2の量子化部153による量子化値のみ、または量子化値とスケールファクターのみを符号化したが、これに限ったものでなくてよい。すなわち、符号化装置102において、各スケールファクターバンドの絶対最大スペクトルデータの前後に隣接する10サンプルの量子化値がすべて「0」になった場合、所定のスケールファクターを用いて量子化を行うとともに、この上さらに、実施の形態1で説明した高域部スペクトルを表す補助情報を生成し、第2の量子化部153の量子化結果と補助情報とを組み合わせて符号化するようにしてもよい。この場合、高域部の量子化値及びスケールファクターを伝送せず、復号化装置202において前記補助情報に基づき高域部スペクトルデータを復元する。なお、SHORTブロックにおける補助情報については図9、図10及び実施の形態1のなお書きにおいて説明したが、LONGブロックについても同様にして補助情報を生成することができる。ただし、ここではLONGブロックであるので、高域部と低域部とをサンプル数が半分の位置で区切るとするとSHORTブロックでは高域部64サンプルのところ、LONGブロックでは高域部512サンプルにつき補助情報を生成する。また、スケールファクターバンドもLONGブロックのスケールファクターバンドに従う。このようにすれば、高域部の量子化値及びスケールファクターの分だけ、符号化ビットストリームのデータ量をさらに低減することができるという効果がある。
【0152】
なおこの補助情報としては、各スケールファクターバンドに1つの補助情報を生成しているが、2つ以上のスケールファクターバンド毎に1つの補助情報を生成してもよいし、1つのスケールファクターバンドに2つ以上の補助情報を生成してもよい。
なお本実施例における補助情報は、チャンネル毎に補助情報を符号化してもよいし、2つ以上のチャンネルに対して1つの補助情報を符号化してもよい。
【0153】
なおこの場合において、補助情報に基づいて高域部スペクトルを復元する際に、低域側のスペクトルデータを高域側のスペクトルデータとしてコピーしているが、これに限らず、高域側のスペクトルデータは第2の符号化信号のみから生成してもよい。
また本実施例における符号化装置及び復号化装置の構成は、従来の符号化装置に第2の量子化部及び第2の符号化部を追加し、かつ、復号化装置に第2の復号化部及び第2の逆量子化部を追加しただけのものであるため、既存の符号化装置及び復号化装置を大幅に変更することなく実現することができる。
【0154】
なお本実施例においては従来技術としてMPEG−2 AACを例に挙げて説明したが、他の音響符号化方式にも適用できるし、既存しない新しい音響符号化方式にも適用できることは明らかである。
なお本実施例においても、実施の形態1と同様、図4(b)の様に第2の符号化信号を第1の符号化信号の後に付加してもよく、また、図4(c)のようにヘッダ情報の直後に第2の符号化信号を付加してもよい。ただし、本実施の形態の場合、LONGブロックであるので、1フレーム分の第1の符号化信号は1024サンプルの音響信号に対応している。このようにしておくことによって、従来の復号化装置400においてもこの符号化ビットストリームを支障なく再生することができる。また第1の符号化信号の中に第2の符号化信号を組み込んでもよいし、ヘッダ情報に組み込んでもよいし、それらの組み込みのために連続した領域を確保しなくてもよい。またこれらに限ったものでなくてもよい。図4(a)の様にヘッダ情報と符号化情報の中に非連続に第2の符号化信号を組み込んだ場合のデータ配置図を示す。また、図5のように第2の符号化信号を、第1の符号化信号を格納したビットストリームとは全く別のストリームに格納してもよい。このようにすることにより、入力音響信号の基本的な部分を予め伝送又は蓄積しておき、必要に応じて高域情報を後から付加することができるという効果がある。
【0155】
なお本実施例においては、量子化部及び符号化部は2つとしたが、これに限定されるものではなく、3つ以上の量子化部及び復号化部を備えてもよい。
なお本実施例においては、復号化部及び逆量子化部は2つとしたが、これに限定されるものではなく、3つ以上の復号化部及び逆量子化部を備えてもよい。
【0156】
以上の処理は、ハードウェアで実現することはもちろん、ソフトウェアでも実現でき、また、一部をハードウェアで実現し、残りをソフトウェアで実現するという構成でも実施できる。
【0157】
なお、本発明の符号化装置100、101、102は、コンテンツを配信する配信システムの放送局側に備えられ、本発明の復号化装置200、201、202を備える受信装置に、音響信号として本発明の音響符号化ビットストリームを出力するとしてもよい。
【0158】
【発明の効果】
以上のように本発明の符号化装置は、入力された音響信号を符号化する符号化装置であって、入力音響信号を一定時間ごとに切り出して周波数スペクトルに変換することにより、1フレーム時間ごとに、周波数スペクトルの時間変化を示す複数のウィンドウからなるショートブロックスペクトルを生成する変換手段と、前記変換手段によって得られた前記ウィンドウ同士を比較し、それらウィンドウ同士のスペクトルが所定の判断基準を満たす範囲で相似するか否かを判定する共有判定手段と、前記ウィンドウ同士のスペクトルが前記範囲内で相似する場合、他のウィンドウの高域部スペクトルを共有する共有ウィンドウにつき、その共有ウィンドウの高域部スペクトルデータを所定値に置換する置換手段と、前記置換手段による置換処理の後、前記各ウィンドウのスペクトルデータを量子化する第1量子化手段と、前記第1量子化手段による量子化結果を符号化する第1符号化手段と、前記第1符号化手段によって符号化されたデータを出力する出力手段とを備える
【0159】
従って、変換手段が、1フレーム時間ごとに、周波数スペクトルの時間変化を示す複数のウィンドウからなるショートブロックスペクトルを生成する場合、本来的に、切り出しにおいて時間的に隣接するウィンドウ同士ではスペクトルが相似する可能性が高い。これに対し、本発明の符号化装置においては、共有判定手段による判定に基づいて、互いに相似する前記共有ウィンドウについては、高域部スペクトルデータを量子化及び符号化せず、前記他のウィンドウの高域部スペクトルデータを代用する。具体的には、前記共有ウィンドウにつき、そのウィンドウの高域部スペクトルデータを所定値に置換してしまう。この所定値を例えば「0」とすると、その部分の量子化及び符号化の処理を簡略化することができるとともに、高域部の符号化データの量を大幅に削減することができるという効果がある。
【0160】
これに対応する本発明の復号化装置は、音響信号を表した入力符号化データを復号化する復号化装置であって、前記入力符号化データ中の第1の領域に記録されている第1符号化データを復号化する第1復号化手段と、前記第1復号化手段による復号化結果を逆量子化し、1フレーム時間ごとに、周波数スペクトルの時間変化を示す複数のショートブロックスペクトルを出力する第1逆量子化手段と、前記第1逆量子化手段による逆量子化結果を監視し、前記第1逆量子化手段によって出力された前記ウィンドウのうち、周波数高域部スペクトルデータの値が所定値となっている場合、そのウィンドウを、ウィンドウ内の高域部スペクトルデータを他のウィンドウの高域部スペクトルデータを参照して生成する参照ウィンドウであると判定する判定手段と、前記判定手段の判定に基づいて、前記第1逆量子化手段による逆量子化結果から前記参照ウィンドウに参照されるウィンドウである被参照ウィンドウの高域部スペクトルデータをコピーし、コピーしたスペクトルデータを前記参照ウィンドウに対応付けて出力する第2逆量子化手段と、前記第1逆量子化手段によって出力された前記所定値の高域部スペクトルデータであって、前記参照ウィンドウの高域部スペクトルデータの値を、前記第2逆量子化手段によって対応付けられ出力された前記被参照ウィンドウの高域部スペクトルデータの値で置換した後、逆変換し、時間軸上の音響信号として出力する音響信号出力手段とを備える。
【0161】
これによって、本発明の復号化装置においては、1フレームに付き、少なくとも1つの被参照ウィンドウの高域部データを入力し、それを前記判定手段の判定に基づいて、前記参照ウィンドウにコピーすることによって生成することができるので、従来に比べて、より高域部の豊かな高音質な音響信号を再生することができるという効果がある。
【0162】
また、本発明の符号化装置によれば、前記共有判定手段は、前記ウィンドウ同士のスペクトルが所定の判断基準を満たす範囲で相似するか否かを判定し、前記置換手段は、前記ウィンドウ同士のスペクトルが前記範囲内で相似する場合、他のウィンドウの高域部スペクトルを共有する共有ウィンドウにつき、その共有ウィンドウのさらに低域部のスペクトルデータを所定値に置換する。
【0163】
従って、前記ウィンドウ同士のスペクトルが所定の判断基準を満たす範囲で相似する場合には、高域部に加えてさらに低域部のスペクトルデータを所定値に置換するので、この所定値を例えば「0」とすると、その部分の量子化及び符号化の処理を簡略化することができるとともに、音響信号の符号化データの量を、低域部の分まで、より大幅に削減することができるという効果がある。
【0164】
これに対応して、本発明の復号化装置において、前記判定手段は、前記第1逆量子化手段によって出力された前記各ウィンドウにおいて全スペクトルデータの値が所定値となっている場合、そのウィンドウを前記参照ウィンドウであると判定し、前記第2逆量子化手段は、前記判定手段による判定に基づいて、前記第1逆量子化手段の逆量子化結果から、所定の前記被参照ウィンドウさらに低域部を含んだ全スペクトルデータをコピーし、コピーしたスペクトルデータを前記参照ウィンドウに対応付けて出力し、前記音響信号出力手段は、前記参照ウィンドウの全スペクトルデータの値を、前記第2逆量子化手段によって対応付けられ出力された前記被参照ウィンドウのスペクトルデータの値で置換した後、逆変換し、時間軸上の音響信号として出力する。
【0165】
従って、本発明の復号化装置によれば、1フレームに付き、少なくとも1つの被参照ウィンドウ分の全域データを入力し、それを前記判定手段の判定に基づいて、前記参照ウィンドウにコピーすることによって生成するので、従来に比べて、低域部は所定の判断基準の範囲によって多少の誤差を生じるが、1フレームに付き、少なくとも1つのウィンドウ分入力される高域部データに基づいて、より高域部の豊かな高音質な音響信号を再生することができるという効果がある。
【0166】
さらに、本発明の符号化装置は、さらに、前記第1量子化手段に入力されたスペクトルデータのうち、第1量子化手段による量子化の結果、スペクトルのピークに近接したスペクトルデータであって量子化結果が所定値となったものを所定の正規化係数を用いて量子化し直す第2量子化手段と、前記第2量子化手段の量子化結果を符号化する第2符号化手段とを備え、前記出力手段は、前記第1符号化手段によって符号化されたデータ、前記第2符号化手段によって符号化されたデータとを出力する。
【0167】
従って、本発明の符号化装置によれば、第2量子化手段が、第1量子化手段において、スペクトルのピークに近接したスペクトルデータの量子化結果が連続して所定値となったものを所定の正規化係数を用いて量子化し直すので、ピークに隣接したスペクトルデータの量子化結果を、所定値で連続しない値に量子化し直すことができる。すなわち、ピークに隣接するスペクトルデータの量子化誤差を、第2量子化手段の量子化によって補正することができるという効果がある。
【0168】
これに対応して、本発明の復号化装置は、さらに、前記入力符号化データ中の第2の領域から、同じスペクトルデータについて前記第1符号化データとは異なる所定の正規化係数を用いて量子化された第2符号化データを分離する第2符号化データ分離手段と、前第2符号化データを復号化する第2復号化手段と、前記第1復号化手段による復号化結果を監視して、前記復号化結果のうち連続して所定値となる部分を特定し、特定された部分に対応する前記第2復号化手段による復号化結果を、前記所定の正規化係数を用いて逆量子化し、複数のスペクトルデータを生成する第2逆量子化手段と、前記第1逆量子化手段によって出力されたスペクトルデータのうち、前記特定された部分のスペクトルデータの値を、前記第2逆量子化手段によって生成されたスペクトルデータの値で置換した後、逆変換し、時間軸上の音響信号として出力する音響信号出力手段とを備える
【0169】
従って、本発明の復号化装置によれば、第2逆量子化手段は、前記各バンドにおいてピークとなるスペクトルデータに近接したため、前記第1量子化手段による量子化結果が所定値となった連続するスペクトルデータを生成するので、ピークに近接するスペクトルデータの量子化誤差を、第2量子化手段の量子化によって補正することができる。この結果、音響信号の再生帯域の全域において、スペクトルのピーク周辺の音響信号を、より原音に忠実に再生することができるという効果がある。
【図面の簡単な説明】
【図1】本発明の符号化装置及び復号化装置の構成を示すブロック図である。
【図2】図1に示した符号化装置において処理される音響信号の変換過程を示す図である。
【図3】図1に示した共有判定部による高域部データの共有の一例を示す図である。
【図4】図1に示したストリーム出力部によって第2の符号化信号(共有情報)が格納されるビットストリームのデータ構造を示す図である。
【図5】図1に示したストリーム出力部によって第2の符号化信号(共有情報)が格納されるビットストリームの他のデータ構造を示す図である。
【図6】図1に示した第1の量子化部のスケールファクター決定処理における動作を示すフローチャートである。
【図7】図1に示した共有判定部の1フレームの共有判定処理における動作の一例を示すフローチャートである。
【図8】図1に示した第2の逆量子化部の高域部スペクトルデータのコピー処理における動作を示すフローチャートである。
【図9】図1に示した共有判定部によってSHORTブロックの1ウィンドウにつき生成される補助情報(スケールファクター)の具体例を示すスペクトル波形図である。
【図10】図1に示した共有判定部の補助情報(スケールファクター)計算処理における動作を示すフローチャートである。
【図11】符号化装置及び復号化装置の構成を示すブロック図である。
【図12】図11に示した共有判定部によるスペクトルデータの共有の一例を示す図である。
【図13】本発明の符号化装置及び復号化装置の構成を示すブロック図である。
【図14】符号化装置及び復号化装置の他の構成を示すブロック図である。
【図15】従来の符号化装置と本発明の符号化装置との量子化結果の違いを具体値を用いて示すテーブルである。
【図16】符号化装置によるピーク周辺の量子化誤差の補正の一例を示す図である。
【図17】従来のMPEG−2 AAC方式による符号化装置及び復号化装置の構成を示すブロック図である。
【符号の説明】
100 符号化装置
110 音響信号入力部
120 変換部
131 第1の量子化部
132 第1の符号化部
134 第2の符号化部
137 共有判定部
140 ストリーム出力部
200 復号化装置
210 ストリーム入力部
221 第1の復号化部
222 第1の逆量子化部
223 第2の復号化部
224 第2の逆量子化部
225 逆量子化データ合成部
230 逆変換部
240 音響信号出力部

Claims (3)

  1. 入力された音響信号を符号化する符号化装置であって、
    入力音響信号を一定時間ごとに切り出して周波数スペクトルに変換することにより、1フレーム時間ごとに、複数のバンドからなるスペクトルデータを生成して出力する変換手段と、
    前記変換手段によって得られた前記スペクトルデータを各バンドごとに量子化し、量子化結果を出力する第1量子化手段と、
    前記第1量子化手段から出力された量子化結果を符号化して第1の符号化信号を出力する第1符号化手段と、
    前記第1量子化手段から出力された量子化結果を監視し、前記第1量子化手段に入力された前記スペクトルデータのうち、前記第1量子化手段による量子化の結果、スペクトルのピークに近接したスペクトルデータであって量子化結果が「0」となったものを所定の正規化係数を用いて量子化し直し、量子化し直した量子化結果を出力する第2量子化手段と、
    前記第2量子化手段から出力された量子化結果を符号化して第2の符号化信号を出力する第2符号化手段と
    前記第1の符号化信号と前記第2の符号化信号とをビットストリームとして出力する出力手段と
    を備えることを特徴とする符号化装置。
  2. 音響信号を表した入力符号化データを復号化する復号化装置であって、
    前記入力符号化データから第1の符号化信号と、前記第1の符号化信号とは異なる所定の正規化係数を用いて量子化された第2の符号化信号を取り出し、前記第1の符号化信号と前記第2の符号化信号とを別々に出力する分離手段と、
    前記第1の符号化信号を復号化し、第1の復号化結果を出力する第1復号化手段と、
    前記第1の復号化結果を逆量子化し、逆量子化結果として、1フレーム時間ごとのスペクトルデータを出力する第1逆量子化手段と、
    前記第2の符号化信号を復号化し、第2の復号化結果を出力する第2復号化手段と、
    前記第1逆量子化手段による逆量子化結果を監視し、ピークとなるスペクトルデータに基づいて前記逆量子化結果のうち連続して「0」となる部分を特定し、特定された部分に対応する前記第2復号化手段から出力された第2の復号化結果を、前記所定の正規化係数を用いて逆量子化し、前記特定された部分を置換すべきスペクトルデータを生成する第2逆量子化手段と、
    前記第1逆量子化手段によって出力されたスペクトルデータのうち、前記特定された部分のスペクトルデータの値を、前記第2逆量子化手段によって生成されたスペクトルデータの値で置換することにより、合成されたスペクトルデータを出力する逆量子化データ合成手段と、
    前記合成されたスペクトルデータを時間軸上の音響信号に逆変換し、前記音響信号を出力する音響信号出力手段と
    を備えることを特徴とする復号化装置。
  3. 入力された音響信号を符号化する符号化方法であって、
    入力音響信号を一定時間ごとに切り出して周波数スペクトルに変換することにより、1フレーム時間ごとに、変換手段が複数のバンドからなるスペクトルデータを生成して出力する変換ステップと、
    第1量子化手段が、前記変換ステップによって得られた前記スペクトルデータを各バンドごとに量子化し、量子化結果を出力する第1量子化ステップと、
    第1符号化手段が、前記第1量子化ステップで前記第1量子化手段から出力された量子化結果を符号化して第1の符号化信号を出力する第1符号化ステップと、
    第2量子化手段が、前記第1量子化ステップで前記第1量子化手段から出力された量子化結果を監視し、前記第1量子化手段に入力された前記スペクトルデータのうち、前記第 1量子化ステップによる量子化の結果、スペクトルのピークに近接したスペクトルデータであって量子化結果が「0」となったものを所定の正規化係数を用いて量子化し直し、量子化し直した量子化結果を出力する第2量子化ステップと、
    第2符号化手段が、前記第2量子化ステップで第2量子化手段から出力された量子化結果を符号化して第2の符号化信号を出力する第2符号化ステップと
    出力手段が、前記第1の符号化信号と前記第2の符号化信号とをビットストリームとして出力する出力ステップと
    を含むことを特徴とする符号化方法。
JP2001381807A 2001-11-02 2001-12-14 符号化装置、復号化装置及び符号化方法 Expired - Fee Related JP3984468B2 (ja)

Priority Applications (16)

Application Number Priority Date Filing Date Title
JP2001381807A JP3984468B2 (ja) 2001-12-14 2001-12-14 符号化装置、復号化装置及び符号化方法
CN02809440.9A CN1288622C (zh) 2001-11-02 2002-10-30 编码设备和解码设备
EP02775413A EP1440433B1 (en) 2001-11-02 2002-10-30 Audio encoding and decoding device
CNB02803421XA CN1324558C (zh) 2001-11-02 2002-10-30 编码设备,解码设备以及音频数据分配系统
DE60204039T DE60204039T2 (de) 2001-11-02 2002-10-30 Vorrichtung zur kodierung und dekodierung von audiosignalen
DE60204038T DE60204038T2 (de) 2001-11-02 2002-10-30 Vorrichtung zum codieren bzw. decodieren eines audiosignals
EP02775412A EP1440300B1 (en) 2001-11-02 2002-10-30 Encoding device, decoding device and audio data distribution system
PCT/JP2002/011256 WO2003038813A1 (en) 2001-11-02 2002-10-30 Audio encoding and decoding device
PCT/JP2002/011255 WO2003038389A1 (en) 2001-11-02 2002-10-30 Encoding device, decoding device and audio data distribution system
DE60208426T DE60208426T2 (de) 2001-11-02 2002-10-30 Vorrichtung zur signalkodierung, signaldekodierung und system zum verteilen von audiodaten
PCT/JP2002/011254 WO2003038812A1 (en) 2001-11-02 2002-10-30 Audio encoding and decoding device
CN02803419.8A CN1209744C (zh) 2001-11-02 2002-10-30 编码装置和解码装置
EP02775411A EP1440432B1 (en) 2001-11-02 2002-10-30 Audio encoding and decoding device
US10/285,609 US7283967B2 (en) 2001-11-02 2002-11-01 Encoding device decoding device
US10/285,627 US7392176B2 (en) 2001-11-02 2002-11-01 Encoding device, decoding device and audio data distribution system
US10/285,633 US7328160B2 (en) 2001-11-02 2002-11-01 Encoding device and decoding device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001381807A JP3984468B2 (ja) 2001-12-14 2001-12-14 符号化装置、復号化装置及び符号化方法

Publications (2)

Publication Number Publication Date
JP2003186499A JP2003186499A (ja) 2003-07-04
JP3984468B2 true JP3984468B2 (ja) 2007-10-03

Family

ID=27592365

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001381807A Expired - Fee Related JP3984468B2 (ja) 2001-11-02 2001-12-14 符号化装置、復号化装置及び符号化方法

Country Status (1)

Country Link
JP (1) JP3984468B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7240001B2 (en) 2001-12-14 2007-07-03 Microsoft Corporation Quality improvement techniques in an audio encoder
JP3861770B2 (ja) 2002-08-21 2006-12-20 ソニー株式会社 信号符号化装置及び方法、信号復号装置及び方法、並びにプログラム及び記録媒体
AU2005207596A1 (en) * 2004-01-20 2005-08-04 Dolby Laboratories Licensing Corporation Audio coding based on block grouping
US7460990B2 (en) * 2004-01-23 2008-12-02 Microsoft Corporation Efficient coding of digital media spectral data using wide-sense perceptual similarity
WO2009084918A1 (en) 2007-12-31 2009-07-09 Lg Electronics Inc. A method and an apparatus for processing an audio signal
JP5262171B2 (ja) * 2008-02-19 2013-08-14 富士通株式会社 符号化装置、符号化方法および符号化プログラム

Also Published As

Publication number Publication date
JP2003186499A (ja) 2003-07-04

Similar Documents

Publication Publication Date Title
EP1440432B1 (en) Audio encoding and decoding device
KR100917464B1 (ko) 대역 확장 기법을 이용한 디지털 데이터의 부호화 방법,그 장치, 복호화 방법 및 그 장치
JP2693893B2 (ja) ステレオ音声符号化方法
US7668723B2 (en) Scalable lossless audio codec and authoring tool
US8374858B2 (en) Scalable lossless audio codec and authoring tool
USRE46082E1 (en) Method and apparatus for low bit rate encoding and decoding
EP2228791B1 (en) Scalable lossless audio codec and authoring tool
JP3964860B2 (ja) ステレオオーディオの符号化方法、ステレオオーディオ符号化装置、ステレオオーディオの復号化方法、ステレオオーディオ復号化装置及びコンピュータで読み取り可能な記録媒体
JP3923783B2 (ja) 符号化装置及び復号化装置
US7583804B2 (en) Music information encoding/decoding device and method
JP3984468B2 (ja) 符号化装置、復号化装置及び符号化方法
JP4317355B2 (ja) 符号化装置、符号化方法、復号化装置、復号化方法および音響データ配信システム
JP4627737B2 (ja) デジタルデータ復号化装置
JP4649351B2 (ja) デジタルデータ復号化装置
WO1995016263A1 (fr) Procede, dispositif et support concernant le traitement de l'information
KR20040086879A (ko) 대역 확장 기법을 이용한 오디오 데이터의 부호화 방법,그 장치, 복호화 방법 및 그 장치
JP4641272B2 (ja) デジタルデータ復号化装置
JP2003029797A (ja) 符号化装置、復号化装置および放送システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070403

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070518

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070612

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070706

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100713

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3984468

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110713

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110713

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120713

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120713

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130713

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees