(57)【特許請求の範囲】
【請求項１】
フレーム内予測符号化により生成されたキーフレームとフレーム間予測符号化により生成された非キーフレームが時系列で混在する動画像符号化情報を所定のファイル形式で記録する際、前記ファイル中に格納されたキーフレームを指定するインデックスを作成する動画像処理装置において、
前記動画像符号化情報の記録時、ファイル展開用メモリに前記ファイル形式に従った固定長のインデックス領域を確保し、該ファイルに前記キーフレームが格納される毎に前記インデックス領域の空き領域に当該キーフレームを指定するためのキーフレーム情報を追加書き込みする書込み処理手段と、
前記キーフレーム情報を新たに書込むことにより前記インデックス領域が記憶許容量を超えると判断された場合、該インデックス領域に既に記憶されているキーフレーム情報を間引いて空き領域を確保する間引き処理手段と
を具備することを特徴とする動画像処理装置。
【請求項２】
前記間引き処理手段は、既に記憶されているキーフレーム情報を交互に間引く処理手段から成ることを特徴とする請求項１記載の動画像処理装置。
【請求項３】
前記間引き処理手段は、既に記憶されているキーフレーム情報をキーフレームの重要度に応じて間引く処理手段から成ることを特徴とする請求項１記載の動画像処理装置。
【請求項４】
前記キーフレーム情報は、該当するキーフレームのサンプル番号であることを特徴とする請求項１乃至３のいずれか記載の動画像処理装置。
【請求項５】
前記キーフレーム情報は、該当するキーフレームの再生時刻であることを特徴とする請求項１乃至３のいずれか記載の動画像処理装置。
【請求項６】
前記キーフレーム情報は、該当するキーフレームの前記ファイルの先頭からのオフセット位置を示す情報であることを特徴とする請求項１乃至３のいずれか記載の動画像処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、フレーム内予測符号化により生成されたキーフレームとフレーム間予測符号化により生成された非キーフレームから成る動画像符号化情報を所定のファイル形式で記録する動画像処理装置に係わり、詳しくは、ファイル中に格納されたキーフレームを指定するインデックスを作成する機能の改良に関する。
【０００２】
【従来の技術】
動画像処理機能を有する装置の１つとして、例えば、カメラから入力される動画像情報を符号化して動画像符号化情報を生成する一方、マイクから入力された音声信号を符号化して音声符号化情報を生成し、これら動画像符号化情報と音声符号化情報を多重化して記録する動画像記録装置が知られている。
【０００３】
この種の装置では、動画像情報及び音声信号の符号化に際し、ＭＰＥＧ−４の圧縮技術を用いたものがある。
【０００４】
現在、ＩＳＯ（International Organisation for Standard）において標準化されているＭＰＥＧ−４動画圧縮技術では、画像を時系列に圧縮し、高能率圧縮符号化方法を提供している。
【０００５】
ＭＰＥＧ−４の動画像を構成する画像は、Ｉピクチャ（キーフレームともいう）、Ｐピクチャ、Ｂピクチャの３種類に分類することができる。
【０００６】
Ｉピクチャは、Intra符号化画像、すなわち、フレーム内符号化画像であり、フレーム間予測を用いずに画像の全てがイントラ符号化されている画像である。
【０００７】
Ｐピクチャは、Predictive符号化画像、すなわち、フレーム間順方向予測符号化画像であり、ＩまたはＰピクチャからの予測を行なうことによって画像が構成されている。
【０００８】
Ｂピクチャは、Bidirectionally Predictive符号化情報、すなわち、双方向予測符号化画像であり、順方向フレーム間予測符号と逆方向フレーム間予測符号と内挿的フレーム間予測符号とから画面が構成されている。
【０００９】
上述したＭＰＥＧ−４の動画圧縮技術により生成された動画像符号化ストリームを、蓄積メディアに保存する場合、一般的に音声符号化ストリームと多重し、一つのファイルとして保存する。
【００１０】
具体的なファイルフォーマットの例として、ＭＰＥＧ−４ファイルフォーマット（以下、ＭＰ４という）などがある。ＭＰ４は、ＭＰＥＧ−４のシステムの一部として規格化されている。
【００１１】
一方、蓄積メディアに蓄積されたファイルを再生する場合、ユーザはランダムアクセス機能を要求し、この要求に従い、ファイル中に記録された動画像符号化ストリームの中の任意の動画像にアクセスして当該動画像から順に再生を開始する。
【００１２】
しかしながら、上述したようにＭＰＥＧ−４動画像符号化ストリームはＩピクチャ、Ｐピクチャ、Ｂピクチャから構成されており、任意の動画像にアクセスしても初めから完全な画像が復号されない可能性がある。
【００１３】
すなわち、ユーザがファイルにランダムアクセスした時、Ｉピクチャの位置から再生を開始すれば、Ｉピクチャはフレーム内符号化画像であり、それ自体のみで完全な１枚の画像を復号することができるので、問題なく再生することができる。
【００１４】
しかし、ユーザがランダムアクセスした時にＰピクチャ若しくはＢピクチャの位置から再生を開始しようとすると、これらは予測符号化画像であるため、構成する画面を復号するためにはそのフレーム以前のフレーム情報が必要となり、完全な画像が復号されないことになり、画面には乱れた動画像が表示されることとなる。
【００１５】
このような状況の回避策として、ユーザがランダムアクセスした時にＰピクチャ若しくはＢピクチャにアクセスしようとした時、自動的にその直前のＩピクチャから復号を開始させるようにする方法がある。このような方法を適用することで、乱れた動画像を表示させることなくランダムアクセス時の再生を開始することができる。
【００１６】
上述したＭＰ４ファイル形式に従った動画像記録機能を有する従来の動画像記録装置においても、このような対策が施されている。
【００１７】
具体的には、ＭＰ４のヘッダには、全てのフレームの位置がファイルの先頭からのオフセットのバイト数と、Ｉピクチャのフレーム番号が列挙されている。
【００１８】
勿論、ＭＰ４のヘッダ情報は上述した２つの情報（オフセットのバイト数、Ｉピクチャのフレーム番号）の他に様々な情報が含まれるが、最低限、これら２つの情報を利用することで上述したランダムアクセス機能を実現している。
【００１９】
例えば、フレーム数がＮの動画像の場合、オフセット値を利用して以下のような方法によりランダムアクセス再生に対応できる。ここで、キーフレームはフレーム番号０番から１０フレーム毎に０，１０，２０，…というように挿入されているものとする。また、フレームのファイル先頭からのオフセットは、Ｐｎ（０≦ｎ＜Ｎ）とする。
【００２０】
この場合、ユーザがｘ番目のフレームにランダムアクセスすると仮定すると、Ｉピクチャが列挙されているテーブルからｘよりも小さい値を検索する。この検索の結果、ｘ´がｘ番目のフレームの直前のＩピクチャとなる。
【００２１】
次に、ｘ´のファイル中の位置をＭＰ４ヘッダから求めることで所定のフレームｘ´からアクセスすることができる。
【００２２】
しかしながら、かかる従来の動画像記録装置では、ＭＰ４ヘッダにＩピクチャのフレーム番号を列挙する必要があるため、フレーム数が増大するにつれてＩピクチャのフレーム番号の列挙する数も増えることになる。
【００２３】
従って、ヘッダの処理（Ｉピクチャのフレーム番号の列挙）に関するオーバヘッドが増大し、かつＩピクチャのフレーム番号を列挙するテーブルがフレーム数に合わせて可変長になるため、処理が複雑になっていた。
【００２４】
【発明が解決しようとする課題】
このように、キーフレーム（Ｉピクチャ）と非キーフレーム（ＰおよびＢピクチャ）から成る動画像符号化情報を１つのファイルとして記録する従来の動画像記録装置では、ファイル中に格納されたキーフレームのインデックス情報（例えば、フレーム番号）を格納するインデックス領域（ＭＰ４ヘッダ）が可変長であったため、フレーム数が増大するにつれてキーフレームのインデックス情報をインデックス領域に列挙する数も増え、該インデックス領域へのインデックス情報の書き込みに関するオーバヘッドが増大するという問題点があった。
【００２５】
また、キーフレームのインデックス情報を列挙するインデックス領域がフレーム数に合わせて可変長になるため、処理が複雑になるという問題点があった。
【００２６】
本発明は上記問題点を除去し、キーフレームのインデックス情報を列挙するインデックス領域のオーバヘッド増大を抑えると共に、キーフレームの数が増えるに従ってインデックス領域が増大することを防止しつつ管理の簡略化も図れる動画像処理装置を提供することを目的とする。
【００２７】
【課題を解決するための手段】
上記目的を達成するために、請求項１記載の発明は、フレーム内予測符号化により生成されたキーフレームとフレーム間予測符号化により生成された非キーフレームが時系列で混在する動画像符号化情報を所定のファイル形式で記録する際、前記ファイル中に格納されたキーフレームを指定するインデックスを作成する動画像処理装置において、前記動画像符号化情報の記録時、ファイル展開用メモリに前記ファイル形式に従った固定長のインデックス領域を確保し、該ファイルに前記キーフレームが格納される毎に前記インデックス領域の空き領域に当該キーフレームを指定するためのキーフレーム情報を追加書き込みする書込み処理手段と、前記キーフレーム情報を新たに書込むことにより前記インデックス領域が記憶許容量を超えると判断された場合、該インデックス領域に既に記憶されているキーフレーム情報を間引いて空き領域を確保する間引き処理手段とを具備することを特徴とする。
【００２８】
請求項２記載の発明は、上記請求項１記載の発明において、前記間引き処理手段は、既に記憶されているキーフレーム情報を交互に間引く処理手段から成ることを特徴とする。
【００２９】
請求項３記載の発明は、上記請求項１記載の発明において、前記間引き処理手段は、既に記憶されているキーフレーム情報をキーフレームの重要度に応じて間引く処理手段から成ることを特徴とする。
【００３０】
請求項４記載の発明は、上記請求項１乃至３のいずれか記載の発明において、前記キーフレーム情報は、該当するキーフレームのサンプル番号であることを特徴とする。
【００３１】
請求項５記載の発明は、上記請求項１乃至３のいずれか記載の発明において、前記キーフレーム情報は、該当するキーフレームの再生時刻であることを特徴とする。
【００３２】
請求項６記載の発明は、上記請求項１乃至３のいずれか記載の発明において、前記キーフレーム情報は、該当するキーフレームの前記ファイルの先頭からのオフセット位置を示す情報であることを特徴とする。
【００３３】
上記請求項１記載の発明によれば、キーフレーム情報を書込むインデックス領域を固定長としておき、インデックス領域が記憶許容量を超えるような場合は、該インデックス領域に既に記憶されているキーフレーム情報を間引いて新たなフレーム情報を追加することができる。これにより、入力するキーフレーム数が増えてもインデックス領域に列挙するキーフレーム情報数を増大させずに済み、該インデックス領域へのキーフレーム情報の書き込みに関するオーバヘッドを固定できると共に、インデックス領域を常に固定長に保つことでインデックスの管理も簡略化できる。
【００３４】
上記請求項２記載の発明によれば、インデックス領域が記憶許容量を超える場合、既に記憶されているキーフレーム情報を交互に間引くため、記録後のキーフレーム情報のインデックスとしての間隔をほぼ均等に保つことができ、該キーフレーム情報にランダムアクセスして再生する場合にもアクセス間隔の偏りを小さくできる。
【００３５】
上記請求項３記載の発明によれば、既に記憶されているキーフレーム情報をキーフレームの重要度に応じて間引くため、例えばテレビ画像を記録する場合に、コマーシャル直後のキーフレームや、シーンチェンジ時のキーフレーム等を最も高い優先度とすることで、これら重要な部分から再生するといった使い方が可能になる。
【００３６】
上記請求項４記載の発明によれば、キーフレーム情報は、該当するキーフレームのサンプル番号としたため、このサンプル番号を基に該当するキーフレームにアクセスして再生開始できる。
【００３７】
上記請求項５記載の発明によれば、キーフレーム情報は、該当するキーフレームの再生時刻としたため、この再生時刻を基に該当するキーフレームにアクセスして再生開始できる。
【００３８】
上記請求項６記載の発明によれば、キーフレーム情報は、該当するキーフレームの当該ファイルの先頭からのオフセット位置を示す情報としたため、このオフセット位置を基に該当するキーフレームにアクセスして再生開始できる。
【００３９】
【発明の実施の形態】
以下、本発明の実施の形態について添付図面を参照して詳細に説明する。
【００４０】
図１は、本発明に係わる動画像処理装置１００の全体構成を示すブロック図である。
【００４１】
この動画像処理装置１００は、音声を音声信号に変換するマイク部１０１、マイク部１０１等から入力される音声信号を符号化する音声符号化部１０２、動画像を撮影して動画像情報を生成するカメラ部１０３、カメラ部１０３等から入力された動画像情報を符号化する動画像符号化部１０４、音声符号化部１０２から入力される音声符号化情報及び動画像符号化部１０４から入力される動画像符号化情報を基に所定ファイルフォーマットのファイルを生成するファイル生成部１０５、ファイル生成部１０５により生成されるファイルを保持し外部記憶装置１５０に渡すローカルメモリ１０６、外部装置から音声信号や動画像情報を入力する際のインタフェースを司る外部インタフェース（Ｉ／Ｆ）部１０７、通信路とのインタフェースを司る通信インタフェース（Ｉ／Ｆ）部１０８、装置全体の制御を行なう制御部１０９を具備して構成される。
【００４２】
この動画像処理装置１００では、例えば、マイク部１０１から入力する音声信号及びカメラ部１０３から入力する動画像情報を以下の方法で外部記録装置１５０に記録する。
【００４３】
この場合、マイク部１０１から入力された音声信号は音声符号化部１０２により符号化され、音声符号化情報としてファイル生成部１０５に入力される。この音声符号化部１０２による音声符号化方法は、例えば、MPEG-4 Audio AACとする。
【００４４】
一方、カメラ部１０３から入力された動画像情報は動画像符号化部１０４により符号化され、動画像符号化情報としてファイル生成部１０５に入力される。この動画像符号化部１０４による動画像符号化方法は、例えば、MPEG-4 Videoとする。
【００４５】
ファイル生成部１０５は、入力されるＭＰＥＧ−４の音声符号化情報及び動画像符号化情報を基に所定ファイルフォーマット（この例では、ＭＰ４）に従ってファイルを生成し、ファイルイメージをローカルメモリ１０６に展開する。
【００４６】
ファイル生成部１０５によるファイル生成完了後、ローカルメモリ１０６に展開されたファイルイメージは外部記憶装置１５０に転送され、記憶される。
【００４７】
なお、ここでの説明では、音声信号についてはマイク部１０１からの入力としているが、これ限らず、ファイルに記録された音声信号を入力したり、外部Ｉ／Ｆ部１０７を介して例えばテレビ等の外部装置からの音声信号を入力したり、ネットワークに流れている音声信号を通信Ｉ／Ｆ部１０８を介して入力するようにしても良い。
【００４８】
また、動画像情報については、カメラ部１０３からの入力としているが、これ限らず、ファイルに記録された動画像情報を入力したり、外部Ｉ／Ｆ部１０７を介して例えばテレビ等の外部装置からの動画像情報を入力したり、ネットワークに流れている動画像情報を通信Ｉ／Ｆ部１０８を介して入力するようにしても良い。
【００４９】
また、ローカルメモリ１０６に展開されたファイルイメージの扱いについても、外部記憶装置１５０に記憶するばかりでなく、制御部１０９、通信Ｉ／Ｆ部１０８を介して他のネットワーク内の装置に転送するようにしても良い。
【００５０】
次に、ファイル生成部１０５におけるファイル生成動作について更に詳しく説明する。
【００５１】
上述の如く、この動画像記憶装置１００の音声符号化部１０２では、例えば、マイク部１０１から入力された音声信号を（MPEG-4 Audio AAC）により符号化して出力し、動画像符号化部１０４は、例えば、カメラ部１０３から入力される動画像情報を（MPEG-4 Video）により符号化して出力する。
【００５２】
その際、動画像符号化部１０４では、（MPEG-4 Video）の圧縮符号化方法を採用しているために、カメラ部１０３から入力する動画像情報を基に、１つのフレーム内の動画像情報だけを用いて符号化されたＩピクチャと、前のフレームとの間のフレーム間予測により符号化されたＰピクチャと、前後フレームとの間で順方向と逆方向のフレーム間予測手法を用いて符号化されたＢピクチャが生成される。
【００５３】
一方、上記Ｉピクチャ、Ｐピクチャ、Ｂピクチャが混在して時系列で入力するファイル生成部１０５では、これら入力情報を基にＭＰ４（ＭＰＥＧ−４のファイルフォーマット）に従って１つのファイルを生成する。
【００５４】
このファイル生成処理は、上記ＭＰ４ファイルフォーマットに従ったファイルイメージをローカルメモリ１０６に展開しながら行う。
【００５５】
ここで、ＭＰ４ファイルフォーマットの構成について、図２を参照して説明する。
【００５６】
図２は、ファイル生成部１０５におけるファイル生成時にローカルメモリ１０６に展開されるＭＰ４ファイルイメージを示す図である。
【００５７】
図２からも分かるように、ＭＰ４ファイルフォーマットの構成は、ヘッダ情報を格納するMoovボックス（ヘッダ情報格納部）と、実際の符号化情報を格納するMdatボックス（符号化情報格納部）から構成される。MoovボックスとMdatボックスは、共に、可変長な領域である。
【００５８】
また、Moovボックスは、Chunk Offsetボックス（オフセット情報格納テーブル）、Sample Sizeボックス（データサイズ情報格納テーブル）、Time to Sampleボックス（再生時刻情報格納テーブル）、Sync Sampleボックス（サンプル番号情報格納テーブル）などから構成される。
【００５９】
ファイル生成部１０５は、入力する音声符号化情報及び動画像符号化情報を基にファイルを生成する際、ローカルメモリ１０６内に図２に示すようなMoovボックス領域２１及びMdatボックス領域２２を確保する。
【００６０】
Mdatボックス領域２２には、音声符号化情報及び動画像符号化情報が格納される。これら音声符号化情報及び動画像符号化情報のMdatボックス領域２２への格納方法は、音声符号化情報及び動画像符号化情報が１フレーム以下に分割されていなければ任意に格納することができる。
【００６１】
一方、音声符号化情報及び動画像符号化情報の当該ファイル中の位置や再生時刻であるプレゼンテーション・タイム・スタンプ（ＰＴＳ）は、Moovボックス領域２１に格納される。
【００６２】
Moovボックス領域２１とMdatボックス領域２２は、固定長領域でも可変長領域でも良い。ここでは、説明を簡単にする意味で、Moovボックス領域２１とMdatボックス領域２２は固定長領域であるものとして以下の説明を続ける。より具体的には、Moovボックス領域２１の領域長をＭ１バイト、Mdatボックス領域２２の領域長をＭ２バイト固定とする。
【００６３】
ファイル生成部１０５は、音声符号化情報と動画像符号化情報の入力を受けると、これら符号化情報のデータ長とMdatボックス領域２２の空き領域とを比較し、該符号化情報をMdatボックス領域２２に格納可能であると判断された場合、当該符号化情報をMdatボックス領域２２に格納する。
【００６４】
これと同時に、ファイル生成部１０５は、該符号化情報の先頭のMdatボックス領域２２の先頭アドレスからのオフセットアドレス、データサイズ及びＰＴＳを当該ファイルのMoovボックス領域２１に格納する。
【００６５】
このうちのオフセットアドレスはChunk Offsetボックス２１１、上記データサイズはSample Sizeボックス２１２、上記ＰＴＳはTime to Sampleボックス２１３にそれぞれ格納される。
【００６６】
これらの各ボックスは、全て可変長のボックスである。つまり、符号化情報が追加される毎にこれらの各ボックスには対応する各情報が個々に追加格納されることになる。
【００６７】
なお、ＭＰ４ファイルフォーマットとしてファイルを構築するためには、上記の各ボックス以外に他のボックスも必要となるが、ここでは、本発明のファイル生成機能に関連するボックスのみを示し、他は省略している。
【００６８】
さて、ファイル生成部１０５に入力された符号化情報が動画像符号化情報の場合で、かつ、その動画像符号化情報がキーフレーム（Ｉピクチャ）の場合、当該ファイルのSync Sampleボックス２１４には、当該キーフレームのサンプル番号が追加される。
【００６９】
ここで、Sync Sampleボックス２１４は、固定長領域のボックスである。ファイル生成部１０５は、ＭＰ４ファイルフォーマットに従ってローカルメモリ１０６内にMoovボックス領域２１及びMdatボックス領域２２を確保する際、該Moovボックス領域２１内に固定長サイズのSync Sampleボックス２１４を確保する。
【００７０】
次に、Sync Sampleボックス２１４の詳しい構成について説明する。
【００７１】
図３は、Sync Sampleボックス２１４のテーブル構成を示す図である。
【００７２】
このSync Sampleボックス２１４は、エントリー数フィールド３０とエントリーフィールド４０から構成される。
【００７３】
エントリーフィールド４０には、キーフレームのサンプル番号が順次格納され、エントリー数フィールド３０には、上記エントリーフィールド４０に格納されるエントリー（キーフレームのサンプル番号）の数が格納される。
【００７４】
上述したように、Sync Sampleボックス２１４は固定長領域のため、この固定長領域の記憶許容エントリー数を超えたエントリー（キーフレームのサンプル番号）を格納することはできない。
【００７５】
そこで、この画像処理装置１００のファイル生成部１０５では、Sync Sampleボックス２１４のエントリーフィールド４０が全て埋まった場合には、既にこのエントリーフィールド４０に格納されているキーフレームのサンプル番号を幾つか間引いて空き領域を確保することで、更になるエントリの追加を可能にする。
【００７６】
このファイル生成部１０５による間引き処理について具体例を挙げてより詳しく説明する。
【００７７】
図４は、ファイル生成部１０５のエントリー間引き処理に係わるSync Sampleボックス２１４の格納情報の遷移を示す図である。
【００７８】
なお、この例では、Sync Sampleボックス２１４におけるエントリーフィールド４０の記憶許容エントリー数を“１０”とする。
【００７９】
この条件を満たす固定長サイズのエントリーフィールド４０に対して何もキーフレームのサンプル番号が格納されていない状態では、図４（ａ）に示すように、エントリー数フィールド３０には“０”が格納されている。
【００８０】
この状態で、キーフレームのサンプル番号例えば“０”が入力されると、図４（ｂ）に示すように、エントリー数フィールド３０の値が“１”に更新され、エントリーフィールド４０の１番目の領域にはこの時のキーフレームのサンプル番号“０”が格納される。
【００８１】
以後、キーフレームのサンプル番号１０，２０，３０，…が順次１つずつ入力されると、エントリー数フィールド３０の値が順次１ずつ更新され、エントリーフィールド４０の１番目，２番目，３番目，…の領域にはこの時のキーフレームのサンプル番号“１０”，“２０”，“３０”，…が順次格納される。
【００８２】
図４（ｃ）は、上記手順に従った格納処理により、エントリーフィールド４０の１０個の記憶領域が全て埋まった時の格納状態を示している。
【００８３】
この状態から、更にキーフレームのサンプル番号“１００”が入力されてくると、ファイル生成部１０５は、まず、エントリーフィールド４０の２番目、４番目、６番目、８番目、１０番目の領域に既に記憶されているエントリーを削除し、次いで３番目、５番目、７番目、９番目の領域に既に格納されているエントリーを順次上詰めにしたうえで、エントリー数フィールド３０の値を“５”に更新する。
【００８４】
そのうえで、更に、ファイル生成部１０５は、図４（ｄ）に示すように、エントリーフィールド４０の６番目の領域にこの時のキーフレームのサンプル番号“１００”を格納し、これに合わせてエントリー数フィールド３０の値を“６”に更新する。
【００８５】
これ以後、ファイル生成部１０５は、上記同様の手順で、入力されるキーフレームのサンプル番号をエントリーフィールド４０の空き領域に順次格納し、かつ該格納数に合わせてエントリー数フィールド３０の値を順次更新していくと共に、エントリーフィールド４０の記憶領域が全て埋まった時には、既にエントリーフィールド４０に格納されているエントリーを例えば格納領域順に交互に間引いて空き領域を確保しながら該空き領域へのエントリーの記録処理を続ける。
【００８６】
図５は、ファイル生成部１０５におけるエントリーフィールド４０へのキーフレームのサンプル番号追加処理を示すフローチャートである。
【００８７】
ファイル生成部１０５は、ファイルの記録処理が開始されることにより、記録対象の動画像符号化情報を順次入力し（ステップＳ５０１）、この入力された動画像情報がキーフレームであるかどうかを判断する（ステップＳ５０２）。
【００８８】
ここで、動画像符号化情報がキーフレームでないと判断されると（ステップＳ５０２ＮＯ）、次いでファイル生成部１０５は、記録処理が終了したかどうかを判断し（ステップＳ５０３）、記録処理が終了したと判断された場合（ステップＳ５０３ＹＥＳ）は処理を終了し、記録処理が終了していないと判断された場合（ステップＳ５０３ＮＯ）は、ステップＳ５０１に戻り、次の動画像符号化情報を入力する。
【００８９】
一方、上記ステップＳ５０１で入力された動画像符号化情報がキーフレームであると判断されると（ステップＳ５０２ＹＥＳ）、次いでファイル生成部１０５は、記録開始に先立ち、ＭＰ４ファイルフォーマットに従ってローカルメモリ１０６に確保したMoovボックス領域２１とMdatボックス領域２２のうち、Moovボックス領域２１のSync Sampleボックス２１４内のエントリーフィールド４０にキーフレームのサンプル番号を追加可能かどうかを判断する（ステップＳ５０４）。
【００９０】
具体的には、Sync Sampleボックス２１４のエントリー数フィールド３０の値を確認し、この値に１を加算することによりエントリーフィールド４０の記憶許容エントリー数“１０”を超えるかいなか（つまり、キーフレームのサンプル番号を新たに書込むことによりエントリーフィールド４０が記憶許容量を超えるかどうか）で上記追加の可否を判断する。
【００９１】
ここで、エントリーフィールド４０にキーフレームのサンプル番号を新たに追加可能であると判断された場合（ステップＳ５０４ＹＥＳ）、新たに入力したキーフレームのサンプル番号をエントリーフィールド４０に格納し、かつエントリー数フィールド３０の値を更新（ステップＳ５０６）した後、ステップＳ５０３に戻り、次の動画像符号化情報の入力を続行する。
【００９２】
これに対して、エントリーフィールド４０にキーフレームのサンプル番号を新たに追加できないと判断された場合（ステップＳ５０４ＮＯ）、エントリーフィールド４０に既に格納されているキーフレームのサンプル番号を適宜間引く処理を行う（ステップＳ５０５）。
【００９３】
具体的には、例えば、上述したように、既にエントリーフィールド４０に格納されているキーフレームのサンプル番号を格納領域順に交互に間引いて空き領域を確保する。
【００９４】
この間引き処理が終了した後、エントリーフィールド４０にはキーフレームのサンプル番号を記憶できる空き領域が確保されることになる。
【００９５】
これにより、ファイル生成部１０５は、ステップＳ５０５でエントリーフィールド４０の間引き処理を行った後、ステップＳ５０６に進み、新たに入力したキーフレームのサンプル番号をエントリーフィールド４０の空き領域に格納し、これに合わせてエントリー数フィールド３０の値を更新する。
【００９６】
その後、ファイル生成部１０５はステップＳ５０１に戻り、次の動画像符号化情報を入力する。そして、この入力された動画像符号化情報がキーフレームである場合（ステップＳ５０２ＹＥＳ）には、該キーフレームを対象として上記一連のサンプル番号追加記録処理（ステップＳ５０４→Ｓ５０６若しくはステップＳ５０４→Ｓ５０５→Ｓ５０６）を記録終了時（ステップＳ５０３ＹＥＳ）まで継続する。
【００９７】
以上の処理によりSync Sample２１４ボックスに格納されたキーフレームのサンプル番号は、該Sync Sampleボックス２１４を含むファイルのMdatボックス領域２２に記憶されたキーフレームをランダムアクセス機能によりアクセスして再生する際のインデックス情報として用いられる。
【００９８】
再生動作の一例を挙げると、上記ファイルを外部記憶装置１５０に記録した後、この外部装置１５０を動画像再生装置に接続し、該動画像再生装置から上記ＭＰ４ファイルをランダムアクセスして再生するといった運用が考えられる。
【００９９】
この時、動画像再生装置では、ランダムアクセス機能を用いて、ＭＰ４ファイルのSync Sampleボックス２１４内のエントリーフィールド４０に記憶されたキーフレームのサンプル番号を参照して、同ファイルのMdatボックス領域２２に格納されたフレーム中のキーフレームにアクセスし、該キーフレームから順に再生を開始させる。
【０１００】
このように、本発明の動画像処理装置１００では、ファイルに記録された動画像符号化情報をランダムアクセス機能により任意のキーフレームから再生開始させるにあたって、キーフレームを指示するためのキーフレーム情報（インデックス情報）を格納するインデックス領域を固定長とし、該インデックス領域が記憶許容量を超える状況下で新たなキーフレームが入力された場合、既に格納されているキーフレーム情報を適宜間引いて空き領域を確保し、この空き領域に新たなキーフレームに対応するキーフレーム情報を追加するようにしたため、入力するキーフレーム数が増えてもインデックス領域に列挙するキーフレーム情報数を増大させずに済み、該インデックス領域へのキーフレーム情報の書き込みに関するオーバヘッドを固定できると共に、インデックス領域を常に固定長に維持することでインデックスの管理も簡略化できる。
【０１０１】
ここで、インデックス領域が記憶許容量を超える場合、既に記憶されているキーフレーム情報を交互に間引くようにすれば、記録後のキーフレーム情報のインデックスとしての間隔をほぼ均等に保つことができ、該キーフレーム情報にランダムアクセスして再生する場合にもアクセス間隔の偏りを小さくできる。
【０１０２】
なお、上記実施例では、キーフレームを指定するためのキーフレーム情報（インデックス情報）をファイルのヘッダ部に付加しているが、当該インデックス情報は必ずしもファイルのヘッダ部にある必要はなく、ファイルの任意の場所にあっても良い。
【０１０３】
また、ＭＰ４ファイルフォーマットとは別のファイルフォーマットの形でインデックス情報を保持するものであっても良い。即ち、ＭＰ４ファイルフォーマットに限定せず、同等の機能を実現する別のファイルフォーマットでも同様のことが行える。
【０１０４】
また、上記実施例では、キーフレームのインデックス情報として、キーフレーム情報の中でも特にキーフレームのサンプル番号を例に挙げたが、インデックス情報はこれに限らず、キーフレームのファイル先頭からのオフセット値や再生時刻などを用いても良い。
【０１０５】
インデックス情報として上記いずれのキーフレーム情報を用いる場合も、その格納領域（インデックス領域：オフセット値を用いる場合は、図２のChunk Offsetボックス２１１。再生時刻を用いる場合は、図２のTime to Sampleボックス２１３）は固定長サイズとし、キーフレーム情報を新たに書込むことによりインデックス領域が記憶許容量を超えると判断された場合、該インデックス領域に既に記憶されているキーフレーム情報を間引いて空き領域を確保する間引き処理を行えば良い。
【０１０６】
また、インデックス情報の間引き方法も、上記実施例のように格納領域順に交互に間引く処理に限られるものではなく、例えば、キーフレームの重要度に応じ、重要度の低いものから順に対応するキーフレーム情報を間引くようにしても良い。
【０１０７】
キーフレームの重要度の一例としては、例えば、テレビ番組を録画する時のファイル生成において、コマーシャル（ＣＭ）直後のキーフレームや、シーンチェンジ時に相当する部分のキーフレーム等を最も高い優先度とすることが考えられる。
【０１０８】
これにより、例えば、ＣＭ直後のキーフレームを最優先度とした場合、上記録画ファイルを再生する際、ＣＭの直後の重要な内容のＩフレームにランダムにアクセスしてそこから再生開始させることができ、重要な内容を見逃さずに済む。
【０１０９】
この他、本発明は、上記し、且つ図面に示す実施例に限定することなく、その要旨を変更しない範囲内で適宜変形して実施できるものである。
【０１１０】
【発明の効果】
以上説明したように、本発明によれば、キーフレームを指定するためのキーフレーム情報を書込むインデックス領域を固定長とし、キーフレーム情報を新たに書込むことによりインデックス領域が記憶許容量を超えると判断された場合、該インデックス領域に既に記憶されているキーフレーム情報を間引いて空き領域を確保するようにしたため、入力するキーフレーム数が増えてもインデックス領域に列挙するキーフレーム情報数を増大させずに済み、該インデックス領域へのキーフレーム情報の書き込みに関するオーバヘッドを固定できると共に、インデックス領域を常に固定長に保つことでインデックスの管理も簡略化できる。
【図面の簡単な説明】
【図１】本発明に係わる動画像処理装置の全体構成を示すブロック図。
【図２】ローカルメモリに展開されるＭＰ４ファイルイメージを示す図。
【図３】ファイルヘッダ部のSync Sampleボックスのテーブル構成を示す図。
【図４】エントリー間引き処理に係わるSync Sampleボックスの格納情報の遷移を示す図。
【図５】ファイル生成部でのキーフレームサンプル番号追加処理を示すフローチャート。
【符号の説明】
１００  動画像処理装置
１０１  マイク部
１０２  音声符号化部
１０３  カメラ部
１０４  動画像符号化部
１０５  ファイル生成部
１０６  ローカルメモリ
１０７  外部インタフェース（Ｉ／Ｆ）部
１０８  通信インタフェース（Ｉ／Ｆ）部
１０９  制御部
１５０  外部記憶装置
２１  Moovボックス領域
２１１  Chunk Offsetボックス
２１２  Sample Sizeボックス
２１３  Time to Sampleボックス
２１４  Sync Sampleボックス
３０  エントリー数フィールド
４０  エントリーフィールド
２２  Mdatボックス領域
【図１】
0004040343.tif 000002
【図２】
0004040343.tif 000003
【図３】
0004040343.tif 000004
【図４】
0004040343.tif 000005
【図５】
0004040343.tif 000006