(57)【要約】【課題】インバンド誤りパターンを使用する誤り回復のための装置と方法。【解決手段】マルチメディアデータを復号するための方法および装置が記述される。１つの方法は、符号化されたビットストリームを受信すること、ビットストリーム内の１つまたはそれより多い誤ったビットの位置を識別すること、１つまたはそれより多い誤ったビットを示すマーカを発生すること、および修正されたビットストリームを生成するためにビットストリーム内にマーカを挿入することを含む。この方法は１つまたはそれより多い誤ったビットを示すためのマーカを使用している修正されたビットストリームを復号することをさらに備えることができる。この方法はマーカに遭遇する時に誤り処理手順を開始することをさらに備えることができる。【選択図】      図５
2008546230.tif 000002
【特許請求の範囲】
【請求項１】
マルチメディアデータを処理する方法であって、
符号化されたビットストリームを受信し、
該符号化されたビットストリーム内の誤ったデータを識別し、
該誤ったデータに関連するマーカを発生し、そして
修正されたビットストリームを生成するために、該符号化されたビットストリーム内に該マーカを挿入する
ことを含む方法。
【請求項２】
該修正されたビットストリームを復号するために該マーカを使用することをさらに含む、請求項１記載の方法。
【請求項３】
復号する間に該マーカに遭遇した場合、誤り処理手順を開始することをさらに含む、請求項２記載の方法。
【請求項４】
該誤り処理手順はシンタックスチェッキング、該誤ったデータを消滅させること、または誤り隠しを備える、請求項３記載の方法。
【請求項５】
該マーカは、該誤ったデータの前の該符号化されたビットストリーム内に挿入される、請求項１記載の方法。
【請求項６】
該パケット損失率は該マーカに基づいて決定される、請求項１記載の方法。
【請求項７】
該マーカは該修正されたビットストリーム内においてその存在を信号で伝えるためスタート符号プレフィックスを備える、請求項１記載の方法。
【請求項８】
該マーカは何バイトが該スタート符号プレフィックス後の該マーカ内に使用されるかに関連する数値を備える、請求項７記載の方法。
【請求項９】
該マーカは該誤ったデータの長さを示す少なくとも１バイトの情報を含む、請求項１記載の方法。
【請求項１０】
該マーカは該ビットストリーム自身の部分を形成するように該ビットストリーム内に挿入される、請求項１記載の方法。
【請求項１１】
該マーカは該受信された符号化ビットストリームが従う圧縮仕様に従う、請求項１記載の方法。
【請求項１２】
該マーカは該マーカが該ビットストリームの部分になるように該ビットストリームに挿入され、そして該挿入されたマーカを有する該ビットストリームはデコーダの上位層によって復号される、請求項２記載の方法。
【請求項１３】
該上位層はアプリケーション層を備える、請求項１２記載の方法。
【請求項１４】
マルチメディアデータを処理するための装置であって、
マルチメディアデータの符号化されたビットストリームを受信するように構成された通信コンポーネントと、そして
該ビットストリーム内の１つまたはそれより多い誤ったビットの該位置を識別し、該１つまたはそれより多い誤ったビットを示すマーカを発生し、そして、修正されたビットストリームを生成するために該ビットストリーム内に該マーカを挿入するように構成されたプロセッサと
を含む装置。
【請求項１５】
該プロセッサは、復号する間に該マーカに遭遇する時、誤り処理を開始するようにさらに構成される、請求項１４記載の装置。
【請求項１６】
該修正されたビットストリームを復号するように構成されたデコーダをさらに備え、該デコーダは該マーカが復号する間に遭遇される時に誤り処理を活性化するために該マーカを使用するように構成される、請求項１４記載の装置。
【請求項１７】
該プロセッサは該修正されたビットストリームを復号するための復号手順を有するように構成され、該復号処理は復号する間に該マーカに遭遇される時に誤り処理を活性化するために該マーカを使用する、請求項１４記載の装置。
【請求項１８】
該誤り処理は、シンタックスチェッキング、該誤ったデータを消滅させること、または誤り隠しを備える、請求項１７記載の装置。
【請求項１９】
該マーカは、該誤ったビットの前の該符号化されたビットストリームのトランスポートヘッダパケット内に挿入される、請求項１４記載の装置。
【請求項２０】
該マーカは誤りパターンを備える、請求項１４記載の装置。
【請求項２１】
パケット誤り率が該誤りパターンに基づいて決定される、請求項１９記載の装置。
【請求項２２】
該誤りパターンは該修正されたビットストリーム内においてその存在を信号で伝えるためにスタート符号プレフィックスを備える、請求項２０記載の装置。
【請求項２３】
該ビットストリームはトランスポートヘッダを備える該パケットの形式でデコーダにパスされ、そして該誤りパターンは該トランスポートヘッダ内に挿入された“インバンド”である、請求項２０記載の装置。
【請求項２４】
該誤りパターンは該誤りパターン長を示す情報を備える、請求項２０記載の装置。
【請求項２５】
該誤りパターンは該誤ったビットの該長さを示す情報を備える、請求項２０記載の装置。
【請求項２６】
該プロセッサは該マーカが該ビットストリーム自身の部分として読まれるように該ビットストリーム内に該マーカを挿入するように構成される、請求項１４記載の装置。
【請求項２７】
該ビットストリームを復号するように構成されたデコーダをさらに含み、該プロセッサは該マーカが該ビットストリームの部分となるように該ビットストリーム内に該マーカを挿入するように構成され、そして該デコーダは該ビットストリームを復号するための上位層を備える、請求項１４記載の装置。
【請求項２８】
該上位層はアプリケーション層を備える、請求項２７記載の装置。
【請求項２９】
マルチメディアデータを処理するための装置であって
符号化されたビットストリームを受信するための手段、
該ビットストリーム内の１つまたはそれより多い誤ったビットの該位置を識別するための手段、
該１つまたはそれより多い誤ったビットを示すマーカを発生するための手段、そして
修正されたビットストリームを生成するために該ビットストリーム内に該マーカを挿入するための手段
を含む装置。
【請求項３０】
該修正されたビットストリームを復号するための手段をさらに含み、該マーカは該１つまたはそれより多い誤ったビットを示すために復号する間使用される、請求項２９記載の装置。
【請求項３１】
復号する間に該マーカに遭遇する時、誤り処理手順を開始するための手段をさらに含む、請求項３０記載の装置。
【請求項３２】
該受信手段は受信器を備える、請求項２９記載の装置。
【請求項３３】
該識別手段は該ビットストリーム内の１つまたはそれより多い誤ったビットの該位置を識別するように構成されたプロセッサを備える、請求項２９記載の装置。
【請求項３４】
該発生手段は該１つまたはそれより多い誤ったビットを示すマーカを発生するように構成されたプロセッサを備える、請求項２９記載の装置。
【請求項３５】
該挿入手段は修正されたビットストリームを生成するために該ビットストリーム内に該マーカを挿入するように構成されたプロセッサを備える、請求項２９記載の装置。
【請求項３６】
該挿入手段は該マーカが該ビットストリーム自身の部分として読まれるように該ビットストリーム内に該マーカを挿入するように構成される、請求項２９記載の装置。
【請求項３７】
該挿入手段は該マーカが該ビットストリームの部分となるように該ビットストリーム内に該マーカを挿入するように構成され、そして該復号手段は該挿入されたマーカを使用して該修正されたビットストリームを復号するための上位層を備える、請求項３０記載の装置。
【請求項３８】
該上位層はアプリケーション層を備える、請求項３７記載の装置。
【請求項３９】
マルチメディアデータを処理するための方法を具体化するコンピュータ可読媒体であって、該方法は
符号化されたビットストリームを受信し、
該ビットストリーム内の１つまたはそれより多い誤ったビットの該位置を識別し
該１つまたはそれより多い誤ったビットを示すマーカを発生し、そして
修正されたビットストリームを生成するために該ビットストリーム内に該マーカを挿入することを含む
コンピュータ可読媒体。
【請求項４０】
該修正されたビットストリームを復号することをさらに含み、該マーカは該１つまたはそれより多い誤ったビットを示すために復号する間使用される、請求項３９記載のコンピュータ可読媒体。
【請求項４１】
復号する間に該マーカに遭遇する時に誤り処理手順を開始することをさらに含む、請求項３９記載のコンピュータ可読媒体。
【請求項４２】
マルチメディアデータを処理するためのプロセッサであって、符号化されたビットストリームを受信し、該ビットストリーム内の１つまたはそれより多い誤ったビットの該位置を識別し、該１つまたはそれより多い誤ったビットを示すマーカを発生し、そして修正されたビットストリームを生成するために該ビットストリーム内に該マーカを挿入するように構成される
プロセッサ。
【請求項４３】
該プロセッサは該修正されたビットストリームを復号するようにさらに構成され、該プロセッサは該１つまたはそれより多い誤ったビットを示すために復号の間該マーカを使用するように構成される、請求項４２記載のプロセッサ。
【請求項４４】
該プロセッサは該マーカが復号の間に遭遇される時に誤り処理を開始するようにさらに構成される、請求項４２記載のプロセッサ。
【請求項４５】
該プロセッサは該マーカが該ビットストリーム自身の部分として読まれるように該ビットストリーム内に該マーカを挿入するようにさらに構成される、請求項４２記載のプロセッサ。
【請求項４６】
該プロセッサは、該マーカが該ビットストリームの部分となるように該ビットストリーム内に該マーカを挿入するように、およびアプリケーション層を使用している該ビットストリームを復号するようにさらに構成される、請求項４３記載のプロセッサ。
【請求項４７】
マルチメディアデータを処理するための装置であって、符号化されたビットストリーム内の１つまたはそれより多い誤ったビットの位置を識別し、該１つまたはそれより多い誤ったビットを示すマーカを発生し、そして修正されたビットストリームを生成するために該ビットストリーム内に該マーカを挿入するように構成されたデコーダを含む
装置。
【請求項４８】
マルチメディアデータの符号化されたビットストリームを受信しそして該デコーダに該符号化されたビットストリームを供給するように構成された通信コンポーネントをさらに含む、請求項４７記載の装置。
【請求項４９】
復号する間に該デコーダが該マーカに遭遇する時に誤り処理を開始するようにさらに構成される、請求項４７記載の装置。
【請求項５０】
該マーカは、該誤ったビットの前の該符号化されたビットストリームのトランスポートヘッダパケット内に挿入される、請求項４７記載の装置。
【請求項５１】
該マーカは誤りパターンを備える、請求項４７記載の装置。
【請求項５２】
該誤りパターンは該修正されたビットストリーム内においてその存在を信号で伝えるためにスタート符号プレフィックスを備える、請求項５１記載の装置。
【請求項５３】
該符号化されたビットストリームはトランスポートヘッダをそれぞれ含むパケットを備え、そして該マーカは該トランスポートヘッダ内に挿入された“インバンド”である、請求項４７記載の装置。
【請求項５４】
該マーカは該マーカ長を示す情報を備える、請求項４７記載の装置。
【請求項５５】
該マーカは該誤ったビットの該長さを示す情報を備える、請求項４７記載の装置。
【請求項５６】
該プロセッサは該マーカが該ビットストリーム自身の部分として読まれるように該ビットストリーム内に該マーカを挿入するように構成される、請求項４７記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
［３５Ｕ．Ｓ．Ｃ．１１９による優先権の主張］
本特許出願は２００５年５月１３日提出、仮出願番号第６０／６８０，６３３号、タイトル“アプリケーション層相互作用および誤りシグナリング（Ａｐｐｌｉｃａｔｉｏｎ  Ｌａｙｅｒ  Ｉｎｔｅｒａｃｔｉｏｎｓ  Ａｎｄ  Ｅｒｒｏｒ  Ｓｉｇｎａｌｉｎｇ）”への優先権を主張し、そして２００６年４月４日提出、仮出願番号第６０／７８９，２７３号、タイトル“インバンド誤りパターンを使用する誤り回復（Ｅｒｒｏｒ  Ｒｅｃｏｖｅｒｙ  Ｕｓｉｎｇ  Ｉｎ  Ｂａｎｄ  Ｅｒｒｏｒ  Ｐａｔｔｅｒｎｓ）”への優先権を主張し、そしてこれに関して譲受人に譲渡され、引用されてこの中に明確に組み込まれる。
【０００２】
［技術分野］
本発明は手持ち式装置上のストリーミングメディアを実時間符号化するための方法および装置に関する。
【背景技術】
【０００３】
インターネットおよび無線通信の爆発的な成長および大成功により、その上インターネットおよび移動体／無線チャネルを介したマルチメディアサービス、ストリーミングメディアに対するますます増加する需要は莫大な注意を引き寄せた。異種インターネットプロトコル（ＩＰ）ネットワークでは、ビデオはサーバによって供給され、そして１つまたはそれより多いクライアントによって流されることができる。有線接続はダイヤルアップ、統合サービスディジタルネットワーク（ＩＳＤＮ）、ケーブル、ディジタル加入者線プロトコル（集合的にｘＤＳＬと呼ばれる）、ファィバ、ローカルエリアネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）およびその他を含む。伝送モードはユニキャストまたはマルチキャストのいずれかであることができる。
【０００４】
同類の異種ＩＰネットワークは移動体／無線通信である。移動体／無線チャネルを通したマルチメディア内容の輸送はこれらのチャネルがしばしばマルチパスフェージング、シャドウイング、記号間干渉、およびノイズ妨害により厳しく損なわれるので、非常に魅力的である。移動性および競い合うトラフィックのような何か他の理由もまた帯域幅変動と損失とを引き起こす。チャネルノイズおよびサービスされているユーザ数はチャネル環境の時変特性を決定する。
【０００５】
異種ＩＰネットワークおよび移動通信システムの両者におけるより高いデータ速度およびより高いサービス品質の要求は急速に大きくなりつつある。しかしながら、有限の遅延時間、有限の送信パワー、有限の帯域幅およびマルチパスフェージングのようなファクタは実際のシステムによって処理されるデータ速度を制限し続ける。マルチメディア通信、特に誤りがちな環境では、各復号値の中での誤りは空間的におよび時間的に伝播しているアーチファクト(artifact)を復号に導くことができるので、伝送したメディアの誤り回復力は望ましいサービス品質を提供することにおいて重大である。いろいろな符号化測定値は必要なデータ速度を維持する一方で誤りを最小化するために使用された、しかしながらこれらの技術はすべて、誤りとともにデコーダ側に到着するという問題に悩む。
【０００６】
デコーダによって受信された誤ったビットの数を最小化すること、すなわちそれが起こる時にデータ崩壊を効率的に処理することに対して、向けられた数多くの符号化スキームがある。チャネル符号化、例えば、リード・ソロモン符号化は情報源符号化データの強さを改善するために使用される。結合情報源・チャネル符号化方式はさまざまなレベルの重要性を有する情報源符号化データにさまざまなレベルの誤り保護を供給するために、またはデータパケットを区切ることおよび消滅させることにより使用可能なネットワーク帯域幅への符号化ビデオデータのレート適合をイネーブルにするために使用された。これは共通トランスポートプロトコルが誤ったデータを情報源デコーダに伝送しないからである。
【０００７】
他の技術もまたデータ誤りを処理するために使用される。例えば、可逆可変長符号化(reversible  variable  length  coding)（例えば、ＭＰＥＧ−４における）のような情報源符号化技術は１つまたはそれより多い悪いまたは誤ったビットを有するパケットが受信される時にこのパケットを逆順に復号することによって誤り回復のために使用された。与えられたビット速度について復号されたビデオの品質に翻訳する情報源符号化技術とともに符号化効率には妥協がある。ＭＰＥＧ−１，ＭＰＥＧ−２，ＭＰＥＧ−４（集合的にＭＰＥＧ−ｘと呼ばれる）、Ｈ．２６１，Ｈ．２６２，Ｈ．２６３、およびＨ．２６４（集合的にＨ．２６ｘと呼ばれる）のような、ハイブリッド符号化標準はデコーダで誤りを処理する主要な方法としてビットストリーム内の再同期点を使用する。
【０００８】
初期崩壊以上のデータ損失の１つの原因は不正確な符号語の競争に起因する。初期ビット誤り位置の識別は平凡なタスクではなく、典型的にＭＡＣ層または物理層コンポーネント内のビット誤り位置の識別をサポートしている特別の構成無しには不可能である。よって、ビットストリーム崩壊の検出時に、デコーダは復号を停止して、次の再同期点を見つけ出すためにビットストリーム内で、そしてかなり大きい量の潜在的に良いデータを抜かす手順で前方に動かさねばならないであろう。原（例えば、認証された）符号語と同じ長さである、種々の符号語の競争は上述された事象のシーケンスに関してあまり問題はないと思われるかもしれないが、これは実際に事実ではない。この種の誤りがデコーダの正確なビットストリームの判断を失敗に導く多くの方法がある。例えば、最近のコーデックではその値がビットストリームの以下の部分のシンタックスに影響を及ぼすビットストリーム内のオブジェクト（圧縮関連パラメータ）がある。よって、そのようなオブジェクトに関する不正確な値は不正確なビットストリームの判断につながるであろう。
【０００９】
既知の誤り処理技術は、デコーダが最も普通のソリューションであるパケットを消滅させることおよび再同期化を用いて、ビット誤りを処理するための限定された能力を有するので、デコーダ利用を役に立たなくする。デコーダをマルチメディアデータ内の誤ったビットに十分にアドレスさせる一方で有効に動作することを続けさせるビットエラーを処理する、改良された方法が必要である。
【発明の開示】
【００１０】
[概要]
この中に記述された発明の装置および方法の各々はいくつかの局面を有し、それのどの１つもその望ましい特質について単独では責任がない。この発明の範囲を限定すること無しに、それのより目立った特徴は今ここで簡潔に検討されるであろう。この検討を考慮した後に、そして特にタイトル“発明の詳細な説明”のセクションを読んだ後に、人はいかにこの発明の特徴がマルチメディアデータ処理装置および方法に関して改良されたものを提供するかを理解するであろう。
【００１１】
１つの局面では、マルチメディアデータを処理するための方法は符号化されたビットストリームを受信すること、この符号化されたビットストリーム内の誤ったデータを識別すること、この誤ったデータと関連するマーカを発生すること、および修正されたビットストリームを生成するために符号化されたビットストリーム内にマーカを挿入することを含む。この方法は修正されたビットストリームを復号するためにマーカを使用することを含むことができる。この方法はまたもしもマーカが復号の間に遭遇される（encounter）ならば誤り処理を開始することも含む。
【００１２】
もう１つの局面では、マルチメディアデータを処理するための装置はマルチメディアデータの符号化されたビットストリームを受信するように構成された通信コンポーネント、およびビットストリーム内の１つまたはそれより多い誤ったビットの位置を識別する、１つまたはそれより多い誤ったビットを示すマーカを発生する、および修正されたビットストリームを生成するためにビットストリーム内にマーカを挿入するように構成されたプロセッサを含む。この装置はマーカが復号の間に遭遇
する時に誤り処理を開始するようにさらに構成されることができる。装置は修正されたビットストリームを復号するように構成されたデコーダをさらに含むことができ、ここにおいてデコーダはマーカが復号の間に遭遇される時に誤り処理を活性化するためにマーカを使用するようにさらに構成される。
【００１３】
もう１つの局面では、マルチメディアデータを処理するための装置は、符号化されたビットストリームを受信するための手段、ビットストリーム内の１つまたはそれより多い誤ったビットの位置を識別するための手段、１つまたはそれより多い誤ったビットを示すマーカを発生するための手段、および修正されたビットストリームを生成するためにビットストリーム内にマーカを挿入するための手段を含む。
【００１４】
もう１つの局面は、マルチメディアデータを処理するための方法を具体化するためのコンピュータ可読媒体を含み、この方法は符号化されたビットストリームを受信すること、ビットストリーム内の１つまたはそれより多い誤ったデータの位置を識別すること、１つまたはそれより多い誤ったビットを示すマーカを発生すること、および修正されたビットストリームを生成するためにこのビットストリーム内にマーカを挿入することを含む。この方法は修正されたビットストリームを復号することをさらに含むことができ、ここにおいてマーカは１つまたはそれより多い誤ったビットを示すために復号の間使用される。この方法はマーカが復号の間に遭遇する時に誤り処理を開始することをさらに含むことができる。
【００１５】
もう１つの局面はマルチメディアデータを処理するためのプロセッサを含み、このプロセッサは符号化されたビットストリームを受信する、ビットストリーム内の１つまたはそれより多い誤ったビットの位置を識別する、１つまたはそれより多い誤ったビットを示すマーカを発生する、および修正されたビットストリームを生成するためにビットストリーム内にマーカを挿入するように構成されている。プロセッサはまた修正されたビットストリームを復号するようにさらにも構成されることができ、ここにおいてマーカは１つまたはそれより多い誤ったビットを示すために復号の間使用される。プロセッサはもしもマーカが復号の間に遭遇されるならば誤り処理を開始するようにさらに構成されることができる。
【００１６】
［詳細な記載］
以下の記述では、特定の詳細は実施形態の徹底的な理解を提供するために与えられる。しかしながら、実施形態はこれらの特定の詳細無しに実施されてもよいことは当分野の通常の技術者によって理解されるであろう。例えば、回路は不必要な詳細で実施形態を不明瞭にしないためにブロック図で示されてもよい。他の事例では、周知の回路、構造および技術は実施形態を不明瞭にしないために詳細に示されてもよい。
【００１７】
また、実施形態がフローチャート、フロー図、構造図、またはブロック図として描写される手順として記述され得ることは注目される。フローチャートは連続的な手順として動作を記述できるが、多くの動作は並列にまたは同時に実行されることができる。さらに、動作の順序は配列し直されてもよい。手順はそれの動作が終了した時に終わる。手順は方法、機能、処置、サブルーチン、サブプログラム、等に対応してもよい。手順が機能に対応する時は、それの終了はその機能の要求している機能または主要な機能への復帰に対応する。
【００１８】
さらに、この中に開示されたように、“蓄積媒体(storage medium)”は、読出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、磁気ディスク蓄積媒体、光蓄積媒体、フラッシュメモリ装置および／または情報を蓄積するための他の機械可読媒体を含んで、データを蓄積するための１つまたはそれより多い装置を示してもよい。術語“機械可読媒体”は携帯型または固定型蓄積装置、光蓄積装置、無線チャネルおよび命令および／またはデータを蓄積する、含むまたは運ぶ能力があるいろいろな他の媒体を含むが、しかしそれに限定されない。
【００１９】
その上、この中に記述された実施形態はハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、またはそれの任意の組合わせによって実施されてもよい。例えば、エンコーダまたはデコーダはハードウェア、ファームウェア、ミドルウェアにおける受信器または送信器内のプロセッサ上に組み込まれてもよく、あるいはデコーダはプロセッサ上で実行されるマイクロコードまたはソフトウェア、あるいはそれの組合わせ内で実施されてもよい。あるいは、エンコーダまたはデコーダは装置のメインプロセッサより他の特殊化されたデコーダコンポーネント上で、ハードウェア、ファームウェア、ミドルウェア内で実施されてもよく、または特殊化されたデコーダコンポーネント上で実行されるマイクロコードまたはソフトウェア内で実施されてもよい。ソフトウェア、ファームウェア、ミドルウェアまたはマイクロコード内で実施された時は、必要なタスクを実行するためのプログラム符号または符号セグメントは蓄積媒体のような機械可読媒体内に蓄積されてもよい。プロセッサはそのような必要なタスクを実行できる。符号セグメントは手順、機能、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェアパッケージ、クラス、または命令、データ構造、あるいはプログラム文の任意の組合わせを表すことができる。符号セグメントは情報、データ、アーギュメント、パラメータ、またはメモリ内容をパスすること(passing)および／または受信することによってもう１つの符号セグメントまたはハードウェア回路に連結されてもよい。情報、アーギュメント(argument)、パラメータ(parameter)、データ等はメモリ共有(memory sharing)、メッセージパッシング(message passing)、トークンパッシング(token passing)、ネットワーク伝送(network transmission)等を含む任意の適切な手段によってパス(pass)、転送(forward)、または送信されてもよい。
【００２０】
下に開示された装置の１つまたはそれより多い素子がその装置の動作に影響すること無しに配列し直されてもよいこともまた当分野の技術者には明白でなければならない。同様に、下に開示された装置の１つまたはそれより多い素子はその装置の動作に影響すること無しに結合されてもよい。
【００２１】
以下の詳細な記述はある特定の実施形態に向けられる。しかしながら、この発明は多数の異なる方法で具体化されることができる。この明細書において“１つの実施形態”または“１実施形態”を参照することはこの実施形態に関して記述された特定の特徴、構造、または特性が少なくとも１つの実施形態内に含まれることを意味する。この明細書内のいろいろな所での“１つの実施形態では、”“１つの実施形態に従って、”または“ある実施形態では”の出現は必ずしもすべて同一の実施形態を参照することではなく、相互に他の実施形態を除いた別個のまたは代替の実施形態でもない。さらに、ある実施形態によっては示されるが他のものによっては示されることができないいろいろな特徴が記述される。同様に、ある実施形態のための要求条件ではあり得るが他の実施形態のためではないいろいろな要求条件が記述される。
【００２２】
ストリーミングマルチメディアデータを伝送する通信システム内のデコーダは、間違いのあるまたはロストデータのような、１つまたはそれより多い誤ったビットを含むビットストリームを受信することができる。デコーダがビットストリームを復号している間に誤ったデータに遭遇する時には、復号処理は典型的に回復手順および／または誤り処理手順を使う要求によって中断される。マルチメディアビットストリーム内の誤ったデータを復号することを試みることによって引き起こされた中断を未然に防ぐ、または少なくとも最小にするための改善された復号能力を提供するための方法および装置がこの中に記述される。１つの方法はデコーダによって受信された例えば、物理またはトランスポート層レベルでの、マルチメディアビットストリーム内の１つまたはそれより多い誤ったビットの位置を識別すること、および１つまたはそれより多い誤ったビットを示しているマーカを発生することを含む。誤りマーカは修正されたビットストリームを生成するためにビットストリーム内に挿入される。ビットストリーム内の誤りマーカの挿入はビットストリーム内の“インバンド”であり、よってマーカは初めから受信されたデータに加えて送られ、そして任意の他の層またはサイドチャネル内には送られないことを意味している。例えば、誤りマーカはそのマーカがビットストリーム自身の部分として読まれるようにそのデータ内に順々に挿入されることができる。従って、誤りマーカはアプリケーション層のような、デコーダの上位層に送られるビットストリームの部分となる。
【００２３】
もしもデコーダが修正されたビットストリームを復号している間にマーカに遭遇すれば、誤り処理手順、例えば、誤り隠し(error concealment)、シンタックスチェッキング(syntax checking)を開始することができるか、あるいは単純にそれを消滅させる(drop)（例えば、誤ったデータをスキップするかまたは無視する）。マーカ“インバンド(in-band)”を供給することは効率的なそしてより高速の復号能力をイネーブルにする。以下の記述では、さらなる詳細がインバンド誤りシグナリングパターンの実例と局面との完全な理解およびより速い誤り回復を助けるためにそれの使用を提供するように与えられる。しかしながら、１実例または実施形態内の手順または装置の各詳細がこの中に記述または図示されていなくともこの実例が実行され得ることは当分野の通常の技術者によって理解される。例えば、電気的なコンポーネントは不必要な詳細で実例を不明瞭にしないために、各電気的な接続またはそのコンポーネントの各電気的な素子を図示しないブロック図内に示されてもよい。他の事例では、そのようなコンポーネント、他の構造および技術は実例をさらに説明するために詳細に示されてもよい。
【００２４】
図１Ａはマルチメディアデータを処理することの開示された方法および装置を含むことができるストリーミングマルチメディアデータを伝送するための通信システム１００の１つの実例のブロック図である。この中で使用されたような“マルチメディアデータ”は（オーディオデータを含むことができる）ビデオデータ、オーディオデータ、グラフ、テキストデータ、写真またはイメージデータ、あるいはそれの任意の組合わせを含む広範な術語である。広範な術語としてこの中で使用されたような“ビデオデータ”または“ビデオ”は、テキストまたは画像情報および／またはオーディオデータを含む一連の画像を指し、そしてもし他方で指定されなければマルチメディアデータ（例えば、この術語は交換可能に使用される）を指すために使用されることができる。
【００２５】
クライアント装置に送信されたマルチメディアデータは典型的に圧縮される。データ処理および操作（この中でハイブリッド符号化と呼ばれる）ＭＰＥＧ−ｘおよびＨ．２６ｘとして知られる、２つのビデオ符号化標準は、ビデオ、オーディオおよび固定または可変長ソース符号化技術を使用している他の情報の圧縮および伝送によく適する。システム１００は先に参照された標準、および他のハイブリッド符号化標準と技術とを使用することができる。実例となって、マルチメディアデータは（例えば、ランレングス符号化、ハフマン符号化、その他同種類のもののような）フレーム内符号化技術および（例えば、順方向および逆方向予測符号化、動き補償その他同種類のもののような）フレーム間符号化技術を使用して圧縮されることができる。オーディオデータはＭＰＥＧ−４  ＡＡＣ，ＭＰ３，ＡＭＲおよびＧ．７２３オーディオまたはボイス圧縮標準内で圧縮されることができる。
【００２６】
システム１００はマルチメディア送信器１０５およびマルチメディア受信器１５０を含む。送信器１０５は１つまたはそれより多いメモリコンポーネント１１５、およびプロセッサ１１０またはプリプロセッサ（例えば、ＡＲＭのような任意のタイプの中央プロセッサユニットＣＰＵ）の任意の組合わせ、ディジタル信号プロセッサ（ＤＳＰ）、ソフトウェア、ファームウェア、およびマルチメディアデータと関連する変調および符号化タスクを割り当てるための、ビデオコアのようなハードウェアを含む複数のプロセッサを含むことができる。送信器１０５はまた符号化標準、例えば、ＭＰＥＧ−１，ＭＰＥＧ−２，ＭＰＥＧ−４（集合的にＭＰＥＧ−ｘと呼ばれる）、Ｈ．２６１，Ｈ．２６２，Ｈ．２６３、またはＨ．２６４（集合的にＨ．２６ｘと呼ばれる）を使用している受信器１５０への伝送用のデータを符号化するエンコーダ１７５を含むこともできる。
【００２７】
送信器１０５はまた、外部ソース１２５（例えば、インターネット、外部メモリ、または生のビデオおよび／またはオーディオフィード）を含む、いろいろなソースからデータを取得する通信コンポーネント１２０を含むことができる。送信器１０５は通信システムを介して受信器１５０に取得されたデータを送信するために通信コンポーネント１２０を使用する。通信システムは電話、ケーブル、または光ファイバのような有線ネットワーク１３５、あるいは無線ネットワーク１３０であることができる。無線通信システムの場合には、ネットワーク１３０は、例えば、符号分割多重アクセス（ＣＤＭＡまたはＣＤＭＡ２０００）通信システムを備えることができるかあるいは交互に、システムは周波数分割多重アクセス（ＦＤＭＡ）システム、直交周波数分割多重アクセス（ＯＦＤＭＡ）システム、ＧＳＭ／ＧＰＲＳ（汎用パケット無線サービス）／ＥＤＧＥ（強化データＧＳＭ環境）またはサービス産業用のＴＥＴＲＡ（地上中継無線）移動電話技術のような時分割多重アクセス（ＴＤＭＡ）システム、広帯域符号分割多重アクセス（ＷＣＤＭＡ）、高速データ（１ｘＥＶ−ＤＯまたは１ｘＥＶ−ＤＯゴールドマルチキャスト）システム、あるいは一般に技術の組合わせを使用している任意の無線通信システムを含むことができる。
【００２８】
受信器１５０は通信コンポーネント１５５および無線ネットワーク１３０および／または有線ネットワーク１３５、例えば無線周波数アンテナまたはネットワーク接続によりデータを受信するための手段を含む。受信器１５０はまたプロセッサ１６０、またはプリプロセッサ（例えば、ＡＲＭのような任意のタイプの中央プロセッサユニットＣＰＵ）の任意の組合わせ、ディジタル信号プロセッサ（ＤＳＰ）、ソフトウェア、ファームウェア、およびデータを受信して復号することに関連する復調および復号タスクを割り当てるための、ビデオコアのようなハードウェアを含む複数のプロセッサを含むこともできる。受信器１５０はまた符号化データを発生するために使用された符号化標準と一致する適用可能な復号標準を使用して受信された符号化ビットストリームを復号するデコーダ１７０を含むこともできる。
【００２９】
図１Ｂに図示されたように、ある実施形態ではマルチメディア受信器１５０内のプロセッサ１６０は図１Ａ内に示された別個のデコーダ１７０によって実行された復号タスクを実行することができる。プロセッサ１６０は通信コンポーネント１５５から符号化されたビットストリームを受信する、このビットストリーム内の１つまたはそれより多い誤ったビットの位置を識別する、１つまたはそれより多い誤ったビットを示すマーカを発生する、および修正されたビットストリームを生成するために符号化されたビットストリーム内にマーカを挿入するように、論理で、例えば、ソフトウェア、ハードウェア、ファームウェアまたはそれの組合わせで構成されることができる。プロセッサ１６０はまた修正されたビットストリームを復号するように論理で構成されることもでき、ここにおいてマーカは１つまたはそれより多い誤ったビットを示すために復号の間使用される。プロセッサ１６０はまたもしもマーカが復号の間に遭遇されれば誤り処理を開始するように論理で構成されることもできる。図１Ｂはまた送信器１０５内のプロセッサ１１０がビットストリームを符号化し、そして図１Ａ内に示されたエンコーダ１７５によって実行された任意の他のタスクを実行するように構成されることができる。
【００３０】
図１Ａを再び参照して、受信器１５０はまた受信データおよび復調／復号手順のいろいろな段階における中間データを蓄積するための１つまたはそれより多いメモリコンポーネント１６５をも含む。ある実施形態では、（図示されない）ＡＲＭプリプロセッサはアンパッキング（ヘッダおよびシグナリングメッセージのような補助情報を取り除くこと）およびオーディオ、ビデオおよびその他を含む複数のビットストリームをデマルチプレクスすることを含む、より複雑でないタスクを実行する。ＡＲＭプロセッサはまたビットストリーム分析、誤り検出、誤り隠し、および可変長エントロピー復号を実行することもできる。あるそのような実施形態では、ＤＳＰはＶＬＣ（可変長符号）符号語の展開、画素係数を空間的に捜し出すためのビデオデータの逆ジグザグ走査、（環境適応エントロピー符号化によるＨ．２６４の特徴ではない）ＭＰＥＧ−４ビデオ用の画素係数の逆ＡＣ／ＤＣ予測、およびオーディオ復号（例えば、ＭＰＥＧ−４  ＡＡＣ，ＭＰ３，ＡＭＲまたはＧ．７２３）を実行する。ビデオコアは量子化解除、逆変換、補償された動き予測、およびデブロッキング（画素ブロックエッジ間のエッジアーチファクト(edge  artifact)を減らすためのフィルタリングの１形式）を具備するビデオ復号のコンピュータ操作上より複雑なタスクを実行できる。
【００３１】
受信器１５０は誤り処理論理、例えば、誤り検出、誤り隠し、およびシンタックスチェッキングを含む。誤り処理論理は受信器１５０内でソフトウェア、ハードウェアまたはファームウェアで具体化されることができる。特に、受信器１５０は受信された符号化ビットストリーム内の１つまたはそれより多い誤ったビットを識別する、ビットストリーム内のどのビットが誤りであるかを示すための適切なマーカを発生する、およびマーカ“インバンド”をそのビットストリーム内に挿入するための誤り処理論理を含む。そのようなマーカの発生、挿入および使用は図２〜６を参照してさらに記述される。ある実施形態では、誤り処理論理はまた誤ったビットを含んでいる全体の誤ったパケットとして識別およびマークすることもできる。誤り処理論理の全部または一部分はデコーダ１７０、プロセッサ１６０上に、１つまたはそれより多いメモリコンポーネント１６５内に、あるいは受信器１５０内のもう１つの論理装置内にあることができる。１つまたはそれより多い素子はこの発明の範囲から逸脱すること無しに通信システム１００に加えられてもよい。
【００３２】
図２は図１Ｂに図示された送信器１０５および受信器１５０においてタスクを分割するために使用されることができる多層プロトコルスタックのブロック図である。プロトコルスタックはそれぞれ、図１Ｂに図示された送信器１０５および受信器１５０に対応する、送信器側および受信器側のためのアプリケーション層２０５，２１０、トランスポート層２１５，２２０、および物理層２２５，２３０を含む。ある実施形態では、これらは標準ＯＳＩ層構造の部品であってもよい。しかしながら、層はＯＳＩ構造に限定されない。それぞれ、送信器１０５および受信器１５０内のアプリケーション層２０５および２１０は、例えば、ビデオまたはオーディオエンコーダおよび／またはデコーダのような複数のアプリケーションを含むことができる。ある実施形態は同時に復号されることを意味する複数の情報のストリームを含むことができる。これらの場合には、複数のストリームの同期タスクはまたアプリケーション層２０５および２１０内でも実行されることができる。アプリケーション層２０５は無線ネットワーク１３０または有線ネットワーク１３５により送信されるビットストリーム内に符号化されたタイミング情報を供給できる。アプリケーション層２１０は関連するアプリケーションがそれらを同時にまたはほぼ同様に復号するように複数の情報のストリームを解剖することができる。当分野の技術者はこれらの層を認め、そしてそれらの間のいろいろなタスクの割当てを熟知しているであろう。当分野の技術者はまた、ある実施形態に、図２内に示された層が同期層、ストリームまたは媒体アクセス（ＭＡＣ）制御層、および／または記述された層の１つまたはそれより多い層を含むことをさらに詳細に示され得ることも認めるであろう。
【００３３】
送信器１０５のトランスポート層２１５および物理層２２５は誤り回復力を準備するためにいろいろなスキームを含むことができる。無線ネットワーク１３０および／または有線ネットワーク１３５（図１Ｂ）のような誤りやすいチャネルは受信器１５０によって受信されたビットストリーム内に誤りを持ち込むかもしれない。誤り回復力処理は１つのまたは誤り制御符号化スキーム、交錯法スキームおよび他のそのようなスキームを含むことができる。受信器１５０のトランスポート層２２０および物理層２３０は誤りの検出および訂正をイネーブルとする類似の誤り復号を含むことができる。トランスポート層２２０は誤り分析および／または検出、例えば、順方向誤り訂正および外符号化(outer  coding)を実行できる。物理層２３０はまた含んでいる誤り分析および／または検出をも実行することができる。無線ネットワーク１３０または有線ネットワーク１３５によって導入されるかなりの誤りはトランスポート層２２０または物理層２３０によって訂正され得ないかもしれない。識別され得るがしかし訂正できない、そして誤ったコンポーネントの再送信を要求するようなソリューションが実行できないこれらの誤りについて、誤ったビットの位置および誤ったビットの数はビットストリーム内に“インバンド”を挿入され、そしてアプリケーション層２１０まで送られるマーカによって示されることができる。
【００３４】
図３は受信器１５０へのビットストリームデータとしてパスされる物理層パケット（または“ＰＬＰ”）の一例を図示する。各パケットはトランスポートヘッダ部３０５、符号化されたマルチメディアデータを含むボディ部３１０、および誤りチェック符号、例えば、巡回冗長チェックサム（“ＣＲＣ”）を含むテール部３１５を有する。もしも誤ったデータ、例えば、１つまたはそれより多い誤ったビット（“悪い”ＰＬＰ）を含むパケットが、例えば、受信器の物理層またはトランスポート層内の誤り検出論理によって検出されれば、トランスポートヘッダはそのパケット内の１つまたはそれより多いビットが誤っている（例えば、悪い）ことを示すためにマークされる。誤りパターンマーカ（error pattern marker）はスライスヘッダまたはスライスデータ情報とともに“インバンド”を置かれ、修正されたビットストリームという結果になり、それはアプリケーション層に回送される。受信器のアプリケーション層コンポーネントがビットストリーム内の誤りパターンマーカに遭遇する時に、デコーダは誤ったマークされたＰＬＰをアドレスするか、または悪いＰＬＰを消滅させて、次のＰＬＰから復号を続けるアクションを取ることができる。ある実施形態では、デコーダはそれが誤りマークされたＰＬＰに遭遇する時にシンタックスチェッキングまたは他の誤りチェッキング機能性を活性化する。ある実施形態では、デコーダが誤りマークされたＰＬＰに遭遇する時にそれはその誤ったビットに対応する領域を処理するかマスクするように誤り隠しを活性化する。
【００３５】
ある実施形態では、誤りパターン用のシンタックスは次の通りヘクサデシマルで描写されることができる：
００  ００  ０１  １８＜誤りパターン長バイト＞＜悪いビットストリーム長＞
ここで“００  ００  ０１  １８”はそれが進行中のＮＡＬユニット内に挿入したデータであることを信号するためのスタート符号プレフィックス(start code prefix)である。“誤りパターン長バイト”は誤りパターンＮＡＬを読み出すためのこのバイトの後に読むべきバイト数を意味する。“悪いビットストリーム長”は誤ったビットの長さを意味する。ある実施形態では、“悪いビットストリーム長”コンポーネントは、パケット内のビットがすべて誤っていることを示して、現在のパケットの長さに設定される。ある実施形態では、スタート符号プレフィックスは“００  ００  ０１  ２４”であることができる。一般に、スタート符号プレフィックスは、“００  ００  ０１”から成るｓｙｎｃバイトが、そのような仕様に適合するデコーダが誤りパターンを（例えば、破壊すること無しに）優美に処理するように圧縮仕様(compression specification)のある予備のまたはまだ指定されない標準の部分によってフォローされるように選ばれる。
【００３６】
図４はトランスポート層内およびアプリケーション層内に図示された複数のＰＬＰを具備するビットストリームデータの一例である。トランスポート層データは各々トランスポートヘッダ（“ＴＨ”）、アプリケーションパケットＩＤ−ＦＮ，Ｍ（ここでＮ，ＭはビデオフレームＮのＭ番目のパケットを示す）によって参照を付けられたパケットデータ、および巡回冗長チェックサム（“ＣＲＣ”）を含むパケット（ＰＬＰ）テールを含んでいる数多くのパケット４１５を有するものとしてビットストリームデータを図示する。ＣＲＣはトランスポートヘッダおよびアプリケーションパケットデータを構成するデータ上にパリティチェックを提供する。ＣＲＣが受信側（例えば、デコーダ側）でのこのデータ、例えば、アプリケーションパケット４２５、のために発生されたパリティビットと一致しない時には、ＣＲＣはデコーダ論理がどのビットが誤っているかを決定することを認めて判断するであろう特定の誤りパターンによって、トランスポートヘッダ内で失敗したとしてマークされる。ある実施形態では、誤りパターン挿入４１０は全体のパケットを誤っているとしてマークすることができる。ある実施形態では、誤りパターン挿入４１０は特定の番号のビットが誤っていることを示す。
【００３７】
アプリケーション層データはおのおの種々のアプリケーションパケットＩＤによって図示された、数多くのパケットデータ４２０を含むものとしてトランスポート層から受信されたビットストリームを図示する。アプリケーション層データはもはやトランスポートヘッダまたはＣＲＣフィールドを含まない。パケットデータはもし別のやり方でマークされなければ、復号されるべき“良い”データのストリームとして存在する。パケット４３０は悪いＣＲＣを有するかまたは任意の他の誤った情報（例えば、悪いビット）を有するトランスポート層内のパケットに相当する。パケット４３０が１つまたはそれより多い誤ったビットを含むことを示すために、誤りパターンマーカはビットストリームとともにパケット４３０の前に挿入された“インバンド”である。デコーダはもしもそれが遭遇されるならば誤りパターンマーカを認めるように論理で構成され、そしてその後データを消滅させるかまたは誤り処理論理を活性化することができる。誤りパターンマーカ“インバンド”を挿入することは、デコーダに“インバンド”でない任意の他の情報を信頼することなくデータを処理させ、それはより速い復号という結果になる。ある実施形態では、マーカが遭遇される時に示された“悪い”データビットは誤り訂正または誤り隠しのためのもう１つの処理に切り替えられることができる。
【００３８】
ある実施形態が、フローチャート、フロー図、構造図、またはブロック図として描写される処理として記述されてもよいことは注目される。フローチャートは連続的な手順として動作を記述できるが、動作の多くは並列にまたは同時に実行されることができ、そして手順は繰り返されることがあり得る。さらに、動作の順序は配列し直されることがあり得る。手順はその動作が完了される時に終結される。手順は方法、機能、処理、サブルーチン、サブプログラム、等に対応できる。手順が機能に対応する時は、その終結は呼出し機能(calling  function)または主機能への復帰に対応する。
【００３９】
手順として記述された１つの実施形態は、ストリーミングマルチメディアデータを復号するための手順６００のフロー図である、図５に示される。状態６０５で手順６００は符号化されたビットストリームを受信する。ビットストリームは、例えば、有線ネットワーク１３５または無線ネットワーク１３０を介して送信器１０５から受信されることができる。状態６１０で、手順６００はビットストリーム内の１つまたはそれより多い誤ったビットの位置を識別する。ある実施形態では、誤ったビットはデコーダの物理層２３０またはトランスポート層２２０内で実施された誤り処理論理によって識別されることができる。他の実施形態では、誤ったビットはそれがデコーダ内の手順（例えば、受信器１５０のアプリケーション層２１０内の手順）によって復号される前にビットストリームを前処理する手順によって識別されることができる。一度手順６００がビットストリーム内の１つまたはそれより多い誤ったビットを識別すると、それは状態６１５で誤ったビットを示すマーカを発生する。例えば、マーカは誤ったビットの存在、誤ったビットの位置または１組の誤ったビット内の第１の誤ったビットの位置を示すことができ、および／またはビットストリーム内の誤ったビットの長さ（例えば、誤ったビットの数または最後の誤ったビットの位置）を示すことができる。状態６２０で、手順６００は修正されたビットストリームを生成するためにこのビットストリーム内に誤りマーカを挿入する。マーカはビットストリーム内に“インバンド”を挿入される。ある実施形態では、誤りマーカは誤ったデータのすぐ前に直接に挿入される。誤りマーカは、例えば、修正されたビットストリーム内のそれの存在を信号するためのスタート符号プレフィックス、誤りパターンの長さを示す情報、および／または誤ったビットの長さを示す情報を含むことができる。マーカはデコーダが１つまたはそれより多い誤ったビットの存在を示すことを知る所定の誤りパターンを含むことができる。他の実施形態では、誤りパターンはパケットの誤ったビットのすぐ前のトランスポートヘッダ内に挿入されることができる。
【００４０】
オプションとして、手順６００はまた、例えば、手順６００の状態６２５で、修正されたビットストリームを復号することを含むことができ、修正されたビットストリームはビットストリームを符号化するために使用された適用できる標準に従って復号される。復号手順の間に、誤りマーカは遭遇されるかもしれない。状態６３０で、もしも手順６００が誤りマーカに遭遇すれば、誤り処理論理が誤ったビットを処理するために活性化される。誤り処理論理は、例えば、シンタックスチェッキング、誤り訂正、誤り隠し、または誤ったビットを無視すること（例えば、捨てること）であることができる。ある実施形態では、デコーダはマーカに遭遇する時に２つまたはそれより多い誤り処理手順を活性化することができる。状態６３５で誤り処理論理を活性化する後に、あるいはもしも誤りマーカが遭遇されなければ、復号は続く。状態６４０で手順６００は修正されたビットストリームの復号が完了したかどうかを決定する。もしも完了しないならば、手順６００は状態６２５で修正されたビットストリームを復号することを続ける。復号が完了する時には、手順６００は終わる。
【００４１】
この中に記述された方法および装置はいろいろな実施の形態において使用されることができる。図６はマルチメディアデータを処理するための装置６５０の１つのそのような例を図示し、マルチメディアデータを処理するための装置６５０は符号化されたビットストリームを受信するための手段、このビットストリーム内の１つまたはそれより多い誤ったビットの位置を識別するための手段、１つまたはそれより多い誤ったビットを示すマーカを発生するための手段、および修正されたビットストリームを生成するためにこのビットストリーム内にマーカを挿入するための手段を備える。図６に図示されたように、受信手段は受信モジュール６５５を有してもよい。識別手段は識別モジュール６６０を有してもよい。発生手段は発生モジュール６６５を有してもよい。挿入手段は挿入モジュール６７０を有してもよい。ある実施形態では、デコーダ１７０は１つまたはそれより多い識別モジュール６６０、発生モジュール６６５および挿入モジュール６７０によって実施されてもよい。また、オプションとして、装置は修正されたビットストリームを復号するための手段をさらに有してもよく、ここでマーカは１つまたはそれより多い誤ったビットを示すために復号の間使用される。装置はまたマーカが復号の間に遭遇する時に誤り手順を開始するための手段を有してもよい。挿入手段は修正されたビットストリームを生成するためにビットストリーム内にマーカを挿入するように構成されたプロセッサを有してもよい。装置のある実施形態では、挿入手段はマーカがビットストリームの部分となるようにビットストリーム内にマーカを挿入するように構成されてもよい。装置の復号手段は修正されたビットストリームを復号するように構成されたプロセッサを有してもよい。
【００４２】
この分野の通常の技術者は情報および信号がいろいろな異なるテクノロジーおよびテクニックのいずれかを使用して表され得ることを理解するであろう。例えば、上記説明の全体を通して参照される可能性があるデータ、指示、命令、情報、信号、ビット、記号、およびチップは、電圧、電流、電磁波、磁界または粒子、光学界または粒子、あるいはそれの任意の組合わせにより表されることができる。
【００４３】
通常の技術者はこの中に開示された実例に関した記述されたいろいろな実例となる論理ブロック、モジュール、およびアルゴリズムステップは電子ハードウェア、ファームウェア、コンピュータソフトウェア、ミドルウェア、マイクロコード、またはそれの組合わせとして実施され得ることをさらに認識するであろう。ハードウェアおよびソフトウェアのこの互換性を明確に説明するために、いろいろな実例となるコンポーネント、ブロック、モジュール、回路、およびステップは、一般にそれらの機能性の表現で上述された。そのような機能性がハードウェアまたはソフトウェアとして実施されるかどうかはシステム全体に課された特定のアプリケーションと設計の制約とによる。熟練技工は各特定のアプリケーションについて異なる方法で記述された機能性を実施できるが、しかしそのような実施の決定が開示された方法の範囲からの逸脱を引き起こすと解釈されてはならない。
【００４４】
この中に開示された実例に関して記述されたいろいろな実例となる論理ブロック、コンポーネント、モジュール、および回路は、汎用プロセッサ、ディジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）または他のプログラマブル論理装置、ディスクリートゲートまたはトランジスタ論理、ディスクリートハードウェアコンポネント、あるいはこの中に記述された機能を実行するように設計されたそれの任意の組合わせで実施または実行されることができる。汎用プロセッサはマイクロプロセッサであってもよいが、しかし代替案では、プロセッサは任意の従前のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンであってもよい。プロセッサはまた計算装置の組合わせ、例えば、ＤＳＰとマイクロプロセッサとの組合わせ、複数のマイクロプロセッサ、ＤＳＰコアとともに１つまたはそれより多いマイクロプロセッサ、あるいは任意の他のそのような構成として実施されることもできる。
【００４５】
この中に開示された実例に関して記述された方法のステップまたはアルゴリズムはハードウェアで、プロセッサにより実行されるソフトウェアモジュールで、またはこの２つの組合わせで直接具体化されることができる。ソフトウェアモジュールはＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、着脱可能型ディスク、ＣＤ−ＲＯＭ、あるいはこの分野において既知の任意の他の形式の蓄積媒体内に存在してもよい。典型的な蓄積媒体はプロセッサがこの蓄積媒体から情報を読み取り、そしてそれに情報を書き込むことができるようにプロセッサに連結される。代替案では、蓄積媒体はプロセッサに一体化されてもよい。プロセッサと蓄積媒体とは１つの特定用途向け集積回路（ＡＳＩＣ）内に存在してもよい。ＡＳＩＣは無線モデム内に存在してもよい。代替案では、プロセッサと蓄積媒体とはディスクリートコンポーネントとして無線モデム内に存在してもよい。
【００４６】
開示された実例の前の説明はこの分野の任意の通常の技術者がこの開示された方法および装置を製作または使用することを可能とするように提供される。これらの実例へのいろいろな変更はこの分野の技術者にはたやすく明白であるだろうし、そしてこの中に定義された原理は他の実例に適用されてもよく、そして追加のエレメントは開示された方法および装置の精神または範囲から逸脱すること無しに加えられてもよい。
【００４７】
前述の実施形態は単に実例に過ぎず、そしてこの発明を制限すると解釈されるべきでないことは注意されねばならない。実施形態の説明は実例となることを意味し、クレームの範囲を制限することを意味しない。そのように、本教えは他のタイプの装置にたやすく適用されることができ、そして多くの代替案、変更、および変動はこの分野の技術者には明白であるだろう。
【図面の簡単な説明】
【００４８】
【図１Ａ】ストリーミングマルチメディアを伝送するための通信システムの一例を示すブロック図。
【図１Ｂ】ストリーミングマルチメディアを伝送するための通信システムのもう１つの例を示すブロック図。
【図２】送信器およびデコーダ内のタスクを分割するために使用された多層プロトコルスタックを示すブロック図。
【図３】デコーダへのビットストリームデータとしてパスされるパケットの一例を示す図。
【図４】トランスポート層内およびアプリケーション層内に図示された複数のＰＬＰから成るビットストリームの一例を示す図。
【図５】ストリーミングマルチメディアデータを復号する方法を示すフロー図。
【図６】マルチメディアデータを処理するための装置を示すブロック図。
【符号の説明】
【００４９】
１０５…マルチメディア送信器、１１０，１６０…プロセッサ、１１５，１６５…メモリ、１２０，１５５…通信コンポーネント、１２５…外部ソース、１５０…マルチメディア受信器、１７０…デコーダ、１７５…エンコーダ
【図１Ａ】
2008546230.tif 000003
【図１Ｂ】
2008546230.tif 000004
【図２】
2008546230.tif 000005
【図３】
2008546230.tif 000006
【図４】
2008546230.tif 000007
【図５】
2008546230.tif 000008
【図６】
2008546230.tif 000009