JP2008083295A - オーディオ符号化装置 - Google Patents

オーディオ符号化装置 Download PDF

Info

Publication number
JP2008083295A
JP2008083295A JP2006262022A JP2006262022A JP2008083295A JP 2008083295 A JP2008083295 A JP 2008083295A JP 2006262022 A JP2006262022 A JP 2006262022A JP 2006262022 A JP2006262022 A JP 2006262022A JP 2008083295 A JP2008083295 A JP 2008083295A
Authority
JP
Japan
Prior art keywords
quantization
bits
huffman
subband
bit number
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.)
Granted
Application number
JP2006262022A
Other languages
English (en)
Other versions
JP4823001B2 (ja
Inventor
Osahide Eguchi
修英 江口
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006262022A priority Critical patent/JP4823001B2/ja
Priority to US11/902,770 priority patent/US8019601B2/en
Publication of JP2008083295A publication Critical patent/JP2008083295A/ja
Application granted granted Critical
Publication of JP4823001B2 publication Critical patent/JP4823001B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/035Scalar quantisation

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

【課題】量子化処理の収束速度を高め、音質の向上を図る。
【解決手段】量子化ビット数算出部12は、量子化値をハフマン符号化した際のビット数であるハフマン符号語ビット数と、複数のハフマン符号帳B1の中から選択された最適ハフマン符号帳の番号のビット数である最適ハフマン符号帳番号ビット数と、サブバンド毎のスケールファクタに要するビット数であるスケールファクタ用ビット数とを算出する。1回目の量子化処理時には、量子化ビット数算出部12は、n個置きのサブバンドから算出された量子化値に関するハフマン符号語ビット数を算出し、ビット数予測部13は、(n+1)倍したハフマン符号語ビット数と、最適ハフマン符号帳番号ビット数と、スケールファクタ用ビット数とを合計し、予測ビット数を算出する。パラメータ更新部15は、予測ビット数が許容ビット数を超えた場合には、量子化処理時のパラメータを更新する。
【選択図】図1

Description

本発明はオーディオ符号化装置に関し、特にMP3(MPEG Audio Layer-3)やMPEG(Moving Picture Expert Group)2−AAC(Advanced Audio Codec)等の音声信号の符号化を行うオーディオ符号化装置に関する。
ディジタル音声信号を効率よく圧縮・伝送するためには、高能率符号化が行われており、音声圧縮のアルゴリズムは、MPEGで標準規格化されている。MPEGの音声圧縮アルゴリズムの代表的なものには、AACがある。
AACは、ISO(International Organization for Standardization)の13818−7により勧告されており、高音質・高圧縮率を達成した圧縮規格として、携帯電話を使った音楽配信や、ディジタル(衛星・地上波)放送などに広く採用されている。
AACの符号化アルゴリズムの量子化処理においては、与えられたビットレートを満足するための処理として、インナーループとアウターループと呼ばれる反復ループ処理が行われる。インナーループでは、設定されたビットレートの条件を満足するように量子化処理を行うものである。
また、アウターループでは、量子化値を逆量子化した際に発生する量子化ノイズが、マスキング特性以下となる条件を満足するように、コモンスケールファクタ(CSF:common scale factor)及びサブバンド毎のスケールファクタ(SF:scale factor)を調整するものである。
従来のオーディオ符号化技術としては、複数のスケールファクタバンドとしきい値情報を初期設定し、そのスケールファクタバンドのうち符号化する周波数帯域を特定する最大スケールファクタバンドを、入力信号の周波数分布を分析した結果と聴覚心理モデルとにもとづいて算出して、符号化する周波数帯域を適応的に求める技術が提案されている(例えば、特許文献1)。
特開2002−196792号公報(段落番号〔0022〕〜〔0048〕,第1図)
ISOの勧告では、上記のインナーループとアウターループの両方の条件が満足するまで処理を行うことが規定されており、この場合、両者の条件が合わない限り、延々とインナーループの量子化処理とアウターループの量子化処理とを続けることになる。
このように従来では、量子化処理に必要なパラメータ(CSF、SF)が最適値になるまで量子化処理を繰り返すので、量子化処理の収束速度が遅く、また符号化処理における周波数の処理帯域のふらつきが生じて音質が劣化してしまうといった問題があった。
本発明はこのような点に鑑みてなされたものであり、量子化処理に必要なパラメータの最適値を早期に生成して、量子化処理の収束速度を高め、音質の向上を図ったオーディオ符号化装置を提供することを目的とする。
本発明では上記課題を解決するために、図1に示すような、音声信号の符号化を行うオーディオ符号化装置10において、サブバンド内のスペクトル信号の量子化を行って、量子化値を算出する量子化部11と、量子化処理に要する量子化ビット数として少なくとも、量子化値をハフマン符号化した際のビット数であるハフマン符号語ビット数を算出する量子化ビット数算出部12と、ハフマン符号語ビット数と、ハフマン符号語ビット数以外の量子化ビット数とを合計して、量子化処理で発生する予測ビット数を算出するビット数予測部13と、予測ビット数が許容ビット数の範囲内にあるか否かを判定する判定部14と、予測ビット数が許容ビット数を超えた場合には、量子化処理時のパラメータである、コモンスケールファクタ及びスケールファクタを更新するパラメータ更新部15と、を有し、1回目の量子化処理時には、量子化部11は、サブバンドをn個置きに量子化し、量子化ビット数算出部12は、n個置きのサブバンドから算出された量子化値に関するハフマン符号語ビット数を算出し、ビット数予測部13は、(n+1)倍したハフマン符号語ビット数と、ハフマン符号語ビット数以外の量子化ビット数とを合計して、予測ビット数を算出する、ことを特徴とするオーディオ符号化装置10が提供される。
ここで、量子化部11は、サブバンド内のスペクトル信号の量子化を行って、量子化値を算出する。量子化ビット数算出部12は、量子化処理に要する量子化ビット数として少なくとも、量子化値をハフマン符号化した際のビット数であるハフマン符号語ビット数を算出する。ビット数予測部13は、ハフマン符号語ビット数と、ハフマン符号語ビット数以外の量子化ビット数とを合計して、量子化処理で発生する予測ビット数を算出する。判定部14は、予測ビット数が許容ビット数の範囲内にあるか否かを判定する。パラメータ更新部15は、予測ビット数が許容ビット数を超えた場合には、量子化処理時のパラメータである、コモンスケールファクタ及びスケールファクタを更新する。1回目の量子化処理時には、量子化部11は、サブバンドをn個置きに量子化し、量子化ビット数算出部12は、n個置きのサブバンドから算出された量子化値に関するハフマン符号語ビット数を算出し、ビット数予測部13は、(n+1)倍したハフマン符号語ビット数と、ハフマン符号語ビット数以外の量子化ビット数とを合計して、予測ビット数を算出する。
本発明のオーディオ符号化装置は、1回目の量子化処理時に、サブバンドをn個置きに量子化し、n個置きのサブバンドから算出された量子化値に関するハフマン符号語ビット数を算出し、(n+1)倍したハフマン符号語ビット数と、ハフマン符号語ビット数以外の量子化ビット数とを合計して、予測ビット数を算出する構成とした。これにより、量子化処理に必要なパラメータの最適値を早期に生成することができ、量子化処理の収束速度を高め、音質の向上を図ることが可能になる。
以下、本発明の実施の形態を図面を参照して説明する。図1はオーディオ符号化装置の原理図である。オーディオ符号化装置10は、量子化部11、量子化ビット数算出部12、ビット数予測部13、判定部14、パラメータ更新部15、ハフマン符号帳B1から構成され、音声信号の符号化処理を行う装置である。
また、適用される装置としては、例えば、DVDレコーダやディジタルムービー等のAV機器、またはシリコンオーディオプレーヤ用の音楽データを生成する装置などがある。
量子化部11は、サブバンド内のスペクトル信号の量子化を行って、量子化値を算出する。量子化ビット数算出部12は、量子化処理に要する量子化ビット数として少なくとも、量子化値をハフマン符号化した際のビット数であるハフマン符号語ビット数を算出する。
なお、ハフマン符号語ビット数以外の量子化ビット数として、ハフマン符号化を行う際に、複数のハフマン符号帳B1(ISO13818−7では、11種類のハフマン符号帳が規定されている)の中から、サブバンド毎に選択された最適ハフマン符号帳の番号のビット数である最適ハフマン符号帳番号ビット数と、サブバンド毎のスケールファクタに要するビット数であるスケールファクタ用ビット数とを算出する。
ビット数予測部13は、ハフマン符号語ビット数と、最適ハフマン符号帳番号ビット数と、スケールファクタ用ビット数とを合計して、量子化処理で発生する予測ビット数を算出する。
判定部14は、予測ビット数が許容ビット数の範囲内にあるか否かを判定する。パラメータ更新部15は、予測ビット数が許容ビット数を超えた場合には、量子化処理時のパラメータである、コモンスケールファクタ及びスケールファクタを更新する。
また、1回目の量子化処理時には、量子化部11は、サブバンドをn個置きに量子化し、量子化ビット数算出部12は、n個置きのサブバンドから算出された量子化値に関するハフマン符号語ビット数を算出する。そして、ビット数予測部13は、(n+1)倍したハフマン符号語ビット数と、最適ハフマン符号帳番号ビット数と、スケールファクタ用ビット数とを合計して、予測ビット数を算出する。オーディオ符号化装置10の詳細な構成及び動作については後述する。
次にオーディオ符号化装置10の構成及び動作を説明する前に、本発明に関係する音声情報圧縮の基本的な概念と、従来の量子化手順を示しながら、本発明が解決すべき問題点について詳しく説明する。
従来のAACエンコーダでは、まずPCM(Pulse Code Modulation)信号をフレーム単位で切り出して、PCM信号に空間変換としてMDCT(Modified Discrete Cosine Transform)を施し、PCMの時間軸上における電力を、空間(周波数)軸上における電力の表現に変換する。
そして、量子化処理として、MDCTの演算結果であるMDCT変換係数(以下、単に変換係数)に、人間の聴覚特性に合わせた量子化を施し、その後に、ハフマン符号化を行って、ビットストリームを生成して伝送路上から出力する。
ここで、フレームとは符号化処理の単位であり、AACでは、2048個のPCMのサンプル値にMDCTを施して得られる1024個のスペクトル信号(変換係数)を1フレームとする。
図2はフレームの概念を示す図である。アナログ音声をディジタル化して、2048個のPCMサンプル値を得た後に、これらサンプル値にMDCTを施して、1024個の変換係数を1フレームとする。
図3は変換係数とサブバンドのイメージを示す図である。縦軸は変換係数のレベル、横軸は周波数である。1024個の変換係数は、周波数軸上、サブバンド#0〜#48の49個の各帯域にグループ分けされる(以下、サブバンド番号が#sbのサブバンドをサブバンド#sbと表記する)。
なお、サブバンドとは、1024個の変換係数を、49個にグループ分けした帯域のことであり(1つのサブバンド内に含まれる変換係数の個数は、ISO13818−7の勧告により4の倍数となることが定義されている)、聴覚特性にもとづき、高帯域になるにしたがって、括る変換係数の数を増やしている。また、図では、変換係数の絶対値をとって、すべて正領域で示しているが、変換係数の値そのものは、正、負のいずれかの符号を持つものである。
図からわかるように、帯域の低い側では、1つのサブバンド内の変換係数の個数は少なく(サブバンドの帯域幅が狭く)、帯域の高い側では、1つのサブバンド内の変換係数の個数は多く(サブバンドの帯域幅が広く)なっている。
これは、人間の聴覚特性として、低帯域(低音)側は、周波数の差を敏感に感じることができるが(例えば、図の場合、変換係数x1、x2に対応する音の違いは感知できるということ)、高帯域(高音)側は、周波数の差を敏感に感じることができずに、同じ音のように感じてしまうという理由からである。
このため、周波数の違いを敏感に感じることができる低い帯域側の信号に対しては、細かいサブバンドで分けるようにし、周波数の違いを感じることが鈍感な高い帯域側の信号に対しては、サブバンドを広くとるようにすることで、人間の聴覚特性に合わせたサブバンドのグループ分けを行っている。
図4はフレームに対するコモンスケールファクタ/スケールファクタの対応関係を示す図である。コモンスケールファクタCSF及びスケールファクタSF0〜SF48を、図3に対応させた様子を示しており、1フレームのサブバンド#0〜#48全体で1つのコモンスケールファクタCSFが存在する。また、サブバンド#0〜#48のそれぞれに対応したスケールファクタSF0〜SF48(全部で49個のスケールファクタ)が存在することになる。
ここで、量子化ステップサイズqと、コモンスケールファクタと、スケールファクタとには以下の関係がある。
q=scalefactor−common scalefactor …(1)
ただし、scalefactor(スケールファクタ)は、サブバンド毎のスケールファクタ値であり、common scalefactor(コモンスケールファクタ)は、1つのフレーム全体の量子化ステップサイズのオフセット値である(スケールファクタ及びコモンスケールファクタは共に整数値である)。
したがって、サブバンド#sb(sb=0、1、・・・、48)の量子化ステップサイズq[sb]は、q[sb]=(スケールファクタSF[sb])−(コモンスケールファクタCSF)で求まる。
図5は量子化の概念を示す図である。ある変換係数Xのレベル(大きさ)をYとする。変換係数Xに量子化を施すということは、単純化すれば、Yを量子化ステップサイズqで割って余りを捨てている割り算を行うことを意味している。
図はこの量子化の様子を示すものであり、大きさYの変換係数Xを、量子化ステップサイズとして2q/4で割って、余りを捨てた結果が2*2q/4となっている。したがって、この割り算の商(2*2q/4)が変換係数Xの量子化値となる。
簡単な例でいえば、量子化ステップサイズが10として、Yを10で割ったときの商が9.6だったとすると、Yを量子化ステップサイズ10で量子化した際の量子化値は9となる。
図5で示した内容からわかるように、量子化の誤差を小さくして、音声品質の向上を図るためには、量子化ステップサイズ(図で示すステップ幅)が、量子化対象の信号に対して、適切な値であることが重要である。また、この量子化ステップサイズは、上述のようにスケールファクタとコモンスケールファクタから算出されるものである。
すなわち、量子化及び符号化の処理として、最も音質に影響を与える重要な箇所は、各サブバンドのスケールファクタと、フレームのコモンスケールファクタとの最適値を決定することであるといえる。この2つのパラメータの最適値が決定してしまえば、その後は式(1)からサブバンド毎の量子化ステップサイズがわかり、サブバンドsb内の各変換係数の値を、サブバンドsb対応の量子化ステップサイズで割り算することで、変換係数を量子化した値が求まる。そして、ハフマン符号帳にもとづき、ハフマン符号語に符号化して伝送路上へ送信することになる。
ところが、ここで問題となるのが、ISOで規定されている方法では、スケールファクタ(以下、SFとも表記)とコモンスケールファクタ(以下、CSFとも表記)の最適値を決定するためには、多大な演算量を必要としているということである。
以降、演算量が多大となる従来の処理について説明する。SFとCSFを決定する際には、人間の聴覚特性の1つであるマスキングパワーしきい値にもとづいて決定される。マスキングパワーしきい値とは、人間が聞こえる最小の音圧値のことである。
図6は可聴限界グラフを示す図である。可聴限界グラフGの縦軸は音圧(dB)、横軸は周波数(Hz)である。人間の可聴範囲(20〜20,000Hz)における聴覚の感度は、均一ではなく周波数によって違っており、3〜4kHzをピークに低域と高域の感度が急激に落ち込む。このことは、低い周波数及び高い周波数側の音は、音量を大きくしないとよく聞こえないということである。
図のグラフGは、斜線部分が可聴範囲である。低域側または高域側では、音圧(音量)が高くないと聞こえにくく、3〜4kHzでは、音圧が小さくてもよく聞こえることがわかる。マスキングパワーしきい値は、この可聴限界グラフGにもとづいて、ある周波数fではレベルL以下は聞こえないといったしきい値を、フーリエ変換(FFT:Fast Fourier Transform)の演算によって求めたものである。
図7はマスキングパワーしきい値を示す図である。縦軸はしきい値のパワーであり、横軸は周波数である。1フレームの周波数帯域は、サブバンド#0〜#48でグループ分けされており、サブバンド毎に求められたマスキングパワーしきい値が示されている。
ここで、サブバンド#0のマスキングパワーしきい値はM0となっている。これは、サブバンド#0の帯域においては、パワーM0以下の信号(音)は、聞こえづらいということである。このため、信号処理を行う上では、しきい値M0以下の信号はノイズとみなしてよい。
したがって、量子化処理を行う場合では、すべてのサブバンドに対し、サブバンド毎の量子化誤差(量子化誤差のパワー)が、それぞれのサブバンドに対応するマスキングパワーしきい値以下になるような量子化を施せばよいことがわかる。
このことは、サブバンド#0についていえば、マスキングパワーしきい値M0よりも量子化誤差パワーが小さくなるような、SF及びCSFを決定すればよいということである。
一方、サブバンド#0のマスキングパワーしきい値M0とサブバンド#1のマスキングパワーしきい値M1とを比較すると、M0>M1である。このように、許容できるノイズの大きさはサブバンド毎に異なっている。
したがって、サブバンド#0では、サブバンド#1よりも許容できるノイズレベルが大きいので、サブバンド#1よりも量子化誤差は大きくてよい(サブバンド#0は、サブバンド#1よりも粗く量子化してよい)。
また、サブバンド#1は、サブバンド#0よりも許容できるノイズレベルが小さいので、サブバンド#0よりも量子化誤差は小さくする必要がある(サブバンド#1は、サブバンド#0よりも細かく量子化する)。
なお、図に示す1フレーム中、サブバンド#4のマスキングパワーしきい値が一番小さく、サブバンド#48のマスキングパワーしきい値が一番高い値だとすると、サブバンド#4は、許容できるノイズレベルが小さく、聴覚に最も敏感な箇所ということになるため、1フレーム中の量子化誤差が最も小さくなるように量子化しないと、音質劣化が感知されてしまう。また、サブバンド#48は、許容できるノイズレベルが大きく、1フレーム中、最も粗く量子化してよい。
このように、各サブバンドに対するSF及びフレームのCSFを決める際には、上記のようなマスキングパワーしきい値との兼ね合いを見ていくことになるが、この他にも、符号化に必要なビットレートは決められているので、使用可能な全体のビット数も満たすようにしなければならない(例えば、128kbpsの符号化レートというように、符号化のビットレートはあらかじめ決められているので、そのビットレートから設定される情報量(ビット量)を守る必要がある)。
なお、AACでは、フレーム間のビット数を適応的に可変できるように、ビットリザーバという一時的なビット貯蔵庫をもっている。符号化に使用可能なビット数は、設定されたビットレートと、聴覚モデルの聴覚エントロピーと、ビットリザーバにあるビット量とから算出される(聴覚エントロピーとは、フレームの入力音声信号をFFTした周波数スペクトルから求められるもので、リスナーが雑音を知覚することがないように、そのフレームを量子化するのに必要な総ビット数とみなしてよい。例えば、広い帯域に渡ってスペクトルが延びるインパルス音やホワイトノイズなどでは大きな値を示し、このような場合には、符号化ビットが多く必要であると判断される)。
このように、CSF、SFを求めるには、マスキングパワーしきい値及び符号化使用可能ビット数の両方を満たすように決定することになるが、ISOによる従来の技術では、CSF、SFを1つずつ更新しながら量子化と逆量子化を繰り返す反復処理を行って求めている。
従来処理の流れについて概要を記すと、まず最初に、CSF及びSFに初期値を設定する。そして、初期値を設定したCSF及びSFで、変換係数を量子化してみる。そして、量子化値を逆量子化してから、量子化誤差を求める(量子化誤差は、量子化する前の値(変換係数の値)と、逆量子化値の差分値のことである)。
その後、サブバンド内の最大の量子化誤差とマスキングパワーしきい値とを比較して、量子化誤差パワーがマスキングパワーしきい値よりも大きければ、SFをカウントアップして次のSFで再び、量子化→逆量子化→ノイズパワー評価を行う。また、サブバンド内の量子化誤差パワーの最大値がマスキングパワーしきい値よりも小さければ、次のサブバンドへ移る。
このようにして、すべてのサブバンドに対して、量子化誤差がマスキングパワーしきい値よりも小さくなった後に(この時点でSFはすべて算出されている)、ハフマン符号化してビット量を換算し、そのビット量が符号化レートで設定される所定のビット量以下であるか否かを判断する。
このとき、換算ビット量が所定ビット量よりも小さければ終了できるが、所定ビット量を超えてしまう場合には、CSFを1つカウントアップして、最初に戻り、1つカウントアップしたCSFとSFの初期値とから、あらためて量子化、逆量子化を行って、再び量子化誤差とマスキングパワーしきい値との評価演算を行っていく。
以上説明したように、従来技術では、処理を完了させるために、1つの変換係数に関して、最適な量子化ステップサイズ値(CSF、SF)を探すために、総当りで何度も量子化と逆量子化処理及び符号化処理を行う必要があった。このため、演算処理量が非常に大きくなり、また処理が収束せずに無限ループに入ってしまう場合もあり、演算効率が非常に悪いものであった。
本発明ではこのような問題点を解決し、量子化処理に必要なパラメータ(CSF、SF)を最適値に早期に補正して、量子化処理の収束速度を高めて、音質の向上を図ったオーディオ符号化装置を提供するものである。
次に最適ハフマン符号帳の選択処理について詳しく説明する。量子化処理によって得られた量子化値は、符号化され、ビットストリームとなって伝送路上から出力されるが、このときの符号化には、一般的にハフマン符号化が行われる。ハフマン符号化は、出現率の高いものには短い符号を、出現率の低いものには長い符号を割り当てる符号化方式であり、AACでは、1番から11番までの番号が付された11種類のハフマン符号帳(以下、ハフマンコードブック)が規定され、サブバンド毎に11種類のハフマンコードブックの中から1つの最適ハフマンコードブックが選択される。
なお、量子化処理が行われなかったサブバンドは、ハフマンコードブック番号は0番となり、デコーダ側ではハフマンコードブック番号が0番のサブバンドについては復号化処理を行わない。
ここで、サブバンド#sbに存在するスペクトル信号である変換係数Xに対し、以下の式(2)で非線形量子化処理が行われ、量子化値Qを得る。
Figure 2008083295
ここで、SF[sb]は、サブバンド#sbにおけるスケールファクタであり、CSFはコモンスケールファクタを表す。sign(X)は、サインビットである(Xが正の値ならsign(X)=+1、負の値ならsign(X)=−1)。また、MAGIC NUMBERは、ISO13818−7の勧告により0.4054が設定される。
式(2)は、サブバンド内に存在するすべての変換係数それぞれについて計算される。そして、サブバンド#sb内に存在する変換係数の個々の量子化値Qが求まると、量子化値Qにもとづき、サブバンド#sbに対して、最適なハフマンコードブックを選択し、その選択したハフマンコードブックを用いて、サブバンド#sbの量子化値のハフマン符号化を行うことになる。
サブバンド#sbにおける最適なハフマンコードブックの選択は以下の(A)〜(E)の手順で決定される。
(A)サブバンド#sb内にm個存在する変換係数から、式(2)を用いてそれぞれの量子化値を算出し、求めた複数の量子化値Q[m]の中から,絶対値が最大のMAX_Qを算出する。
(B)MAX_Qの値に応じたハフマンコードブックを選択する。このとき、ハフマンコードブックは複数選択される。ハフマンコードブックの番号を#1〜#11とすると、具体的な選択条件は以下となる。
・ハフマンコードブック#1,2:MAX_Q<2の時
・ハフマンコードブック#3,4:MAX_Q<3の時
・ハフマンコードブック#5,6:MAX_Q<5の時
・ハフマンコードブック#7,8:MAX_Q<8の時
・ハフマンコードブック#9,10:MAX_Q<13の時
・ハフマンコードブック#11:MAX_Q>=13の時
例えば、MAX_Q=2ならば、上記の条件によって、選択されるハフマンコードブックは、#3〜#10までの8つのハフマンコードブックが選択され、MAX_Q=6ならば、選択されるハフマンコードブックは、#7〜#10までの4つのハフマンコードブックが選択されることになる。つまり、MAX_Qが小さいほど選択される(候補となる)ハフマンコードブックの数が増え、符号長がより短いハフマン符号語が生成する可能性が高くなる。
(C)量子化値Q[m]を多重化し、選択した各ハフマンコードブックのインデックス値を得る。インデックス値の多重化方法はハフマンコードブック毎に異なる。以下の式(3)〜(7)にインデックス値(index)の多重化算出式を示す。
ハフマンコードブック#1、#2を選択した際のindexの計算式は、
index=33×Q[i]+32×Q[i+1]+31×Q[i+2]+30×Q[i+3]+40 …(3)
ハフマンコードブック#3、#4を選択した際のindexの計算式は、
index=33×|Q[i]|+32×|Q[i+1]|+31×|Q[i+2]|+30×|Q[i+3]| …(4)
ハフマンコードブック#5、#6を選択した際のindexの計算式は、
index=9×Q[i]+Q[i+1]+40 …(5)
ハフマンコードブック#7、#8を選択した際のindexの計算式は、
index=8×|Q[i]|+|Q[i+1]| …(6)
ハフマンコードブック#9、#10を選択した際のindexの計算式は、
index=13×|Q[i]|+|Q[i+1]| …(7)
(D)ハフマンコードブック毎のインデックス値からビット数を求める。
(E)ハフマン符号語のビット数が最少となるハフマンコードブック(=最適ハフマンコードブック)の番号を決定する。
次に上記の流れに沿ったハフマンコードブックの選択処理について、具体的な例を用いて説明する。今、サブバンド#sb内に8個の変換係数が存在し、式(2)から算出された量子化値が、Q[0]=−1、Q[1]=0、Q[2]=−2、Q[3]=1、Q[4]=+2、Q[5]=−1、Q[6]=1、Q[7]=0であった場合を考える。
この場合、MAX_Q=2となる。したがって、(B)で示した選択条件から、量子化処理にて参照されるハフマンコードブックの番号は#3〜#10までとなる。
図8は量子化値Q[0]〜Q[7]におけるインデックス値とハフマン符号ビット数を示すテーブルである。図9〜図12はハフマンコードブックのテーブル値を示す図であり、ISO13818−7に規定されるハフマンコードブックの中から、図8のテーブルに関連する箇所のみ抜粋して示している。
図8において、テーブル欄T1について説明する。ハフマンコードブック#3、#4を選択した際のindexの計算式は、式(4)であるから、Q[0]〜Q[3]と、Q[4]〜Q[7]の2つに分けて式(4)が適用される。
Q[0]〜Q[3]のときのハフマンコードブック#3、#4のインデックス値は34(=27×|−1|+9×|0|+3×|−2|+|1|)であり、Q[4]〜Q[7]のときのハフマンコードブック#3、#4のインデックス値は66(=27×|2|+9×|−1|+3×|1|+|0|)である。
したがって、Q[0]〜Q[3]に関して、図9に示すハフマンコードブック#3のindex=34の欄からlength(ビット数)を検索すると、ビット数は10ビットとなり、Q[4]〜Q[7]に関して、図9に示すハフマンコードブック#3のindex=66の欄からlengthを検索すると、ビット数は9ビットとなり、合計=19ビットとなる。
同様に、Q[0]〜Q[3]に関して、図9に示すハフマンコードブック#4のindex=34の欄からlengthを検索すると、ビット数は8ビットとなり、Q[4]〜Q[7]に関して、図9に示すハフマンコードブック#4のindex=66の欄からlengthを検索すると、ビット数は7ビットとなり、合計=15ビットとなる。
以降、ハフマンコードブック(#5、#6)、(#7、#8)、(#9、#10)についても同様な処理を行うが、ハフマンコードブック(#5、#6)、(#7、#8)、(#9、#10)を選択した際のindexの計算式は、式(5)〜(7)であるから、(Q[0]、Q[1])、(Q[2]、Q[3])、(Q[4]、Q[5])、(Q[6]、Q[7])と、4つに分けて式(5)〜(7)が適用されることになる(#3、#4と同様の選択操作を行うので説明は省略する)。
上記のような処理を行って得られたすべてのビット数の合計値を見てみると、ハフマンコードブック#4のときの15ビットが最小ビットとなっている。したがって、サブバンド#sbのハフマンコードブックには、ハフマンコードブック#4が選択されることになる(最適ハフマンコードブック=ハフマンコードブック#4)。
また、このとき行われるハフマン符号化は、Q[0]〜Q[3]に関しては、図9に示すハフマンコードブック#4のindex=34の欄を検索すると、codeword(ハフマンコード)はe8となり、Q[4]〜Q[7]に関しては、ハフマンコードブック#4のindex=66の欄を検索すると、codewordは6cとなる。
すなわち、サブバンド#sb内の量子化値Q[0]〜Q[3]は、まとめてe8とハフマン符号化され、サブバンド#sb内の量子化値Q[4]〜Q[7]は、まとめて6cとハフマン符号化されることになる。
このような最適ハフマンコードブック選択処理及びハフマン符号化が、サブバンド毎に行われて、得られたハフマンコードを含むビットストリームが生成され、デコーダ側に送信されることになる。
次にオーディオ符号化装置10のブロック構成及び動作について詳しく説明する。図13はオーディオ符号化装置10のブロック構成を示す図である。オーディオ符号化装置10は、非線形量子化部11、ハフマン符号ビット数累積処理部12a、ハフマンコードブック番号ビット数算出部12b、スケールファクタ用ビット数算出部12c、合計ビット数算出部13、判定部14、CSF/SF補正部15、ハフマンコードブック番号補間部16、ハフマン符号化部17、CSF/SF算出部18、サブバンド番号制御部19、量子化ループ制御部20、ストリーム生成部21、ハフマンコードブックB1、スケールファクタ用ハフマンコードブックB2から構成される。
なお、図1で示した量子化部11は、非線形量子化部11に該当し、量子化ビット数算出部12は、ハフマン符号ビット数累積処理部12a、ハフマンコードブック番号ビット数算出部12b、スケールファクタ用ビット数算出部12cに該当し、ビット数予測部13は、合計ビット数算出部13に該当し、パラメータ更新部15は、CSF/SF補正部15に該当する。以下、各構成要素の動作についてフローチャートを用いて説明する。
図14、図15はオーディオ符号化装置10の動作を示すフローチャートである。
〔S1〕CSF/SF算出部18は、変換係数及びマスキング特性から、量子化値を求める際に必要なパラメータである、CSFと、各サブバンドに対応したスケールファクタSF[sb]とを算出する。なお、SF[sb]は、サブバンド#sbのスケールファクタを意味する。
〔S2〕ハフマン符号化部17は、最適ハフマンコードブック番号の初期化を行う。
〔S3〕量子化ループ制御部20は、量子化のループとして、1回目の量子化処理と、2回目の量子化処理のループ制御を行うが、ステップS3では、1回目の量子化処理を行う。
1回目の量子化処理では、サブバンド番号制御部19により、サブバンド番号#sbは、#0、#2、#4、・・・というように1サブバンド置きに遷移される。すなわち、サブバンド番号制御部19は、#sbの値を0から2、4、6、・・・と2ずつインクリメントさせる。
〔S4〕非線形量子化部11は、サブバンド#sb(#0、#2、#4、・・・)内の変換係数に対する非線形量子化処理を行う。すなわち、ステップS1で算出されたCSF、SF[sb]と、変換係数Xとから、式(2)を用いて、量子化値Q[sb][i]を算出する。なお、Q[sb][i]は、サブバンド#sbに存在するi番目の変換係数の量子化値を意味する。
〔S5〕ハフマン符号化部17は、図8で上述したような、各サブバンドにおける最適ハフマンコードブックの選択処理を行い、量子化値Q[sb][i]に対して、ハフマン符号化を行う。そして、ハフマンコード、ハフマンコードビット数、最適ハフマンコードブック番号を決定して出力する。
〔S6〕ハフマン符号ビット数累積処理部12aは、sb番号=#0から1サブバンド置きに遷移して現sb番号までに算出されたハフマンコードビット数(ハフマンコードブックに示された該当length値)の累積を行ってspec bitsを得る。すなわち、ここではサブバンド番号は#0、#2、#4、・・・と偶数番目に関するハフマンコードのビット数の累積値になる。
〔S7〕ハフマンコードブック番号補間部16は、サブバンド#(sb+1)の最適ハフマンコードブック番号を、サブバンド#sbで選択された最適ハフマンコードブックの番号と同じ番号に設定する。
例えば、サブバンド#0の最適ハフマンコードブック番号が#1であったとすると、サブバンド#1の最適ハフマンコードブック番号は、サブバンド#0と同じ最適ハフマンコードブック番号の#1と設定する。同様に、サブバンド#2の最適ハフマンコードブック番号が#3であったとすると、サブバンド#3の最適ハフマンコードブック番号は、サブバンド#2と同じ最適ハフマンコードブック番号の#3と設定する。
このような補間を行った後に、ハフマンコードブック番号補間部16は、ハフマンコードブック番号情報N[m]を出力する。なお、この補間処理は2回目の量子化ループ処理ではスキップされる。
〔S8〕ハフマンコードブック番号ビット数算出部12bは、ハフマンコードブック番号情報をもとに、各サブバンドで選択されたハフマンコードブック番号において消費されるビット数(ハフマンコードブック番号を表す際に必要なビット数のこと)の合計book bitsを算出し、book bitsとハフマンコードブック番号連続数情報(図20で後述)を出力する。
〔S9〕スケールファクタ用ビット数算出部12cは、CSF、SF[sb]及びスケールファクタ用ハフマンコードブックB2を用いて、サブバンド#0、#1、#2、・・・、#sbまでのスケールファクタのビット数の合計sf bitsを算出し、スケールファクタのハフマン符号語及びsf bitsを出力する。
ここで、図16にスケールファクタ用ビット数算出の概要を示す。サブバンド#0、#1、#2、#3に対して、各スケールファクタの値をSF0〜SF3とし、コモンスケールファクタをCSF0とする。
スケールファクタ用のビット数は、隣り合うサブバンドのスケールファクタの差分をインデックスとし、スケールファクタ用ハフマンコードブックB2からそのインデックスに対応したハフマンコードとビット数を得ることができる。
この例では、サブバンド#0〜#3のインデックスをindex0〜index3とすると、index0=CSF−SF0、index1=|SF0−SF1|、index2=|SF1−SF2|、index3=|SF2−SF3|として算出し、スケールファクタ用ハフマンコードブックB2からindex0〜3に対応したサブバンド#0〜#3それぞれのハフマンコードとビット数を得る。
〔S10〕合計ビット数算出部13は、以下の式(8)により、spec bits(sb番号=#0から1サブバンド置きに遷移して現sb番号までに算出されたハフマンコードビット数)を2倍し、book bits(ハフマンコードブック番号のビット数)と、sf bits(スケールファクタ用のビット数)とを加算して、現サブバンドまでに消費されると予測されるビット数の合計sum bitsを算出する。
sum bits=2×spec bits+book bits+sf bit …(8)
なお、nサブバンド置きに遷移させて量子化処理を行った場合のビット予測値sum bitsを求める式を一般化すれば以下の式(8a)となる。
sum bits=(n+1)×spec bits+book bits+sf bit …(8a)
ここで、nサブバンド置きの量子化処理を行った際の、ビット数予測が行われるサブバンドの範囲について説明する。n=1の場合、すなわち、1サブバンド置きに量子化処理を行った場合に、現在まで処理されているサブバンド番号が#6であったとする。
このとき、サブバンド#0、#2、#4、#6それぞれのハフマンコードビット数を累積した値がspec bitsであり、ビット数予測時には、このハフマンコードビット数spec bitsが2倍される。
すると、現サブバンドは#6までであるが、ハフマンコードの予測ビット数としては、サブバンド#7までも含めているようにみえる。すなわち、2倍されるので、サブバンド#0〜#6までの7サブバンドに要するハフマンコードビット数が算出されるのではなく、実際にはサブバンド#0〜#7までの8サブバンド分のハフマンコードビット数を算出していることになる。
しかし、ここでは量子化処理に要する大まかなビット数予測処理を行っているものであり、元々、1サブバンド置きの量子化処理をしているのだから、1サブバンド分のハフマンコードビット数が余計に含まれたとしても、予測値に大きな影響はないとみなしている。
同様にして、n=2の場合について考えると、2サブバンド置きに量子化処理を行った際に、現サブバンド番号が#9であったとする。このとき、サブバンド#0、#3、#6、#9それぞれのハフマンコードビット長の累積値がspec bitsであり、ビット数予測時には、ハフマンコードビット数に関してはspec bitsは3倍される。
すると、現サブバンドは#9までであるが、ハフマンコードの予測ビット数としては、サブバンド#11までも含めているようにみえる。すなわち、3倍されるので、サブバンド#0〜#9までの10サブバンドに要するハフマンコードビット数が算出されるのではなく、サブバンド#0〜#11までの12サブバンド分のハフマンコードビット数を算出していることになるが、2サブバンド分のハフマンコードビット数が余計に含まれたとしても、予測値に大きな影響はないとみなしている(nを大きくするほど、より概略値の度合いが大きくなるのだから)。
なお、n=1の例の場合のサブバンド#0〜#6までのビット予測値sum bitsは、2×spec bits(サブバンド#0、#2、#4、#6それぞれのハフマンコードビット数を累積したspec bitsを2倍したビット数)に対して、サブバンド#0、#1、#2、#3、#4、#5、#6それぞれのハフマンコードブック番号のビット数を累積したbook bitsと、サブバンド#0、#1、#2、#3、#4、#5、#6それぞれのスケールファクタ用のビット数を累積したsf bitsとを、加算して求めることになる。
〔S11〕判定部14は、sum bitsと、あらかじめ設定された許容ビット数との比較を行う。sum bitsが許容ビット数未満のときはsb番号を更新(ここでは、1つ飛びの更新なので現在のサブバンド番号を+2する)して、次のsbに対しても同様の量子化処理を行い、ビット数の予測処理を継続して行う(ステップS3へ戻る)。また、許容ビット数以上のときは、sb番号の更新を停止して、ステップS12へいく。
〔S12〕CSF/SF補正部15は、ステップS3〜S11による量子化ループ処理の途中でビット数予測値(sum bits)が許容ビット数以上となった場合は、CSF、SFのパラメータの補正の必要ありと判断し、量子化処理のループを中断し、パラメータ補正を行う。
なお、sum bitsが許容ビット数を超えないようにするための補正としては、SFを小さくし、CSFを大きくすればよい。すなわち、量子化値Qの算出式(2)により、SF[sb]の値は小さく、CSFの値を大きくすれば、量子化値Qが小さくなり、量子化値Qが小さくなれば、ハフマン符号化で使用するハフマンコードブックの種類が増えることになるので、ビット数が小さいハフマンコードが選択される可能性が高くなる。ビット数が小さいハフマンコードが選択されると、圧縮効率が高くなるので、結果的に周波数帯域を広げることが可能になる。
また、パラメータ補正を行う場合、ISO勧告が示す従来補正では、全帯域一律にSFを補正しているが、本発明のCSF/SF補正部15では、SFを更新する際、サブバンド毎に更新時の重み付けを行うことにより、低域側でハフマンコードのビット数が小さくなるように調整して、高域側で使用できるビット数を残しておく。
例えば、サブバンド#0〜#48を低域、中域、高域の3つの周波数帯域グループに分けて、それぞれのグループ毎にSFの補正量を変える。具体的な例としては、サブバンド#0〜#9の低域サブバンドに対しては、SFに−2の補正量を加算し、サブバンド#10〜#29の中域サブバンドに対してはSFに−1の補正量を加算し、サブバンド#30〜#48の高域サブバンドに対してはSFに−1の補正量を加算する。
本発明で使用している量子化処理のアルゴリズムでは、サブバンド番号=#0(低域)から量子化処理を行っているので、SF補正の際は低域側での補正量を大きくすることにより、低域側の変換係数の量子化値Qを小さくし、低域側で割り当てられるビット数の消費量を抑えることができる。このことにより高域側の処理で必要なビット数が確保でき、結果的に安定した周波数特性を確保できる。
また、CSFの補正については、SFは該当するサブバンドの量子化値に影響を与えるのに対し、CSFはサブバンドによらず、全帯域に渡って量子化値の大きさを変更するので、CSFを大きく補正すれば、全帯域に渡って量子化値は小さくなる。
次にステップS13以降の動作について説明する。ステップS13以降は、従来のISO勧告にもとづく量子化処理と同様の制御であり、ステップS1〜ステップS12の本発明の処理で決定されたCSF、SFを用いて、低域のサブバンドから1つずつ順番に量子化処理を行い、ビット数の蓄積数が許容範囲内に収まるサブバンドまで量子化を行うものである(2回目の量子化処理に該当)。
〔S13〕ハフマン符号化部17は、最適ハフマンコードブック番号の初期化を行う。
〔S14〕量子化ループ制御部20は、量子化のループ処理として、2回目の量子化処理を行う。ステップS3〜S11の1回目の量子化処理では、サブバンド番号#sbは、#0、#2、#4、・・・というように1サブバンド置きに遷移したが、2回目の量子化処理では、サブバンド番号#sbは、#0、#1、#2、・・・と1つずつ順に遷移する。
〔S15〕非線形量子化部11は、サブバンド#sb(#0、#1、#2、・・・)内の変換係数に対する非線形量子化処理を行う。すなわち、CSF、SF[sb]と、変換係数Xとから、式(2)を用いて、量子化値Q[sb][i]を算出する。
〔S16〕ハフマン符号化部17は、各サブバンドにおける最適ハフマンコードブックを選択し、量子化値Q[sb][i]に対して、ハフマン符号化を行う。そして、ハフマンコード、ハフマンコードビット数、最適ハフマンコードブック番号を決定して出力する。
〔S17〕ハフマン符号ビット数累積処理部12aは、sb番号=#0から1つずつ順に遷移して現sb番号までに算出されたハフマン符号ビット長(ハフマンコードブックに示された該当length値)の累積を行ってspec bitsを得る。
〔S18〕ハフマンコードブック番号ビット数算出部12bは、ハフマンコードブック番号情報をもとに、サブバンド#0〜#sbまでの各サブバンドで選択されたハフマンコードブック番号において消費されるビット数の合計book bitsを算出し、book bitsとハフマンコードブック番号連続数情報を出力する。
〔S19〕スケールファクタ用ビット数算出部12cは、CSF、SF[sb]及びスケールファクタ用ハフマンコードブックB2を用いて、サブバンド#0〜#sbまでのスケールファクタのビット数の合計sf bitsを算出し、スケールファクタのハフマンコード及びsf bitsを出力する。
〔S20〕合計ビット数算出部13は、式(8)を用いてsum bitsを算出する。
〔S21〕判定部14は、sum bitsと、あらかじめ設定された許容ビット数との比較を行う。sum bitsが許容ビット数を超える場合は、ステップS22へいき、sum bitsが許容ビット数を超えない場合は、ステップS23へいく。
〔S22〕ハフマン符号化部17は、サブバンド#sbの最適ハフマンコードブック番号をクリアし、ステップS24へいく。
〔S23〕判定部14は、sum bitsと、許容ビット数とが等しいか否かを判断する。等しくなければ(sum bitsが許容ビット数を超えない場合)ステップS14へ戻り、等しければステップS24へいく。
〔S24〕CSF、SFを変換する。すなわち、SF[i]=CSF−SF[i]+OFFSET、CSF=SF[0]とする。そして、ここまでの量子化処理で求めたハフマンコード、ビット数等の量子化処理結果を格納する。
次にISO勧告による従来の量子化処理と、オーディオ符号化装置10による量子化処理の違いについて図17、図18を用いて説明する。図17はISO勧告による量子化処理の概要を示す図である。ISO勧告による量子化処理では、サブバンド#0、#1、#2、・・・というように、1サブバンド毎に量子化処理に要するビット数を累積算出する(ステップS31)。そして、累積ビット数と、許容ビット数とを比較し(ステップS32)、累積ビット数が許容ビット数未満であれば、ビット数の累積算出を続け(ステップS33)、累積ビット数が許容ビット数を超えると量子化処理を終了する(ステップS34)。
図18はオーディオ符号化装置10の量子化処理の特徴を示す図である。オーディオ符号化装置10では、1回目の量子化処理として、サブバンド#0、#2、#4、・・・というように、1サブバンド置きに量子化処理に要するビット数を累積算出する(ステップS41)。そして、累積ビット数と、許容ビット数とを比較し(ステップS42)、累積ビット数が許容ビット数未満であれば、ビット数の累積算出を続け(ステップS43)、累積ビット数が許容ビット数を超えると、CSF、SFの補正を行って(ステップS44)、1回目の量子化処理を終了する。そして、補正後のCSF、SFを用いて、通常のISO勧告による量子化処理を行う(ステップS45)。
以上説明したように、オーディオ符号化装置10では、隣り合うサブバンドでは周波数成分の大きさにさほど差が無いと仮定し、量子化処理ループを2段構成とする。
1段目処理では、サブバンドを1つ置きに量子化処理を行い、ビット数を算出し、算出したビット数を2倍して、そのサブバンドまでにおけるビット数の予測を行う。そして、その予測値が許容範囲内の値か否かを評価し、予測されたビット数が許容範囲内を超えた場合はCSF及びSFを更新し、許容範囲内に収まる場合はCSF、SFは更新しない。
2段目処理では、1段目処理で決定されたCSF、SFを用いて、低域のサブバンドから1つずつ順番に量子化処理を行い、ビット数の蓄積数が許容範囲内に収まるサブバンドまで量子化処理を行う。
このような制御を行うことにより、量子化処理に必要なCSF、SFのパラメータの最適値を早期に生成することができ、量子化処理の収束速度を高めて、音質の向上を図ることが可能になる。
次に図15のステップS7で上述したハフマンコードブック番号補間処理について説明する。サブバンド#sbの最適ハフマンコードブック番号を#aとすると、ハフマンコードブック番号補間部16は、サブバンドをn個置きに量子化した際に、飛ばされたサブバンド#(sb+1)、#(sb+2)、・・・、#(sb+n)の最適ハフマン符号帳番号は、サブバンド#sbの最適ハフマン符号帳番号と同じ#aに設定して、飛ばされたサブバンド#(sb+1)、#(sb+2)、・・・、#(sb+n)の最適ハフマンコードブック番号の補間処理を行う。
図19はハフマンコードブック番号補間処理の概要を示す図である。サブバンドをn個置きに量子化した際のnを、n=1、2、3の3つの場合の例を示している。
n=1の場合、すなわち、サブバンド#0、#2、#4、・・・の1サブバンド置きの量子化を行う場合、サブバンド#0のハフマンコードブック番号(最適ハフマンコードブック番号)は#1、サブバンド#2のハフマンコードブック番号は#2、サブバンド#4のハフマンコードブック番号は#3、サブバンド#6のハフマンコードブック番号は#4であったとする。
このとき、サブバンド#1のハフマンコードブック番号は、直前のサブバンド#0のハフマンコードブック番号と同じ#1と設定する。サブバンド#3のハフマンコードブック番号は、直前のサブバンド#2のハフマンコードブック番号と同じ#2と設定する。サブバンド#5のハフマンコードブック番号は、直前のサブバンド#4のハフマンコードブック番号と同じ#3と設定する。サブバンド#7のハフマンコードブック番号は、直前のサブバンド#6のハフマンコードブック番号と同じ#4と設定する。
n=2の場合、すなわち、サブバンド#0、#3、#6、#9・・・の2サブバンド置きの量子化を行う場合、サブバンド#0のハフマンコードブック番号(最適ハフマンコードブック番号)は#1、サブバンド#3のハフマンコードブック番号は#2、サブバンド#6のハフマンコードブック番号は#3、サブバンド#9のハフマンコードブック番号は#4であったとする。
このとき、サブバンド#1、#2のハフマンコードブック番号は、サブバンド#0のハフマンコードブック番号と同じ#1と設定する。サブバンド#4、#5のハフマンコードブック番号は、サブバンド#3のハフマンコードブック番号と同じ#2と設定する。サブバンド#7、#8のハフマンコードブック番号は、サブバンド#6のハフマンコードブック番号と同じ#3と設定する。サブバンド#10、#11のハフマンコードブック番号は、直前のサブバンド#9のハフマンコードブック番号と同じ#4と設定する。
n=3も同様の考え方なので説明は省略する。また、ハフマンコードブック番号補間部16では、ハフマンコードブック番号連続数情報を生成して、各サブバンドの最適ハフマンコードブック番号を表す。
図20はハフマンコードブック番号連続数情報のフォーマットを示す図である。ハフマンコードブック番号連続数情報は、4ビットのハフマンコードブック番号領域と、5ビットのハフマンコードブック番号連続数領域を1組みとして計9ビットとし、この組が連続して構成される。
図21はハフマンコードブック番号連続数情報の一例を示す図である。例えば、#sb=#0〜#3までのハフマンコードブック番号が#1であり、#1が4回連続しており、#sb=#4、#5のハフマンコードブック番号が#3であり、#3が2回連続しているとすると、ハフマンコードブック番号領域には#1を示す値と、ハフマンコードブック番号連続数領域には4連続を示す値が記され、またハフマンコードブック番号領域には#3を示す値と、ハフマンコードブック番号連続数領域には2連続を示す値が記される。
このように、連続する2つのサブバンドのコードブック番号が同じであった場合、この2つのサブバンドのために要するビット消費量は9ビットとなり、連続する2つのサブバンドのコードブック番号が異なる場合は18ビットとなる。
次に補間処理を行わなかった場合と行った場合とのハフマンコードブック番号連続数情報のビット数の違いについて説明する。図22はハフマンコードブック番号補間処理を行わなかった場合のハフマンコードブック番号連続数情報を示す図であり、図23はハフマンコードブック番号補間処理を行った場合のハフマンコードブック番号連続数情報を示す図である。
サブバンド#0〜#4に対して、各サブバンドで選択された最適ハフマンコードブック番号として、サブバンド#0のハフマンコードブック番号が#A、サブバンド#2のハフマンコードブック番号が#B、サブバンド#4のハフマンコードブック番号が#Cであるとする。
図22の例では、全サブバンドのハフマンコードブック番号を0に初期化した後、サブバンド番号が+2ずつ遷移して、偶数番号のサブバンドのハフマンコード番号を決定し、奇数番号のサブバンドのハフマンコードブック番号は0のままとする。
このとき、もし、奇数番号のサブバンドのハフマンコードブック番号が0であることも含めてハフマンコードブック番号連続数情報を生成すると、図22のハフマンコードブック番号連続数情報D1となる。
一方、図23のように、ハフマンコードブック番号補間を行った場合では、サブバンド#1のハフマンコードブック番号を#A、サブバンド#3のハフマンコードブック番号を#B、サブバンド#5のハフマンコードブック番号を#Cと設定するので、これをハフマンコードブック番号連続数情報で表記すれば、図23のハフマンコードブック番号連続数情報D2となる。
両者を比較するとハフマンコードブック番号連続数情報D2の方がビット数がはるかに削減していることがわかる。すなわち、補間処理を行わないと、飛ばされたサブバンド毎のハフマンコードブック番号の情報に9ビットが消費されてしまうためビット数の無駄が生じるが、補間処理を行って、連続する2サブバンドについて同じハフマンコードブック番号とすることにより、無駄なビット消費が抑えられる。このようなハフマンコードブック番号補間処理によって、ハフマンコードブック番号に消費されるビット数(book bits)全体の発生を抑えることができる。
次にパラメータの動的補正について説明する。CSF/SF補正部15は、予測ビット数が許容ビット数を越えた時のサブバンド位置により、SF、CSFのパラメータを動的に変更する。
図24はパラメータの動的補正を示す図である。サブバンド番号が大きい値の時に予測ビット数が許容ビット数を越えた場合は、SF、CSFの補正量は現状値に対して、補正量は小さくする。
例えば、サブバンド#40のときに予測ビット数が許容ビット数を越えた場合には、低域サブバンドのSFの補正量を−2、中域サブバンドのSFの補正量を−1、高域サブバンドのSFの補正量を−1、CSFの補正量を+5として、補正量は小さくする。
逆に、サブバンド番号が小さい値の時に予測ビット数が許容ビット数を越えた場合は、SF、CSFの補正量は現状値に対して、補正量は大きくする。例えば、サブバンド#20のときに予測ビット数が許容ビット数を越えた場合には、低域サブバンドのSFの補正量を−3、中域サブバンドのSFの補正量を−2、高域サブバンドのSFの補正量を−1、CSFの補正量を+7として、補正量は大きくする。
このように予測ビット数が許容ビット数を超えた時のタイミングによって、SF、CSFの補正値の値を動的に変更する。これにより、量子化ノイズの過度な増加を防ぎ、音質の劣化を防止することが可能になる。
次に従来の量子化処理量と、オーディオ符号化装置10の量子化処理量との差について説明する。従来のパラメータ補正方法では、量子化処理におけるサブバンド番号の増加分は+1であった。このため、最終のサブバンド番号でビット数の不足が発覚した場合、SF、CSFを補正して再度量子化処理を行うと、実質サブバンド数の2倍の量子化処理のループが発生していた。一方、オーディオ符号化装置10によれば、1サブバンド置きの量子化処理とした場合、ビット数予測を行う処理ではサブバンド数の半分の回数の量子化処理が行われるため、量子化処理全体の処理量の最大値は、従来と比べて25%程度の削減が実現できる。
図25はISO勧告の量子化処理とオーディオ符号化装置10の量子化処理との処理量を比較した図である。ISO勧告の従来の量子化処理において、サブバンド#0〜#48まで、1サブバンド毎に49回の処理を行い、サブバンド#48の処理のときに、合計ビット数が許容ビット数を超えたとする。すると、パラメータを補正した後、再び、サブバンド#0〜#48まで49回の処理を行う。したがって、全体で98(=49×2)回の処理を行うことになる。
一方、オーディオ符号化装置10の量子化処理においては、1回目の量子化処理では偶数番号のサブバンド#0、#2、・・・、#48の25回の処理を行い、サブバンド#48の処理のときに、合計ビット数が許容ビット数を超えたとする。その後、パラメータを補正した後、サブバンド#0〜#48まで49回の処理を行う。したがって、全体で74(=25+49)回の処理を行うことになる。これにより、従来の98回の処理に対して、オーディオ符号化装置10では74回に処理が減っており、およそ25%削減できていることがわかる。
以上説明したように、本発明によれば、蓄積されたビット数が許容範囲内に収まるか否かを、通常の半分のサブバンド数で判断可能とし、コモンスケールファクタやスケールファクタの更新の処理を比較的早い時期に行うので、量子化処理の収束速度を速めると共に、量子化処理における周波数帯域の安定性が向上し、音質向上に寄与することが可能になる。
また、本発明により処理量のピークを抑える効果があり、全体の処理量が平均化されることになる。これにより、組み込み機器向けシステムで使用されるような、処理速度の小さなプロセッサでもリアルタイム処理の実現が可能となり、装置のコストダウンに寄与できる。
なお、上記では、量子化ループ制御において、サブバンド番号の増分を+2としているが、+2に限定するものではなく、増分を+3または+4等、スキップ数を任意に変えることができ、これにより使用ビット数の予測処理の処理時間をより短縮することが可能になる。ただし、この場合、ハフマンコードブック番号補間処理もスキップ数に合わせた変更が必要となる。
(付記1) 音声信号の符号化を行うオーディオ符号化装置において、
サブバンド内のスペクトル信号の量子化を行って、量子化値を算出する量子化部と、
量子化処理に要する量子化ビット数として少なくとも、前記量子化値をハフマン符号化した際のビット数であるハフマン符号語ビット数を算出する量子化ビット数算出部と、
前記ハフマン符号語ビット数と、前記ハフマン符号語ビット数以外の前記量子化ビット数とを合計して、量子化処理で発生する予測ビット数を算出するビット数予測部と、
前記予測ビット数が許容ビット数の範囲内にあるか否かを判定する判定部と、
前記予測ビット数が前記許容ビット数を超えた場合には、量子化処理時のパラメータである、コモンスケールファクタ及びスケールファクタを更新するパラメータ更新部と、
を有し、
1回目の量子化処理時には、
前記量子化部は、前記サブバンドをn個置きに量子化し、
前記量子化ビット数算出部は、n個置きの前記サブバンドから算出された前記量子化値に関する前記ハフマン符号語ビット数を算出し、
前記ビット数予測部は、(n+1)倍した前記ハフマン符号語ビット数と、前記ハフマン符号語ビット数以外の前記量子化ビット数とを合計して、前記予測ビット数を算出する、
ことを特徴とするオーディオ符号化装置。
(付記2) 前記量子化ビット数算出部は、前記ハフマン符号語ビット数以外の前記量子化ビット数として、前記ハフマン符号化を行う際に複数のハフマン符号帳の中から、前記サブバンド毎に選択された最適ハフマン符号帳の番号のビット数である最適ハフマン符号帳番号ビット数と、前記サブバンド毎のスケールファクタに要するビット数であるスケールファクタ用ビット数とを算出し、1回目の量子化処理時には、前記ビット数予測部は、(n+1)倍した前記ハフマン符号語ビット数と、前記最適ハフマン符号帳番号ビット数と、前記スケールファクタ用ビット数とを合計して、前記予測ビット数を算出することを特徴とする付記1記載のオーディオ符号化装置。
(付記3) 2回目の量子化処理時には、1回目の量子化処理で更新された前記パラメータを用いて、前記量子化部は、1サブバンド毎に順に量子化し、前記量子化ビット数算出部は、1サブバンド毎に順に算出された前記量子化値に関する前記ハフマン符号語ビット数を算出し、前記ビット数予測部は、前記ハフマン符号語ビット数と、前記最適ハフマン符号帳番号ビット数と、前記スケールファクタ用ビット数とを合計して、前記予測ビット数を算出することを特徴とする付記2記載のオーディオ符号化装置。
(付記4) サブバンド番号が#sbの前記サブバンドをサブバンド#sbとし、前記サブバンド#sbの最適ハフマン符号帳番号を#aとすると、前記サブバンドをn個置きに量子化した際に、飛ばされたサブバンド#(sb+1)、#(sb+2)、・・・、#(sb+n)の最適ハフマン符号帳番号は、前記サブバンド#sbの前記最適ハフマン符号帳番号と同じ#aに設定して、飛ばされた前記サブバンド#(sb+1)、#(sb+2)、・・・、#(sb+n)の前記最適ハフマン符号帳番号の補間処理を行うハフマン符号帳番号補間部をさらに有することを特徴とする付記2記載のオーディオ符号化装置。
(付記5) 前記パラメータ更新部は、前記サブバンドを低域、中域、高域の周波数帯域に分け、前記スケールファクタを更新する場合は、前記周波数帯域毎に補正量を変えて、前記スケールファクタを更新することを特徴とする付記1記載のオーディオ符号化装置。
(付記6) 前記パラメータ更新部は、低域側の前記サブバンドで、前記予測ビット数が前記許容ビット数を越えた場合には、前記コモンスケールファクタ及び前記スケールファクタの補正量を大きく変更し、高域側の前記サブバンドで、前記予測ビット数が前記許容ビット数を越えた場合には、前記コモンスケールファクタ及び前記スケールファクタの補正量を小さく変更することを特徴とする付記1記載のオーディオ符号化装置。
(付記7) 音声信号の符号化を行うオーディオ符号化方法において、
1回目の量子化処理では、
サブバンド内のスペクトル信号の量子化を行う際に、前記サブバンドをn個置きに量子化して、量子化値を算出し、
量子化処理に要する量子化ビット数として少なくとも、n個置きの前記サブバンドから算出された前記量子化値に関する前記ハフマン符号語ビット数を算出し、
(n+1)倍した前記ハフマン符号語ビット数と、前記ハフマン符号語ビット数以外の前記量子化ビット数とを合計して、予測ビット数を算出し、
前記予測ビット数が許容ビット数の範囲内にあるか否かを判定し、
前記予測ビット数が前記許容ビット数を超えた場合には、量子化処理時のパラメータである、コモンスケールファクタ及びスケールファクタを更新し、
2回目の量子化処理では、更新された前記コモンスケールファクタ及び前記スケールファクタを利用して量子化処理を行う、
ことを特徴とするオーディオ符号化方法。
(付記8) 前記ハフマン符号語ビット数以外の前記量子化ビット数として、前記ハフマン符号化を行う際に複数のハフマン符号帳の中から、前記サブバンド毎に選択された最適ハフマン符号帳の番号のビット数である最適ハフマン符号帳番号ビット数と、前記サブバンド毎のスケールファクタに要するビット数であるスケールファクタ用ビット数とを算出することを特徴とする付記7記載のオーディオ符号化方法。
(付記9) 2回目の量子化処理時には、1回目の量子化処理で更新された前記コモンスケールファクタ及び前記スケールファクタを用いて、1サブバンド毎に順に量子化し、1サブバンド毎に順に算出された前記量子化値に関する前記ハフマン符号語ビット数を算出し、前記ハフマン符号語ビット数と、前記最適ハフマン符号帳番号ビット数と、前記スケールファクタ用ビット数とを合計して、前記予測ビット数を算出することを特徴とする付記8記載のオーディオ符号化方法。
(付記10) サブバンド番号が#sbの前記サブバンドをサブバンド#sbとし、前記サブバンド#sbの最適ハフマン符号帳番号を#aとすると、前記サブバンドをn個置きに量子化した際に、飛ばされたサブバンド#(sb+1)、#(sb+2)、・・・、#(sb+n)の最適ハフマン符号帳番号は、前記サブバンド#sbの前記最適ハフマン符号帳番号と同じ#aに設定して、飛ばされた前記サブバンド#(sb+1)、#(sb+2)、・・・、#(sb+n)の前記最適ハフマン符号帳番号の補間処理を行うことを特徴とする付記7記載のオーディオ符号化方法。
(付記11) 前記サブバンドを低域、中域、高域の周波数帯域に分け、前記スケールファクタを更新する場合は、前記周波数帯域毎に補正量を変えて、前記スケールファクタを更新することを特徴とする付記7記載のオーディオ符号化方法。
(付記12) 低域側の前記サブバンドで、前記予測ビット数が前記許容ビット数を越えた場合には、前記コモンスケールファクタ及び前記スケールファクタの補正量を大きく変更し、高域側の前記サブバンドで、前記予測ビット数が前記許容ビット数を越えた場合には、前記コモンスケールファクタ及び前記スケールファクタの補正量を小さく変更することを特徴とする付記7記載のオーディオ符号化方法。
オーディオ符号化装置の原理図である。 フレームの概念を示す図である。 変換係数とサブバンドのイメージを示す図である。 フレームに対するコモンスケールファクタ/スケールファクタの対応関係を示す図である。 量子化の概念を示す図である。 可聴限界グラフを示す図である。 マスキングパワーしきい値を示す図である。 量子化値におけるインデックス値とハフマン符号ビット数を示すテーブルである。 ハフマンコードブックのテーブル値を示す図である。 ハフマンコードブックのテーブル値を示す図である。 ハフマンコードブックのテーブル値を示す図である。 ハフマンコードブックのテーブル値を示す図である。 オーディオ符号化装置のブロック構成を示す図である。 オーディオ符号化装置の動作を示すフローチャートである。 オーディオ符号化装置の動作を示すフローチャートである。 スケールファクタ用ビット数算出の概要を示す図である。 ISO勧告による量子化処理の概要を示す図である。 オーディオ符号化装置の量子化処理の特徴を示す図である。 ハフマンコードブック番号補間処理の概要を示す図である。 ハフマンコードブック番号連続数情報のフォーマットを示す図である。 ハフマンコードブック番号連続数情報の一例を示す図である。 ハフマンコードブック番号補間処理を行わなかった場合のハフマンコードブック番号連続数情報を示す図である。 ハフマンコードブック番号補間処理を行った場合のハフマンコードブック番号連続数情報を示す図である。 パラメータの動的補正を示す図である。 ISO勧告の量子化処理とオーディオ符号化装置の量子化処理との処理量を比較した図である。
符号の説明
10 オーディオ符号化装置
11 量子化部
12 量子化ビット数算出部
13 ビット数予測部
14 判定部
15 パラメータ更新部
B1 ハフマン符号帳

Claims (5)

  1. 音声信号の符号化を行うオーディオ符号化装置において、
    サブバンド内のスペクトル信号の量子化を行って、量子化値を算出する量子化部と、
    量子化処理に要する量子化ビット数として少なくとも、前記量子化値をハフマン符号化した際のビット数であるハフマン符号語ビット数を算出する量子化ビット数算出部と、
    前記ハフマン符号語ビット数と、前記ハフマン符号語ビット数以外の前記量子化ビット数とを合計して、量子化処理で発生する予測ビット数を算出するビット数予測部と、
    前記予測ビット数が許容ビット数の範囲内にあるか否かを判定する判定部と、
    前記予測ビット数が前記許容ビット数を超えた場合には、量子化処理時のパラメータである、コモンスケールファクタ及びスケールファクタを更新するパラメータ更新部と、
    を有し、
    1回目の量子化処理時には、
    前記量子化部は、前記サブバンドをn個置きに量子化し、
    前記量子化ビット数算出部は、n個置きの前記サブバンドから算出された前記量子化値に関する前記ハフマン符号語ビット数を算出し、
    前記ビット数予測部は、(n+1)倍した前記ハフマン符号語ビット数と、前記ハフマン符号語ビット数以外の前記量子化ビット数とを合計して、前記予測ビット数を算出する、
    ことを特徴とするオーディオ符号化装置。
  2. 前記量子化ビット数算出部は、前記ハフマン符号語ビット数以外の前記量子化ビット数として、前記ハフマン符号化を行う際に複数のハフマン符号帳の中から、前記サブバンド毎に選択された最適ハフマン符号帳の番号のビット数である最適ハフマン符号帳番号ビット数と、前記サブバンド毎のスケールファクタに要するビット数であるスケールファクタ用ビット数とを算出し、1回目の量子化処理時には、前記ビット数予測部は、(n+1)倍した前記ハフマン符号語ビット数と、前記最適ハフマン符号帳番号ビット数と、前記スケールファクタ用ビット数とを合計して、前記予測ビット数を算出することを特徴とする請求項1記載のオーディオ符号化装置。
  3. 2回目の量子化処理時には、1回目の量子化処理で更新された前記パラメータを用いて、前記量子化部は、1サブバンド毎に順に量子化し、前記量子化ビット数算出部は、1サブバンド毎に順に算出された前記量子化値に関する前記ハフマン符号語ビット数を算出し、前記ビット数予測部は、前記ハフマン符号語ビット数と、前記最適ハフマン符号帳番号ビット数と、前記スケールファクタ用ビット数とを合計して、前記予測ビット数を算出することを特徴とする請求項2記載のオーディオ符号化装置。
  4. サブバンド番号が#sbの前記サブバンドをサブバンド#sbとし、前記サブバンド#sbの最適ハフマン符号帳番号を#aとすると、前記サブバンドをn個置きに量子化した際に、飛ばされたサブバンド#(sb+1)、#(sb+2)、・・・、#(sb+n)の最適ハフマン符号帳番号は、前記サブバンド#sbの前記最適ハフマン符号帳番号と同じ#aに設定して、飛ばされた前記サブバンド#(sb+1)、#(sb+2)、・・・、#(sb+n)の前記最適ハフマン符号帳番号の補間処理を行うハフマン符号帳番号補間部をさらに有することを特徴とする請求項2記載のオーディオ符号化装置。
  5. 前記パラメータ更新部は、前記サブバンドを低域、中域、高域の周波数帯域に分け、前記スケールファクタを更新する場合は、前記周波数帯域毎に補正量を変えて、前記スケールファクタを更新することを特徴とする請求項1記載のオーディオ符号化装置。
JP2006262022A 2006-09-27 2006-09-27 オーディオ符号化装置 Expired - Fee Related JP4823001B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006262022A JP4823001B2 (ja) 2006-09-27 2006-09-27 オーディオ符号化装置
US11/902,770 US8019601B2 (en) 2006-09-27 2007-09-25 Audio coding device with two-stage quantization mechanism

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006262022A JP4823001B2 (ja) 2006-09-27 2006-09-27 オーディオ符号化装置

Publications (2)

Publication Number Publication Date
JP2008083295A true JP2008083295A (ja) 2008-04-10
JP4823001B2 JP4823001B2 (ja) 2011-11-24

Family

ID=39226165

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006262022A Expired - Fee Related JP4823001B2 (ja) 2006-09-27 2006-09-27 オーディオ符号化装置

Country Status (2)

Country Link
US (1) US8019601B2 (ja)
JP (1) JP4823001B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008108076A1 (ja) * 2007-03-02 2008-09-12 Panasonic Corporation 符号化装置および符号化方法
JP2012519309A (ja) * 2009-03-04 2012-08-23 コア ロジック,インコーポレイテッド オーディオ符号化のための量子化
JP2013045067A (ja) * 2011-08-26 2013-03-04 Fujitsu Ltd 符号化装置、符号化方法および符号化プログラム
JP2013167852A (ja) * 2012-02-17 2013-08-29 Fujitsu Semiconductor Ltd オーディオ信号符号化装置およびオーディオ信号符号化方法
JP2014520282A (ja) * 2011-06-01 2014-08-21 サムスン エレクトロニクス カンパニー リミテッド オーディオ符号化方法及び装置、オーディオ復号化方法及び装置、その記録媒体及びこれを採用するマルチメディア機器
JP2015502561A (ja) * 2011-10-21 2015-01-22 サムスン エレクトロニクス カンパニー リミテッド エネルギー無損失符号化方法及びその装置、オーディオ符号化方法及びその装置、エネルギー無損失復号化方法及びその装置、並びにオーディオ復号化方法及びその装置
JP2016170428A (ja) * 2011-04-20 2016-09-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America オーディオ/音声符号化方法およびオーディオ/音声復号方法

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005027096A1 (en) * 2003-09-15 2005-03-24 Zakrytoe Aktsionernoe Obschestvo Intel Method and apparatus for encoding audio
EP2159790B1 (en) * 2007-06-27 2019-11-13 NEC Corporation Audio encoding method, audio decoding method, audio encoding device, audio decoding device, program, and audio encoding/decoding system
GB2454168A (en) * 2007-10-24 2009-05-06 Cambridge Silicon Radio Ltd Estimating the number of bits required to compress a plurality of samples using a given quantisation parameter by calculating logarithms of quantised samples
US8204744B2 (en) 2008-12-01 2012-06-19 Research In Motion Limited Optimization of MP3 audio encoding by scale factors and global quantization step size
US8307261B2 (en) * 2009-05-04 2012-11-06 National Tsing Hua University Non-volatile memory management method
US8311843B2 (en) * 2009-08-24 2012-11-13 Sling Media Pvt. Ltd. Frequency band scale factor determination in audio encoding based upon frequency band signal energy
US8902873B2 (en) * 2009-10-08 2014-12-02 Qualcomm Incorporated Efficient signaling for closed-loop transmit diversity
JP5609591B2 (ja) * 2010-11-30 2014-10-22 富士通株式会社 オーディオ符号化装置、オーディオ符号化方法及びオーディオ符号化用コンピュータプログラム
EP2707875A4 (en) 2011-05-13 2015-03-25 Samsung Electronics Co Ltd NOISE REDUCTION AND AUDIO CODING
JP6190373B2 (ja) * 2011-10-24 2017-08-30 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. オーディオ信号ノイズ減衰
JP6179087B2 (ja) * 2012-10-24 2017-08-16 富士通株式会社 オーディオ符号化装置、オーディオ符号化方法、オーディオ符号化用コンピュータプログラム
CA2925037C (en) * 2013-12-02 2020-12-01 Huawei Technologies Co., Ltd. Encoding method and apparatus
CN109286470B (zh) * 2018-09-28 2020-07-10 华中科技大学 一种主动非线性变换信道加扰传输方法
CN109616104B (zh) * 2019-01-31 2022-12-30 天津大学 基于关键点编码和多脉冲学习的环境声音识别方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06242798A (ja) * 1993-02-19 1994-09-02 Matsushita Electric Ind Co Ltd 変換符号化装置のビット配分方法
WO2005033859A2 (en) * 2003-09-29 2005-04-14 Sony Electronics, Inc. Rate-distortion control scheme in audio encoding
JP2005301002A (ja) * 2004-04-13 2005-10-27 Nippon Hoso Kyokai <Nhk> 音声符号化情報処理装置および音声符号化情報処理プログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1184023B (it) * 1985-12-17 1987-10-22 Cselt Centro Studi Lab Telecom Procedimento e dispositivo per la codifica e decodifica del segnale vocale mediante analisi a sottobande e quantizzazione vettorariale con allocazione dinamica dei bit di codifica
US5765127A (en) * 1992-03-18 1998-06-09 Sony Corp High efficiency encoding method
US5956674A (en) * 1995-12-01 1999-09-21 Digital Theater Systems, Inc. Multi-channel predictive subband audio coder using psychoacoustic adaptive bit allocation in frequency, time and over the multiple channels
US6542863B1 (en) * 2000-06-14 2003-04-01 Intervideo, Inc. Fast codebook search method for MPEG audio encoding
US7027982B2 (en) * 2001-12-14 2006-04-11 Microsoft Corporation Quality and rate control strategy for digital audio
US7343291B2 (en) * 2003-07-18 2008-03-11 Microsoft Corporation Multi-pass variable bitrate media encoding
US7668715B1 (en) * 2004-11-30 2010-02-23 Cirrus Logic, Inc. Methods for selecting an initial quantization step size in audio encoders and systems using the same

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06242798A (ja) * 1993-02-19 1994-09-02 Matsushita Electric Ind Co Ltd 変換符号化装置のビット配分方法
WO2005033859A2 (en) * 2003-09-29 2005-04-14 Sony Electronics, Inc. Rate-distortion control scheme in audio encoding
JP2005301002A (ja) * 2004-04-13 2005-10-27 Nippon Hoso Kyokai <Nhk> 音声符号化情報処理装置および音声符号化情報処理プログラム

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008108076A1 (ja) * 2007-03-02 2008-09-12 Panasonic Corporation 符号化装置および符号化方法
US8719011B2 (en) 2007-03-02 2014-05-06 Panasonic Corporation Encoding device and encoding method
US8600764B2 (en) 2009-03-04 2013-12-03 Core Logic Inc. Determining an initial common scale factor for audio encoding based upon spectral differences between frames
JP2012519309A (ja) * 2009-03-04 2012-08-23 コア ロジック,インコーポレイテッド オーディオ符号化のための量子化
JP2016170428A (ja) * 2011-04-20 2016-09-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America オーディオ/音声符号化方法およびオーディオ/音声復号方法
JP2014520282A (ja) * 2011-06-01 2014-08-21 サムスン エレクトロニクス カンパニー リミテッド オーディオ符号化方法及び装置、オーディオ復号化方法及び装置、その記録媒体及びこれを採用するマルチメディア機器
US9589569B2 (en) 2011-06-01 2017-03-07 Samsung Electronics Co., Ltd. Audio-encoding method and apparatus, audio-decoding method and apparatus, recoding medium thereof, and multimedia device employing same
US9858934B2 (en) 2011-06-01 2018-01-02 Samsung Electronics Co., Ltd. Audio-encoding method and apparatus, audio-decoding method and apparatus, recoding medium thereof, and multimedia device employing same
JP2018067008A (ja) * 2011-06-01 2018-04-26 サムスン エレクトロニクス カンパニー リミテッド オーディオ符号化方法、オーディオ復号化方法及び記録媒体
JP2013045067A (ja) * 2011-08-26 2013-03-04 Fujitsu Ltd 符号化装置、符号化方法および符号化プログラム
JP2015502561A (ja) * 2011-10-21 2015-01-22 サムスン エレクトロニクス カンパニー リミテッド エネルギー無損失符号化方法及びその装置、オーディオ符号化方法及びその装置、エネルギー無損失復号化方法及びその装置、並びにオーディオ復号化方法及びその装置
JP2017126073A (ja) * 2011-10-21 2017-07-20 サムスン エレクトロニクス カンパニー リミテッド 無損失符号化装置
TWI671736B (zh) * 2011-10-21 2019-09-11 南韓商三星電子股份有限公司 對信號的包絡進行寫碼的設備及對其進行解碼的設備
US10424304B2 (en) 2011-10-21 2019-09-24 Samsung Electronics Co., Ltd. Energy lossless-encoding method and apparatus, audio encoding method and apparatus, energy lossless-decoding method and apparatus, and audio decoding method and apparatus
US10878827B2 (en) 2011-10-21 2020-12-29 Samsung Electronics Co.. Ltd. Energy lossless-encoding method and apparatus, audio encoding method and apparatus, energy lossless-decoding method and apparatus, and audio decoding method and apparatus
US11355129B2 (en) 2011-10-21 2022-06-07 Samsung Electronics Co., Ltd. Energy lossless-encoding method and apparatus, audio encoding method and apparatus, energy lossless-decoding method and apparatus, and audio decoding method and apparatus
JP2013167852A (ja) * 2012-02-17 2013-08-29 Fujitsu Semiconductor Ltd オーディオ信号符号化装置およびオーディオ信号符号化方法

Also Published As

Publication number Publication date
US20080077413A1 (en) 2008-03-27
JP4823001B2 (ja) 2011-11-24
US8019601B2 (en) 2011-09-13

Similar Documents

Publication Publication Date Title
JP4823001B2 (ja) オーディオ符号化装置
US10546594B2 (en) Signal processing apparatus and signal processing method, encoder and encoding method, decoder and decoding method, and program
US9842603B2 (en) Encoding device and encoding method, decoding device and decoding method, and program
JP4212591B2 (ja) オーディオ符号化装置
EP1939862B1 (en) Encoding device, decoding device, and method thereof
KR100304055B1 (ko) 음성 신호 부호화동안 잡음 대체를 신호로 알리는 방법
US9390717B2 (en) Encoding device and method, decoding device and method, and program
EP0967593B1 (en) Audio coding and quantization method
KR100904605B1 (ko) 음성부호화장치, 음성복호장치, 음성부호화방법 및음성복호방법
US7243061B2 (en) Multistage inverse quantization having a plurality of frequency bands
KR101967122B1 (ko) 신호 처리 장치 및 방법, 및 프로그램
KR100840439B1 (ko) 음성부호화장치 및 음성복호장치
WO1998000837A1 (fr) Procedes de codage et de decodage de signaux audio, et codeur et decodeur de signaux audio
JP4055336B2 (ja) 音声符号化装置及びそれに用いる音声符号化方法
US20010050959A1 (en) Encoder and communication device
KR20060131793A (ko) 음성ㆍ악음 부호화 장치 및 음성ㆍ악음 부호화 방법
JP3344944B2 (ja) オーディオ信号符号化装置,オーディオ信号復号化装置,オーディオ信号符号化方法,及びオーディオ信号復号化方法
JP3255022B2 (ja) 適応変換符号化方式および適応変換復号方式
US20100145712A1 (en) Coding of digital audio signals
JP5019437B2 (ja) オーディオビットレート変換方法および装置
JP2001109497A (ja) オーディオ信号符号化装置およびオーディオ信号符号化方法
JP2002141805A (ja) 符号化器および通信デバイス
KR20080008897A (ko) 오디오 부호화 방법
JPH10228298A (ja) 音声信号符号化方法
MXPA98010783A (en) Audio signal encoder, audio signal decoder, and method for encoding and decoding audio signal

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080729

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090623

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110601

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110801

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: 20110906

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110906

R150 Certificate of patent or registration of utility model

Ref document number: 4823001

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140916

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees