明 細 書 符号化方法、 復号化方法、 符号化/復号化方法、 符号化装置、 復 号化装置及び符号化 復号化装置 技 術 分 野 本発明は、 オーデ ィ ォデ一夕などの原信号を複数の周波数帯域に 分割して符号化ノ復号化する符号化方法、 復号化方法、 符号化 Z復 号化方法、 符号化装置、 復号化装置及び符号化 復号化装置に関す るものであり、 特に、 帯域分割されたサブバン ド信号、 或は、 直交 変換等によ り 得られたスぺク トル信号を量子化する際に、 各サブバ ン ド、 或は、 各スペク トル · グループに動的にビ ッ ト数を割り 当て るよう に した符号化方法、 復号化方法、 符号化 Z復号化方法、 符号 化装置、 復号化装置及び符号化ノ復号化装置に関する ものである。 背 景 技 術 例えば、 オーディ オデ一夕を符号化する手法と して、 オーディ オ データを複数の周波数帯域に分割して符号化する所謂帯域分割符号 化 (SBC:Sub-Band Coding) がある。
上記帯域分割符号化方式では、 パンドパス · フ ィ ルタ (BPF:Band Pass Fi lter) により帯域分割されたサブバン ド信号を量子化する ためのビ ッ ト数を割り 当てる場合、 上記サブパン ド信号を用いて各 サブバン ドのェネルギ一を計算し、 そのェネルギーに応じてビ ッ ト
数を割 り 当てる という処理が行われている。
あるいは、 上記サブバン ド信号と は別に、 高速フー リ エ変換 (F F T : Fas t F o ur i e r Trans f orm ) 等によ り スペク トルを求め、 そのスぺ ク トルから聴覚特性を利用 してビ ッ ト数を割り 当てる と いう処理が 行われている。
また、 直交変換等によ り得られたスペク トルを成分 (スペク トル 信号) 数本ずつ束ねてグループ化し、 各スペク トル · グループ毎に 量子化する所謂変換符号化 (Trans f o rm Cod i ng ) では、 各スぺク ト ル · グループにビッ ト数を割 り 当てる場合、 各スぺク ト ル , グルー プのエネルギーに応じてビ ッ ト数を割り 当てる という処理や、 スぺ ク トルから聴覚特性を利用 してビ ッ ト数を割り 当てる と いう処理が 行われている。
上述のよう に して各サブバン ド又は各スぺク トル · グループに対 してビ ッ ト数が割り 当てられ、 その割り 当てられたビ ッ ト数に応じ て、 サブバン ド信号又はスペク トル信号は、 スケールフ ァ ク タで正 規化され、 量子化処理が施される。 そして、 その量子化処理が施さ れたサブバン ド信号又はスペク トル信号は、 所定のフ ォ ーマ ツ ト に 従って、 伝送又は記録媒体への記録のためにビ ッ トス ト リ ームへと 組み立てられて出力される。
ここで、 上述のよ う に して符号化処理が施されたデータを復号化 する際に、 上記符号化されたデータからは、 サブパン ド又はスぺク トル , グループに割り当てられたビ ッ ト数であるビ ッ ト割当情報を 逆算する こ とができないため、 スケールフ ァ クタ と共にビ ッ ト割当 情報も同時に記録するフ ォーマ ッ トが用いられている。
さ らに、 例えば、 ビ ッ ト ス ト リ ームへと組み立てるためのメモリ
において、 上述のよ う に定められたフ ォ ーマ ツ ト に従っ てビ ッ トス ト リ ームへと組み立てる際に、 ビ ッ ト割当情報を上記メモリ に記憶 する容量には限りがあるため、 割当ビ ッ ト数に上限を設定した上で サブバン ド又はスペク トル · グループへのビ ッ ト割当が行われてい る。
例えば、 所謂デジタルコ ンパク ト カセ ッ ト (DCC: Digital Compac t Cassette) で採用されている帯域分割符号化方式 ( PASC: Prec is i on Adaptive Subband Coding) 方式において、 帯域分割された各サ ブバン ドにビ ッ ト数を割り 当てる際には、 まず、 フー リ エ変換を用 いてスペク トルを算出する。 そして、 そのスペク トルを用いてマス キング ' パターンを算出 し、 割当ビ ッ ト数を算出する。 この P A S C方式においては、 ビ ッ ト割当情報とスケールフ ァ ク タを記録する フ ォーマ ツ ト となっており、 上記割当ビ ッ ト数の上限は 1 5 ビ ッ ト となっている。
また、 所謂ミ ニディ スク (MD:Mini Disk) では、 オーディ オデー 夕を 1 5 に圧縮する方式 (以下、 1 Z 5圧縮方式と言う。 ) が採 用されており、 この方式においてはビ ッ ト割当に関する規定がない。 上記 1 5圧縮方式においては、 ビ ッ ト割当情報と、 スペク トル成 分 (スペク トル信号) を数本ずつ束ねた符号化ユニッ ト のスケール フ ァ ク タを記録するフ ォーマ ツ ト となっており、 上記割当ビ ッ ト数 の上限は 1 6 ビ ッ ト となっ ている。
また、 T: A. Ramstad は、 各サブパン ド毎にエネルギーを算出 し、 そのエネルギーを繰り返し定数で割っていきながらビ ッ ト を割り当 てるという方法を、 "帯域分割符号化における量子化及び動的ビッ ト割当に関する考察" ( "CONSIDERATIONS ON QUANTIZATION AND D
YNAMIC BIT-ALLOCATION IN SUBBAND CODERS", ICASSP ' 86, pp.841-8 44) で提案している。
さ ら に、 各サブパン ド、 或は、 各スペク トル · グループのダイナ ミ ッ ク · レンジの量子化に関 しては、 信号の性質と して信号振幅が 小さい場合が多く、 また、 聴覚の性質と して信号振幅が大きい場合 には、 量子化雑音が大きい場合でも、 マスキングによ り量子化雑音 が聞こえ難いこ とから、 対数関数を用いた量子化が行われている。
ここで、 上記帯域分割符号化方式は、 従来よ り様々 な方式が提案 されているが、 代表的なものと して、 例えば、 国際標準のオーディ ォデータ符号化アルゴリ ズム ISO/ IEC IS 11172-3 (M P E G 1 ォー ディ ォ) すなわち所謂 M P E Gオーディ オのレイヤ I における 3 2 バン ド · サブパン ド · コーディ ングがある。
以下、 上記 M P E Gオーディ ォのレイヤ I の符号化アルゴリ ズム を説明する。
まず、 1 サンプルが 1 6 ビ ッ ト に直線量子化された入力信号を、 サブバン ド分析フ ィ ルタによ り、 3 8 4 サンプルを 1 フ レームと し、 各サブバン ドを 1 2サンプルと して、 3 2サブバン ドのサブバン ド 信号に分割する。
次に、 各サブバン ド信号のダイナ ミ ッ ク · レ ンジを 1 に正規化す る倍率を示すスケールフ ァ ク タを 1 2サンプル毎に次のよう にして 求める。
すなわち、 1 2サンプルの絶対値の最大値、 即ち、 ダイナ ミ ッ ク • レンジを決定し、 表 1 の中で、 そのダイ ナミ ッ ク ' レンジよ り大 きい最小の値をスケールフ ァ クタ と して用いる。
(以下、 余白)
【表 1 】
一方、 上記入力信号を高速フーリ エ変換(FF T ) した結果を用いて マスキ ングを計算し、 各サブバン ドに対しての割当ビ ッ ト数を決定 する。 そ して、 得られた割当ビ ッ ト数に従って各サブバン ド信号を
量子化する。 即ち、 その量子化値 Yは、 スケールフ ァ ク タ S F、 割 当ビ ッ ト数 N、 サブバン ド信号 Xを用いて、
Y = r i n t { ( X / S F ) x ( ( 2 N- 1 ) / 2 ) }
• · · 式 1 なる式 1 の演算で求められる。
こ こで、 " r i n t { z } " は、 " z " に最も近い整数を表す関 数を示 している。
次に、 上記 M P E Gオーデ ィ オの レイヤ I の復号化アルゴリ ズム を説明する。
上記式 1 よ りサブバン ド信号 Xを導く と、
X = Y X S F X ( 2 / ( 2 N- 1 ) ) · · · 式 2 となり、 上記式 2に従って、 符号化された各サブパン ド信号を逆量 子化する。 即ち、 量子化値 Yをそれぞれの区切り のち ょ う ど真中の 値に逆量子化し、 スケールフ ァ ク タ S Fを掛けて逆スケーリ ングを 行う。 そ して、 逆量子化された各サブバン ド信号をサブバン ド合成 フ ィ ル夕でオーディ オ信号に合成する。
そして、 上述のよ う な符号化処理と復号化処理を行う オーディ ォ データの符号化 復号化方法、 或は、 オーディ オデータの符号化 復号化装置は、 例えば、 オーディ オデータを複製する際に用いられ ている。
しかし、 上記オーディ オデータの符号化/復号化方法において、 オーデ ィ オデータを複製する場合、 即ち、 復号化された信号に対し て再度符号化を行う場合、 上述のよ う に高速フー リ エ変換の結果を 用いてビ ッ ト割当を行う と、 前回の符号化時の割当ビ ッ ト数と今回 のビ ッ ト割当数とは必ずし も一致しない。 さ らに、 量子化の際には
量子化誤差が生じ るため、 前回の割当ビ ッ ト数と今回の割当ビ ッ ト 数が異なれば、 こ こでまた量子化誤差が生じて し ま う。 このため、 符号化、 復号化を繰り返すたびに、 音質が劣化して しま っていた。
また、 上述のよ う に、 帯域分割符号化におけるサブバン ド又は変 換符号化におけるスぺク ト ル · グループの量子化のためのビ ッ ト数 を動的に割り 当てる場合、 例えば、 各サブバン ド信号又はスぺク ト ル信号を用いて計算した各サブバン ド又は各スぺク トル · グループ のエネルギーを用いて、 或は、 上記サブバン ド信号、 スペク トル信 号とは別に計算された情報を用いてビ ッ ト数を割り 当てていたため、 ビ ッ ト割当の回路が非常に大き く なつていた。
また、 上述のよ う な符号化方式で符号化されたデータを復号化装 置等で復号化する際に、 各サブバン ド又は各スぺク トル · グループ のスケールフ ァ クタ と共に、 各サブバン ド又は各スぺク トル · グル ープに割 り 当てられたビッ ト数とが必要となっていため、 上記スケ 一ルフ ァ ク タ と共に割当ビ ッ ト情報を出力する必要が生じていた。 このため、 1 サブバン ド信号又は 1 スぺク トル信号当た りの割当ビ ッ ト数が減り、 量子化効率を向上するこ とができなかっ た。
さ ら に、 割当ビッ ト数に上限があつたため、 ある特定の周波数の 信号を符号化する場合、 その周波数が含まれるサブパン ド又はスぺ ク トル · グループに対して十分なビ ッ ト数を割り 当てることができ なかっ た。
そこで、 本発明は、 上述の如き従来の実情に鑑みてなされたもの であり、 次のよ う な目的を有するものである。
本発明の目的は、 音質の向上を図るこ とができる符号化方法、 復 号化方法、 符号化 Z復号化方法、 符号化装置、 復号化装置及び符号
化/復号化装置を提供する こ とにある。
本発明の他の 目的は、 ビ ッ ト割当の回路の簡略化を図るこ とがで きる符号化方法、 復号化方法、 符号化ノ復号化方法、 符号化装置、 復号化装置及び符号化 復号化装置を提供するこ と にある。
また、 本発明の他の 目的は、 量子化効率の向上を図る こ とができ る符号化方法、 復号化方法、 符号化 復号化方法、 符号化装置、 復 号化装置及び符号化 復号化装置を提供するこ と にある。
また、 本発明の目 的は、 複数の周波数帯域に分割された信号の各 帯域に十分なビ ッ ト数を割り 当てる こ とができる符号化方法、 復号 化方法、 符号化 復号化方法、 符号化装置、 復号化装置及び符号化 復号化装置を提供するこ と にある。 発 明 の 開 示 本発明に係る符号化方法では、 原信号を複数の周波数帯域に分割 し、 分割された各周波数帯域の信号に対して、 そのスケールフ ァ ク 夕のみを上記原信号に依存するビ ッ ト割当て条件と して割当ビ ッ ト 数を決定してビ ッ ト割当を行い、 ビ ッ ト割り 当てされた割当ビ ッ ト 数で上記各周波数帯域の信号を量子化し、 量子化された各周波数帯 域の信号と上記各周波数帯域の信号に対するスケールフ ァ クタのみ を符号化する。
本発明に係る符号化方法においては、 例えば、 原信号を複数の周 波数帯域のサブバン ドに分割 したサブバン ド信号、 或いは、 原信号 を複数の周波数帯域のスぺク トル · グループに分割したスペク トル 信号に対して、 そのスケールフ ァ ク タのみを上記原信号に依存する
ビ ッ ト割当て条件と して割当ビ ッ ト数を決定する。
また、 本発明に係る符号化方法においては、 上記各周波数帯域の 信号に対して、 ダイナミ ッ ク · レンジの量子化値 S F i d (整数) 、 定数 !"、 定数 k、 整数定数 s を用いて、
C ― « S F i d / s k なる演算で上記スケールフ ァ ク タ S Fを算出 し、 算出 したスケール フ ァ ク タ S F に応じて上記割当ビ ッ ト数を決定してビ ッ ト割当を行 ラ。
さ らに、 本発明に係る符号化方法においては、 上記割当ビ ッ ト数 の上限を設定するこ となく 割当ビ ッ ト数を決定する。
また、 本発明に係る復号化方法は、 原信号が複数の周波数帯域に 分割され、 分割された各周波数帯域の信号に対して、 そのスケール フ ァ ク タのみを上記原信号に依存するビ ッ ト割当て条件と して割当 ビ ッ ト数が決定され、 ビッ ト割り 当てされた割当ビッ ト数で上記各 周波数帯域の信号が量子化され、 量子化された各周波数帯域の信号 と上記各周波数帯域の信号に対するスケールフ ァ クタのみが符号化 された符号化信号を復号化する復号化方法であって、 上記符号化信 号の各周波数帯域の信号に対し上記符号化信号に含まれるスケール フ ァ ク タ を用いて割当ビ ッ ト数を決定し、 決定された割当ビ ッ ト数 を用いて上記符号化信号の各周波数帯域の信号を逆量子化し、 逆量 子化された各周波数帯域の信号に対し、 スケールフ ァ ク タが保存さ れているか否かを判定し、 スケールフ ァ クタが保存されていない周 波数帯域の信号に対してはスケールフ ァ ク タを保存するよう に逆量 子化を再度行う こと によ り、 各周波数帯域の信号のスケールフ ァ ク 夕を保存した状態で符号化信号を復号化する。
本発明に係る復号化方法においては、 例えば、 原信号を複数の周 波数帯域のサブバン ドに分割したサブバン ド信号、 或いは、 原信号 を複数の周波数帯域のスぺク トル · グループに分割したスぺク トル 信号を各スケールフ ァ ク タを保存した状態で復号化する。
本発明に係る符号化 Z復号化方法では、 原信号を複数の周波数帯 域に分割し、 分割された各周波数帯域の信号に対して、 そのスケ一 ルフ ァ ク タのみを上記原信号に依存するビ ッ ト割当て条件と して割 当ビ ッ ト数を決定してビ ッ ト割当を行い、 ビッ ト割り 当てされた割 当ビ ッ ト数で上記各周波数帯域の信号を量子化し、 量子化された各 周波数帯域の信号と上記各周波数帯域の信号に対するスケールフ ァ クタのみを符号化し、 上記符号化信号の各周波数帯域の信号に対し 上記符号化信号に含まれるスケールフ ァ クタを用いて割当ビ ッ ト数 を決定し、 決定された割当ビ ッ ト数を用いて上記符号化信号の各周 波数帯域の信号を逆量子化し、 逆量子化された各周波数帯域の信号 に対し、 スケールフ ァ クタが保存されているか否かを判定し、 スケ ールフ ァ ク タが保存されていない周波数帯域の信号に対 してはスケ ールフ ァ ク タを保存するよ う に逆量子化を再度行う こ と によ り、 各 周波数帯域の信号のスケールフ ァ ク タを保存した状態で符号化信号 を復号化する。
本発明に係る符号化 Z復号化方法においては、 例えば、 原信号を 複数の周波数帯域のサブパン ドに分割したサブバン ド信号、 或いは、 原信号を複数の周波数帯域のスぺク トル · グループに分割したスぺ ク トル信号を符号化して各周波数帯域の信号のスケールフ ァ クタを 保存した状態で復号化する。 ―
また、 本発明に係る符号化 復号化方法においては、 上記各周波
数帯域の信号に対して、 ダイ ナミ ッ ク · レ ンジの量子化値 S F i d (整数) 、 定数 r、 定数 k、 整数定数 s を用いて、
S p = S F 1 d / s + k
なる演算で上記スケールフ ァ ク タ S Fを算出 し、 算出 したスケール フ ァ ク タ S F に応じて上記割当ビ ッ ト数を決定してビ ッ ト割当を行 。
さ らに、 本発明に係る符号化/復号化方法においては、 上記割当 ビ ッ ト数の上限を設定する こ となく 割当ビ ッ ト数を決定する。
また、 本発明に係る符号化装置は、 原信号を複数の周波数帯域に 分割する帯域分割手段と、 上記帯域分割手段によ り 分割された各周 波数帯域の信号に対するスケールフ ァ ク タを算出するスケー リ ング 手段と、 上記帯域分割手段によ り 分割された各周波数帯域の信号に 対して、 上記スケー リ ング手段によ り算出されたスケールフ ァ クタ のみを上記原信号に依存するビ ッ ト割当て条件と して割当ビ ッ ト数 を決定してビ ッ ト割当を行う ビ ッ ト割当手段と、 上記ビ ッ ト割当手 段によ り ビッ ト割り 当てされた割当ビッ ト数で上記各周波数帯域の 信号及び上記スケールフ ァ ク タを量子化を量子化する量子化手段と、 上記量子化手段によ り量子化された各周波数帯域の信号と上記各周 波数帯域の信号に対するスケールフ ァ ク タのみを符号化 した符号化 信号を所定フ ォ ーマ ツ トで出力するフ ォ ーマ ツ ト手段と を備えてな る。 ' 本発明に係る符号化装置においては、 上記帯域分割手段によ り、 例えば、 原信号を複数の周波数帯域のサブバン ド信号、 或いは、 ス ぺク トル · グループのスぺク トル信号に分割する。
また、 本発明に係る符号化装置においては、 上記スケーリ ング手
段によ り、 各周波数帯域の信号に対して、 ダイ ナ ミ ッ ク · レ ンジの 量子化値 S F i d (整数) 、 定数 r、 定数 k、 整数定数 s を用いて、 なる演算で上記スケールフ ァ クタ S Fを算出する。
さ らに、 本発明に係る符号化装置においては、 上記ビ ッ ト割当手 段によ り、 割当ビッ ト数の上限を設定するこ とな く 割当ビ ッ ト数を 決定する。
また、 本発明に係る復号化装置は、 原信号が複数の周波数帯域に 分割され、 分割された各周波数帯域の信号に対 して、 そのスケール フ ァ ク タのみを上記原信号に依存するビ ッ ト割当て条件と して割当 ビ ッ ト数が決定され、 ビッ ト割り 当てされた割当ビ ッ ト数で上記各 周波数帯域の信号が量子化され、 量子化された各周波数帯域の信号 と上記各周波数帯域の信号に対するスケールフ ァ クタのみが符号化 された符号化信号を復号化する復号化装置であって、 上記符号化信 号の各周波数帯域の信号に対し上記符号化信号に含まれるスケール フ ァ ク タを用いて割当ビッ ト数を決定し、 決定された割当ビ ッ ト数 を用いて上記符号化信号の各周波数帯域の信号を逆量子化し、 逆量 子化された各周波数帯域の信号に対し、 スケールフ ァ ク タが保存さ れているか否かを判定し、 スケールフ ァ ク タが保存されていない周 波数帯域の信号に対してはスケールフ ァ クタを保存するよう に逆量 子化を再度行う逆量子化手段を備えてなる。
本発明に係る符号化 Z復号化装置は、 原信号を複数の周波数帯域 に分割し、 分割された各周波数帯域の信号に対して、 そのスケール フ ァク 夕のみを上記原信号に依存するビ ッ ト割当て条件と して割当 ビ ッ ト数を決定 してビッ ト割当を行い、 ビ ッ ト割り 当てされた割当
ビ ッ ト数で上記各周波数帯域の信号を量子化し、 量子化された各周 波数帯域の信号と上記各周波数帯域の信号に対するスケールフ ァ ク 夕のみを符号化する符号化手段と、 上記符号化信号の各周波数帯域 の信号に対し上記符号化信号に含まれるスケールフ ァ ク タを用いて 割当ビ ッ ト数を決定し、 決定された割当ビ ッ ト数を用いて上記符号 化信号の各周波数帯域の信号を逆量子化し、 逆量子化された各周波 数帯域の信号に対し、 スケールフ ァ クタが保存されているか否かを 判定し、 スケールフ ァ クタが保存されていない周波数帯域の信号に 対してはスケールフ ァ ク タを保存するよ う に逆量子化を再度行う こ と によ り、 上記符号化された各周波数帯域の信号をスケールフ ァ ク 夕を保存した状態で復号化する復号化手段とを備える。
本発明に係る符号化 Z復号化装置において、 上記符号化手段は、 例えば、 原信号を複数の周波数帯域に分割する帯域分割手段と、 上 記帯域分割手段によ り 分割された各周波数帯域の信号に対するスケ ールフ ァ クタを算出するスケーリ ング手段と、 上記帯域分割手段に よ り分割された各周波数帯域の信号に対して、 上記スケーリ ング手 段によ り 算出されたスケールフ ァ ク タのみを上記原信号に依存する ビ ッ ト割当て条件と して割当ビ ッ ト数を決定してビ ッ ト割当を行う ビ ッ ト割当手段と、 上記ビ ッ ト割当手段によ り ビ ッ ト割り 当てされ た割当ビ ッ ト数で上記各周波数帯域の信号及び上記スケールフ ァ ク 夕を量子化を量子化する量子化手段と、 上記量子化手段によ り量子 化された各周波数帯域の信号と上記各周波数帯域の信号に対するス ケールフ ァ クタのみを符号化した符号化信号を所定フ ォ ーマ ッ トで 出力するフ ォーマツ ト手段と を備えてなる。
本発明に係る符号化 復号化装置においては、 上記帯域分割手段
によ り、 例えば、 原信号を複数の周波数帯域のサブバン ド信号、 或 いは、 スぺク トル · グループのスぺク ト ル信号に分割する。
また、 本発明に係る符号化ノ復号化装置においては、 上記スケ一 リ ング手段によ り、 各周波数帯域の信号に対して、 ダイ ナミ ッ ク , レンジの量子化値 S F i d (整数) 、 定数 r、 定数 k、 整数定数 s を用いて、
C ― j, S F i d / s + k なる演算で上記スケールフ ァ クタ S Fを算出する。
さ ら に、 本発明に係る符号化/復号化装置においては、 上記ビ ッ ト割当手段によ り、 割当ビ ッ ト数の上限を設定するこ となく 割当ビ ッ ト数を決定する。 図面の簡単な説明 図 1 は、 本発明を適用 したオーディ オ信号の符号化 Z復号化装置 の構成を示すブロ ッ ク図である。
図 2 は、 上記符号化 復号化装置の分析フ ィ ルタ · バンク におけ る帯域分割処理を説明すための図である。
図 3 は、 上記符号化 Z復号化装置のスケーリ ング部におけるスケ —ルフ ァ クタの算出処理を示すフローチヤ一トである。
図 4 は、 上記分析フ ィ ルタ · バンクによ り帯域分割されたサブパ ン ド信号のサンプル値とスケールフ ァ ク 夕の 1 例を示す図である。 図 5 は、 上記符号化 Z復号化装置のビ ッ ト割当部におけるビ ッ ト 割当処理を示すフローチヤ一トである。
図 6 は、 上記ビッ ト割当部におけるビ ッ ト割当処理の他の例を示
すフローチ ヤ一トである。
図 7 は、 上記符号化 Z復号化装置装置の逆量子化部における逆量 子化処理を示すフローチヤ 一 トである。 発明を実施するための最良の形態 以下、 本発明の一実施例について図面を参照しながら詳細に説明 する。
本発明に係る符号化方法、 復号化方法及び符号化 復号化方法は. 例えば、 図 1 に示すよ う な構成のオーデ ィ ォ信号の符号化ノ復号化 装置によ り実施される。
このオーディ ォ信号の符号化/復号化装置は、 原信号と して入力 端子 1 0 0 を介 して入力されたオーディ ォ信号を符号化する符号化 器 1 と、 上記符号化器 1 によ り符号化された各帯域信号が記録され るス ト レージメディ ア 1 0 6 と、 上記ス ト レ一ジメディ ア 1 0 6 に 記録された符号化された上記各帯域信号を復号化し、 生成したォー ディ ォ信号を出力端子 1 1 0 を介して出力する復号化器 2 とで構成 されている。
まず、 上記符号化器 1 の構成、 及び、 動作について説明する。 上記符号化器 1 は、 入力端子 1 0 0を介して入力された原信号を 3 2帯域のサブバン ド信号に分割する分析フ ィ ルタ · ノ ンク 1 0 1 と、 上記分析フ ィ ル夕 · バンク 1 0 1 によ り分割された各サブバン ド信号に対してスケールフ ァ ク タを算出するスケーリ ング部 1 0 2 と、 上記スケー リ ング部 1 0 2 によ り算出されたスケールフ ァ クタ に応じて各サブパン ド信号に対しての割当ビ ッ ト数を決定してビ ッ
ト割当を行う ビ ッ ト割当部 1 0 3 と、 上記ビ ッ ト割当部 1 0 3によ り割り 当てられた割当ビ ッ ト数で上記サブバン ド信号を量子化する 量子化部 1 0 4 と、 上記量子化部 1 0 4 によ り量子化された上記各 サブバン ド信号、 及び、 ビ ッ ト割当情報、 及び、 スケールフ ァ クタ をフ ォーマツ ト し、 ス ト レージメデ ィ ア 1 0 6に記録するフ ォーマ ッ ト部 1 0 5 とで構成されている。
ここで、 上記入力端子 1 0 0には、 例えば周波数帯域が 0〜 24 k H zのオーデ ィ オ信号が原信号と して入力される。 上記オーディ ォ信号は、 例えば標本化周波数 f sが 4 8 k H zで 1 サンプルが 1 6ビッ ト に直線量子化されている ものとする。
上記分析フ ィ ル夕 · バンク 1 0 1 は、 上記入力信号を 3 2個のサ ブバン ド信号に分割するもので、 例えば図 2に示すよう に、 標本化 周波数 f s = 4 8 k H zの動作モー ドでは、 周波数帯域が 0〜 24 k H zの原信号を帯域幅がそれぞれ 7 5 O H zの 3 2個のサブパン ド信号に分割する。 具体的には、 1 サンプルが 1 6ビ ッ ト に直線量 子化されたオーディ ォ信号に対して、 3 84サンプルを 1 フ レーム と して、 各サブバン ド 1 2をサンプルと して、 3 2サブバン ド s u b b a n d O〜 s u b b a n d 3 1 のサブバン ド信号に分割する。 上記スケー リ ング部 1 0 2は、 3 2サブパン ドに分割された各サ ブパン ド信号に対して、 各サブパン ド信号のダイ ナミ ッ ク · レンジ を 1 に正規化する倍率を示すスケールフ ァ クタを 1 2サンプル毎に 次のよ う に して求める。
以下、 上記スケ一 リ ング部 1 0 2 における各サブバン ド信号に対 するスケールフ ァ グ夕の算出処理を、 図 3 に示すフローチャー ト を 用いて説明する。
スケールフ ァ クタの計算は、 各サブバン ド ( 1 2サンプル) 毎、 即ち、 全体で 3 84サンプル毎に行う。
まず、 ステ ップ S P 2 0 1 では、 1 2サンプルの絶対値の最大値、 即ち、 ダイ ナ ミ ッ ク · レンジ d r を決定する。 上記ダイ ナミ ッ ク · レンジ d rは、
d r =M a x { | x i l l O≤ i ≤ l l | } で表される。
次のステ ップ S P 2 0 2では、 上記ダイ ナミ ッ ク · レ ンジ d rを 量子化する。 具体的に言う と、 ダイ ナ ミ ッ ク · レ ンジ d rの量子化 値 S F i dは、 d r - Oすなわち上記ダイナミ ッ ク · レ ンジ d r力 ゼロの場合には、
S F i d = 0
となり、 また、 d r > 0すなわち上記ダイナミ ッ ク · レ ンジ d r力 ί ゼロよ り 大の場合には、
S F i d = M a X { 0, [ 1 6 + 3 1 o g 2 d r ] }
となる。 こ こで、 " [ x] " は、 " x " 未満の最大整数を返す関数 を示している。
そして、 ステ ップ S P 2 0 3では、 上記量子化値 S F i dからス ケールフ ァ ク タ S Fを、 定数 r (= 2 ) 、 定数 k (=— 5 ) 、 整数 定数 s ( = 3 ) を用いて、
C r> = « S F i d /s + k = o S F i d /3- 5 なる演算で算出する。
上述のよ う に して、 上記スケーリ ング部 1 0 2は、 各サブバン ド 信号のスケールフ ァ ク タ S Fを算出する。
こ こで、 上記スケーリ ング部 1 0 2では、 このよう に して各サブ
バン ド信号のスケールフ ァ ク タ S F を算出する代わり に、 各サブバ ン ド信号の 1 2サンプル毎に最大絶対値を求めて、 表 2 に示すスケ —ルフ ァ ク タのう ち、 上記最大絶対値と等しいか、 或は、 上記最大 絶対値よ り大である値の中で、 最小の値をスケールフ ァ ク タ と して 用いるよ う に しても 良い。
(以下、 余白)
マ一 乙 ω 11 ~ ° 1 」 ¾ ¾- ζ- ω ½ 1} H ^ -fr ω 0 Ρ u Β q q η s ·Α· · ½· ¾ Υ っ S ID Τ
【 S挲】
6ΐ -
68600/S6df/X d 66JTC/S6 OAV
おける 1 2サンプルが図 4 に示すよ う な各値を持っている とすると、 その最大絶対値は、 " 5 2 1 4 " で
5 1 6 1 ≤ 5 2 1 4 < 6 5 0 2
であるから、 このフ レームにおけるサブバン ド s u b b a n d 0の スケールフ ァ ク タ S Fは" 6 5 0 2 " となる。 残り の各サブバン ド s u b b a n d l 〜 s u b b a n d 3 1 についても同様にスケール フ ァ ク タ S Fを求めるこ とができる。
また、 上記ビ ッ ト割当部 1 0 3は、 上記スケー リ ング部 1 0 2に よ り算出された各サブバン ド信号のスケールフ ァ ク タ S Fに応じて、 各サブバン ド信号に対しての割当ビ ッ ト数を決定する。
以下、 上記ビ ッ ト割当部 1 0 3におけるビ ッ ト割当処理を、 図 5 に示すフローチャー ト を用いて説明する。
まず、 ステ ッ プ S P 3 0 1 では、 サブバン ド信号の量子化に利用 できるビ ッ ト数 a d b、 サブパン ド信号のビッ ト数 b s p 1、 各サ ブバン ド信号の量子化ビ ッ ト数 b [ i ] 、 各サブバン ド信号にビッ ト数が割り 当てられたか否かを示すフラグ (以下、 識別フラグと言 う。 ) u s e d [ i ] 、 各サブバン ド信号のエネルギー σ 2 [ ί ] を 各々初期化する。
具体的には、 サブバン ド信号の量子化に利用できるビ ッ ト数 a d bは、 a d b = c b — ( b b a l + b s c f ) . すなわち、 全ての 利用可能なビ ッ ト数 c bから、 ビ ッ ト割当に必要なビ ッ ト数 b b a 1 とスケールフ ァ ク タのビ ッ ト数 b s c f とを引いた値にする。 また、 b s p l = 0, b [ i ] = 0, u s e d [ i ] = 0、 すな わち、 サブバン ド信号のビ ッ ト数 b s p 1 と各サブバン ド信号の量 子化ビ ッ ト数 b [ i ] 、 及び、 識別フラグ u s e d [ i ] は、 各々
" 0 " にする。
さ らに、 σ [ i ] = S F [ i ] 、 すなわち、 " σ [ i ] " をスケ —ルフ ァ ク タ S F [ i ] と して、 各サブバン ド信号のエネルギー σ 2 [ i ] を各サブバン ド信号のスケールフ ァ クタ S F [ i ] の 2乗で 与える。
ここで、 u s e d C i ] = 0、 すなわち、 上記識別フラグ u s e d [ i ] 力 " 0 " の場合は、 そのサブパン ドにまだビ ッ ト数が割り 当てられていないこ とを示 し、 また、 u s e d [ i ] = 1、 すなわ ち、 上記識別フラグ u s e d [ i ] 力 ί " 1 " の場合は、 そのサブバ ン ドには既にビ ッ ト数が割 り 当てられているこ と を示し、 さ らに、 u s e d [ i ] = 2、 すなわち、 上記識別フラグ u s e d [ i ] が " 2 " の場合は、 そのサブパン ドにはこれ以上ビ ッ ト数を割り 当て るこ とができないこ とを示す。
また、 各サブバン ドに割り 当てるビ ッ ト数は、 1 ビ ッ トを除く、 0〜 1 5ビ ッ ト とする。
次のステ ップ S P 3 0 2では、 各サブパン ド信号に、 まだビ ッ ト 数を割り 当てる こ とができるか否かを判断する。 即ち、 識別フラグ u s e d [ i ] ( 0≤ i ≤ 3 1 ) 力 、 " 2 " であるか否かを判断す る。 そ して、 u s e d [V i ] = 2、 すなわち、 全てのサブバン ド 信号にビ ッ ト を割り 当てる こ とができない場合には、 このビ ッ ト割 当部 1 0 3 におけるビ ッ ト割当処理を終了する。
また、 ステ ッ プ S P 3 0 3では、 ョ i, s u c h t h a t u s e d [ i ] ≠ 2、 すなわち、 ビ ッ ト数を割り 当てるサブバン ド信 号が存在する場合に、 そのビ ッ ト数を割り 当てる こ とができるサブ バン ド信号から、 最大の " ひ C i ] " を持つサブバン ド信号を取り
出す。 こ こで、 最大の " σ [ i ] " を持つサブバン ドが複数存在し た場合、 聴覚上、 低域の方が高域に比べて感度が高いので、 最も低 域のサブバン ド信号を取り 出す。 即ち、 上記最大の " ひ [ i ] " を 持つサブバン ド信号のィ ンデッ クス m a xは、
m a X = M i n { i I u s e d [ i 」 ≠ 2,
a [ i ] ≥ σ [ V j ] }
で表される。
そして、 ステ ップ 3 0 4 では、 最大の "び [ i ] " を持つサプバ ン ド信号の 1 2サンプルの信号の量子化のために、 付加されるべき ビ ッ ト数 s m p 1 _ b i t を計算する。 こ こで、 これまでに上記サ ブバン ド信号にビッ ト数が割り 当てられていない場合には、 1 信号 当たり 2 ビッ ト、 計 2 4 ビ ッ トを付加する。 また、 既に上記サブバ ン ド信号にビッ ト数が割り 当てられている場合には、 1 信号あたり 1 ビッ ト、 計 1 2 ビ ッ トを付加する。 即ち、 上記付加されるべきビ ッ 卜数 s m p l一 b i t は、
s m p l _ b i t = 2 4 - u s e d [m a x ] x 1 2
なる演算で求められる。
次のステ ップ S P 3 0 5 では、 上述のよ う に して求められた、 付 加されるべきビ ッ ト数 s m p 1 — b i t は、 本当に付加するこ とが できるか否かを判断する。 a d b ≥ b s p 1 + s m p 1 — b i t、 すなわち、 これまでに割り 当てられたビ ッ ト数 b s p 1 に、 付加し よ う とするビッ ト数 s m P 1 _ b i を加えた値がサプバン ド信号 の量子化に利用できるビ ッ ト数 a d b以下であれば、 このサブパン ド信号には、 上述のステップ S P 3 0 4 において計算された付加す べきビ ッ ト数 s m p 1 ― b i t を付加するこ とができるので、 次の
ステ ップ S P 3 0 6 に移る。 また、 a d b < b s p l + s m p l _ b i t であれば、 そのサブバン ド信号には、 これ以上ビ ッ ト数を割 り 当てるこ とができないので、 ステ ップ S P 3 1 1 に移って、 u s e d [m a x ] = 2、 すなわち、 識別フラグ u s e d [m a x ] を " 2 " と してから、 上述のステ ップ S P 3 0 2のビッ ト割当の判断 に戻る。
そして、 ステ ップ 3 0 6では、 b s p l + = s m p l — b i t、 すなわち、 サブバン ド信号の量子化のために割り 当てられたビ ッ ト 数 b s p 1 に、 付加すべきビ ッ ト数 s m p 1 — b i t を加える。 次のステ ッ プ S P 3 0 7では、 b [m a x ] + = 2 — u s e d [m a x ] , すなわち、 このサブバン ド信号の量子化ビ ッ ト数 b [m a x ] と して、 これまでに割当ビ ッ トが設定されていなかった 場合 ( u s e d [m a x ] = 0 ) には 2ビ ッ ト加え、 また、 これま でに割当ビ ッ トが設定されていた場合 ( u s e d [m a x ] = 1 ) には 1 ビ ッ ト加える。
さ らに、 ステ ップ S P 3 0 8では、 CT [m a x ] Z= 4 — u s e d [m a ] x 2 と して、 このサブパン ド信号の "ひ [m a x ] " を減らす。 具体的には、 上述のステ ップ S P 3 0 7において、 割当 ビ ッ ト数が 2ビ ッ ト増えた場合、 即ち、 識別フラグが " 0 " の場合 ( u s e d [m a x ] = 0 ) 、 " σ [m a x] " を " 4 " で割る。 また、 割当ビ ッ ト数が 1 ビ ッ ト増えた場合、 即ち、 識別フラグが " 1 " の場合 ( u s e d [m a x ] = 1 ) 、 " ひ [m a ] " を 2で 割る。
ここで、 上述の図 5に示 したフローチャー ト のステ ップ S P 3 0 1 の初期化処理において、 σ [ i ] = S F [ i ]
と した力 、 次のよ う に しても 良い。
すなわち、 サブバン ドのダイナ ミ ッ ク · レンジ d rの量子化値 S F i d [ i ] を用いて、 図 6のステ ップ S P 4 0 1 に示すよ う に、 a [ i ] = S F i d [ i ]
とする。 そして、 上述したよ う にスケールフ ァ ク タ S F [ i ] と上 記量子化値 S F i d [ i ] との関係は、
S F [ i 1 = r s F i d【:] / s + k
であるから、 このスケールフ ァ ク タ S F [ i ] を定数 r nで割る とい う処理は、 上述の関係を用いて、
S F [ i ] / r n= r SF i d [ i ] /s + k/ r n
一 r
一 Γ
となり、 量子化値 S F i d [ i ] から定数 n s を減算するといぅ処 理に置き換える ことができる。
これによ り、 上述したステ ップ S P 3 0 8の " び [m a x ] " を 減らす処理において、 " σ [m a x ] " を " 4 " で割る、 即ち、 ス ケ一ルフ ァ ク タ S F [m a x ] を " 4 " で割る処理は、
r "= 4 = 22
と して、 nは " 2 " ( n = 2 ) となる。 こ こで、 上述したよ う に、 定数 sは " 3 " ( s = 3 ) であるので、 したがって、
n s = 2 x 3 = 6
となり、 スケールフ ァ クタ S F [m a x ] から " 6 " を減算する処 理に置き換える こ とができる。
また、 "び [m a x ] " を " 2 " で割る処理も同様に して、 " 3 " を減算する処理に置き換えるこ とができる。
したがって、 上記図 5 に示 したステ ッ プ S P 3 0 8の処理、 σ [m a x ] Z= 4 — u s e d [m a x」 x 2
は、 上記図 6のステ ップ S P 4 0 8 に示すよ う に、
σ [m a x — = 6— u s e d [m a x ] x 3
に置き換える こ とができる。
次のステ ップ S P 3 0 9では、 上述のよ う に して、 このサブバン ド信号には少な く と も 2ビ ッ ト割り 当てられているので、 u s e d [m a x ] = 1、 すなわち、 識別フラグ u s e d [m a x ] を " 1 " にする。
さ ら に、 ステ ップ S P 3 1 0では、 b [m a x ] = 1 5 ?、 すな わち、 このサブパン ド信号に割り 当てられた量子化ビ ッ ト数 b [m a x] が 1 5ビ ッ トであるか否かを判断する。
このステップ S P 3 1 0において、 b [m a x ] = 1 5、 すなわ ち、 上記量子化ビッ ト数 b [ m a X ] 力 ί 1 5ビ ッ トであった場合に は、 これ以上ビ ッ ト数を割り 当てる こ とはできないので、 ステ ップ S P 3 1 1 に移って、 u s e d [m a x ] = 2、 すなわち、 識別フ ラグ u s e d [m a x を " 2 " と してから、 上述のステ ッ プ S P 3 0 2のビ ッ ト割当の判断に戻る。
上記量子化ビ ッ ト数 b [m a x] 力 ί 1 4 ビッ ト以下であっ た場合、 このサブパン ドには、 まだビ ッ ト数を割り 当てる こ とができるもの と して、 そのま ま上述のステ ップ S P 3 0 2のビ ッ ト割当の判断に 戻る。
以下、 全てのサブバン ド信号について、 識別フラグ u s e d [ i ] が " 2 " となるまで、 ステ ップ S P 3 0 2以下の処理を繰り返す。 上述のよ う に して、 ビッ ト割当部 1 0 3は、 各サブバン ド信号の
スケールフ ァ ク タ S F [ i ] ( = ひ [ i ] ) のみを用いて、 全ての サブバン ド信号にビ ッ ト数を割り 当てる。
具体的には、 上述の図 2 に示した入力信号の時間 t 。 〜 t , のフ レームにおける各サブバン ド s u b b a n d O〜 s u b b a n d 3 1 のスケールフ ァ ク タ S Fが上記スケー リ ング部 1 0 2 によ り例え ば表 3 に示すよ う に決定されたとすると、 上記ビ ッ ト割当部 1 0 3 では、 例えば、 a d b = 1 4 0の場合、 上述のビ ッ ト割り 当て処理 によ り、 表 4 に示すよ う な結果が得られる。 すなわち、 サブバン ド s u b b a n d 0には 6ビ ッ ト 、 サブノ ン ド s u b b a n d 1 には 3ビ ッ ト、 サブバン ド s u b b a n d 2 には 2ビ ッ トが割り 当てら れ、 他の各サブノ ン ド s u b b a n d 3〜 s u b b a n d 3 1 の割 り 当てビ ッ ト数は 0 となる。
(以下余白)
9iT 'S Π Uo 1 b
0007 ο
ο τ 1 Ub
09Ζ Q 1 06
092 Ί QT 07
06
. b ι ム 6
WO ι 076
QT C7
HL ,0 π
089 Ό 8ΐ Ζ
QL Ό ΖΖ
000 ' 81 \Ζ
8 S'l ί\ 02
HL ·0 Η 6ΐ
000 'ΐ 9ΐ 81
000 \Ζ ί\
092 Ί 91 9ΐ
A89 Ί Αΐ 9ΐ
000 8ΐ Η
029 'Ι 61 Ζ\
000 '9ΐ LZ Ζ\
ΊΟΐ S2 ΐΐ
LU '0 IS Οΐ
000 '8 6
000 -9ΐ 11 8
669 ·ΖΙ 93 L
000 '9ΐ LZ 9
000 '9ΐ 11 3
1^63 'ΐθΐ 9S
12 ε
080 '9^9 τ
6 ·2Ι8 τ
966 'I0S9 89 0
xepui pu^qqns
[ ε拏】
68600/S6df/X3d 66W£/S6 OAV
【表 4 】
ここで、 上記ビ ッ ト割当部 1 0 3 は、 スケールフ ァ ク タ S Fのみ を用いてビ ッ ト数を割り 当てる際に、 スケールフ ァ ク タ S F を定数 で割る と いう処理を行う場合、 実数の除算を行う こ と になるが、
S p = 2 S F I d / s + k という 関係を用いて、 実数の除算を整数の減算に置き換えてビ ッ ト 割当を行っている。 これによ り、 ビ ッ ト割当の回路をよ り簡略化す
るこ とができ、 また、 演算の高速化を図るこ とができる。
尚、 上記図 6 に示すビ ッ ト数の割当処理において、. 上記図 5 に示 したビ ッ ト数の割当処理と同 じ処理には、 同一のステ ッ プ数を付し てその説明を省略する。
そして、 上記量子化部 1 0 4 は、 上記ビ ッ ト割当部 1 0 3 によ り 割り当て られたビッ ト数で、 前記式 1 に従って各サブバン ド信号を 量子化する。
さ らに、 上記フ ォ ーマ ッ ト部 1 0 5 は、 量子化されたサブバン ド 信号と、 スケールフ ァ クタ と、 ビ ッ ト割当情報と を所定のフ ォ ーマ ッ ト に従ってビ ッ ト ス ト リ ームへ組み立て、 ス ト レ一ジ · メディ ア 1 0 6へ記録する。
次に、 上述のよ う な構成を した符号化器 1 の動作を説明する。 分析フ ィ ルタ ' バンク 1 0 1 は、 入力端子 1 0 0を介 して入力さ れたオーディ ォデータを 3 2サブパン ドのサブバン ド信号に分割し、 その帯域分割されたサブバン ド信号をスケ一リ ング部 1 0 2 に供給 する。
上記スケー リ ング部 1 0 2 は、 上記分析フ ィ ルタ · ノ ンク 1 0 1 からの各サブバン ド信号に対するスケールフ ァ ク タ S F を、 サブバ ン ド信号のダイ ナミ ッ ク · レンジの量子化値 S F i d、 定数 r ( = 2 ) 、 定数 k ( =— 5 ) 、 整数定数 s ( = 3 ) を用いて、
C = O S F I d / 3 - 5 なる演算で算出 し、 その算出 したスケールフ ァ ク タ S Fをビ ッ ト割 当部 1 0 3に供給する。
上記ビ ッ ト割当部 1 0 3 は、 上記スケーリ ング部 1 0 2からの各 サブバン ドのスケールフ ァ ク 夕 S F に応じて、 上記スケールフ ァ ク
夕 S Fのみを用いて全てのサブバン ドにビ ッ ト数を割り 当てる。 そ して、 上記ビ ッ ト割当部 1 0 3 は、 その決定した割当ビ ッ ト数、 及 び、 上記スケールフ ァ クタ S Fを量子化部 1 0 4 に供給する。
上記量子化部 1 0 4 は、 上記ビ ッ ト割当部 1 0 3からの割当ビ ッ ト数で、 その割り 当てられたビ ッ ト数に対応するサブバン ド信号、 及び、 上記ビ ッ ト割当部 1 0 3からのスケールフ ァ ク タ S Fを量子 化し、 量子化したサブバン ド信号、 及び、 スケールフ ァ クタ S Fを フ ォ ーマ ツ ト部 1 0 5 に供給する。
上記フ ォ ーマ ツ ト部 1 0 5 は、 上記量子化部 1 0 4 からの量子化 されたサブバン ド信号と、 ビ ッ ト割当情報と、 スケールフ ァ ク タ と を所定のフ ォ ーマ ツ ト に従っ てビ ッ トス ト リ ームへ組み立て、 ス ト レ一ジメディ ァ 1 0 6 に記録する。
上述のよ う に して、 符号化器 1 では、 スケールフ ァ ク タのみを用 いて決定された割当ビ ッ ト数で各サブパン ド信号の量子化が行われ る。
このよ う に、 この実施例のオーデ ィ オデータの符号化装置では、 スケールフ ァ ク タ S Fのみを用いて各サブバン ドに対するビ ッ ト割 当を行っ ているため、 このオーディ ォデ一夕の符号化装置によ り符 号化されたデータを復号化する際にも、 上述の符号化する際に行つ た処理と同様にビッ ト割当の演算を行う こ とができる。 このため、 上記オーディ オデータの符号化装置は、 割当ビ ッ ト数を出力する必 要がな く なり、 さ らに、 割当ビッ ト数の上限を設定する必要もなく、 その分のビッ ト を、 サブバン ド信号の量子化に割り当てるこ とがで きる。 したがって、 特定の周波数の信号に対しても十分なビ ッ ト数 を割り 当てるこ とができ、 量子化効率の向上を図るこ とができる。
また、 スケールフ ァ ク タ S Fを、
S p = r S F i d / s + k なる式で与える こ と によ り、 スケールフ ァ ク タ S Fを定数 r nで割る という 処理を、 量子化値 S F i dから定数 s x nを減算する という 処理におきかえるこ とができる。 このため、 ビ ッ ト割当の回路にお いて、 実数の除算回路を整数の減算回路に置き換える こ とができ、 したがって、 ビ ッ ト割当の回路の簡略化を図るこ とができる と共に、 演算の高速化を図るこ とができる。
尚、 上述の実施例に係るオーディ オデ一夕の符号化装置では、 量 子化する各帯域信号を複数の周波数帯域のサブバン ドに分割したサ ブバン ド信号と したが、 複数の周波数帯域のスぺク トル · グループ に分割 したスぺク トル信号と してもよい。
次に、 上記復号化器 2の構成、 及び、 動作について説明する。 上記復号器 2は、 上記符号器 1 によ ってス ト レ一ジメディ ァ 1 0 6に記録されたビ ッ ト ス ト リ ームを量子化されたサブバン ド信号と ビ ッ ト割当情報とスケールフ ァ ク タ と に分解するビッ ト ス ト リ 一ム 展開部 1 0 7と、 上記ビ ッ ト ス ト リ 一ム展開部 1 07によ り 分解さ れた量子化されたサブパン ド信号を上記スケールフ ァ ク タが保存さ れるよ う に逆量子化する逆量子化部 1 08と、 上記逆量子化部 1 0 8によ り逆量子化されたサブパン ド信号をオーデ ィ オ信号に合成し て出力端子 1 1 0を介して出力する合成フ ィ ルタ · バン ク 1 09と で構成されている。
上記逆量子化部 1 08には、 上記ビッ ト ス ト リ ーム展開部 1 0 7 からサブバン ド信号の量子化値 Y [ j ] ( 0≤ j < 1 2 ) と、 量子 化ビ ッ ト数 Nと、 スケールフ ァ クタ S F [ i d ] とが供給される。
こ こで、 上記 ." i d " はスケールフ ァ ク タのイ ンデッ クス、 " S F [ i d ] " は " i d " のイ ンデッ クスを持つスケールフ ァ ク タを示 す。
以下、 上記逆量子化部 1 0 8における逆量子化処理について、 図 7に示すフローチャー トを用いて具体的に説明する。
まず、 ステ ッ プ S P 50 1では、 前記式 2に従って、 量子化値 Y [ i ] に従来の逆量子化処理を施す。 即ち、 上記サブバン ド信号の 量子化値 Y [ j ] の逆量子化値 X [ j ] ( 0≤ j < 1 2 ) を、
X [ j ] = Y [ j ] x S F [ i d ] x ( 2 / ( 2 N- 1 ) ) なる演算によ り 求める。
次のステ ップ S P 502では、 逆量子化値 X [ j ] がスケールフ ァ ク夕 S F [ i d ] を保存しているか否かを判断する。 具体的には、 ョ j, s u c h t h a t I X C j ] l > S F [ i d— 1 ] 、 す なわち、 1 2サンプルの逆量子化値 X [ j ] のう ち、 最低 1つ、 そ の絶対値 ( I X [ j ] I ) 力 1段階下のスケールフ ァ ク タ S F [ i d - 1 ] よ り大きい場合は、 スケールフ ァ ク タが保存されてい ると判断 し、 この逆量子化部 1 08における逆量子化処理を終了す る。
また、 I X [V j ] | ≤ S F [ i d— 1 ] 、 すなわち、 1 2サン プルの逆量子化値 X [ j ] 全てについて、 その絶対値 ( I X [ j ] I ) が、 上記スケールフ ァ ク タ S F [ i d - 1 ] 以下である場合は、 スケールフ ァ ク タが保存されていな と判断し、 逆量子化を再度や り直すために、 ステ ップ S P 50 3に移る。
このステ ップ S P 503では、 まず、 上記スケールフ ァ ク タ S F [ i d - 1 ] を跨ぐよ うな量子化値 k ( k > 0 ) を求める。
具体的には、
( ( 2 k - 1 ) / ( 2 N- 1 ) ) x S F [ i d ]
< S F [ i d - 1 ] 及び、
S F [ i d - 1 ]
く ( ( 2 k + 1 ) / ( 2 N— 1 ) ) S F [ i d ] を満たす量子化値 kを求める。
そして、 上記量子化値 kを用いて、 1 2サンプルの量子化値 Y [ j ] ( 0≤ j < 1 2 ) 全てについて、 以下に説明する逆量子化の やり直し処理を行う。
まず、 ステップ S P 5 0 4では、 1 2サンプルの量子化値 Y [ j ] ( 0≤ j < 1 2 ) 全てについて、 逆量子化のやり直しが終了したか を判断する。 そして、 j = 1 2、 すなわち、 逆量子化のやり直しが 終了した場合は、 この上記逆量子化部 1 0 8における逆量子化処理 を終了する。 また、 0≤ j < 1 2、 すなわち、 逆量子化のやり直し が終了していない場合には、 ステップ S P 5 0 5 に移る。
このステップ S P 5 0 5では、 量子化値 Y [ j ] が上記量子化値 kに量子化されているか否かを判断する。 そして、 Y [ j ] = k、 すなわち、 上記サブバン ド信号の量子化値 Y C j ] が量子化値 kに 量子化されている場合には、 ステップ S P 5 0 6 に移り、 また、 Y [ j ] ≠ k、 すなわち、 上記サブバン ド信号の量子化値 Y [ j ] が 量子化値 kに量子化されていない場合には、 ステップ S P 5 0 7に 移る。
上記ステップ S P 5 0 6では、
X [ j ] = { S F [ i d— 1 ] + ( ( 2 k + 1 ) / ( 2 N- 1 ) )
x S F [ i d ] } / 2
なる演算で逆量子化値 X [ j ] を求める。 そして、 ステ ップ S P 5 09に移って次のサンプルの量子化値 Y [ j ] へイ ンデ ッ クス j を 進めてから、 上述のステ ップ S P 5 04の逆量子化のやり直し終了 の判断へ戻る。
また、 上記ステ ップ S P 5 0 7では、 上記サブバン ド信号の量子 化値 Y [ j ] が負の量子化値 (一 k ) に量子化されているか否かを 判断する。
Y [ j ] ≠一 k、 すなわち、 上記サブバン ド信号の量子化値 Y [ j ] が負の量子化値 (一 k ) に量子化されていない場合には、 上 記ステ ップ S P 50 9に移っ て次のサンプルの量子化値 Y [ j ] へ イ ンデッ クス j を進めてから、 上述のステ ップ S P 5 04の逆量子 化のやり 直し終了の判断へ戻る。 また、 Y [ j ] =一 k、 すなわち、 上記サブバン ド信号の量子化値 Y [ j ] が負の量子化値 (一 k ) に 量子化されている場合には、 ステ ップ S P 508に移る。
上記ステップ S P 5 08では、
X [ j ] =— { S F [ i d - 1 ] + ( ( 2 k + 1 )
/ ( 2 N- l ) ) x S F [ i d ] } / 2 なる演算で逆量子化値 X [ j ] を求める。 そして、 ステ ップ S P 5 09に移って次のサンプルの量子化値 Y [ j ] へイ ンデ ッ クス j を 進めてから、 上述のステップ S P 5 04の逆量子化のや り直し終了 の判断へ戻る。
上述のよう に、 上記逆量子化部 1 08は、 1 2サンプルの逆量子 化値 X C j ] の絶対値が全て 1段階下のスケールフ ァ ク タ S F [ i d - 1 ] 以下の場合には、 スケールフ ァ ク タ S F [ i d ] が保存さ
れていないと判断し、 逆量子化をや り直して 1 2サンプルの逆量子 化値 X [ j ] を求め直す。 これによ り、 量子化前と同じ スケールフ ァ ク夕 S F [ i d ] を得る こ とができる。
上記合成フ ィ ルタ · バン ク 1 0 9 は、 図示していないが、 帯域合 成部を備えており、 この帯域合成部によ り逆量子化が施されたサブ バン ド信号をオーデ ィ ォ信号に合成する。
上述のよ う な構成を した復号化器 2の動作を説明する。
上記ビ ッ ト ス ト リ ーム展開部 1 0 7は、 上述した符号化器 1 のス ト レージメディ ア 1 0 6 に記録されているビ ッ ト ス ト リ 一ムを、 量 子化されたサブバン ド信号と、 ビ ッ ト割当情報と、 スケールフ ァ ク 夕 と に分解し、 その分解した量子化されたサブバン ド信号と、 ビ ッ ト割当情報と、 スケールフ ァ クタ と を逆量子化部 1 0 8 に供給する c 上記逆量子化部 1 0 8は、 上記ビ ッ ト ス ト リ ーム展開部 1 0 7か らの量子化されたサブパン ド信号を、 上記ビ ッ ト ス ト リ ーム展開部 1 0 7 からのスケールフ ァ ク タが保存されるよ う に逆量子化する。 そ して、 上記逆量子化部 1 0 8は、 その逆量子化したサブパン ド信 号を合成フ ィ ルタ · ノ ンク 1 0 9 に供給する。
上記合成フ ィ ルタ , パン ク 1 0 9 は、 上記逆量子化部 1 0 8から の逆量子化されたサブバン ド信号をオーディ ォ信号に合成し、 その オーデ ィ オ信号を出力端子 1 1 0を介して出力する。
上述のよ う に、 符号化器 1 においては、 サブパン ド信号を各サブ バン ドのスケールフ ァ クタのみを用いて決定された割当ビ ッ ト数で 量子化し、 復号化器 2 において、 上記符号化器 1 によ り量子化され たサブバン ド信号を、 各サブバン ドのスケールフ ァ ク タが保存され るよう に逆量子化するため、 符号化、 及び、 復号化を繰り返す場合
に、 毎回同一の割当ビ ッ ト数が決定される。 したがって、 量子化、 及び、 逆量子化において、 毎回同一の結果が得られる こ と によ り、 符号化、 及び、 復号化を繰り返す度に音質が劣化するこ とな く ォ一 ディ ォデ一夕のダビング等を行う こ とができる。
尚、 上記復号化器 2で復号化されたオーディ オ信号を、 再度、 上 記符号化器 1でサブバン ド信号に分解し、 スケールフ ァ ク タを計算 する際に、 1 2サブバン ド信号で構成される符号化ブロ ッ クを前回 と同じ符号化ブロ ッ クにする。
具体的に言う と、 例えば、 逆量子化部 1 08において逆量子化に かかる時間 (以下、 逆量子化処理時間と言う。 ) を管理する。 そし て、 分析フ ィ ル夕 · ノ ンク 1 0 1で 1 2サブバン ド信号に分解する 際に、 逆量子化処理時間分ずら して分解するこ と によ り、 毎回符号 化ブロ ッ クの切り 出 し口が同 じ になる。 これによ り、 毎回同じスケ —ルフ ァ クタを得るこ とができ、 割当ビ ッ ト数も毎回同一の結果を 得るこ とができる。 これによ り、 符号化、 及び、 復号化を繰り返す 度に音質が劣化するこ とな く オーディ オデータの複製等を行う こ と ができる。
すなわち、 例えば上述の図 2に示した入力信号の時間 t。 〜 t , のフレームにおけるサブバン ド s u b b a n d 0のサブバン ド信号 のう ち例えば X =— 5 2 1 4のサンプルは、 上述の式 1 に従って Y = r i n t { ( X / S F ) x ( ( 2 N- 1 ) / 2 ) }
= r i n t { ( - 52 1 4 / 6 502 )
x ( ( 26- 1 ) / 2 ) }
= 2 5
量子化値 Y = 2 5に量子化される。
これを従来の手法に従っ て上述の式 2で逆量子化する と、
X = Y X S F X ( 2 / ( 2 N— 1 ) )
= 2 5 X 6 5 0 2 X 2 / ( 26- 1 )
= 5 1 6 0. 3
となり、 その逆子化値 X ½ 5 1 6 0. 3は、 元のスケールフ ァ クタ S F = 6 502の 1 レベル下のスケールフ ァ ク タ S F = 5 1 60. 6よ り も小さな値になって し まう。 すなわち、 このよ う に して得ら れた逆子化値 X 5 1 60. 3は、 再度量子化するとスケールフ ァ ク タ S Fが変化するので、 ビ ッ ト割 り 当てが変化する こ と によ り音 質も変化するこ と になる。
しかし、 この実施例の符号化 Z復号化装置では、 上記逆量子化部 1 08において、 1 2サンプルの逆量子化値 X [ j ] の絶対値が全 て 1段階下のスケールフ ァ ク タ S F [ i d - 1 ] 以下の場合には、 スケールフ ァ ク タ S F [ i d ] が保存されていないと判断して、 逆 量子化をやり直し、 量子化前と同 じスケールフ ァ クタ S F [ i d] の逆量子化値 X [ j ] を得るので、 スケールフ ァ クタ S F [ i d ] を保存するこ とができる。