JP4807883B2 - 復号装置、デジタルテレビ装置、テレビ付き携帯電話、デジタルメディアプレーヤ、インターネットテレビ装置および復号方法 - Google Patents

復号装置、デジタルテレビ装置、テレビ付き携帯電話、デジタルメディアプレーヤ、インターネットテレビ装置および復号方法 Download PDF

Info

Publication number
JP4807883B2
JP4807883B2 JP2007229223A JP2007229223A JP4807883B2 JP 4807883 B2 JP4807883 B2 JP 4807883B2 JP 2007229223 A JP2007229223 A JP 2007229223A JP 2007229223 A JP2007229223 A JP 2007229223A JP 4807883 B2 JP4807883 B2 JP 4807883B2
Authority
JP
Japan
Prior art keywords
picture
decoding
time
processing time
pictures
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.)
Expired - Fee Related
Application number
JP2007229223A
Other languages
English (en)
Other versions
JP2009065274A (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.)
Sharp Corp
Original Assignee
Sharp 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
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2007229223A priority Critical patent/JP4807883B2/ja
Publication of JP2009065274A publication Critical patent/JP2009065274A/ja
Application granted granted Critical
Publication of JP4807883B2 publication Critical patent/JP4807883B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、復号装置、デジタルテレビ装置、テレビ付き携帯電話、デジタルメディアプレーヤ、インターネットテレビ装置および復号方法、特に動画像符号化データを復号する復号装置、デジタルテレビ装置、テレビ付き携帯電話、デジタルメディアプレーヤ、インターネットテレビ装置および復号方法に関する。
近年、MPEG(Moving Picture Experts Group)1、MPEG2、MPEG4、ITU−T(International Telecommunication Union Telecommunication Standardization:国際電気通信連合 電気通信標準化部門)勧告H.263、H.264等の動画像符号化方式が、DVD(Digital Versatile Disk)、デジタル放送、テレビ電話等、様々な装置に利用されるようになっている(特許文献1、非特許文献1参照)。これらの符号化方式が普及した理由としては、蓄積、放送、通信の何れのメディアにおいても、利用上問題となる程に巨大な動画像データのサイズを、1/30〜1/80にまで圧縮することが可能である点が挙げられる。これらの動画像符号化方式においては、その圧縮率を高めるための一技術として、動画を構成する静止画(以降、ピクチャと呼ぶ)間の相関を利用する「動き補償」の技術が用いられている。この「動き補償」の基本的な考え方を、以下に述べる。
説明のために図21を用いる。図21は、符号化あるいは復号処理中の現在のピクチャ1710と、現在のピクチャ1710より前に表示される過去のピクチャ1700と、現在のピクチャ1710より後に表示される未来のピクチャ1720とを、並べた図である。図21における現在のピクチャ1710の中の領域1715と過去のピクチャ1700中の領域1705とが似た画であったとすれば、領域1715は領域1705に少しだけ修正したものと考えることができる。その修正に必要なデータは、前記領域1705と領域1715の相関が高い程少なくて済む。そこで、現在のピクチャ1710の領域1715の符号化では、過去のピクチャ1700の領域1705の領域1715に対する相対位置と、領域1715と領域1705との差分データを求め、それらを符号化する。
そして、ピクチャ1710の領域1715の復号は、前記相対位置から得られる位置における過去のピクチャ1700の領域1705のデータに、前記差分データを加算することにより行う。つまり、「動き補償」を利用した動画像符号化方式で符号化されたストリームを復号する際には、復号するピクチャのストリームに加え、既に復号済みの、符号化時に使用した他のピクチャのデータが必要となる。また、現在のピクチャ1710の中の領域1715と未来のピクチャ1720の中の領域1725とが似た画であったときも、同様である。
ところで、前記の現在主流となっている動画像符号化では、ピクチャは、その符号化の方法によって、以下の3種類の符号化種別(ピクチャタイプ)に分類されている。それ自身の情報のみで符号化された、故にそれ自身の符号化ストリームのみから復号が可能なI(Intra:画面内予測)ピクチャ、過去のピクチャ1枚から動き補償予測を使用して符号化された、即ち、復号時には符号化の際に使用したピクチャ1枚を参照する必要があるP(Predictive:順方向予測)ピクチャ、過去と未来のピクチャ1枚もしくは2枚から動き補償予測を使用して符号化された、即ち、復号時には符号化の際に使用したピクチャ1枚もしくは2枚を参照する必要があるB(MPEG1/2/4、勧告H.263では、Bi-directional predictive(双方向予測)を意味し、勧告H.264では、Bi-predictive Prediction(双予測)を意味する)ピクチャの3種類である。Bピクチャについては、勧告H.264とそれ以前の動画像符号化規格で定義が異なるが、復号時のピクチャの参照枚数に限って言えば、最大2枚を参照するという点で共通である。なお、Pピクチャ及びBピクチャにも、Iピクチャと同様に、他のピクチャを参照しない部分が含まれることはある。
ここで、デジタルTVに用いられる動画像の復号装置の構成例を示した概略ブロック図を図22に示す。この復号装置は、ビデオデコーダ1800、メモリ1810、CPU1820、表示処理部1830、表示装置1840、オーディオデコーダ1850、チューナ1860、ストリーム処理部1870、バス1880、音声出力装置1890で構成されている。この例では、ストリーム処理部1870、CPU1820、メモリ1810、ビデオデコーダ1800、オーディオデコーダ1850、表示処理部1830が、バス1880に接続されて、バス1880を共有している。
以下、図22に示す動画像復号装置の動作を説明する。チューナ1860はデジタルTVチューナであり、受信した放送波を復調処理して、オーディオ、ビデオ、セクションその他の情報が格納されたデータ列(ストリーム)を取り出す。前記ストリームはストリーム処理部1870へと送られる。ストリーム処理部1870は、前記ストリームをビデオストリーム、オーディオストリーム、セクション等に分類し、それぞれメモリ1810へと書き込む。ビデオデコーダ1800は、前記ビデオストリームをメモリ1810から読み出し、復号処理を行って、その復号処理の結果であるピクチャデータをメモリ1810へと書き込む。PピクチャやBピクチャの復号処理時には、前記「動き補償」処理のために、復号処理済みのピクチャデータの参照が必要となるため、メモリ1810から前記復号処理済みのピクチャデータの読み出しが随時行われる。オーディオデコーダ1850は、前記オーディオストリームをメモリ1810から読み出し、復号処理を行って、その復号処理の結果であるオーディオデータを音声出力装置1890へと出力する。
CPU1820は、メモリ1810に格納されたプログラムを実行することで動作し、ユーザ操作等の外部イベントに対しての応答処理を行う。なお、CPU1820が実行するプログラムは、本動画像復号装置の起動時に、図22中に図示されない不揮発性メモリやネットワーク等からメモリ1810にロードされる。また、CPU1820は、前記セクションをメモリ1810から読み出し、データ放送や番組情報の復号を行い、復号結果の画像データをメモリ1810へと書き込む。表示処理部1830は、前記ビデオデコーダ1800がメモリ1810に書き込んだピクチャデータを読み出し、画質調整等の処理を行ったり、前記CPU1820がメモリ1810に書き込んだ画像データを拡大縮小するスケール調整等を行ったり、さらには、双方の重ね合わせ処理等を行って、表示装置1840へと出力する。なお、ビデオデコーダ1800、オーディオデコーダ1850、表示処理部1830の動作タイミングは、ストリーム中に含まれる時間パラメータに基づき、制御が行われる(復号結果表示/出力タイミングの制御方法は、例えば、非特許文献2、非特許文献3に記載されている)。
従って、上記図22に示したようなシステムでは、バス1880(ひいてはメモリ1810)は、ストリーム処理部1870、CPU1820、ビデオデコーダ1800、オーディオデコーダ1850、表示処理部1830が使用する帯域の合計を上回る帯域を持たねばならないことになる。なお、本明細書中において、「帯域」は「単位時間当たりのデータ転送量(=データ転送速度)」を意味するものとする。
一方で、ビデオデコーダ1800がメモリ1810に対するアクセスで使用する帯域は復号を行うピクチャタイプ毎に変化する。実際には、ビデオデコーダ1800がメモリ1810に対するアクセスで使用する帯域は、符号化時の動き補償処理でどれだけ他のピクチャを参照するかによって変動するが、各ピクチャタイプにおいて最も多く参照する(使用する帯域が多い)場合を図23に示す。
ビデオデコーダ1800がバス1880を介してメモリ1810に行うアクセスは、大きく3つに分類される。即ち、(1)メモリ1810からビデオストリームを読み出す(図23のストリーム読み出し1900、1920、1950)、(2)メモリ1810に復号結果のピクチャデータを書き込む(図23の書き込み1910、1930、1960)、(3)メモリ1810から参照用のピクチャデータを読み出す(図23の読み出し1940、1970、1980)である。
(1)のケースは、前記MPEG2等のデジタルの動画像符号化方式においては、符号化されたビデオストリームが、元画像の1/30〜1/80のサイズにまで圧縮されていることを考えると、(2)、(3)のケースに比べて、非常に少ない帯域となる(全ての種類のピクチャで同一の帯域という訳ではないが使用する帯域の総量からするとわずかであるということは共通する)。
(2)のケースは、Iピクチャ、Pピクチャ、Bピクチャの何れの場合でも復号結果のピクチャを書き込むので、必ず1ピクチャ分の書き込みが行われる。従って、いずれのタイプのピクチャでも同じ帯域が使用される。
(3)のケースは、PピクチャとBピクチャでのみ発生し、Pピクチャでは最大1ピクチャ分、Bピクチャでは最大2ピクチャ分の読み出しが行われる。
即ち、各タイプのピクチャの復号処理に使用される最大帯域を比較すると、Bピクチャが最も使用する帯域が多くなり、次がPピクチャ、最も少ない帯域で済むのがIピクチャとなる。
特開平8−212701号公報 大久保 榮監修、「H.264/AVC教科書」、株式会社インプレス 亀山 渉、花村 剛監修、「改訂版デジタル放送教科書(上)」、株式会社インプレス 藤原 洋著、「最新MPEG教科書」、アスキー出版局
以上述べたように、ビデオデコーダはピクチャタイプ毎に、メモリに対するアクセスで使用する帯域が変化する。従って、ビデオデコーダが接続されるバスやビデオデコーダが復号処理に使用するメモリには、この変化する帯域の最大値以上の帯域が要求される。該要求を満たすためには、高性能のメモリやバスを使用する必要があり、高コストとなってしまうという問題がある。
特に、これらのバスやメモリを、他のオーディオデコーダやCPU等のモジュールと共有する場合には、各々の行う処理でそれぞれ帯域が必要とされるため、前記バスやメモリに必要とされる帯域は、前記ビデオデコーダが必要とする最大の帯域に、前記ビデオデコーダ以外のモジュールが使用する帯域を加えた帯域となるため、さらに大きな帯域となってしまう。
また、デジタルTVのような機器において、これらのバスやメモリをCPU等のモジュールと共有する場合には、ビデオデコーダによる復号処理以外にも、外部からの非定常的に発生するイベント(例えばユーザの操作)に対する処理も行う必要があるが、ビデオデコーダが多くの帯域を使用する処理を行っている時は、ユーザの操作等の外部からもたらされるイベントに対する応答時間が長くなってしまう(ユーザの操作への応答性が悪くなる)という問題がある。
本発明は、このような事情に鑑みてなされたもので、その目的は、ビデオデコーダが復号処理を行う際に必要となるメモリに対するアクセスで使用する帯域、すなわち単位時間当たりのデータ転送量を抑えることで、低コスト化された復号装置、および、メモリをCPU等のモジュールと共有していても、ユーザ操作などの外部からのイベントに対して優れた応答性を得ることができる復号装置、デジタルテレビ装置、テレビ付き携帯電話、デジタルメディアプレーヤ、インターネットテレビ装置および復号方法を提供することにある。
この発明は上述した課題を解決するためになされたもので、本発明の復号装置は、動画像符号化データを復号する復号装置において、前記動画像符号化データを構成するピクチャ各々を最大参照画像数により分類したピクチャ種別の構成であって、前記動画像符号化データ中で連続するピクチャからなるピクチャ群における構成であるピクチャ種別構成を検出するピクチャ種別構成検出部と、前記各ピクチャ種別のピクチャの復号処理におけるメモリとの間の前記最大参照画像数に基づくデータ転送量と、前記検出したピクチャ種別構成とに基づき、前記ピクチャ群のピクチャ各々の復号処理におけるメモリとの間の単位時間当たりのデータ転送量が、時間方向に平準化されるように各ピクチャの基準復号処理時間を求める復号処理時間算出部と、前記ピクチャ群のピクチャを前記ピクチャ種別により参照画像数の多い第1ピクチャ群と参照画像数の少ない第2ピクチャ群とに分類するピクチャ分類部と、前記ピクチャ分類部が分類した第1ピクチャ群のピクチャ各々を構成する構成要素各々の参照画像数を検出する参照画像数検出部と、前記第1ピクチャ群のピクチャ各々を構成する構成要素のうち、当該構成要素の属するピクチャの最大参照画像数より前記参照画像数検出部が検出した参照画像数が少ない構成要素については、該構成要素の属するピクチャの1構成要素当たりの基準復号処理時間より短い時間を該構成要素の復号処理時間とし、残りの構成要素については、該構成要素の属するピクチャの1構成要素当たりの基準復号処理時間を該構成要素の復号処理時間とし、前記各構成要素の復号処理時間を合計した前記第1ピクチャ群の復号処理時間と、該第1ピクチャ群を構成するピクチャの前記基準復号処理時間の合計との差分である余剰時間を算出する余剰時間演算部と、前記算出した余剰時間を、前記ピクチャ群の後続のピクチャ群における第2ピクチャ群の復号処理時間に割り当てて、該第2ピクチャ群を構成するピクチャの復号処理時間を算出する第2ピクチャ群処理時間演算部とを具備することを特徴とする。
これにより、本発明の復号装置は、ピクチャ群のピクチャ各々の復号処理におけるメモリとの間の単位時間当たりのデータ転送量が時間方向に平準化されるようにピクチャ種別構成に基づき基準復号処理時間を求めるとともに、参照画像数の多い第1ピクチャ群のピクチャの構成要素のうち、当該構成要素の属するピクチャの参照画増数より参照画像数が少ない構成要素については、1構成要素当たりの基準復号処理時間より短い時間を該構成要素の復号処理時間として第1ピクチャ群の復号処理における余剰時間を算出し、この余剰時間を後続のピクチャ群の第2ピクチャ群の復号処理時間に割り当てるので、各ピクチャを復号処理する際の参照画像数が多いピクチャの単位時間当たりのデータ転送量を抑え、さらに、参照画像数が多いピクチャの構成要素の参照画像数が少ないときに、参照画像数が少ないピクチャの単位時間当たりのデータ転送量を抑えるので、低コスト化された復号装置、および、メモリをCPU等のモジュールと共有していても、ユーザ操作などの外部からのイベントに対して優れた応答性を得ることができる。
また、本発明の復号装置は、上述の復号装置であって、前記ピクチャ種別構成検出部は、前記動画像符号化データから同一のピクチャに関する提示時刻情報と復号時刻情報とを検出し、該ピクチャと前記動画像符号化データ中の並びが該ピクチャに続くピクチャであって、提示時刻が該ピクチャより前のピクチャからなるピクチャ群におけるピクチャ種別構成を、前記検出した提示時刻情報と復号時刻情報とに基づき算出することを特徴とする。
また、本発明の復号装置は、上述のいずれかの復号装置であって、前記余剰時間演算部は、前記ピクチャ分類部が分類した第1ピクチャ群のピクチャ各々を構成する構成要素のうち、当該構成要素の属するピクチャの最大参照画像数より参照画像数が少ない構成要素については、各ピクチャの復号処理時間を均等にしたときの1構成要素当たりの復号処理時間を該構成要素の復号処理時間とすることを特徴とする。
また、本発明の復号装置は、上述のいずれかの復号装置であって、前記ピクチャ種別は、最大参照画像数が2つのBピクチャと、最大参照画像数が1つまたは0のI/Pピクチャとの2種類であり、前記第1ピクチャ群は、Bピクチャからなり、前記第2ピクチャ群は、I/Pピクチャからなることを特徴とする。
また、本発明のデジタルテレビ装置は、上述のいずれかの項に記載の復号装置を具備することを特徴とする。
また、本発明のテレビ付き携帯電話は、上述のいずれかの項に記載の復号装置を具備することを特徴とする。
また、本発明のデジタルメディアプレーヤは、上述のいずれかの項に記載の復号装置を具備することを特徴とする。
また、本発明のインターネットテレビ装置は、上述のいずれかの項に記載の復号装置を具備することを特徴とする。
また、本発明の復号方法は、動画像符号化データを復号する復号装置における復号方法において、動画像符号化データを復号する復号装置における復号方法において、前記復号装置が、前記動画像符号化データを構成するピクチャ各々を最大参照画像数により分類したピクチャ種別の構成であって、前記動画像符号化データ中で連続するピクチャからなるピクチャ群における構成であるピクチャ種別構成を検出する第1の過程と、前記復号装置が、前記各ピクチャ種別のピクチャの復号処理におけるメモリとの間の前記最大参照画像数に基づくデータ転送量と、前記検出したピクチャ種別構成とに基づき、前記ピクチャ群のピクチャ各々の復号処理におけるメモリとの間の単位時間当たりのデータ転送量が、時間方向に平準化されるように各ピクチャの基準復号処理時間を求める第2の過程と、前記復号装置が、前記ピクチャ群のピクチャを前記ピクチャ種別により参照画像数の多い第1ピクチャ群と参照画像数の少ない第2ピクチャ群とに分類する第3の過程と、前記復号装置が、前記第3の過程にて分類した第1ピクチャ群のピクチャ各々を構成する構成要素各々の参照画像数を検出する第4の過程と、前記第1ピクチャ群のピクチャ各々を構成する構成要素のうち、当該構成要素の属するピクチャの最大参照画像数より前記第4の過程にて検出した参照画像数が少ない構成要素については、該構成要素の属するピクチャの1構成要素当たりの基準復号処理時間より短い時間を該構成要素の復号処理時間とし、残りの構成要素については、該構成要素の属するピクチャの1構成要素当たりの基準復号処理時間を該構成要素の復号処理時間とし、前記各構成要素の復号処理時間を合計した前記第1ピクチャ群の復号処理時間と、該第1ピクチャ群を構成するピクチャの前記基準復号処理時間の合計との差分である余剰時間を算出する第5の過程と、前記復号装置が、前記第5の過程にて算出した余剰時間を、前記ピクチャ群の後続のピクチャ群における第2ピクチャ群の復号処理時間に割り当てて、該第2ピクチャ群を構成するピクチャの復号処理時間を算出する第6の過程とを備えることを特徴とする。
この発明によれば、各ピクチャを復号処理する際の参照画像数が多いピクチャの単位時間当たりのデータ転送量を抑えるとともに、参照画像数が多いピクチャの構成要素の参照画像数が少ないときには、参照画像数が少ないピクチャの単位時間当たりのデータ転送量をも抑えるので、高速なバスやメモリを必要としない低コスト化された復号装置、および、メモリをCPU等のモジュールと共有していても、ユーザ操作などの外部からのイベントに対する応答性の優れた復号装置が得られる。
[第1の実施形態]
以下、本発明の第1の実施形態について、図1から図17を用いて説明する。
図1は本実施形態による復号装置であるデジタルTV370の構成を示す概略ブロック図である。デジタルTV370は、チューナ300、ストリーム処理部200、CPU310、復号制御部380、メモリ280、ビデオデコーダ230、オーディオデコーダ320、音声出力装置330、表示処理部340、表示装置350、バス360から構成される。図1に示すデジタルTV370は、ストリーム処理部200、CPU310、復号制御部380、ビデオデコーダ230、オーディオデコーダ320、表示処理部340といった各データ処理を行うブロックがバス360を介して、メモリ280を共有する構成となっている。
以下、デジタルTV370における復号処理の概要を説明する。まず、アンテナで受信した放送波がチューナ300に入力されると、チューナ300はこれを復調処理し、オーディオストリーム、ビデオストリーム、セクションその他の情報が格納されたストリームを取り出して、ストリーム処理部200へと送る。ストリーム処理部200は、入力されたストリームをビデオストリーム、オーディオストリーム、セクション等に分類し、それぞれメモリ280へと書き込む。
ビデオデコーダ230は、復号制御部380が生成した復号処理時間に基づいて、前記ビデオストリームをメモリ280から読み出し、復号処理を行って、その復号処理の結果であるピクチャデータをメモリ280へと書き込む。ビデオデコーダ230は、PピクチャやBピクチャの復号処理中には、「動き補償」処理のために、IピクチャまたはPピクチャの復号処理済みピクチャデータの参照が必要となるため、メモリ280から前記復号処理済みピクチャデータの読み出しを随時行う。
オーディオデコーダ320は、復号制御部380が生成した復号開始タイミング信号に基づいて、前記オーディオストリームをメモリ280から読み出し、復号処理を行って、その復号処理の結果であるオーディオデータを音声出力装置330へと出力する。音声出力装置330は、入力されたオーディオデータに従い、スピーカなどにより音声、楽音などを出力する。
復号制御部380は、ビデオデコーダ230が復号処理を行う際に用いる復号処理時間を生成し、ビデオデコーダ230に供給する。また、復号制御部380は、ビデオデコーダ230の復号結果であるピクチャデータの読み出しを開始するタイミングを示す信号を生成し、表示処理部340に提供する。復号制御部380は、オーディオの復号処理タイミングに関しても制御を行う。ビデオの表示タイミングに同期するように、オーディオの復号開始タイミング信号を生成し、オーディオデコーダ320に供給する。
CPU310は、メモリ280に格納されたプログラムを実行することで動作し、ユーザ操作等の外部イベントに対しての応答処理を行う。なお、CPU310が実行するプログラムは、デジタルTV370の起動時に、図1中に図示されない不揮発性メモリやネットワーク等からメモリ280にロードされる。また、CPU310は、前記セクションをメモリ280から読み出し、データ放送や番組情報の復号を行い、復号結果の画像データをメモリ280へと書き込む。
表示処理部340は、前記復号制御部380から指示されるタイミングに基づき、前記ビデオデコーダ230がメモリ280に書き込んだピクチャデータを読み出し、画質調整処理等を行った上で表示装置350へと出力する。その際、CPU310がメモリ280に書き込んだ画像データを拡大縮小するスケール調整等を施した上で、前述のピクチャデータに重ね合わせる処理等も行う。表示装置350は、前記表示処理部340から与えられたデータを表示する。
図2は、デジタルTV370におけるビデオの復号処理に関連した構成をより詳細に示すブロック図である。従って、図2では、オーディオ関連の処理ブロック(オーディオデコーダ320、音声出力装置330)やチューナ300、CPU310、表示装置350といったビデオの復号処理に直接関係のないブロックの図示を省略している。TV370のビデオ復号に関連した処理は、ストリーム処理部200、ビデオストリームバッファ210、ビデオ位相調整バッファ220、ビデオデコーダ230、フレームバッファ240、表示処理部340、復号処理時間演算部250、STC260、表示タイミング生成部270、復号タイミング生成部290から構成されている。
図2のビデオストリームバッファ210、ビデオ位相調整バッファ220、フレームバッファ240は、図3のメモリ280に含まれ、復号処理時間演算部250、STC260、表示タイミング生成部270、復号タイミング生成部290は復号制御部380に含まれる。
なお、図2では図示を省略しているが、メモリ280には、オーディオストリームを格納する領域が、復号制御部380には、オーディオの復号タイミング信号を生成する機能が含まれる。
また、図2においては、バス360は図示していない。バス360は、各処理ブロックがメモリを共有するため及び各処理ブロック同士がデータをやり取りするために必要なものであるので、図2においては、メモリ280と各ブロックを接続する矢印及び各ブロック同士を接続する矢印がバス360に相当する部分となる。
以下、図2を用いて、本発明による動画復号処理の流れを説明する。ここでは、前記ストリーム処理部200に入力される動画像符号化ストリームが、MPEG2−TS(Transport Stream)であるものとして説明する。
ストリーム処理部200は、前記入力された動画像符号化ストリームMPEG2−TSから、ビデオES(Elementally Stream:エレメンタリストリーム)、TS(Transport Stream)ヘッダ、ビデオESを格納したPES(Packetized Elementary Stream:パケット化エレメンタリストリーム)パケットのヘッダ部分(以下、「ビデオPESヘッダ」という)を抽出し、それぞれ、ビデオESをビデオストリームバッファ210と復号処理時間演算部250へ、TSヘッダをSTC260へ、ビデオPESヘッダを復号処理時間演算部250と表示タイミング生成部270と復号タイミング生成部290へと分配する。
ここで、前記ストリーム処理部200が各ブロックへと送るデータの内容について簡単に説明する。図3は、動画像符号化ストリームMPEG2−TSの構造を示す図である。動画像符号化ストリームMPEG2−TSは、ビデオストリーム、オーディオストリーム、データ放送、制御情報等の様々な要素を構成要素とすることができるが、図3は、ビデオストリームとオーディオストリームのみを含む動画像符号化ストリームMPEG2−TSを例示している。
図3において、TSパケットVであるパケットT300、T310、T330は、ビデオストリームを運ぶためのTSパケットであり、TSパケットAであるパケットT320、T340はオーディオストリームを運ぶためのTSパケットである。図3に例示する動画像符号化ストリームMPEG2−TSは、これらのTSパケットによって構成されている。TSパケットは固定長パケットであり、188バイトの長さを持つ。各TSパケットは、TSヘッダT350、T370、T390、T410とTSペイロードT360、T380、T400、T420に分割することができる。これらのTSヘッダT350、T370、T390、T410は、前記のストリーム処理部200によりSTC260へと送られる。
TSパケットVであるパケットT300、T310、T330とTSパケットAであるパケットT320、T340は、前記TSヘッダ内のパラメータによりビデオストリームを運ぶためのTSパケットであるかオーディオストリームを運ぶためのTSパケットであるかを判別することが可能である。前記TSペイロードには、ビデオストリームやオーディオストリームをPESパケット化したものが分割され、格納されている。即ち、TSパケットVであるパケットT310、T330のTSペイロードT360、T380には、ビデオPESパケットを分割したものが格納され、TSパケットAであるパケットT320、T340のTSペイロードT400、T420には、オーディオPESパケットを分割したものが格納されている。
PESパケットは、ビデオやオーディオの符号化されたデータであるES(エレメンタリストリーム)をパケット化したものであり、ビデオPESパケットは、ビデオPESヘッダ(T430、T450)とビデオES(T440、T460)とから構成され、オーディオPESパケットは、オーディオPESヘッダ(T470、T490)とオーディオES(T480、T500)とから構成される。
前記ビデオPESヘッダT430、T450は、ストリーム処理部200により復号処理時間演算部250、表示タイミング生成部270、復号タイミング生成部290に送られる。また、前記ビデオEST440、T460は、ストリーム処理部200によりビデオストリームバッファ210、復号処理時間演算部250へと送られる。図2は、ビデオの復号処理に関連した構成のみを抜き出したものであるため、前記オーディオPESヘッダT470、T490、及び、前記オーディオEST480、T500の送り先は、この図2には示されていない。
図2による動画像符号化ストリームMPEG2−TSの処理手順の説明に戻る。ビデオストリームバッファ210は、動画像符号化の規格によってその(最低)容量を定められたバッファである。例えばMPEG2では、VBV(Video Buffering Verifier)バッファに相当し、入力されたビデオESを蓄積し、ビデオESの入出力の速度差を吸収する役目を持つ。ビデオ位相調整バッファ220は、後述する、本実施形態による復号方法が必要とする復号開始時刻の最大遅延時間Eの時間だけビデオESを蓄積するためのバッファである。
ビデオストリームバッファ210に入力されたビデオESは、ビデオ位相調整バッファ220に空きがある限り、順次ビデオ位相調整バッファ220に移動させられる。図2では、利用目的の違いを明確にするために、ビデオストリームバッファ210とビデオ位相調整バッファ220を個別に設けているが、両者を一つのバッファにまとめた構成としてもよい。
復号処理時間演算部250は、入力されたビデオESとビデオPESヘッダから、ビデオデコーダ230が復号処理を行う際に用いるピクチャの画像構成要素毎の復号処理時間(復号処理速度でも同義)を演算する。復号処理時間の演算方法の詳細は後述する。本実施形態においては、前記画像構成要素はマクロブロックとしている。結果として得られた復号処理時間は、ビデオデコーダ230に供給される。
以下、復号処理時間演算部250の動作の詳細を図4〜12を用いて説明する。図4は、復号処理時間演算部250の構成を示す概略ブロック図である。復号処理時間演算部250は、図4に示すように、参照画像数検出部105、フレーム周期検出部110、解像度検出部115、処理ピクチャタイプ検出部120、P−P間フレーム数検出部125、Tmb演算部130、復号時間比演算部135、画像構成要素数計数部140、余剰時間演算部145、Bピクチャ処理時間演算部150、I/Pピクチャ処理時間演算部155、FIFO(First In First Out:先入れ先出し)書き込み制御部160、FIFO165、余剰時間演算時刻検出部170を具備する。
参照画像数検出部105、フレーム周期検出部110、解像度検出部115、処理ピクチャタイプ検出部120には、ストリーム処理部200からビデオESが入力される。P−P間フレーム数検出部125には、ストリーム処理部200からビデオPESヘッダが入力される。
以下、ビデオESの動画像符号化アルゴリズムがMPEG2であるとして、復号処理時間演算部250の動作を説明する。なお、本実施形態においては、1ピクチャは1フレームであるものとする。
最初に、MPEG2のビデオESの構成について簡単に説明する。図5はMPEG2のビデオESの構造を示す図である。図5からわかるように、MPEG2のビデオESは6層構造となっており、最上層がシーケンス層、次の第2層がGOP(Group Of Picture:グループオブピクチャ)層、第3層がピクチャ層、第4層がスライス層、第5層がマクロブロック層、第6層がブロック層となっている。
シーケンス層は、1つまたは複数のGOPを管理するための層であり、1つまたは複数のシーケンスヘッダと、1つまたは複数のGOPと、1つのシーケンスの終了を示すシーケンス終了コードとからなる。GOP層は、シーケンスへのランダムアクセスのための層であり、GOPヘッダとそれに続くIピクチャ(図中I)、Bピクチャ(図中B)、Pピクチャ(図中P)とからなる。GOP層は存在しないこともある。ピクチャ層は、符号化の基本単位であるピクチャを構成する層であり、ピクチャヘッダとそれに続くスライスとからなる。
スライス層は、エラー発生時の再同期単位のための層であり、スライスヘッダとそれに続くマクロブロックとからなる。マクロブロック層は、動き補償の単位を構成する層であり、マクロブロックヘッダとそれに続くブロックとからなる。ブロック層は、DCT(Discrete Cosine Transform:離散コサイン変換)処理等の符号化処理の基本単位を構成する層であり、ブロックデータからなる。
図4に戻り、フレーム周期検出部110は、入力されたビデオESから、動画のフレーム周期Tの算出を行う。前記ビデオESの最上層、シーケンス層のシーケンスヘッダには、frame_rate_code、frame_rate_extension_n(以下、「FREn」という)、frame_rate_extension_d(以下、「FREd」という)というパラメータが含まれており、これらからフレームレートFを求めることが可能である。具体的には、frame_rate_codeを図6に示したframe_rate_codeの各値とframe_rate_value(以下、「FRV」という)との対応関係を格納した表を用いて変換することにより、FRVを求め、これを以下の式(1)に代入することにより、フレームレートFを求める。
Figure 0004807883
なお、対象とするMPEG2プロファイルにおいて、frame_rate_extension_n及びframe_rate_extension_dが0と規定されている場合や、復号しようとするビデオESにframe_rate_extension_nやframe_rate_extension_dが含まれていない場合には、以下の式(1)’を用いてフレームレートFを求める。
F=FRV…(1)’
フレーム周期検出部110は、以上のように式(1)あるいは式(1)’を用いて求めたフレームレートFの逆数を取り、フレーム周期Tを求め、前記フレーム周期TをP−P間フレーム数検出部125及びTmb演算部130へと出力する。この出力値は、新たにシーケンスヘッダを検出し、フレーム周期Tを算出し直すまで保持される。
解像度検出部115は、入力されたビデオESから、水平方向解像度HSと垂直方向解像度VSを検出する。前記ビデオESの最上層、シーケンス層のシーケンスヘッダには、horizontal_size_value、horizontal_size_extension、vertical_size_value、vertical_size_extensionというパラメータが含まれており、解像度検出部115は、前者の2つのパラメータから水平方向解像度HSを、後者の2つのパラメータから垂直方向解像度VSを得る。解像度検出部115は、得られた水平方向解像度HS、垂直方向解像度VSをTmb演算部130へと出力する。この出力値は、新たにシーケンスヘッダを検出し、水平方向解像度HS、垂直方向解像度VSを算出し直すまで保持される。
処理ピクチャタイプ検出部120(ピクチャ分類部)は、現在復号処理時間演算部250に入力されているビデオESのピクチャタイプが、最大参照画像数が0であるIピクチャ、最大参照画像数が1であるPピクチャ、最大参照画像数が2であるBピクチャのいずれであるかを検出する。図5に示したビデオESの第三層、ピクチャ層のピクチャヘッダ内には、ピクチャタイプを示すパラメータpicture_coding_typeが含まれているので、処理ピクチャタイプ検出部120は、このパラメータを用いて検出する。処理ピクチャタイプ検出部120は、検出結果のピクチャタイプPTを、参照画像数検出部105及び画像構成要素計数部140へ出力する。この出力値は、新たにピクチャヘッダを検出し、そのピクチャタイプPTを得るまで保持される。
参照画像数検出部105は、入力されたビデオESから、Bピクチャについて、各ピクチャの画像構成要素である各マクロブロックの参照画像数Rfmbを検出する。図5に示したビデオESの第5層、すなわちマクロブロック層のマクロブロックヘッダには、macroblock_typeというパラメータが含まれており、参照画像数検出部105は、このパラメータから参照画像の数を検出する。
ところで、パラメータmacroblock_typeは、ピクチャタイプによって符号化テーブルが変化するので、復号するためにはピクチャタイプの特定が必要である。一方で、本実施形態においては、前記参照画像数検出部105は、ピクチャタイプがBピクチャである場合においてのみ、参照画像数Rfmbの検出を行えば良いので、処理ピクチャタイプ検出部120が検出した前記ピクチャタイプPTがBピクチャを示す時、参照画像数Rfmbの検出を行って、その検出結果を画像構成要素数計数部140へと送る。その際、参照画像数検出部105は、参照画像数Rfmbの値を送ったことを示すトリガ信号も画像構成要素計数部140に対し出力する。なお、ピクチャタイプPTがBピクチャを示す時のみ、参照画像数Rfmbの検出を行う場合では、参照画像数検出部105は、Bピクチャの復号のみが行えれば良いので、Bピクチャ用の復号処理モジュールのみを備えていれば良い。
P−P間フレーム数検出部(ピクチャ種別構成検出部)125は、入力されたビデオPESヘッダ、フレーム周期Tから、P(またはI)ピクチャから次のP(またはI)の直前ピクチャまでのフレーム数(以下、「P−P間フレーム数」という)Mを検出する。
ここで、具体的なP−P間フレーム数Mの求め方について述べる。P−P間フレーム数Mは、ビデオPESヘッダ内に記載されているパラメータを用いて算出する。図7にPESヘッダの基本構造を示す。図7に示した基本構造は、ビデオPESヘッダでもオーディオPESヘッダでも同一である。
まず、P−P間フレーム数検出部125は、ビデオPESヘッダのうち、図7の符号P645で示したPTS DTSフラグが“11”(この時、PTS(Presentation Time Stamp;提示時刻情報)、DTS(Decoding Time Stamp;復号時刻情報)を両方共含むPESヘッダであることを示す)であるビデオPESヘッダを検出する。そして、P−P間フレーム数検出部125は、検出したビデオPESヘッダから、提示時刻情報PTS(P661)と復号時刻情報DTS(P662)を抽出する。そして、P−P間フレーム数検出部125は、これら提示時刻情報PTS、復号時刻情報DTSと、フレーム周期検出部110から送られてきたフレーム周期Tを、以下の式(2)に代入することにより、P−P間フレーム数Mを求める。
Figure 0004807883
図8は、式(2)によるP−P間フレーム数Mの算出を説明した図である。図8は、復号処理による遅延時間が0、即ち、復号処理と同時に表示を行うことが可能である理想的なビデオデコーダにビデオESが入力された際の、前記理想的なビデオデコーダにより復号処理が行われる期間と復号結果が表示される期間を示した図である。なお、この図8では、提示時刻情報PTSと復号時刻情報DTSにより復号処理及び表示処理のタイミングが制御されていることを前提としている。
上段の符号800、805、810、815、820、825が示す矩形の横方向の幅は、各々、前記理想的なビデオデコーダが、入力されたビデオESを1ピクチャ分復号処理する復号処理期間を示している。但し、符号800、805、810、815、820、825の復号処理期間は、復号処理に使用可能な期間であるということを示しているのであり、その期間全てを復号処理に使用しなければならないということではない。この復号処理期間800、805、810、815、820、825を表す矩形中の符号(I1、B2、B3、P4、B5、B6)は、アルファベット部が復号処理中のピクチャタイプを示し、数字部がその復号処理順を示している。
また、下段の符号830、835、840、845、850、855が示す矩形の横方向の幅は前記入力されたビデオESの復号結果を表示する表示処理期間を示しており、中の符号(B2、B3、I1、B5、B6、P4)は、上段の復号処理期間800〜825内の符号と対応している。図の最下部に記されている符号DTS1、DTS4およびPTS1〜PTS6は、数字部分の一致するピクチャに付けられている提示時刻情報PTS、復号時刻情報DTSが指し示す時刻を表している。例えば、DTS1は、ピクチャI1の復号時刻情報DTSを、PTS2は、ピクチャB2の提示時刻情報PTSを表している。なお、ピクチャの復号処理順と表示処理順が異なる理由については、非特許文献2、非特許文献3に記載されている。
この図8から、あるP(またはI)ピクチャの提示時刻情報PTSは、次のP(またはI)ピクチャの復号時刻情報DTSと一致することがわかる(例えばPTS1とDTS4は一致する)。従って、あるP(またはI)ピクチャの復号処理開始から(例えばDTS1)、表示開始まで(例えばPTS1=DTS4)の時間をフレーム周期Tで割ることによりP−P間フレーム数Mが求められることがわかる。P−P間フレーム数検出部125は、このようにP−P間フレーム数を算出することで、提示時刻情報PTSと復号時刻情報DTSとが付されたI/Pピクチャに続くBピクチャであって、提示時刻が該I/Pピクチャより前のBピクチャまでの連続するピクチャからなるピクチャ群におけるピクチャ種別の構成を検出しているとも言える。
図4に戻り、P−P間フレーム数検出部125は、このように式(2)を用いて求めたP−P間フレーム数Mを、復号時間比演算部135と余剰時間演算時刻検出部170へと出力する。P−P間フレーム数検出部125は、このP−P間フレーム数Mの出力値を、新たな演算結果が得られるまでは保持する。また、P−P間フレーム数検出部125は、復号時間比演算部135に対しては、P−P間フレーム数Mの値が更新された(結果が同一値であったとしても、前記PTS DTSフラグが“11”であるようなビデオPESヘッダを検出した場合には更新されたと見做す)ことを示すトリガ信号も送る。
Tmb演算部130は、解像度検出部115から与えられる水平方向解像度HS、垂直方向解像度VSから1フレーム内のマクロブロック数MBを求め、さらに、前記1フレーム内のマクロブロック数MBとフレーム周期検出部110から与えられるフレーム周期Tより、画像構成要素(=マクロブロック)1つ当たりの表示時間であるマクロブロック表示時間Tmbを求める。
先ずは、1フレームに含まれるマクロブロックの数MBを求める。Tmb演算部130は、式(3)を用いて、前記水平方向解像度HS、垂直方向解像度VSから、マクロブロック数MBを算出する。
Figure 0004807883
Tmb演算部130は、マクロブロック数MBを、余剰時間演算時刻検出部170及びI/Pピクチャ処理時間演算部155へ出力する。
次に、Tmb演算部130は、マクロブロック数MBとフレーム周期Tを、次の式(4)に代入してマクロブロック表示時間Tmbを算出する。
Figure 0004807883
Tmb演算部130は、求めたマクロブロック表示時間Tmbを、余剰時間演算部145、I/Pピクチャ処理時間演算部155、Bピクチャ処理時間演算部150へ出力する。マクロブロック数MB、マクロブロック表示時間Tmbは共に、入力値である水平方向解像度HS、垂直方向解像度VS、フレーム周期T値の変化に応じて、随時値が変化する。
復号時間比演算部(復号処理時間算出部)135は、P−P間フレーム数Mが更新されたことを示すトリガ信号を受けると、前記P−P間フレーム数Mを用いて、IまたはPピクチャの基準復号時間比TRpと、Bピクチャの基準復号時間比TRbを算出する。
ここで、基準復号時間比TRp、TRbについて説明をする。
図9は、各ピクチャの復号処理時間を均等にした場合の、Pピクチャ、Bピクチャにおける最大使用帯域を表した図である。図中の矩形は、1ピクチャ分のデータ転送の総量を示しており、その高さは使用する帯域を、幅は使用する時間を示している。復号処理時間を均等にしたときは、1ピクチャの表示時間の間に1ピクチャの復号を行うため、PピクチャもBピクチャでも復号時間はTとなっている。
図9は、最も帯域が使用される場合を示しており、Pピクチャの復号では、主として、復号結果を書き込むために1ピクチャ分、参照画像を読み出すために1ピクチャ分のデータ転送を行うので、前記矩形2つ分の高さとなるBWpという帯域が必要とされる。Bピクチャの復号では、主として、復号結果を書き込むために1ピクチャ分、参照画像を読み出すために2ピクチャ分のデータ転送を行うので、前記矩形3つ分の高さとなるBWbという帯域が必要とされる。
従って、復号処理時間を均等にしたときは、ビデオストリームの復号にBWbという帯域が必要になる。
ここで、Pピクチャの復号に必要な帯域が、Bピクチャの復号に必要な帯域より少ないことを考えると、これらの復号のための時間配分を変えれば、ビデオストリームの復号に必要な帯域をBWbよりも低く抑えることが可能である。図9に示されたような復号処理における使用帯域が最大である場合に、Pピクチャから次のPピクチャの直前のBピクチャまでの間で、帯域を平準化したときの、Pピクチャ、Bピクチャにおける使用帯域を表した図が図10である。図10中の矩形は、形状が異なっていても、全て1ピクチャ分のデータ転送量を表している、つまり同一面積である。
P−P間フレーム数Mが得られれば、Pピクチャ1枚に対するBピクチャの枚数がM−1枚と求められるため、P−P間フレーム数Mを用いることにより、Pピクチャの復号に必要な最大帯域とBピクチャの復号に必要な最大帯域が同じBWaveになるような、Pピクチャ、Bピクチャの復号時間も得ることができる。
この時のPピクチャ復号時間と、復号処理時間を均等にしたときにおける1ピクチャの復号時間(=1ピクチャの表示時間)Tとの比がPピクチャ基準復号時間比TRpであり、Bピクチャ復号時間と、復号処理時間を均等にしたときにおける1ピクチャの復号時間(=1ピクチャの表示時間)Tとの比がBピクチャ基準復号時間比TRbである。
本実施形態においては、使用する帯域が少ないピクチャに関しては復号時間を短くし(復号速度を速め)、使用する帯域が多いピクチャに関しては復号時間を長くする(復号速度を遅める)という操作を、ピクチャ毎、マクロブロック毎にそれぞれ行うが、まず、ピクチャタイプに応じて、ピクチャ毎の復号時間(復号速度)を決めるのが復号速度比演算部135ということになる。
図9のように、PピクチャもBピクチャも使用帯域が最大になるような場合では、このPピクチャ基準復号時間比TRp及びBピクチャ基準復号時間比TRbを用いることにより、ビデオデコーダ230の使用帯域を時間方向に平準化できる。
Pピクチャ基準復号時間比TRpとBピクチャ基準復号時間比TRbを求める式は、それぞれ、式(5)、(6)になる。
Figure 0004807883
復号時間比演算部135は、式(5)、(6)を用いて、前記P−P間フレーム数MからPピクチャ基準復号時間比TRp、Bピクチャ基準復号時間比TRbを算出した後、Pピクチャ基準復号時間比TRpとその算出終了を示すトリガ信号をI/Pピクチャ処理時間演算部155へと送り、Bピクチャ基準復号時間比TRbとその算出終了を示すトリガ信号を余剰時間演算部145及びBピクチャ処理時間演算部150へと送る。
画像構成要素数計数部140は、Bピクチャにおける参照画像数Rfmbの値が2のマクロブロックの数と、参照画像数Rfmbの値が1以下のマクロブロックの数を各々計数する。参照画像数Rfmbの値が2のマクロブロックの数をマクロブロック数MBt、参照画像数Rfmbの値が1以下のマクロブロックの数をマクロブロック数MBoとする。
画像構成要素数計数部140は、参照画像数検出部105から、参照画像数Rfmbを送ったことを示すトリガ信号を受けると、参照画像数Rfmbの値を確認し、参照画像数Rfmb=2の場合にはマクロブロック数MBtを、参照画像数Rfmb≦1の場合にはマクロブロック数MBoを1だけ増分する。また、画像構成要素数計数部140は、処理ピクチャタイプ検出部120から送られてきたピクチャタイプPTがBピクチャからP(またはI)ピクチャに変化したことを検出すると、その時、マクロブロック数MBt、MBoを0に初期化する。従って、Bピクチャが連続した場合には、マクロブロック数MBt、MBoは、連続するBピクチャ中の、各々の条件に適合するマクロブロックの総数になる。
画像構成要素数計数部140は、マクロブロック数MBoを、余剰時間演算部145へ、マクロブロック数MBo、MBtを、余剰時間演算時刻検出部170へと出力する。画像構成要素数計数部140は、余剰時間演算時刻検出部170へは、マクロブロック数MBo、MBtのいずれかが更新されたことを示すトリガ信号も出力する。
なお、上記では、参照画像数Rfmb=2と参照画像数Rfmb≦1という条件で分けて、それぞれのマクロブロックの数を計数する方法を説明したが、参照画像数Rfmb=2、参照画像数Rfmb=1、参照画像数Rfmb=0の時を個別に計数するという方法や、参照画像数Rfmb≧1と参照画像数Rfmb=0という条件で分けて計数する方法等を用いることができる。Bピクチャ処理時間演算部150やビデオデコーダ230における、復号時間を可変する条件と対応する値を計数する。
余剰時間演算時刻検出部170は、余剰時間演算部145が余剰時間Toddを算出するタイミングを検出する。余剰時間演算時刻検出部170は、Tmb演算部130から与えられる1フレーム内のマクロブロック数MB、P−P間フレーム数検出部125から与えられるP−P間フレーム数M、画像構成要素数計数部140から与えられるMBo、MBtが次の(7)式を満たす時、余剰時間演算部145に対し、トリガ信号を出力する。
Figure 0004807883
余剰時間演算部145は、余剰時間演算時刻検出部170からのトリガ信号を受けたら、画像構成要素数計数部140から与えられるマクロブロック数MBoと、復号時間比演算部135から与えられるBピクチャ基準復号時間比TRbと、Tmb演算部130から与えられる1マクロブロック表示時間Tmbとを用いて、余剰時間Toddを算出する。
ここで、余剰時間Toddの意味するところに関して説明しておく。
本実施形態のビデオデコーダ230は、復号処理時の使用帯域を平準化するために、2つの方法を用いて復号処理時間を変化させる。1つ目は、各ピクチャの最大参照画像数に基づいて使用帯域が平準化されるようにする、復号時間比演算部135で算出した基準復号時間比TRp、TRbを用いる方法で、ピクチャ毎に復号処理時間を変化させる方法である。この1つ目の方法では、最大参照画像数が2つであるBピクチャに割り当てる復号処理時間を多くし、最大参照画像数が1のPピクチャや0のIピクチャに割り当てる復号処理時間を少なくすることにより使用帯域を平準化させる。しかし、この1つ目の方法では、Bピクチャを構成する多くのマクロブロックの参照画像数が1つまたは0であった場合に、減らす必要のないBピクチャの使用帯域が削減され、その削減分だけ、I、Pピクチャの使用帯域が大きくなってしまうことがある。
2つ目は、マクロブロック毎に復号処理時間を変化させる方法である。この2つ目の方法は、Bピクチャの復号処理を行う際に、参照画像数が少ないマクロブロックでは復号時間比TRbに基づく復号処理時間よりも復号処理時間を短縮するよう制御することにより、全てのマクロブロックの復号処理時間を基準復号時間比TRbに基づく復号処理時間とする場合よりも短い時間でBピクチャの復号を完了させ、その短縮された時間を次のP(またはI)ピクチャの復号時間として使うという方法である。余剰時間Toddは、参照画像数が少ないマクロブロック1つにおいて短縮される時間を、Bピクチャが連続する間で累積加算(参照画像数が少ないマクロブロックの数と積算)したものとする。
続いて、このマクロブロック毎に参照画像数の数に応じて復号時間を変化させる方法について述べる。
ビデオデコーダ230の使用する帯域を平準化しようとした時、参照画像数が多い場合においては、使用帯域を低く抑えるには、可能な限り復号時間を長くとることが望ましい。一方、参照画像数が少ない場合においては、参照画像数が多い場合の使用帯域を越えない範囲で復号時間を短縮することが望ましい。実際には、ストリーム中に参照画像数が異なるマクロブロックがどのような比率で、どのような順序で存在するかによって、使用帯域を平準化するための最適な復号時間は異なってくる。また、コンテンツの種別等の条件によっては、動的に前記参照画像数による復号時間を変更することで高い効果が得られるというケースも考えられる。しかし、基本的に効果が得られる条件は、(参照画像が多い場合の復号時間)>(参照画像が少ない場合の復号時間)である。これは、(参照画像数2の場合の復号時間)>(参照画像数1の場合の復号時間)>(参照画像数0の場合の復号時間)でも同義である。
本実施形態においては、参照画像数Rfmb=2の時には、該マクロブロックの復号時間をBピクチャ基準復号時間比TRb×マクロブロック表示時間Tmbとし、参照画像数Rfmb≦1の時には、その復号時間を1×マクロブロック表示時間Tmbとするものとして、以下、動作を説明する。
Bピクチャ復号時の、全てのマクロブロックの復号処理時間を基準復号時間比TRbに基づく復号処理時間とする方法と、本実施形態における復号方法との、画像構成要素(マクロブロック)の復号処理時間の比較を図11に示す。図11はBピクチャ(1ピクチャとは限らない)に含まれるn個のマクロブロックの処理時間を示している。
前述の1つ目の方法、すなわち基準復号時間比TRp、TRbのみで復号処理時間を制御する方法では、全てのマクロブロックの処理にTRb×Tmbの時間を使うので、n個のマクロブロックを処理するには、TRb×Tmb×nの時間を要する。一方、本実施形態においては、Bピクチャの復号処理において、参照画像数が多い(Rfmb=2)マクロブロックについては、これらのマクロブロックの処理に基準復号時間比TRp、TRbによる方法と同じ時間を使うが、参照画像数が少ない(Rfmb≦1)マクロブロックについては、1×Tmb時間で復号処理を行うという制御も行う。このため、参照画像数が多い(Rfmb=2)マクロブロックの数をMBt、参照画像数が少ない(Rfmb≦1)マクロブロックの数がMBoとするとき、n(=MBt+MBo)個のマクロブロックを処理するのに要する時間Tnは以下の式(8)で表される。
Figure 0004807883
従って、本実施形態による復号装置がBピクチャ内のn個のマクロブロックを処理する時間は、基準復号時間比TRp、TRbによる方法のみを用いた復号装置に比べて、式(9)で表される余剰時間Toddだけ短くなることになる。
Figure 0004807883
余剰時間演算部145は、求めたToddをI/Pピクチャ処理時間演算部155へと送る。
Bピクチャ処理時間演算部150は、復号時間比演算部135からトリガ信号を受けたら、復号時間比演算部135から与えられるTRbとTmb演算部130から与えられるTmbから、ビデオデコーダ230がBピクチャを復号する際に1マクロブロック分の処理に使用する時間を演算する。
既に述べたように、本実施形態のビデオデコーダ230は、Bピクチャの復号時、マクロブロック毎に参照画像数を検出し、その参照画像数に応じて復号時間を可変する。そこで、Bピクチャ処理時間演算部150は、前記参照画像数に応じた復号時間を全て算出しなければならない。これは、画像構成要素数計数部140が、画像構成要素(マクロブロック)数を分別し、計数する条件と対応する。本実施形態においては、画像構成要素数計数部140が、参照画像数Rfmb≦1の時と、参照画像数Rfmb=2の時の2種類の条件各々を満たすマクロブロック数MBoとMBtを計数している。従って、Bピクチャ処理演算部150は、マクロブロック数MBoに対応する参照画像数Rfmb≦1の時の1マクロブロック処理時間Tmbb1と、マクロブロック数MBtに対応する参照画像数Rfmb=2の時の1マクロブロック処理時間Tmbb2を算出する。Bピクチャ処理演算部150は、1マクロブロック処理時間Tmbb1、Tmbb2を、各々、式(10)、(11)にて算出する。
Figure 0004807883
Bピクチャ処理時間演算部150は、演算結果の1マクロブロック処理時間Tmbb1、Tmbb2を、FIFO書き込み制御部160へFIFO書き込みトリガ信号と共に送る。
I/Pピクチャ処理時間演算部(第2ピクチャ群処理時間演算部)155は、復号時間比演算部135からトリガ信号を受けると、復号時間比演算部135から与えられる基準復号時間比TRp、Tmb演算部130から与えられるマクロブロック数MB、マクロブロック表示時間Tmb、余剰時間演算部145から与えられる余剰時間Toddから、ビデオデコーダ230がP(またはI)ピクチャを復号する際に1マクロブロック分の処理に使用する時間であるI/Pピクチャの1マクロブロック処理時間Tmbpを式(12)により算出する。
Figure 0004807883
すなわち、I/Pピクチャ処理時間演算部155は、余剰時間演算部145が算出した余剰時間Toddを、余剰時間Toddの算出対象となったBピクチャの後続のI/Pピクチャの復号処理時間として割り当てた上で、I/Pピクチャの復号処理時間を算出する
I/Pピクチャ処理時間演算部155は、算出結果のP(またはI)ピクチャの1マクロブロック処理時間Tmbpを、FIFO書き込み制御部160へFIFO書き込みトリガ信号と共に送る。
FIFO書き込み制御部160は、Bピクチャ処理時間演算部150とI/Pピクチャ処理時間演算部155から与えられる1マクロブロック処理時間Tmbp、Tmbb1、Tmbb2の各データをFIFO165に書き込む。
FIFO書き込み制御部160は、このFIFO165への書き込みを、I/Pピクチャ処理時間演算部155、Bピクチャ処理時間演算部150から送られてくるトリガ信号をトリガとして行う。具体的には、前記2つのトリガ信号のどちらか遅い方を利用して、1マクロブロック処理時間Tmbp、Tmbb1、Tmbb2をまとめて書き込むようにしてもよいし、I/Pピクチャ処理時間演算部155からのトリガ信号により1マクロブロック処理時間Tmbpを書き込み、Bピクチャ処理時間演算部150からのトリガ信号により1マクロブロック処理時間Tmbb1とTmbb2を書き込むようにしてもよい。但し、後者の場合には、前記2つのトリガ信号の発生順が常に同じであることが必要で、そうでない場合には、FIFO165にI/Pピクチャ用のバッファとBピクチャ用のバッファを別個に設ける等、FIFO165において1マクロブロック処理時間Tmbp、Tmbb1、Tmbb2の各パラメータを判別できるような仕組みが必要となる。
FIFO165は、いわゆるFIFOバッファであり、先に書き込んだデータが先に読み出されるバッファである。本実施形態では、FIFO165の容量は、ビデオストリームバッファ210、ビデオ位相調整バッファ220に蓄積され得るビデオストリーム中に、最大存在しうるPTS DTSフラグ=“11”を満たすビデオPESヘッダの個数分の1マクロブロック処理時間Tmbp、Tmbb1、Tmbb2が格納できるだけあれば良い。
以上、復号処理時間演算部250の内部で行われる処理の動作を個々に説明してきたが、ここで、全体の処理の流れについて説明する。
図12は、復号処理時間演算部250内の各処理の処理手順を示した図である。
図中の最上段の矩形列1100、1102、1104、…1146は復号処理時間演算部250に入力される動画像符号化ストリームMPEG2−TSを示している。矩形列1100、1102、1104、…1146のうち、1100はシーケンスヘッダを示し、1102、1116、1130、1144はビデオPESヘッダを示し、1104、1118、1132、1146はピクチャヘッダを示し、1106、1120、1134はスライスヘッダを示し、1108、1112、1122、1126、1136、1140はマクロブロックヘッダを示し、1110、1114、1124、1128、1138、1142はブロックデータを示す。
なお、図12に示す動画像符号化ストリームMPEG2−TSは、復号処理時間演算部250の動作の説明に必要な要素のみを示したものとなっている。
先ず、シーケンスヘッダ1100が復号処理時間演算部250に入力されると、復号処理時間演算部250は、フレーム周期T、水平方向解像度HS、垂直方向解像度VSを求め、さらにそれらから1フレーム内のマクロブロック数MBとマクロブロック1つ当たりの表示時間であるマクロブロック表示時間Tmbを求める。その方法は、フレーム周期検出部110、解像度検出部115、Tmb演算部130の動作の説明で述べた通りである。
次に、PTS DTSフラグ=“11”を満たすビデオPESヘッダ1102がP−P間フレーム数検出部125に入力されると、復号処理時間演算部250は、同ビデオPESヘッダ内の提示時刻情報PTS、復号時刻情報DTSを抽出し、これらとシーケンスヘッダ1100から求めたフレーム周期Tを用いて、P−P間フレーム数Mを求める。さらに、復号時間比演算部135は、P−P間フレーム数MからP(またはI)ピクチャの基準復号時間比TRpと、Bピクチャの基準復号時間比TRbを求める。基準復号時間比TRpとTRbが求まったら、I/Pピクチャ処理時間演算部155は、その時点で得られている余剰時間Toddと、基準復号時間比TRpと、マクロブロック表示時間Tmbと、1フレーム内のマクロブロック数MBとを用いて、P(またはI)ピクチャを復号する際に1マクロブロック分の処理に使用する1マクロブロック処理時間Tmbpを求める。
また、基準復号時間比TRbとマクロブロック表示時間Tmbを用いて、Bピクチャを復号する際に1マクロブロック分の処理に使用する1マクロブロック処理時間Tmbb1、Tmbb2を、Bピクチャ処理時間演算部150が求める。なお、I/Pピクチャ処理時間演算部155は、1マクロブロック処理時間Tmbpを求める際に、前記PTS DTSフラグ=“11”であるビデオPESヘッダが、入力される動画像符号化ストリームMPEG2−TS中最初のものであり、該ストリームについて余剰時間Toddを未算出のときには、余剰時間Todd=0として1マクロブロック処理時間Tmbpを求める。
P−P間フレーム数M、P(またはI)ピクチャの基準復号時間比TRpと、Bピクチャの基準復号時間比TRb、P(またはI)ピクチャを復号する際の1マクロブロック処理時間Tmbp、Bピクチャを復号する際の1マクロブロック処理時間Tmbb1、Tmbb2を求める具体的な方法については、P−P間フレーム数検出部125、復号時間比演算部135、I/Pピクチャ処理時間演算部155、Bピクチャ処理時間演算部150の動作の説明で述べた通りである。
処理ピクチャタイプ検出部120は、ピクチャヘッダ1104、1118、1132、1146のいずれかが入力されると、ピクチャタイプPTを検出する。そしてそのピクチャタイプがIまたはPであった場合(1104、1146)には、画像構成要素計数部140は、参照画像数Rfmbの値が1以下のマクロブロックの数の計数値(MBo)と、参照画像数Rfmbの値が2のマクロブロックの数の計数値(MBt)を共に0に初期化する。ピクチャタイプがBであった場合には特に何の処理も行わない。
参照画像数検出部105は、マクロブロックヘッダ1108、1112、1122、1126、1136、1140のいずれかが入力され、その時のピクチャタイプPTがBであった場合(1122、1126、1136、1140)、前記マクロブロックヘッダから、参照画像数Rfmbを求める。そして、画像構成要素計数部140は、その参照画像数Rfmbの値が1以下の場合にはマクロブロック数MBoを、2の場合にはマクロブロック数MBtを1加算する。
ピクチャタイプPTを求める方法は、処理ピクチャタイプ検出部120の動作説明で、参照画像数Rfmbを求める方法は参照画像数検出部105の動作説明で、MBo、MBtの計数動作に関しては、画像構成要素数計数部140の動作説明で述べた通りである。
次のピクチャタイプがIまたはPであるBピクチャの最後のマクロブロックヘッダについて、参照画像数検出部105が参照画像数Rfmbを検出し、画像構成要素計数部140がマクロブロック数MBoの計数処理も完了したら、余剰時間演算時刻検出部170の指示に従い、そのマクロブロック数MBoに加え、Bピクチャの基準復号時間比TRbとマクロブロック表示時間Tmbも使って、余剰時間演算部145が余剰時間Toddを求める。
次のピクチャタイプがIまたはPであるBピクチャの最後のマクロブロックの検出方法については、余剰時間演算時刻検出部170に、余剰時間Toddを求める方法については、余剰時間演算部145に述べた通りである。
このようにして、PTS DTSフラグ=“11”であるビデオPESヘッダが入力される度に、新たな1マクロブロック処理時間Tmbp、Tmbb1、Tmbb2を求め、FIFO165を通じて、これらの1マクロブロック処理時間Tmbp、Tmbb1、Tmbb2をビデオデコーダ230へと順次供給する。
FIFO165への書き込み方法は、FIFO書き込み制御部160で述べた通りである。
以上で、復号処理時間演算部250の動作の説明を終了する。
図2に戻り、STC260は、TSヘッダからパラメータPCR(Program Clock Reference)を抽出して、システム基準時刻STC(System Time Clock)の合わせ込みを行う。そして、STC260は、システム基準時刻STCを表示タイミング生成部270と復号タイミング生成部290に供給する。
表示タイミング生成部270は、ビデオPESヘッダとシステム基準時刻STCから、表示処理部340がフレームバッファ240から復号済みのピクチャデータを読み出すためのタイミング信号(表示タイミング信号)を生成する。具体的には、まず、ビデオPESヘッダに含まれる提示時刻情報PTSを抽出する。既に述べたように、ビデオPESヘッダの構造は、図7のPESヘッダと同一の構造であるので、同図中のPESヘッダP600から、提示時刻情報PTSP661を抽出すれば良い。
表示タイミング生成部270は、前記抽出した提示時刻情報PTSの値を記録しておくバッファAを持つ。表示タイミング生成部270は、提示時刻情報PTSを抽出したら、前記バッファA上に既に書き込まれている全ての提示時刻情報PTSを読み出し、前記抽出した提示時刻情報PTSを含め、昇順にソートして、前記バッファA上に書き込み直す。表示タイミング生成部270は、前記バッファA上に書き込まれた提示時刻情報PTSのうち、最も小さい値を持つ提示時刻情報PTSとシステム基準時刻STCとを比較し、これらが一致する場合に、表示タイミング信号を生成する。
ただし、実装時は、少なくともビデオデコーダが復号処理に要する時間Dだけタイミング信号の生成時刻を遅らせる必要がある。また、本実施形態においては、後述するように、その構成上、復号処理完了が各ピクチャの復号処理時間を同一にする場合に比べ、最大時間Eだけ遅れるため、この時間Eの分もタイミング信号の生成時刻を遅らせる必要がある。表示タイミング生成部270は、生成したタイミング信号を、表示処理部340に送る。
復号タイミング生成部290は、ビデオPESヘッダとシステム基準時刻STCから、ビデオデコーダ230が復号処理を開始するためのタイミング信号(復号タイミング信号)を生成する。具体的には、復号タイミング生成部290は、まず、ビデオPESヘッダに含まれる復号時刻情報DTSを抽出する(図7参照)。復号タイミング生成部290は、復号時刻情報DTSが存在しない場合は、提示時刻情報PTSを抽出する。
復号タイミング生成部290は、前記抽出した復号時刻情報DTSまたは提示時刻情報PTSを記録しておくバッファBを持つ。復号タイミング生成部290は、抽出した値を、抽出した順番でバッファBに書き込んでいく。復号タイミング生成部290は、前記バッファB上に書き込まれた復号時刻情報DTSまたは提示時刻情報PTSのうち、最も早く書き込んだものとシステム基準時刻STCを比較し、これらが一致する場合に、復号タイミング信号を生成する。復号タイミング生成部290は、生成したタイミング信号を、ビデオデコーダ230に送る。
但し、本実施形態においては、後述するようにその構成上、復号処理開始が各ピクチャの復号処理時間を同一にする場合に比べ、最大時間Eだけ遅れるため、少なくともこの時間Eの分タイミング信号の生成時刻を遅らせる必要がある。
ビデオデコーダ230は、復号タイミング生成部290から送られてくる復号タイミング信号により、ビデオ位相調整バッファ220からビデオストリームの読み出しを開始し、1ピクチャ分の復号処理を開始する。本実施形態においては、復号処理時間演算部250の動作説明の際に述べたように、1ピクチャの復号に要する時間と1ピクチャの表示時間が異なるが、復号タイミング生成部290は、前記したように(Eという一定の時間、遅延させるとは言え)、復号時刻情報DTSまたは提示時刻情報PTSから復号タイミング信号を生成するため、復号タイミング信号はほぼ一定の間隔で発生する(図13参照)。
従って、本実施形態におけるビデオデコーダ230では、復号タイミング信号が送られて来る前に、復号処理を開始していないとならないという状況が発生し得る。このような場合でも復号処理が問題なく行えるように、ビデオデコーダ230は、最初のピクチャは、復号タイミング信号により復号を開始するが、2番目以降のピクチャは、ビデオ位相調整バッファ220が空となるか、別途停止を指示するトリガが与えられるまでは、復号タイミング信号が与えられなくとも、復号処理を行う。
別途停止を指示するトリガとしては、復号したピクチャの枚数Xが復号タイミング信号の発生回数Yに対し、X>Yとなった場合や、ユーザからの停止操作があった場合等が考えられる。
ここで、本実施形態が各ピクチャの復号処理時間を同一にする場合に比べ、復号処理完了が最大時間E遅れる理由とそのEの最大値について言及しておく。
図14は、入力ビデオストリームを復号処理する際に、各ピクチャの復号処理時間を同一にする場合と、本実施形態とで、各々、復号処理及び表示のタイミングを示した図である。この図14では復号処理の遅延時間Dは0としている。図14においても、各矩形に付された符号は、英文字がピクチャのタイプを表し、数字がストリーム上でのピクチャの並び順を表す。
本実施形態では、I(またはP)ピクチャの復号時間は各ピクチャの復号処理時間を同一にする場合よりも短くなるという特徴があるが、復号処理の完了は、ビデオストリームの入力完了よりも早い時刻にはできないため、復号時間が短縮された分、各ピクチャの復号処理時間を同一にする場合よりも復号開始を遅らせる必要が出てくる(図14の本実施形態復号処理のI1、P4を参照)。
そして、復号結果の表示が復号処理を追い越さないようにするには、表示の開始時刻についても、各ピクチャの復号処理時間を同一にする場合よりも遅らせる必要が生じる(図14の本実施形態表示のB2、B5を参照)。
本実施形態では、I(またはP)ピクチャの復号時間Tpは、式(5)から、前記P−P間フレーム数M及びフレーム周期Tを用いて、次の式(13)で表される。
Figure 0004807883
従って前記Eは、式(14)で表され、その最大値は、式(15)で表されるようにT/3となる。従って、ビデオ位相調整バッファ220は、T/3時間分の容量があれば良い。
Figure 0004807883
ビデオデコーダ230は復号処理を開始すると、PTS DTSフラグが“11”であるようなビデオPESヘッダを検出する度に、復号処理時間演算部250のFIFO165からP(またはI)ピクチャの復号時の1マクロブロック処理時間TmbpとBピクチャの復号時の1マクロブロック処理時間Tmbb1、Tmbb2を読み出す。
ビデオデコーダ230は、P(またはI)ピクチャを復号する時には、1マクロブロック処理時間Tmbpで指定された時間以下で処理が完了するようにマクロブロック毎の復号を行う。また、ビデオデコーダ230は、Bピクチャを復号する時には、マクロブロックヘッダのmacroblock_typeというパラメータから、参照画像数を検出し、前記参照画像数が1以下である場合には、1マクロブロック処理時間Tmbb1で指定された時間以下で処理が完了するように、前記参照画像数が2である場合には、1マクロブロック処理時間Tmbb2で指定された時間以下で処理が完了するようにマクロブロックの復号を行う。
このとき、ビデオデコーダ230が、P(またはI)ピクチャの復号時の1マクロブロック処理時間Tmbp、Bピクチャの復号時の1マクロブロック処理時間Tmbb1、Tmbb2で指定された時間以下で処理が完了するようにマクロブロックの復号を行う方法について説明する。この方法としては、第一にある単位毎の処理の間隔を変更する方法がある。MPEG2のマクロブロックの復号処理はブロック単位での復号処理の繰り返し処理と見做せるので、ブロックの処理の間隔を制御することにより、結果として1マクロブロックの処理時間を制御する。
第二の処理時間を制御する方法として、ビデオデコーダ230の動作クロックをマクロブロック処理時間に比例させる方法がある。この方法には、無段階にクロック周波数を変更する方法、予め用意しておいた何種類かのクロック周波数をマクロブロック処理時間に応じて段階的に切り換える方法等が考えられる。
なお、復号処理時間演算部250の動作の説明でも述べたように、参照画像数に応じたマクロブロックの処理時間の変化のさせ方には、様々なバリエーションが考えられる。
また、本実施形態においては、ビデオデコーダ230に与えるパラメータを、P(またはI)ピクチャを復号する際に1マクロブロック分の処理に使用する時間と、Bピクチャを復号する際に1マクロブロック分の処理に使用する時間としたが、結果的にマクロブロックの処理時間を制御できるパラメータであれば、処理速度など、他のパラメータを用いても良い。
なお、ここまでのビデオデコーダ230の説明においては、マクロブロック層より上位の層(シーケンス層、GOP層、ピクチャ層、スライス層)の処理時間を確保する方法については言及しなかったが、これらの処理の時間の確保については、(1)マクロブロックの復号処理と並列処理にする、(2)マクロブロックの処理時間を演算する際に、各マクロブロックの処理時間を少しずつ短めに設定することで処理時間を確保する、等の方法により、比較的容易に実施可能である。
図2に戻り、ビデオデコーダ230は、復号処理に参照画像データが必要になると、随時フレームバッファ240から読み出し、復号結果の画像データはフレームバッファ240へと書き込む。
フレームバッファ240は、ビデオデコーダ230が復号した画像データを蓄積する。また、ビデオデコーダ230または表示処理部340からの要求によって、要求した相手に画像データを出力する。
表示処理部340は、表示タイミング生成部270から表示タイミング信号を受け取ると、フレームバッファ240から画像データを表示順に読み出して、表示装置350へと出力する。
ここで、本発明の復号方法でビデオストリームを復号した場合のメモリの使用帯域と、各ピクチャの復号処理時間を同一にした場合(復号方法1)のメモリの使用帯域と、基準復号時間比TRp、TRbによりピクチャ毎に復号処理時間を変化させた場合(復号方法2)のメモリの使用帯域を比較する。但し、ビデオストリームを読み出す帯域については、前記したように復号処理全体に占める割合が少なく、符号化アルゴリズムや符号化する動画の内容によっても各ピクチャ当たりの符号化量が大きく変化するため、以下の比較には含まないものとする。
比較のための条件として、以下の3種類を設定する。
条件1:Pピクチャの参照画像数は全てのマクロブロックで1、Bピクチャの参照画像数は全てのマクロブロックで2。
条件2:Pピクチャの参照画像数は全てのマクロブロックで1、Bピクチャの参照画像数も全てのマクロブロックで1。
条件3:Pピクチャの参照画像数は全てのマクロブロックで1、Bピクチャの参照画像数は、ピクチャ内の通し番号が奇数番目のマクロブロックで1、偶数番目のマクロブロックで2(平均で1.5)。
本実施形態と復号方法1と復号方法2との3種類の復号方法について、条件1の場合の使用帯域を図15、条件2の場合の使用帯域を図16、条件3の場合の使用帯域を図17に示す。
図15〜図17では、ピクチャはフレーム構造であり、その解像度は1920×1088ドット(つまり、120マクロブロック×68マクロブロック)、そのフレーム周期は60fps(frame per sec)であるとし、帯域は1マクロブロックライン(120マクロブロック)時間(≒245μs)毎のデータ転送量を示すものとする。
各図の縦軸は使用帯域を示している。1ピクチャ分のデータを1ピクチャの表示時間で平均的に読み書きする場合の使用帯域をBWとしている。また横軸は、時間推移を表しており、1ピクチャの表示時間(1/60秒)をTと表記している。各図では、約6ピクチャのビデオストリームを復号する際の使用帯域の推移を示しており、Iピクチャを「I」、Pピクチャを「P」、Bピクチャを「B」で表すと、入力されるストリームのピクチャ構成はIBBPBBとなっている。
復号方法1では、どのタイプのピクチャでも、1ピクチャの復号時間は1ピクチャの表示時間で行うため、前記条件1(図15)では、復号結果の書き込みだけが行われるIピクチャの使用帯域はBW、復号結果の書き込みに加え、参照画像を1枚読み出すPピクチャの使用帯域は2BW、復号結果の書き込みに加え、参照画像を2枚読み出すBピクチャの使用帯域は3BWとなる。前記条件2(図16)では、復号結果の書き込みだけが行われるIピクチャの使用帯域はBW、復号結果の書き込みに加え、参照画像を1枚読み出すP、Bピクチャの使用帯域は2BWとなり、前記条件3(図17)では、復号結果の書き込みだけが行われるIピクチャに使用帯域はBW、復号結果の書き込みに加え、参照画像を1枚読み出すPピクチャの使用帯域は2BW、復号結果の書き込みに加え、参照画像を1.5枚読み出すBピクチャの使用帯域は2.5BWとなる。
復号方法2では、I、Pピクチャの復号時間を1ピクチャの表示時間のTRp倍(式(5)参照)、Bピクチャの復号時間を1ピクチャの表示時間のTRb倍(式(6)参照)とするため、条件1(図15)では、Iピクチャの使用帯域はBW/TRp、PまたはBピクチャの使用帯域は3BW/TRb(=2BW/TRp)となり、条件2(図16)では、Iピクチャの使用帯域はBW/TRp、Pピクチャの使用帯域は2BW/TRp、Bピクチャの使用帯域は2BW/TRbとなり、条件3(図17)では、Iピクチャの使用帯域はBW/TRp、Pピクチャの使用帯域は2BW/TRp、Bピクチャの使用帯域は2.5BW/TRbとなる。
本実施形態による復号方法では、前記復号方法2と同様に、I、Pピクチャの最小復号時間を1ピクチャの表示時間TのTRp倍(式(5)参照)、Bピクチャの最大復号時間を1ピクチャの表示時間TのTRb倍(式(6)参照)とすると共に、Bピクチャの復号においては、マクロブロック毎に参照画像数に応じて復号時間を変化させ(参照画像数2の時は、1マクロブロックの復号時間をTRb×Tmbとし、参照画像数1以下の時は、1マクロブロックの復号時間を1×Tmbとする)、前記Bピクチャのマクロブロック毎の復号時間を変化させたことにより短縮された復号時間を、次のP(またはI)ピクチャの復号に用いるため、条件1(図15)では、I、P、Bいずれのピクチャにおいても、使用帯域は復号方法2と同一となり、条件2(図16)では、Iピクチャの使用帯域はBW/TRp、Pピクチャ、Bピクチャの使用帯域は2BWとなり、条件3(図17)では、Iピクチャの使用帯域はBW/TRp、Pピクチャの使用帯域は式(16)で表されるBWap3、Bピクチャの使用帯域は式(17)で表されるBWab3となる。
Figure 0004807883
以下、上述の式(16)、(17)の導出方法について補足しておく。
本実施形態おけるBピクチャの復号時間Tabが、そのBピクチャを構成するマクロブロックの参照画像数によって変化するのは、上述した通りである。条件3においては、1枚のBピクチャ内に、処理時間がTRb×Tmbとなるマクロブロックと、1×Tmbとなるマクロブロックが半分ずつ含まれることになるので、条件3におけるTab(=Tab3)は、次の式(18)で表される。条件3の時、Bピクチャを時間Tで復号するのに必要な帯域は、2.5BWなので、時間Tab3で復号するのに必要な帯域BWab3は、式(19)から求まる。これは式(17)そのものである。
Figure 0004807883
また、本実施形態におけるP(またはI)ピクチャの処理時間Tapは、P(またはI)ピクチャに最低限確保される復号時間TRp×Tに、処理時間を求めようとするP(またはI)ピクチャより前、かつ、前記P(またはI)ピクチャの直前のP(またはI)ピクチャよりは後、に存在する1以上のBピクチャにおいて短縮された復号時間の総和Tabdを加算したものとなる。
条件3の時のTabd(=Tabd3)は、本実施形態におけるBピクチャ1枚の最大の復号時間TRb×Tと、前記条件3の時のBピクチャの復号時間Tab3の差分に、P(またはI)ピクチャ間のBピクチャの枚数をかけた式(20)となる。従って、条件3の時のTap(=Tap3)は、次の式(21)式で表される。
Figure 0004807883
条件3の時、Pピクチャを時間Tで復号するのに必要な帯域は、2BWなので、時間Tap3で復号するのに必要な帯域BWap3は、式(22)により求まる。これは式(16)そのものである。
Figure 0004807883
以上のようにして、式(16)、(17)が求められる。
図15〜17により条件1〜3での使用帯域を比較すると、どの条件においても本実施形態による方法が、他の2つの復号方法に比べて、最大使用帯域を最も低く抑えることができていることがわかる。
以上、入力されるビデオストリームが、MPEG2−TSの場合についての本発明の処理手順について説明したが、他のビデオストリームであっても、P(またはI)ピクチャとBピクチャがビデオストリーム中でどのように配置されているかを算出するためのパラメータ(P−P間フレーム数Mを算出可能なPTS、DTSのようなパラメータ)、ビデオストリームのフレーム周期Tを算出するためのパラメータ、マクロブロック毎の参照画像数を算出するパラメータ、ピクチャタイプを特定するためのパラメータ、ピクチャの解像度またはピクチャ中のマクロブロック数を算出するためのパラメータが含まれるビデオストリームであれば、本実施形態と同様な処理を行うことにより、動画像復号処理システムに使用されるメモリ帯域の平準化を図ることが可能である。
例えば、MPEG2−PSの場合、以下の2点を変更することにより、本実施例と同様のシステムが実現できる。(1)TSヘッダの代わりにPSパックヘッダを使う。(2)TSヘッダ内のパラメータPCRの代わりにPSパックヘッダ内のパラメータSCR(System Clock Reference)により、STCの合わせ込みを行う。
このように、本実施形態のデジタルTV370は、I/Pピクチャから次のI/Pピクチャの前のBピクチャまでのピクチャ各々の復号処理において使用する帯域が、時間方向に平準化されるように基準復号処理時間を求める。さらに、本実施形態のデジタルTV370は、参照画像数の多いBピクチャのマクロブロックのうち、Bピクチャの参照画像数が「2」より参照画像数が少ないマクロブロックについては、1マクロブロック当たりの復号処理時間を、1つ当たりの表示時間であるマクロブロック表示時間Tmbとして、Bピクチャの復号処理における余剰時間を算出し、この余剰時間を後続のI/Pピクチャの復号処理時間に割り当てる。このため、本実施形態のデジタルTV370は、各ピクチャを復号処理する際の参照画像数が多いBピクチャの単位時間当たりのデータ転送量を抑えるとともに、Bピクチャの各マクロブロックの参照画像数が少ないときには、余剰時間をI/Pピクチャを割り当てて帯域を抑える。従って、本実施形態のデジタルTV370は、大きな帯域を持つ高コストな部品を用いる必要がなくなり、低コスト化することができる。さらに、復号処理に要する帯域が抑えられているので、本実施形態のデジタルTV370は、メモリ280をユーザ操作等の外部イベントの処理を行うCPU310等のモジュールと共有していても、ユーザ操作などの外部からのイベントに対して優れた応答性を得ることができる。
[第2の実施形態]
以下、本発明の第2の実施形態について、図18を用いて説明する。図18は本実施形態による復号装置であるTV付き携帯電話400の構成を示した概略ブロック図である。TV付き携帯電話400の具体例としては、日本であれば、地上デジタル放送ISDB−T(Integrated Services Digital Broadcasting Terrestrial)の1セグメント放送を受信、再生、表示できる携帯電話やPHSが、欧州や米国等であれば、DVB−H(Digital Video Broadcasting for Handheld)やT−DMB(Terrestrial-digital media broadcasting)を受信、再生、表示できる携帯電話が挙げられる。
TV付き携帯電話400は、チューナ300、ストリーム処理部200、CPU310、復号制御部380、メモリ280、ビデオデコーダ230、オーディオデコーダ320、音声出力装置330、表示処理部340、表示装置350、バス360、通信制御部410を具備する。
チューナ300、ストリーム処理部200、CPU310、復号制御部380、メモリ280、ビデオデコーダ230、オーディオデコーダ320、音声出力装置330、表示処理部340、表示装置350の動作については、第1の実施形態と同様の動作をする。第1の実施形態とこの第2の実施形態との相違点は、バス360に通信制御部410が接続されている点である。この通信制御部410は、携帯電話における音声通話、TV電話、パケット通信等の処理を行うブロックである。携帯電話用アンテナで受信した電波を復調して受信データを得たり、送信データを変調して携帯電話用アンテナから電波として送信したりする。なお、前記受信データ、送信データには、通話音声やTV電話画像等も含む。
通信制御部410はまた、音声通話に必要なマイクロフォンやスピーカ、TV電話に必要なカメラ等の機能等も含んでいる。通信制御部410は、TV付き携帯電話400で実行される処理が、図18に示した他のブロックによる処理を必要とする処理であった場合、他のブロックとデータのやり取りを行う。例えば、通信制御部410が表示装置350に表示すべき画像データや文字データをパケット通信により得た場合は、前記データはメモリ280を介してCPU310に渡され、(通常はなんらかの通信に必要な符号化を施されているので)復号処理がなされた後、表示処理部340を通じて表示装置350に表示される。
また、音声出力装置330から出力すべき音声データをパケット通信により得た場合は、前記データはメモリ280を介してオーディオデコーダ320に渡され、(通常はなんらかの符号化を施されているので)復号処理がなされた後、音声出力装置330から音声が出力される。つまり、通信制御部410は、データを他のブロックとやり取りする場合に、バス360やメモリ280を、その他のブロックと共有することになる。前記のようなバス360やメモリ280の共有は、第1の実施形態におけるCPU310によるセクションの復号処理や、オーディオデコーダ320によるオーディオストリームの復号処理のためにも行われていることで、本発明による復号方法または復号装置の実現を妨げるものではない。従って、本発明による復号装置は、図18に示す第2の実施形態によっても実現可能である。
[第3の実施形態]
以下、本発明の第3の実施形態について、図19を用いて説明する。図19は本実施形態による復号装置であるデジタルメディアプレーヤ500の構成を示した概略ブロック図である。デジタルメディアプレーヤ500の具体例としては、携帯音楽プレーヤや携帯ゲーム機等のHDD(Hard Disk Drive)やフラッシュメモリを内蔵した動画プレーヤが挙げられる。
デジタルメディアプレーヤ500は、ストリーム処理部200、CPU310、復号制御部380、メモリ280、ビデオデコーダ230、オーディオデコーダ320、音声出力装置330、表示処理部340、表示装置350、バス360、メディア部510を具備する。CPU310、復号制御部380、メモリ280、ビデオデコーダ230、オーディオデコーダ320、音声出力装置330、表示処理部340、表示装置350の動作については、第1の実施形態と同様の動作をする。
第1の実施形態とこの第3の実施形態とのブロック間接続上の相違点は、バス360にメディア部510が接続されている点と、ストリーム処理部200にチューナ300が接続されていない点である。メディア部510は、不揮発性メモリ及び前記不揮発性メモリにデータを読み書きする機器から構成されるものである。具体例としては、HDD、フラッシュメモリとそのリーダ/ライタ、DVD(Digital Versatile Disk)その他の光学ディスクとその再生/記録ドライブ等が挙げられる。
本実施形態においては、ストリーム処理部200は、ストリームをチューナ300の代わりにメディア部510から入手する点が第1の実施形態とは異なっている。入手方法としては、ストリーム処理部200がメディア部510から直接読み出す方法と、一旦メディア部510からメモリ280へとコピーされたストリームをストリーム処理部200がメモリ280から読み出すという方法が考えられる。入手した後のストリームの処理に関しては、第1の実施形態と同様である。
即ち、本実施形態では、ストリーム処理部200に入力されるストリームが、バス360やメモリ280を通るという点が第1の実施形態と異なる。
バス360やメモリ280は、元々複数のブロックの間で共有されているものであるので、前記の相違点は、本発明による復号方法または復号装置の実現を妨げるものではない。従って、本発明による復号装置は、図19に示す第3の実施形態によっても実現可能である。
[第4の実施形態]
以下、本発明の第4の実施形態について、図20を用いて説明する。図20は本実施形態による復号装置であるIPTV(Internet Protocol Television)装置(インターネットテレビ装置)600の構成を示した概略ブロック図である。IPTV装置600は、ネットワーク上から、動画、音声、その他の情報を含むストリームを受け取り、それらの再生を行う装置である。IPTV装置600は、ストリーム処理部200、CPU310、復号制御部380、メモリ280、ビデオデコーダ230、オーディオデコーダ320、音声出力装置330、表示処理部340、表示装置350、バス360、IPチューナ610を具備する。ストリーム処理部200、CPU310、復号制御部380、メモリ280、ビデオデコーダ230、オーディオデコーダ320、音声出力装置330、表示処理部340、表示装置350の動作については、第1の実施形態と同様の動作をする。
第1の実施形態とこの第4の実施形態とは、チューナ300の代わりにIPチューナ610がストリーム処理部200に接続されている点のみが異なる。第1の実施形態においては、チューナ300が放送波を復調し、ストリームを取り出して、その取り出したストリームをストリーム処理部200へと送るのに対し、本実施形態においては、IPチューナ610がネットワーク上から通信パケットを受け取り、そこからストリームを取り出して、ストリーム処理部200へと送る。前記チューナ300とIPチューナ610の違いを除けば、本実施形態は第1の実施形態と同じ構成であるので、本発明による復号装置は、図20に示す第4の実施形態によっても実現可能である。
また、図2における復号制御部380、ビデオデコーダ230は専用のハードウェアによって実現されてもよいし、これらの機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより復号制御部380、ビデオデコーダ230の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
本発明は、動画像符号化データを復号するデジタルテレビ装置、テレビ付き携帯電話、デジタルメディアプレーヤ及びインターネットテレビ装置に用いて好適であるが、これに限定されない。
本発明の第1の実施形態によるデジタルTV370の構成を示した概略ブロック図である。 同実施形態によるデジタルTV370から復号処理に関連した構成を抜き出し、復号処理手順に準じた配置を示した概略ブロック図である。 動画像符号化ストリームMPEG2−TSの構造を示した図である。 本発明の第1の実施形態によるデジタルTV370内の復号処理時間演算部250の構成を示した概略ブロック図である。 MPEG2のビデオESの構成を示した図である。 MPEG2におけるframe_rate_codeとframe_rate_valueとの対応関係を示した表である。 MPEG2のPESヘッダの構成を示した図である。 P−P間フレーム数Mが提示時刻情報PTS、復号時刻情報DTS、フレーム周期Tから求められることを示した図である。 各ピクチャの復号処理時間を同一にした場合のPピクチャ、Bピクチャの復号時間と最大使用帯域を示した図である。 P−P間フレーム数分の復号処理において帯域を平準化した際のPピクチャ、Bピクチャの復号時間と最大使用帯域を示した図である。 基準復号時間比TRbに基づく復号処理時間と本発明の第1の実施形態によるマクロブロックの復号処理時間の比較図である。 同実施形態によるデジタルTV370内の復号処理時間演算部250の処理手順を示した図である。 同実施形態における、復号タイミング信号の発生時刻と復号開始時刻の関係を示した図である。 各ピクチャの復号処理時間を同一にする場合と同実施形態との処理タイミングの比較図である。 Pピクチャの参照画像数は全てのマクロブロックで1、Bピクチャの参照画像数は全てのマクロブロックで2である場合に、復号方法1、復号方法2、本発明の第1の実施形態による方法の使用帯域を比較した図である。 Pピクチャの参照画像数は全てのマクロブロックで1、Bピクチャの参照画像数も全てのマクロブロックで1である場合に、復号方法1、復号方法2、本発明の第1の実施形態による方法の使用帯域を比較した図である。 Pピクチャの参照画像数は全てのマクロブロックで1、Bピクチャの参照画像数は、奇数番目のマクロブロックで1、偶数番目のマクロブロックで2である場合に、復号方法1、復号方法2、本発明の第1の実施形態による方法の使用帯域を比較した図である。 本発明の第2の実施形態によるTV付き携帯電話400の構成を示した概略ブロック図である。 本発明の第3の実施形態によるデジタルメディアプレーヤ500の構成を示した概略ブロック図である。 本発明の第4の実施形態によるIPTV600の構成を示した概略ブロック図である。 動画を構成するピクチャ間の相関を説明する図である。 従来のデジタルTVに用いられる動画像の復号装置の構成例を示した概略ブロック図である。 各種別のピクチャを復号する際に、ビデオデコーダ1800がメモリ1810に対するアクセスによって使用する帯域を示した図である。
符号の説明
105…参照画像数検出部
110…フレーム周期検出部
115…解像度検出部
120…処理ピクチャタイプ検出部
125…P−P間フレーム数検出部
130…Tmb演算部
135…復号時間比演算部
140…画像構成要素数計数部
145…余剰時間演算部
150…Bピクチャ処理時間演算部
155…I/Pピクチャ処理時間演算部
160…FIFO書き込み制御部
165…FIFO
170…余剰時間演算時刻検出部
200…ストリーム処理部
210…ビデオストリームバッファ
220…ビデオ位相調整バッファ
230…ビデオデコーダ
240…フレームバッファ
250…復号処理時間演算部
260…STC
270…表示タイミング生成部
280…メモリ
290…復号タイミング生成部
300…チューナ
310…CPU
320…オーディオデコーダ
330…音声出力装置
340…表示処理部
350…表示装置
360…バス
370…デジタルTV
380…復号制御部
400…TV付き携帯電話
410…通信制御部
500…デジタルメディアプレーヤ
510…メディア部
600…IPTV
610…IPチューナ
T300、T310、T330…TSパケットV
T320、T340…TSパケットA
T350、T370、T390、T410…TSヘッダ
T360、T380、T400、T420…TSペイロード
T430、T450…ビデオPESヘッダ
T440、T460…ビデオES
T470、T490…オーディオPESヘッダ
T480、T500…オーディオES
P600…PESヘッダ
P610…パケット開始コード
P620…パケット長
P630…制御コード
P640…フラグ
P645…PTS DTSフラグ
P650…PESヘッダ長
P660…コンディショナル・コーディング
P661…PTS
P662…DTS
1100…シーケンスヘッダ
1102、1116、1130、1144…ビデオPESヘッダ
1104、1118、1132、1146…ピクチャヘッダ
1106、1120、1134…スライスヘッダ
1108、1112、1122、1126、1136、1140…マクロブロックヘッダ
1110、1114、1124、1128、1138、1142…ブロックデータ
1800…ビデオデコーダ
1810…メモリ
1820…CPU
1830…表示処理部
1840…表示装置
1850…オーディオデコーダ
1860…チューナ
1870…ストリーム処理部
1880…バス
1890…音声出力装置

Claims (9)

  1. 動画像符号化データを復号する復号装置において、
    前記動画像符号化データを構成するピクチャ各々を最大参照画像数により分類したピクチャ種別の構成であって、前記動画像符号化データ中で連続するピクチャからなるピクチャ群における構成であるピクチャ種別構成を検出するピクチャ種別構成検出部と、
    前記各ピクチャ種別のピクチャの復号処理におけるメモリとの間の前記最大参照画像数に基づくデータ転送量と、前記検出したピクチャ種別構成とに基づき、前記ピクチャ群のピクチャ各々の復号処理におけるメモリとの間の単位時間当たりのデータ転送量が、時間方向に平準化されるように各ピクチャの基準復号処理時間を求める復号処理時間算出部と、
    前記ピクチャ群のピクチャを前記ピクチャ種別により参照画像数の多い第1ピクチャ群と参照画像数の少ない第2ピクチャ群とに分類するピクチャ分類部と、
    前記ピクチャ分類部が分類した第1ピクチャ群のピクチャ各々を構成する構成要素各々の参照画像数を検出する参照画像数検出部と、
    前記第1ピクチャ群のピクチャ各々を構成する構成要素のうち、当該構成要素の属するピクチャの最大参照画像数より前記参照画像数検出部が検出した参照画像数が少ない構成要素については、該構成要素の属するピクチャの1構成要素当たりの基準復号処理時間より短い時間を該構成要素の復号処理時間とし、残りの構成要素については、該構成要素の属するピクチャの1構成要素当たりの基準復号処理時間を該構成要素の復号処理時間とし、前記各構成要素の復号処理時間を合計した前記第1ピクチャ群の復号処理時間と、該第1ピクチャ群を構成するピクチャの前記基準復号処理時間の合計との差分である余剰時間を算出する余剰時間演算部と、
    前記算出した余剰時間を、前記ピクチャ群の後続のピクチャ群における第2ピクチャ群の復号処理時間に割り当てて、該第2ピクチャ群を構成するピクチャの復号処理時間を算出する第2ピクチャ群処理時間演算部と
    を具備することを特徴とする復号装置。
  2. 前記ピクチャ種別構成検出部は、前記動画像符号化データから同一のピクチャに関する提示時刻情報と復号時刻情報とを検出し、該ピクチャと前記動画像符号化データ中の並びが該ピクチャに続くピクチャであって、提示時刻が該ピクチャより前のピクチャからなるピクチャ群におけるピクチャ種別構成を、前記検出した提示時刻情報と復号時刻情報とに基づき算出すること
    を特徴とする請求項1に記載の復号装置。
  3. 前記余剰時間演算部は、前記ピクチャ分類部が分類した第1ピクチャ群のピクチャ各々を構成する構成要素のうち、当該構成要素の属するピクチャの最大参照画像数より参照画像数が少ない構成要素については、各ピクチャの復号処理時間を均等にしたときの1構成要素当たりの復号処理時間を該構成要素の復号処理時間とすることを特徴とする請求項1または2に記載の復号装置。
  4. 前記ピクチャ種別は、最大参照画像数が2つのBピクチャと、最大参照画像数が1つまたは0のI/Pピクチャとの2種類であり、
    前記第1ピクチャ群は、Bピクチャからなり、
    前記第2ピクチャ群は、I/Pピクチャからなること
    を特徴とする請求項1から請求項3のいずれかの項に記載の復号装置。
  5. 請求項1から請求項4のいずれかの項に記載の復号装置を具備することを特徴とするデジタルテレビ装置。
  6. 請求項1から請求項4のいずれかの項に記載の復号装置を具備することを特徴とするテレビ付き携帯電話。
  7. 請求項1から請求項4のいずれかの項に記載の復号装置を具備することを特徴とするデジタルメディアプレーヤ。
  8. 請求項1から請求項4のいずれかの項に記載の復号装置を具備することを特徴とするインターネットテレビ装置。
  9. 動画像符号化データを復号する復号装置における復号方法において、
    前記復号装置が、前記動画像符号化データを構成するピクチャ各々を最大参照画像数により分類したピクチャ種別の構成であって、前記動画像符号化データ中で連続するピクチャからなるピクチャ群における構成であるピクチャ種別構成を検出する第1の過程と、
    前記復号装置が、前記各ピクチャ種別のピクチャの復号処理におけるメモリとの間の前記最大参照画像数に基づくデータ転送量と、前記検出したピクチャ種別構成とに基づき、前記ピクチャ群のピクチャ各々の復号処理におけるメモリとの間の単位時間当たりのデータ転送量が、時間方向に平準化されるように各ピクチャの基準復号処理時間を求める第2の過程と、
    前記復号装置が、前記ピクチャ群のピクチャを前記ピクチャ種別により参照画像数の多い第1ピクチャ群と参照画像数の少ない第2ピクチャ群とに分類する第3の過程と、
    前記復号装置が、前記第3の過程にて分類した第1ピクチャ群のピクチャ各々を構成する構成要素各々の参照画像数を検出する第4の過程と、
    前記第1ピクチャ群のピクチャ各々を構成する構成要素のうち、当該構成要素の属するピクチャの最大参照画像数より前記第4の過程にて検出した参照画像数が少ない構成要素については、該構成要素の属するピクチャの1構成要素当たりの基準復号処理時間より短い時間を該構成要素の復号処理時間とし、残りの構成要素については、該構成要素の属するピクチャの1構成要素当たりの基準復号処理時間を該構成要素の復号処理時間とし、前記各構成要素の復号処理時間を合計した前記第1ピクチャ群の復号処理時間と、該第1ピクチャ群を構成するピクチャの前記基準復号処理時間の合計との差分である余剰時間を算出する第5の過程と、
    前記復号装置が、前記第5の過程にて算出した余剰時間を、前記ピクチャ群の後続のピクチャ群における第2ピクチャ群の復号処理時間に割り当てて、該第2ピクチャ群を構成するピクチャの復号処理時間を算出する第6の過程と
    を備えることを特徴とする復号方法。
JP2007229223A 2007-09-04 2007-09-04 復号装置、デジタルテレビ装置、テレビ付き携帯電話、デジタルメディアプレーヤ、インターネットテレビ装置および復号方法 Expired - Fee Related JP4807883B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007229223A JP4807883B2 (ja) 2007-09-04 2007-09-04 復号装置、デジタルテレビ装置、テレビ付き携帯電話、デジタルメディアプレーヤ、インターネットテレビ装置および復号方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007229223A JP4807883B2 (ja) 2007-09-04 2007-09-04 復号装置、デジタルテレビ装置、テレビ付き携帯電話、デジタルメディアプレーヤ、インターネットテレビ装置および復号方法

Publications (2)

Publication Number Publication Date
JP2009065274A JP2009065274A (ja) 2009-03-26
JP4807883B2 true JP4807883B2 (ja) 2011-11-02

Family

ID=40559491

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007229223A Expired - Fee Related JP4807883B2 (ja) 2007-09-04 2007-09-04 復号装置、デジタルテレビ装置、テレビ付き携帯電話、デジタルメディアプレーヤ、インターネットテレビ装置および復号方法

Country Status (1)

Country Link
JP (1) JP4807883B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5673937B2 (ja) * 2011-01-07 2015-02-18 アイキューブド研究所株式会社 信号処理装置、および信号処理方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2785640B2 (ja) * 1993-03-16 1998-08-13 日本ビクター株式会社 Mpeg方式により高能率符号化された動画像情報からの画像再生方法
JP2894958B2 (ja) * 1994-10-14 1999-05-24 株式会社グラフィックス・コミュニケーション・ラボラトリーズ 画像復号化方式および装置
EP2023637A4 (en) * 2006-05-24 2010-06-16 Panasonic Corp IMAGE DECODING DEVICE

Also Published As

Publication number Publication date
JP2009065274A (ja) 2009-03-26

Similar Documents

Publication Publication Date Title
US7986846B2 (en) Apparatus and method for processing an image signal in a digital broadcast receiver
US7965771B2 (en) Method and apparatus for immediate display of multicast IPTV over a bandwidth constrained network
JP5043096B2 (ja) チャネル変更方法及びデジタル・ビデオ装置
US8046815B2 (en) Optical network for bi-directional wireless communication
EP0854652B1 (en) Picture and sound decoding device, picture and sound encoding device, and information transmission system
US20050175085A1 (en) Method and apparatus for providing dentable encoding and encapsulation
US7801213B2 (en) Method and apparatus for modifying a data rate of a video signal
CA2792106C (en) Method and system for inhibiting audio-video synchronization delay
JP2016092837A (ja) 映像圧縮装置、映像再生装置および映像配信システム
JP2007221411A (ja) 映像符号化、復号化装置および映像符号化、復号化方法、並びにそれらのプログラム
US20160337671A1 (en) Method and apparatus for multiplexing layered coded contents
JP2017520940A5 (ja) レイヤードコード化コンテンツを多重化する方法および装置
KR20020026250A (ko) 비디오 신호 인코딩 및 버퍼 관리
US20060165172A1 (en) Method for transmitting data without jitter in synchronous Ethernet
US20050163226A1 (en) Video buffer control apparatus for dual video decoding and digital broadcasting receiver thereof
US20060161676A1 (en) Apparatus for IP streaming capable of smoothing multimedia stream
JP4807883B2 (ja) 復号装置、デジタルテレビ装置、テレビ付き携帯電話、デジタルメディアプレーヤ、インターネットテレビ装置および復号方法
JP5333218B2 (ja) 動画像データ配信システム、その方法及びそのプログラム
JP5199219B2 (ja) デジタル放送装置、デジタル放送方法、および、デジタル放送プログラム
JP4727557B2 (ja) 復号装置および復号方法
US10700799B2 (en) Method and apparatus for broadcast signal transmission
JP6464647B2 (ja) 動画像処理方法、動画像の送信装置、動画像処理システムおよび動画像処理プログラム
US20050265369A1 (en) Network receiving apparatus and network transmitting apparatus
EP3506641A1 (en) Methods and techniques for reducing latency in changing channels in a digital video environment
KR0172897B1 (ko) 디지탈영상 복호화장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090805

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101207

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110207

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

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

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

Free format text: PAYMENT UNTIL: 20140826

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees