説明

圧縮されているデータの可変長符号化

【課題】コンプレッサからデコンプレッサへ伝送するために現在の値を最小限の数のビットに圧縮するための方法及びシステムを提供する。
【解決手段】本発明の方法は:異なるk個の最下位ビットを各々有して該デコンプレッサへ各々伝送された一連の少なくとも1つの前の値を該コンプレッサにおいて維持し;前記の一連の少なくとも1つの前の値の中のいずれかの値を基準値として用いて、該デコンプレッサにおいて前記の現在の値を首尾良く解凍することを可能にする最少数のビットを表すkの値を決定し;前記の現在の値の前記のk個の最下位ビットと共に前記の現在の値を圧縮されている形で該コンプレッサから該デコンプレッサへ伝送することを含む。

【発明の詳細な説明】
【技術分野】
【0001】
(関連出願への相互参照)
この出願は、“圧縮されているデータの可変長符号化”と題されている、1999年11月9日に出願された米国暫定出願第60/164,330号の出願日を主張する。
【0002】
“ヘッダ圧縮のための効率的ハンドオフ手順”と題されている、2000年3月9日に出願された米国特許出願第09/522,497号を参照するが、この出願はこれの譲受人に譲渡されていて参照によりその全体がこれに編入される。
【0003】
“パケットを送信し受信するための方法及びシステム”と題されている、2000年3月28日に出願された米国特許出願第09/536,639号も参照するが、この出願はこれの譲受人に譲渡されていて参照によりその全体がこれに編入される。
【0004】
(技術分野)
本発明は、パケット・ヘッダ圧縮を含む高効率データ圧縮に関する。
【背景技術】
【0005】
効率が良くてエラーに強い方法で、一連の値を圧縮できることが重要である領域が多数ある。一例は、セルラー・ネットワークを介して実時間IPベースのマルチメディア・トラフィックを伝えるIP/UDP/RTPヘッダ圧縮である。IP/UDP/RTPヘッダのサイズは大きく、セルラーシステムの帯域幅に制限があるために、圧縮効率が絶対に必要である。セルラー・リンクのエラーを生じさせやすい特性の故に、エラーに強いことも必要である。
【0006】
インターネット・エンジニアリング・タスク・フォース(IETF)、RFC2508、1999年2月、に記載されているRTPヘッダ圧縮は、無損失コンプレッサ−デコンプレッサ・リンクでの高圧縮効率を達成する。それは、ヘッダの殆どをわずか2バイトまで圧縮することができる。しかし、この構成はエラーに強くない。遭遇する問題は、エラー伝搬と、増大した圧縮されているヘッダのサイズとである。エラー伝搬は、ここでは、圧縮されているヘッダがエラーにより打撃を受けたならば、この圧縮されているヘッダが復号化不能となるだけではなくて、次に続く圧縮されているヘッダも、それらにエラーが無いとしても、おそらく復号化不能となるという事実を指す。増大した圧縮されているヘッダのサイズは、ここでは、エラー回復手順の故に、損失のあるリンク上の圧縮されているヘッダは損失の無いリンクで達成される最上の2バイトより大きいという事実を指す。RFC2508の制限事項について以下で論じる。
【0007】
ヘッダ圧縮方式は、ヘッダで運ばれる一定の情報フィールドが1.)変化しないか(ここでは’タイプ1’ヘッダ・フィールドと称される)、或いは2.)かなり予測し得る態様で変化する(ここでは’タイプ2’ヘッダ・フィールドと称される)という事実を利用する。’タイプ3’ヘッダ・フィールドと称される他のフィールドは、忠実には予測し得ない態様で変化する。
【0008】
タイプ1ヘッダ・フィールドの例は、IPアドレス、UDPポート番号、RTP SSRC(同期化ソース)、等である。これらのフィールドは、セッションの過程で(例えば、セッション確率時に転送されるパケットの一部分として)受信装置/デコンプレッサに1回送られるだけでよい。
【0009】
タイプ2ヘッダ・フィールドの例は、RTPタイム・スタンプ、RTPシーケンス番号、及びIP IDフィールドである。全て、パケットからパケットへと一定量ずつ増大する傾向を有する。従って、全てのヘッダでこれらの値を伝送する必要はない。必要なのは、RFC2508においてデルタと称される一定の増大(差分)値をデコンプレッサに知らせることだけである。デコンプレッサは、最初のヘッダを復元するとき、これらのデルタを利用して最新のタイプフィールドを再生する。換言すると、タイプ2ヘッダ・フィールドを圧縮するために差分符号化が使用される。
【0010】
殆どのIPスタック・インプリメンテーションについてのIP−IDフィールドは、ソースから送られる全てのパケットについて一定量ずつ増大する。従って、RTPストリーム・パケットがコンプレッサ−デコンプレッサ(CD)−チャネルにおいて同じソースからの他のパケットとインターリーブされない限りは、IP−IDデルタは一定であって、送信される必要はない。
【0011】
タイプ3ヘッダ・フィールドの例は、RTP M−ビット(マーカー)であり、これは媒体における何らかの境界(例えば、ビデオ・フレームの終了)の発生を示す。媒体は普通は予測不能に変化するので、この情報を正しく予測することはできない。
【0012】
ヘッダ圧縮方式の上記制約は、タイプ2フィールドのために使用されるデルタ符号化に由来する。差分符号化の故に、もし1つの圧縮されているヘッダが失われると、それに続く圧縮されているヘッダは復号化不能となり、その理由は、それらは復号化不能の圧縮されているヘッダから回帰的に予測されることにある。これは、私達がエラー伝搬と呼んだものである。
【0013】
エラー伝搬から回復するために使用されるアルゴリズムは“トワイス(twice)”アルゴリズムとして知られており、圧縮されているパケットでパケットUDPチェックサムが伝送されるならば、このアルゴリズムを使用することができる。CD−リンク上の圧縮されているパケットは4ビットのシーケンス番号を伝え、それはコンプレッサにより送られる各々の圧縮されているパケットについて1だけ大きくされる。デコンプレッサは、このシーケンス番号を使用して該リンク上の圧縮されているパケットの喪失を検出する。もしシーケンス番号が1より大きく増大したならば、デコンプレッサは、全ての圧縮されているパケット・デルタが最後の圧縮されているパケット・デルタから変化していないと思い、各々の喪失したパケットについて1つのデルタを加える。その後、デコンプレッサは、解凍されたパケットUDPチェックサムを計算し、それが伝送されたUDPチェックサムと釣り合うか否か調べることにより、該仮定が妥当であったか否か調べる。
【0014】
トワイス・アルゴリズムは制限的でありすぎる。第1に、それは全ての圧縮されているパケットでチェックサム(2バイト)を送ることを必要とし、従って圧縮効率を顕著に低下させる。第2に、代表的なオーディオ・ストリームについて、トワイス・アルゴリズムは、最後に解凍されたパケットからTS又はIP−IDジャンプがない場合に限って具合良く作用する。
【0015】
デコンプレッサは、パケットを解凍できないときには、否定の受取通知Nackをコンプレッサに送る。Nackを受け取ると、コンプレッサは圧縮されていないヘッダ・フィールドを送らなければならない。フィールドが圧縮されずに送られなければならないので、Nackメカニズムは少なくとも1伝送遅延の持続時間のオーディオ又はビデオの機能停止と圧縮効率の低下とを招来する。
【0016】
エラー伝搬を制限するために、コンプレッサは、デコンプレッサが要求していないのに圧縮されていないフィールドを定期的に送るリフレッシュ・メカニズムを使用することができる。しかし、その様なメカニズムは圧縮効率を更に低下させる。
【0017】
RFC2508のもう一つの制約は、圧縮されているヘッダの短いシーケンス番号である。前のシーケンス番号と連続していないシーケンス番号を有するヘッダをデコンプレッサが受け取ると、パケット喪失が検出され、コンプレッサとデコンプレッサとを再同期化するために回復機構が使用される。単に短いシーケンス番号を使用することは、’長い喪失’が頻繁に生じることのある無線などの、エラーが生じがちのリンクにとっては強健ではない。長い喪失は、ローにおける’シーケンス・サイクル’又はそれより多いパケットの喪失として定義される。長い喪失が発生したとき、デコンプレッサにより受信されたパケット中のシーケンス番号は’巻き付ける’。例えば、シーケンス番号がkビットから成り、従ってシーケンス・サイクルが2kに等しいとする。ローにおいて2kパケットが喪失したとすると、デコンプレッサは、依然として到来するパケット中の連続するシーケンス番号を見ているので、パケットの喪失を検出することができない。
【発明の概要】
【発明が解決しようとする課題】
【0018】
本発明は、1実施態様においてはVLE(variable length encoding(可変長符号化))と称される強健で効率の良い符号化機構である。本発明のVLE及びその他の実施態様は、エラー伝搬と従来技術の効率低下とを解決する。
【課題を解決するための手段】
【0019】
本発明は、部分的には、圧縮ポイントで受信されるヘッダ・タイプ2フィールドが増加傾向を示すという所見に基づいている。このことは、連続するヘッダからのフィールドが同じMSB(最上位ビット)を有していて、そのLSB(最下位ビット)だけ違うということを暗に意味する。従ってLSBだけを伝送することによって圧縮を達成することができる。
【0020】
本発明は、CDリンクで前の圧縮されているパケットの喪失がどの様であっても正しい解凍を可能とするのに充分な様な最少数の送られるべきLSBをコンプレッサが決定することを可能にする。
【0021】
本発明は、どの様な値の系列にも応用されることができる。値が密集している(即ち、互いに近い)ほど、効率が高くなる。
【0022】
本発明に従って現在の値をコンプレッサからデコンプレッサへ伝送される最少数の或いは減じた数のビットに圧縮する方法は、各々異なるk個の最下位ビットを有して該デコンプレッサに伝送されている少なくとも1つの前の値の系列を該コンプレッサにおいて維持し、前記の前の値の系列中のいずれかの値を基準として用いて該デコンプレッサにおいて前記の現在の値を首尾良く解凍することを可能にする最少数の又は減じた数のビットを表すkの値を決定し;前記の現在の値を該コンプレッサから該デコンプレッサへ前記の現在の値のk個の最下位ビットと共に圧縮された形で伝送することを含んでいる。前記の現在の値を前記の前の値と比較して前記の現在の値と前記の前の値との最大の差rを決定することによりkの値を決定することができ、このkはlog2(r)+1より大きな最小の整数であるように選択される。該デコンプレッサは、該デコンプレッサが値を解凍したことを示す少なくとも1つの受取通知を該コンプレッサに送ることができ、該コンプレッサは前記の少なくとも1つの前の値の系列を更新してより古い少なくとも1つの前の値を捨てることができる。該デコンプレッサは、該基準値に最も近い受信された現在の値のk個の最下位ビットと同一のk個の最下位ビットを有する値として解凍されるべき少なくとも1つの前の値の該系列の最後の値の基準値と共に前記の現在の値を解凍することができる。該デコンプレッサは、該基準値の下からその上にまで及ぶ値を包含するサーチ間隔を使用することができ;該サーチ間隔の中の値から同一のk個の最下位ビットを有する値を選択することができる。基準値v refとビット数kとを少なくとも1つの前の値の系列と現在の値とにマッピングすることから値を作ることができ;少なくとも1つの前の値の系列は、デコンプレッサにより解凍されていると受取通知されている最も古い伝送された値を最旧値として有するように更新されることができる。該値は、基準値とビット数kとの関数であって良い。その関数は、[v ref−2k-1, v ref+2k-1]であって良い。該関数は、[v ref, v ref+2k]であって良い。少なくとも1つの受取通知は、受信された圧縮されていない値又は圧縮されている値であって良い。少なくとも1つの受取通知は、圧縮されている値の一部分を符号化するのに使用された情報を含む受信された圧縮されている値であって良い。少なくとも1つの受取通知は、少なくとも1つの前の値の系列中の最も古い値を含むことができる。コンプレッサとデコンプレッサとの間で値の系列での伝送中に失われることのある見積もられた最大数の値に基づいて少なくとも1つの前の値の系列を更新してより古い前の値を捨てることができる。圧縮されている現在の値は、その現在の値と共に伝送される数kを符号化することができる。その符号化はハフマン符号化であって良い。該値はRTPヘッダを含むことができる。少なくとも1つの受取通知は、RTPヘッダのTS及びIP−IDの受取通知を表すRTP SNヘッダの受取通知であって良い。
【0023】
本発明に従って現在の値を最少数の又は減じた数のビットに圧縮するためのシステムは、異なるk個の最下位ビットを各々有する少なくとも1つの前の値の系列を維持するコンプレッサと;最少数の又は減じた数のk個の最下位ビットに圧縮されている現在の値を受信するデコンプレッサとを含んでおり;該コンプレッサは前記の少なくとも1つの前の値の系列中のいずれかの値を基準として用いて該現在の値を首尾良く解凍することを可能にする最少数のビットを表すkの値を決定する。現在の値を少なくとも1つの前の値と比較してその現在の値と少なくとも1つの前の値との最大差rを決定することによりkの値を決定することができ、kはlog2(r)+1より大きな最小の整数であるように選択される。該デコンプレッサは、該デコンプレッサが値を解凍したことを示す少なくとも1つの受取通知を該コンプレッサに送ることができ、該コンプレッサは少なくとも1つの前の値の系列を更新してより古い少なくとも1つの前の値を捨てることができる。該デコンプレッサは、該基準値に最も近い受信された現在の値のk個の最下位ビットと同一のk個の最下位ビットを有する値として解凍されるべき少なくとも1つの前の値の系列の最後の値の基準値と共に該現在の値を該デコンプレッサで解凍することができる。該デコンプレッサは、該基準値より下からその上にまで及ぶサーチ間隔を使用することができ;該サーチ間隔の中の値から同一のk個の最下位ビットを有する値を選択することができる。基準値v refとビット数kとを少なくとも1つの前の値の系列と現在の値とにマッピングすることから値を作ることができ;少なくとも1つの前の値の系列は、デコンプレッサにより解凍されていると受取通知されている最も古い伝送された値を最旧値として有するように更新されることができる。関数は[v ref−2k-1, v ref+2k-1]である。該関数は[v ref, v ref+2k]であって良い。受取通知は、受信された圧縮されていない値であって良い。少なくとも1つの受取通知は、受信された圧縮されている値であって良い。少なくとも1つの受取通知は、圧縮されている値の一部分を符号化するのに使用された情報を含む受信された圧縮されている値であって良い。コンプレッサとデコンプレッサとの間で値の系列での伝送中に失われることのある見積もられた最大数の値に基づいて少なくとも1つの前の値の系列が該コンプレッサにより更新されて少なくとも1つのより古い前の値を捨てることができる。圧縮されている現在の値は、その現在の値と共に伝送される数kを符号化することができる。該値はRTPヘッダを含むことができる。少なくとも1つの受取通知は、RTPヘッダのTS及びIP−IDの受取通知を表すRTP SNヘッダの受取通知であって良い。
【図面の簡単な説明】
【0024】
【図1】情報の圧縮を概念的に示す。
【図2】情報の解凍を概念的に示す。
【図3】本発明に従って受取通知を用いて、より多いビット数を有するヘッダの送信からより少ないビット数へのコンプレッサの移行を示す。
【図4】本発明に従う1次圧縮のヘッダの送信から2次圧縮のヘッダへのコンプレッサの移行を示す。
【図5】本発明に従う最小ビット数kの選択の例を示す。
【図6】本発明に従う最小ビット数kの選択の例を示す。
【図7A】本発明に従ってコンプレッサにより蓄積される値の滑りウィンドウの使用を示す。
【図7B】本発明に従ってコンプレッサにより蓄積される値の滑りウィンドウの使用を示す。
【図8】本発明に従って圧縮されている値を送信するために2つの符号化フィールドを使用するVLE符号化フォーマットの例を示す。
【発明を実施するための形態】
【0025】
基本構想及び規則
図1は、圧縮情報とその例とを概念的に示している。圧縮コンテキストは情報の集合であり、部分集合であり或いは部分集合を象徴し、それは、限定無しに圧縮されているヘッダであって良い圧縮されている情報を作るために圧縮アルゴリズムへの入力として図3及び4に示されているコンプレッサにより使用されるヘッダを含む、限定無しに如何なる種類の情報であっても良い。他方の入力は、限定無しに圧縮されるべきヘッダとして例示されている圧縮されるべき情報のソースからのものである。
【0026】
図2は、情報の解凍と、その例とを概念的に示している。解凍コンテキスト情報は情報の集合であり、部分集合であり或いは部分集合を象徴し、それは、限定無しに解凍されているヘッダであって良い解凍されている情報を作るために解凍アルゴリズムへの入力として図3及び4に示されている解凍により使用されるヘッダを含む、限定無しに如何なる種類の情報であっても良い。他方の入力は、限定無しに解凍されるべきヘッダとして例示されている解凍されるべき情報からのものである。
【0027】
圧縮コンテキスト情報及び解凍コンテキスト情報は共に動的である、即ち、それらはそれぞれコンプレッサ及びデコンプレッサにより更新されることができる。更新の頻度はヘッダ圧縮メカニズムによる。コンプレッサにおいて圧縮コンテキスト情報の更新をもたらすことのある事象は、到来したヘッダの圧縮、或いはデコンプレッサからのフィードバックの受信を含む。デコンプレッサにおいて解凍コンテキスト情報の更新をもたらすことのある事象は、到来したヘッダの解凍を含む。コンプレッサは3つの状態:
・ FH(フルヘッダ(Full Header))状態
・ FO(一次(First Order))状態
・ SO(二次(Second Order))状態
のうちの1つであることができる。
【0028】
コンプレッサは、初期化段階ではFH状態で動作する。FH状態では、コンプレッサは完全なRTPヘッダを送る。この状態は普通はRTPセッションの始まりに又はセッションの半ばにおいて例えばコンプレッサが機能しなくなったり記憶を失うなどの非常に例外的な事象に起因して起こる一時的な状態である。
【0029】
コンプレッサは更新段階ではFO状態で動作する。FO状態では、送信装置はFOヘッダ、即ちそのヘッダが適切に符号化されている、基準ヘッダと比べて変化しているフィールド並びにシーケンス番号を運ぶパケット、を送る。デコンプレッサは、図3及び4に示されているように一定の数のFOについて受取通知するように期待され、その数はパターンによる。例えば、パターンが一定のパラメータで線形であるならば、補外法への過渡期には唯一の受取通知が必要であるに過ぎない。
【0030】
コンプレッサは補外法段階ではSO状態で動作する。この状態では、送信装置はSOパケットを、即ちそのヘッダが本質的にちょうどシーケンス番号であるパケットを、送る。デコンプレッサは、正しく受信されたSOパケットについて受取通知を出しても良いし受取通知を出さなくても良い。
【0031】
VLEにおいて使用される1種の数学的関数について次のように説明するが、それは本発明と共に使用され得るけれども本発明はそれには限定されない。f(k, v ref) = (v 1, v 2,.....,v k)と表示されるその様な関数は、基準値と称される整数v refに写像すると共に、数個のビットkを、全て異なるk個のLSBを有する整数のk組に写像する。
【0032】
その様な関数はいずれも適切であるかも知れないけれども、1つの好ましい実施態様は連続する値v 1, v 2,....., v k、即ちv i = v 1 + i−1を戻す関数だけを使用する。換言すると、該関数は長さ2kの値の間隔を有する。その間隔は[v ref−C(k, v ref), v ref−C(k, v ref)+2k]と書かれることができ、ここでCはk及びv refの関数である整数値である。その様などんな間隔も興味あるものであるけれども、1つの好ましい実施態様はC(k, v ref) = 0及びC(k, v ref) = 2k−1を使用する。換言すると、その実施態様は間隔[v ref−2k-1, v ref+2k-1]と[v ref, v ref+2k]とを使用する。
【0033】
[v ref−2k-1, v ref+2k-1]間隔に基づくVLE実施態様について次のように説明する。システムは、コンプレッサと、デコンプレッサと、図3及び4に示されているCDチャネル即ち該コンプレッサ及び該デコンプレッサの間のリンク、とから成っている。該チャネルはエラーを生じがちであるかも知れない。この実施態様での仮定は、限定をするものではないが、圧縮されている値が該チャネルにより再注文されなくて、デコンプレッサへの入力として与えられる圧縮されている値は改竄されていない(換言すると改竄されているヘッダは失われたヘッダとして取り扱われる)ということだけである。該チャネルは、シンプレックス・リンク、即ちデコンプレッサからの圧縮されている値だけを運ぶリンクであるか、又はデュプレックス・リンクであることができ、即ち該チャネルは図3及び4に示されているようにデコンプレッサからコンプレッサへのフィードバックも運ぶ。好ましい実施態様ではデュプレックス・チャネルが使用される。
【0034】
第1段階は、デコンプレッサによる初期値の取得である。これは、通信の開始時にコンプレッサが圧縮されていない値を送ることにより、或いは他の適当な手段により、実行されることができる。図3及び4に示されているようにデコンプレッサは値を受け取ったことを報じるためにフィードバック・チャネルを使用することができる。初期化は、限定無しに、コンプレッサが1つのフィードバック受取通知を受け取ったときに完了し、その後、VLE符号化を使用して圧縮を行うことができる。VLEでは、値は可変数のビットkとして圧縮される。VLEモードにおけるデコンプレッサの動作について最初に論じる。
【0035】
図7A及び7Bはウィンドウ更新プロセスを示す。ウィンドウは、コンプレッサに入力され圧縮され得るけれども圧縮される必要はない前の値から成る。ウィンドウは包含時点におけるvi, vi+1_____, vnであり:
(1)新しい値vn+1が圧縮されるとき、図7Aに示されているようにこの新しい値を包含するために該ウィンドウが拡大される。
(2)その後、コンプレッサがそれらの値が最早デコンプレッサにより使用され得ないと知っているとき、それはこの例では値vi+2についての受取通知が発生したときであり得、より古い値(この例ではvi及びvi+1)を除去することにより、図7Bに示されているようにウィンドウが縮小される。
【0036】
解凍:
基準値は、デコンプレッサにより解凍された最後の値である。コンプレッサは、図3及び4に示されているように受取通知の受信により、デコンプレッサからのフィードバックを使用せずにおそらく少なくとも1つの値が統計的に受信されるのに充分な持続時間にわたって値の系列が送信されたことを考慮して現実の値が受信されたという仮定のもとで、解凍を信号されることができる。デコンプレッサは、そのk個のLSBが受信されたkビットと釣り合う間隔[v ref−2k-1, v ref+2k-1]の中の唯一の値を供給することにより、到来する圧縮されている値を解凍する。このサーチ間隔は、前に導入された関数の特別の実例である。解凍された値はv refとなり、それは次に到来する圧縮されている値を解凍するために使用される。好ましい実施態様では、デコンプレッサは、図3及び4に示されているような解凍されている少なくとも数個のパケットについての受取通知を報じる。受取通知が出されなければならないパケットの数は完全に弾力的であって、所望のアプリケーションの仕様を満たすように選択される。デコンプレッサからコンプレッサへ送られる受取通知が多いほど、後に示すように前進リンクにおける圧縮効率が高くなる。
【0037】
圧縮:
ここでコンプレッサの動作を参照する。コンプレッサは、自分が圧縮して図7A及び7Bに示されているデコンプレッサへ送った値の滑りウィンドウ(sliding window)を維持する。1実施態様では、該ウィンドウは、それについてデコンプレッサから受取通知を受信した最後の値と次に送られた値とを、それらがデコンプレッサに送信された順に保持する。コンプレッサは、滑りウィンドウの最大値及び最小値v min及びv maxも維持する。
【0038】
新しい圧縮されていない値vがコンプレッサに到着すると、コンプレッサは、滑りウィンドウの全てのv iについての間隔[v i−2k-1, v i+2k-1]の中にvが存在するようにvのk個のLSBを送る。これはr<2k−1により便利に表現されることができ、ここでr=max(|v−v max|, |v−v min|)である。この様にコンプレッサはlog2(r)+1より大きな最小の整数であるようにkを選択する。コンプレッサが受取通知を受け取るとき、それは、その滑りウィンドウから図7Bを参照して前述したように該受取通知より前に送られた全ての値を除去する。
【0039】
次の議論は、何故VLEが常に正しい解凍を提供する非常に弾力的なメカニズムであるかを説明する。
【0040】
コンプレッサとデコンプレッサとが上記の規則に従う限りは、図3及び4に示されているコンプレッサとデコンプレッサとの間のCDチャネルでの喪失がどの様であっても正しい解凍が行われる。実際に、デコンプレッサにより使用される基準値v refは、例えば図5及び6において点v minとv maxとの間に示されているように、コンプレッサのウィンドウに必ず属し、従って符号化されている値は、デコンプレッサにより使用されるサーチ間隔である間隔[v ref−2k-1, v ref+2k-1]の中にあると知られる。
【0041】
VLEではエラー伝搬はない。デコンプレッサにより受信された圧縮されているパケットは常に解凍されることができる。パケット喪失は、圧縮されているパケットのサイズの漸増をもたらす。
【0042】
受取通知が頻繁であるほど、ウィンドウ内の値は少なくなり、従ってより少ないLSBが送られなければならなくなりそうである。これは、圧縮されるべき値が増加傾向に従い、受取通知が受信されるまで各々の新しい値vについてv−v minが増大するヘッダ圧縮の場合に特に当てはまる。
【0043】
圧縮されている値の長さがデコンプレッサに知られていなければならない。或る場合には、この長さは、例えばより低い符号化層からのフレーミング情報を通じて、追加のシグナリング無しで知られることができる。明示的なシグナリングが必要であるならば、好ましい実施態様はVLEフォーマットを定義する。該フォーマットは図8に示されているように2つのフィールド:即ち長さフィールド(即ちLSBの個数k)と圧縮されている値のフィールド(即ち、最初の値vのk個のLSB)とを有することができる。
【0044】
好ましい実施態様では、図8に示されているVLE長さフィールドは、それ自体がハフマン符号化を用いて符号化されている。他のどの様な符号化方法(例えば直線符号化)を使用しても良い。いろいろなアプリケーションについていろいろな長さの確度がアクセスされるべきであり、その後、望ましい場合にはこれらのデータを符号化するためにハフマン符号化アルゴリズムが使用されるべきである。コンプレッサとデコンプレッサとの間の通信リンクにおいて与えられた長さに遭遇する確度は、リンクの特性(喪失及び遅延)とデコンプレッサ受取通知期間と、圧縮されるべき最初の値のパターンとを知って評価されることができる。
【0045】
長さフィールド自体の長さを更に短くするために、コンプレッサに強いて値の縮小された集合からフィールドの長さを選択させることができる。例えば、圧縮されていないフィールドが32ビットで、確度4ビット、8ビット及び32ビットの減少する順となっている次の長さを最大2ビットの長さで符号化したいとすると、適切なコードワードは、4ビットについては単一のビット0、8ビットについては2ビット値10、32ビットについては2ビット値11である。
【0046】
適切な符号化を用いることは、圧縮されている値の平均サイズを最小にする。
【0047】
更に、もし長さを他のパケット・フィールドから得られるのであれば、長さ情報は専用のビットを必要としないかも知れない。例えば、典型的ヘッダ圧縮アプリケーションでは、パケット・タイプ・フィールドが圧縮されているヘッダで送られる。このパケット・タイプ・フィールドを使用して、まれにしか越えられることのないデフォルト長さを暗に示すことができる。その場合、デフォルト長さが越えられると、別のパケット・タイプが使用される。これはまれにしか発生しないことなので、オーバーヘッドは全体的には減少される。
【0048】
もしフィードバック・チャネルがなければ、コンプレッサのウィンドウを前へ移動させてkが永久に増大しないように維持するために他の(帯域外)情報又は追加の仮定が必要となる。1つの方法は、コンプレッサからデコンプレッサへのチャネルに沿って多くてもL個の連続する圧縮されている値が失われることがあると仮定することである。換言すると、コンプレッサは、(L+1)個の連続する圧縮されている値のうちの少なくとも1つがデコンプレッサに到達することを確かに知っているということになる。従って、コンプレッサは、デコンプレッサへ送られた最後の(L+1)個の値をウィンドウに蓄積しておくだけでよい。従って、範囲(v max−v min)と、従ってkの値とは、送られた最後の(L+1)個の値のみに依存する。
【0049】
RFC2508とは逆に、コンプレッサ−デコンプレッサ・シーケンス番号を使用する必要はない。その代わりに、RTPシーケンス番号がVLEを用いて符号化される。デコンプレッサは、自分が受け取ったRTP SNをコンプレッサに送ることによってVLEアプリケーションに記載されているように図3及び4に示されているようなパケットを受け取ったことを通知する。
【0050】
最上の受取通知について後述するように、デコンプレッサは圧縮されていないRTP SN値を戻す必要はない。
【0051】
次の例は、RFC2508に記載されているRTP SN圧縮についての本発明の働きを示す。コンプレッサに、そのSN(sequence number(シーケンス番号))が:32、33、35、36、39、40、38、41である到来するパケットの系列が供給される。そのシーケンス番号が35であるパケットについてデコンプレッサが受取を通知したと仮定すると、コンプレッサは,受取が通知された最後のパケットから送信された上記のシーケンス番号のウィンドを維持する。受取通知が受信されたとき、コンプレッサのウィンドウは35、36、39、40、38、41である。今、SN値43を有する新しいSN値がコンプレッサに到来すると仮定する。コンプレッサはそのウィンドウ最大値を探し、41を発見する。コンプレッサはウィンドウ最小値であるを探し、35を発見する。コンプレッサは、到来した値の、その上限(43−41=2)及び下限(43−35=8)までの距離rを計算する。最大距離は8である。コンプレッサは、整数がlog2r+1より大きくなるように数個のビットkを送らなければならず、この例では2kは17より大きい。この数k = 5である。43は2進数形式では101011と書かれるので、コンプレッサは5個のLSB、即ち01011,を送る。デコンプレッサ基準値は、デコンプレッサにより解凍された最後の値であり、それは確かにコンプレッサ・ウィンドウ内の値のうちの1つである。デコンプレッサは、その5個のLSBが01011であって基準値に最も近い値を戻すことによって、到来した(01011)を解凍する。基準値が何であっても、この値は常に43である。例えば、デコンプレッサにより受信される最後の値が、それが圧縮されている値を受け取るときに40であると仮定すると(即ちコンプレッサとデコンプレッサとの間のリンクで38と41とが失われた)、デコンプレッサにより使用されるサーチ間隔は[25, 56]或いは2進形式で[011001, 111000]である。その最後のLSBが01011である該間隔内の唯一の値は101011,即ち43である。
【0052】
デコンプレッサがkの値を選び取るもう一つの方法は、40に最も近い、そのLSBが01011である値を選ぶことである。数40は2進形式では101000である。その最後のLSBが01011である101000に最も近い値は01011,即ち43である。このことは、コンプレッサ−デコンプレッサ・リンクにおける喪失がどの様であっても、VLEが正しい解凍を与える送られるべきLSBビットの最小の又は減少された数の決定を許すということを例証する。
【0053】
図5及び6は、VLE符号化されるべき現在の値が、同じLSBを持っていてウィンドウ内の最大値又は最小値に最も近い値の中にあるようにkの値を選ぶことを示している。図5は、vがv maxより大きい場合を示し、図6はvがv minより小さい場合を示している。
【0054】
RTPタイム・スタンプ又はIP−IDフィールドが送られるパケットでは、これらのフィールドは、送信されたパケットの、SN符号化に使用されるとの同じウィンドウを使用して符号化される。従って、デコンプレッサは、これらのフィールドを、その受取通知をするために、逆/フィードバック・チャネルで送り返さない。ウィンドウは、ベクトル(SN、TS、IP−ID)のウィンドウと見なされても良い。与えられたベクトルの受取通知は、SNフィールドだけを戻すことによって行われることができる。
【0055】
1実施態様は、SN、TS及びIP−IDを、これらのフィールドが送られなければならない時、送るために受取通知の枠組みに基づいてヘッダ圧縮を行う。他の符号化をTS及びIP−IDのために使用することができる。このヘッダ圧縮方式を以下において要約する。
【0056】
受取通知を使用するFO及びSO状態への移行
新しいセッションが始まるとき、コンプレッサは、少なくとも1つのFHパケットが受信されたことを示す受取通知(ACK)をデコンプレッサから受け取るまで、FH状態で動作する。コンプレッサがFH状態からFO状態へ移行し得るように、FHパケットの受取通知を、それがそれを受け取ったら直ちに出すことは、デコンプレッサの責務である。受取通知は、デコンプレッサにより解凍された圧縮されている現在の値又は圧縮されていない現在の値を含むことができる。いずれの量も、コンプレッサが圧縮の状態を更新して古い値を捨て始めることを許す。
【0057】
FO状態では、コンプレッサはFOパケットを送信し、デコンプレッサは受信したFOパケット(必ずしも全てのFOパケットではない)について受取通知を出すと想定される。デコンプレッサがFODを確立し、そのFODが送信される現在のヘッダと最後に送られたヘッダとの間のFODと同じであるとコンプレッサが決定したならば、コンプレッサはSO状態に進んでSOパケットを送り始める。
【0058】
上で論じた理由により、コンプレッサはSO状態からFO状態に戻らなければならないかも知れない。しかし、コンプレッサは、システムのクラッシュの故にデコンプレッサがそのコンテキストを失うなどの例外的事象が発生しなければ、FH状態には決して戻らない。コンプレッサがFO状態であるときには、それは前述したようにSO状態へ進もうとする。
【0059】
2000年3月28日に出願された、“パケットを送信し受信する方法及びシステム”という題された出願第09/536,639号において適当なパケットの種類が開示されている。
【0060】
固定長符号化(Fixed Length Encoding(FLE))及び片側可変長符号化(One Sided Variable Length Encoding(OVLE)と称されるVLEの2つの変化形を下で説明する。
【0061】
固定長符号化(FLE)
範囲r = (v max − v min)が上限を決して越えないことが確かに知られているならば、固定長符号化を使用することができる。この範囲を包含するために必要な最少数のビットである同じ数のビットで全ての値が符号化される。長さは、この場合には既知の定数であると仮定されているので、送信されなくても良い。
【0062】
片側可変長符号化(OVLE)
前述したVLEは、基準値v refにマッピングする関数とサーチ間隔[v ref−2k-1, v ref+2k-1]を戻すビット数kとに基づいている。これは、1つの値から次の値への任意の変化(正、負)に配慮するので、非常に普遍的で融通がきく。しかし、この間隔は、単調なフィールドに使用されるときには最も効率が良いというわけではない。実際には、デコンプレッサは部分集合[v ref, v ref+2k-1]の中の値だけを選び取る。
【0063】
RTPヘッダ圧縮の場合には、フィールドは普通は増大する順にコンプレッサに到達する。しかし、コンプレッサからの誤配列ストリームがあり得、またタイム・スタンプの場合には符号器は符号化されているフレームをそれらがサンプリングされた順に配達しないかも知れないので、例外がある。効率を高めるために、v refを中心としない、例えば間隔[v ref−2k-2, v ref+3*2k-2]などのサーチ間隔を戻す関数は使用に値する。
【0064】
VLEが適応ヘッダ圧縮アプリケーションの一部分として使用されるときには、与えられたkについて最も効率の良い間隔[v ref, v_ref+2k]を使用することが可能である。これは、片側可変長符号化(OVLE)と称される。コンプレッサ到来値が増大し続けている限りは、FOパケットのためにはVLEが使用され、SOパケットのためにはOVLEが使用される。コンプレッサの前でパケットの誤配列が生じた場合には、コンプレッサは常に該パケットをFOパケットとして圧縮する。或いは、コンプレッサは、誤配列が発生してもSO状態にとどまるためにパケットを配列し直し且つ/又はパケットを落とすことができる。
【0065】
圧縮されているデータの可変長符号化(VLE)及び片側VLE(OVLE)のための最適の受取通知アルゴリズム
総体的圧縮効率を高めるために、デコンプレッサによりコンプレッサへ送られる受取通知のサイズを最小限に保つことが望ましい。ここで論じるアルゴリズムでは、デコンプレッサは、それが圧縮されているメッセージで受け取ったのと同数のビット(或いは、後述するように多くてももう2つのビット)を受取通知で送るだけでよい。
【0066】
VLE及びOVLEに関して記述したように、コンプレッサは値VSWの滑りウィンドウを維持すると共に、最初の圧縮されていない値の各々をデコンプレッサへの伝送後にVSWに蓄積する。
VSW: v1, v2, v3, ... vi, ... vn
(注:v1は最も古い値であり、vnは最新のである)
【0067】
事例1:単一符号化方法
唯一の符号化方法が使用され(VLE又はOVLE)、コンプレッサ及びデコンプレッサの両方がどれが使用されているかを知っていると仮定する。デコンプレッサが圧縮されている値を首尾良く受信してそれについて受取通知を出すと決定したとき、それは単に受信した圧縮されている値を受取通知にコピーしてそれをコンプレッサに送り戻す。
【0068】
コンプレッサは、受取通知メッセージを受信したとき、次の3つのステップで該受取通知を処理する:
1) VSWのv1(最も古い値)を基準値として使用し、デコンプレッサと同じ規則に従って受取通知内の圧縮されている値を解凍する。解凍された値はv ackedとして特定される。
2) v ackedの最初の(最も古い)発生について、VSWを頭(最旧)から尾(最新)まで探索する。
3) v ackedに先立つ(より古い)全ての値を削除する。
【0069】
上記のアルゴリズムはVSWの次の特性を遵守することにより働くということを示すことができる:
− もしHSW内のv1がコンプレッサによりkビットを使用して送られたならば、それは、基準値と同じkビットを用い且ついずれかのvi(j≦i)を用いて正しく解凍されることができる。
【0070】
具体的には、VSW内のどの値を解凍するためにもv1を基準値として使用することができる。受取通知は常にVSW内の値のうちの1つについての受取を通知するものであるという事実と相まって、ステップ1)で得られたv ackedは実際に受取通知メッセージをトリガーした正しい最初の値であると結論される。
【0071】
事例2:複数の符号化方法
この場合、デコンプレッサは符号化方法をVLE及びOVLEの間で動的に切り換える。この事例を取り扱うためには前述したアルゴリズムを僅かに変更するだけでよい。基本的には、各受取通知メッセージにおいて、デコンプレッサは、受信された値を圧縮するためにどの符号化方法が使用されたか示すためにフラグを付け加えなければならない。従って、コンプレッサは、受取通知メッセージを受け取ったとき、該受取通知中の符号化フラグに基づいて正しい解凍方法を選ぶことができる。VSWの特性が適用され得る限りは、前のセクションのと同じ理由に基づいて、修正されたアルゴリズムは正しい。
【0072】
VLE及び/又はOVLEがヘッダ圧縮に適用されるときにも、コンプレッサからデコンプレッサへ送られる圧縮されているヘッダで符号化フラグを明示的に伝える必要はないが、その理由は、デコンプレッサはヘッダの種類と他の構成情報とに基づいてその情報を暗示的に得ることができることにある。しかし、逆方向には、該フラグは受取通知メッセージで明示的に伝えられなければならない。最悪の場合には、3つの可能なもの:VLE、プラス側OVLE(plus−sided OVLE)、マイナス側OVLE(minus−side OVLE)を区別するために2ビットが必要である。OVLEの側情報が予め定められるならば、符号化フラグを1ビットに縮小することができる。
【0073】
VSWにおける対になった値
上で論じられていない特別の場合が1つある。コンプレッサの滑りウィンドウで同じ(最初の圧縮されていない)値が2つ以上発生することがある。このことは次の2つの理由から考察されなければならない:1)理論上、該アルゴリズムは包括的で如何なる値のシーケンスにも働くべきである;2)実際には、或るビデオ符号のためのRTPタイム・スタンプはこの挙動を有する。
【0074】
計算された値v ackedが依然として正しくても、VSWでのv ackedのどの発生が(複数の発生が発見されたならば)実際にACKをトリガーしたのかコンプレッサが決定できないということが問題である。
【0075】
しかし、コンプレッサは常にVSWにおけるv ackedの最初の(最も古い)発生を選ぶので、アルゴリズムは働くことに留意するべきである。もしそれが受取通知をトリガーした正しい事実でなければ、唯一の副作用は、削除されるべきであるよりも少ない値がVSWから削除されるということである。その結果として、その後に到達する新しい値は必要であるよりも多いビットを用いて符号化されていることがある。
【0076】
値の重複がまれにしか発生しなければ、前述したアルゴリズムを修正する必要はないが、その理由は、VSWデータで1回だけ発生する値についての受取を通知するもう一つの(曖昧でない)受取通知が到着したならば直ちにコンプレッサはその最適より劣る状態から抜け出させられることにある。
【0077】
重複する値が頻繁に発生すると予期されるならば、受取通知の曖昧さを除去するために余分の情報を付け加えることができる。1例は、世代番号(GN)を各々の圧縮されている値に割り当て、そのGNを受取通知に入れるようにデコンプレッサに要求することである。
【0078】
本発明をその好ましい実施態様を参照して説明したが、その範囲から逸脱せずにそれに多数の修正を加えることができることが理解されるべきである。その様な修正は全て添付されている請求項の範囲に属する。

【特許請求の範囲】
【請求項1】
コンプレッサからデコンプレッサへ伝送するために現在の値を最少数のビットに圧縮する方法であって、この方法は:
少なくとも1つの前の値の系列を該コンプレッサにおいて維持することを含み、各々の前の値は異なるk個の最下位ビットを有すると共に該デコンプレッサへ伝送されており;
前の値の該系列中のいずれかの値を基準値として用いて該デコンプレッサにおいて該現在の値を首尾良く解凍することを可能にする最少数のビットを表すkの値を決定することを含み;
現在の該値を現在の該値のk個の最下位ビットと共に該コンプレッサから該デコンプレッサへ圧縮されている形で送ることを含むことを特徴とする方法。
【請求項2】
kの値は、現在の値と少なくとも1つの前の値とを比較してその現在の値と少なくとも1つの前の値との最大の差rを決定することにより決定され、このkはlog2(r)+1より大きい最小の整数であるように選択される整数であることを特徴とする請求項1に記載の方法。
【請求項3】
該デコンプレッサは、該デコンプレッサが値を解凍したことを示す少なくとも1つの受取通知を該コンプレッサに送り、該コンプレッサは少なくとも1つのより古い前の値を捨てるために少なくとも1つの前の値の該系列を更新することを特徴とする請求項1に記載の方法。
【請求項4】
該デコンプレッサは、該デコンプレッサが値を解凍したことを示す少なくとも1つの受取通知を該コンプレッサに送り、該コンプレッサは少なくとも1つのより古い前の値を捨てるために少なくとも1つの前の値の該系列を更新することを特徴とする請求項2に記載の方法。
【請求項5】
該基準値に最も近い受信された現在の値のk個の最下位ビットと同一のk個の最下位ビットを有する値として解凍されるべき少なくとも1つの前の値の該系列の最後の値の基準値で該デコンプレッサにおいて現在の該値を解凍することを更に含むことを特徴とする請求項1に記載の方法。
【請求項6】
該基準値に最も近い受信された現在の値のk個の最下位ビットと同一のk個の最下位ビットを有する値として解凍されるべき少なくとも1つの前の値の該系列の最後の値の基準値で該デコンプレッサにおいて現在の該値を解凍することを更に含むことを特徴とする請求項2に記載の方法。
【請求項7】
該基準値に最も近い受信された現在の値のk個の最下位ビットと同一のk個の最下位ビットを有する値として解凍されるべき少なくとも1つの前の値の該系列の最後の値の基準値で該デコンプレッサにおいて現在の該値を解凍することを更に含むことを特徴とする請求項3に記載の方法。
【請求項8】
該基準値に最も近い受信された現在の値のk個の最下位ビットと同一のk個の最下位ビットを有する値として解凍されるべき少なくとも1つの前の値の該系列の最後の値の基準値で該デコンプレッサにおいて現在の該値を解凍することを更に含むことを特徴とする請求項4に記載の方法。
【請求項9】
該基準値より下から該基準値の上にまで及ぶ値を含むサーチ間隔を該デコンプレッサにおいて使用し;
該サーチ間隔内の値から同一のk個の最下位ビットを有する値を選択することを更に含むことを特徴とする請求項5に記載の方法。
【請求項10】
該基準値より下から該基準値の上にまで及ぶ値を含むサーチ間隔を該デコンプレッサにおいて使用し;
該サーチ間隔内の値から同一のk個の最下位ビットを有する値を選択することを更に含むことを特徴とする請求項6に記載の方法。
【請求項11】
該基準値より下から該基準値の上にまで及ぶ値を含むサーチ間隔を該デコンプレッサにおいて使用し;
該サーチ間隔内の値から同一のk個の最下位ビットを有する値を選択することを更に含むことを特徴とする請求項7に記載の方法。
【請求項12】
該基準値より下から該基準値の上にまで及ぶ値を含むサーチ間隔を該デコンプレッサにおいて使用し;
該サーチ間隔内の値から同一のk個の最下位ビットを有する値を選択することを更に含むことを特徴とする請求項8に記載の方法。
【請求項13】
該値は、基準値v refとビット数kとを少なくとも1つの前の値の該系列と現在の該値とにマッピングすることから作られ;
少なくとも1つの前の値の該系列は、該デコンプレッサにより解凍されたと受取通知されている最も古い送信された値を最旧の値として有するように更新されることを特徴とする請求項1に記載の方法。
【請求項14】
該値は、基準値v refとビット数kとを少なくとも1つの前の値の該系列と現在の該値とにマッピングすることから作られ;
少なくとも1つの前の値の該系列は、該デコンプレッサにより解凍されたと受取通知されている最も古い送信された値を最旧の値として有するように更新されることを特徴とする請求項2に記載の方法。
【請求項15】
該値は、基準値v refとビット数kとを少なくとも1つの前の値の該系列と現在の該値とにマッピングすることから作られ;
少なくとも1つの前の値の該系列は、該デコンプレッサにより解凍されたと受取通知されている最も古い送信された値を最旧の値として有するように更新されることを特徴とする請求項3に記載の方法。
【請求項16】
該値は、基準値v refとビット数kとを少なくとも1つの前の値の該系列と現在の該値とにマッピングすることから作られ;
少なくとも1つの前の値の該系列は、該デコンプレッサにより解凍されたと受取通知されている最も古い送信された値を最旧の値として有するように更新されることを特徴とする請求項4に記載の方法。
【請求項17】
該値は、基準値v refとビット数kとを少なくとも1つの前の値の該系列と現在の該値とにマッピングすることから作られ;
少なくとも1つの前の値の該系列は、該デコンプレッサにより解凍されたと受取通知されている最も古い送信された値を最旧の値として有するように更新されることを特徴とする請求項5に記載の方法。
【請求項18】
該値は、基準値v refとビット数kとを少なくとも1つの前の値の該系列と現在の該値とにマッピングすることから作られ;
少なくとも1つの前の値の該系列は、該デコンプレッサにより解凍されたと受取通知されている最も古い送信された値を最旧の値として有するように更新されることを特徴とする請求項6に記載の方法。
【請求項19】
該値は、基準値v refとビット数kとを少なくとも1つの前の値の該系列と現在の該値とにマッピングすることから作られ;
少なくとも1つの前の値の該系列は、該デコンプレッサにより解凍されたと受取通知されている最も古い送信された値を最旧の値として有するように更新されることを特徴とする請求項7に記載の方法。
【請求項20】
該値は、基準値v refとビット数kとを少なくとも1つの前の値の該系列と現在の該値とにマッピングすることから作られ;
少なくとも1つの前の値の該系列は、該デコンプレッサにより解凍されたと受取通知されている最も古い送信された値を最旧の値として有するように更新されることを特徴とする請求項8に記載の方法。
【請求項21】
該値は、基準値v refとビット数kとを少なくとも1つの前の値の該系列と現在の該値とにマッピングすることから作られ;
少なくとも1つの前の値の該系列は、該デコンプレッサにより解凍されたと受取通知されている最も古い送信された値を最旧の値として有するように更新されることを特徴とする請求項9に記載の方法。
【請求項22】
該値は、基準値v refとビット数kとを少なくとも1つの前の値の該系列と現在の該値とにマッピングすることから作られ;
少なくとも1つの前の値の該系列は、該デコンプレッサにより解凍されたと受取通知されている最も古い送信された値を最旧の値として有するように更新されることを特徴とする請求項10に記載の方法。
【請求項23】
該値は、基準値v refとビット数kとを少なくとも1つの前の値の該系列と現在の該値とにマッピングすることから作られ;
少なくとも1つの前の値の該系列は、該デコンプレッサにより解凍されたと受取通知されている最も古い送信された値を最旧の値として有するように更新されることを特徴とする請求項11に記載の方法。
【請求項24】
該値は、基準値v refとビット数kとを少なくとも1つの前の値の該系列と現在の該値とにマッピングすることから作られ;
少なくとも1つの前の値の該系列は、該デコンプレッサにより解凍されたと受取通知されている最も古い送信された値を最旧の値として有するように更新されることを特徴とする請求項12に記載の方法。
【請求項25】
該値は、基準値とビット数kとの関数であることを特徴とする請求項1に記載の方法。
【請求項26】
該関数は、[v ref−2k-1, v ref+2k-1]であることを特徴とする請求項25に記載の方法。
【請求項27】
該関数は、[v ref, v ref+2k]であることを特徴とする請求項25に記載の方法。
【請求項28】
少なくとも1つの該受取通知は、受信された圧縮されていない値であることを特徴とする請求項3に記載の方法。
【請求項29】
少なくとも1つの該受取通知は、受信された圧縮されている値であることを特徴とする請求項3に記載の方法。
【請求項30】
少なくとも1つの該受取通知は、圧縮されている該値の一部分を符号化するのに使用される情報を含んでいる受信された圧縮されている値であることを特徴とする請求項29に記載の方法。
【請求項31】
少なくとも1つの該受取通知は、前の値の該系列の中の最も古い値を包含することを特徴とする請求項28に記載の方法。
【請求項32】
少なくとも1つの該受取通知は、前の値の該系列の中の最も古い値を包含することを特徴とする請求項29に記載の方法。
【請求項33】
前の値の該系列は、該コンプレッサと該デコンプレッサとの間での値の系列の伝送中に失われることのある値の見積もられた最大数に基づいてより古い前の値を捨てるように更新されることを特徴とする請求項1に記載の方法。
【請求項34】
圧縮されている現在の値は、その現在の値と共に送られる数kを符号化することを特徴とする請求項1に記載の方法。
【請求項35】
該符号化はハフマン符号化であることを特徴とする請求項34に記載の方法。
【請求項36】
該値はRTPヘッダを含むことを特徴とする請求項1に記載の方法。
【請求項37】
少なくとも1つの該受取通知は、RTPヘッダのTS及びIP−IDの受取通知を表すRTP SNヘッダの受取通知であることを特徴とする請求項33に記載の方法。
【請求項38】
現在の値を最少数のビットに圧縮するためのシステムであって:
異なるk個の最下位ビットを各々有する少なくとも1つの前の値の系列を維持するコンプレッサと;
最少数のk個の最下位ビットに圧縮されている現在の該値を該コンプレッサから受信するデコンプレッサとを含んでおり;
該コンプレッサは、少なくとも1つの前の値の該系列中のいずれかの値を基準として使用して該デコンプレッサにおいて現在の該値を首尾良く解凍することを可能にする最小数のビットを表すkの値を決定することを特徴とするシステム。
【請求項39】
kの値は、現在の該値と少なくとも1つの前の該値との最大差を決定するために現在の該値を少なくとも1つの前の該値と比較することにより決定され、kはlog2(r)+1より大きい最小の整数であるように選択される整数であることを特徴とする請求項38に記載のシステム。
【請求項40】
該デコンプレッサは、該デコンプレッサが値を解凍したことを示す少なくとも1つの受取通知を該コンプレッサに送り、該コンプレッサはより古い前の値を捨てるために少なくとも1つの前の値の該系列を更新することを特徴とする請求項38に記載のシステム。
【請求項41】
該デコンプレッサは、該デコンプレッサが値を解凍したことを示す少なくとも1つの受取通知を該コンプレッサに送り、該コンプレッサは、より古い前の値を捨てるために少なくとも1つの前の値の該系列を更新することを特徴とする請求項39に記載のシステム。
【請求項42】
該デコンプレッサは、該基準値に最も近い受信された現在の値のk個の最下位ビットと同一のk個の最下位ビットを有する値として解凍されるべき少なくとも1つの前の値の該系列の最後の値の基準値で該デコンプレッサにおいて現在の該値を解凍することを特徴とする請求項38に記載のシステム。
【請求項43】
該デコンプレッサは、該基準値に最も近い受信された現在の値のk個の最下位ビットと同一のk個の最下位ビットを有する値として解凍されるべき少なくとも1つの前の値の該系列の最後の値の基準値で該デコンプレッサにおいて現在の該値を解凍することを特徴とする請求項39に記載のシステム。
【請求項44】
該デコンプレッサは、該基準値に最も近い受信された現在の値のk個の最下位ビットと同一のk個の最下位ビットを有する値として解凍されるべき少なくとも1つの前の値の該系列の最後の値の基準値で該デコンプレッサにおいて現在の該値を解凍することを特徴とする請求項40に記載のシステム。
【請求項45】
該デコンプレッサは、該基準値に最も近い受信された現在の値のk個の最下位ビットと同一のk個の最下位ビットを有する値として解凍されるべき少なくとも1つの前の値の該系列の最後の値の基準値で該デコンプレッサにおいて現在の該値を解凍することを特徴とする請求項41に記載のシステム。
【請求項46】
該デコンプレッサが該基準値より下から該基準値の上にまで及ぶ値を含むサーチ間隔を使用し;該サーチ間隔内の値から同一のk個の最下位ビットを有する値を選択することを更に含むことを特徴とする請求項42に記載のシステム。
【請求項47】
該デコンプレッサが該基準値より下から該基準値の上にまで及ぶ値を含むサーチ間隔を使用し;該サーチ間隔内の値から同一のk個の最下位ビットを有する値を選択することを更に含むことを特徴とする請求項44に記載のシステム。
【請求項48】
該デコンプレッサが該基準値より下から該基準値の上にまで及ぶ値を含むサーチ間隔を使用し;該サーチ間隔内の値から同一のk個の最下位ビットを有する値を選択することを更に含むことを特徴とする請求項44に記載のシステム。
【請求項49】
該デコンプレッサが該基準値より下から該基準値の上にまで及ぶ値を含むサーチ間隔を使用し;該サーチ間隔内の値から同一のk個の最下位ビットを有する値を選択することを更に含むことを特徴とする請求項45に記載のシステム。
【請求項50】
該コンプレッサは、基準値v refとビット数kとを少なくとも1つの前の値の該系列と現在の該値とにマッピングすることから該値を作り;少なくとも1つの前の値の該系列は、該デコンプレッサにより解凍されたと受取通知されている最も古い送信された値を最旧の値として有するように更新されることを特徴とする請求項38に記載のシステム。
【請求項51】
該関数は、[v ref−2k-1, v ref+2k-1]であることを特徴とする請求項38に記載のシステム。
【請求項52】
該関数は、[v ref, v ref+2k]であることを特徴とする請求項38に記載のシステム。
【請求項53】
該受取通知は受信された圧縮されていない値であることを特徴とする請求項40に記載のシステム。
【請求項54】
少なくとも1つの該受取通知は受信された圧縮されている値であることを特徴とする請求項40に記載のシステム。
【請求項55】
少なくとも1つの該受取通知は、圧縮されている値の一部分を符号化するのに使用される情報を含む受信された圧縮されている値であることを特徴とする請求項54に記載のシステム。
【請求項56】
少なくとも1つの前の値の該系列は、該コンプレッサと該デコンプレッサとの間での値の系列の伝送中に失われることのある値の見積もられた最大数に基づいて少なくとも1つのより古い前の値を捨てるように該コンプレッサにより更新されることを特徴とする請求項38に記載のシステム。
【請求項57】
圧縮されている現在の該値は、その現在の値と共に送信される数kを符号化することを特徴とする請求項38に記載のシステム。
【請求項58】
該値はRTPヘッダを含むことを特徴とする請求項38に記載のシステム。
【請求項59】
少なくとも1つの該受取通知は、RTPヘッダのTS及びIP−IDの受取通知を表すRTP SNヘッダの受取通知であることを特徴とする請求項40に記載のシステム。
【請求項60】
コンプレッサからデコンプレッサへ送るために現在の値を減じられた数のビットに圧縮する方法であって、この方法は:
少なくとも1つの前の値の系列を該コンプレッサにおいて維持することを含み、各々の前の値は異なるk個の最下位ビットを有すると共に該デコンプレッサへ送信されており;
前の値の該系列中のいずれかの値を基準値として使用して該デコンプレッサにおいて現在の該値を首尾良く解凍することを可能にする減じられた数のビットを表すkの値を決定することを含んでおり;
現在の該値を現在の該値のk個の最下位ビットと共に該コンプレッサから該デコンプレッサへ圧縮されている形で送ることを含むことを特徴とする方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7A】
image rotate

【図7B】
image rotate

【図8】
image rotate


【公開番号】特開2011−229161(P2011−229161A)
【公開日】平成23年11月10日(2011.11.10)
【国際特許分類】
【外国語出願】
【出願番号】特願2011−122702(P2011−122702)
【出願日】平成23年5月13日(2011.5.13)
【分割の表示】特願2001−537167(P2001−537167)の分割
【原出願日】平成12年11月2日(2000.11.2)
【出願人】(398012616)ノキア コーポレイション (1,359)
【Fターム(参考)】