(57)【要約】  本発明は、メディアブロックのサイズがビットストリームからの情報の一部に基づいて最初に計算されるかまたは決定される、２ステップの復号化アプローチに関係する。このサイズ情報はメディアブロックのバイト数または長さを定める。サイズ情報は、次に、後続の第２のメディアブロックおよび残りのビットストリームから第１のメディアブロックを切り取るかまたは抽出するため使用される。このステップは、実際の復号化ステップより少ない計算または処理を必要とする。第１のメディアブロックの標準的な復号化が次に進行し、同時に、並列アーキテクチャの処理エレメントは、第１のメディアブロックの処理の終了を待つことなく、第１のステップで獲得されたサイズ情報を使用して第２のメディアブロックへ直ぐにジャンプすることが可能である。このようにして、基礎的なアーキテクチャは複数のブロックを同時に復号化することにより並列性を利用することができるので、復号化時間が短縮される。
2007526687.tif 000002
【特許請求の範囲】
【請求項１】
複数のデータブロックを含むデータストリームを復号化する復号化装置であって、
ａ．復号化されるべき第１のデータブロックの長さを決定するため、前記データストリームの情報の一部を処理するサイズ決定手段と、
ｂ．前記決定された長さに基づいて、前記データストリームから前記第１のデータブロックを分離する分離手段と、
ｃ．前記第１のデータブロックが復号化される間に、後の第２のデータブロックを処理する並列処理手段と、
を備える装置。
【請求項２】
前記サイズ決定手段が、サイズ情報を発生し、前記サイズ情報（ｆ＿ｓｚ＿ｏｆ＿ｂｌｋ）を前記分離手段へ供給するように適応された、請求項１に記載の装置。
【請求項３】
前記サイズ情報が、前記データストリームから前記第１のデータブロックを分離するため前記分離手段によって使用される、請求項２に記載の装置。
【請求項４】
前記サイズ決定手段の前記処理が、前記第１のデータブロックの所定の部分の決定されたビット数を累算する累算処理である、請求項１から３のいずれか一項に記載の装置。
【請求項５】
前記複数のデータブロックがメディアアプリケーションフレームのオーディオブロックであり、前記所定の部分が仮数部である、請求項４に記載の装置。
【請求項６】
前記決定されたビット数がビット割当処理から得られる、請求項４または５に記載の装置。
【請求項７】
前記ビット割当処理が少なくとも一つの心理音響モデルに基づき、電力スペクトル密度が前記ビット数を明らかにするためマスキング曲線と比較される、請求項４から６のいずれか一項に記載の装置。
【請求項８】
前記並列処理手段が、前記データストリームの第１のフレームのビットストリーム情報を解析し、その後に、前記第１のフレームに設けられたオーディオブロックのサイド情報の解析の終了を待つことなく、後の第２のフレームの始まりへジャンプするようにアレンジされる、請求項５から７のいずれか一項に記載の装置。
【請求項９】
前記分離手段が、第１のオーディオブロックの前記サイド情報をアンパックし、その後に、指数情報を解析し、前記並列処理手段の第１の処理ユニットへ送信し、ビット割当情報を解析し、前記並列処理手段の第２の処理ユニットへ送信し、仮数ブロックを解析し、前記並列処理手段の第３の処理ユニットへ送信し、その後に、第２のオーディオブロックへジャンプするようにアレンジされる、請求項８のいずれか一項に記載の装置。
【請求項１０】
複数のデータブロックを含むデータストリームを復号化する方法であって、
復号化されるべき第１のデータブロックの長さを決定するため、前記データストリームの情報の一部を処理するステップと、
前記決定された長さに基づいて、前記データストリームから前記第１のデータブロックを分離するステップと、
前記第１のデータブロックが復号化される間に、後の第２のデータブロックを処理するステップと、
を備える方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は複数のデータブロックを含むデータストリームを復号化する復号化方法および装置に関係する。特に、本発明は、可変ブロック長をもつメディアデータストリームのオーディオおよび／またはビデオ復号化スキームに関係する。
【背景技術】
【０００２】
デジタルオーディオの人気は着実に増加している。ますます多くの人がインターネット経由で音楽ファイルおよびオーディオファイルを交換するため圧縮デジタルオーディオを使用している。デジタル多用途ディスク（ＤＶＤ）、音楽ＣＤ、テレビおよびラジオ放送業界は、すべてが良質な圧縮オーディオを配信する利点を認識している。ＤＶＤおよびＨＤＴＶ（高品位テレビジョン）業界は、自分たちのユーザにマルチチャンネルのシアター品質サウンドを提供することを表明している。ＤＶＤおよびＨＤＴＶ放送のオーディオ圧縮規格である、Ｄｏｌｂｙ  ＡＣ−３としても知られている、ドルビーデジタル符号化システムは、チャンネルプログラムのデータレートを著しく削減し、たとえば、１５対１の削減に対応する６Ｍｂ／ｓ（６チャンネル、２０ビット、４８ｋＨｚ）から３８４ｋｂ／ｓに至るまで削減する。
【０００３】
このようなメディアアプリケーションでは、ビットストリームフォーマットは、フレームが数個のメディアブロックからなるフレーム構造で構成されている。これらのメディアブロックは、今度は、それらの独自のパラメータおよびデータを格納する。アーキテクチャの世界では、流行は並列処理アーキテクチャへ向かうことになる。これらのアーキテクチャでは、目標は、ビットストリームからメディアブロックを分離し、取り出し、そして、メディアブロックをアーキテクチャの処理エレメントへ並列に供給することである。これを達成するため、メディアブロックが互いに分離され得るように、メディアブロックの終わりを特定することが必要とされる。メディアブロック間の分離を確認するため、現在、二つのアプローチが使用されている。
【０００４】
１．各メディアブロックは、各メディアブロックの最後に追加された明示的なセパレータフィールドを有する。これは、あるメディアブロックの終わりを別のメディアブロックの始まりと識別するために役立つ。
【０００５】
２．バイト毎の各メディアブロックのサイズが強制的に固定される。各メディアブロックは、このとき、固定サイズを有するので、次のメディアブロックの始まりを認識するためにこの固定バイト数を飛び越すことが可能である。
【０００６】
しかし、これらのメディアブロックが固定サイズをもたず、かつ、セパレータフィールドをもたない規格が存在する。このような規格の一例は、ＤＶＤおよびＨＤＴＶ放送用の上記のＤｏｌｂｙ  ＡＣ−３規格である。このような規格では、上記の二つのアプローチは役に立たない。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明の目的は、並列処理アーキテクチャが、セパレータフィールドを必要とすることなく、可変ブロック長をもつメディアアプリケーションのため実施できるようにするため用いられる復号化方法および装置を提供することである。
【課題を解決するための手段】
【０００８】
本目的は、請求項１に記載された復号化装置および請求項１０に記載された方法によって達成される。
【０００９】
その結果、第１のデータブロックの復号化が処理され、同時に、並列アーキテクチャの処理エレメントが、第１のデータブロックの処理の終了を待つことなく、サイズ決定から獲得されたブロック長を使用して第２のデータブロックへ直ぐにジャンプすることができるので、復号化はより少ない計算または処理を必要とする。このようにして、基礎的なアーキテクチャが複数のブロックを同時に復号化することにより並列性を利用または活用することが可能であるため、復号化時間は短縮される。
【００１０】
サイズ決定手段は、サイズ情報を生成し、サイズ情報を分離手段へ供給するように適応される。サイズ情報は、その後に、第１のデータブロックをデータストリームから分離するため分離手段によって使用される。それによって、プリエンプティブブロック分離が行われ、その間にサイズ情報が現在動作している復号化手段の一つから獲得されたフィードバック情報より生成され、分離手段による第２のデータブロックへのジャンプを可能にさせる。
【００１１】
サイズ決定手段の処理は、第１のデータブロックの所定の部分の決定されたビット数を累算する累算処理である。
【００１２】
特に、複数のデータブロックは、ＡＣ−３フレームのようなメディアアプリケーションフレームのオーディオブロックであり、所定の部分は仮数部である。よって、データブロックの長さは、データストリームの予備的な解析または復号動作中に連続的に獲得される。決定されたビット数はビット割り当て処理から獲得される。このビット割り当て処理は、少なくとも一つの心理音響モデルに基づき、電力スペクトル密度は上記ビット数を明らかにするためマスキング曲線と比較される。
【００１３】
さらに、並列処理手段は、データストリームの第１のフレームのビットストリーム情報を解析し、次に、第１のフレームに設けられたオーディオブロックのサイド情報の解析の終了を待つことなく、後の第２のフレームの始まりへジャンプするように構成される。このようにして、第２のフレームのビットストリーム情報の解析および復号化がオーディオブロックの解析の終了前に開始され、その結果、並列性を高める。
【００１４】
さらに、分離手段は、第１のオーディオブロックのサイド情報をアンパックし、次に、指数情報を解析し、並列処理手段の第１の処理ユニットへ送信し、ビット割り当て情報を解析し、並列処理手段の第２の処理ユニットへ送信し、仮数ブロックを解析し、並列処理手段の第３の処理ユニットへ送信し、次に、第２のオーディオブロックへジャンプする。したがって、情報は、処理が終了されることを待つことなく、ブロックシーケンスの次のオーディオブロックへジャンプする前に、まさに解析され、それぞれのプロセスへ送信される。
【００１５】
さらなる有利な変形は従属請求項に記載される。
【００１６】
本発明は、今度は添付図面を参照して好ましい実施形態に基づいて説明される。
【発明を実施するための最良の形態】
【００１７】
好ましい実施形態がここからドルビーデジタルデコーダ、すなわち、Ｄｏｌｂｙ  ＡＣ−３オーディオデコーダに基づいて説明される。
【００１８】
過去数年の間に、デジタルオーディオデータ圧縮はオーディオ業界において重要な技術になった。Ｄｏｌｂｙ  ＡＣ−３は、様々なオーディオチャンネルフォーマットを低レートビットストリームに符号化する能力を備えたフレキシブルなオーディオデータ圧縮テクノロジーである。ＡＣ−３テクノロジーの起源は、高品位テレビジョン（ＨＤＴＶ）のための高品質なマルチチャンネルサウンド定位を提供する要望であった。目標は、できる限り広い対象者が使用可能なオーディオを符号化することだった。潜在的な対象者は、フルサウンド体験を楽しむことを望む商業映画の客またはホームシアター熱狂者から、低音量でモノラルテレビジョンセットを聴く静かなホテルの部屋の居室者でありながら、それにもかかわらず番組内容のすべてを聞くことを望む居住者までを含む。
【００１９】
Ｄｏｌｂｙ  ＡＣ−３規格は、その入力としてＰＣＭ（パルス符号変調）オーディオを受け入れ、符号化されたビットストリームを生成する。符号化プロセスの第１のステップは、オーディオの表現をＰＣＭ時間サンプルの系列から周波数係数のブロックの系列に変換することである。５１２個の時間サンプルの重なり合うブロックは、時間窓によって乗算され、周波数領域に変換される。重なり合うブロックのために、各ＰＣＭ入力サンプルは２個の順次の変換されたブロックで表現される。周波数領域表現は、次に、２という倍率でデシメートされるので、各ブロックは２５６個の周波数係数を格納する。過渡信号の場合、改良された性能は、２回の２５６点の変換が５１２点の変換の代わりに計算されるブロック切り替え技術を使用することにより達成される。浮動小数点変換プロセスは、変換係数を指数と仮数のペアにわける。仮数は、その後に、パラメトリックビット割当モデルに基づいて、可変ビット数で量子化される。６個のオーディオブロック（１５３６個のオーディオサンプル）に対するスペクトル包絡線（指数）および粗く量子化された仮数は、ＡＣ−３フレームにフォーマット化される。
【００２０】
図１は、ＡＣ−３のようなメディアアプリケーションの典型的なフレームＦの概略構造を示す。ビットストリームはこのようなフレームの系列である。このフレーム構造図に示されているように、各フレームは、複数のメディアブロックＭＢ０−ＭＢｎ、たとえば、ＡＣ−３フレームの場合にはオーディオブロックからなる。各メディアブロックは、同様に、メディアブロックパラメータＭＢＰおよびメディアブロックデータＭＢＤからできている。さらに、各フレームＦは、同期ワードまたはパターンＳＹＮＣと、誤り訂正符号（巡回冗長符号）ＣＲＣ第１番と、ビットストリーム情報ＢＳ１と、補助情報ＡＵＸとを含む。
【００２１】
ＡＣ−３フレームの特定の場合に、メディアブロックデータＭＢＤは、パックされた指数および仮数ブロックを含む。復号化プロセスの並列性を改良するため、復号化の計算が重い仮数ブロックを飛ばすため適応した解析または復号化ルーチンを設け、次のオーディオブロックの解析または復号化を開始することが望ましい。このため、復号化プロセスまたはスキームは、オーディオまたはメディアブロック間の「分離点」を特定する能力を備えるべきである。上記のように、このことは、通常は、従来のメディア規格によって、このようなメディアブロックの間に一意に識別可能な「セパレータフィールド」を挿入することにより、または、固定サイズのメディアブロックを有することにより実現される。しかし、上記の解決策はどちらも、ＡＣ−３ビットストリームのような、分離情報をもたない特定の可変サイズメディアアプリケーションに適用できない。
【００２２】
好ましい実施形態によれば、以下の２ステップまたは２段の復号化アプローチが提案される。
【００２３】
図２は、好ましい実施形態による復号化プロセスまたはスキームを示す概略ブロック図を表す。第１のステップまたは段１０において、メディアブロック、たとえば、仮数ブロックのサイズが、サイズ決定関数またはユニット１０２によって、たとえば、ＰＣＭデータを含む入力ビットストリームＢＳから計算または決定される。対応するサイズ情報ＳＩが発生され、分離関数またはユニット１０４へ転送される。分離ユニット１０４において、サイズ情報ＳＩは、その後に、残りのビットストリームからメディアブロックを切り取り、分離されたメディアブロックを、第２の段２０の複数の復号化処理関数またはユニット２０−１〜２０−ｎのうちの選択された復号化関数またはユニットへ供給するために使用される。次に、抽出されたメディアブロックの少なくとも部分的な並列復号化が選択された復号化処理ユニット２０−１〜２０−ｎで実行される。復号化されたメディアブロックＤＭＢは、その後に、単一データストリームに合成されるか、または、第２の段２０の出力へ並列にそのまま供給される。
【００２４】
以下、好ましい実施形態のより詳細な説明がＡＣ−３復号化プロセスに基づいて記載される。
【００２５】
図３は典型的なＡＣ−３復号化手順の概略フローチャートを示す。ステップ１において、ビットストリームは、典型的に、伝送または記憶システムから入力される。次のステップ２はフレーム整列を確立するため設けられる。これは、ＡＣ−３同期ワードＳＹＮＣを検出し、その後に、ＣＲＣ誤り検出ワードが誤りを指定しないことを確かめる必要がある。
【００２６】
ステップ３において、サンプリングレート、フレームサイズ、ビットレート、チャンネル数、オーディオのような言語コードに関係する情報、著作権などのようなサイド情報がアンパックされ、ビットストリーム情報ＢＳＩがフレーム毎に１回ずつ出現し、オーディオブロックのサイド情報がオーディオブロック毎に１回ずつ、たとえば、１フレーム当たり６回ずつ出現する。その後に、ステップ４において、指数が符号化形式でビットストリーム中に供給される。ビットストリームからのサイド情報を使用することにより、指数が復号化され、ステップ５において実行されるビット割当ルーチンへ送られる。ビット割当ステップは、オーディオの電力スペクトル密度がマスキング曲線と比較される心理音響モデルに基づく計算を含む。これらの計算は各仮数に割り当てられるビット数を明らかにする。
【００２７】
好ましい実施形態と共に後述されるように、獲得されたビット割当数は、仮数ブロックのサイズを決定または計算するために使用される。
【００２８】
粗く量子化された仮数は、ＡＣ−３データストリームの大半を構成する。仮数データは、ステップ６において、ビット割当ルーチンによって指定されるようなビットのグループを外すこと、すなわち、抽出することにより、アンパックされる。グループ化された仮数は、その後にグループ解除される。個々の符号化された仮数値は逆量子化された値に変換される。カップリングが使用されている間に、カップリングされたチャンネルの高周波数成分が、共通カップリングチャンネルおよび個々のチャンネルのカップリングコーディネイト（ｃｏｕｐｌｉｎｇ  ｃｏｏｒｄｉｎａｔｅｓ）を使用して、ステップ７で再構成される。オーディオブロック毎に、ダイナミックレンジがエンコーダによって規定され、この値に基づいて、デコーダはこのダイナミックレンジワードを使用して指数および仮数の大きさを修正する。
【００２９】
２チャンネルモードでは、エンコーダがステップ８によって示されるようにリマトリキシング（ｒｅｍａｔｒｉｘｉｎｇ）を利用するならば、和の値および差の値が左チャンネルおよび右チャンネルを抽出するためステップ８において使用される。ステップ９におけるダイナミックレンジ圧縮後、周波数領域係数は、ステップ１０において逆変換を使用して元の時間領域へ変換する準備ができている。時間サンプルの個別のブロックはステップ１１でウィンドウ化され、隣接するブロックが重ね合わされ、最終的な連続時間領域ＰＣＭオーディオ信号を再構成するため合算される。
【００３０】
しかし、ストリーム内のチャンネル数は、ユーザ施設におけるスピーカーの台数と一致しないかもしれない。このような場合、ステップ１２に示されるようなダウンミックス化は、チャンネルがユーザの施設におけるスピーカーの台数で再生できるようにストリーム内のチャンネルをミックスするために必要とされる。
【００３１】
最後に、ステップ１３において、ＰＣＭ出力が典型的に、サンプリングレートで、または、デジタル・アナログ変換器（ＤＡＣ）への相互接続のため適した形式で、または、他の形式でバッファに書き込まれる。
【００３２】
図３に示されたステップの系列は、ＡＣ−３オーディオストリームを復号化することができる複数の方法のうちの一つに過ぎないことに注意すべきである。たとえば、ステップ１２におけるダウンミックス化は、線形演算であるため、時間領域と周波数領域のいずれでも行うことができる。
【００３３】
さらに、図３のフローチャートはその中にループが隠されていることに注意すべきである。ステップ１、２、１１、１２および１３はフレーム毎に動作し、ステップ３−１０はオーディオブロック毎に反復する。よって、フレームＦの典型的な復号化シーケンスは、フレームＦ毎に１回ずつステップ１および２を実行し、その後に、１フレームのメディアブロックＭＢの個数、たとえば、ＡＣ−３フレームの６個のオーディオブロックに関して、ステップ３−１０を繰り返し、その後に、フレーム毎にステップ１１−１３を実行する。換言すると、第１のオーディオブロックに関するステップ６を処理している間、ステップ３は後続の第２のオーディオブロックに関して開始され得ない。
【００３４】
好ましい実施形態では、プロセスネットワーク内でステップ１−１３に対応するプロセスの独立した実行、すなわち、並行実行を可能にさせる解決策が提示される。
【００３５】
図４は好ましい実施形態によるＡＣ−３デコーダスキームの機能プロセスモデルを示す。このモデルは、先入れ先出しメモリ（ＦＩＦＯ）メモリ、シフトレジスタメモリなどを介して、互いに接続されたプロセスの集まりに基づいている。
【００３６】
図４の機能図には、図３に示された元々は逐次的なＡＣ−３復号化アルゴリズムから並列性を抽出する技術が提示されている。図４の機能図では、プロセスは楕円として示され、ＦＩＦＯは矢印として示されている。ここで注意すべきは、図４がプロセスのすべての詳細を示すものではないことである。たとえば、図４はポートおよびフォークプロセスを示さない。既に説明したように、ポートはプロセスをＦＩＦＯに接続するため使用される。フォークプロセスはトークンを複製するため必要とされる。これは、トークンに対して、１個のプロデューサと複数のコンシューマが存在するときに起こる。フォークプロセスが実行することは、その入力ＦＩＦＯからトークンを読み出し、トークンのコピーを複数の出力ＦＩＦＯに書き込むことだけである。ＦＩＦＯを介してプロセス間でトークンを通信する間に、トークンは、値への参照ではなく、値を表現する。このことは、２個のプロセスがデータを共有しなければならないならば、２個のプロセスは、データへのポインタを読み書きするのではなく、データをＦＩＦＯから読み書きすることにより明示的にデータを共有することを意味する。
【００３７】
同様に、プロセス間のＦＩＦＯを表現する矢印の完全なリストは図４に示されていない。図４においてすべてのＦＩＦＯの矢印を描くことは図の読みやすさのために実現可能ではない。
【００３８】
図４において、プロセス１、２および８は、それぞれ、図３のステップ１、２および８に対応し、プロセス５、６、および、９〜１２は図３のステップ４、５、および、１０〜１３に対応する。図３の「ＢＳＩ、サイド情報をアンパック」ステップ（ステップ３）は、２個のプロセス３および４、すなわち、「ＢＳＩ情報のアンパック（ｕｎｐ＿ｂｓｉ＿ｉｎｆｏ）」（プロセス３）と「オーディオ情報のアンパック（ｕｎｐ＿ａｕｄｉｏ＿ｉｎｆｏ）」（プロセス４）に分割されている。さらに、図３のステップ６、７および９、すなわち、「仮数をアンパック、グループ解除、逆量子化、ディザー」、「デカップリング」および「ダイナミックレンジ圧縮」は、単一のプロセス７、すなわち、プロセス「仮数の復号化（ｄｅｃｏｄｅ＿ｍａｎｔｓ）」に併合されている。これらの理由が以下に記載される。
【００３９】
図４の２個のプロセス３および４の代わりに、図３には、「ＢＳＩ、サイド情報プロセスをアンパック」の機能をカバーする単一のステップ３が存在した。図３の従来のスキームでは、ＡＣ−３フレームは以下の方法で解析された。第一に、フレームのヘッダ内にフレーム毎に１回ずつ出現するビットストリーム情報（ＢＳＩ）が復号化または解析される。その後に、第１のオーディオブロックのサイド情報が解析または復号化される。次のフレームのＢＳＩの解析を開始するため、ステップ３は、最初に、すべてのオーディオブロックのサイド情報を解析し終えるか、または、復号化し終えることが必要である。並行性を増大するため、第１のフレームのＢＳＩを解析または復号化し、その後に、次のフレームの始まりへジャンプすることが提案される。このようにして、第２のフレームのＢＳＩの解析または復号化が、第１のフレームのオーディオブロックの解析の終了を待つことなく開始される。
【００４０】
図４の好ましい実施形態によれば、図３のステップ３は２個のプロセス３および４に分割され、フレームのＢＳＩ情報はプロセス３でアンパックされ、オーディオブロックのオーディオサイド情報はプロセス４でアンパックされる。プロセス３は、したがって、フレーム毎に動作し、フレーム毎のＢＳＩ情報だけを解析または復号化し、一方、残りのフレームは、オーディオブロック毎に動作し、各オーディオブロックに格納されたサイド情報を解析するプロセス４へ渡される。
【００４１】
ＡＣ−３フレーム構造によれば、ＡＣ−３フレームのそれぞれは６個のオーディオブロックで構成される。各オーディオブロックは、また、パラメータ、パックされた指数および仮数ブロックで構成される。したがって、既に説明したように、仮数ブロックを飛び越し、次のオーディオブロックを解析し始めることが望ましい。このため、「分離点」が仮数ブロックと仮数ブロックとの間で特定されなければならない。この問題を解決するため、図２の２ステップの復号化アプローチが使用される。換言すると、図４のプロセス４（オーディオサイド情報のアンパック（ｕｎｐ＿ａｕｄｉｏ＿ｉｎｆｏ））は、最初に、第１のオーディオブロックのサイド情報をアンパックし、その後に、符号化された指数を解析し、プロセス５（指数の復号化（ｄｅｃｏｄｅ＿ｅｘｐ））へ送信し、ビット割当データを解析し、プロセス６（ビット割当（ｂｉｔ＿ａｌｌｏｃ））へ送信し、圧縮された仮数ブロックを解析し、プロセス７（仮数の復号化（ｄｅｃｏｄｅ＿ｍａｎｔｓ））へ送信し、その後に、第２のオーディオブロックに対しこの手順を繰り返す。要点は、このアプローチが情報を解析し、対応するプロセスへ送信するだけで、その後に、他のプロセッサ５〜７によって終了させられる第１のオーディオブロックの処理を待つことなく、後に続く第２のオーディオブロックへジャンプすることである。
【００４２】
上記の並行手順は、圧縮された仮数ブロックのサイズが既知であることを必要とする。このアルゴリズム的障害を克服するため、プロセス６を操作することが提案される。心理音響モデルを使用して、プロセス６は、第１の仮数に対し、仮数ブロックから何ビットが奪われるべきであるかを決定する。プロセス６は、この情報をビット割当ポインタ（ＢＡＰ）と呼ばれる変数に保存する。ＢＡＰは、次に、第１の仮数の圧縮された仮数ブロックからビットを取り除くためにプロセス７によって使用される。この仮数は、復号化され、さらなる処理のため配列に保存される。次に、第２の仮数に対するＢＡＰが、ビットストリームの圧縮された仮数ブロックからビットを取り除くためにプロセス７によって使用できるように計算される。ＢＡＰを検出または獲得し、その後に、ビットストリームからビットを取り除くためにＢＡＰを使用するこのプロセスは、第１のオーディオブロックに存在する全チャンネルのすべての仮数に対し繰り返される。第１のオーディオブロックのすべての仮数がビットストリームから取り除かれたとき、第２のオーディオブロックまたは系列内の次のオーディオブロックの解析若しくは復号化が進行する。
【００４３】
しかし、第１のオーディオブロックのすべてのＢＡＰが合計されるならば、この合計は、第１のオーディオブロックの圧縮された仮数ブロックのサイズを表現するであろう。したがって、秘訣は、この決定または計算されたＢＡＰの合計を、ＦＩＦＯ“ｆ＿ｓｉｚｅ＿ｏｆ＿ｂｌｋ”（図４中の点線矢印）を介して、プロセス４へ送信し、その結果、プロセス４がビットストリームからＢＡＰの合計に対応する個数のビットを「削り」、この圧縮された仮数ブロックをプロセス７へ送信できることである。このようにして、プロセス４は、第１のオーディオブロックの処理の終了を待つことなく、第２のオーディオブロックの解析を開始することが可能である。
【００４４】
上記アプローチでは、すべてのプロセスは、そのプロセスの計算を完了するために要求する必要かつ十分な情報だけを待つ。なお、これは、同様に、アルゴリズム的な操作が、ＹＡＰＩのような抽象度レベルで、非常に多数のサイクルを節約できる非常に優れた実施例である。図２をもう一度参照すると、したがって、図２の第１の段１０は図４のプロセス４に対応し、図２の第２の段２０は基本的にプロセス５〜７に対応することがわかる。
【００４５】
要約すると、メディアブロックのサイズがビットストリームからの情報の一部に基づいて最初に計算または決定される２ステップの復号化アプローチが提案される。このサイズ情報はメディアブロックのバイト数または長さを定める。サイズ情報は、次に、後の第２のメディアブロックおよび残りのビットストリームから第１のメディアブロックを切り取るかまたは抽出するため使用される。このステップは、実際の復号化ステップより少ない計算または処理を必要とする。第１のメディアブロックの標準的な復号化が次に進行し、一方、並列アーキテクチャの処理エレメントは、第１のメディアブロックの処理の終了を待つことなく、第１のステップで獲得されたサイズ情報を使用して第２のメディアブロックへ直ぐにジャンプすることが可能である。このようにして、基礎的なアーキテクチャは複数のブロックを同時に復号化することにより並列性を利用ことができるので、復号化時間が短縮される。
【００４６】
本発明は、上記の好ましいＡＣ−３の実施形態に限定されることがなく、可変長ブロックが処理されるどのような復号化装置または方法でも実施され得ることに注意すべきである。特に、ビットストリーム情報の適当な一部は、後に続くブロックに与えられた情報の少なくとも部分的に並行または並列である処理を可能にさせるように、どのような種類のブロックのサイズでも計算または導き出すために使用される。したがって、好ましい実施形態は特許請求の範囲の意図の範囲内で変化する。
【図面の簡単な説明】
【００４７】
【図１】本発明が適用されるメディアアプリケーションのフレームの典型的なビットストリーム構造を示す図である。
【図２】本発明による２ステップの復号化スキームの概略ブロック図である。
【図３】典型的なドルビーデジタル復号化スキームの概略フローチャートである。
【図４】好ましい実施形態によるドルビーデジタル復号化プロセスの概略機能図である。
【符号の説明】
【００４８】
１０  第１の段
２０  第２の段
２０−１〜２０−ｎ  復号化処理ユニット
１０２、１０４  ユニット
【図１】
2007526687.tif 000003
【図２】
2007526687.tif 000004
【図３】
2007526687.tif 000005
【図４】
2007526687.tif 000006
【国際調査報告】
2007526687.tif 000007
2007526687.tif 000008
2007526687.tif 000009