(57)【特許請求の範囲】
【請求項１】
アドバンスドコンテンツを格納した光ディスクの再生装置において、
アドバンスドアプリケーションを実行する手段と、
アドバンスドアプリケーションの実行中にユーザが操作した一連のキーの種別を検出する手段と、
検出した一連のキーの種別と操作タイミングを組にしてキーマクロ情報として記録する手段と、
前記記録されたキーマクロ情報を読み出して、各操作タイミングでキー種別に応じたキーイベントを発生する手段と、
を具備し、
前記記録手段は複数のキーマクロ情報を光ディスクの識別情報とアプリケーションの識別情報に関連付けて記録し、
前記キーイベント発生手段は光ディスクの識別情報とアプリケーションの識別情報に応じた１つまたは複数のキーマクロ情報を呼び出し、複数のキーマクロ情報が呼び出された場合はいずれか１つを選択する光ディスク再生装置。
【請求項２】
前記記録手段はキーマクロの保存開始からの経過時間を計測する保存用カウンタを具備し、保存用カウンタのカウント値から操作タイミングを検出し、
前記キーイベント発生手段はキーマクロの実行開始からの経過時間を計測する実行用カウンタを具備し、実行用カウンタのカウント値から操作タイミングを検出する請求項１記載の光ディスク再生装置。
【請求項３】
前記アプリケーションの識別情報は再生中のタイトル番号とアクティブなアプリケーションのＺオーダから求める請求項１記載の光ディスク再生装置。
【請求項４】
アドバンスドコンテンツを格納した光ディスクの再生方法において、
アドバンスドアプリケーションを実行するステップと、
アドバンスドアプリケーションの実行中にユーザが操作した一連のキーの種別を検出するステップと、
検出した一連のキーの種別と操作タイミングを組にしてキーマクロ情報として記録するステップと、
前記記録されたキーマクロ情報を読み出して、各操作タイミングでキー種別に応じたキーイベントを発生するステップを具備し、
前記記録ステップは複数のキーマクロ情報を光ディスクの識別情報とアプリケーションの識別情報に関連付けて記録し、
前記キーイベント発生ステップは光ディスクの識別情報とアプリケーションの識別情報に応じた１つまたは複数のキーマクロ情報を呼び出し、複数のキーマクロ情報が呼び出された場合はいずれか１つを選択する光ディスク再生方法。
【請求項５】
前記記録ステップはキーマクロの保存開始からの経過時間を計測して操作タイミングを検出し、
前記キーイベント発生ステップはキーマクロの実行開始からの経過時間を計測して操作タイミングを検出する請求項４記載の光ディスク再生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＤＶＤ（Digital Versatile Disc）プレーヤ等の光ディスク再生装置に関する。
【背景技術】
【０００２】
ＨＤ  ＤＶＤ（High Definition Digital Versatile Disc）のアドバンスドコンテンツ再生においてユーザによる種々のインタラクティブな設定のためにＥＣＭＡスクリプトやマークアップ言語を利用するアドバンスドアプリケーションが実行されている。例えば、コンテンツ再生方法（言語選択／表示方法／音声選択など）をユーザがカスタマイズすることが可能となっている。しかしながら、コンテンツ再生を一旦終了し、再度再生した場合、ＥＣＭＡスクリプトやマークアップ言語内で明示的に設定情報を保存するアプリケーションが用意されていない限りは、設定した内容（カスタマイズした再生方法の設定）がリセットされてしまう。
【０００３】
このようにＥＣＭＡスクリプトやマークアップ言語を利用するアドバンスドアプリケーションを実行することにより、コンテンツ依存による種々のカスタマイズが可能になった。しかし、逆に全てのアプリケーションに適用可能な汎用フォーマットでの設定保存機能を設けることは、ＥＣＭＡスクリプトのプログラム自体を解析しなければならず、不可能となった。
【０００４】
一方、ユーザが操作したキー操作の手順を記憶して、キー操作を何度も再現するキーマクロ機能が特許文献１に記載されている。ここでは、光ディスクの再生時にユーザがリモコン装置等の操作キーを操作して、好みのシーンや好みの曲を選択して再生した場合に、ユーザが操作したキー操作の手順を記憶して、一度再生した光ディスクを再度再生するとき、記憶されているキー操作の手順に従って光ディスクを再生することができる。このことにより、光ディスクの再生時にユーザがリモコン装置等の操作キーを操作して、好みのシーンや好みの曲を選択して再生した場合に、ユーザが操作したキー操作の手順を記憶して、一度再生した光ディスクを再度再生するとき、記憶されているキー操作の手順に従って光ディスクを再生することができる。
【０００５】
しかし、特許文献１に記載のキーマクロ機能は光ディスクの再生時に各シーンや各曲の再生が終了すると次に再生するシーンや曲を数字キーで選択操作すると、その数字キーの操作された順番を単に記憶するものであり、二度目以降の再生時に各シーンや各曲の再生が終了すると、記憶しているキーの順番に従って次のシーンや曲を選択するものである。一方、アドバンスドアプリケーションにおいてはアプリケーションが異なる、あるいは同じアプリケーションにおいてもタイミングが異なると同一のキーに異なる定義が与えられることがある。例えば、タイミングによって、Ｂキーが決定キーあるいはブックマーク登録キーとなり、単に操作されたキーの種別を記憶しているのみでは、選択操作を再現することができない。
【特許文献１】特開２００５−２７１１４号公報（段落００４１）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
このように従来のＨＤ  ＤＶＤのアドバンスドコンテンツの再生においては、アドバンスドアプリケーションによりユーザがインタラクティブな操作により種々の設定をすることができるが、設定内容を保存するアプリケーションを用意しない限り、設定内容がリセットされ、再度同じ操作をする必要があった。
【０００７】
本発明の目的はＨＤ  ＤＶＤのアドバンスドコンテンツの再生においてアドバンスドアプリケーションによりユーザが行ったインタラクティブな操作手順を自動的に再現することができる光ディスク再生装置を提供することにある。
【課題を解決するための手段】
【０００８】
本発明の一実施態様による光ディスク再生装置は、アドバンスドコンテンツを格納した光ディスクの再生装置において、アドバンスドアプリケーションを実行する手段と、アドバンスドアプリケーションの実行中にユーザが操作した一連のキーの種別を検出する手段と、検出した一連のキーの種別と操作タイミングを組にしてキーマクロ情報として記録する手段と、前記記録されたキーマクロ情報を読み出して、各操作タイミングでキー種別に応じたキーイベントを発生する手段と、を具備し、前記記録手段は複数のキーマクロ情報を光ディスクの識別情報とアプリケーションの識別情報に関連付けて記録し、前記キーイベント発生手段は光ディスクの識別情報とアプリケーションの識別情報に応じた１つまたは複数のキーマクロ情報を呼び出し、複数のキーマクロ情報が呼び出された場合はいずれか１つを選択する。
【０００９】
本発明の一実施態様による光ディスク再生方法は、アドバンスドコンテンツを格納した光ディスクの再生方法において、アドバンスドアプリケーションを実行するステップと、アドバンスドアプリケーションの実行中にユーザが操作した一連のキーの種別を検出するステップと、検出した一連のキーの種別と操作タイミングを組にしてキーマクロ情報として記録するステップと、前記記録されたキーマクロ情報を読み出して、各操作タイミングでキー種別に応じたキーイベントを発生するステップを具備し、前記記録ステップは複数のキーマクロ情報を光ディスクの識別情報とアプリケーションの識別情報に関連付けて記録し、前記キーイベント発生ステップは光ディスクの識別情報とアプリケーションの識別情報に応じた１つまたは複数のキーマクロ情報を呼び出し、複数のキーマクロ情報が呼び出された場合はいずれか１つを選択する。
【発明の効果】
【００１０】
以上説明したように本発明によれば、ＨＤ  ＤＶＤのアドバンスドコンテンツの再生においてアドバンスドアプリケーションによりユーザが行ったインタラクティブな操作手順を記憶しておき、再度同じアプリケーションが実行される際に記憶した手順を呼び出すことにより、ユーザの行った操作手順を自動的に再現することができる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して本発明による光ディスク再生装置の実施の形態を説明する。本発明による光ディスク再生装置には、例えば再生ソフトウェアがインストールされたパーソナルコンピュータも該当し、記録メディア（記録媒体）に記録される情報としては、映像情報に限らずドキュメント情報等であってもよいことはいうまでもない。
【００１２】
図１は本発明の第１の実施の形態に係る情報記録再生装置の構成を示す図である。実施形態としては、ディジタルビデオレコーダを例に説明する。図１では記録媒体としてはＨＤ  ＤＶＤ規格の光ディスクとハードディスク装置に内装されたハードディスクが設けられた例を説明するが、ハードディスクあるいはＤＶＤなどの光ディスクなどに代えて、例えば半導体メモリ（メモリカード）を記録媒体とすることも可能である。
【００１３】
情報記録再生装置（ビデオレコーダ）１は、例えばＨＤ  ＤＶＤ規格の光ディスク（Ｍｅｄｉｕｍ）Ｍに、ビデオファイルを構築できるディスクドライブ部１０１を有する。光ディスクＭは、例えばＣＤ規格、ＤＶＤ規格であってもよく、あるいはＢｌｕｅ−Ｒａｙ（ブルーレイ）ディスクであってもよい。さらに、単層に限らず多層（例えば２層ＤＬ）のディスクであってもよい。
【００１４】
ディスクドライブ部１０１は、詳述しないが、光ディスクＭを所定速度で回転させる回転制御系、光ディスクＭの記録面に情報を記録し、あるいは光ディスクＭに記録されている情報を再生するための所定波長のレーザ光を照射するレーザ駆動系およびそのレーザ光を案内するレーザ光学系などを有する。
【００１５】
情報記録再生装置（ビデオレコーダ）１はハードディスク装置（以下、ＨＤＤと示す）２０１に収容されているハードディスクＨＤに対しても同様にビデオファイルを構築できる。
【００１６】
ディスクドライブ部１０１に装填された光ディスクＭまたはＨＤＤ部２０１のハードディスクＨＤに記録すべきデータ（記録データ）は、データプロセッサ部１１１の制御により、予め指定された記録媒体（光ディスクＭあるいはハードディスクＨＤ）に記録される。また、データプロセッサ部（Ｄ−ＰＲＯ）１１１の制御により、ディスクドライブ部１０１の光ディスクＭまたはＨＤＤ部２０１のハードディスクＨＤから記録されているデータが読み出される（再生データが得られる）。
【００１７】
データプロセッサ部１１１は、記録データまたは再生データを、所定の単位として取り扱うもので、バッファ回路、変調・復調回路、エラー訂正部などを含む。
【００１８】
情報記録再生装置１は入力情報を記録するためのデータ処理部であるエンコーダ部５０と、既に記録されているデータを再生するデータ処理部であるデコーダ部６０と、情報記録再生装置１の動作を制御するマイクロコンピュータブロック３０とを主要部として有する。
【００１９】
エンコーダ部５０は、入力されたアナログビデオ信号やアナログオーディオ信号をデジタル化するビデオ用及びオーディオ用のアナログデジタルコンバータと、ビデオエンコーダと、オーディオエンコーダと、副映像エンコーダを有する。
【００２０】
エンコーダ部５０の出力は、バッファメモリを含むフォーマッタ５１にて所定のＤＶＤ−ＲＡＭのフォーマットに変換され、データプロセッサ部１１１に供給される。
【００２１】
エンコーダ部５０には、ＡＶ入力部４１からの外部アナログビデオ信号と外部アナログオーディオ信号、あるいはＴＶチューナ部４２からのアナログビデオ信号とアナログオーディオ信号が入力される。
【００２２】
なお、エンコーダ部５０は、圧縮されたデジタルビデオ信号やデジタルオーディオ信号が直接入力される場合は、その圧縮デジタルビデオ信号やデジタルオーディオ信号をフォーマッタ５１に直接供給することもできる。また、エンコーダ部５０は、アナログデジタル変換されたデジタルビデオ信号やオーディオ信号をビデオミキシング部７１やオーディオセレクタ７６に直接供給することもできる。
【００２３】
エンコーダ部５０は、図示しないがビデオエンコーダを含み、そのビデオエンコーダにおいて、デジタルビデオ信号が、例えばＭＰＥＧ−２またはＭＰＥＧ−１規格に基づいた可変ビットレートで圧縮されたデジタルビデオ信号に変換される。また、デジタルオーディオ信号は、例えばＭＰＥＧ−２またはＭＥＰＧ−１あるいはＡＣ−３規格に基づいて固定ビットレートで圧縮されたデジタルオーディオ信号、もしくはリニアＰＣＭなどの非圧縮のデジタルオーディオ信号に変換される。
【００２４】
副映像信号については、ＡＶ（オーディオ・ビデオ）入力部４１を経由して、副映像信号が直接入力される場合（例えば、副映像信号向けの独立した出力端子が設けられているビデオプレーヤからの信号など）、あるいは同等のデータ構成のＤＶＤビデオ信号の放送信号がＴＶチューナ部４２で受信された場合において、ＤＶＤビデオ信号中の副映像信号が、副映像エンコーダでエンコード（ランレングス符号化）されて、副映像のビットマップ（副映像データ）が構築される。
【００２５】
エンコードされたデジタルビデオ信号、デジタルオーディオ信号ならびに副映像データは、フォーマッタ５１において、ビデオパック、オーディオパックおよび副映像パックとしてパック化される。パック化された、ビデオパック、オーディオパックならびに副映像パックは、さらに集合（集約）され、ＤＶＤ−ビデオ規格に規定されているフォーマット（ＤＶＤ  Ｖｉｄｅｏフォーマット）や、ＤＶＤ−レコーディング規格に規定されているフォーマット（ＤＶＤ  ＶＲフォーマット）に変換される。
【００２６】
フォーマッタ５１でフォーマットされた情報（ビデオ、オーディオ、副映像データなどのパック）ならびに（後段に示すが）ＭＰＵ（ＣＰＵ）３１ａにより作成される管理情報（ファイルシステム）は、データプロセッサ部１１１を介してＨＤＤ部２０１またはディスクドライブ部１０１に供給され、ハードディスクＨＤまたは光ディスクＭに記録することができる。なお、ハードディスクＨＤあるいは光ディスクＭに記録された情報は、データプロセッサ部１１１を介して、相互に置き換えまたは複製可能である。すなわち、既にハードディスクＨＤに記録されているデータは、光ディスクＭに移動または複製可能であり、光ディスクＭに記録されているデータも、ハードディスクＨＤに移動または複製可能である。
【００２７】
また、ハードディスクＨＤあるいは光ディスクＭに記録されているデータ、例えば番組のビデオオブジェクトは、一部または全部の削除や任意数のオブジェクトの合成（接続）という、編集処理も可能である。これは、本発明の実施の形態にかかるフォーマットが取り扱うデータ単位を定義し、編集を容易にしているからである。
【００２８】
マイクロコンピュータブロック３０は、主制御部としての例えばＭＰＵ（マイクロプロセッシングユニット）もしくはＣＰＵ（セントラルプロセッシングユニット）３１ａ、ＭＰＵ（ＣＰＵ）３１ａや情報記録再生装置１のさまざまな要素ならびに制御ブロック等を動作させる制御プログラムなどを保持するＲＯＭ（読出し専用メモリ）３１ｂ、プログラムを実行するために確保すべき所定のワークエリアを提供するＲＡＭ（ランダムアクセスメモリ）３１ｃを含む。
【００２９】
マイクロコンピュータブロック３０においては、ＲＡＭ３１ｃをワークエリアとしてＭＰＵ（ＣＰＵ）３１ａによるＲＯＭ３１ｂに格納されている制御プログラムに従った欠陥場所検出、未記録領域検出、録画情報記録位置設定、ＵＤＦ記録、あるいはＡＶアドレス設定などが実行される。
【００３０】
また、マイクロコンピュータブロック３０は、詳述しないが、ディレクトリ検出部や、ＶＭＧ情報（全体のビデオ管理情報）作成部、コピー（複製）関連情報検知部、コピー（複製）／スクランブリング情報処理部（ＲＤＩ処理部）、パケットヘッダ処理部、シーケンスヘッダ処理部、ならびにアスペクト比情報処理部などを備える。マイクロコンピュータブロック３０は、情報（データ）の記録（録画）を実行する際の録画時の管理情報制御部（以下、録画管理制御部）、および記録済みデータの編集を実行する際の編集時の管理情報制御部（以下、編集管理制御部）を備える。
【００３１】
ＭＰＵ（ＣＰＵ）３１ａの実行結果のうち、ユーザに通知すべき内容は、情報記録再生装置１の表示部４３、または（後述するが、外部機器として接続される）モニタ装置に、ＯＳＤ（オンスクリーンディスプレイ）表示される。
【００３２】
また、マイクロコンピュータブロック３０は、装置１を動作させるためのユーザからの制御信号、すなわち操作信号をマイクロコンピュータブロック３０に入力可能とするキー入力部４４を有する。キー入力部４４は、記録再生装置１の任意の位置に設けられる操作スイッチ類や、図示しないがリモコン受信部を経由して、操作信号を入力可能な図示しないリモコン装置に相当する。なお、キー入力部４４は、記録再生装置１と、有線あるいは無線もしく光（赤外線を含む）などにより、制御信号の入力を可能とするパーソナルコンピュータであってもよい。すなわち、キー入力部４４がいずれの形態であるにせよ、ユーザがキー入力部４４を操作することにより、入力された映像音声信号の録画処理や、録画されたコンテンツの再生処理、あるいは録画されたコンテンツに対する編集処理などが実行される。
【００３３】
なお、マイクロコンピュータブロック３０が、ディスクドライブ部１０１、ＨＤＤ部２０１、データプロセッサ部１１１、エンコーダ部５０、デコーダ部６０などを制御するタイミングは、ＳＴＣ（システムタイムクロック）３８からの時間データに基づく。録画や再生の動作は、通常はＳＴＣ３８からのタイムクロックに同期して実行される。但し、それ以外の処理は、ＳＴＣ３８とは、独立したタイミングで実行されてもよい。
【００３４】
デコーダ部６０は、詳述しないが、パック構造が与えられているＤＶＤフォーマットの信号からそれぞれのパックを分離して取り出すセパレータ、パックの分離やその他の信号処理において利用されるメモリ、セパレータで分離された主映像データ（ビデオパックの内容）をデコードするＶデコーダ、セパレータで分離された副映像データ（副映像パックの内容）をデコードするＳＰデコーダ、およびセパレータで分離されたオーディオデータ（オーディオパックの内容）をデコードするＡデコーダなどを含む。
【００３５】
また、デコーダ部６０は、所定タイミングで、デコードされた主映像にデコードされた副映像をタイミングで合成し、メニュー、ハイライトボタン、字幕（音声の文字表示）、その他の副映像を主映像に重ねて出力するビデオプロセッサを備える。
【００３６】
デコーダ部６０の出力ビデオ信号は、ビデオミキシング（Ｖミキシング）部７１に入力される。Ｖミキシング部７１では、副映像が合成されている主映像にテキストデータが合成される。なお、Ｖミキシング部７１には、ＴＶチューナ４２やＡ／Ｖ入力部４１からの信号が、直接入力可能なラインもまた接続されている。
【００３７】
Ｖミキシング部７１にはまた、バッファとして用いるフレームメモリ７２、ミキシング部７１からの出力信号の出力において、アナログ信号の出力に利用されるＩ／Ｆ（インタフェース）７３、ならびにデジタル信号の出力に利用されるＤ／Ａコンバータ（デジタル−アナログ変換器）７４が接続されている。出力ビデオ信号はＤ／Ａコンバータ７４によりアナログ変換され、モニタ７５で表示される。
【００３８】
デコーダ部６０から出力されるオーディオ信号（出力）は、セレクタ７６を通じてＤ／Ａ（デジタル−アナログ変換器）７７に入力され、Ｄ／Ａコンバータ７７によりアナログ変換され、外部に出力される。例えば、Ｄ／Ａコンバータ７７の出力端に図示しない増幅器を介してスピーカが接続されている場合には、オーディオ（音声）がユーザにより可聴できる。なお、セレクタ７６は、マイクロコンピュータブロック３０からのセレクト信号により制御される。これにより、セレクタ７６は、ＴＶチューナ４２やＡ／Ｖ入力部４１からの（エンコーダ部による処理が不要な）デジタル信号については、エンコーダ部５０をスルーさせた信号を、直接Ｄ／Ａ７７に供給可能である。
【００３９】
なお、エンコーダ部５０のフォーマッタ５１では、データの記録（録画）中、さまざまな切り分け情報が作成され、マイクロコンピュータブロック３０のＭＰＵ（ＣＰＵ）３１ａへ定期的に送る（ＧＯＰ先頭への割り込み時などの情報）。切り分け情報としては、ＶＯＢＵのパック数、ＶＯＢＵ先頭からのＩピクチャのエンドアドレス、ＶＯＢＵの再生時間などである。
【００４０】
フォーマッタ５１からはまた、ＭＰＵ（ＣＰＵ）３１ａに、アスペクト情報処理部からのアスペクト比情報などが、録画開始時に供給される。この情報に基づいて、ＭＰＵ（ＣＰＵ）３１ａにより、ＶＯＢストリーム情報（ＳＴＩ）が作成される。ＳＴＩは、解像度データ、アスペクトデータなどを含み、再生時には、各デコーダ部において、この情報を元に初期設定が行われる。
【００４１】
なお、情報記録再生装置１では、ビデオファイルを、１ディスクに、１ファイルとしている。また、データにアクセス（シーク）している間に、再生中の画像が途切れることを防止するために、最低限連続する情報単位（サイズ）を決めている。この単位を、ＣＤＡ（コンティギュアス・データ・エリア）と、称される。ＣＤＡサイズは、ＥＣＣ（エラー訂正コード）ブロック（１６セクタ）の倍数であり、ファイルシステムでは、このＣＤＡ単位で記録を行っている。
【００４２】
データプロセッサ部１１１は、エンコーダ部５０のフォーマッタ５１からＶＯＢＵ単位のデータを受け取り、ＣＤＡ単位のデータを、ディスクドライブ部１０１またはＨＤＤ部２０１に供給する。また、マイクロコンピュータブロック３０のＭＰＵ（ＣＰＵ）３１ａは、記録したデータを再生するために必要な管理情報を作成し、データの記録が終了したことを示すデータ記録終了コマンドを認識すると、作成した管理情報を、データプロセッサ部１１１に送る。
【００４３】
これにより、記録媒体（光ディスクＭまたはハードディスクＨＤ）に管理情報が記録される。従って、エンコード時には、ＭＰＵ（ＣＰＵ）３１ａは、エンコーダ部５０からデータ単位の情報（切り分け情報など）を受け取ることができる。また、ＭＰＵ（ＣＰＵ）３１ａは、記録開始時には、光ディスクＭまたはハードディスクＨＤから読み取った管理情報（ファイルシステム）を認識し、各ディスクの未記録エリアを認識し、データ上の記録エリアを、データプロセッサ部１１１を介してディスクに設定する。
【００４４】
次にこの実施形態の再生動作について説明する。
【００４５】
上述したように、ＨＤ  ＤＶＤのアドバンスドコンテンツ再生時にアドバンスドアプリケーションを実行すると、ユーザによる種々のインタラクティブな設定、例えば、背景色設定、言語設定が実現される。この設定のためには、画面の推移に応じて所定のタイミングで数回のキーを操作しなければならない。この設定はディスク毎に異なるので、ディスクを挿入する毎に設定がなされる。その度に数回のキー操作をすることは煩雑であるので、キー操作の手順を記憶するキーマクロ機能を実現する。
【００４６】
従来から公知のキーマクロ機能は単に「キー種別／押下順序」を記憶するだけであるので、以下のような理由でアドバンスドアプリケーション実行時のインタラクティブなキー操作は記憶できない。本発明の一実施形態によるキーマクロ機能は「キー種別／押下順序」に加えて「各々のキー押下の時間間隔」、「ＤＩＳＣ−ＩＤ」及び「再生中のアプリケーションＩＤ」も保存する。
【００４７】
「各々のキー押下における間隔」が必要な理由は以下の通りである。簡単に言うと、アドバンスドアプリケーションは実時間の経過に伴い、刻々と状態変化しており、この状態変化を意識しないと、同じキーを押しても同じ動作を行うとは限らないからである。もう少し詳しく言うと、ＥＣＭＡスクリプトとマークアップ言語とで各々下記のような問題が生じる。
【００４８】
ＥＣＭＡスクリプトは基本的にイベントドリブンで処理が実行される。例えば効果音の再生指示を出すと、実際に再生開始したタイミングや再生終了したタイミングなどでコールバック関数がコールされる。このコールバック関数内でスクリプト内部の状態を変化させるのが一般的である。そのため、コールバックが返ってこない限り状態は変わらないことになり、状態変化を認識した後でキー操作を行うためにはコールバックが返ってきたあとでキーイベントを送らなければならない。
【００４９】
マークアップ言語は定期的に処理されるが、実時間を基準にした「アクティブ期間」の概念が存在する。例えば「キーが押されてから３秒間は状態Ａであり、その後３秒後に状態Ｂに変化する」というものである。この場合、状態Ｂでキー操作を行うためにはキーが押されてから最低３秒は待った後にキーイベントを送らなければならない。
【００５０】
次に「ディスクＩＤ」、「再生中のアプリケーションＩＤ」が必要な理由は以下の通りである。アドバンスドアプリケーションは同時に複数存在することが可能であり、且つ、イベント処理順序が規定されている。基本的にはキーイベントは最上位のアプリケーションから順に最下位のアプリケーションまで伝達される。しかしながらＤＯＭ−Ｌｅｖｅｌ２Ｅｖｅｎｔ定義に従い、イベントの伝播停止が可能（Stop Propagation，Prevent Default）である。この処理を実行することで自身のアプリケーションよりも下位のアプリケーションへのイベント伝播を止めることが出来る。
【００５１】
具体的には、例えば、キーの基本操作説明を表示するアプリケーションを再生中と仮定する。このアプリケーション再生中に「早送りキー」を押下すると画面上に「早送りの説明」が表示されると仮定する。更に、このアプリケーションでは「早送りキー」の伝播を停止する処理を設けているとする。この場合「早送り」キー押下で「早送りの説明は表示されるが、実際のＦＦ動作は実行されない」ことになる。しかしながら、このアプリケーションが存在しない場合に「早送りキー」を押下すると、普通にＦＦ実行されるだけであり、エンドユーザから見ると全く異なる動作になる。
【００５２】
このため、再生中のアプリケーションを特定する必要がある。再生中のアプリケーションは「ディスクＩＤ」、「再生中のアプリケーションＩＤ」から一意に判別可能である。「再生中のアプリケーションＩＤ」は再生中のタイトル番号と、アクティブな全アプリケーションに対する各々のＺオーダにより一意に判別可能である。アクティブな全アプリケーションに対する各々のＺオーダとは１つのタイトルに複数のアプリケーションが存在する場合、アプリケーション毎にＺオーダが決まっているので、タイトル番号と、Ｚオーダによりアプリケーションが特定できる。例えば、同じタイトル内で言語毎に異なるアプリケーションが起動するようにコンテンツを記述することも可能である。即ち、タイトル内の全てのアプリケーションが常に実行されているとは限らないので、再生中のアプリケーションＩＤを保持する必要がある。
【００５３】
上述した本実施形態のキーマクロ機能を以下に説明する。
【００５４】
図２はキーマクロ保存の動作を示すフローチャートである。
【００５５】
ブロック１２でディスクがディスクドライブ部１０１に挿入される。ブロック１４でディスクドライブ部１０１は特定フォルダと特定ファイルの存在有無によって当該ディスクがアドバンスドコンテンツを保存しているか否かを判定する。アドバンスドコンテンツを保存していない、すなわちスタンダードコンテンツしか保存していない場合は、本発明の対象外であるので、ブロック１６で他の処理（スタンダードコンテンツについての処理）を実行する。
【００５６】
アドバンスドコンテンツを保存している場合は、ブロック１８でディスクＩＤを読み取る。ディスクＩＤはＡＡＣＳ（Advanced Access Content System）のコピーコントロール（ＣＣ）情報や、プロバイダＩＤ／コンテンツＩＤから特定することができるので、これらの情報を読取り、一時保存する。
【００５７】
ブロック２０でアドバンスドコンテンツを再生する。ブロック２２でキーマクロ保存の開始指示があるか否かを判定する。開始指示が無い場合は、コンテンツ再生（ブロック２０）に戻る。開始指示がある場合は、ブロック２４で保存開始位置情報を取得する。保存開始位置情報とはブロック１８で一時保存したディスクＩＤと、再生中のタイトル番号と、アクティブな全アプリケーションに対する各々のＺオーダを含む。
【００５８】
ブロック２６でキーマクロ保存用カウンタを０に設定してからカウント動作を開始する。これは、上述したように、アドバンスドアプリケーションは状態が変化しており、キー操作のタイミング（キーマクロ保存開始からの時間）に応じてキー操作の意味が違うからである。
【００５９】
ステップ２８でキー操作の有無を判定する。キー操作が無い場合は、ブロック２８を何度も実行する。キー操作がある場合は、ブロック３０でキーマクロ保存の終了指示があるか否かを判定する。終了指示が無い場合は、ブロック３４でキーの種別とカウンタ値との組を取得し、ブロック２８に戻る。終了指示がある場合は、ブロック３２で保存開始位置情報（ブロック２４で取得）と、キー種別／カウンタ値の組の配列（ブロック３４で取得）と、終了時のカウント値とをキーマクロ情報として保存して、コンテンツの再生（ブロック２０）に戻る。同一のディスクＩＤに関して複数のキーマクロ情報が記録される場合があるので、キーマクロ情報には背景色設定マクロ等のラベル（名前）が付けられている。キーマクロ情報の保存先はＭＰＵ３１ａ内の図示しない不揮発性メモリあるいはバックアップされているメモリがあるが、記録型のディスクの場合はディスクに直接保存しても良い。
【００６０】
図３はキーマクロ呼び出しの動作を示すフローチャートである。
【００６１】
ブロック５２でディスクがディスクドライブ部１０１に挿入される。ブロック５４でディスクドライブ部１０１は特定フォルダと特定ファイルの存在有無によって当該ディスクがアドバンスドコンテンツを保存しているか否かを判定する。アドバンスドコンテンツを保存していない、すなわちスタンダードコンテンツしか保存していない場合は、本発明の対象外であるので、ブロック５６で他の処理（スタンダードコンテンツについての処理）を実行する。
【００６２】
アドバンスドコンテンツを保存している場合は、ブロック５８でディスクＩＤを読み取る。ディスクＩＤはＡＡＣＳのコピーコントロール（ＣＣ）情報や、プロバイダＩＤ／コンテンツＩＤから特定することができるので、これらの情報を読取り、一時保存する。
【００６３】
ブロック６０でアドバンスドコンテンツを再生する。ステップ６２でキーマクロの呼び出し指示があるか否かを判定する。呼び出し指示が無い場合は、コンテンツ再生（ブロック６０）に戻る。呼び出し指示がある場合は、ブロック６４で当該ディスクＩＤに関して保存されているキーマクロ情報の一覧を取得する。
【００６４】
ブロック６８でキーマクロを一覧表示する。ユーザはブロック７０でキーマクロの一覧表示の中から所望のキーマクロを選択する。
【００６５】
ブロック７２でアプリケーションのアクティブ状況をチェックする。選択されたキーマクロ情報で定義されているアクティブなアプリケーションと現在アクティブなアプリケーションが一致するか否かを判定する。一致しない場合は、ブロック６０に戻り、一致する場合はブロック７４に進む。一致の判定は厳密には全て一致であるが、実際のコンテンツでは必ずしも全て一致していなくても、結果的には意図通りの動作になることの方が多い。そのため、全てが一致する場合以外は「このキーマクロを実行すると、意図しない動作をする可能性がありますが、良いですか？」のような警告表示を出し、エンドユーザがＯＫを選択した場合にはブロック７４に進むことが考えられる。
【００６６】
ブロック７４でユーザのキー操作を禁止する。これは、キーマクロの実行中にエンドユーザがキー操作した場合、余分なキーイベントが追加されることにより、意図通りの動作にならない可能性が高いからである。ただし、キー操作の禁止は自動的に設定するのではなく、ＧＵＩにて「キー操作禁止／許可」をエンドユーザが選択できるようにしても良い。
【００６７】
ブロック７６でキーマクロ実行用カウンタのカウント値を０に設定する。ブロック７８でキーマクロ実行用カウンタの更新を開始する。キーマクロ保存用カウンタとキーマクロ実行用カウンタは同一の時間計測機能を有するカウンタである。同一のカウンタで同一のクロックにより更新されるものでも良い。
【００６８】
ブロック８０でキーマクロ実行用カウンタの現在のカウント値が図２のブロック３２で保存したキーマクロ終了時のカウント値に到達したか否かを判定する。到達していない場合は、キーマクロ情報にブロック８２で現在のカウンタ値に該当するキー種別／カウンタ値の組が存在しているか否かを判定する。存在している場合は、ブロック８４で該当するキー種別に応じたキーイベントを発火して、ブロック８０に戻る。ブロック８２で存在していないと判定された場合は、そのままブロック８０に戻る。これにより、キーマクロ保存時になされたキー操作がそのタイミングでその順番に再現され、キーマクロが実行される。
【００６９】
ブロック８０で現在のカウント値がキーマクロ終了時のカウント値に到達したと判定されると、キーマクロ実行の終了なので、ブロック８６でキー操作の禁止を解除してコンテンツ再生（ブロック６０）に戻る。
【００７０】
図４から図７を参照して具体的なアプリケーションのキーマクロの例を説明する。
【００７１】
図４はＥＣＭＡスクリプトで記述された背景色設定アプリケーションのキーマクロを示す。先ず、初期画面では図４の（ａ）に示すように水色ボタンがフォーカスされている。右側の黄色に変更する場合、右キーを操作する。すると、ピロリロリ〜ンのような効果音（Effect Audio）が所定期間（例えば、２秒）鳴動する。鳴動中は図４の（ｂ）に示すようにフォーカスが消える。この効果音が鳴動中はキー操作（例えば、決定キー）は受け付けないようにするため、「効果音が鳴動中はキー操作を無視する」というＥＣＡＭスクリプトの記述がなされている。効果音の鳴動が終了すると、イベントハンドラで状態が遷移され、図４の（ｃ）に示すように「水色から黄色へ本当に変更して良いですか？」というメッセージを表示する。これに応答して決定キーが操作されると、背景色が黄色に変更され、図４の（ｄ）に示すように黄色ボタンがフォーカスされる状態になる。このため、効果音が鳴動中に決定キーが操作されても発火されたキーイベントはハンドリングされることが無いため、結果的には破棄される。効果音の鳴動終了後に決定キーが操作された場合のみ決定キーに応じたキーイベントが適切にハンドリングされる。
【００７２】
図５はマークアップ言語で記述された言語設定アプリケーションのキーマクロを示す。先ず、初期画面では図５の（ａ）に示すように英語がフォーカスされている。右側の日本語後に変更する場合、右キーを操作する。すると、図５の（ｂ）に示すように日本語のボタンが所定期間（例えば、３秒）点滅する。この点滅中はフォーカスは英語のままであり、この段階で決定キーが操作されると、英語が選択されてしまう。点滅後に図５の（ｃ）に示すようにフォーカスが日本語に移る。この後、決定キーが操作されると、発火されたキーイベントが適切にハンドリングされ、図５の（ｄ）に示すように日本語が選択された状態になる。
【００７３】
図４、図５のようにキー操作により発火するキーイベントがキー操作時間によって異なっても、本実施形態のキーマクロ情報はキー種別／カウンタ値の組を含んでいるので、適切なタイミングでのキーイベント発火を再現することができる。
【００７４】
図６は「基本操作説明」アプリケーションがアクティブな場合のキーマクロを示す。初期画面で図６の（ａ）に示すように「意味を知りたいキーを押して下さい。説明が表示されます。」というメッセージが表示される。ここで、例えばＦＦキーが操作される。すると、基本操作説明のアプリケーションがＦＦキーをハンドリングし、図６の（ｂ）に示すようにＦＦキーの説明を含む所定の色（例えば、赤）のテキストボックスを表示すると共に、ＦＦキーイベントを破棄する。
【００７５】
一方、図７は「基本操作説明」アプリケーションが存在しない場合のキーイベントを示す。コンテンツの再生中にＦＦキーが操作されると、「基本操作説明」アプリケーションが存在しない場合は、デフォルトのインプットハンドラがＦＦキーをハンドリングし、早送りを実行する。
【００７６】
このように同じキー（ＦＦキー）でも、操作される時にアクティブなアプリケーションが異なっても、本実施形態のキーマクロ情報はアプリケーションＩＤを含んでいるので、期待されるアプリケーションに対する適切なキーイベント配信を再現することができる。
【００７７】
以上説明したように、第１の実施の形態によれば、ＨＤ−ＤＶＤアドバンスドコンテンツにおいても、キーマクロ機能が実現され、毎回同じキー操作を必要とされる設定を自動化することができる。また、テストの自動化等の開発効率にも寄与できる。
【００７８】
変形例
なお、この発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【００７９】
また、本発明は、コンピュータに所定の手段を実行させるためのあるいはコンピュータを所定の手段として機能させるための、あるいはコンピュータに所定の機能を実現させるためのプログラムを記録したコンピュータ読取り可能な記録媒体としても実施することもできる。
【００８０】
また、上述の説明は個々の実施例それぞれについて行ったが、複数の実施例を適宜組み合わせてもよい。
【図面の簡単な説明】
【００８１】
【図１】本発明の一実施形態に係る情報記録再生装置の構成を示すブロック図。
【図２】本発明の一実施形態におけるキーマクロ保存動作を示すフローチャート。
【図３】本発明の一実施形態におけるキーマクロ呼出し動作を示すフローチャート。
【図４】本発明の一実施形態におけるＥＣＭＡスクリプトの一例としての背景色設定動作を示す概略図。
【図５】本発明の一実施形態におけるマークアップ言語の一例としての言語設定動作を示す概略図。
【図６】本発明の一実施形態におけるアプリケーションの一例を示す概略図。
【図７】本発明の一実施形態におけるアプリケーションの一例を示す概略図。
【符号の説明】
【００８２】
３０…マイクロコンピュータブロック、３８…システムタイムクロック部、５０…エンコーダ部、５１…フォーマッタ部、６０…デコーダ部、７１…ビデオミキシング部、７５…モニタ部、１０１…ディスクドライブ部、１１１…データプロセッサ部。
【図１】
0004901608.tif 000002
【図２】
0004901608.tif 000003
【図３】
0004901608.tif 000004
【図４】
0004901608.tif 000005
【図５】
0004901608.tif 000006
【図６】
0004901608.tif 000007
【図７】
0004901608.tif 000008