(57)【要約】【課題】異なるレイヤ間のオブジェクトを吸着移動することが可能なコンテンツ編集生成システムを提供する。【解決手段】コンテンツ編集生成システム１を、ソースコンテンツを記憶するソースコンテンツファイル２４と、ソースコンテンツが配置されるステージウィンドウ３２の属性情報を記憶するステージオブジェクト２２２と、ステージウィンドウ３２上のソースコンテンツの属性情報をステージオブジェクト２２２と関連付けて記憶するビューオブジェクト２２１と、ディスプレイ装置３と、操作手段と、ソースコンテンツの再生期間をコンテンツクリップ３３１としてトラック３３ａ上で管理し、コンテンツクリップ３３１に対する操作に応じて再生期間を変更するオーサリング機能２１と、操作手段によるコンテンツクリップに対する操作に応じて、当該コンテンツクリップのソースコンテンツの再生期間を変更するコンテンツ吸着部２２３とから構成する。【選択図】図１
2011244361.tif 000002
【特許請求の範囲】
【請求項１】
１以上のソースコンテンツを編集してマルチメディアコンテンツを生成するためのコンテンツクリップ吸着機能を有するコンテンツ編集生成システムであって、
前記ソースコンテンツを記憶するソースコンテンツ記憶手段と、
前記ソースコンテンツが配置されるステージウィンドウの属性情報をステージオブジェクトとして記憶するステージオブジェクト記憶手段と、
前記ステージウィンドウに配置されている前記ソースコンテンツの前記マルチメディアコンテンツ内における再生開始時刻及び再生終了時刻からなる再生期間を含む属性情報を前記ステージオブジェクトに関連付けられたビューオブジェクトとして記憶するビューオブジェクト記憶手段と、
表示手段と、
操作手段と、
前記マルチメディアコンテンツの再生期間に対応した少なくとも１つ以上のトラックを有し、前記ビューオブジェクト毎に前記トラックを割り当て、前記マルチメディアコンテンツにおける当該ビューオブジェクトに対応する前記ソースコンテンツの前記再生期間をコンテンツクリップとして前記トラック上に表示したタイムラインウィンドウを前記表示手段に表示するとともに、前記操作手段による前記コンテンツクリップに対する操作に応じて前記再生期間を変更するタイムライン管理手段と、
前記操作手段による前記コンテンツクリップに対する操作に応じて、当該コンテンツクリップとして表示されている前記ソースコンテンツの前記再生期間を変更する再生期間変更手段と、を有し、
前記再生期間変更手段は、
前記操作手段により前記コンテンツクリップのいずれかが選択されて前記トラックに沿って移動されたときに、前記操作手段により選択された前記コンテンツクリップに対応する前記ソースコンテンツの前記再生開始時刻又は前記再生終了時刻を、前記タイムラインウィンドウにおける、当該選択されたコンテンツクリップ以外の前記コンテンツクリップに関連付けられている前記ソースコンテンツの前記再生開始時刻及び前記再生終了時刻のうち、最も近い前記再生開始時刻若しくは前記再生終了時刻に一致するように変更することを特徴とするコンテンツ編集生成システム。
【請求項２】
前記再生期間変更手段は、
前記操作手段により選択された前記コンテンツクリップ以外の前記コンテンツクリップの前記再生期間を、前記再生開始時刻及び前記再生終了時刻毎に取り出して時間順にソートした開始時刻管理用配列及び終了時刻管理用配列を生成するステップと、
前記操作手段により選択されて変更された前記コンテンツクリップの前記再生開始時刻及び前記再生終了時刻の前記開始時刻管理用配列及び前記終了時刻管理用配列における位置を決定するステップと、
前記操作手段により選択された前記コンテンツクリップの前記開始時刻管理用配列及び前記終了時刻管理用配列での位置において、当該位置に近い前記コンテンツクリップとの時間差を算出し、当該時間差が所定の閾値以内にある最も小さな前記コンテンツクリップの前記再生開始位置若しくは前記再生終了位置に、前記操作手段により選択された前記コンテンツクリップの前記再生開始位置若しくは前記再生終了位置を一致させるように変更するステップと、を有することを特徴とする請求項１に記載のコンテンツ編集生成システム。
【請求項３】
前記再生期間変更手段は、
前記操作手段により選択された前記コンテンツクリップの前記再生開始時刻のみを移動させて、当該再生開始時刻を他のコンテンツクリップの前記再生開始時刻または前記再生終了時刻に一致させ、選択された前記コンテンツクリップの前記再生期間を変更するか、
または、前記操作手段により前記コンテンツクリップの前記再生終了時刻のみを移動させて、当該再生終了時刻を他のコンテンツクリップの前記再生開始時刻または前記再生終了時刻に一致させ、選択された前記コンテンツクリップの前記再生期間を変更するか、
若しくは、選択された前記コンテンツクリップ全体を移動させて、当該コンテンツクリップの前記再生開始時刻または前記再生終了時刻を、他のコンテンツクリップの前記再生開始時刻または前記再生終了時刻に一致させ、選択された前記コンテンツクリップの前記再生期間は変更しないよう構成された請求項１または２に記載のコンテンツ編集生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画や静止画等を編集して同期型マルチメディアコンテンツを生成するコンテンツ編集生成システムに関する。
【背景技術】
【０００２】
動画や音声等の時間的経過のあるメディア（タイムベースドメディア）と文字（テキスト）情報や静止画等の時間的経過のないメディア（非タイムベースドメディア）とを編集により一体にした同期型マルチメディアコンテンツを生成するオーサリングツールが知られている（例えば、特許文献１参照）。このようなオーサリングツールでは、編集対象となる動画等のコンテンツ（これを「ソースコンテンツ」と呼ぶ）を一旦編集用のファイル領域（たとえば、「ビン」と呼ばれる領域）にコピーし、または、オーサリングツールが実行されているメモリ上にコピーして編集が行われる。
【０００３】
また、オーサリングツールでは、ステージウィンドウに貼り付けられた複数のコンテンツ（これを「表示オブジェクト」と呼ぶ）の実行時刻を、タイムラインウィンドウにて管理する方法が知られている。このタイムラインウィンドウは、現在編集しているマルチメディアコンテンツ内における時刻を表示するものであり、ステージウィンドウに貼り付けられた表示オブジェクトを、複数のトラックで管理している。そして、複数の表示オブジェクト毎に、トラックにコンテンツクリップと呼ばれる当該表示オブジェクト毎の実行時刻（画像等の場合は表示開始時刻と終了開始時刻）を表すオブジェクトを表示して管理している。ここで、１つのトラック上に複数のコンテンツクリップが存在している場合、トラック上でコンテンツクリップの一方をマウスなどでドラッグして他方のコンテンツクリップに近づけることで、２つのコンテンツクリップを吸着させる（一方の開始時刻又は終了時刻を他方の開始時刻又は終了時刻に一致させる）ことができる。この吸着操作により、実行時刻の変更やオブジェクト間での途切れのない円滑な再生を行おうとしていた。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２００４−５３２４９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の技術では、上述したように同一のトラックに存在するコンテンツクリップを互いに吸着させて実行時刻を変更することはできたが、異なるトラックに存在するコンテンツクリップ同士を吸着させることはできなかった。例えば、編集者が他のトラックのコンテンツクリップを移動させて位置合わせを行うことで先端や終端（すなわち、開始又は終了時刻）を一致させることができるが、目分量で位置合わせするしかないため、完全に一致させることが困難であった。そのため、再生開始時刻や再生終了時刻が微妙にずれて、表示オブジェクトの円滑な再生ができないという課題があった。
【０００６】
本発明はこのような課題に鑑みてなされたものであり、同期型マルチメディアコンテンツの生成において、同一トラックに配置されたコンテンツクリップを互いに吸着移動するだけでなく、異なるトラックに配置されたコンテンツクリップをも互いに吸着移動することを可能とすることで、トラックの違いに影響されることなく、ソースコンテンツの編集を効率的に行うことができ、かつ、吸着後の表示オブジェクトの円滑な再生を行うことのできるコンテンツ編集生成システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
前記課題を解決するために、本発明に係るコンテンツ編集生成システムは、１以上のソースコンテンツを編集してマルチメディアコンテンツを生成するためのコンテンツクリップ吸着機能を有するコンテンツ編集生成システムであって、ソースコンテンツを記憶するソースコンテンツ記憶手段と、ソースコンテンツが配置されるステージウィンドウの属性情報をステージオブジェクトとして記憶するステージオブジェクト記憶手段と、ステージウィンドウに配置されているソースコンテンツのマルチメディアコンテンツ内における再生開始時刻及び再生終了時刻からなる再生期間を含む属性情報を前記ステージオブジェクトに関連付けられたビューオブジェクトとして記憶するビューオブジェクト記憶手段と、表示手段と、操作手段と、マルチメディアコンテンツの再生期間に対応した少なくとも１つ以上のトラックを有し、ビューオブジェクト毎にトラックを割り当て、マルチメディアコンテンツにおける当該ビューオブジェクトに対応するソースコンテンツの再生期間をコンテンツクリップとしてトラック上に表示したタイムラインウィンドウを表示手段に表示するとともに、操作手段によるコンテンツクリップに対する操作に応じて再生期間を変更するタイムライン管理手段と、操作手段によるコンテンツクリップに対する操作に応じて、当該コンテンツクリップとして表示されているソースコンテンツの再生期間を変更する再生期間変更手段と、を有する。そして、このようなコンテンツ編集生成システムにおける再生期間変更手段は、操作手段によりコンテンツクリップのいずれかが選択されてトラックに沿って移動されたときに、操作手段により選択されたコンテンツクリップに対応するソースコンテンツの再生開始時刻又は再生終了時刻を、タイムラインウィンドウにおける、当該選択されたコンテンツクリップ以外のコンテンツクリップに関連付けられているソースコンテンツの再生開始時刻及び再生終了時刻のうち、最も近い再生開始時刻若しくは再生終了時刻に一致するように変更することを特徴とする。
【０００８】
また、このような本発明に係るコンテンツ編集生成システムにおいて、再生期間変更手段は、操作手段により選択されたコンテンツクリップ以外のコンテンツクリップの再生期間を、再生開始時刻及び再生終了時刻毎に取り出して時間順にソートした開始時刻管理用配列及び終了時刻管理用配列を生成するステップと、操作手段により選択されて変更されたコンテンツクリップの再生開始時刻及び再生終了時刻の開始時刻管理用配列及び終了時刻管理用配列における位置を決定するステップと、操作手段により選択されたコンテンツクリップの開始時刻管理用配列及び終了時刻管理用配列での位置において、当該位置に近いコンテンツクリップとの時間差を算出し、当該時間差が所定の閾値以内にある最も小さなコンテンツクリップの再生開始位置若しくは再生終了位置に、操作手段により選択されたコンテンツクリップの再生開始位置若しくは再生終了位置を一致させるように変更するステップと、を有することが好ましい。
【０００９】
また、このような本発明に係るコンテンツ編集生成システムにおいて、再生期間変更手段は、操作手段により選択されたコンテンツクリップの再生開始時刻のみを移動させて、当該再生開始時刻を他のコンテンツクリップの再生開始時刻または再生終了時刻に一致させ、選択されたコンテンツクリップの再生期間を変更するか、または、操作手段によりコンテンツクリップの再生終了時刻のみを移動させて、当該再生終了時刻を他のコンテンツクリップの再生開始時刻または再生終了時刻に一致させ、選択されたコンテンツクリップの再生期間を変更するか、若しくは、選択されたコンテンツクリップ全体を移動させて、当該コンテンツクリップの再生開始時刻または再生終了時刻を、他のコンテンツクリップの再生開始時刻または再生終了時刻に一致させ、選択されたコンテンツクリップの再生期間は変更しないよう構成されることが好ましい。
【発明の効果】
【００１０】
本発明に係るコンテンツ編集生成システムを以上のように構成すると、同期型マルチメディアコンテンツの生成において、同一トラックに配置されたコンテンツクリップを互いに吸着移動するだけでなく、異なるトラックに貼り付けられたコンテンツクリップをも互いに吸着移動することを可能とすることで、トラックの違いに影響されることなく、ソースコンテンツの編集を効率的に行うことができ、かつ、吸着後の表示オブジェクトの円滑な再生を行うことが可能となる。そして、異なるレイヤ間のオブジェクトを同時に再生し、同時に終了し、又は、連続するオブジェクト同士を途切れや重複することなく円滑に再生することができる。
【００１１】
また、ステージ上において実際に生成されるマルチメディアコンテンツ（同期型マルチメディアコンテンツ）を認識しながら編集することができ、また、トラックに配置することができるコンテンツの種類には制限がないので、ソースコンテンツの編集が容易になる。また、ソースコンテンツを直接編集せずに、ビューオブジェクト（論理的なビュー情報）を介して管理しているため、直接編集する場合に比べてこのシステムが稼働するコンピュータの資源の消費を少なくすることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明に係るコンテンツ編集生成システムの構成を示すブロック図である。
【図２】オーサリング機能のユーザインタフェースを示す説明図である。
【図３】ソースコンテンツファイル、ビューオブジェクト、並びに、表示オブジェクト及びコンテンツクリップの関係を示すブロック図である。
【図４】ビューオブジェクトの構造を示すデータ構造図であって、（ａ）は時間的経過のあるコンテンツに対するデータ構造図であり、（ｂ）は時間的経過のないコンテンツに対するデータ構造図である。
【図５】タイムラインウィンドウのトラックの位置とステージウィンドウのレイヤとの関係を説明する説明図であって、（ａ）は、入れ替える前であり、（ｂ）は、入れ替えた後である。
【図６】異なるトラックに存在するコンテンツクリップ同士を吸着する様子を説明するための説明図であって、（ａ）はコンテンツクリップの先端を他のコンテンツクリップの先端に吸着移動させた例を示し、（ｂ）はコンテンツクリップの終端を他のコンテンツクリップの終端に吸着移動させた例を示す。
【図７】異なるトラックに存在するコンテンツクリップ同士を吸着する様子を説明するための説明図であって、（ａ）はコンテンツクリップの先端を他のコンテンツクリップ終端に吸着移動させた例を示し、（ｂ）はコンテンツクリップの終端を他のコンテンツクリップの先端に吸着移動させた例を示す。
【図８】オーサリング機能を構成する詳細機能を説明するためのブロック図である。
【図９】本実施形態のコンテンツ編集生成システムの処理を説明するためのフローチャートである。
【図１０】実行時刻管理テーブルの構造を示すデータ構造図であって、（ａ）は開始時刻管理用配列のデータ構造図であり、（ｂ）は終了時刻管理用配列のデータ構造であり、（ｃ）は配置済みコンテンツ管理テーブルのデータ構造であり、（ｄ）は移動対象コンテンツ管理テーブルのデータ構造である。
【図１１】配置済みコンテンツの再生開始時刻及び再生終了時刻を、開始時刻管理配列及び終了時刻管理用配列にそれぞれ記録し、ソートした状態を説明するための説明図である。
【図１２】移動対象コンテンツの開始時刻及び再生終了時刻の挿入可能位置を、開始時刻管理用配列及び終了時刻管理用配列内で検索している状態を説明するための説明図である。
【図１３】移動対象コンテンツの再生開始時刻又は再生終了時刻と、配置済みオブジェクトの再生終了時刻又は再生開始時刻とを比較し、移動対象コンテンツの再生開始時刻又は再生終了時刻を補正する工程を説明するための説明図である。
【発明を実施するための形態】
【００１３】
以下、本発明の好ましい実施形態について図面を参照して説明する。まず、本発明に係るコンテンツ編集生成システム１の構成について図１及び図２を用いて説明する。このコンテンツ編集生成システム１は、図１に示すように、ディスプレイ装置３を有したコンピュータ２で実行され、このコンピュータ２に接続されたマウスやキーボード等の操作手段（図示せず）を用いて、表示手段としてのディスプレイ装置３をインタフェースとして同期型マルチメディアコンテンツを編集するオーサリング機能２１、編集しているコンテンツの情報を管理するデータマネージャ機能２２、及び、このようにして編集したコンテンツ（編集された状態を「編集済みコンテンツ」と呼ぶ）を、最終的に利用者に提供可能なコンテンツ（すなわち、上述の同期型マルチメディアコンテンツ）として生成するパブリッシャ機能２３から構成される。なお、同期型マルチメディアコンテンツを生成するための元になるデータ（動画ファイルや静止画ファイル等）はソースコンテンツファイル２４として、コンピュータ２が有するハードディスク等の記憶装置４に予め記憶されている。なお、ハードディスクに記憶するか、一時的にメモリ等に記憶するかは、ファイルやテーブルの用途に応じて適宜選択することが好ましい。
【００１４】
オーサリング機能２１により、ディスプレイ装置３に表示されるユーザインタフェースは、図２に示すように、メニューウィンドウ３１、ステージウィンドウ３２、タイムラインウィンドウ３３、プロパティウィンドウ３４、及び、スコープウィンドウ３５から構成される。メニューウィンドウ３１は、編集者がコンテンツの編集及び生成を行うための操作を選択するためのものであり、コンテンツ編集生成システム１全体の動作を制御する役割を有する。ステージウィンドウ３２は、編集者によりソースコンテンツが配置され、マルチメディアコンテンツの編集及び生成を行うための操作が行われるものである。また、タイムラインウィンドウ３３は、複数のトラック３３ａを有して構成されており、ステージウィンドウ３２に貼り付けられた複数の表示オブジェクト３２１毎にトラック３３ａにコンテンツクリップ３３１を割り当てて管理し、その表示オブジェクト３２１の実行時刻（画像の場合は表示開始時刻であり、音声の場合は再生開始時刻であって、このタイムラインウィンドウ３３に割り当てられた編集済みコンテンツの再生開始時刻を基準とした相対的な開始及び再生終了時刻）を設定・表示するものである。
【００１５】
ここで、この実施形態に係るコンテンツ編集生成システム１におけるデータの管理方法について図３を用いて説明する。このコンテンツ編集生成システム１においては、ステージウィンドウ３２に配置された表示オブジェクト３２１は、ソースコンテンツファイル２４を直接編集して管理するのではなく、データマネージャ機能２２内で生成されるビューオブジェクト２２１を介して管理される。すなわち、データマネージャ機能２２において、ステージウィンドウ３２に対してこのステージウィンドウ３２の属性情報を管理するステージオブジェクト２２２を生成し、ステージウィンドウ３２に貼り付けられた表示オブジェクト３２１の属性情報を、それぞれ、ステージオブジェクト２２２に対応したビューオブジェクト２２１として管理する。また、コンテンツ編集生成システム１は、タイムラインウィンドウ３３のトラック３３ａに割り当てられたコンテンツクリップ３３１とビューオブジェクト２２１とを対応付けて管理する。また、コンテンツ編集生成システム１は、ステージウィンドウ３２に配置された表示オブジェクト３２１を、後述するスコープ２２３に対応付けて管理する。
【００１６】
例えば、表示オブジェクト３２１が動画ファイルである場合、この動画ファイルの属性情報を管理するビューオブジェクト２２１のデータ構造は、図４（ａ）に示すように、このビューオブジェクト２２１を識別するためのオブジェクトＩＤが記憶されるオブジェクトＩＤフィールド２２１ａ、ソースコンテンツファイル２４の格納場所（例えば、ファイル名）が記憶されるファイル名フィールド２２１ｂ、ステージウィンドウ３２上の表示オブジェクト３２１の当該ステージウィンドウ３２を基準とした相対的なＸＹ座標が記憶されるＸＹ座標フィールド２２１ｃ、ステージウィンドウ３２におけるこの表示オブジェクト３２１の表示サイズが記憶される幅高さフィールド２２１ｄ、編集済みコンテンツ内における表示オブジェクト３２１の相対的な再生開始時刻（編集済みコンテンツの起点若しくは後述するスコープの起点からの相対的な時刻）が記憶される再生開始時刻フィールド２２１ｅ、及び、再生終了時刻が記憶される再生終了時刻フィールド２２１ｆ、ソースコンテンツファイル２４のファイルタイプが記憶されるファイルタイプフィールド２２１ｇ、この表示オブジェクト３２１に対応するソースコンテンツファイル２４内のどの時刻（ソースコンテンツファイル２４の最初の時刻からの相対時刻）から動画を再生するかが記憶されるファイル内開始時刻フィールド２２１ｈ、後述するレイヤ番号が記憶されるレイヤ番号フィールド２２１ｉ、並びに、どのスコープ２２３に属するかを示すスコープＩＤが記憶されるスコープＩＤフィールド２２１ｊから構成される。
【００１７】
なお、本実施形態に係るコンテンツ編集生成システム１では、動画以外にも、音声データ等の時間的経過のあるコンテンツや、テキスト文字データ、静止画データ、図形等の時間的経過のないデータも、動画データと同様に扱うことができ、時間的経過のあるコンテンツは上述の動画と同じデータ構造であり（但し、音声データの場合は、ステージウィンドウ３２上に表示されないため、ＸＹ座標フィールドや幅と高さフィールド等は有しない）、時間的経過のないコンテンツは、ファイル内開始時刻フィールド２２１ｈを除いて同様のデータ構造を有している。例えば、テキスト文字データを管理する場合は、図４（ｂ）に示すように、テキスト情報フィールド２２１ｂ′にそのテキスト情報を記憶し、フォントタイプフィールド２２１ｇ′にそのテキスト情報を表示するときのフォントの情報が記憶される。このとき、テキストはその情報をソースコンテンツファイル２４として管理するように構成しても良い。また、動画コンテンツのように再生の開始時刻及び再生終了時刻を記憶する代わりに、表示開始時刻フィールド２２１ｅ′及び表示時間フィールド２２１ｆ′を設け、そのテキスト文字情報の表示開始時刻及び表示し続ける時間（の長さ）を管理するように構成することも可能である。さらに、図形データをビューオブジェクト２２１として管理するときは、所定の形状を有した図形を定義して予めソースコンテンツファイル２４として登録しておき、この図形を識別情報（番号等）で選択可能にして表示するように構成することもできる。
【００１８】
このように、データマネージャ機能２２においては、ステージウィンドウ３２に表示される表示オブジェクト３２１を、ソースコンテンツファイル２４に対応したビューオブジェクト２２１で管理しているため、例えば、一つのソースコンテンツファイル２４（特に、動画や音声）に対しては、一つのビューオブジェクト２２１を定義することもできるし、２つのビューオブジェクト２２１を定義することもできる。このように、複数のビューオブジェクト２２１を定義しても、ソースコンテンツファイル２４は共通に使用しているため、それぞれの表示オブジェクト３２１に対してそれぞれ実体を持つ（ソースコンテンツファイル２４のコピーを持つ）場合に比べてコンピュータ２におけるメモリやハードディスク等の記憶領域の消費を少なくすることができる。もちろん、複数のビューオブジェクト２２１を定義した場合に、ソースコンテンツファイル２４においては、それぞれのビューオブジェクト２２１のファイル内の時刻に重なりがあるように定義されていても良い。
【００１９】
なお、ビューオブジェクト２２１は、動画等の時間を基準とする（時間経過のある）コンテンツに対しては、そのソースコンテンツファイル２４においてどの時点から再生するかを記憶するファイル内開始時刻フィールド２２１ｈを有しているため、このソースコンテンツファイル２４の最初から実行する必要はなく、再生を開始する時刻をビューオブジェクト２２１毎に編集者が自由に設定することができる。また、上述のようにソースコンテンツファイル２４を直接編集していないため、タイムラインウィンドウ３３等で、各ビューオブジェクトのソースコンテンツファイル２４における上述のファイル内の時刻を自由に設定・変更することができる。
【００２０】
ステージウィンドウ３２へのソースコンテンツの配置は、編集者がソースコンテンツファイル２４をマウスでドラッグ＆ドロップして配置することもできるし、メニューウィンドウ３１からソースコンテンツファイル２４を選択して配置することができる。また、テキスト情報や図形も、予め決められた候補をポップアップウィンドウに表示してそこからステージウィンドウ３２にドラッグ＆ドロップして配置することができる。さらに、ステージウィンドウ３２にコンテンツ（表示オブジェクト３２１）を配置すると、タイムラインウィンドウ３３の現在選択されているトラック３３ａにその表示オブジェクト３２１に対応するコンテンツクリップ３３１が配置される。なお、タイムラインウィンドウ３３においては、図２に示すように、現在編集している同期型マルチメディアコンテンツ（編集済みコンテンツ）内での相対時刻を示すカレントカーソル３３２が表示されており、このカレントカーソル３３２が示す時点から表示オブジェクト３２１の再生が開始されるようにコンテンツクリップ３３１がトラック３３ａ内に自動配置される。ここで、トラック３３ａにおける表示は、例えば、ソースコンテンツファイル２４の全体の時間が白抜きのバーで表示され、ビューオブジェクト２２１に定義された再生部分（ファイル内開始時刻フィールド２２１ｈ、再生開始時刻フィールド２２１ｅ、及び、再生終了時刻フィールド２２１ｆで決定される）が色つきのバー（これがコンテンツクリップ３３１に対応する）で表示される。
【００２１】
ここで、タイムラインウィンドウ３３には複数のトラック３３ａが設けられているが、このトラック３３ａには、配置されるコンテンツの種類の制限はなく、動画コンテンツ、音声コンテンツ、テキスト情報コンテンツ、図形コンテンツ、静止画コンテンツ、または、入力を要求するインタラクティブコンテンツなど、いずれも配置することができる。このとき、トラック３３ａには、配置されたコンテンツの種類を示すアイコンが表示されるため（図示せず）、配置されているコンテンツを容易に判別することができる。そのため、編集者は、コンテンツの編集作業を効率良く行うことができる。
【００２２】
また、複数の表示オブジェクト３２１をステージウィンドウ３２上に配置すると、重なり合う表示オブジェクト３２１が発生する。ステージウィンドウ３２では、複数の表示オブジェクト３２１は、重なり合った透明の層（これを「レイヤ」と呼ぶ）のいずれかに配置されて管理されており、表示オブジェクト３２１は、各々のレイヤに割り当てられたレイヤ番号（図４で示したレイヤ番号フィールド２２１ｉ）で管理され、このレイヤの順序にトラック３３ａの順序が対応している。すなわち、表示オブジェクト３２１に対応するコンテンツクリップ３３１が配置されている（割り当てられている）トラック３３ａの位置により重なる部分の表示順序（レイヤの順序）が決定される。
【００２３】
例えば、図５（ａ）に示すように、Ａ，Ｂ２つの表示オブジェクト３２１がステージウィンドウ３２に配置されており、表示オブジェクトＡに対応するコンテンツクリップ３３１はタイムラインウィンドウ３３ではトラック４（ステージウィンドウ３２においてはレイヤ４）に配置され、表示オブジェクトＢに対応するコンテンツクリップ３３１はタイムラインウィンドウ３３ではトラック３（レイヤ３）に配置されている状態で、表示オブジェクトＡに対応するコンテンツクリップ３３１をタイムラインウィンドウ３３においてトラック２に移動させると、オーサリング機能２１は、これらのコンテンツクリップ３３１が配置されたトラック３３ａの順に、対応する表示オブジェクト３２１を、ステージウィンドウ３２において、上のレイヤにあるように配置する。つまり、上下に並んで配置されているトラック３３ａの順に、表示オブジェクト３２１が重ね合わされ、図５（ｂ）に示すように、表示オブジェクトＡが表示オブジェクトＢの上に重なるように配置される。そのため、編集者は直感的に編集作業を行うことができ作業効率が向上する。
【００２４】
また、ステージウィンドウ３２上で表示オブジェクト３２１の大きさや位置は、マウス等を使って編集者が自由に変更することができる。さらに、タイムラインウィンドウ３３上でのコンテンツクリップ３３１の位置や大きさ（再生期間）、ソースコンテンツファイル２４における再生の開始位置も同様に、マウス等を使って編集者が自由に変更することができる。なお、このようなソースコンテンツファイル２４のステージウィンドウ３２への配置や移動、大きさの変更、並びに、タイムラインウィンドウ３３でのコンテンツクリップ３３１の移動や再生区間の変更を編集者が行うと、オーサリング機能２１は、この表示オブジェクト３２１、及び、コンテンツクリップ３３１に対応するビューオブジェクト２２１の上述の属性項目を、編集者の操作により変更されたステージウィンドウ３２及びタイムラインウィンドウ３３の状態に応じて設定するように構成されている。また、このようなビューオブジェクト２２１の属性項目は、プロパティウィンドウ３４を用いて表示及び修正を行うこともできる。
【００２５】
ここで、タイムラインウィンドウ３３上で、いずれか一つのコンテンツクリップ３３１を選択し、トラック３３ａに沿って移動させると、このコンテンツクリップ３３１に対応付けられたコンテンツ（表示オブジェクト３２１）の再生開始時刻及び再生終了時刻を変更することができるが、このとき、他のトラック３３ａに配置されているコンテンツクリップ３３１の再生開始時刻若しくは再生終了時刻に、移動させたコンテンツクリップ３３１の再生開始時刻若しくは再生終了時刻を一致させるような編集操作が可能である（このような編集操作を「吸着移動」と呼ぶ）。なお、コンテンツクリップ３３１の吸着移動の際、再生開始時刻付近をマウス等でドラッグすると、再生開始時刻の時間軸上の位置は変化するが、再生終了時刻の位置は変化しない。逆に、再生終了時刻付近をドラッグすると、再生終了時刻の時間軸上の位置は変化するが、再生開始時刻の位置は変化しない。そのため、結果的に当該コンテンツクリップ３３１の再生期間が変化することがある。
【００２６】
なお、上述のように、ビューオブジェクト２２１に定義された再生部分であって、トラック３３ａ上に表示されるコンテンツクリップ３３１の範囲は、ソースコンテンツ２４の全体の時間の一部である場合がある（ソースコンテンツ２４の全体の時間の一部分をマルチメディアコンテンツとして利用する場合）。そのため、本実施形態に係るコンテンツ編集生成システム１においては、タイムラインウィンドウ３３上でのコンテンツクリップ３３１の操作により、再生開始時刻または再生終了時刻の時間軸上の位置が変化した分、ソースコンテンツ２４における再生部分（ソースコンテンツ２４内でのファイル内開始時刻又はファイル内終了時刻）が変化するように構成されている。一方、本実施形態では、ビューオブジェクト２２１に定義された再生部分とソースコンテンツ２４の全体の時間とが一致する場合は、再生開始時刻付近や再生終了時刻付近をドラッグしたとしても、再生期間（ファイル内開始時刻及びファイル内終了時刻）が変化することなく、コンテンツクリップ３３１全体が移動するよう構成している。したがって、この場合、再生開始時刻及び再生終了時刻双方のタイムラインウィンドウ３３の時間軸上の位置が変化するだけである。しかしながら、本願がこれに限定されることはなく、ビューオブジェクト２２１に定義された再生部分とソースコンテンツ２４の全体の時間とが一致する場合は、コンテンツクリップ３３１が移動することなく、そのままの位置に留まるように構成してもよい。また、静止画等の時間的経過のないコンテンツの場合も、表示開始時刻を変化させることで、表示時間を変化させることができる。更に、コンテンツクリップ３３１の中央付近をドラッグした場合は、コンテンツクリップ３３１全体が移動し、再生される時間（再生期間）を維持したまま、再生開始時刻と再生終了時刻との双方の時間軸上の位置が変化するとともに、ファイル内開始時刻及びファイル内終了時刻も変化する。以下、この吸着移動の仕組みについて、図６及び図７を用いて説明する。
【００２７】
まず、図６（ａ）ではコンテンツクリップの先端（「再生開始時刻」を示す）を他のコンテンツクリップの先端に吸着移動させ、かつ、再生期間を変化させる例を説明する。（ｉ）に示すように、トラック番号８のコンテンツクリップ３３１ｄの先端をトラック番号４のコンテンツクリップ３３１ｂの先端と一致させたい場合、吸着対象のコンテンツクリップ３３１ｄの先端付近をマウス等でドラッグして、矢印で示すように左方向に移動させる。また、この際に、近傍にカレントカーソル３３２が存在すれば、コンテンツクリップ３３１ｄはカレントカーソル３３２に吸着移動する。また、同一のトラック番号８内の近傍に他のコンテンツクリップ３３１が存在すれば、当該他のコンテンツクリップ３３１の先端又は終端にコンテンツクリップ３３１ｄが吸着移動する。以下で述べる例でも同様である。
【００２８】
この図６（ａ）の例では、（ii）に示すように、編集者がコンテンツクリップ３３１ｂの再生開始時刻の近傍に吸着対象コンテンツクリップ３３１ｄの先端を移動させると、このコンテンツクリップ３３１ｄの先端（再生開始時刻）がコンテンツクリップ３３１ｂの再生開始時刻に吸着移動する。すなわち、コンテンツクリップ３３１ｂの再生開始時刻（先端）に仮想カレントカーソル３３２′が設定され、この仮想カレントカーソル３３２′にコンテンツクリップ３３１ｄが吸着移動するのと同じ操作を行うことができる。これにより異なるトラック３３ａ同士のコンテンツクリップ３３１の吸着を行うことができる。この操作の結果、再生開始時刻を早めても、当該コンテンツクリップ３３１ｄの再生終了時刻は変わらないため、結果的に再生期間が長くなる。
【００２９】
次に、図６（ｂ）ではコンテンツクリップの終端（「再生終了時刻」を示す）を他のコンテンツクリップの終端に吸着移動させる例を説明する。（ｉ）に示すように、トラック番号２のコンテンツクリップ３３１ａの終端（再生終了時刻）をトラック番号４のコンテンツクリップ３３１ｂの終端と一致させたい場合、吸着対象のコンテンツクリップ３３１ａの終端付近をマウス等でドラッグして、矢印で示すように左方向に移動させる。すると、（ii）に示すように、吸着対象コンテンツクリップ３３１ａの終端（再生終了時刻）がコンテンツクリップ３３１ｂの再生終了時刻に吸着する。すなわち、コンテンツクリップ３３１ｂの再生終了時刻（終端）に仮想カレントカーソル３３２′が設定され、この仮想カレントカーソル３３２′にコンテンツクリップ３３１ｂが吸着移動するのと同じ操作を行うことができる。この操作の結果再生終了時刻を早い時間にしても、当該コンテンツクリップ３３１ｄの再生開始時刻は変わらないため、結果的に再生期間が短くなる。即ち、短くなった部分はファイル内終了時刻が再生終了時刻に合わせて変更される（ファイル内終了時刻が移動した部分のソースコンテンツは再生されない）。
【００３０】
また、図７（ａ）ではコンテンツクリップの先端を他のコンテンツクリップ終端に吸着移動させるが、再生期間は変化させない例を説明する。（ｉ）に示すように、トラック番号２のコンテンツクリップ３３１ａの先端を、再生期間を変化させることなく、トラック番号４のコンテンツクリップ３３１ｂの終端と一致させたい場合、吸着対象のコンテンツクリップ３３１ａの中央付近をマウス等でドラッグして、矢印で示すように右方向に移動させる。すると、（ii）に示すように、コンテンツクリップ３３１ａ全体が右方向に移動し、吸着先のコンテンツクリップ３３１ｂの再生終了時刻の近傍に、当該吸着対象コンテンツクリップ３３１ａの先端が近づくと、当該コンテンツクリップ３３１ａの先端（再生開始時刻）がコンテンツクリップ３３１ｂの再生終了時刻に吸着移動する。
【００３１】
同様に、図７（ｂ）ではコンテンツクリップの終端を他のコンテンツクリップの先端に吸着移動させる例を示しており、（ｉ）に示すように、トラック番号２のコンテンツクリップ３３１ａの終端を、再生期間を変化させることなく、トラック番号４のコンテンツクリップ３３１ｂの先端と一致させたい場合、吸着対象のコンテンツクリップ３３１ａの中央付近をマウス等でドラッグして、矢印で示すように左方向に移動させると、（ii）に示すように、コンテンツクリップ３３１ａ全体が左方向に移動し、当該吸着対象コンテンツクリップ３３１ａの再生終了時刻が吸着先のコンテンツクリップ３３１ｂの再生開始時刻に吸着移動する。この図７（ａ），（ｂ）に示す場合も、コンテンツクリップ３３１ｂの先端又は終端に仮想カレントカーソル３３２′が設定され、この仮想カレントカーソル３３２′に吸着対象コンテンツクリップ３３１ａの先端又は終端が吸着するのと同じ操作を行うことができる。また、何れの場合も、コンテンツクリップ３３１ａの再生開始時刻と再生終了時刻は変化するが、再生期間が変化することはない。なお、前述したように、動画等の場合でビューオブジェクト２２１に定義された再生部分とソースコンテンツ２４の全体の時間とが一致する場合は、コンテンツクリップ３３１ａの中央付近のみならず、先端や終端付近をドラッグしても、タイムラインウィンドウ３３のトラック３３ａ上でコンテンツクリップ３３１ａ全体が移動するだけで、再生期間は変化せず、また、ファイル内開始時刻及びファイル内終了時刻も変化することはない。
【００３２】
以上のような、異なるトラック３３（レイヤ）間でのコンテンツクリップ３３１の吸着移動は、図８に示すように、オーサリング機能２１の１つの機能であるコンテンツ吸着部２１３により実行される。以下、この吸着移動のアルゴリズムを、図９のフローチャートを用いて説明する。なお、以降の説明におけるコンテンツ吸着部２１３は、吸着対象コンテンツクリップの先端（再生開始時刻）を他のコンテンツクリップの終端（再生終了時刻）に吸着移動させるか、吸着対象コンテンツクリップの終端を他のコンテンツクリップの先端に吸着移動させるかを行うように構成されている場合について説明する。また、移動対象のコンテンツクリップ３３１ｘに対するコンテンツを「移動対象コンテンツ」と呼び、残りのコンテンツクリップ３３１ａ〜３３１ｄに対するコンテンツを「配置済みコンテンツ」と呼ぶ。
【００３３】
まず、メニューウィンドウ３１でコンテンツクリップの吸着移動が選択され、タイムラインウィンドウ３３で吸着対象コンテンツクリップ（以下、「移動対象コンテンツクリップ」と呼ぶ）がマウス等により選択されている状態（カーソルに保持されてドラッグされている状態）となると、その間中にコンテンツ吸着部２１３が起動され、図９に示すフローチャートの処理が繰り返される。また、コンテンツ吸着部２１３では、ビューオブジェクト２２１やステージオブジェクト２２２等のデータを基に、メモリ上で実行時刻管理テーブル３０を作成し管理している。この実行時刻管理テーブル３０は、図１０（ａ）〜（ｄ）に示すように、開始時刻管理用配列３０１と、終了時刻管理用配列３０２と、配置済みコンテンツ管理テーブル３０３と、移動対象コンテンツ管理テーブル３０４とから構成されている。
【００３４】
また、本実施形態におけるコンテンツ吸着部２１３は、タイムラインウィンドウ３３の実際の時間の経過を、所定の時間間隔（例えば、時、分、秒、または、ミリ秒単位など）で分割して管理している。この分割した際の時間毎の区切りを以降の説明では「時間軸」と呼ぶ。図１１では、時間軸とコンテンツクリップ３３１との関係を分かりやすく説明するため、時間軸を大まかに分割した概略図で表している。そして、現在編集しているマルチメディアコンテンツの相対的な開始時刻を時間軸の０として、昇順に番号を付している。そして、この時間軸の番号で実行時刻管理テーブル３０を管理する。
【００３５】
開始時刻管理用配列３０１は、図１０（ａ）に示すようなデータ構造を有し、タイムラインウィンドウ３３に配置されたコンテンツクリップ３３１を識別するためのオブジェクトＩＤ（このコンテンツクリップ３３１に対応するビューオブジェクト２２１のオブジェクトＩＤ（「ａ」など））が記憶されるクリップＩＤフィールド３０１ａと、当該コンテンツクリップ３３１の再生開始時刻が時間軸の番号で記憶される開始時間軸フィールド３０１ｂとから構成される。また、終了時刻管理用配列３０２は、図１０（ｂ）に示すようなデータ構造を有し、タイムラインウィンドウ３３に配置されたコンテンツクリップ３３１を識別するためのオブジェクトＩＤが記憶されるクリップＩＤフィールド３０２ａと、当該コンテンツクリップ３３１の再生終了時刻が時間軸の番号で記憶される終了時間軸フィールド３０２ｂとから構成される。なお、後述の初期化の際に、開始時刻管理用配列３０１は再生開始時刻の早い順（時間軸の番号の小さい順）にソートされる、同様に、終了時刻管理用配列３０２は再生終了時刻の早い順（時間軸の番号の小さい順）にソートされる。
【００３６】
また、配置済みコンテンツ管理テーブル３０３は、配置済みコンテンツの配置数分のデータが設定され、開始時刻管理用配列３０１及び終了時刻管理用配列３０２とは、それぞれオブジェクトＩＤ（クリップＩＤフィールド３０１ａ，３０２ａの値）をキーとして互いに関連付けられている。この配置済みコンテンツ管理テーブル３０３は、図１０（ｃ）に示すようなデータ構造を有し、配置済みコンテンツの識別子であるオブジェクトＩＤが記憶されるオブジェクトＩＤフィールド３０３ａと、当該コンテンツの再生開始時刻が記憶される再生開始時刻フィールド３０３ｂと、再生終了時刻が記憶される再生終了時刻フィールド３０３ｃとから構成されている。なおこれらのフィールドに設定される値は、ビューオブジェクト２２１から取得される。また、開始時刻管理用配列３０１及び終了時刻管理用配列３０２において、配置済みコンテンツ毎の再生開始時刻及び再生終了時刻の要素の前後には空白の要素ができるように配置及びソートされる。同様に、各要素には番号が振られており、後述する移動対象コンテンツ管理テーブル３０４に記憶される開始時刻管理用配列３０１及び終了時刻管理用配列３０２の位置は、この各要素の番号で表される。
【００３７】
更に、移動対象コンテンツ管理テーブル３０４は、図１０（ｄ）に示すようなデータ構造を有し、移動対象コンテンツの識別子であるオブジェクトＩＤが記憶されるオブジェクトＩＤフィールド３０４ａと、当該移動対象コンテンツの再生開始時刻が記憶される再生開始時刻フィールド３０４ｂと、再生終了時刻が記憶される再生終了時刻フィールド３０４ｃと、この移動対象コンテンツの再生終了時刻の開始時刻管理用配列３０１内での位置（上述のように配列の要素の番号）が記憶される開始時刻管理用配列内位置３０４ｄと、移動対象コンテンツの再生開始時刻の終了時刻管理用配列３０２内での位置（同じく配列の要素の番号）が記憶される終了時刻管理用配列内位置フィールド３０４ｅと、から構成されている。ただし、この移動対象コンテンツ管理テーブル３０４は、初期状態では、各フィールドに値は設定されておらず、領域だけが確保され、何れかのコンテンツクリップ３３１の移動があった場合に。その移動対象コンテンツに関する値が設定されていく。
【００３８】
次に、図９及び図１１〜図１３を用いて、コンテンツクリップ３３１同士の吸着アルゴリズムを説明する。本実施形態では、図１１に示すようにコンテンツクリップ３３１ａ，３３１ｂ，３３１ｃ，３３１ｄ，３３１ｘがタイムライン３３上に配置されている。そして、コンテンツの編集者は、コンテンツクリップ３３１ｘをドラッグしてこのコンテンツクリップ３３１ｘの先端を他のコンテンツクリップ３３１ａ〜３３１ｄの終端か、このコンテンツクリップ３３１ｘの終端を他のコンテンツクリップ３３１ａ〜３３１ｄの先端に吸着させようとしている。
【００３９】
ここで、図９のフローチャートに示す処理は、前述したように移動対象コンテンツクリップ３３１がマウスの左ボタンの押下等によりカーソルに保持された時点から開始される。そして、タイムラインウィンドウ３３内のいずれかのトラック３３ａ（レイヤに対応）で、配置済みのコンテンツ（表示オブジェクト３２１）のコンテンツクリップ３３１がカーソルに保持されてドラッグされている間中、繰り返し実行される。
【００４０】
まず、図９のフローチャートに示すように、本実施形態における移動対象のコンテンツクリップ３３１ｘがカーソルで捕まれてドラッグされた際の最初の処理であるか否かを判定する（ステップＳ１）。初回の処理の場合にはステップＳ２〜Ｓ５の初期設定処理に進む。まず、すべての配置済みコンテンツの再生開始時刻情報を、図１０（ａ）に示す開始時刻管理用配列３０１に記録する（ステップＳ２）。具体的には、図１１に示すように、タイムラインウィンドウ３３内のすべてのコンテンツクリップ３３１ａ〜３３１ｄのＩＤを開始時刻管理用配列３０１のクリップＩＤフィールド３０１ａに、再生開始時刻の時間軸の番号を開始時間軸フィールド３０１ｂに設定する。このとき、各再生開始時刻の前後には空白の要素が設けられる。次に、すべての配置済みコンテンツの再生終了時刻情報を、図１０（ｂ）に示す終了時刻管理用配列３０２に記録する（ステップＳ３）。具体的には、図１１に示すように、タイムラインウィンドウ３３内のすべてのコンテンツクリップ３３１ａ〜３３１ｄのＩＤをクリップＩＤフィールド３０２ａに、再生終了時刻の時間軸の番号を終了時間軸フィールド３０２ｂに設定する。この場合も、各再生終了時刻の前後には空白の要素が設けられる。
【００４１】
次に、上記ステップＳ２で開始時刻管理用配列３０１に記録された要素(レコード)をソートする（ステップＳ４）。なお上述の空白の要素は維持したままソートされる。具体的には、図１１に示すように、開始時刻管理用配列３０１の開始時間軸フィールド３０１ｂに設定された時間軸の番号をキーとして、再生開始時刻が早いもの順に開始時刻管理用配列３０１の要素をソートする。さらに、上記ステップＳ３で終了時刻管理用配列３０２に記録された要素をソートする（ステップＳ５）。この場合も、上述の空白の要素は維持したままソートする。なお、図１１の開始時刻管理用配列３０１及び終了時刻管理用配列３０２は、ソート後の状態を示している。また、コンテンツクリップ３３１ｘについては、移動対象であることから、移動対象コンテンツ管理テーブル３０４の再生開始時刻フィールド３０４ｂと再生終了時刻フィールド３０４ｃとに、移動後の再生開始時刻と再生終了時刻とがそれぞれ設定され、開始時刻管理用配列内位置フィールド３０４ｄと終了時刻管理用配列内位置フィールド３０４ｅに、移動後の再生開始時刻と再生終了時刻とに対応する時間軸が対応する要素が設定される。なお、今回処理するコンテンツクリップ３３１ｘは、現時点で図１２の位置にドラッグして移動されているものとして説明する。また、このコンテンツクリップ３３１ｘは、中央付近をドラッグして全体を移動させ、再生期間は変更することなく、再生開始時刻と再生終了時刻とを変更するものとする。
【００４２】
以上の初期処理が完了すると、次に、終了時刻管理用配列３０２内における、移動対象コンテンツの再生開始時刻の挿入可能位置を探索し、探索された挿入可能位置を記録する（ステップＳ６）。それには、図１０に示すように、コンテンツクリップ３３１ｘの再生開始時刻フィールド３０４ｂの再生開始時刻と終了時刻管理用配列３０２とを比較して挿入可能位置を探索する。本実施形態では、図１２に示すように、終了時刻管理用配列３０２内で、コンテンツクリップ３３１ｘの再生開始時刻の時間軸が「８」であることから、図１０の終了時刻管理用配列３０２に矢印で示した配列の要素の番号４（コンテンツクリップ３３１ｃと３３１ｄとの間）を挿入可能位置として決定する。そして、移動対象コンテンツ管理テーブル３０４の終了時刻管理用配列内位置フィールド３０４ｅに、配列位置として要素の番号「４」を記録する。
【００４３】
次に、開始時刻管理用配列３０１内における、移動対象コンテンツの再生終了時刻の挿入可能位置を探索し探索された挿入可能位置を記録する（ステップＳ７）。それには、図１０に示すように、再生終了時刻フィールド３０４ｃの再生終了時刻と開始時刻管理用配列３０１とを比較して挿入可能位置を探索する。本実施形態では、図１２に示すように、開始時刻管理用配列３０１内で、コンテンツクリップ３３１ｘの再生終了時刻の時間軸が「１０」であることから、図１２の開始時刻管理用配列３０１に矢印で示した位置（コンテンツクリップ３３１ｂの直後）の要素の番号「８」を挿入可能位置として決定する。そして、移動対象コンテンツ管理テーブル３０４の開始時刻管理用配列内位置フィールド３０４ｄに、配列位置として要素の番号「８」を記録する。以上の処理が終了したら、ステップＳ１０に進む。
【００４４】
なお、ステップＳ６，Ｓ７における開始時刻管理用配列３０１内及び終了時刻管理用配列３０２内の移動対象コンテンツの挿入可能位置の探索は、例えば、二分探索にて行われる。
【００４５】
一方、ステップＳ１において、初回の処理ではない、即ち、２回目以降の処理であると判断された場合には、ステップＳ８に進み、終了時刻管理用配列３０２内における、移動対象コンテンツ（図１２ではコンテンツクリップ３３１ｘに対応するコンテンツ）の再生開始時刻の挿入可能位置を探索し、その結果を終了時刻管理用配列内位置フィールド３０４ｅに記録して補正する。また、ステップＳ９において、開始時刻管理用配列３０１内における、移動対象コンテンツの再生終了時刻の挿入可能位置を探索し、その結果を開始時刻管理用配列内位置フィールド３０４ｄに記録して補正する。なお、ステップＳ８，Ｓ９における開始時刻管理用配列内及び終了時刻管理用配列内の移動対象コンテンツの挿入可能位置の探索は、例えば、既に設定されていた挿入可能位置の前後の探索にて検索を行うことができる（もう一度二分探索をする必要が無く、高速に探索することが可能である）。
【００４６】
ステップＳ７又はステップＳ９が終了すると、ステップＳ１０に進む。このステップＳ１０以降では、移動対象コンテンツのコンテンツクリップ３３１ｘを異なるレイヤ３３ａの何れのコンテンツクリップ３３１へ吸着移動するか決定するとともに、吸着先のコンテンツクリップ３３１の先端、終端のいずれに吸着させるか判断して、最終的にコンテンツクリップ３３１ｘを吸着移動する処理を実行する。
【００４７】
まず、ステップＳ１０では、移動対象コンテンツの再生終了時刻に対して、開始時刻管理用配列３０１内の挿入可能位置前後にあるコンテンツクリップ３３１の再生開始時刻（この場合は、前にあるコンテンツクリップ３３１ｂ）との時間差を算出する。即ち、移動対象コンテンツのコンテンツクリップ３３１ｘの再生終了時刻を、開始時刻管理用配列３０１内の前後のコンテンツクリップ（コンテンツクリップ３３１ｂ）の先端に吸着できるかを判断するためである。図１２の場合、コンテンツクリップ３３１ｂの先端との時間差を算出する。コンテンツクリップ３３１ｂの再生開始時刻は７なので、｜７−１０｜＝３となる。次に、時間差が吸着対象範囲内であったか判定する（ステップＳ１１）。この場合、時間差の閾値（例えば「１」）を予め決定しておき、時間差と閾値とを比較する。本実施形態では、時間差が「３」であったため、吸着対象範囲外（閾値の範囲外）と判定され、ステップＳ１２に進む。
【００４８】
ステップＳ１２では、まず、移動対象コンテンツの再生開始時刻に対して、終了時刻管理用配列３０２内の挿入可能位置前後にあるコンテンツクリップ３３１の再生終了時刻（この場合は、コンテンツクリップ３３１ｃ，３３１ｄ）との時間差を算出する。コンテンツクリップ３３１ｃの再生終了時刻は６なので、｜６−８｜＝２となり、コンテンツクリップ３３１ｄの再生終了時刻は９なので、９−８＝１となる。この場合、時間差が吸着対象範囲内であったか判定すると（ステップＳ１３）、コンテンツクリップ３３１ｄの再生終了時刻との差が閾値「１」の範囲内であると判定される。そして、移動対象コンテンツ管理テーブル３０４の移動対象コンテンツクリップ３３１ｘの再生開始時刻を、直後の（コンテンツクリップ３３１ｄ）の再生終了時刻に合わせて「９」に補正し、これに対応させて再生開始時刻を「１１」に補正する（ステップＳ１４）。このようにすることで、図１３に示すように、コンテンツクリップ３３１ｄの再生終了時刻にコンテンツクリップ３３１ｘの再生開始時刻を一致させることができる。一方、閾値の範囲外と判定された場合は、補正をすることなく処理を終了する。
【００４９】
一方、ステップＳ１１で、移動対象コンテンツクリップ３３１ｘの再生終了時刻について、開始時刻管理用配列３０１内の挿入可能位置前後の時間との時間差が閾値の範囲内であると判定された場合は、ステップＳ１５に進む。このステップＳ１５では、移動対象コンテンツの再生終了時刻を、開始時刻管理用配列３０１内の挿入開始位置前後の時間のうち近い方に補正する。即ち、例えば、コンテンツクリップ３３１ｘの移動位置が図１２の位置よりも左で、コンテンツクリップ３３１ｂの先端に近い位置までドラッグされた場合、コンテンツクリップ３３１ｘの再生終了時刻がコンテンツクリップ３３１ｂの再生開始時刻に補正される。以上がコンテンツ吸着部２１３による処理の概要である。
【００５０】
そして、最終的に、図１３に示すように、コンテンツクリップ３３１ｘは、コンテンツクリップ３３１ｄの直後に吸着移動する。また、この位置の移動結果は、ビューオブジェクト２２１の再生開始時刻フィールド２２１ｅ、再生終了時刻フィールド２２１ｆに記憶されて更新され管理される。
【００５１】
なお、以上で説明した実施形態では、先に移動対象コンテンツの再生終了時刻に対して開始時刻管理用配列３０１内の挿入可能位置直後との時間差を算出した後、閾値との比較を行い（ステップＳ１０，Ｓ１１）、次に、移動対象コンテンツの再生開始時刻に対して終了時刻管理用配列３０２内の挿入可能位置直後との時間差を算出して閾値との比較を行い（ステップＳ１２，Ｓ１３）を行っているが、本願がこれに限定されることはなく、ステップＳ１２，Ｓ１３に相当する処理を先に行った後、ステップＳ１０，Ｓ１１に相当する処理を行うよう構成してもよい。または、何れか一方の処理のみ行うように構成してもよい。
【００５２】
また、上記実施形態では、コンテンツ吸着部２１３の処理を、移動対象コンテンツクリップ３３１ｘ全体を移動し当該コンテンツクリップ３３１ｘの再生開始時刻を他のコンテンツクリップの再生終了時刻に吸着移動させるか、若しくは、移動対象コンテンツクリップ３３１ｘの再生終了時刻を他のコンテンツクリップの再生開始時刻に吸着移動させ、再生期間は変更することなく、再生開始時刻と再生終了時刻とを変更する場合について説明した。この他にも、動画や音声等の時間的経過のあるソースコンテンツ２４の全体の時間の一部がビューオブジェクトに２２１に定義された再生部分であるために、ファイル内開始時刻及びファイル内終了時点を変更可能である場合や、静止画等の時間的経過のないコンテンツの表示時間を変更する場合などは、コンテンツクリップ３３１ｘの再生開始時刻だけを移動させて、他のコンテンツクリップの再生開始時刻または再生終了時刻に吸着させたり、コンテンツクリップ３３１ｘの再生終了時刻だけを移動させて、他のコンテンツクリップの再生開始時刻または再生終了時刻に吸着させ、結果的に再生期間を変更するようにしてもよい。また、移動対象オブジェクト管理テーブル３０４において、開始時刻管理用配列内での再生開始時刻の位置と、終了時刻管理用配列内での再生終了時刻の位置を管理するように構成すれば、移動対象コンテンツクリップ３３１ｘの再生開始時刻を他のコンテンツクリップの再生開始時刻に吸着移動させること（即ち、同時に再生が開始する）や、移動対象コンテンツクリップ３３１ｘの再生終了時刻を他のコンテンツクリップの再生終了時刻に吸着させること(即ち、同時に再生が終了する)もできる。
【００５３】
以上、本実施形態では、移動対象のコンテンツクリップ３３１上でマウスの左側ボタンを押下する等の操作により、当該コンテンツクリップ３３１がカーソルにより保持された状態でドラッグされている間中、繰り返し行われるように構成しているが、コンテンツクリップ３３１がドラッグされて、マウスの左側のボタンの押下が解除された時に一回のみ上述の処理を行うように構成してもよい。
【００５４】
また、このようにしてオーサリング機能２１を用いて編集された同期型マルチメディアコンテンツ（編集済みコンテンツ）は所定の開始時刻と終了時刻（相対的な時刻）を有することになるが、このコンテンツ編集生成システム１においては、これらの時刻で定義される時間を複数のスコープ２２３に分割して管理することができる。動画等の時間的経過のあるコンテンツは時間軸を持っているので、ある時刻で編集（移動、削除等）を行うと動画の他の箇所に副作用を与えるという本質的な問題を抱えている。そのため、本実施形態においては、時間軸を持つ動画コンテンツに対して、物理的な情報（タイムラインウィンドウ３３上でのコンテンツの配置）とは別に、スコープ２２３と呼ぶ論理的に定義された（仮想的な）分節を複数設定して分割できるように構成されている。
【００５５】
このスコープ２２３のデータは、複数のスコープを識別するためのスコープＩＤと、各スコープ２２３が開始されるときにステージウィンドウ３２に表示される表紙の情報と、スコープ２２３の編集済みコンテンツ内における相対的な開始時刻であるスコープ開始時刻と、編集済みコンテンツ内における相対的な終了時刻であるスコープ終了時刻とがハードディスク等に記憶されている。なお、表紙の情報は、例えばテキスト情報で構成され、各スコープ２２３の内容をスコープ２２３の再生開始時に、図１に一点鎖線で示すように、スコープウィンドウ３５′に表示するために用いられる。そして、このスコープの順番に従って、コンテンツが表示される。
【００５６】
データマネージャ機能２２においては、図１に示すように、スコープ２２３毎にビューオブジェクト２２１が管理されており、タイムラインウィンドウ３３において、あるスコープ２２３に対する操作は他のスコープ２２３のデータに影響を与えない。すなわち、例えば、２つのスコープ２２３の順序を入れ替える操作をしても、これらのスコープ２２３内のビューオブジェクト２２１の順序や実行時間には影響を与えない。また、このとき、このコンテンツ編集生成システム１は、上述のように、ソースコンテンツファイル２４を直接編集するのではなく、ビューオブジェクト２２１を介して管理しているので、実行順序を変更しても元になるソースコンテンツファイル２４に影響を与えることはない。
【００５７】
このようにスコープ２２３を設けることにより、このスコープ２２３の表示順序を指定することで、物理的な情報はそのままで（つまり、動画コンテンツの切断、再配置等を一切行うことなく）、編集済みコンテンツ内における動画コンテンツの再生順序を動的に入れ替えることができる。また、スコープ２２３内の編集操作（例えば、動画コンテンツを含むすべての要素の時間軸上の位置移動、削除等）の影響は、そのスコープ２２３内に局所的に留まり、他のスコープ２２３には一切の副作用を与えないので、安心して編集作業を行うことができる。
【００５８】
以上のように、オーサリング機能２１は、ステージウィンドウ３２に対して、編集者が直接コンテンツの配置を行い、また位置の移動や大きさの変更を行うことができるので、実際に作成される編集済みコンテンツを確認しながら編集作業を行うことができる。このステージウィンドウ３２での表示オブジェクト３２１の配置方法としては、オブジェクトを一つずつ選択してできることはもちろん、複数を選択して（例えば、シフトキーを押しながらマウスでクリックする方法や、マウスをドラッグしてエリアを決定し、このエリア内にあるオブジェクトをすべて選択する方法等）を行うことができる。
【００５９】
なお、ステージウィンドウ３２に配置された表示オブジェクト３２１は、すべて、データマネージャ機能２２において、ビューオブジェクト２２１として管理されているため、このビューオブジェクト２２１のうち、テキストオブジェクトとして配置される候補をディスプレイ装置３に一覧表示して、編集者がこの一覧から選択して新たな表示オブジェクト３２１として配置できるように構成することもできる。
【００６０】
次に、このようにして作成された編集済みコンテンツを、最終的に利用者に提供するデータ形式に変換するパブリッシャ機能２３について説明する。パブリッシャ機能２３は、データマネージャ機能２２で管理されている、ステージオブジェクト２２２、ビューオブジェクト２２１、スコープ２２３、及び、ステージオブジェクト２２２と、ソースコンテンツファイル２４から、最終的に利用者に提供される最終コンテンツファイル２５と、メタコンテンツファイル２６とを生成するものである。
【００６１】
最終コンテンツファイル２５は、基本的にソースコンテンツファイル２４に対応するものであり、前述したように、このソースコンテンツファイル２４のうち、不要な部分（例えば、最終的に生成される同期型マルチメディアコンテンツでは再生されない部分）をトリミングしたり、ステージウィンドウ３２上に配置された大きさに応じて圧縮率を変更した結果のファイルである。また、メタコンテンツファイル２６は、編集済みコンテンツにおいて、動画、音声、及び、静止画に対応する最終コンテンツファイル２５の実行（再生開始）及び終了のタイミング（時刻）等のソースコンテンツファイル２４や最終コンテンツファイル２５の再生を制御する情報や、テキスト情報、図形等のソースコンテンツファイル２４や最終コンテンツファイル２５と重ね合わされて表示される情報の表示内容や表示タイミング（時刻）を定義するものであり、例えばテキスト形式のデータとして管理されている。なお、メタコンテンツファイル２６は、オーサリング機能２１により編集された編集済みコンテンツに関する情報を管理するファイルとして、図１に示すように、データマネージャ機能２２においても管理されている。
【００６２】
このように、本実施形態に係るコンテンツ編集生成システム１においては、オーサリング機能２１とパブリッシャ機能２３との２段階で同期型マルチメディアコンテンツ（編集済みコンテンツ）を編集・生成するように構成している。そのため、編集時点においては、動画の表示情報（開始点及び終了点）をビューオブジェクト２２１で管理し、トリミングされた区間は非表示になるように論理的なビューとして情報を保持しているため、表示の開始・終了時点を自由に変更することができる。一方、生成時点においては、論理的なビュー情報（ビューオブジェクト２２１）を元にしてソースコンテンツファイル２４を物理的に分割するので、余分なデータを持たずに最終コンテンツファイル２５の容量を削減することができる。
【００６３】
また、各々のソースコンテンツファイル２４からパブリッシャ機能２３で生成される最終コンテンツファイル２５は、テキスト情報等を合成していない（例えば、テキスト情報はメタコンテンツファイル２６で管理される）。そのため、ソースコンテンツファイル２４（最終コンテンツファイル２５）がこれらのテキスト情報等により変更される（例えば、動画等のソースコンテンツファイルにテキスト情報等が合成されて新たなソースコンテンツファイルが生成される）ことはなく、このソースコンテンツファイル２４を圧縮してもテキスト等がつぶれる（画面上でにじんだり不鮮明になる）ことを防止することができる。
【００６４】
以上で説明したオーサリング機能２１の詳細な機能構成を、図８を用いてまとめる。このオーサリング機能２１は、プロパティ編集部２１１を有し、このプロパティ編集部２１１は、更に、時間パネル配置部２１２と、コンテンツ吸着部２１３、及び、画像表示部２１４とを有している。プロパティ編集部２１１は、プロパティウィンドウ３４を表示してビューオブジェクト２２１のプロパティを変更する機能を提供する。
【００６５】
また、時間パネル配置部２１２は、タイムラインウィンドウ３３において、各トラック３３ａへのコンテンツクリップ３３１の配置、削除、コンテンツクリップ３３１の再生開始時刻及び終了時刻の変更機能などを提供する。
【００６６】
一方、コンテンツ吸着部２１３は、画像表示部２１４によりステージウィンドウ３２に表示されたタイムラインウィンドウ３３を参照しながら同一のレイヤに貼り付けられた表示オブジェクト３２１（コンテンツ）、即ち同一のトラック３３ａに配置されたコンテンツクリップ３３１を互いに吸着移動するだけでなく、異なるレイヤ間に貼り付けられた表示オブジェクト３２１、即ち異なるトラック３３ａに配置されたコンテンツクリップ３３１を互いに吸着移動する機能を提供する。また、画像表示部２１４は、この吸着移動結果や表示オブジェクト３２１などをステージウィンドウ３２に表示する機能を提供する。
【００６７】
上述の通り、本実施形態に係るコンテンツ配信システム１００においては、様々な種類のコンテンツを自由に編集でき、かつ、同一のレイヤ間（トラック間）のオブジェクトだけでなく、異なるレイヤ間（トラック間）のオブジェクトをも吸着移動することができ、レイヤの違いに影響されることなく、ソースコンテンツの編集を効率的に行うことができる。また、吸着させた表示オブジェクトの円滑な再生を行うことが可能となる。例えば、図１１の場合、コンテンツクリップ３３１ｄとコンテンツクリップ３３１ｘとに対応する表示オブジェクト３２１を、途切れること無く連続して再生することができる。
【００６８】
なお、編集者は、ステージ上において実際に生成されるコンテンツ（同期型マルチメディアコンテンツ）を認識しながら編集することができ、また、静止画像トラックに配置することができるコンテンツの種類には制限がなく、また、コンテンツの配置位置の検索や最適なサイズへのリサイズ、配置も自動で行われるので、コンテンツの編集が容易になる。また、コンテンツを直接編集せずに、ビューオブジェクト（論理的なビュー情報）として管理しているため、直接編集する場合に比べてこのシステムが稼働するコンピュータの資源の消費を少なくすることができる。
【符号の説明】
【００６９】
１  コンテンツ編集生成システム
３  ディスプレイ装置（表示手段）
２１  オーサリング機能（タイムライン管理手段）
２２  データマネージャ機能（ステージオブジェクト記憶手段、ビューオブジェクト手段）
２３  パブリッシャ機能（コンテンツ生成手段）
２４  ソースコンテンツファイル（ソースコンテンツ記憶手段）
３０  実行時刻管理テーブル（開始時刻管理用配列、終了時刻管理用配列、配置済みコンテンツ管理テーブル、移動対象コンテンツ管理テーブル）
３２  ステージウィンドウ
３３  タイムラインウィンドウ
３３ａ  トラック
２２１  ビューオブジェクト（ビューオブジェクト記憶手段）
２２２  ステージオブジェクト（ステージオブジェクト記憶手段）
２２３  コンテンツ吸着部（再生期間変更手段）
３０１  開始時刻管理用配列（開始時刻テーブル）
３０２  終了時刻管理用配列（終了時刻テーブル）
３３１コンテンツクリップ
【図１】
2011244361.tif 000003
【図２】
2011244361.tif 000004
【図３】
2011244361.tif 000005
【図４】
2011244361.tif 000006
【図５】
2011244361.tif 000007
【図６】
2011244361.tif 000008
【図７】
2011244361.tif 000009
【図８】
2011244361.tif 000010
【図９】
2011244361.tif 000011
【図１０】
2011244361.tif 000012
【図１１】
2011244361.tif 000013
【図１２】
2011244361.tif 000014
【図１３】
2011244361.tif 000015