JP2002532765A - 周波数領域オーディオ符号化のためのエントロピー符号モード切替え - Google Patents

周波数領域オーディオ符号化のためのエントロピー符号モード切替え

Info

Publication number
JP2002532765A
JP2002532765A JP2000588902A JP2000588902A JP2002532765A JP 2002532765 A JP2002532765 A JP 2002532765A JP 2000588902 A JP2000588902 A JP 2000588902A JP 2000588902 A JP2000588902 A JP 2000588902A JP 2002532765 A JP2002532765 A JP 2002532765A
Authority
JP
Japan
Prior art keywords
data
frequency
range
entropy
encoding
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
JP2000588902A
Other languages
English (en)
Other versions
JP2002532765A5 (ja
JP4786796B2 (ja
Inventor
チェン ウエイ−ジ
リー ミン−チエフ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=22787314&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2002532765(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2002532765A publication Critical patent/JP2002532765A/ja
Publication of JP2002532765A5 publication Critical patent/JP2002532765A5/ja
Application granted granted Critical
Publication of JP4786796B2 publication Critical patent/JP4786796B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • H03M5/02Conversion to or from representation by pulses
    • H03M5/04Conversion to or from representation by pulses the pulses having two levels
    • H03M5/14Code representation, e.g. transition, for a given bit cell depending on the information in one or more adjacent bit cells, e.g. delay modulation code, double density code
    • H03M5/145Conversion to or from block codes or representations thereof
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/46Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/46Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind
    • H03M7/48Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind alternating with other codes during the code conversion process, e.g. run-length coding being performed only as long as sufficientlylong runs of digits of the same kind are present
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00007Time or data compression or expansion
    • G11B2020/00014Time or data compression or expansion the compressed signal being an audio signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)
  • Analysing Materials By The Use Of Radiation (AREA)

Abstract

(57)【要約】 周波数領域オーディオコーダが、入力ストリームの特性に応じて、異なるエントロピー符号化モードのなかから選択する。詳細には、符号化する代表的入力または実際の入力の統計分析から導出した何らかの統計基準に応じて、入力ストリームを周波数範囲に分割する。各範囲には、その範囲の型のデータを符号化するように最適化されたエントロピー符号器を割り当てる。符号化中および復号化中、モードセレクタが、正しいエントロピー方法を異なる周波数範囲に適用する。分割の境界は、事前に決定することが可能であり、復号器が、どの復号化方法を符号化済みデータに適用するかを暗黙的に知ることを可能にする。または、後続データに対する符号化モードの変化を示すことによって、出力ストリーム内で境界にフラグを付ける適応構成を使用することが可能である。例えば、主にゼロの量子化された周波数係数を主に非ゼロの量子化された係数から分離する分割境界を作成して、次に、各データに対して最適化したコーダを適用することができる。全体のより効率的な処理は、入力データの特性に応じて符号化方法を関連付けることによって実現される。実際には、分割の数および周波数範囲は、符号化および復号化すべきデータの型によって異なる。

Description

【発明の詳細な説明】
【0001】 (発明の分野) 本発明は、一般的に、周波数領域オーディオ符号化に関し、より詳細には、周
波数領域オーディオ符号器および復号器で使用するエントロピー符号化方法に関
する。
【0002】 (背景) 通常のオーディオ符号化環境では、データが、必要な場合(例えば、アナログ
形式から)、符号器に入力される記号の長いシーケンスにフォーマットされる。
この入力データは、符号器によって符号化され、通信チャネルを介して伝送され
(または単に格納し)、復号器によって復号化される。符号化中、この入力は、
事前処理され、サンプリングされ、変換され、圧縮され、または別様に操作され
て、伝送またはストレージ(strage)のための形式になる。伝送またはス
トレージの後、復号器は、元の入力を再構成しようとする。
【0003】 オーディオ符号化技法は、2つのクラス、すなわち、時間領域技法および周波
数領域のものに分類することができる。時間領域技法、例えば、ADPCM、L
PCは、時間領域内で直接的に動作し、他方、周波数領域技法は、オーディオ信
号をそこで圧縮が行われる周波数領域に変換する。周波数領域コーデック(圧縮
器/圧縮解除器)は、さらに、副帯域コーダまたは変換コーダのいずれかに分け
られる。ただし、この2つの間の区別は、常に明確なわけではない。つまり、副
帯域コーダは、通常、帯域フィルタを使用して入力信号を少数(例えば、4つ)
の副帯域に分割し、他方、変換コーダは、通常、多くの副帯域を(また、したが
って、それに応じて、多数の変換係数を)有する。
【0004】 周波数領域内でのオーディオ信号の処理は、従来の信号処理理論と人間の心理
音響学モデルの両方によって動機づけられている。心理音響学は、情報内容を縮
小するために、聴取者の既知の特性を利用する。例えば、内耳、詳細には、基底
膜は、スペクトル解析器のように動作して、オーディオ信号をさらなる神経処理
を行う前に、スペクトルデータに変換する。周波数領域オーディオコーデックは
、しばしば、元の信号を変更して情報の冗長性を除去することによって、人間の
聴力システム内で起っている聴覚マスキングを利用する。人間の耳は、これらの
変更を知覚することができないので、ひずみなしの効率的な圧縮を得ることがで
きる。
【0005】 通常、マスキング分析が、量子化雑音を都合よく「マスク」できるように、量
子化と併せて行われる。最近のオーディオ符号化技法では、量子化されたスペク
トルデータは、通常、エントロピー符号化、例えば、ハフマン符号化を適用して
さらに圧縮する。圧縮は、通信チャネルが、通常、限られた利用可能な容量また
は帯域幅を有するので、必要とされる。それが通信チャネルを介して確実に伝送
される、または単に伝送され得るようにするために、入力データの情報内容を削
減することが、しばしば、必要である。
【0006】 伝送または記憶するデータのサイズを縮小するための可逆的圧縮と非可逆的圧
縮の技法を開発するのに、相当な努力が注がれてきた。1つの一般的な可逆技法
は、ハフマン符号化であり、これは、特定の形式のエントロピー符号化である。
エントロピー符号化は、符号ワードを異なる入力シーケンスに割り当てて、すべ
ての入力シーケンスをコードブック内に記憶する。エントロピー符号化の複雑さ
は、入力シーケンスXが取り得る可能な値の数mに依存する。小さなmの場合、
可能な入力の組合せは、ほとんど存在せず、したがって、そのメッセージに対す
るコードブックは、非常に小さいものであり得る(例えば、すべての可能な入力
シーケンスを明確に表すのに、数ビットしか必要ない)。デジタルの適用形態の
場合、符号英字は、シリーズの2進数{0,1}である可能性が非常に高く、符
号ワード長は、ビットで測定される。
【0007】 入力が等しい生起確率を有する記号から構成されていることが既知である場合
、最適符号化は、等長符号ワードを使用することである。しかし、入力ストリー
ムが、任意の特定メッセージを等確率で受信する可能性を有することは、通常で
はない。実際、あるメッセージは、他のメッセージよりも確率が高く、エントロ
ピー符号器は、これを利用して、予期される入力の間での符号ワードの平均長を
最小化する。ただし、従来、固定長入力シーケンスには、可変長符号が割り当て
られる(または、逆に、可変長シーケンスには、固定長符号が割り当てられる)
【0008】 (概要) 本発明は、周波数領域オーディオ符号化のためにエントロピー符号化モードを
選択するための方法に関する。より詳細には、オーディオ入力を表す所与の入力
ストリームが、符号化されるべき代表的入力または実際の入力の統計分析から導
出した何らかの統計基準によって、周波数範囲に分割される。各範囲には、その
範囲の型のデータを符号化するように最適化されたエントロピー符号器を割り当
てる。符号化中および復号化中、モードセレクタが、正しいエントロピー方法を
様々な周波数範囲に適用する。分割境界は、事前に決定することができ、復号器
が、暗黙的に、どの復号化方法を符号化済みデータに適用するかを知ることがで
きるようにする。または、後続データに関する符号化モードの変更を示すことに
よって、出力ストリーム内で境界にフラグが付けられる転送適応構成を使用する
ことができる。
【0009】 音声や音楽などの自然音の場合、情報内容は、低周波数範囲に集中している。
このことは、統計上、より低い周波数が、より多くの非ゼロのエネルギー値(量
子化の後)を有し、他方、より高い周波数範囲は、より高い周波数での内容の欠
如を反映して、より多くのゼロ値を有することを意味している。より低い周波数
範囲とより高い周波数範囲を分ける1つまたは複数の分割境界を定義するのに、
この統計分析を使用することができる。例えば、単一の分割は、周波数成分の低
い方1/4が、その分割より下になるように定義することができる。別法では、
臨界帯域のほぼ半分が、各定義された周波数帯域内に入るように分割を設定する
ことができる。(臨界帯域は、特定周波数に対する人間聴覚システムの感度に対
応する非一様な幅である。)そのような分割の結果は、その1つは、主に非ゼロ
の周波数係数を含み、もう1つは、主にゼロの周波数周波数係数を含んだ2つの
周波数範囲を定義することである。その範囲が主にゼロの値および非ゼロの値を
含むという事前の知識は、そのようなゼロの値および非ゼロの値に対して最適化
した符号器を使用して、符号化することが可能である。
【0010】 一実施形態では、主にゼロの値を含んだ範囲は、多重レベルランレングス符号
器(RLE)を使用して符号化される。すなわち、これは、ゼロの値のシーケン
スを1つまたは複数の非ゼロの記号に統計的に相関させて、可変長符号ワードを
そのようなゼロの値および非ゼロの値の任意に長い入力シーケンスに割り当てる
符号器である。同様に、主に非ゼロの値を含んだ範囲は、可変長符号ワードが量
子化記号の任意に長い入力シーケンスに割り当てられる可変−可変エントロピー
符号器を使用して符号化される。全体的なより効率的な処理は、入力データの特
性に応じて符号化方法を基づけることによって達せられる。実際、分割の数およ
び周波数範囲は、符号化および復号化すべきデータの型によって異なる。
【0011】 (詳細な説明) 例としての動作環境 図1および下記の議論は、そこで本発明を実施することが可能である適切なコ
ンピュータ環境の簡単な一般的説明を提供することを目的とする。パーソナルコ
ンピュータ上で動作するコンピュータプログラムのコンピュータ実行可能命令の
一般的文脈で本発明を説明するが、当分野の技術者には、他のプログラムモジュ
ールとの組合せでも、本発明を実施できることが理解されよう。一般的に、プロ
グラムモジュールには、特定のタスクを実行する、または特定の抽象データ型を
実施する、ルーチン、プログラム、構成要素、データ構造などが含まれる。さら
に、当分野の技術者には、ハンドヘルド装置、マルチプロセッサシステム、マイ
クロプロセッサベースの、またはプログラム可能な家庭用電化製品、ミニコンピ
ュータ、メインフレームコンピュータなどを含む、他のコンピュータシステム構
成を使用しても本発明を実行できることが理解されよう。本発明の例示する実施
形態は、通信ネットワークを介してリンクされている遠隔処理装置によってタス
クが実行される分散コンピュータ環境でも実行される。ただし、本発明のいくつ
かの実施形態は、独立型コンピュータ上でも実行することが可能である。分散コ
ンピュータ環境では、プログラムモジュールは、ローカルと遠隔の両方のメモリ
記憶装置に配置することが可能である。
【0012】 図1を参照すると、本発明を実施するための例としてのシステムが、コンピュ
ータ20を含み、これが、処理装置21、システムメモリ22、および処理装置
21に対するシステムメモリを含んだ様々なシステム構成要素を結合するシステ
ムバス23を含んでいる。処理装置は、Intel x86、Pentium、
Intelおよび他社からの互換マイクロプロセッサ、DigitalによるA
lphaプロセッサ、ならびにIBMおよびMotorolaからのPower
PCを含む、様々な市販のプロセッサのうちの任意のものであり得る。デュアル
マイクロプロセッサおよび他のマルチプロセッサのアーキテクチャも、処理装置
21として使用することができる。
【0013】 システムバスは、メモリバスまたはメモリコントローラ、周辺バス、ならびに
、そのいくつかを挙げれば、PCI、AGP、VESA、Microchann
el、ISA、EISAなどの様々な従来バスアーキテクチャのうちの任意のも
のを使用するローカルバスを含んだ、いくつかの型のバス構造のうちの任意のも
のであり得る。システムメモリは、読取り専用メモリ(ROM)24およびラン
ダムアクセスメモリ(RAM)25を含む。始動時などに、コンピュータ20内
の要素間で情報を転送するのを助ける基本ルーチンを含んだ基本入力/出力シス
テム(BIOS)は、ROM24内に記憶されている。
【0014】 コンピュータ20は、さらに、例えば、取外し可能ディスク29から読み取る
、またはそれに書き込むために、ハードディスクドライブ27、磁気ディスクド
ライブ28を、また、例えば、CD−ROMディスク31を読み取るため、ある
いは他の光学式媒体から読み取る、またはそれに書き込むために、光ディスクド
ライブ30をさらに含む。ハードディスクドライブ27、磁気ディスクドライブ
28、および光ディスクドライブ30は、それぞれ、ハードディスクドライブイ
ンターフェース32、磁気ディスクドライブインターフェース33、および光デ
ィスクドライブインターフェース34によって、システムバス23に接続されて
いる。これらのドライブおよびその関連するコンピュータ可読媒体は、コンピュ
ータ20のためのデータ、データ構造、コンピュータ実行可能命令などの不揮発
性ストレージを提供する。コンピュータ可読媒体の説明は、ハードディスク、取
外し可能磁気ディスク、およびCDに関連するが、当分野の技術者には、磁気カ
セット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカート
リッジなど、コンピュータによって読取り可能な他の型の媒体も、例としての動
作環境内で使用できることが理解されよう。
【0015】 オペレーティングシステム35、1つまたは複数のアプリケーションプログラ
ム(例えば、インターネットブラウザソフトウェア)36、他のプログラムモジ
ュール37、およびプログラムデータ38を含む、いくつかのプログラムモジュ
ールをドライブおよびRAM25内に記憶することが可能である。
【0016】 ユーザは、キーボード40、およびマウス42などのポインティングデバイス
を介して、コマンドおよび情報をコンピュータ20に入力することができる。他
の入力装置(図示せず)には、マイクロホン、ジョイスティック、ゲームパッド
、サテライトディッシュ、スキャナ、またはそれらに類するものが含まれ得る。
これらの入力装置および他の入力装置は、しばしば、システムバスに結合された
シリアルポートインターフェース46を介して処理装置21に接続するが、パラ
レルポート、ゲームポート、または汎用シリアルバス(USB)などの、他のイ
ンターフェースによって接続することも可能である。モニタ47または他の型の
表示装置も、ビデオアダプタ48などのインターフェースを介してシステムバス
23に接続されている。モニタに加えて、パーソナルコンピュータは、通常、ス
ピーカまたはプリンタなどの、他の周辺出力装置(図示せず)を含む。
【0017】 コンピュータ20は、遠隔コンピュータ49などの、1つまたは複数の遠隔コ
ンピュータに対する論理接続を使用するネットワークされた環境内で動作するも
のが望まれる。遠隔コンピュータ49は、ウェブサーバ、ルータ、ピア装置、ま
たは他の一般のネットワークノードであることが可能であり、図1ではメモリ記
憶装置50だけを図示しているが、通常、コンピュータ20に関して記載した多
くのまたはすべての要素を含む。コンピュータ20は、ゲートウェイ55(例え
ば、ルータ、専用回線、または他のネットワークリンク)、モデム54リンクを
介して、あるいはオフィス内ローカルエリアネットワーク(LAN)51または
ワイドエリアネットワーク(WAN)52によって確立されたインターネット接
続を介して、遠隔コンピュータ49に接触することができる。図示したネットワ
ーク接続は、例としてのものであり、コンピュータ間に通信リンクを確立する他
の手段も使用できることが理解されよう。
【0018】 コンピュータプログラミング分野の技術者の慣行により、本発明は、そうでな
いことを示さない限り、コンピュータ20によって実行される動作およびオペレ
ーションの記号表現を参照して下記に説明する。そのような動作およびオペレー
ションは、時として、コンピュータ実行と呼ばれる。この動作および記号で表さ
れるオペレーションには、処理装置21による、データビットを表す電気信号の
操作が含まれることを理解されたい、これは、結果として電気信号表現での変換
および縮小を引き起こし、またメモリシステム(システムメモリ22、ハードド
ライブ27、フロッピー(登録商標)ディスク29、CD−ROM31を含む) 内のメモリロケーションでのデータビットの保持を引き起こす。また、これによ りコンピュータシステムのオペレーションならびに信号の他の処理を再構成した り、変更する。そこにデータビットが保持されているメモリロケーションは、そ のデータビットに対応する特定の電気特性、磁気特性、または光特性を有する物 理ロケーションである。
【0019】 図2は、チャネル210を介してオーディオデータを伝送するための伝送モデ
ルを示している。この伝送のソースは、ライブのブロードキャスト、記憶済みデ
ータ、または配線式/無線通信リンク(例えば、LANまたはインターネット)
を介してリトリーブされた情報とすることができる。チャネル210は、限られ
た帯域幅のものであると想定し、したがって、データがチャネルを介して確実に
送信され得るようにするには、ソースデータ200の圧縮が望ましい。この議論
は、オーディオデータの伝送を中心的に扱うが、本発明は、埋め込まれたオーデ
ィオデータ(例えば、MPEGデータストリーム内で多重化された)を有するオ
ーディオビジュアル情報、または圧縮データパターン(例えば、コヒーレントデ
ータ)を有する他のデータソースなど、他のデータの転送にも適用することに留
意されたい。
【0020】 図示するとおり、ソースデータ200は、フィルタバンク変換または離散余弦
変換などの時間/周波数変換符号器202に入力される。変換符号器202は、
オーディオデータソースなどの、連続する、またはサンプリングされた時間領域
入力を所定(ただし、多分、異なる)帯域幅の複数周波数帯域に変換するように
設計されている。次に、可聴な影響なしに、問題なく削減できる信号の成分を判
定するために、これらの帯域を、人間聴覚知覚モデル204(例えば、心理音響
学モデル)に関して分析することができる。例えば、ある周波数は、ある別の音
または周波数が入力信号内に存在するとき、不可聴であることがよく知られてい
る(同時マスキング)。したがって、そのような不可聴信号は、入力信号から問
題なく除去することができる。人間聴覚モデルの使用は、よく知られており、例
えば、これは、MPEG1、2、および4の規格である。(そのようなモデルは
、量子化206の操作に組み合わせることができることに留意されたい。)
【0021】 時間/周波数変換202を実行した後、各範囲内の周波数係数を量子化206
して、各係数(振幅レベル)を有限セットの可能な値から取った値に変換する。
ここで、各値は、周波数範囲を表すように割振られたビットに基づくサイズを有
する。量子化器は、メモリを有する(または有さない)ミッドライザまたはミッ
ドトレッダなど、従来の一様または非一様の量子化器であり得る。一般的な量子
化の目的は、入力信号データを表すのに最適のビット割振りを識別すること、す
なわち、ソースデータの(聴覚上)重要な部分を確実に符号化するため、利用可
能な符号化ビットの使用を割り当てることである。所望のビット伝送速度(一定
のビット伝送速度を想定して)を満たすために、量子化ステップサイズ予測など
、様々な量子化方法を使用することができる。ソース200を量子化した後、結
果のデータをエントロピー符号化する208(図6〜13の議論を参照)。
【0022】 エントロピー符号化した出力は、通信チャネル210を介して伝送する(また
は後の伝送のために記憶する)。次に、受信端216が、逆符号化処理、すなわ
ち、ソースデータ200の符号化を戻す(undo,復号化する)一連のステッ
プ)を実施する。つまり、符号化済みデータが、エントロピー復号器212に対
する入力として、チャネル210を介して受信されて、この復号器が、逆コード
ブックルックアップを実行して、符号化済み出力を入力記号シリーズ200に対
する元の量子化出力に近似するものに変換する。この近似データが、次に、量子
化解除器214および時間/周波数変換復号器218によって処理されて、元の
符号化操作を逆転して、元のソースデータ200に類似した再構成データ220
をもたらす。再構成データ220は、元のソースデータ200を近似するに過ぎ
ないことに留意されたい。というのは、ステップ204〜208を適用すること
は、不可逆的処理だからである。
【0023】 この伝送モデルのための1つの可能な実施形態は、リアルタイムデータがサー
バ/サーバ機能アプリケーションからネットワークリンクを介してリトリーブさ
れるのにつれて、それを処理、表示、または再生しようとするクライアントアプ
リケーションプログラムである。例えば、クライアントは、適応帯域幅予約を提
供するストリーミング送達システムを使用し得る。(1つのそのようなストリー
ミングフォーマットは、Microsoft Advanced Stream
ing Formatである。)ストリーミング環境は、データ送達を、回線速
度制約など、特定のリトリーブ要件に対して最適化することを可能にすることに
よって、従来のネットワーク機能プログラムと対照をなす。ストリーミングデー
タの際立った特徴は、クライアントがデータを受信するのにつれて、それをリア
ルタイムで漸進的に見ることができることである。処理済のデータは、クライア
ントによる後のリトリーブのために記憶することができ、またそのようなリトリ
ーブは、非ストリーミングフォーマットで(例えば、小さな再生装置によって)
実行され得ることに留意されたい。
【0024】 ストリーミングフォーマットは、同期オブジェクトデータストリームの構造を
定義し、任意のオブジェクト、例えば、オーディオおよびビデオのデータオブジ
ェクト、スクリプト、ActiveXコントロール、HTML文書をデータスト
リームに入れることができるようにする。アプリケーションプログラミングイン
ターフェース(1つのそのようなAPIは、Microsoft Audio
Compression Managerである)が、ストリーミングフォーマ
ットに対するアプリケーションサポートを円滑にするために提供される。通信チ
ャネル210を介するストリーミングフォーマットデータの伝送では、ソース情
報が、ネットワークに対して適切な形式に変換に変換されることを必要とする。
しかし、経路指定情報およびデータを含む従来のパケットとは異なり、ストリー
ミングパケットは、ストリーム内の異なるオブジェクトからの優先順位付き混合
データを含み、したがって、帯域幅は、より高い優先順位のオブジェクトに、最
初に、割り振ることが可能である。受信端216で、受信側による使用のために
、優先順位付きデータストリーム内のオブジェクトが再構成される。
【0025】 データは、多分、それが受信された時、使用されるので、ストリーミング内容
は、伝送遅延の影響を受ける。データが確実に到着しない場合、または伝送速度
が、許容可能な最低限を下回って低下する場合、そのデータは、使用不可能にな
る可能性がある(例えば、ビデオシーケンスの再生が失敗し得る)。したがって
、帯域幅を多く使用するデータ(オーディオフィードなど)は、その帯域幅要件
が通信チャネル210によって確実に満たされ得るようにするために、相当の圧
縮を必要とする。非可逆的圧縮の程度は、再構成信号の品質に必然的に影響する
ので、サーバは、異なるクライアントネットワーク接続速度に対する選択可能な
符号化を提供する(またはリアルタイムスループットを識別する適応フィードバ
ックシステムを使用する)べきである。
【0026】 周波数係数ソースデータ200を符号化して、通信チャネル210を介する確
実な伝送を保証するのに特に有効な方法は、エントロピー符号化である。後述の
とおり、入力データの異なる部分に対して最適化された異なる符号化方法を適用
することによって、データコヒーレンシーを十分に利用することができる。エン
トロピー符号化は、記号が非一様の確率分布を有するとき、有効である。後述す
る可変−可変コーダおよびRLEコーダなど、多くの入力記号をグループ化する
エントロピー符号化方法は、データコヒーレンシーを十分に利用することに優れ
ている。異なる周波数範囲に対して異なる符号化方法を使用することは、符号器
がそれぞれのそのような範囲ごとの確率分布に対して調整されているとき、より
最適な符号化を可能にする。
【0027】 図3は、周波数領域に変換されている時間領域信号を図示している。X軸に沿
って、ゼロ302から最大周波数304までの範囲300の周波数がある。分割
306は、範囲300内で定義されており、この分割は、予期される入力ストリ
ームの統計分析(例えば、エントロピーコードブックを慣らしている最中にえら
れた統計情報、または実際の入力の適合分析による)によって決定され、この統
計モデルが、符号化のために、実際の入力308に対して適用される。
【0028】 分割を設定する1つの手法は、前述のとおり、周波数または臨界帯域のあるパ
ーセンテージを境界より下に置くことである。
【0029】 代替方法は、各周波数ごとの確率分布によるゼロおよび非ゼロの確率などの基
本統計を集めることである。各周波数の統計の検査は、周波数にわたる緩やかな
変化を示し、分割境界は、各分割内の分布が類似するように選択することができ
る。周波数分割は、入力のサンプリング速度および予期されるビット伝送速度に
対して敏感であることに留意されたい。サンプリング速度およびビット伝送速度
は、量子化された周波数係数の確率的特性を決定し、この特性が基本的に、分割
の配置を決定することを担う。
【0030】 より最適な方法は、「最適」境界位置を決定するために、全数探索を実行する
ことによって適合的に分割を配置することである。つまり、最適の解決法は、す
べての周波数(またはそのサブセット)を分割位置として試し、エントロピー符
号化を実施して、どの境界の可能な位置が、符号化のために最小数のビットをも
たらすか、追跡することである。計算上、よりインテンシブではあるが、計算コ
ストが問題なのであれば、複数の分割が使用される場合、全数探索(または周波
数サブセットが使用される場合、ほぼ全数探索)の圧縮の利点が、コストを上回
る。
【0031】 周波数スペクトル300を別々の周波数下位領域310、312に分けること
によって、符号器は、異なる周波数範囲を符号化するように最適化されている異
なる符号化方式を適用することができる。これは、符号化すべきデータの特性に
応じて異なるエントロピー符号化テーブルを置き換えたエントロピー符号化方式
などの、前の方法と対照をなす。こうした従来の方法は、その単一エントロピー
符号化アルゴリズムの柔軟性により、符号化テーブルが異なる種類の入力データ
を考慮できないことにより、またいつ異なるテーブルを使用するべきか識別する
ことに関連するオーバーヘッドによって、制限を受ける。1つの型のデータに対
して最適化された方法は、異なる型のデータに効率的に適用することができない
【0032】 図示する実施形態では、範囲300に対して選択された分割基準は、特定のス
ペクトルイベントが、特定の強度(例えば、ゼロ)またはそれに近いところでの
一連の係数である確率C(F)(Y軸)である。コードブック生成の場合と同様
に、ゼロの値のデータを受信する確率は、例としての入力に関して、事前計算す
ることができる。図示するとおり、入力信号308は、示された分割306の後
、ゼロである確率が高い。(分割の仕切り306の位置は、その仕切りを越える
入力の80%または90%がゼロまたはそれに近くなるように選択されている。
【0033】 最低限、入力信号308は、それぞれの範囲が異なる符号化方法による圧縮に
最も適したデータ特性を有する2つの範囲に分割されるものと想定する。図示す
る実施形態では、一方の範囲は、主にゼロの値を有し、もう一方の範囲は、非ゼ
ロの値を有する。したがって、2つの符号器が使用され、そのそれぞれは、それ
に対応する範囲内の型のデータに対して最適化されている。図示する実施形態は
、周波数係数を2つの範囲に分割するが、それぞれがそれ自体の最適化された符
号器を有する2つより多くの範囲を定義することができる、あるいは異なる範囲
が、類似の特性を共有し、したがって、同一の符号器を使用することが可能であ
る。
【0034】 主に非ゼロの範囲310を符号化するのに、図6〜13に関して述べたような
エントロピー符号器を使用することができる。後述するとおり、図6〜13の符
号化方法は、非ゼロの聴覚入力データを符号化するのに特によく適している。主
にゼロの値の範囲312の場合、そのようなデータに対して最適化された符号器
を使用する。図示する実施形態では、ランレングス符号器が、ある支配的値(例
えばゼロ)を有するデータを符号化するのに最適化されているので、それを使用
する。図13は、主にゼロの値の範囲312を効率的に符号化することができる
、1つのRLEベースのエントロピー符号器を図示している。
【0035】 図4は、チャネル(図2を参照)を介してオーディオデータを伝送するための
伝送モデルを図示しており、そこでは、複数のエントロピー符号化/復号化方法
が、入力データ200を操作するのに使用される。ソースオーディオデータ20
0は、ある周波数範囲内の値を有することが知られている。図2に関して前述し
たとおり、ソースデータ200は、周波数領域に変換し202、心理聴覚モデル
に従って縮小し204、量子化する206ことができる。量子化は、かなりの数
のゼロに近い出力値を生成し得るので、エントロピー符号器208は、この量子
化出力を符号化するように最適化することができる。
【0036】 量子化の後、量子化済みデータに関するスペクトル係数は、通常のオーディオ
データの情報内容を追跡する傾向がある。量子化係数の分析は、それらが、より
低い周波数範囲で、非ゼロであり、より高い周波数で、主にゼロ係数である可能
性が高いことを示す。したがって、ある周波数位置に位置する周波数分割の場合
、モードセレクタ400が、符号化される周波数範囲に応じて、符号器を決定す
ることができる。
【0037】 分割の配置を決定することは、いくつかの既知のエントロピー符号器のうちの
どれが、異なる下位範囲に対してより良好な符号化効率を実現するかを識別する
、統計分析に基づくことが可能である。1つの構成では、分析は、例としての入
力に関する符号化または復号化に先立って実行される。これは、分割位置、およ
び各下位範囲に対する対応する符号器の事前決定を可能にして、該当するコーダ
での変更にフラグを付けるのに、何もオーバーヘッドを導入する必要がないよう
にする。
【0038】 別の方法では、現行のデータに対して、統計分析を実行することができる(リ
アルタイムで、またはオフラインで)。この構成では、符号器/復号器は事前に
知られているが、該当するコーダでの変化を示すのに、フラグを符号化済みデー
タストリームに埋め込む必要がある。前述のとおり、各下位範囲ごとにある程度
の符号化効率が得られるまで、異なる可能な分割位置を試みることが可能である
。復号器によるフラグの受信は、下位範囲の終りを示し、フラグの値は、逐次の
データに対してどの復号器を使用するかを示す。
【0039】 マーカを挿入することは、符号化/復号化処理にある程度のオーバーヘッドを
追加するが、そのようなマーカは、従来技術の符号化方法に対する改良を表すも
のである。例えば、図示する実施形態をオーディオデータの従来の(例えば、M
PEG1、2、4を参照)エントロピー符号化と比較されたい。従来のシステム
は、すべてのデータに対して単一のエントロピー符号器を使用し、異なるコード
ブックが、入力データの周波数範囲内にある多くの臨界帯域(通常、サンプリン
グ速度に応じて、24またはそれより多くの帯域)のそれぞれに関連付けられる
。24の帯域を想定して、各臨界帯域遷移で、24個のコードブックのうちのど
れを使用してそのバンドのデータを符号化すべきかを示すのに、2ビット(また
はそれより長い)フラグが、必要とされる。(24の状態を追跡するのに5ビッ
トが必要とされるが、このフラグ自体を効果的により少ないビットに符号化する
ことができる。)これは、フラグを全く必要としないか、あるいはフラグを使用
するが、下位範囲の数が、臨界帯域の数に比するものになり、符号化方法の数が
テーブルの数に近づかない限り、従来の方法よりも効率的である、図示する実施
形態と明確な対照をなす。つまり、臨界帯域を使用する符号化ごとに、24個の
下位範囲が存在して、どの符号化テーブルを使用すべきかを示すのに、2〜5ビ
ットのフラグを必要とする。対照的に、図示する実施形態は、2つまたは3つの
下位範囲しか有さないことが可能であり、したがって、オーバーヘッドがずっと
少ない。
【0040】 図示するとおり、N個の所定の符号器402〜406が存在し、そのそれぞれ
は、何らかの支配的特徴を備えたデータを有する周波数範囲を符号化するように
最適化されている。このことは、N個の別々の入力範囲が存在することを必ずし
も意味しない。というのは、異なる周波数範囲が、そのデータに関して、類似の
統計的特徴を有し、したがって、同一の符号器を使用することが可能であるから
である。図示する例では、2つの範囲(1つの分割)だけが存在し、これらは低
い(主に非ゼロの係数)周波数範囲および高い(主にゼロの係数)周波数範囲に
対応している。したがって、分割を越えた主にゼロのデータは、RLE型符号器
(例えば、図13参照)を使用して符号化され、分割の前のデータは、可変−可
変エントロピー型エントロピー符号器を使用して符号化される。
【0041】 ただし、一般的な場合、特定の入力に関して統計情報が利用可能になると、ど
の符号器が入力を最も良く圧縮できるかに応じて、異なる符号器を選択すること
ができる。例えば、従来のハフマン符号化、ベクトルハフマン変種、RLE符号
化などの符号化方法を最適化し、高いスペクトル値、低いスペクトル値、混合し
たまたは変更するスペクトル値、または別の何らかの所望の/ありそうな特徴を
有する入力に対して、そのコードブックを教えることができる。すべての入力に
対する単一符号器の従来の使用とは対照的に、図示する構成は、入力に関する統
計プロファイルと、符号器のコードブックが教えられるデータに関する統計プロ
ファイルとの間の最適なマッチンク(対応)に応じて、異なる符号化方法を使用
(match)する。
【0042】 どの符号器402〜406を使用するか決定した後、処理は、図2に関連して
述べたとおり、データを復号化のために受信側216に送信し続ける。逆モード
セレクタは図示していないことに留意されたい。適切な復号器を適切に選択して
モードセレクタ400の動作を逆にするために、モードスイッチャが必要である
(例えば、図2の復号器212の一環として)。ただし、前述のとおり、範囲の
仕切り位置を事前に決定し、これにより、復号化の間での識別をやめることがで
きる。さもなくば、動的適応符号化/復号化のため、埋込みフラグを使用して、
復号器選択を起動することができる。フラグを使用することは、モードセレクタ
を使用することと同じであり、所定のおよび適応するように配置された分割の双
方に対して動作するように、モードセレクタを設計することが可能である。
【0043】 図5は、非ゼロ周波数係数の高い確率を有する入力に対するエントロピー符号
器のコードブックを生成するための、好ましい方法を示すフローチャートである
。詳細には、従来技術の技法とは対照的に、図5は、可変長記号グループに対す
る可変長符号割当てを有するコードブックを作成することを図示している。(従
来技術の技法は、入力の固定長符号または入力の固定長ブロックのいずれかを必
要とする。)好ましい実施形態は、可変長Xシーケンスを符号化するのに可変長
符号ワードを使用するエントロピーベースの可変−可変符号を提供することによ
って、大きい次元のベクトル符号化のリソース要件、および等長のワードへの符
号化の非実用性を克服する。リソース要件は、固定最大コードブックサイズを設
定することによって、任意に制限することができる。このコードブックは以下の
ように生成する。
【0044】 1<=j<=Nについて、入力ストリーム内で発生する確率Pを有する各
ソース記号グループ{x}をyが表すものとして、各グループにLビット
を有する対応する符号ワードを割り当てるものとする。各xは、所定サイズの
固定英字から選び出すものと想定すると、目的は、方程式L=
【0045】
【数1】
【0046】 を最小化することである。
【0047】 この問題に対する一般的な解を見つけ出す代わりに、問題を2つの異なるタス
クに分離する。第1タスクは、後述の経験的手法を介する入力記号{x}のセ
ットの(部分最適)グループの識別である。第2タスクは、グループ化された記
号{y}に対してエントロピー型符号を割り当てることである。ソースがコヒ
ーレントではない(すなわち、入力が独立である、またはメモリが無い)場合、
{N}という同一構成を有するどのグループも同一の符号化効率を達成するこ
とができることが知られていることに留意されたい。この状況では、第1タスク
は、重要ではない。
【0048】 第1タスクを実行するため、{y}={x}などの、初期の単純記号グル
ープ500が用意される。この初期構成は、例としてコードブックの作成を教え
るために、入力ストリームが使用されることを想定している。コンピュータは、
入力からの各記号の受信を追跡するために、データ構造などのソフトウェア構造
体を使用してプログラムすることができるものと理解されたい。そのようなデー
タ構造は、2進型ツリー構造、ハッシュテーブル、またはこの2つの何らかの組
合せとして実施することが可能である。他の等価の構造を使用することも可能で
ある。
【0049】 単純グループを決定した後、各yごとの生起確率を計算する(502)。そ
のような確率は、コードブック生成を教えるために使用される任意の例としての
入力を考慮して決定される。さらなる記号が記号データ構造に追加された時、こ
の確率は、動的に調整される。
【0050】 次に、最高確率のグループy(ympと表す)を識別する(504)。最高
確率の記号が、以前の低い確率であった記号のグループである場合(506)に
は、そのグループをそれを構成する記号に分割して(508)、ステップ502
から処理を再開する。(記号は結合されるものの、記号を抽出することができる
ように、グループは、その中にあるすべての記号が記憶される。)
【0051】 その記号が1つのグループではない場合には、処理は、ステップ510におい
て、最高確率のグループを単一記号拡張xで試験的に拡張し続ける。好ましく
は、ympは、英文字Xからの各記号で拡張する。ただし、英文字が非常に大き
く、多くの拡張は確率が低いことが既知である場合、予測器を使用して、確率の
高い拡張だけを含んだ拡張セットのみを生成することが可能である。例えば、そ
のような予測器は、意味構造上の意味または文脈的(前後関係の)意味に基づい
て非常に確率の低い拡張を推測的に無視できる。
【0052】 次に、ympの各試験的拡張に関する確率を計算して(512)、最高確率の
拡張だけを保持する(514)。より低い確率の拡張は、結合グループとして縮
小してまとめ(516)、結合グループを示す特別記号(イベント)を付けて、
コードブック内に記憶する。このワイルドカード記号は、ympをプレフィック
スとして有する任意の記号グループを表すが、最高確率の拡張とは異なる拡張(
サフィックス)が付いている。つまり、ymp+xmpが最高確率のルートおよ
び拡張である場合には、他のそれほど確率の高くない拡張は、ymp ≠x mp として表される。(この議論は、明確にするために、単一記号拡張の逐次処
理を想定しているが、複数の記号拡張の並列実行が考慮されていることに留意さ
れたい。)
【0053】 単一の記号拡張を適用すること、および最高確率のグループだけを保持するこ
とは、論議を明確にするために課した制約であることが、当分野の技術者には理
解されよう。議論は、逐次処理を中心的に扱うが、コードブック構成は、並列で
行い得ることをさらに理解されたい。
【0054】 コードブック構成は、すべての可能な拡張が作成されるまで、またはコードブ
ックエントリの数が所定の限界に達するまで、ステップ502〜516を繰り返
す(518)ことによって完了する。つまり、現行のyごとの確率の計算(5
02)、最高確率の拡張および最低確率の拡張をそれぞれ選択し(504)およ
びグループ化することを繰り返す。ここで、コードブックセット{Y}が、この
時点でymp+xmpを含む。の操作を繰り返し適用することの効果は、高い相
関を有する記号グループを自動的に集め、グループ間の相関が最小化されるよう
にすることである。これは、Lの分子を最小化し、他方、同時に、Lの分母が最
大化されるように、最高確率のyの長さを最大化する。
【0055】 図6〜13は、例としての英字{A,B,C}に対する、図5に準拠するコー
ドブックの作成を図示する。この論議のため、コードブックは、例としての入力
ストリーム「A A A B B A A C A B A B B A B」
に対して定義される。前述のとおり、1つまたは複数の例としての入力を使用し
て、コードブックを生成することが可能であり、これが、次に、符号器および復
号器によって使用されて、任意の入力を処理する。明確にするため、このコード
ブックは、ツリー構造として提示する。ただし、これは、実際には、リニアテー
ブル、ハッシュテーブル、データベースなどとして実施することが可能である。
図示するとおり、ツリーは、左から右に向いており、そこで左列(例えば、「A
」および「X0」)は、ツリー型構造の一番上の行を表し、順次、字下げされて
いる行が、前の行のノードの「子」を表す(例えば、図7のトップダウンツリー
内で、ノード「A」は、第2行の中間子ノード「B」に対する第1行の親ノード
である。)。
【0056】 コードブックを用意する上で、一般的規則は、最高確率のリーフノードを選出
し、それを拡張し、最高確率のリーフノードを決定するために確率を再計算し、
次に、残りの兄弟ノードを単一Xnノード(n=0..N、ノードが結合される
たびに毎回、追跡する)に縮小することである。最高確率ノードがグループノー
ドであると判明した場合には、そのグループを分割し、確率を再計算して、最高
確率のメンバノードを保持する(すなわち、残りのグループメンバは、再グルー
プ化する)。処理は、所定サイズを有するコードブックなど、ストップ状態に達
するまで、循環する。
【0057】 図6は、入力ストリーム「A A A B B A A C A B A B
B A B」に対する初期グループを図示している。この入力の初期構文解析
は、A=8/15、B=6/15、C=1/15の生起確率を示す。この初期単
純グループは、異なる基準に基づいて作成することが可能であり、その最も単純
なものは、英字内の各文字に対する第1レベルノードを有する。ただし、入力英
字が大きい場合、単純グループは、最高確率を有する記号の何らかのサブセット
に制限することが可能であり、残りの記号はXグループに結合される。図6は、
2つの初期グループだけで開始することによってこの技法を図示し、グループA
600は、確率8/15を有し、グループX0 602は、確率7/15を有
し、ここで、X0は、英字内のすべての残りの低確率の記号、例えば、Bおよび
Cを表す。
【0058】 初期単純グループを用意した後、最高確率を有するリーフノードを拡張のため
に選択する(処理シーケンスに関する図5の議論も参照)。したがって、図7で
示すとおり、グループA 600は、英字内の各文字によって試験的に拡張され
る(または、初期グループの作成に関して述べたとおり、その何らかのサブセッ
トにこの拡張を制限することも可能である)。次に、入力ストリーム「A A
A B B A A C A B A B B A B」に関して確率を再計算
して、試験的拡張A 606、B 608、およびC 610に対する値を決定
する。この結果は、9つの構文解析グループであり、ここで「A A」は2/9
出現し、「A B」は4/9出現し、「A C」は0/9出現する。したがって
、最高確率の拡張「A B」を保持し、他の拡張をX1=A,Cに縮小する。こ
の議論では、すべての確率を再計算するが、より効率的な手法は、ノード内の各
ノードに対する確率と記号関連を保持して、必要となる情報だけを計算すること
である。
【0059】 図8は、図7のX1 612への縮小を示す。処理は、最高確率を有するノー
ド、例えば、確率4/9のノードB 608の識別で繰り返す。
【0060】 図9に示すとおり、このノード608は、前述のとおり、記号A 614、B
616、C 618で試験的に拡張され、最高確率を有する試験的グループが
保持される。確率を再計算した後、その結果は、8つの構文解析グループであり
、そこでは、記号シーケンス「A B A」614が一度、出現し、「A B
B」616が一度、出現し、「A B C」618は全く出現しない。試験的拡
張A 614と試験的拡張B 616は、同一の生起確率を有するので、どちら
の記号を保持するかを選択する規則を定義する必要がある。この議論の場合、等
確率が存在するときはいつでも、一番高い行のノード(例えば、トップダウンツ
リー内の一番左の子ノード)が保持される。同様に、ツリーの行の間に競合が存
在する場合、一番左の行のノード(例えば、トップダウンツリーのルートに一番
近いノード)が保持される。
【0061】 したがって、図10に示すとおり、ノードA 614(図9)が保持され、ノ
ードB 616とノードC 618が結合されて、1/8+0/8という結合確
率を有するノードX2=B,C 620になる。ここで、次のステップは、入力
ストリームに関して現行で最高確率を有するノードを拡張することである。図示
するとおり、ノードX1=A,C 612とX0=B,C 602は、同一の生
起確率(3/8)を有する。前述のとおり、ツリー内の最高ノード(X0 60
2)が拡張されるように、デフォルト規則が使用される。(整合的であることだ
けが必要であるが、より高いレベルのノードを拡張することが望ましい。という
のは、そうすることが、長い符号ワードの数を増加させることによって、符号化
効率を向上させ得るからである。)
【0062】 ただし、X0 602は、結合ノードであり、したがって、これは拡張するの
ではなく、分割しなければならない。図11は、ノードX0をその構成記号B
622とC 624に分割することの結果を図示している。確率を再計算するこ
とが、記号シーケンス「A B A」は1/8出現し、「A B X2」は1/
8出現し、「A X1」は3/8出現し、「B」 422は2/8出現し、「C
」は1/8出現することを示す。これは、分割オペレーションであるので、最高
確率を有する分割ノード、例えば、ノードB 622が保持され、残りのノード
は、再結合されてX0602に戻る。
【0063】 図12は、高確率ノードB 622を保持することの結果を示している。グル
ープX0602は、この場合、単一記号「C」だけを表すことに留意されたい。
確率を改訂した後、最高確率を有するノードを識別して、分割または拡張しなけ
ればならない。図示するとおり、記号シーケンス「A B A」は1/8出現し
、「A B X2」は1/8出現し、「A X1」は3/8出現し、「B」は2
/8出現し、「X0」は1/8出現する。したがって、ノードX1 612は、
結合ノードであるので、分割しなければならない。
【0064】 分割は、前述のとおりの手順で行われて、図5に関連して前述したとおり、入
力サイクルを処理する。ここで、停止状態に達するまで(例えば、コードブック
が、最大サイズに達する)、最高確率ノードが、拡張または分割される。コード
ブックが停止状態に達すると、データを符号化して、通信チャネルを介して伝送
することに利用することができる。
【0065】 図13は、コードブック生成の図5の方法を変更するために使用することがで
きるしきい値格子を図示している。図3および4に関して述べたとおり、入力デ
ータのある部分を処理するように符号器を調整することができる場合、符号化は
より効率的になる。詳細には、符号化方法が、相当な数の反復する値を生成する
ことが知られている場合、エントロピーコーダをRLE型符号化と組み合わせて
、反復する値を含んだデータについて符号化効率を高めることが可能である。
【0066】 図示する実施形態では、入力データの量子化では、入力データに対する周波数
範囲のかなりの部分に対して、ゼロのスペクトル係数またはゼロに近いスペクト
ル係数を導入する。したがって、主に非ゼロのデータに対して使用される同一の
エントロピーコーダを適用するというよりは、むしろ、(すなわち、図5の符号
器とコードブック)、代わりにRLEベースのエントロピーコーダを使用する。
【0067】 RLEベースのエントロピー符号器のためのコードブックを構成するため、非
ゼロのスペクトルサンプルの絶対値が整数セットL={1,2,3...,L }を形成するものとし、ここでLは、Lに等しい、またはそれより大きい
任意の値を表す。入力ストリーム内のゼロのスペクトルサンプルのランレングス
が、別のセットR={1,2,3...,R}を形成し、Rが、Rに等
しい、またはそれより長い長さを有する任意のゼロの連続を表すものとする。こ
の表記を使用して、(R,L)として定義された入力記号のストリングを有
する入力スペクトルを表すことができ、これは、R個のゼロのスペクトルサン
プルに対応し、その後にL(すなわち、エントロピー符号器を使用して符号化
した記号)が続く。
【0068】 図5以下に関して述べたとおり、コードブックを構成する上での第1ステップ
は、すべての入力イベントの確率を集めることである。この場合、入力は、定義
されたしきい値に対して調整され、したがって、確率は、すべての1<=i<=
nかつ1<=j<=mについて、(R,L)に対して決定される。これらの
確率は、図13で、図示されており、そこでより暗い正方形(例えば、806、
808)は、より高い確率を有するイベントに対応し、より明るい正方形(例え
ば、810、812)は、低い確率またはゼロに近い確率を有する。すべての高
い確率の入力構成は、まとめて範囲800と呼び、すべての低い確率の構成は、
範囲802と呼んでいる。すべての低い確率の組合せは、コードブックから除外
する。確率しきい値804は、仕切りより下のすべての値がゼロにセットされて
コードブックから除外されるように定義する。残りのしきい値を上回る構成には
、その確率に反比例する長さを有するエントロピー型符号を割り当てる。量子化
されたオーディオデータの場合、高い振幅の入力は、低い確率を有する。したが
って、それらはしきい値を下回り、コードブックから除外される(ただし、それ
らはエスケープさせて、符号化済みビットストリーム内に入れることが可能であ
る)。
【0069】 第2符号器を使用してエントロピー符号化出力をインターリーブするため、特
別エントロピーコードブック符号をリザーブして、除外されたイベント(例えば
、RLE符号化されたデータ)をマーク解除(demark)する。符号化時に
、スペクトルサンプル(入力記号)を可能なイベントのリストと比較し、マッチ
(対応)が見つかった場合(例えば、可変−可変符号器を使用している場合、コ
ードブックを表すのに使用するツリー、テーブル、ハッシュ構造またはそれに相
当するものの中で)、対応するエントロピー型符号が出力されて、その後に符号
ビットが続く。
【0070】 マッチが見つからなかった場合、エスケープ符号が送信され、その後にイベン
トを識別するのに必要な情報、すなわち、データのRLE符号化に関する情報が
続く。N個のゼロで終了する入力スペクトルの場合、明示的(特別)終了信号が
必要とされるか、あるいは、復号器が、サンプルの総数を知っており、限界が越
えられたとき、復号化を停止することができるので、(N,1)などの特別イベ
ントで十分であるかのいずれかである。
【0071】 復号化のためには、しきい値格子は必要ない。というのは、この格子は、コー
ドブックエントリを淘汰するのに使用するからである。本明細書で開示した復号
化方法は、説明のとおり生成した図13のコードブックとともに使用することが
できる。
【0072】 図14は、図5により導出したコードブックの量子化されたデータに対する適
用を介する、図2のエントロピー符号器208を実施するための一方法を示して
いる。(可変−可変符号化方法は、一般的に、他の型のデータを符号化するのに
適用可能であることに留意されたい。)図示するとおり、量子化されたデータは
、図2のエントロピー符号器に対する入力として受信される900。この入力は
、何らかの形式の離散信号またはデータパケットになっており、議論を単純にす
るため、すべての入力は、長いシリーズの離散記号であると想定されるものと理
解する。受信された入力900は、図5のコードブック内で対応するコードブッ
クキーを探し出すために走査する902。こうした走査は、データルックアップ
に対応し、コードブックを実施するのに、どのようにデータ構造が使用されるか
に応じて、ルックアップの正確な方法は異なる。
【0073】 符号器のコードブックを記憶して、操作するのに利用可能な、様々な技法が存
在することに留意されたい。例えば、可変−可変コードブックのための1つの構
造は、記号グループがツリー構造の走査をガイドするN進(例えば、2進、3進
など)ツリーの走査およびストレージである。ツリーのリーフノードに対するパ
スは、認識済みの記号シーケンスの終了を表し、そこでエントロピー型符号が、
そのシーケンスと関連付けられる。(コードクックは、テーブルエントリが、入
力シーケンス全体、例えば、ノードに対するパスを含んだテーブルとして実施で
きることに留意されたい。)ノードは、ソフトウェア内で、そのノードと関連付
けられた1つまたは複数の記号、および対応するエントロピー型符号の関連90
6のストレージを可能にする構造、クラス定義、または他の構造として符号化す
ることが可能である。
【0074】 または、RLE符号器の場合、そのコードブックは、永久ストレージ内に2次
元格子として記憶することができ、データのリトリーブは、2つの指標を識別す
ることによって実行される。したがって、ランレングスと特定の記号値の指定に
よって、テーブルエントリをリトリーブすることができる。復号化テーブルは、
ハフマンツリーとして実施することが可能である。別のコードブック実施形態は
、Rice−Golomb構造およびそれに相当するものを含む。
【0075】 明示的に図示していないが、図2に関連して述べたとおり、復号化は、符号化
の逆操作として機能し、元の入力周波数係数900の近似を生成するために、符
号化済みデータ908が復号化コードブック内でルックアップされる906。
【0076】 私の発明の原理を図示した実施形態との関連で説明し、図示してきたが、その
ような原理を逸脱することなく、この図示した実施形態の構成および詳細を変更
できることが理解されよう。したがって、頭記の特許請求の範囲およびそれに相
当するものの範囲および趣旨内に入る得るすべてのそのような変更は、本発明と
して請求する。
【図面の簡単な説明】
【図1】 エントロピー符号モードスイッチングを使用する周波数領域オーディオ符号化
および復号化を実施するのに使用することが可能なコンピュータシステムのブロ
ック図である。
【図2】 周波数領域オーディオコーダ内でのオーディオデータの符号化および復号化を
示すフローチャートである。
【図3】 オーディオに応じて分割された周波数範囲を図示する図である。
【図4】 エントロピー符号化モードスイッチングを使用するを図示する図である。
【図5】 可変長記号グループに対する可変長エントリを有するコードブックの作成を示
すフローチャートである。
【図6】 英文字{A,B,C}に対する、図5に準ずるコードブックの作成を示す図で
ある。
【図7】 英文字{A,B,C}に対する、図5に準ずるコードブックの作成を示す図で
ある。
【図8】 英文字{A,B,C}に対する、図5に準ずるコードブックの作成を示す図で
ある。
【図9】 英文字{A,B,C}に対する、図5に準ずるコードブックの作成を示す図で
ある。
【図10】 英文字{A,B,C}に対する、図5に準ずるコードブックの作成を示す図で
ある。
【図11】 英文字{A,B,C}に対する、図5に準ずるコードブックの作成を示す図で
ある。
【図12】 英文字{A,B,C}に対する、図5に準ずるコードブックの作成を示す図で
ある。
【図13】 反復するスペクトル係数を有するオーディオシーケンスを符号化するのに使用
するスペクトルしきい値格子を図示する図である。
【図14】 図2のエントロピー符号器の実施を図示する図である。
【手続補正書】特許協力条約第34条補正の翻訳文提出書
【提出日】平成13年1月2日(2001.1.2)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ミン−チエフ リー アメリカ合衆国 98006 ワシントン州 ベルビュー 166プレイス サウスイース ト 5558 Fターム(参考) 5D045 DA11 5J064 AA02 BA08 BA09 BC01 BC16 BC25 BD02 BD04 【要約の続き】 実現される。実際には、分割の数および周波数範囲は、 符号化および復号化すべきデータの型によって異なる。

Claims (28)

    【特許請求の範囲】
  1. 【請求項1】 オーディオデータ周波数係数のシーケンスを2つまたはそれ
    より多くの異なるエントロピー符号器を使用して符号化する方法であって、 オーディオデータ周波数係数のシーケンスに対する周波数範囲を少なくとも第
    1下位範囲および第2下位範囲に分割するステップであって、どのエントロピー
    符号器が、各下位範囲に対してより良好な符号化効率を達成するかを識別する統
    計分析に応じて、分割が行われるステップと、 第1下位範囲を、第1エントロピー符号器を使用して符号化するステップと、 第2下位範囲を、第2エントロピー符号器を使用して符号化するステップと を含むことを特徴とする方法。
  2. 【請求項2】 統計分析は、オーディオデータ周波数係数のシーケンスに関
    して実行されることを特徴とする請求項1に記載の方法。
  3. 【請求項3】 統計分析が、少なくとも2つの周波数範囲を識別することを
    目的とし、第1周波数範囲が主に非ゼロのスペクトル係数を有し、第2周波数範
    囲が、固定値またはそれに近いところにある反復のスペクトル係数強度を有する
    ことを特徴とする請求項2に記載の方法。
  4. 【請求項4】 ランレングスエントロピー符号器が、第2周波数範囲に対す
    るデータを符号化するために使用されることを特徴とする請求項2に記載の方法
  5. 【請求項5】 可変−可変エントロピー符号器が、可変長エントロピー符号
    を周波数係数の任意に長いシーケンスに割り当てるために使用されることを特徴
    とする請求項4に記載の方法。
  6. 【請求項6】 固定値がゼロであって、その結果、第2周波数範囲が主にゼ
    ロに近い値を含むことを特徴とする請求項3に記載の方法。
  7. 【請求項7】 統計分析がリアルタイムで実行されることを特徴とする請求
    項3に記載の方法。
  8. 【請求項8】 統計分析が、オーディオデータ周波数係数の例としてのシー
    ケンスに関して実行されることを特徴とする請求項1に記載の方法。
  9. 【請求項9】 統計分析は、少なくとも2つの周波数範囲を識別することを
    目的とし、第1周波数範囲が主に非ゼロのスペクトル係数を有し、第2周波数範
    囲が、固定値またはそれに近いところにある反復のスペクトル係数強度を有する
    ことを特徴とする請求項8に記載の方法。
  10. 【請求項10】 ランレングスエントロピー符号器が、第2周波数範囲に対
    するデータを符号化するために使用されることを特徴とする請求項8に記載の方
    法。
  11. 【請求項11】 可変−可変エントロピー符号器が、可変長エントロピー符
    号を周波数係数の任意に長いシーケンスに割り当てるために使用されることを特
    徴とする請求項10に記載の方法。
  12. 【請求項12】 固定値がゼロであって、その結果、第2周波数範囲が主に
    ゼロに近い値を含むことを特徴とする請求項9に記載の方法。
  13. 【請求項13】 第1エントロピー符号器のために第1コードブックを用意
    し、および第2エントロピー符号器のために第2コードブックを用意するステッ
    プをさらに含むことを特徴とする請求項1に記載の方法。
  14. 【請求項14】 請求項1に記載のステップを実行するようコンピュータに
    指示するための命令が符号化されていることを特徴とするコンピュータ可読媒体
  15. 【請求項15】 各符号器は、類似の統計プロファイルを共有する周波数係
    数に応じて生成されたコードブックを使用することを特徴とする請求項1に記載
    の方法。
  16. 【請求項16】 2つまたはそれより多くの異なるエントロピー符号器を使
    用して、符号化済みオーディオ周波数係数のシーケンスを復号化する方法であっ
    て、 少なくとも第1下位範囲と第2下位範囲に分割された周波数範囲を有する符号
    化済みオーディオ入力シーケンスを受信するステップであって、各下位範囲が、
    関連するエントロピー復号器を有するステップと、 各下位範囲内のデータを関連する復号器を使用して復号化するステップと を含むことを特徴とする方法。
  17. 【請求項17】 範囲の分割が符号化に先立って事前決定され、かつ適切な
    関連する復号器の選択が、復号化される各周波数範囲に応じて自動的であること
    を特徴とする請求項16に記載の復号化の方法。
  18. 【請求項18】 範囲の分割が事前決定されておらず、復号器選択フラグが
    符号化済みオーディオ周波数係数内に埋め込まれており、そのフラグが、後続で
    受信されるデータに適用する復号器を識別することを特徴とする請求項16に記
    載の復号化の方法。
  19. 【請求項19】 第2エントロピー符号器がランレングスエントロピー符号
    器であることを特徴とする請求項16に記載の方法。
  20. 【請求項20】 請求項16に記載のステップを実行するようコンピュータ
    に指示するための命令が符号化されていることを特徴とするコンピュータ可読媒
    体。
  21. 【請求項21】 少なくとも2つの異なるエントロピー符号器を使用してオ
    ーディオデータ周波数係数オーディオデータ記号のシーケンスをエントロピー符
    号化する方法であって、そのデータ記号が最小振幅および最大振幅を有し、 第1エントロピー符号器のための第1コードブックを用意するステップと、 第2エントロピー符号器のための第2コードブックを、固定値またはそれに近
    いところにある反復するスペクトル係数強度を符号化するための最適化に応じて
    、用意するステップと、 オーディオデータ周波数係数のシーケンスに対する周波数範囲を少なくとも第
    1下位範囲および第2下位範囲に分割するステップであって、どのエントロピー
    符号器が、各下位範囲に対するより良好な符号化効率を実現するかを識別する統
    計分析に応じて、分割が行われるステップと、 各下位範囲を適切なエントロピー符号器を使用して符号化するステップと を含むことを特徴とする方法。
  22. 【請求項22】 第2エントロピー符号器が、ランレングスエントロピー符
    号器であることを特徴とする請求項21に記載の方法。
  23. 【請求項23】 請求項21に記載のステップを実行するようコンピュータ
    に指示するための命令が符号化されていることを特徴とするコンピュータ可読媒
    体。
  24. 【請求項24】 時間領域オーディオデータ記号のシーケンスを2つまたは
    それより多くの異なるエントロピー符号器を使用して、出力データストリームに
    符号化する方法であって、非ゼロである、または固定強度値にある、またはそれ
    に近い値にあるなどの、値の特定の特性を共有するデータに対して各符号器が最
    適化され、 時間領域データ記号を周波数領域データに変換するステップと、 心理音響学モデルに応じて周波数領域データを縮小するステップと、 縮小した周波数領域データを量子化するステップと、 量子化したデータに適用するエントロピー符号器を選択するステップと、 量子化したデータを選択したエントロピー符号器を使用して符号化するステッ
    プと を含むことを特徴とする方法。
  25. 【請求項25】 周波数範囲内にあるスペクトル係数を有する任意に長いシ
    リーズのオーディオ入力記号を符号化する方法であって、 ゼロに近い値を有するスペクトル係数の確率を計算するステップと、 周波数範囲を第1下位範囲および第2下位範囲に分割するステップであって、
    主に非ゼロの係数を有する入力記号を第1下位範囲にグループ化し、かつ主にゼ
    ロの係数を有する入力記号を第2下位範囲にグループ化するステップと、 第1範囲を、可変−可変エントロピー符号器を使用して符号化するステップと
    、 第2範囲を、ランレングスエントロピー符号器を使用して符号化するステップ
    とを含むことを特徴とする方法。
  26. 【請求項26】 入力信号を、入力信号の特性に応じた複数の符号化方法を
    使用して符号化するためのシステムであって、 時間領域オーディオ入力信号を受信するための入力と、 時間領域オーディオ信号を周波数領域オーディオ信号に変換するための信号変
    換器と、 周波数領域信号を量子化された記号に変換するための量子化器と、 量子化された記号に対するエントロピー符号器を選択するためのモードセレク
    タとを含むことを特徴とするシステム。
  27. 【請求項27】 入力信号を、入力信号の特性に応じた複数の符号化方法を
    使用して符号化するためのシステムであって、 時間領域オーディオ入力信号を受信するための手段と、 時間領域オーディオ信号を周波数領域オーディオ信号に変換するための手段と
    、 周波数領域信号を量子化された記号に変換するための手段と、 量子化された記号に対するエントロピー符号器を選択するための手段とを含む
    ことを特徴とするシステム。
  28. 【請求項28】 少なくとも2つの異なるエントロピー符号器が存在するシ
    ステムであって、 周波数領域信号を下位範囲に、各下位範囲内にあるデータが、ある特徴を共有
    する確率に応じて分割するための手段と、 少なくとも2つの異なるエントロピー符号器のうちのどちらを各下位範囲に適
    用するかを識別するための手段とを含むことを特徴とする請求項27に記載のシ
    ステム。
JP2000588902A 1998-12-14 1999-12-07 周波数領域オーディオ符号化のためのエントロピー符号モード切替え Expired - Lifetime JP4786796B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/211,531 1998-12-14
US09/211,531 US6300888B1 (en) 1998-12-14 1998-12-14 Entrophy code mode switching for frequency-domain audio coding
PCT/US1999/029109 WO2000036754A1 (en) 1998-12-14 1999-12-07 Entropy code mode switching for frequency-domain audio coding

Publications (3)

Publication Number Publication Date
JP2002532765A true JP2002532765A (ja) 2002-10-02
JP2002532765A5 JP2002532765A5 (ja) 2007-02-08
JP4786796B2 JP4786796B2 (ja) 2011-10-05

Family

ID=22787314

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000588902A Expired - Lifetime JP4786796B2 (ja) 1998-12-14 1999-12-07 周波数領域オーディオ符号化のためのエントロピー符号モード切替え

Country Status (6)

Country Link
US (1) US6300888B1 (ja)
EP (3) EP1330039B1 (ja)
JP (1) JP4786796B2 (ja)
AT (2) ATE359624T1 (ja)
DE (2) DE69935811T3 (ja)
WO (1) WO2000036754A1 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008102521A (ja) * 2006-10-18 2008-05-01 Polycom Inc 高速格子ベクトル量子化
JP2009501943A (ja) * 2005-07-15 2009-01-22 マイクロソフト コーポレーション 適応コーディングおよびデコーディングでの複数のエントロピモデルの選択的使用
JP2009511946A (ja) * 2005-10-05 2009-03-19 エルジー エレクトロニクス インコーポレイティド 信号処理方法及び装置、エンコーディング及びデコーディング方法並びにそのための装置
JP2009524100A (ja) * 2006-01-18 2009-06-25 エルジー エレクトロニクス インコーポレイティド 符号化/復号化装置及び方法
JP2010160517A (ja) * 2002-09-04 2010-07-22 Microsoft Corp レベル・モードとラン・レングス/レベル・モードの間での符号化を適応させるエントロピー符号化
US7953595B2 (en) 2006-10-18 2011-05-31 Polycom, Inc. Dual-transform coding of audio signals
JP2011154400A (ja) * 2002-09-04 2011-08-11 Microsoft Corp 混合の可逆的音声圧縮
KR101449434B1 (ko) 2008-03-04 2014-10-13 삼성전자주식회사 복수의 가변장 부호 테이블을 이용한 멀티 채널 오디오를부호화/복호화하는 방법 및 장치

Families Citing this family (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6215910B1 (en) * 1996-03-28 2001-04-10 Microsoft Corporation Table-based compression with embedded coding
US6571016B1 (en) * 1997-05-05 2003-05-27 Microsoft Corporation Intra compression of pixel blocks using predicted mean
US6624761B2 (en) 1998-12-11 2003-09-23 Realtime Data, Llc Content independent data compression method and system
US6377930B1 (en) * 1998-12-14 2002-04-23 Microsoft Corporation Variable to variable length entropy encoding
DE19907964C1 (de) * 1999-02-24 2000-08-10 Fraunhofer Ges Forschung Vorrichtung und Verfahren zum Erzeugen eines verschlüsselten Datenstroms und Vorrichtung und Verfahren zum Erzeugen eines entschlüsselten Audio- und/oder Videosignals
US6601104B1 (en) 1999-03-11 2003-07-29 Realtime Data Llc System and methods for accelerated data storage and retrieval
US6604158B1 (en) 1999-03-11 2003-08-05 Realtime Data, Llc System and methods for accelerated data storage and retrieval
EP1069691A1 (en) * 1999-06-15 2001-01-17 STMicroelectronics S.r.l. Decoding method for a Huffman code
KR100701446B1 (ko) * 1999-07-15 2007-03-30 코닌클리케 필립스 일렉트로닉스 엔.브이. 보조 데이터를 정보 신호에 임베딩
US8464302B1 (en) 1999-08-03 2013-06-11 Videoshare, Llc Method and system for sharing video with advertisements over a network
JP3804902B2 (ja) * 1999-09-27 2006-08-02 パイオニア株式会社 量子化誤差補正方法及び装置並びにオーディオ情報復号方法及び装置
DE19947877C2 (de) * 1999-10-05 2001-09-13 Fraunhofer Ges Forschung Verfahren und Vorrichtung zum Einbringen von Informationen in einen Datenstrom sowie Verfahren und Vorrichtung zum Codieren eines Audiosignals
US7181608B2 (en) 2000-02-03 2007-02-20 Realtime Data Llc Systems and methods for accelerated loading of operating systems and application programs
AU2001245575A1 (en) 2000-03-09 2001-09-17 Videoshare, Inc. Sharing a streaming video
US6501397B1 (en) * 2000-05-25 2002-12-31 Koninklijke Philips Electronics N.V. Bit-plane dependent signal compression
US6601032B1 (en) * 2000-06-14 2003-07-29 Intervideo, Inc. Fast code length search method for MPEG audio encoding
US6678648B1 (en) 2000-06-14 2004-01-13 Intervideo, Inc. Fast loop iteration and bitstream formatting method for MPEG audio encoding
US6542863B1 (en) 2000-06-14 2003-04-01 Intervideo, Inc. Fast codebook search method for MPEG audio encoding
US6718507B1 (en) * 2000-09-12 2004-04-06 At&T Corp. System and method for representing compressed information
US9143546B2 (en) 2000-10-03 2015-09-22 Realtime Data Llc System and method for data feed acceleration and encryption
US8692695B2 (en) 2000-10-03 2014-04-08 Realtime Data, Llc Methods for encoding and decoding data
US7386046B2 (en) 2001-02-13 2008-06-10 Realtime Data Llc Bandwidth sensitive data compression and decompression
GB0108080D0 (en) * 2001-03-30 2001-05-23 Univ Bath Audio compression
AUPR433901A0 (en) * 2001-04-10 2001-05-17 Lake Technology Limited High frequency signal construction method
US7076108B2 (en) * 2001-12-11 2006-07-11 Gen Dow Huang Apparatus and method for image/video compression using discrete wavelet transform
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
CN101448162B (zh) 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
FR2834162A1 (fr) * 2001-12-20 2003-06-27 Koninkl Philips Electronics Nv Systeme de communication de donnees selon un principe de commutation par paquets
US7447631B2 (en) * 2002-06-17 2008-11-04 Dolby Laboratories Licensing Corporation Audio coding system using spectral hole filling
US7016547B1 (en) * 2002-06-28 2006-03-21 Microsoft Corporation Adaptive entropy encoding/decoding for screen capture content
US7433824B2 (en) * 2002-09-04 2008-10-07 Microsoft Corporation Entropy coding by adapting coding between level and run-length/level modes
ATE543178T1 (de) 2002-09-04 2012-02-15 Microsoft Corp Entropische kodierung mittels anpassung des kodierungsmodus zwischen niveau- und lauflängenniveau-modus
US9711153B2 (en) 2002-09-27 2017-07-18 The Nielsen Company (Us), Llc Activating functions in processing devices using encoded audio and detecting audio signatures
US8959016B2 (en) 2002-09-27 2015-02-17 The Nielsen Company (Us), Llc Activating functions in processing devices using start codes embedded in audio
US20050004793A1 (en) * 2003-07-03 2005-01-06 Pasi Ojala Signal adaptation for higher band coding in a codec utilizing band split coding
US10554985B2 (en) 2003-07-18 2020-02-04 Microsoft Technology Licensing, Llc DC coefficient signaling at small quantization step sizes
US7688894B2 (en) * 2003-09-07 2010-03-30 Microsoft Corporation Scan patterns for interlaced video content
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7782954B2 (en) * 2003-09-07 2010-08-24 Microsoft Corporation Scan patterns for progressive video content
DK1706866T3 (da) * 2004-01-20 2008-06-09 Dolby Lab Licensing Corp Audiokodning på basis af blokgruppering
US7596486B2 (en) * 2004-05-19 2009-09-29 Nokia Corporation Encoding an audio signal using different audio coder modes
US6987468B1 (en) * 2004-10-29 2006-01-17 Microsoft Corporation Lossless adaptive encoding and decoding of integer data
US20060176953A1 (en) * 2005-02-04 2006-08-10 Nader Mohsenian Method and system for video encoding with rate control
US7895012B2 (en) * 2005-05-03 2011-02-22 Hewlett-Packard Development Company, L.P. Systems and methods for organizing and storing data
US8180631B2 (en) * 2005-07-11 2012-05-15 Lg Electronics Inc. Apparatus and method of processing an audio signal, utilizing a unique offset associated with each coded-coefficient
US7684981B2 (en) 2005-07-15 2010-03-23 Microsoft Corporation Prediction of spectral coefficients in waveform coding and decoding
US7693709B2 (en) * 2005-07-15 2010-04-06 Microsoft Corporation Reordering coefficients for waveform coding or decoding
US7565018B2 (en) 2005-08-12 2009-07-21 Microsoft Corporation Adaptive coding and decoding of wide-range coefficients
US8599925B2 (en) * 2005-08-12 2013-12-03 Microsoft Corporation Efficient coding and decoding of transform blocks
US7933337B2 (en) 2005-08-12 2011-04-26 Microsoft Corporation Prediction of transform coefficients for image compression
US8068569B2 (en) 2005-10-05 2011-11-29 Lg Electronics, Inc. Method and apparatus for signal processing and encoding and decoding
US7460032B2 (en) * 2005-10-27 2008-12-02 Evault, Inc. Methods and apparatus for performing adaptive compression
JP4548348B2 (ja) * 2006-01-18 2010-09-22 カシオ計算機株式会社 音声符号化装置及び音声符号化方法
US7831434B2 (en) 2006-01-20 2010-11-09 Microsoft Corporation Complex-transform channel coding with extended-band frequency coding
US7586425B2 (en) * 2006-07-11 2009-09-08 Nokia Corporation Scalable video coding and decoding
US8184710B2 (en) 2007-02-21 2012-05-22 Microsoft Corporation Adaptive truncation of transform coefficient data in a transform-based digital media codec
US7501964B2 (en) * 2007-04-16 2009-03-10 Texas Instruments Incorporated Entropy coding for digital codecs
KR100889750B1 (ko) * 2007-05-17 2009-03-24 한국전자통신연구원 오디오 신호의 무손실 부호화/복호화 장치 및 그 방법
US7774205B2 (en) * 2007-06-15 2010-08-10 Microsoft Corporation Coding of sparse digital media spectral data
US7885819B2 (en) 2007-06-29 2011-02-08 Microsoft Corporation Bitstream syntax for multi-process audio decoding
US9648325B2 (en) 2007-06-30 2017-05-09 Microsoft Technology Licensing, Llc Video decoding implementations for a graphics processing unit
KR101425354B1 (ko) * 2007-08-28 2014-08-06 삼성전자주식회사 오디오 신호의 연속 정현파 신호를 인코딩하는 방법 및장치와 디코딩 방법 및 장치
US8972247B2 (en) * 2007-12-26 2015-03-03 Marvell World Trade Ltd. Selection of speech encoding scheme in wireless communication terminals
KR20090110244A (ko) * 2008-04-17 2009-10-21 삼성전자주식회사 오디오 시맨틱 정보를 이용한 오디오 신호의 부호화/복호화 방법 및 그 장치
KR101599875B1 (ko) * 2008-04-17 2016-03-14 삼성전자주식회사 멀티미디어의 컨텐트 특성에 기반한 멀티미디어 부호화 방법 및 장치, 멀티미디어의 컨텐트 특성에 기반한 멀티미디어 복호화 방법 및 장치
KR20090110242A (ko) * 2008-04-17 2009-10-21 삼성전자주식회사 오디오 신호를 처리하는 방법 및 장치
US8179974B2 (en) 2008-05-02 2012-05-15 Microsoft Corporation Multi-level representation of reordered transform coefficients
WO2010005224A2 (en) * 2008-07-07 2010-01-14 Lg Electronics Inc. A method and an apparatus for processing an audio signal
US8406307B2 (en) 2008-08-22 2013-03-26 Microsoft Corporation Entropy coding/decoding of hierarchically organized data
US8121830B2 (en) * 2008-10-24 2012-02-21 The Nielsen Company (Us), Llc Methods and apparatus to extract data encoded in media content
US9667365B2 (en) 2008-10-24 2017-05-30 The Nielsen Company (Us), Llc Methods and apparatus to perform audio watermarking and watermark detection and extraction
US8359205B2 (en) 2008-10-24 2013-01-22 The Nielsen Company (Us), Llc Methods and apparatus to perform audio watermarking and watermark detection and extraction
US20100114568A1 (en) * 2008-10-24 2010-05-06 Lg Electronics Inc. Apparatus for processing an audio signal and method thereof
US8508357B2 (en) 2008-11-26 2013-08-13 The Nielsen Company (Us), Llc Methods and apparatus to encode and decode audio for shopper location and advertisement presentation tracking
US8666528B2 (en) 2009-05-01 2014-03-04 The Nielsen Company (Us), Llc Methods, apparatus and articles of manufacture to provide secondary content in association with primary broadcast media content
KR20120009618A (ko) * 2010-07-19 2012-02-02 에스케이 텔레콤주식회사 주파수변환단위 분할부호화 방법 및 장치와 이를 이용한 영상 부호화/복호화 방법 및 장치
KR102088153B1 (ko) 2013-04-05 2020-03-12 돌비 레버러토리즈 라이쎈싱 코오포레이션 향상된 스펙트럼 확장을 사용하여 양자화 잡음을 감소시키기 위한 압신 장치 및 방법
EP3084968A4 (en) * 2013-12-16 2017-11-29 McAfee, LLC Process efficient preprocessing for an encryption standard
GB2539239B (en) * 2015-06-10 2017-10-04 Gurulogic Microsystems Oy Encoders, decoders and methods utilizing mode symbols
US20180336469A1 (en) * 2017-05-18 2018-11-22 Qualcomm Incorporated Sigma-delta position derivative networks
US10475456B1 (en) * 2018-06-04 2019-11-12 Qualcomm Incorporated Smart coding mode switching in audio rate adaptation
JP2022523564A (ja) 2019-03-04 2022-04-25 アイオーカレンツ, インコーポレイテッド 機械学習を使用するデータ圧縮および通信

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07273658A (ja) * 1994-04-01 1995-10-20 Sony Corp 信号符号化方法及び装置、信号記録媒体、並びに信号復号化方法及び装置
JPH08190764A (ja) * 1995-01-05 1996-07-23 Sony Corp ディジタル信号処理方法、ディジタル信号処理装置及び記録媒体
JPH1141573A (ja) * 1997-07-23 1999-02-12 Nippon Telegr & Teleph Corp <Ntt> 情報多重化方法、情報抽出方法及びそれらの装置
JP2001500640A (ja) * 1997-07-14 2001-01-16 フラオホッフェル−ゲゼルシャフト ツル フェルデルング デル アンゲヴァンドテン フォルシュング エー.ヴェー. オーディオ信号の符号化方法

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6036153B2 (ja) * 1976-10-22 1985-08-19 日本電気株式会社 予測符号化装置
JPS61107818A (ja) * 1984-10-30 1986-05-26 Nec Corp エントロピ−符号化方式とその装置
JPH0821863B2 (ja) 1985-04-13 1996-03-04 キヤノン株式会社 データ処理方法
JPS62247626A (ja) 1986-04-19 1987-10-28 Fuji Photo Film Co Ltd 符号化方法
US4862167A (en) 1987-02-24 1989-08-29 Hayes Microcomputer Products, Inc. Adaptive data compression method and apparatus
US5742735A (en) 1987-10-06 1998-04-21 Fraunhofer Gesellschaft Zur Forderung Der Angewanten Forschung E.V. Digital adaptive transformation coding method
US5003307A (en) 1989-01-13 1991-03-26 Stac, Inc. Data compression apparatus with shift register search means
US5479562A (en) 1989-01-27 1995-12-26 Dolby Laboratories Licensing Corporation Method and apparatus for encoding and decoding audio information
DE3943881B4 (de) 1989-04-17 2008-07-17 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Digitales Codierverfahren
US5227789A (en) 1991-09-30 1993-07-13 Eastman Kodak Company Modified huffman encode/decode system with simplified decoding for imaging systems
JP3134424B2 (ja) 1991-10-31 2001-02-13 ソニー株式会社 可変長符号化方法及び装置
US5227788A (en) 1992-03-02 1993-07-13 At&T Bell Laboratories Method and apparatus for two-component signal compression
US5467087A (en) * 1992-12-18 1995-11-14 Apple Computer, Inc. High speed lossless data compression system
US5400075A (en) 1993-01-13 1995-03-21 Thomson Consumer Electronics, Inc. Adaptive variable length encoder/decoder
JP3210996B2 (ja) 1993-07-30 2001-09-25 三菱電機株式会社 高能率符号化装置及び高能率復号化装置
US5550541A (en) 1994-04-01 1996-08-27 Dolby Laboratories Licensing Corporation Compact source coding tables for encoder/decoder system
US5535311A (en) * 1994-07-28 1996-07-09 Hewlett-Packard Company Method and apparatus for image-type determination to enable choice of an optimum data compression procedure
US5552832A (en) 1994-10-26 1996-09-03 Intel Corporation Run-length encoding sequence for video signals
US5884269A (en) 1995-04-17 1999-03-16 Merging Technologies Lossless compression/decompression of digital audio data
US5825830A (en) 1995-08-17 1998-10-20 Kopf; David A. Method and apparatus for the compression of audio, video or other data
JP2976860B2 (ja) * 1995-09-13 1999-11-10 松下電器産業株式会社 再生装置
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
US5926791A (en) * 1995-10-26 1999-07-20 Sony Corporation Recursively splitting the low-frequency band with successively fewer filter taps in methods and apparatuses for sub-band encoding, decoding, and encoding and decoding
US5831559A (en) 1996-01-24 1998-11-03 Intel Corporation Encoding/decoding video signals using multiple run-val mapping tables
JP3267142B2 (ja) 1996-02-23 2002-03-18 ケイディーディーアイ株式会社 可変長符号生成装置
US5790706A (en) * 1996-07-03 1998-08-04 Motorola, Inc. Method and apparatus for scanning of transform coefficients
DE19637522A1 (de) 1996-09-13 1998-03-19 Bosch Gmbh Robert Verfahren zur Reduzierung von Daten in Videosignalen
US5959560A (en) 1997-02-07 1999-09-28 Said; Amir Data compression via alphabet partitioning and group partitioning
US5999949A (en) 1997-03-14 1999-12-07 Crandall; Gary E. Text file compression system utilizing word terminators
US5946043A (en) 1997-12-31 1999-08-31 Microsoft Corporation Video coding using adaptive coding of block parameters for coded/uncoded blocks
US6029126A (en) * 1998-06-30 2000-02-22 Microsoft Corporation Scalable audio coder and decoder
US6223162B1 (en) * 1998-12-14 2001-04-24 Microsoft Corporation Multi-level run length coding for frequency-domain audio coding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07273658A (ja) * 1994-04-01 1995-10-20 Sony Corp 信号符号化方法及び装置、信号記録媒体、並びに信号復号化方法及び装置
JPH08190764A (ja) * 1995-01-05 1996-07-23 Sony Corp ディジタル信号処理方法、ディジタル信号処理装置及び記録媒体
JP2001500640A (ja) * 1997-07-14 2001-01-16 フラオホッフェル−ゲゼルシャフト ツル フェルデルング デル アンゲヴァンドテン フォルシュング エー.ヴェー. オーディオ信号の符号化方法
JPH1141573A (ja) * 1997-07-23 1999-02-12 Nippon Telegr & Teleph Corp <Ntt> 情報多重化方法、情報抽出方法及びそれらの装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010160517A (ja) * 2002-09-04 2010-07-22 Microsoft Corp レベル・モードとラン・レングス/レベル・モードの間での符号化を適応させるエントロピー符号化
JP2011154400A (ja) * 2002-09-04 2011-08-11 Microsoft Corp 混合の可逆的音声圧縮
JP2009501943A (ja) * 2005-07-15 2009-01-22 マイクロソフト コーポレーション 適応コーディングおよびデコーディングでの複数のエントロピモデルの選択的使用
JP2009511946A (ja) * 2005-10-05 2009-03-19 エルジー エレクトロニクス インコーポレイティド 信号処理方法及び装置、エンコーディング及びデコーディング方法並びにそのための装置
JP2009520212A (ja) * 2005-10-05 2009-05-21 エルジー エレクトロニクス インコーポレイティド 信号処理方法及び装置、エンコーディング及びデコーディング方法並びにそのための装置
JP2009524100A (ja) * 2006-01-18 2009-06-25 エルジー エレクトロニクス インコーポレイティド 符号化/復号化装置及び方法
JP2009524101A (ja) * 2006-01-18 2009-06-25 エルジー エレクトロニクス インコーポレイティド 符号化/復号化装置及び方法
JP2008102521A (ja) * 2006-10-18 2008-05-01 Polycom Inc 高速格子ベクトル量子化
US7953595B2 (en) 2006-10-18 2011-05-31 Polycom, Inc. Dual-transform coding of audio signals
US7966175B2 (en) 2006-10-18 2011-06-21 Polycom, Inc. Fast lattice vector quantization
KR101449434B1 (ko) 2008-03-04 2014-10-13 삼성전자주식회사 복수의 가변장 부호 테이블을 이용한 멀티 채널 오디오를부호화/복호화하는 방법 및 장치

Also Published As

Publication number Publication date
DE69907267T2 (de) 2003-11-06
EP1330038A1 (en) 2003-07-23
DE69935811T2 (de) 2007-08-16
DE69935811T3 (de) 2012-08-16
ATE359624T1 (de) 2007-05-15
EP1330038B2 (en) 2012-06-13
DE69935811D1 (de) 2007-05-24
EP1330039B1 (en) 2013-04-10
EP1330039A1 (en) 2003-07-23
ATE238632T1 (de) 2003-05-15
EP1142130A1 (en) 2001-10-10
EP1142130B1 (en) 2003-04-23
WO2000036754A1 (en) 2000-06-22
US6300888B1 (en) 2001-10-09
EP1330038B1 (en) 2007-04-11
JP4786796B2 (ja) 2011-10-05
DE69907267D1 (de) 2003-05-28

Similar Documents

Publication Publication Date Title
JP4786796B2 (ja) 周波数領域オーディオ符号化のためのエントロピー符号モード切替え
JP4559632B2 (ja) 可変長対可変長エントロピー符号化
US6223162B1 (en) Multi-level run length coding for frequency-domain audio coding
US11044495B1 (en) Systems and methods for variable length codeword based data encoding and decoding using dynamic memory allocation
JP4559631B2 (ja) 可変長から可変長へのエントロピー符号化のためのコードブック構成
US6100825A (en) Cluster-based data compression system and method
US20020109615A1 (en) Method and apparatus for adaptive data compression
JP4779098B2 (ja) 可変サイズベクトルエントロピ符号化を実行するための方法および装置
EP0737350A1 (en) System and method for performing voice compression
US6668092B1 (en) Memory efficient variable-length encoding/decoding system
CN114614829A (zh) 卫星数据帧的处理方法、装置、电子设备和可读存储介质
KR100636370B1 (ko) 결정 비트를 이용한 부호화 장치 및 그 방법과 그에 따른복호화 장치 및 그 방법
US7193542B2 (en) Digital data compression robust relative to transmission noise
WO1997016818A1 (en) Method and system for compressing a speech signal using waveform approximation
RU2738141C2 (ru) Способ и устройство сжатия/кодирования, способ и устройство декодирования
Kieffer et al. Survey of grammar-based data structure compression
Abate Tefera et al. Compressed Amharic Text: A Prediction by Partial Match Context-Modeling Algorithm
Al-Azawi et al. Compression of Audio Using Transform Coding.
JP4480135B2 (ja) オーディオ信号圧縮方法
Shoham Variable-size vector entropy coding of speech and audio
Preet et al. Applications of SPT (Squeeze Pack and Transfer) and Other Lossless Compression Algorithms in IoT: A Comparative Study
Mohamed Wireless Communication Systems: Compression and Decompression Algorithms
Garba et al. Analysing Forward Difference Scheme on Huffman to Encode and Decode Data Losslessly
Paul et al. Efficient Speech Compression Using Waveform Coding in Time Domain
JP2002344326A (ja) 合成インデックスによるデータ圧縮方法及び圧縮データの完全復元方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061207

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061207

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20061207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090904

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20091203

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20091210

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20091224

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100106

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100204

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100304

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20100421

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100421

RD16 Notification of change of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7431

Effective date: 20100714

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101119

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110221

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110228

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110322

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110329

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110419

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110426

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110519

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4786796

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140722

Year of fee payment: 3

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

EXPY Cancellation because of completion of term