(57)【特許請求の範囲】
【請求項１】
第１の圧縮映像データと第２の圧縮映像データとを接続して編集する処理を実行する情報処理装置において、
前記第１の圧縮映像データに設定された第１の編集点を含む第１のデコード区間を復号処理して第１の非圧縮映像信号を生成するとともに、前記第２の圧縮映像データに設定された第２の編集点を含む第２のデコード区間を復号処理して第２の非圧縮映像信号を生成する復号手段と、
前記第１の非圧縮映像信号および前記第２の非圧縮映像信号が、前記第１の編集点および前記第２の編集点で接続された第３の非圧縮映像信号の所定の再エンコード区間を再符号化処理して第３の圧縮映像データを生成する再符号化手段と、
前記再符号化手段による再符号化処理時の発生符号量に基づいて、所定数のピクチャからなる区間を単位とする基本となるエンコード区間から延長された前記再エンコード区間を設定して、前記再符号化手段による再符号化処理を制御する制御手段と、
前記第１の圧縮映像データと前記第２の圧縮映像データのうち、再エンコードをされない区間の圧縮映像データと、前記再符号化手段により再符号化されて生成された前記第３の圧縮映像データとを切り替えて出力することによって、編集された編集圧縮映像データを生成する編集手段と
を備える情報処理装置。
【請求項２】
前記制御手段は、前記再符号化手段による前記再エンコード区間の再符号化処理における発生符号量の割り当てを制御するとともに、前記再エンコード区間のうち、前記基本となるエンコード区間に割り当てられる発生符号量が所定量よりも少ない場合、前記基本となるエンコード区間から延長された前記再エンコード区間を設定して、前記再符号化手段による再符号化処理を制御する
請求項１に記載の情報処理装置。
【請求項３】
前記制御手段は、前記基本となるエンコード区間に割り当てられる発生符号量が前記所定量よりも増加するように、前記再符号化手段による前記再エンコード区間の再符号化処理における発生符号量の割り当てを制御する
請求項２に記載の情報処理装置。
【請求項４】
前記制御手段は、前記再エンコード区間の開始点および終了点におけるオキュパンシの差分値に基づいて、前記基本となるエンコード区間に割り当てられる符号量が増加されるように、前記再エンコード区間における発生符号量の割り当てを制御する
請求項３に記載の情報処理装置。
【請求項５】
前記制御手段は、前記基本となるエンコード区間のピクチャの数に比例し、前記再エンコード区間のピクチャ数に略反比例する値に基づいて、前記基本となるエンコード区間に割り当てられる符号量が増加されるように、前記再エンコード区間における発生符号量の割り当てを制御する
請求項３に記載の情報処理装置。
【請求項６】
前記制御手段は、前記再エンコード区間のうち、前記基本となるエンコード区間以外の区間に割り当てる発生符号量を減少させるように、前記再エンコード区間における発生符号量の割り当てを制御する
請求項２に記載の情報処理装置。
【請求項７】
前記制御手段は、前記基本となるエンコード区間にエフェクトが施される場合、前記基本となるエンコード区間に施される前記エフェクトの種類に応じて、前記基本となるエンコード区間から延長された前記再エンコード区間を設定して、前記再符号化手段による再符号化処理を制御する
請求項１に記載の情報処理装置。
【請求項８】
前記制御手段は、前記基本となるエンコード区間の符号化難易度の上昇率に基づいて、前記基本となるエンコード区間から延長された前記再エンコード区間を設定して、前記再符号化手段による再符号化処理を制御する
請求項１に記載の情報処理装置。
【請求項９】
前記制御手段は、前記基本となるエンコード区間にエフェクトが施される場合、前記基本となるエンコード区間に施される前記エフェクトの種類に応じて、前記基本となるエンコード区間における前記発生符号量が増加するように、前記再符号化手段による前記再エンコード区間の再符号化処理における発生符号量の割り当てを制御する
請求項３に記載の情報処理装置。
【請求項１０】
前記制御手段は、前記基本となるエンコード区間の符号化難易度の上昇率に基づいて、前記基本となるエンコード区間における前記発生符号量が増加するように、前記再符号化手段による前記再エンコード区間の再符号化処理における発生符号量の割り当てを制御する
請求項３に記載の情報処理装置。
【請求項１１】
前記制御手段は、前記第１の圧縮映像データと前記第２の圧縮映像データのオキュパンシに関する情報を取得し、前記オキュパンシに関する情報に基づいて、前記再符号化手段による前記再エンコード区間の再符号化処理における発生符号量の割り当てを制御する
請求項２に記載の情報処理装置。
【請求項１２】
前記オキュパンシに関する情報は、前記再エンコード区間の先頭および終了位置に対応するピクチャのオキュパンシに関する情報である
請求項１１に記載の情報処理装置。
【請求項１３】
前記オキュパンシに関する情報は、前記第１の圧縮映像データおよび前記第２の圧縮映像データのユーザデータ領域に多重化されており、
前記制御手段は、前記第１の圧縮映像データと前記第２の圧縮映像データのユーザデータ領域に多重化されている前記オキュパンシに関する情報を取得する
請求項１１に記載の情報処理装置。
【請求項１４】
前記制御手段は、前記第１の圧縮映像データと前記第２の圧縮映像データのうち、前記再エンコード区間の先頭および終了位置に対応するピクチャを過去にエンコードした装置を特定可能な情報を取得し、取得された前記装置を特定可能な情報を用いて、前記オキュパンシに関する情報が記載されている位置を検出する
請求項１３に記載の情報処理装置。
【請求項１５】
前記制御手段は、前記第１の圧縮映像データと前記第２の圧縮映像データのうち、前記再エンコード区間の先頭および終了位置に対応するピクチャのピクチャタイプを示す情報を取得し、取得された前記ピクチャタイプを示す情報を用いて、前記オキュパンシに関する情報が記載されている位置を検出する
請求項１３に記載の情報処理装置。
【請求項１６】
前記制御手段は、前記第１の圧縮映像データおよび前記第２の圧縮映像データがフォーマット変換されたかを判定し、フォーマット変換されたと判定した場合、前記再エンコード区間の先頭および終了位置に対応するピクチャのピクチャタイプを示す情報を取得し、取得された前記ピクチャタイプを示す情報を用いて、前記オキュパンシに関する情報が記載されている位置を検出する
請求項１５に記載の情報処理装置。
【請求項１７】
前記オキュパンシに関する情報は、所定の記録媒体に、前記第１の圧縮映像データおよび前記第２の圧縮映像データと関連付けられて記録されており、
前記制御手段は、前記記録媒体から、前記オキュパンシに関する情報を取得する
請求項１１に記載の情報処理装置。
【請求項１８】
前記再エンコード区間の開始点近傍の前記第１の圧縮映像データ、および、前記再エンコード区間の終了点近傍の前記第２の圧縮映像データの符号量を取得する取得手段と、
前記取得手段により取得された前記符号量を基に、前記開始点近傍の前記第１の圧縮映像データを再符号化処理したときに、前記開始点における仮想バッファの占有量が下限値となる状態を想定した場合の仮想バッファ占有量の第１の軌跡を解析するとともに、前記終了点近傍の前記第２の圧縮映像データを再符号化処理したときに、前記終了点の次のピクチャにおける仮想バッファの占有量が上限値となる状態を想定した場合の仮想バッファ占有量の第２の軌跡を解析する解析手段と、
前記解析手段により解析された前記第１の軌跡および前記第２の軌跡を基に、前記再エンコード区間を再エンコードしたときの前記開始点の仮想バッファの占有量の上限値、および、前記終了点における仮想バッファの占有量の下限値を決定する決定手段と
を更に備え、
前記制御手段は、前記開始点の仮想バッファの占有量の上限値、および、前記終了点における仮想バッファの占有量の下限値に基づいて、前記再符号化処理を制御する
請求項１に記載の情報処理装置。
【請求項１９】
前記決定手段は、前記第１の軌跡のうち、前記再エンコード区間に含まれない領域で最も大きなアンダーフローの符号量の分、前記第１の軌跡を前記仮想バッファの占有量が増加する方向に修正して求められる第３の軌跡における前記開始点の仮想バッファの占有量を、前記再エンコード区間を再符号化処理したときの前記開始点の仮想バッファの占有量の上限値とする
請求項１８に記載の情報処理装置。
【請求項２０】
前記決定手段は、前記第２の軌跡のうち、前記再エンコード区間に含まれない領域で仮想バッファ占有量が最大値となる時間と最高ビットレートの積算値により求められる符号量の分、前記第２の軌跡を前記仮想バッファの占有量が減少する方向に修正して求められる第３の軌跡における前記終了点の仮想バッファの占有量を、前記再エンコード区間を再符号化処理したときの前記終了点の仮想バッファの占有量の下限値とする
請求項１８に記載の情報処理装置。
【請求項２１】
第１の圧縮映像データと第２の圧縮映像データとを接続して編集する処理を実行する情報処理装置の情報処理方法において、
再符号化処理時の発生符号量に基づいて、所定数のピクチャからなる区間を単位とする基本となるエンコード区間から延長された再エンコード区間を設定する再エンコード区間設定ステップと、
前記第１の圧縮映像データに設定された第１の編集点を含む第１のデコード区間を復号処理して第１の非圧縮映像信号を生成するとともに、前記第２の圧縮映像データに設定された第２の編集点を含む第２のデコード区間を復号処理して第２の非圧縮映像信号を生成する復号ステップと、
前記第１の非圧縮映像信号および前記第２の非圧縮映像信号が、前記第１の編集点および前記第２の編集点で接続された第３の非圧縮映像信号において、前記再エンコード区間設定ステップの処理により設定された前記再エンコード区間を再符号化処理して第３の圧縮映像データを生成する再符号化ステップと、
前記第１の圧縮映像データと前記第２の圧縮映像データのうち、再エンコードをされない区間の圧縮映像データと、前記再符号化処理ステップの処理により再符号化されて生成された前記第３の圧縮映像データとを切り替えて出力することによって、編集された編集圧縮映像データを生成する編集ステップと
を含む情報処理方法。
【請求項２２】
第１の圧縮映像データと第２の圧縮映像データとを接続して編集する処理をコンピュータに実行させるためのプログラムであって、
再符号化処理時の発生符号量に基づいて、所定数のピクチャからなる区間を単位とする基本となるエンコード区間から延長された再エンコード区間を設定する再エンコード区間設定ステップと、
前記第１の圧縮映像データに設定された第１の編集点を含む第１のデコード区間を復号処理して第１の非圧縮映像信号を生成するとともに、前記第２の圧縮映像データに設定された第２の編集点を含む第２のデコード区間を復号処理して第２の非圧縮映像信号を生成する復号ステップと、
前記第１の非圧縮映像信号および前記第２の非圧縮映像信号が、前記第１の編集点および前記第２の編集点で接続された第３の非圧縮映像信号において、前記再エンコード区間設定ステップの処理により設定された前記再エンコード区間を再符号化処理して第３の圧縮映像データを生成する再符号化ステップと、
前記第１の圧縮映像データと前記第２の圧縮映像データのうち、再エンコードをされない区間の圧縮映像データと、前記再符号化処理ステップの処理により再符号化されて生成された前記第３の圧縮映像データとを切り替えて出力することによって、編集された編集圧縮映像データを生成する編集ステップと
を含むプログラム。
【請求項２３】
請求項２２に記載のプログラムが記録されている記録媒体。
【請求項２４】
第１の圧縮映像データと第２の圧縮映像データとを接続して再符号化処理する処理を実行する情報処理装置において、
前記第１の圧縮映像データに設定された第１の編集点を含む第１のデコード区間を復号処理して第１の非圧縮映像信号を生成するとともに、前記第２の圧縮映像データに設定された第２の編集点を含む第２のデコード区間を復号処理して第２の非圧縮映像信号を生成する復号手段と、
前記第１の非圧縮映像信号および前記第２の非圧縮映像信号が、前記第１の編集点および前記第２の編集点で接続された第３の非圧縮映像信号の所定の再エンコード区間を再符号化処理して第３の圧縮映像データを生成する再符号化手段と、
前記再符号化手段による再符号化処理時の発生符号量に基づいて、所定数のピクチャからなる区間を単位とする基本となるエンコード区間から延長された前記再エンコード区間を設定して、前記再符号化手段による再符号化処理を制御する制御手段と
を備える情報処理装置。
【請求項２５】
第１の圧縮映像データと第２の圧縮映像データとを接続して再符号化する処理を実行する情報処理装置の情報処理方法において、
再符号化処理時の発生符号量に基づいて、所定数のピクチャからなる区間を単位とする基本となるエンコード区間から延長された再エンコード区間を設定する再エンコード区間設定ステップと、
前記第１の圧縮映像データに設定された第１の編集点を含む第１のデコード区間を復号処理して第１の非圧縮映像信号を生成するとともに、前記第２の圧縮映像データに設定された第２の編集点を含む第２のデコード区間を復号処理して第２の非圧縮映像信号を生成する復号ステップと、
前記第１の非圧縮映像信号および前記第２の非圧縮映像信号が、前記第１の編集点および前記第２の編集点で接続された第３の非圧縮映像信号において、前記再エンコード区間設定ステップの処理により設定された前記再エンコード区間を再符号化処理して第３の圧縮映像データを生成する再符号化ステップと
を含む情報処理方法。
【請求項２６】
第１の圧縮映像データと第２の圧縮映像データとを接続して再符号化する処理をコンピュータに実行させるためのプログラムであって、
再符号化処理時の発生符号量に基づいて、所定数のピクチャからなる区間を単位とする基本となるエンコード区間から延長された再エンコード区間を設定する再エンコード区間設定ステップと、
前記第１の圧縮映像データに設定された第１の編集点を含む第１のデコード区間を復号処理して第１の非圧縮映像信号を生成するとともに、前記第２の圧縮映像データに設定された第２の編集点を含む第２のデコード区間を復号処理して第２の非圧縮映像信号を生成する復号ステップと、
前記第１の非圧縮映像信号および前記第２の非圧縮映像信号が、前記第１の編集点および前記第２の編集点で接続された第３の非圧縮映像信号において、前記再エンコード区間設定ステップの処理により設定された前記再エンコード区間を再符号化処理して第３の圧縮映像データを生成する再符号化ステップと
を含むプログラム。
【請求項２７】
請求項２６に記載のプログラムが記録されている記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および情報処理方法、記録媒体、並びに、プログラムに関し、特に、双方向のフレーム間予測を用いて圧縮した映像データを編集する場合に用いて好適な、情報処理装置および情報処理方法、記録媒体、並びに、プログラムに関する。
【背景技術】
【０００２】
MPEG（Moving Picture Coding Experts Group／Moving Picture Experts Group）などに代表される画像圧縮方式では、フレーム間予測を用いて映像信号を圧縮符号化することで、高い圧縮効率を実現している。しかし、映像を編集することを考えた場合、フレーム間予測を用いた圧縮画像は、フレーム間に予測による圧縮信号の関連があるため、圧縮されたままの映像信号で、映像素材をつなぎ合わせることとはできない。そのため、映像素材を編集することが予め考慮されたシステムにおいては、一般的に、フレーム間予測を用いず、フレーム内での圧縮のみを用いて符号化が行われている。【０００３】
しかしながら、例えば、ＨＤ（High Definition）信号のように、高精細で情報量の多い映像信号が取り扱われる場合、フレーム内圧縮のみで符号化を行うと、低い圧縮効率しか得られないため、多量のデータを伝送したり、蓄積するためには、転送速度が速かったり、記憶容量が大きかったり、または、処理速度が速いなどの、高価なシステムが必要となってしまう。すなわち、高精細で情報量の多い映像信号を安価なシステムで取り扱うためには、フレーム間予測を用いて圧縮効率を上げることが必要となる。【０００４】
MPEGにおいて、Ｉピクチャ（Ｉ-Picture）、Ｐピクチャ（Ｐ-Picture）、および、Ｂピクチャ（B-Picture）から構成される、双方向のフレーム間予測を用いた圧縮符号化方式は、Long GOP（Group of Picture)方式の圧縮と呼ばれる。【０００５】
Ｉピクチャとは、フレーム内（Intra）符号化画像のことであり、他の画面とは独立に符号化されるピクチャであり、この情報のみで画像を復号することができるものである。Ｐピクチャとは、フレーム間(inter)順方向予測符号化画像のことであり、時間的に前（順方向）のフレームからの差分によって表現される前方向予測符号化ピクチャである。Ｂピクチャとは、双方向予測符号化画像のことであり、時間的に前（順方向）、または後（逆方向）、または前後（双方向）のピクチャを利用して動き補償フレーム間予測により符号化されるピクチャである。【０００６】
ＰピクチャやＢピクチャは、データ量がＩピクチャに比べて小さいため、GOPを長くすれば（すなわち、Long GOPを構成するピクチャ数を増加させれば）、映像の圧縮率を高くすることができるので、デジタル放送やDVD（Digital Versatile Disk）ビデオでの利用に適している。しかしながら、GOPが長すぎると、フレーム精度での編集コントロールが困難となり、特に、業務用用途での編集では、運用上の問題が発生する。【０００７】
Long GOP方式で圧縮された２つの映像データを所定の編集点で接続することにより編集する処理について、図１を用いて説明する。【０００８】
まず、編集対象圧縮映像データ１および編集対象圧縮映像データ２のそれぞれにおいて、編集点近傍の部分的なデコードが行われ、部分的な非圧縮の映像信号１および映像信号２が得られる。そして、非圧縮の映像信号１および映像信号２が編集点で接続されて、必要に応じて編集点付近にエフェクト（Effect）が施されて、再エンコードが行われる。そして、再エンコードされた圧縮映像データが、デコードおよび再エンコードされていない（部分的なデコードが行われた編集点近傍以外の）圧縮映像データと結合される。【０００９】
図１を用いて説明した方法は、圧縮された編集素材の映像データを全てデコードしてから、映像信号を編集点でつなぎ、再び全ての映像信号を再エンコードして編集済みの圧縮映像データを得る方法と比較して、再エンコードによる画質劣化を局所的に抑えることができるとともに、編集処理時間を大幅に短縮することができるなどの利点がある。【００１０】
しかしながら、図１を用いて説明したような方法で編集と再エンコードを行うと、再エンコードを行った部分と行っていない部分のつなぎ目において、画像を参照することができないという問題が発生する。【００１１】
この問題に対して、フレーム間で予測符号化が行われている（Long GOP）方式で圧縮する場合、編集を比較的簡単に実現する方法として、フレーム間予測に制限を加え、GOP内のみで画像を参照し、GOPをまたいで画像を参照しないClosed GOP構造をとるように、フレーム間予測に制限を加える方法が知られている。【００１２】
フレーム間予測に制限を加える場合について、図２を用いて説明する。図２においては、フレーム間予測と編集との関係を示すために、編集対象である圧縮素材映像１のデータおよび圧縮素材映像２のデータ、部分再エンコードされた編集後の編集点付近の圧縮映像のデータ、並びに、再エンコードしない部分の圧縮映像のデータについて、それぞれ、display order（ディスプレイオーダ）でのピクチャの並びを示している。図中の矢印は、画像の参照方向を示している（以下、同様）。図２においては、ディスプレイオーダのBBIBBPBBPBBPBBPの１５のピクチャが１GOPとされ、画像の参照は、GOP内のみとされている。この方法は、GOPをまたぐ予測を禁止することで、GOP間に予測による圧縮データの関連をなくし、GOP単位での圧縮データのつなぎ替え（再エンコードを行う範囲の決定）を可能にする。【００１３】
すなわち、編集対象である圧縮素材映像１のデータおよび圧縮素材映像２のデータは、それぞれ、編集点を含む１GOP単位で、再エンコード範囲が決定され、１GOP単位で決定された再エンコード範囲の編集対象である圧縮素材映像１のデータおよび圧縮素材映像２のデータがデコードされて、非圧縮の素材映像１の信号および素材映像２の信号が生成される。そして、非圧縮の素材映像１の信号と素材映像２の信号とがカット（Cut）編集点において接続されて、接続された素材映像１および素材映像２が部分再エンコードされて、圧縮映像データが生成され、再エンコードしない部分の圧縮映像データと接続されて、圧縮符号化された編集映像データが生成される。【００１４】
実際に符号化されたデータは、図３に示されるように、Coding order（コーディングオーダ）で並んでおり、圧縮映像データの結合はコーディングオーダで行われる。接続された素材映像１および素材映像２が部分再エンコードされて生成された圧縮映像データと、再エンコードしない部分の圧縮映像データとは、再エンコードしない部分の圧縮素材映像１のデータにおいて、コーディングオーダで最後のピクチャであり、ディスプレイオーダ１４番目のピクチャであるＢ13ピクチャと、再エンコードされて生成された圧縮映像データにおいて、コーディングオーダで最初のピクチャであり、ディスプレイオーダ３番目のピクチャであるＩ2ピクチャとが接続される。そして、再エンコードされて生成された圧縮映像データにおいて、コーディングオーダで最後のピクチャであり、ディスプレイオーダ１３番目のピクチャであるＢ12ピクチャと、再エンコードしない部分の圧縮素材映像２のデータにおいて、コーディングオーダで最初のピクチャであり、ディスプレイオーダ３番目のピクチャであるＩ2ピクチャとが接続される。すなわち、接続された素材映像１および素材映像２が部分再エンコードされて生成された圧縮映像データと、再エンコードしない部分の圧縮映像データとは、GOPの切替え部分で接続されて、圧縮された編集映像データが生成される。【００１５】
これに対して、Closed GOP構造ではないGOP構造、すなわち、GOPをまたいで画像を参照する場合のLong GOP構造を、以下、Open GOPと称する。【００１６】
また、Open GOPの２つのビットストリームを編集する場合、具体的には、ビットストリームＸに、ビットストリームＹを挿入する場合において、ビットストリームＹの最初のGOPを構成するＩピクチャ前Ｂピクチャ（Ｉピクチャが表示されるまでに出現するＢピクチャ）が削除され、更に、そのGOPを構成する残りの画像のテンポラルリファレンス（Temporal Reference）が変更されることにより、ビットストリームＸの最後のGOPを構成する画像を用いて予測されるＩピクチャ前Ｂピクチャを表示させないようにし、Open GOPでMPEG符号化された画像のビットストリームどうしを接続したときのつなぎ目部分における画質の劣化を防止することができるようにした技術がある（例えば、特許文献１）。【００１７】
【特許文献１】特開平１０−６６０８５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１８】
しかしながら、図２および図３を用いて説明したように、GOPをまたぐ予測を禁止するClosed GOP構造を利用する編集方法では、GOPの開始部および終了部で予測方向に制限を加えることになり、通常用いられる圧縮方式であるOpen GOPと比較して、映像信号の圧縮効率が低下する。【００１９】
また、特許文献１に記載の技術においては、つなぎ目付近のＢピクチャが表示されないため、その分の画像が欠落してしまうという問題がある。【００２０】
また、高い圧縮効率が得られるLong GOPのOpen GOP方式で圧縮された、双方向のフレーム間予測を用いた圧縮映像信号の編集を行う場合には、VBV Bufferの制約を守って、バッファが破綻することを防止しなければならない。しかしながら、VBV Bufferの制約を守るために、画質が劣化してしまってはならない。【００２１】
本発明はこのような状況に鑑みてなされたものであり、高い圧縮効率が得られるLong GOPのOpen GOP方式で圧縮された、双方向のフレーム間予測を用いた圧縮映像信号の編集を、VBV Bufferの制約を守りつつ、最適な発生符号量を割り当てて実行することにより、画質の低下を防止することができるようにするものである。
【課題を解決するための手段】
【００２２】
本発明の第１の側面の情報処理装置は、第１の圧縮映像データと第２の圧縮映像データとを接続して編集する処理を実行する情報処理装置であって、前記第１の圧縮映像データに設定された第１の編集点を含む第１のデコード区間を復号処理して第１の非圧縮映像信号を生成するとともに、前記第２の圧縮映像データに設定された第２の編集点を含む第２のデコード区間を復号処理して第２の非圧縮映像信号を生成する復号手段と、前記第１の非圧縮映像信号および前記第２の非圧縮映像信号が、前記第１の編集点および前記第２の編集点で接続された第３の非圧縮映像信号の所定の再エンコード区間を再符号化処理して第３の圧縮映像データを生成する再符号化手段と、前記再符号化手段による再符号化処理時の発生符号量に基づいて、所定数のピクチャからなる区間を単位とする基本となるエンコード区間から延長された前記再エンコード区間を設定して、前記再符号化手段による再符号化処理を制御する制御手段と、前記第１の圧縮映像データと前記第２の圧縮映像データのうち、再エンコードをされない区間の圧縮映像データと、前記再符号化手段により再符号化されて生成された前記第３の圧縮映像データとを切り替えて出力することによって、編集された編集圧縮映像データを生成する編集手段とを備える。
【００２３】
前記制御手段には、前記再符号化手段による前記再エンコード区間の再符号化処理における発生符号量の割り当てを制御させるとともに、前記再エンコード区間のうち、前記基本となるエンコード区間に割り当てられる発生符号量が所定量よりも少ない場合、前記基本となるエンコード区間から延長された前記再エンコード区間を設定して、前記再符号化手段による再符号化処理を制御させることができる。【００２４】
前記制御手段には、前記基本となるエンコード区間に割り当てられる発生符号量が前記所定量よりも増加するように、前記再符号化手段による前記再エンコード区間の再符号化処理における発生符号量の割り当てを制御させることができる。【００２５】
前記制御手段には、前記再エンコード区間の開始点および終了点におけるオキュパンシの差分値に基づいて、前記基本となるエンコード区間に割り当てられる符号量が増加されるように、前記再エンコード区間における発生符号量の割り当てを制御させることができる。
【００２６】
前記制御手段には、前記基本となるエンコード区間のピクチャの数に比例し、前記再エンコード区間のピクチャ数に略反比例する値に基づいて、前記基本となるエンコード区間に割り当てられる符号量が増加されるように、前記再エンコード区間における発生符号量の割り当てを制御させることができる。
【００２７】
前記制御手段には、前記再エンコード区間のうち、前記基本となるエンコード区間以外の区間に割り当てる発生符号量を減少させるように、前記再エンコード区間における発生符号量の割り当てを制御させることができる。
【００２８】
前記制御手段には、前記基本となるエンコード区間にエフェクトが施される場合、前記基本となるエンコード区間に施される前記エフェクトの種類に応じて、前記基本となるエンコード区間から延長された前記再エンコード区間を設定して、前記再符号化手段による再符号化処理を制御させることができる。
【００２９】
前記制御手段には、前記基本となるエンコード区間の符号化難易度の上昇率に基づいて、前記基本となるエンコード区間から延長された前記再エンコード区間を設定して、前記再符号化手段による再符号化処理を制御させることができる。
【００３０】
前記制御手段には、前記基本となるエンコード区間にエフェクトが施される場合、前記基本となるエンコード区間に施される前記エフェクトの種類に応じて、前記基本となるエンコード区間における前記発生符号量が増加するように、前記再符号化手段による前記再エンコード区間の再符号化処理における発生符号量の割り当てを制御させることができる。
【００３１】
前記制御手段には、前記基本となるエンコード区間の符号化難易度の上昇率に基づいて、前記基本となるエンコード区間における前記発生符号量が増加するように、前記再符号化手段による前記再エンコード区間の再符号化処理における発生符号量の割り当てを制御させることができる。
【００３２】
前記制御手段には、前記第１の圧縮映像データと前記第２の圧縮映像データのオキュパンシに関する情報を取得し、前記オキュパンシに関する情報に基づいて、前記再符号化手段による前記再エンコード区間の再符号化処理における発生符号量の割り当てを制御させることができる。【００３３】
前記オキュパンシに関する情報は、前記再エンコード区間の先頭および終了位置に対応するピクチャのオキュパンシに関する情報であるものとすることができる。【００３４】
前記オキュパンシに関する情報は、前記第１の圧縮映像データおよび前記第２の圧縮映像データのユーザデータ領域に多重化されているものとすることができ、前記制御手段には、前記第１の圧縮映像データと前記第２の圧縮映像データのユーザデータ領域に多重化されている前記オキュパンシに関する情報を取得させることができる。【００３５】
前記制御手段には、前記第１の圧縮映像データと前記第２の圧縮映像データのうち、前記再エンコード区間の先頭および終了位置に対応するピクチャを過去にエンコードした装置を特定可能な情報を取得させ、取得された前記装置を特定可能な情報を用いて、前記オキュパンシに関する情報が記載されている位置を検出させることができる。【００３６】
前記制御手段には、前記第１の圧縮映像データと前記第２の圧縮映像データのうち、前記再エンコード区間の先頭および終了位置に対応するピクチャのピクチャタイプを示す情報を取得させ、取得された前記ピクチャタイプを示す情報を用いて、前記オキュパンシに関する情報が記載されている位置を検出させることができる。【００３７】
前記制御手段には、前記第１の圧縮映像データおよび前記第２の圧縮映像データがフォーマット変換されたかを判定させ、フォーマット変換されたと判定された場合、前記再エンコード区間の先頭および終了位置に対応するピクチャのピクチャタイプを示す情報を取得し、取得された前記ピクチャタイプを示す情報を用いて、前記オキュパンシに関する情報が記載されている位置を検出させることができる。【００３８】
前記オキュパンシに関する情報は、所定の記録媒体に、前記第１の圧縮映像データおよび前記第２の圧縮映像データと関連付けられて記録されているものとすることができ、前記制御手段には、前記記録媒体から、前記オキュパンシに関する情報を取得させることができる。【００３９】
前記再エンコード区間の開始点近傍の前記第１の圧縮映像データ、および、前記再エンコード区間の終了点近傍の前記第２の圧縮映像データの符号量を取得する取得手段と、前記取得手段により取得された前記符号量を基に、前記開始点近傍の前記第１の圧縮映像データを再符号化処理したときに、前記開始点における仮想バッファの占有量が下限値となる状態を想定した場合の仮想バッファ占有量の第１の軌跡を解析するとともに、前記終了点近傍の前記第２の圧縮映像データを再符号化処理したときに、前記終了点の次のピクチャにおける仮想バッファの占有量が上限値となる状態を想定した場合の仮想バッファ占有量の第２の軌跡を解析する解析手段と、前記解析手段により解析された前記第１の軌跡および前記第２の軌跡を基に、前記再エンコード区間を再エンコードしたときの前記開始点の仮想バッファの占有量の上限値、および、前記終了点における仮想バッファの占有量の下限値を決定する決定手段とを更に備え、前記制御手段には、前記開始点の仮想バッファの占有量の上限値、および、前記終了点における仮想バッファの占有量の下限値に基づいて、前記再符号化処理を制御させることができる。
【００４０】
前記決定手段には、前記第１の軌跡のうち、前記再エンコード区間に含まれない領域で最も大きなアンダーフローの符号量の分、前記第１の軌跡を前記仮想バッファの占有量が増加する方向に修正して求められる第３の軌跡における前記開始点の仮想バッファの占有量を、前記再エンコード区間を再符号化処理したときの前記開始点の仮想バッファの占有量の上限値に決定させることができる。
【００４１】
前記決定手段には、前記第２の軌跡のうち、前記再エンコード区間に含まれない領域で仮想バッファ占有量が最大値となる時間と最高ビットレートの積算値により求められる符号量の分、前記第２の軌跡を前記仮想バッファの占有量が減少する方向に修正して求められる第３の軌跡における前記終了点の仮想バッファの占有量を、前記再エンコード区間を再符号化処理したときの前記終了点の仮想バッファの占有量の下限値に決定させることができる。
【００４２】
本発明の第１の側面の情報処理方法およびプログラムは、再符号化処理時の発生符号量に基づいて、所定数のピクチャからなる区間を単位とする基本となるエンコード区間から延長された再エンコード区間を設定する再エンコード区間設定ステップと、前記第１の圧縮映像データに設定された第１の編集点を含む第１のデコード区間を復号処理して第１の非圧縮映像信号を生成するとともに、前記第２の圧縮映像データに設定された第２の編集点を含む第２のデコード区間を復号処理して第２の非圧縮映像信号を生成する復号ステップと、前記第１の非圧縮映像信号および前記第２の非圧縮映像信号が、前記第１の編集点および前記第２の編集点で接続された第３の非圧縮映像信号において、前記再エンコード区間設定ステップの処理により設定された前記再エンコード区間を再符号化処理して第３の圧縮映像データを生成する再符号化ステップと、前記第１の圧縮映像データと前記第２の圧縮映像データのうち、再エンコードをされない区間の圧縮映像データと、前記再符号化処理ステップの処理により再符号化されて生成された前記第３の圧縮映像データとを切り替えて出力することによって、編集された編集圧縮映像データを生成する編集ステップとを含む。
【００４３】
本発明の第１の側面においては、再符号化処理時の発生符号量に基づいて、所定数のピクチャからなる区間を単位とする基本となるエンコード区間から延長された再エンコード区間が設定され、前記第１の圧縮映像データに設定された第１の編集点を含む第１のデコード区間が復号処理されて第１の非圧縮映像信号が生成され、前記第２の圧縮映像データに設定された第２の編集点を含む第２のデコード区間が復号処理されて第２の非圧縮映像信号が生成され、前記第１の非圧縮映像信号および前記第２の非圧縮映像信号が、前記第１の編集点および前記第２の編集点で接続された第３の非圧縮映像信号において、設定された前記再エンコード区間が再符号化されて第３の圧縮映像データが生成され、前記第１の圧縮映像データと前記第２の圧縮映像データのうち、再エンコードをされない区間の圧縮映像データと、再符号化されて生成された前記第３の圧縮映像データとが切り替えられて出力されることによって、編集された編集圧縮映像データが生成される。
【００４４】
本発明の第２の側面の情報処理装置は、第１の圧縮映像データと第２の圧縮映像データとを接続して再符号化処理する処理を実行する情報処理装置であって、前記第１の圧縮映像データに設定された第１の編集点を含む第１のデコード区間を復号処理して第１の非圧縮映像信号を生成するとともに、前記第２の圧縮映像データに設定された第２の編集点を含む第２のデコード区間を復号処理して第２の非圧縮映像信号を生成する復号手段と、前記第１の非圧縮映像信号および前記第２の非圧縮映像信号が、前記第１の編集点および前記第２の編集点で接続された第３の非圧縮映像信号の所定の再エンコード区間を再符号化処理して第３の圧縮映像データを生成する再符号化手段と、前記再符号化手段による再符号化処理時の発生符号量に基づいて、所定数のピクチャからなる区間を単位とする基本となるエンコード区間から延長された前記再エンコード区間を設定して、前記再符号化手段による再符号化処理を制御する制御手段とを備える。
【００４５】
本発明の第２の側面の情報処理方法およびプログラムは、再符号化処理時の発生符号量に基づいて、所定数のピクチャからなる区間を単位とする基本となるエンコード区間から延長された再エンコード区間を設定する再エンコード区間設定ステップと、前記第１の圧縮映像データに設定された第１の編集点を含む第１のデコード区間を復号処理して第１の非圧縮映像信号を生成するとともに、前記第２の圧縮映像データに設定された第２の編集点を含む第２のデコード区間を復号処理して第２の非圧縮映像信号を生成する復号ステップと、前記第１の非圧縮映像信号および前記第２の非圧縮映像信号が、前記第１の編集点および前記第２の編集点で接続された第３の非圧縮映像信号において、前記再エンコード区間設定ステップの処理により設定された前記再エンコード区間を再符号化処理して第３の圧縮映像データを生成する再符号化ステップとを含む。
【００４６】
本発明の第２の側面においては、再符号化処理時の発生符号量に基づいて、所定数のピクチャからなる区間を単位とする基本となるエンコード区間から延長された再エンコード区間が設定され、前記第１の圧縮映像データに設定された第１の編集点を含む第１のデコード区間が復号処理されて第１の非圧縮映像信号が生成され、前記第２の圧縮映像データに設定された第２の編集点を含む第２のデコード区間が復号処理されて第２の非圧縮映像信号が生成され、前記第１の非圧縮映像信号および前記第２の非圧縮映像信号が、前記第１の編集点および前記第２の編集点で接続された第３の非圧縮映像信号において、設定された前記再エンコード区間が再符号化されて第３の圧縮映像データが生成される。
【発明の効果】
【００４７】
本発明の第１の側面によれば、圧縮符号化されたデータを編集することができ、特に、基準となるエンコード範囲に与えられた発生符号量に基づいて、再エンコードの範囲を延長させることができるので、バッファの破綻させることなく、編集点付近の画像の劣化を防ぐようにすることができる。【００４８】
本発明の第２の側面によれば、圧縮符号化されたデータを接続して再符号化することができ、特に、基準となるエンコード範囲に与えられた発生符号量に基づいて、再エンコードの範囲を延長させることができるので、バッファの破綻させることなく、編集点付近の画像の劣化を防ぐようにすることができる。
【図面の簡単な説明】
【００４９】
【図１】編集と部分再エンコードについて説明するための図である。
【図２】ClosedGOPでの編集と部分再エンコードについて説明するための図である。
【図３】ClosedGOPでの編集と部分再エンコードについて、ディスプレイオーダにおけるピクチャの並びを説明するための図である。
【図４】本発明を適用した編集装置１の構成を示すブロック図である。
【図５】図４の編集装置１において実行可能な部分再エンコードおよび編集処理について説明するための図である。
【図６】図５の部分再エンコードおよび編集処理について、ディスプレイオーダにおけるピクチャの並びを説明するための図である。
【図７】図５の部分再エンコードおよび編集処理を実行した場合のVBVバッファについて説明するための図である。
【図８】図５の部分再エンコードおよび編集処理を実行した場合に、VBVバッファが破綻してしまう場合について説明するための図である。
【図９】VBVバッファを考慮した部分再エンコードおよび編集処理について説明するための図である。
【図１０】図９の部分再エンコードおよび編集処理について、ディスプレイオーダにおけるピクチャの並びを説明するための図である。
【図１１】図９の部分再エンコードおよび編集処理を実行した場合のVBVバッファについて説明するための図である。
【図１２】エンコーダの構成を示すブロック図である。
【図１３】再エンコード範囲の延長について説明するための図である。
【図１４】再エンコード範囲を延長したときの符号割り振り量について説明するための図である。
【図１５】符号割り振り量の最大値について説明するための図である。
【図１６】再エンコード範囲を延長したときの符号割り振り量について説明するための図である。
【図１７】符号割り振り量の最大値について説明するための図である。
【図１８】編集処理１について説明するためのフローチャートである。
【図１９】デコード範囲決定処理１について説明するためのフローチャートである。
【図２０】再エンコードおよび接続処理１について説明するためのフローチャートである。
【図２１】デコード範囲決定処理２について説明するためのフローチャートである。
【図２２】再エンコードおよび接続処理２について説明するためのフローチャートである。
【図２３】部分再エンコードおよび編集処理を実行した場合のVBVバッファについて説明するための図である。
【図２４】本発明を適用した編集装置の第２の構成を示すブロック図である。
【図２５】MPEG_ES_editing_informationについて説明するための図である。
【図２６】Occupancyを記載するためのシンタクスついて説明するための図である。
【図２７】図５の部分再エンコードおよび編集処理について、ディスプレイオーダにおけるピクチャの並びを説明するための図である。
【図２８】ＥＳがMXFにラップされている場合のMPEG_ES_editing_informationについて説明するための図である。
【図２９】データ生成処理について説明するためのフローチャートである。
【図３０】編集処理２について説明するためのフローチャートである。
【図３１】Occupancy抽出処理について説明するためのフローチャートである。
【図３２】Occupancy記録位置検出処理について説明するためのフローチャートである。
【図３３】図２のＣＰＵ１１が実行可能な機能について説明するための機能ブロック図である。
【図３４】再エンコード区間とバッファ占有量を示す軌跡について説明する図である。
【図３５】再エンコード区間の最後のバッファ占有量の決定について説明する図である。
【図３６】再エンコード区間の最初のバッファ占有量の決定について説明する
【図３７】編集処理３について説明するためのフローチャートである。
【図３８】再エンコードおよびバッファ占有量決定処理について説明する
【図３９】パーソナルコンピュータの構成を示すブロック図である。
【図４０】本発明を適用可能な異なる装置の構成について説明するための図である。
【符号の説明】
【００５０】
１  編集装置，  １１  ＣＰＵ，  １６  ＨＤＤ，  ２０  ＣＰＵ，  ２２乃至２４  デコーダ，  ２５  ストリームスプライサ，  ２６  エフェクト／スイッチ，  ２７  エンコーダ，  量子化部１７５，  １８３  量子化制御部，  １９１  イントラＡＣ算出部，  １９２  発生符号量算出部，  １９３  ＧＣ算出部，  １９４  目標符号量算出部，  １９５  ＭＥ残差算出部，  ４０１  編集装置，  ４２７  エンコーダ，  ４２８  入力端子，  ４５１  MPEG_ES_editing_information，  ４６１  MXF Header，  ４６２  Elementary Stream Header，  ５５１  発生符号量検出部，  ５５２  バッファ占有量解析部，  ５５３  バッファ占有量決定部，  ５５４  コマンドおよび制御情報生成部
【発明を実施するための最良の形態】
【００５１】
以下、図を参照して、本発明の実施の形態について説明する。【００５２】
図４は本発明を適用した編集装置１のハードウェア構成を示すブロック図である。【００５３】
ＣＰＵ（Central Processing Unit）１１は、ノースブリッジ１２に接続され、例えば、ＨＤＤ（Hard disk Drive）１６に記憶されているデータの読み出しなどの処理を制御したり、ＣＰＵ２０が実行する編集処理を制御するためのコマンドを生成し、出力する。ノースブリッジ１２は、ＰＣＩバス（Peripheral Component Interconnect/Interface）１４に接続され、例えば、ＣＰＵ１１の制御に基づいて、サウスブリッジ１５を介して、ＨＤＤ１６に記憶されているデータの供給を受けて、ＰＣＩバス１４、ＰＣＩブリッジ１７を介して、メモリ１８に供給する。また、ノースブリッジ１２は、メモリ１３とも接続されており、ＣＰＵ１１の処理に必要なデータを授受する。【００５４】
メモリ１３は、ＣＰＵ１１が実行する処理に必要なデータを保存する。サウスブリッジ１５は、ＨＤＤ１６のデータの書き込みおよび読み出しを制御する。ＨＤＤ１６には、圧縮符号化された編集用の素材が記憶されている。【００５５】
ＰＣＩブリッジ１７は、メモリ１８のデータの書き込みおよび読み出しを制御したり、デコーダ２２乃至２４、または、ストリームスプライサ２５への圧縮符号化データの供給を制御するとともに、ＰＣＩバス１４およびコントロールバス１９のデータの授受を制御する。メモリ１８は、ＰＣＩブリッジ１７の制御に基づいて、ＨＤＤ１６により読み出された、編集用素材である圧縮符号化データや、ストリームスプライサ２５から供給される編集後の圧縮符号化データを記憶する。【００５６】
ＣＰＵ２０は、ノースブリッジ１２、ＰＣＩバス１４、ＰＣＩブリッジ１７、および、コントロールバス１９を介して、ＣＰＵ１１から供給されたコマンドにしたがって、ＰＣＩブリッジ１７、デコーダ２２乃至２４、ストリームスプライサ２５、エフェクト／スイッチ２６、および、エンコーダ２７が実行する処理を制御する。メモリ２１は、ＣＰＵ２０の処理に必要なデータを記憶する。【００５７】
デコーダ２２乃至デコーダ２４は、ＣＰＵ２０の制御に基づいて、供給された圧縮符号化データをデコードし、非圧縮の映像信号を出力する。ストリームスプライサ２５は、ＣＰＵ２０の制御に基づいて、供給された圧縮映像データを、所定のフレームで結合する。また、デコーダ２２乃至デコーダ２４は、編集装置１に含まれない独立した装置として設けられていても良い。例えば、デコーダ２４が、独立した装置として設けられている場合、デコーダ２４は、後述する処理により編集されて生成された圧縮編集映像データの供給を受け、復号し、出力することができるようになされる。【００５８】
エフェクト／スイッチ２６は、ＣＰＵ２０の制御に基づいて、デコーダ２２またはデコーダ２３から供給される、非圧縮の映像信号出力を切り替える、すなわち、供給された非圧縮の映像信号を所定のフレームで結合するとともに、必要に応じて、所定の範囲にエフェクトを施して、エンコーダ２７に供給する。エンコーダ２７は、ＣＰＵ２０の制御に基づいて、供給された非圧縮の映像信号をエンコードして、圧縮符号化された圧縮映像データを、ストリームスプライサ２５に出力する。【００５９】
次に、第１の実施の形態における編集装置１の動作について説明する。【００６０】
ＨＤＤ１６には、図５に示されるLong GOPのOpen GOP方式で圧縮された圧縮素材映像１および圧縮素材映像２のデータが記憶されている。図５において、圧縮された圧縮素材映像１および圧縮素材映像２は、表示されるピクチャ順（display order）で記載されている。【００６１】
ＣＰＵ１１は、サウスブリッジ１５を制御して、図示しない操作入力部から供給されたユーザの操作入力を基に、ＨＤＤ１６から、圧縮符号化された圧縮素材映像１のデータおよび圧縮素材映像２のデータを読み出させ、ノースブリッジ１２、ＰＣＩバス１４、および、ＰＣＩブリッジ１７を介して、メモリ１８に供給させて記憶させるとともに、編集点を示す情報と、編集開始を示すコマンドを、ノースブリッジ１２、ＰＣＩバス１４、ＰＣＩブリッジ１７、および、コントロールバス１９を介して、ＣＰＵ２０に供給する。【００６２】
ＣＰＵ２０は、ＣＰＵ１１から供給された編集点を示す情報を基に、圧縮符号化された圧縮素材映像１のデータおよび圧縮素材映像２のデータのうち、再エンコードを行う範囲を決定する。そして、ＣＰＵ２０は、ＰＣＩブリッジ１７を制御して、メモリ１８に記憶されている圧縮符号化された圧縮素材映像１のデータのうち、再エンコードを行う範囲のピクチャと、参照する必要があるピクチャに対応する圧縮素材映像１のデータをデコーダ２２に供給させるとともに、圧縮素材映像２のデータのうち、再エンコードを行う範囲のピクチャと、参照する必要があるピクチャに対応する圧縮素材映像２のデータをデコーダ２３に供給させる。【００６３】
すなわち、このとき、圧縮素材映像１のうち、Ｂピクチャ３６およびＢピクチャ３７が再エンコードを行う範囲に含まれている場合、Ｂピクチャ３６およびＢピクチャ３７をデコードするために、Ｉピクチャ３１、および、Ｐピクチャ３２乃至Ｐピクチャ３５もデコードされる。また、同様に、圧縮素材映像２のうち、Ｂピクチャ３８およびＢピクチャ３９が再エンコードを行う範囲に含まれている場合、Ｂピクチャ３８およびＢピクチャ３９をデコードするために、Ｉピクチャ４０もデコードされる。【００６４】
また、このとき、ＣＰＵ２０は、ＰＣＩブリッジ１７を制御して、メモリ１８に記憶されている圧縮符号化された圧縮素材映像１および圧縮素材映像２のデータのうちの再エンコードを行わない範囲のピクチャを、ストリームスプライサ２５に供給させる。【００６５】
ＣＰＵ２０は、デコーダ２２およびデコーダ２３を制御して、供給された圧縮符号化されたデータをデコードさせる。【００６６】
デコーダ２２およびデコーダ２３は、ＣＰＵ２０の制御に基づいて、供給されたデータをデコードし、復号されて得られた素材映像１および素材映像２の信号をエフェクト／スイッチ２６に供給する。エフェクト／スイッチ２６は、ＣＰＵ２０の制御に基づいて、所定のカット（Cut）編集点（スプライス点）で、非圧縮の復号素材映像１と復号素材映像２の信号を接続して、必要に応じて、エフェクトを施し、再エンコード用の非圧縮の編集映像信号を生成し、再エンコードに必要な再エンコード用参照画像（図５においては、Ｂピクチャ４２およびＢピクチャ４３のエンコードに必要なＰピクチャ４１に対応する画像データ）とともに、エンコーダ２７に供給する。【００６７】
また、デコーダ２２およびデコーダ２３は、後段のエンコーダ２７によるエンコード処理に必要な情報を抽出し、コントロールバス１９を介して、ＣＰＵ２０に供給することができる。ＣＰＵ２０は、デコーダ２２またはデコーダ２３から供給された、後段のエンコーダ２７によるエンコード処理に必要な情報を、コントロールバス１９を介して、エンコーダ２７に供給する。【００６８】
エンコーダ２７は、ＣＰＵ２０の制御に基づいて、エフェクト／スイッチ２６から供給された、再エンコード用の非圧縮の編集映像信号をエンコードする。【００６９】
そのとき、エンコーダ２７は、図５に示されるように、双方向予測符号化を行うＢピクチャ４２およびＢピクチャ４３をエンコードするために、参照画として、１つ前のＰピクチャ４１を用いなければならない。また、ディスプレイオーダにおいて、再エンコードの最後のピクチャがＰピクチャとなるように、ピクチャタイプを決定することにより、再エンコードの最後のピクチャ以降のピクチャをエンコードのための参照画として用いなくてもよいようにすることができる。【００７０】
換言すれば、再エンコード終了点がGOPの切れ目（すなわち、Ｂピクチャ以外）となるようなピクチャタイプで再エンコードを行うようにすることにより、編集用の圧縮素材映像データがOpenGOPであっても、再エンコードの最後のピクチャ以降のピクチャをエンコードのための参照画として用いる必要がなくなる。【００７１】
そして、エンコーダ２７において再エンコードされた映像データは、ストリームスプライサ２５に供給される。そして、ストリームスプライサ２５は、ＣＰＵ２０の制御に基づいて、ＰＣＩブリッジ１７から供給された、圧縮素材映像１および圧縮素材映像２のデータのうちの再エンコードを行わない範囲の圧縮素材映像１および圧縮素材映像２と、エンコーダ２７から供給されたエンコードされた映像データとを接続し、圧縮編集映像データを生成する。【００７２】
具体的には、ストリームスプライサ２５は、ＣＰＵ２０の制御に基づいて、ＰＣＩブリッジ１７から供給された、圧縮素材映像１のＰピクチャ４６とエンコーダ２７から供給されたエンコードされた映像データのＢピクチャ４２とがディスプレイオーダで連続するように接続され、エンコーダ２７から供給されたエンコードされた映像データのＰピクチャ４５と、ＰＣＩブリッジ１７から供給された、圧縮素材映像２のＩピクチャ４７とがディスプレイオーダで連続するように接続されるように、ストリームをつなぎ合わせる。【００７３】
そして、ストリームスプライサ２５は、ＣＰＵ２０の制御に基づいて、作成した圧縮編集映像データをＰＣＩブリッジ１７に供給して、メモリ１８に保存させるとともに、デコーダ２４に供給してデコードさせ、編集結果確認用のモニタなどに出力させて表示させたり、デコードされて生成されたベースバンド信号を、他の装置に出力させる。【００７４】
図示しない操作入力部から、編集されて生成された圧縮編集映像データの保存が指令された場合、ＣＰＵ１１は、ＰＣＩブリッジ１７を制御して、メモリ１８に保存されている圧縮編集映像データを読み出させ、ＰＣＩバス１４およびノースブリッジ１２を介して、サウスブリッジ１５に供給させるとともに、サウスブリッジ１５を制御して、供給された圧縮編集映像データをＨＤＤ１６に供給させて保存させる。【００７５】
実際のエンコードはコーディングオーダ（coding order）で行われ、エンコーダ２７においてエンコードされた圧縮映像も、コーディングオーダで出力される。図５を用いて説明した場合に対応させて、圧縮された信号におけるピクチャの並びをコーディングオーダで示したものを図６に示す。【００７６】
編集対象である圧縮素材映像１および編集対象である圧縮素材映像２のそれぞれのデータにおいて、編集点を含む再エンコード範囲が決定され、再エンコード範囲の圧縮素材映像１および圧縮素材映像２がデコードされて、非圧縮の素材映像１の信号および素材映像２の信号が生成される。そして、カット（Cut）編集点において、非圧縮の素材映像１の信号と素材映像２とが接続されて、接続された素材映像１および素材映像２が、最後のピクチャがＰピクチャ（またはＩピクチャ）となるように部分再エンコードされて、圧縮映像データが生成され、再エンコードしない部分の圧縮映像データと接続されて、圧縮された編集映像データが生成される。【００７７】
接続された素材映像１および素材映像２が部分再エンコードされて生成された圧縮映像データと、再エンコードしない部分の圧縮映像データとは、再エンコードしない部分の圧縮素材映像１のデータにおいて、コーディングオーダで最後のピクチャであって、ディスプレイオーダ１４番目のピクチャであるＢ13ピクチャと、再エンコードされて生成された圧縮映像データにおいて、コーディングオーダで先頭のピクチャであって、ディスプレイオーダ３番目のピクチャであるＩ2ピクチャとが接続される。そして、再エンコードされて生成された圧縮映像データにおいて、コーディングオーダで最後のピクチャであって、ディスプレイオーダ１６番目のピクチャであるＰ15ピクチャ（Ｐピクチャ４５）と、再エンコードしない部分の圧縮素材映像２において、コーディングオーダで先頭のピクチャであって、データのディスプレイオーダ３番目のピクチャであるＩ0ピクチャ（Ｉピクチャ４７）とが接続される。すなわち、接続された素材映像１および素材映像２が部分再エンコードされて生成された圧縮映像データと、再エンコードしない部分の圧縮映像データとは、GOPの切替え部分に関係なく接続されて、圧縮された編集映像データが生成される。【００７８】
このように、ディスプレイオーダにおいて、再エンコードの最後のピクチャであるＰ15ピクチャ（Ｐピクチャ４５）は、コーディングオーダでも再エンコードの最後のピクチャとなる。このようにして、ピクチャタイプを決定することにより、再エンコードの最後のピクチャ以降のピクチャをエンコードのための参照画として用いなくてもよいようにすることができる。【００７９】
なお、ここでは、再エンコード範囲の圧縮素材映像１および圧縮素材映像２がデコードされるものとして説明したが、デコード範囲は、再エンコード範囲に基づいて、再エンコード範囲とは個別に定められるものとしてもよい。すなわち、デコード範囲は、再エンコード範囲と同一の範囲であっても、再エンコード範囲を含むそれ以上の範囲であってもよい。【００８０】
このとき、VBV（Video Buffering Verifier)バッファも考慮して再エンコードを行う必要がある。図７を用いて、編集を行う場合のVBVバッファについて説明する。【００８１】
エンコードを行うにあたっては、VBVバッファがオーバーフロー（over flow）、または、アンダーフロー（under flow）しないようにそれぞれのピクチャに発生符号量を割り当てることで、後段のデコーダが正常にデコードを行えるように制御されなくてはならない。特に、編集のための部分的な再エンコードを行う場合、部分再エンコードしない部分に関して（特に、再エンコードを行う部分と再エンコードを行わない部分の接続点付近において）も、VBVバッファがオーバーフローまたはアンダーフローしないように再エンコードを行う必要がある。【００８２】
再エンコードされた圧縮映像データのバッファの状態により影響を受けるのは、再エンコードされた圧縮映像信号の後に結合される再エンコードしない部分の圧縮映像データである。この再エンコードしない部分の圧縮映像データが、オーバーフローまたはアンダーフローしないための十分条件は、編集前後において、再エンコードされた圧縮映像信号と再エンコードしない部分の圧縮映像データとの接続部分のOccupancy（オキュパンシ）が一致することであり、換言すれば、再エンコードされた圧縮映像信号の後に結合される再エンコードしない部分の圧縮編集映像データの最初のＩピクチャまたはＰピクチャ、すなわち、図７において、Ａで示されるＩピクチャに続く、図７においてＤで示されるＰピクチャのOccupancyが、圧縮素材映像２データの図７においてＢで示されるＩピクチャの次のＩピクチャまたはＰピクチャ、すなわち、図７において、Ｃで示されるＰピクチャのOccupancyに等しくなることである。よって再エンコードを行う場合は、上記条件を満たす値になるように、再エンコード終了時点（図７のＡで示される部分）のバッファのOccupancyを制御する必要がある。【００８３】
このようにすることにより、VBVバッファの破綻をできるだけ防止するようにすることができる。【００８４】
しかしながら、Ａで示されるＩピクチャおよびその次のＩまたはＰピクチャの発生符号量によっては、Ａで示されるＩピクチャのOccupancyを制御するだけでは、図７を用いて説明したように、Ｄで示されるＰピクチャのOccupancyが、圧縮素材映像２データの図７においてＣで示されるＰピクチャのOccupancyに等しくなるようにすることができないため、VBVバッファが破綻してしまう恐れがある。【００８５】
図８を用いて、VBVバッファが破綻してしまう場合について説明する。【００８６】
一般的に、Ｉピクチャの発生符号量およびＰピクチャの発生符号量は、Ｂピクチャの発生符号量よりも大きい。例えば、再エンコードして生成された圧縮映像データの後に結合される、再エンコードしない圧縮素材映像２のデータの先頭のＩピクチャであるＩ2ピクチャの発生符号量Ｂ、および、次のＰピクチャであるＰ5ピクチャの発生符号量Ｃが大きい場合について考える。【００８７】
このとき、編集されて生成される圧縮編集映像のうちの、部分エンコードされた部分に続く部分エンコードされない部分の先頭のＩピクチャに続くＰピクチャにおけるＤで示される部分のOccupancyが、編集前の圧縮素材映像２データのＣで示される部分のOccupancyに等しくなるように、Ａで示されるＩピクチャのOccupancyを制御しようとしても、連続するＰピクチャの符号発生量が多いために、図中Ｄに示されるように、バッファをアンダーフローしてしまう。この例では、編集後のＩ0ピクチャにおけるＡで示されるＩピクチャのOccupancyは、ほぼ、バッファの最大値であるため、再エンコード部分において、発生符号量をどのように制御しても、図中Ｄに示される部分でバッファのアンダーフローを避けることができない。すなわち、図５および図６を用いて説明した方法では、デコーダでの復号処理を１００％保障することができない。【００８８】
そこで、ＣＰＵ２０は、VBVバッファが破綻しない条件を守って再エンコードが行われるように、デコーダ２２およびデコーダ２３、ストリームスプライサ２５、エフェクト／スイッチ２６、並びに、エンコーダ２７が実行する処理を制御するようにすることができる。【００８９】
次に、Long GOPのOpen GOP方式で圧縮された映像信号において、VBVバッファが破綻しない条件を守って編集することができる、第２の実施の形態について説明する。【００９０】
第２の実施の形態における編集装置１の動作について説明する。【００９１】
ＣＰＵ１１は、サウスブリッジ１５を制御して、図示しない操作入力部から供給されたユーザの操作入力を基に、ＨＤＤ１６から、圧縮符号化された圧縮素材映像１のデータおよび圧縮素材映像２のデータを読み出させ、ノースブリッジ１２、ＰＣＩバス１４、および、ＰＣＩブリッジ１７を介して、メモリ１８に供給させて記憶させるとともに、編集点を示す情報と、編集開始を示すコマンドを、ノースブリッジ１２、ＰＣＩバス１４、ＰＣＩブリッジ１７、および、コントロールバス１９を介して、ＣＰＵ２０に供給する。【００９２】
ＣＰＵ２０は、ＣＰＵ１１から供給された編集点を示す情報を基に、圧縮符号化された圧縮素材映像１のデータおよび圧縮素材映像２のデータのうち、再エンコードを行う範囲を決定する。【００９３】
具体的には、ＣＰＵ２０は、圧縮素材映像１において、再エンコードする区間の開始点を、部分再エンコードされた圧縮映像の前に結合する、再エンコードしない部分の圧縮映像のディスプレイオーダで最後のピクチャのピクチャタイプが、ＩピクチャまたはＰピクチャになるように決定する。【００９４】
すなわち、ＣＰＵ２０は、例えば、図９に示されるように、再エンコードしない部分の圧縮素材映像１のディスプレイオーダで最後のピクチャのピクチャタイプがＰピクチャ４６になるように、再エンコードする区間の開始点を、圧縮素材映像１において、Ｐピクチャ３５の次のＢピクチャ３６に決定する。換言すれば、ＣＰＵ２０は、再エンコードしない部分の圧縮映像がGOPの終了位置となるようにすることにより、エンコード処理が行いやすいようにすることができる。【００９５】
また、ＣＰＵ２０は、圧縮素材映像２において、再エンコードする区間の終了点を、部分再エンコードされた圧縮映像の後に結合する、再エンコードしない部分の圧縮映像のディスプレイオーダで最初のピクチャのピクチャタイプがＩピクチャになるように決定する。【００９６】
すなわち、ＣＰＵ２０は、例えば、図９に示されるように、再エンコードしない部分の圧縮素材映像２のディスプレイオーダで最初のピクチャのピクチャタイプがＩピクチャ４７になるように、再エンコードする区間の終了点を、圧縮素材映像２において、Ｉピクチャ４０の前のＢピクチャ３９に決定する。【００９７】
そして、ＣＰＵ２０は、ＰＣＩブリッジ１７を制御して、メモリ１８に記憶されている圧縮符号化された圧縮素材映像１のデータのうち、再エンコードを行う範囲のピクチャと、Ｂピクチャ３６およびＢピクチャ３７をデコードするために参照する必要があるピクチャである、Ｉピクチャ３１、Ｐピクチャ３２、Ｐピクチャ３３、Ｐピクチャ３４、および、Ｐピクチャ３５のデータをデコーダ２２に供給させるとともに、圧縮素材映像２のデータのうち、再エンコードを行う範囲のピクチャと、Ｂピクチャ３８およびＢピクチャ３９をデコードするために参照する必要があるピクチャである、Ｉピクチャ４０のデータをデコーダ２３に供給させる。【００９８】
また、このとき、ＣＰＵ２０は、ＰＣＩブリッジ１７を制御して、メモリ１８に記憶されている圧縮符号化された圧縮素材映像１および圧縮素材映像２のデータのうちの再エンコードを行わない範囲のピクチャを、ストリームスプライサ２５に供給させる。【００９９】
ＣＰＵ２０は、デコーダ２２およびデコーダ２３を制御して、供給された圧縮符号化されたデータをデコードさせる。【０１００】
デコーダ２２およびデコーダ２３は、ＣＰＵ２０の制御に基づいて、供給されたデータをデコードし、復号されて得られた素材映像１および素材映像２の信号をエフェクト／スイッチ２６に供給する。【０１０１】
また、デコーダ２２およびデコーダ２３は、後段のエンコーダ２７によるエンコード処理に必要な情報を抽出し、コントロールバス１９を介して、ＣＰＵ２０に供給することができる。ＣＰＵ２０は、デコーダ２２またはデコーダ２３から供給された、後段のエンコーダ２７によるエンコード処理に必要な情報を、コントロールバス１９を介して、エンコーダ２７に供給する。【０１０２】
エフェクト／スイッチ２６は、ＣＰＵ２０の制御に基づいて、所定のカット（Cut）編集点（スプライス点）で、非圧縮の復号素材映像１と復号素材映像２の信号を接続して、必要に応じて、エフェクトを施し、再エンコード用の非圧縮の編集映像信号を生成し、再エンコードに必要な再エンコード用参照画像（図９においては、Ｂピクチャ４２およびＢピクチャ４３のエンコードに必要なＰピクチャ４１、並びに、Ｂピクチャ７２およびＢピクチャ７３のエンコードに必要なＩピクチャ７４に対応する画像データ）とともに、エンコーダ２７に供給する。【０１０３】
ＣＰＵ２０は、圧縮素材映像２のうち、再エンコードを行う部分において、ディスプレイオーダで最後に位置する連続するＢピクチャの枚数ｎの情報を取得する。再エンコードしない部分の圧縮素材映像２のディスプレイオーダで最初のピクチャのピクチャタイプは、上述したように、Ｉピクチャになるように決定されているので、Ｂピクチャの枚数ｎは、すなわち、再エンコードしない部分の圧縮素材映像２のディスプレイオーダで最初のＩピクチャと、編集後にそのＩピクチャの直前に存在するＩピクチャまたはＰピクチャとの間にあるＢピクチャの枚数である。図９における場合では、Ｂピクチャの枚数ｎは、Ｂピクチャ３８およびＢピクチャ３９の２枚である。【０１０４】
更に、ＣＰＵ２０は、再エンコードしない部分の圧縮素材映像２のディスプレイオーダで最初のＩピクチャの直前に存在するＩピクチャまたはＰピクチャ、換言すれば、再エンコードする範囲の最後に存在するＩピクチャまたはＰピクチャのピクチャタイプの情報を取得する。図９における場合では、再エンコードしない部分の圧縮素材映像２のディスプレイオーダで最初のＩピクチャの直前に存在するＩピクチャまたはＰピクチャは、Ｐピクチャ６１である。【０１０５】
そして、ＣＰＵ２０は、エンコーダ２７が実行する処理において、再エンコード終了点付近のＢピクチャタイプの枚数が編集前の圧縮素材映像２と同一となり、そのＢピクチャの直前のピクチャのピクチャタイプがＩピクチャまたはＰピクチャとなるように、エンコーダ２７を制御する。また、ＣＰＵ２０は、Ｂピクチャの直前のピクチャのピクチャタイプも、編集前の圧縮素材映像２と同一となるように制御すると好適である。【０１０６】
すなわち、ＣＰＵ２０は、図９における場合では、編集前の圧縮素材映像２のＢピクチャ３８およびＢピクチャ３９と、再エンコードにおけるＢピクチャ７２およびＢピクチャ７３のピクチャタイプをそろえ、再エンコードにおけるＢピクチャ７２およびＢピクチャ７３の直前をＰピクチャ７１とする。【０１０７】
エンコーダ２７は、ＣＰＵ２０の制御に基づいて、エフェクト／スイッチ２６から供給された、再エンコード用の非圧縮の編集映像信号をエンコードする。【０１０８】
そして、エンコーダ２７において再エンコードされた映像データは、ストリームスプライサ２５に供給される。ストリームスプライサ２５は、ＣＰＵ２０の制御に基づいて、ＰＣＩブリッジ１７から供給された、圧縮素材映像１および圧縮素材映像２のデータのうちの再エンコードを行わない範囲の圧縮素材映像１および圧縮素材映像２と、エンコーダ２７から供給されたエンコードされた映像データとを接続し、圧縮編集映像データを生成する。【０１０９】
具体的には、ストリームスプライサ２５は、ＣＰＵ２０の制御に基づいて、ＰＣＩブリッジ１７から供給された、圧縮素材映像１のＰピクチャ４６とエンコーダ２７から供給されたエンコードされた映像データのＢピクチャ４２とがディスプレイオーダで連続するように接続され、エンコーダ２７から供給されたエンコードされた映像データのＢピクチャ７３と、ＰＣＩブリッジ１７から供給された、圧縮素材映像２のＩピクチャ４７とがディスプレイオーダで連続するように接続されるように、ストリームをつなぎ合わせる。【０１１０】
なお、ここでも、再エンコード範囲の圧縮素材映像１および圧縮素材映像２がデコードされるものとして説明したが、デコード範囲は、再エンコード範囲に基づいて、再エンコード範囲とは個別に定められるものとしてもよい。すなわち、デコード範囲は、再エンコード範囲と同一の範囲であっても、再エンコード範囲を含むそれ以上の範囲であってもよい。【０１１１】
実際のエンコードはコーディングオーダで行われ、エンコーダ２７においてエンコードされた圧縮映像も、コーディングオーダで出力される。図９を用いて説明した場合に対応させて、圧縮された信号におけるピクチャの並びをコーディングオーダで示したものを図１０に示す。【０１１２】
すなわち、ストリームスプライサ２５は、ＣＰＵ２０の制御に基づいて、再エンコードされた部分と再エンコードされていない部分の接続点において、エンコードされた映像データにおいて、コーディングオーダでＰピクチャ７１に続くＢピクチャ８１と、圧縮素材映像２のＩピクチャ４７（再エンコードされていないＩピクチャ）とがコーディングオーダで連続するように接続され、圧縮素材映像２のＩピクチャ４７と、エンコードされた映像データのＢピクチャ７２とがコーディングオーダで連続するように接続され、エンコードされた映像データにおいて、コーディングオーダでＢピクチャ７２に続くＢピクチャ７３と、圧縮素材映像２のＰピクチャ８２とがコーディングオーダで連続するように接続されるように、ストリームをつなぎ合わせる。【０１１３】
換言すれば、ストリームスプライサ２５は、コーディングオーダにおいて、再エンコードされた区間の最後のＩピクチャまたはＰピクチャに続く、ｎ枚の再エンコードされたＢピクチャの前に、再エンコードされていないＩピクチャが入るように、ストリームをつなぎ合わせる。【０１１４】
そして、ストリームスプライサ２５は、ＣＰＵ２０の制御に基づいて、作成した圧縮編集映像データをＰＣＩブリッジ１７に供給して、メモリ１８に保存させるとともに、デコーダ２４に供給してデコードさせ、編集結果確認用のモニタなどに出力させて表示させたり、デコードされて生成されたベースバンド信号を、他の装置に出力させる。デコーダ２４が、独立した装置として構成されている場合、デコーダ２４に対応する装置は、図９および図１０を用いて説明したようにして生成された、換言すれば、再エンコードされた区間の最後のＩピクチャまたはＰピクチャに続く、ｎ枚の再エンコードされたＢピクチャの前に、再エンコードされていないＩピクチャが入る編集後の圧縮映像データの供給を受けてこれをデコードし、デコードされて生成されたベースバンド信号を出力することができるようになされる。【０１１５】
次に、図１１を用いて、図９および図１０を用いて説明した、再エンコードを利用した編集処理を行う場合のVBVバッファについて説明する。【０１１６】
図９および図１０を用いて説明した、再エンコードを利用した編集処理が行われた場合、コーディングオーダにおいて、再エンコードの最後のｎ枚のＢピクチャの前に、再エンコードしないＩピクチャが挿入される。したがって、図１１に示されるように、再エンコードされないＩピクチャの発生符号量の情報（図１１においては、Ｆで示される部分）が圧縮素材映像２の対応するＩピクチャの発生符号量の情報（図１１においては、Ｂで示される部分）から求められて、再エンコード範囲から最後のｎ枚のＢピクチャを除いた部分（図１１のＥで示される部分）は、再エンコードされない最初のＩピクチャでVBVバッファが、オーバーフローまたはアンダーフローしないように、発生符号量が割り当てられて、再エンコードが行われ、VBVバッファのOccupancyが計算される。【０１１７】
その後、再エンコードしない部分の圧縮映像のVBVバッファが、オーバーフローまたはアンダーフローしないようにするため、再エンコードしない部分の圧縮映像の先頭のＩピクチャの次に位置するＩピクチャまたはＰピクチャのOccupancyが編集前後で一致するように、再エンコード部分の最後のｎ枚のＢピクチャ（図１１においては、Ｇで示される部分）において、発生符号量が制御されて、エンコードが行なわれる。すなわち、図１１において、編集前のＣで示される発生符号量と、編集後のＨで示される発生符号量は同一であるため、編集前のＩで示されるOccupancyに、編集後のＪで示されるOccupancyが一致するように、ｎ枚のＢピクチャの再エンコードが行われる。これにより、図１１において、ＫおよびＬで示される部分でバッファのアンダーフローは発生しない。【０１１８】
この方法では、再エンコードが行われている部分と再エンコードが行われない部分の圧縮映像の結合部におけるピクチャタイプが、編集前後で保存されているので、図１１に示されるように、再エンコードが行われている部分に接続される、再エンコードが行われない部分の先頭のＩピクチャの発生符号量Ｆと、次のＩピクチャまたはＰピクチャの発生符号量Ｈが大きくても、編集前の圧縮素材映像２のデータでVBVバッファの制約が満たされていれば、編集後の圧縮映像でも制約を満たすようにエンコードが行われるようにすることが可能である。【０１１９】
以上、図４乃至図１１を用いて、双方向のフレーム間予測を用いて圧縮した映像データを編集することができる編集装置１が実行する処理の第１の実施の形態および第２の実施の形態について説明した。【０１２０】
このように、編集点付近の所定の範囲のピクチャをデコードして結合した後、再エンコードを行うようになされている編集方法においては、VBV BufferのOccupancyが連続になるよう、再エンコードを行う部分と行わない部分の接続点付近のOccupancyを制御する必要がある。よって、第２の実施の形態において、再エンコード開始点のＩピクチャのVBV Occupancyが小さく、再エンコード終了点の前のＩピクチャのVBV Occupancyが大きい場合、バッファのアンダーフローを避けるためには、Bit rateから想定される本来の符号量（ピクチャ数×bit_rate／frame_rateにより求められる）より少ない符号量しか発生させることができない。このような場合、同じBit rateで再エンコードすると画質は低下する。【０１２１】
ここで、再エンコード開始点のＩピクチャと、再エンコード終了点の前のＩピクチャとのVBV Occupancyを比較することにより、想定されている本来の符号量が発生されているか否かが判断されるのは、GOPにおいて同一の位置でVBV Occupancyを比較するためである。【０１２２】
また、上述したように、編集点付近においては、必要に応じて、エフェクトが施される。このとき、エフェクトの種類によっては、エフェクトがかけられた部分の符号化難易度が高くなり、通常の符号量で符号化した場合、再エンコード後の画質は低下する。【０１２３】
エンコーダ２７が、VBR（Variable Bit Rate）でエンコードを行い、かつ、編集素材の圧縮映像データの編集点付近のBit rateが、最大Bit rateよりも低く、再エンコードを行うときにBit rateを上げることが可能な場合は、再エンコード範囲のうちの符号化難易度の高い部分でBit rateを上げることで、画質を維持することができる。しかしながら、エンコーダ２７が、CBR(Constant Bit Rate)でエンコードを行っている場合や、編集素材の圧縮映像データの編集点付近のBit rateが、最大Bit rateとほぼ同じ場合には、再エンコード範囲のうちの符号化難易度の高い部分でBit Rateを上げてエンコードに使用できる符号量を増やすことができないので、画質を維持することができない。【０１２４】
Bit Rateを上げることができない状況で、編集点付近の符号化難易度が高くなった場合や、VBV Bufferの連続性を保つために、Bit rateから想定される本来の符号量より少ない符号量しか使えない場合、発生符号量を制御することにより、本来の発生符号量にできるだけ近い発生符号量を与えることができるようにし、画質の劣化を防ぐようにする必要がある。そこで、編集装置１においては、VBV BufferのOccupancyが連続になるように制御されることにより、想定されている本来の符号量が発生されていなかったり、編集点付近にエフェクトが施されることにより、その部分の符号化難易度が高くなった場合、上述した実施の形態２における再エンコード範囲を延長し、エンコーダ２７によるエンコード処理の発生符号量を編集点付近で増加させるように制御することにより、画質の低下を防止するようにすることができる。【０１２５】
再エンコード範囲を延長し、エンコーダ２７によるエンコード処理の発生符号量を編集点付近で増加させるように制御する、第３の実施の形態について、以下に説明する。【０１２６】
まず、図１１を用いて説明した場合のように、編集点を含む最小の再エンコード区間を考える。編集点を含むエフェクト区間を、以下、Editing Durationと称するものとする。【０１２７】
再エンコード開始点および終了点のVBV Occupancyの連続性を維持するため、再エンコード開始点、終了点のVBV Occupancyが一致されるように、エンコーダ２７によるエンコードがＣＰＵ２０によって制御される。【０１２８】
通常、ＰピクチャまたはＢピクチャよりもＩピクチャの発生符号量が多いため、GOPの先頭ではOccupancyが小さくなり、後半では大きくなる。符号量割り当てにおいて、GOP単位で等しい符号量（１GOPのピクチャ数×bit_rate／frame_rate）が割り当てられるようになされている場合、GOPの先頭のＩピクチャにおいては、いずれも同一のOccupancyとなる。したがって、GOP単位で等しい符号量が割り当てられていない場合、再エンコードを行う区間のGOPの先頭と次のGOPの先頭のOccupancyを比較することで、そのGOPで使用できる符号量が平均より多いか少ないかを判断することができる。すなわち、上述したように、再エンコード開始点のＩピクチャと、再エンコード終了点の前のＩピクチャとのVBV Occupancyを比較することにより、想定されている本来の符号量が発生されているか否かを判断することができる。【０１２９】
また、再エンコード終了点とその直前の再エンコードしないＩピクチャとの間のピクチャ（図１１においてＧで示されるＢピクチャ）は、エンコード条件にほとんど変化がないので、この部分における再エンコード時の符号量が、編集前の圧縮映像と同一であるものと仮定して、編集前の圧縮映像の再エンコード終了点の直前の再エンコードしないＩピクチャのVBV Occupancyを、再エンコードされる区間の終了点のVBV Occupancyとみなすことができる。また、Editing Durationを含む最小のGOPをEditing GOP Durationと称した場合、Editing GOP Durationの先頭のＩピクチャと、Editing GOP Durationの次のＩピクチャとは、再エンコード開始点のＩピクチャと、再エンコード終了点の前のＩピクチャと等しい。【０１３０】
したがって、式（１）に示されるように、編集前の圧縮素材映像１の再エンコード開始点に対応するピクチャ、換言すれば、Editing GOP Durationの先頭のＩピクチャに対応する編集前のピクチャのVBV Occupancyから、編集前の圧縮素材映像２の再エンコード終了点の直前の再エンコードしないＩピクチャ、換言すれば、Editing GOP Durationの次のＩピクチャに対応する編集前のピクチャのVBV Occupancyを引いた値である、Occupancy差分値を求めることで、Editing Durationで使用できる符号量が、bit rateから得られる平均値より少ないかどうかを、実際のエンコードを行う前に判断することができる。【０１３１】
Occupancy差分値＝vbv_edit_gop_start−vbv_edit_last_i・・・（１）【０１３２】
したがって、ＣＰＵ２０は、Editing GOP Durationで使用できる符号量が平均値より少ない場合、ＰＣＩブリッジ１７を制御して、再エンコード区間をEditing GOP Durationの前後に延長させ、エンコーダ２７を制御して、Editing GOP Durationに割り当てられる発生符号量を増加させる。【０１３３】
また、メモリ２１には、予め、エフェクトの種類と符号化難易度の上昇率との関係を示すテーブルを予め保存しておくか、または、エフェクトの種類と対応する係数、および、その係数を用いて符号化難易度に対応する値を算出することができる計算式を予め保存しておくものとする。ＣＰＵ２０は、メモリ２１に記憶されたテーブルを参照したり、所定の計算式を用いて、エフェクトの種類に対応する符号化難易度を取得し、その符号化難易度を基に、ＰＣＩブリッジ１７を制御して、再エンコード区間をEditing GOP Durationの前後に延長させ、エンコーダ２７を制御して、Editing GOP Durationに割り当てられる発生符号量を増加させる。【０１３４】
ＣＰＵ２０は、エンコーダ２７により再エンコードが行われる前に、Editing GOP Durationに割り当てられる発生符号量と、再エンコード区間の延長量を予め決定するようにしても良いし、エンコーダ２７により再エンコードが行われるのと平行して、Editing GOP Durationに割り当てられる発生符号量と、再エンコード区間の延長量を逐次算出して更新することができるようにしても良い。このとき、ＣＰＵ２０は、Editing GOP Durationに割り当てられる発生符号量と、再エンコード区間の延長量を算出するために、再エンコードされるピクチャの符号化難易度に関する情報を取得する必要がある。ＨＤＤ１６に記録されている圧縮映像素材とともに、対応する符号化難易度の情報がすでに用意されている場合、ＣＰＵ１１が、サウスブリッジ１５およびノースブリッジ１２を介して、ＨＤＤ１６から符号化難易度の情報を読み出し、ノースブリッジ１２、ＰＣＩバス１４、ＰＣＩブリッジ、および、コントロールバス１９を介して、ＣＰＵ２０に供給するようにしても良い。また、デコーダ２２および２３がデコード時に符号化難易度の情報を取得して、コントロールバス１９を介して、ＣＰＵ２０に供給するようにしても良いし、エンコーダ２７がエンコード時に取得した符号化難易度の情報を、コントロールバス１９を介して、ＣＰＵ２０に供給するようにしても良い。【０１３５】
このようにして、編集装置１においては、VBV BufferのOccupancyが連続になるように制御されることにより、想定されている本来の符号量が発生されていなかったり、編集点付近にエフェクトが施されることにより、その部分の符号化難易度が高くなった場合、上述した方法で決定される最小の再エンコード範囲を延長し、エンコーダ２７によるエンコード処理の発生符号量を編集点付近で増加させるように制御することにより、画質の低下を防止するようにすることができる。【０１３６】
図１２は、エンコーダ２７の構成を示すブロック図である。【０１３７】
エンコーダ２７に外部から供給された画像データは前処理部１７１に入力される。前処理部１７１は、順次入力される画像データの各フレーム画像を、１６画素×１６ラインの輝度信号、および輝度信号に対応する色差信号によって構成されるマクロブロックに分割し、必要に応じて、並べ替えたり、画像データの各フレーム画像を、１６画素×１６ラインの輝度信号、および輝度信号に対応する色差信号によって構成されるマクロブロックに分割したマクロブロックデータを生成して、演算部１７２、動きベクトル検出部１７３、および、量子化制御部１８３のイントラＡＣ算出部１９１に供給する。【０１３８】
動きベクトル検出部１７３は、マクロブロックデータの入力を受け、各マクロブロックの動きベクトルを、マクロブロックデータ、および、フレームメモリ１８４に記憶されている参照画像データを基に算出し、動きベクトルデータとして、動き補償部１８１に送出する。【０１３９】
演算部１７２は、前処理部１７１から供給されたマクロブロックデータについて、各マクロブロックの画像タイプに基づいた動き補償を行う。具体的には、演算部１７２は、Ｉピクチャに対してはイントラモードで動き補償を行い、Ｐピクチャに対しては、順方向予測モードで動き補償を行い、Ｂピクチャに対しては、双方向予測モードで動き補償を行うようになされている。【０１４０】
イントラモードとは、符号化対象となるフレーム画像をそのまま伝送データとする方法であり、順方向予測モードとは、符号化対象となるフレーム画像と過去参照画像との予測残差を伝送データとする方法であり、双方向予測モードとは、符号化対象となるフレーム画像と、過去と将来の参照画像との予測残差を伝送データとする方法である。【０１４１】
まず、マクロブロックデータがＩピクチャであった場合、マクロブロックデータはイントラモードで処理される。すなわち、演算部１７２は、入力されたマクロブロックデータのマクロブロックを、そのまま演算データとしてＤＣＴ（Discrete Cosine Transform ：離散コサイン変換）部１７４に送出する。ＤＣＴ部１４７は、入力された演算データに対しＤＣＴ変換処理を行うことによりＤＣＴ係数化し、これをＤＣＴ係数データとして、量子化部１７５に送出する。【０１４２】
量子化部１７５は、発生符号量制御部１９２から供給される量子化インデックスデータＱ（ｊ＋１）に基づいて、入力されたＤＣＴ係数データに対して量子化処理を行い、量子化ＤＣＴ係数データとして、ＶＬＣ（Variable Length Code；可変長符号化）部１７７および逆量子化部１７８に送出する。量子化部１７５は、発生符号量制御部１９２から供給される量子化インデックスデータＱ（ｊ＋１）に応じて、量子化処理における量子化ステップサイズを調整することにより、発生する符号量を制御することができるようになされている。【０１４３】
逆量子化部１７８に送出された量子化ＤＣＴ係数データは、量子化部１７５と同じ量子化ステップサイズによる逆量子化処理を受け、ＤＣＴ係数データとして、逆ＤＣＴ部１７９に送出される。逆ＤＣＴ部１７９は、供給されたＤＣＴ係数データに逆ＤＣＴ処理を施し、生成された演算データは、演算部１８０に送出され、参照画像データとしてフレームメモリ１８４に記憶される。【０１４４】
そして、演算部１７２は、マクロブロックデータがＰピクチャであった場合、マクロブロックデータについて、順方向予測モードよる動き補償処理を行い、Ｂピクチャであった場合、マクロブロックデータについて、双方向予測モードによる動き補償処理を行う。【０１４５】
順方向予測モードにおいて、動き補償部１８１は、フレームメモリ１８４に記憶されている参照画像データを、動きベクトルデータに応じて動き補償し、順方向予測画像データ、または、双方向予測画像データを算出する。演算部１７２は、マクロブロックデータについて、動き補償部１８１より供給される順方向予測画像データ、または、双方向予測画像データを用いて減算処理を実行する。【０１４６】
すなわち、動き補償部１８１は、順方向予測モードにおいて、フレームメモリ１８４の読み出しアドレスを、動きベクトルデータに応じてずらすことによって、参照画像データを読み出し、これを順方向予測画像データとして演算部１７２および演算部１８０に供給する。演算部１７２は、供給されたマクロブロックデータから、順方向予測画像データを減算して、予測残差としての差分データを得る。そして、演算部１７２は、差分データをＤＣＴ部１７４に送出する。【０１４７】
演算部１８０には、動き補償部１８１より順方向予測画像データが供給されており、演算部１８０は、逆ＤＣＴ部１７９から供給された演算データに、順方向予測画像データを加算することにより、参照画像データを局部再生し、フレームメモリ１８４に出力して記憶させる。【０１４８】
また、双方向予測モードにおいて、動き補償部１８１は、双方向予測画像データを演算部１７２および演算部１８０に供給する。演算部１７２は、供給されたマクロブロックデータから、双方向予測画像データを減算して、予測残差としての差分データを得る。そして、演算部１７２は、差分データをＤＣＴ部１７４に送出する。【０１４９】
演算部１８０には、動き補償部１８１より双方向予測画像データが供給されており、演算部１８０は、逆ＤＣＴ部１７９から供給された演算データに、双方向予測画像データを加算することにより、参照画像データを局部再生する。【０１５０】
かくして、エンコーダ２７に入力された画像データは、動き補償予測処理、ＤＣＴ処理および量子化処理を受け、量子化ＤＣＴ係数データとして、ＶＬＣ部１７７に供給される。ＶＬＣ部１７７は、量子化ＤＣＴ係数データに対し、所定の変換テーブルに基づく可変長符号化処理を行い、その結果得られる可変長符号化データをバッファ１８２に送出するとともに、マクロブロックごとの符号化発生ビット数を表す発生符号量データＢ（ｊ）を、量子化制御部１８３の発生符号量制御部１９２、およびＧＣ（Global Complexity）算出部１９３にそれぞれ送出する。【０１５１】
ＧＣ算出部１９３は、発生符号量データＢ（ｊ）を、マクロブロックごとに順次蓄積し、１ピクチャ分の発生符号量データＢ（ｊ）が全て蓄積された時点で、全マクロブロック分の発生符号量データＢ（ｊ）を累積加算することにより、１ピクチャ分の発生符号量を算出する。【０１５２】
そしてＧＣ算出部１９３は、１ピクチャの発生符号量と量子化ステップサイズの平均値との積を算出することにより、画像の難しさ（以下、これをＧＣと称する）を表すＧＣデータを求め、これを目標符号量算出部１９４に供給する。ＧＣデータは、符号化難易度を示す指標のうちのひとつである。【０１５３】
目標符号量算出部１９４は、ＣＰＵ２０の制御に基づいて、目標発生符号量の算出を行う。すなわち、目標符号量算出部１９４は、ＣＰＵ２０の制御に基づいて、必要に応じて、編集点付近のピクチャの発生符号量を増加させ、延長された再エンコード範囲のピクチャの発生符号量が減少されるように、ＧＣ算出部１９３から供給されるＧＣデータを基に、次のピクチャの目標発生符号量データを算出し、算出した目標発生符号量データを発生符号量制御部１９２に送出する。【０１５４】
ＭＥ残差算出部１９５は、入力されるマクロブロックデータを基に、ＭＥ残差情報を算出して、発生符号量制御部１９２に出力する。ここで、ＭＥ残差情報とは、ピクチャ単位で算出されるものであり、１つ前のピクチャと次のピクチャにおける輝度の差分値の合計値である。ＭＥ残差情報は、符号化難易度を示す指標のうちのひとつである。【０１５５】
イントラＡＣ算出部１９１は、イントラＡＣ（intra ＡＣ）を算出し、発生符号量制御部１９２に出力する。【０１５６】
イントラＡＣは、MPEG方式におけるＤＣＴ処理単位のＤＣＴブロックごとの映像データとの分散値の総和として定義されるパラメータであって、映像の複雑さを指標し、映像の絵柄の難しさおよび圧縮後のデータ量と相関性を有する。すなわち、イントラＡＣとは、ＤＣＴブロック単位で、それぞれの画素の画素値から、ブロックごとの画素値の平均値を引いたものの絶対値和の、画面内における総和である。イントラＡＣは、符号化難易度を示す指標のうちのひとつである。【０１５７】
発生符号量制御部１９２は、バッファ１８２に格納される可変長符号化データの蓄積状態を常時監視しており、蓄積状態を表す占有量情報を基に量子化ステップサイズを決定するようになされている。【０１５８】
また、発生符号量制御部１９２は、ＭＥ残差算出部１９５から供給されたＭＥ残差、および、イントラＡＣ算出部１９１から供給されたイントラＡＣを基に、符号化難易度が高いか否かを検出し、符号化難易度の高いピクチャに対して発生符号量を増やすために量子化ステップサイズを小さくするようになされているとともに、目標発生符号量データＴｐｉよりも実際に発生したマクロブロックの発生符号量データＢ（ｊ）が多い場合、発生符号量を減らすために量子化ステップサイズを大きくし、また目標発生符号量データＴｐｉよりも実際の発生符号量データＢ（ｊ）が少ない場合、発生符号量を増やすために量子化ステップサイズを小さくするようになされている。【０１５９】
量子化部１７５は、量子化インデックスデータＱ（ｊ＋１）に基づいて、次のマクロブロックに応じた量子化ステップサイズを決定し、量子化ステップサイズによってＤＣＴ係数データを量子化する。【０１６０】
これにより、量子化部１７５は、１つ前のピクチャの実際の発生符号量データＢ（ｊ）に基づいて算出された、次のピクチャの目標発生符号量にとって最適な量子化ステップサイズによって、ＤＣＴ係数データを量子化することができる。【０１６１】
かくして、量子化部１７５では、バッファ１８２のデータ占有量に応じて、バッファ１８２がオーバーフローまたはアンダーフローしないように量子化し得るとともに、デコーダ側のVBVバッファがオーバーフロー、またはアンダーフローしないように量子化した量子化ＤＣＴ係数データを生成することができる。【０１６２】
なお、エンコーダ２７は、上述した機能の中で、少なくとも、符号化難易度を検出する、または、取得して、発生符号量を制御することができる機能のいずれかを有していれば、図１２に記載されたすべての符号化難易度の検出手段または符号化難易度の取得手段を有していなくても良い。【０１６３】
このようにして、エンコーダ２７は、発生符号量を制御して、データをエンコードすることができる。【０１６４】
次に、第３の実施の形態における編集装置１の動作について説明する。【０１６５】
ＣＰＵ１１は、サウスブリッジ１５を制御して、図示しない操作入力部から供給されたユーザの操作入力を基に、ＨＤＤ１６から、圧縮符号化された圧縮素材映像１のデータおよび圧縮素材映像２のデータを読み出させ、ノースブリッジ１２、ＰＣＩバス１４、および、ＰＣＩブリッジ１７を介して、メモリ１８に供給させて記憶させるとともに、編集点を示す情報と、編集開始を示すコマンドを、ノースブリッジ１２、ＰＣＩバス１４、ＰＣＩブリッジ１７、および、コントロールバス１９を介して、ＣＰＵ２０に供給する。【０１６６】
ＣＰＵ２０は、ＣＰＵ１１から供給された編集点を示す情報を基に、圧縮符号化された圧縮素材映像１のデータおよび圧縮素材映像２のデータのうち、予め、再エンコードを行う範囲を決定するか、または、再エンコードする仮の範囲を決定する。【０１６７】
具体的には、ＣＰＵ２０は、圧縮素材映像１において、最小の再エンコードする区間の開始点を、第２の実施の形態における場合と同様にして、部分再エンコードされた圧縮映像の前に結合する、再エンコードしない部分の圧縮映像のディスプレイオーダで最後のピクチャのピクチャタイプが、ＩピクチャまたはＰピクチャになるように決定する。【０１６８】
すなわち、ＣＰＵ２０は、例えば、図９を用いて説明したように、最小の再エンコード区間に対する再エンコードしない部分の圧縮素材映像１のディスプレイオーダで最後のピクチャのピクチャタイプがＰピクチャ４６になるように、最小の再エンコードする区間の開始点を、圧縮素材映像１において、Ｐピクチャ３５の次のＢピクチャ３６に決定する。換言すれば、ＣＰＵ２０は、再エンコードしない部分の圧縮映像がGOPの終了位置となるようにすることにより、エンコード処理が行いやすいようにすることができる。【０１６９】
また、ＣＰＵ２０は、圧縮素材映像２において、最小の再エンコードする区間の終了点を、第２の実施の形態における場合と同様にして、部分再エンコードされた圧縮映像の後に結合する、再エンコードしない部分の圧縮映像のディスプレイオーダで最初のピクチャのピクチャタイプがＩピクチャになるように決定する。【０１７０】
すなわち、ＣＰＵ２０は、例えば、図９を用いて説明したように、最小の再エンコードしない部分の圧縮素材映像２のディスプレイオーダで最初のピクチャのピクチャタイプがＩピクチャ４７になるように、最小の再エンコードする区間の終了点を、圧縮素材映像２において、Ｉピクチャ４０の前のＢピクチャ３９に決定する。【０１７１】
そして、ＣＰＵ２０は、エンコーダ２７により再エンコードが行われる前に、Editing GOP Durationに割り当てられる発生符号量と、再エンコード区間の延長量を予め決定する場合、Editing Durationを含む最小のGOPであるEditing GOP Durationの開始点のピクチャのVBV OccupancyからEditing GOP Durationの次のＩピクチャのVBV Occupancyを引いた値である、式（１）を用いて説明した、Occupancy差分値を求める。そして、ＣＰＵ２０は、Occupancy差分値が負であるとき、編集区間で使用できる符号量が、bit rateから得られる平均値より少ないので、その値の絶対値に応じて再エンコード区間を増加させる。【０１７２】
再エンコード区間の増加量は、Occupancy差分値を基に算出することができる。再エンコード区間の増加量は、例えば、次の式（２）を用いて算出することができる。【０１７３】
k_1×|vbv_edit_gop_startvbv_edit_last_i|／bit_rate・・・（２）【０１７４】
ここで、k_1は、再エンコード区間の増加の傾きを決めるために、経験的または実験的に求められる係数である。また、再エンコード区間の増加の単位は、例えば、GOP単位に増加させるようにしてもよい。また、ＣＰＵ２０は、Occupancy差分値が負でないときは、再エンコード区間を増加させない。【０１７５】
また、ＣＰＵ２０は、ＣＰＵ１１から供給される、編集に関する命令を基に、編集点付近にエフェクトを施すことが指令されているか、および、エフェクトが施される場合は、どのエフェクトが用いられるかを検出する。そして、ＣＰＵ２０は、メモリ２１に記憶されたテーブルを参照したり、所定の計算式を用いて、エフェクトの種類に対応する符号化難易度を取得し、その符号化難易度を基に、再エンコード区間をEditing GOP Durationの前後に延長させる。【０１７６】
そのとき、ＣＰＵ２０は、符号化難易度の上昇率をもとに、Editing Duration外の再エンコード区間からEditing Durationに割り振る符号量を決定する。この時、Editing Durationに割り振られる符号量には上限があるので、例えば、次の式（３）を用いて、上限以下となるようにEditing Durationへ割り振る符号量bit_supplementを決定する。【０１７７】
bit_supplement＝min（k_2×difficulty_variation×editing_length,
bit_supplement_start_max＋bit_supplement_end_max）
・・・（３）【０１７８】
ここで、k_2は、符号化難易度の上昇率に対する符号配分量比率を決める係数であり、実験的にまたは経験的に定められるものである。difficulty_variationは、符号化難易度に対応する係数であり、editing_lengthは、Editing Durationの長さに対応する値である。また、bit_supplement_start_maxは、Editing Durationより時間的に前に延長された再エンコード区間に含まれるピクチャからEditing Durationの部分に割り当てられる符号量の最大値であり、bit_supplement_end_maxは、diting Durationより時間的に後ろに延長された再エンコード区間に含まれるピクチャからEditing Durationの部分に割り当てられる符号量の最大値である。【０１７９】
Editing Durationより時間的に前に延長された再エンコード区間に含まれるピクチャからEditing Durationの部分に割り当てられる符号量を、bit_supplement_start、diting Durationより時間的に後ろに延長された再エンコード区間に含まれるピクチャからEditing Durationの部分に割り当てられる符号量を、bit_supplement_end、Editing Duration以外の延長された再エンコード区間から、Editing Durationに符号量を割り当てるために、Editing Duration外の再エンコード区間から減らす符号量の割合をsubtract_ratioとしたとき、Editing Duration外の再エンコード区間の長さ、すなわち、Editing Durationより前の再エンコード区間に必要な最低限のピクチャ枚数Ｐ１とEditing Durationより後の再エンコード区間に必要な最低限のピクチャ枚数Ｐ２は、Editing Durationに割り振る符号量から、次の式（４）および式（５）により決定される。【０１８０】
Ｐ１＝picture_rate×bit_supplement_start／（bit_rate×subtract_ratio）
・・・（４）
Ｐ２＝picture_rate×bit_supplement_end／（bit_rate×subtract_ratio）
・・・（５）【０１８１】
ここで、Ｐ１，Ｐ２は、ともに整数でなければならないので、演算結果が整数でない場合、Ｐ１およびＰ２は、小数点以下を切り上げた値となる。また、GOP単位で再エンコードが行なわれる場合は、式（４）および式（５）により算出されたピクチャ数以上で、再エンコード区間がGOP単位となる値をEditing Durationより前の再エンコード区間のピクチャ数とする。【０１８２】
また、ＣＰＵ２０は、エンコーダ２７により再エンコードが行われるのと平行して、Editing GOP Durationに割り当てられる発生符号量と、再エンコード区間の延長量を決定する場合、Editing Durationより前に延長する再エンコード区間の延長の長さと、前に延長された再エンコード区間からEditing Durationに割り振る符号量のみを、エフェクトの種類などから仮に算出するか、または、所定の固定の値とし、それ以降の処理により、エンコーダ２７により再エンコードが行われるのと平行して、Editing Durationより後ろに延長する再エンコード区間の延長の長さと、後ろに延長された再エンコード区間からEditing Durationに割り振る符号量を決定する。【０１８３】
このようにして、ＣＰＵ２０は、エンコード処理の実行に先立って、再エンコード区間の延長を決定、または、仮に決定する。【０１８４】
図１３に示されるように、ＣＰＵ２０が決定した、延長された再エンコード区間の全体を、再エンコードDurationと称し、再エンコードDurationのうち、Editing Duration以外の部分を、No Editing再エンコードDurationと称し、再エンコードDurationのうち、Editing GOP Duration以外の部分を、No Editing再エンコードGOP Durationと称するものとする。【０１８５】
発生符号量が減少されてしまうNO Editing再エンコードDuration範囲内のピクチャにおいては、画質が低下してしまう恐れがあるが、発生符号量の減少量が少量であれば、画質低下を視覚的に無視できる程度に抑制することができる。そこで、NO Editing再エンコードDuration範囲は、NO Editing再エンコードDuration範囲内のピクチャの画質低下を視覚的に無視できる程度に広い範囲とすると好適である。すなわち、上述した式（２）におけるk_1は、NO Editing再エンコードDuration範囲内のピクチャの画質低下を視覚的に無視できる程度に、NO Editing再エンコードDurationを広い範囲とすることができるような値として、経験的または実験的に求められるようになされると好適である。【０１８６】
そして、ＣＰＵ２０は、ＰＣＩブリッジ１７を制御して、メモリ１８に記憶されている圧縮符号化された圧縮素材映像１のデータのうち、再エンコードを行う範囲である再エンコードDurationに含まれるピクチャと、再エンコードDurationに含まれるピクチャをデコードするために参照する必要があるピクチャのデータをデコーダ２２に供給させるとともに、圧縮素材映像２のデータのうち、再エンコードDurationに含まれるピクチャと、再エンコードDurationに含まれるピクチャをデコードするために参照する必要があるピクチャのデータをデコーダ２３に供給させる。【０１８７】
また、このとき、ＣＰＵ２０は、ＰＣＩブリッジ１７を制御して、メモリ１８に記憶されている圧縮符号化された圧縮素材映像１および圧縮素材映像２のデータのうちの再エンコードを行わない範囲のピクチャを、ストリームスプライサ２５に供給させる。【０１８８】
ＣＰＵ２０は、デコーダ２２およびデコーダ２３を制御して、供給された圧縮符号化されたデータをデコードさせる。【０１８９】
デコーダ２２およびデコーダ２３は、ＣＰＵ２０の制御に基づいて、供給されたデータをデコードし、復号されて得られた素材映像１および素材映像２の信号をエフェクト／スイッチ２６に供給する。【０１９０】
また、デコーダ２２およびデコーダ２３は、必要に応じて、例えば、デコード時に取得された符号化難易度など、後段のエンコーダ２７によるエンコード処理の制御に必要な情報を抽出し、コントロールバス１９を介して、ＣＰＵ２０に供給することができる。【０１９１】
エフェクト／スイッチ２６は、ＣＰＵ２０の制御に基づいて、所定のカット（Cut）編集点（スプライス点）で、非圧縮の復号素材映像１と復号素材映像２の信号を接続して、必要に応じて、Editing Durationの範囲のピクチャにエフェクトを施し、再エンコード用の非圧縮の編集映像信号を生成し、再エンコードに必要な再エンコード用参照画像とともに、エンコーダ２７に供給する。【０１９２】
ＣＰＵ２０は、圧縮素材映像２のうち、再エンコードを行う範囲である再エンコードDurationにおいて、上述した第２の実施の形態における場合と同様にして、ディスプレイオーダで最後に位置する連続するＢピクチャの枚数ｎの情報を取得する。再エンコードしない部分の圧縮素材映像２のディスプレイオーダで最初のピクチャのピクチャタイプは、上述したように、Ｉピクチャになるように決定されているので、Ｂピクチャの枚数ｎは、すなわち、再エンコードしない部分の圧縮素材映像２のディスプレイオーダで最初のＩピクチャと、編集後にそのＩピクチャの直前に存在するＩピクチャまたはＰピクチャとの間にあるＢピクチャの枚数である。【０１９３】
更に、ＣＰＵ２０は、再エンコードしない部分の圧縮素材映像２のディスプレイオーダで最初のＩピクチャの直前に存在するＩピクチャまたはＰピクチャ、換言すれば、再エンコードする範囲の最後に存在するＩピクチャまたはＰピクチャのピクチャタイプの情報を取得する。【０１９４】
そして、ＣＰＵ２０は、エンコーダ２７が実行する処理において、再エンコード終了点付近のＢピクチャタイプの枚数が編集前の圧縮素材映像２と同一となり、そのＢピクチャの直前のピクチャのピクチャタイプがＩピクチャまたはＰピクチャとなるように、エンコーダ２７を制御する。また、ＣＰＵ２０は、Ｂピクチャの直前のピクチャのピクチャタイプも、編集前の圧縮素材映像２と同一となるように制御すると好適である。【０１９５】
すなわち、ＣＰＵ２０は、図９を用いて説明した場合と同様にして、再エンコードを行う範囲と行わない範囲の接続点付近の編集前後のピクチャタイプを決定する。【０１９６】
そして、エンコーダ２７は、ＣＰＵ２０の制御に基づいて、エフェクト／スイッチ２６から供給された、再エンコード用の非圧縮の編集映像信号をエンコードする。【０１９７】
Occupancy差分値が負であることに基づいて、または、Editing Durationに施されるエフェクトの種類に基づいて、再エンコード区間が延長された場合、ピクチャへの符号量配分は、例えば、TM5を用いて発生符号量が制御されているとき、GOPの先頭のピクチャで、GOP内でまだ符号化されていないピクチャに対して割り当てられる符号量Ｒを更新する際に、式（６）により算出される値を符号量Ｒに加えるようにすれば良い。【０１９８】
（vbv_re_enc_start−vbv_re_enc_last_i)×N_gop／N_total_gop・・・（６）【０１９９】
ここで、vbv_re_enc_startは再エンコードDurationの開始点のVBV Buffer Occupancyであり、vbv_re_enc_last_iは、再エンコードDuration終了点直前の再エンコードしないＩピクチャのVBV Buffer Occupancyであり、N_gopは、GOP内のピクチャ数、N_total_gopは、再エンコードDurationのピクチャ数から、再エンコードDuration終了点直前の再エンコードしないＩピクチャとの間のＢピクチャの数Ｎを除いた再エンコードするピクチャ数である。【０２００】
図１４を参照して、再エンコード区間が延長されない場合と延長された場合のエンコードについて説明する。【０２０１】
図１４のＡにおいて、ピクチャ２１１、ピクチャ２１２、ピクチャ２１３、および、ピクチャ２１４は、Ｉピクチャであり、発生符号量が多い。図１４のＡに示されるように、再エンコード区間が延長されなかった場合、すなわち、Editing GOP Durationに対して、再エンコードDurationが、上述した第２の実施の形態における場合と同様にして決定された場合、ピクチャ２１２のOccupancy２１６が、編集前と同じであるように制御され、再エンコードされないＩピクチャであるピクチャ２１３のOccupancy２１７が、編集前と同じであるように制御されて、再エンコードされるピクチャ２１９および２２０が、Ｂピクチャとしてエンコードされて、再エンコードされないＰピクチャであるピクチャ２２１のOccupancy２１８が、編集前と同じであるように制御される。【０２０２】
ここで、ピクチャ２１２のOccupancy２１６とピクチャ２１３のOccupancy２１７とを基に、上述した式（１）を用いてOccupancy差分値が算出され、Occupancy差分値が負であると判断されて、再エンコード区間が延長されたり、区間２１５にエフェクトが施され、符号化難易度が上昇したために、再エンコード区間が延長された場合、Editing GOP Durationに対して、再エンコードDurationは、図１４のＢに示されるようにその前後に延長される。【０２０３】
このとき、ピクチャ２１１のOccupancy２２５が、編集前と同じであるように制御され、再エンコードされないＩピクチャであるピクチャ２１４のOccupancy２３４が、編集前と同じであるように制御されて、再エンコードされるピクチャ２３５および２３６が、Ｂピクチャとしてエンコードされて、再エンコードされないＰピクチャであるピクチャ２３７のOccupancy２３８が、編集前と同じであるように制御される。【０２０４】
そして、Editing GOP Durationのピクチャ２１２のOccupancy２２６は、発生符号量の再配分により、図１４のＡにおける場合よりも増加する。また、ピクチャ２１２の次のＩピクチャであるピクチャ２２３は再エンコードされ、そのOccupancy２２８は、通常のアルゴリズムによって算出される。【０２０５】
また、VBVの制約を満たすために、No Editing再エンコードDurationからEditing Durationに割り振り可能な符号量の最大値は制限される。図１５を用いて、割り振り可能な符号量について説明する。【０２０６】
図１５のＡにおいて、ピクチャ２５１、ピクチャ２５２、ピクチャ２５３、および、ピクチャ２５４は、Ｉピクチャであり、発生符号量が多い。図１５のＡに示されるように、再エンコード区間が延長されなかった場合、すなわち、Editing GOP Durationに対して、再エンコードDurationが、上述した第２の実施の形態における場合と同様にして決定された場合、ピクチャ２５２のOccupancy２５５が、編集前と同じであるように制御され、再エンコードされないＩピクチャであるピクチャ２５３のOccupancy２５８が、編集前と同じであるように制御されて、再エンコードされるピクチャ２６１および２６２が、Ｂピクチャとしてエンコードされて、再エンコードされないＰピクチャであるピクチャ２６３のOccupancy２５９が、編集前と同じであるように制御される。【０２０７】
このとき、Editing Durationより前のNo Editing再エンコードDurationから、Editing GOP Durationに割り振る発生符号量が最大になるのは、Editing GOP Durationの最初のピクチャであるピクチャ２５２のVBV Occupancy２５５がVBV Bufferの最大値と等しくなるときである。よって、Editing Durationより前の再エンコード区間から割り振り可能な発生符号量の最大値は、VBV Bufferの最大値と圧縮素材映像１におけるEditing GOP Durationの最初のピクチャのVBV Occupancy２５５との差分である。ただし、Editing GOP Duration以前のピクチャでオーバーフローが発生しないように、最大値にマージンを持たせる必要がある。よって、VBV Bufferの最大値から、圧縮素材映像１におけるEditing GOP Durationの最初のピクチャのVBV Occupancy２５５を減算し、その値から、更に、所定のマージンを減算した値を、最大割り振り値とするようにしてもよい。【０２０８】
同様に、Editing GOP Durationより後の再エンコードDurationから、Editing GOP Durationに割り振る発生符号量が最大になるのは、Editing GOP Durationの最後のピクチャ、すなわち、再エンコードDuration終了点直前の再エンコードしないＩピクチャであるピクチャ２５３の直前のピクチャ２５６のデコード後のVBV Occupancy２５７が０になるときである。よって、Editing Durationより後のNo Editing再エンコードDurationから割り振り可能な発生符号量の最大値は、圧縮素材映像２におけるEditing Durationの最後のピクチャのVBV Occupancyから、このピクチャの発生符号量を引いた値、すなわち、図中Occupancy２５７で示される値である。ただし、Editing Duration以降のピクチャでアンダーフローが発生しないように、最大値にマージンを持たせる必要がある。よって、圧縮素材映像２におけるEditing Durationの最後のピクチャであるピクチャ２５６のデコード後のVBV Occupancyから、このピクチャの発生符号量を減算した値、すなわち、このピクチャのデコード後のVBV Occupancy２５７から、更に所定のマージンを減算した値を最大割り振り量とする。【０２０９】
そして、図１５のＢに示されるように、再エンコード区間が延長された場合、ピクチャ２７１のOccupancy２５１が、編集前と同じであるように制御され、再エンコードされないＩピクチャであるピクチャ２５４のOccupancy２７８が、編集前と同じであるように制御されて、再エンコードされるピクチャ２８１および２８２が、Ｂピクチャとしてエンコードされて、再エンコードされないＰピクチャであるピクチャ２８３のOccupancy２８６が、編集前と同じであるように制御される。【０２１０】
そして、Editing GOP Durationのピクチャ２５２のOccupancy２７２は、発生符号量の再配分により、図１５のＡに示される最大割り振り量に対応して、図１５のＡにおける場合よりも増加されてもオーバーフローされないようになされている。また、ピクチャ２５２の次のＩピクチャであるピクチャ２５３の直前のピクチャ２５６のOccupancy２７３は、図１５のＡに示される最大割り振り量に対応して、図１５のＡにおける場合よりも増加する。そして、ピクチャ２５２の次のＩピクチャであるピクチャ２５３は再エンコードされ、そのOccupancy２７５が、通常のアルゴリズムで算出されても、再デコード後のOccupancy２７６は、アンダーフローしないようになされている。【０２１１】
また、ＣＰＵ２０は、エンコーダ２７により再エンコードが行われるのと平行して、Editing GOP Durationに割り当てられる発生符号量と、再エンコード区間の延長量を決定する場合、ＣＰＵ１１、デコーダ２２、または、エンコーダ２７から、Editing GOP Durationの前のNo Editing再エンコードGOP Durationの符号化難易度を取得し、そして、エンコーダ２７から、Editing GOP Durationの符号化難易度の情報を取得して、符号化難易度が上昇したか否かを判断し、その判断結果を基に、Editing GOP Durationの後ろのNo Editing再エンコードGOP Durationの長さと、Editing GOP Durationの後ろのNo Editing再エンコードGOP Durationから、Editing GOP Durationに割り当てる符号量を算出する。【０２１２】
ここで、エンコーダ２７からＣＰＵ２０に供給される符号化難易度の指標としては、図１２を用いて説明したＧＣ算出部１９３により算出されるGlobal Complexity Measure、イントラＡＣ算出部１９１により算出されるイントラＡＣ（IntraMADと称される場合もあるが、同義である）、または、ＭＥ残差算出部１９５により算出されるＭＥ残差などが用いられる。【０２１３】
そして、エンコーダ２７において再エンコードされた映像データは、ストリームスプライサ２５に供給される。ストリームスプライサ２５は、ＣＰＵ２０の制御に基づいて、ＰＣＩブリッジ１７から供給された、圧縮素材映像１および圧縮素材映像２のデータのうちの再エンコードを行わない範囲の圧縮素材映像１および圧縮素材映像２と、エンコーダ２７から供給されたエンコードされた映像データとを接続し、圧縮編集映像データを生成する。【０２１４】
具体的には、ストリームスプライサ２５は、ＣＰＵ２０の制御に基づいて、ＰＣＩブリッジ１７から供給された、図１３に示される再エンコードしない部分の圧縮素材映像１のＰピクチャ２０５とエンコーダ２７から供給されたエンコードされた映像データのＢピクチャ２０２とがディスプレイオーダで連続するように接続され、エンコーダ２７から供給されたエンコードされた映像データのＢピクチャ２０３と、ＰＣＩブリッジ１７から供給された、圧縮素材映像２のＩピクチャ２０６とがディスプレイオーダで連続するように接続されるように、ストリームをつなぎ合わせる。そして、ストリームスプライサ２５は、再エンコード用の参照画像であるＰピクチャ２０１と、Ｉピクチャ２０４とを破棄する。すなわち、ストリームスプライサ２５は、コーディングオーダにおいて、再エンコードされた区間の最後のＩピクチャまたはＰピクチャに続く、ｎ枚の再エンコードされたＢピクチャの前に、再エンコードされていないＩピクチャが入るように、ストリームをつなぎ合わせる。【０２１５】
そして、ストリームスプライサ２５は、ＣＰＵ２０の制御に基づいて、作成した圧縮編集映像データをＰＣＩブリッジ１７に供給して、メモリ１８に保存させるとともに、デコーダ２４に供給してデコードさせ、編集結果確認用のモニタなどに出力させて表示させる。【０２１６】
このような処理により、第３の実施の形態においては、上述した第２の実施の形態における場合と同様の処理により編集時のピクチャタイプが制御されるとき、必要に応じて、再エンコード区間を延長し、符号割当てを変更することにより、編修点付近の画質の劣化を防ぐようにすることができる。【０２１７】
また、ここでも、デコード範囲は、再エンコード範囲に基づいて、再エンコード範囲とは個別に定められるものとしてもよい。すなわち、デコード範囲は、再エンコード範囲と同一の範囲であっても、再エンコード範囲を含むそれ以上の範囲であってもよい。【０２１８】
また、図５乃至図８を用いて説明した第１の実施の形態における場合と同様の処理により編集時のピクチャタイプが制御されるときにも、上述した場合と同様にして、第３の実施の形態における符号発生量の制御を適用することが可能である。以下、第３の実施の形態の処理を、第１の実施の形態における場合に適用させた処理において、上述した処理と異なる部分について主に説明するものとし、基本的に同様の処理が実行される部分の説明については、適宜、省略する。【０２１９】
第１の実施の形態における場合と同様の処理により編集時のピクチャタイプが制御されるときにも、VBV BufferのOccupancyが連続になるよう、再エンコードを行う部分と行わない部分の接続点付近のOccupancyを制御する必要がある。通常、Ｉピクチャの発生符号量が多いため、GOPの先頭ではOccupancyが小さくなり、後半では大きくなる。GOP単位で等しい符号量（１GOPのピクチャ数×bit_rate／frame_rate）が割り当てられた場合、それぞれのGOPの先頭のＩピクチャのOccupancyは等しくなるので、GOP単位で等しい符号量が割り当てられない場合、再エンコードを行う区間のGOPの先頭と次のGOPの先頭のOccupancyを比較することにより、そのGOPで使用できる符号量が平均より多いか少ないかを判断することができる。すなわち、上述した場合と同様にして、再エンコード開始点のＩピクチャと、再エンコード終了点の後のＩピクチャとのVBV Occupancyを比較することにより、想定されている本来の符号量が発生されているか否かを判断することができる。【０２２０】
したがって、上述した式（１）を用いて、編集前の圧縮素材映像１の再エンコード開始点に対応するピクチャ、換言すれば、Editing GOP Durationの先頭のＩピクチャに対応する編集前のピクチャのVBV Occupancyから、編集前の圧縮素材映像２の再エンコード終了点の直後の再エンコードしないＩピクチャ、換言すれば、Editing GOP Durationの次のＩピクチャに対応する編集前のピクチャのVBV Occupancyを引いた値である、Occupancy差分値を求めることで、Editing Durationで使用できる符号量が、bit rateから得られる平均値より少ないかどうかを、実際のエンコードを行う前に判断することができる。【０２２１】
したがって、ＣＰＵ２０は、Editing GOP Durationで使用できる符号量が平均値より少ない場合、同様にして、再エンコード区間をEditing GOP Durationの前後に延長させ、エンコーダ２７を制御して、Editing GOP Durationに割り当てられる発生符号量を増加させる。【０２２２】
また、メモリ２１にも、同様にして、予め、エフェクトの種類と符号化難易度の上昇率との関係を示すテーブルを予め保存しておくか、または、エフェクトの種類と対応する係数、および、その係数を用いて符号化難易度に対応する値を算出することができる計算式を予め保存しておくようにすることにより、ＣＰＵ２０は、メモリ２１に記憶されたテーブルを参照したり、所定の計算式を用いて、エフェクトの種類に対応する符号化難易度を取得し、その符号化難易度を基に、再エンコード区間をEditing GOP Durationの前後に延長させ、延長されて設定された再エンコードDurationの範囲により求められるデコード範囲のデータをデコードさせて、接続させた後、エンコーダ２７に供給させる。そして、ＣＰＵ２０は、エンコーダ２７を制御して、No Editing再エンコードDuration に割り当てられる発生符号量を減少させ、Editing GOP Durationに割り当てられる発生符号量を増加させることができる。【０２２３】
図１６を参照して、再エンコード区間が延長されない場合と延長された場合のエンコードについて説明する。【０２２４】
図１６のＡにおいて、ピクチャ３０１、ピクチャ３０２、ピクチャ３０３、および、ピクチャ３０４は、Ｉピクチャであり、発生符号量が多い。図１６のＡに示されるように、再エンコード区間が延長されなかった場合、すなわち、Editing GOP Durationに対して、再エンコードDurationが、上述した第１の実施の形態における場合と同様にして決定された場合、ピクチャ３０２のOccupancy３０５が、編集前と同じであるように制御され、再エンコードされないＩピクチャであるピクチャ３０３の直後にＰピクチャであるピクチャ３０８が配置されるように制御され、ピクチャ３０８のOccupancy３０９が、編集前と同じであるように制御される。【０２２５】
ここで、ピクチャ３０２のOccupancy３０５とピクチャ３０３のOccupancy３０６とを基に、上述した式（１）を用いてOccupancy差分値が算出され、Occupancy差分値が負であると判断されて、再エンコード区間が延長されたり、区間３１０にエフェクトが施され、符号化難易度が上昇したために、再エンコード区間が延長された場合、Editing GOP Durationに対して、再エンコードDurationは、図１６のＢに示されるようにその前後に延長される。【０２２６】
このとき、ピクチャ３０１のOccupancy３２１が、編集前と同じであるように制御され、再エンコードされないＩピクチャであるピクチャ３０４の直後にＰピクチャであるピクチャ３２７が配置されるように制御され、ピクチャ３２７のOccupancy３２８が、編集前の対応するＰピクチャ３１１のOccupancy３１２（図１６のＡ）と同じであるように制御される。【０２２７】
そして、Editing GOP Durationのピクチャ３０２のOccupancy３２２は、発生符号量の再配分により、図１６のＡにおける場合よりも増加する。また、ピクチャ３０２の次のＩピクチャであるピクチャ３０３は再エンコードされ、そのOccupancy３２３と続くピクチャのピクチャタイプは、通常のアルゴリズムに従って決定される。【０２２８】
また、VBVの制約を満たすために、No Editing再エンコードDurationからEditing Durationに割り振り可能な符号量の最大値は制限される。図１７を用いて、割り振り可能な符号量について説明する。【０２２９】
図１７のＡにおいて、ピクチャ３４１、ピクチャ３４２、ピクチャ３４３、および、ピクチャ３４４は、Ｉピクチャであり、発生符号量が多い。図１７のＡに示されるように、再エンコード区間が延長されなかった場合、すなわち、Editing GOP Durationに対して、再エンコードDurationが、上述した第１の実施の形態における場合と同様にして決定された場合、ピクチャ３４２のOccupancy３４５が、編集前と同じであるように制御され、再エンコードされないＩピクチャであるピクチャ３４３の直後にＰピクチャ３４７が配置されるように制御され、Ｐピクチャ３４７のOccupancy３４８が、編集前と同じであるように制御される。【０２３０】
このとき、Editing Durationより前のNo Editing再エンコードDurationから、Editing GOP Durationに割り振る発生符号量が最大になるのは、Editing GOP Durationの最初のピクチャであるピクチャ３４２のVBV Occupancy３４５がVBV Bufferの最大値と等しくなるときである。よって、Editing Durationより前の再エンコード区間から割り振り可能な発生符号量の最大値は、VBV Bufferの最大値と圧縮素材映像１におけるEditing GOP Durationの最初のピクチャのVBV Occupancy３４５との差分である。ただし、Editing GOP Duration以前のピクチャでオーバーフローが発生しないように、最大値にマージンを持たせる必要がある。よって、VBV Bufferの最大値から、圧縮素材映像１におけるEditing GOP Durationの最初のピクチャのVBV Occupancy３４５を減算し、その値から、更に、所定のマージンを減算した値を、最大割り振り値とするようにしてもよい。【０２３１】
同様に、Editing GOP Durationより後の再エンコードDurationから、Editing GOP Durationに割り振る発生符号量が最大になるのは、Editing GOP Durationの最後のピクチャ、すなわち、再エンコードDuration終了点直前の再エンコードしないＩピクチャが、再エンコード範囲が延長することによりエンコードされるピクチャ３４３の直前のピクチャ３６１（図中の円内に記載されている）のデコード後のVBV Occupancy３６２が０になるときである。よって、Editing Durationより後のNo Editing再エンコードDurationから割り振り可能な発生符号量の最大値は、圧縮素材映像２におけるEditing Durationの最後のピクチャのVBV Occupancyから、このピクチャの発生符号量を引いた値である。ただし、Editing Durationの次のＩピクチャでアンダーフローが発生しないように、最大値にマージンを持たせる必要がある。よって、圧縮素材映像２におけるEditing Durationの最後のピクチャであるピクチャ３６１のデコード後のVBV Occupancy３６２から、このピクチャの発生符号量を減算した値、すなわち、このピクチャのデコード後のVBV Occupancy３６２から、更に所定のマージンを減算した値を最大割り振り量とする。【０２３２】
そして、図１７のＢに示されるように、再エンコード区間が延長された場合、ピクチャ３４１のOccupancy３７１が、編集前と同じであるように制御され、再エンコードされないＩピクチャであるピクチャ３４４の直後にＰピクチャ３８０が配置されるように制御され、Ｐピクチャ３８０のOccupancy３８１が、編集前の対応するピクチャであるＰピクチャ３４９のOccupancy３５０（図７Ａ）と同じであるように制御される。【０２３３】
そして、Editing GOP Durationのピクチャ３４２のOccupancy３７２は、発生符号量の再配分により、図１７のＡに示される最大割り振り量に対応して、図１７のＡにおける場合よりも増加されてもオーバーフローされないようになされている。また、ピクチャ３４２の次のＩピクチャであるピクチャ３４３は再エンコードされ、そのOccupancy３６３と続くピクチャのピクチャタイプが、通常のアルゴリズムにより設定されても、再デコード後のOccupancy３６４は、アンダーフローしないようになされている。【０２３４】
すなわち、再エンコード区間が延長された図１７のＢにおける場合、Editing GOP Durationと再エンコード区間がほぼ等しい図１７のＡにおける場合と比較して、Editing GOP Durationの最後の部分のピクチャタイプが変更されている。すなわち、再エンコード区間が延長されることにより、Editing GOP Durationの最後の部分は再エンコードされる（再エンコード区間の最後ではなくなる）ので、その部分のピクチャタイプは通常のアルゴリズムにより決定されるので、編集前の圧縮素材と同一になる。よって、Editing GOP Durationの最後の部分に与えられる符号の割り振り量の最大値を考える場合、図１５を用いて説明した第２の実施の形態に適用させた場合と同様の処理が実行される。【０２３５】
次に、図１８のフローチャートを参照して、本発明を適用した編集装置１が実行する編集処理１について説明する。【０２３６】
ステップＳ１において、ＣＰＵ１１は、図示しない操作入力部から、編集開始を指令するユーザからの操作入力を受け、サウスブリッジ１５を制御して、図示しない操作入力部から供給されたユーザの操作入力を基に、ＨＤＤ１６から、圧縮符号化された圧縮素材映像１のデータおよび圧縮素材映像２のデータを読み出させ、ノースブリッジ１２、ＰＣＩバス１４、および、ＰＣＩブリッジ１７を介して、メモリ１８に供給させて記憶させるとともに、編集点を示す情報と、編集開始を示すコマンドを、ノースブリッジ１２、ＰＣＩバス１４、ＰＣＩブリッジ１７、および、コントロールバス１９を介して、ＣＰＵ２０に供給する。【０２３７】
ステップＳ２において、メモリ１８は、圧縮符号化された２つの編集素材データを取得する。【０２３８】
ステップＳ３において、図１９または図２１を用いて後述するデコード範囲決定処理が実行される。【０２３９】
ステップＳ４において、ＣＰＵ２０は、ＰＣＩブリッジ１７を制御して、メモリ１８に記憶されている圧縮符号化された２つの編集素材データから、決定されたデコード範囲のデータをデコードおよび再エンコードするために必要なデータを抽出させ、デコーダ２２およびデコーダ２３にそれぞれ供給させる。また、このとき、ＣＰＵ２０は、ＰＣＩブリッジ１７を制御して、再エンコードされない部分の圧縮符号化された編集素材データを、ストリームスプライサ２５に供給させる。ＰＣＩブリッジ１７は、ＣＰＵ２０の制御に基づいて、メモリ１８に記憶されている圧縮符号化された２つの編集素材データから、決定されたデコード範囲のデータをデコードおよび再エンコードするために必要なデータを抽出し、デコーダ２２およびデコーダ２３にそれぞれ供給するとともに、再エンコードされない部分の圧縮符号化された編集素材データを、ストリームスプライサ２５に供給する。【０２４０】
また、このとき、ＣＰＵ２０は、必要に応じて、例えば、施されるエフェクトの種類など、再エンコードDurationに含まれるピクチャの符号化難易度に関する情報を取得することが可能である。【０２４１】
ステップＳ５において、ＣＰＵ２０は、デコーダ２２およびデコーダ２３を制御して、決定されたデコード範囲のデータをデコードさせる。デコーダ２２およびデコーダ２３は、ＣＰＵ２０の制御に基づいて、供給された圧縮符号化された編集素材データをデコードして、エフェクト／スイッチ２６に供給する。【０２４２】
ステップＳ６において、ＣＰＵ２０は、エフェクト／スイッチ２６を制御して、デコードされたデータを編集点で接続させて、必要に応じて、エフェクトをかけさせる。エフェクト／スイッチ２６は、ＣＰＵ２０の制御に基づいて、供給された非圧縮の復号映像素材を編集点で接続して、必要に応じて、エフェクトをかけ、エンコーダ２７に供給する。【０２４３】
ステップＳ７において、図２０または図２２を用いて後述する再エンコードおよび接続処理が実行され、ステップＳ７の処理の終了後、処理は終了される。【０２４４】
このような処理により、Long GOPのOpen GOP構造の圧縮映像データの編集点付近を部分的にデコードし、デコードされた非圧縮の映像信号を所定の編集点で接続した後、再エンコードを行い、デコードおよび再エンコードされていない部分の圧縮映像データと接続することにより、Long GOPのOpen GOP構造の圧縮映像データの編集を実現することができる。【０２４５】
次に、図１９のフローチャートを参照して、エンコード処理前に予め再エンコード範囲の延長量と符号の割り振り量が決定される場合に図１８のステップＳ３において実行される、デコード範囲決定処理１について説明する。【０２４６】
ステップＳ２１において、ＣＰＵ２０は、図１５または図１７を用いて説明した方法で算出される、Editing Durationの開始点および終了点における符号量の割り振り量の最大値を取得する。【０２４７】
ステップＳ２２において、ＣＰＵ２０は、ＣＰＵ１１から供給された情報を基に、再エンコードが行われる部分にエフェクトが施されるか否かを判断する。【０２４８】
ステップＳ２２において、再エンコードが行われる部分にエフェクトが施されると判断された場合、ステップＳ２３において、ＣＰＵ２０は、施されるエフェクトの種類を取得する。【０２４９】
ステップＳ２２において、再エンコードが行われる部分にエフェクトが施されないと判断された場合、または、ステップＳ２３の処理の終了後、ステップＳ２４において、ＣＰＵ２０は、メモリ２１に記録されているテーブル情報を参照し、エフェクトが施されるか否かと、施されるエフェクトの種類を基に、符号化難易度の上昇率を求める。【０２５０】
ステップＳ２５において、ＣＰＵ２０は、所定の計算式などを用いて、符号化難易度の上昇分に対応する符号量の割り振り量を決定する。ここで、ＣＰＵ２０は、符号化難易度の上昇が大きいほど割り振り量が多くなるように、符号量の割り振り量を決定する。【０２５１】
ステップＳ２６において、ＣＰＵ２０は、符号化難易度の上昇分に対応する符号量の割り振り量と、Occupancy差分値を比較する。【０２５２】
ステップＳ２７において、ＣＰＵ２０は、符号化難易度の上昇分に対応する符号量の割り振り量は、Occupancy差分値よりも小さいかまたは等しい値に対応するか否かを判断する。【０２５３】
ステップＳ２７において、符号化難易度の上昇分に対応する符号量の割り振り量は、Occupancy差分値よりも小さいかまたは等しい値に対応すると判断された場合、ステップＳ２８において、ＣＰＵ２０は、符号割り振り量を０とし、再エンコードを行う範囲は、Editing Durationとほぼ同じ、最小の再エンコード範囲であるものとする。【０２５４】
ステップＳ２７において、符号化難易度の上昇分に対応する符号量の割り振り量は、Occupancy差分値よりも大きい値に対応すると判断された場合、ステップＳ２９において、ＣＰＵ２０は、符号化難易度の上昇分に対応する符号量の割り振り量からOccupancy差分値を引いた値を符号割り振り量とする。【０２５５】
ステップＳ３０において、ＣＰＵ２０は、符号割り振り量が最大値の制約を満たすように、編集点の前後に割り当てられる符号量を決定する。ここで、編集点の前後に割り当てられる符号量は、符号割り振り量の最大値の制約を満たしつつ、できるだけ均等に割り当てるようにすると好適である。【０２５６】
ステップＳ３１において、ＣＰＵ２０は、ステップＳ２７において算出された符号割り振り量を基に、例えば、上述した式（４）および式（５）を用いて、または、エフェクトが施されない場合は上述した式（２）を用いて、再エンコード区間の増加量を算出する。すなわち、ステップＳ３１において、算出された符号割り振り量を基に、再エンコードdurationが決定される。【０２５７】
ステップＳ２８、または、ステップＳ３１の処理の終了後、ステップＳ３２において、ＣＰＵ２０は、再エンコードを行う範囲から、そのために必要なデコードを行う範囲を決定し、処理は、図１８のステップＳ３に戻り、ステップＳ４に進む。【０２５８】
このような処理により、エンコード処理前に予め再エンコード範囲の延長量と符号の割り振り量が決定されて、決定された再エンコード範囲の延長量、換言すれば、決定された再エンコードdurationを基に、デコード範囲が決定される。【０２５９】
次に、図２０のフローチャートを参照して、図１９を用いて説明したデコード範囲決定処理１が実行された場合に、図１８のステップＳ７において実行される再エンコードおよび接続処理１について説明する。【０２６０】
ステップＳ５１において、エンコーダ２７の目標符号量算出部１９４は、ＣＰＵ２０から供給される制御信号を基に、再エンコード範囲の変更により必要に応じて割り振られる符号割り振り量が０であるか否かを判断する。【０２６１】
ステップＳ５１において、符号割り振り量が０ではないと判断された場合、ステップＳ５２において、目標符号量算出部１９４は、供給された符号量割り振り量の情報に基づいて、発生符号量の目標値を算出し、発生符号量算出部１９２に供給する。発生符号量算出部１９２は供給された目標発生符号量を基に、量子化部１７５の発生符号量を制御し、エンコーダ２７の各部は、図１２を用いて説明したように、供給された非圧縮映像データのエンコードを行って、ストリームスプライサ２５に供給する。【０２６２】
ステップＳ５１において、符号割り振り量が０であると判断された場合、ステップＳ５３において、目標符号量算出部１９４は、通常のアルゴリズムに基づいて、目標発生符号量を算出し、エンコーダ２７の各部は、図１２を用いて説明したように、供給された非圧縮映像データのエンコードを行って、ストリームスプライサ２５に供給する。【０２６３】
ステップＳ５２またはステップＳ５３の処理の終了後、ステップＳ５４において、ストリームスプライサ２５は、再エンコードされた部分と、再エンコードされていない部分の圧縮映像データを接続し、処理は、図１８のステップＳ７に戻り、処理が終了される。【０２６４】
このような処理により、決定された再エンコードdurationにおいて、決定された符号割り振り量に基づいて発生符号量が制御されて、エンコードが実行され、再エンコードされた部分と、再エンコードされていない部分の圧縮映像データが接続される。【０２６５】
次に、図２１のフローチャートを参照して、エンコード処理を実行しつつ、再エンコード範囲の延長量と符号の割り振り量を算出して補正する場合に図１８のステップＳ３において実行される、デコード範囲決定処理２について説明する。【０２６６】
ステップＳ７１において、ＣＰＵ２０は、例えば、予めユーザにより行われた設定などにより、最小の再エンコード部分に対して時間的に前の部分、すなわち、Editing GOP Durationに対して時間的に前の部分の再エンコード範囲の延長量および符号の割り振り量は、予め定められた値を用いるものとなされているか否かを判断する。【０２６７】
ステップＳ７１において、予め定められた値を用いるものとなされていると判断された場合、ステップＳ７２において、ＣＰＵ２０は、メモリ２１から、最小の再エンコード部分に対して時間的に前の部分の再エンコード範囲の延長量および符号の割り振り量として予め定められた値を読み出し、再エンコード範囲を設定し、処理は、図１８のステップＳ３に戻り、ステップＳ４に進む。【０２６８】
ステップＳ７１において、予め定められた値を用いるものとなされていないと判断された場合、ステップＳ７３乃至ステップＳ７５において、図１９のステップＳ２２乃至ステップＳ２４と同等の処理が実行される。【０２６９】
すなわち、ＣＰＵ１１から供給された情報を基に、再エンコードが行われる部分にエフェクトが施されるか否かが判断され、再エンコードが行われる部分にエフェクトが施されると判断された場合、施されるエフェクトの種類が取得され、エフェクトが施されるか否かと、施されるエフェクトの種類を基に、メモリ２１に記録されているテーブル情報が参照されて、符号化難易度の上昇率が求められる。【０２７０】
ステップＳ７６において、ＣＰＵ２０は、符号化難易度の上昇分に対応する、最小の再エンコード部分に対して時間的に前の部分の符号量の割り振り量を決定する。【０２７１】
ステップＳ７７において、ＣＰＵ２０は、ステップＳ７５において算出された符号の割り振り量を基に、例えば、上述した式（５）を用いて、最小の再エンコード部分に対して時間的に前の部分の再エンコード区間の増加量を算出する。すなわち、ステップＳ７６において、算出された符号割り振り量を基に、再エンコードdurationが仮に決定される。【０２７２】
ステップＳ７８において、ＣＰＵ２０は、最小の再エンコード部分に対して時間的に前の部分の再エンコードを行う範囲から、そのために必要なデコードを行う範囲を仮に決定し、処理は、図１８のステップＳ３に戻り、ステップＳ４に進む。【０２７３】
このような処理により、エンコード処理前に、最小の再エンコード部分に対して時間的に前の部分、すなわち、Editing GOP Durationに対して時間的に前の部分の再エンコード範囲の延長量と符号の割り振り量が仮に決定されて、決定された再エンコード範囲の前方向の延長量、換言すれば、決定された前方向の再エンコードdurationを基に、仮のデコード範囲が決定される。【０２７４】
次に、図２２のフローチャートを参照して、図２１を用いて説明したデコード範囲決定処理２が実行された場合に、図１８のステップＳ７において実行される再エンコードおよび接続処理２について説明する。【０２７５】
ステップＳ９１において、ＣＰＵ２０は、コントロールバス１９を介して、ＣＰＵ１１またはデコーダ２２から、最小の再エンコード部分に対して時間的に前の部分の再エンコードの延長部分の符号化難易度を示す情報を取得する。【０２７６】
ステップＳ９２において、ＣＰＵ２０は、エンコーダ２７を制御して、仮に決定されたデコード範囲においてデコードされた再エンコードDurationのピクチャのうち、Editing GOP Durationより時間的に前の部分の先頭のピクチャから、エンコードを開始させる。エンコーダ２７は、ＣＰＵ２０の制御に基づいて、エフェクト／スイッチ２６から供給された非圧縮の映像データのエンコードを開始する。【０２７７】
ステップＳ９３において、ＣＰＵ２０は、エンコーダ２７において、最小の再エンコード部分のエンコードが開始されたか否か、すなわち、Editing GOP Durationのエンコードが開始されたか否かを判断する。ステップＳ９３において、最小の再エンコード部分のエンコードが開始されていないと判断された場合、最小の再エンコード部分のエンコードが開始されたと判断されるまで、ステップＳ９３の処理が繰り返される。【０２７８】
ステップＳ９３において、最小の再エンコード部分のエンコードが開始されたと判断された場合、ステップＳ９４において、ＣＰＵ２０は、エンコーダ２７から供給される、エンコードが実行されたピクチャの符号化難易度を示す情報を取得する。【０２７９】
ステップＳ９５において、ＣＰＵ２０は、エンコーダ２７から供給されるエンコードが実行されたピクチャの符号化難易度を示す情報を基に、符号化難易度情報の上昇率を算出する。【０２８０】
ステップＳ９６において、ＣＰＵ２０は、ステップＳ９５における符号化難易度情報の上昇率の算出結果を基に、最小の再エンコード部分に対して時間的に後ろの部分の再エンコード範囲の延長量および符号の割り振り量を算出する。【０２８１】
ステップＳ９７において、ＣＰＵ２０は、ステップＳ９６における算出結果を基に、ＰＣＩブリッジ１７を制御して、再エンコードされる範囲に基づいて、デコーダ２３に供給されるデータとストリームスプライサ２５に供給されるデータとを決定させるとともに、エンコーダ２７を制御して、エンコード処理における発生符号量を制御させる。エンコーダ２７は、ＣＰＵ２０の制御に基づいて、供給される非圧縮映像データのエンコード処理における発生符号量を制御する。【０２８２】
ステップＳ９８において、ＣＰＵ２０は、エンコーダ２７によるエンコード処理が終了したか否かを判断する。ステップＳ９８において、エンコード処理が終了されていないと判断された場合、処理は、ステップＳ９４に戻り、それ以降の処理が繰り返される。すなわち、エンコーダ２７による再エンコードDurationのエンコード処理が終了されるまで、再エンコード範囲の延長量および符号の割り振り量の算出処理が繰り返されて、再エンコード範囲の延長量および符号の割り振り量が更新される。【０２８３】
ステップＳ９８において、エンコード処理が終了されたと判断された場合、エンコードされて生成された圧縮符号化データは、ストリームスプライサ２５に供給されているので、ステップＳ９９において、ストリームスプライサ２５は、再エンコードされた部分と、再エンコードされていない部分の圧縮映像データを接続し、処理は、図１８のステップＳ７に戻り、処理が終了される。【０２８４】
このような処理により、エンコード処理実行中に、更新された再エンコードdurationにおいて、更新された符号割り振り量に基づいて発生符号量が制御されて、エンコードが実行され、再エンコードされた部分と、再エンコードされていない部分の圧縮映像データが接続される。【０２８５】
なお、上述した一連のフローチャートを用いて説明した処理においても、再エンコード範囲の圧縮素材映像１および圧縮素材映像２がデコードされるものとして説明したが、デコード範囲は、再エンコード範囲に基づいて、再エンコード範囲とは個別に定められるものとしてもよい。すなわち、デコード範囲は、再エンコード範囲と同一の範囲であっても、再エンコード範囲を含むそれ以上の範囲であってもよい。【０２８６】
また、発生符号量が減少されてしまうNO Editing再エンコードDuration範囲内のピクチャにおいては、画質が低下してしまう恐れがあるが、発生符号量の減少量が少量であれば、画質低下を視覚的に無視できる程度に抑制することができる。そこで、本発明においては、NO Editing再エンコードDuration範囲内のピクチャの画質低下を視覚的に無視できる程度に、NO Editing再エンコードDuration範囲を広い範囲として、その範囲に割り当てられるべき発生符号量を、符号化難易度が高くなったEditing Durationのピクチャの画質維持に使用するようにしたので、編集後の画像の画質は全体的に劣化が抑制されたものとなる。【０２８７】
以上説明したように、本発明を適用して発生符号量を制御することにより、再エンコードを必要とするLong GOP方式の圧縮映像データ編集において、ビットレートを上げることができない状況でも、例えば、エフェクトなどが施されることにより、符号化難易度の上昇した編集点付近の画質を維持することが可能になる。【０２８８】
ところで、上述したように、編集点近傍を部分的にデコードした後、非圧縮の映像信号を接続して、接続された非圧縮の映像を再エンコードし、デコードおよび再エンコードされていない部分の圧縮映像データと結合することにより、編集を行った場合、再エンコード部分と再エンコードしない部分のVBV Buffer Occupancyの連続性を保つ必要がある。【０２８９】
図２３を用いて、VBV Buffer Occupancyの連続性について説明する。【０２９０】
編集後の圧縮映像データにおいて、VBVバッファが破綻しないようにするためには、再エンコード開始部と終了部のOccupancyを、前後に結合する再エンコードしない圧縮映像データの結合部のOccupancyに一致させる必要がある。すなわち、編集後の圧縮映像の図中Ｅで示される再エンコード部分の最初のＩピクチャの図中Ｃで示されるOccupancyは、編集前の圧縮素材映像１の図中Ａで示されるOccupancyと一致するように、編集後の圧縮映像の図中Ｅで示される再エンコード部分の次のＩピクチャの図中Ｄで示されるOccupancyは、編集前の圧縮素材映像２の図中Ｂで示されるOccupancyと一致するように制御されなければならない。【０２９１】
編集前後のOccupancyは、Closed GOPの場合であっても、Closed GOPでないOpen GOPである場合にも、同様に、一致させる必要がある。VBV Buffer Occupancyの連続性が保たれていない場合、デコード時にデコーダのバッファが破綻し、例えば、ピクチャスキップやフリーズなどの現象が発生する原因となり得る。【０２９２】
PS(Program Stream)やTS(Transport Stream)においては、SCR（System Clock Reference)またはPCR（Program Clock Reference）と、PTS（Presentation Time Stamp）やDTS（Decoding Time Stamp）から、各ピクチャのVBV BufferのOccupancyを求めることができる。しかしながら、ES(Elementary Stream)においては、VBV BufferのOccupancyを容易に求めることはできない。【０２９３】
ＥＳにおいては、Picture HeaderのVBV Delayの値から、それぞれのピクチャのVBV BufferのOccupancyを求めることができる。しかしながら、Picture HeaderのVBV Delayのパラメータには、正確な値が入っているとは限らないため、VBV Delayのパラメータから算出されたOccupancyの値に信憑性がある（正確である）とはいえない。また、VBR(Variable Bit Rate)でエンコードされたＥＳにおいては、VBV Delayの値が固定値となるので、VBV BufferのOccupancyを求めるために利用することができない。【０２９４】
このように、ＥＳにおいては、VBV BufferのOccupancyを容易に求めることはできないので、ＥＳを編集するにあたり、VBV Bufferの連続性を保つように正しく再エンコードできない場合、バッファがオーバフローまたはアンダーフローしてしまい、デコードされた映像に、例えば、ピクチャスキップやフリーズなどの現象が発生してしまう恐れがある。タイムスタンプが挿入されていないESを編集するにあたっては、VBV Buffer Occupancyの連続性を保つことは困難であった。【０２９５】
そこで、ＥＳを編集するにあたり、VBV Buffer Occupancyの連続性を保つことができるようにする必要がある。【０２９６】
図２４は本発明を適用した編集装置４０１のハードウェア構成を示すブロック図である。【０２９７】
すなわち、図２４の編集装置４０１は、エンコーダ２７に代わってエンコーダ４２７が設けられ、エフェクト／スイッチ２６に外部から非圧縮の映像信号を供給する入力端子４２８が新たに設けられている以外は、基本的に、図４を用いて説明した編集装置１と同様の構成を有するものである。【０２９８】
すなわち、エフェクト／スイッチ２６は、ＣＰＵ２０の制御に基づいて、デコーダ２２またはデコーダ２３、もしくは、入力端子２８から供給される、非圧縮の映像信号出力を切り替える、すなわち、供給された非圧縮の映像信号を所定のフレームで結合するとともに、必要に応じて、所定の範囲にエフェクトを施して、エンコーダ４２７に供給したり、入力端子２８から供給される非圧縮の映像信号をエンコーダ４２７に供給する。【０２９９】
また、エンコーダ４２７は、ＣＰＵ２０の制御に基づいて、供給された非圧縮の映像信号をエンコードするとともに、必要に応じて、エンコード時に、例えば、各ピクチャのOccupancyの情報などの、所定の情報を取得して、圧縮符号化された圧縮映像データと、必要に応じて取得された情報とを、ストリームスプライサ２５に出力することができる。【０３００】
例えば、入力端子２８から非圧縮の映像データが入力された場合、入力された非圧縮の映像データは、エフェクト／スイッチ２６に供給され、エンコーダ４２７に供給される。エンコーダ４２７は、供給された非圧縮の映像データをエンコードするとともに、VBV Buffer Occupancyの情報を取得して、エンコードされた圧縮映像データとともに、ストリームスプライサ２５に供給する。ストリームスプライサ２５は、VBV Buffer Occupancyの情報とエンコードされた圧縮映像データとを、ＰＣＩブリッジ１７を介して、メモリ１８に供給して保存させる。【０３０１】
ＣＰＵ１１は、ノースブリッジ１２、ＰＣＩバス１４、およびＰＣＩブリッジ１７を介して、メモリ１８から、エンコーダ４２７によりエンコードされた圧縮映像データと取得されたVBV Buffer Occupancyの情報とを読み出し、サウスブリッジ１５を介して、ＨＤＤ１６に供給して、ハードディスクに記憶させる。このとき、VBV Buffer Occupancyの情報は、対応する圧縮映像データに多重化して記憶されるようにしても良いし、圧縮映像データとは異なるファイルデータとして記憶されるようにしても良い。【０３０２】
VBV Buffer Occupancyの情報をES(Elementary Stream)に埋め込む場合、例えば、図２５に示されるように、SMPTE328で規定されているMPEG_ES_editing_information４５１のユーザデータ領域に埋め込む（記述する）ようにすることができる。【０３０３】
図２６および図２７を用いて、MPEG_ES_editing_information４５１にVBV Buffer Occupancyの情報を埋め込む場合のシンタクスについて説明する。【０３０４】
図２６に示されるように、ユーザデータには、８ビットのUser_IDが記載され、続いて、VBV_dataが記載される。図２７に示されるように、VBV_dataには、８ビットのData_IDと、８ビットのVBV Buffer Occupancyが記載される。エンコーダ４２７において取得されたVBV Buffer Occupancyの情報は、VBV_dataのVBV Buffer Occupancyに記載することができる。【０３０５】
また、ファイル交換のためのフォーマットとして、例えば、MXF（Material eXchange Format）が提案され、現在標準化されつつある。MXFは、ファイル交換に加えて、ストリーミングを考慮したフォーマットであり、例えば、ＨＤ、MPEG、DVなどといった、あらゆるフォーマットを内包する素材交換ファイルフォーマットとして標準化が進んでいる。【０３０６】
ＥＳがMXFにラップされる場合のデータ構造について、図２８を用いて説明する。【０３０７】
図２８に示されるように、MXF Header Data, IdentiferおよびPicture Coding Typeの情報が含まれているMXF Header４６１に続く、SequenceHeader, Extensions and User DataおよびPicture Headerが含まれているElementary Stream Header４６２のうちのExtensions and User Dataに、図２５乃至図２７を用いて説明した場合と同様のMPEG_ES_editing_information４５１が記載されている。MXF Header４６１に含まれているIdentiferには、映像信号をエンコードしたエンコーダの機種またはエンコーダの製造元の会社名などを特定できる情報を記録するようにしても良い。【０３０８】
VBV Buffer Occupancyが埋め込まれた圧縮映像データをラップしているMXFデータの特定の位置に、エンコーダの機種またはエンコーダの製造元の会社名などを特定できる情報を記載することにより、このMXFを取得した各種装置（各種装置には、本発明を適用した編集装置１が含まれることは言うまでもない）において、MXFにラップされた圧縮映像データにVBV Buffer Occupancyの情報が埋め込まれているか否かを容易に判断することが可能となる。【０３０９】
また、このMXFを取得した各種装置（各種装置には、本発明を適用した編集装置１が含まれることは言うまでもない）においては、VBV Buffer Occupancyが必要なフレームの先頭位置を特定し、その先頭位置を基に、VBV Buffer Occupancyが埋め込まれている位置を特定することにより、VBV Buffer Occupancyが記載されている位置を容易に検出することができるので、MXFから、VBV Buffer Occupancyを容易に抽出することができるようになされている。【０３１０】
フレームの先頭位置は、MXF headerにあるため簡単に求めることができる。そして、その先頭位置からVBV Buffer Occupancyが埋め込まれている場所は、図２８に示されるＸとＹのビットサイズを用いて、Ｘ＋Ｙを算出することにより検出することができる。図２８において図中Ｘで示されているサイズは、MXF Header４６１からElementary Stream Header４６２のうちのpicture層のuser dataまでのサイズと等しく、図２８において図中Ｙで示されているサイズは、User Dataの先頭から、MPEG_ES_editing_information４５１のVBV Buffer Ocuupancyが記載されているData_typeまでのサイズと等しい。【０３１１】
Sequence層とPicture層のヘッダサイズは、エンコード時にピクチャタイプにより決められるものであり、基本的に、それらのヘッダのサイズは変更されない。例えば、メモリ２１に、identifierおよびpicture coding typeに対応するヘッダサイズが記載されたテーブルデータを予め記憶させる。MXF Header４６１には、図２８に示されるように、identifierおよびpicture coding typeが埋め込まれているので、後述する編集処理２において、ＣＰＵ２０は、identifierに記載された情報を基に、このMXFデータをエンコードしたエンコーダを特定し、テーブルデータを参照することにより、picture coding typeに対応するSequence層とPicture層のヘッダサイズを容易に検出することができる。【０３１２】
また、user dataにおいてVBV Buffer Occupancyが埋め込まれている位置も、エンコード時に決められるものであり、この位置も、基本的に変更されないものである。例えば、メモリ２１に、identifierに対応するuser dataにおけるVBV Buffer Occupancyの記録位置が記載されたテーブルデータを予め記憶させておく。後述する編集処理２において、ＣＰＵ２０は、identifierに記載された情報を基に、このMXFデータをエンコードしたエンコーダを特定し、テーブルデータを参照することにより、user dataにおいてVBV Buffer Occupancyが埋め込まれている位置を容易に検出することができる。【０３１３】
このように、図２８に示されるようなMXFデータ形式でＥＳをラップすることにより、このMXFデータを取得した編集装置１または他の同様の装置において、MXFデータにおいてidentifierに記載された映像信号をエンコードしたエンコーダの機種またはエンコーダの製造元の会社名などを特定できる情報を基に、容易にVBV Buffer Occupancy情報が記載されている位置を検出し、この情報を抽出することが可能となるので、圧縮データを解析することなく、迅速にVBV Buffer Occupancyの情報を抽出することが可能となり、編集処理２を容易に、かつ、迅速に行うことができるようになる。【０３１４】
なお、ＥＳがMXFでラップされていない場合、多重化されたVBV Buffer Occupancy情報を取得するには、ＥＳを解析しなければならない。しかしながら、フレームごとにMPEG_ES_editing_information４５１が存在し、その中にVBV Buffer Occupancyが記載されているので、ＥＳの先頭から解析を実行し、VBV Buffer Occupancyを検索する必要はなく、VBV Buffer Occupancyの情報を求める必要があるフレームのみを検索するようにすれば良いので、VBV Buffer Occupancyを求めるためのデータの解析処理は複雑ではなく、また、多くの時間をかけなくても十分実行可能な処理である。【０３１５】
すなわち、ＨＤＤ１６には、Long GOPのOpen GOP方式で圧縮された圧縮素材映像１および圧縮素材映像２のデータが、VBV Buffer Occupancyの情報と対応付けられて、または、VBV Buffer Occupancyの情報を多重化されて記憶されている。圧縮素材映像１および圧縮素材映像２のデータは、上述したように、MXFでラップされていても良い。【０３１６】
ＣＰＵ１１は、サウスブリッジ１５を制御して、図示しない操作入力部から供給されたユーザの操作入力を基に、ＨＤＤ１６から、圧縮符号化された圧縮素材映像１のデータおよび圧縮素材映像２のデータと、それぞれに対応するVBV Buffer Occupancyの情報、または、VBV Buffer Occupancyの情報が多重化された圧縮素材映像１のデータおよび圧縮素材映像２のデータを読み出させ、ノースブリッジ１２、ＰＣＩバス１４、および、ＰＣＩブリッジ１７を介して、メモリ１８に供給させて記憶させるとともに、編集点を示す情報と、編集開始を示すコマンドを、ノースブリッジ１２、ＰＣＩバス１４、ＰＣＩブリッジ１７、および、コントロールバス１９を介して、ＣＰＵ２０に供給する。【０３１７】
ＣＰＵ２０は、ＣＰＵ１１から供給された編集点を示す情報を基に、圧縮符号化された圧縮素材映像１のデータおよび圧縮素材映像２のデータのうち、再エンコードを行う範囲を決定する。そのとき、ＣＰＵ２０は、圧縮符号化された圧縮素材映像１のデータおよび圧縮素材映像２のデータに多重化されている、または、別ファイルとして存在するVBV Buffer Occupancyの情報を取得し、再エンコードを行う範囲の先頭のＩピクチャおよび再エンコードを行う範囲に接続される先頭のＩピクチャのVBV Buffer Occupancyを検出し、エンコーダ４２７に供給して、再エンコードを行う範囲の先頭のＩピクチャおよび再エンコードを行う範囲に接続される先頭のＩピクチャVBV Buffer Occupancyが編集前後で一致するように、エンコード処理を制御する。【０３１８】
そして、ＣＰＵ２０は、ＰＣＩブリッジ１７を制御して、メモリ１８に記憶されている圧縮符号化された圧縮素材映像１のデータのうち、再エンコードを行う範囲のピクチャと、参照する必要があるピクチャに対応する圧縮素材映像１のデータをデコーダ２２に供給させるとともに、圧縮素材映像２のデータのうち、再エンコードを行う範囲のピクチャと、参照する必要があるピクチャに対応する圧縮素材映像２のデータをデコーダ２３に供給させる。【０３１９】
また、このとき、ＣＰＵ２０は、ＰＣＩブリッジ１７を制御して、メモリ１８に記憶されている圧縮符号化された圧縮素材映像１および圧縮素材映像２のデータのうちの再エンコードを行わない範囲のピクチャを、ストリームスプライサ２５に供給させる。【０３２０】
ＣＰＵ２０は、デコーダ２２およびデコーダ２３を制御して、供給された圧縮符号化されたデータをデコードさせる。【０３２１】
デコーダ２２およびデコーダ２３は、ＣＰＵ２０の制御に基づいて、供給されたデータをデコードし、復号されて得られた素材映像１および素材映像２の信号をエフェクト／スイッチ２６に供給する。エフェクト／スイッチ２６は、ＣＰＵ２０の制御に基づいて、所定のカット（Cut）編集点（スプライス点）で、非圧縮の復号素材映像１と復号素材映像２の信号を接続して、必要に応じて、エフェクトを施し、再エンコード用の非圧縮の編集映像信号を生成し、再エンコードに必要な再エンコード用参照画像とともに、エンコーダ４２７に供給する。【０３２２】
エンコーダ４２７は、ＣＰＵ２０の制御に基づいて、エフェクト／スイッチ２６から供給された、再エンコード用の非圧縮の編集映像信号をエンコードする。【０３２３】
このとき、エンコーダ４２７は、ＣＰＵ２０から供給された再エンコードを行う範囲の先頭のＩピクチャおよび再エンコードを行う範囲に接続される先頭のＩピクチャVBV Buffer Occupancyを基に、再エンコードを行う範囲の先頭のＩピクチャおよび再エンコードを行う範囲に接続される先頭のＩピクチャVBV Buffer Occupancyが編集前後で一致するように、エンコード処理を実行する。そして、エンコーダ４２７は、再エンコード時に得られるVBV Buffer Occupancyの情報を取得する。【０３２４】
そして、エンコーダ４２７において再エンコードされた映像データおよび再エンコード時のVBV Buffer Occupancyの情報は、ストリームスプライサ２５に供給される。ストリームスプライサ２５は、ＣＰＵ２０の制御に基づいて、ＰＣＩブリッジ１７から供給された、圧縮素材映像１および圧縮素材映像２のデータのうちの再エンコードを行わない範囲の圧縮素材映像１および圧縮素材映像２と、エンコーダ４２７から供給されたエンコードされた映像データとを接続し、圧縮編集映像データを生成する。【０３２５】
そして、ストリームスプライサ２５は、ＣＰＵ２０の制御に基づいて、作成した圧縮編集映像データおよび再エンコード時のVBV Buffer Occupancyの情報をＰＣＩブリッジ１７に供給して、メモリ１８に保存させるとともに、作成された圧縮編集映像データを、デコーダ２４に供給させてデコードさせ、編集結果確認用のモニタなどに出力させて表示させたり、デコードされて生成されたベースバンド信号を、他の装置に出力させる。デコーダ２４が、独立した装置として構成されている場合、デコーダ２４に対応する装置は、再エンコードされた編集後の圧縮映像データの供給を受けてこれをデコードし、デコードされて生成されたベースバンド信号を出力することができるようになされる。【０３２６】
図示しない操作入力部から、編集されて生成された圧縮編集映像データの保存が指令された場合、ＣＰＵ１１は、ＰＣＩブリッジ１７を制御して、メモリ１８に保存されている圧縮編集映像データおよび再エンコード時のVBV Buffer Occupancyの情報を読み出させ、ＰＣＩバス１４およびノースブリッジ１２を介して、サウスブリッジ１５に供給させるとともに、サウスブリッジ１５を制御して、供給された圧縮編集映像データおよび再エンコード時のVBV Buffer Occupancyの情報をＨＤＤ１６に供給させて保存させる。このときも、VBV Buffer Occupancyの情報は、対応する圧縮編集映像データに多重化するようにしても良いし、異なるファイルのデータとして、対応付けて保存されるようにしても良い。【０３２７】
このようにすることにより、圧縮符号化データには、ピクチャごとにVBV Buffer Occupancyの情報が対応付けられて保存されるとともに、VBV Buffer Occupancyを次のエンコード処理において利用するようにすることにより、VBV Buffer Occupancyの連続性を保つことが可能になる。【０３２８】
また、VBV Buffer Occupancyの情報は対応する圧縮編集映像データに多重化するようにしても良いし、異なるファイルのデータとして、対応付けて保存されるようにしても良いものとして説明した。たしかに、圧縮符号化データにピクチャごとにVBV Buffer Occupancyの情報を対応付けて保存し、VBV Buffer Occupancyを次のエンコード処理において利用することにより、VBV Buffer Occupancyの連続性を保つためには、VBV Buffer Occupancyの情報は、対応する圧縮編集映像データに多重化するようにしても良いし、異なるファイルのデータとして、対応付けて保存されるようにしても良い。【０３２９】
しかしながら、VBV Buffer Occupancyの情報を、異なるファイルのデータとして、対応付けるようにした場合、例えば、記録フォーマットが変更されたり、データ伝送フォーマットが変更された場合に、異なるファイルのデータとして付随されるべきVBV Buffer Occupancyの情報が失われてしまう恐れがある。【０３３０】
通常、非圧縮のデータを圧縮符号化する処理を実行するエンコーダは、virtual buffer verifierというバッファモデルを用いて、デコーダのスタンダードバッファが破綻されることがないように、ピクチャごとの発生符号量を調整してエンコードを行うようになされている。すなわち、このvbv_bufferの遷移を表す指標が、vbv buffer occupancyであり、エンコーダは、occupancyを計算しながら、レートコントロールを実行する。【０３３１】
上述したように、従来においては、バッファ管理を必要とするデータストリームの編集は、例えば、ＴＳやＰＳなどのタイムスタンプが付随しているストリームを対象として実行されてきたが、タイムスタンプなどの時間情報が付随されていないＥＳにおいては、ＴＳやＰＳなどのタイムスタンプが付随しているストリームと同様のバッファの管理の手法を用いることはできない。【０３３２】
一般的に、エンコーダは、非圧縮のデータを圧縮符号化する処理を実行した場合、vbv_occupancyから、vbv_delayを計算して、ＥＳのシンタクスに、vbv buffer occupancyに関する情報として記載するものとなされているが、上述したように、例えば、VBRの場合には、vbv_delay＝0xffffと記載するものとして運用されているなど、vbv_delayの値を信用できない（vbv_delayの値が正確ではない）場合がある。【０３３３】
本来、ストリームに関する情報は、ストリームに多重化することにより、ストリームの供給を受けた装置によって必ず再現可能なようになされているのが好ましい。すなわち、ストリームに関する情報であるVBV Buffer Occupancyの情報がＥＳのストリームに間違えなく多重化されていれば、記録フォーマットが変更されたり、データ伝送フォーマットが変更された場合であっても、記録フォーマットまたは伝送フォーマットにかかわらず、ＥＳのストリームの供給を受けた装置によって、VBV Buffer Occupancyの情報を再現することが可能となるので、VBV Buffer Occupancyの情報は、ＥＳのストリームに多重化されているほうが好適である。【０３３４】
次に、図２９のフローチャートを参照して、データ生成処理について説明する。【０３３５】
ステップＳ１１１において、エンコーダ４２７は、エフェクト／スイッチ２６を介して、入力端子２８から入力された非圧縮の映像データを取得する。【０３３６】
ステップＳ１１２において、エンコーダ４２７は、非圧縮の映像データをエンコードするとともに、VBV Buffer Occupancyの情報を取得して、エンコードされた圧縮映像データとともに、ストリームスプライサ２５に供給する。ストリームスプライサ２５は、VBV Buffer Occupancyの情報とエンコードされた圧縮映像データとをＰＣＩブリッジ１７を介して、メモリ１８に供給して保存させる。【０３３７】
ステップＳ１１３において、ＣＰＵ１１は、ノースブリッジ１２、ＰＣＩバス１４、およびＰＣＩブリッジ１７を介して、メモリ１８から、エンコーダ４２７によりエンコードされた圧縮映像データと取得されたVBV Buffer Occupancyの情報とを読み出して取得する。【０３３８】
ステップＳ１１４において、ＣＰＵ１１は、読み出したVBV Buffer Occupancyを、図２５乃至図２８を用いて説明したように、圧縮映像データのＥＳのMPEG_ES_editing_information４５１に格納する。【０３３９】
ステップＳ１１５において、ＣＰＵ１１は、図示しない操作入力部から供給されるユーザの操作入力に基づいて、VBV Buffer Occupancyが格納されたMPEG_ES_editing_information４５１を有するＥＳを、MXFにラップするか否かを判断する。【０３４０】
ステップＳ１１５において、ＥＳをMXFにラップすると判断された場合、ステップＳ１１６において、ＣＰＵ１１は、エンコーダ４２７の機種、または、編集装置１の開発会社名などを特定可能なIDを、図２８に示したようにヘッダ（MXF Header４６１）のIdentiferに記載する。【０３４１】
ステップＳ１１５において、ＥＳをMXFにラップしないと判断された場合、または、ステップＳ６の処理の終了後、データ生成処理は終了される。【０３４２】
データ生成処理により生成された、VBV Buffer Occupancyの情報が、ＥＳのストリームに多重化されたデータは、編集用の素材データとして、ＨＤＤ１６のハードディスクに記録されたり、外部に出力される。【０３４３】
このような処理により、VBV Buffer Occupancyの情報が、ＥＳのストリームに多重化されるので、記録フォーマットが変更されたり、データ伝送フォーマットが変更された場合であっても、記録フォーマットまたは伝送フォーマットにかかわらず、ＥＳのストリームの供給を受けた装置によって、VBV Buffer Occupancyの情報を再現することが可能となる。【０３４４】
次に、図３０のフローチャートを参照して、編集処理２について説明する。【０３４５】
ステップＳ１２１において、ＣＰＵ１１は、図示しない操作入力部から、編集開始を指令するユーザからの操作入力を受け、サウスブリッジ１５を制御して、図示しない操作入力部から供給されたユーザの操作入力を基に、ＨＤＤ１６から、圧縮符号化された圧縮素材映像１のデータおよび圧縮素材映像２のデータを読み出させ、ノースブリッジ１２、ＰＣＩバス１４、および、ＰＣＩブリッジ１７を介して、メモリ１８に供給させて記憶させるとともに、編集点を示す情報と、編集開始を示すコマンドを、ノースブリッジ１２、ＰＣＩバス１４、ＰＣＩブリッジ１７、および、コントロールバス１９を介して、ＣＰＵ２０に供給する。【０３４６】
ステップＳ１２２において、メモリ１８は、圧縮符号化された２つの編集素材データを取得する。【０３４７】
ステップＳ１２３において、ＣＰＵ２０は、ＣＰＵ１１から供給された、編集点を示す情報と、編集開始を示すコマンドを基に、圧縮符号化された編集素材データのデコード範囲を決定する。デコード範囲を決定する処理は、例えば、図１８のステップＳ３において実行される、図１９を用いて説明したデコード範囲決定処理１または図２１を用いて説明したデコード範囲決定処理２１であってもよい。ＰＣＩブリッジ２７は、ＣＰＵ２０の制御に基づいて、メモリ１８に記憶されている圧縮符号化された２つの編集素材データから、決定されたデコード範囲のデータをデコードおよび再エンコードするために必要なデータを抽出し、デコーダ２２およびデコーダ２３にそれぞれ供給するとともに、再エンコードされない部分の圧縮符号化された編集素材データを、ストリームスプライサ２５に供給する。【０３４８】
ステップＳ１２４において、図３１を用いて後述するOccupancy抽出処理が実行される。【０３４９】
ステップＳ１２５において、ＣＰＵ２０は、デコーダ２２およびデコーダ２３を制御して、決定されたデコード範囲のデータをデコードさせる。デコーダ２２およびデコーダ２３は、ＣＰＵ２０の制御に基づいて、供給された圧縮符号化された編集素材データをデコードして、エフェクト／スイッチ２６に供給する。【０３５０】
ステップＳ１２６において、ＣＰＵ２０は、エフェクト／スイッチ２６を制御して、デコードされたデータを編集点で接続させて、必要に応じて、エフェクトをかけさせる。エフェクト／スイッチ２６は、ＣＰＵ２０の制御に基づいて、供給された非圧縮の復号映像素材を編集点で接続して、必要に応じて、エフェクトをかけ、エンコーダ４２７に供給する。【０３５１】
ステップＳ１２７において、ＣＰＵ２０は、エンコーダ４２７を制御して、編集点で接続された非圧縮の復号映像素材を、抽出されたVBV Buffer Occupancyの情報を用いて再エンコードさせる。エンコーダ４２７は、ＣＰＵ２０から供給されたVBV Buffer Occupancyの情報を利用して、図２３を用いて説明したように、再エンコード区間前後のVBV Buffer Occupancyを連続させるために、編集前後で再エンコード区間の先頭のＩピクチャおよび再エンコード区間の次のＩピクチャのVBV Buffer Occupancyが一致するように、編集点で接続された非圧縮の復号映像素材の再エンコードを行うとともに、再エンコード時に得られるVBV Buffer Occupancyの情報を取得し、再エンコードされた圧縮符号化された映像データとVBV Buffer Occupancyの情報を、ストリームスプライサ２５に供給する。【０３５２】
ステップＳ１２８において、ストリームスプライサ２５は、供給された再エンコードされた圧縮符号化された映像データと再エンコードされない部分の圧縮符号化された編集素材データを接続し、編集された圧縮符号化データを生成して、VBV Buffer Occupancyの情報とともに、ＰＣＩブリッジ１７を介してメモリ１８に供給して記憶させ、処理は終了される。【０３５３】
なお、ステップＳ１２３において、デコード範囲を決定する処理として、図１９を用いて説明したデコード範囲決定処理１が実行された場合、ステップＳ１２７およびステップＳ１２８においては、図２０を用いて説明した再エンコードおよび接続処理１と基本的に同様の処理が実行され、ステップＳ１２３において、デコード範囲を決定する処理として、図２１を用いて説明したデコード範囲決定処理２が実行された場合、ステップＳ１２７およびステップＳ１２８においては、図２２を用いて説明した再エンコードおよび接続処理２と基本的に同様の処理が実行される。【０３５４】
このような処理により、Long GOPのOpen GOP構造の圧縮映像データの編集点付近を部分的にデコードし、デコードされた非圧縮の映像信号を所定の編集点で接続した後、VBV Buffer Occupancyの情報を利用して、再エンコードを行う範囲の先頭のＩピクチャおよび再エンコードを行う範囲に接続される先頭のＩピクチャVBV Buffer Occupancyが編集前後で一致するように、再エンコードを行い、デコードおよび再エンコードされていない部分の圧縮映像データと接続することにより、VBVバッファの破綻を防止して、Long GOPのOpen GOP構造の圧縮映像データの編集を実現することができる。【０３５５】
次に、図３１のフローチャートを参照して、図３０のステップＳ１２４において実行されるOccupancy抽出処理について説明する。【０３５６】
ステップＳ１４１において、ＣＰＵ２０は、メモリ１８に保存されている編集に用いられるデータは、MXFに準拠したデータであるか否かを判断する。ステップＳ１４１において、編集に用いられるデータは、MXFに準拠したデータではないと判断された場合、処理は、後述するステップＳ１４９に進む。【０３５７】
ステップＳ１４１において、編集に用いられるデータは、MXFに準拠したデータであると判断された場合、ステップＳ１４２において、ＣＰＵ２０は、図２８を用いて説明したMXF Header４６１のIdentifierに記載されている情報を基に、編集に用いられるデータは、図２９を用いて説明したデータ生成処理によりデータを生成することができる特定のエンコーダによってエンコードされた圧縮符号化データであるか否かを判断する。【０３５８】
ステップＳ１４２において、特定のエンコーダによってエンコードされた圧縮符号化データであると判断された場合、ＣＰＵ２０は、ステップＳ１４３において、圧縮映像素材１のデータを検索し、ステップＳ１４４において、再エンコードの開始位置のピクチャであるか否かを判断する。ステップＳ１４４において、再エンコードの開始位置のピクチャであると判断されなかった場合、処理は、ステップＳ１４３に戻り、再エンコードの開始位置のピクチャが検索されるまで、処理が繰り返される。【０３５９】
ステップＳ１４４において、再エンコードの開始位置のピクチャであると判断された場合、ステップＳ１４５において、図３２を用いて後述するOccupancy記録位置検出処理が実行される。【０３６０】
ＣＰＵ２０は、ステップＳ１４６において、圧縮映像素材２のデータを検索し、ステップＳ１４７において、再エンコードの終了位置のピクチャであるか否かを判断する。ステップＳ１４７において、再エンコードの終了位置のピクチャであると判断されなかった場合、処理は、ステップＳ１４６に戻り、再エンコードの終了位置のピクチャが検索されるまで、処理が繰り返される。【０３６１】
ステップＳ１４７において、再エンコードの終了位置のピクチャであると判断された場合、ステップＳ１４８において、図３２を用いて後述するOccupancy記録位置検出処理が実行される。【０３６２】
ステップＳ１４１において、編集に用いられるデータは、MXFに準拠したデータではないと判断された場合、ステップＳ１４９において、ＣＰＵ２０は、エレメンタリストリームを解析する。【０３６３】
ステップＳ１５０において、ＣＰＵ２０は、再エンコードの開始位置と終了位置に対応するピクチャを抽出し、図２５を用いて説明したMPEG_ES_editing_information４５１の所定の位置を検索し、Occupancyデータが記載されているか否かを判断する。【０３６４】
ステップＳ１５０において、Occupancyデータが記載されていると判断された場合、ステップＳ１５１において、ＣＰＵ２０は、Occupancyデータを取得する。【０３６５】
ステップＳ１４２において、特定のエンコーダによってエンコードされた圧縮符号化データではないと判断された場合、ステップＳ１４８の処理の終了後、ステップＳ１５０において、Occupancyデータが記載されていなかったと判断された場合、または、ステップＳ１５１の処理の終了後、ステップＳ１５２において、ＣＰＵ２０は、Occupancyは取得できたか否かを判断する。【０３６６】
ステップＳ１５２において、Occupancyが取得できたと判断された場合、ステップＳ１５３において、ＣＰＵ２０は、取得されたOccupancyのデータを、コントロールバス１９を介して、エンコーダ４２７に出力し、処理は、図３０のステップＳ１２４に戻り、ステップＳ１２５に進む。【０３６７】
ステップＳ１５２において、Occupancyが取得できなかったと判断された場合、ステップＳ１５４において、ＣＰＵ２０は、必要に応じて、ユーザにOccupancyのデータが取得できなかったことを通知し、処理は、図３０のステップＳ１２４に戻り、ステップＳ１２５に進む。【０３６８】
このような処理により、ＥＳの状態に応じて、Occupancyがストリームから抽出されて、エンコーダ４２７に供給されるので、エンコーダ４２７は、編集前の正しいOccupancyの情報を基に、VBVバッファを破綻させないようにエンコードを行うようにすることができる。【０３６９】
次に、図３２のフローチャートを参照して、図３１のステップＳ１４５およびステップＳ１４８において実行される、Occupancy記録位置検出処理について説明する。【０３７０】
ステップＳ１７１において、ＣＰＵ２０は、MXF Header４６１から、pictura_coding_typeとIdentifierの情報を取得する。【０３７１】
ステップＳ１７２において、ＣＰＵ２０は、取得したpictura_coding_typeとIdentifierの情報を用いて、メモリ２１に保存されているテーブルデータを参照することなどにより、図２８を用いて説明したように、MXF Header４６１からpicture層のuser dataまでのサイズＸと、User Dataの先頭からMPEG_ES_editing_informationのVBV Buffer OcuupancyがあるData_typeまでのサイズＹを算出する。【０３７２】
ステップＳ１７３において、ＣＰＵ２０は、ステップＳ１７２における算出結果ＸおよびＹを基に、Ｘ＋Ｙbyteのデータを読み飛ばす。【０３７３】
ステップＳ１７４において、ＣＰＵ２０は、Ｘ＋Ｙbyteのデータを読み飛はした次の２byteはVBV_data_IDであるか否かを判断する。【０３７４】
ステップＳ１７４において、次の２byteはVBV_data_IDであると判断された場合、ステップＳ１７５において、ＣＰＵ２０は、次の４byteをOccupancyのデータとして取得し、処理は、図３１のステップＳ１４５またはステップＳ１４８に戻り、ステップＳ１４６またはステップＳ１４９に進む。【０３７５】
ステップＳ１７４において、次の２byteはVBV_data_IDではないと判断された場合、ステップＳ１７６において、ＣＰＵ２０は、Occupancyのデータは、MXFデータには含まれていないと認識し、処理は、図３１のステップＳ１４５またはステップＳ１４８に戻り、ステップＳ１４６またはステップＳ１４９に進む。【０３７６】
このような処理により、図２８を用いて説明したMXFデータのMXF Header４６１から、pictura_coding_typeとIdentifierの情報を取得し、それらの情報を基に、データの全体を解析することなく、Occupancyの情報を取得することが可能となる。したがって、再エンコード処理時にOccupancyの情報を用いるにあたって、処理速度が速くなる。【０３７７】
このように、本発明を適用することにより、VBV Buffer Occupancyの情報を利用して、再エンコードを行う範囲の先頭のＩピクチャおよび再エンコードを行う範囲に接続される先頭のＩピクチャVBV Buffer Occupancyが編集前後で一致するように、再エンコードを行い、デコードおよび再エンコードされていない部分の圧縮映像データと接続することができる。【０３７８】
したがって、本発明を適用した編集装置１においては、タイムスタンプを用いないＥＳとして蓄積された素材映像を、VBV Bufferの制約を満たして編集することができる。これにより、VBVバッファの破綻を防止して、Long GOPのOpen GOP構造の圧縮映像データの編集を実現することができるので、ピクチャのスキップやフリーズなどが発生しない圧縮編集映像を作成することが可能になり、放送番組制作用途のシステムなどで、圧縮効率の高いLONG GOPの圧縮映像の編集を利用することが可能になる。【０３７９】
なお、図２９乃至図３２のフローチャートを用いて説明した処理においても、再エンコード範囲の圧縮素材映像１および圧縮素材映像２がデコードされるものとして説明したが、デコード範囲は、再エンコード範囲に基づいて、再エンコード範囲とは個別に定められるものとしてもよい。すなわち、デコード範囲は、再エンコード範囲と同一の範囲であっても、再エンコード範囲を含むそれ以上の範囲であってもよい。【０３８０】
ところで、また、MPEG2システムで規定されている多重ストリームにおいては、トランスポートストリーム（Transport Stream）であっても、プログラムストリーム（Program Stream）であっても、それぞれの一つ下のLayerは、PES(Packetaized Elementary Stream)であり、PESパケットヘッダには、オーディオ・ビデオの提示時刻を与えるPTS(プレゼンテーションタイムスタンプ）と復号開始時刻を与えるDTS（デコーディングタイムスタンプ）のほか、パケット単位のスクランブリングを行う制御信号やエラー検出のためのCRCなどの情報が含まれている。【０３８１】
エンコーダは、DTSおよびPTS、ならびに、現buffer残有量を基に、ストリーム内にvbv_delay情報がある無しにかかわらず、バッファ占有量の制御が可能である。しかしながら、時間情報を持たないVBR（Variable Bit Rate：可変ビットレート）方式で圧縮されたES(Elementary Stream)を扱う場合、vbv_delayの値は最大値で固定されており、バッファの占有量を知る手段がない。そのため、エンコーダは、エンコードしようとするフレームの情報だけでバッファ占有量を判断することができない。【０３８２】
このような、時間指定のないストリームをエンコードする場合、VBRにおいては、バッファ占有量は上限を超えない（バッファ占有量は所定時間VBV_MAXに張り付いたようになる）ので、バッファは破綻しないが、アンダーフローを起こした場合には、バッファが破綻し、出力される画像に影響が発生する。【０３８３】
このような、時間指定のないストリームをエンコードする場合、シーケンスの開始点において、バッファの上限から再生を始めるなど、再エンコード区間の発生符合量を制限することにより、バッファアンダフローを防止することが一般的である。【０３８４】
しかしながら、編集点近傍において発生符号量を制限するようにした場合、再エンコードによって発生されるストリームの最終ピクチャ近傍で発生符号量を十分に割り当てることが出来なくなるなど、場合によっては著しく画像品質を落とすことがある。【０３８５】
次に、時間情報を有さないVBRのESを編集する場合に、再エンコード部分と再エンコードしない部分のVBV Buffer Occupancyの連続性を保つための処理の例として、図４または図２４のＣＰＵ１１が、再エンコード区間と再エンコードされない区間との接続点におけるバッファ占有量を決定する方法について説明する。【０３８６】
すなわち、ＣＰＵ１１は、ＨＤＤ１６に記録されているデータのうちの２つの映像素材である編集対象圧縮映像データ１（以下、素材１とも称する）および編集対象圧縮映像データ２（以下、素材２とも称する）を読み出して、編集点の近傍のみを部分的にデコードさせ、接続した後に再エンコードして編集させる場合、再エンコード時に仮想バッファ占有量の規格を満たして、再エンコード部分と再エンコードしない部分のバッファ占有量の連続性を維持しつつ、結合点前後のバッファ占有量に制限をできるだけ少なくして発生符号量を十分に割り当てることができるような再エンコード範囲の最初のバッファ占有量の下限値と最後のバッファ占有量の上限値を決定し、ＣＰＵ２０が実行する編集処理を制御するためのコマンドなどとともに出力することができる。再エンコード範囲の最初と最後のバッファ占有量の設定値の決定の詳細については後述するが、このようにすることにより、再エンコード範囲に発生符号量をより多く与えることが可能であるので、編集点近傍の画像品質の劣化を可能な限り防止することができる。【０３８７】
ＨＤＤ１６には、VBR(variable bit rate)で圧縮された素材１および素材２のデータが記憶されている。【０３８８】
ＣＰＵ１１は、ＨＤＤ１６に保持されている圧縮符号化された映像素材のうち、図示しない操作入力部から供給されたユーザの操作入力を基に、編集に用いられる素材として選択された圧縮符号化された素材１のデータおよび素材２のデータの発生符号量に関する情報を取得し、この情報を基に、再エンコード範囲の最初と最後のバッファ占有量を決定する。【０３８９】
図３３は、ＣＰＵ１１が編集点付近の再エンコードにおける発生符号量を決定し、再エンコード区間を決定するために有する機能を説明するための機能ブロックである。【０３９０】
発生符号量検出部５５１は、ＨＤＤ１６に保存されている、編集される素材１および素材２の発生符号量を検出し、バッファ占有量解析部５５２に供給する。発生符号量の検出方法は、例えば、ＨＤＤ１６に保存されている、編集される素材１および素材２のデータを解析することにより、符号量（すなわち、ピクチャヘッダ間の符号量）を検出するようにしてもよいし、編集される素材１および素材２のデータをデコーダ２２乃至２４で一旦デコードさせて、バッファの蓄積量を検出するようにしてもよい。【０３９１】
バッファ占有量解析部５５２は、発生符号量検出部５５１から供給された、素材１および素材２の発生符号量の情報を基に、再エンコードを行わない範囲と再エンコード区間との接続点付近におけるバッファ占有量のモデル状態を解析する。【０３９２】
VBR方式で圧縮された画像においては、図３４に示されるように、バッファ占有量は上限を超えない（バッファ占有量は所定時間VBV_MAXに張り付いたようになる）ので、バッファは破綻しないが、アンダーフローを起こした場合には、バッファが破綻し、出力される画像に影響が発生する。【０３９３】
CBR（Constant Bit Rate)方式で符号化されたストリームを取り扱う場合においては、bit_rate_value(Sequence_header),bit_rate_extension(Sequence_extension)、および、vbv_delay(picture_header)の値を基にして、対象となるピクチャのバッファ内の位置を算出することによってバッファ占有量を算出することができるが、VBRの場合、この算出の基となる、vbv_delayの値が、最大値(0xFFFF)となっているため、正しいバッファ占有量を計算することができない。【０３９４】
このように再生時間情報が記載されていないエレメンタリストリームを扱うとき、エンコードされたストリームの先頭からデコードすることができれば、エンコーダが意図したバッファ占有量の軌跡を再現することが出来るが、常識的に考えれば、デコードは、ストリームの先頭からばかり行われるわけではない。したがって、エンコーダは、アンダーフローによる画像欠落が発生しないようなバッファ占有量の仮想的な軌跡を算出しなければならない。【０３９５】
そこで、バッファ占有量解析部５５２は、発生符号量検出部５５１により検出された、再エンコードを行わない範囲と再エンコード区間との接続点付近におけるバッファ占有量を解析するための第１のモデル状態として、図３５に示されるように、再エンコード区間と接続される、素材２の最初のピクチャにおけるバッファ占有量がVBV_MAXとなる場合を、再エンコード区間の終了点付近に十分な符号量を割り当てることができないWorst caseとして、再エンコード区間の最後の素材２と再エンコードされない素材２との接続点付近のバッファ占有量の仮想的な軌跡を算出する。【０３９６】
また、バッファ占有量解析部５５２は、再エンコードを行わない範囲と再エンコード区間との接続点付近におけるバッファ占有量を解析するための第２のモデル状態として、図３６に示されるように、再エンコード区間と素材１との接続点におけるバッファ占有量が０となる場合を、再エンコード区間の開始点付近に十分な符号量を割り当てることができないWorst caseとして、再エンコードされない素材１と再エンコード区間の素材１との接続点付近のバッファ占有量の仮想的な軌跡を算出する。【０３９７】
そして、バッファ占有量解析部５５２は、算出した第１のモデルと第２のモデルのバッファ占有量の仮想的な軌跡を、バッファ占有量決定部５５３に供給する。【０３９８】
なお、バッファ占有量解析部５５２における解析範囲が長ければ長いほど、よりよい制御ができる可能性が向上し、その一方で、処理時間がかかってしまう。解析範囲は、例えば、再生時間で１乃至２秒間程度に対応する範囲や、素材となる圧縮符号化データがMPEGのLONG GOP方式で符号化されているものである場合、１乃至２GOP程度が適当であるが、経験的または実験的に適宜設定可能な値とすることができる。【０３９９】
エンコーダは、VBRであっても、VBVバッファの規定を守るようにバッファ管理を行いながらエンコードを行っているので、再エンコード区間に続く、再エンコードしない区間の素材２のいずれかのピクチャにおいてバッファ占有量が上限にあたれば、それ以降のバッファ占有量は下限を下回ることはないといえる。したがって、図３５に示されるWorst caseのように、素材２の再エンコード区間と接続される最初のフレームのバッファ占有量が上限にあたるように再エンコード区間におけるバッファ制御を行えば、規格違反をせずに編集処理を行うことが可能となる。【０４００】
しかしながら、このようなWorst caseにおいては、再エンコード区間の最後のバッファ占有量が、上限VBV_MAXから「最高ビットレート×1frame時間」だけ低い値からVBV_MAXまでの間のいずれかの値となるように制御を行わなければならない。このため、再エンコード区間の符号配分の制限が非常に厳しいものとなり、画質が劣化してしまう恐れが生じる。【０４０１】
そこで、バッファ占有量決定部５５３は、素材２の再エンコード区間と接続される最初のピクチャがVBV_MAXとなるWorst caseにおいて、図３５のαおよびβに示されるように、バッファ占有量がVBV_MAXに張り付いている状態が存在するか否かを探索する。図３５のαおよびβに示されるように、バッファ占有量がVBV_MAXに張り付いている状態が存在する場合、αおよびβに示される区間だけ、バッファ占有量の仮想的な軌跡を下方に修正し、再エンコード区間の最後のバッファ占有量の値を低くしつつ、再エンコードしない区間の素材２のいずれかのピクチャにおいてバッファ占有量が上限となっている状態を求める。ただし、バッファ占有量決定部５５３は、このとき、アンダーフローが発生しない範囲でバッファ占有量の仮想的な軌跡を下方に修正する。【０４０２】
具体的には、図３５において、「最高ビットレート×αで示される区間」だけ、バッファ占有量の仮想的な軌跡が下方に修正された場合、アンダーフローが発生しなければ、再エンコード区間の最後のバッファ占有量の値は、矢印５８１に示される領域よりも広い矢印５８２に示される領域の範囲内で制御することができる。また、更に、「最高ビットレート×βで示される区間」だけ、バッファ占有量の仮想的な軌跡が下方に修正された場合、アンダーフローが発生しなければ、再エンコード区間の最後のバッファ占有量の値は、矢印５８２に示される領域よりも更に広い矢印５８３に示される領域の範囲内で制御することができる。【０４０３】
このようにすることにより、再エンコード区間の終了点におけるバッファ占有量の下限値をWorst caseよりも減少させる（少ない値に設定可能にする）ことができるため、再エンコード区間の最後のフレームに配分可能な符号量の上限値を増加させることができる。これにより、再エンコード区間におけるバッファ占有量の制御の自由度が増し、再エンコード区間における符号配分のコントロールが容易になるので、再エンコード区間の画質の劣化を防ぐようにすることが可能となる。【０４０４】
また、図３６に示されるように、再エンコード区間と素材１との接続点におけるバッファ占有量が０となるWorst caseにおいて、再エンコード区間の最初のフレームに、「最高ビットレート×1frame時間」の符号量以下しか割り当てることができないため、画質が劣化してしまう恐れが生じる。【０４０５】
素材１は、VBVバッファの規定を守るようにバッファ管理が行われている圧縮画像である。そこで、Worst caseを基準とした素材１の解析範囲内のバッファ占有量の仮想的な軌跡において、バッファ占有量がアンダーフローしているピクチャが存在する場合、そのアンダーフローの分だけ、バッファ占有量の仮想的な軌跡を上方に修正しても、再エンコード区間においてはVBVバッファの規定を守った制御を行うことが可能となる。すなわち、バッファ占有量決定部５５３は、Worst caseを基準とした素材１の解析範囲内のバッファ占有量の仮想的な軌跡において、バッファ占有量がアンダーフローしているピクチャが存在する場合、そのアンダーフローの分だけ、バッファ占有量の仮想的な軌跡を上方に修正して、再エンコード範囲の最初のバッファ占有量を決定する。これにより、再エンコード区間の開始点におけるバッファ占有量の上限値を増加させる（大きな値に設定可能にする）ことができ、最初のフレームに配分可能な符号量の自由度を増加させることができるので、画質の劣化を防止することが可能となる。【０４０６】
具体的には、図３６において、素材１の解析範囲内のバッファ占有量で最も大きくアンダーフローしている矢印６０１で示されるバッファ占有量の分だけ、矢印６０２で示されるようにバッファ占有量の仮想的な軌跡を上方に修正した場合、再エンコード範囲の最初のバッファ占有量は、矢印６０３で示される「最高ビットレート×1frame時間」の符号量以下の範囲内から、矢印６０３で示される「最高ビットレート×1frame時間」の符号量＋矢印６０２に対応する、矢印６０４で示される範囲内の発生符号量を割り当てることが可能になるので、画質の劣化を防止することが可能となる。【０４０７】
コマンドおよび制御情報生成部５５４は、バッファ占有量決定部５５３により決定された再エンコード区間における先頭と最後のバッファ占有量の値を取得し、これらの情報と、ユーザにより指定された編集点の情報と、編集開始コマンドを生成する。【０４０８】
次に、図３７のフローチャートを参照して、本発明を適用した編集装置１が実行する編集処理３について説明する。【０４０９】
ステップＳ２０１において、ＣＰＵ１１は、図示しない操作入力部から、編集開始を指令するユーザからの操作入力を受ける。【０４１０】
ステップＳ２０２において、ＣＰＵ１１は、図示しない操作入力部から供給されたユーザの操作入力を基に、サウスブリッジ１５を制御して、ＨＤＤ１６から、圧縮符号化された素材１のデータおよび素材２のデータをコピーし、ノースブリッジ１２、ＰＣＩバス１４、および、ＰＣＩブリッジ１７を介して、メモリ１８に供給させて記憶させるとともに、編集点、デコード区間（または、再エンコード区間）を示す情報と、編集開始を示すコマンドを、ノースブリッジ１２、ＰＣＩバス１４、ＰＣＩブリッジ１７、および、コントロールバス１９を介して、ＣＰＵ２０に供給する。メモリ１８は、圧縮符号化された２つの編集素材データを取得する。【０４１１】
ステップＳ２０３において、ＣＰＵ２０は、ＣＰＵ１１から供給された、編集点を示す情報と、編集開始を示すコマンドを基に、圧縮符号化された編集素材データのデコード範囲を決定する。デコード範囲を決定する処理は、例えば、図１８のステップＳ３において実行される、図１９を用いて説明したデコード範囲決定処理１または図２１を用いて説明したデコード範囲決定処理２１であってもよい。また、ＣＰＵ２０は、決定したデコード範囲をＣＰＵ１１に供給する。【０４１２】
ステップＳ２０４において、図３８を用いて後述する、バッファ占有量決定処理が実行される。ＣＰＵ１１は、再エンコード区間の開始点および終了点におけるバッファ占有量を示す情報を、ノースブリッジ１２、ＰＣＩバス１４、ＰＣＩブリッジ１７、および、コントロールバス１９を介して、ＣＰＵ２０に供給する。【０４１３】
ステップＳ２０５において、ＣＰＵ２０は、ＰＣＩブリッジ１７を制御して、メモリ１８に記憶されている圧縮符号化された２つの編集素材データから、デコードされる範囲のデータと、必要に応じて、この範囲のデータをデコードおよび再エンコードするために必要なデータを抽出させ、デコーダ２２およびデコーダ２３にそれぞれ供給させる。【０４１４】
また、このとき、ＣＰＵ２０は、ＰＣＩブリッジ１７を制御して、再エンコードされない部分の圧縮符号化された編集素材データを、ストリームスプライサ２５に供給させる。ＰＣＩブリッジ１７は、ＣＰＵ２０の制御に基づいて、メモリ１８に記憶されている圧縮符号化された２つの編集素材データから、決定されたデコード範囲のデータと、必要に応じて、この範囲のデータをデコードおよび再エンコードするために必要なデータを抽出し、デコーダ２２およびデコーダ２３にそれぞれ供給するとともに、再エンコードされない部分の圧縮符号化された編集素材データを、ストリームスプライサ２５に供給する。【０４１５】
また、このとき、ＣＰＵ２０は、必要に応じて、例えば、再エンコード範囲の画像に施されるエフェクトの種類や、再エンコードに含まれるピクチャの符号化難易度に関する情報を取得することが可能である。【０４１６】
ステップＳ２０６において、ＣＰＵ２０は、デコーダ２２およびデコーダ２３を制御して、決定されたデコード範囲のデータをデコードさせる。デコーダ２２およびデコーダ２３は、ＣＰＵ２０の制御に基づいて、供給された圧縮符号化された編集素材データをデコードして、エフェクト／スイッチ２６に供給する。【０４１７】
ステップＳ２０７において、ＣＰＵ２０は、エフェクト／スイッチ２６を制御して、デコードされたデータを編集点で接続させて、必要に応じて、エフェクトをかけさせる。エフェクト／スイッチ２６は、ＣＰＵ２０の制御に基づいて、供給された非圧縮の復号映像素材を編集点で接続して、必要に応じて、エフェクトをかけ、エンコーダ２７に供給する。【０４１８】
ステップＳ２０８において、ＣＰＵ２０は、エンコーダ２７に再エンコード区間の開始点および終了点におけるバッファ占有量を示す情報を供給するとともに、エンコーダ２７を制御して、デコードされて編集点で接続された画像データを再エンコードさせる。エンコーダ２７は、ＣＰＵ２０の制御に基づいて、再エンコード区間の開始点および終了点におけるバッファ占有量を示す情報に基づいて、VBVバッファの規定を満たすようにして、デコードされて編集点で接続された画像データのうち、再エンコード区間の画像データの再エンコードを行い、ストリームスプライサ２５に供給する。【０４１９】
ステップＳ２０９において、ストリームスプライサ２５は、再エンコードされた部分と、再エンコードされていない部分の圧縮映像データを接続し、処理が終了する。【０４２０】
このような処理により、２つの映像素材（圧縮映像データ）の編集点付近を部分的にデコードし、デコードされた非圧縮の映像信号を所定の編集点で接続した後、再エンコードを行い、デコードおよび再エンコードされていない部分の圧縮映像データと接続することにより、圧縮映像データの編集を実現することができる。【０４２１】
なお、ステップＳ２０２において、デコード範囲を決定する処理として、図１９を用いて説明したデコード範囲決定処理１が実行された場合、ステップＳ２０８およびステップＳ２０９においては、図２０を用いて説明した再エンコードおよび接続処理１と基本的に同様の処理が実行され、ステップＳ２０２において、デコード範囲を決定する処理として、図２１を用いて説明したデコード範囲決定処理２が実行された場合、ステップＳ２０８およびステップＳ２０９においては、図２２を用いて説明した再エンコードおよび接続処理２と基本的に同様の処理が実行される。【０４２２】
また、このとき、エンコーダ２７は、設定された再エンコード区間の開始点および終了点におけるバッファ占有量を示す情報に基づいて、VBVバッファの規定を満たすようにして、再エンコードするので、従来における場合よりも発生符号量の割り当ての自由度が増し、画質の劣化を防ぐことができる。【０４２３】
次に、図３８のフローチャートを参照して、図３７のステップＳ２０４において実行される、バッファ占有量決定処理について説明する。【０４２４】
ステップＳ２４１において、発生符号量検出部５５１は、ステップＳ２０３において決定された再エンコード区間に基づいて、再エンコード区間と再エンコードされない区間の接続点近傍の所定の範囲の素材１および素材２の発生符号量を検出し、バッファ占有量解析部５５２に供給する。【０４２５】
ステップＳ２４２において、バッファ占有量解析部５５２は、図３５を用いて説明した様に、素材２において、再エンコード区間の境界の次のピクチャのバッファ占有量が上限となるWorst caseにおいて、所定の範囲のバッファ占有量を解析し、Worst caseにおける仮想的なバッファ占有量の軌跡を求めて、バッファ占有量決定部５５３に供給する。【０４２６】
ステップＳ２４３において、バッファ占有量決定部５５３は、解析された、Worst caseにおける仮想的なバッファ占有量の軌跡において、VBV_MAXを超えている部分があるか否かを判断する。【０４２７】
ステップＳ２４３において、VBV_MAXを超えている部分があると判断された場合、ステップＳ２４４において、バッファ占有量決定部５５３は、VBV_MAXを超えている部分の時間（例えば、図３５におけるα、β）を基に、バッファアンダフローを起こさない条件を満たすように、再エンコード区間の最後のバッファ占有量を決定し、処理は、ステップＳ２４６に進む。【０４２８】
ステップＳ２４３において、VBV_MAXを超えている部分がないと判断された場合、ステップＳ２４５において、バッファ占有量決定部５５３は、Worst caseにおける仮想的なバッファ占有量の軌跡を元に、再エンコード区間の最後のバッファ占有量を決定する。【０４２９】
ステップＳ２４４またはステップＳ２４５の処理の終了後、ステップＳ２４６において、バッファ占有量解析部５５２は、図３６を用いて説明した様に、素材１において、再エンコード区間の境界のバッファ占有量が下限となるWorst caseにおいて、所定の範囲のバッファ占有量を解析し、Worst caseにおける仮想的なバッファ占有量の軌跡を求めて、バッファ占有量決定部５５３に供給する。【０４３０】
ステップＳ２４７において、バッファ占有量決定部５５３は、解析された、Worst caseにおける仮想的なバッファ占有量の軌跡において、アンダーフローが発生しているか否かを判断する。【０４３１】
ステップＳ２４７において、アンダーフローが発生していると判断された場合、ステップＳ２４８において、バッファ占有量決定部５５３は、図３６を用いて説明した様に、バッファアンダフロー分、仮想的な軌跡を上方に修正し、再エンコード区間の最初のバッファ占有量を決定し、処理は、ステップＳ２５０に進む。【０４３２】
ステップＳ２４７において、アンダーフローが発生していないと判断された場合、ステップＳ２４９において、バッファ占有量決定部５５３は、Worst caseにおける仮想的なバッファ占有量の軌跡を元に、再エンコード区間の最初のバッファ占有量を決定する。【０４３３】
ステップＳ２４８またはステップ２４７１の処理の終了後、ステップＳ２５０において、コマンドおよび制御情報生成部５５４は、再エンコード区間の開始点および終了点におけるバッファ占有量を示す情報とを生成して、ＣＰＵ２０に出力し、処理は、図３７のステップＳ２０４に戻り、ステップＳ２０５に進む。【０４３４】
このような処理により、可変ビットレート方式で圧縮された画像の編集を行う場合に、素材のデータを全て解析することなく、再エンコード区間のバッファ制御を容易にし、画質を向上させることができるような、再エンコード区間および再エンコード区間の開始点および終了点におけるバッファ占有量を決定することができる。【０４３５】
以上説明した処理によって、可変ビットレート方式で圧縮された画像の編集が、編集点近傍の一部分だけのデコードおよび再エンコードで可能になる。【０４３６】
また、可変ビットレート方式で圧縮された画像を編集する際に、再エンコード区間と再エンコードされない区間とのつなぎの点の近傍の仮想バッファのバッファ占有量の遷移状態を調べ、再エンコード区間のピクチャに割り当てられる符号量を増やすことができるようにしたので、制御が容易になり、画質の劣化を防止して、高画質な編集画像を得ることができるようになる。【０４３７】
なお、図３７および図３８のフローチャートを用いて説明した処理においても、デコード範囲は、再エンコード範囲に基づいて、再エンコード範囲とは個別に定められるものとしてもよい。すなわち、デコード範囲は、再エンコード範囲と同一の範囲であっても、再エンコード範囲を含むそれ以上の範囲であってもよい。【０４３８】
以上のように、第１の圧縮映像データと第２の圧縮映像データとを編集点で接続して編集する処理を制御することができ、特に、時間情報を有さないＶＢＲの圧縮映像データにおいて、デコードされて前記編集点で接続された前記第１の圧縮映像データとおよび前記第２の圧縮映像データの再エンコード範囲の開始点と終了点におけるバッファ占有量を、再エンコード範囲に割り当てられる発生符号量の自由度が増すように設定することができる。【０４３９】
上述した一連の処理は、ソフトウェアにより実行することもできる。そのソフトウェアは、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。この場合、例えば、図４を用いて説明した編集装置１、図２４を用いて説明した編集装置４０１は、図３９に示されるようなパーソナルコンピュータ７０１により構成される。【０４４０】
図３９において、ＣＰＵ（Central Processing Unit）７１１は、ＲＯＭ（Read Only Memory）７１２に記憶されているプログラム、または記憶部７１８からＲＡＭ（Random Access Memory）７１３にロードされたプログラムにしたがって、各種の処理を実行する。ＲＡＭ７１３にはまた、ＣＰＵ７１１が各種の処理を実行する上において必要なデータなども適宜記憶される。【０４４１】
ＣＰＵ７１１、ＲＯＭ７１２、およびＲＡＭ７１３は、バス７１４を介して相互に接続されている。このバス７１４にはまた、入出力インタフェース７１５も接続されている。【０４４２】
入出力インタフェース７１５には、キーボード、マウスなどよりなる入力部７１６、ディスプレイやスピーカなどよりなる出力部７１７、ハードディスクなどより構成される記憶部７１８、モデム、ターミナルアダプタなどより構成される通信部７１９が接続されている。通信部７１９は、インターネットを含むネットワークを介しての通信処理を行う。【０４４３】
入出力インタフェース７１５にはまた、必要に応じてドライブ７２０が接続され、磁気ディスク７３１、光ディスク７３２、光磁気ディスク７３３、もしくは、半導体メモリ７３４などが適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部７１８にインストールされる。【０４４４】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。【０４４５】
この記録媒体は、図３９に示されるように、装置本体とは別に、ユーザにプログラムを供給するために配布される、プログラムが記憶されている磁気ディスク７３１（フロッピディスクを含む）、光ディスク７３２（ＣＤ-ＲＯＭ（Compact Disk-Read Only Memory），ＤＶＤ（Digital Versatile Disk）を含む）、光磁気ディスク７３３（ＭＤ（Mini-Disk）（商標）を含む）、もしくは半導体メモリ７３４などよりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに供給される、プログラムが記憶されているＲＯＭ７１２や、記憶部７１８に含まれるハードディスクなどで構成される。【０４４６】
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。【０４４７】
なお、上述の実施の形態においては、編集装置１または編集装置４０１が、それぞれ、デコーダとエンコーダを有しているものとして説明したが、デコーダおよびエンコーダが、それぞれ、独立した装置として構成されている場合においても、本発明は適用可能である。例えば、図４０に示されるように、ストリームデータを復号してベースバンド信号に変換する復号装置７７１、ベースバンド信号を符号化してストリームデータに変換する符号化装置７７２が、それぞれ独立した装置として構成されていても良い。【０４４８】
このとき、復号装置７７１は、映像素材である圧縮符号化データを復号し、符号化装置７７２に供給するのみならず、本発明を適用することにより符号化装置７７２により部分的に符号化された後、編集されて生成された圧縮符号化データの供給を受け、復号処理を行い、ベースバンド信号に変換することができる。ベースバンド信号に変換された編集後のストリームは、例えば、所定の表示装置に供給されて表示されたり、他の装置に出力されて、必要な処理が施される。【０４４９】
さらに、上述の実施の形態においては、デコーダ２２乃至２４が、供給された圧縮符号化データを完全にデコードせず、対応するエンコーダ２７が、非完全に復号されたデータの対応する部分を部分的にエンコードする場合においても、本発明は適用可能である。【０４５０】
例えば、デコーダ２２乃至２４が、ＶＬＣ符号に対する復号および逆量子化のみを行い、逆DCT変換を実行していなかった場合、エンコーダ２７は、量子化および可変長符号化処理を行うが、DCT変換処理は行わない。このような部分的な符号化（中途段階からの符号化）を行うエンコーダにおいても、本発明を適用することができるのは言うまでもない。【０４５１】
さらに、上述の実施の形態においては、デコーダ２２乃至２４が完全に復号したベースバンド信号を、エンコーダ２７が中途段階まで符号化する場合（例えば、DCT変換および量子化を行うが可変長符号化処理を行わないなど）や、デコーダ２２乃至２４が完全に復号していない（例えば、ＶＬＣ符号に対する復号および逆量子化のみを行い、逆DCT変換を実行していない）ため、中途段階まで符号化されているデータに対して、エンコーダ２７が更に中途段階まで符号化する場合など（例えば、量子化を行うが可変長符号化処理を行わないなど）においても、本発明は適用可能である。【０４５２】
更に、図４０に示される復号装置７７１が、供給されたストリームデータを完全に復号せず、対応する符号化装置７７２が、非完全に復号されたデータの対応する部分を部分的に符号化する場合においても、本発明は適用可能である。【０４５３】
例えば、復号装置７７１が、ＶＬＣ符号に対する復号および逆量子化のみを行い、逆DCT変換を実行していなかった場合、符号化装置７７２は、量子化および可変長符号化処理を行うが、DCT変換処理は行わない。このような部分的な復号処理（中途段階までの復号）を行う復号装置７７１のデコード処理、および、符号化（中途段階からの符号化）を行う符号化装置７７２のエンコード処理において、本発明を適用することができるのは言うまでもない。【０４５４】
更に、復号装置７７１が完全に復号したベースバンド信号を、符号化装置７７２が中途段階まで符号化する場合（例えば、DCT変換および量子化を行うが可変長符号化処理を行わないなど）や、復号装置７７１が完全に復号していない（例えば、ＶＬＣ符号に対する復号および逆量子化のみを行い、逆DCT変換を実行していない）ため、中途段階まで符号化されているデータに対して、符号化装置７７２が更に中途段階まで符号化する場合など（例えば、量子化を行うが可変長符号化処理を行わないなど）においても、本発明は適用可能である。【０４５５】
更に、このような部分的な復号を行う（復号処理の工程のうちの一部を実行する）符号化装置４５１と部分的な符号化を行う（符号化処理の工程のうちの一部を実行する）符号化装置７７２で構成されたトランスコーダ７８１においても、本発明は適用可能である。このようなトランスコーダ７８１は、例えば、スプライシングなどの編集を行う編集装置７８２、すなわち、上述した編集装置１または編集装置４０１のストリームスプライサ２５やエフェクト／スイッチ２６が実行可能な機能を有する編集装置が利用される場合などに用いられる。【０４５６】
さらに、上述の実施の形態においては、ＣＰＵ１１およびＣＰＵ２０がそれぞれ別の形態で構成されているが、これに限らず、編集装置１または編集装置４０１全体を制御する１つのＣＰＵとして構成する形態も考えられる。同様に、上述の実施の形態においては、メモリ１３およびメモリ２１がそれぞれ別の形態で構成されているが、これに限らず、編集装置１または編集装置４０１において１つのメモリとして構成する形態も考えられる。【０４５７】
さらに、上述の実施の形態においては、ＨＤＤ１６、デコーダ２２乃至２４、ストリームスプライサ２５、エフェクト／スイッチ２６、および、エンコーダ２７を、それぞれ、ブリッジおよびバスを介して接続し、編集装置として一体化されている場合について述べたが、本発明はこれに限らず、例えば、これらの構成要素のうちの一部が、外部から有線または無線で接続されるようにしても良いし、これらの構成要素は、この他、種々の接続形態で相互に接続されるようにしてもよい。【０４５８】
さらに、上述の実施の形態においては、圧縮された編集用の素材がＨＤＤに記憶されている場合について述べたが、本発明はこれに限らず、例えば、光ディスク、光磁気ディスク、半導体メモリ、磁気ディスク等の種々の記録媒体に記録された編集用の素材を用いて編集処理を行う場合にも適用することができる。【０４５９】
さらに、上述の実施の形態においては、デコーダ２２乃至２４、ストリームスプライサ２５、エフェクト／スイッチ２６、および、エンコーダ２７は、同一の拡張カード（例えば、PCIカード、PCI−Expressカード）に搭載する形態に限らず、例えばPCI−Expressなどの技術によりカード間の転送速度が高い場合には、それぞれ別の拡張カードに搭載してもよい。【０４６０】
また、本発明は、ＭＰＥＧ方式による情報処理装置の他、これに類似する符号化又は復号化のアルゴリズムを有する方式の情報処理装置に適用することができる。【０４６１】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図１】
0004743119.tif 000002
【図２】
0004743119.tif 000003
【図３】
0004743119.tif 000004
【図４】
0004743119.tif 000005
【図５】
0004743119.tif 000006
【図６】
0004743119.tif 000007
【図７】
0004743119.tif 000008
【図８】
0004743119.tif 000009
【図９】
0004743119.tif 000010
【図１０】
0004743119.tif 000011
【図１１】
0004743119.tif 000012
【図１２】
0004743119.tif 000013
【図１３】
0004743119.tif 000014
【図１４】
0004743119.tif 000015
【図１５】
0004743119.tif 000016
【図１６】
0004743119.tif 000017
【図１７】
0004743119.tif 000018
【図１８】
0004743119.tif 000019
【図１９】
0004743119.tif 000020
【図２０】
0004743119.tif 000021
【図２１】
0004743119.tif 000022
【図２２】
0004743119.tif 000023
【図２３】
0004743119.tif 000024
【図２４】
0004743119.tif 000025
【図２５】
0004743119.tif 000026
【図２６】
0004743119.tif 000027
【図２７】
0004743119.tif 000028
【図２８】
0004743119.tif 000029
【図２９】
0004743119.tif 000030
【図３０】
0004743119.tif 000031
【図３１】
0004743119.tif 000032
【図３２】
0004743119.tif 000033
【図３３】
0004743119.tif 000034
【図３４】
0004743119.tif 000035
【図３５】
0004743119.tif 000036
【図３６】
0004743119.tif 000037
【図３７】
0004743119.tif 000038
【図３８】
0004743119.tif 000039
【図３９】
0004743119.tif 000040
【図４０】
0004743119.tif 000041