(57)【要約】【課題】既製アニメーション編集ツールの編集機能を呼び出し、次世代光ディスクプレイヤが表示できない効果をパラパラ画像に変換することにより、次世代光ディスクの回転・変形などの情報を書き出すことができるアニメーション編集システムを提供する。【解決手段】Ｆｌａｓｈにプラグインされたアニメーション情報変換ツール１でＦｌａｓｈムービーの構造を解析しムービークリップを作成し複数のＰＮＧファイルを作成する。また、ＸＭＬデータに変換する。さらにＸＭＬデータをもとにＪａｖａクラスを作成しＰＮＧファイルを統合する。アニメーション実行コード４を用いアニメーション定義コードおよび画像３に、ユーザコード５，本編映像６を加えて次世代光ディスク９の規格ファイルを作成する。手間をかけることなくアニメーション情報変換ツール１のムービーを次世代光ディスクプレイヤ１０で再生できるようになる。【選択図】図１
2010092138.tif 000002
【特許請求の範囲】
【請求項１】
ベクター情報でアニメーション情報を出力するアニメーション編集ツールのプラグインとしてアニメーション情報変換ツールが挿入され、該アニメーション情報変換ツールがアニメーション編集ツールのアニメーション情報をオブジェクト指向プログラミング言語で記載されるプログラムの出力形式に変換するアニメーション編集システムであって、
前記アニメーション情報変換ツールは、
アニメーション編集ツールムービーを解析しムービークリップからなるアニメーション編集ツールムービーを生成するムービー生成手段と、
アニメーション編集ツールからアニメーション編集ツールの構成要素を取得し、スクリプトオブジェクトを構築するオブジェクト構築手段と、
前記スクリプトオブジェクトの構成・変数をＸＭＬデータに変換するＸＭＬ変換手段と、
アニメーション編集ツールムービーにあるベクター画像をラスター画像に変換し複数のビットマップ画像ファイルを出力するビットマップ画像出力手段と、
前記複数のビットマップ画像ファイルを統合し１つのビットマップ画像ファイルを作成するビットマップ画像作成手段と、
前記ＸＭＬデータを前記プログラムのソースコードに変換するオブジェクト変換手段と、
を含み、
前記プログラムのソースコードおよび統合した１つのビットマップ画像ファイルからランタイムを用いてオブジェクト指向プログラミング言語によるプログラムを作成することを特徴とするアニメーション編集システム。
【請求項２】
前記ムービークリップは、１個以上のタイムラインで構成され、
前記タイムラインは時間に応じて変化する１個以上の座標情報およびグラフィックと、
前記タイムラインに同期して動作する０個以上のムービークリップとを有し、
前記タイムラインに配置された１個以上の座標情報およびグラフィックはレイヤによって重ね合わせを定義することを特徴とする請求項１記載のアニメーション編集システム。
【請求項３】
前記アニメーション編集ツールの構成要素から構築される前記スクリプトオブジェクトは、
前記ムービークリップ毎に生成されるムービークリップオブジェクトと、
各ムービーのタイムラインをラベル毎に区切り、それぞれに応じて生成されるアニメーションオブジェクトと、
各タイムラインのレイヤ毎に生成されるレイヤオブジェクトを含むことを特徴とする請求項２記載のアニメーション編集システム。
【請求項４】
前記スクリプトオブジェクトの構成・変数から変換されるＸＭＬデータは、
前記ムービークリップオブジェクトから変換されるムービークリップタグと、
前記アニメーションオブジェクトから変換されるアニメーションタグと、
前記レイヤオブジェクトから変換されるレイヤタグまたはマスクタグとを含むことを特徴とする請求項３記載のアニメーション編集システム。
【請求項５】
前記複数のビットマップ画像ファイルから統合して作成される１つのビットマップ画像ファイルは、
複数のビットマップ画像ファイルを所定のピクセル内に配置し、配置されたビットマップ画像ファイルは所定のピクセル内の位置を指定する座標情報により配置されることを特徴とする請求項１〜４記載のアニメーション編集システム。
【請求項６】
前記ビットマップ画像ファイルはＰＮＧ画像ファイルであることを特徴とする請求項１〜５記載のアニメーション編集システム。
【請求項７】
前記アニメーション編集ツールはＦｌａｓｈ（登録商標）であることを特徴とする請求項１〜６記載のアニメーション編集システム。
【請求項８】
前記スクリプトはＪａｖａＳｃｒｉｐｔ（登録商標）であることを特徴とする請求項１〜７記載のアニメーション編集システム。
【請求項９】
前記オブジェクト指向プログラミング言語はＪａｖａ（登録商標）であることを特徴とする請求項１〜８記載のアニメーション編集システム。
【請求項１０】
ベクター情報でアニメーション情報を出力するアニメーション編集ツールのプラグインとしてアニメーション情報変換ツールが挿入され、該アニメーション情報変換ツールがアニメーション編集ツールのアニメーション情報をオブジェクト指向プログラミング言語で記載されるプログラムの出力形式に変換するアニメーション編集処理であって、
アニメーション編集ツールムービーを解析しムービークリップからなるアニメーション編集ツールムービーを生成するムービー生成ステップと、
アニメーション編集ツールからアニメーション編集ツールの構成要素を取得し、スクリプトオブジェクトを構築するオブジェクト構築ステップと、
スクリプトオブジェクトの構成・変数をＸＭＬデータに変換するＸＭＬ変換ステップと、
アニメーション編集ツールムービーにあるベクター画像をラスター画像に変換し複数のビットマップ画像ファイルを出力するビットマップ画像出力ステップと、
前記複数のビットマップ画像ファイルを統合し１つのビットマップ画像ファイルを作成するビットマップ画像作成ステップと、
前記ＸＭＬデータを前記プログラムのソースコードに変換するオブジェクト変換ステップと、
前記プログラムのソースコードおよび統合した１つのビットマップ画像ファイルからランタイムを用いてオブジェクト指向プログラミング言語によるプログラムを作成するプログラム作成ステップと、
を含むことを特徴とするコンピュータに実行させることができるアニメーション編集プログラム。
【請求項１１】
前記請求項１０記載のアニメーション編集プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アニメーション画像をＪａｖａ形式に変換して次世代ＤＶＤに書き出しすることができるアニメーション編集システム，アニメーション編集プログラムおよび該プログラムを記録した記録媒体に関する。
【背景技術】
【０００２】
次世代ＤＶＤ（ＢＤ）の本編映像においては、本編映像の上にメニューを乗せる形で表示させることができるようになっており、得点ゲームなどを作ることができる。
そのアニメーションは、例えばメニューをせり上げたりすることができ、ユーザのポップアップ操作や他の操作にしたがってインターラクティブにメニューを変化させることができる。
これに対しＤＶＤの映像はユーザの操作に関係なく固定した映像が流れている。
【０００３】
このようなアニメーションを編集するシステムを構成する要素として次世代ＤＶＤが取り扱われている。
次世代ＤＶＤは、現在のＤＶＤの画像を高精細にした機能と、メニューなどを扱うインターラクティブな部分をＪａｖａで吸収する機能部分を備えている。
現在のＤＶＤは選択するためのボタンがあるのみで、ボタンを押してもメニューなどが動くことはないが、次世代ＤＶＤは動きを持たせる場合、その動きをすべてＪａｖａで書かなければならない。
動くものに対してはその動きに合わせて１つひとつ座標を打ち込む必要がある。
【０００４】
従来よりアニメーションを作成するツールとしてＦｌａｓｈが存在する。また、次世代ＤＶＤでは本編映像でないメニューや後から付け加えるものはＪａｖａで書き込むようになっている。すなわち、次世代ディスクにＪａｖａを解釈するインタプリターが入っており、このインタプリターが動き部分だけを変換して書き込み、メニューなどが表示されるようになっている。
【０００５】
したがって、Ｆｌａｓｈなどの既製アニメーション編集ツールが出力する情報は、そのまま次世代光ディスクプレイヤ（ＢＤプレイヤ）で再生することができない。
既製アニメーション編集ツールでは、図形のデータをベクターの形で持っており、図１３（ａ）に示すようにアニメ物体が例えば４５度回転する場合、回転する前の画像の始点位置および４５度回転した画像の終点位置を出力し、アニメがどのように変形するかの情報として図１３（ｂ）に示すようにアニメ物体の形状寸法（Ｘ，Ｙ，Ｗ，Ｈ），０フレーム目からＮフレーム，４５度回転というコマンド情報を出力ファイルとして作成するものであり、回転・変形などの効果は、次世代光ディスクプレイヤでは対応していないからである。
【０００６】
一方、画像編集システムにおいてアニメーション画像を編集したり、再生したりする装置が従来より提案されている（特許文献１，２および３）。
しかしながらこれらの提案は装置やシステムの中で情報の１つとしてアニメーションを扱うことを開示するもので、アニメーション画像をどのように変換してＢＤなどの次世代光ディスクに書き出しプレイヤで再生するかの開示はない。
【特許文献１】特表２００４−５３３０７６号公報
【特許文献２】特開２００３−３４８３０６号公報
【特許文献３】特表２００３−５２１１４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
このような背景から、ＢＤなどの次世代光ディスクに書き出すことができるＪａｖａ形式に変換する場合には、上述したようにアニメーションの動きに合わせて動いた分の座標を入力しなければならず、アニメーション編集作業に時間がかかり効率的ではないという欠点があった。
【０００８】
本発明は上記状況に鑑みなしたもので、その目的は既製アニメーション編集ツールの編集機能を呼び出し、次世代光ディスクプレイヤが表示できない効果をパラパラ画像に変換することにより、効率的に次世代光ディスクの回転・変形などの情報を書き出すことができるアニメーション編集システムを提供することにある。
また、本発明の他の目的は、上記アニメーション編集システムをコンピュータに実行させることができるアニメーション編集プログラムを提供することにある。
本発明のさらなる他の目的は上記アニメーション編集プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することにある。
【課題を解決するための手段】
【０００９】
前記目的を達成するために本発明の請求項１記載の発明は、ベクター情報でアニメーション情報を出力するアニメーション編集ツールのプラグインとしてアニメーション情報変換ツールが挿入され、該アニメーション情報変換ツールがアニメーション編集ツールのアニメーション情報をオブジェクト指向プログラミング言語で記載されるプログラムの出力形式に変換するアニメーション編集システムであって、前記アニメーション情報変換ツールは、アニメーション編集ツールムービーを解析しムービークリップからなるアニメーション編集ツールムービーを生成するムービー生成手段と、アニメーション編集ツールからアニメーション編集ツールの構成要素を取得し、スクリプトオブジェクトを構築するオブジェクト構築手段と、前記スクリプトオブジェクトの構成・変数をＸＭＬデータに変換するＸＭＬ変換手段と、アニメーション編集ツールムービーにあるベクター画像をラスター画像に変換し複数のビットマップ画像ファイルを出力するビットマップ画像出力手段と、前記複数のビットマップ画像ファイルを統合し１つのビットマップ画像ファイルを作成するビットマップ画像作成手段と、前記ＸＭＬデータを前記プログラムのソースコードに変換するオブジェクト変換手段とを含み、前記プログラムのソースコードおよび統合した１つのビットマップ画像ファイルからランタイムを用いてオブジェクト指向プログラミング言語によるプログラムを作成することを特徴とする。
本発明の請求項２記載の発明は、請求項１記載の発明において前記ムービークリップは、１個以上のタイムラインで構成され、前記タイムラインは時間に応じて変化する１個以上の座標情報およびグラフィックと、前記タイムラインに同期して動作する０個以上のムービークリップとを有し、前記タイムラインに配置された１個以上の座標情報およびグラフィックはレイヤによって重ね合わせを定義することを特徴とする。
本発明の請求項３記載の発明は、請求項２記載の発明において前記アニメーション編集ツールの構成要素から構築される前記スクリプトオブジェクトは、前記ムービークリップ毎に生成されるムービークリップオブジェクトと、各ムービーのタイムラインをラベル毎に区切り、それぞれに応じて生成されるアニメーションオブジェクトと、各タイムラインのレイヤ毎に生成されるレイヤオブジェクトを含むことを特徴とする。
本発明の請求項４記載の発明は、請求項３記載の発明において前記スクリプトオブジェクトの構成・変数から変換されるＸＭＬデータは、前記ムービークリップオブジェクトから変換されるムービークリップタグと、前記アニメーションオブジェクトから変換されるアニメーションタグと、前記レイヤオブジェクトから変換されるレイヤタグまたはマスクタグとを含むことを特徴とする。
本発明の請求項５記載の発明は、請求項１〜４記載の発明において前記複数のビットマップ画像ファイルから統合して作成される１つのビットマップ画像ファイルは、複数のビットマップ画像ファイルを所定のピクセル内に配置し、配置されたビットマップ画像ファイルは所定のピクセル内の位置を指定する座標情報により配置されることを特徴とする。
本発明の請求項６記載の発明は請求項１〜５記載の発明において前記ビットマップ画像ファイルはＰＮＧ画像ファイルであることを特徴とする。
本発明の請求項７記載の発明は、請求項１〜６記載の発明において前記アニメーション編集ツールはＦｌａｓｈ（登録商標）であることを特徴とする。
本発明の請求項８記載の発明は、請求項１〜７記載の発明において前記スクリプトはＪａｖａＳｃｒｉｐｔ（登録商標）であることを特徴とする。
本発明の請求項９記載の発明は、請求項１〜８記載の発明において前記オブジェクト指向プログラミング言語はＪａｖａ（登録商標）であることを特徴とする。
本発明の請求項１０記載の発明は、ベクター情報でアニメーション情報を出力するアニメーション編集ツールのプラグインとしてアニメーション情報変換ツールが挿入され、該アニメーション情報変換ツールがアニメーション編集ツールのアニメーション情報をオブジェクト指向プログラミング言語で記載されるプログラムの出力形式に変換するアニメーション編集処理であって、アニメーション編集ツールムービーを解析しムービークリップからなるアニメーション編集ツールムービーを生成するムービー生成ステップと、アニメーション編集ツールからアニメーション編集ツールの構成要素を取得し、スクリプトオブジェクトを構築するオブジェクト構築ステップと、スクリプトオブジェクトの構成・変数をＸＭＬデータに変換するＸＭＬ変換ステップと、アニメーション編集ツールムービーにあるベクター画像をラスター画像に変換し複数のビットマップ画像ファイルを出力するビットマップ画像出力ステップと、前記複数のビットマップ画像ファイルを統合し１つのビットマップ画像ファイルを作成するビットマップ画像作成ステップと、前記ＸＭＬデータを前記プログラムのソースコードに変換するオブジェクト変換ステップと、前記プログラムのソースコードおよび統合した１つのビットマップ画像ファイルからランタイムを用いてオブジェクト指向プログラミング言語によるプログラムを作成するプログラム作成ステップとを含むことを特徴とする。
本発明の請求項１１記載の発明は、前記請求項１０記載のアニメーション編集プログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【００１０】
上記構成によれば、アニメ編集ツールでアニメーション情報をオブジェクト指向プログラミング言語によるソースに変換しＢＤなどの次世代光ディスクに書き出すことができるため、アニメーション編集における作業が軽減化される。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して本発明の実施の形態を詳しく説明する。
図１は、本発明によるアニメーション編集システムの概要を説明するための図である。アニメーション編集ツールとしてＦｌａｓｈ２があり、Ｆｌａｓｈ２にアニメーション情報変換ツール１がプラグインされる。このアニメーション情報変換ツール１がプラグインされたＦｌａｓｈ２では画面に表示されるメニューに必要なアニメーションや特典ゲームに必要なアニメーションなどが作成され、Ｊａｖａ形式の情報が出力される。
メニューに必要なアニメーションとは次世代光ディスクプレイヤ１０で再生されたとき、本編映像の上に表示されるメニューがせりあがってくるなどの動作をするものであり、その変化の度合いはユーザ操作により変化する。特典ゲームに必要なアニメーションも同様に本編映像の上で同様な動作をする。
【００１２】
アニメーション情報変換ツール１はＦｌａｓｈ２から動きの部分だけを抽出しベクター情報をパラパラ画像などに加工してＪａｖａ形式に変換する。
図２に本発明によるアニメーション編集システムを構成するアニメーション情報変換ツールのアニメーション情報の編集方法を示す。
図２（ａ）に示すようにアニメーション情報変換ツール１はＦｌａｓｈ２に対し編集命令を出力する。Ｆｌａｓｈ２では例えばアニメーションが矩形アニメーションであるとすると、このアニメーションの当初位置の情報（Ｘ1 ，Ｙ1 ）と形状を特定する情報であるアニメーション画像１１ａと、回転移動する位置の情報（Ｘn ，Ｙn ）のアニメーション画像１１ｂが与えられている。このアニメーション情報から多数のパラパラ画像１３ａ〜１３ｄを作って取得する。
【００１３】
このようにして取得したアニメーション定義コード・画像は、Ｊａｖａ形式で出力される。図２（ｂ）にパラパラ画像１３ａ〜１３ｄに変換されたアニメーション定義コード・画像３を示す。これにアニメーション実行コード４であるＲｕｎｔｉｍｅ，ユーザコード５および本編映像６を用いて本編映像に操作キーの対応付けなどをした動きアニメーションを再生するデータが次世代光ディスク９に書き出される。
ＲｕｎｔｉｍｅはＤＬＬで構成される共通ファイルであり、アニメーションを映像の上で動かすために必要なアプリケーションである。
また、ユーザコード５はプログラム開発ツール８を用いて作成されるコードであり、特定の操作キーとアニメーションの対応付けを行ったり、他の特定の操作キーを押したときの表示以外の処理などをしたりするものである。
【００１４】
映像編集ツール７は取得した映像を、動きアニメーションを所定の位置に表示するための編集を行うアプリケーションであり、これにより本編映像６が作られる。
次世代光ディスク９にＪａｖａを解釈するインタプリターが記録されており、インタプリターによってＪａｖａで記述されたアニメーション定義コード・画像３を次世代光ディスク９に書き出すことができる。
アニメーションを搭載された本編映像を記憶する次世代光ディスク９は次世代光ディスクプレイヤ１０によって再生することができる。
【００１５】
図３は、本発明によるアニメーション編集システムを物理的機能部として示したブロック図である。
この図はアニメーションオーサリング部２０，ＣＰＵ４０，記憶装置５０，Ｂｌｕ−ｒａｙ  Ｄｉｓｃオーサリング部６０，Ｂｌｕ−ｒａｙ  Ｄｉｓｃ書き出し装置７０がバス９０で相互に接続された状態が示されている。物理的機能部として表現した場合、本発明によるアニメーション編集システムはアニメーションオーサリング部２０，ＣＰＵ４０および記憶装置５０を含む部分に対応する。
アニメーションオーサリング部２０はＦｌａｓｈであり、アニメーションやメニューを作りインターネットなどのサイトで公開するためのソフトである。ＦｌａｓｈはＦｌａｓｈムービー入力部２１，Ｆｌａｓｈムービー編集処理部２２およびＦｌａｓｈムービー出力部２３を備えている。Ｆｌａｓｈムービー入力部２１は記憶装置５０に保存されているＦｌａｓｈムービーファイルを読み込み入力する部分，Ｆｌａｓｈムービー編集処理部２２はアニメーションとなるメニューなどが何色で、どのように動くというように編集するもので、Ｆｌａｓｈムービー出力部２３は編集処理部２２からの出力部である。
【００１６】
このアニメーションオーサリング部２０中にアニメーション情報変換ツールを構成するコンバータ３０が挿入されている。
コンバータ３０は大きく分けて２段階から構成されている。
１つはＦｌａｓｈが備えている機能部に要求を出すことによって情報を取得したり、Ｂｌｕ−ｒａｙで再生するときに都合のよい形式に編集し直したりという中間形式に変換する機能である。もう１つはＦｌａｓｈが備えている機能に対し働きかけて、メニューに貼りついている画像の情報についてＦｌａｓｈムービーファイルから画像ファイルを抜き出すものである。Ｆｌａｓｈムービーの構造をＸＭＬという形で覚えて画像の絵を中間的形式に落とすものである。アニメーション情報変換ツールのプログラムはハードディスクやＣＤなどに記憶され、このような記憶媒体によってユーザに提供される。
【００１７】
コンバータ３０はＦｌａｓｈ構造解析部３１およびＤＬＬ部３２を有している。Ｆｌａｓｈ構造解析部３１はＦｌａｓｈムービー構造から必要な画像の情報を指定してＸＭＬに変換するＸＭＬ出力部３１１およびＦｌａｓｈ内グラフィックをＰＮＧ画像ファイルに変換するＰＮＧ画像ファイル出力部３１２の機能を備えている。
またＤＬＬ部３２はＸＭＬ解析部３２２，Ｊａｖａ出力部３２３およびＰＮＧ画像ファイル統合部３２４の機能を備えている。
記憶装置５０は記憶領域としてＦｌａｓｈムービーファイルを記憶するＦｌａｓｈムービーファイル記憶部５１，ＸＭＬファイルを記憶するＸＭＬファイル記憶部５２，ＰＮＧ画像ファイルを記憶するＰＮＧ画像ファイル記憶部５３，Ｊａｖａソースファイルを記憶するＪａｖａソースファイル記憶部５４および統合ＰＮＧ画像ファイルを記憶する統合ＰＮＧ画像ファイル記憶部５５を備えている。
【００１８】
ＣＰＵ４０はアニメーションオーサリング部の各ブロックで表示された入力部，処理部，出力部，解析部およびＤＬＬ部の各プログラム，ファイルを読み込み、記憶装置５０から対応のファイルを読み出し処理し、記憶装置５０に記憶したり、出力部や解析部に処理した情報を渡したりすることによりＦｌａｓｈムービーからＪａｖａ形式でＪａｖａソースと統合ＰＮＧ画像を得るハードウエアである。
Ｂｌｕ−ｒａｙ  Ｄｉｓｃオーサリング部６０はＢｌｕ−ｒａｙ  Ｄｉｓｃに内蔵されるものであり、Ｂｌｕ−ｒａｙ  Ｄｉｓｃで再生できるような形式に変換するものである。
【００１９】
図４は、アニメーションオーサリング部の各機能ブロックを処理する手順で並べたものである。
Ｆｌａｓｈムービー入力部２１はＦｌａｓｈムービーファイル記憶部５１から読み出したＦｌａｓｈムービーをＦｌａｓｈムービー編集処理部２２に送る。
Ｆｌａｓｈムービー編集処理部２２はアニメーションとなるメニューが何色で、どのように動くというように編集し、ＸＭＬ出力部３１１はそのＦｌａｓｈムービー構造をＸＭＬに変換する。そして得られた構造情報のうち必要な画像の情報の要求をＰＮＧ画像ファイル出力部３１２に出力する。ＰＮＧ画像ファイル出力部３１２はこの要求を受けて要求対応の画像（フレームが動いたところを止めてつぎのフレーム）をＦｌａｓｈムービー編集処理部２２に出力させる。ＰＮＧ画像ファイル出力部３１２は得られたＦｌａｓｈ内グラフィックをＰＮＧ画像ファイルに変換してＦｌａｓｈムービー出力部２３に出力する。
【００２０】
Ｆｌａｓｈムービー出力部２３からはＰＮＧ画像ファイル出力部３１２のＰＮＧ画像ファイルがＰＮＧ画像ファイル記憶部５３に送られ記憶される。一方、ＸＭＬ出力部３１１のＸＭＬファイルはＸＭＬファイル記憶部５２に記憶される。ＸＭＬファイル記憶部５２に記憶されたＸＭＬファイルはＸＭＬ解析部３２２で解析され解析した情報がＰＮＧ画像ファイル統合部３２４に送られる。ＰＮＧ画像ファイル統合部３２４は解析した情報に基づき、多数のＰＮＧファイルを１つのＰＮＧ画像ファイルに統合する。統合されたＰＮＧ画像ファイルは統合ＰＮＧ画像ファイル記憶部５５に記憶されるとともにＪａｖａ出力部３２３に送られる。また、ＸＭＬ解析部３２２の解析した情報もＪａｖａ出力部３２３に送られる。Ｊａｖａ出力部３２３ではＸＭＬ情報はＪａｖａソースに変換されＪａｖａソースファイル記憶部５４に記憶される。
【００２１】
図５は、Ｆｌａｓｈムービーの構造解析からＢｌｕ−ｒａｙ規格ファイル生成までの処理手順を説明するための図である。
Ｂｌｕ−ｒａｙ規格ファイルを作成するまでには大きく分けて４つのステップで構成される。
ステップ１  Ｆｌａｓｈムービーの構造解析
ステップ２  ＸＭＬデータをもとにＪａｖａクラス作成，ＰＮＧファイルの統合
ステップ３  Ｒｕｎｔｉｍｅ機能を使う処理
ステップ４  オーサリングによる処理
本発明に係わる部分は上記ステップ１と２の部分である。  
【００２２】
○Ｆｌａｓｈムービーの構造解析
メモリ５０１に保存されているＦｌａｓｈムービー５１１はムービークリップという単位で構成されている。
図６に、Ｆｌａｓｈムービーのムービークリップの構造を示す。
ムービークリップ２４１はタイムライン２４１１，２４１２・・・２４１ｎで構成され、それぞれに時間軸を持っている。タイムラインの単位はフレームであり、各タイムラインは時間軸に沿った多数のフレームで構成され、各フレームのレイヤ２４０はグラフィックとしてベクター画像２４０１，ラスター画像２４０２の内１個以上を持ち、０個以上のムービークリップ２４０３を持っている。ムービークリップ２４０３が０の場合はムービークリップが存在しない。さらに時間変化する画像情報が設定されている。実際に動かすアニメーションはこのフレーム単位毎に再生される。
【００２３】
各機能部分の構成，動作は以下の通りである。
（１）ムービークリップは、Ｆｌａｓｈではムービークリップのタイムラインは１つだが、１つのタイムラインをラベルによって区切ることにより、上述したように複数のタイムラインを表現する。ムービークリップに複数のタイムラインを持たせることにより複数の動きを持たせることができるようにしている。
（２）タイムラインは、上述したように時間に応じて変化する１個以上の座標情報，グラフィックおよびタイムラインと同期して動作する０個以上のムービークリップから構成される。
（３）グラフィックは上述したようにベクター画像（画像をベクトルで表現したもの）とラスター画像（画像をピクセルの集まりで表現したもの）の何れかである。文字もベクター画像，ラスター画像で図形として取り扱っている。
（４）タイムラインに配置されたグラフィックおよびムービークリップはレイヤによって、重ね合わせの仕方を定義している。重ね合わせの仕方は以下の２種類がある。
単純な重ね合わせとマスク（重ね合わせ対象のレイヤのうち、マスクレイヤに配置されたグラフィック・ムービークリップの領域のみを表示する）である。
（５）シーンは、ムービークリップの集まりを定義したものである。シーンによってムービークリップの集まりを定義することにより、１つのＦｌａｓｈムービーで複数の見た目を定義することができるようにしている。
【００２４】
図７はＦｌａｓｈムービーの構造解析の手順を示す図である。
（１）まず、Ｆｌａｓｈムービーのデータを読み込み、一時メモリ（内部メモリ）５０１にムービークリップやアニメーションなどのＦｌａｓｈムービーの構造に対応付いた構造体を作っていく。この構造体を作るときにＦｌａｓｈに対し働きかけて座標情報やどのようなムービークリップがあるかなどの構成の情報を受ける。
具体的にはステップ（以下「Ｓ」という）１０１に示すようにＦｌａｓｈムービー内の構成要素をＦｌａｓｈから取得し、JavaScriptオブジェクトを構築する。Ｆｌａｓｈムービー内の構成要素は５１１の枠内に例示されている。
個別的な処理としてつぎのようなことを行う。
・ムービークリップごとにMovieClip オブジェクトを生成する。
・各ムービークリップのタイムラインはラベルごとに区切り、それぞれに応じてAnimation オブジェクトを生成する。
・各タイムラインのレイヤごとにLayer オブジェクトを生成する。
・各レイヤのフレームごとにFrame オブジェクトを生成する。
・各フレームのグラフィック・ムービークリップごとにElement オブジェクトを生成する（グラフィック・ムービークリップヘの参照として、名前を保持する）。
・シーンごとにScene オブジェクトを生成する。
・各シーンのムービークリップごとにMovieClipInstance オブジェクトを生成する。
このように生成されたJavaScriptオブジェクトは５２２の枠内に例示されている。
【００２５】
（２）つぎにコンバータがＦｌａｓｈムービーにある画像情報をラスター画像に置き換えていく。
具体的にはＳ１０２に示すようにＦｌａｓｈムービーにあるグラフィックをラスター画像に変換する。ムービークリップ５１１内のベクター画像５１１１がラスター画像５１１２に変換されて内部メモリに戻されている。
この処理はＦｌａｓｈの編集機能を使って行い、変換結果はＦｌａｓｈムービーに反映される。
【００２６】
（３）ついで、JavaScriptというプログラミング言語の中でＸＭＬデータを作るために内部メモリ５０１に展開して保持しており、この内部メモリ５０１内のすべてのＦｌａｓｈの情報を読み出し、内部メモリ５０１の内容を参照してＸＭＬデータに変換していく。
具体的にはＳ１０３に示すようにJavaScriptオブジェクト５２２の構成・変数をＸＭＬデータ５２１に変換する。
個別的な処理としてつぎのようなことを行う。
・MovieClip オブジェクトはmovieClip タグに変換する。
・Animation オブジェクトはanimation タグに変換する。
・Layer オブジェクトは通常レイヤの場合、layer タグに変換し、マスクレイヤの場合、maskタグに変換する。
・Frame オブジェクトはframe タグに変換する。
・Element オブジェクトはelement タグに変換する。Element オブジェクトがグラフィックの場合はグラフィックの名前が格納され、ムービークリップの場合はムービークリップの名前が格納される。
・Scene オブジェクトはscene タグに変換する。
・MovieClipInstance オブジェクトはmovieClipInstance タグに変換する。
【００２７】
（４）つぎにラスター画像を複数のＰＮＧ画像ファイルに変換していく。
具体的にはＳ１０４に示すようにラスター画像５１１２をＰＮＧファイル（複数）５３１に変換する。すなわちＦｌａｓｈムービーの全ムービークリップに含まれるラスター画像５１１２を、それぞれＰＮＧファイル５３１としてハードディスク５０２に保存する。このとき、グラフィックの名前をファイル名として保存する。
【００２８】
図５におけるＳｔｅｐ２のＪａｖａクラス作成とＰＮＧファイル統合について説明する。
図８は、ＸＭＬデータからＣ++を介して１つのＰＮＧファイルおよびＪａｖａソースコードを生成する処理手順を示す図である。
（１）まずＸＭＬデータを解析し、Ｃ++オブジェクトを構築する（Ｓ２０１）。
具体的には内部メモリ５０１内のＸＭＬデータ５２１をＳ２０１においてＣ++オブジェクトに変換し、内部メモリ５０１内に記憶する。
個別的な処理としてつぎのようなことを行う。
・movieClip タグはMovieClip オブジェクトに変換する。
・animation タグはTimelineオブジェクトに変換する。
・1ayer タグはLayer オブジェクトに変換する。
・maskタグはMaskLayer オブジェクトに変換する。
・frame タグはFrame オブジェクトに変換する。
・element タグはタイプがグラフィックである場合はImageRegion オブジェクトに変換する。タイプがムービークリップである場合はMovieClipElementオブジェクトに変換する。
・scene タグはScene オブジェクトに変換する。movieClipInstance タグはMovieClipInstance オブジェクトに変換する。
【００２９】
ここで、ＸＭＬデータ（ＸＭＬ規格に則って構造を記述したテキスト形式データ) を介してJavaScriptオブジェクト→Ｃ++オブジェクトに変換する理由は以下の通りである。
図９はＳｔｅｐ１とＳｔｅｐ２とにおいてＸＭＬとＰＮＧ画像を介した変換を説明するための図である。
ＸＭＬデータの解析、ＰＮＧファイルの読み込み、書き込みは多くのプラットフォームでサポートされている。したがって多くのプラットフォームでサポートされているデータ形式をＳｔｅｐ１とＳｔｅｐ２の連絡に使用することにより、Ｓｔｅｐ１とＳｔｅｐ２がプログラムのレベルで密接に依存しあうことを防止する。この結果、変換元データ（Ｆｌａｓｈムービー）／変換先ソースコード（Ｊａｖａソースコード）の変更を、Ｓｔｅｐ１，Ｓｔｅｐ２のいずれかの変更のみで実現できるからである。
【００３０】
（２）つぎにＣ++オブジェクトの各パーツ間の構造をオブジェクトとして再構築する（Ｓ２０２）。
ＸＭＬデータでは、Ｆｌａｓｈムービーに登場した順序でムービークリップの情報とグラフィックの情報が列挙されており、ムービークリップ間とムービークリップとグラフィック間は名前によって関連付けられている。ここでは、その名前の関係を、オブジェクト間の参照関係に反映する。以下の関連付けがＣ++オブジェクトに反映される。
・ムービークリップからムービークリップヘの関連付け
・ムービークリップからグラフィックヘの関連付け
内部メモリ５０１のＣ++オブジェクト５２３の内容をＳ２０２で再構築して内部メモリ５０１内に記憶する。
【００３１】
（３）つぎに複数のＰＮＧ画像ファイルを１つのＰＮＧ画像ファイルにまとめる（Ｓ２０３）。具体的にはハードディスク５０２中の複数のＰＮＧ画像ファイル５３１をＳ２０３で１つのＰＮＧ画像ファイル５３２に配置し、ＰＮＧ画像ファイル５３２をハードディスク５０２中に記憶する。そしてＰＮＧ画像ファイル配置の情報はＣ++オブジェクトの格納領域５２３に格納される。
図１０に複数のＰＮＧ画像ファイルを１つのＰＮＧ画像ファイルに配置する例を示す。  ＢＤ−Ｊでは、ＰＮＧ画像ファイルを読み込む場合、複数のファイルとして別々に読み込むよりも、1 つのファイルとして読み込んだほうが、高速に画像を読み込むことができる。従って、以下のように複数のＰＮＧ画像ファイルを１つのＰＮＧ画像ファイルにまとめる。ＢＤ−Ｊには、メモリに読み込むことのできる画像サイズに制限があるため、以下のようなロジックでまとめるサイズを決定する。
１．2048×2912の領域に配置処理を試行
２．4096×1456の領域に配置処理を試行
３．1456×4096の領域に配置処理を試行
図１０ではＰＮＧ画像ファイルＡ，Ｂ，Ｃが４０９６ｐｉｘｅｌ×４０９６ｐｉｘｅｌ内に配置された状態が示されている。上記のいずれでも配置できなかった場合は、変換できないムービーとみなし、エラーを表示する。
【００３２】
（４）ついでＣ++オブジェクトをＪａｖａソースコードに変換する（Ｓ２０４）。
具体的な処理としてつぎのようなことを行う。
・MovieClip オブジェクトは、ランタイムのMovieClip クラスを継承したクラスとして出力する。
・Scene オブジェクトは、DefaultAmimationEnvironment クラス、MovieClipFactoryクラスとして出力する（このとき、１つのＰＮＧファイルにまとめる前のファイル名と、１つのＰＮＧファイルにまとめたときの座標の対応関係がＪａｖａコードの中に出力される）。
ここで、ランタイムを想定したクラスを出力する理由は以下の通りである。
・ＢＤ−Ｊのような、プロファイル（例えば、携帯電話向けＪａｖａなど）固有の処理をランタイム内に定義することにより、ランタイムを差し替えるだけで様々なプロファイルで実行することができるからである。
・全てのMovieClip で共通の手続き（アニメーションの開始、停止）をランタイム内のクラスとして共通化することにより、本ステップでは個々のアニメーションに関する最低限の情報のみを出力すればよいからである。
【００３３】
図１１は、Ｊａｖａソースコード作成からＪａｖａコードのコンパイルまでの処理手順を説明するための図である。
コンバータのユーザは、Ｓｔｅｐ２でＦｌａｓｈムービーから変換したＪａｖａソースコードと、ランタイムＪＡＲファイルを使い、Ｊａｖａプログラムを作成する。
この作業は以下の手順で行う。
（１）Ｊａｖａソースコードの作成（Ｓ２−０１）
コンバータのユーザはテキストエディタなどを使って、以下の処理をＪａｖａソースコードとして記述する。
・リモコン操作に対して、どのムービークリップのどのタイムラインを動かすか
例）リモコンの「ポップアップメニュー」ボタンを押すとMENUムービークリップのOPENタイムラインが動く、などである。
動きの指定は、ランタイムヘの指示として記述する。すると、ランタイムが自動的にＳｔｅｐ２の情報にもとづいて、画面にアニメーションを表示する。
・リモコン操作に対して、どのような処理を実行するか
例えば再生・一時停止・チャプタージャンプなどである。
・その他、リモコン操作に関係なく実行する処理
再生開始時の処理（ランタイムに対する初期化指示など），ある時間ごとに定期的に実行する処理，再生している映像の位置によって実行する処理などである。
【００３４】
（２）Ｊａｖａコードのコンパイル・ＪＡＲファイル化（Ｓ２−０２）
コンバータのユーザはＪａｖａコンパイラを使って、Ｊａｖａソースコード（Ｓｔｅｐ２）５４２とＪａｖａソースコード（１）５４３をコンパイルし、ＰＮＧ画像ファイル５３２とあわせて実行形式ファイルであるＪＡＲファイル５５２にまとめる。
【００３５】
図１２はオーサリングの手順を説明するための図である。
コンバータのユーザは、Ｓｔｅｐ３で作成したＪａｖａプログラムとランタイム、映像・音声ストリームなどの素材をもとにＢｌｕ−ｒａｙディスクを作成する。
この作業は以下の手順でおこなう
（１）オーサリング（Ｓ３−０１）
コンバータのユーザはオーサリングソフトを使って、以下のファイルをＢｌｕ−ｒａｙ規格ファイルとしてまとめる。
・Ｓｔｅｐ３で作成したＪＡＲファイル５５２
・ランタイムＪＡＲファイル５５１
・映像・音声ストリームなどの素材５６１
（２）ライティング（Ｓ３−０２）
コンバータのユーザはライティングソフトを使って、Ｂｌｕ−ｒａｙ規格ファイル５６２をＢｌｕ−ｒａｙディスクに書き込む。この作業によって、ＢＤプレイヤで再生可能なディスクが完成する。
【００３６】
以上の実施の形態は、書き込む次世代光ディスクをＢｌｕ−ｒａｙ  ｄｉｓｃを対象としてビットマップ画像ファイルがＰＮＧ画像ファイルである例を説明したが、他のビットマップ画像ファイルであっても良い。また、ＸＭＬデータを介してＪａｖａＳｃｒｉｐｔオブジェクトをＣ++オブジェクトに変換する処理を挿入した例を示したが、本発明はＣ++オブジェクトに変換する処理を設けなくても成り立つ。
【産業上の利用可能性】
【００３７】
アニメーション画像をＪａｖａ形式に変換して次世代ＤＶＤに書き出しすることができるアニメーション編集システムである。
【図面の簡単な説明】
【００３８】
【図１】本発明によるアニメーション編集システムの概要を説明するための図である。
【図２】本発明によるアニメーション編集システムを構成するアニメーション情報変換ツールのアニメーション情報の編集方法を説明するための図である。
【図３】本発明によるアニメーション編集システムを物理的機能部として示したブロック図である。
【図４】アニメーションオーサリング部の各機能ブロックを処理する手順で並べた図である。
【図５】Ｆｌａｓｈムービーの構造解析からＢｌｕ−ｒａｙ規格ファイル生成までの処理手順を説明するための図である。
【図６】Ｆｌａｓｈムービーのムービークリップの構造を説明するための図である。
【図７】ＦｌａｓｈムービーからＸＭＬデータ，ＰＮＧ画像ファイルを作成するまでの処理手順を示す図である。
【図８】ＸＭＬデータからＣ++を介して１つのＰＮＧ画像ファイルおよびＪａｖａソースコードを生成する処理手順を示す図である。
【図９】Ｓｔｅｐ１とＳｔｅｐ２とにおいてＸＭＬとＰＮＧ画像を介した変換を説明するための図である。
【図１０】１つのＰＮＧ画像を作成する方法を説明するための図である。
【図１１】Ｊａｖａコード作成からＪａｖａコードのコンパイルまでの処理手順を説明するための図である。
【図１２】オーサリングの手順を説明するための図である。
【図１３】従来のＦｌａｓｈの処理の方法を説明するための図である。
【符号の説明】
【００３９】
１  アニメーション情報変換ツール  
２  アニメーション編集ツール（Ｆｌａｓｈ）
３  アニメーション定義コード・画像
４  アニメーション実行コード
５  ユーザコード
６  本編映像
７  映像編集ツール
８  プログラム開発ツール
９  次世代光ディスク（ＢＤ）
１０  次世代光ディスクプレイヤ
１３ａ〜１３ｄ  パラパラ画像
２０  アニメーションオーサリング部
２１  Ｆｌａｓｈムービー入力部
２２  Ｆｌａｓｈムービー編集処理部
２３  Ｆｌａｓｈムービー出力部
３０  コンバータ
３１  Ｆｌａｓｈ構造解析部
３２  ＤＬＬ部
４０  ＣＰＵ
５０  記憶装置
６０  Ｂｌｕ−ｒａｙ  Ｄｉｓｃオーサリング部
７０  Ｂｌｕ−ｒａｙ  Ｄｉｓｃ書き出し装置
８０  Ｂｌｕ−ｒａｙ  Ｄｉｓｃ
【図１】
2010092138.tif 000003
【図２】
2010092138.tif 000004
【図３】
2010092138.tif 000005
【図４】
2010092138.tif 000006
【図５】
2010092138.tif 000007
【図７】
2010092138.tif 000008
【図８】
2010092138.tif 000009
【図９】
2010092138.tif 000010
【図１０】
2010092138.tif 000011
【図１１】
2010092138.tif 000012
【図１２】
2010092138.tif 000013
【図１３】
2010092138.tif 000014
【図６】
2010092138.tif 000015