JP2013239200A - オーサリング・ツールおよびこれを実装するための方法 - Google Patents

オーサリング・ツールおよびこれを実装するための方法 Download PDF

Info

Publication number
JP2013239200A
JP2013239200A JP2013150382A JP2013150382A JP2013239200A JP 2013239200 A JP2013239200 A JP 2013239200A JP 2013150382 A JP2013150382 A JP 2013150382A JP 2013150382 A JP2013150382 A JP 2013150382A JP 2013239200 A JP2013239200 A JP 2013239200A
Authority
JP
Japan
Prior art keywords
author
content
declaration
instructions
medium
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013150382A
Other languages
English (en)
Inventor
H Mardigian Shant
マーディジアン,シャント,エイチ
Zink Michael
ジンク,ミヒャエル
l nelson Jeremy
ネルソン,ジェレミー,エル
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thomson Licensing SAS filed Critical Thomson Licensing SAS
Publication of JP2013239200A publication Critical patent/JP2013239200A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/322Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier used signal is digitally coded
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/34Indicating arrangements 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2541Blu-ray discs; Blue laser DVR discs

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Stored Programmes (AREA)
  • Digital Computer Display Output (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】ブルーレイ・ディスクおよび他のメディアのオーサリングにおいて使用するための新しいツール(すなわちアプリケーション)の提供。
【解決手段】BD-Jiveプレーヤーとともに用いられたときに、作者が、XMLやJava(登録商標)のコーディングを必要としないユーザー・インターフェース(UI)を使って任意の必要とされる追加的情報を提供できるものを提供する。本ユーザー・インターフェース(UI)は、作者が情報をより一般的に(すなわち、Java(登録商標)コーディングやXMLの知識をもつことなく)表現することを許容し、するとオーサリング・ツールが関連するXMLファイルやJava(登録商標)コードを必要に応じて生成してくれる。
【選択図】図2

Description

関連出願への相互参照
本願は米国特許法第119条(e)により、2007年4月11日に出願された米国仮特許出願第60/922,978号の優先権を主張する。該仮出願の教示は本明細書に組み込まれる。
技術分野
本願の原理はブルーレイ・ディスクに関する。より詳細には、本願の原理はブルーレイ・ディスクおよび他のデジタル・メディアのオーサリングに関する。
ブルーレイ・ディスクは映画またはゲームのような何らかのコンテンツを含むが、多くの追加的情報およびタイトル、メニュー、テキスト…等を与えるプログラミングをも含む。伝統的に、この追加的情報の多くならびにそれが表す書式および編成はJava(登録商標)コードの形で与えられていた。つまり、作者は、たとえば映画中の適切な場所にメニューおよびタイトルを挿入したり、ゲーム中の適切な場所にグラフィックを挿入したりするJava(登録商標)コードを書く。
本開示から明白となるように、ブルーレイ・タイトルをJava(登録商標)で手動でコーディングするのは効率的ではない。
本願の原理は、ブルーレイ・ディスクをオーサリングする際に使うための新しいツール(すなわちアプリケーション)を提供する。BD-Jiveプレーヤーと一緒に使われるとき、作者は任意の要求される追加的情報を、XMLやJava(登録商標)コーディングを必要としないユーザー・インターフェース(UI)を使って提供できる。むしろ、UIは作者が情報をより一般的に表現することを許容し、次いでエンジンが関連するXMLファイルおよびJava(登録商標)コードを必要に応じて生成してくれる。
ある実装によれば、本稿で開示される新しいツール(アプリケーション)は、JiveScript〔ジャイブスクリプト〕、JiveAuthor〔ジャイブオーサー〕およびBD-J ScriptingModule〔BD-Jスクリプティング・モジュール〕と称される。これらのアプリケーションは、BD-Jive(本稿では同義でBD-Jiveプレーヤーとも称される)とともに、ブルーレイ・ディスクのオーサリングの際に以下の利点を提供する:
1.作者はJava(登録商標)やXMLの経験をもつ必要がない;
2.BD-Jアプリケーションの開発をスピードアップする;
3.すべての生成されるコードはテストされ、作者は非常に詳細なユニット・テストを実行する必要がないので、テスト期間を短縮した;
4.ユーザー・フレンドリーなUI環境を提供した。
そのようなイニシアチブを取ることの背後にある動機は、ブルーレイ規格とともに機能するそのような環境を提供するツールが市場にないことである。
アニメーション・エンジン(たとえばBD-Jive)の使用により、作者はメニュー位置、アニメーション型および他の情報のような必要な情報を、XML言語の形で提供する。次いで、必要なメニュー項目またはゲーム・グラフィックまたはその他の特徴を再生するために、プレーヤーにおいてそのXMLがレンダリングされる。
作者はまた、java(登録商標)プログラムを追加することによってアニメーション・エンジンの機能性を拡張する選択肢をもつ。これらのプログラムは、映画を通じてナビゲートする〔映画内を行き来する〕、ブックマークを保存する、リアルタイムでアニメーション・オブジェクトと対話するといった追加的なタスクを実行する。これらの機能のいくつかは、本稿でBD-Jとも称されるブルーレイ・アプリケーション・プログラミング・インターフェース(API)とのインターフェースをもつことを要求する。よって、この型のインターフェースを簡単にし、作者にとってよりフレンドリーにするために、スクリプティング・ライブラリが導入された。
これらおよびその他の側面は、ある実装に基づいて達成される。該実装では、コンテンツ記憶媒体をオーサリングする方法が、前記媒体をオーサリングするために作者から入力を受け付ける段階と、作者の入力に応答して前記媒体をオーサリングするための命令の組を、前記媒体からの前記コンテンツのその後の再生と互換な言語で生成する段階と、生成された命令の組を前記媒体上に記憶する段階と、コンテンツを前記媒体上に記憶する段階とを含む。本方法はさらに、前記命令の組の中に含まれる一つまたは複数の命令に応答して前記媒体上に記憶されたライブラリ・ルーチンを呼び出す段階を含むことができる。
一つまたは複数の実装の詳細が付属の図面および以下の記述において記載される。たとえ一つの特定の仕方で記述されていても、実装がさまざまな仕方で構成または具現されてもよいことは明らかなはずである。たとえば、実装は、方法として実行されてもよいし、あるいは一組の動作を実行するよう構成された装置または一組の動作を実行するための命令を記憶する装置として具現されてもよい。他の側面および特徴は、付属の図面および請求項と一緒に考慮される以下の詳細な記述から明白になるであろう。
図面において、各図を通じて同様の参照符号は同様の要素を指す。
ライブラリ・パッケージ(JiveScript)を表すブロック図である。 BD-Jオーサリング環境における本願の原理の例示的な実施形態のブロック図である。 本願の原理の例示的な実施形態に基づく、BD-Jアニメーション・エンジンにおける単一のアニメーション・ユニットの例を示す図である。 本願の原理の例示的な実施形態に基づくオーサリング・ツール(JiveAuthor)の、例としてのプレビュー・パネルを示す図である。 本願の原理の例示的な実施形態に基づく宣言ファイルの図的な表現である。 本願の原理の例示的な実施形態に基づくキー・エディタ画面の、例としての図である。 本願の原理の例示的な実施形態に基づくメッセージ画面の、例としての図である。 本願の原理の例示的な実施形態に基づくプロパティ・パネルの、例としての図である。 本願の原理の例示的な実施形態に基づくBDJOイメージ・ジェネレータ・インターフェースの、例としての図である。 本願の原理の例示的な実施形態に基づく、BD-Jクラス・メソッドおよび各メソッド内の追加されたコマンド/論理ブロックの、例としてのツリー・ビューである。 本願の原理の例示的な実施形態に基づくネストされた論理ブロックの、例としての図である。 本願の原理の例示的な実施形態に基づく論理文の、例としてのインターフェース・ビューである。 本願の原理の例示的な実施形態に基づく、条件フィールドにおいて作者に呈示される変数の、例としての図である。 本願の原理の例示的な実施形態に基づく、1パラメータをもつ第一のサンプルの、例としての図である。 本願の原理の例示的な実施形態に基づく、複数パラメータをもつ第二のサンプルの、例としての図である。 本願の原理の例示的な実施形態に基づく、特定のノード上に作者のオプションを示す、例としての図である。 本願の原理の例示的な実施形態に基づくJiveScript作者インターフェースの、例としての図である。 JiveTree内のすべてのオブジェクトのツリー・ビューを作者に提供するJive Nodeセレクタの例としての図である。 本願の原理の例示的な実施形態に基づくスクリプティング・モジュールによって実行されるスクリプト生成タスクの高レベルのブロック図である。 本願の原理の例示的な実施形態に基づくスクリプティング・モジュール・ダイアログ・インターフェースの、例としての図である。 本願の原理の例示的な実施形態に基づく、記憶媒体上にコンテンツをオーサリングする方法を示す、例としての高レベルの流れ図である。
ここで本願の原理について述べる。本願の原理の諸適用の間の分離を維持するため、複数のセクションにおいて述べる。
JiveScript
本願の原理の実装の例示的な実施形態によれば、新しいアプリケーション・プログラミング・インターフェース(API)が開発された。このAPIは本稿ではJiveScriptと称される。JiveScriptの一つの特定の実装の開発は、java(登録商標)ベースのブルーレイROMオーサリング機能を高めたいという望みから出てきた。この開発は、プログラマによって使用されるより簡単でより記述的なインターフェース/ファサードを提供することによって、BD-J APIとインターフェースをもつjava(登録商標)コードを書くプロセスを効率化し、簡単にする。
当業者は、BD-Jがブルーレイのための進んだコンテンツをサポートする対話的プラットフォームであることを認識するであろう。BD-Jは、ブルーレイ・ディスク・タイトル上のボーナス・コンテンツが、標準的なDVDによって提供されるボーナス・コンテンツよりずっと洗練されたものとなることを許容する。たとえば、ネットワーク・アクセス(更新された予告編をダウンロードする、あるいはライブ・スタジオ・イベントにアクセスするためなど)、ピクチャー・イン・ピクチャーおよびローカル記憶へのアクセスが含まれる。BD-Jはブルーレイ・ディスク協会(Blu-ray Disc Association)によって開発された。ビデオ・コンテンツをサポートするすべてのブルーレイ・ディスク・プレーヤーはBD-Jをサポートすることが要求されるが、初期のプレーヤーは、一つを例外として(ソニーPS3)いずれも、拡張されたローカル記憶(持続性メモリ)、ピクチャー・イン・ピクチャーまたはインターネット・アクセスといった進んだ機能をサポートしていない。まとめて、これらの機能(インターネット・アクセス以外)は「ボーナス・ビュー」と称され、インターネット・アクセスの追加は「BDライブ」と称される。
BD-J APIを使ってある種のタスクを実行することは、非常に大量の冗長な手動コード生成を必要とする。JiveScriptの使用を通じて、本願の原理は、BD-J APIの詳細すべてをカプセル化するJava(登録商標)コードのライブラリを提供し、ブルーレイ作者にとって非常に有用かつフレンドリーな方法および通知プロセスを提供する。
本願の原理のJiveScript適用は、ブルーレイBDROMを制作する際に作者が生成するタスクをスクリプト化することの複雑さを著しく簡略化する。JiveScriptは、BD-J APIとインターフェースをもち、該APIの複雑さをカプセル化する一切の必要なjava(登録商標)コードおよび論理を提供(すなわち生成)し、作者に、頻繁に使用されるオーサリング機能の扱いに対するより有意味なアプローチを提供する。
本願の原理のある実装によれば、JiveScript APIが提供する機能のいくつかは次のものがある。
1.JMFプレーヤーの使用を抽象化して、より簡略化され、簡単に理解できるインターフェースにする(当業者は、JMFプレーヤーがブルーレイ環境に存在するデフォルトのjava(登録商標)メディア・プレーヤーであることを認識するであろう)。
2.プレーヤーがメイン・フィーチャー、メイン・メニューまたは他のHDもしくは標準精細度クリップのいずれを再生しているかのプレイバック・モードの概念を導入する。
3.作者はプレイリストをより有意味な名前にマッピングするオプションをもつ。たとえば、作者はプレイリスト「00001」を「メイン・フィーチャー」に、あるいは「00002」を「予告編1」にマッピングでき、その後、プレイリストをその番号ではなく名前により参照できる。番号が変わる場合、作者は、コード内の多くの場所ではなく、一箇所におけるマッピングを変更するだけでよい。
4.オーディオおよび字幕ストリームを簡単に管理する。JiveScriptはストリームをより有意味な名前にマッピングする機構を提供し、すべての必要な論理が置かれる単一の場所において作者スクリプト(author script)に通知する通知機構を用いる。これは、簡単にメンテナンス可能なコードを提供する。例として、このセクションでは、オーディオまたは字幕ストリームが、「注釈1」およびメイン字幕ストリームといったより有意味な名前にマッピングされる。これらの字幕がコードの任意のセクションから変更されるとき、通知が単一のモジュールに送られる。そのような条件のもとで実行されるために必要とされるすべての論理は、一つの領域に置かれることができ、よって簡単にメンテナンスできる。
5.サウンドを再生するすべての詳細のアブストラクトを一つのライブラリ内にもつことによる、サウンドを再生するためのより簡単なアプローチ。作者はそれらのアブストラクトをUIから使うことができる。
6.作者のスクリプトに対して簡単に送達されるメディア通知機構。たとえば、作者は、メディアの終わりに達したときなどに通知される。
7.作者に対して、メディア時間通知を追加するためのより簡単なアプローチを提供する。
上述したように、JiveScriptが提供する一つの利点は、BD-J APIの複雑さを隠し(すなわちカプセル化し)、作者に対して、我々の制作フィーチャーとより整合する、より有意味なインターフェースを提供することである。この概念の若干の例は次のようなものがある。
1.作者がメイン・フィーチャーを再生したい場合、作者は次のスクリプトをコード中に入れるだけでよい:
Figure 2013239200
JiveScriptなしで作者がこれをする(すなわちメイン・フィーチャーを再生する)ことを要求されたとすると、作者は次のコードを書かねばならないであろう:
Figure 2013239200
このように、JiveScriptはそのような諸機能をライブラリにおいてカプセル化し、そのようなライブラリをコールするためのコードを動的に生成する。
2.JiveScriptが提供する利点のもう一つの例は、ストリーム・マネージャ(StreamManager)のマッピングおよび通知機能である。JiveScriptはすべてのマッピングを孤立させ、オーディオまたは字幕ストリームが単一の場所に変化したときに、普通なら作者が実行することを要求されるすべての論理を実行する。JiveScriptは初期化時にBDJiveアプリケーションに通知し、よって、作者はストリーム・マッピングを行うコマンドを置くことができる。すると作者は、アプリケーション・コードを通じて、マッピングされた名前を使用できる。例として、JiveScriptは、ストリーム・マッピングを初期化するために作者のスクリプトに基づいて、次のメソッドを呼び出す:
Figure 2013239200
初期化完了後、コードのどのセクションがストリームを変えたかにかかわらず、作者は同じスクリプト中への下記の通知を受け取る。これは、作者の観点からは必要である。作者は選択されたストリームをレジストリ中に保存したり、あるいはメイン字幕が変わるときに注釈ストリームを修正したりするなどしなければならないことがありうるからである。
Figure 2013239200
たとえば、作者は、アプリケーションのどこからでも、ストリームを英語に変えるために、次の行を使うだけでよい。
Figure 2013239200
引き続いて、streamInfoMainAudioLanguageChanged〔ストリーム情報メイン・オーディオ言語変更〕メソッドをコールし、変更後の言語を渡すことによって、作者のスクリプトに通知が送られる。
3.JiveScriptを使って、作者に検索するオプションを提供することによって、作者は、再生モード型が何であるかを知る手段をもつ。これは、異なる型のコンテンツについて異なるメニューがある場合に非常に重要である。たとえば、JiveScriptでは、作者はそのような論理を非常に簡単に実行できる。これは、BD-Jではできないことである。
if(MediaPlayer.get().getPlaybackMode()==MediaPlayer.FEATURE-PLAYBACK){
//ここで論理を実行
}
図1は、本願の原理の例示的な実施形態に基づく、JiveScriptを構成するライブラリ・パッケージ104を要約するブロック図100を示している。作者スクリプト102はJiveScriptライブラリ104とのインターフェースを提供する。JiveScriptライブラリでは、作者は制作環境において上で議論した、より有意味な名前にアクセスできる。スクリプティング・モジュール204(図2参照)が作者スクリプト102を生成し、JiveScriptにおいて利用可能なAPIを使用する。JiveScriptライブラリ104は作者入力に応答し、BD-J API106への適切なJava(登録商標)コードおよび論理を生成する。JiveScriptライブラリ104のいくつかの例は、これに限られないが、デバッグ(Debug)、ストリーム・マネージャ(StreamManager)、メディア・プレーヤー通知器(MediaPlayerNotifier)、プレイリスト・マネージャ(PlaylistManager)、レジストリ・アクセス(RegistryAccess)、メディア・プレーヤー(MediaPlayer)およびブックマーカー(Bookmarker)を含む。
当業者は、本願の原理のJiveScript適用が、Java(登録商標)コードおよび対応する論理の生成において作者を支援することを認識するであろう。しかしながら、それぞれのプロジェクトのためのXMLファイル(たとえばデータベース)の生成が残っている。さらなる実装によれば、本稿で「JiveAuthor」と称されるもう一つのオーサリング・ツールがBDJiveプロジェクトのために必要なXMLファイルを生成することにおいて作者を支援する。
本稿での用法では、用語「JiveAuthor」は、本稿で開示されるような出願人のオーサリング・ツールを指す。「JiveScript」はBD-JのAPIを使って構築された諸ライブラリである。「BDJive」は、画面上の描画を扱う、出願人によって開発されたアニメーション・エンジンである。BDJiveはまたBD-JグラフィックAPIを使って開発された。
JiveAuthor―BDJive XML生成器
本願の原理のある例示的な実施形態によれば、JiveAuthorと称されるシステムが、作者に、BDJiveプロジェクトについての必要なXMLファイルを生成することを許容する。より特定的には、JiveAuthorシステムは必要なXMLファイルを生成でき、作者がXML言語および/またはこれにまつわるあらゆる複雑な詳細に通じていることを要求することはない。
このJiveAuthorシステムは、グラフィカル・ユーザー・インターフェースからあらゆるBDJiveエレメントを定義することにおいて作者を支援する。これらのエレメントは、たとえば、タイムライン、レイヤー、ボタン、グラフィック、テキストおよび宣言された資源〔リソース〕を含む。
本願の原理に基づくJiveAuthor XML生成器は、BD-Jディスク・オーサリングのプロセスを促進する。このJiveAuthor XML生成器は、JiveAuthorツールのようなツールのセットと、作者が資源を宣言する、グラフィックを配置する、アニメーションを宣言するなどといったことを許容する少なくとも一つのグラフィカル・ユーザー・インターフェースとを提供する。するとJiveAuthor生成器がBDJive準拠XMLを生成する。このように、作者はJava(登録商標)プログラミングを全く理解する必要がない。Java(登録商標)プログラミングは、より簡単な作業フローを許容するよう抽象化されるからである。JiveAuthorツールのいくつかの例示的な機能は次のとおり。
1.作者は画像、サウンドおよびフォントを宣言でき、ツールが対応する宣言タグを生成する;
2.作者はタイムライン、レイヤー、ボタン、グラフィック、テキストおよびパンチ(Punch)といったBDJiveエレメントを生成でき、これらのエレメントをUIから操作できる。すべての対応するXMLエレメントが生成される;
3.作者はキー・フレームを作成し、各フレームにおける各エレメントについて異なる属性を割り当てることができ、すべての対応するXMLタグが生成される;
4.ツールはエレメントのグラフィックな表現を表示する。
当業者は、BD-Jオーサリング環境の典型的な実装には4つの部分があることを認識するであろう。図2を参照すると、これらの部分はブロック202、204、206および208によって表されている。BDJiveプレーヤー206はJiveScriptライブラリ208とともに、作者の生成したコンテンツとともに最終的なディスクに含められる。JiveAuthor202およびスクリプティング・モジュール204は、作者がディスクに載るコンテンツを生成するのを助けるために、作者にユーザー・インターフェースを提供する。
JiveScript208は、作者が使うためのAPIを提供するクラス/ライブラリのセットである(すなわち、MediaPlayer.playMainFeature(...))。JiveAuthor202は、BDJiveアニメーション・エンジンが理解するXMLフォーマットで情報を生成するユーザー・インターフェース(UI)を作者に提供する。Jiveツリー210およびJiveオブジェクト214は、BDJiveアニメーション・エンジンに関係した概念である。
少なくとも一つの実装を見るための追加的なレンズとして、以下の要約は、図2に示される例に基づく一つの実装における諸構成要素の相互作用を記述する。この図は、本願の原理によって実装される実際のインターフェースではなく、むしろ制作フローを提供する。
1.BDJiveプレーヤー206はBD-J環境のためのアニメーションを提供し、諸アニメーション機能を呼び出すためのXML入力(単数または複数)を受け付ける。BDJiveは、生成されたXML/コードとともにJARファイル上に置かれ、BD-Jアプリケーションとして走る。
2.JiveAuthor202は、BDJiveプレーヤー206へのXMLから解放された(XML-free)ユーザー・インターフェース(UI)を提供し、作者が、BDJiveプレーヤーの諸アニメーション機能を呼び出すことを許容する。作者はXMLスクリプトを明示的に書くことはない。むしろ、作者はより便利なユーザー・インターフェース・ツールを使用し、JiveAuthor202が対応するXMLスクリプト(単数または複数)210を生成する。
3.JiveScriptは、BD-J環境において提供されるさまざまな機能性を簡略化し、カプセル化するJava(登録商標)オブジェクト214を提供する。これらのオブジェクトは、Java(登録商標)コードを使って呼び出される。作者は、BDJiveプレーヤーの諸アニメーション機能を別個に使うとともに、典型的にはこれらの機能を呼び出してもよい。
4.BD-Jスクリプティング・モジュール204は、JiveScriptへのJava(登録商標)から解放された(Java(登録商標)-free)インターフェースを提供し、作者がJiveScriptオブジェクトを呼び出すことを許容する。作者はJava(登録商標)コードを明示的に書くことはない。むしろ、作者はより便利なユーザー・インターフェース・ツールを使用し、BD-Jスクリプティング・モジュールが対応するJava(登録商標)コードを生成する。
まとめると、下記のさらなる記述からも明白であろうように、スクリプティング・モジュール204は、スクリプト212の生成を可能にする作者インターフェースを提供する。JiveAuthor202はJiveツリーXML210を生成し、JiveツリーXML210はJiveツリーJava(登録商標)オブジェクト214に変換される。次いで、BDJive206およびJiveScriptライブラリ208がJiveツリーJava(登録商標)オブジェクト214、スクリプト212および資源218と一緒に、JAR/BDJO 216中にパッケージングされる。
JiveTree(アニメーション・ツリー):
スクリプティング・モジュール204は、(XMLから変換された)アニメーション・ツリーをツリー・ビューで作者に呈示する。本稿での用法では、用語Jiveツリー(JiveTree)は、このアニメーション・ツリーをいう。ノードのあらゆる可能な属性が隣り合わせに表示される。(たとえば図18のJiveノード・セレクタ参照。)作者はノードの任意の属性を選択でき、するとそのツリーをナビゲートする(最短経路)ために、下記と同様のJava(登録商標)コードが生成される。
例1:
Figure 2013239200
過去においては、作者は上記のコードを手動で書かなければならなかった。これは時間のかかるプロセスであった。それは、1)作者はJiveツリー・ビューのツリー表現をもたなかったため、および2)作者はいずれかの項目を誤記し、コードが正しくコンパイルされないまたは機能しないことつながる可能性があったためである。
BDJive216は、いくつかのスクリプト・オブジェクトとともにXMLフォーマットでアニメーション情報を受け入れる。スクリプト・オブジェクトはボタン・フォーカス獲得、レイヤー・フォーカス獲得……などといったイベントを通知されるjava(登録商標)オブジェクトである。この際、作者は、必要な機能を実行するために何らかのjava(登録商標)コードを書くことになる。
図3は、BDJiveアニメーション・エンジンにおける単一のアニメーション・ユニット300の例を示している。各Jiveブロック302はメイン・タイムライン(main timeline)304からなり、各タイムライン304は一つまたは複数のレイヤー(layer)306をもつことができる。ここで、各レイヤーは複数のグラフィック(Graphics)208、ボタン(Button)310およびネストされたタイムライン(Nested Timeline)312および/または追加的なタイムライン314を有することができる。
例として、図4は、本願の原理のオーサリング・ツール(JiveAuthor)のある実装に基づくプレビュー・パネル400を示している。このパネルにおいて、作者は、メニューまたは他のグラフィック・エレメントを作成するためにすべてのタイムライン、レイヤーおよび他のエレメントをパネル中に載せていくにつれて、自分の作業の進行を見ることができる。その際、すべての位置情報および使用される資産(assets)は、のちにBD-Jiveアニメーション・エンジンによってレンダリングされることになる最終的なXMLに保存されることになる。このパネルにおいて使用されるすべての画像は、最初に次のページに記載される宣言パネルにおいて宣言されるべきである。
たとえば、いくつかのエレメントをもつ簡単なタイムラインを保存すると、次のようなXMLコードが生成される:
Figure 2013239200
図5は、本願の原理の例示的な実施形態に基づく宣言ファイル500のグラフィックな表現を示している。作者は、資源218(たとえば図2に描かれている画像、サウンドおよびフォント)を上のダイアログから宣言(たとえばインポート)できる。これらの資源は最終的なXMLにおいて宣言タグとして保存される。作者は、メニュー、グラフィック・エレメントを生成する、サウンドを再生するまたはテキストを表示するためにこれらの資源を使うことができる。
まず、作者は、プロジェクト・パスにおけるサブディレクトリを表す画像パス502を加える。次いで、作者はUIを介してIDを生成する。このIDは、追加される画像のセットを識別するために使用されることになる。最後に、作者は画像をこのフォルダ内にドラッグ・アンド・ドロップする。
あらゆる単一の画像は提供されたIDおよびリスト内のインデックスによって参照される。作者によるこれらの単純な動作の結果として生成されるXMLの例が下記に与えられる:
Figure 2013239200
図6は、本願の原理のある例示的な実施形態に基づくキー・エディタ画面600の例を示している。このキー・エディタは、タイムライン・エレメントおよび定義されたキー・フレームのツリー・ビューを作者に呈示するセレクタ・ダイアログである。各タイムラインは複数のキー・フレームを有することができる。各キー・フレームは種々の属性をもつことができ、アニメーション・エンジン(たとえばBD-J)が、BD-Jiveアニメーション・エンジンにおいて走っている間に、レンダリングされたアニメーション・パスを決定する。サンプルXMLコードは次のようになる:
Figure 2013239200
このサンプルは、二つのキー・フレーム(key frame)をもつグラフィック・エレメントの例である。各キー・フレームについて複数の「<key>」タグを含むグラフィックの使用毎について、一つの「<graphic>」を定義できる。フレームの数は、タイムライン・タグによって定義され、これらのタグはキー・フレーム・タグを含むのみである。
図7は、本願の原理のある例示的な実施形態に基づく、例としてのメッセージ画面700を示している。あらゆる情報またはエラー・メッセージはメッセージ・パネル702に表示される。これらのメッセージのいくつかは、単に情報を与えるのみであり、他のものは警告およびエラーである。作者は、作者の注意を要求する発生したいかなるエラーまたは検証問題も見ることができ、そうしたエラーまたは検証問題は最終的には修正されることができる。
図8は、本願の原理のある例示的な実施形態に基づく例としての属性(properties)パネル800を示す。このパネルは、選択されたノードのタイムライン属性を修正し、その何らかの検証を提供することを作者に許容する。各属性型は、その型に依存して異なる入力機構を有する。属性パネル800は、作者に対するタイムライン属性表示の例を示している。この例において、さまざまな属性がある(すなわち、フレーム、ID、フレーム・ステップ、有効化、フレーム・カウント、開始フレーム等)。
たとえば、作者がグラフィックを追加したいとすると、グラフィック属性表示をもつことになり、そこで、そのグラフィックのオブジェクトに関連付けられる画像宣言を入力するよう促される。そのような属性を選択するために、ダイアログが現れて、作者にリストから画像を選択することを許容する。属性ダイアログは作者にブール値のためのチェックボックスまたはテキスト値のための通常のフィールドを呈示する。次いで、これらの属性がXMLに保存される。
当業者は、BDJタイトルをオーサリングすることにおける最も困難な課題の一つは、BDJO(タイトル情報ファイル)および付属のJARファイル(アプリケーション・ファイル)を含む最終的なタイトル・ファイルを作成することであることを認識するであろう。図9は、本願の原理のある例示的な実施形態に基づくBDJOイメージ・ジェネレータ・インターフェースの例を示している。この生成ツールは、必要なオプションを選択し(たとえば、「タイトル属性」タブまたは「グローバル属性」タブの下で)、BD-JアプリのためのBDJOおよびJARファイルのセットを生成することを作者に許容する入力パネルを含む。作者は、タイトル番号、ORG ID、ディスクIDおよび出力ディレクトリを他のオプションとともに入力し、「イメージを生成」を押すことができ、するとソフトウェアが必要なコードを生成して対応するイメージを生成する。
BD-Jスクリプティング・モジュール
本願の原理のもう一つの例示的な実施形態によれば、スクリプティング・モジュール204(図2参照)がJiveAuthorのユーザーを、手動でJava(登録商標)コードを書くことから解放し、Java(登録商標)経験のない作者にBD-Jタイトルを開発することを許容する。
BD-Jスクリプティング・モジュール204は、非常に直観的でユーザーフレンドリーなグラフィカル・ユーザー・インターフェース(UI)のセットと、背景におけるすべての必要な論理および処理要素とからなるモジュールである。スクリプティング・モジュールUIは、作者が上で論じられたようなBDJiveおよびJiveScriptと対話することを許容する。本モジュールはすべての必要なJava(登録商標)コードを生成し、コンテンツのXMLデータベースをディスク上に保存する。
当業者は、ブルーレイ・タイトルをJava(登録商標)で手動でコーディングするのは効率的ではないことを認識するであろう。BD-Jスクリプティング・モジュールは、その目標の一つとして、ブルーレイJava(登録商標)コード生成の効率を著しく向上させることをもつ。こうして、このスクリプティング・モジュールの適用により、作者は、BD-JディスクをオーサリングするためにJava(登録商標)の経験や理解を全くもつ必要がない。
現在知られている市場で入手可能な製品で、BD-J開発のために100%UI駆動(UI driven)であるものはない。既知の既存の製品はこの問題を、Java(登録商標)開発IDEのためのプラグインを提供することによって解決しようとしてきたが、そうした製品はいまだ作者がJava(登録商標)プログラミングおよび該IDEの使用の経験があることを要求する。BD-Jタイトルをオーサリングする過程で相変わらず作者がJava(登録商標)コードを書くことを要求するからである。
本願の原理によるBD-Jスクリプティング・モジュール204は、作者がJiveScriptおよびBDJiveプレーヤー206(すなわちツリー・インタープリタ)内のすべての利用可能なJava(登録商標)オブジェクトとのインターフェースをもつことを許容する、必要なすべての論理およびUIを提供する。JiveScriptはBD-J APIとインターフェースをもち、BDJiveがメニューのすべてのグラフィックおよびアニメーションを扱う。
いくつかのBDJiveノードは、メニューを隠す、プレイリストにジャンプする、ツリー・ノード属性を修正するなどのような論理を実行するためにそれらのノードに関連付けられたJava(登録商標)クラスを有する。スクリプティング・モジュールは作者がUIからこれらのクラスを生成し、すべての必要な機能性を追加/更新することができるようにする。作者がスクリプトの追加または更新を終えたのち、保存動作が:(i)すべての必要なJava(登録商標)クラスおよび関連するXMLデータベースを生成または更新し;(ii)スクリプトをコンパイルし;(iii)エラーがあればそれを作者に呈示する。UIは以下の機能をサポートする。
1.BDJiveクラスのメソッドおよび各メソッド内の追加されたコマンド/論理ブロックのツリー・ビューを呈示する(図10参照)。
2.作者には、ネストされた論理ブロック(logic block)をいくつ埋め込むことができるかについて制限がない(図11参照)。こうして、スクリプティング・モジュールは無制限の量の論理ブロックのネストを許容する。当業者は、論理ブロックが表式の評価の結果としてブール値に基づいて実行されるブロックであることを認識するであろう。こうして、作者は、表式が真であると評価される場合にのみ実行される論理ブロック内に何らかの機能性を置くことができる。作者は、論理ブロック内に制限なしに多くの論理ブロックを入れる(すなわち、論理ブロックをネストする)オプションをもつ。これまで、この概念は、伝統的なDVDオーサリングにおいて使用されていた以前の製品においては利用可能ではなかった。無制限のネストされたブロックは、複雑な論理ブロックの生成を許容するために望まれる。本願の原理のこの側面は、ネストされたオブジェクトを再帰的にナビゲートし、必要なブロックJava(登録商標)コードを生成することによって達成される。
3.作者は変数に値を割り当てることができ、変数の名前を変更することができる。
4.作者は、図12に示されるように、多くの論理文からなる複雑な論理条件を生成できる。
5.スコープ内のあらゆる変数は条件フィールドにおいて作者に対して表示され、簡単に選択できる(図13参照)。
6.作者は、条件フィールドの隣にあるボタンをクリックすることによって値を返すメソッドを選択することもできる。
7.スクリプティング・モジュールはまた、コマンドがパラメータをいくつもつかを自動的に決定し、JiveScriptライブラリにおいて利用可能な各メソッドについてフィールドを表示し、各メソッドをそのJava(登録商標)型に基づいて型に変換し、属性が提供されている場合、各引数(argument)の隣に説明を呈示する。上述したように、前記メソッドは、ある種の機能を実行するためにコールされることのできるJava(登録商標)オブジェクト/クラスのメンバーであり、前記引数は、処理のために前記メソッドに渡される、値または別のオブジェクトの参照である。図14は一つのパラメータをもつ第一の見本を示し、図15は複数のパラメータをもつ第二の見本を示す。
8.作者は、便利に、ノードを右クリックして、より多くのコマンドまたは論理ブロックを追加し、コマンドまたは論理ブロックを除去、コピー、切り取りまたは貼り付けすることができる(図16参照)。
9.スクリプティング・モジュールは、JiveScriptから一つ、JiveTree属性からもう一つで二組のコマンド・セレクタを提供する。各ウィンドウが異なるインターフェースを提供する。図17に示されるJiveScriptSelectorは、JiveScript APIへのインターフェースを提供し、スコープ内のメソッドおよびオブジェクトに渡されるパラメータへのアクセスを許容する。図18のダイアログに示されるJiveNodePropertySelectorは作者に、JiveTree内のすべてのオブジェクトのツリー・ビューを呈示し、作者が、それらのメソッドの任意のものをコマンドとして含められるよう選択することを許容し、それらの戻り値が変数に保存される。ツリー・ビューは、BDJiveオブジェクトから何らかの情報を読むことによってXMLから生成される。しかしながら、JiveScriptはまた、これに加えて何らかの機能性を、よって本願の原理のインターフェースを提供する。
本願の原理のある例示的な実施形態によれば、スクリプティング・モジュールは動的にすべての「JiveScript」または「TreeNodes」ライブラリを読み、なされることのできる可能な属性またはメソッド・コールを生成し、対応するオプションをUIにおいて作者に呈示する。JiveScriptまたはTreeNodeライブラリは、新しい機能性を加えることによって拡張されることができ、これらの追加も、スクリプティング・モジュール・コードを修正するUIにおいて作者に呈示されることになる。
10.ひとたびJiveTree Nodeがその属性とともに選択されると、スクリプティング・モジュールはそのツリーをナビゲートし、生成されるスクリプトによってナビゲートされるべき最短経路を決定することができる。たとえば、下記はUI選択から生成されたコードから生成された見本コードである:
Figure 2013239200
11.スクリプティング・モジュールは、すべての作者選択コマンドをXMLデータベースに、あるフォーマットで保存する。下記はXMLデータベースの例である。
Figure 2013239200
12.スクリプティング・モジュールは、自動的にJava(登録商標)コードを生成し、それをJava(登録商標)コンパイラを使ってコンパイルする。見本の自動生成コードは次のとおり:
Figure 2013239200
図19は、まとまってスクリプト生成タスクを実行する種々のソフトウェア・モジュール/パッケージの高レベルのビューを呈示するクラス図1900である。換言すれば、これは本願の原理のある例示的な実施形態に基づく、BDJスクリプティング・モジュール204についての高レベルの設計図である。手短に言うと、ClassBuilderFactory 1902は使用される各クラスの一つのインスタンスを初期化するために使われる。ClassBuilder 1904は作者の機能性に基づいてJava(登録商標)コードを生成する役割を担うオブジェクトである。Java(登録商標)CodeGenerator 1906は、コード生成において使用されるユーティリティである。Java(登録商標)TreeConverter 1920は保存されたXMLをナビゲートし、メモリ内の諸オブジェクトのツリー・ビューを生成するオブジェクトである。JiveTreeNavigator 1918は、作者がコマンドを実行する対象である他のオブジェクトへのリンクを確立するために、メモリ内のツリーをナビゲートするオブジェクトである。他のクラス1908、1910、1912、1914、1916、1922および1924は、作者とインターフェースをもつためにユーザー・インターフェース(UI)によって使用される。
図20は、本願の原理のある例示的な実施形態に基づくメイン・スクリプティング・モジュール・ダイアログ・インターフェースの例を示している。このダイアログ・インターフェースは、スクリプト・タイムライン(timeline)およびユーザーへのツリー・ビューの例を示している。この例から見て取れるように、ユーザーは各モジュール(たとえばonPush()-void)およびこれに応答して生成された関連する論理ブロックの完全なビューをもつ。
図21は、本願の原理のある例示的な実施形態に基づくメソッド2100の高レベルの流れ図を示している。最初、媒体をオーサリングするために作者から入力が受け入れられる(2102)。作者入力に応答して、前記媒体からのコンテンツのその後の再生のために互換である言語で命令の組が生成される(2104)。本開示を通じて述べているように、この命令の組はスクリプティング・モジュールによって生成される。このスクリプティング・モジュールは、命令の組を入力するために作者によって使用されるJive Authorインターフェースとインターフェースをもつ。ひとたび命令の組が生成されたら、それらの命令は前記媒体に保存され(2106)、それとともに前記コンテンツが前記媒体上に記憶される(2108)。
スクリプティング・モジュールによって生成される命令の組は、しばしば:1)やはり前記媒体上に記憶されている(JiveScriptによって生成された)一つまたは複数のライブラリを呼び出し;および/または2)やはり前記媒体上に記憶されているアニメーション・エンジン(たとえばBDJive)中に入力される。
当業者は、本願の原理のスクリプティング・モジュールのUIから生成されるあらゆる可能なJava(登録商標)構造体を予期し、カバーすることが難しいことを認識するであろう。しかしながら、本願の原理のスクリプティング・モジュールはリストを絞り込み、Java(登録商標)コード・エレメントのサブセットが含められることを許容する。たとえば、この実装において、「if/else」論理ブロックはスクリプティング・モジュールによってサポートされる。他の考えられている実装では、スクリプティング・モジュールは、たとえば「for」または「while」ループのような他のJava(登録商標)コード・エレメントをサポートできる。
追加的な実装および特徴
記載された例示的な実施形態の特徴および側面はまた、他の実装のために適応されることもできる。たとえば、オーサリング環境は、たとえば高精細度DVDのようなブルーレイ・ディスク以外のデジタル・メディアをオーサリングするために、あるいはDVD以外のメディアをオーサリングするために提供されていてもよい。さらに、記載された機能の一つまたは複数は、他の点で本稿で記載または示唆された環境のいずれとも異なるオーサリング環境中に含められてもよい。
したがって、本稿で記載された実装はブルーレイ・ディスク実装のコンテキストで記載されていることがありうるが、そのような記載は決して、本願の特徴および概念をそのような実装またはコンテキストに限定するものと解釈すべきではない。さらに、本稿の多くの実装はxmlおよび/またはJava(登録商標)コードを受け取るまたは提供するが、たとえばHD DVDフォーマットにおけるJava(登録商標)Script/XMLのような他の型の構造化されたコードが使用されてもよいことは明らかなはずである。
本稿で記載された実装はたとえば、方法もしくはプロセス、装置またはソフトウェア・プログラムにおいて実装されうる。たとえ単一の形の実装のコンテキストでのみ論じられていたとしても(たとえば方法としてのみ論じられていたとしても)、論じられている実装または特徴は他の形(たとえば装置またはプログラム)においても実装されうる。装置は、たとえば、適切なハードウェア、ソフトウェアおよびファームウェアにおいて実装されうる。方法はたとえば、コンピュータまたは他の処理装置などのような装置において実装されてもよい。さらに、方法は、処理装置または他の装置によって実行される命令によって実装されてもよく、そのような命令は、たとえばDVDまたは他のコンピュータ可読記憶デバイスのようなコンピュータ可読媒体上、あるいは集積回路上に記憶されてもよい。
当業者には明白なはずであるが、実装はまた、たとえば記憶または伝送されうる情報を担持するようフォーマットされた信号を生成してもよい。該情報はたとえば、方法を実行するための命令、あるいは記載された実装の一つによって生成されるデータを含んでもよい。たとえば、信号はオーサリングされたブルーレイ・ディスクの内容をデータとして担持するようフォーマットされてもよい。
さらに、本開示によって他の実装が考えられている。たとえば、開示されている実装のさまざまな特徴を削除、修正または補足することによって、追加的な実装が作り出されてもよい。
付属のリストはさまざまな実装の短いリストを提供する。該リストは網羅的であることは意図されておらず、単に数多くの可能な実装のうちの少数の短い記述を提供するものである。
いくつかの付記を記載しておく。
〔付記1〕
コンテンツ記憶媒体をオーサリングする方法であって:
前記媒体をオーサリングするための入力を受け入れる段階と;
前記入力に応答して、前記媒体からのコンテンツのその後の再生にとって互換な言語で、前記媒体の前記オーサリングのための命令の組を生成する段階と;
生成された命令の組を前記媒体上に記憶する段階と;
前記媒体上にコンテンツを記憶する段階とを有する、
方法。
〔付記2〕
命令の組を生成する前記段階が、前記命令に応答してJava(登録商標)コードまたはXMLスクリプトの少なくとも一つを生成することを含む、付記1記載の方法。
〔付記3〕
入力を受け入れる前記段階が:前記媒体上のコンテンツをフォーマットする、該コンテンツを編成する、該コンテンツを表示するおよび該コンテンツを通じてナビゲートするからなる動作の群から選択される少なくとも一つの動作を記述する入力を受け取ることを含む、付記1記載の方法。
〔付記4〕
前記命令の組の中の少なくとも一つの命令に応答して、前記媒体上に記憶されているライブラリ・ルーチンを呼び出す段階をさらに有する、付記1記載の方法。
〔付記5〕
前記媒体上に記憶されているアニメーション・エンジン中に前記命令の組の少なくとも一つの命令を入力する段階をさらに有する、付記1記載の方法。
〔付記6〕
前記アニメーション・エンジンとのユーザー・インターフェースを提供することをさらに有する、付記5記載の方法。
〔付記7〕
ユーザー入力を受け入れる前記段階がさらに:
前記コンテンツに対応するユーザー宣言された資源についての宣言タグを生成および保存することを含む、
付記1記載の方法。
〔付記8〕
付記7記載の方法であって、命令の組を生成する前記段階がさらに:
ユーザー・インターフェースを介した前記資源のユーザー操作に応答して、所定のファイル・フォーマットで、保存された前記宣言タグによって特定されるような前記資源の表示のための備えをすることのできるエレメントを生成する段階と;
前記所定のファイル・フォーマットを、再生の際のメディア・プレーヤーによる実行のためにコンパイルする段階とを有する、
方法。
〔付記9〕
付記1記載の方法であって、さらに:
前記生成された命令の組に対応する定義されたタイムライン・エレメントおよびキー・フレームのツリー・ビューを作者に対して表示する段階と;
前記命令の組を記憶する前記段階に先立って、作者が前記タイムラインおよびキー・フレームに変更を施すことを可能にする段階とを有する、
方法。
〔付記10〕
前記命令の組に関係するエラーを示すメッセージ画面を表示する段階をさらに有する、付記9記載の方法。
〔付記11〕
構造化されたフォーマットを使って呼び出されることのできる機能を提供する、オーサリングのためのアニメーション・エンジンと;
作者が前記アニメーション・エンジンの少なくとも一つの機能を作者の入力を使って呼び出すことを可能にするアニメーション・エンジン・インターフェースとを有するオーサリング・システムであって、
前記オーサリング・エンジン・インターフェースは前記作者の入力を、前記アニメーション・エンジンによって要求される前記構造化されたフォーマットに変換する、
オーサリング・システム。
〔付記12〕
付記11記載のオーサリング・システムであって:
諸機能をカプセル化するよう構成されたオブジェクトの組であって、前記オブジェクトは前記構造化されたフォーマットを使って呼び出される、オブジェクトの組と
作者が標準的なインターフェース入力を使って前記組における少なくとも一つのオブジェクトを呼び出すことを可能にするオブジェクト・インターフェースとを有し、
前記オブジェクト・インターフェースは作者の前記標準的なインターフェース入力をオブジェクトによって要求される構造化されたフォーマットに変換する、
オーサリング・システム。
〔付記13〕
BD-J環境において動作する、付記11記載のオーサリング・システム。
〔付記14〕
前記構造化されたフォーマットが、スクリプトまたはコードの一方を含む、付記12記載のコンテンツ記憶媒体オーサリング・システム。
〔付記15〕
前記スクリプトがJava(登録商標)コードを含み、前記コードがXMLスクリプトを含む、付記14記載のコンテンツ記憶媒体。
〔付記16〕
メディア制作および頒布環境において使用するためのコンピュータ可読プログラム・コードが具現されているコンピュータ使用可能な媒体であって:
前記媒体をオーサリングするために作者から入力を受け入れるためのプログラム・コードと;
前記作者の入力に応答して、前記媒体からのコンテンツのその後の再生と互換な言語で、前記媒体の前記オーサリングのための命令の組を生成するためのプログラム・コードと;
生成された命令の組を前記媒体上に記憶するためのプログラム・コードと;
前記媒体上にコンテンツを記憶するためのプログラム・コードとを有する、
コンピュータ使用可能な媒体。
〔付記17〕
命令の組を生成するための前記プログラム・コードがさらに、受け取られたユーザー命令に応答してJava(登録商標)コードまたはXMLスクリプトの少なくとも一つを生成するためのプログラム・コードを含む、付記16記載のコンピュータ使用可能な媒体。
〔付記18〕
入力を受け入れるための前記プログラム・コードがさらに:前記媒体上のコンテンツをフォーマットする、該コンテンツを編成する、該コンテンツを表示するおよび該コンテンツを通じてナビゲートするからなる動作の群から選択される少なくとも一つの動作を記述する入力を受け取るためのプログラム・コードを含む、付記16記載のコンピュータ使用可能な媒体。
〔付記19〕
前記命令の組の中の少なくとも一つの命令に応答して、前記媒体上に記憶されているライブラリ・ルーチンを呼び出すためのプログラム・コードをさらに有する、付記16記載のコンピュータ使用可能な媒体。
〔付記20〕
前記媒体上に記憶されているアニメーション・エンジン中に少なくとも一つの命令を入力するためのプログラム・コードをさらに有する、付記16記載のコンピュータ使用可能な媒体。
〔付記21〕
前記アニメーション・エンジンとの作者インターフェースを提供するためのプログラム・コードをさらに有する、付記20記載のコンピュータ使用可能な媒体。
〔付記22〕
作者入力を受け入れるための前記プログラム・コードがさらに、前記コンテンツに対応する作者宣言された資源についての宣言タグを生成および保存するためのプログラム・コードを含む、付記16記載のコンピュータ使用可能な媒体。
〔付記23〕
付記22記載のコンピュータ使用可能な媒体であって、命令の組を生成するための前記プログラム・コードがさらに:
作者インターフェースを介した前記資源の作者操作に応答して、所定のファイル・フォーマットで、保存された前記宣言タグによって特定されるような前記資源の表示のための備えをすることのできるエレメントを生成するためのプログラム・コードと;
前記所定のファイル・フォーマットを、再生の際のメディア・プレーヤーによる実行のためにコンパイルするためのプログラム・コードとを有する、
コンピュータ使用可能な媒体。
〔付記24〕
付記16記載のコンピュータ使用可能な媒体であって、さらに:
前記生成された命令の組に対応する定義されたタイムライン・エレメントおよびキー・フレームのツリー・ビューを作者に対して表示するためのプログラム・コードと;
前記命令の組の前記記憶に先立って、作者が前記タイムラインおよびキー・フレームに変更を施すことを可能にするためのプログラム・コードとを有する、
コンピュータ使用可能な媒体。

Claims (14)

  1. コンテンツ記憶媒体をオーサリングする方法であって:
    前記媒体上のコンテンツをオーサリングするためのコンテンツ関係情報のユーザー入力された宣言を受け入れる段階であって、コンテンツ関係情報の前記ユーザー入力された宣言はプログラミング命令に関連付けられた少なくとも一つの機能をカプセル化する、段階と;
    前記コンテンツ関係情報の宣言に応答して、前記媒体からのコンテンツのその後の再生にとって互換なプログラミング言語で、前記媒体をオーサリングするためのプログラミング命令の組を生成する段階であって、前記プログラミング命令は、コンテンツ関係情報の前記ユーザー入力された宣言にカプセル化された機能に従って生成される、段階と;
    生成されたプログラミング命令の組を前記媒体上に記憶する段階と;
    前記媒体上に再生中のレンダリングのために必要とされるコンテンツを記憶する段階とを有する、
    方法。
  2. プログラミング命令の組を生成する前記段階が、前記命令に応答してJava(登録商標)コードまたはXMLスクリプトの少なくとも一つを生成することを含む、請求項1記載の方法。
  3. コンテンツ関係情報のユーザー入力された宣言を受け入れる前記段階が:前記媒体上のコンテンツをフォーマットする、該コンテンツを編成する、該コンテンツを表示するおよび該コンテンツを通じてナビゲートするからなる動作の群から選択される少なくとも一つの動作を記述する入力を受け取ることを含む、請求項1記載の方法。
  4. 前記プログラミング命令の組の中の少なくとも一つの命令に応答して、前記媒体上に記憶されているライブラリ・ルーチンを呼び出す段階をさらに有する、請求項1記載の方法。
  5. 前記媒体上に記憶されているアニメーション・エンジン中に前記プログラミング命令の組の少なくとも一つのプログラミング命令を入力する段階をさらに有する、請求項1記載の方法。
  6. 前記アニメーション・エンジンとのユーザー・インターフェースを提供することをさらに有する、請求項5記載の方法。
  7. 非プログラミング・ユーザー入力を受け入れる前記段階がさらに:
    前記コンテンツに対応するユーザー宣言された資源についての宣言タグを生成および保存することを含む、
    請求項1記載の方法。
  8. 請求項7記載の方法であって、命令の組を生成する前記段階がさらに:
    ユーザー・インターフェースを介した前記資源のユーザー操作に応答して、所定のファイル・フォーマットで、保存された前記宣言タグによって特定されるような前記資源の表示のための備えをすることのできるエレメントを生成する段階と;
    前記所定のファイル・フォーマットを、再生の際のメディア・プレーヤーによる実行のためにコンパイルする段階とを有する、
    方法。
  9. 請求項1記載の方法であって、さらに:
    前記生成された命令の組に対応する定義されたタイムライン・エレメントおよびキー・フレームのツリー・ビューを作者に対して表示する段階と;
    前記命令の組を記憶する前記段階に先立って、作者が前記タイムラインおよびキー・フレームに変更を施すことを可能にする段階とを有する、
    方法。
  10. 前記命令の組に関係するエラーを示すメッセージ画面を表示する段階をさらに有する、請求項9記載の方法。
  11. プログラミング命令を使って呼び出されることのできる機能を提供する、オーサリングのためのアニメーション・エンジンと;
    作者が前記アニメーション・エンジンの少なくとも一つの機能を作者のコンテンツ関係情報の宣言を使って呼び出すことを可能にするアニメーション・エンジン・インターフェースとを有するオーサリング・システムであって、前記コンテンツ関係情報の宣言はプログラミング命令に関連付けられた少なくとも一つの機能をカプセル化し、
    前記アニメーション・エンジン・インターフェースは前記作者のコンテンツ関係情報の宣言を、前記作者のコンテンツ関係情報の宣言にカプセル化された前記少なくとも一つの機能に従って、前記アニメーション・エンジンによって要求される前記プログラミング命令に変換する、
    オーサリング・システム。
  12. 請求項11記載のオーサリング・システムであって:
    諸機能をカプセル化するよう構成されたオブジェクトの組であって、前記オブジェクトは前記プログラミング命令を使って呼び出される、オブジェクトの組と
    作者が標準的なコンテンツ関係情報の宣言を使って前記組における少なくとも一つのオブジェクトを呼び出すことを可能にするオブジェクト・インターフェースとを有し、前記標準的なコンテンツ関係情報の宣言はプログラミング命令に関連付けられた少なくとも一つの機能をカプセル化し、
    前記オブジェクト・インターフェースは作者の前記標準的なコンテンツ関係情報の宣言を、前記標準的なコンテンツ関係情報の宣言にカプセル化された前記少なくとも一つの機能に従って、オブジェクトによって要求されるプログラミング命令に変換する、
    オーサリング・システム。
  13. 前記プログラミング命令が、スクリプトまたはコードの一方を含む、請求項12記載のオーサリング・システム。
  14. 前記スクリプトがJava(登録商標)コードを含み、前記コードがXMLスクリプトを含む、請求項13記載のオーサリング・システム。
JP2013150382A 2007-04-11 2013-07-19 オーサリング・ツールおよびこれを実装するための方法 Pending JP2013239200A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US92297807P 2007-04-11 2007-04-11
US60/922,978 2007-04-11

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2010503023A Division JP2010525429A (ja) 2007-04-11 2008-04-04 オーサリング・ツールおよびこれを実装するための方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2015118319A Division JP2015165449A (ja) 2007-04-11 2015-06-11 オーサリング・ツールおよびこれを実装するための方法

Publications (1)

Publication Number Publication Date
JP2013239200A true JP2013239200A (ja) 2013-11-28

Family

ID=39561985

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2010503023A Pending JP2010525429A (ja) 2007-04-11 2008-04-04 オーサリング・ツールおよびこれを実装するための方法
JP2013150382A Pending JP2013239200A (ja) 2007-04-11 2013-07-19 オーサリング・ツールおよびこれを実装するための方法
JP2015118319A Pending JP2015165449A (ja) 2007-04-11 2015-06-11 オーサリング・ツールおよびこれを実装するための方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2010503023A Pending JP2010525429A (ja) 2007-04-11 2008-04-04 オーサリング・ツールおよびこれを実装するための方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2015118319A Pending JP2015165449A (ja) 2007-04-11 2015-06-11 オーサリング・ツールおよびこれを実装するための方法

Country Status (6)

Country Link
US (1) US20100293419A1 (ja)
EP (1) EP2135248A1 (ja)
JP (3) JP2010525429A (ja)
CN (1) CN101720483B (ja)
CA (1) CA2682946A1 (ja)
WO (1) WO2008127573A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100123549A (ko) * 2009-05-15 2010-11-24 삼성전자주식회사 컨텐트 제어 방법 및 장치
US20110188833A1 (en) * 2009-06-29 2011-08-04 Panasonic Corporation Disc playback device and disc playback method
US8615163B2 (en) 2009-12-09 2013-12-24 Sony Corporation Framework, system and method for rapid deployment of interactive applications
CN103021437B (zh) * 2012-12-03 2017-02-15 广东欧珀移动通信有限公司 一种蓝光播放机处理xml数据的方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006004520A (ja) * 2004-06-17 2006-01-05 Visionere Corp オーサリングツール、オーサリング方法
JP2006197566A (ja) * 2004-12-09 2006-07-27 Sony United Kingdom Ltd ビデオ表示装置
JP2006197618A (ja) * 2002-12-12 2006-07-27 Sharp Corp マルチメディアデータ処理装置、マルチメディアデータ処理プログラム、およびマルチメディアコンテンツデータのデータ構造
JP2006236323A (ja) * 2005-01-25 2006-09-07 Sony Corp アプリケーション提供システム、サーバ、クライアントおよびアプリケーション提供方法
JP2006277932A (ja) * 2002-09-12 2006-10-12 Matsushita Electric Ind Co Ltd 記録媒体
JP2006287306A (ja) * 2005-03-31 2006-10-19 Matsushita Electric Ind Co Ltd シナリオデータ変換装置、シナリオデータ変換方法、及びシナリオデータ変換プログラムを記録した記録媒体
WO2007027995A2 (en) * 2005-08-29 2007-03-08 Sony Corporation Templatized commands in disc authoring

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU7093394A (en) * 1993-05-24 1994-12-20 Media Station, Inc. Interactive multimedia development system and method
JPH07114634A (ja) * 1993-08-27 1995-05-02 Victor Co Of Japan Ltd マルチメディアシナリオプログラム編集方法およびその装置
US6662060B1 (en) * 1999-10-18 2003-12-09 Intel Corporation Method and apparatus for multimedia playback with title specific parameters
US7432940B2 (en) * 2001-10-12 2008-10-07 Canon Kabushiki Kaisha Interactive animation of sprites in a video production
US7536088B2 (en) * 2002-10-03 2009-05-19 Cyberlink Corp. Method of authoring DVD video record on an external storage device
GB2408870B (en) * 2003-11-05 2006-07-26 Zoo Digital Group Plc Data processing system and method
JP2007065928A (ja) * 2005-08-30 2007-03-15 Toshiba Corp 情報記憶媒体、情報処理方法、情報転送方法、情報再生方法、情報再生装置、情報記録方法、情報記録装置、及びプログラム
US7952535B2 (en) * 2005-02-20 2011-05-31 Mediatek Singapore Pte Ltd Electronic visual jockey file
US20090125823A1 (en) * 2005-03-10 2009-05-14 Koninklijke Philips Electronics, N.V. Method and device for displaying virtual objects
GB2424534B (en) * 2005-03-24 2007-09-05 Zootech Ltd Authoring audiovisual content
US8452165B2 (en) * 2005-08-09 2013-05-28 Panasonic Corporation Recording medium, playback apparatus, method and program
US20080244407A1 (en) * 2005-08-29 2008-10-02 Eklund Don Abstractions in disc authoring
US8229278B2 (en) * 2005-08-29 2012-07-24 Sony Corporation Portfolios in disc authoring
US20080238938A1 (en) * 2005-08-29 2008-10-02 Eklund Don Effects for interactive graphic data in disc authoring

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006277932A (ja) * 2002-09-12 2006-10-12 Matsushita Electric Ind Co Ltd 記録媒体
JP2006197618A (ja) * 2002-12-12 2006-07-27 Sharp Corp マルチメディアデータ処理装置、マルチメディアデータ処理プログラム、およびマルチメディアコンテンツデータのデータ構造
JP2006004520A (ja) * 2004-06-17 2006-01-05 Visionere Corp オーサリングツール、オーサリング方法
JP2006197566A (ja) * 2004-12-09 2006-07-27 Sony United Kingdom Ltd ビデオ表示装置
JP2006236323A (ja) * 2005-01-25 2006-09-07 Sony Corp アプリケーション提供システム、サーバ、クライアントおよびアプリケーション提供方法
JP2006287306A (ja) * 2005-03-31 2006-10-19 Matsushita Electric Ind Co Ltd シナリオデータ変換装置、シナリオデータ変換方法、及びシナリオデータ変換プログラムを記録した記録媒体
WO2007027995A2 (en) * 2005-08-29 2007-03-08 Sony Corporation Templatized commands in disc authoring

Also Published As

Publication number Publication date
EP2135248A1 (en) 2009-12-23
JP2015165449A (ja) 2015-09-17
US20100293419A1 (en) 2010-11-18
CN101720483A (zh) 2010-06-02
CN101720483B (zh) 2012-04-18
WO2008127573A1 (en) 2008-10-23
JP2010525429A (ja) 2010-07-22
CA2682946A1 (en) 2008-10-23

Similar Documents

Publication Publication Date Title
JP5015150B2 (ja) 対話式マルチメディア環境の状態変化への宣言式応答
TWI221990B (en) User interface element representation with simplified view
US9324239B2 (en) Authoring tool to structure and create a computer-based training course, and having role-specific functions
JP4959696B2 (ja) 対話型マルチメディアプレゼンテーションの状態ベースタイミング
US9524279B2 (en) Help document animated visualization
US8135572B2 (en) Integrated debugger simulator
US6769094B2 (en) Method for generating multimedia projects
Paternò et al. Engineering the authoring of usable service front ends
JP2015165449A (ja) オーサリング・ツールおよびこれを実装するための方法
Mark Beginning iOS 5 Development: Exploring the iOS SDK
Paul et al. React Native for Mobile Development: Harness the Power of React Native to Create Stunning iOS and Android Applications
Paul et al. React Native for Mobile Development
Weaver et al. Pro JavaFX 2: A Definitive Guide to Rich Clients with Java Technology
CA2686367A1 (en) Dynamic native editor code view facade
Mihalcik et al. The design and implementation of ViPER
JP5149801B2 (ja) ディスクオーサリングにおけるポートフォリオ
US8615163B2 (en) Framework, system and method for rapid deployment of interactive applications
KR101552384B1 (ko) 인터랙티브한 편집기능이 구비된 멀티 미디어 컨텐츠 저작 시스템 및 그 방법
JP2009015821A (ja) メディア・コンテンツをユーザに再生するための機械が解釈できる命令のセットを生成する方法
Campesato Angular and Deep Learning Pocket Primer
Ashcraft Learn WinUI 3.0: Leverage the power of WinUI, the future of native Windows application development
US20110119316A1 (en) Abstraction layer for workflow client for, e.g., blu-ray® discs
Weaver et al. Pro JavaFX 2
US20140033004A1 (en) Visualization of a packaged file
Cameron Windows Phone Advanced UI Development

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140624

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140826

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150324