(57)【要約】【課題】  メモリ伝送量や消費電力を削減することが可能な動画再生装置を提供する。【解決手段】  動画の属性を解析する属性解析手段（Ｓ１０６）と、  前記属性解析手段での解析に基づいて、前記動画の１フレームと、その直前のフレームとの画像が同一であるか否かを判定する判定手段（Ｓ１０６）と、  前記判定手段で直前のフレームと同一の画像であると判定されなかったフレームの圧縮フレームデータを、伸張手段に入力する入力手段（Ｓ１０７）と、  前記伸張手段で伸張されたフレームデータの画像を少なくとも１フレーム分として表示するよう制御する表示制御手段（Ｓ１０８）と、  前記判定手段で直前のフレームと同一の画像であると判定されたフレームの圧縮フレームデータは、前記伸張手段へ入力しないように制御する制御手段（Ｓ１０６がＹｅｓの場合Ｓ１０７を行わない）とを有することを特徴とする。【選択図】  図３
2010074241.tif 000002
【特許請求の範囲】
【請求項１】
動画の属性を解析する属性解析手段と、
前記属性解析手段での解析に基づいて、前記動画の１フレームと、その直前のフレームとの画像が同一であるか否かを判定する判定手段と、
前記判定手段で直前のフレームと同一の画像であると判定されなかったフレームの圧縮フレームデータを、伸張手段に入力する入力手段と、
前記伸張手段で伸張されたフレームデータの画像を少なくとも１フレーム分として表示するよう制御する表示制御手段と、
前記判定手段で直前のフレームと同一の画像であると判定されたフレームの圧縮フレームデータは、前記伸張手段へ入力しないように制御する制御手段と
を有することを特徴とする動画再生装置。
【請求項２】
前記直前のフレームと同一の画像であると判定された場合に、前記表示制御手段によって表示されていた直前のフレームの画像は、該直前のフレームと同一の画像であると判定されたフレームの画像として継続して表示されることを特徴とする請求項１に記載の動画再生装置。
【請求項３】
前記判定手段は、前記属性解析手段での解析に基づいて、前記動画の１フレームの全てのマクロブロックがスキップトマクロブロックであるか否かを判定することを特徴とする請求項１または２に記載の動画再生装置。
【請求項４】
前記属性解析手段は、前記属性から、前記動画の１フレームのデータサイズを取得し、
前記判定手段は、前記１フレームのデータサイズが所定のサイズである場合に、該１フレームの全てのマクロブロックがスキップトマクロブロックであると判定することを特徴とする請求項３に記載の動画再生装置。
【請求項５】
前記属性解析手段は、前記属性から、前記動画の１フレームのチェックサムを取得し、
前記判定手段は、前記１フレームのチェックサムが所定の値であった場合に、該１フレームの全てのマクロブロックがスキップトマクロブロックであると判定することを特徴とする請求項３に記載の動画再生装置。
【請求項６】
前記属性解析手段は、前記属性から、前記動画の１フレームのハッシュ値を取得し、
前記判定手段は、前記１フレームのハッシュ値が所定の値であった場合に、
該１フレームの全てのマクロブロックがスキップトマクロブロックであると判定することを特徴とする請求項３に記載の動画再生装置。
【請求項７】
前記制御手段は、前記動画の早送りあるいは逆再生を行う場合は、直前のフレームと同一の画像であると判定されたフレームの圧縮フレームデータも前記伸張手段へ入力するよう制御することを特徴とする請求項１乃至６のいずれか１項に記載の動画再生装置。
【請求項８】
動画の属性を解析する属性解析ステップと、
前記属性解析ステップでの解析に基づいて、前記動画の１フレームと、その直前のフレームとの画像が同一であるか否かを判定する判定ステップと、
前記判定ステップで直前のフレームと同一の画像であると判定されなかったフレームの圧縮フレームデータを、伸張手段に入力する入力ステップと、
前記伸張手段で伸張されたフレームデータの画像を少なくとも１フレーム分として表示するよう制御する表示制御ステップと、
前記判定ステップで直前のフレームと同一の画像であると判定されたフレームの圧縮フレームデータは、前記伸張手段へ入力しないように制御する制御ステップと
を有することを特徴とする動画再生方法。
【請求項９】
コンピュータを、
動画の属性を解析する属性解析手段、
前記属性解析手段での解析に基づいて、前記動画の１フレームと、その直前のフレームとの画像が同一であるか否かを判定する判定手段、
前記判定手段で直前のフレームと同一の画像であると判定されなかったフレームの圧縮フレームデータを、伸張手段に入力する入力手段、
前記伸張手段で伸張されたフレームデータの画像を少なくとも１フレーム分として表示するよう制御する表示制御手段、
前記判定手段で直前のフレームと同一の画像であると判定されたフレームの圧縮フレームデータは、前記伸張手段へ入力しないように制御する制御手段
として機能させるためのプログラム。
【請求項１０】
コンピュータを、
動画の属性を解析する属性解析手段、
前記属性解析手段での解析に基づいて、前記動画の１フレームと、その直前のフレームとの画像が同一であるか否かを判定する判定手段、
前記判定手段で直前のフレームと同一の画像であると判定されなかったフレームの圧縮フレームデータを、伸張手段に入力する入力手段、
前記伸張手段で伸張されたフレームデータの画像を少なくとも１フレーム分として表示するよう制御する表示制御手段、
前記判定手段で直前のフレームと同一の画像であると判定されたフレームの圧縮フレームデータは、前記伸張手段へ入力しないように制御する制御手段
として機能させるためのプログラムを記録したコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディジタル圧縮された動画像を伸張、再生する動画再生装置、動画再生方法、プログラム及び記録媒体に関するものである。
【背景技術】
【０００２】
近年、デジタル映像を高効率で圧縮符号化する技術が発達し、パーソナルコンピュータ（以下、ＰＣ）はもちろんのこと、デジタルカメラや携帯電話などでも圧縮符号化されたデジタル映像を復号、伸張して再生することが可能になってきている。
【０００３】
一般的に用いられるデジタル映像の圧縮符号化方式、たとえばＨ．２６４やＭＰＥＧなどでは、映像を構成する各画像（以下、フレーム）を小さな矩形領域（以下、ＭＢ：マクロブロック）に分割する。そのＭＢごとに空間的相関または時間的相関を用いて予測データを作成する。そして、ＭＢの画像データと予測データとの差分を直交変換して得られた変換係数（差分係数）を量子化し、スキャン変換した後に可変長符号化を行い、さらに空間的冗長性を削減することで高い符号化効率を得るものである。
【０００４】
しかしながら、このような圧縮符号化されたデジタル映像の再生には、膨大な演算とメモリ転送が必要であり、処理能力や消費電力などの観点から、再生可能な映像データには、解像度やフレームレート、ビットレートなどについて制約が付くことも少なくない。
【０００５】
このような状況を鑑み、メモリ伝送量を削減するとともに、消費電力を削減することができる動画再生装置が提案されている。例えば特許文献１、特許文献２には、入力ビットストリームに対して復号を行い、出力される符号化情報に基づいて、伸張処理を行うＭＢが、ある条件を満たす場合に、予測フレームメモリや表示用フレームメモリを更新しない技術が記載されている。これにより、メモリ伝送量を削減している。
【０００６】
また、近年、動画記録中に静止画の撮影を行うことも可能になってきている。動画撮影中の静止画記録では、静止画撮影により動画記録を中断する間に、動画ファイルが静止画撮影を挟んで２つに分割されないよう、黒画像や静止画像からの代替フレームを挿入した動画ファイルを作成することができる。この際、動画像データのデータサイズを小さくし、記録媒体への書き込み負荷を軽減する撮像装置が提案されている（特許文献３）。特許文献３の撮像装置では、図６に示すような動画データを作成する。図６では、静止画撮影により動画記録中断中に挿入する複数フレームの黒画像と複数フレームの静止画代替画像（ストップモーション画像）をスキップトマクロブロック画像（以下、ＳＭＢ画像：全ＭＢがＳＭＢの画像）としている。また、ＳＭＢ画像とは、フレーム間圧縮された画像の一種であり、フレーム間の差分情報、一例として、動きベクトルがゼロの画像である。スキップトマクロブロック画像は、ＶＧＡサイズでも数十バイト程度の非常に小さいデータサイズの画像データである。このＳＭＢ画像は、前のフレームと全く同じ画像であることを示している。
【特許文献１】特開２０００−１１５７７７号公報
【特許文献２】特開２００７−６７５２６号公報
【特許文献３】特願２００８−０５３４１５号
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、図６のような動画データを再生するにあたって、ＳＭＢ画像を再生する際には、全てのＭＢに対して前のフレームを参照する必要がある。このために、メモリ転送量が大変大きくなり、処理負荷や消費電力の増大を招くことになる。したがって、よりメモリ伝送量や消費電力を削減することが望まれる。
【０００８】
本発明は上記課題を鑑みてなされたものであり、メモリ伝送量や消費電力を削減することが可能な動画再生装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明の請求項１に記載の動画再生装置は、
動画の属性を解析する属性解析手段と、
前記属性解析手段での解析に基づいて、前記動画の１フレームと、その直前のフレームとの画像が同一であるか否かを判定する判定手段と、
前記判定手段で直前のフレームと同一の画像であると判定されなかったフレームの圧縮フレームデータを、伸張手段に入力する入力手段と、
前記伸張手段で伸張されたフレームデータの画像を少なくとも１フレーム分として表示するよう制御する表示制御手段と、
前記判定手段で直前のフレームと同一の画像であると判定されたフレームの圧縮フレームデータは、前記伸張手段へ入力しないように制御する制御手段と
を有することを特徴とする。
【００１０】
また、本発明の請求項８に記載の動画再生方法は、
動画の属性を解析する属性解析ステップと、
前記属性解析ステップでの解析に基づいて、前記動画の１フレームと、その直前のフレームとの画像が同一であるか否かを判定する判定ステップと、
前記判定ステップで直前のフレームと同一の画像であると判定されなかったフレームの圧縮フレームデータを、伸張手段に入力する入力ステップと、
前記伸張手段で伸張されたフレームデータの画像を少なくとも１フレーム分として表示するよう制御する表示制御ステップと、
前記判定ステップで直前のフレームと同一の画像であると判定されたフレームの圧縮フレームデータは、前記伸張手段へ入力しないように制御する制御ステップと
を有することを特徴とする。
【００１１】
また、本発明の請求項９に記載のプログラムは、
コンピュータを、
動画の属性を解析する属性解析手段、
前記属性解析手段での解析に基づいて、前記動画の１フレームと、その直前のフレームとの画像が同一であるか否かを判定する判定手段、
前記判定手段で直前のフレームと同一の画像であると判定されなかったフレームの圧縮フレームデータを、伸張手段に入力する入力手段、
前記伸張手段で伸張されたフレームデータの画像を少なくとも１フレーム分として表示するよう制御する表示制御手段、
前記判定手段で直前のフレームと同一の画像であると判定されたフレームの圧縮フレームデータは、前記伸張手段へ入力しないように制御する制御手段
として機能させるためのプログラムであることを特徴とする。
【００１２】
また、本発明の請求項１０に記載の記録媒体は、
コンピュータを、
動画の属性を解析する属性解析手段、
前記属性解析手段での解析に基づいて、前記動画の１フレームと、その直前のフレームとの画像が同一であるか否かを判定する判定手段、
前記判定手段で直前のフレームと同一の画像であると判定されなかったフレームの圧縮フレームデータを、伸張手段に入力する入力手段、
前記伸張手段で伸張されたフレームデータの画像を少なくとも１フレーム分として表示するよう制御する表示制御手段、
前記判定手段で直前のフレームと同一の画像であると判定されたフレームの圧縮フレームデータは、前記伸張手段へ入力しないように制御する制御手段
として機能させるためのプログラムを記録したコンピュータが読み取り可能な記録媒体であることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、ＳＭＢ画像を再生する際のメモリ伝送量や消費電力を削減することができる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して本発明の好適な実施形態を説明する。
【００１５】
図１（ａ）に本発明が実施されうる動画再生装置の外観図を示す。表示部１３は画像や各種情報を表示する表示部である。コネクタ１１２は接続ケーブルと動画再生装置１０とをつなぐコネクタである。操作部１４はユーザーからの各種操作を受け付ける各種スイッチ、ボタン、タッチパネル等の操作部材より成る操作部である。記録媒体２０はメモリカードやハードディスク等の記録媒体である。記録媒体スロット２０１は記録媒体２０を格納するためのスロットである。記録媒体スロット２０１に格納された記録媒体２０は、動画再生装置１０との通信が可能となる。蓋２０３は記録媒体スロット２０１の蓋である。
【００１６】
図１（ｂ）は本発明が実施されうる動画再生装置１０の構成例を示している。図示のように、動画再生装置１０は内部バス１９で接続されたＣＰＵ（中央演算装置）１１、ＲＯＭ１２、表示部１３、操作部１４、ＤＲＡＭ１５、記録媒体Ｉ／Ｆ１６、画像伸張回路１７、画像処理回路１８、撮像部２１を備えている。
【００１７】
ＣＰＵ１１は後述する各処理部やデータフローなどを制御する制御部として機能する。ＲＯＭ１２は、ＣＰＵ１１の処理手順に係るプログラム（ファームウェア）や各種情報を記憶している。
【００１８】
表示部１３はカラー液晶ディスプレイ等で構成され、画像を再生表示したり、グラフィックユーザインタフェースを表示するために用いる。なお、表示部１３に表示される映像は、コネクタ１１２（図１（ｂ）には不図示）を介して、あるいは無線通信により、ＴＶ等の外部表示装置に出力して表示させることもできる。
【００１９】
操作部１４はユーザからの指示を受け付けるための操作部材であり、各種ボタンや十字キー、コントロールホイール、ダイヤルスイッチなどである。
【００２０】
ＤＲＡＭ１５は、ＣＰＵ１１のワークエリアとして使用され、各種プログラムを展開したり、画像データや表示用データ、画像復号後のデータなどを一時的に蓄えるバッファー機能を有する。通常は、ＤＲＡＭ１５との間にメモリーコントローラを介しデータの書き込みや読み出しを行うが、ここでは図示を省略する。また、図示しないが、各処理部とＤＲＡＭ１５間には、ＣＰＵとのＲｅａｄ／Ｗｒｉｔｅを介さないＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）転送を行うためのＤＭＡコントローラを備えている。
【００２１】
記録媒体Ｉ／Ｆ１６は、画像データをＣＦ（Ｃｏｍｐａｃｔ  Ｆｌａｓｈ）カードやＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）カードなどの記録媒体へ書き込んだり、読み出したりするためのインタフェースである。記録媒体２０は上述したＣＦカードやＳＤカードなどの脱着可能な記録媒体である。なお、使用する記録媒体は、ランダムアクセス可能な記録媒体であればその種類は問わない。例えば、光ディスク（ＤＶＤ）やハードディスクでも構わない。
【００２２】
画像伸張回路１７は、Ｈ．２６４形式等の圧縮された画像データをＹＵＶデータに伸張する。この画像伸張回路１７に関しては図２を用いて詳細を後述する。
【００２３】
画像処理回路１８は、上述の画像伸張回路１７で伸張されたＹＵＶデータを任意のサイズにリサイズしたり、回転したり、色変換したりする。
【００２４】
撮像部２１はレンズ、絞りやシャッター、ＣＣＤセンサーやＣＭＯＳセンサー等の撮像素子からなり、被写体を撮像する撮像部である。
【００２５】
図２は図１（ｂ）で前述した、内部バス１９で接続された画像伸張回路１７とＤＲＡＭ１５の構成例である。入力ビットストリームを復号・伸張し、画像データを出力する画像伸張回路１７と、伸張後の画像データを予測データとして蓄積するためのＤＲＡＭ１５からなる。画像伸張回路１７は可変長復号部１７１、スキャン変換部１７２、逆量子化部１７３、逆ＤＣＴ（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ）部１７４、動き補償画像再生部１７５、メモリ制御部１７６を備えている。また、ＤＲＡＭ１５は、入力ビットストリームを蓄積しておくバッファメモリ１５１と、予測フレームメモリ１５２と、表示用フレームメモリ１５３を含む。
【００２６】
予測フレームメモリ１５２および表示用フレームメモリ１５３は、それぞれ複数フレーム分の伸張画像および表示用データを蓄積できる容量を有している。そして、現在伸張処理に使用されている予測フレームメモリや表示中の表示用フレームメモリを上書きしてしまわないように制御される。
【００２７】
可変長復号部１７１は、バッファメモリ１５１に蓄積されている入力ビットストリームから読み出され、外部から入力された１フレーム分のビットストリームに対して可変長復号を行う。さらに可変長復号によって得られた動きベクトルや変換係数などの情報をスキャン変換部１７２、動き補償画像再生部１７５に出力する。可変長復号部１７１から出力される変換係数は、ＤＣ成分を先頭に、低周波成分から高周波成分の順に並んでいる。なお、ビットストリームが全て可変長符号化されているわけではないため、可変長復号部１７１は、固定長符号についても復号を行う。
【００２８】
スキャン変換部１７２は、可変長復号部１７１から入力された変換係数の並び順をラスター順に変換し、逆量子化部１７３に出力する。
【００２９】
逆量子化部１７３は、スキャン変換部１７２から入力されたスキャン変換済みの変換係数を逆量子化し、逆量子化後の変換係数を逆ＤＣＴ部１７４に出力する。
【００３０】
逆ＤＣＴ部１７４は、逆量子化部１７３から入力された逆量子化後の変換係数に対し、逆ＤＣＴを行い、逆ＤＣＴ後の変換係数を動き補償画像再生部１７５に出力する。
【００３１】
動き補償画像再生部１７５は、可変長復号部１７１から入力された動きベクトルなどの情報（符号化情報）に基づいて、メモリ制御部１７６を介して、予測フレームメモリ１５２に蓄積されている既に伸張済みの画像（予測データ）を読み出す。そして逆ＤＣＴ部１７４から入力された逆ＤＣＴ後の変換係数と加算して伸張データを生成する。生成した伸張データは、メモリ制御部１７６を介して、読み出した予測データを上書きしないように予測フレームメモリ１５２の適切なアドレスに書き込まれるとともに、外部に出力される。外部に出力された伸張済みの画像データは、表示用のサイズおよび形式に加工され表示用フレームメモリ１５３に書き込まれる。
【００３２】
次に図３のフローチャートを用いて、本実施形態の動画再生装置１０における再生処理について説明する。この再生処理における各処理は、ＣＰＵ１１がＲＯＭ１２等に格納されたプログラムをＤＲＡＭ１５に展開して実行することにより実現される。
【００３３】
操作部１４により、動画の再生開始が指示されると、ステップＳ１０１において、ＣＰＵ１１は、記録媒体２０に記録されている動画ファイルのヘッダを読み出し、ＤＲＡＭ１５に書き込む。動画ヘッダには記録時間、ファイルサイズ、フレームレート、そして各フレームのデータサイズ等の属性情報が記録されている。なお、動画ファイルの属性情報が、動画ファイルのヘッダ以外、たとえば動画のサムネイルファイルや、その他のファイルに記録されている場合も考えられる。その場合は動画ファイルのヘッダではなく、動画ファイルの属性情報が記録されたファイルから、属性情報を含む部分を読み出してＤＲＡＭ１５に書き込む。
【００３４】
続いて、ステップＳ１０２において、ＣＰＵ１１は、再生開始フレームに対し、画像伸張回路１７における伸張、画像処理回路１８における表示用のサイズへのリサイズを行い、ＤＲＡＭ１５の表示用フレームメモリ１５３に書き込む。こうして表示部１３に再生開始フレームを表示する。この再生開始フレーム表示処理については図４を用いて後述する。
【００３５】
ステップＳ１０２において再生開始フレームの表示がなされると、ステップＳ１０３において、ＣＰＵ１１は、前回のタイマー計測開始から１フレーム分の時間が経過したか否かを判定する。１フレーム分の時間が経過していないと判定するとステップＳ１０３を繰り返し、１フレーム分の時間が経過するまでここで処理を待たせる。１フレーム分の時間が経過したと判定するとステップＳ１０５に処理を進める。ここで、１フレーム分の時間とはフレームレートが３０ｆｐｓの場合約３３ｍｓとなる。
【００３６】
ステップＳ１０４では、タイマーの計測を開始する。ステップＳ１０４の前にタイマーによる計測が行われていた場合は、一度クリアしてから再びタイマーの計測を開始する。
【００３７】
ステップＳ１０５では、記録媒体２０に記録されている動画ファイルから、ＤＲＡＭ１５に読み出された最後の位置より所定サイズ分の動画データを読み出し、ＤＲＡＭ１５のバッファメモリ１５１に書き込む。
【００３８】
ステップＳ１０６では、ＣＰＵ１１は、これから伸張処理を行おうとしているフレームであるフレームｎのデータサイズが、所定のデータサイズか否かを判定する。これは、動画の１フレームであるフレームｎの全てのマクロブロック（ＭＢ）がスキップトマクロブロック（ＳＭＢ）か否かの判定である。ＳＭＢであるＭＢはデータサイズが一意に定まるため、全てのＭＢがＳＭＢであるＳＭＢ画像は、記録画素数に応じて一意に定まる固定値のデータサイズである。したがって、フレームｎのデータサイズがその固定値のデータサイズ（所定のデータサイズ）であれば、フレームｎはＳＭＢ画像であると判定できる。なお、フレームｎのデータサイズは、ステップＳ１０１で読み出した動画ファイルの属性情報を解析することによって取得する（属性解析）。
【００３９】
ステップＳ１０６において、フレームｎのデータサイズが所定のデータサイズではないと判定すると、すなわちフレームｎの全てのＭＢがＳＭＢというわけではないと判定した場合は、ステップＳ１０７に進む。ステップＳ１０７において、ＣＰＵ１１は、フレームｎの圧縮フレームデータを画像伸張回路１７に入力して伸張し、画像処理回路１８において表示用のサイズにリサイズする。そしてＤＲＡＭ１５の表示用フレームメモリ１５３に書き込む伸張処理を行う。このステップＳ１０７の伸張処理の詳細は図５を用いて後述する。
【００４０】
続いて、ステップＳ１０８において、ＣＰＵ１１は、表示部１３にステップＳ１０７において伸張したフレームｎを表示するよう表示の更新を行い、ステップＳ１０９へ進む（表示制御）。
【００４１】
一方、ステップＳ１０６において、フレームｎのデータサイズが所定のデータサイズある、すなわちフレームｎがＳＭＢ画像であると判定した場合は、ステップＳ１０７の伸張処理、およびステップＳ１０８の表示更新を省略し、ステップＳ１０９へ進む。すなわち、ＳＭＢ画像に対しては、画像伸張回路１７による可変長複合、スキャン変換、逆量子化、逆ＤＴＢ，動き補償画像再生の何れも行わず、直前のフレームで表示されていた画像の表示を継続する。
【００４２】
ステップＳ１０９では、ＣＰＵ１１は、フレームｎが再生中の動画ファイルの最終フレームＺであるか否かを判定する。ｎ＝Ｚであれば、最終フレームまで再生が完了しているため再生処理を終了する。ｎ≠Ｚであれば、まだ途中のフレームまでしか再生が完了していないため、ステップＳ１１０で、ｎ＝ｎ＋１として、ステップＳ１０３に戻り、次のフレームの処理を行う。
【００４３】
このように、本発明における動画の再生処理では、再生しようとしているフレームの圧縮フレームデータを伸長することなく、属性情報にもとづいてＳＭＢ画像であるか否かを判定する。そして、再生しようとするフレームがＳＭＢ画像であった場合には、そのフレームの圧縮フレームデータは画像伸張回路１７へ入力せず、伸張処理および表示更新を行わない。ＳＭＢ画像は前フレームで表示された画像と全く同じ画像であるため、ＳＭＢ画像である圧縮フレームデータは全く処理せず、あるいはほぼ処理することなく、前のフレームの表示を継続することで、今回のフレームの画像として見せるのである。このため、大幅にメモリ伝送量や消費電力を削減することが可能となる。
【００４４】
なお、ここではＳＭＢ画像かどうかの判定にフレームのデータサイズを使用したが、再生しようとしているフレームの圧縮フレームデータを伸長することなく、属性情報を解析することによってＳＭＢ画像と判定できる方法であれば、これに限るものではない。例えば、ＳＭＢ画像であるフレームのチェックサムやフレームのハッシュ値は、同じ記録画素数であれば全て同じ値をとる。これを用いて、圧縮フレームデータを伸張することなく、属性情報を解析することによってフレームのチェックサムやハッシュ値を取得し、それが所定の値である場合にＳＭＢ画像であると判定するようにすることもできる。また、動画の記録時あるいはその他のタイミングで、ＳＭＢ画像であるフレームのフレーム番号を属性情報として記録しておき、それを参照してＳＭＢ画像を判定してもよい。
【００４５】
また、早送り、逆再生等の特殊再生の場合は、再生しようとしているフレームがＳＭＢ画像であっても、前フレームで表示されていた画像をそのまま利用できるとは限らない。そのため、通常どおり画像伸張回路１７への圧縮フレームデータの入力を行い、伸張処理および表示更新を行ってもよい。
【００４６】
図４に、図３のステップＳ１０２における再生開始フレーム表示処理の詳細なフローチャートを示す。この再生開始フレーム表示処理における各処理は、ＣＰＵ１１がＲＯＭ１２等に格納されたプログラムをＤＲＡＭ１５に展開して実行することにより実現される。
【００４７】
ステップＳ２０１で、ＣＰＵ１１は、再生開始フレームＸがＩフレームか否かを判定する。再生開始フレームＸとしては、前回の再生時に最後に表示したフレームの次のフレームとしても、動画ファイルの先頭フレームとしてもよい。Ｉフレームとはイントラフレームのことであり、フレーム間予測を用いずに符号化されたフレームである。再生開始フレームＸがＩフレームであると判定するとステップＳ２０２へ進み、再生開始フレームＸがＩフレームでないと判定するとステップＳ２０３へ進む。
【００４８】
ステップＳ２０２では、ＣＰＵ１１は、記録媒体２０に記録されている動画ファイルから、再生開始フレームＸから所定時間分の動画データを読み出し、ＤＲＡＭ１５のバッファメモリ１５１に書き込む。続いて、ステップＳ２０４で、ＣＰＵ１１は、これから伸張処理を行おうとしているフレームｎに再生開始フレームＸを設定し、ステップＳ２０６に進む。
【００４９】
一方、ステップＳ２０３では、ＣＰＵ１１は、記録媒体２０に記録されている動画ファイルから、再生開始フレームＸの直前のＩフレームＹから再生開始フレームＸまでと、再生開始フレームＸから所定時間分の動画データを読み出す。そしてＤＲＡＭ１５のバッファメモリ１５１に書き込む。これは、再生開始フレームＸがＩフレームではない場合、直前のＩフレームＹから順に伸張処理を行っていかないと再生開始フレームＸが伸張できないからである。続いて、ステップＳ２０５で、ＣＰＵ１１は、これから伸張処理を行おうとしているフレームｎに、再生開始フレームＸの直前のＩフレームＹを設定し、ステップＳ２０６に進む。
【００５０】
ステップＳ２０６で、ＣＰＵ１１は、これから伸張処理を行おうとしているフレームであるフレームｎのデータサイズが、所定のデータサイズか否かを判定する。これは、前述した図３のステップＳ１０６と同様に、フレームｎの全てのＭＢがＳＭＢかどうかの判定である。
【００５１】
ステップＳ２０６において、フレームｎのデータサイズが所定のデータサイズではなかったと判定すると、すなわちフレームｎの全てのＭＢがＳＭＢというわけではないと判定するとステップＳ２０７に進む。ステップＳ２０７では、ＣＰＵ１１は、フレームｎの圧縮フレームデータを画像伸張回路１７に入力して伸張し、ステップＳ２０８に進む。このステップＳ２０７の伸張処理は、前述した図３のステップＳ１０７と同様の処理であり、詳細は図５を用いて後述する。
【００５２】
一方、ステップＳ２０６において、フレームｎのデータサイズが所定のデータサイズであると判定すると、すなわちフレームｎの全ＭＢがＳＭＢであると判定すると、ステップＳ２０７の伸張処理を省略し、ステップＳ２０８へ進む。
【００５３】
ステップＳ２０８で、ＣＰＵ１１は、ｎ＝ｎ＋１として、ステップＳ２０９に進む。続いてステップＳ２０９で、ｎ＞Ｘ、つまり再生開始フレームＸまで伸張処理が完了しているか否かを判定する。
【００５４】
ステップＳ２０９において、ｎ≦Ｘ、つまり再生開始フレームＸまで伸張処理が完了していないと判定した場合は、ステップＳ２０６に戻り、次のフレームの処理を行う。
【００５５】
ステップＳ２０９において、ｎ＞Ｘ、つまり再生開始フレームＸまで伸張処理が完了したと判定した場合は、ステップＳ２１０で、表示部１３にステップＳ２０７において伸張したフレームｎを表示するよう表示の更新を行う。
【００５６】
このように、再生開始フレームまで伸張していく際にも、伸張しようとするフレームがＳＭＢ画像であった場合には、画像伸張回路１７へのビットストリームの入力を行わず、伸張処理を行わないことで、メモリ伝送量や消費電力を削減することが可能である。
【００５７】
図５は、図３のステップＳ１０７、図４のステップＳ２０７における伸張処理の詳細なフローチャートを示す。この伸張処理における各処理は、ＣＰＵ１１がＲＯＭ１２等に格納されたプログラムをＤＲＡＭ１５に展開して実行し、画像伸張回路１７及び画像処理回路１８を制御することにより実現される。
【００５８】
ステップＳ３０１で、ＣＰＵ１１は、バッファメモリ１５１に蓄積されている動画データから、１フレーム分のビットストリーム（フレームｎの圧縮フレームデータ）を読み出し、画像伸張回路１７に入力する。
【００５９】
ステップＳ３０２では、ステップＳ３０１で入力された１フレーム分のビットストリームに対して、可変長復号部１７１で可変長復号を行い、変換係数などの情報をスキャン変換部１７２に出力する。
【００６０】
ステップＳ３０３では、ステップＳ３０２で可変長復号部１７１から入力された変換係数をスキャン変換部１７２でラスター順に変換し、逆量子化部１７３に出力する。
【００６１】
ステップＳ３０４では、ステップＳ３０３でスキャン変換部１７２から入力されたスキャン変換済みの変換係数を、逆量子化部１７３で逆量子化し、逆ＤＣＴ部１７４に出力する。
【００６２】
ステップＳ３０５では、ステップＳ３０４で逆量子化部１７３から入力された逆量子化後の変換係数を、逆ＤＣＴ部１７４で逆ＤＣＴ処理し、動き補償画像再生部１７５に出力する。
【００６３】
ステップＳ３０６では、ステップＳ３０５で逆ＤＣＴ部１７４から入力された逆ＤＣＴ処理後の変換係数を、動き補償画像再生部１７５で、既に伸張済みの画像（予測データ）と加算する。そして伸張データとして予測フレームメモリ１５２に書き込むとともに、画像伸張回路１７から出力する。これは、可変長復号部１７１から入力された動きベクトルなどの情報（符号化情報）に基づいて行う。既に伸張済みの画像（予測データ）は、メモリ制御部１７６を介して予測フレームメモリ１５２から読み出す。
【００６４】
ステップＳ３０７では、画像伸張回路１７から出力された伸張済みの画像データを、画像処理回路１８において表示用のサイズおよび形式に加工し、表示用フレームメモリ１５３に書き込む。
【００６５】
以上、フレームｎの全てのマクロブロック（ＭＢ）がスキップトマクロブロック（ＳＭＢ）であれば（ＳＭＢ画像であれば）、伸張せずに直前の画像の表示を継続する例を説明した。しかし、伸張せずに直前の画像の表示を継続するべきフレームの判定方法はこれに限られるものではない。属性の解析によって、圧縮フレームデータを伸張処理することなく、動画の１フレームが直前のフレームと同一の画像であることが判定できるフレームであれば、本発明を適用することが可能である。ＳＭＢ画像以外のフレームであっても、直前のフレームと同一の画像であることが判定できるフレームに対しては、伸張せずに直前の画像の表示を継続することで、メモリ伝送量や消費電力を削減することが可能である。
【００６６】
なお、上述した実施の形態の処理は、各機能を具現化したソフトウェアのプログラムコードを記録した記憶媒体をシステム或いは装置に提供してもよい。そして、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによって、前述した実施形態の機能を実現することができる。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フロッピィ（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスクなどを用いることができる。或いは、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることもできる。
【００６７】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した各実施の形態の機能が実現されるだけではない。そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した各実施例の機能が実現される場合も含まれている。
【００６８】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれてもよい。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した各実施の形態の機能が実現される場合も含むものである。
【図面の簡単な説明】
【００６９】
【図１】（ａ）は本実施例の動画再生装置の外観図である。（ｂ）は本実施例の動画再生装置の構成ブロック図である。
【図２】本実施例における、内部バス１９で接続された画像伸張回路１７とＤＲＡＭ１５の構成例である。
【図３】本実施例の再生処理のフローチャートである。
【図４】本実施例の再生開始フレーム表示処理のフローチャートである。
【図５】本実施例の伸張処理のフローチャートである。
【図６】背景技術の動画データの構成を示す図である。
【符号の説明】
【００７０】
１０  動画再生装置
１１  ＣＰＵ（中央演算装置）
１２  ＲＯＭ
１３  表示部
１４  操作部
１５  ＤＲＡＭ
１６  記録媒体Ｉ／Ｆ
１７  画像伸張回路
１８  画像処理回路
１９  内部バス
２０  記録媒体
２１  撮像部
１５１  バッファメモリ
１５２  予測フレームメモリ
１５３  表示用フレームメモリ
１７１  可変長復号部
１７２  スキャン変換部
１７３  逆量子化部
１７４  逆ＤＣＴ部
１７５  動き補償画像再生部
１７６  メモリ制御部
【図１】
2010074241.tif 000003
【図２】
2010074241.tif 000004
【図３】
2010074241.tif 000005
【図４】
2010074241.tif 000006
【図５】
2010074241.tif 000007
【図６】
2010074241.tif 000008