(57)【要約】    【課題】  動画ファイルの編集送出処理を効率化するための技術を提供する。    【解決手段】  編集手段１２は、前記フレーム順番情報に基づいて、各動画素材の開始位置および終了位置を特定した編集構成データファイル１５を生成し、編集する。動画データ送出時には、グループ情報特定手段１７は、編集構成データファイル１５の各素材の開始位置および終了位置に基づいて、対応するグループ情報を特定する。送出手段１６は、特定されたグループ情報に基づいて、動画データファイル４の対応するグループデータから、各素材の開始位置、終了位置にしたがって動画データを読み出し、デコードして送出する。デコードされた動画データは、エンコーダ・送信装置に与えられて放送される。【選択図】  図１
2006279148.tif 000002
【特許請求の範囲】
【請求項１】
圧縮した複数フレームの動画をグループ化してグループデータとし、当該グループデータを時系列順に配置した動画データファイル、および、前記動画データファイル中の各グループデータの代表点の記録位置をアクセス位置として記述するとともに各グループデータに含まれる代表フレームの、動画データファイル全体のフレームにおける順番を示す代表フレーム順番情報を記述したインデックスファイルを記録する記録部と、
フレーム順番情報に基づいて、各動画素材の開始位置および終了位置を特定した編集構成データファイルを生成・変更する編集手段と、
編集構成データファイルに基づいて、当該編集構成データファイルの各動画素材の開始位置から終了位置までの動画データに対応するインデックスファイル中のグループ情報を取得するグループ情報特定手段と、
グループ情報特定手段によって特定されたグループ情報に基づいて、各動画素材の開始位置から終了位置に対応する動画データを、順次動画データファイルから読み出して伸長し送出する送出手段と、
を備えた編集送出装置。
【請求項２】
圧縮した複数フレームの動画をグループ化してグループデータとし、当該グループデータを時系列順に配置した動画データファイルと、前記動画データファイル中の各グループデータの代表点の記録位置をアクセス位置として記述するとともに各グループデータに含まれる代表フレームの、動画データファイル全体のフレームにおける順番を示す代表フレーム順番情報を記述したインデックスファイルと、フレーム順番情報に基づいて、各動画素材の開始位置および終了位置を特定した編集構成データファイルとを記録する記録部と、
編集構成データファイルに基づいて、当該編集構成データファイルの各動画素材の開始位置から終了位置までの動画データに対応するインデックスファイル中のグループ情報を取得するグループ情報特定手段と、
グループ情報特定手段によって特定されたグループ情報に基づいて、各動画素材の開始位置から終了位置に対応する動画データを、順次動画データファイルから読み出して伸長し送出する送出手段と、
を備えた動画送出装置。
【請求項３】
コンピュータを動画送出装置として機能させるための動画送出プログラムであって、
圧縮した複数フレームの動画をグループ化してグループデータとし、当該グループデータを時系列順に配置した動画データファイルと、前記動画データファイル中の各グループデータの代表点の記録位置をアクセス位置として記述するとともに各グループデータに含まれる代表フレームの、動画データファイル全体のフレームにおける順番を示す代表フレーム順番情報を記述したインデックスファイルと、フレーム順番情報に基づいて、各動画素材の開始位置および終了位置を特定した編集構成データファイルとを記録する記録部にアクセスする手段と、
編集構成データファイルに基づいて、当該編集構成データファイルの各動画素材の開始位置から終了位置までの動画データに対応するインデックスファイル中のグループ情報を取得するグループ情報特定手段と、
グループ情報特定手段によって特定されたグループ情報に基づいて、各動画素材の開始位置から終了位置に対応する動画データを、順次動画データファイルから読み出して伸長し送出する送出手段と、
をコンピュータによって実現するための動画送出プログラム。
【請求項４】
請求項１〜３のいずれかの装置またはプログラムにおいて、
前記グループデータの代表点は、グループデータの先頭位置であることを特徴とするもの。
【請求項５】
請求項１〜４のいずれかの装置またはプログラムにおいて、
前記動画データファイルは、ＭＰＥＧ形式のエレメンタリーストリームであり、
前記グループデータは、ＧＯＰであり、
前記代表点は、ＧＯＰの先頭位置またはＧＯＰの直前のシーケンスヘッダの先頭位置であることを特徴とするもの。
【請求項６】
請求項１〜５のいずれかの装置またはプログラムにおいて、
前記インデックスファイルは、前記動画データファイル中の各グループデータの代表点の記録位置をアクセス位置として記録するのではなく、前記動画データファイル中の各グループデータを含むパケットの代表点の記録位置をアクセス位置として記録していることを特徴とするもの。
【請求項７】
請求項６の装置またはプログラムにおいて、
前記動画データファイルは、ＭＰＥＧ形式のパケット化エレメンタリストリームまたはプログラムストリームであり、
前記グループデータは、ＧＯＰであり、
前記代表点は、パケットの先頭位置であることを特徴とするもの。
【請求項８】
請求項６の装置またはプログラムにおいて、
前記動画データファイルは、ＭＰＥＧ形式のトランスポートストリームであり、
前記グループデータは、ＧＯＰであり、
前記代表点は、パケットの先頭位置であることを特徴とするもの。
【請求項９】
請求項１〜８のいずれかの装置またはプログラムにおいて、
前記グループデータの代表フレームは、当該グループデータの先頭フレームであり、代表フレーム順番情報として先頭フレーム順番情報が記述されることを特徴とするもの。
【請求項１０】
請求項１〜８のいずれかの装置またはプログラムにおいて、
前記グループデータの代表フレームは、当該グループデータの先頭フレームおよび終了フレームであり、代表フレーム順番情報として先頭フレーム順番情報および終了フレーム順番情報が記述されることを特徴とするもの。
【請求項１１】
圧縮した複数フレームの動画をグループ化してグループデータとし、当該グループデータを時系列順に配置した動画データファイル、および、前記動画データファイル中の各グループデータの代表点の記録位置をアクセス位置として記述するとともに各グループデータに含まれる代表フレームの、動画データファイル全体のフレームにおける順番を示す代表フレーム順番情報を記述したインデックスファイルを記録した記録部を有するコンピュータによって動画データの編集送出を行う方法であって、前記コンピュータが、
フレーム順番情報に基づいて、各動画素材の開始位置および終了位置を特定した編集構成データファイルを生成・変更し、
編集構成データファイルに基づいて、当該編集構成データファイルの各動画素材の開始位置から終了位置までの動画データを、インデックスファイルを参照して順次動画データファイルから読み出して伸長し送出すること
を特徴とする動画データの編集送出方法。
【請求項１２】
請求項１１の編集送出方法において、
前記インデックスファイルは、前記動画データファイル中の各グループデータの代表点の記録位置をアクセス位置として記録するのではなく、前記動画データファイル中の各グループデータを含むパケットの代表点の記録位置をアクセス位置として記録していることを特徴とするもの。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、動画ファイルの編集送出処理を効率化するための技術に関するものである。
【背景技術】
【０００２】
ＭＰＥＧ方式の動画データは、Ｉピクチャ、Ｐピクチャ、Ｂピクチャの３種類のデータによって構成される。Ｉピクチャはフレーム内符号化によって圧縮されており、それ単独で画像を復元することができる。Ｐピクチャは、過去のフレーム画像に基づく動き補償予測を用いたフレーム間予測により圧縮されている。Ｂピクチャは、過去または未来のフレーム画像に基づく動き補償予測を用いたフレーム間予測により圧縮されている。ＭＰＥＧ方式の動画データを伝送する場合には、このようなＩピクチャ、Ｐピクチャ、Ｂピクチャをグループ化してＧＯＰとした上で、パケット化することが多い。
【０００３】
このようなＭＰＥＧ方式の動画データにつき、放送送出用のデータを作成するには次のようにして編集を行っていた。まず、元となる動画データファイルをデコードし、フレーム画像として表示し、必要な部分(素材）だけを選択しこれを接続したフレーム画像を作成する。次に、このフレーム画像をＭＰＥＧ方式にエンコードし、動画データファイルを生成してテープに記録する。そして、この動画データファイルを送信する。
【０００４】
【特許文献１】なし
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしこのような動画データファイルの編集送出方法には次のような問題点があった。まず、圧縮された動画データを伸張して編集し、その後さらに圧縮するようにしているので、編集を繰り返すと画質が劣化するという問題があった。さらに、送出用の動画データファイルを作成した後に、再編集を行おうとしたとき時間を要するという問題があった。つまり、わずかな修正であっても、ファイル全体について再びテープへの記録を行わねばならなかった。
【０００６】
この発明は上記のような問題点を解決して、動画ファイルの編集送出処理を効率化するための技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
(1)この発明に係る編集送出装置は、圧縮した複数フレームの動画をグループ化してグループデータとし、当該グループデータを時系列順に配置した動画データファイル、および、前記動画データファイル中の各グループデータの代表点の記録位置をアクセス位置として記述するとともに各グループデータに含まれるグループ先頭フレームおよびグループ最終フレームの、動画データファイル全体のフレームにおける順番を示す先頭最終フレーム順番情報を記述したインデックスファイルを記録する記録部と、フレーム順番情報に基づいて、各動画素材の開始位置および終了位置を特定した編集構成データファイルを生成・変更する編集手段と、編集構成データファイルに基づいて、当該編集構成データファイルの各動画素材の開始位置から終了位置までの動画データに対応するインデックスファイル中のグループ情報を取得するグループ情報特定手段と、グループ情報特定手段によって特定されたグループ情報に基づいて、各動画素材の開始位置から終了位置に対応する動画データを、順次動画データファイルから読み出して伸長し送出する送出手段とを備えている。
【０００８】
各動画素材の開始位置および終了位置を編集構成データファイルにて指定することにより編集を行い、送出時には、この開始位置および終了位置に基づいて、インデックスファイルを参照して、動画データファイルの必要なグループデータにアクセスし、伸長を行って動画を復元し送出するようにしている。したがって、圧縮された元の動画データの伸長、再圧縮を行う必要がなく品質を維持できるとともに、圧縮されたデータによって送出のためのデータを保存できるのでデータ容量の削減を図ることができる。
【０００９】
(2)この発明に係る動画送出装置は、圧縮した複数フレームの動画をグループ化してグループデータとし、当該グループデータを時系列順に配置した動画データファイルと、前記動画データファイル中の各グループデータの代表点の記録位置をアクセス位置として記述するとともに各グループデータに含まれるグループ先頭フレームおよびグループ最終フレームの、動画データファイル全体のフレームにおける順番を示す先頭最終フレーム順番情報を記述したインデックスファイルと、フレーム順番情報に基づいて、各動画素材の開始位置および終了位置を特定した編集構成データファイルとを記録する記録部と、編集構成データファイルに基づいて、当該編集構成データファイルの各動画素材の開始位置から終了位置までの動画データに対応するインデックスファイル中のグループ情報を取得するグループ情報特定手段と、グループ情報特定手段によって特定されたグループ情報に基づいて、各動画素材の開始位置から終了位置に対応する動画データを、順次動画データファイルから読み出して伸長し送出する送出手段とを備えている。
【００１０】
各動画素材の開始位置および終了位置を指定した編集構成データファイルに基づいて、インデックスファイルを参照して、動画データファイルの必要なグループデータにアクセスし、伸長を行って動画を復元し送出するようにしている。したがって、圧縮された元の動画データの伸長、再圧縮を行う必要がなく品質を維持できるとともに、圧縮されたデータによって送出のためのデータを保存できるのでデータ容量の削減を図ることができる。
【００１１】
(4)この発明に係る編集送出装置は、グループデータの代表点が、グループデータの先頭位置であることを特徴としている。したがって、グループデータの先頭に容易にアクセスして取り出すことができ、圧縮データとして記録しつつも送出を迅速にすることができる。
【００１２】
(5)この発明に係る編集送出装置は、動画データファイルは、ＭＰＥＧ形式のエレメンタリーストリームであり、グループデータは、ＧＯＰであり、代表点は、ＧＯＰの先頭位置またはＧＯＰの直前のシーケンスヘッダの先頭位置であることを特徴としている。したがって、ＭＰＥＧ形式のエレメンタリーストリームにおいて、所望のフレームへのアクセス・取り出しを容易にすることができ、圧縮データとして記録しつつも送出を迅速にすることができる。
【００１３】
(6)この発明に係る編集送出装置は、インデックスファイルは、前記動画データファイル中の各グループデータの代表点の記録位置をアクセス位置として記録するのではなく、前記動画データファイル中の各グループデータを含むパケットの代表点の記録位置をアクセス位置として記録していることを特徴としている。
【００１４】
したがって、パケット化された動画データファイルに対しても、アクセス及び取り出しを迅速にし、結果として、圧縮データとして記録しつつも迅速な送出を達成することができる。
【００１５】
(7)この発明に係る編集送出装置は、動画データファイルは、ＭＰＥＧ形式のパケット化エレメンタリストリームまたはプログラムストリームであり、前記グループデータは、ＧＯＰであり、前記代表点は、パケットの先頭位置であることを特徴としている。したがって、ＭＰＥＧ形式のパケット化エレメンタリーストリームにおいて、所望のフレームへのアクセス・取り出しを容易にすることができ、パケット化された圧縮データとして記録しつつも送出を迅速にすることができる。
【００１６】
(8)この発明に係る編集送出装置は、動画データファイルは、ＭＰＥＧ形式のトランスポートストリームであり、グループデータは、ＧＯＰであり、代表点は、パケットの先頭位置であることを特徴としている。したがって、ＭＰＥＧ形式のトランスポートストリームにおいて、所望のフレームへのアクセス・取り出しを容易にすることができ、圧縮データとして記録しつつも送出を迅速にすることができる。
【００１７】
上記の各項目は、本出願に含まれる複数の発明のそれぞれの特徴を述べたものであり、特許請求の範囲における従属請求項に記載した特徴も含まれている。
【００１８】
この発明において、「装置」とは物理的に1つに構築されたコンピュータなどだけでなく、通信回線などを介して接続された２以上のコンピュータも含む概念である。
【００１９】
(9)この発明に係る編集送出装置は、グループデータの代表フレームは、当該グループデータの先頭フレームであり、代表フレーム順番情報として先頭フレーム順番情報が記述されることを特徴としている。したがって、インデックスファイルの容量を抑えつつ、所望のフレームがいずれのグループデータに含まれるかを迅速に決定することができる。
【００２０】
(10)この発明に係る編集送出装置は、グループデータの代表フレームは、当該グループデータの先頭フレームおよび終了フレームであり、代表フレーム順番情報として先頭フレーム順番情報および終了フレーム順番情報が記述されることを特徴としている。したがって、所望のフレームがいずれのグループデータに含まれるかを迅速に決定することができる。
【００２１】
「編集手段」とは、少なくとも動画データファイルのいずれの部分を使用するかを指定する手段を備えた手段であり、実施形態においては、ステップＳ４０３、Ｓ４０４がこれに対応する。
【００２２】
「グループ情報特定手段」とは、少なくとも所望の動画データが、動画データファイルのいずれのグループデータに属するかを特定する手段をいい、実施形態においては、ステップＳ５０３がこれに対応する。
【００２３】
「送出手段」とは、少なくとも動画データを出力する手段をいい、実施形態においては、ステップＳ５０５がこれに対応する。
【００２４】
「記録部にアクセスする手段」とは、記録部の内容を読み出したり、記録部に内容を記録したりする手段であり、実施形態においては、ステップＳ１、Ｓ１３などがこれに対応する。
【００２５】
「プログラム」とは、ＣＰＵにより直接実行可能なプログラムだけでなく、ソース形式のプログラム、圧縮処理がされたプログラム、暗号化されたプログラム等を含む概念である。
【発明を実施するための形態】
【００２６】
１．編集送出装置
図１に、この発明の一実施形態による編集送出装置１の機能ブロック図を示す。記録部２には、圧縮した複数フレームの動画をグループ化してグループデータとし、当該グループデータを時系列順に配置した動画データファイル４が記録されている。さらに、インデックスファイル１４が記録されている。インデックスファイル１４には、上記のグループデータ毎にグループ情報が記述されている。グループ情報には、前記動画データファイル４中の各グループデータの代表点の記録位置をアクセス位置や、各グループデータに含まれるグループ先頭フレームおよびグループ最終フレームの、動画データファイル８全体のフレームにおける順番を示す先頭最終フレーム順番情報が記述されている。
【００２７】
編集手段１２は、前記フレーム順番情報に基づいて、各動画素材の開始位置および終了位置を特定した編集構成データファイル１５を生成し、編集する。
【００２８】
動画データ送出時には、グループ情報特定手段１７は、編集構成データファイル１５の各素材の開始位置および終了位置に基づいて、対応するグループ情報を特定する。送出手段１６は、特定されたグループ情報に基づいて、動画データファイル４の対応するグループデータから、各素材の開始位置、終了位置にしたがって動画データを読み出し、デコードして送出する。デコードされた動画データは、エンコーダ・送信装置に与えられて放送される。
【００２９】
図２に、図１に示す編集送出装置をＣＰＵを用いて実現した場合のハードウエア構成を示す。この実施形態では、動画編集装置と送出装置を別装置として構成しているが、１つの装置として構成してもよい。
【００３０】
２．動画編集装置
図２Ａに動画編集装置のハードウエア構成を、図２Ｂに送出装置のハードウエア構成を示す。図２Ａにおいて、ＣＰＵ１３０には、ディスプレイ１３２、メモリ１３４、ハードディスク１０２、可搬性ハードディスク１０３、キーボード／マウス１３６、ＣＤ−ＲＯＭドライブ１３８が接続されている。ディスプレイ１３２は、編集状態を示すためのものである。キーボード／マウス１３６は、編集のための操作を入力するためのものである。メモリ１３４は、ＣＰＵ１３０のワーク領域として使用される。
【００３１】
ハードディスク１０２には、WINDOWS(商標)などのオペレーティングシステム１４２、インデックス生成プログラム４４、編集プログラム１４６などが記録されている。可搬性ハードディスク１０３には、送出用動画データファイル４ａ、送出用インデックスファイル１４ａ、送出用動画データファイル４ａが記録されることになる。編集プログラム１４６は、オペレーティングシステム１４２と協働して、動画データファイル４についての編集構成データ１５を生成・編集する。編集プログラム１４６は、ＣＤ−ＲＯＭ１４０に記録されていたものを、ＣＤ−ＲＯＭドライブ１３８を介してインストールしたものである。動画データファイル４は、ディジタルビデオカメラなどからの動画データを記録したものである。この実施形態では、動画データファイル４として、ＭＰＥＧ方式のエレメンタリーストリームが記録されている。
【００３２】
図３に、動画データファイル４の構造を示す。複数のＧＯＰが時系列順に記録されている。ＧＯＰの直前にはシーケンスヘッダＳＨが設けられている場合と、設けられていない場合とがある。シーケンスヘッダＳＨは、再生のために必要な画素縦横比などの情報を記録している。各ＧＯＰには、Ｉピクチャ、Ｂピクチャ、Ｐピクチャが記録されている。また、ＧＯＰの先頭には、スタートコード２０が記録されている。なお、ＧＯＰには、十数フレーム分の動画データが含まれている。
【００３３】
図４に、インデックスファイルの構造を示す。総ＧＯＰ数、総フレーム数は、動画データファイル４の全ＧＯＰ数、全フレーム数を示している。これに続いて、各ＧＯＰについてのＧＯＰ情報（グループ情報）が、ＧＯＰの時系列順に記述されている。
【００３４】
各ＧＯＰ情報は、次のように構成される。ＧＯＰのＩＤ(図では、ＧＯＰ１やＧＯＰ２として示されている)に続いて、アクセス位置、先頭フレーム番号、最終フレーム番号、タイムコード、種類(クローズドＧＯＰかブロークンリンクか）が記述されている。なお、ＧＯＰのＩＤは、ＧＯＰを特定するために各ＧＯＰに付した連番である。
【００３５】
アクセス位置は、図３に示す動画データファイル４の当該ＧＯＰのスタートコードの先頭の記録位置（動画データファイルの先頭から何バイト目にあるか）である。先頭フレーム番号は、当該ＧＯＰに含まれる最初のフレームのフレーム番号（動画データファイルの先頭のフレームから計数した番号）である。最終フレーム番号は、当該ＧＯＰに含まれる最後のフレームのフレーム番号である。タイムコードは、当該ＧＯＰの最初のフレームについて、動画の最初からの経過時間を記述したものである。種類は、クローズドＧＯＰか非クローズドＧＯＰかブロークンリンクかを記述している。クローズドＧＯＰとは、当該ＧＯＰに含まれる画像データをデコードするために、先行するＧＯＰの画像データを参照しなくともよいことを示している。非クローズドＧＯＰとは、当該ＧＯＰに含まれる画像データをデコードするために、先行するＧＯＰの画像データを参照しなければならないことを示している。ブロークンリンクとは、当該ＧＯＰだけでは当該ＧＯＰに含まれる画像データの全てをデコードできず、かつ、先行するＧＯＰの画像データを参照してもデコードできないことを示している。
【００３６】
図５に、編集プログラム１４６のフローチャートを示す。ＣＰＵ１３０は、まず、ステップＳ１において、指定された動画データファイル４を開く。この際、当該動画データファイル４に対応づけて記録されているインデックスファイル１４も開く。
【００３７】
次に、ＣＰＵ１３０は、オペレータが、マウス１３６などによって指示した操作に応じて、動画データファイル４の指定箇所の動画データを、ディスプレイ１３２に表示する(ステップＳ４０２)。この際、ＣＰＵ１３０は、所望のフレーム番号を指定して、スキップなどの指示があった場合、インデックスファイル１４を参照し、当該所望のフレームがどのＧＯＰに含まれるかを判断する。つまり、インデックスファイル１４の、各ＧＯＰのＧＯＰ情報中の先頭フレーム番号、最終フレーム番号を取得し、所望のフレームが、どのＧＯＰに含まれるかを判断する。ＧＯＰを特定すると、当該ＧＯＰのＧＯＰ情報中のアクセス位置を取得し、当該アクセス位置に基づいて、動画データファイル４にアクセスし、ＧＯＰ中の画像データを復元して、所望のフレームの画像データを得る。この際、インデックスファイル１４に記録されたクローズドＧＯＰか非クローズドＧＯＰかブロークンリンクかに基づき、必要なＧＯＰを取得するようにしている。たとえば、クローズドＧＯＰであれば、当該ＧＯＰだけを取得する。非クローズドＧＯＰの場合には、当該ＧＯＰだけでなく１つ前のＧＯＰも併せて取得する。また、ブロークンリンクの場合にも、当該ＧＯＰだけでなく１つ前のＧＯＰも併せて取得する。ブロークンリンクの場合には、デコードできない画像を、１つ前のＧＯＰの画像によって置き換えて使用するためである。なお、オペレータの操作入力に応じ、通常再生、早送り、巻き戻し、コマ送りなどを実行する。
【００３８】
次に、オペレータがマウス１３６などによって素材の開始位置を指定すると、ＣＰＵ１３０は、当該開始位置のフレーム番号をメモリ１３４に記録する(ステップＳ４０３）。なお、開始位置は、フレーム番号ではなく、動画データを再生した場合の最初からの経過時間で表してもよい。続いて、オペレータがマウス１３６などによって素材の終了位置を指定すると、ＣＰＵ１３０は、当該終了位置のフレーム番号を前記開始位置と対にして、編集構成データ１５としてメモリ１３４に記録する(ステップＳ４０４)。
【００３９】
ＣＰＵ１３０は、オペレータがマウス１３６などから編集終了の指示を入力するまで、上記の処理を繰り返す。なお、２以上の動画データファイルについて１つの編集構成データ１５を作成できるように、編集構成データ１５において、各素材毎に開始・終了フレームだけでなく、対象となる動画データファイルのファイル名を記述する。
【００４０】
編集終了の指示があると(ステップＳ４０５)、ステップＳ４０６に進む。ステップＳ４０６において、ＣＰＵ１３０は、メモリ１３４の編集構成データファイル１５に記述された、各素材の開始位置(フレーム番号)と終了位置(フレーム番号)に基づき、動画データファイル４中の必要なＧＯＰのみを選択し、送出用動画データファイル４ａを生成する(ステップＳ４０６)。なお、これに併せて、編集構成データファイル１５、インデックスファイル１４のフレーム番号を修正した、送出用編集構成データ１５ａ、送出用インデックスファイル１４ａを生成する。
【００４１】
たとえば、図６ａに示すように、Ａ、Ｂ、Ｃ・・・のＧＯＰを有する動画データファイル４に対して編集構成データファイル１５が生成されたとする。なお、編集構成データファイル１５の「１０／１１５」は、素材が、フレーム番号１０で開始し、フレーム番号１１５で終了することを示している。動画データファイルの各ＧＯＰの上に示した数字は、フレーム番号である。たとえば、最初のＧＯＰであるＡは、フレーム０から１００までで構成されている。
【００４２】
ＣＰＵ１３０は、図６ｂに示すように、不要なＧＯＰであるＣ、Ｄを取り除き、Ａ、Ｂ、Ｅ、Ｆ、Ｇ、Ｈ・・・による送出用動画データファイル４ａを生成する。これにより、フレーム番号が変わるので、これにあわせて、編集構成データファイルのフレーム番号を変更し、送出用編集構成データファイルを生成する。図示は省略しているが、同様にして、送出用インデックスファイル１４ａを生成する。
【００４３】
次に、ＣＰＵ１３０は、上記のようにして生成した、送出用動画データファイル４ａ、送出用インデックスファイル１４ａ、送出用編集構成データファイル１５ａを、可搬性ハードディスク１０３に出力する(ステップＳ４０７)。
【００４４】
図７に、送出用編集構成データファイル１５ａの構成を示す。各素材毎に、動画データファイル名、開始位置、終了位置が記述されている。また、各素材は、送出したい順番に並べられている。
【００４５】
３．送出装置
図２Ｂに、送出装置をＣＰＵを用いて実現した場合のハードウエア構成を示す。図２Ｂにおいて、ＣＰＵ２３０には、ディスプレイ２３２、メモリ２３４、ハードディスク２０２、可搬性ハードディスク１０３、キーボード／マウス２３６、ＣＤ−ＲＯＭドライブ２３８が接続されている。キーボード／マウス２３６は、オペレータが操作を入力するためのものである。メモリ２３４は、ＣＰＵ２３０のワーク領域として使用される。
【００４６】
ハードディスク２０２には、WINDOWS(商標)などのオペレーティングシステム２４２、送出プログラム２９０などが記録されている。動画編集装置から運ばれてきた可搬性ハードディスク１０３には、送出用動画データファイル４ａ、送出用インデックスファイル１４ａ、送出用変種構成データファイル１５ａが記録されている。送出プログラム２９０は、オペレーティングシステム２４２と協働して、可搬性ハードディスク１０３に記録されている送出用編集構成データ１５ａ、送出用インデックスファイル１４ａに基づいて、動画データファイル４ａを読み出してデコードし送出する処理を行う。送出プログラム２９０は、ＣＤ−ＲＯＭ２４０に記録されていたものを、ＣＤ−ＲＯＭドライブ２３８を介してインストールしたものである。
【００４７】
なお、この実施形態では、可搬性ハードディスク１０３によって、出用動画データファイル４ａ、送出用インデックスファイル１４ａ、送出用編集構成データファイル１５ａを、送出装置に与えるようにしている。しかし、動画編集装置と送出装置とをネットワークなどで接続しておき、直接、動画編集装置が送出装置に与えるようにしてもよい。
【００４８】
図８、図９に、送出プログラム２９０のフローチャートを示す。ＣＰＵ２３０は、まず、指定された送出用編集構成データファイル１５ａを開く。同時に、これに関連づけられた送出用インデックスファイル１４ａ、送出用動画データファイル４ａを開く(ステップＳ５０１）。次に、送出用編集構成データファイル１５ａに記述された最初の素材について、開始位置（開始フレーム番号）を取得する。開始位置が時間などによって記述されている場合には、ＣＰＵ２３０は、これをフレーム番号に変換する。
【００４９】
次に、ＣＰＵ２３０は、図４に示す構造を有する送出用インデックスファイル１４ａを参照し、当該素材の開始フレーム番号が、いずれのＧＯＰに含まれるかを判断する(ステップＳ５０３)。つまり、ＣＰＵ２３０は、送出用インデックスファイル１４ａの、各ＧＯＰ情報の先頭フレーム番号、終了フレーム番号と、上記素材の開始フレーム番号とを比較し、素材の開始フレームがいずれのＧＯＰに含まれるかを判断する。素材の開始フレーム番号よりも大きな終了フレーム番号を持ち、かつ、素材の開始フレーム番号よりも小さな先頭フレーム番号を有するＧＯＰを特定する。この際、前述のように、インデックスファイル１４に記録されたクローズドＧＯＰか非クローズドＧＯＰかブロークンリンクかの情報に基づき、当該ＧＯＰの画像データを表示するために必要なＧＯＰも併せて特定する。
【００５０】
ＣＰＵ２３０は、上記特定したＧＯＰのＧＯＰ情報から、当該ＧＯＰの送出用動画データファイル４ａにおけるアクセス位置を取得する(ステップＳ５０４)。
【００５１】
続いて、ＣＰＵ２３０は、取得したアクセス位置に基づいて送出用動画データファイル４ａにアクセスし、ＧＯＰのデータを取得してデコードする。さらに、素材の開始フレーム番号のフレームを見いだすと、当該フレームから順次、通信回路２３９を介して、エンコーダ送信装置に与える(ステップＳ５０５)。
【００５２】
ＣＰＵ２３０は、送出用編集構成データファイル１５ａに記述された当該素材の終了位置までデコードし送出するまでこれを繰り返す。終了位置まで送出すれば(ステップＳ５０６)、ＣＰＵ２３０は、送出用編集構成データファイル１５ａに記述されたすべての素材を送出し終えたかどうかを判断する(ステップＳ５０７)。
【００５３】
未送出の素材が残っていれば、送出用編集構成データファイル１５ａの次の素材の開始位置を取得する(ステップＳ５０８)。次は、この素材について、ステップＳ５０３以下を実行して送出する。
【００５４】
このようにして、送出用編集構成データファイル１５ａに記述されたすべての素材を送出し終えると、処理を終了する。
【００５５】
上記に説明したように、編集の際に、動画データファイル４ａの圧縮を解いたものを編集したのちさらに圧縮するのではない。編集構成データファイル１５の記述によって、間接的に、動画データファイル４ａから素材を切り出し、連結するようにしている。したがって、編集による、動画の劣化を防ぐことができる。
【００５６】
また、インデックスファイル１４を設けることにより、所望のフレームへのアクセスを迅速にしている。したがって、圧縮された動画データファイル４ａに対して、迅速にアクセスすることができる。その結果、小さなファイルサイズにて、動画データファイル４ａを保存することができる。
【００５７】
上記実施形態では、送出用動画データファイル４ａ、送出用インデックスファイル１４ａ、送出用編集構成データァフィル１５ａを生成し、送出に使用している。しかし、動画データファイル４、インデックスファイル１４、編集構成データァフィル１５をそのまま使って、送出処理を行ってもよい。
【００５８】
４．異なるデータ形式
上記実施形態では、動画データファイル４が、エレメンタリーストリームである場合について説明した。動画データファイル４が、図１０に示すようなパケット化されたエレメンタリーストリームＰＥＳである場合にも適用することができる。この場合、図１１に示すようなインデックスファイル１４を用いればよい。アクセス位置として、ＧＯＰの先頭を含むＰＥＳパケットの記録位置（ＶＳスタートコードの先頭位置）を記述する。送出の際には、特定したＧＯＰに関して、ＰＥＳパケットの先頭位置を取得する。これに基づいて、動画データファイル４の当該ＰＥＳパケット以下にアクセスする。これらＰＥＳパケットに基づいて、ＧＯＰを復元する。その後は、上記実施形態と同じように処理することができる。
【００５９】
なお、動画データだけでなく音声データもパケット化し、動画パケットと音声パケットの双方を含むＰＳ(プログラムストリーム）を動画データファイル４とした場合も、動画パケットだけに注目すれば、上記と同じ処理をすることができる。
【００６０】
上記のＰＥＳ（ＰＳ）を、さらに、パケット化したＴＳを動画データファイル４として用いることもできる。この場合には、図１３に示すような、インデックスファイル１４を用いればよい。アクセス位置として、ＧＯＰの先頭を含むＰＥＳパケットの記録位置（ＶＳスタートコードの先頭位置）を含むＴＳパケットの先頭位置を記述する。送出の際には、特定したＧＯＰに関して、ＴＳパケットの先頭位置を取得する。これに基づいて、動画データファイル４の当該ＴＳパケット以下にアクセスする。これらＴＳパケットに基づいて、ＰＥＳを復元する。その後は、上記実施形態と同じように処理することができる。
【００６１】
５．インデックスファイルの作成
上記では、動画データファイル４に対応するインデックスファイル１４を用いて処理を行っている。このインデックスファイル１４は、インデックス生成プログラム４４（図２Ａ参照）によって、動画データファイル４に基づいて作成されたものである。
【００６２】
図１４、図１５に、インデックス生成プログラム４４のフローチャートを示す。まず、ＣＰＵ１３０は、ＧＯＰカウンタやフレーム数カウンタ等をクリアする。次に、ＣＰＵ１３０は、ステップＳ１において、ハードディスク２から動画データファイル４を先頭から読み出す。ステップＳ２において、動画データファイル４の末尾に到達したかどうかを判断する。末尾に到達していなければ、ＣＰＵ１３０はＧＯＰの先頭を探し出す。ＧＯＰの先頭には、図３に示すようにスタートコードが存在するのでこれを見いだす。なお、ＧＯＰのスタートコードは、"000001B8"によって開始されるので、これを検出することによりＧＯＰの先頭であることを判断することができる。
【００６３】
読み出した部分がＧＯＰの先頭でなければ(ステップＳ３)、ステップＳ１に戻って、さらに動画データファイル４を読み出す。ＧＯＰの先頭が見いだされれば(ステップＳ３)、ＧＯＰカウンタをインクリメントする(ステップＳ４）。次に、ＣＰＵ１３０は、ＧＯＰの直前にシーケンスヘッダＳＨがあるかどうかを判断する(ステップＳ５)。シーケンスヘッダＳＨの開始を示すスタートコードは、"000001B3"で始まるので、これにより検出が可能である。
【００６４】
シーケンスヘッダＳＨがあれば、ＣＰＵ１３０は、ＳＨヘッダのスタートコードの記録位置（動画データファイルの先頭から何バイト目にあるか(以下同じ)）を取得して、アクセス位置としてメモリ１３４に記録する（ステップＳ６）。直前にシーケンスヘッダＳＨがなければ、ＧＯＰのスタートコードの記録位置を取得して、アクセス位置としてメモリ１３４に記憶する(ステップＳ７）。
【００６５】
次に、ＣＰＵ１３０は、ＧＯＰのスタートコードに記述されているタイムコード（動画作成時に設定された時間情報）およびクローズドＧＯＰか非クローズドＧＯＰかブロークンリンクかの区別を取得し、メモリ１３４に記憶する(ステップＳ８)。当該ＧＯＰの画像データの全てが、前のＧＯＰの画像データを参照しなくとも復元できる場合はクローズドＧＯＰである旨、当該ＧＯＰの画像データの少なくとも一部が前のＧＯＰの画像データを参照しなければ復元できない場合は非クローズドＧＯＰである旨がスタートコード内に記録されている。さらに、非クローズドＧＯＰであったもの等について、先行するＧＯＰが削除されるなどの理由で、前のＧＯＰの画像データを参照しても復元できない画像データがある場合には、ブロークンリンクである旨がスタートコード内に記録されている。ＣＰＵ１３０は、これを取得してメモリ３４に記録する。
【００６６】
次に、ＣＰＵ１３０は、動画データファイル４を読み出して当該ＧＯＰのデータを取得する(ステップＳ９）。取得したＧＯＰのデータを解析し、フレーム数カウンタによりフレーム数をカウントする(ステップＳ１０）。ＣＰＵ１３０は、次のようにしてＧＯＰを解析し、当該ＧＯＰに含まれるフレームの数を取得する。
【００６７】
ＣＰＵ１３０は、ＧＯＰの先頭から順にピクチャースタートコード(00000100)を見いだす。ピクチャースタートコードは、Ｉピクチャー、Ｂピクチャー、Ｐピクチャーの先頭に設けられている。したがって、ピクチャースタートコードを検出することにより、Ｉピクチャー、Ｂピクチャー、Ｐピクチャーの存在を知ることができる。
【００６８】
たとえば、Ｉピクチャー、Ｂピクチャー、Ｐピクチャーがそれぞれ１つのフレームに対応している場合には、ピクチャースタートコードが１つで、１つのフレームに対応する。
【００６９】
また、Ｉピクチャー（Ｂピクチャー、Ｐピクチャー）が２つで1フレームの画像を構成している場合もある。このような場合には、ピクチャースタートコードが２つで、1つのフレームに対応することになる。
【００７０】
図３に示すように、ピクチャースタートコードに続いて、Ｉピクチャー、Ｂピクチャー、Ｐピクチャーのいずれであるかを示す「画像種類」のデータと、当該１つのピクチャーで1フレームを構築するか、２つのピクチャーで1フレームを構築するかの「区別」データが記録されている。ＣＰＵ１３０は、この「区別」データを参照し、１つのピクチャースタートコードで1つのフレームを認識するか、つのピクチャースタートコードで1つのフレームを認識するかを決定する。
【００７１】
一方、フレーム数カウンタは、動画の最初のフレームからのフレーム数をカウントするものである。なお、ＣＰＵ１３０は、当該ＧＯＰの最初のフレーム番号（フレー数カウンタの計数値）を先頭フレーム番号としてメモリ１３４に記録する。
【００７２】
次に、ＣＰＵ１３０は、当該ＧＯＰの最後までフレームを解析したかどうかを判断する(ステップＳ１１)。なお、この実施形態では、ＣＰＵ１３０は、次のＧＯＰが現れたかどうかによって、最後までフレームを解析したかどうかを判断するようにしている。最後でなければ、ステップＳ９以下を繰り返し実行する。ＧＯＰの最後まで復元すれば、その時点のフレーム数カウンタの計数値を最終フレーム番号としてメモリ１３４に記憶する(ステップＳ１２）。
【００７３】
次に、ＣＰＵ１３０は、メモリ１３４の記憶内容を、インデックスファイルに出力する(ステップＳ１３）。
【００７４】
図４に、インデックスファイルの構造を示す。総ＧＯＰ数、総フレーム数は、動画ファイルのすべてのＧＯＰについての処理が終了してから記録される。ここでは、ＧＯＰのＩＤ（図ではＧＯＰ１として示されている）、アクセス位置、先頭フレーム番号、最終フレーム番号、タイムコード、種類(クローズドＧＯＰかブロークンリンクか）が、メモリ１３４の記録内容に基づいて記録される。なお、ＧＯＰのＩＤは、ＧＯＰを特定するために各ＧＯＰに付した連番である。
【００７５】
次に、ＣＰＵ１３０は、ステップＳ１に戻り、次のＧＯＰについて同様の処理を行う。これにより、図４のＧＯＰ２について、アクセス位置、先頭フレーム番号、最終フレーム番号、タイムコード、種類が記録される。
【００７６】
この処理を繰り返し動画ファイルの最後に到達すると(ステップＳ２)、ＣＰＵ１３０は、総フレーム数、総ＧＯＰ数をインデックスファイル１４に記録する(ステップＳ１５)。このようにしてインデックスファイル１４が生成される。
【００７７】
なお、この実施形態では、動画ファイルと当該動画ファイルについて作成されたインデックスファイルとを対応づけるために、両ファイルのファイル名を同一にし、拡張子を異ならせるようにしている。たとえば、動画ファイルがaaa.mpgである場合には、インデックスファイルはaaa.imvとされる。これにより、同一ファイル名の動画ファイルとインデックスファイルが関連づけられていることが容易に判別できる。
【００７８】
上記実施形態では、動画データファイル４がエレメンタリーストリーム（ＥＳ）の形式である場合について説明した。動画データファイル４としては、図１０に示すように、エレメンタリーストリームをパケット化したＰＥＳの形式も存在する。ＰＥＳの各パケットには、ビデオストリームスタートコードが付され、ＥＳを細分化したデータが内容として記述されている。たとえば、パケットＰ１は、ＥＳのαの部分のデータを記録している。また、パケットＰ２は、ＥＳのβの部分のデータを記録している。
【００７９】
このようなＰＥＳ形式の動画データファイル４についてインデックスファイルを生成するプログラムのフローチャートを図１６、図１７に示す。図１４、図１５と同様のステップについては、同一の符号を付している。
【００８０】
ＣＰＵ１３０は、ＧＯＰの先頭であるかどうかを判断するために、まず、パケットを解く必要がある。したがって、ステップＳ３の前に、パケットを解くステップＳ２５を実行するようにしている。
【００８１】
図１４においては、ＳＨまたはＧＯＰのスタートコードの記録位置を取得してインデックスファイルに記録するようにしていた（ステップＳ６、Ｓ７）。しかし、図１６では、ＳＨまたはＧＯＰのスタートコードを含むパケットのビデオストリームスタートコードの記録位置を取得してインデックスファイルに記録するようにしている(ステップＳ６５、Ｓ７５）。たとえば、図１０のＥＳのＳＨを見いだすと、これを含むパケットＰ２の先頭位置をアクセス位置として記録する。このようにパケットのスタートコードの記録位置をインデックスファイルに記録することにより、編集時にパケットを解かなくとも、所望のフレームを得るためにどのパケットにアクセスすればよいかを知ることができる。
【００８２】
ステップＳ８５においては、ＳＨまたはＧＯＰのスタートコードを含むパケットのスタートコード中に記録されているＰＴＳ(時間情報)を取得して、インデックスファイルに記録するようにしている。
【００８３】
また、ステップＳ１０においてフレーム数をカウントする前に、パケットを解いてＧＯＰのデータを取得する処理を行っている(ステップＳ９５)。
【００８４】
上記の処理によって生成されたインデックスファイルのデータ構造を、図１１に示す。基本的には図４と同様であるが、アクセス位置としてパケットの位置が記録されている点が異なっている。
【００８５】
なお、音声データのＰＥＳと動画データのＰＥＳ双方を含むＰＳ(プログラムストリーム)についても、動画データのＰＥＳだけのためのインデックスファイルと上記と同様にして作成することができる。
【００８６】
上記実施形態では、動画データファイル４がパケット化されたエレメンタリーストリーム（ＰＥＳ）の形式である場合について説明した。動画データファイル４としては、図１２に示すように、ＰＥＳをさらにパケット化したトランスポートストリーム（ＴＳ）の形式も存在する。ＴＳの各パケットには、パケットＩＤが付され、ＰＥＳを細分化したデータが内容として記述されている。
【００８７】
このようなＰＥＳ形式の動画データファイル４についてインデックスファイルを生成するプログラムのフローチャートを図１８、図１９に示す。図１４、図１５、図１６、図１７と同様のステップについては、同一の符号を付している。
【００８８】
ＣＰＵ１３０は、ＧＯＰの先頭であるかどうかを判断するために、まず、ＴＳのパケットを解いてＰＥＳのパケットを得て（ステップＳ２５５）、さらに、ＰＥＳのパケットを解く必要がある(ステップＳ２５)。したがって、ステップＳ３の前に、ＴＳパケットを解くステップＳ２５５、ＰＥＳパケットを解くステップＳ２５を実行するようにしている。
【００８９】
図１６においては、ＳＨまたはＧＯＰのスタートコードを含むＰＥＳパケットのビデオストリームスタートコードの記録位置を取得してインデックスファイルに記録するようにしていた(ステップＳ６５、Ｓ７５）。しかし、図１８では、ＳＨまたはＧＯＰのスタートコードを含むＰＥＳパケットのビデオストリームスタートコードを含むＴＳパケットの記録位置を取得してインデックスファイルに記録するようにしている(ステップＳ６５５、Ｓ７５５)。たとえば、図１２のＥＳのＳＨを見いだすと、これを含むＰＥＳパケットＰ２の先頭位置を見いだし、さらに、この先頭位置を含むＴＳパケットγの先頭位置をアクセス位置として記録する。このようにＴＳパケットのスタートコードの記録位置をインデックスファイルに記録することにより、編集時にパケットを解かなくとも、所望のフレームを得るためにどのＴＳパケットにアクセスすればよいかを知ることができる。
【００９０】
ステップＳ８５５においては、アクセス位置のＴＳパケット内のＰＥＳに記録されているＰＴＳ(時間情報)を取得して、インデックスファイルに記録するようにしている。
【００９１】
また、ステップＳ１０においてフレーム数をカウントする前に、ＴＳパケットを解いてＰＥＳパケットを得て、さらにＰＥＳパケットを解いてＧＯＰのデータを取得する処理を行っている(ステップＳ９５５、Ｓ９５)。
【００９２】
上記の処理によって生成されたインデックスファイルのデータ構造を、図１３に示す。基本的には図４、図１１と同様であるが、アクセス位置としてＴＳパケットの位置が記録されている点が異なっている。
【００９３】
なお、上記の各実施形態では、動画データファイル４がＥＳ、ＰＥＳ（ＰＳ）、ＴＳである場合のそれぞれについて説明した。しかし、図２０に示すように、取得した動画データファイル４が上記のいずれに該当するかを判断し(ステップＳ５０)、それぞれ適切な処理を選択してインデックスファイルを作成するようにしてもよい。
【００９４】
６．他の実施形態
上記実施形態では、図４、図１１、図１３に示すように、インデックスファイルにおいて、各ＧＯＰごとに、先頭フレームおよび最終フレームを代表フレームとし、先頭フレーム番号および最終フレーム番号を記録するようにしている。しかし、先頭フレームを代表フレームとし、先頭フレーム番号を記録するようにしてもよい。この場合、最終フレーム番号は記録されないが、ＣＰＵ１３０は、ステップＳ４０２、Ｓ５０３において、時系列に並んだ次のＧＯＰの先頭フレーム番号を取得すれば、当該ＧＯＰに含まれるフレーム番号の範囲を認識することができる。
【００９５】
上記実施形態では、ＭＰＥＧ形式のデータについて説明したが、双方向予測符号化を用いる他の圧縮形式の動画データについても同様に適用することができる。
【００９６】
上記実施形態では、グループデータやパケットの代表点として、先頭位置を用いている。しかし、アクセスを容易にできる位置であれば、どの場所を代表点として用いてもよい。たとえば、動画データファイルの後方からアクセする場合には、終了位置を代表点として用いるとよい。
【００９７】
上記実施形態では、ＣＰＵを用いて各機能を達成しているが、その全部または一部をハードウエアによって構成してもよい。
【図面の簡単な説明】
【００９８】
【図１】この発明の一実施形態による編集送出装置のブロック図である。
【図２】編集送出装置のハードウエア構成を示す図である。
【図３】動画データファイル（ＥＳ）の構成を示す図である。
【図４】インデックスファイルの構成を示す図である。
【図５】編集プログラムのフローチャートである。
【図６ａ】編集構成データファイルと動画データファイルとの関係を示す図である。
【図６ｂ】送出用編集構成データファイルと送出用動画データファイルとの関係を示す図である。
【図７】編集構成データファイルの構造を示す図である。
【図８】送出プログラムのフローチャートである。
【図９】送出プログラムのフローチャートである。
【図１０】動画データファイル（ＰＥＳ）の構成を示す図である。
【図１１】インデックスファイルの構成を示す図である。
【図１２】動画データファイル（ＴＳ）の構成を示す図である。
【図１３】インデックスファイルの構成を示す図である。
【図１４】インデックスファイル生成プログラムのフローチャートである。
【図１５】インデックスファイル生成プログラムのフローチャートである。
【図１６】インデックスファイル生成プログラムのフローチャートである。
【図１７】インデックスファイル生成プログラムのフローチャートである。
【図１８】インデックスファイル生成プログラムのフローチャートである。
【図１９】インデックスファイル生成プログラムのフローチャートである。
【図２０】インデックスファイル生成プログラムのフローチャートである。
【符号の説明】
【００９９】
２・・・記録部
４・・・動画データファイル
１２・・・編集手段
１４・・・インデックスファイル
１６・・・送出手段
１７・・・グループ情報特定手段
【図１】
2006279148.tif 000003
【図２】
2006279148.tif 000004
【図３】
2006279148.tif 000005
【図４】
2006279148.tif 000006
【図５】
2006279148.tif 000007
【図６ａ】
2006279148.tif 000008
【図６ｂ】
2006279148.tif 000009
【図７】
2006279148.tif 000010
【図８】
2006279148.tif 000011
【図９】
2006279148.tif 000012
【図１０】
2006279148.tif 000013
【図１１】
2006279148.tif 000014
【図１２】
2006279148.tif 000015
【図１３】
2006279148.tif 000016
【図１４】
2006279148.tif 000017
【図１５】
2006279148.tif 000018
【図１６】
2006279148.tif 000019
【図１７】
2006279148.tif 000020
【図１８】
2006279148.tif 000021
【図１９】
2006279148.tif 000022
【図２０】
2006279148.tif 000023