JP2004264811A - オーディオの量子化および逆量子化 - Google Patents

オーディオの量子化および逆量子化 Download PDF

Info

Publication number
JP2004264811A
JP2004264811A JP2003309277A JP2003309277A JP2004264811A JP 2004264811 A JP2004264811 A JP 2004264811A JP 2003309277 A JP2003309277 A JP 2003309277A JP 2003309277 A JP2003309277 A JP 2003309277A JP 2004264811 A JP2004264811 A JP 2004264811A
Authority
JP
Japan
Prior art keywords
channel
encoder
channels
quantization
matrix
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
JP2003309277A
Other languages
English (en)
Other versions
JP4676140B2 (ja
JP2004264811A5 (ja
Inventor
Naveen Thumpudi
サンプディ ナビーン
Wei-Ge Chen
チェン ウェイ−ゲ
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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 claimed from US10/642,551 external-priority patent/US7299190B2/en
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2004264811A publication Critical patent/JP2004264811A/ja
Publication of JP2004264811A5 publication Critical patent/JP2004264811A5/ja
Application granted granted Critical
Publication of JP4676140B2 publication Critical patent/JP4676140B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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
    • 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/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Mathematical Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

【課題】 オーディオコーディングおよびオーディオデコーディングでの量子化(たとえば重みづけ)および逆量子化(たとえば逆重みづけ)の効率を改善するアーキテクチャおよび技法を提供する。
【解決手段】 オーディオエンコーダは、複数のチャネルのオーディオデータを量子化し、複数のチャネル固有クォンタイザステップ変更子を適用し、これによって、エンコーダに、チャネルの間での再構成品質のバランスに対するより多くの制御が与えられる。エンコーダは、複数の量子化行列を適用し、量子化行列の分解能を変更し、これによって、エンコーダが、全体的な品質がよい場合に高い分解能、全体的な品質が低い場合に低い分解能を使用することが可能になる。最後に、エンコーダは、時間圧縮を使用して1つまたは複数の量子化行列を圧縮して、量子化行列に関連するビットレートを減らす。オーディオデコーダは、対応する逆処理およびデコーディングを実行する。
【選択図】 図14

Description

本発明は、エンコーディングおよびデコーディングでのオーディオ情報の処理に関する。具体的には、本発明は、オーディオエンコーディングおよびオーディオデコーディングでの量子化および逆量子化に関する。
コンパクトディスク、ディジタル無線電話網、およびインターネットを介するオーディオ配信の導入に伴って、ディジタルオーディオがありふれたものになってきた。技術者は、さまざまな手法を使用して、ディジタルオーディオの品質を維持しながら、ディジタルオーディオを効率的に処理する。これらの手法を理解するために、コンピュータでオーディオ情報がどのように表現され、処理されるかを理解することが役に立つ。
I.コンピュータでのオーディオ情報の表現
コンピュータでは、オーディオ情報を、オーディオ情報を表す一連の数として処理する。たとえば、単一の数が、オーディオサンプルを表すことができ、このオーディオサンプルは、特定の時刻の振幅値(すなわち、音の大きさ)である。サンプル深さ(sample depth)、サンプリングレート(sampling rate)、およびチャネルモードなど、複数の要因が、オーディオ情報の品質に影響する。
サンプル深さ(または精度)は、サンプルを表すのに使用される数の範囲を示す。サンプルに可能な値が多くなれば、振幅のより微妙な変動を取り込めるようになるので、品質が高くなる。たとえば、8ビットサンプルは、256個の可能な値を有するが、16ビットサンプルは、65536個の可能な値を有する。24ビットサンプルでは、普通の音の大きさの変動を非常に微細に取り込むことができ、異常に大きい音も取り込むことができる。
サンプリングレート(通常は、サンプル数毎秒として測定される)も、品質に影響する。サンプリングレートが高いほど、より高い周波数の音を表現できるので、品質が高くなる。一般的なサンプリングレートは、8000、11025、22050、32000、44100、48000、および96000サンプル毎秒である。
モノラルおよびステレオが、オーディオの2つの一般的なチャネルモードである。モノラルモードでは、オーディオ情報が、1つのチャネルに存在する。ステレオモードでは、オーディオ情報が、通常は左チャネルおよび右チャネルと称する2つのチャネルに存在する。5.1チャネル、7.1チャネル、または9.1チャネルのサラウンドサウンド(「1」は、サブウーファ(副低音スピーカ)または低周波数効果チャネルを示す)などの、より多くのチャネルを有する他のモードも可能である。表1に、対応する生ビットレートコストと共に、異なる品質レベルのオーディオの複数のフォーマットを示す。
Figure 2004264811
サラウンドサウンドオーディオは、通常は、さらに高い生ビットレートを有する。表1からわかるように、高品質オーディオ情報のコストは、高いビットレートである。高品質オーディオ情報は、大量のコンピュータストレージ(記憶装置)および伝送容量を消費する。しかし、企業および消費者は、高品質マルチチャネルオーディオコンテンツを作成し、配布し、再生するのに、ますますコンピュータに頼る。
II.コンピュータでのオーディオ情報の処理
多くのコンピュータおよびコンピュータネットワークに、生ディジタルオーディオを処理するリソース(資源)が不足している。圧縮(エンコーディングまたはコーディングとも称する)では、情報をよりビットレートの低い形に変換することによって、オーディオ情報の保管および伝送のコストを下げる。圧縮は、ロスレス(損失のない)(lossless)(品質に影響しない)、またはロッシイ(損失のある)(lossy)(品質に影響するが、後続のロスレス圧縮からのビットレート削減がより劇的である)とすることができる。圧縮解除(復元)(デコーディング(複合化、解読、逆符号化)とも称する)によって、圧縮された形から元の情報の再構成されたバージョンが抽出される。
A.標準的な知覚オーディオエンコーダおよびデコーダ
一般に、オーディオ圧縮の目標は、オーディオ信号をディジタルに表現して、可能な最小限の量のビットで最高の信号品質をもたらすことである。通常のオーディオエンコーダ/デコーダ[「コーデック(codec)」]システムでは、サブバンド/変換コーディング、量子化、レート制御、および可変長コーディングを使用して、その圧縮を達成する。量子化および他のロッシイ圧縮手法によって、潜在的に可聴の雑音がオーディオ信号に導入される。雑音の可聴性は、どれほどの雑音があるかと、雑音のどれだけを聴取者が知覚するかに依存する。第1の要因は、主に客観的な品質に関し、第2の要因は、人間による音の知覚に依存する。
図1に、従来技術による変換ベースの知覚オーディオエンコーダ(100)の一般化された図を示す。図2に、従来技術による対応するオーディオデコーダ(200)の一般化された図を示す。図1および2に示されたコーデックシステムは、一般化されているが、Microsoft Corporation社のWindows(登録商標)Media Audio[「WMA」]エンコーダおよびデコーダの諸バージョンを含む、複数の実世界のコーデックシステムに見られる特性を有する。他のコーデックシステムは、Motion Picture Experts Group、Audio Layer 3[「MP3」]標準規格、Motion Picture Experts Group 2、Advanced Audio Coding[「AAC」]標準規格、およびDolby AC3によって提供されるか指定される。コーデックシステムに関する追加情報については、めいめいの標準規格または技術的刊行物を参照されたい。
1.知覚オーディオエンコーダ
全体として、エンコーダ(100)は、入力オーディオサンプル(105)の時系列を受け取り、オーディオサンプル(105)を圧縮し、エンコーダ(100)のさまざまなモジュールによって作られる情報を多重化して、ビットストリーム(195)を出力する。エンコーダ(100)には、周波数トランスフォーマ(変換器)(frequency transformer)(110)、マルチチャネルトランスフォーマ(multi−channel transformer)(120)、知覚モデラ(モデル信号発生器)(perception modeler)(130)、ウェイタ(重み付け器)(weighter)(140)、クォンタイザ(量子化器)(quantizer)(150)、エントロピエンコーダ(entropy encoder)(160)、コントローラ(170)、およびビットストリームマルチプレクサ(bitstream multiplexer)[「MUX」](180)が含まれる。
周波数トランスフォーマ(110)は、オーディオサンプル(105)を受け取り、周波数領域のデータに変換する。たとえば、周波数トランスフォーマ(110)は、オーディオサンプル(105)をブロックに分割し、このブロックは、可変時間分解能を可能にするために可変サイズを有することができる。小さいブロックを用いると、入力オーディオサンプル(105)の短いがアクティブな推移セグメント(区間)で時間詳細をより多く保存できるようになるが、ある程度周波数分解能が犠牲になる。対照的に、大きいブロックは、よりよい周波数分解能とより悪い時間分解能を有し、通常は、より長いが少数のアクティブセグメント(区間)でのより高い圧縮効率が可能になる。ブロックをオーバーラップさせて、そうでなければ後の量子化によって導入される可能性があるブロックの間の知覚的不連続性を減らすことができる。マルチチャネルオーディオについて、周波数トランスフォーマ(110)では、特定のフレーム内のチャネルごとに同一のパターンのウィンドウが使用される。周波数トランスフォーマ(110)は、周波数係数データのブロックをマルチチャネルトランスフォーマ(120)に出力し、ブロックサイズなどのサイド情報をMUX(180)に出力する。
マルチチャネルオーディオデータの場合に、周波数トランスフォーマ(110)によって作られる周波数係数データの複数のチャネルが、しばしば相関する。この相関を活用するために、マルチチャネルトランスフォーマ(120)によって、複数のオリジナルの独立にコーディングされたチャネルを、連繋して(一緒に)コーディングされたチャネルに変換することができる。たとえば、入力がステレオモードである場合に、マルチチャネルトランスフォーマ(120)によって、左右のチャネルを和と差のチャネルに変換することができる。
Figure 2004264811
または、マルチチャネルトランスフォーマ(120)によって、左右のチャネルを独立にコーディングされたチャネルとして渡すことができる。独立にコーディングされたチャネルまたは連繋してコーディングされたチャネルの使用の判断は、事前に決定するか、エンコーディング中に適応的に行うことができる。たとえば、エンコーダ(100)によって、(a)マルチチャネル変換ありおよびなしのコーディングチャネルの間のエネルギ分離と、(b)左右の入力チャネルの間の励起パターンの不一致を考慮するオープンループ選択判断を用いて、ステレオチャネルを連繋してまたは独立にのどちらでコーディングするかを決定する。そのような判断は、ウィンドウごとの基準で行うか、判断を単純にするためにフレームごとに1回だけ行うことができる。マルチチャネルトランスフォーマ(120)は、使用されるチャネルモードを示すサイド情報をMUX(180)に出力する。
エンコーダ(100)は、マルチチャネル変換の後に、オーディオデータのブロックにマルチチャネル再行列化を適用することができる。連繋してコーディングされたチャネルの低ビットレートのマルチチャネルオーディオデータについて、エンコーダ(100)は、あるチャネル(たとえば差チャネル)の情報を選択的に抑圧して、残りのチャネル(たとえば和チャネル)の品質を改善する。たとえば、エンコーダ(100)は、スケーリング係数ρによって差チャネルをスケーリングする。
Figure 2004264811
ここで、ρの値は、(a)雑音興奮比率(Noise to Excitation Ratio)[「NER」]などの知覚オーディオ品質測定値の現在の平均レベルと、(b)仮想バッファの現在の満杯度と、(c)エンコーダ(100)のビットレートおよびサンプリングレート設定と、(d)左右の入力チャネルのチャネルセパレーションとに基づく。
知覚モデラ(130)は、人間の聴覚系のモデルに従ってオーディオデータを処理して、所与のビットレートの再構成されたオーディオ信号の知覚される品質を改善する。たとえば、聴覚モデルでは、通常、人間の聴取帯および臨界帯域の範囲が考慮される。人間の神経系では、周波数のサブレンジが統合される。この理由から、聴覚モデルでは、臨界帯域によってオーディオ情報を編成し、処理することができる。異なる聴覚モデルでは、異なる数の臨界帯域(たとえば、25個、32個、55個、または109個)および/または臨界帯域の異なるカットオフ周波数が使用される。バークバンド(bark band:叫び声の帯域)が、臨界帯域の周知の例である。範囲および臨界帯域のほかに、オーディオ信号の間の相互作用が、知覚に劇的に影響する可能性がある。単独で提示される場合に明瞭に聴取可能であるオーディオ信号が、マスカまたはマスキング信号と称する別のオーディオ信号が存在すると完全に聴取不能になる可能性がある。人間の耳は、マスキングされる信号のひずみまたは他の忠実度の消失(すなわち雑音)に比較的鈍感であり、したがって、マスキングされる信号に、知覚されるオーディオ品質を劣化させずにより多くのひずみを含めることができる。さらに、聴覚モデルでは、人間による音の知覚の物理的態様または神経的態様に関するさまざまな他の要因を考慮することができる。
知覚モデラ(130)は、雑音の可聴性を減らすためにオーディオデータの雑音を整形するのにウェイタ(140)が使用する情報を出力する。たとえば、さまざまな手法のいずれかを使用して、ウェイタ(140)は、受け取った情報に基づいて量子化行列(時々、マスクと称する)の重みづけ係数(時々、スケーリング係数と称する)を生成する。量子化行列の重みづけ係数には、オーディオデータ内の複数の量子化帯域ごとの重みが含まれ、量子化帯域は、周波数係数の周波数範囲である。量子化帯域の数は、臨界帯域の数以下とすることができる。したがって、重みづけ係数によって、雑音が量子化帯域にまたがって分散する特性が示され、より多くの雑音をより聴取可能でない帯域に置き、より少ない雑音をより聴取可能な帯域に置くことによって、雑音の可聴性を最小にすることが目標になる。重みづけ係数は、振幅およびブロックからブロックへの量子化帯域の数で変化する可能性がある。ウェイタ(140)は、マルチチャネルトランスフォーマ(120)から受け取ったデータに重みづけ係数を適用する。
一実施形態で、ウェイタ(140)は、マルチチャネルオーディオの各チャネルのウィンドウごとに重みづけ係数の組を生成するか、連繋してコーディングされたチャネルの並列ウィンドウについて重みづけ係数の単一の組を共用する。ウェイタ(140)は、係数データの重みづけされたブロックをクォンタイザ(150)に出力し、重みづけ係数の組などのサイド情報をMUX(180)に出力する。
重みづけ係数の組を、直接圧縮を使用して、より効率的な表現のために圧縮することができる。直接圧縮手法では、エンコーダ(100)が、量子化行列の各要素を均一に量子化する。エンコーダは、量子化された要素を、行列の前の要素に対して相対的に差分コーディングし、差分コーディングされた要素をハフマンコーディングする。いくつかの場合に(たとえば、特定の量子化帯域の係数のすべてが、0の値に量子化されるか切り詰められる時)、デコーダ(200)は、すべての量子化帯域について重みづけ係数を必要としない。そのような場合には、エンコーダ(100)は、系列の次に必要な重みづけ係数の値と同一の値を、1つまたは複数の不要な重みづけ係数に与え、これによって、量子化行列の要素の差分コーディングをより効率的にする。
あるいは、低ビットレートアプリケーションについて、エンコーダ(100)は、量子化行列をパラメータ圧縮して、たとえば量子化行列から計算される擬似自己相関パラメータの線形予測コーディング[「LPC」]を使用して、パラメータの組として量子化行列を表現することができる。
クォンタイザ(150)は、ウェイタ(140)の出力を量子化し、エントロピエンコーダ(160)への量子化された係数データと、MUX(180)への量子化ステップサイズを含むサイド情報とを作る。量子化では、入力値の範囲を単一の値に写像し、情報の不可逆的な消失が導入されるが、量子化によって、エンコーダ(100)が、コントローラ(170)と共に、ビットストリーム(195)出力の品質およびビットレートを調整できるようになる。図1では、クォンタイザ(150)が、適応均一スカラクォンタイザである。クォンタイザ(150)は、各周波数係数に同一の量子化ステップサイズを適用するが、量子化ステップサイズ自体を、量子化ループのある反復から次の反復の間で変更して、エントロピエンコーダ(160)出力のビットレートに影響を及ぼすことができる。他の種類の量子化が、不均一ベクトル量子化および/または非適応量子化である。
エントロピエンコーダ(160)は、クォンタイザ(150)から受け取る量子化された係数データをロスレス圧縮する。エントロピエンコーダ(160)は、オーディオ情報のエンコーディングに費やされるビット数を計算し、この情報をレート/品質コントローラ(170)に渡すことができる。
コントローラ(170)は、クォンタイザ(150)と一緒に働いて、エンコーダ(100)の出力のビットレートおよび/または品質を調整する。コントローラ(170)は、エンコーダ(100)の他のモジュールから情報を受け取り、受け取った情報を処理して、現在の条件での所望の量子化ステップサイズを判定する。コントローラ(170)は、ビットレート制約および品質制約を満足することを目標に、量子化ステップサイズをクォンタイザ(150)に出力する。
エンコーダ(100)は、オーディオデータのブロックに雑音置換および/または帯域切詰を適用することができる。低ビットレートおよび中ビットレートで、オーディオエンコーダ(100)は、雑音置換を使用して、ある帯域の情報を伝える。帯域切詰では、ブロックの測定された品質から低い品質が示される場合に、エンコーダ(100)が、ある(通常はより高い周波数の)帯域の係数を完全に除去して、残りの帯域の総合的な品質を改善することができる。
MUX(180)は、オーディオエンコーダ(100)の他のモジュールから受け取るサイド情報を、エントロピエンコーダ(160)から受け取ったエントロピエンコーディングされたデータと多重化する。MUX(180)は、オーディオデコーダが認識するフォーマットで情報を出力する。MUX(180)には、オーディオの複雑さの変化に起因するビットレートの短期間変動を平滑化するために、エンコーダ(100)によって出力されるビットストリーム(195)を保管する仮想バッファが含まれる。
2.知覚オーディオデコーダ
全体として、デコーダ(200)は、エントロピエンコードされたデータならびにサイド情報を含む圧縮オーディオ情報のビットストリーム(205)を受け取り、このビットストリームから、オーディオサンプル(295)を再構成する。オーディオデコーダ(200)には、ビットストリームデマルチプレクサ[「DEMUX」](210)、エントロピデコーダ(220)、逆クォンタイザ(230)、雑音ジェネレータ(240)、逆ウェイタ(250)、逆マルチチャネルトランスフォーマ(260)、および逆周波数トランスフォーマ(270)が含まれる。
DEMUX(210)は、ビットストリーム(205)の情報を解析し、情報をデコーダ(200)のモジュールに送る。DEMUX(210)には、オーディオの複雑さの変動、ネットワークジッタ、および/または他の要因に起因するビットレートの短期間変動を補償するために、1つまたは複数のバッファが含まれる。
エントロピデコーダ(220)は、DEMUX(210)から受け取ったエントロピコードをロスレス圧縮解除し、量子化された周波数係数データを作る。エントロピデコーダ(220)は、通常は、エンコーダで使用されるエントロピエンコーディング手法の逆を適用する。
逆クォンタイザ(230)は、DEMUX(210)から量子化ステップサイズを受け取り、エントロピデコーダ(220)から量子化された周波数係数データを受け取る。逆クォンタイザ(230)は、量子化された周波数係数データに量子化ステップサイズを適用して、周波数係数データを部分的に再構成する。
雑音ジェネレータ(240)は、DEMUX(210)から、データのブロックのどの帯域が雑音置換されたかを示す情報と、雑音の形に関するパラメータを受け取る。雑音ジェネレータ(240)は、示された帯域のパターンを生成し、その情報を逆ウェイタ(250)に渡す。
逆ウェイタ(250)は、DEMUX(210)から重みづけ係数を受け取り、雑音ジェネレータ(240)から雑音置換された帯域のパターンを受け取り、逆クォンタイザ(230)から部分的に再構成された周波数係数データを受け取る。必要に応じて、逆ウェイタ(250)は、たとえば、量子化された行列の要素のエントロピデコーディング、逆差分コーディング、および逆量子化などによって、重みづけ係数を圧縮解除する。逆ウェイタ(250)は、雑音置換されなかった帯域の部分的に再構成された周波数係数データに、重みづけ係数を適用する。その後、逆ウェイタ(250)は、雑音置換された帯域に関する雑音ジェネレータ(240)から受け取った雑音パターンを加える。
逆マルチチャネルトランスフォーマ(260)は、逆ウェイタ(250)から再構成された周波数係数データを受け取り、DEMUX(210)からチャネルモード情報を受け取る。マルチチャネルオーディオが、独立にコーディングされたチャネルにある場合には、逆マルチチャネルトランスフォーマ(260)は、チャネルをそのまま通す。マルチチャネルデータが、連繋してコーディングされたチャネルにある場合には、逆マルチチャネルトランスフォーマ(260)は、そのデータを独立にコーディングされたチャネルに変換する。
逆周波数トランスフォーマ(270)は、マルチチャネルトランスフォーマ(260)によって出力された周波数係数データならびにDEMUX(210)からのブロックサイズなどのサイド情報を受け取る。逆周波数トランスフォーマ(270)は、エンコーダで使用される周波数変換の逆を適用し、再構成されたオーディオサンプル(295)のブロックを出力する。
B.標準的な知覚オーディオエンコーダおよび知覚オーディオデコーダの短所
上で説明した知覚エンコーダおよび知覚デコーダは、多くの応用例について良好な総合性能を有するが、複数の短所、特にマルチチャネルオーディオの圧縮および圧縮解除に関する短所を有する。この短所によって、いくつかの場合、たとえば使用可能なビットレートが、入力オーディオチャネルの数に対して少ない時に、再構成されるマルチチャネルオーディオの品質が制限される。
1.マルチチャネルオーディオのフレーム区分での柔軟性のなさ
さまざまな点で、図1のエンコーダ(100)によって実行されるフレーム区分は、柔軟でない。
前に述べたように、周波数トランスフォーマ(110)は、入力オーディオサンプル(105)のフレームを、周波数変換のために1つまたは複数のオーバーラップするウィンドウに分割するが、大きいウィンドウは、よりよい周波数分解能および冗長性除去をもたらし、小さいウィンドウは、よりよい時間分解能をもたらす。よりよい時間分解能は、信号が低エネルギから高エネルギに推移する時に導入される可聴プリエコー(pre−echo)アーチファクトを制御するのに役立つが、小さいウィンドウを使用すると、圧縮可能性が下がるので、エンコーダは、ウィンドウサイズを選択する時に、これらの考慮事項のバランスをとらなければならない。マルチチャネルオーディオについて、周波数トランスフォーマ(110)は、フレームのチャネルを同一の形で(すなわち、チャネルでの同一のウィンドウ構成)区分するが、これは、図3aから3cに示されているように、いくつかの場合に非効率的である場合がある。
図3aに、例のステレオオーディオ信号の波形(300)を示す。チャネル0の信号には、推移アクティビティが含まれ、チャネル1の信号は、相対的に静止している。エンコーダ(100)は、チャネル0の信号推移を検出し、プリエコーを減らすために、フレームを、図3bに示された、より小さいオーバーラップする変調されたウィンドウ(301)に分割する。図を単純にするために、図3cでは、オーバーラップするウィンドウ構成(302)をボックス(箱)で示し、破線によってフレーム境界を示す。後の図も、この規約に従う。
すべてのチャネルに同一のウィンドウ構成をとらせることの短所は、1つまたは複数のチャネルの静止信号(たとえば図3aから3cのチャネル1)が、より小さいウィンドウに分割され、コーディング利得が下がる可能性があることである。その代わりに、エンコーダ(100)が、すべてのチャネルにより長いウィンドウを使用させることができるが、推移を有する1つまたは複数のチャネルにプリエコーが導入される。この問題は、複数のチャネルをコーディングしなければならない時に悪化する。
AAC(適応オーディオコーディング)を用いると、マルチチャネル変換の対単位のチャネルのグループ化が可能になる。左、右、中央、左後ろ、右後ろのチャネルの中から、たとえば、左チャネルと右チャネルをステレオコーディングのためにグループ化し、左後ろチャネルと右後ろチャネルをステレオコーディングのためにグループ化することができる。異なるグループが、異なるウィンドウ構成を有することができるが、特定のグループの両方のチャネルが、ステレオコーディングが使用される場合に同一のウィンドウ構成を有する。これによって、AACシステムでのマルチチャネル変換の区分の柔軟性が制限され、対単位のみでのグループ化の使用についても同様である。
2.マルチチャネル変換での柔軟性のなさ
図1のエンコーダ(100)では、あるチャネル間冗長性(inter−channel redundancy)が活用されるが、マルチチャネル変換に関するさまざまな点で柔軟性がない。エンコーダ(100)を用いると、2種類の変換すなわち、(a)恒等変換(変換なしと同等である)、または(b)ステレオ対の和−差コーディングが可能である。これらの制限によって、3つ以上のチャネルのマルチチャネルコーディングが制約される。3つ以上のチャネルを扱うことができるAACにおいても、マルチチャネル変換は、1時に1対のチャネルだけに制限される。
複数のグループが、サラウンドサウンドチャネルに関するマルチチャネル変換に関して実験した(たとえば、非特許文献1(以下「Yang」)、非特許文献2(以下「Wang」)参照)。Yangのシステムでは、よい圧縮係数に関してチャネルを相関解除(decorrelate)するために、チャネルにまたがるKarhunen−Loeve変換[「KLT」]が使用される。Wangのシステムでは、整数対整数離散コサイン変換(Discrete Cosine Transform)[「DCT」]が使用される。両方のシステムで、よい結果が与えられるが、まだ複数の制限がある。
第1に、オーディオサンプルにKLTを使用する(Yangのシステムのように時間領域または周波数領域で)と、再構成で導入されるひずみが制御されない。YangのシステムのKLTは、マルチチャネルオーディオの知覚オーディオコーディングに成功裡に使用されない。Yangのシステムでは、逆マルチチャネル変換での、1つの(たとえば激しく量子化される)コーディングされたチャネルから複数の再構成されるチャネルへの漏れの量が制御されない。この短所は、文献で指摘されている(たとえば、非特許文献3参照)。言い換えると、あるコーディングされたチャネルで「可聴でない」量子化が、複数の再構成されたチャネルに分散される時に可聴になる可能性がある。というのは、逆重みづけが、逆マルチチャネル変換の前に実行されるからである。Wangのシステムでは、マルチチャネル変換を、エンコーダ内で重みづけおよび量子化の後に配置する(かつ、逆マルチチャネル変換を、デコーダ内で逆量子化および逆重みづけの前に配置する)ことによって、この問題が克服される。しかし、Wangのシステムは、さまざまな他の短所を有する。マルチチャネル変換の前に量子化を実行することは、マルチチャネル変換を整数対整数にしなければならず、可能な変換の数が制限され、チャネルにまたがる冗長性除去が制限されることを意味する。
第2に、Yangのシステムは、KLT変換に制限される。KLT変換は、圧縮されるオーディオデータに適応されるが、Yangのシステムの、異なる種類の変換を使用する柔軟性は、制限されている。同様に、Wangのシステムでは、マルチチャネル変換に整数対整数DCTが使用されるが、これは、エネルギコンパクト化に関して通常のDCTほど良好ではなく、Wangのシステムの、異なる種類の変換を使用する柔軟性は、制限されている。
第3に、YangのシステムおよびWangのシステムには、どのチャネルを一緒に変換するかを制御する機構がなく、マルチチャネル変換の異なる時に異なるチャネルを選択的にグループ化する機構もない。そのような制御は、まったく互換性がないチャネルにまたがるコンテンツの漏れを制限するのに役立つ。さらに、全体的に互換性のあるチャネルであっても、ある期間にわたって互換性がなくなる場合がある。
第4に、Yangのシステムでは、マルチチャネル変換に、周波数帯域レベルでマルチチャネル変換を適用するか否かに対する制御が欠けている。全体的に互換性があるチャネルの間であっても、それらのチャネルが、ある周波数またはある周波数帯域で互換性がない場合がある。同様に、図1のエンコーダ(100)のマルチチャネル変換には、サブチャネルレベルでの制御が欠けており、どの帯域の周波数係数データをマルチチャネル変換するかが制御されず、入力チャネルの周波数帯域のうちに相関しないものがある時に生じる可能性がある非効率性が無視される。
第5に、ソースチャネルに互換性がある時であっても、しばしば、一緒に変換されるチャネルの数を制御して、変換を実施する間のデータオーバーフローを制限し、メモリアクセスを減らす必要がある。具体的に言うと、YangのシステムのKLTは、計算的に複雑である。その一方で、変換サイズを減らすことによって、潜在的に、より大きい変換と比較したコーディング利得も減る。
第6に、マルチチャネル変換を指定する情報を送ることが、ビットレートに関して高コストになる可能性がある。これは、YangのシステムのKLTに関して特にそうである。というのは、送られる共分散行列の変換係数が、実数であるからである。
第7に、低ビットレートマルチチャネルオーディオに関して、再構成されるチャネルの品質が、非常に限られる。低ビットレートのコーディングの要件のほかに、これは、部分的に、情報が実際にエンコードされるチャネルの数をシステムが選択的に優雅に削減する能力がないことに起因する。
3.量子化および重みづけの非効率性
図1のエンコーダ(100)では、ウェイタ(140)が、オーディオデータの帯域にまたがるひずみを整形し、クォンタイザ(150)が、量子化ステップサイズをセットして、フレームに関するひずみの振幅を変更し、これによって品質とビットレートのバランスをとる。エンコーダ(100)は、ほとんどの応用例で品質とビットレートのよいバランスを達成するが、エンコーダ(100)は、まだ複数の短所を有する。
第1に、エンコーダ(100)には、チャネルレベルでの品質に対する直接制御が欠けている。重みづけ係数によって、個々のチャネルの量子化帯域にまたがる全体的なひずみが整形される。この均一のスカラ量子化ステップサイズは、あるフレームのすべての周波数帯域およびチャネルにまたがるひずみの振幅に影響する。すべてのチャネルでの非常に高い品質または非常に低い品質の強制がないので、エンコーダ(100)には、すべてのチャネルの再構成された出力の同等の品質または少なくとも匹敵する品質の設定に対する直接制御が欠けている。
第2に、重みづけ係数がロッシイ圧縮されるので、エンコーダ(100)には、重みづけ係数の量子化の分解能に対する制御が欠けている。量子化行列の直接圧縮に関して、エンコーダ(100)は、量子化行列の要素を均一に量子化し、その後、差分コーディングおよびハフマンコーディングを使用する。マスク要素の均一の量子化は、使用可能なビットレートまたは信号の複雑さの変化に適応しない。その結果、量子化行列が、再構成されたオーディオの全体的に低い品質に対して必要以上に高い分解能でエンコードされる場合があり、量子化行列が、再構成されたオーディオの高い品質に対して使用すべき分解能より低い分解能でエンコードされる場合がある。
第3に、エンコーダ(100)での量子化行列の直接圧縮では、量子化行列の時間的冗長性を活用することができない。直接圧縮では、特定の量子化行列内の冗長性が除去されるが、一連の量子化行列の時間的冗長性が無視される。
C.オーディオチャネルのダウンミキシング(down−mixing)
マルチチャネルオーディオのエンコーディングおよびデコーディングはさておき、Dolby Pro−Logicおよび複数の他のシステムは、マルチチャネルオーディオのダウンミキシングを実行して、異なる数のスピーカを有するスピーカ構成との互換性を容易にする。Dolby Pro−Logicのダウンミキシングでは、たとえば、4チャネルが、2チャネルにミックスダウンされ、2チャネルのそれぞれが、元の4つのチャネルのオーディオデータのある組合せを有する。この2チャネルを、ステレオチャネル装置で出力することができ、あるいは、4チャネルを、2チャネルから再構成して、4チャネル機器で出力することができる。
この性質のダウンミキシングによって、互換性問題の一部が解決されるが、これは、あるセット構成、たとえば、4チャネルから2チャネルへのダウンミキシングに制限される。さらに、ミキシングの式が、事前に決定され、信号に適応するための経時的な変化が許容されない。
要約すると、詳細な説明をする本発明は、オーディオエンコーディングおよびオーディオデコーディングでの量子化および逆量子化の戦略を対象とする。たとえば、オーディオエンコーダは、1つまたは複数の量子化(たとえば重みづけ)技法を使用して、オーディオデータの品質および/またはビットレートを改善する。これによって、全体的な聴取経験が改善され、コンピュータシステムが、高品質オーディオの作成、配信、および再生のより説得力のあるプラットフォームになる。本明細書で説明する本発明には、さまざまな技法およびツールが含まれ、これらは、組み合わせてまたは独立に使用することができる。
本明細書で説明する本発明の第1の態様によれば、オーディオエンコーダは、複数のチャネルのオーディオデータを量子化し、複数のチャネルに関する複数のチャネル固有量子化係数を適用する。たとえば、チャネル固有量子化係数は、クォンタイザステップ変更子であり、これによって、エンコーダに、チャネルの間での再構成品質のバランスに対するより多くの制御が与えられる。
本明細書で説明する本発明の第2の態様によれば、オーディオエンコーダは、オーディオデータを量子化し、複数の量子化行列を適用する。エンコーダは、量子化行列の分解能を変更する。これによって、たとえば、エンコーダが、全体的な品質がよい場合により高い分解能を使用し、全体的な品質が低い場合により低い分解能を使用するように、量子化行列の要素の分解能を変更できるようになる。
本明細書で説明する本発明の第3の態様によれば、オーディオエンコーダは、時間予測を使用して1つまたは複数の量子化行列を圧縮する。たとえば、エンコーダは、別の行列に関する現在の行列の予測を計算し、その後、現在の行列および予測から残差を計算する。この形で、エンコーダは、量子化行列に関連するビットレートを減らす。
オーディオエンコーダに関して上で説明した態様のいくつかに関して、オーディオデコーダによって、対応する逆処理およびデコーディングが実行される。
本発明のさまざまな特徴および効果は、添付図面に関して進行する、実施形態の以下の詳細な説明から明白になる。
本発明の、説明される実施形態は、エンコーディングおよびデコーディングでオーディオ情報を処理する手法およびツールを対象とする。説明される実施形態では、オーディオエンコーダで、エンコーディング中に、複数の手法を使用してオーディオを処理する。オーディオデコーダでは、デコード中に、複数の手法を使用して、オーディオを処理する。本明細書のところどころで、単一の統合されたシステムの一部として手法を説明するが、これらの手法は、別々に、潜在的には他の手法と組み合わせて、適用することができる。代替実施形態では、エンコーダまたはデコーダ以外のオーディオ処理ツールによって、手法の1つまたは複数が実施される。
いくつかの実施形態で、エンコーダが、マルチチャネル前処理を実行する。低ビットレートコーディングについて、たとえば、エンコーダは、任意選択として、時間領域オーディオサンプルを再行列化して、相互チャネル相関性を人工的に増やす。これによって、コーディングの複雑さを減らすことによって、影響されるチャネルの後続の比較がより効率的になる。前処理によって、チャネルセパレーションが低下するが、全体的な品質を改善することができる。
いくつかの実施形態で、エンコーダおよびデコーダが、ウィンドウのタイルに構成されたマルチチャネルオーディオを扱う。たとえば、エンコーダが、チャネルごとの基準でマルチチャネルオーディオのフレームを区分し、各チャネルが、他のチャネルと独立のウィンドウ構成を有することができるようにする。エンコーダは、区分されたチャネルのウィンドウを、マルチチャネル変換用のタイルにグループ化する。これによって、エンコーダが、小さいウィンドウを有するフレームの特定のチャネルに現れる推移を分離する(プリエコーアーチファクトを減らす)ことができるが、フレームの他のチャネルでの周波数分解能および時間的冗長性削減に大きいウィンドウを使用することができるようになる。
いくつかの実施形態で、エンコーダが、1つまたは複数の柔軟なマルチチャネル変換手法を実行する。デコーダは、対応する逆マルチチャネル変換手法を実行する。第1の手法では、エンコーダが、エンコーダでの知覚的重みづけの後にマルチチャネル変換を実行し、これによって、再構成時のチャネルにまたがる可聴量子化雑音の漏れが減る。第2の手法では、エンコーダが、マルチチャネル変換についてチャネルを柔軟にグループ化して、異なる時にチャネルを選択的に含める。第3の手法では、エンコーダが、柔軟にマルチチャネル変換に特定の周波数帯域を含めるか除外して、互換性のある帯域を選択的に含める。第4の手法では、エンコーダが、選択的に事前定義の行列を使用するか、ギブンス回転を使用してカスタム変換行列をパラメータ化することによって、変化行列に関連するビットレートを減らす。第5の手法では、エンコーダが、柔軟な階層マルチチャネル変換を実行する。
いくつかの実施形態で、エンコーダが、1つまたは複数の改善された量子化手法または改善された重みづけ手法を実行する。対応するデコーダが、対応する逆量子化手法または逆重みづけ手法を実行する。第1の手法では、エンコーダが、チャネルごとの量子化ステップ変更子を計算し、適用し、この変更子によって、エンコーダに、チャネル間の再構成品質のバランスに対するより多くの制御が与えられる。第2の手法では、エンコーダが、量子化行列要素の柔軟な量子化ステップサイズを使用し、これによって、エンコーダが、量子化行列要素の分解能を変更できるようになる。第3の手法では、エンコーダが、量子化行列の圧縮で時間予測を使用して、ビットレートを減らす。
いくつかの実施形態で、デコーダが、マルチチャネル後処理を実行する。たとえば、デコーダが、任意選択として、時間領域オーディオサンプルを再行列化して、再生時にファントムチャネルを作成し、特殊効果を実行し、より少ないスピーカでの再生のためまたは他の目的のためにチャネルを折り畳む。
説明される実施形態では、マルチチャネルオーディオに、図4の行列(400)に示されているように、標準的な5.1チャネル/スピーカ構成の6チャネルが含まれる。「5」チャネルは、左、右、中央、左後ろ、および右後ろのチャネルであり、サラウンドサウンド用に普通に空間的に配置される。「1」チャネルは、サブウーファまたは低周波数効果チャネルである。説明を明瞭にするために、行列(400)に示されたチャネルの順序を、本明細書の残りの行列および式にも使用する。代替実施形態では、チャネルの異なる順序付け、異なる数(たとえば7.1、9.1、2)、および/または構成を有するマルチチャネルオーディオが使用される。
説明される実施形態で、オーディオエンコーダおよびオーディオデコーダは、さまざまな手法を実行する。これらの手法の動作を、提示のために通常は特定のシーケンシャルな順序で説明するが、この説明の形に、特定の順序付けが必要でない場合に、動作の順序の些細な再配置が含まれることを理解されたい。たとえば、順次説明される動作を、いくつかの場合に、再配置するか並列に実行することができる。さらに、説明を単純にするために、流れ図では、通常は、特定の手法を他の手法と共に使用することができるさまざまな形を示さない。
I.コンピューティング環境
図5に、説明される実施形態を実施することができる適当なコンピューティング環境(500)の一般化された例を示す。コンピューティング環境(500)は、本発明の使用または機能性の範囲に関する制限を提案することを意図されたものではない。というのは、本発明を、別個の汎用コンピューティング環境または特殊目的コンピューティング環境で実施することができるからである。
図5を参照すると、コンピューティング環境(500)に、少なくとも1つの処理ユニット(510)とメモリ(520)が含まれる。図5では、この最も基本的な構成(530)が、破線の中に含まれる。処理ユニット(510)は、コンピュータ実行可能命令を実行し、実際のプロセッサまたは仮想プロセッサとすることができる。マルチプロセッシングシステムでは、複数の処理ユニットが、コンピュータ実行可能命令を実行して、処理能力が増やされる。メモリ(520)は、揮発性メモリ(たとえば、レジスタ、キャッシュ、RAM)、不揮発性メモリ(たとえば、ROM、EEPROM、フラッシュメモリなど)、またはこの2つの組合せとすることができる。メモリ(520)には、説明される実施形態の1つまたは複数によるオーディオ処理手法を実施するソフトウェア(580)が保管される。
コンピューティング環境が、追加の特徴を有することができる。たとえば、コンピューティング環境(500)に、ストレージ(540)、1つまたは複数の入力デバイス(550)、1つまたは複数の出力デバイス(560)、および1つまたは複数の通信接続(570)が含まれる。バス、コントローラ、またはネットワークなどの相互接続機構(図示せず)によって、コンピューティング環境(500)のコンポーネントが相互接続される。通常、オペレーティングシステムソフトウェア(図示せず)によって、コンピューティング環境(500)で実行される他のソフトウェアのオペレーティング環境が提供され、コンピューティング環境(500)のコンポーネントのアクティビティが調整される。
ストレージ(540)は、取外し可能または取外し不能とすることができ、ストレージ(540)に、磁気ディスク、磁気テープ、磁気カセット、CD−ROM、CD−RW、DVD、または、情報を保管するのに使用でき、コンピューティング環境(500)内でアクセスできる他のメディアが含まれる。ストレージ(540)には、説明される実施形態の1つまたは複数によるオーディオ処理手法を実施するソフトウェア(580)の命令が保管される。
入力デバイス(550)は、キーボード、マウス、ペン、またはトラックボールなどの接触入力デバイス、音声入力デバイス、スキャニングデバイス、ネットワークアダプタ、または、コンピューティング環境(500)に入力を供給する別のデバイスとすることができる。オーディオに関して、入力デバイス(550)を、アナログ形式またはディジタル形式のオーディオ入力を受け入れるサウンドカードまたは類似するデバイス、またはコンピューティング環境にオーディオサンプルを提供するCD−ROM/DVDリーダとすることができる。出力デバイス(560)は、ディスプレイ、プリンタ、スピーカ、CD/DVDライタ、ネットワークアダプタ、または、コンピューティング環境(500)から出力を供給する別のデバイスとすることができる。
通信接続(570)によって、別のコンピューティングエンティティへの通信メディアを介する通信が可能になる。通信メディアは、コンピュータ実行可能命令、圧縮オーディオ情報、または変調されたデータ信号内の他のデータなどの情報を伝える。変調されたデータ信号とは、情報を信号内でエンコードする形でその特性の1つまたは複数を設定されるか変更された信号である。制限ではなく例として、通信メディアに、電気、光、RF、赤外線、音響、または他の搬送波を用いて実施される有線または無線の手法が含まれる。
本発明を、コンピュータ可読メディアの全般的な文脈で説明することができる。コンピュータ可読メディアとは、コンピュータ環境内でアクセスできるすべての使用可能なメディアである。制限ではなく例として、コンピューティング環境(500)に関して、コンピュータ可読メディアに、メモリ(520)、ストレージ(540)、通信メディア、およびこれらの任意の組合せが含まれる。
本発明を、プログラムモジュールに含まれるものなど、コンピューティング環境内でターゲットの実際のプロセッサまたは仮想プロセッサ上で実行される、コンピュータ実行可能命令の全般的な文脈で説明することができる。一般に、プログラムモジュールには、特定のタスクを実行するか特定の抽象データ型を実施する、ルーチン、プログラム、ライブラリ、オブジェクト、クラス、コンポーネント、データ構造などが含まれる。プログラムモジュールの機能性を、さまざまな実施形態で、望み通りにプログラムモジュールの間で組み合わせるか分割することができる。プログラムモジュールのコンピュータ実行可能命令は、ローカルコンピューティング環境または分散コンピューティング環境内で実行することができる。
提示のために、この詳細な説明では、「決定」、「生成」、「調節」、および「適用」などの単語を使用して、コンピューティング環境でのコンピュータ動作を説明する。これらの単語は、コンピュータによって実行される動作の高水準の抽象化であり、人間によって実行される動作と混同してはならない。これらの単語に対応する実際のコンピュータ動作は、実施形態に応じて変化する。
II.一般化されたオーディオエンコーダおよびオーディオデコーダ
図6は、説明される実施形態を実施することができる一般化されたオーディオエンコーダ(600)のブロック図である。図7は、説明される実施形態を実施することができる一般化されたオーディオデコーダ(700)のブロック図である。
エンコーダおよびデコーダの中のモジュールの間に示された関係によって、エンコーダとデコーダでの情報の流れが示され、他の関係は、図を単純にするために示されていない。所望の圧縮の実施形態およびタイプに応じて、エンコーダまたはデコーダのモジュールを、追加し、省略し、複数のモジュールに分割し、他のモジュールと組み合わせ、かつ/または類似するモジュールと置換することができる。代替実施形態では、異なるモジュールおよび/または他の構成を有するエンコーダまたはデコーダによって、オーディオデータを処理する。
A.一般化されたオーディオエンコーダ
一般化されたオーディオエンコーダ(600)には、セレクタ(608)、マルチチャネルプリプロセッサ(610)、パーティショナ(分配器)(partitioner)/タイルコンフィギュアラ(configurer)(620)、周波数トランスフォーマ(630)、知覚モデラ(640)、量子化帯域ウェイタ(642)、チャネルウェイタ(644)、マルチチャネルトランスフォーマ(650)、クォンタイザ(660)、エントロピエンコーダ(670)、コントローラ(680)、ミックスド/ピュアロスレスコーダ(672)および関連エントロピエンコーダ(674)、およびビットストリームマルチプレクサ[「MUX」](690)が含まれる。
エンコーダ(600)は、あるサンプリング深さとサンプリングレートの入力オーディオサンプル(605)の時系列を、パルスコード変調[「PCM」]フォーマットで受け取る。説明される実施形態のほとんどについて、入力オーディオサンプル(605)は、マルチチャネルオーディオ(たとえば、ステレオ、サラウンド)用であるが、入力オーディオサンプル(605)を、その代わりにモノラルとすることができる。エンコーダ(600)は、オーディオサンプル(605)を圧縮し、エンコーダ(600)のさまざまなモジュールによって作られる情報を多重化して、Windows(登録商標)Media Audio[「WMA」]フォーマットまたはAdvanced Streaming Format[「ASF」]などのフォーマットでビットストリーム(695)を出力する。その代わりに、エンコーダ(600)が、他の入力フォーマットおよび/または出力フォーマットを扱うことができる。
セレクタ(608)は、オーディオサンプル(605)に関する複数のエンコーディングモードの間で選択する。図6では、セレクタ(608)が、ミックスド/ピュアロスレスコーディングモードとロッシイコーディングモードの間で切り替える。ロスレスコーディングモードには、ミックスド/ピュアロスレスコーダ(672)が含まれ、ロスレスコーディングモードは、通常は、高品質(および高ビットレート)の圧縮に使用される。ロッシイコーディングモードには、ウェイタ(642)およびクォンタイザ(660)などのコンポーネントが含まれ、ロッシイコーディングモードは、通常は調整可能な品質(および制御されたビットレート)の圧縮に使用される。セレクタ(608)での選択判断は、ユーザ入力または他の判断基準に依存する。ある情況(たとえば、ロッシイ圧縮で適当な品質を配信できないか、ビットが過剰に作られる時)では、エンコーダ(600)が、あるフレームまたはフレームの組について、ロッシイコーディングからミックスド/ピュアロスレスコーディングに切り替えることができる。
マルチチャネルオーディオデータのロッシイコーディングについて、マルチチャネルプリプロセッサ(610)は、任意選択として、時間領域オーディオサンプル(605)を再行列化する。いくつかの実施形態で、マルチチャネルプリプロセッサ(610)は、オーディオサンプル(605)を選択的に再行列化して、1つまたは複数のコーディングされたチャネルを捨てるか、エンコーダ(600)内の相互チャネル相関性を増やすが、それでもデコーダ(700)での再構成(ある形での)を可能にする。これによって、エンコーダに、チャネルレベルでの品質に対する追加の制御が与えられる。マルチチャネルプリプロセッサ(610)は、マルチチャネル後処理の命令などのサイド情報を、MUX(690)に送ることができる。いくつかの実施形態でのマルチチャネルプリプロセッサの動作に関する追加の詳細については、「マルチチャネル前処理」という題名のセクションを参照されたい。代替案では、エンコーダ(600)が、別の形のマルチチャネル前処理を実行する。
パーティショナ/タイルコンフィギュアラ(620)は、オーディオ入力サンプル(605)のフレームを、時間依存性サイズ関数およびウィンドウ整形関数(time−varying size and window shaping functions)を有するサブフレームブロック(すなわちウィンドウ)に区分する。サブフレームブロックのサイズおよびウィンドウは、フレーム内の推移信号の検出、コーディングモード、ならびに他の要因に依存する。
エンコーダ(600)が、ロッシイコーディングからミックスド/ピュアロスレスコーディングに切り替える場合に、サブフレームブロックは、理論的にはオーバーラップする必要も、ウィンドウウィング関数を有する必要もない(すなわち、オーバーラップしない長方形のウィンドウブロック)が、ロッシイコーディングされたフレームと他のフレームの間の推移は、特別な扱いを必要とする可能性がある。パーティショナ/タイルコンフィギュアラ(620)は、区分されたデータのブロックを、ミックスド/ピュアロスレスコーダ(672)に出力し、ブロックサイズなどのサイド情報をMUX(690)に出力する。ミックスドまたはピュアのロスレスコーディングされたフレームの区分およびウィンドウイングに関する追加の詳細については、関連特許出願の発明の名称”Unified Lossy and Lossless Audio Compression”の米国特許出願第60/408432号を参照されたい。
エンコーダ(600)が、ロッシイコーディングを使用する時には、可変サイズウィンドウによって、可変時間分解能が可能になる。小さいブロックを用いると、短いがアクティブな推移セグメントで、時間詳細のより多くの保存が可能になる。大きいブロックは、よりよい周波数分解能とより悪い時間分解能を有し、通常は、大きいブロックによって、より長くより少数のアクティブセグメントでのより高い圧縮効率が可能になる。これは、部分的にはフレームヘッダおよびサイド情報が、小さいブロックよりもサイズに比例して少なくなるからであり、部分的にはこれによってよりよい冗長性削減が可能になるからである。ブロックをオーバーラップさせて、そうでなければ後の量子化によって導入される可能性があるブロック間の知覚可能な不連続性を減らすことができる。パーティショナ/タイルコンフィギュアラ(620)は、区分されたデータのブロックを周波数トランスフォーマ(630)に出力し、ブロックサイズなどのサイド情報をMUX(690)に出力する。いくつかの実施形態での推移検出および区分判断基準に関する追加情報については、参照によって本明細書に組み込まれる関連特許出願の発明の名称"Adaptive Window-Size Selection in Transform Coding," の米国特許出願第10/016,918(2001年12月14日出願)を参照されたい。代替案では、パーティショナ/タイルコンフィギュアラ(620)で、フレームをウィンドウに区分する時に、他の区分判断基準またはブロックサイズを使用する。
いくつかの実施形態で、パーティショナ/タイルコンフィギュアラ(620)は、マルチチャネルオーディオのフレームをチャネルごとに区分する。パーティショナ/タイルコンフィギュアラ(620)は、品質/ビットレートから許容される場合に、フレーム内の各チャネルを独立に区分する。これによって、たとえば、パーティショナ/タイルコンフィギュアラ(620)が、より小さいウィンドウを用いて特定のチャネルに現れる推移を分離するが、他のチャネルで周波数分解能または圧縮効率のためにより大きいウィンドウを使用することが可能になる。これによって、チャネルごとに推移を分離することによって圧縮効率を改善することができるが、多くの場合に、個々のチャネル内の区分を指定する追加情報が、必要になる。時間的に同一位置にある同一サイズのウィンドウは、マルチチャネル変換を介するさらなる冗長性削減の資格を有する場合がある。したがって、パーティショナ/タイルコンフィギュアラ(620)は、時間的に同一位置にある同一サイズのウィンドウを、タイルとしてグループ化する。いくつかの実施形態でのタイリングに関する追加の詳細については、「タイル構成」という題名のセクションを参照されたい。
周波数トランスフォーマ(630)は、オーディオサンプルを受け取り、周波数領域のデータに変換する。周波数トランスフォーマ(630)は、周波数係数データのブロックをウェイタ(642)に出力し、ブロックサイズなどのサイド情報をMUX(690)に出力する。周波数トランスフォーマ(630)は、周波数係数とサイド情報の両方を知覚モデラ(640)に出力する。いくつかの実施形態で、周波数トランスフォーマ(630)は、時間に伴って変化する変調ラップド変換(Modulated Lapped Transform)[「MLT」]をサブフレームブロックに適用するが、このMLTは、サブフレームブロックの正弦ウィンドウ関数によって変調されたDCTに似た演算である。代替実施形態では、MLTの他の変形形態またはDCTあるいは、変調ありまたはなしの、オーバーラップありまたはなしの、他のタイプの周波数変換を使用するか、サブバンドコーディングまたはウェーブレットコーディングを使用する。
知覚モデラ(640)によって、人間の聴覚系のプロパティをモデル化して、所与のビットレートの再構成されたオーディオ信号の知覚される品質を改善する。一般に、知覚モデラ(640)は、聴覚モデルに従ってオーディオデータを処理し、その情報をウェイタ(642)に供給し、このウェイタ(642)は、オーディオデータの重みづけ係数を生成するのに使用することができる。知覚モデラ(640)は、さまざまな聴覚モデルのいずれかを使用し、励起パターン情報または他の情報をウェイタ(642)に渡す。
量子化帯域ウェイタ(642)は、知覚モデラ(640)から受け取った情報に基づいて量子化行列の重みづけ係数を生成し、その重みづけ係数を、周波数トランスフォーマ(630)から受け取ったデータに適用する。量子化行列の重みづけ係数には、オーディオデータの複数の量子化帯域のそれぞれの重みが含まれる。量子化帯域は、数またはエンコーダ(600)の他所で使用される臨界帯域からの位置において、同一または異なるものとすることができ、重みづけ係数を、ブロックごとに、振幅および量子化帯域の数において変更することができる。量子化帯域ウェイタ(642)は、係数データの重みづけされたブロックをチャネルウェイタ(644)に出力し、重みづけされた係数の組などのサイド情報をMUX(690)に出力する。重みづけされた係数の組を、さらに効率的な表現のために圧縮することができる。重みづけ係数が、ロッシイ圧縮される場合には、再構成される重みづけ係数が、通常は、係数データのブロックに重みをつけるのに使用される。いくつかの実施形態での重みづけ係数の計算および圧縮に関する追加の詳細については、「量子化および重みづけ」という題名のセクションを参照されたい。代替案では、エンコーダ(600)が、別の形の重みづけを使用するか、重みづけをスキップする。
チャネルウェイタ(644)は、知覚モデラ(640)から受け取った情報およびローカルに再構成された信号の品質に基づいて、チャネルのチャネル固有重みづけ係数(スカラである)を生成する。スカラ重み(量子化ステップ変更子とも称する)を用いると、エンコーダ(600)が、再構成されるチャネルに、近似的に均一の品質を与えられるようになる。チャネル重み係数は、チャネルごとおよびブロックごとに、またはある他のレベルで、振幅を変えることができる。チャネルウェイタ(644)は、係数データの重みづけされたブロックをマルチチャネルトランスフォーマ(650)に出力し、チャネル重み係数の組などのサイド情報をMUX(690)に出力する。流れ図のチャネルウェイタ(644)および量子化帯域ウェイタ(642)は、入れ替えるか、一緒に組み合わせることができる。いくつかの実施形態での重みづけ係数の計算および圧縮に関する追加の詳細については、「量子化および重みづけ」という題名のセクションを参照されたい。代替案では、エンコーダ(600)が、別の形の重みづけを使用するか、重みづけをスキップする。
マルチチャネルオーディオデータに関して、チャネルウェイタ(644)によって作られる雑音形の(noise−shaped)周波数係数データの複数のチャネルが、しばしば相関し、したがって、マルチチャネルトランスフォーマ(650)が、マルチチャネル変換を適用することができる。たとえば、マルチチャネルトランスフォーマ(650)は、タイルのチャネルおよび/または量子化帯域のすべてではなく一部に、マルチチャネル変換を選択的に柔軟に適用する。これによって、マルチチャネルトランスフォーマ(650)に、タイルの比較的相関する部分への変換の適用に対する正確な制御が与えられる。計算的な複雑さを減らすために、マルチチャネルトランスフォーマ(650)は、1レベル変換ではなく階層変換を使用することができる。変換行列に関連するビットレートを減らすために、マルチチャネルトランスフォーマ(650)は、事前定義の行列(たとえば、恒等変換/無変換、アダマール、DCTタイプII)またはカスタム行列を選択的に使用し、カスタム行列に効率的な圧縮を適用する。最後に、マルチチャネル変換は、ウェイタ(642)の下流なので、デコーダ(700)での逆マルチチャネル変換の後のチャネル間で漏れる雑音を知覚できること(たとえば、後続の量子化に起因する)が、逆重みづけによって制御される。いくつかの実施形態でのマルチチャネル変換に関する追加の詳細については、「柔軟なマルチチャネル変換」という題名のセクションを参照されたい。代替案では、エンコーダ(600)が、他の形のマルチチャネル変換を使用するか、まったく変換を行わない。マルチチャネルトランスフォーマ(650)は、MUX(690)へのサイド情報を作って、たとえば、使用されたマルチチャネル変換およびタイルのマルチチャネル変換された部分を示す。
クォンタイザ(660)は、マルチチャネルトランスフォーマ(650)の出力を量子化し、エントロピエンコーダ(670)への量子化された係数データおよびMUX(690)への量子化ステップサイズを含むサイド情報を作る。図6では、クォンタイザ(660)が、タイルごとに量子化係数を計算する適応式均一スカラクォンタイザである。タイル量子化係数を、量子化ループの反復ごとに変更して、エントロピエンコーダ(670)出力のビットレートに影響を及ぼすことができ、チャネルごとの量子化ステップ変更子を使用して、チャネルの間の再構成品質のバランスをとることができる。いくつかの実施形態での量子化に関する追加の詳細については、「量子化および重みづけ」という題名のセクションを参照されたい。代替実施形態では、クォンタイザが、不均一クォンタイザ、ベクトルクォンタイザ、および/または非適応クォンタイザであるか、異なる形の適応均一スカラ量子化を使用する。他の代替実施形態では、クォンタイザ(660)、量子化帯域ウェイタ(642)、チャネルウェイタ(644)、およびマルチチャネルトランスフォーマ(650)が、融合され、融合されたモジュールが、さまざまな重みをすべて一緒に判定する。
エントロピエンコーダ(670)は、クォンタイザ(660)から受け取った量子化された係数データをロスレス圧縮する。いくつかの実施形態で、エントロピエンコーダ(670)は、関連特許出願の発明の名称"Entropy Coding by Adapting Coding Between Level and Run Length/Level Modes"の米国特許出願第60/408,538号に記載の適応エントロピコーディングを使用する。代替案では、エントロピエンコーダ(670)が、マルチレベルランレングスコーディング、可変長対可変長コーディング、ランレングスコーディング、ハフマンコーディング、辞書コーディング、算術コーディング、LZコーディング、または他のエントロピコーディング手法の他の形または組合せを使用する。エントロピエンコーダ(670)は、オーディオ情報のエンコーディングに費やされるビット数を計算し、この情報をレート/品質コントローラ(680)に渡すことができる。
コントローラ(680)は、クォンタイザ(660)と共に働いて、エンコーダ(600)の出力のビットレートおよび/または品質を調整する。コントローラ(680)は、エンコーダ(600)の他のモジュールから情報を受け取り、受け取った情報を処理して、現在の条件に対して所望の量子化係数を判定する。コントローラ(680)は、品質制約および/またはビットレート制約を満足するという目標をもって、クォンタイザ(660)に量子化係数を出力する。
ミックスド/ピュアロスレスコーダ(672)および関連エントロピエンコーダ(674)は、ミックスド/ピュアロスレスコーディングモードでオーディオデータを圧縮する。エンコーダ(600)は、シーケンス全体にミックスド/ピュアロスレスコーディングモードを使用するか、フレームごと、ブロックごと、タイルごと、または他の基準でコーディングモードを切り替える。ミックスド/ピュアロスレスコーディングモードに関する追加の詳細については、関連特許出願の発明の名称”Unified Lossy and Lossless Audio Compression”の米国特許出願第60/408432号を参照されたい。代替案では、エンコーダ(600)が、ミックスドおよび/またはピュアのロスレスエンコーディングの他の手法を使用する。
MUX(690)は、オーディオエンコーダ(600)の他のモジュールから受け取ったサイド情報を、エントロピエンコーダ(670、674)から受け取ったエントロピエンコーディングされたデータと多重化する。MUX(690)は、WMAフォーマットまたはオーディオデコーダが認識する別のフォーマットで情報を出力する。MUX(690)には、エンコーダ(600)によって出力されるビットストリーム(695)を保管する仮想バッファが含まれる。仮想バッファは、比較的一定のビットレートでデータを出力し、品質は、入力の複雑さの変化に起因して変化する可能性がある。バッファの現在の満杯度および他の特性を、コントローラ(680)によって使用して、品質および/またはビットレートを調整することができる。代替案では、出力ビットレートが、経時的に変化することができ、品質が、比較的一定に保たれる。あるいは、出力ビットレートが、特定のビットレート未満に制限されるだけであり、このビットレートは、一定にまたは時間的に変換するのいずれかである。
B.一般化されたオーディオデコーダ
図7を参照すると、一般化されたオーディオデコーダ(700)に、ビットストリームデマルチプレクサ[「DEMUX」](710)、1つまたは複数のエントロピデコーダ(720)、ミックスド/ピュアロスレスデコーダ(722)、タイル構成デコーダ(730)、逆マルチチャネルトランスフォーマ(740)、逆クォンタイザ/ウェイタ(750)、逆周波数トランスフォーマ(760)、オーバーラッパ/アダー(770)、およびマルチチャネルポストプロセッサ(780)が含まれる。デコーダ(700)にはレート/品質制御または知覚モデリングのモジュールが含まれないので、デコーダ(700)は、エンコーダ(600)より多少単純である。
デコーダ(700)は、WMAフォーマットまたは別のフォーマットの圧縮オーディオ情報のビットストリーム(705)を受け取る。ビットストリーム(705)には、エントロピエンコーディングされたデータならびにサイド情報が含まれ、デコーダ(700)は、それらからオーディオサンプル(795)を再構成する。
DEMUX(710)は、ビットストリーム(705)の情報を解析し、情報をデコーダ(700)のモジュールに送る。DEMUX(710)には、オーディオの複雑さの変動、ネットワークジッタ、および/または他の要因に起因するビットレートの短期間変動を補償するために、1つまたは複数のバッファが含まれる。
1つまたは複数のエントロピデコーダ(720)は、DEMUX(710)から受け取るエントロピコードをロスレス圧縮解除する。エントロピデコーダ(720)は、通常は、エンコーダ(600)で使用されるエントロピエンコード手法の逆を適用する。説明を単純にするために、1つのエントロピデコーダモジュールを図7に示したが、異なるエントロピデコーダを、ロッシイコーディングモードとロスレスコーディングモードに使用することができ、1つのモードの中で異なるエントロピデコーダを使用することもできる。また、説明を単純にするために、図7には、モード選択論理が示されていない。ロッシイコーディングモードで圧縮されたデータをデコードする時に、エントロピデコーダ(720)は、量子化された周波数係数データを作る。
ミックスド/ピュアロスレスデコーダ(722)および関連するエントロピデコーダ(720)は、ミックスド/ピュアロスレスコーディングモードのロスレスエンコーディングされたオーディオデータを圧縮解除する。ミックスド/ピュアロスレスデコーディングモードの圧縮解除に関する追加の詳細については、関連特許出願の発明の名称”Unified Lossy and Lossless Audio Compression”の米国特許出願第60/408432号を参照されたい。代替案では、デコーダ(700)が、ミックスドおよび/またはピュアのロスレスデコーディングの他の手法を使用する。
タイル構成デコーダ(730)は、DEMUX(710)から、フレームのタイルのパターンを示す情報を受け取り、必要な場合にデコードする。タイルパターン情報は、エントロピエンコーディングされるか、他の形でパラメータ化される可能性がある。タイル構成デコーダ(730)は、タイルパターン情報を、デコーダ(700)のさまざまな他のモジュールに渡す。いくつかの実施形態でのタイル構成デコーディングに関する追加の詳細については、「タイル構成」という題名のセクションを参照されたい。代替案では、デコーダ(700)が、フレーム内のウィンドウパターンをパラメータ化する他の手法を使用する。
逆マルチチャネルトランスフォーマ(740)は、エントロピデコーダ(720)からの量子化された周波数係数データならびにタイル構成デコーダ(730)からのタイルパターン情報および、たとえば使用されたマルチチャネル変換およびタイルの変換された部分を示す、DEMUX(710)からのサイド情報を受け取る。この情報を使用して、逆マルチチャネルトランスフォーマ(740)は、必要に応じて変換行列を圧縮解除し、1つまたは複数の逆マルチチャネル変換をオーディオデータに選択的に柔軟に適用する。逆クォンタイザ/ウェイタ(750)に間する逆マルチチャネルトランスフォーマ(740)の配置は、チャネルにまたがって漏れる可能性がある量子化雑音を整形するのに役立つ。いくつかの実施形態の逆マルチチャネルトランスフォーマに関する追加の詳細については、「柔軟なマルチチャネル変換」という題名のセクションを参照されたい。
逆クォンタイザ/ウェイタ(750)は、タイルおよびチャネルの量子化係数ならびに量子化行列をDEMUX(710)から受け取り、量子化された周波数係数データを逆マルチチャネルトランスフォーマ(740)から受け取る。逆クォンタイザ/ウェイタ(750)は、受け取った量子化係数/行列情報を必要に応じて圧縮解除し、逆量子化および重みづけを実行する。いくつかの実施形態での逆量子化および重みづけの追加の詳細については、「量子化および重みづけ」という題名のセクションを参照されたい。代替実施形態では、逆クォンタイザ/ウェイタによって、エンコーダで使用される他の量子化手法の逆が適用される。
逆周波数トランスフォーマ(760)は、逆クォンタイザ/ウェイタ(750)によって出力される周波数係数データならびにDEMUX(710)からのサイド情報およびタイル構成デコーダ(730)からのタイルパターン情報を受け取る。逆周波数トランスフォーマ(760)は、エンコーダで使用される周波数変換の逆を適用し、ブロックをオーバーラッパ/アダー(770)に出力する。
タイル構成デコーダ(730)からタイルパターン情報を受け取るほかに、オーバーラッパ/アダー(770)は、逆周波数トランスフォーマ(760)および/またはミックスド/ピュアロスレスデコーダ(722)からデコードされた情報も受け取る。オーバーラッパ/アダー(770)は、必要に応じてオーディオデータをオーバーラップさせ、加算し、異なるモードでエンコードされたオーディオデータのフレームまたは他のシーケンスをインターリーブする。ミックスドまたはピュアのロスレスコーディングされたフレームのオーバーラップ、加算、およびインターリーブに関する追加の詳細は、関連特許出願の発明の名称”Unified Lossy and Lossless Audio Compression”の米国特許出願第60/408432号を参照されたい。代替案では、デコーダ(700)が、フレームのオーバーラップ、加算、およびインターリーブに他の手法を使用する。
マルチチャネルポストプロセッサ(780)は、任意選択として、オーバーラッパ/アダー(770)によって出力される時間領域オーディオサンプルを再行列化する。マルチチャネルポストプロセッサは、オーディオデータを選択的に再行列化して、再生用のファントムチャネルを作成し、スピーカの間でのチャネルの空間的回転、より少数のスピーカでの再生または他の目的のためのチャネルの折り曲げなどの特殊効果を実行する。ビットストリーム制御された後処理について、後処理変換行列は、経時的に変化し、シグナリングされるかビットストリーム(705)に含まれる。いくつかの実施形態でのマルチチャネルポストプロセッサの動作に関する追加の詳細は、「マルチチャネル後処理」という題名のセクションを参照されたい。代替案では、デコーダ(700)が、別の形のマルチチャネル後処理を実行する。
III.マルチチャネル前処理
いくつかの実施形態で、図6のエンコーダ(600)などのエンコーダが、時間領域の入力オーディオサンプルに対してマルチチャネル前処理を実行する。
一般に、入力としてN個のソースオーディオチャネルがある時に、エンコーダによって作られるコーディングされたチャネルの数もNになる。コーディングされたチャネルが、ソースチャネルと1対1対応する場合があり、あるいは、コーディングされたチャネルが、マルチチャネル変換コーディングされたチャネルである場合がある。しかし、ソースのコーディングの複雑さによって圧縮が困難になる時、またはエンコーダバッファが満杯である時には、エンコーダが、元の入力オーディオチャネルの1つまたは複数を変更するか捨てる(すなわちコーディングしない)場合がある。これは、コーディングの複雑さを減らし、オーディオの全体的な知覚される品質を改善するために行うことができる。品質駆動の前処理について、エンコーダは、測定されたオーディオ品質に反応してマルチチャネル前処理を実行して、全体的なオーディオ品質およびチャネルセパレーションを滑らかに制御する。
たとえば、エンコーダは、マルチチャネルオーディオイメージを変更して、1つまたは複数のチャネルをよりクリティカルでないようにすることができ、その結果、チャネルがエンコーダで捨てられるが、デコーダで「ファントムチャネル」として再構成されるようになる。チャネルの徹底的な削除は、品質に劇的に影響する可能性があり、したがって、これは、コーディングの複雑さが非常に高いか、バッファが非常に満杯であり、他の手段を介して良い品質の再生を達成できない時に限って行われる。
エンコーダは、コーディングされるチャネルの数が、出力のチャネル数より少ない時にどの処置を講ずるかをデコーダに示すことができる。その後、マルチチャネル後処理変換をデコーダで使用して、下の「マルチチャネル後処理」という題名のセクションで説明するように、ファントムチャネルを作成することができる。あるいは、エンコーダが、別の目的のマルチチャネル後処理を実行するようにデコーダに知らせることができる。
図8に、マルチチャネル前処理の一般化された手法(800)を示す。エンコーダが、時間領域マルチチャネルオーディオデータ(805)に対するマルチチャネル前処理を実行し(810)、時間領域の変換されたオーディオデータ(815)を作る。たとえば、前処理に、一般的なN対N変換が含まれ、このNは、チャネルの数である。エンコーダは、N個のサンプルに行列Aをかける。
pre=Aprepre (4)
ここで、xpreおよびypreは、前処理に入力されるN個の入力および前処理から出力されるN個の出力であり、Apreは、実数(すなわち連続的な)値の要素を有する一般的なN×N変換行列である。行列Apreは、xpreと比較してypreの相互チャネル相関性を人工的に増やすように選択することができる。これによって、エンコーダの残りに関する複雑さが減るが、チャネルセパレーションの低下が犠牲になる。
出力ypreが、エンコーダの残りに供給され、これによって、図6に示された手法または他の圧縮手法を使用してデータがエンコードされ(820)、エンコードされたマルチチャネルオーディオデータ(825)が作られる。
エンコーダおよびデコーダによって使用される構文(syntax)によって、一般的なまたは事前定義の後処理マルチチャネル変換行列の記述が可能になり、この後処理マルチチャネル変換行列は、フレームごとに変更するか、オン/オフにすることができる。エンコーダは、この柔軟性を使用して、ステレオ/サラウンドイメージ減損を制限し、相互チャネル相関性を人工的に増やすことによって、ある情況でチャネルセパレーションとよりよい総合的な品質をトレードオフする。代替案では、デコーダおよびエンコーダが、マルチチャネル前処理およびマルチチャネル後処理の別の構文、たとえば、フレームごと以外の基礎での変換行列の変更を可能にする構文を使用する。
図9aから図9eに、ある情況の下でエンコーダで相互チャネル相関性を人工的に増やすのに使用されるマルチチャネル前処理変換行列(900から904)を示す。エンコーダは、前処理行列の間で切り替えて、5.1チャネル再生環境で、左チャネル、右チャネル、および中央チャネルの間、および左後ろチャネルと右後ろチャネルの間で相互チャネル相関性を人工的にどれほど増やすかを変更する。
一実施形態で、低ビットレートで、エンコーダが、ある時間の期間にわたって再構成されたオーディオの品質を評価し、その結果に応じて、前処理行列の1つを選択する。エンコーダによって評価される品質測定は、雑音興奮比率[「NER」]であり、これは、元のディジタルオーディオクリップのエネルギに対する再構成されたオーディオクリップの雑音パターンのエネルギの比である。低いNER値は、良い品質を示し、高いNER値は、低い品質を示す。エンコーダは、1つまたは複数の前にエンコードされたフレームのNERを評価する。NERおよび他の品質測定に関する追加情報については、参照によって本明細書に組み込まれる関連特許出願の発明の名称"Techniques for Measurement of Perceptual Audio Quality," の米国特許出願第10/017,861号(2001年12月14日出願)を参照されたい。代替案では、エンコーダが、別の品質測定、バッファ満杯度、および/またはある他の判断基準を使用して、前処理変換行列を選択し、あるいは、エンコーダが、マルチチャネルオーディオの異なる期間を評価する。
図9aから図9eに示された例に戻ると、低ビットレートで、エンコーダは、オーディオクリップの特定の範囲のNERnに基づいて、前処理変換行列をゆっくり変更する。エンコーダは、nの値を閾値nlowおよびnhighと比較するが、これらの閾値は、実装依存である。一実施形態では、nlowおよびnhighが、所定の値nlow=0.05およびnhigh=0.1を有する。代替案では、nlowおよびnhighが、ビットレートまたは他の判断基準に反応して経時的に変化する1つまたは複数の異なる値を有し、あるいは、エンコーダが、異なる数の行列の間で切り替える。
低い値のn(たとえば、n≦nlow)は、良い品質のコーディングを示す。したがって、エンコーダは、図9aに示された単位行列Alow(900)を使用し、効果的に前処理をオフにする。
その一方で、高い値のn(たとえば、n≧nhigh)は、低い品質のコーディングを示す。したがって、エンコーダは、図9cに示された行列Ahigh,1(902)を使用する。行列Ahigh,1(902)によって、激しいサラウンドイメージひずみが導入されるが、それと同時に、左チャネル、右チャネル、および中央チャネルの間の非常に高い相関が押し付けられ、これによって、複雑さを減らすことによって後続のコーディング効率が改善される。マルチチャネル変換された中央チャネルは、元の左チャネル、右チャネル、および中央チャネルの平均である。行列Ahigh,1(902)によって、後チャネルの間のチャネルセパレーションも妥協して処理され、入力の左後ろチャネルと右後ろチャネルの平均がとられる。
中間の値のn(たとえば、nlow<n<nhigh)は、中間の品質のコーディングを示す。したがって、エンコーダは、図9bに示された中間行列Ainter,1(901)を使用することができる。中間行列Ainter,1(901)では、係数αによって、nlowとnhighの間のnの相対位置が測定される。
Figure 2004264811
中間行列Ainter,1(901)は、単位行列Alow(900)から低品質行列Ahigh,1(902)へ徐々に推移する。
図9bおよび図9cに示された行列Ainter,1(901)およびAhigh,1(902)について、エンコーダは、後に、エンコーダが相互チャネル相関性を人工的に増やしたチャネルの間の冗長性を活用し、エンコーダは、これらのチャネルに関してマルチチャネル後処理を実行するようにエンコーダに指示する必要がない。
デコーダが、マルチチャネル後処理を実行する能力を有する時には、エンコーダは、中央チャネルの再構成をデコーダに委任することができる。そうである場合に、NER値nによって、低い品質のコーディングが示される時に、エンコーダは、図9eに示された行列Ahigh,2(904)を使用するが、この行列を用いると、入力中央チャネルが左右のチャネルに漏れる。出力では、中央チャネルが0であり、コーディングの複雑さが減る。
Figure 2004264811
エンコーダは、前処理変換行列Ahigh,2(904)を使用する時に、デコードされた左右のチャネルの平均をとることによってファントム中央を作成するようにデコーダに(ビットストリームを介して)指示する。エンコーダでの後のマルチチャネル変換では、平均をとられた後ろの左右のチャネル(後処理なし)の間の冗長性を活用することができ、あるいは、エンコーダが、後ろの左右のチャネルに関するあるマルチチャネル後処理を実行するようにデコーダに指示することができる。
NER値nによって、中間の品質のコーディングが示される時には、エンコーダは、図9dに示された中間行列Ainter,2(903)を使用して、図9aおよび9eに示された行列の間で推移することができる。
図10に、フレームごとに変換行列が潜在的に変化するマルチチャネル前処理の手法(1000)を示す。変換行列の変更は、注意深く処理されない場合に、最終出力の可聴雑音(たとえばポンという音)につながる可能性がある。ポンという雑音を導入しないようにするために、エンコーダは、ある変換行列から別の変換行列へ、フレームの間に徐々に推移する。
エンコーダは、まず、上で説明した前処理変換行列をセットする(1010)。次に、エンコーダは、現在のフレームの行列が、前のフレーム(前のフレームがある場合に)の行列と異なるかどうかを判定する(1020)。現在の行列が同一であるか、前の行列がない場合には、エンコーダは、現在のフレームの入力オーディオサンプルに行列を適用する(1030)。そうでない場合には、エンコーダは、現在のフレームの入力オーディオサンプルにブレンドされた変換行列を適用する(1040)。ブレンディング関数は、実施形態に依存する。一実施形態では、現在のフレームのサンプルiで、エンコーダが、短期間ブレンドされた行列Apre,iを使用する。
Figure 2004264811
ここで、Apre,prevおよびApre,currentは、それぞれ前のフレームおよび現在のフレームの前処理行列であり、NumSamplesは、現在のフレームのサンプル数である。代替案では、エンコーダが、別のブレンディング関数を使用して、前処理変換行列の不連続性を平滑化する。
次に、エンコーダは、図6に示した手法または他の圧縮手法を使用して、フレームのマルチチャネルオーディオデータをエンコードする(1050)。エンコーダは、フレームごとに手法(1000)を繰り返す。代替案では、エンコーダが、他の基礎に基づいてマルチチャネル前処理を変更する。
IV.タイル構成
いくつかの実施形態で、図6のエンコーダ(600)などのエンコーダが、マルチチャネルオーディオのウィンドウを、後続のエンコーディングのためにタイルにグループ化する。これによって、フレームのチャネルのさまざまな組合せに対するマルチチャネル変換を可能にしながら、エンコーダに、フレームの異なるチャネルについて異なるウィンドウ構成を使用する柔軟性が与えられる。図7のデコーダ(700)などのデコーダが、デコード中にタイルを処理する。
各チャネルが、他のチャネルと独立のウィンドウ構成を有することができる。同一の開始時刻および停止時刻を有するウィンドウは、タイルの一部とみなされる。タイルは、1つまたは複数のチャネルを有することができ、エンコーダは、タイル内のチャネルに関してマルチチャネル変換を実行する。
図11aに、ステレオオーディオのフレームの例のタイル構成(1100)を示す。図11aでは、各タイルに単一のウィンドウが含まれる。ステレオオーディオのどちらのチャネルのウィンドウも、他のチャネルのウィンドウと同一の時刻に始まらず、停止しない。
図11bに、5.1チャネルオーディオのフレームの例のタイル構成(1101)を示す。タイル構成(1101)には、0から6までの番号をつけられた7つのタイルが含まれる。タイル0には、チャネル0、2、3、および4からのサンプルが含まれ、タイル0は、フレームの最初の1/4にまたがる。タイル1には、チャネル1からのサンプルが含まれ、タイル1は、フレームの最初の1/2にまたがる。タイル2には、チャネル5からのサンプルが含まれ、タイル2は、フレーム全体にまたがる。タイル3は、タイル0に似ているが、フレームの第2の1/4にまたがる。タイル4および6には、チャネル0、2、および3のサンプルが含まれ、タイル4および6は、それぞれ、フレームの3番目の1/4および4番目の1/4にまたがる。最後に、タイル5には、チャネル1および4からのサンプルが含まれ、タイル5は、フレームの後半分にまたがる。図11bからわかるように、特定のタイルに、不連続なチャネルのウィンドウを含めることができる。
図12に、マルチチャネルオーディオのフレームのタイルを構成する一般化された手法(1200)を示す。エンコーダは、フレーム内のチャネルに関してウィンドウ構成をセットし(1210)、各チャネルを可変サイズウィンドウに区分して、時間分解能と周波数分解能をトレードオフする。たとえば、エンコーダのパーティショナ/タイルコンフィギュアラが、フレーム内の他のチャネルと独立に各チャネルを区分する。
次に、エンコーダは、異なるチャネルからのウィンドウをフレームのタイルにグループ化する(1220)。たとえば、エンコーダは、ウィンドウが同一の開始位置および同一の終了位置を有する場合に、異なるチャネルからのウィンドウを単一のタイルに置く。代替案では、エンコーダは、異なるチャネルのどの部分を一緒にタイルにグループ化するかを判定するのに、開始位置/終了位置以外の判断基準を使用するか、開始位置/終了位置に加えて判断基準を使用することができる。
一実施形態では、エンコーダが、フレームに関するウィンドウ構成のセット(1210)の後に(それと独立に)、タイルのグループ化(1220)を実行する。他の実施形態では、エンコーダが、ウィンドウ構成をセットする(1210)のと同時にウィンドウをタイルにグループ化し(1220)て、たとえば、時間相関を優先する(より長いウィンドウを使用する)か、チャネル相関を優先する(より多くのチャネルを単一のタイルに置く)か、強制的にウィンドウを特定のタイルの組にあてはめることによってタイルの個数を制御する。
次に、エンコーダは、エンコードされたオーディオデータと共に出力するために、フレームのタイル構成情報を送る(1230)。たとえば、エンコーダのパーティショナ/タイルコンフィギュアラが、タイルサイズおよびタイルのチャネルメンバ情報をMUXに送る。代替案では、エンコーダが、タイル構成を指定する他の情報を送る。一実施形態では、エンコーダが、タイルグループ化(1220)の後にタイル構成情報を送る(1230)。他の実施形態では、エンコーダが、これらの処置を同時に実行する
図13に、特定のビットストリーム構文による、マルチチャネルオーディオのフレームに関してタイルを構成し、タイル構成情報を送る手法(1300)を示す流れ図である。図13には、情報をビットストリームに入れるためにエンコーダによって実行される手法(1300)が示され、デコーダは、対応する手法(フラグを読み取る、特定のタイルに関する構成情報を得る、など)を実行して、ビットストリーム構文に従ってフレームのタイル構成情報を検索する。代替案では、デコーダおよびエンコーダが、図13に示されたオプションの1つまたは複数に関する別の構文、たとえば、異なるフラグまたは異なる順序付けを使用する構文を使用する。
エンコーダは、当初は、フレームのチャネルのどれもがウィンドウに分割されないかどうかを検査する(1310)。そうである場合には、エンコーダは、フラグビット(どのチャネルも分割されないことを示す)を送り(1312)、終了する。したがって、単一のビットによって、所与のフレームが単一のタイルであるか複数のタイルを有するかが示される。
その一方で、少なくとも1つのチャネルがウィンドウに分割される場合に、エンコーダは、フレームのすべてのチャネルが同一のウィンドウ構成を有するか否かを検査する(1320)。そうである場合には、エンコーダは、フラグビット(すべてのチャネルが同一のウィンドウ構成を有し、フレームの各タイルがすべてのチャネルを有することを示す)とタイルサイズのシーケンスとを送り(1322)、終了する。したがって、単一のビットによって、チャネルのすべてが同一の構成を有する(通常のエンコーダビットストリームと同様に)か、柔軟なタイル構成を有するかが示される。
少なくともいくつかのチャネルが異なるウィンドウ構成を有する場合に、エンコーダは、フレームのサンプル位置をスキャンして、同一の開始位置および同一の終了位置の両方を有するウィンドウを識別する。しかし、まず、エンコーダは、フレームのすべてのサンプル位置をグループ化されないものとしてマークする(1330)。次に、エンコーダは、チャネル/時間スキャンパターンに従って、フレームの次のグループ化されていないサンプル位置をスキャンする(1340)。一実施形態では、エンコーダが、グループ化されていないサンプル位置を探して特定の時刻のすべてのチャネルをスキャンし、その後、時間的に次のサンプル位置について繰り返す。他の実施形態では、エンコーダが、別のスキャンパターンを使用する。
検出されたグループ化されていないサンプル位置について、エンコーダは、類似するウィンドウを一緒にタイルにグループ化する(1350)。具体的に言うと、エンコーダは、検出されたグループ化されていないサンプル位置を含むウィンドウの開始位置で始まり、検出されたグループ化されていないサンプル位置を含むウィンドウと同一の位置で終わるウィンドウをグループ化する。たとえば、図11bに示されたフレームでは、エンコーダは、まず、チャネル0の先頭でサンプル位置を検出する。エンコーダは、チャネル0、2、3、および4からの1/4フレーム長のウィンドウを、一緒にタイルにグループ化する。というのは、これらのウィンドウのそれぞれが、タイルの他のウィンドウと同一の開始位置および同一の終了位置を有するからである。
次に、エンコーダは、エンコードされたオーディオデータと共に出力するために、タイルを指定するタイル構成情報を送る(1360)。タイル構成情報には、タイルサイズと、タイル内のその点でグループ化されていないサンプル位置を有するどのチャネルがタイルに含まれるかを示すマップが含まれる。チャネルマップには、タイルに可能なチャネルごとに1ビットを含めることができる。タイル情報のシーケンスに基づいて、デコーダは、タイルがフレーム内で始まり、終わるかどうかを判定する。エンコーダは、どのチャネルがタイルに存在することができるかを考慮に入れることによって、チャネルのビットレートを下げる。たとえば、図11bのタイル0の情報には、タイルサイズと、チャネル0、2、3、および4がタイルの一部であることを示すバイナリパターン「101110」が含まれる。その点の後で、チャネル1および5のサンプル位置だけが、グループ化されていない。したがって、タイル1の情報には、タイルサイズと、チャネル1がタイルの一部であるが、チャネル5がそうでないことを示すバイナリパターン「10」が含まれる。これによって、バイナリパターンの4ビットが節約される。次に、タイル2のタイル情報に、タイルサイズだけが含まれる(チャネルマップは含まれない)。というのは、チャネル5が、タイル2で始まるウィンドウを有することができる唯一のチャネルであるからである。タイル3のタイル情報には、タイルサイズと、バイナリパターン「1111」が含まれる。というのは、チャネル1および5が、タイル3の範囲内のグループ化された位置を有するからである。代替案では、エンコーダおよびデコーダが、別の手法を使用して、構文でチャネルパターンを知らせる。
次に、エンコーダは、タイルに含まれるウィンドウのサンプル位置を、グループ化されたものとしてマークし(1370)、継続するか否かを判定する(1380)。グループ化されていないサンプル位置がフレームにない場合には、エンコーダは終了する。そうでない場合には、エンコーダは、チャネル/時間スキャンパターンに従って、フレームの次のグループ化されていないサンプル位置をスキャンする(1340)。
V.柔軟なマルチチャネル変換
いくつかの実施形態で、図6のエンコーダ(600)などのエンコーダが、相互チャネル相関性を効果的に活用する柔軟なマルチチャネル変換を実行する。図7のデコーダ(700)などのデコーダが、対応する逆マルチチャネル変換を実行する。
具体的に言うと、エンコーダおよびデコーダは、下記の1つまたは複数を行って、異なる情況でマルチチャネル変換を改善する。
1.エンコーダは、知覚的重みづけの後にマルチチャネル変換を実行し、デコーダは、逆重みづけの前に、対応する逆マルチチャネル変換を実行する。これによって、逆マルチチャネル変換後のチャネルにまたがる量子化ノイズのアンマスキングが減る。
2.エンコーダおよびデコーダは、マルチチャネル変換のためにチャネルをグループ化して、どのチャネルが一緒に変換されるかを制限する。
3.エンコーダおよびデコーダは、どの帯域が一緒に変換されるかを制御するために、周波数帯域レベルでマルチチャネル変換を選択的にオン/オフにする。
4.エンコーダおよびデコーダは、階層マルチチャネル変換を使用して、計算の複雑さを(特にデコーダで)制限する。
5.エンコーダおよびデコーダは、事前定義のマルチチャネル変換行列を使用して、変換行列の指定に使用されるビットレートを減らす。
6.エンコーダおよびデコーダは、ビット効率のために、量子化されたギブンス回転ベースの因数分解パラメータを使用して、マルチチャネル変換行列を指定する。
A.重みづけされたマルチチャネルオーディオに対するマルチチャネル変換
いくつかの実施形態で、エンコーダは、知覚的重みづけの後にマルチチャネル変換を位置付け(デコーダは、逆重みづけの前に逆マルチチャネル変換を位置付け)、チャネル間の漏れ信号が、制御され、測定可能であり、元の信号に類似するスペクトルを有するようにする。
図14に、エンコーダで知覚的重みづけの後に1つまたは複数のマルチチャネル変換を実行する手法(1400)を示す。エンコーダは、マルチチャネルオーディオに知覚的に重みをつけ(1410)、たとえば、周波数領域のマルチチャネルオーディオに重みづけ係数を適用する。いくつかの実施形態で、エンコーダは、マルチチャネル変換の前に、重みづけ係数とチャネルごとの量子化ステップ変更子の両方をマルチチャネルオーディオデータに適用する。
次に、エンコーダは、たとえば下で説明するように、重みをつけられたオーディオデータに対する1つまたは複数のマルチチャネル変換を実行する(1420)。最後に、エンコーダは、マルチチャネル変換されたオーディオデータを量子化する(1430)。
図15に、デコーダで逆重みづけの前に逆マルチチャネル変換を実行する手法(1500)を示す。デコーダは、たとえば下で説明するように、量子化されたオーディオデータに対して1つまたは複数の逆マルチチャネル変換を実行する(1510)。具体的に言うと、デコーダは、特定の周波数インデックスの複数のチャネルからのサンプルをベクトルxmcに集め、逆マルチチャネル変換Amcを実行して、出力ymcを生成する。
mc=Amc・xmc (7)
その後、デコーダは、マルチチャネルオーディオを逆量子化し、逆重みづけし(1520)、マスクによって逆マルチチャネル変換の出力をカラーリングする。したがって、チャネルにまたがって発生する(量子化に起因する)漏れが、スペクトルにおいて整形され、その結果、漏れた信号の可聴性が、測定可能かつ制御可能であり、所与の再構成されたチャネルでの他のチャネルの漏れが、所与のチャネルの元の壊されない信号と同様にスペクトルにおいて整形される(いくつかの実施形態で、チャネルごとの量子化ステップサイズ変更子によって、エンコーダが、再構成される信号の品質がすべての再構成されるチャネルにまたがってほぼ同一になるようにすることを可能にすることもできる)。
B.チャネルグループ
いくつかの実施形態で、エンコーダおよびデコーダが、マルチチャネル変換のためにチャネルをグループ化して、一緒に変換されるチャネルを制限する。たとえば、タイル構成を使用する実施形態では、エンコーダが、タイルのどのチャネルが相関するかを判定し、相関するチャネルをグループ化する。代替案では、エンコーダおよびデコーダが、タイル構成を使用しないが、フレームまたは他のレベルでチャネルをグループ化する。
図16に、一実施形態でマルチチャネル変換についてタイルのチャネルをグループ化する手法(1600)を示す。この手法(1600)では、エンコーダが、チャネルの信号の間の対単位の相関ならびにいくつかの場合に帯域の間の相関を考慮する。代替案では、エンコーダが、マルチチャネル変換についてチャネルをグループ化する時に、他のおよび/または追加の要因を考慮する。
まず、エンコーダは、タイルのチャネルを得る(1610)。たとえば、図11bに示されたタイル構成では、タイル3が、その中に4つのチャネルすなわち0、2、3、および4を有する。
エンコーダは、チャネルの信号の間の対単位の相関を計算し(1620)、それ相応にチャネルをグループ化する(1630)。図11bのタイル3について、チャネル0および2が、対単位で相関するが、この両方のチャネルが、チャネル3またはチャネル4と対単位で相関せず、チャネル3が、対単位でチャネル4と相関しないと仮定する。エンコーダは、チャネル0および2を一緒にグループ化し(1630)、チャネル3を別のグループに入れ、チャネル4をさらに別のグループに入れる。
グループのどのチャネルとも対単位で相関しないチャネルが、それでもそのグループとの互換性を有する場合がある。したがって、グループとの互換性がないチャネルについて、エンコーダは、任意選択として、帯域レベルでの互換性を検査し(1640)、それ相応にチャネルの1つまたは複数のグループを調整する(1650)。具体的に言うと、これによって、ある帯域でグループとの互換性があるが、他の帯域で非互換であるチャネルが識別される。たとえば、図11bのタイル3のチャネル4が、実際にはほとんどの帯域でチャネル0および2と互換であるが、少数の帯域での非互換性のゆえに、対単位の相関結果が歪曲されると仮定する。エンコーダは、グループを調整して(1650)、チャネル0、2、および4を一緒にし、チャネル3をそれ自体のグループに残す。エンコーダは、いくつかのチャネルが「全体的に」相関するが、非互換帯域を有する時に、このようなテストを実行することもできる。これらの非互換帯域で変換をオフにすることによって、実際にマルチチャネル変換コーディングされる帯域の間の相関が改善され、したがって、コーディング効率が改善される。
所与のタイルのチャネルは、1つのチャネルグループに属する。チャネルグループのチャネルが、連続的である必要はない。単一のタイルに、複数のチャネルグループを含めることができ、各チャネルグループが、異なる関連するマルチチャネル変換を有することができる。どのチャネルが互換性を有するかを判断した後に、エンコーダは、チャネルグループ情報をビットストリームに入れる。
図17に、エンコーダがチャネルグループを計算する方法に関係のない、特定のビットストリーム構文によるビットストリームからのタイルのチャネルグループ情報およびマルチチャネル変換情報の検索の手法(1700)を示す。図17には、ビットストリームから情報を検索するためにデコーダによって実行される手法(1700)が示され、エンコーダは、対応する手法を実行して、ビットストリーム構文に従って、タイルのチャネルグループ情報およびマルチチャネル変換情報をフォーマットする。代替案では、デコーダおよびエンコーダが、図17に示されたオプションの1つまたは複数について別の構文を使用する。
まず、デコーダは、手法(1700)で使用される複数の変数を初期化する。デコーダは、タイル#ChannelsInTileのチャネル数と等しくなるように#ChannelsToVisitをセットし(1710)、チャネルグループ数#ChannelGroupsに0をセットする(1712)。
デコーダは、#ChannelsToVisitが2を超えるかどうかを検査する(1720)。そうでない場合には、デコーダは、#ChannelsToVisitが2と等しいかどうかを検査する(1730)。そうである場合には、デコーダは、たとえば下で説明する手法を使用して、2チャネルのグループのマルチチャネル変換をデコードする(1740)。構文では、各チャネルグループが、異なるマルチチャネル変換を有することができる。その一方で、#ChannelsToVisitが1または0と等しい場合には、デコーダは、マルチチャネル変換をデコードせずに終了する。
#ChannelsToVisitが2を超える場合には、デコーダは、タイルのグループのチャネルマスクをデコードする(1750)。具体的には、デコーダは、チャネルマスクのビットストリームから#ChannelsToVisitビットを読み取る。チャネルマスクの各ビットによって、特定のチャネルがチャネルグループに含まれるか否かが示される。たとえば、チャネルマスクが「10110」である場合に、タイルに5つのチャネルが含まれ、チャネル0、2、および3がチャネルグループに含まれる。
デコーダは、グループのチャネル数をカウントし(1760)、たとえば下で説明する手法を使用して、グループのマルチチャネル変換をデコードする(1770)。デコーダは、現在のチャネルグループのカウントされたチャネル数を引くことによって#ChannelsToVisitを更新し(1780)、#ChannelGroupsを増分し(1790)、視察すべき残されたチャネル数#ChannelsToVisitが2を超えるかどうかを検査する(1720)。
代替案では、タイル構成を使用しない実施形態で、デコーダが、フレームまたは他のレベルに関するチャネルグループ情報およびマルチチャネル変換情報を検索する。
C.マルチチャネル変換の帯域オン/オフ制御
いくつかの実施形態で、エンコーダおよびデコーダが、周波数帯域レベルでマルチチャネル変換を選択的にオン/オフにして、どの帯域が一緒に変換されるかを制御する。この形で、エンコーダおよびデコーダが、マルチチャネル変換で互換性がない帯域を選択的に除外する。マルチチャネル変換が、特定の帯域についてオフにされる時に、エンコーダおよびデコーダは、その帯域に恒等変換を使用し、データを変更せずにその帯域のデータを通過させる。
周波数帯域は、臨界帯域または量子化帯域である。周波数帯域の数は、オーディオデータのサンプリング周波数およびタイルサイズに関係する。一般に、サンプリング周波数が高くなるかタイルサイズが大きくなると、周波数帯域の数が増える。
いくつかの実施形態で、エンコーダが、タイルのチャネルグループのチャネルについて、周波数帯域レベルでマルチチャネル変換を選択的にオン/オフにする。エンコーダは、タイルのチャネルをグループ化する時またはタイルに関するチャネルグループ化の後に、帯域をオン/オフにすることができる。代替案では、エンコーダおよびデコーダが、タイル構成を使用するのではなく、フレームまたは他のレベルについて周波数帯域でマルチチャネル変換をオン/オフにする。
図18に、一実施形態でマルチチャネル変換にチャネルグループのチャネルの周波数帯域を選択的に含める手法(1800)を示す。手法(1800)では、エンコーダが、帯域のチャネルの信号の間の対単位の相関を検討して、その帯域のマルチチャネル変換を使用可能にするか使用不能にするかを判定する。代替案では、エンコーダが、マルチチャネル変換について周波数帯域を選択的にオンまたはオフにする時に、他のおよび/または追加の要因を検討する。
まず、エンコーダは、たとえば図16に関して説明したように、チャネルグループのチャネルを入手する(1810)。次に、エンコーダは、異なる周波数帯域のチャネルの信号の間の対単位の相関を計算する(1820)。たとえば、チャネルグループに2つのチャネルが含まれる場合に、エンコーダは、各周波数帯域での対単位の相関を計算する。あるいは、チャネルグループに2つを超えるチャネルが含まれる場合に、エンコーダは、各周波数帯域でのめいめいのチャネル対の一部またはすべての間の対単位の相関を計算する。
次に、エンコーダは、チャネルグループのマルチチャネル変換について、帯域をオンまたはオフにする(1830)。たとえば、チャネルグループに2つのチャネルが含まれる場合に、エンコーダは、帯域での対単位の相関が特定の閾値を満足する場合に、その帯域のマルチチャネル変換を使用可能にする。あるいは、チャネルグループに2つを超えるチャネルが含まれる場合に、エンコーダは、帯域の対単位の相関のそれぞれまたは大多数が特定の閾値を満足する場合に、その帯域のマルチチャネル変換を使用可能にする。代替実施形態では、すべてのチャネルについて特定の周波数帯域をオンまたはオフにするのではなく、エンコーダが、帯域を、あるチャネルについてオン、他のチャネルについてオフにする。
どの帯域がマルチチャネル変換に含まれるかを判断した後に、エンコーダは、帯域オン/オフ情報をビットストリームに入れる。
図19に、エンコーダがどのように帯域をオンまたはオフにすると判断するかに無関係に、特定のビットストリーム構文によるビットストリームからのタイルのチャネルグループに関するマルチチャネル変換の帯域オン/オフ情報を検索する手法(1900)を示す。図19には、ビットストリームから情報を検索するためにデコーダによって実行される手法(1900)が示され、エンコーダは、対応する手法を実行して、ビットストリーム構文に従ってチャネルグループの帯域オン/オフ情報をフォーマットする。代替案では、デコーダおよびエンコーダが、図19に示されたオプションの1つまたは複数について別の構文を使用する。
いくつかの実施形態で、デコーダは、手法(1700)のマルチチャネル変換のデコード(1740または1770)の一部として手法(1900)を実行する。代替案では、デコーダが、手法(1900)を別々に実行する。
デコーダは、ビットを入手し(1910)、ビットを検査して(1920)、チャネルグループについて、すべての帯域が使用可能にされているかどうかを判定する。そうである場合には、デコーダは、チャネルグループのすべての帯域についてマルチチャネル変換を使用可能にする(1930)。
その一方で、ビットによって、チャネルグループのすべての帯域が使用可能にされているのでないことが示される場合に、デコーダは、チャネルグループの帯域マスクをデコードする(1940)。具体的に言うと、デコーダは、ビットストリームからビット数を読み取るが、この数は、チャネルグループの帯域の数である。帯域マスクの各ビットが、特定の帯域がチャネルグループについてオンまたはオフのどちらであるかを示す。たとえば、帯域マスクが「111111110110000」である場合には、チャネルグループに15個の帯域が含まれ、帯域0、1、2、3、4、5、6、7、9、および10が、マルチチャネル変換についてオンにされている。デコーダは、示された帯域についてマルチチャネル変換を使用可能にする(1950)。
その代わりに、タイル構成を使用しない実施形態では、デコーダが、フレームまたは他のレベルでの帯域オン/オフ情報を検索する。
D.階層マルチチャネル変換
いくつかの実施形態で、エンコーダおよびデコーダは、階層マルチチャネル変換を使用して、特にデコーダでの、計算の複雑さを制限する。階層変換を用いるときに、エンコーダが、全体的な変換を複数のステージに分割し、個々のステージの計算の複雑さを減らし、いくつかの場合にマルチチャネル変換を指定するのに必要な情報の量を減らす。このカスケード構造を使用して、エンコーダは、より大きい全体的な変換を、ある精度まで、より小さい変換を用いてエミュレートする。デコーダは、対応する階層逆変換を実行する。
いくつかの実施形態で、階層変換の各ステージが、構造において同一であり、ビットストリーム内で、各ステージが、1つまたは複数の他のステージと独立に記述される。具体的に言うと、各ステージが、それ自体のチャネルグループと、チャネルグループごとに1つのマルチチャネル変換行列を有する。代替実施形態では、異なるステージが、異なる構造を有し、エンコーダおよびデコーダで、異なるビットストリーム構文が使用され、かつ/またはステージで、チャネルおよび変換に関する別の構成が使用される。
図20に、より単純なマルチチャネル変換の階層を使用してマルチチャネル変換をエミュレートする一般化された手法(2000)を示す。図20には、nステージの階層が示され、nは、マルチチャネル変換ステージの数である。たとえば、一実施形態で、nは2である。代替案では、nが2より大きい。
エンコーダは、全体的な変換のマルチチャネル変換の階層を判定する(2010)。エンコーダは、逆変換を実行するデコーダの複雑さに基づいて、変換サイズ(すなわち、チャネルグループサイズ)を判断する。あるいは、エンコーダは、ターゲットデコーダプロファイル/デコーダレベルまたは他の判断基準を検討する。
図21は、マルチチャネル変換の例の階層(2100)を示す図である。この階層(2100)には、2つのステージが含まれる。第1ステージには、0からNまでの番号をつけられた、N+1個のチャネルグループおよび変換が含まれ、第2ステージには、0からMまでの番号をつけられた、M+1個のチャネルグループおよび変換が含まれる。各チャネルグループに、1つまたは複数のチャネルが含まれる。第1ステージのN+1個の変換のそれぞれについて、入力チャネルは、マルチチャネルトランスフォーマに入力されるチャネルのある組合せである。すべての入力チャネルを第1ステージで変換しなければならないわけではない。1つまたは複数の入力チャネルを、無変更で第1ステージを通過させることができる(たとえば、エンコーダによって、チャネルグループに含まれる、単位行列を使用するチャネルを含めることができる)。第2ステージのM+1個の変換のそれぞれについて、入力チャネルは、第1ステージからの出力チャネルのある組合せであり、この出力チャネルには、無変更で第1ステージを通過した可能性があるチャネルが含まれる。
図20に戻って、エンコーダは、マルチチャネル変換の第1ステージを実行し(2020)、マルチステージ変換の次のステージを実行し、最後に、マルチチャネル変換の第nステージを実行する(2030)。デコーダは、デコード中に、対応する逆マルチチャネル変換を実行する。
いくつかの実施形態で、チャネルグループが、階層の複数のステージで同一であるが、マルチチャネル変換は異なる。そのような場合、およびいくつかの他の場合に、エンコーダは、複数のマルチチャネル変換について周波数帯域オン/オフ情報を組み合わせることができる。たとえば、2つのマルチチャネル変換があり、それぞれのチャネルグループに同一の3つのチャネルがあると仮定する。エンコーダは、帯域0の両方のステージで変換なし/恒等変換、帯域1のマルチチャネル変換ステージ1のみ(ステージ2変換なし)、帯域2のマルチチャネル変換ステージ2のみ(ステージ1変換なし)、帯域3の両方のステージのマルチチャネル変換、帯域4の両方のステージでの変換なしなどを指定することができる。
図22に、特定のビットストリーム構文によるビットストリームからのチャネルグループに関するマルチチャネル変換の階層の情報を検索する手法(2200)を示す。図22には、ビットストリームを解析するためにデコーダによって実行される手法(2200)が示され、エンコーダは、対応する手法を実行して、ビットストリーム構文に従ってマルチチャネル変換の階層をフォーマットする。代替案では、デコーダおよびエンコーダが、別の構文、たとえば、2つを超えるステージのための追加フラグおよびシグナリングビットを含む構文を使用する。
デコーダは、まず、ビットストリームの次のビットと等しくなるように一時値iTmpをセットする(2210)。次に、デコーダは、一時値の値を検査し(2220)、この値によって、デコーダが、ステージ1グループのチャネルグループおよびマルチチャネル変換情報をデコード(2230)しなければならないか否かが知らされる。
デコーダは、ステージ1グループのチャネルグループおよびマルチチャネル変換情報をデコード(2230)した後に、ビットストリームの次のビットと等しくなるようにiTmpをセットする(2240)。デコーダは、iTmpの値を検査する(2220)が、この値によって、さらなるステージ1グループに関するチャネルグループおよびマルチチャネル変換情報がビットストリームに含まれるか否かが知らされる。恒等変換を有しないチャネルグループだけが、ビットストリームのステージ1部分で指定され、ビットストリームのステージ1部分に記載されていないチャネルは、恒等変換を使用するチャネルグループの一部と仮定される。
ビットストリームに、ステージ1グループのチャネルグループおよびマルチチャネル変換情報がこれ以上含まれない場合には、デコーダは、すべてのステージ2グループのチャネルグループおよびマルチチャネル変換情報をデコードする(2250)。
E.事前定義またはカスタムのマルチチャネル変換
いくつかの実施形態で、エンコーダおよびデコーダが、事前定義のマルチチャネル変換行列を使用して、変換行列の指定に使用されるビットレートを減らす。エンコーダは、複数の使用可能な事前定義の行列タイプの中から選択し、選択された行列を、ビットストリーム内で少数(たとえば、1、2)のビットを使用して知らせる。行列のタイプの中には、ビットストリーム内の追加シグナリングを必要としないものと、追加の指定を必要とするものがある。デコーダは、行列のタイプを示す情報と(必要な場合に)行列を指定する追加情報を検索する。
いくつかの実施形態で、エンコーダおよびデコーダが、下記の事前定義行列タイプを使用する:恒等、アダマール、DCTタイプII、または任意のユニタリ。代替案では、エンコーダおよびデコーダが、異なるおよび/または追加の事前定義行列タイプを使用する。
図9aに、別のコンテキストでの6つのチャネルの単位行列の例が示されている。単位行列の次元の数が、他の情報(たとえば、グループのチャネル数)からエンコーダおよびデコーダに既知になると仮定して、エンコーダは、フラグビットを使用して、ビットストリームで単位行列を効率的に指定する。
アダマール行列は、下記の形を有する。
Figure 2004264811
ここで、ρは、正規化スケーラ
Figure 2004264811
である。エンコーダは、ステレオデータのアダマール行列を、ビットストリーム内でフラグビットを使用して効率的に指定する。
DCTタイプII行列は、下記の形を有する。
Figure 2004264811
ここで
Figure 2004264811
また、
Figure 2004264811
である。
DCTタイプII行列に関する追加情報については、文献を参照されたい(たとえば、非特許文献4参照)。DCTタイプII行列は、任意のサイズを有することができる(すなわち、すべてのサイズのチャネルグループについて働く)。DCTタイプII行列の次元の数が、他の情報(たとえば、グループのチャネル数)からエンコーダおよびデコーダに既知になると仮定して、エンコーダは、フラグビットを使用して、ビットストリームで単位行列を効率的に指定する。
正方行列Asquareは、その転置行列が逆行列である場合に、ユニタリである。
square・Asquare =Asquare ・Asquare=I (12)
ここで、Iは、単位行列である。エンコーダは、任意のユニタリ行列を使用して、効果的な冗長性除去のためのKLT変換を指定する。エンコーダは、ビットストリーム内で、フラグビットおよび行列のパラメータ化を使用して、任意のユニタリ行列を効率的に指定する。いくつかの実施形態で、エンコーダは、下で説明するように、量子化されたギブンス因数分解回転を使用して行列をパラメータ化する。代替案では、エンコーダが、別のパラメータ化を使用する。
図23に、複数の使用可能なタイプの中からマルチチャネル変換タイプを選択する手法(2300)を示す。エンコーダは、チャネルグループごとにまたはある他のレベルで、変換タイプを選択する。
エンコーダは、複数の使用可能なタイプの中からマルチチャネル変換タイプを選択する(2310)。たとえば、使用可能なタイプに、恒等、アダマール、DCTタイプII、および任意のユニタリが含まれる。代替案では、タイプに、異なるおよび/または追加の行列タイプが含まれる。エンコーダは、可能な場合、または変換行列を指定するのに必要なビット数を減らすのに必要な場合に、恒等行列、アダマール行列、またはDCTタイプII行列(任意のユニタリ行列ではなく)を使用する。たとえば、エンコーダは、冗長性除去が、任意のユニタリ行列による冗長性除去に匹敵するか十分に近い(ある判断基準によって)場合に、恒等行列、アダマール行列、またはDCTタイプII行列を使用する。あるいは、エンコーダは、ビットレートを削減しなければならない場合に、恒等行列、アダマール行列、またはDCTタイプII行列を使用する。しかし、一般的な情況で、エンコーダは、最良の圧縮効率のために任意のユニタリ行列を使用する。
エンコーダは、選択されたタイプのマルチチャネル変換を、マルチチャネルオーディオデータに適用する(2320)。
図24に、複数の使用可能なタイプの中からマルチチャネル変換タイプを検索し、逆マルチチャネル変換を実行する手法(2400)を示す。デコーダは、チャネルグループごとまたは他のレベルで変換タイプ情報を検索する。
デコーダは、複数の使用可能なタイプの間からマルチチャネル変換タイプを検索する(2410)。たとえば、使用可能なタイプに、恒等、アダマール、DCTタイプII、および任意のユニタリが含まれる。代替案では、タイプに、異なるおよび/または追加の行列タイプが含まれる。必要な場合には、デコーダは、行列を指定する追加情報を検索する。
行列を再構成した後に、デコーダは、選択されたタイプの逆マルチチャネル変換をマルチチャネルオーディオデータに適用する(2420)。
図25に、特定のビットストリーム構文によるビットストリームからチャネルグループに関するマルチチャネル変換情報を検索する手法(2500)を示す。図25には、ビットストリームを解析するためにデコーダによって実行される手法(2500)が示されているが、エンコーダは、対応する手法を使用して、ビットストリーム構文に従ってマルチチャネル変換情報をフォーマットする。代替案では、デコーダおよびエンコーダが、別の構文、たとえば、異なるフラグビット、異なる順序付け、または異なる変換タイプを使用する構文を使用する。
当初、デコーダは、グループのチャネル数#ChannelsInGroupが1より大きいかどうかを検査する(2510)。そうでない場合には、チャネルグループがモノラルオーディオであり、デコーダは、グループに恒等変換を使用する(2512)。
#ChannelsInGroupが1より大きい場合には、デコーダは、#ChannelsInGroupが2より大きいかどうかを検査する(2520)。そうでない場合には、チャネルグループはステレオオーディオであり、デコーダは、ビットストリームの次のビットと等しくなるように一時値iTmpをセットする(2522)。次に、デコーダは、一時値の値を検査する(2524)が、この値によって、デコーダが、そのチャネルグループにアダマール変換を使用(2530)しなければならないかどうかが示される。そうでない場合には、デコーダは、ビットストリームの次のビットと等しくなるように一時値iTmpをセットし(2526)、iTmpの値を検査し(2528)、この値によって、デコーダが、チャネルグループに恒等変換を使用(2550)しなければならないかどうかが示される。そうでない場合には、デコーダは、チャネルグループに汎用ユニタリ変換をデコードする(2570)。
#ChannelsInGroupが2より大きい場合には、チャネルグループは、サラウンドサウンドオーディオであり、デコーダは、ビットストリームの次のビットと等しくなるように一時値iTmpをセットする(2540)。デコーダは、一時値の値を検査し(2542)、この値によって、デコーダが、チャネルグループのサイズ#ChannelsInGroupの恒等変換を使用(2550)しなければならないかどうかが示される。そうでない場合には、デコーダは、ビットストリームの次のビットと等しくなるように一時値iTmpをセットし(2560)、iTmpの値を検査する(2562)。このビットによって、デコーダが、チャネルグループの汎用ユニタリ変換をデコード(2570)しなければならないか、チャネルグループのサイズ#ChannelsInGroupのDCTタイプII変換を使用(2580)しなければならないかが示される。
デコーダは、チャネルグループに関してアダマール変換行列、DCTタイプII変換行列、または汎用ユニタリ変換行列を使用する時に、行列のマルチチャネル変換帯域オン/オフ情報をデコードし(2590)、終了する。
F.変換行列のギブンス回転表現
いくつかの実施形態で、エンコーダおよびデコーダが、ビット効率のために、量子化されたギブンス回転ベースの因数分解パラメータを使用して、任意のユニタリ変換行列を指定する。
一般に、ユニタリ変換行列は、ギブンス因数分解回転を使用して表すことができる。この因数分解を使用すると、ユニタリ変換行列を、次のように表すことができる。
Figure 2004264811
ここで、αは、+1または−1(回転の符号)であり、各Θは、図26に示された回転行列(2600)の形である。回転行列(2600)は、単位行列にほとんど似ているが、変化する位置に4つのサイン/コサイン項を有する。図27aから27cに、マルチチャネル変換行列を表すギブンス回転の例の回転行列を示す。2つのコサイン項が、必ず対角線上にあり、2つのサイン項が、コサイン項と同一の行/列にある。各Θは、1つの回転角度を有し、その値は、範囲
Figure 2004264811
を有することができる。N×Nユニタリ行列Aunitaryを完全に記述するのに必要なそのような回転行列Θの数は、次の通りである。
Figure 2004264811
ギブンス因数分解回転に関する追加情報については、参照によって本明細書に組み込まれる文献を参照されたい(たとえば、非特許文献5参照)。
いくつかの実施形態で、エンコーダは、ギブンス因数分解の回転角度を量子化して、ビットレートを減らす。図28に、量子化されたギブンス因数分解回転を使用してマルチチャネル変換行列を表す手法(2800)を示す。代替案では、エンコーダまたは処理ツールが、量子化されたギブンス因数分解回転を使用して、オーディオチャネルのマルチチャネル変換以外の目的のユニタリ行列を表す。
エンコーダは、まず、マルチチャネル変換の任意のユニタリ行列を計算する(2810)。次に、エンコーダは、ユニタリ行列のギブンス因数分解回転を計算する(2820)。
ビットレートを減らすために、エンコーダは、回転角度を量子化する(2830)。一実施形態では、エンコーダが、各回転角度を64個(2=64)の可能な値の1つに均等に量子化する。回転の符号は、それぞれ1ビットによって表され、したがって、エンコーダは、下記の数のビットを使用して、N×Nユニタリ行列を表す。
Figure 2004264811
このレベルの量子化を用いると、エンコーダが、非常によい度合の精度で、マルチチャネル変換のN×Nユニタリ行列を表せるようになる。代替案では、エンコーダが、ある他のレベルおよび/またはタイプの量子化を使用する。
図29に、特定のビットストリーム構文によるビットストリームからチャネルグループの汎用ユニタリ変換の情報を検索する手法(2900)を示す。図29には、ビットストリームを解析するためにデコーダによって実行される手法(2900)が示され、エンコーダは、対応する手法を実行して、ビットストリーム構文に従って汎用ユニタリ変換の情報をフォーマットする。代替案では、デコーダおよびエンコーダが、別の構文、たとえば、異なる順序付けまたは回転角度の分解能を使用する構文を使用する。
まず、デコーダは、デコードの残りで使用される複数の変数を初期化する。具体的に言うと、デコーダは、デコードする角度の数#AnglesToDecodeを、式14に示されたチャネルグループのチャネルの数#ChannelsInGroupに基づいてセットする(2910)。デコーダは、#ChannelsInGroupに基づいて、デコードする符号の数#SignsToDecodeもセットする(2912)。デコーダは、デコードされた角度のカウンタiAnglesDecodedおよびデコードされた符号のカウンタiSignsDecodedもリセットする(2914、2916)。
デコーダは、デコードする角度があるかどうかを検査し(2920)、そうである場合には、次の回転角度の値をセットし(2922)、6ビットの量子化された値から回転角度を再構成する。
RotationAngle[iAnglesDecoded]=π×(getBits(6)−32)/64 (16)
次に、デコーダは、デコードされた角度のカウンタを増分し(2924)、さらにデコードする追加の角度があるかどうかを検査する(2920)。
デコードする角度がもうない時に、デコーダは、デコードする追加の符号があるかどうかを検査し(2940)、そうである場合には、次の符号の値をセットし(2942)、1ビットの値から符号を再構成する。
RotationSign[iSignsDecoded]=(2×getBits(1))−1 (17)
次に、デコーダは、デコードされた符号のカウンタを増分し(2944)、デコードする追加の符号があるかどうかを検査する(2940)。デコードする符号がもうない時に、デコーダは終了する。
VI.量子化および重みづけ
いくつかの実施形態で、図6のエンコーダ(600)などのエンコーダが、下で説明するさまざまな手法を使用して、オーディオデータに対する量子化および重みづけを実行する。タイルに構成されたマルチチャネルオーディオに関して、エンコーダは、タイルのチャネルの量子化行列、チャネルごとの量子化ステップ変更子、および全体的な量子化タイル係数を計算し、適用する。これによって、エンコーダが、聴覚モデルに従って雑音を整形し、チャネルの間の雑音のバランスをとり、全体的なひずみを制御できるようになる。
図7のデコーダ(700)などの対応するデコーダは、逆量子化および逆重みづけを実行する。タイルに構成されたマルチチャネルオーディオについて、デコーダは、全体的な量子化タイル係数、チャネルごとの量子化ステップ変更子、およびタイルのチャネルの量子化行列をデコードし、適用する。逆量子化および逆重みづけが、単一のステップに融合される。
A.全体的なタイル量子化係数
いくつかの実施形態で、タイルのオーディオデータの品質および/またはビットレートを制御するために、エンコーダのクォンタイザが、タイルの量子化ステップサイズQを計算する。クォンタイザは、レート/品質コントローラと共に働いて、ビットレートおよび/または品質制約を満足するタイル量子化ステップサイズを選択する前に、タイルの異なる量子化ステップサイズを評価することができる。たとえば、クォンタイザおよびコントローラは、参照によって本明細書に組み込まれる関連特許出願の発明の名称"Quality and Rate Control Strategy for Digital Audio," の米国特許出願第10/017,694号(2001年12月14日出願)に記載されているように動作する。
図30に、特定のビットストリーム構文によるビットストリームから全体的なタイル量子化係数を検索する手法(3000)を示す。図30には、ビットストリームを解析するためにデコーダによって実行される手法(300)が示され、エンコーダは、対応する手法を実行して、ビットストリーム構文に従ってタイル量子化係数をフォーマットする。代替案では、デコーダおよびエンコーダが、別の構文、たとえば、タイル量子化係数の異なる範囲を扱うもの、異なる論理を使用してタイル係数をエンコードするもの、またはタイル係数のグループをエンコードするものを使用する。
まず、デコーダは、タイルの量子化ステップサイズQを初期化する(3010)。一実施形態では、デコーダは、Qに下記をセットする。
=90・ValidBitsPerSample/16 (18)
ここで、ValidBitsPerSampleは、16≦ValidBitsPerSample≦24の数であり、デコーダまたはオーディオクリップについてセットされるか、他のレベルでセットされる。
次に、デコーダは、Qの初期値に関するQの最初の修正を示す6ビットを入手し(3020)、値−32≦Tmp≦31を一時変数Tmpに保管する。関数SignExtend()は、符号なしの値から符号付きの値を判定する。デコーダは、Tmpの値をQの初期値に加算し(3030)、その後、変数Tmpの符号を判定し(3040)、この符号は、変数SignofDeltaに保管される。
デコーダは、Tmpの値が−32または31と等しいかどうかを検査する(3050)。そうでない場合には、デコーダは終了する。Tmpの値が−32または31と等しい場合には、エンコーダは、Qをさらに修正しなければならないことを知らされている。さらなる修正の方向(正または負)は、SignofDeltaによって示され、デコーダは、次の5ビットを得て(3060)、次の修正の大きさ0≦Tmp≦31を判定する。デコーダは、Qの現在の値を、SignofDeltaの方向でTmpの値だけ変更し(3070)、Tmpの値が31であるかどうかを検査する(3080)。そうでない場合には、デコーダは終了する。Tmpの値が31である場合には、デコーダは、次の5ビットを得て(3060)、その点から継続する。
タイル構成を使用しない実施形態では、エンコーダが、フレームまたはオーディオデータの他の部分に関する全体的な量子化ステップサイズを計算する。
B.チャネルごとの量子化ステップ変更子
いくつかの実施形態で、エンコーダは、タイルの各チャネルの量子化ステップ変更子:Qc,0、Qc,1、...、Qc,#ChannelsInTile−1を計算する。エンコーダは、通常は、これらのチャネル固有量子化係数を計算して、すべてのチャネルにまたがる再構成品質のバランスをとる。タイル構成を使用しない実施形態であっても、エンコーダは、フレームまたはオーディオデータの他の単位でチャネルのチャネルごとの量子化係数を計算することができる。対照的に、図1のエンコーダ(100)で使用されるものなどの、以前の量子化手法は、チャネル内のウィンドウの帯域ごとに量子化行列要素を使用するが、チャネルに関する全体的な変更子を有しない。
図31に、マルチチャネルオーディオデータのチャネルごとの量子化ステップ変更子を計算する一般化された手法(3100)を示す。エンコーダは、複数の判断基準を使用して、量子化ステップ変更子を計算する。第1に、エンコーダは、再構成されるオーディオデータのすべてのチャネルにまたがってほぼ等しい品質を探す。第2に、スピーカ位置が既知である場合に、エンコーダは、スピーカ構成に関する通常の使用での知覚に最も重要なスピーカを優先する。第3に、スピーカタイプが既知である場合に、エンコーダは、スピーカ構成でのよりよいスピーカを優先する。代替案では、エンコーダが、これらの判断基準以外のまたはこれらの判断基準に加えて判断基準を考慮する。
エンコーダは、チャネルの量子化ステップ変更子をセットする(3110)ことによって開始する。一実施形態では、エンコーダは、めいめいのチャネルのエネルギに基づいて変更子をセットする(3110)。たとえば、他のチャネルより相対的により多くのエネルギ(すなわち大音量)を有するチャネルについて、他のチャネルの量子化ステップ変更子が、比較的に大きくされる。代替案では、エンコーダが、「オープンループ」推定処理で、他のまたは追加の判断基準に基づいて変更子をセットする(3110)。あるいは、エンコーダは、変更子に当初は等しい値をセットする(3110)ことができる(変更子の最終的な値に集束するのに「クローズドループ」評価に頼ってセットする)。
エンコーダは、量子化ステップ変更子ならびに、他の量子化(重みづけを含む)要因がまだ適用されていない場合にはそのような他の要因を使用して、マルチチャネルオーディオデータを量子化する(3120)。
後続の再構成の後に、エンコーダは、NERまたは他の品質測定値を使用して、再構成されたオーディオのチャネルの品質を評価する(3130)。エンコーダは、再構成されたオーディオが品質判断基準(および/または他の判断基準)を満足するか否かを検査し(3140)、そうである場合には終了する。そうでない場合には、エンコーダは、量子化ステップ変更子の新しい値をセットし(3110)、評価された結果に鑑みて変更子を調節する。代替案では、ステップ変更子の1パスのオープンループ設定について、エンコーダが、評価(3130)および検査(3140)をスキップする。
チャネルごとの量子化ステップ変更子は、ウィンドウ/タイルからウィンドウ/タイルへと変化する傾向を有する。エンコーダは、リテラルまたは可変長コードとして量子化ステップ変更子をコーディングし、それをオーディオデータと共にビットストリームにパックする。あるいは、エンコーダは、他の手法を使用して、量子化ステップ変更子を処理する。
図32に、特定のビットストリーム構文によるビットストリームからチャネルごとの量子化ステップ変更子を検索する手法(3200)を示す。図32には、ビットストリームを解析するためにデコーダによって実行される手法(3200)が示され、エンコーダは、対応する手法(フラグの設定、量子化ステップ変更子のデータのパックなど)を実行して、ビットストリーム構文に従って量子化ステップ変更子をフォーマットする。代替案では、デコーダおよびエンコーダが、別の構文、たとえば、異なるフラグまたは論理を処理して量子化ステップ変更子をエンコードする構文を使用する。
図32に、タイルのチャネルごとの量子化ステップ変更子の検索を示す。その代わりに、タイルを使用しない実施形態で、デコーダが、フレームまたはオーディオデータの他の単位に関してチャネルごとのステップ変更子を検索する。
まず、デコーダは、タイルのチャネル数が1を超えるかどうかを検査する(3210)。そうでない場合には、オーディオデータがモノラルである。デコーダは、モノラルチャネルの量子化ステップ変更子に0をセットし(3212)、終了する。
マルチチャネルオーディオについて、デコーダは、複数の変数を初期化する。デコーダは、タイルの量子化ステップ変更子ごとのビット数を示すビット(#BitsPerQ)を得る(3220)。一実施形態では、デコーダが、3ビットを得る。デコーダは、チャネルカウンタiChannelsDoneに0をセットする(3222)。
デコーダは、チャネルカウンタがタイルのチャネル数より少ないかどうかを検査する(3230)。そうでない場合には、タイルのすべてのチャネル量子化ステップ変更子が検索されており、デコーダは終了する
その一方で、チャネルカウンタが、タイルのチャネル数より少ない場合には、デコーダは、1ビットを入手し(3232)、そのビットを検査して(3240)、現在のチャネルの量子化ステップ変更子が0であるかどうかを判定する。そうである場合には、デコーダは、現在のチャネルの量子化ステップ変更子に0をセットする(3242)。
現在のチャネルの量子化ステップ変更子が0でない場合には、デコーダは、#BitsPerQが0より大きいかどうかを検査して(3250)、現在のチャネルの量子化ステップ変更子が1であるかどうかを判定する。そうである場合には、デコーダは、現在のチャネルの量子化ステップ変更子に1をセットする(3252)。
#BitsPerQが0より大きい場合には、デコーダは、ビットストリームの次の#BitsPerQビットを入手し、1を加算し(0の値がより以前の終了条件をトリガするので)、現在のチャネルの量子化ステップ変更子にその結果をセットする(3260)。
デコーダは、現在のチャネルの量子化ステップ変更子をセットした後に、チャネルカウンタを増分し(3270)、チャネルカウンタがタイルのチャネル数より少ないかどうかを検査する(3230)。
C.量子化行列のエンコーディングおよびデコーディング
いくつかの実施形態で、エンコーダは、タイルの各チャネルの量子化行列を計算する。エンコーダは、複数の形で、図1のエンコーダ(100)で使用されるものなどの以前の量子化手法より改善される。量子化行列のロッシイ圧縮に関して、エンコーダは、量子化行列要素の柔軟なステップサイズを使用し、これによって、エンコーダが、量子化行列の要素の分解能を変更できるようになる。この特徴とは別に、エンコーダは、量子化行列の圧縮中に量子化行列値の時間的相関を活用する。
前に述べたように、量子化行列は、タイルのチャネルごとに、バーク周波数帯域(または他の区分された量子化帯域)ごとに1ステップ値の、ステップサイズ配列として働く。エンコーダは、量子化行列を使用して、元の信号に匹敵するスペクトル形状を有するように、再構成されるオーディオ信号を「カラーリング」する。エンコーダは、通常は、音響心理学に基づいて量子化行列を判定し、量子化行列を圧縮して、ビットレートを下げる。量子化行列の圧縮は、ロッシイとすることができる。
このセクションに記載の手法は、タイルのチャネルに関する量子化行列に関して説明される。表記について、Qm,iChannel,iBandが、帯域iBandのチャネルiChannelの量子化行列要素を表すものとする。タイル構成を使用しない実施形態では、エンコーダが、量子化行列要素の柔軟なステップサイズを使用し、かつ/または、圧縮中の量子化行列値の時間的相関を活用することができる。
1.マスク情報の柔軟な量子化ステップサイズ
図33に、量子化行列要素の量子化ステップサイズを適応式にセットする一般化された手法(3300)を示す。これによって、エンコーダが、マスク情報を粗くまたは微細に量子化できるようになる。一実施形態では、エンコーダが、タイルのチャネルごとに(すなわち、タイルの各チャネルが行列を有する時には行列ごとに)量子化行列要素の量子化ステップサイズをセットする。代替案では、エンコーダが、オーディオシーケンス全体または他のレベルで、タイルごとにまたはフレームごとに、マスク要素の量子化ステップサイズをセットする。
エンコーダは、1つまたは複数のマスクの量子化ステップサイズをセットする(3310)ことによって開始する(影響されるマスクの数は、エンコーダが柔軟な量子化ステップサイズを割り当てるレベルに依存する)。一実施形態では、エンコーダが、ある時間の期間にわたって再構成されるオーディオの品質を評価し、その結果に応じて、マスク情報の量子化ステップサイズを1dB、2dB、3dB、または4dBになるように選択する。エンコーダによって評価される品質測定値は、1つまたは複数の前にエンコードされたフレームのNERである。たとえば、全体的な品質が低い場合に、エンコーダは、マスク情報の量子化ステップサイズにより高い値をセットする(3310)ことができる。というのは、量子化行列の分解能が、ビットレートの効率的な使用になっていないからである。その一方で、全体的な品質がよい場合に、エンコーダは、マスク情報の量子化ステップサイズにより低い値をセットする(3310)ことができる。というのは、量子化行列のよりよい分解能によって、知覚される品質が効率的に改善される可能性があるからである。代替案では、エンコーダが、量子化ステップサイズのオープンループ評価で、別の品質測定値、異なる期間にわたる評価、および/または他の判断基準を使用する。エンコーダは、マスク情報に異なるまたは追加の量子化ステップサイズを使用することもできる。あるいは、エンコーダが、オープンループ評価をスキップし、その代わりに、ステップサイズの最終的な値に集束するのに結果のクローズドループ評価に頼る。
エンコーダは、マスク要素の量子化ステップサイズを使用して1つまたは複数の量子化行列を量子化し(3320)、マルチチャネルオーディオデータに重みをつけ、量子化する。
後続の再構成の後に、エンコーダは、NERまたは他の品質測定値を使用して、再構成されたオーディオの品質を評価する(3330)。エンコーダは、再構成されたオーディオの品質が、マスク情報に関する現在の量子化ステップサイズの設定を正当化するものであるかどうかを検査する(3340)。そうでない場合には、エンコーダは、マスク情報の量子化ステップサイズにより高いかより低い値をセットする(3310)ことができる。それ以外の場合には、エンコーダは終了する。代替案では、マスク情報の量子化ステップサイズの1パスオープンループ設定について、エンコーダが、評価(3330)および検査(3340)をスキップする。
選択の後に、エンコーダは、ビットストリームの適当なレベルでマスク情報の量子化ステップサイズを示す。
図34に、量子化行列要素の適応量子化ステップサイズを検索する一般化された手法(3400)を示す。したがって、デコーダは、オーディオシーケンス全体または他のレベルについて、タイルのチャネルごと、タイルごと、またはフレームごとにマスク要素の量子化ステップサイズを変更することができる。
デコーダは、1つまたは複数のマスクの量子化ステップサイズを入手する(3410)ことによって開始する(影響されるマスクの数は、エンコーダが柔軟な量子化ステップサイズを割り当てるレベルに依存する)。一実施形態では、量子化ステップサイズが、マスク情報の1dB、2dB、3dB、または4dBである。代替案では、エンコーダおよびデコーダが、マスク情報の異なるまたは追加の量子化ステップサイズを使用する。
次に、デコーダは、マスク情報の量子化ステップサイズを使用して1つまたは複数の量子化行列を逆量子化し(3420)、マルチチャネルオーディオデータを再構成する。
2.量子化行列の時間予測
図35に、時間予測を使用して量子化行列を圧縮する一般化された手法(3500)を示す。手法(3500)では、エンコーダが、マスク値の時間相関を活用する。これによって量子化行列に関連するビットレートが下がる。
図35および36に、オーディオデータのフレームのチャネルでの量子化行列の時間予測を示す。代替案では、エンコーダが、複数のフレームの間、オーディオの他のシーケンスで、または量子化行列の異なる構成で、時間予測を使用して量子化行列を圧縮する。
図35を参照すると、エンコーダは、フレームの量子化行列を入手する(3510)。チャネルの量子化行列は、ウィンドウからウィンドウへと同一のままである傾向があり、予測コーディングのよい候補になる。
エンコーダは、時間予測を使用して量子化行列をエンコードする(3520)。たとえば、エンコーダは、図36に示された手法(3600)を使用する。代替案では、エンコーダは、時間予測を用いる別の手法を使用する。
エンコーダは、圧縮する行列がまだあるかどうかを判定し(3530)、そうでない場合には終了する。それ以外の場合には、エンコーダは、次の量子化行列を入手する。たとえば、エンコーダは、次のフレームの行列がエンコードに使用可能であるかどうかを検査する。
図36に、一実施形態で時間予測を使用してチャネルの量子化行列を圧縮するより詳細な手法(3600)を示す。時間圧縮では、異なるウィンドウサイズのタイルにまたがる再サンプリング処理を使用し、予測残差に対するランレベルコーディングを使用して、ビットレートを下げる。
エンコーダは、次に圧縮される量子化行列の圧縮を開始し(3610)、アンカ行列が使用可能であるかどうかを検査する(3620)が、これは、通常は、行列がそのチャネルの最初の行列であるかどうかに依存する。アンカ行列が使用可能でない場合には、エンコーダは、量子化行列を直接に圧縮する(3630)。たとえば、エンコーダは、量子化行列の要素を差分エンコードし(要素の差分は前の帯域の要素に対するものである)、ハフマンコードを差分に割り当てる。行列の最初の要素(すなわち、帯域0のマスク要素)について、エンコーダは、マスク要素の量子化ステップサイズに依存する予測定数を使用する。
PredConst=45/MaskQuantMultiplieriChannel (19)
代替案では、エンコーダが、アンカ行列の別の圧縮手法を使用する。
エンコーダは、フレームのチャネルのアンカ行列として量子化行列をセットする(3640)。エンコーダがタイルを使用する時には、チャネルのアンカ行列を含むタイルを、アンカタイルと呼ぶことができる。エンコーダは、アンカ行列サイズまたはアンカタイルのタイルサイズを記録するが、これは、異なるサイズを有する行列の予測を形成するのに使用することができる。
その一方で、アンカ行列が使用可能である場合には、エンコーダは、時間予測を使用して量子化行列を圧縮する。エンコーダは、チャネルのアンカ行列に基づいて、量子化行列の予測を計算する(3650)。圧縮される量子化行列が、アンカ行列と同一の数の帯域を有する場合には、予測は、アンカ行列の要素である。しかし、圧縮される量子化行列が、アンカ行列と異なる数の帯域を有する場合には、エンコーダは、アンカ行列を再サンプリングして、予測を計算する。
再サンプリング処理では、圧縮される量子化行列のサイズ/現在のタイルサイズと、アンカ行列のサイズ/アンカタイルサイズを使用する。
MaskPrediction[iBand]=AnchorMask[iScaledBand] (20)
ここで、iScaledBandは、iBandの代表的な(たとえば平均)周波数を含むアンカ行列帯域である。iBandは、現在の量子化行列/現在のタイルサイズの項であり、iScaledBandは、アンカ行列/アンカタイルサイズの項である。
図37に、エンコーダがタイルを使用する時の、アンカ行列の再サンプリングの1つの手法を示す。図37には、予測を形成するための、アンカタイルの帯域への現在のタイルの帯域の例の写像(3700)が示されている。現在のタイルの量子化行列の帯域境界の中央の周波数(3720)が、アンカタイルのアンカ行列の周波数に写像(3730)される。マスク予測の値は、写像された周波数が、アンカタイルのアンカ行列の帯域境界(3710)に関してどこにあるかに依存してセットされる。代替案では、エンコーダが、チャネル内の前の量子化行列または他の前の行列に関する時間予測を使用するか、別の再サンプリング手法を使用する。
図36に戻って、エンコーダは、予測に関する量子化行列の残差を計算する(3660)。理想的には、予測が、完全であり、残差が、エネルギを有しない。しかし、必要な場合に、エンコーダは、残差をエンコードする(3670)。たとえば、エンコーダは、予測残差について、ランレベルコーディングまたは別の圧縮手法を使用する。
次に、エンコーダは、圧縮される行列がまだあるかどうかを判定し(3680)、そうでない場合に、終了する。それ以外の場合に、エンコーダは、次の量子化行列を入手し(3610)、継続する。
図38に、特定のビットストリーム構文による時間予測を使用して圧縮された量子化行列の検索およびデコーディングの手法(3800)を示す。量子化行列は、フレームの単一のタイルのチャネルに関するものである。図38に、ビットストリームの情報を解析するためにデコーダによって実行される手法(3800)を示し、エンコーダは、対応する手法を実行する。代替案では、デコーダおよびエンコーダが、図38に示されたオプションの1つまたは複数について別の構文、たとえば、異なるフラグまたは異なる順序付けを使用する構文、またはタイルを使用しない構文を使用する。
デコーダは、エンコーダがフレームの初めに達したかどうかを検査する(3810)。そうである場合には、デコーダは、そのフレームのすべてのアンカ行列に、セットされていないものとしてマークをつける(3812)。
次に、デコーダは、アンカ行列が、次にエンコードされる量子化行列のチャネルで使用可能であるかどうかを検査する(3820)。アンカ行列が使用可能でない場合には、デコーダは、チャネルの量子化行列の量子化ステップサイズを入手する(3830)。一実施形態では、デコーダが、1dB、2dB、3dB、または4dBの値を入手する。
MaskQuantMultiplieriChannel=getBits(2)+1 (21)
デコーダは、チャネルのアンカ行列をデコードする(3832)。たとえば、デコーダは、アンカ行列の差分コーディングされた要素をハフマンデコードし(要素の差分が、前の帯域の要素に対するものである)、要素を再構成する。最初の要素について、デコーダは、エンコーダで使用された予測定数を使用する。
PredConst=45/MaskQuantMultiplieriChannel (22)
代替案では、デコーダが、フレームのチャネルのアンカ行列に別の圧縮解除手法を使用する。
デコーダは、フレームのチャネルのアンカ行列として量子化行列をセットし(3834)、チャネルの量子化行列の値に、アンカ行列の値をセットする。
m,iChannel,iBand=AnchorMask[iBand] (23)
デコーダは、アンカタイルのタイルサイズも記録するが、これは、アンカタイルと異なるサイズを有するタイルの行列の予測を形成するのに使用することができる。
その一方で、アンカ行列がチャネルについて使用可能である場合には、デコーダは、時間予測を使用して量子化行列を圧縮解除する。デコーダは、チャネルのアンカ行列に基づいて、量子化行列の予測を計算する(3840)。現在のタイルの量子化行列が、アンカ行列と同一の数の帯域を有する場合には、予測は、アンカ行列の要素である。しかし、現在のタイルの量子化行列が、アンカ行列と異なる数の帯域を有する場合には、エンコーダは、アンカ行列を再サンプリングして、たとえば図37に示された現在のタイルサイズおよびアンカタイルサイズを使用して、予測を入手する。
MaskPrediction[iBand]=AnchorMask[iScaledBand] (24)
代替案では、デコーダが、そのチャネルの前の量子化行列または他の前の行列に対する相対的な時間予測を使用するか、別の再サンプリング手法を使用する。
デコーダは、ビットストリームの次のビットを入手し(3842)、ビットストリームに量子化行列の残差が含まれるかどうかを検査する(3850)。現在のタイルのこのチャネルに関するマスク更新がない場合には、マスク予測残差が0であり、したがって、
m,iChannel,iBand=MaskPrediction[iBand] (25)
になる。
その一方で、予測残差がある場合には、デコーダは、たとえばランレベルデコーディングまたは他の圧縮解除手法を使用して、残差をデコードする(3852)。次に、デコーダは、予測に予測残差を加算して(3854)、量子化行列を再構成する。たとえば、加算は、現在のチャネルiChannelの帯域iBandに関する要素を入手するために、帯域ごとの単純なスカラ加算である。
m,iChannel,iBand=MaskPrediction[iBand]+MaskPredResidual[iBand] (26)
その後、デコーダは、現在のタイルのすべてのチャネルの量子化行列がデコードされたかどうかを検査し(3860)、そうである場合には終了する。そうでない場合には、デコーダは、現在のタイルの次の量子化行列のデコードを継続する。
D.組み合わされた逆量子化よび逆重みづけ
デコーダは、必要な量子化および重みづけの情報のすべてを検索したならば、オーディオデータを逆量子化し、逆重みづけする。一実施形態では、デコーダが、逆量子化および逆重みづけを1ステップで実行するが、これを、印刷を明瞭にするために下の2つの式に示す。
Figure 2004264811
ここで、xiqwは、チャネルiChannelの入力(たとえば、逆マルチチャネル変換された係数)であり、nは、帯域iBandの係数インデックスである。Max(Qm,iChannel,*)は、すべての帯域にわたるチャネルiChannelの最大マスク値である(マスクの最大重みづけ係数と最小重みづけ係数の間の差は、通常は、マスク要素の潜在的な値の範囲よりはるかに小さく、したがって、重みづけ係数ごとの量子化調整の量は、最大値に対して相対的に計算される)。MaskQuantMultiplieriChannelは、チャネルiChannelの量子化行列のマスク量子化ステップ乗数であり、yiqwは、このステップの出力である。
代替案では、デコーダが、逆量子化および重みづけを、別々にまたは異なる手法を使用して、実行する。
VII.マルチチャネル後処理
いくつかの実施形態で、図7のデコーダ(700)などのデコーダが、時間領域の再構成されるオーディオサンプルに対するマルチチャネル後処理を実行する。
マルチチャネル後処理は、多数の異なる目的に使用することができる。たとえば、デコードされるチャネルの数が、出力のチャネル数より少ない場合がある(たとえば、コーディングの複雑さまたはバッファ満杯度を下げるために、エンコーダが1つまたは複数の入力チャネルまたはマルチチャネル変換されたチャネルを捨てたので)。その場合に、マルチチャネル後処理変換を使用して、デコードされたチャネルの実際のデータに基づいて、1つまたは複数のファントムチャネルを作成することができる。あるいは、デコードされるチャネルの数が出力チャネルの数と等しい場合であっても、提示の任意の空間回転、スピーカ位置の間での出力チャネルの再写像、または他の立体感あるいは特殊効果に後処理変換を使用することができる。あるいは、デコードされるチャネルの数が出力チャネルの数より多い(たとえば、サラウンドサウンドオーディオをステレオ機器で再生する時)場合に、後処理変換を使用して、チャネルを「折り畳む」ことができる。いくつかの実施形態で、折り曲げられた係数が、潜在的に経時的に変化し、マルチチャネル後処理が、ビットストリームによって制御される。これらのシナリオおよび応用例の変換行列を、エンコーダによって提供またはシグナリングすることができる。
図39に、マルチチャネル後処理の一般化された手法(3900)を示す。デコーダは、図7に示された手法または他の圧縮解除手法を使用して、エンコードされたマルチチャネルオーディオデータ(3905)をデコードし(3910)、再構成された時間領域マルチチャネルオーディオデータ(3915)を作る。
デコーダは、次に、時間領域マルチチャネルオーディオデータ(3915)に対してマルチチャネル後処理を実行する(3920)。たとえば、エンコーダが、M個のデコードされるチャネルを作り、デコーダが、Nチャネルを出力する時に、後処理に、一般的なM対N変換が含まれる。デコーダは、再構成されるM個のコーディングされたチャネルのそれぞれから1つのM個の同一位置(時間的に)のサンプルをとり、欠けているチャネル(すなわちエンコーダによって捨てられたN−M個のチャネル)を、0でパディングする。デコーダは、N個のサンプルに行列Apostをかける。
post=Apost・xpost (28)
ここで、xpostおよびypostは、マルチチャネル後処理へのNチャネルの入力および出力であり、Apostは、一般的なN×N変換行列であり、xpostは、出力ベクトル長Nに一致するように0でパディングされる。
行列Apostは、事前に決定された要素を有する行列とすることができ、あるいは、エンコーダによって指定される要素を有する一般的な行列とすることができる。エンコーダは、事前に決定された行列を使用するようにデコーダに知らせる(たとえば、1つまたは複数のフラグビットを用いて)か、一般的な行列の要素をデコーダに送ることができ、あるいは、同一の行列Apostを必ず使用するようにデコーダを構成することができる。行列Apostは、対象または可逆など、特殊な特性を有する必要はない。追加の柔軟性のために、マルチチャネル後処理を、フレームごとまたは他の基礎でオン/オフにすることができる(この場合に、デコーダは、単位行列を使用して、チャネルを未変更のままにすることができる)。
図40に、図4に示された順序のチャネルを有する5.1チャネル再生環境で左チャネルおよび右チャネルからファントム中央チャネルを作成するのに使用される例の行列AP−center(4000)を示す。例の行列AP−center(4000)は、他のチャネルを変更せずに渡す。デコーダは、左、右、サブウーファ、左後ろ、および右後ろのチャネルから時間的に同位置のサンプルを入手し、中央チャネルを0でパディングする。その後、デコーダは、6つの入力サンプルに行列AP−center(4000)をかける。
Figure 2004264811
代替案では、デコーダが、異なる係数を有する行列または異なる個数のチャネルを使用する。たとえば、デコーダは、行列を使用して、5.1マルチチャネルオーディオのコーディングされたチャネルから、7.1チャネル、9.1チャネル、または異なる再生環境でのファントムチャネルを作成する。
図41に、フレームごとに変換行列が潜在的に変化するマルチチャネル後処理の手法(4100)を示す。変換行列の変更は、注意深く扱われない場合に、最終的な出力の可聴雑音(たとえばポンという音)につながる可能性がある。ポンという雑音を導入しないようにするために、デコーダは、ある変換行列から別の変換行列へ、フレームの間に徐々に推移する。
デコーダは、まず、図7に示された手法または他の圧縮解除手法を使用して、フレームのエンコードされたマルチチャネルオーディオデータをデコードし(4110)、再構成された時間領域マルチチャネルオーディオデータを作る。次に、デコーダは、たとえば図42に示されているように、フレームの後処理行列を入手する(4120)。
デコーダは、(前のフレームがある場合に)現在のフレームの行列が前のフレームの行列と異なるかどうかを判定する(4130)。現在の行列が同一であるか、前の行列が存在しない場合には、デコーダは、現在のフレームの再構成されたオーディオサンプルに行列を適用する(4140)。そうでない場合には、デコーダは、現在のフレームの再構成されたオーディオサンプルにブレンドされた変換行列を適用する(4150)。ブレンディング関数は、実施形態に依存する。一実施形態では、現在のフレームのサンプルiで、デコーダが、短期間ブレンドされた行列Apost,iを使用する。
Figure 2004264811
ここで、Apost,prevおよびApost,currentは、前のフレームおよび現在のフレームの後処理行列であり、NumSamplesは、現在のフレームのサンプル数である。代替案では、デコーダが、別のブレンディング関数を使用して、後処理変換行列の不連続性を平滑化する。
デコーダは、フレームごとに手法(4100)を繰り返す。代替案では、デコーダは、他の基礎でマルチチャネル後処理を変更する。
図42に、特定のビットストリーム構文によるマルチチャネル後処理の変換行列を識別し、検索する手法(4200)を示す。この構文を用いると、事前定義された変換行列ならびにマルチチャネル後処理のカスタム行列の指定が可能になる。図42には、ビットストリームを解析するためにデコーダによって実行される手法(4200)が示され、エンコーダは、対応する手法(フラグの設定、要素のデータのパックなど)を実行して、ビットストリーム構文に従って変換行列をフォーマットする。代替案では、デコーダおよびエンコーダが、図42に示されたオプションの1つまたは複数に、別の構文、たとえば、異なるフラグまたは異なる順序付けを使用する構文を使用する。
まず、デコーダは、チャネルの数#Channelsが1より大きいかどうかを判定する(4210)。#Channelsが1である場合には、オーディオデータはモノラルであり、デコーダは、単位行列を使用する(4212)(すなわち、マルチチャネル後処理自体を実行しない)。
その一方で、#Channels>1の場合には、デコーダは、ビットストリームの次のビットと等しくなるように一時値iTmpをセットする(4220)。次に、デコーダは、一時値の値を検査するが(4230)、この値によって、デコーダが単位行列を使用しなければならない(4232)か否かが示される。
デコーダが、マルチチャネルオーディオに単位行列以外の何かを使用する場合には、デコーダは、ビットストリームの次のビットと等しくなるように一時値iTmpをセットする(4240)。次に、デコーダは、一時値の値を検査するが(4250)、この値によって、デコーダが事前定義のマルチチャネル変換行列を使用(4252)しなければならないか否かが示される。デコーダが、事前定義の行列を使用する(4252)場合には、デコーダは、複数の使用可能な事前定義の行列のどれをデコーダが使用しなければならないかを示す1つまたは複数の追加ビットをビットストリーム(図示せず)から入手することができる。
デコーダが、事前定義の行列を使用しない場合には、デコーダは、カスタム行列をデコードするために、さまざまな一時値を初期化する。デコーダは、終了した係数のカウンタiCoefsDoneに0をセットし(4260)、行列の要素数(#Channels)と等しくなるように、デコードする係数の数#CoefsToDoをセットする(4262)。特定の特性(たとえば対照)を有することが既知の行列について、デコードされる係数の数を減らすことができる。次に、デコーダは、すべての係数がビットストリームから検索されたかどうかを判定し(4270)、そうである場合には終了する。そうでない場合には、デコーダは、行列の次の要素の値A[iCoefsDone]を入手し(4272)、iCoefsDoneを増分する(4274)。要素がコーディングされ、ビットストリームにパックされる形は、実装依存である。図42では、構文によって、変換行列の要素ごとに4ビットの精度が可能であり、各要素の絶対値が、1以下である。他の実施形態では、要素ごとの精度が、異なり、エンコーダおよびデコーダが、変換行列の冗長性のパターンを活用する圧縮を使用し、かつ/または構文が、他の形で異なる。
好ましい実施形態に関して本発明の原理を説明し、示したが、説明された実施形態を、そのような原理から逸脱せずに、配置および詳細において修正できることを諒解されたい。本明細書に記載のプログラム、処理、または方法は、特に示されない限り、コンピューティング環境の特定のタイプに関係せず、制限されないことを理解されたい。さまざまなタイプの汎用コンピューティング環境および特殊化されたコンピューティング環境は、本明細書に記載の教示による動作と共に使用されるか、その動作を実行することができる。説明された実施形態の、ソフトウェアで示された要素は、ハードウェアで実施することができ、逆も同様である。
本発明の原理を適用できる多数の可能な実施形態に鑑みて、本発明者は、そのような実施形態のすべてを、請求項およびその均等物の範囲および趣旨に含めることができると主張する。
従来技術によるオーディオエンコーダのブロック図である。 従来技術によるオーディオデコーダのブロック図である。 従来技術によるステレオオーディオデータのフレームのウィンドウ構成を示す図である。 従来技術によるステレオオーディオデータのフレームのウィンドウ構成を示す図である。 従来技術によるステレオオーディオデータのフレームのウィンドウ構成を示す図である。 5.1チャネル/スピーカ構成の6つのチャネルを示す図である。 説明されている本実施形態を実施することができる適切なコンピューティング環境のブロック図である。 説明されている本実施形態を実施することができるオーディオエンコーダのブロック図である。 説明されている本実施形態を実施することができるオーディオデコーダのブロック図である。 マルチチャネル前処理の一般化された手法を示す流れ図である。 マルチチャネル前処理の例の行列を示す図である。 マルチチャネル前処理の例の行列を示す図である。 マルチチャネル前処理の例の行列を示す図である。 マルチチャネル前処理の例の行列を示す図である。 マルチチャネル前処理の例の行列を示す図である。 フレームごとに変換行列が潜在的に変化するマルチチャネル前処理の手法を示す流れ図である。 マルチチャネルオーディオの例のタイル構成を示す図である。 マルチチャネルオーディオの例のタイル構成を示す図である。 マルチチャネルオーディオのタイルを構成する一般化された手法を示す流れ図である。 特定のビットストリーム構文によるマルチチャネルオーディオの並列のタイル構成およびタイル情報送出の手法を示す流れ図である。 知覚的重みづけの後にマルチチャネル変換を実行する一般化された手法を示す流れ図である。 逆知覚的重みづけの前に逆マルチチャネル変換を実行する一般化された手法を示す流れ図である。 一実施形態でマルチチャネル変換についてタイル内のチャネルをグループ化する手法を示す流れ図である。 特定のビットストリーム構文によるビットストリームからのタイルのチャネルグループ情報およびマルチチャネル変換情報の検索の手法を示す流れ図である。 一実施形態でマルチチャネル変換にチャネルグループの周波数帯域を選択的に含める手法を示す流れ図である。 特定のビットストリーム構文によるビットストリームからのタイルのチャネルグループに関するマルチチャネル変換の帯域オン/オフ情報を検索する手法を示す流れ図である。 より単純なマルチチャネル変換の階層を使用してマルチチャネル変換をエミュレートする一般化された手法を示す流れ図である。 マルチチャネル変換の例の階層を示す図である。 特定のビットストリーム構文によるビットストリームからのチャネルグループに関するマルチチャネル変換の階層の情報を検索する手法を示す流れ図である。 複数の使用可能なタイプの中からマルチチャネル変換タイプを選択する一般化された手法を示す流れ図である。 複数の使用可能なタイプの中からマルチチャネル変換タイプを検索し、逆マルチチャネル変換を実行する手法を示す流れ図である。 特定のビットストリーム構文によるビットストリームからチャネルグループに関するマルチチャネル変換情報を検索する手法を示す流れ図である。 マルチチャネル変換行列を表すギブンス回転の回転行列の一般形を示す図である。 マルチチャネル変換行列を表すギブンス回転の例の回転行列を示す図である。 マルチチャネル変換行列を表すギブンス回転の例の回転行列を示す図である。 マルチチャネル変換行列を表すギブンス回転の例の回転行列を示す図である。 量子化されたギブンス因数分解回転を使用してマルチチャネル変換行列を表す一般化された手法を示す流れ図である。 特定のビットストリーム構文によるビットストリームからチャネルグループの汎用ユニタリ変換の情報を検索する手法を示す流れ図である。 特定のビットストリーム構文によるビットストリームからタイルの全体的なタイル量子化係数を検索する手法を示す流れ図である。 マルチチャネルオーディオデータのチャネルごとの量子化ステップ変更子を計算する一般化された手法を示す流れ図である。 特定のビットストリーム構文によるビットストリームからチャネルごとの量子化ステップ変更子を検索する手法を示す流れ図である。 量子化行列要素の量子化ステップサイズを適応式にセットする一般化された手法を示す流れ図である。 量子化行列要素の適応量子化ステップサイズを検索する一般化された手法を示す流れ図である。 時間予測を使用して量子化行列を圧縮する手法を示す流れ図である。 時間予測を使用して量子化行列を圧縮する手法を示す流れ図である。 量子化行列要素の予測のための帯域の写像を示す図である。 特定のビットストリーム構文による時間予測を使用して圧縮された量子化行列の検索およびデコーディングの手法を示す流れ図である。 マルチチャネル後処理の一般化された手法を示す流れ図である。 マルチチャネル後処理の例の行列を示す図である。 フレームごとに変換行列が潜在的に変化するマルチチャネル後処理の手法を示す流れ図である。 特定のビットストリームによるマルチチャネル後処理の変換行列を識別し、検索する手法を示す流れ図である。
符号の説明
400 5.1チャネル/スピーカ配置行列
500 コンピューティング環境
510 処理ユニット
520 メモリ
570 通信接続
550 入力デバイス
560 出力デバイス
540 ストレージ
600 オーディオエンコーダ
605 入力オーディオサンプル
608 セレクタ
610 マルチチャネルプリプロセッサ
620 パーティショナ/タイルコンフィギュアラ
630 周波数トランスフォーマ
640 知覚モデラ
642 量子化帯域ウェイタ
644 チャネルウェイタ
690 MUX
695 出力ビットストリーム
650 マルチチャネルトランスフォーマ
672 ミックスド/ピュアロスレスコーダ
674 エントロピエンコーダ
680 レート/品質コントローラ
660 クォンタイザ
670 エントロピエンコーダ
700 オーディオデコーダ
705 入力ビットストリーム
710 DEMUX
730 タイル構成デコーダ
720 エントロピデコーダ
740 逆マルチチャネルトランスフォーマ
750 逆クォンタイザ/ウェイタ
760 逆周波数トランスフォーマ
770 オーバーラッパ/アダー
722 ミックスド/ピュアロスレスデコーダ
780 マルチチャネルポストプロセッサ
795 再構成されたオーディオ
805 時間領域マルチチャネルオーディオデータ
815 時間領域マルチチャネル変換されたオーディオデータ
825 エンコードされたマルチチャネルオーディオデータ

Claims (68)

  1. オーディオエンコーダにおいて、コンピュータにより実施される方法であって、
    複数のチャネルでオーディオデータを受け取ることと、
    前記複数のチャネルに関する複数のチャネル固有量子化係数を適用することを含む、前記オーディオデータを量子化することと
    を含むことを特徴とする方法。
  2. 前記複数のチャネルは、2つのチャネルからなることを特徴とする請求項1に記載の方法。
  3. 前記複数のチャネルは、2つを超えるチャネルからなることを特徴とする請求項1に記載の方法。
  4. 前記複数のチャネル固有量子化係数は、複数のチャネル固有量子化ステップ変更子であることを特徴とする請求項1に記載の方法。
  5. 前記エンコーダは、前記複数のチャネルにまたがって再構成品質のバランスをとるために前記複数の変更子を適用することを特徴とする請求項4に記載の方法。
  6. 前記エンコーダは、タイルのチャネルごとに前記複数の変更子の1つを計算することを特徴とする請求項4に記載の方法。
  7. 前記エンコーダ内で、1つまたは複数の判断基準に少なくとも部分的に基づいて前記量子化係数を計算することをさらに含むことを特徴とする請求項1に記載の方法。
  8. 前記判断基準は、前記複数のチャネルにまたがる再構成品質の均等を含むことを特徴とする請求項7に記載の方法。
  9. 前記判断基準は、前記複数のチャネルのうちで知覚的に他のチャネルより重要な1つまたは複数のチャネルを優先することを含むことを特徴とする請求項7に記載の方法。
  10. 前記計算することは、前記複数のチャネルのめいめいのエネルギに少なくとも部分的に基づくことを特徴とする請求項7に記載の方法。
  11. 前記エンコーダ内で、オープンループ評価によって前記量子化係数を計算することをさらに含むことを特徴とする請求項1に記載の方法。
  12. 前記エンコーダ内で、クローズドループ評価によって前記量子化係数を計算することをさらに含むことを特徴とする請求項1に記載の方法。
  13. コンピュータ実行可能命令を保管し、それによってプログラムされたコンピュータに請求項1に記載の方法を実行させることを特徴とするコンピュータ可読メディア。
  14. オーディオデコーダにおいて、コンピュータにより実施される方法であって、
    複数のチャネルでエンコードされたオーディオデータを受け取ることと、
    複数のチャネル固有クォンタイザステップ変更子に関する情報を検索することと、
    逆量子化で前記複数のチャネルに関する前記複数のチャネル固有クォンタイザステップ変更子を適用することを含み、前記オーディオデータをデコードすることと
    を含むことを特徴とする方法。
  15. 前記複数のチャネルは、2つのチャネルからなることを特徴とする請求項14に記載の方法。
  16. 前記複数のチャネルは、2つを超えるチャネルからなることを特徴とする請求項14に記載の方法。
  17. 前記デコーダは、タイルのチャネルごとに、前記複数のチャネル固有クォンタイザステップ変更子の1つに関する情報を検索することを特徴とする請求項14に記載の方法。
  18. 前記検索することは、前記複数のチャネル固有クォンタイザステップ変更子の精度を示す複数のビットを入手することを含むことを特徴とする請求項14に記載の方法。
  19. 前記検索することは、変更子が0の値を有するかどうかを示すために変更子ごとに単一のビットを入手することを含むことを特徴とする請求項14に記載の方法。
  20. 前記適用することは、量子化に関する組み合わされたステップの一部であることを特徴とし、複数の係数のそれぞれについて、前記組み合わされたステップは、全体的な量子化の量による単一の乗算を含むことを特徴とする請求項14に記載の方法。
  21. コンピュータ実行可能命令を保管し、それによってプログラムされたコンピュータに請求項14に記載の方法を実行させることを特徴とするコンピュータ可読メディア。
  22. オーディオエンコーダにおいて、コンピュータにより実施される方法であって、
    オーディオデータを受け取ることと、
    複数の量子化行列を適用することを含む、前記オーディオデータを量子化することであって、ここで前記エンコーダが、前記複数の量子化行列の分解能を変更することと
    を含むことを特徴とする方法。
  23. 前記オーディオデータは、単一のチャネルになっていることを特徴とする請求項22に記載の方法。
  24. 前記オーディオデータは、2つのチャネルになっていることを特徴とする請求項22に記載の方法。
  25. 前記オーディオデータは、2つを超えるチャネルになっていることを特徴とする請求項22に記載の方法。
  26. 前記エンコーダは、前記複数の量子化行列に関する情報の量子化を変更することによって前記分解能を変更することを特徴とする請求項22に記載の方法。
  27. 前記エンコーダは、前記複数の量子化行列の要素の量子化を変更することによって前記分解能を変更することを特徴とする請求項22に記載の方法。
  28. 前記エンコーダは、ビットを節約するために低品質オーディオデータについて前記要素を粗く量子化することを特徴とし、前記エンコーダは、品質を保つために高品質オーディオデータについて前記要素を微細に量子化することを特徴とする請求項27に記載の方法。
  29. 前記エンコーダは、チャネルごとに前記分解能をセットすることを特徴とする請求項22に記載の方法。
  30. 前記エンコーダ内で、オープンループ評価によって前記分解能をセットすることをさらに含むことを特徴とする請求項22に記載の方法。
  31. 前記エンコーダ内で、クローズドループ評価によって前記分解能をセットすることをさらに含むことを特徴とする請求項22に記載の方法。
  32. コンピュータ実行可能命令を保管し、それによってプログラムされたコンピュータに請求項22に記載の方法を実行させることを特徴とするコンピュータ可読メディア。
  33. オーディオデコーダにおいて、コンピュータにより実施される方法であって、
    エンコードされたオーディオデータを受け取ることと、
    逆量子化で複数の量子化行列を適用することを含む、前記オーディオデータをデコードすることであって、ここで前記複数の量子化行列の分解能は前記デコード中に変化することと
    を含むことを特徴とする方法。
  34. 前記オーディオデータは、単一のチャネルになっていることを特徴とする請求項33に記載の方法。
  35. 前記オーディオデータは、2つのチャネルになっていることを特徴とする請求項33に記載の方法。
  36. 前記オーディオデータは、2つを超えるチャネルになっていることを特徴とする請求項33に記載の方法。
  37. 前記分解能は、前記複数の量子化行列に関する情報の量子化の変化に起因して変化することを特徴とする請求項33に記載の方法。
  38. 前記分解能は、前記複数の量子化行列の要素の量子化の変化に起因して変化することを特徴とする請求項33に記載の方法。
  39. 前記分解能が、チャネルごとにセットされることを特徴とする請求項33に記載の方法。
  40. 前記適用することは、量子化に関する組み合わされたステップの一部であることを特徴とし、複数の係数のそれぞれについて、前記組み合わされたステップは、全体的な量子化の量による単一の乗算を含むことを特徴とする請求項33に記載の方法。
  41. コンピュータ実行可能命令を保管し、それによってプログラムされたコンピュータに請求項33に記載の方法を実行させることを特徴とするコンピュータ可読メディア。
  42. オーディオエンコーダにおいて、コンピュータにより実施される方法であって、
    オーディオデータを受け取ることと、
    複数の量子化行列を計算することと、
    時間予測を使用して、前記複数の量子化行列の少なくとも1つを圧縮することと
    を含むことを特徴とする方法。
  43. 前記オーディオデータは、単一のチャネルになっていることを特徴とする請求項42に記載の方法。
  44. 前記オーディオデータは、2つのチャネルになっていることを特徴とする請求項42に記載の方法。
  45. 前記オーディオデータは、2つを超えるチャネルになっていることを特徴とする請求項42に記載の方法。
  46. 前記複数の量子化行列を圧縮解除することと、
    前記複数の量子化行列を適用することを含む、前記オーディオデータを量子化することと
    をさらに含むことを特徴とする請求項42に記載の方法。
  47. 前記複数の圧縮された量子化行列に関する情報を出力することをさらに含むことを特徴とする請求項42に記載の方法。
  48. 前記時間予測は、アンカ行列からチャネル内の現在の行列への時間予測であることを特徴とする請求項42に記載の方法。
  49. 直接圧縮を使用して前記複数の量子化行列の少なくとも1つを圧縮することをさらに含むことを特徴とする請求項42に記載の方法。
  50. 前記圧縮することは、アンカ行列と異なるサイズを有する現在の行列の時間予測のために前記アンカ行列に対して再サンプリング処理を実行することをさらに含むことを特徴とする請求項42に記載の方法。
  51. 前記圧縮することは、
    別の行列に関する現在の行列の予測を計算することと、
    前記現在の行列および前記予測から残差を計算することと
    を含むことを特徴とする請求項42に記載の方法。
  52. 前記計算することは、前記残差をランレベルコーディングすることをさらに含むことを特徴とする請求項51に記載の方法。
  53. コンピュータ実行可能命令を保管し、それによってプログラムされたコンピュータに請求項42に記載の方法を実行させることを特徴とするコンピュータ可読メディア。
  54. オーディオデコーダにおいて、コンピュータにより実施される方法であって、
    エンコードされたオーディオデータを受け取ることと、
    複数の量子化行列に関する情報を検索することと、
    時間予測を使用して、前記複数の量子化行列の少なくとも1つを圧縮解除することと
    を含むことを特徴とする方法。
  55. 前記オーディオデータは、単一のチャネルになっていることを特徴とする請求項54に記載の方法。
  56. 前記オーディオデータは、2つのチャネルになっていることを特徴とする請求項54に記載の方法。
  57. 前記オーディオデータは、2つを超えるチャネルになっていることを特徴とする請求項54に記載の方法。
  58. 前記複数の量子化行列を適用することを含む、前記オーディオデータを逆量子化することをさらに含むことを特徴とする請求項54に記載の方法。
  59. 前記デコーダは、量子化に関する組み合わされたステップで逆量子化を実行することを特徴とし、複数の係数のそれぞれについて、前記組み合わされたステップは、全体的な量子化の量による単一の乗算を含むことを特徴とする請求項58に記載の方法。
  60. 前記時間予測は、アンカ行列からチャネル内の現在の行列への時間予測であることを特徴とする請求項54に記載の方法。
  61. 前記デコーダは、各フレームの初めにアンカ行列をリセットすることを特徴とする請求項60に記載の方法。
  62. 直接圧縮解除を使用して、前記複数の量子化行列の少なくとも1つを圧縮解除することをさらに含むことを特徴とする請求項54に記載の方法。
  63. 前記圧縮解除することは、アンカ行列と異なるサイズを有する現在の行列の時間予測のために前記アンカ行列に対して再サンプリング処理を実行することをさらに含むことを特徴とする請求項54に記載の方法。
  64. 前記サイズは、帯域の数に関することを特徴とする請求項63に記載の方法。
  65. 前記圧縮解除することは、
    別の行列に関する現在の行列の予測を計算することと、
    前記現在の行列に関する残差をデコードすることと、
    前記残差と前記現在の行列に関する前記予測とを合計することと
    を含むことを特徴とする請求項54に記載の方法。
  66. 前記残差を前記デコードすることは、前記残差をランレベルデコーディングすることを含むことを特徴とする請求項65に記載の方法。
  67. 前記圧縮解除することは、
    別の行列に関する現在の行列の予測を計算することと、
    前記現在の行列に関する残差の存在または不在を示すビットを入手することと、
    残差は前記現在の行列に関して存在する場合に、前記残差をデコードし、前記残差と前記現在の行列の前記予想とを合計することと
    を含むことを特徴とする請求項54に記載の方法。
  68. コンピュータ実行可能命令を保管し、それによってプログラムされたコンピュータに請求項54に記載の方法を実行させることを特徴とするコンピュータ可読メディア。
JP2003309277A 2002-09-04 2003-09-01 オーディオの量子化および逆量子化 Expired - Lifetime JP4676140B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US40851702P 2002-09-04 2002-09-04
US10/642,551 US7299190B2 (en) 2002-09-04 2003-08-15 Quantization and inverse quantization for audio

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2010095924A Division JP5091272B2 (ja) 2002-09-04 2010-04-19 オーディオの量子化および逆量子化

Publications (3)

Publication Number Publication Date
JP2004264811A true JP2004264811A (ja) 2004-09-24
JP2004264811A5 JP2004264811A5 (ja) 2006-10-05
JP4676140B2 JP4676140B2 (ja) 2011-04-27

Family

ID=31981597

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2003309277A Expired - Lifetime JP4676140B2 (ja) 2002-09-04 2003-09-01 オーディオの量子化および逆量子化
JP2010095924A Expired - Lifetime JP5091272B2 (ja) 2002-09-04 2010-04-19 オーディオの量子化および逆量子化

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2010095924A Expired - Lifetime JP5091272B2 (ja) 2002-09-04 2010-04-19 オーディオの量子化および逆量子化

Country Status (6)

Country Link
US (2) US8069052B2 (ja)
EP (3) EP2261897A1 (ja)
JP (2) JP4676140B2 (ja)
AT (1) ATE418136T1 (ja)
DE (2) DE60325310D1 (ja)
ES (1) ES2316679T3 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008522551A (ja) * 2004-11-30 2008-06-26 アギア システムズ インコーポレーテッド 被送出チャネルに基づくキューを用いる空間オーディオのパラメトリック・コーディング
JP2008543227A (ja) * 2005-06-03 2008-11-27 ドルビー・ラボラトリーズ・ライセンシング・コーポレーション サイド情報を有するチャンネルの再構成
JP2009501354A (ja) * 2005-07-14 2009-01-15 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ オーディオエンコード及びデコード
JP2009503576A (ja) * 2005-07-29 2009-01-29 エルジー エレクトロニクス インコーポレイティド オーディオ信号の処理方法
JP2009506378A (ja) * 2005-08-30 2009-02-12 エルジー エレクトロニクス インコーポレイティド オーディオ信号デコーディング方法及びその装置
JP2009194506A (ja) * 2008-02-13 2009-08-27 Pioneer Electronic Corp 受信装置、音声再生方法、音声再生プログラム及びその記録媒体
JP2013077017A (ja) * 2005-04-15 2013-04-25 Fraunhofer Ges Zur Foerderung Der Angewandten Forschung Ev マルチチャネルシンセサイザ制御信号を発生するための装置および方法並びにマルチチャネル合成のための装置および方法
US8626503B2 (en) 2005-07-14 2014-01-07 Erik Gosuinus Petrus Schuijers Audio encoding and decoding

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1764923B1 (en) * 2004-07-02 2011-01-12 Nippon Telegraph And Telephone Corporation Multi-channel signal encoding method, decoding method, device thereof, program, and recording medium thereof
US7733973B2 (en) 2004-08-19 2010-06-08 The University Of Tokyo Multichannel signal encoding method, its decoding method, devices for these, program, and its recording medium
US8577483B2 (en) 2005-08-30 2013-11-05 Lg Electronics, Inc. Method for decoding an audio signal
DE102006055737A1 (de) * 2006-11-25 2008-05-29 Deutsche Telekom Ag Verfahren zur skalierbaren Codierung von Stereo-Signalen
CA2672165C (en) * 2006-12-12 2014-07-29 Ralf Geiger Encoder, decoder and methods for encoding and decoding data segments representing a time-domain data stream
US8612237B2 (en) * 2007-04-04 2013-12-17 Apple Inc. Method and apparatus for determining audio spatial quality
US8457958B2 (en) * 2007-11-09 2013-06-04 Microsoft Corporation Audio transcoder using encoder-generated side information to transcode to target bit-rate
WO2010091555A1 (zh) * 2009-02-13 2010-08-19 华为技术有限公司 一种立体声编码方法和装置
JP5533502B2 (ja) * 2010-09-28 2014-06-25 富士通株式会社 オーディオ符号化装置、オーディオ符号化方法及びオーディオ符号化用コンピュータプログラム
US8620166B2 (en) * 2011-01-07 2013-12-31 Raytheon Bbn Technologies Corp. Holevo capacity achieving joint detection receiver
KR101854469B1 (ko) * 2011-11-30 2018-05-04 삼성전자주식회사 오디오 컨텐츠의 비트레이트 판단장치 및 방법
TWI453733B (zh) * 2011-12-30 2014-09-21 Nyquest Corp Ltd 音訊量化編解碼裝置及其方法
US9070362B2 (en) 2011-12-30 2015-06-30 Nyquest Corporation Limited Audio quantization coding and decoding device and method thereof
US9336791B2 (en) * 2013-01-24 2016-05-10 Google Inc. Rearrangement and rate allocation for compressing multichannel audio
JP6179122B2 (ja) * 2013-02-20 2017-08-16 富士通株式会社 オーディオ符号化装置、オーディオ符号化方法、オーディオ符号化プログラム
EP3014609B1 (en) * 2013-06-27 2017-09-27 Dolby Laboratories Licensing Corporation Bitstream syntax for spatial voice coding
FR3008533A1 (fr) * 2013-07-12 2015-01-16 Orange Facteur d'echelle optimise pour l'extension de bande de frequence dans un decodeur de signaux audiofrequences
TWI579831B (zh) 2013-09-12 2017-04-21 杜比國際公司 用於參數量化的方法、用於量化的參數之解量化方法及其電腦可讀取的媒體、音頻編碼器、音頻解碼器及音頻系統
US9794712B2 (en) 2014-04-25 2017-10-17 Dolby Laboratories Licensing Corporation Matrix decomposition for rendering adaptive audio using high definition audio codecs
EP2963949A1 (en) * 2014-07-02 2016-01-06 Thomson Licensing Method and apparatus for decoding a compressed HOA representation, and method and apparatus for encoding a compressed HOA representation
US10249312B2 (en) * 2015-10-08 2019-04-02 Qualcomm Incorporated Quantization of spatial vectors
US9961475B2 (en) 2015-10-08 2018-05-01 Qualcomm Incorporated Conversion from object-based audio to HOA
US9961467B2 (en) 2015-10-08 2018-05-01 Qualcomm Incorporated Conversion from channel-based audio to HOA
CN109302222B (zh) * 2016-05-13 2019-11-19 华为技术有限公司 一种信道信息发送方法、数据发送方法和设备
WO2018044125A1 (ko) * 2016-09-01 2018-03-08 엘지전자(주) 레이어드 기븐스 변환을 이용하여 변환을 수행하는 방법 및 장치
EP3467824B1 (en) * 2017-10-03 2021-04-21 Dolby Laboratories Licensing Corporation Method and system for inter-channel coding
GB2576769A (en) * 2018-08-31 2020-03-04 Nokia Technologies Oy Spatial parameter signalling
MX2022015649A (es) * 2020-06-11 2023-03-06 Dolby Laboratories Licensing Corp Cuantificacion y codificacion entropica de parametros para un codec de audio de baja latencia.

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0675590A (ja) * 1992-03-02 1994-03-18 American Teleph & Telegr Co <Att> 知覚モデルに基づく音声信号符号化方法とその装置
JPH06149292A (ja) * 1992-11-11 1994-05-27 Sony Corp 高能率符号化方法及び装置
WO1995002925A1 (fr) * 1993-07-16 1995-01-26 Sony Corporation Procede et dispositif de codage a haute efficacite, procede et dispositif de decodage a haute efficacite, systeme de codage/decodage et support d'enregistrement a haute efficacite
JPH09500503A (ja) * 1993-07-16 1997-01-14 ドルビー・ラボラトリーズ・ライセンシング・コーポレーション 適応ビット配分符号化装置及び方法
WO2000060746A2 (en) * 1999-04-07 2000-10-12 Dolby Laboratories Licensing Corporation Matrixing for losseless encoding and decoding of multichannels audio signals
JP2001044844A (ja) * 1999-07-26 2001-02-16 Matsushita Electric Ind Co Ltd サブバンド符号化方式

Family Cites Families (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB206877A (en) 1922-05-17 1923-11-19 Charles Kingston Welch Improvements in or relating to pneumatic tyres and wheels for various vehicles
US1691801A (en) 1926-06-24 1928-11-13 George W Fothergill Multiplane bevel square
US1769401A (en) 1928-04-23 1930-07-01 William W Tancre Fruit clipper
JPS5921039B2 (ja) * 1981-11-04 1984-05-17 日本電信電話株式会社 適応予測符号化方式
CA1253255A (en) 1983-05-16 1989-04-25 Nec Corporation System for simultaneously coding and decoding a plurality of signals
GB8421498D0 (en) 1984-08-24 1984-09-26 British Telecomm Frequency domain speech coding
GB2205465B (en) * 1987-05-13 1991-09-04 Ricoh Kk Image transmission system
US4922537A (en) 1987-06-02 1990-05-01 Frederiksen & Shu Laboratories, Inc. Method and apparatus employing audio frequency offset extraction and floating-point conversion for digitally encoding and decoding high-fidelity audio signals
NL8901032A (nl) 1988-11-10 1990-06-01 Philips Nv Coder om extra informatie op te nemen in een digitaal audiosignaal met een tevoren bepaald formaat, een decoder om deze extra informatie uit dit digitale signaal af te leiden, een inrichting voor het opnemen van een digitaal signaal op een registratiedrager, voorzien van de coder, en een registratiedrager verkregen met deze inrichting.
US5222189A (en) 1989-01-27 1993-06-22 Dolby Laboratories Licensing Corporation Low time-delay transform coder, decoder, and encoder/decoder for high-quality audio
US5479562A (en) 1989-01-27 1995-12-26 Dolby Laboratories Licensing Corporation Method and apparatus for encoding and decoding audio information
CA2026207C (en) 1989-01-27 1995-04-11 Louis Dunn Fielder Low time-delay transform coder, decoder, and encoder/decoder for high-quality audio
US5752225A (en) 1989-01-27 1998-05-12 Dolby Laboratories Licensing Corporation Method and apparatus for split-band encoding and split-band decoding of audio information using adaptive bit allocation to adjacent subbands
US5142656A (en) 1989-01-27 1992-08-25 Dolby Laboratories Licensing Corporation Low bit rate transform coder, decoder, and encoder/decoder for high-quality audio
EP0386418B1 (de) 1989-03-06 1994-12-21 Robert Bosch Gmbh Verfahren zur Datenreduktion bei digitalen Tonsignalen und zur genäherten Rückgewinnung der digitalen Tonsignale
DE69029120T2 (de) * 1989-04-25 1997-04-30 Toshiba Kawasaki Kk Stimmenkodierer
US5115240A (en) 1989-09-26 1992-05-19 Sony Corporation Method and apparatus for encoding voice signals divided into a plurality of frequency bands
JP2921879B2 (ja) * 1989-09-29 1999-07-19 株式会社東芝 画像データ処理装置
US5185800A (en) 1989-10-13 1993-02-09 Centre National D'etudes Des Telecommunications Bit allocation device for transformed digital audio broadcasting signals with adaptive quantization based on psychoauditive criterion
JP2560873B2 (ja) * 1990-02-28 1996-12-04 日本ビクター株式会社 直交変換符号化復号化方法
JP2861238B2 (ja) 1990-04-20 1999-02-24 ソニー株式会社 ディジタル信号符号化方法
US5388181A (en) * 1990-05-29 1995-02-07 Anderson; David J. Digital audio compression system
JP3033156B2 (ja) * 1990-08-24 2000-04-17 ソニー株式会社 ディジタル信号符号化装置
US5274740A (en) 1991-01-08 1993-12-28 Dolby Laboratories Licensing Corporation Decoder for variable number of channel presentation of multidimensional sound fields
US5559900A (en) 1991-03-12 1996-09-24 Lucent Technologies Inc. Compression of signals for perceptual quality by selecting frequency bands having relatively high energy
JP3141450B2 (ja) 1991-09-30 2001-03-05 ソニー株式会社 オーディオ信号処理方法
US5369724A (en) 1992-01-17 1994-11-29 Massachusetts Institute Of Technology Method and apparatus for encoding, decoding and compression of audio-type data using reference coefficients located within a band of coefficients
EP0559348A3 (en) * 1992-03-02 1993-11-03 AT&T Corp. Rate control loop processor for perceptual encoder/decoder
JP2693893B2 (ja) * 1992-03-30 1997-12-24 松下電器産業株式会社 ステレオ音声符号化方法
SG43996A1 (en) * 1993-06-22 1997-11-14 Thomson Brandt Gmbh Method for obtaining a multi-channel decoder matrix
US5632003A (en) * 1993-07-16 1997-05-20 Dolby Laboratories Licensing Corporation Computationally efficient adaptive bit allocation for coding method and apparatus
US7158654B2 (en) * 1993-11-18 2007-01-02 Digimarc Corporation Image processor and image processing method
US5684920A (en) * 1994-03-17 1997-11-04 Nippon Telegraph And Telephone Acoustic signal transform coding method and decoding method having a high efficiency envelope flattening method therein
DE4409368A1 (de) * 1994-03-18 1995-09-21 Fraunhofer Ges Forschung Verfahren zum Codieren mehrerer Audiosignale
JP3277677B2 (ja) * 1994-04-01 2002-04-22 ソニー株式会社 信号符号化方法及び装置、信号記録媒体、信号伝送方法、並びに信号復号化方法及び装置
ATE214524T1 (de) * 1994-11-04 2002-03-15 Koninkl Philips Electronics Nv Kodierung und dekodierung eines breitbandigen digitalen informationssignals
US5774846A (en) * 1994-12-19 1998-06-30 Matsushita Electric Industrial Co., Ltd. Speech coding apparatus, linear prediction coefficient analyzing apparatus and noise reducing apparatus
US5629780A (en) * 1994-12-19 1997-05-13 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Image data compression having minimum perceptual error
WO1996032710A1 (en) * 1995-04-10 1996-10-17 Corporate Computer Systems, Inc. System for compression and decompression of audio signals for digital transmission
US5774837A (en) * 1995-09-13 1998-06-30 Voxware, Inc. Speech coding system and method using voicing probability determination
US5960390A (en) * 1995-10-05 1999-09-28 Sony Corporation Coding method for using multi channel audio signals
DE19549621B4 (de) * 1995-10-06 2004-07-01 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung zum Codieren von Audiosignalen
US5819215A (en) * 1995-10-13 1998-10-06 Dobson; Kurt Method and apparatus for wavelet based data compression having adaptive bit rate control for compression of digital audio or other sensory data
JPH09152896A (ja) * 1995-11-30 1997-06-10 Oki Electric Ind Co Ltd 声道予測係数符号化・復号化回路、声道予測係数符号化回路、声道予測係数復号化回路、音声符号化装置及び音声復号化装置
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
US5686964A (en) * 1995-12-04 1997-11-11 Tabatabai; Ali Bit rate control mechanism for digital image and video data compression
FR2742568B1 (fr) * 1995-12-15 1998-02-13 Catherine Quinquis Procede d'analyse par prediction lineaire d'un signal audiofrequence, et procedes de codage et de decodage d'un signal audiofrequence en comportant application
US5682152A (en) * 1996-03-19 1997-10-28 Johnson-Grace Company Data compression using adaptive bit allocation and hybrid lossless entropy encoding
US5812971A (en) * 1996-03-22 1998-09-22 Lucent Technologies Inc. Enhanced joint stereo coding method using temporal envelope shaping
US5822370A (en) * 1996-04-16 1998-10-13 Aura Systems, Inc. Compression/decompression for preservation of high fidelity speech quality at low bandwidth
DE19628293C1 (de) * 1996-07-12 1997-12-11 Fraunhofer Ges Forschung Codieren und Decodieren von Audiosignalen unter Verwendung von Intensity-Stereo und Prädiktion
DE19628292B4 (de) 1996-07-12 2007-08-02 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Verfahren zum Codieren und Decodieren von Stereoaudiospektralwerten
US5969750A (en) * 1996-09-04 1999-10-19 Winbcnd Electronics Corporation Moving picture camera with universal serial bus interface
GB2318029B (en) * 1996-10-01 2000-11-08 Nokia Mobile Phones Ltd Audio coding method and apparatus
SG54379A1 (en) * 1996-10-24 1998-11-16 Sgs Thomson Microelectronics A Audio decoder with an adaptive frequency domain downmixer
JP3339335B2 (ja) * 1996-12-12 2002-10-28 ヤマハ株式会社 圧縮符号化復号方式
JP3283200B2 (ja) * 1996-12-19 2002-05-20 ケイディーディーアイ株式会社 符号化音声データの符号化レート変換方法および装置
FI970266A (fi) * 1997-01-22 1998-07-23 Nokia Telecommunications Oy Menetelmä solukkoradiojärjestelmän ohjauskanavien kantaman pidentämiseksi ja solukkoradiojärjestelmä
EP1113672B1 (en) * 1997-02-08 2005-04-13 Matsushita Electric Industrial Co., Ltd. Quantization matrix for still and moving picture coding
JP3143406B2 (ja) * 1997-02-19 2001-03-07 三洋電機株式会社 音声符号化方法
FI114248B (fi) * 1997-03-14 2004-09-15 Nokia Corp Menetelmä ja laite audiokoodaukseen ja audiodekoodaukseen
KR100265112B1 (ko) * 1997-03-31 2000-10-02 윤종용 디브이디 디스크와 디브이디 디스크를 재생하는 장치 및 방법
US6064954A (en) * 1997-04-03 2000-05-16 International Business Machines Corp. Digital audio signal coding
EP0924962B1 (en) 1997-04-10 2012-12-12 Sony Corporation Encoding method and device, decoding method and device, and recording medium
DE19730129C2 (de) 1997-07-14 2002-03-07 Fraunhofer Ges Forschung Verfahren zum Signalisieren einer Rauschsubstitution beim Codieren eines Audiosignals
DE19730130C2 (de) * 1997-07-14 2002-02-28 Fraunhofer Ges Forschung Verfahren zum Codieren eines Audiosignals
US6016111A (en) * 1997-07-31 2000-01-18 Samsung Electronics Co., Ltd. Digital data coding/decoding method and apparatus
US6185253B1 (en) * 1997-10-31 2001-02-06 Lucent Technology, Inc. Perceptual compression and robust bit-rate control system
US6253185B1 (en) * 1998-02-25 2001-06-26 Lucent Technologies Inc. Multiple description transform coding of audio using optimal transforms of arbitrary dimension
US6249614B1 (en) * 1998-03-06 2001-06-19 Alaris, Inc. Video compression and decompression using dynamic quantization and/or encoding
US6353807B1 (en) * 1998-05-15 2002-03-05 Sony Corporation Information coding method and apparatus, code transform method and apparatus, code transform control method and apparatus, information recording method and apparatus, and program providing medium
JP3437445B2 (ja) * 1998-05-22 2003-08-18 松下電器産業株式会社 線形信号予測を用いた受信装置及び方法
US6029126A (en) * 1998-06-30 2000-02-22 Microsoft Corporation Scalable audio coder and decoder
US6115689A (en) * 1998-05-27 2000-09-05 Microsoft Corporation Scalable audio coder and decoder
JP3998330B2 (ja) * 1998-06-08 2007-10-24 沖電気工業株式会社 符号化装置
JP3541680B2 (ja) * 1998-06-15 2004-07-14 日本電気株式会社 音声音楽信号の符号化装置および復号装置
DE19840835C2 (de) * 1998-09-07 2003-01-09 Fraunhofer Ges Forschung Vorrichtung und Verfahren zum Entropiecodieren von Informationswörtern und Vorrichtung und Verfahren zum Decodieren von Entropie-codierten Informationswörtern
SE519552C2 (sv) 1998-09-30 2003-03-11 Ericsson Telefon Ab L M Flerkanalig signalkodning och -avkodning
CA2252170A1 (en) * 1998-10-27 2000-04-27 Bruno Bessette A method and device for high quality coding of wideband speech and audio signals
US6370502B1 (en) * 1999-05-27 2002-04-09 America Online, Inc. Method and system for reduction of quantization-induced block-discontinuities and general purpose audio codec
US6226616B1 (en) * 1999-06-21 2001-05-01 Digital Theater Systems, Inc. Sound quality of established low bit-rate audio coding systems without loss of decoder compatibility
US6658162B1 (en) * 1999-06-26 2003-12-02 Sharp Laboratories Of America Image coding method using visual optimization
EP1221694B1 (en) * 1999-09-14 2006-07-19 Fujitsu Limited Voice encoder/decoder
US6418405B1 (en) * 1999-09-30 2002-07-09 Motorola, Inc. Method and apparatus for dynamic segmentation of a low bit rate digital voice message
US7096240B1 (en) * 1999-10-30 2006-08-22 Stmicroelectronics Asia Pacific Pte Ltd. Channel coupling for an AC-3 encoder
US6738074B2 (en) * 1999-12-29 2004-05-18 Texas Instruments Incorporated Image compression system and method
US6499010B1 (en) * 2000-01-04 2002-12-24 Agere Systems Inc. Perceptual audio coder bit allocation scheme providing improved perceptual quality consistency
JP2001285073A (ja) 2000-03-29 2001-10-12 Sony Corp 信号処理装置及び方法
US6757654B1 (en) * 2000-05-11 2004-06-29 Telefonaktiebolaget Lm Ericsson Forward error correction in speech coding
DE60132853D1 (de) 2000-07-07 2008-04-03 Nokia Siemens Networks Oy Verfahren und Vorrichtung für die perzeptuelle Tonkodierung von einem mehrkanal Tonsignal mit Verwendung der kaskadierten diskreten Cosinustransformation oder der modifizierten diskreten Cosinustransformation
JP4857468B2 (ja) * 2001-01-25 2012-01-18 ソニー株式会社 データ処理装置およびデータ処理方法、並びにプログラムおよび記録媒体
US7062445B2 (en) * 2001-01-26 2006-06-13 Microsoft Corporation Quantization loop with heuristic approach
US7136418B2 (en) * 2001-05-03 2006-11-14 University Of Washington Scalable and perceptually ranked signal coding and decoding
US6934677B2 (en) * 2001-12-14 2005-08-23 Microsoft Corporation Quantization matrices based on critical band pattern information for digital audio wherein quantization bands differ from critical bands
US7240001B2 (en) * 2001-12-14 2007-07-03 Microsoft Corporation Quality improvement techniques in an audio encoder
US7027982B2 (en) * 2001-12-14 2006-04-11 Microsoft Corporation Quality and rate control strategy for digital audio
US7460993B2 (en) * 2001-12-14 2008-12-02 Microsoft Corporation Adaptive window-size selection in transform coding
US7146313B2 (en) 2001-12-14 2006-12-05 Microsoft Corporation Techniques for measurement of perceptual audio quality
US7299190B2 (en) * 2002-09-04 2007-11-20 Microsoft Corporation Quantization and inverse quantization for audio
WO2005062823A2 (en) 2003-12-19 2005-07-14 Savacor, Inc. Digital electrode for cardiac rhythm management

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0675590A (ja) * 1992-03-02 1994-03-18 American Teleph & Telegr Co <Att> 知覚モデルに基づく音声信号符号化方法とその装置
JPH06149292A (ja) * 1992-11-11 1994-05-27 Sony Corp 高能率符号化方法及び装置
WO1995002925A1 (fr) * 1993-07-16 1995-01-26 Sony Corporation Procede et dispositif de codage a haute efficacite, procede et dispositif de decodage a haute efficacite, systeme de codage/decodage et support d'enregistrement a haute efficacite
JPH09500503A (ja) * 1993-07-16 1997-01-14 ドルビー・ラボラトリーズ・ライセンシング・コーポレーション 適応ビット配分符号化装置及び方法
WO2000060746A2 (en) * 1999-04-07 2000-10-12 Dolby Laboratories Licensing Corporation Matrixing for losseless encoding and decoding of multichannels audio signals
JP2002541524A (ja) * 1999-04-07 2002-12-03 ドルビー・ラボラトリーズ・ライセンシング・コーポレーション 損失のない符号化・復号へのマトリックス改良
JP2001044844A (ja) * 1999-07-26 2001-02-16 Matsushita Electric Ind Co Ltd サブバンド符号化方式

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008522551A (ja) * 2004-11-30 2008-06-26 アギア システムズ インコーポレーテッド 被送出チャネルに基づくキューを用いる空間オーディオのパラメトリック・コーディング
JP4856653B2 (ja) * 2004-11-30 2012-01-18 アギア システムズ インコーポレーテッド 被送出チャネルに基づくキューを用いる空間オーディオのパラメトリック・コーディング
JP2013077017A (ja) * 2005-04-15 2013-04-25 Fraunhofer Ges Zur Foerderung Der Angewandten Forschung Ev マルチチャネルシンセサイザ制御信号を発生するための装置および方法並びにマルチチャネル合成のための装置および方法
JP2008543227A (ja) * 2005-06-03 2008-11-27 ドルビー・ラボラトリーズ・ライセンシング・コーポレーション サイド情報を有するチャンネルの再構成
JP2009501354A (ja) * 2005-07-14 2009-01-15 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ オーディオエンコード及びデコード
JP2011059711A (ja) * 2005-07-14 2011-03-24 Koninkl Philips Electronics Nv オーディオエンコード及びデコード
US8626503B2 (en) 2005-07-14 2014-01-07 Erik Gosuinus Petrus Schuijers Audio encoding and decoding
JP2009503576A (ja) * 2005-07-29 2009-01-29 エルジー エレクトロニクス インコーポレイティド オーディオ信号の処理方法
JP2009506378A (ja) * 2005-08-30 2009-02-12 エルジー エレクトロニクス インコーポレイティド オーディオ信号デコーディング方法及びその装置
JP2009194506A (ja) * 2008-02-13 2009-08-27 Pioneer Electronic Corp 受信装置、音声再生方法、音声再生プログラム及びその記録媒体

Also Published As

Publication number Publication date
DE60325310D1 (de) 2009-01-29
ES2316679T3 (es) 2009-04-16
ATE418136T1 (de) 2009-01-15
EP1400955A2 (en) 2004-03-24
DE20321886U1 (de) 2012-03-02
US20120035941A1 (en) 2012-02-09
EP1400955B1 (en) 2008-12-17
JP5091272B2 (ja) 2012-12-05
EP2023340A3 (en) 2009-04-29
JP4676140B2 (ja) 2011-04-27
US8069052B2 (en) 2011-11-29
EP2261897A1 (en) 2010-12-15
EP1400955A3 (en) 2006-05-10
US8255234B2 (en) 2012-08-28
US20100318368A1 (en) 2010-12-16
EP2023340A2 (en) 2009-02-11
JP2010176151A (ja) 2010-08-12

Similar Documents

Publication Publication Date Title
JP5097242B2 (ja) マルチチャネルオーディオのエンコーディングおよびデコーディング
JP5091272B2 (ja) オーディオの量子化および逆量子化
US7299190B2 (en) Quantization and inverse quantization for audio
CA2637185C (en) Complex-transform channel coding with extended-band frequency coding
US20070174063A1 (en) Shape and scale parameters for extended-band frequency coding

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060823

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060823

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091218

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100318

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100324

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100419

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

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

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

Free format text: PAYMENT UNTIL: 20140204

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4676140

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term