(57)【要約】【課題】  デバッグ装置内部の特定のモジュール動作タイミングを可変にすることができるようにする。【解決手段】  制御モジュール２０１に含まれる複数のモジュール２０１Ａ乃至２０１Ｄの動作タイミングを可変にエミュレートするために、再生装置１００内のＨＴＴＰサーバ２０４内にモジュール動作タイミング制御手段２０４Ｄを設け、外部デバイス３等からＨＴＴＰサーバ２０４に制御コマンドを送れるようにする。動作タイミングの変更操作はブラウザ画面を用いて変更操作が実施され、各制御モジュール毎に表示されたスライドバーを操作することにより任意の動作速度、動作タイミングを設定することができる。    【選択図】  図３
2008250938.tif 000002
【特許請求の範囲】
【請求項１】
インタラクティブな機能を実現するためのプログラムを含むコンテンツを再生可能なデバッグ装置であって、
前記デバッグ装置の動作を制御するため、機能の異なる複数の機能モジュールから構成される制御モジュールと、
前記プログラムを実行するスクリプトエンジンと、
前記制御モジュール及び前記スクリプトエンジンの状態を監視し、前記制御モジュール及び前記スクリプトエンジンの前記状態の変化を検出する状態監視モジュールと、
前記状態監視モジュールによって検出された前記変化を、前記デバッグ装置に接続された表示端末に送信し、前記変化をユーザに通知する状態通知モジュールと、
前記制御モジュール内の各機能モジュールそれぞれについての動作タイミングを可変に切り替えるモジュール動作タイミング制御部とを具備し、
前記状態監視モジュール及び前記状態通知モジュールは、前記デバッグ装置に接続可能な外部デバイスから前記デバッグ装置にインストールされるデバッグ装置。
【請求項２】
前記状態通知モジュールは、
前記デバッグ装置の状態を制御するプレイヤスクリプトファイルと、
前記デバッグ装置の前記状態が変化した場合、前記変化を前記表示端末が処理可能なデータ形式のデータに変換するデータ変換モジュールと、
前記データ変換モジュールによって、前記データ形式に変換された前記データを、前記表示端末に送信するＨＴＴＰサーバモジュールと、
前記ＨＴＴＰサーバモジュールによって前記表示端末に配信されるＧＵＩ画面ファイル及び端末スクリプトファイルと、
を具備する、請求項１記載のデバッグ装置。
【請求項３】
前記制御モジュールには、ビデオ制御モジュール、リソース管理モジュール、グラフィックモジュール、ネットワーク制御モジュールが含まれることを特徴とする請求項１記載のデバッグ装置。
【請求項４】
前記表示端末には前記制御モジュールの機能の異なる複数の機能モジュールがリスト表示され、各機能モジュールの動作タイミングを可変可能に表示することを特徴とする請求項３記載のデバッグ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、電子機器の動作検証ツールであるデバッグ装置に関し、特にコンテンツをデバッグすることができるデバッグ装置に関するものである。
【背景技術】
【０００２】
従来、ソフトウェア／ハードウェアの欠陥及び誤りを発見し、除去するために、種々のデバッグ方法が開発されてきた。このようなデバッグ方法の一例として、テスト端子によりデバッグモードを設定することでＲＯＭに格納されたデバッグ用ブートプログラムを起動し、このデバッグ用ブートプログラムの実行により通信回路を介しての外部からのＲＡＭへのデバッグプログラムの書き込みを可能とし、デバッグコマンドの入力に従ってそのデバッグコマンドの実行に必要なデバッグ用プログラムを前記ＲＡＭの所定の領域に格納し、この格納されたデバッグ用プログラムを実行することによりユーザプログラムのデバッグを行う、マイクロコンピュータのデバッグ方法がある（例えば、特許文献１参照）。
【特許文献１】特開２００６−９１９９６号公報  （第１図）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、近年では、従来のＤＶＤよりも大きな記憶容量を有する次世代ＤＶＤ（ＨＤ  ＤＶＤ等）が提案されている。次世代ＤＶＤは、従来のＤＶＤとは異なり、インタラクティブ性の高いコンテンツを含む。このようなコンテンツは、例えば、スクリプト言語及びＸＭＬ（Extensible Markup Language）等を利用して、スタジオ等のコンテンツオーサによって作成される。従って、インタラクティブな機能を有するコンテンツを作成する場合には、スクリプト言語又はＸＭＬで記述されたコンテンツに含まれるプログラムをデバッグする必要がある。
【０００４】
コンテンツをデバッグする方法は、以下の２つの方法に大別できる。一つは、エミュレータ上でコンテンツをデバッグする方法である。この方法では、実際の（市販用の）再生装置とは異なる装置（例えば、パーソナルコンピュータ）上にエミュレーション環境（エミュレータ）を構築し、当該エミュレーション環境上でコンテンツをデバッグする。もう一つは、再生装置自体にデバッグ機能を埋め込んで、コンテンツをデバッグする方法である。
【０００５】
しかし、前者の方法では、実際の再生装置とパーソナルコンピュータ上のエミュレータとが全く同じ動作をすることを保障するのは困難である。例えば、実際の再生装置とエミュレータとの間のＣＰＵ性能の違い、ビデオ／グラフィックスのデコード性能等の違い、スクリプトファイル及びＸＭＬファイルを動作させるアプリケーションソフトウェア（ミドルウェア）そのものによる違い等に起因して、実際の再生装置とエミュレータとでは動作が異なるという問題がある。
【０００６】
一方、後者の方法では、前者の方法のような装置間における性能的な違いは無い。しかし、実際の再生装置とデバッグ機能が組込まれた再生装置との間には、ソフトウェアの面で違いがある。例えば、実際の再生装置用にコンパイルされたプログラムと、デバッグ機能を有する再生装置用にコンパイルされたプログラムとの間では、機能及び処理タイミング等に差異が生じる。
【０００７】
また、従来、再生装置のような組み込み機器においては、リモートデバッグと称される方法も用いられている。リモートデバッグとは、デバッグ機能を持つ専用のソフトウェア（デバッグ用ソフトウェア）を搭載した端末を再生装置と接続して、デバッグを行う方法である。リモートデバッグを行うためには、デバッグ用ソフトウェアが、再生装置の開発環境や内部のＡＰＩ等を利用する必要がある。このため、再生装置の製造者とは異なる第三者（例えば、スタジオ等）に、再生装置の開発環境や内部のＡＰＩ等に関する情報を開示しなければならないという問題がある。
【０００８】
また、コンテンツクリエイタはコンテンツの出荷前に市販されている再生プレーヤなどによりコンテンツの動作検証を行うことになるが、将来製品化されてくるプレーヤの動作は想定できないてめ、将来製品化されるプレーヤによっては、コンテンツクリエイタの意図していない再生動作になる可能性がある。  
そこで本発明は、デバッグ装置内部の特定のモジュール動作タイミングを可変にすることができるようにしたデバッグ装置を提供することを目的とするものである。
【課題を解決するための手段】
【０００９】
本発明は上述したような課題を解決するため、インタラクティブな機能を実現するためのプログラムを含むコンテンツを再生可能なデバッグ装置であって、前記デバッグ装置の動作を制御するため、機能の異なる複数の機能モジュールから構成される制御モジュールと、前記プログラムを実行するスクリプトエンジンと、前記制御モジュール及び前記スクリプトエンジンの状態を監視し、前記制御モジュール及び前記スクリプトエンジンの前記状態の変化を検出する状態監視モジュールと、前記状態監視モジュールによって検出された前記変化を、前記デバッグ装置に接続された表示端末に送信し、前記変化をユーザに通知する状態通知モジュールと、前記制御モジュール内の各機能モジュールそれぞれについての動作タイミングを可変に切り替えるモジュール動作タイミング制御部とを具備し、前記状態監視モジュール及び前記状態通知モジュールは、前記デバッグ装置に接続可能な外部デバイスから前記デバッグ装置にインストールされるものである。
【００１０】
また本発明は上述した課題を解決するため、前記状態通知モジュールは、前記デバッグ装置の状態を制御するプレイヤスクリプトファイルと、前記デバッグ装置の前記状態が変化した場合、前記変化を前記表示端末が処理可能なデータ形式のデータに変換するデータ変換モジュールと、前記データ変換モジュールによって、前記データ形式に変換された前記データを、前記表示端末に送信するＨＴＴＰサーバモジュールと、前記ＨＴＴＰサーバモジュールによって前記表示端末に配信されるＧＵＩ画面ファイル及び端末スクリプトファイルとを具備するものである。
【００１１】
また本発明の前記制御モジュールには、ビデオ制御モジュール、リソース管理モジュール、グラフィックモジュール、ネットワーク制御モジュールが含まれる。
【００１２】
また本発明の表示端末には前記制御モジュールの機能の異なる複数の機能モジュールがリスト表示され、各機能モジュールの動作タイミングを可変可能に表示されるものである。
【発明の効果】
【００１３】
デバッグ装置を利用するコンテンツクリエイタはネットワーク機器を介して実現されるエミュレータの動作タイミングに関してより自由度を持たせることができるため、仮想的に異なる種類の再生プレーヤの動作をエミュレートすることが可能となり、より正確にコンテンツクリエイタの意図を反映させたコンテンツ作成が可能となる。  
【発明を実施するための最良の形態】
【００１４】
以下に本発明の一実施形態について図面を用いて説明する。
【００１５】
図１は、本発明の一実施形態に係るデバッグ装置の概略構成を示すブロック図である。このデバッグ装置は、例えばＨＤ  ＤＶＤ再生装置（以下、単に「再生装置」と称する）１００によって実現される。再生装置１００は、通常モードとデバッグモードの２つのモードで動作する。
【００１６】
再生装置１００は、ディスクドライブ部１０１、ネットワーク制御部１０２、メディアドライブ部１０３、データプロセッサ部１０４、メモリ部１０５、分離部（ＤＭＵＸ）１０６、ビデオデコーダ部１０７、サブピクチャ部１０８、グラフィックデコーダ部１０９、オーディオデコーダ部１１０、ビデオプロセッサ部１１１、デジタル／アナログ（Ｄ／Ａ）変換部１１２及び１１３、ＭＰＵ部１１４、キー入力部１１５、並びにＲＯＭ部１１６等を備える。
【００１７】
再生装置１００は、光ディスク（ＨＤ  ＤＶＤ等）１といった情報記憶媒体から、情報を読み出して再生する。光ディスク１は、再生装置１００のディスクドライブ部１０１に装着される。ディスクドライブ部１０１は、装着されたディスク１を回転駆動し、光ピックアップ（図示せず）を用いてディスク１に記憶されている情報を取得する。
【００１８】
ネットワーク制御部１０２は、再生装置１００にネットワークを介して接続されたネットワーク機器２と通信を行うための制御部である。ネットワーク機器２は、パーソナルコンピュータといったネットワーク機能を有する機器である。また、ネットワーク機器２には、Ｗｅｂブラウザ１１８がインストールされている。再生装置１００とネットワーク機器２とを接続するネットワークは、例えば、インターネット、ＬＡＮ（Local Area Network）等である。なお、ネットワーク機器２はパーソナルコンピュータに限定されず、Ｗｅｂブラウザ機能を有するデジタルテレビであってもよい。また、ネットワーク機器２にインストールされるソフトウェアは、Ｗｅｂブラウザ１１８に限定されず、ＨＴＭＬ及びＪａｖａ(登録商標)Ｓｃｒｉｐｔで記述されたプログラムを処理することができるアプリケーションであってもよい。
【００１９】
メディアドライブ部１０３は、メディアドライブ部１０３に接続された外部デバイス（ストレージメディア）３にアクセスして、外部デバイス３から情報を取得する。外部デバイス３は、再生装置１００に接続可能なデバイスであり、プラグインモジュール（デバッグモードモジュール）１１７を格納している。デバッグモードモジュール１１７は、メディアドライブ部１０３及びデータプロセッサ部１０４を介してメモリ部１０５にインストールされる。外部デバイス３は、例えば、ＵＳＢデバイスやメモリカードといった取り外し可能なメディアである。また、外部デバイス３は、ＨＤＤ又はパーソナルコンピュータであってもよい。
【００２０】
なお、ＵＳＢデバイスは、機器毎に有効又は無効を設定することができる（機器認証機能）。このため、ＵＳＢデバイスを外部デバイス３として用いる場合、再生装置１００のセキュリティ機能を高めることができる。
【００２１】
上述したようにディスクドライブ部１０１、ネットワーク制御部１０２、又はメディアドライブ部１０３で取得された情報は、データプロセッサ部１０４に供給される。
【００２２】
データプロセッサ部１０４は、供給された情報にエラー訂正処理を施し、データプロセッサ部１０４内のバッファ（図示せず）に格納する。バッファに格納される情報には、例えば、管理情報や動画像情報等が含まれる。管理情報はメモリ部１０５に供給され、動画像情報は分離部１０６に供給される。
【００２３】
メモリ部１０５は、供給された管理情報を記録する。また、メモリ部１０５は、管理情報を再生制御やデータ管理等に利用する。
【００２４】
分離部１０６は、供給された動画像情報を、ビデオ情報、グラフィックユニット情報、オーディオ情報、及びサブピクチャ情報に分離する。また、分離部１０６は、ビデオ情報、グラフィックユニット情報、オーディオ情報、及びサブピクチャ情報を、それぞれビデオデコーダ部１０７、サブピクチャデコーダ部１０８、グラフィックデコーダ部１０９、及びオーディオデコーダ部１１０に供給する。なお、サブピクチャ情報とは、字幕等の画像の情報をいう。
【００２５】
ビデオデコーダ部１０７は、ビデオ情報にデコード処理を施す。また、サブピクチャデコーダ部１０８は、サブピクチャ情報にデコード処理を施す。更に、グラフィックデコーダ部１０９は、グラフィックユニット情報にデコード処理を施す。ビデオデコーダ部１０７でデコード処理が施されたビデオ情報と、サブピクチャデコーダ部１０８でデコード処理が施されたサブピクチャ情報と、グラフィックデコーダ部１０９でデコード処理が施されたグラフィック情報とは、ビデオプロセッサ部１１１に供給される。一方、オーディオデコーダ部１１０でデコード処理が施されたオーディオ情報は、Ｄ／Ａ変換器１１３に供給される。
【００２６】
ビデオプロセッサ部１１１は、ビデオデコーダ部１０７と、サブピクチャデコーダ部１０８と、グラフィックデコーダ部１０９とから供給された情報に重畳処理を施す。また、ビデオプロセッサ部１１１は、重畳した情報をＤ／Ａ変換器１１２に供給する。
【００２７】
Ｄ／Ａ変換器１１２は、ビデオプロセッサ１１１から供給された情報をアナログ信号に変換する。変換された信号は、再生装置１００に接続された映像表示装置（図示せず）にビデオ信号として出力される。映像表示装置は、例えば、液晶ディスプレイ、プラズマディスプレイ、ＣＲＴ（Cathode-Ray Tube）等であってよい。
【００２８】
Ｄ／Ａ変換器１１３は、オーディオデコーダ部１１０から供給されたオーディオ情報をアナログ信号に変換し、変換したアナログ信号をオーディオ信号として音声再生装置（図示せず）に出力する。音声再生装置は、例えば、スピーカ等であってよい。
【００２９】
ＭＰＵ部１１４は、上述したような光ディスク１、ネットワーク機器２、及び外部デバイス３に対する一連の再生動作を制御する制御部として機能する。ＭＰＵ部１１４は、キー入力部１１５からの操作情報を受け、ＲＯＭ部１１６に格納されたプログラムに基づいて、再生装置１００の各部（例えば、図１において、ＭＰＵ部１１４と矢印で接続されている部）を制御する。
【００３０】
次に、図２を参照しつつ、デバッグモードモジュール１１７について、より詳細に説明する。
【００３１】
図２は、デバッグモードモジュール１１７が、外部デバイス３から図１に示す再生装置１００にインストール（アップロード）された後の状態を示すブロック図である。より具体的には、図２は、デバッグモードモジュール１１７を記憶している外部デバイス３と、デバッグモードモジュール１１７を外部デバイス３からインストールした再生装置１００と、再生装置１００に接続されたネットワーク機器２とを表示している。
【００３２】
デバッグモードモジュール１１７は、ユーザに対するインタラクティブな機能を実現するためのコンテンツ（プログラム）をデバッグする機能を有するソフトウェアモジュール（プラグインモジュール）である。このインタラクティブな機能を実現するためのコンテンツは、再生装置１００で再生可能なコンテンツのうちの一部として含まれてもよい。インタラクティブな機能を実現するためのコンテンツには、例えば、ＨＤ  ＤＶＤ規格におけるアドバンストコンテンツが含まれる。また、デバッグモードモジュール１１７は、外部デバイス３から再生装置１００に、必要に応じて（動的に）インストールすることができる。さらに、図２に示すように、外部デバイス３に記憶されるデバッグモードモジュール１１７は、ＨＴＴＰサーバモジュール１１７Ａ、デバッグ端末プラグイン１１７Ｂ、プレイヤプラグイン１１７Ｃ、モジュール動作タイミング制御部１１７Ｄを含む。
【００３３】
ＨＴＴＰサーバモジュール１１７Ａは、ＨＴＴＰサーバ機能を有する動的ライブラリで構成される。この動的ライブラリは、再生装置１００で実行中のプロセスで用いられ、再生装置１００のＭＰＵ部１１４（図１）で独立したスレッド（ＨＴＴＰサーバスレッド）として実行される。
【００３４】
デバッグ端末プラグイン１１７Ｂは、ＨＴＭＬファイル、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔファイル、ＰＮＧ／ＪＰＥＧイメージファイル等を含む。これらのファイルは、ＨＴＴＰサーバ２０４（後述）を介してネットワーク機器２に配信されるファイルである。
【００３５】
プレイヤプラグイン１１７Ｃは、スクリプトエンジン２０３（後述）上で実行されるスクリプトファイル、ＸＭＬファイル等を含む。
【００３６】
モジュール動作タイミング制御部１１７Ｄは、制御モジュール２０１（後述）上で実行される各種制御モジュールの振る舞いを自由に可変にできる制御部であり、本実施形態の特徴的な構成要素である。
【００３７】
このモジュール動作タイミング制御部１１７Ｄは、ＨＴＴＰサーバモジュール１１７Ａ上で動作し、本デバッグ装置のユーザは外部デバイス上の表示ディスプレイ上に図４に示すようにＷｅｂブラウザ画面を表示させ、キー入力部１１５等の操作に基づいて特定の制御モジュールの動作状態を可変にするものである。
【００３８】
なお、外部デバイス３に記憶されるデバッグモードモジュール１１７が再生装置１００にインストールされると、ＨＴＴＰサーバモジュール１１７Ａ及びモジュール動作タイミング制御部１１７Ｄは、ＨＴＴＰサーバ２０４として機能し、デバッグ端末プラグイン１１７Ｂは、ＧＵＩ画面ファイル２０６及び端末スクリプトファイル２０７として機能し、プレイヤプラグイン１１７Ｃは、状態監視モジュール２０５、プレイヤスクリプトファイル２０８、及びデータ変換モジュール２０９として機能する。
【００３９】
次に、図２を図１と共に参照しつつ、上述したデバッグモードモジュール１１７のインストール後の再生装置１００について、ソフトウェアの観点から説明する。
【００４０】
図２に示されるように、デバッグモードモジュール１１７のインストール後の再生装置１００は、制御モジュール２０１、アドバンストコンテンツアプリケーション２０２、スクリプトエンジン２０３、及びデバッグモードモジュール１１７を含む。デバッグモードモジュール１１７は、ＨＴＴＰサーバ２０４、ＧＵＩ画面ファイル２０６、端末スクリプトファイル２０７、状態監視モジュール２０５、プレイヤスクリプトファイル２０８、及びデータ変換モジュール２０９を含む。なお、図２中、再生装置１００にインストールされたデバッグモードモジュール１１７は、破線で囲まれている。
【００４１】
再生装置１００が通常モードで使用される場合、制御モジュール２０１、アドバンストコンテンツアプリケーション２０２、及びスクリプトエンジン２０３が使用される。一方、再生装置１００がデバッグモードで使用される場合、通常モードで使用される上記モジュールに加えて、デバッグモードモジュール１１７に含まれる各モジュールが使用される。
【００４２】
まず、通常モードで使用されるモジュールについて説明する。
【００４３】
制御モジュール２０１は、再生装置１００のＲＯＭ部１１６（図１）に記憶されている実行プログラムであり、再生装置１００を制御する。より具体的には、制御モジュール２０１は、図３に示すように複数の制御モジュールから構成されている。ビデオ制御インタフェース２０１Ａはビデオの再生開始、停止、ポーズ、特殊再生などを行うモジュールである。またリソース管理インタフェース２０１Ｂはディスク、ネットワーク、各種ストレージなどに置かれるリソースへのアクセスを行うモジュールである。さらにグラフィックスインタフェース２０１Ｃはメニュー画面の表示などを行うモジュールであり、ネットワーク制御インタフェース２０１Ｄはネットワークへのアクセスを行うモジュールである。これらを含む制御モジュール２０１は、再生装置１００が起動されると同時に、ＭＰＵ部１１４上で実行されるが、実行される際にモジュール動作タイミング制御部１１７Ｄにて決められた動作タイミングに基づいて動作するものである。
【００４４】
アドバンストコンテンツアプリケーション２０２は、例えば、光ディスク１等の情報記憶媒体から再生装置１００に供給される。この場合、アドバンストコンテンツアプリケーション２０２は、光ディスク１から、ディスクドライブ部１０１、データプロセッサ部１０４、及び分離部１０６を介してメモリ部１０５にロードされる。アドバンストコンテンツアプリケーション２０２は、従来のビデオ映像に加えて、ユーザに対するインタラクティブな機能を有する。アドバンストコンテンツアプリケーション２０２は、ビデオコンテンツと同様に、映像スタジオ等のコンテンツオーサ（コンテンツプロバイダ）によって作成される。アドバンストコンテンツアプリケーション２０２は、スクリプト言語（例えば、ＥＣＭＡスクリプト）を用いて記述されたスクリプトファイルと、マークアップ言語（例えば、ＸＭＬ）を用いて記述されたＸＭＬファイルとを含む。スクリプトファイルはスクリプトエンジン２０３によって実行される。ＸＭＬファイルは、スクリプトエンジンと連携し、ＸＭＬエンジン（図示せず）によって処理される。
【００４５】
スクリプトエンジン２０３の実行モジュールは、再生装置１００のＲＯＭ部１１６に記憶されおり、再生装置１００の起動後にＭＰＵ部１１４によって実行される。スクリプトエンジン２０３は、スクリプト言語で記述されたアドバンストコンテンツを実行するモジュールである。スクリプトエンジン２０３は、制御モジュール２０１に対して、ビデオ映像の再生／停止を指示するコマンドや、コンテンツのタイトル一覧の表示を指示するコマンドといった各種のコマンドを発行する。
【００４６】
次に、デバッグモードで使用されるモジュールについて説明する。
【００４７】
ＨＴＴＰサーバ２０４は、再生装置１００とネットワークを介して接続されたネットワーク機器２と通信を行うためのサーバである。ＨＴＴＰサーバ２０４は、再生装置１００のＭＰＵ部１１４で独立したスレッドとして実行され、ネットワーク制御部１０２を介してネットワーク機器２と通信を行う。また、ネットワーク機器２は、ＨＴＴＰサーバ２０４へ各種のコマンドを送信したり、ＨＴＴＰサーバ２０４からの応答をＧＵＩ画面上に表示したりするためのＷｅｂブラウザ１１８を塔載している。
【００４８】
なお、再生装置１００自身がＷｅｂブラウザ機能を有する場合、ネットワーク機器２を再生装置１００に接続する必要はない。この場合は、ネットワーク機器２の代わりに、ビデオプロセッサ部１１１を介してＤ／Ａ変換部１１２から出力されるビデオ信号を映像として表示するＴＶモニタといった表示端末を使用することができる。この際、ＨＤ  ＤＶＤのコンテンツと、デバッグ作業用のＧＵＩ画面とを、表示端末の同一画面上にピクチャーインピクチャー（ＰＩＰ）したり、半透明に重ね合わせて表示したりすることができる。また、ＨＤ  ＤＶＤのコンテンツと、デバッグ作業用のＧＵＩ画面とを、異なる表示端末に表示してもよい。
【００４９】
状態監視モジュール２０５は、制御モジュール２０１及びスクリプトエンジン２０３の状態を監視し、状態変化を検出する。制御モジュール２０１の状態変化には、例えば、映像（コンテンツ）再生状態の変化、ＣＰＵの利用率の変化、コンテンツで利用可能なリソースの使用率の変化等が含まれる。映像再生状態の変化には、例えば、アドバンストアプリケーションの実行の開始／停止、ビデオ映像の再生の開始／停止、タイトルジャンプ、チャプタージャンプ、及び、再生時刻、サブタイトル又は音声等の変化が含まれる。一方、スクリプトエンジン２０３の状態変化の例には、ブレークポイントでの実行中断、ステップ実行、例外発生等が含まれる。また、状態監視モジュール２０５は、コンテンツの再生中（アドバンストアプリケーションの実行中）にエラーが発生したか否かを判定する。
【００５０】
ＧＵＩ画面ファイル２０６は、ＨＴＴＰサーバ２０４によりネットワーク機器２のＷｅｂブラウザ１１８に配信されるファイルであり、例えば、ＨＴＭＬファイル及びイメージファイル等で構成される。ＧＵＩ画面ファイル２０６は、状態監視モジュール２０５によって検出される再生装置１００の状態変化を、ユーザ（コンテンツオーサ）に通知することが可能なＧＵＩ画面を構成する。
【００５１】
端末スクリプトファイル２０７は、ＧＵＩ画面ファイル２０６と同様に、ＨＴＴＰサーバ２０４によってネットワーク機器２のＷｅｂブラウザ１１８に配信されるファイルである。端末スクリプトファイル２０７は、Ｗｅｂブラウザ１１８上で実行される、スクリプト言語で記述されたファイルから構成される。
【００５２】
プレイヤスクリプトファイル２０８は、スクリプト言語で記述されるファイルであり、再生装置１００の状態を制御する。プレイヤスクリプトファイル２０８は、状態監視モジュール２０５によって検出されたアドバンストアプリケーションの開始／停止に応じて、制御モジュール２０１を介してスクリプトエンジン２０３に読み込まれて実行される。
【００５３】
データ変換モジュール２０９は、状態監視モジュール２０５で検出された状態変化を、ＨＴＴＰサーバ２０４を介してネットワーク機器２（又は、Ｗｅｂブラウザ１１８）に送信するためのデータフォーマットに変換する。換言すれば、データ変換モジュール２０９は、上記状態変化をネットワーク機器２（又は、Ｗｅｂブラウザ１１８）が処理可能なデータ形式に変換する。このデータフォーマットには、ＸＭＬやＪＳＯＮ形式等が含まれる。
【００５４】
なお、上述したＨＴＴＰサーバ２０４、ＧＵＩ画面ファイル２０６、端末スクリプトファイル２０７、プレイヤスクリプトファイル２０８、及びデータ変換モジュール２０９は、再生装置１００の状態の変化を、再生装置１００に接続されたネットワーク機器２に送信し、当該変化をユーザに通知する状態通知モジュールとしての機能を実現する。
【００５５】
上記の説明では、デバッグモードモジュール１１７は、必要に応じて外部デバイス３から再生装置１００にインストールされる。但し、デバッグモードモジュール１１７を、予め再生装置１００にインストールしておくことも可能である。
【００５６】
上述したようなデバッグ装置１００において、本実施形態の特徴的な構成要素である制御モジュール２０１に含まれる複数の制御モジュールの動作状態を可変にさせる機能について以下に説明する。
【００５７】
図３は本実施形態における制御モジュールの動作振る舞いを可変とするための動作ブロックを抜粋した図である。
【００５８】
図３に示すように、制御モジュール２０１に含まれる複数のモジュール２０１Ａ乃至２０１Ｄの動作タイミングを可変にエミュレートするために、再生装置１００内のＨＴＴＰサーバ２０４内にモジュール動作タイミング制御手段２０４Ｄを設け、外部デバイス３等からＨＴＴＰサーバ２０４に制御コマンドを送れるようにする。たとえば本デバッグ装置のユーザが外部デバイス３のブラウザを介して図４に示すようなブラウザ画面を利用して、制御モジュール内の各モジュールの動作タイミングを決定すると、そのユーザコマンドがＨＴＴＰサーバ２０４を介して再生装置１００内のモジュール動作タイミング制御部２０４Ａにコマンドが転送される。そしてモジュール動作タイミング制御部２０４Ａは、このコマンドに基づき、各モジュールに適切な動作タイミングを与える。この動作タイミングの変更操作は図４に示すようなブラウザ画面を用いて変更操作が実施され、たとえば、各制御モジュール毎に表示されたスライドバーを操作することにより任意の動作速度、動作タイミングを設定することができる。ここで設定された動作タイミングを実際のエミュレーション結果に反映させる実現方法としては、例えばスレッドやタスクのプライオリティの変更、またはイベントキューをプライオリティを付して処理、あるいは特定の関数のエントリやループ箇所にウェイト処理を挿入する等することにより動作タイミングを変更させる。
【００５９】
上述したように、本発明の一実施形態によるデバッグ装置（再生装置１００）によれば、デバッグ専用のソフトウェアを搭載した端末を用意することなく、Ｗｅｂブラウザを利用してコンテンツをデバッグすることが可能となる。このため、既存のネットワークを利用したデバッグ環境を容易に構築することができ、デバッグに要するコストを削減することができる。また、広く用いられているＷｅｂブラウザを利用してデバッグ処理を行うことで、コンテンツオーサによるデバッグ処理を簡易化し、開発効率を向上させることができる。
【００６０】
また本発明の一実施形態により、コンテンツクリエイタはネットワーク機器を介して実現されるＨＤＤＶＤエミュレータ（デバッグ装置）の動作タイミングに関してより自由度を持たせることができるため、仮想的に異なる種類の再生装置（プレーヤ）の動作振る舞いをエミュレートすることが可能となり、より正確にコンテンツクリエイタの意図を反映させたコンテンツ作成が可能となる。
【図面の簡単な説明】
【００６１】
【図１】本発明の一実施形態に係るデバッグ装置の概略構成を示すブロック図である。
【図２】デバッグモードモジュール１１７が、外部デバイス３から図１に示す再生装置にインストールされた後の状態を示すブロック図である。
【図３】同実施形態の制御モジュールの詳細構成を示すブロック図である。
【図４】同実施形態におけるＷｅｂブラウザの表示画面図である。
【符号の説明】
【００６２】
１…ディスク、２…ネットワーク機器、３…外部デバイス（外部デバイス）、１００…ＨＤ  ＤＶＤ記録／再生装置、１０１…ディスクドライブ部、１０２…ネットワーク制御部、１０３…メディアドライブ部、１０４…データプロセッサ部、１０５…メモリ部、１０６…分離部（ＤＭＵＸ）、１０７…ビデオデコーダ部、１０８…サブピクチャデコーダ部、１０９…グラフィックデコーダ部、１１０…オーディオデコーダ部、１１１…ビデオプロセッサ部、１１２…Ｄ／Ａ変換部、１１３…Ｄ／Ａ変換部、１１４…ＭＰＵ部、１１５…キー入力部、１１６…ＲＯＭ部、１１７…デバッグモードモジュール、１１７Ａ…ＨＴＴＰサーバモジュール、１１７Ｂ…デバッグ端末プラグイン、１１７Ｃ…プレイヤプラグイン、１１８…Ｗｅｂブラウザ、２０１…制御モジュール、２０２…アドバンストコンテンツアプリケーション、２０３…スクリプトエンジン、２０４…ＨＴＴＰサーバ、２０５…状態監視モジュール、２０６…ＧＵＩ画面ファイル、２０７…端末スクリプトファイル、２０８…プレイヤスクリプトファイル、２０９…データ変換モジュール。
【図１】
2008250938.tif 000003
【図２】
2008250938.tif 000004
【図３】
2008250938.tif 000005
【図４】
2008250938.tif 000006