(57)【要約】  特殊再生中に、通常再生時に映像音声と同期してアプリケーションプログラムを実行すべき同期区間において、何らかの原因でアプリケーションプログラムが実行され無い場合、特殊再生中であるためにアプリケーションが実行されないことを視聴者に知らせる機構（サービスマネージャ１７０４ｆ等）を提供する。さらに、視聴者が特殊再生中に望んだ場合には、アプリケーションを実行すべき範囲の最初からコンテンツを通常再生開始する機構を提供する。
2008546221.tif 000002
【特許請求の範囲】
【請求項１】
１または複数の映像情報および音声情報と、１または複数のアプリケーションと、前記映像情報および前記音声情報の再生と同期して前記アプリケーションを実行および終了するための情報および前記映像情報および前記音声情報の特殊再生に同期して前記アプリケーションを実行するか否かの情報を有するアプリケーション制御情報とを含む放送波を受信して記録および再生する放送録画再生装置であって、
前記放送波を受信する受信手段と、
前記受信した放送波に含まれる映像音声、アプリケーションおよびアプリケーション制御情報を記録領域に記録する記録手段と、
前記記録領域に記録された映像情報および音声情報を再生する映像音声再生手段と、
前記記録領域に記録された放送波に含まれるアプリケーション制御情報に従い前記映像情報および音声情報の再生と同期して前記記録領域に記録されたアプリケーションの実行および終了の制御を行うアプリケーション制御手段と、
前記映像音声再生手段により再生される映像情報および音声情報の特殊再生指示を受ける受付手段と、
前記映像音声再生手段により再生される映像情報および音声情報に対する特殊再生を検知した場合、前記アプリケーション制御情報に基づき、前記再生される映像情報および音声情報に同期して実行されるアプリケーションが特殊再生時にも実行するか否かを識別し、前記特殊再生時にも実行すると識別した場合、当該アプリケーションの実行を継続し、前記特殊再生時には実行しないと識別した場合、当該アプリケーションの実行を終了すると決定する特殊再生時アプリケーション制御決定手段と、
前記特殊再生時には実行しないと識別したアプリケーションが存在するとのメッセージをユーザに通知するアプリケーション存在通知手段とを備え、
前記映像音声再生手段により再生される映像情報および音声情報に対する特殊再生を検知した場合、前記アプリケーション制御手段は、前記特殊再生時アプリケーション制御決定手段の決定に従って、前記アプリケーションの実行を制御し、
前記アプリケーション存在通知手段は、前記特殊再生時には実行しないと識別したアプリケーションが存在することを示すメッセージをユーザに通知する放送録画再生装置。
【請求項２】
前記アプリケーション制御情報が更に、映像情報および音声情報と同期してアプリケーションを実行させる期間である有効範囲を示すアプリケーション有効範囲情報を含み、
前記放送録画再生装置は更に、前記記録領域に記録された映像情報および音声情報の再生中または特殊再生中に、前記アプリケーション有効範囲情報に基づき前記アプリケーションを実行させる期間となったかどうかを検知するアプリケーション有効範囲検知手段を備え、
前記特殊再生時アプリケーション制御決定手段は更に、前記記録領域に記録された映像情報および音声情報を特殊再生している間に前記アプリケーション有効範囲検知手段が前記アプリケーションを実行させる期間となったことを検知した場合、前記アプリケーション制御情報に基づき、前記アプリケーションが特殊再生時にも実行するか否かを識別し、前記特殊再生時にも実行すると識別した場合、当該アプリケーションの実行を開始し、前記特殊再生時には実行しないと識別した場合、当該アプリケーションの実行をしないと決定する請求項１記載の放送録画再生装置。
【請求項３】
前記アプリケーション制御情報が更に、映像情報および音声情報と同期してアプリケーションを実行させる期間である有効範囲を示すアプリケーション有効範囲情報を含み、
前記アプリケーション存在通知手段は、前記終了すると決定したアプリケーションの有効範囲が終了した場合、ユーザへの通知を終了することを特徴とする請求項１記載の放送録画再生装置。
【請求項４】
前記アプリケーション存在通知手段が更に、前記実行しないと決定したアプリケーションの有効範囲が終了した際に、ユーザへの通知を終了することを特徴とする請求項２記載の放送録画再生装置。
【請求項５】
前記アプリケーション制御情報が更に、映像情報および音声情報と同期してアプリケーションを実行させる期間である有効範囲を示すアプリケーション有効範囲情報を含み、
前記アプリケーション存在通知手段は、前記特殊再生時には実行しないと識別したアプリケーションの有効範囲の開始時点から実行するか否かを問い合わせる内容のメッセージを通知し、
前記放送録画再生装置は更に、前記メッセージに対するユーザの応答結果を取得する応答取得手段を備え、前記メッセージに対するユーザの応答結果によって取得された応答結果が前記アプリケーションの有効範囲の開始時点からの実行を示すことを検知すると、アプリケーションの有効範囲の開始時点から前記アプリケーションを実行するとともに、前記開始時点に対応する映像情報および音声情報を同期して再生することを特徴とする請求項１記載の放送録画再生装置。
【請求項６】
前記アプリケーション存在通知手段は、前記特殊再生時には実行しないと識別したアプリケーションの有効範囲の開始時点から実行するか否かを問い合わせる内容のメッセージを通知し、
前記放送録画再生装置は更に、前記メッセージに対するユーザの応答結果を取得する応答取得手段を備え、前記メッセージに対するユーザの応答結果によって取得された応答結果が前記アプリケーションの有効範囲の開始時点からの実行を示すことを検知すると、アプリケーションの有効範囲の開始時点から前記アプリケーションを実行するとともに、前記開始時点に対応する映像情報および音声情報を同期して再生することを特徴とする請求項２記載の放送録画再生装置。
【請求項７】
前記アプリケーション存在通知手段は、放送波に含まれるアプリケーションを実行することにより前記メッセージをユーザに表示することを特徴とする請求項１記載の放送録画再生装置。
【請求項８】
前記アプリケーション存在通知手段は、放送波に含まれるアプリケーションを実行することにより前記メッセージをユーザに表示することを特徴とする請求項２記載の放送録画再生装置。
【請求項９】
前記アプリケーション存在通知手段は、放送波に含まれるアプリケーションを実行することにより前記メッセージをユーザに表示し、
前記応答取得手段は、放送波に含まれるアプリケーションを実行することによりユーザの応答結果を取得することを特徴とする請求項５記載の放送録画再生装置。
【請求項１０】
前記アプリケーション存在通知手段は、放送波に含まれるアプリケーションを実行することにより前記メッセージをユーザに表示し、
前記応答取得手段は、放送波に含まれるアプリケーションを実行することによりユーザの応答結果を取得することを特徴とする請求項６記載の放送録画再生装置。
【請求項１１】
１または複数の映像情報および音声情報と、１または複数のアプリケーションと、前記映像情報および前記音声情報の再生と同期して前記アプリケーションを実行および終了するための情報および前記映像情報および前記音声情報の特殊再生に同期して前記アプリケーションを実行するか否かの情報を有するアプリケーション制御情報とを含む放送波を受信して録画および再生する放送録画再生方法であって、
前記放送波を受信する受信ステップと、
前記受信した放送波に含まれる映像音声、アプリケーションおよびアプリケーション制御情報を記録領域に記録する記録ステップと、
前記記録領域に記録された映像情報および音声情報を再生する映像音声再生ステップと、
前記記録領域に記録された放送波に含まれるアプリケーション制御情報に従い前記映像情報および音声情報の再生と同期して前記記録領域に記録されたアプリケーションの実行および終了の制御を行うアプリケーション制御ステップと、
前記映像音声再生ステップにより再生される映像情報および音声情報の特殊再生指示を受ける受付ステップと、
前記映像音声再生ステップにより再生される映像情報および音声情報に対する特殊再生を検知した場合、前記アプリケーション制御情報に基づき、前記再生される映像情報および音声情報に同期して実行されるアプリケーションが特殊再生時にも実行するか否かを識別し、前記特殊再生時にも実行すると識別した場合、当該アプリケーションの実行を継続し、前記特殊再生時には実行しないと識別した場合、当該アプリケーションの実行を終了すると決定する特殊再生時アプリケーション制御決定ステップと、
前記特殊再生時には実行しないと識別したアプリケーションが存在するとのメッセージをユーザに通知するアプリケーション存在通知ステップとを含み、
前記映像音声再生ステップにより再生される映像情報および音声情報に対する特殊再生を検知した場合、前記アプリケーション制御ステップでは、前記特殊再生時アプリケーション制御決定ステップの決定に従って、前記アプリケーションの実行を制御し、
前記アプリケーション存在通知ステップでは、前記特殊再生時には実行しないと識別したアプリケーションが存在することを示すメッセージをユーザに通知する放送録画再生方法。
【請求項１２】
１または複数の映像情報および音声情報と、１または複数のアプリケーションと、前記映像情報および前記音声情報の再生と同期して前記アプリケーションを実行および終了するための情報および前記映像情報および前記音声情報の特殊再生に同期して前記アプリケーションを実行するか否かの情報を有するアプリケーション制御情報とを含む放送波を受信して録画および再生する放送録画再生装置のためのプログラムであって、
請求項１１記載の放送録画再生方法に含まれるステップをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、放送コンテンツを蓄積するとともに、蓄積された放送コンテンツを再生する放送録画再生装置に関する。殊に、映像、音声およびプログラム等のデータから構成されるコンテンツが相互に同期をとって放送波に多重されて送信され、その放送波を受信して映像、音声、データを蓄積するための仕組み、および、映像、音声とプログラム等のデータの同期を保持しつつコンテンツの早送り、巻戻し等の特殊再生を実行する仕組みに関する。
【背景技術】
【０００２】
放送局から送信される放送波は、多種多様なコンテンツを含んでいる。コンテンツは、通常の番組で用いられる映像、音声の他に、データを含む場合がある。データの送信方法にはいくつかの方式があり、大別して時系列に送信する方式と、一定の間隔ごとに繰り返し送信する方式がある。前者の時系列に送信する方式では、例えば、時間経過に合わせて連続するデータを順次送信していく。大量のデータを長時間かけて送信する場合に適しているが、送信タイミングで受信しなかった場合は二度と受信できないという欠点がある。一方、後者の一定の間隔ごとに繰り返し送信する方式では、同じデータを一定の期間何度も繰り返し送信する。同一データを送信している期間内に、繰り返し送信されているデータのいずれかひとつを受信すればよいので、受信タイミングが限定されないというメリットがある。例えば、ＢＭＬに代表されるデータ放送や、ＤＳＭＣＣデータカルーセルによるファイル送信がこの方式である。特に放送においては、受信者がいつ選局して受信を開始するかわからない。時系列に送信する方式では、受信開始が送信タイミングよりも遅れてしまって、データ取得に失敗した場合、二度と再取得できない。よって、放送波で映像、音声とともにアプリケーションプログラム等のデータを送信したい場合には、一定の間隔ごとに繰り返し送信される方式が好適である。
【０００３】
現在、上記のような方式で、映像、音声とアプリケーションプログラムとを含む放送波を受信し、アプリケーションプログラムを映像、音声と同期して実行するための仕様が策定され、運用されている。通常の映像、音声を見るだけでなく、送信されたアプリケーションプログラムを受信して端末に取り込み、それを実行して様々な付加機能を実現することができる。このようにアプリケーションプログラムを送信して端末に取り込む方法はダウンロードとも呼ばれている。例えば、ＤＶＢ−ＭＨＰ（Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｂｒｏａｄｃａｓｔｉｎｇ−Ｍｕｌｔｉｍｅｄｉａ  Ｈｏｍｅ  Ｐｌａｔｆｏｒｍ）  ＥＴＳＩ  ＥＳ  ２０１  ８１２  Ｖ１．１．１（２００３−１２）仕様が欧州で策定され、既に仕様に準拠した運用が開始されている。また米国ではケーブル放送環境で同様の仕組みを提供するＯＣＡＰ（ＯｐｅｎＣａｂｌｅ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｌａｔｆｏｒｍ）  ＯＣ−ＳＰ−ＯＣＡＰ１．０−Ｉ１４−０５０１１９仕様が策定されており、実際に運用開始予定である。これらの仕様では、アプリケーションプログラムがＪａｖａ（登録商標）言語で記述されている。端末上にはチューニングやグラフィックス表示のための様々なＡＰＩ（アプリケーションプログラミングインタフェース）が用意されており、ＪａｖａアプリケーションプログラムはＡＰＩを呼び出すことでそれらの機能を制御できる。
【０００４】
さらに、北米では、ＯＣＡＰ仕様にコンテンツの録画再生機能を追加するためのＯＣＡＰ−ＤＶＲ  ＯＣ−ＳＰ−ＯＣＡＰ−ＤＶＲ−Ｉ０１−０４０５２４仕様を策定中である。これはケーブルテレビ放送として送出される映像、音声およびそれらと同期して実行されるＪａｖａアプリケーションプログラムをコンテンツとして録画し、さらに録画したコンテンツを放送波から直接再生する場合と同じように再生するものである。アプリケーションプログラムは、放送波からの直接再生と同様に映像、音声と同期をとって再生される。
【０００５】
またＯＣＡＰ−ＤＶＲでは、ハードディスクや半導体メモリといった高速ランダムアクセス可能な記録媒体に放送されたコンテンツを録画することで、コンテンツの特殊再生を実現している。ここで、特殊再生とは、早送り、巻戻し、スロー、一時停止、スキップ等の、コンテンツを任意の速度で再生したり、任意の位置から再生したりする機能である。ＯＣＡＰ−ＤＶＲでは、放送波から端末に取り込んだアプリケーションプログラムがコンテンツの録画や特殊再生を制御できる。すなわち、端末上に録画や特殊再生のためのＡＰＩが用意されており、ＪａｖａアプリケーションプログラムがそのＡＰＩを呼び出すことで各機能を制御できる。
【０００６】
通常、放送波には、アプリケーションプログラムを映像、音声と同期して実行するために、同期のための制御情報があらかじめ多重化されている。アプリケーションプログラムは、その同期制御情報に従って逐次実行および終了されていく。これによって、映像、音声の特定のシーンに合わせて適切なアプリケーションプログラムを切り替えて実行可能になる。ところで、ＯＣＡＰ−ＤＶＲ等で端末が録画したコンテンツを特殊再生した場合、特殊再生の状況にあわせてアプリケーションプログラムも適切に切り替える必要がある。例えば、早送りして映像が切り替わった場合、映像に同期して対応付けられているアプリケーションプログラムも映像の再生速度に合わせて切り替わる。また、スキップ再生した場合、例えば、そのスキップ後の映像の再生開始位置に同期されたアプリケーションプログラムを実行する。
【０００７】
ところで、早送りした場合、端末がその早送り再生速度に合わせてアプリケーションプログラムを切り替え実行することができない場合がある。例えば、アプリケーションプログラムの起動に時間がかかり、起動中に次のアプリケーションプログラムの起動タイミングが来てしまう場合等である。
【０００８】
ＯＣＡＰ−ＤＶＲ仕様では、このようなコンテンツの特殊再生中に、アプリケーションプログラムを映像、音声と同期して実行することが困難である場合を考慮して、コンテンツの特殊再生中にアプリケーションプログラムを実行するフラグ及び、コンテンツを特殊再生中にアプリケーションプログラムを実行しないフラグを規定している。ここで、本フラグはコンテンツ作成者がアプリケーションごとに指定可能なフラグであり、コンテンツを特殊再生中にアプリケーションプログラムを実行しないフラグが設定された場合、通常再生では再生されるアプリケーションプログラムであっても、それを含むコンテンツの特殊再生中には終了しなくてはならず、コンテンツが通常再生に戻った際には、再びアプリケーションの制御情報に従って映像、音声と同期して実行されなくてはならないと規定している。
【０００９】
特表２００３−５１３５５５号公報は、同様に、「コンテンツの特殊再生中に実行する構成のアプリケーションプログラム」、及び、「コンテンツの特殊再生中に実行しない構成のアプリケーションプログラム」を定義している。そして、「コンテンツの特殊再生中に実行しない構成のアプリケーションプログラム」である場合、そのアプリケーションを含むコンテンツの特殊再生中には、当該アプリケーションを終了し、特殊再生終了時には、当該アプリケーションを再び起動し、特殊再生を実行したことで検出されなかったアプリケーションの制御情報を、アプリケーションへ通知する機構を提供する。
【発明の開示】
【００１０】
ＯＣＡＰ−ＤＶＲ仕様の規定、及び、特表２００３−５１３５５５号公報に示される発明によって、コンテンツ作成者は、予め、コンテンツの特殊再生中にはアプリケーションプログラムを実行しないよう指定することができる。これにより、コンテンツの特殊再生中に、アプリケーションの起動時間の長さが原因でアプリケーションプログラムを映像、音声と同期して実行できない場合であっても、コンテンツ作成者が意図的にアプリケーションを起動させないといった対応策を打つことが出来る。
【００１１】
しかしながら、ＯＣＡＰ−ＤＶＲ仕様の規定、及び、特表２００３−５１３５５５号公報では、コンテンツの特殊再生中にはアプリケーションプログラムを実行しないよう指定された場合、特殊再生時には、通常再生時に実行されるべきアプリケーションプログラムは実行されず、視聴者は、特殊再生中にアプリケーションプログラムが存在することを知ることができないという課題がある。
【００１２】
そのため、例えば、早送り特殊再生をした視聴者は、本来再生されるべきアプリケーションの存在に気づかず、アプリケーションを実行する機会を失うといった損害をこうむる。
【００１３】
そこで、本発明は、特殊再生中に、通常再生時に映像音声と同期してアプリケーションプログラムを実行すべき同期区間において、何らかの原因でアプリケーションプログラムが実行され無い場合、特殊再生中であるためにアプリケーションが実行されないことを視聴者に知らせる機構を提供する。さらに、視聴者が特殊再生中に望んだ場合には、アプリケーションを実行すべき範囲の最初からコンテンツを通常再生開始する機構を提供する。そして、これら機構によって、視聴者が、特殊再生を行っても、コンテンツに含まれる映像音声と同期したアプリケーションプログラムを、見逃し無く楽しめることを目的とする。
【００１４】
上記課題を解決するために、本発明は、１または複数の映像情報および音声情報と、１または複数のアプリケーションと、前記映像情報および前記音声情報の再生と同期して前記アプリケーションを実行および終了するための情報および前記映像情報および前記音声情報の特殊再生に同期して前記アプリケーションを実行するか否かの情報を有するアプリケーション制御情報とを含む放送波を受信して記録および再生する放送録画再生装置であって、前記放送波を受信する受信手段と、前記受信した放送波に含まれる映像音声、アプリケーションおよびアプリケーション制御情報を記録領域に記録する記録手段と、前記記録領域に記録された映像情報および音声情報を再生する映像音声再生手段と、前記記録領域に記録された放送波に含まれるアプリケーション制御情報に従い前記映像情報および音声情報の再生と同期して前記記録領域に記録されたアプリケーションの実行および終了の制御を行うアプリケーション制御手段と、前記映像音声再生手段により再生される映像情報および音声情報の特殊再生指示を受ける受付手段と、前記映像音声再生手段により再生される映像情報および音声情報に対する特殊再生を検知した場合、前記アプリケーション制御情報に基づき、前記再生される映像情報および音声情報に同期して実行されるアプリケーションが特殊再生時にも実行するか否かを識別し、前記特殊再生時にも実行すると識別した場合、当該アプリケーションの実行を継続し、前記特殊再生時には実行しないと識別した場合、当該アプリケーションの実行を終了すると決定する特殊再生時アプリケーション制御決定手段と、前記特殊再生時には実行しないと識別したアプリケーションが存在するとのメッセージをユーザに通知するアプリケーション存在通知手段とを備え、前記映像音声再生手段により再生される映像情報および音声情報に対する特殊再生を検知した場合、前記アプリケーション制御手段は、前記特殊再生時アプリケーション制御決定手段の決定に従って、前記アプリケーションの実行を制御し、前記アプリケーション存在通知手段は、前記特殊再生時には実行しないと識別したアプリケーションが存在することを示すメッセージをユーザに通知することとしている。
【００１５】
本発明は、このような放送録画再生装置として実現できるだけでなく、放送録画再生方法として実現したり、放送録画再生装置のためのプログラムとして実現したり、そのプログラムを記録したＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体として実現することもできる。
【００１６】
以上のように本発明によれば、１または複数の映像情報および音声情報と、１または複数のアプリケーションと、前記映像情報および前記音声情報の再生と同期して前記アプリケーションを実行および終了するための情報および前記映像情報および前記音声情報の特殊再生に同期して前記アプリケーションを実行するか否かの情報を有するアプリケーション制御情報とを含む放送波を受信して記録および再生する放送録画再生装置であって、前記放送波を受信する受信手段と、前記受信した放送波に含まれる映像音声、アプリケーションおよびアプリケーション制御情報を記録領域に記録する記録手段と、前記記録領域に記録された映像情報および音声情報を再生する映像音声再生手段と、前記記録領域に記録された放送波に含まれるアプリケーション制御情報に従い前記映像情報および音声情報の再生と同期して前記記録領域に記録されたアプリケーションの実行および終了の制御を行うアプリケーション制御手段と、前記映像音声再生手段により再生される映像情報および音声情報の特殊再生指示を受ける受付手段と、前記映像音声再生手段により再生される映像情報および音声情報に対する特殊再生を検知した場合、前記アプリケーション制御情報に基づき、前記再生される映像情報および音声情報に同期して実行されるアプリケーションが特殊再生時にも実行するか否かを識別し、前記特殊再生時にも実行すると識別した場合、当該アプリケーションの実行を継続し、前記特殊再生時には実行しないと識別した場合、当該アプリケーションの実行を終了すると決定する特殊再生時アプリケーション制御決定手段と、前記特殊再生時には実行しないと識別したアプリケーションが存在するとのメッセージをユーザに通知するアプリケーション存在通知手段とを備え、前記映像音声再生手段により再生される映像情報および音声情報に対する特殊再生を検知した場合、前記アプリケーション制御手段は、前記特殊再生時アプリケーション制御決定手段の決定に従って、前記アプリケーションの実行を制御し、前記アプリケーション存在通知手段は、前記特殊再生時には実行しないと識別したアプリケーションが存在することを示すメッセージをユーザに通知することにより、映像音声と同期したアプリの記録・再生を実現可能とし、アプリケーション終了をユーザに通知可能とすることができる。
【００１７】
また、前記アプリケーション制御情報が更に、映像情報および音声情報と同期してアプリケーションを実行させる期間である有効範囲を示すアプリケーション有効範囲情報を含み、前記放送録画再生装置は更に、前記記録領域に記録された映像情報および音声情報の再生中または特殊再生中に、前記アプリケーション有効範囲情報に基づき前記アプリケーションを実行させる期間となったかどうかを検知するアプリケーション有効範囲検知手段を備え、前記特殊再生時アプリケーション制御決定手段は更に、前記記録領域に記録された映像情報および音声情報を特殊再生している間に前記アプリケーション有効範囲検知手段が前記アプリケーションを実行させる期間となったことを検知した場合、前記アプリケーション制御情報に基づき、前記アプリケーションが特殊再生時にも実行するか否かを識別し、前記特殊再生時にも実行すると識別した場合、当該アプリケーションの実行を開始し、前記特殊再生時には実行しないと識別した場合、当該アプリケーションの実行をしないと決定することにより、アプリケーション未実行をユーザに通知可能とすることができる。
【００１８】
また、前記アプリケーション制御情報が更に、映像情報および音声情報と同期してアプリケーションを実行させる期間である有効範囲を示すアプリケーション有効範囲情報を含み、前記アプリケーション存在通知手段は、前記終了すると決定したアプリケーションの有効範囲が終了した場合、ユーザへの通知を終了することにより、アプリ有効範囲のみにユーザに通知可能とすることができる。
【００１９】
また、前記アプリケーション存在通知手段が更に、前記実行しないと決定したアプリケーションの有効範囲が終了した際に、ユーザへの通知を終了することにより、アプリ有効範囲のみにユーザに通知可能とすることができる。
【００２０】
また、前記アプリケーション制御情報が更に、映像情報および音声情報と同期してアプリケーションを実行させる期間である有効範囲を示すアプリケーション有効範囲情報を含み、前記アプリケーション存在通知手段は、前記特殊再生時には実行しないと識別したアプリケーションの有効範囲の開始時点から実行するか否かを問い合わせる内容のメッセージを通知し、前記放送録画再生装置は更に、前記メッセージに対するユーザの応答結果を取得する応答取得手段を備え、前記メッセージに対するユーザの応答結果によって取得された応答結果が前記アプリケーションの有効範囲の開始時点からの実行を示すことを検知すると、アプリケーションの有効範囲の開始時点から前記アプリケーションを実行するとともに、前記開始時点に対応する映像情報および音声情報を同期して再生したり、前記アプリケーション存在通知手段は、前記特殊再生時には実行しないと識別したアプリケーションの有効範囲の開始時点から実行するか否かを問い合わせる内容のメッセージを通知し、前記放送録画再生装置は更に、前記メッセージに対するユーザの応答結果を取得する応答取得手段を備え、前記メッセージに対するユーザの応答結果によって取得された応答結果が前記アプリケーションの有効範囲の開始時点からの実行を示すことを検知すると、アプリケーションの有効範囲の開始時点から前記アプリケーションを実行するとともに、前記開始時点に対応する映像情報および音声情報を同期して再生したりすることにより、アプリ開始時点からの頭出し再生可能とすることができる。
【００２１】
また、前記アプリケーション存在通知手段は、放送波に含まれるアプリケーションを実行することにより前記メッセージをユーザに表示したり、前記アプリケーション存在通知手段は、放送波に含まれるアプリケーションを実行することにより前記メッセージをユーザに表示したりすることにより、特権アプリケーションによるユーザへの通知可能とすることができる。
【００２２】
また、特権アプリによる通知実現することができる。
また、前記アプリケーション存在通知手段は、放送波に含まれるアプリケーションを実行することにより前記メッセージをユーザに表示し、前記応答取得手段は、放送波に含まれるアプリケーションを実行することによりユーザの応答結果を取得したり、前記アプリケーション存在通知手段は、放送波に含まれるアプリケーションを実行することにより前記メッセージをユーザに表示し、前記応答取得手段は、放送波に含まれるアプリケーションを実行することによりユーザの応答結果を取得したりすることにより、特権アプリケーションによる頭出し可能とすることができる。
【００２３】
なお、本願の背景技術についてのさらなる情報として、本願明細書には、２００５年５月２７日に出願した米国仮出願Ｎｏ．６０／６８４９５０の明細書、図面及び特許請求の範囲が参照用として含まれる。
【発明を実施するための最良の形態】
【００２４】
（実施の形態１）
以下に、本発明の第１の実施形態に係る装置および方法を、図面を参照しながら説明する。本発明は、任意の媒体で送受信されるコンテンツの録画および再生を対象としたものであるが、本実施例ではケーブルテレビ放送システムでの実施の形態を例にとって説明する。ケーブルテレビ放送システムでは、本発明の放送録画再生装置は一般的に端末装置と呼ばれる。
【００２５】
図１は、放送システムを構成する装置の関係を表したブロック図であり、放送局側システム１０１および三個の端末装置Ａ１１１、端末装置Ｂ１１２、端末装置Ｃ１１３で構成される。放送局側システムと各端末装置間の結合１２１は、ケーブルシステムでは同軸ケーブルや光ファイバでの有線結合である。図１では、１つの放送局側システムに対して三つの端末装置が結合されているが、端末装置の数は任意である。
【００２６】
放送局側システム１０１は、複数の端末装置に対して映像・音声・データ放送用データ等の情報を放送信号に含めて送信する。放送信号は放送システムの運用既定や、放送システムが運用される国・地域の法律により定められた周波数帯域内の周波数を利用して伝送される。
【００２７】
本実施例のケーブルシステムでは、放送信号伝送に利用する周波数帯域は、そのデータの内容と伝送方向（上り、下り）ごとに分割して割り当てる。図２は、周波数帯域の分割の一例を示す表である。周波数帯域は、Ｏｕｔ  Ｏｆ  Ｂａｎｄ（略称ＯＯＢ）とＩｎ−Ｂａｎｄの２種類に大別される。５〜１３０ＭＨｚがＯＯＢに割り当てられ、主に放送局側システム１０１と端末装置Ａ１１１、端末装置Ｂ１１２、端末装置Ｃ１１３間の上下双方向データのやり取りに使用される。１３０ＭＨｚ〜８６４ＭＨｚはＩｎ−Ｂａｎｄに割り当てられ、主として、映像・音声を含む下りのみの放送チャンネルに使用される。ＯＯＢではＱＰＳＫ変調方式が、Ｉｎ−ＢａｎｄはＱＡＭ６４またはＱＡＭ２５６変調方式が使用される。変調方式技術については、本発明に関与が薄い公知技術であるので、詳細な説明は省略する。図３は、ＯＯＢ周波数帯域のさらに詳細な使用の一例である。７０ＭＨｚ〜７４ＭＨｚは放送局側システム１０１からの下りデータ送信に使用され、すべての端末装置Ａ１１１、端末装置Ｂ１１２、端末装置Ｃ１１３が、放送局側システム１０１から等しいデータを受け取ることになる。一方、１０．０ＭＨｚ〜１０．１ＭＨｚは端末装置Ａ１１１から放送局側システム１０１への上りデータ送信に使用され、１０．１ＭＨｚ〜１０．２ＭＨｚは端末装置Ｂ１１２から放送局側システム１０１への上りデータ送信に使用され、１０．２ＭＨｚ〜１０．３ＭＨｚは端末装置Ｃ１１３から放送局側システム１０１への上りデータ送信に使用される。これにより、各端末装置固有のデータを各端末装置Ａ１１１、端末装置Ｂ１１２、端末装置Ｃ１１３から放送局側システム１０１に独立して送信することができる。図４は、Ｉｎ−Ｂａｎｄの周波数帯に対する使用の一例である。１５０〜１５６ＭＨｚと１５６〜１６２ＭＨｚはそれぞれテレビチャンネル１とテレビチャンネル２に割り当てられ、以降、６ＭＨｚ間隔でテレビチャンネルが割り当てられている。３１０ＭＨｚ以降は、１ＭＨｚ単位でラジオチャンネルに割り当てられている。これらの各チャンネルはアナログ放送として使用してもディジタル放送として使用してもよい。ディジタル放送の場合は、ＭＰＥＧ２仕様にもとづいたＴＳパケット形式で伝送され、音声や映像に加え、各種データ放送用データやＥＰＧを構成するための番組編成情報も送信することができる。
【００２８】
放送局側システム１０１は、以上に説明した周波数帯域を利用して端末装置に適切な放送信号を送信するため、ＱＰＳＫ変調部やＱＡＭ変調部等をもつ。また、端末装置からのデータを受信するため、ＱＰＳＫ復調器をもつ。また、放送局側システム１０１は、これら変調部および復調部に関連する様々な機器をもつと考えられる。しかし、本発明は主として端末装置に関わるので、詳細な説明は省略する。
【００２９】
一方、端末装置Ａ１１１、端末装置Ｂ１１２、端末装置Ｃ１１３は、放送局側システム１０１からの放送信号を受信し再生するために、ＱＡＭ復調部やＱＰＳＫ復調部を持つ。また、放送局側システム１０１に対して、各端末装置固有のデータを送信するためにＱＰＳＫ変調部を持つ。本発明では、端末装置は放送録画再生装置であり、その詳細な構成は後述する。
【００３０】
放送局側システム１０１は、ＭＰＥＧ２トランスポートストリームを変調して放送信号に含めて伝送する。端末装置は放送信号を受信し、復調してＭＰＥＧ２トランスポートストリームを再現し、その中から必要な情報を抽出して用いる。端末装置に存在するデバイスの機能と接続の構成を説明するため、まずＭＰＥＧ２トランスポートストリームの構成を簡単に述べる。
【００３１】
図５はＴＳパケットの構成を表す図である。ＴＳパケット５００は１８８バイトの長さを持ち、ヘッダ５０１、アダプテーションフィールド５０２、ペイロード５０３からなる。ヘッダ５０１はＴＳパケットの制御情報を保持する。４バイトの長さを持ち、５０４で表される構成をとる。この中に“Ｐａｃｋｅｔ  ＩＤ（以下ＰＩＤ）”と記述されるフィールドを持ち、このＰＩＤの値によって、ＴＳパケットの識別を行う。アダプテーションフィールド５０２は時刻情報等の付加的な情報を保持する。アダプテーションフィールド５０２の存在は必須ではなく、存在しない場合もある。ペイロード５０３は映像・音声やデータ放送用データ等、ＴＳパケットが伝送する情報を保持する。
【００３２】
図６はＭＰＥＧ２トランスポートストリームの模式図である。ＴＳパケットはそのペイロードに映像や音声、データ放送用のデータ等様々な情報を保持する。ＴＳパケット６０１およびＴＳパケット６０３はヘッダにＰＩＤ１００を保持し、ペイロードに映像１に関する情報を保持する。ＴＳパケット６０２およびＴＳパケット６０５はヘッダにＰＩＤ２００を保持し、ペイロードにデータ１に関する情報を保持する。ＴＳパケット６０４はヘッダにＰＩＤ３００を保持し、ペイロードに音声１に関する情報を保持する。このように様々な種類のデータをペイロードに保持したＴＳパケットを混合して一連のシーケンスとして送出することを多重と呼ぶ。ＭＰＥＧ２トランスポートストリーム６００はＴＳパケット６０１〜６０５を多重した構成の一例である。
【００３３】
同一ＰＩＤをもつＴＳパケットは同一種類の情報を保持する。そのため、端末装置は多重されたＴＳパケットを受信して、各ＴＳパケットが保持する情報をＰＩＤごとに抽出することで、映像・音声を再現したり、番組編成情報等のデータを再現したりできる。図６においては、ＴＳパケット６０１およびＴＳパケット６０３は共に映像１に関する情報を伝送し、またＴＳパケット６０２およびＴＳパケット６０５は共にデータ１に関する情報を伝送する。
【００３４】
ここで、ペイロードに内包される各種データの形式について説明する。
映像および音声は、ＰＥＳ（Ｐａｃｋｅｔｉｚｅｄ  Ｅｌｅｍｅｎｔａｒｙ  Ｓｔｒｅａｍ）パケットと呼ばれる形式で表現される。ＰＥＳパケットはある時間帯の映像情報または音声情報を含み、放送録画再生装置は、ＰＥＳパケットを受信することで、そのＰＥＳパケットが内包する映像・音声情報を画面・スピーカに出力することができる。放送局がＰＥＳパケットを途切れなく伝送することで、放送録画再生装置は、映像・音声を途切れなく再生し続けることが可能となる。ＰＥＳパケットは、実際に伝送される際、一つのＴＳパケットのペイロードよりも大きいサイズをもつ場合は分割されて複数のＴＳパケットのペイロードに格納される。図７はＰＥＳパケットを伝送する際の分割例を表す。ＰＥＳパケット７０１は一つのＴＳパケット内のペイロードに格納して伝送するには大きいため、ＰＥＳパケット分割Ａ７０２ａ、ＰＥＳパケット分割Ｂ７０２ｂ、ＰＥＳパケット分割Ｃ７０２ｃに分割され、同一ＰＩＤをもつ三つのＴＳパケット７０３〜７０５によって伝送される。実際には、映像や音声は、複数のＰＥＳパケットのペイロードに含まれるデータを結合して得られるエレメンタリストリーム（ＥＳ）として得られる。このエレメンタリストリームは、ＭＰＥＧ２  Ｖｉｄｅｏ規格やＭＰＥＧ１、２  Ａｕｄｉｏ規格で定義されるディジタル化映像、音声の形式になっている。
【００３５】
一方、番組編成情報やデータ放送用のデータ等の情報はＭＰＥＧ２セクションと呼ばれる形式を用いて表現される。ＭＰＥＧ２セクションは実際に伝送される際、一つのＴＳパケットのペイロードよりも大きいサイズをもつ場合は分割されて複数のＴＳパケットのペイロードに格納される。図８はＭＰＥＧ２セクションを伝送する際の分割例を表す。ＭＰＥＧ２セクション８０１は一つのＴＳパケット内のペイロードに格納して伝送するには大きいため、セクション分割Ａ８０２ａ、セクション分割Ｂ８０２ｂ、セクション分割Ｃ８０２ｃに分割され、同一ＰＩＤをもつ三つのＴＳパケット８０３〜８０５によって伝送される。
【００３６】
図９はＭＰＥＧ２セクションの構造を表現する。ＭＰＥＧ２セクション９００はヘッダ９０１およびペイロード９０２から構成される。ヘッダ９０１はＭＰＥＧ２セクションの制御情報を保持する。その構成はヘッダ構成９０３によって表現される。ペイロード９０２はＭＰＥＧ２セクション９００が伝送するデータを保持する。ヘッダ構成９０３に存在するｔａｂｌｅ＿ｉｄはＭＰＥＧ２セクションの種類を表現し、さらにｔａｂｌｅ＿ｉｄ＿ｅｘｔｅｎｓｉｏｎはｔａｂｌｅ＿ｉｄが等しいＭＰＥＧ２セクション同士を区別する際に用いられる拡張識別子である。ＭＰＥＧ２セクションの使用例として、図１０に番組編成情報を伝送する場合を挙げる。この例では、行１００４に記載されるように、放送信号の復調に必要な情報はヘッダ構成９０３内のｔａｂｌｅ＿ｉｄが６４であるＭＰＥＧ２セクションに記載され、さらにそのＭＰＥＧ２セクションはＰＩＤに１６が付与されたＴＳパケットによって伝送される。
【００３７】
ＭＰＥＧ２セクションの場合、ＰＥＳ形式は存在しない。そのため、ＭＰＥＧ２トランスポートストリームの中の同一ＰＩＤによって識別されるＴＳパケットのペイロードを結合したものをエレメンタリストリーム（ＥＳ）とする。例えば、図８において、ＭＰＥＧ２セクション８０１を分割して伝送しているＴＳパケット８０３〜８０５はすべてＰＩＤが２００で識別される。これはＭＰＥＧ２セクション８０１を伝送するＥＳである、と言うことができる。
【００３８】
ＭＰＥＧ２トランスポートストリーム内にはさらにプログラムという概念が存在する。プログラムはＥＳの集合として表現され、複数のＥＳをまとめて扱いたい場合に利用される。プログラムを利用すると、映像・音声や、それに付随するデータ放送用データ等を一まとめに扱うことが可能となる。例えば、同時に再生したい映像・音声をまとめて扱う場合、映像ＥＳと、音声ＥＳをプログラムとしてまとめることで、放送録画再生装置はこれら二つのＥＳを１つの番組として同時に再生すべきであることがわかる。
【００３９】
プログラムを表現するために、ＭＰＥＧ２ではＰＭＴ（Ｐｒｏｇｒａｍ  Ｍａｐ  Ｔａｂｌｅ）およびＰＡＴ（Ｐｒｏｇｒａｍ  Ａｓｓｏｃｉａｔｉｏｎ  Ｔａｂｌｅ）と呼ばれる二つのテーブルが利用される。詳細な説明はＩＳＯ／ＩＥＣ１３８１８−１、“ＭＰＥＧ２  Ｓｙｓｔｅｍｓ”仕様を参照されたい。以下ではＰＭＴおよびＰＡＴに関して簡単に説明する。
【００４０】
ＰＭＴはＭＰＥＧ２トランスポートストリーム中に、プログラムの数だけ含まれるテーブルである。ＰＭＴはＭＰＥＧ２セクションとして構成され、ｔａｂｌｅ＿ｉｄは２である。ＰＭＴにはプログラムの識別に用いられるプログラムナンバーとプログラムの付加情報、さらにプログラムに属するＥＳに関する情報を保持する。ＰＭＴの例を図１１に挙げる。１１００はプログラムナンバーである。プログラムナンバーは同一トランスポートストリーム内でプログラムに一意に割り当てられ、ＰＭＴの識別に用いられる。行１１１１〜１１１５は個々のＥＳに関する情報を表現する。列１１０１はＥＳのタイプであり、“映像”、“音声”、“データ”等が指定される。列１１０２はＥＳを構成するＴＳパケットのＰＩＤである。列１１０３はＥＳに関する付加情報である。例えば、行１１１１に表されるＥＳは、音声ＥＳであり、ＰＩＤが５０１１であるＴＳパケットによって伝送される。
【００４１】
ＰＡＴはＭＰＥＧ２トランスポートストリームに一つだけ存在するテーブルである。ＰＡＴはＭＰＥＧ２セクションとして構成され、ｔａｂｌｅ＿ｉｄは０であり、ＰＩＤが０であるＴＳパケットによって伝送される。ＰＡＴには、ＭＰＥＧ２トランスポートストリームの識別に用いられるｔｒａｎｓｐｏｒｔ＿ｓｔｒｅａｍ＿ｉｄと、ＭＰＥＧ２トランスポートストリーム内に存在するプログラムを表現するすべてのＰＭＴに関する情報を保持する。ＰＡＴの例を図１２に挙げる。１２００はｔｒａｎｓｐｏｒｔ＿ｓｔｒｅａｍ＿ｉｄである。ｔｒａｎｓｐｏｒｔ＿ｓｔｒｅａｍ＿ｉｄはＭＰＥＧ２トランスポートストリームの識別に用いられる。行１２１１〜１２１３はプログラムに関する情報を表現する。列１２０１はプログラムナンバーである。列１２０２はプログラムに対応するＰＭＴを伝送するＴＳパケットのＰＩＤである。例えば、行１２１１に表されるプログラムのＰＭＴは、プログラムナンバーが１０１であり、対応するＰＭＴはＰＩＤが５０１であるＴＳパケットによって伝送される。
【００４２】
端末装置があるプログラムを再生する場合は、ＰＡＴおよびＰＭＴを用いてプログラムを構成する映像・音声を特定し、それらを再生する。例えば、図１２のＰＡＴおよび図１１のＰＭＴを伝送するＭＰＥＧ２トランスポートストリームに関して、プログラムナンバーが１０１であるプログラムに属する映像・音声の再生を行う場合は以下のような手順をとる。まずＰＩＤが“０”であるＴＳパケットより、ｔａｂｌｅ＿ｉｄが“０”のＭＰＥＧ２セクションとして伝送されるＰＡＴを取得する。ＰＡＴよりプログラムナンバーが“１０１”であるプログラムを探索し、行１２１１を得る。行１２１１より、プログラムナンバーが“１０１”であるプログラムのＰＭＴを伝送するＴＳパケットのＰＩＤ“５０１”を得る。次いでＰＩＤが“５０１”であるＴＳパケットより、ｔａｂｌｅ＿ｉｄが“２”のＭＰＥＧ２セクションとして伝送されるＰＭＴを取得する。ＰＭＴより、音声のＥＳ情報である行１１１１および映像のＥＳ情報である行１１１２を得る。行１１１１より、音声ＥＳを伝送するＴＳパケットのＰＩＤ“５０１１”を得る。また行１１１２より、映像ＥＳを伝送するＴＳパケットのＰＩＤ“５０１２”を得る。次いでＰＩＤ“５０１１”のＴＳパケットより音声用ＰＥＳパケットを、ＰＩＤ“５０１２”のＴＳパケットより映像用ＰＥＳパケットを取得する。これにより、再生対象となる映像・音声のＥＳパケットを取得することが可能となり、プログラムナンバー１０１を構成する映像と音声を再生することができる。
【００４３】
なお、ＭＰＥＧ２トランスポートストリームは暗号化されている場合がある。これは限定視聴とも呼ばれる仕組みである。例えば、ある映像・音声情報を伝送するＰＥＳパケットに対して暗号化処理を行うことで、その暗号を解読できる特定視聴者のみが視聴できるようになる。暗号を解読して映像や音声を視聴するために、視聴者はデスクランブラと呼ばれるデバイスを用いて暗号解除を行う。例えば、ＯＣＡＰ対応の端末装置は、デスクランブラを内蔵したカード型のアダプタを利用する。ケーブルテレビのオペレータは、視聴者ごとに特定のプログラムを解読できるように設定したアダプタを配布し、視聴者はそのアダプタを端末装置に挿入する。すると、アダプタは、暗号解除鍵等の暗号解除情報や各契約者の契約情報を元に、特定のプログラムに関して暗号を解除する。暗号解除の方式や、暗号解除鍵の入手方法はアダプタ依存であり、本発明の実現には影響しない。
【００４４】
ここまでＭＰＥＧ２仕様に関する簡単な説明を行ったが、ここで、単語の詳細な定義を行う。本発明に関して、「プログラム」という単語が二種類存在する。一つはＭＰＥＧ２仕様に登場する「プログラム」であり、もう一つはＣＰＵが実行するコードの集合という意味での「プログラム」である。前者に関しては、運用規定で用いられる「サービス」という単語と同義であるため、混乱を避けるため、以降、前者を「サービス」と呼び、後者を単に「プログラム」とよぶ。さらに後者に関して、特にＪａｖａ言語で記述された「プログラム」を「Ｊａｖａプログラム」とよぶ。
【００４５】
以上、本発明に関わる、ＭＰＥＧ２仕様にて決定されるいくつかの一般的な情報に関して説明を行った。以降、本実施の形態で用いる放送録画再生端末に関して詳細に説明する。
【００４６】
図１３は、本実施例の放送録画再生装置の一般的なハードウェア構成を表すブロック図であり、すなわち図１における端末装置１１１、１１２、１１３の具体的な内部構成である。１３００は放送録画再生装置であり、チューナ１３０１、ＴＳデコーダ（ＴＳ  Ｄｅｍｕｌｔｉｐｌｅｘｅｒ）１３０２、ＡＶデコーダ１３０３、スピーカ１３０４、ディスプレイ１３０５、ＣＰＵ１３０６、２次記憶部１３０７、１次記憶部１３０８、ＲＯＭ１３０９、入力部１３１０、アダプタ１３１１、ＡＶエンコーダ１３１２、多重器（ＭＰＥＧ２  Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ  Ｍｕｌｔｉｐｌｅｘｅｒ等）１３１３で構成される。なお本実施例は、ＯＣＡＰ−ＤＶＲ仕様で実現される放送録画再生端末を拡張して得られるものであり、基本的なハードウェア構成はＯＣＡＰ−ＤＶＲ仕様で要求されるものとほぼ同じである。
【００４７】
チューナ１３０１は、ＣＰＵ１３０６が指定する周波数などのチューニング情報に従って、放送局側システム１０１から伝送される変調された放送信号を復調するデバイスである。チューナ１３０１が復調した結果得られるＭＰＥＧ２トランスポートストリームは、暗号解除機能をもつアダプタ１３１１を経て、ＴＳデコーダ１３０２に送信される。
【００４８】
ＴＳデコーダ１３０２は、ＣＰＵ１３０６が指定するＰＩＤ、セクションフィルタ条件等の指定にもとづいてＭＰＥＧ２トランスポートストリームから指定条件に合致するＰＥＳパケットやＭＰＥＧ２セクションを選別する機能をもつデバイスである。放送を受信してサービスを録画せずに再生する場合は、アダプタ１３１１が出力するＭＰＥＧ２トランスポートストリームがＴＳデコーダ１３０２に入力される。一方、２次記憶部１３０７に録画されているサービスを再生する場合は、２次記憶部１３０７が出力するＭＰＥＧ２トランスポートストリームがＴＳデコーダ１３０２に入力される。いずれの入力を受けるかは、ＣＰＵ１３０６によって制御される。
【００４９】
ＴＳデコーダ１３０２が選別した映像および音声のＰＥＳパケットは、ＡＶデコーダ１３０３に出力される。また、ＴＳデコーダ１３０２が選別したＭＰＥＧ２セクションは、１次記憶部１３０８にＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）転送され、ＣＰＵ１３０６が実行するプログラムによって利用される。
【００５０】
ＡＶデコーダ１３０３はエンコードされた映像ＥＳおよび音声ＥＳをデコードする機能をもつデバイスである。ＡＶデコーダはＴＳデコーダから転送される音声および映像情報を伝送するＰＥＳパケットからＥＳを取り出してデコードする。ＡＶデコーダ１３０３がデコードして得られたａｕｄｉｏ信号およびｖｉｄｅｏ信号は、サービスの再生時にはスピーカ１３０４、ディスプレイ１３０５に出力されるが、一方、サービスの録画時にはＡＶエンコーダ１３１２へ出力される。いずれの出力経路を取るかは、ユーザの指示に従ってＣＰＵ１３０６によって制御される。
【００５１】
スピーカ１３０４は、ＡＶデコーダ１３０３から出力された音声を再生する。
ディスプレイ１３０５は、ＡＶデコーダ１３０３から出力された映像を再生する。
【００５２】
ＣＰＵ１３０６は放送録画再生装置上で動作するプログラムを実行する。ＣＰＵ１３０６は、ＲＯＭ１３０９に内蔵されるプログラムを実行する。あるいは、放送信号やネットワークよりダウンロードされ１次記憶部１３０８に保持されているプログラムも実行する。あるいは、放送信号やネットワークよりダウンロードされ２次記憶部１３０７に保存されているプログラムも実行する。そして実行するプログラムの指示に従い、チューナ１３０１、ＴＳデコーダ１３０２、ＡＶデコーダ１３０３、スピーカ１３０４、ディスプレイ１３０５、２次記憶部１３０７、１次記憶部１３０８、ＲＯＭ１３０９、入力部１３１０、アダプタ１３１１、ＡＶエンコーダ１３１２、多重器１３１３を制御する。また、ＣＰＵ１３０６は端末装置１３００内に存在するデバイスだけでなく、アダプタ１３１１内のデバイスと通信し、アダプタ１３１１を制御することが可能である。
【００５３】
２次記憶部１３０７は機器の電源が遮断されても記憶が消去されない記憶装置である。例えばＦＬＡＳＨ−ＲＯＭ等の不揮発性メモリ、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＣＤ−ＲやＤＶＤ−Ｒ等の書き換え可能のメディア等、端末装置１３００の電源断の際にも情報が消去されない機器によって構成され、ＣＰＵ１３０６の指示により情報の保存を行う。
【００５４】
１次記憶部１３０８は、ＣＰＵ１３０６やＤＭＡ転送可能なデバイスの指示に従って情報を一時的に保存する機能をもつデバイスであり、ＲＡＭ等によって構成される。
【００５５】
ＲＯＭ１３０９は、書き換え不可能なメモリーデバイスであり、具体的にはＲＯＭやＣＤ−ＲＯＭ、ＤＶＤ等で構成される。ＲＯＭ１３０９には、ＣＰＵ１３０６が実行するプログラムが格納されている。
【００５６】
入力部１３１０は、具体的には、フロントパネルやリモコン受信機で構成され、ユーザからの入力を受け付ける。図１４は、フロントパネルで入力部１３１０を構成した場合の一例である。フロントパネル１４００は七つのボタン、上カーソルボタン１４０１、下カーソルボタン１４０２、左カーソルボタン１４０３、右カーソルボタン１４０４、ＯＫボタン１４０５、取消ボタン１４０６、ＥＰＧボタン１４０７、モード切換ボタン１４０８を備えている。ユーザがボタンを押下すると、押下されたボタンの識別子が、ＣＰＵ１３０６に通知される。
【００５７】
アダプタ１３１１は、Ｉｎ−ｂａｎｄ周波数帯で伝送されるＭＰＥＧ２トランスポートストリームにかけられた暗号を解除する装置で、１つ以上のデスクランブラを搭載する。アダプタ１３１１にはチューナ１３０１ａが出力するＭＰＥＧ２トランスポートストリームが入力され、ＣＰＵ１３０６が指定したＰＩＤをもつＴＳパケットに対して暗号解除を行う。アダプタ１３１１は、暗号を解除したＭＰＥＧ２トランスポートストリームをＴＳデコーダ１３０２に出力する。
【００５８】
さらに、アダプタ１３１１は、ＯＯＢ周波数帯で伝送されるデータの形式変換も行う。ＯＯＢで伝送される情報はＱＰＳＫ変調方式で変調される。下り方向の伝送に関しては、ＱＰＳＫ復調器１３０１ｂは放送局側システム１０１から送信されてくる下りの信号を復調し、生成されたビットストリームをアダプタ１３１１に入力する。アダプタ１３１１はビットストリームが含む様々な情報の中から、ＣＰＵ１３０６が指定する情報を抽出して、ＣＰＵ１３０６上で動作するプログラムが解釈可能な形式に変換して、ＣＰＵ１３０６に提供する。一方、上り方向の伝送に関しては、ＣＰＵ１３０６が、放送局側システム１０１に対して送信したい情報を、アダプタ１３１１に入力する。アダプタ１３１１は、ＣＰＵ１３０６から入力された情報を放送局側システム１０１が解釈可能な形式に変換し、ＱＰＳＫ変調器１３０１ｃに入力する。ＱＰＳＫ変調器１３０１ｃはアダプタ１３１１から入力された情報をＱＰＳＫ変調し、放送局側システム１０１に送信する。
【００５９】
アダプタ１３１１の具体例としては、米国ケーブルシステムで利用されるＣａｂｌｅＣＡＲＤ、旧名ＰＯＤ（Ｐｏｉｎｔ  Ｏｆ  Ｄｅｐｌｏｙｍｅｎｔ）が挙げられる。
【００６０】
ＡＶエンコーダ１３１２は、ＡＶデコーダ１３０３によってデコードされたａｕｄｉｏ信号をＭＰＥＧ  ａｕｄｉｏ形式の音声にエンコードし、ｖｉｄｅｏ信号をＭＰＥＧ  ｖｉｄｅｏ形式の映像にエンコードする。ＡＶエンコーダ１３１２がエンコードした映像および音声は、多重器１３１３へ出力される。
【００６１】
多重器１３１３は、ＡＶエンコーダ１３１２から入力された映像および音声と一次記憶部から得られるＭＰＥＧ２セクションを、ＭＰＥＧ２トランスポートストリームへ多重化する機能をもつデバイスである。
【００６２】
図１５は、本実施例の放送録画再生装置（端末装置）の外観の一例である薄型テレビである。
【００６３】
２８０１は、薄型テレビの筐体であり、アダプタ１３１１を除く、端末装置の構成要素をすべてを内蔵している。２８０２はディスプレイであり、図１３におけるディスプレイ１３０５に相当する。２８０３は複数のボタンで構成されるフロントパネル部であり、図１３の入力部１３１０に相当する。２８０４は信号入力端子であり、放送局側システムとの信号の送受信を行うためにケーブル線を接続する。信号入力端子は、図１３のチューナ１３０１ａ、ＱＰＳＫ復調器１３０１ｂ、ＱＰＳＫ変調器１３０１ｃと接続されている。２８０６は、図１３のアダプタ１３１１を挿入する挿入スロットである。２８１１は、電源スイッチである。２８１２は、液晶パネル等のサブディスプレイである。
【００６４】
以上説明した放送録画再生装置が、放送波に含まれるサービスを２次記憶部１３０７に記録する動作と、２次記憶部１３０７から逐次読み出してサービスを再生する動作について、以下に詳細に説明する。
【００６５】
まず、放送波に含まれるサービスを２次記憶部１３０７に記録する動作について述べる。
【００６６】
図１６に、サービスの記録時における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図を示す。１５００は端末装置であり、チューナ１３０１、アダプタ１３１１、デスクランブラ１５０１、ＴＳデコーダ１３０２、ＰＩＤフィルタ１５０２、セクションフィルタ１５０３、ＡＶデコーダ１３０３、１次記憶部１３０８、ＡＶエンコーダ１３１２、多重器１３１３、および、記録領域１５０４をもつ。図１６の構成要素のうち、図１３の構成要素と同一符号を持つものは、それらと同等の機能をもつため、説明を省略する。
【００６７】
まずＣＰＵ１３０６が指定したチューニング指示に従って、チューナ１３０１が放送波をチューニングする。チューナ１３０１は、放送波を復調し、アダプタ１３１１にＭＰＥＧ２トランスポートストリームを入力する。
【００６８】
アダプタ１３１１内にあるデスクランブラ１５０１は、視聴者ごとの限定解除情報に基づいて、ＭＰＥＧ２トランスポートストリームの暗号解除を行う。暗号解除されたＭＰＥＧ２トランスポートストリームは、ＴＳデコーダに入力される。
【００６９】
ＴＳデコーダ１３０２内にはＭＰＥＧ２トランスポートストリームに対して処理を行う２種類のデバイス、ＰＩＤフィルタ１５０２、セクションフィルタ１５０３が存在する。
【００７０】
ＰＩＤフィルタ１５０２は、入力されたＭＰＥＧ２トランスポートストリームから、ＣＰＵ１３０６が指定したＰＩＤをもつＴＳパケットを抽出し、さらにそのペイロードに存在するＰＥＳパケットやＭＰＥＧ２セクションを抽出する。例えば、ＣＰＵ１３０６がＰＩＤ＝１００のＴＳパケットを抽出するＰＩＤフィルタリングを指示した場合に図６のＭＰＥＧ２トランスポートストリームが入力されたとすると、パケット６０１および６０３が抽出されて更に連結され、映像１のＰＥＳパケットが再構成される。あるいは、ＣＰＵ１３０６がＰＩＤ＝２００のＴＳパケットを抽出するＰＩＤフィルタリングを指示した場合に図６のＭＰＥＧ２トランスポートストリームが入力されたとすると、パケット６０２および６０５が抽出されて更に連結され、データ１のＭＰＥＧ２セクションが再構成される。
【００７１】
セクションフィルタ１５０３は、入力されたＭＰＥＧ２セクションの中から、ＣＰＵ１３０６が指定するセクションフィルタ条件に合致するＭＰＥＧ２セクションを抽出し、１次記憶部１３０８にＤＭＡ転送する。例えば、ＣＰＵ１３０６はＰＩＤ＝２００のＴＳパケットを抽出するＰＩＤフィルタリングとｔａｂｌｅ＿ｉｄが６４であるセクションを抽出するセクションフィルタリングをセクションフィルタ１５０３に対して指定したとする。先に述べたように、データ１のＭＰＥＧ２セクションが再構成された後、セクションフィルタ１５０３はそのＭＰＥＧ２セクションの中からｔａｂｌｅ＿ｉｄが６４であるセクションのみを抽出し、１次記憶部１３０８にＤＭＡ転送する。
【００７２】
１次記憶部１３０８に入力されたＭＰＥＧ２セクションは、多重器１３１３に入力される。
【００７３】
ＴＳデコーダ１３０２によって抽出された映像ＰＥＳパケットと音声ＰＥＳパケットは、ＡＶデコーダ１３０３に入力される。
【００７４】
ＡＶデコーダは、映像ＰＥＳパケットをデコードして映像に変換し、ＡＶエンコーダ１３１２に入力する。また音声ＰＥＳパケットをデコードして音声に変換し、ＡＶエンコーダ１３１２に入力する。
【００７５】
ＡＶエンコーダ１３１２は、映像をＭＰＥＧ  ｖｉｄｅｏに変換し、多重器１３１３に入力する。また音声をＭＰＥＧ  ａｕｄｉｏに変換し、多重器１３１３に入力する。
【００７６】
多重器１３１３は、ＡＶエンコーダから入力されたＭＰＥＧ  ｖｉｄｅｏとＭＰＥＧ  ａｕｄｉｏと、１次記憶１３０８から入力されたＭＰＥＧ２セクションを多重してＭＰＥＧ２トランスポートストリームを生成する。生成されたＭＰＥＧ２トランスポートストリームは、記録領域１５０４に記録される。
【００７７】
記録領域１５０４は２次記憶部１３０７の全体または一部、あるいは、その他の記録領域で構成され、サービスを構成するＭＰＥＧ２トランスポートストリームを記憶する。
【００７８】
次いで、２次記憶部１３０７から逐次読み出してサービスを再生する動作について述べる。
【００７９】
図１７に、サービスの再生時における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図を示す。１６００は端末装置であり、記録領域１５０４、ＴＳデコーダ１３０２、ＰＩＤフィルタ１５０２、セクションフィルタ１５０３、ＡＶデコーダ１３０３、スピーカ１３０４、ディスプレイ１３０５、および、１次記憶部１３０８をもつ。図１７の構成要素のうち、図１３の構成要素と同一符号を持つものは、それらと同等の機能をもつため、説明を省略する。
【００８０】
図１６で説明した手順で記録領域１５０４に記録されたＭＰＥＧ２トランスポートストリームが、ＴＳデコーダ１３０２に入力される。
【００８１】
次いで、ＴＳデコーダ１３０２内のＰＩＤフィルタ１５０２によって、ＣＰＵ１３０６が指定したＰＩＤを持つ映像ＰＥＳおよび音声ＰＥＳが抽出される。抽出されたＰＥＳパケットはＡＶデコーダ１３０３に入力される。あるいは、ＴＳデコーダ１３０２内のＰＩＤフィルタ１５０２とセクションフィルタ１５０３によって、ＣＰＵ１３０６が指定したＰＩＤとｔａｂｌｅ＿ｉｄを持つＭＰＥＧ２セクションが抽出される。抽出されたＭＰＥＧ２セクションは１次記憶部１３０８にＤＭＡ転送される。
【００８２】
ＡＶデコーダ１３０３に入力された映像ＰＥＳと音声ＰＥＳは、デコードされてａｕｄｉｏ信号およびｖｉｄｅｏ信号が出力される。その後、ａｕｄｉｏ信号およびｖｉｄｅｏ信号はディスプレイ１３０５およびスピーカ１３０４に入力され、映像および音声が再生される。
【００８３】
１次記憶部１３０８に入力されたＭＰＥＧ２セクションは、適宜ＣＰＵ１３０６に入力される。
【００８４】
ここまでは、本発明に関するハードウェアの構成例に関して述べたが、以降、本発明の主要機能である、Ｊａｖａプログラムによるサービスの記録制御と特殊再生制御に関して説明する。
【００８５】
本発明におけるサービスの記録とは、サービスに含まれる映像、音声、Ｊａｖａプログラム、Ｊａｖａプログラムの同期情報等をハードディスク、ＢＤ（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリカードといった任意の記録媒体に記録することである。サービスの再生とは、記録媒体に記録された映像、音声、Ｊａｖａプログラムを同期情報に基づいて再生および実行することである。記録済みサービスの再生結果は、放送波を受信して直接サービスを再生した結果とほぼ等価であることが要求される。
【００８６】
図１８は、サービスの記録と再生に必要とされるプログラムの構成図であり、ＲＯＭ１３０９に記憶されているソフトウェアである。
【００８７】
プログラム１７００は、サブプログラムであるＯＳ１７０１、ＥＰＧ１７０２、ＪａｖａＶＭ１７０３、Ｊａｖａライブラリ１７０４で構成される。
【００８８】
ＯＳ１７０１は、オペレーティングシステム（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）であり、Ｌｉｎｕｘ、Ｗｉｎｄｏｗｓ（登録商標）等が一例である。ＯＳ１７０１は、他のサブプログラム、例えばＥＰＧ１７０２とＪａｖａＶＭ１７０３を実行するためのカーネル１７０１ａと、サブプログラムが端末装置１３００の構成要素を制御するために利用するライブラリ１７０１ｂで構成される。カーネル１７０１ａは公知技術であり、詳細な説明は省略する。
【００８９】
ライブラリ１７０１ｂは、例えばチューナを制御するチューニング機能を提供する。ライブラリ１７０１ｂは、他のサブプログラムから周波数を含むチューニング情報を受け取り、それをチューナ１３０１に引き渡す。チューナ１３０１は与えられたチューニング情報にもとづき復調処理を行い、復調したＭＰＥＧ２トランスポートストリームをＴＳデコーダ１３０２に引き渡すことができる。この結果、他のサブプログラムはライブラリ１７０１ｂを通してチューナ１３０１を制御することができる。
【００９０】
また、ライブラリ１７０１ｂは、チャンネルを一意に識別するためのチャンネル情報を提供する。チャンネル情報の一例を図１９に示す。チャンネル情報はＯＯＢあるいはＩｎ−ｂａｎｄ周波数帯を利用して送信され、アダプタ１３１１で表形式に変換され、ライブラリがアクセス可能な一時記憶部に格納される。列２００１は、チャンネル識別子で、例えば、ＳＣＴＥ  ６５  Ｓｅｒｖｉｃｅ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｄｅｌｉｖｅｒｅｄ  Ｏｕｔ−Ｏｆ−Ｂａｎｄ  Ｆｏｒ  Ｄｉｇｉｔａｌ  Ｃａｂｌｅ  Ｔｅｌｅｖｉｓｉｏｎで定義されるｓｏｕｒｃｅ＿ＩＤが相当する。列２００２は、チャンネル名であり、同ＳＣＴＥ  ６５規格ではｓｏｕｒｃｅ＿ｎａｍｅなどに相当する。列２００３はチューニング情報であり、周波数や転送レート、変調方式といったチューナ１３０１に与える情報である。列２００４はＰＭＴを指定するためのプログラムナンバーである。例えば、行２０１１はチャンネル識別子が「１」、チャンネル名が「チャンネル１」、チューニング情報に周波数「１５０ＭＨｚ、．．．．」、プログラムナンバーが「１０１」であるサービス情報の組となっている。
【００９１】
この他にも、ライブラリ１７０１ｂは図１３に示したハードウェア構成要素に対して制御用のパラメータを設定することができる。個々の機能については、後述する。
【００９２】
ＪａｖａＶＭ１７０３は、Ｊａｖａ（ＴＭ）言語で記述されたプログラムを逐次解析し実行するＪａｖａバーチャルマシンである。Ｊａｖａ言語で記述されたプログラムはバイトコードと呼ばれる、ハードウェアに依存しない中間コードにコンパイルされる。Ｊａｖａバーチャルマシンは、このバイトコードを実行するインタープリタである。ＪａｖａＶＭ１７０３は、Ｊａｖａ言語で記述されたＪａｖａライブラリ１７０４を実行する。Ｊａｖａ言語やＪａｖａＶＭの詳細は、書籍「Ｊａｖａ  Ｌａｎｇｕａｇｅ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ（ＩＳＢＮ  ０−２０１−６３４５１−１）」や「Ｊａｖａ  Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ（ＩＳＢＮ  ０−２０１−６３４５１―Ｘ）」等を参照のこととする。また、ＪＮＩ（Ｊａｖａ  Ｎａｔｉｖｅ  Ｉｎｔｅｒｆａｃｅ）を通して、Ｊａｖａ言語で記述されていない他のサブプログラムを呼び出したり、または、呼び出されたりすることが可能である。ＪＮＩに関しては、書籍「Ｊａｖａ  Ｎａｔｉｖｅ  Ｉｎｔｅｒｆａｃｅ」等を参照のこと。
【００９３】
Ｊａｖａライブラリ１７０４は、Ｊａｖａプログラムが放送録画再生装置の機能を制御するために呼び出すＪａｖａ言語で記述されたライブラリである。ただし、必要に応じて、ＯＳ１７０１のライブラリ１７０１ｂなど非Ｊａｖａ言語で記述されたサブプログラムを利用することもある。Ｊａｖａプログラムは、Ｊａｖａライブラリ１７０４が持つＪａｖａ  ＡＰＩ（アプリケーションプログラミングインタフェース）を呼び出すことで、Ｊａｖａライブラリ１７０４が提供する機能を利用できる。
【００９４】
Ｔｕｎｅｒ１７０４ｃは、放送録画再生端末のＩｎ−ｂａｎｄ受信用チューナ１３０１ａを制御するためのＪａｖａライブラリである。ＪａｖａプログラムがＴｕｎｅｒ１７０４ｃに周波数などを含むチューニング情報を渡すと、Ｔｕｎｅｒ１７０４ｃはそれを用いてライブラリ１７０１ｂのチューナ機能を呼び出し、結果、放送録画再生端末のＩｎ−ｂａｎｄ受信用チューナ１３０１ａの動作を制御できる。
【００９５】
ＳＦ１７０４ｅは、放送録画再生端末のＰＩＤフィルタ１５０２およびセクションフィルタ１５０３機能を制御するためのＪａｖａライブラリである。ＪａｖａプログラムがＳＦ１７０４ｅにＰＩＤやｔａｂｌｅ＿ｉｄなどのフィルタ条件を渡すと、ＳＦ１７０４ｅはその条件を元にライブラリ１７０１ｂの機能などを用いてＰＩＤフィルタ１５０２およびセクションフィルタ１５０３にフィルタリング条件を設定して制御し、所望のフィルタ条件に叶うＭＰＥＧ２セクションを取得して、フィルタ条件を設定したＪａｖａプログラムに渡す。
【００９６】
ＤＳＭ−ＣＣ１７０４ｄは、ＤＳＭ−ＣＣオブジェクトカルーセルのファイルシステムにアクセスするためのＪａｖａライブラリである。ＤＳＭ−ＣＣオブジェクトカルーセルは、ＳＦ１７０４ｅによって取得されるＭＰＥＧ２セクションを内包している。ＤＳＭ−ＣＣは、ＩＳＯ／ＩＥＣ１３８１８−６規格で定義されており、ＭＰＥＧ２セクションを利用して任意のファイルを伝送するための仕組みである。これを利用することで、放送局から端末にファイルを伝送することができる。ＤＳＭ−ＣＣ１７０４ｄは、Ｊａｖａプログラム等から指定されたファイル識別子等を元に、ＳＦ１７０４ｅを利用してＭＰＥＧ２セクションを取得し、ＩＳＯ／ＩＥＣ１３８１８−６規格に基づいてファイルを取り出して出力する。ＤＳＭ−ＣＣの詳細な実現方法は本発明とは関係ないため、説明を省略する。
【００９７】
ＡＭ１７０４ｂは、サービスに含まれるＪａｖａアプリケーションの実行や終了を管理する機能を提供するアプリケーションマネージャ（Ａｐｐｌｉｃａｔｉｏｎ  Ｍａｎａｇｅｒ）である。ＡＭ１７０４ｂは指定されたＭＰＥＧ２トランスポートストリームの指定されたチャンネルに多重されたＪａｖａプログラムを抽出し、その抽出したＪａｖａプログラムを別途多重された同期情報に従って実行したり、あるいは終了させたりする。ＪａｖａプログラムのＪａｖａクラスファイルは、前述のＤＳＭ―ＣＣ方式でＭＰＥＧ２トランスポートストリームに多重されている。また、Ｊａｖａプログラムの同期情報はＡＩＴと呼ばれる形式で、ＭＰＥＧ２トランスポートストリームに多重されている。ＡＩＴは、ＤＶＢ−ＭＨＰ規格（ＥＴＳＩ  ＴＳ  １０１  ８１２  ＤＶＢ−ＭＨＰ仕様Ｖ１．０．２）の１０章に定義されている、Ａｐｐｌｉｃａｔｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｔａｂｌｅの略であり、ｔａｂｌｅ＿ｉｄが「０ｘ７４」であるＭＰＥＧ２セクションである。本実施の形態の説明では、ＤＶＢ−ＭＨＰ規格で定義されるＡＩＴに改変を加えて使用する。
【００９８】
ＡＭ１７０４ｂの内部構成を図２０に示す。ＡＭ１７０４ｂは、ＡＩＴ監視部３５０２と、アプリケーション状態管理部３５０３で構成される。
【００９９】
ＡＩＴ監視部３５０２は、ＭＰＥＧ２トランスポートストリームとチャンネル識別子を入力として、ＡＩＴの更新状況を監視する。まず、ＡＭ１７０４ｂは、指定されたチャンネル識別子をキーとしてライブラリ１７０１ｂのチャンネル情報を検索し、プログラムナンバーを得る。次にＳＦ１７０４ｅなどを利用して、ＭＰＥＧ２トランスポートストリームからＰＡＴを取得する。さらにＰＭＴの情報から、先ほど得られたプログラムナンバーに対応するＰＭＴのＰＩＤが得られる。再度ＳＦ１７０４ｅを利用して、実際のＰＭＴを取得する。取得されたＰＭＴは図１１の形式をしており、ストリーム種別が「データ」で補足情報として「ＡＩＴ」をもつエレメンタリーストリームのＰＩＤが書かれている。更にＳＦ１７０４ｅに、フィルタリング条件として今得られたＡＩＴのＰＩＤとｔａｂｌｅ＿ｉｄ「０ｘ７４」を与えると、ＡＩＴの実体が得られる。
【０１００】
図２１は、ＡＩＴの情報の一例を模式的に表した表である。ＡＩＴバージョン２２００は、そのＡＩＴのバージョンを表現する。ＡＩＴバージョンが大きいほど、そのＡＩＴはより新しいＡＩＴである。等しいＡＩＴバージョンをもつＡＩＴは繰り返し受信されるが、ＡＭ１７０４ｂはすでに解析したＡＩＴと等しいＡＩＴバージョンをもつＡＩＴは解析せず、すでに解析したＡＩＴよりも新しいＡＩＴのみを解析して、それに対応した処理をする。列２２０１はＪａｖａプログラムの識別子である。列２２０２はＪａｖａプログラムの制御情報である。制御情報には「ａｕｔｏｓｔａｒｔ」「ｐｒｅｓｅｎｔ」「ｋｉｌｌ」等があり、「ａｕｔｏｓｔａｒｔ」は即時に端末装置１３００がこのＪａｖａプログラムを自動的に実行することを意味し、「ｐｒｅｓｅｎｔ」は自動実行しないことを意味し、「ｋｉｌｌ」はＪａｖａプログラムを停止することを意味する。列２２０３は、ＤＳＭ−ＣＣ方式でＪａｖａプログラムを含んでいるＰＩＤを抽出するためのＤＳＭ−ＣＣ識別子である。列２２０４はＪａｖａプログラムのプログラム名である。列２２０５は特殊再生対応フラグであり、Ｊａｖａプログラムが含まれるサービスが特殊再生された場合に、当該Ｊａｖａプログラムを実行するかどうかを示す。特殊再生対応フラグが“ｔｒｕｅ”であれば、Ｊａｖａプログラムを含んでいるサービスが特殊再生中であっても当該Ｊａｖａプログラムは実行される。逆に、特殊再生対応フラグが“ｆａｌｓｅ”であれば、サービスが特殊再生中は当該Ｊａｖａプログラムは実行されず、サービスが通常再生中のみ当該Ｊａｖａプログラムは実行される。例えば、サービスの早送りやスキップ再生を実行すると当該サービスに含まれるＪａｖａプログラムが誤動作してシステム全体に悪影響を及ぼす可能性がある場合などに、特殊再生対応フラグをｆａｌｓｅに指定することでサービスの特殊再生中に当該Ｊａｖａプログラムの実行を禁止できる。行２２１１、行２２１２、行２２１３、行２２１４は、Ｊａｖａプログラムの情報の組である。行２２１１で定義されるＪａｖａプログラムは、Ｊａｖａプログラムの識別子「３０１」、制御情報「ａｕｔｏｓｔａｒｔ」、ＤＳＭＣＣ識別子「１」、プログラム名「ａ／ＴｏｐＸｌｅｔ」の組である。同様に、行２２１２で定義されるＪａｖａプログラムは、Ｊａｖａプログラムの識別子「３０２」、制御情報「ｐｒｅｓｅｎｔ」、ＤＳＭＣＣ識別子「１」、プログラム名「ｂ／ＧａｍｅＸｌｅｔ」の組である。ここで、行２２１１、行２２１２、行２２１４で定義される３つのＪａｖａプログラムは同一のＤＳＭＣＣ識別子をもつが、これは１つのＤＳＭＣＣ方式でエンコードされたファイルシステム内に３つのＪａｖａプログラムが含まれていることを表す。ここでは、Ｊａｖａプログラムに対して４つの情報しか規定しないが、実際にはより多くの情報が定義される。詳細はＤＶＢ−ＭＨＰ規格を参照されたい。
【０１０１】
アプリケーション状態管理部３５０３は更新されたＡＩＴの内容を解析し、ＡＩＴの内容と後述するサービスマネージャ１７０４ｆからの特殊再生開始及び終了通知に基づいてＪａｖａプログラムの実行状態を管理する。
【０１０２】
まず以下に、Ｊａｖａプログラム状態管理動作を説明する。アプリケーション状態管理部３５０３は、ＡＩＴの中から制御情報が「ａｕｔｏｓｔａｒｔ」であるＪａｖａプログラムを見つけ出し、対応するＤＳＭＣＣ識別子およびＪａｖａプログラム名を抽出する。図２１を参照して、ＡＭ１７０４ｂは行２２１１のＪａｖａプログラムを抽出し、ＤＳＭＣＣ識別子「１」およびＪａｖａプログラム名「ａ／ＴｏｐＸｌｅｔ」を取得する。次いでＡＭ１７０４ｂは、ＡＩＴから取得したＤＳＭＣＣ識別子を用いて、ＪａｖａプログラムをＤＳＭＣＣ方式で格納しているＴＳパケットのＰＩＤをＰＭＴから取得する。具体的には、ＰＭＴの中でストリーム種別が「データ」で、補足情報のＤＳＭＣＣ識別子が合致するエレメンタリストリームのＰＩＤを取得する。ここで、ＤＳＭＣＣ識別子が「１」であり、ＰＭＴが図１１とすると、行１１１４のエレメンタリストリームが合致し、ＰＩＤ「５０１４」を取り出す。
【０１０３】
ＡＭ１７０４ｂは、ＳＦ１７０４ｅに、ＤＳＭＣＣ方式でデータが埋めこまれたＭＰＥＧ２セクションを伝送するＴＳパケットのＰＩＤおよびセクションフィルタ条件を指定する。ここでは、ＰＩＤ「５０１４」を与える。この結果、ＡＭ１７０４ｂは、必要なＤＳＭＣＣ用ＭＰＥＧ２セクションを収集することができる。ＡＭ１７０４ｂは、収集したＭＰＥＧ２セクションから、ＤＳＭＣＣ方式に従ってファイルシステムを復元し、１次記憶部１３０８に保存する。ＭＰＥＧ２トランスポートストリーム中のＴＳパケットからファイルシステム等のデータを取り出し１次記憶部１３０８、２次記憶部１３０７等の記憶手段に保存することを以降、ダウンロードとよぶ。
【０１０４】
図２２は、ダウンロードしたファイルシステムの一例である。図中、丸はディレクトリを四角はファイルを表し、２３０１はルートディレクトリ、２３０２はディレクトリ「ａ」、２３０３はディレクトリ「ｂ」、２３０４はファイル「ＴｏｐＸｌｅｔ．ｃｌａｓｓ」、２３０５はファイル「ＧａｍｅＸｌｅｔ．ｃｌａｓｓ」、２３０６はディレクトリ「ｚ」、２３０７はファイル「ＭｕｓｉｃＸｌｅｔ．ｃｌａｓｓ」、２３０８はファイル「ＳｔｕｄｙＸｌｅｔ．ｃｌａｓｓ」である。２３０９は、アイコンビットマップファイル「ＴｏｐＸｌｅｔ．ｂｍｐ」である。
【０１０５】
次いでＡＭ１７０４ｂは、１次記憶部１３０８にダウンロードしたファイルシステム中から実行するＪａｖａプログラムをＪａｖａＶＭ１７０３に引き渡す。ここで、実行するＪａｖａプログラム名が「ａ／ＴｏｐＸｌｅｔ」とすると、Ｊａｖａプログラム名の最後に「．ｃｌａｓｓ」を付加したファイル「ａ／ＴｏｐＸｌｅｔ．ｃｌａｓｓ」が実行すべきファイルとなる。「／」はディレクトリやファイル名の区切りであり、図２２を参照して、ファイル２３０４が実行すべきＪａｖａプログラムである。次いでＡＭ１７０４ｂは、ファイル２３０４をＪａｖａＶＭ１７０３に引き渡すと、そのファイルはＪａｖａプログラムとしてＪａｖａＶＭ上で実行される。
【０１０６】
ＡＭ１７０４ｂは、新しいＡＩＴバージョンを持つＡＩＴが来る度にそのＡＩＴを解析してＪａｖａプログラムの実行状態を変更させる。ここで、制御情報に「ｋｉｌｌ」が指定されていた場合は、Ｊａｖａプログラムを終了させると共に、特殊再生指示プログラム判別部２７０２に終了したＪａｖａプログラムのＪａｖａプログラム識別子を通知する。以上、アプリケーション状態管理部のＪａｖａプログラム状態管理動作を説明した。
【０１０７】
サービスマネージャ１７０４ｆから特殊再生開始が通知されると、それ以降、アプリケーション状態管理部３５０３は特殊再生対応フラグが「ｔｒｕｅ」であるＪａｖａプログラムについてのみ以上に説明したＪａｖａプログラム状態管理動作を行う。そして特殊再生対応フラグが「ｆａｌｓｅ」であるＪａｖａプログラムを強制的に終了させ、かつ制御情報が「ａｕｔｏｓｔａｒｔ」であっても当該Ｊａｖａプログラムは実行しない。さらに、今強制的に終了させたＪａｖａプログラムのＪａｖａプログラム識別子と、起動されなかったＪａｖａプログラムすなわち特殊再生対応フラグが「ｆａｌｓｅ」かつ制御情報が「ａｕｔｏｓｔａｒｔ」であるＪａｖａプログラムのＪａｖａプログラム識別子と、それらＪａｖａプログラムのＪａｖａプログラム名と、それらＪａｖａプログラムを記述したＡＩＴの更新時刻（すなわち、それらＪａｖａプログラム各々について、その制御情報を「ａｕｔｏｓｔａｒｔ」と記載した最初のＡＩＴへの更新時刻）と、それらＪａｖａプログラムのアイコンビットマップファイルを後述のＪａｖａプログラム保留時処理部３１０３に通知する。この通知は、Ｊａｖａプログラムが強制終了された場合と、ＡＩＴが更新される都度に行う。なお、ＡＩＴの更新時刻は実際の時刻ではなく、２次記憶部１３０７に記憶されているＭＰＥＧ２トランスポートストリームの先頭を０とした、ＭＰＥＧ２トランスポートストリームのメディア時刻で表現する。メディア時刻は、そのメディア固有のタイムスタンプである。特殊再生を実施した区間は、その特殊再生に合わせた速度でメディア時刻も進んだり遅れたりする。このような時刻は、ファイルのトータル読み出しサイズとＭＰＥＧ２トランスポートストリームのビットレートから算出可能である。例えば３Ｍｂｐｓで記録されたファイルを８ＭＢ読み出した時点でのメディア時刻は０時間０分３秒である。
【０１０８】
一方、サービスマネージャ１７０４ｆから特殊再生終了が通知されると、それ以降、アプリケーション状態管理部３５０３は特殊再生対応フラグの値に関わらず全てのＪａｖａプログラムについて以上に説明したＪａｖａプログラム状態管理動作を行う。なお、初期状態では、サービスが通常再生されているため、特殊再生終了が通知されたものとして動作する。
【０１０９】
ＪＭＦ１７０４ａは、サービスに含まれる映像と音声の再生制御を担う。具体的には、指定されたＭＰＥＧ２トランスポートストリームの指定されたチャンネルに多重された映像ＥＳと音声ＥＳをＡＶデコーダに入力して再生させる。受信した放送波から直接サービスを再生する場合は、アダプタ１３１１から出力されるＭＰＥＧ２トランスポートストリームをスピーカ１３０４及びディスプレイ１３０５で再生するように指定される。一方、２次記憶部１３０７に一旦記録されたサービスを再生する場合は、２次記憶部１３０７内の記録領域１５０４から出力されるＭＰＥＧ２トランスポートストリームをスピーカ１３０４及びディスプレイ１３０５で再生するように指定される。
【０１１０】
まず、ＪＭＦ１７０４ａは、指定されたチャンネル識別子をキーとしてライブラリ１７０１ｂのチャンネル情報を検索し、プログラムナンバーを得る。次にＳＦ１７０４ｅなどを利用して、ＭＰＥＧ２トランスポートストリームからＰＡＴを取得する。さらにＰＭＴの情報から、先ほど得られたプログラムナンバーに対応するＰＭＴのＰＩＤが得られる。再度ＳＦ１７０４ｅを利用して、実際のＰＭＴを取得する。取得されたＰＭＴは図１１の形式をしており、ストリーム種別が「映像」および「音声」であるエレメンタリストリームのＰＩＤが書かれている。ＪＭＦ１７０４ａが、それらのＰＩＤをライブラリ１７０１ｂを通してＴＳデコーダ１３０２のＰＩＤフィルタ１５０２に設定すると、図１６あるいは図１７に示されたごとく、該当ＰＩＤで多重されている映像ＥＳと音声ＥＳがＡＶデコーダ１３０３及びスピーカ１３０４、ディスプレイ１３０５経由で再生される。
【０１１１】
ここで、特にＪＭＦ１７０４ａが２次記憶部に記録済みのＭＰＥＧ２トランスポートストリームを入力とする場合は、ＪＭＦ１７０４ａは２次記憶部１３０７の記憶領域１６０７からのＭＰＥＧ２トランスポートストリームの読み出し速度や読み出し位置を変化させることで、映像や音声の再生速度を変化させることができる。これにより早送りやスキップといった特殊再生が可能となる。例えば、通常速度の２倍の速度でＭＰＥＧ２トランスポートストリームを読み出すようにすれば、映像や音声も２倍の速度で再生される。また、ＭＰＥＧ２トランスポートストリームの読み出し位置を特定間隔だけ飛ばして読み出せば、映像や音声はスキップ再生される。ＪＭＦ１７０４ａは、ライブラリ１７０１ｂの機能を利用することで、２次記憶部１３０７を制御し、ＭＰＥＧ２トランスポートストリームの読み出し速度や読み出し位置を変化させる。これらの特殊再生を高水準で滑らかに行う方法については本発明の範囲外であるため、説明を省略する。Ｊａｖａプログラムが特殊再生を指示するために、ＪＭＦ１７０４ａは、例えばｓｅｔＲａｔｅ（ｆｌｏａｔ  ｆａｃｔｏｒ）というＡＰＩをＪａｖａプログラムに提供している。パラメータｆａｃｔｏｒはサービスの再生速度を表し、１．０を指定すると通常速度の再生になり、２．０を指定すると２倍の速度での特殊再生となる。ｓｅｔＲａｔｅ（）が呼び出された時には、後述する特殊再生検知部３１０２にサービス再生速度ｆａｃｔｏｒの値を通知する。
【０１１２】
さらに、ＪＭＦ１７０４ａは、再生位置を変更するためのｓｅｔＰｏｓｉｔｉｏｎ（ｉｎｔ  ｔｉｍｅ）というＡＰＩもＪａｖａプログラムに提供している。パラメータｔｉｍｅは、ＭＰＥＧ２トランスポートストリームの先頭からのメディア時刻で指定される再生開始位置である。ｓｅｔＰｏｓｉｔｉｏｎ（）が呼び出されると、ＪＭＦはＭＰＥＧ２トランスポートストリームのビットレートを元に指定された時刻までのデータサイズを算出し、算出されたサイズ分をオフセットとしてスキップした位置からのＭＰＥＧ２トランスポートストリームファイルを２次記憶部１３０７から読み出す。これにより、指定された時刻からのサービス再生が行われる。
【０１１３】
レコーディングマネージャ１７０４ｈは、チャンネル識別子と開始時刻、終了時刻を入力として、当該サービスを指定された開始時刻と終了時刻の間だけ２次記憶部１３０７に記録する。例えば、ＥＰＧ１７０２からチャンネル識別子と開始時刻、終了時刻を指定されると、開始時間になるまで待機する。その後、開始時間に至ると、指定サービスの記録を開始し、終了時間に至ると記録を終了する。以下にその詳細を記述する。
【０１１４】
記録開始時間に至ると、最初に、レコーディングマネージャ１７０４ｈは、２次記憶部１３０７に指定された開始時刻から終了時刻までのＭＰＥＧ２トランスポートストリームを記録するための記録領域１５０４を２次記憶部１３０７内に確保する。確保した記録領域には、メディア識別子を与える。次にチャンネル識別子をキーとして、ライブラリ１７０１ｂが保有するチャンネル情報から当該チャンネル識別子に相当するチューニング情報を得る。その後、Ｔｕｎｅｒ１７０４ｃにチューニング情報を与えると、Ｔｕｎｅｒ１７０４ｃはチューニングを開始する。ここで、チューニング情報は、周波数や変調方式などが特定可能な情報である。すると図１６に示されるように、アダプタ１３１１経由でＭＰＥＧ２トランスポートストリームがＴＳデコーダに入力される。
【０１１５】
一方、レコーディングマネージャ１７０４ｈは、ＳＦ１７０４ｅを利用して、チューニングで得られたＭＰＥＧ２トランスポートストリームからＰＡＴを取得する。さらに、指定されたチャンネル識別子に対応するプログラムナンバーをライブラリ１７０１ｂから検索し、得られたプログラムナンバーに対応するＰＭＴのＰＩＤをＰＡＴから検索する。その後、ＳＦ１７０４ｅを利用して、実際のＰＭＴを取得し、指定されたチャンネルを構成するＥＳの全ＰＩＤを得る。レコーディングマネージャ１７０４ｈは、得られたＰＩＤをＴＳデコーダのＰＩＤフィルタ１５０２に設定する。さらに、放送波に含まれるサービスを２次記憶部１３０７に記録する動作に従うように、ライブラリ１７０１ｂを通じて各ハードウェア構成要素の出力先を設定する。すると、図１６で説明した流れに沿って、所望のチャンネルを構成する全ＥＳが、先ほど領域確保した記録領域１５０４に記録される。
【０１１６】
その後、指定された終了時刻に至ると、レコーディングマネージャ１７０４ｈはＴｕｎｅｒ１７０４ｃのチューニング動作を停止させ、記録領域１５０４へのＭＰＥＧ２トランスポートストリームの書き込みを終了させる。また、先ほど記録したＭＰＥＧ２トランスポートストリームの管理情報として、図２３に示すレコード情報管理テーブルを作成する。
【０１１７】
図２３は２次記憶部１３０７等の記録領域１５０４に記録されているレコード情報を管理するためのレコード情報管理テーブルの一例である。レコード情報は表形式で記録されている。列２１０１は、レコード識別子である。列２１０２は、チャンネル識別子である。列２１０３はプログラムナンバーである。列２１０４はサービスの録画開始時間、列２１０５はサービスの録画終了時間である。そして、列２１０６はサービスとして記録されたＭＰＥＧ２トランスポートストリームを識別するメディア識別子である。行２１１１〜２１１２の各行は、各レコード識別子、チャンネル識別子、プログラムナンバー、開始時間、終了時間、および、メディア識別子の組となる。例えば、行２１１１はレコード識別子が「０００」、チャンネル識別子が「２」、プログラムナンバーが「１０２」、開始時間が「２００５／０３／３０  １１：００」、終了時間が「２００５／０３／３０  １２：００」、および、メディア識別子が「ＴＳ＿００１」であることを示す。
【０１１８】
サービスマネージャ１７０４ｆは、２次記憶部１３０７に記録済みのＭＰＥＧ２トランスポートストリーム中のサービス、あるいはアダプタ１３１１から入力されるＭＰＥＧ２トランスポートストリーム中のサービスの再生を管理する。図２０にサービスマネージャ１７０４ｆの詳細な内部構成を示す。サービスマネージャ１７０４ｆは、サービス再生部３１０１、特殊再生検知部３１０２、Ｊａｖａプログラム保留時処理部３１０３、Ｊａｖａプログラム保留表示部３１０４で構成される。また、図中にはＡＭ１７０４ｂ及びＪＭＦ１７０４ａも示したが、これらは図１８の同一番号の構成要素と全く同じであるため、再度の説明を省略する。
【０１１９】
サービス再生部３１０１は、サービスを再生する。以下に、２次記憶部１３０７に記録済みＭＰＥＧ２トランスポートストリーム中のサービスの再生を管理する場合の動作について述べる。これは録画済みサービスの再生に相当する。この場合、サービスマネージャ１７０４ｆ内のサービス再生部３１０１は、レコード識別子を入力とする。そのレコード識別子で特定される、２次記憶部１３０７に記録済みのサービスが、再生対象である。
【０１２０】
サービス再生部３１０１は、まず、レコーディングマネージャ１７０４ｈが作成したレコード情報管理テーブルを参照して、指定されたレコード識別子で再生されるべきチャンネル識別子と、メディア識別子を得る。そして、２次記憶部１３０７に対して、今得られたメディア識別子で特定されるＭＰＥＧ２トランスポートストリームをＴＳデコーダ１３０２に出力するように、ライブラリ１７０１ｂを通して指示する。またライブラリ１７０１ｂを通して各ハードウェア構成要素の出力先を図１７に示す経路で流れるように設定する。その後、ＪＭＦ１７０４ａにＭＰＥＧ２トランスポートストリームの所在として２次記憶部１３０７を与え、また再生すべきチャンネル識別子を与える。すると、ＪＭＦ１７０４ａは、既に述べた動作によって、２次記憶部１３０７から出力されるＭＰＥＧ２トランスポートストリームに多重された映像と音声の再生を開始する。更に、ＡＭ１７０４ｂにもＭＰＥＧ２トランスポートストリームの所在として２次記憶部１３０７を与え、また再生すべきチャンネル識別子を与える。すると、ＡＭ１７０４ｂは２次記憶部１３０７から出力されるＭＰＥＧ２トランスポートストリームに多重されたＡＩＴに従って、２次記憶部１３０７から出力されるＭＰＥＧ２トランスポートストリームに多重されたＪａｖａプログラムの実行および終了を開始する。その後、２次記憶部１３０７から出力されるＭＰＥＧ２トランスポートストリームの終端まで、上述のサービスの再生を継続する。
【０１２１】
一方、以下に、アダプタ１３１１から入力されるＭＰＥＧ２トランスポートストリーム中のサービスの再生を管理する場合を説明する。これは、放送波から直接サービスを再生することに相当する。この場合、サービスマネージャ１７０４ｆ内のサービス再生部３１０１は、再生対象サービスのチャンネル識別子を入力とする。
【０１２２】
サービス再生部３１０１は、図１６のアダプタ１３１１から出力されるＭＰＥＧ２トランスポートストリームをＴＳデコーダ１３０２に出力するように、ライブラリ１７０１ｂを通して指示する。またライブラリ１７０１ｂを通して各ハードウェア構成要素の出力先を図１７に示す経路で流れるように設定する。その後、ＪＭＦ１７０４ａにＭＰＥＧ２トランスポートストリームの所在としてアダプタ１３１１を与え、また再生すべきチャンネル識別子を与える。すると、ＪＭＦ１７０４ａは、既に述べた動作によって、アダプタ１３１１から出力されるＭＰＥＧ２トランスポートストリームに多重された映像と音声の再生を開始する。更に、ＡＭ１７０４ｂにもＭＰＥＧ２トランスポートストリームの所在としてアダプタ１３１１を与え、また再生すべきチャンネル識別子を与える。すると、ＡＭ１７０４ｂはアダプタ１３１１から出力されるＭＰＥＧ２トランスポートストリームに多重されたＡＩＴに従って、２次記憶部１３０７から出力されるＭＰＥＧ２トランスポートストリームに多重されたＪａｖａプログラムの実行および終了を開始する。その後、２次記憶部１３０７から出力されるＭＰＥＧ２トランスポートストリームの終端まで、上述のサービスの再生を継続する。
【０１２３】
特殊再生検知部３１０２は、ＪＭＦ１７０４ａから入力されるサービス再生速度ｆａｃｔｏｒの値に基づいて、現在再生中のサービスに関して特殊再生の開始と終了を判定し、ＡＭ１７０４ｂに特殊再生の開始及び終了を通知する。ｆａｃｔｏｒ＝１．０であれば通常再生と判断する。通常再生状態において、ＪＭＦから新たに１．０以外の値のｆａｃｔｏｒが入力された時に特殊再生が開始されたと判断し、ＡＭ１７０４ｂ内のアプリケーション状態管理部３２０２に「特殊再生の開始」を通知する。一方、特殊再生状態において、ＪＭＦから新たにｆａｃｔｏｒ＝１．０が入力された時に特殊再生が終了されたと判断し、ＡＭ１７０４ｂ内のアプリケーション状態管理部３２０２に「特殊再生の終了」を通知する。
【０１２４】
Ｊａｖａプログラム保留時処理部３１０３は、ＡＭ１７０４ｂからの入力に基づいて動作する。ＡＭ１７０４ｂからは、終了されたＪａｖａプログラムあるいは実行されなかったＪａｖａプログラムのＪａｖａプログラム識別子、及び当該ＪａｖａプログラムのＪａｖａプログラム名、及び当該Ｊａｖａプログラムが記述されているＡＩＴの更新時刻と、当該Ｊａｖａプログラムのアイコンビットマップファイルが入力される。これらの入力があった場合に、Ｊａｖａプログラム保留時処理部３１０３は後述のＪａｖａプログラム保留表示部３１０４に上記の情報を入力する。また、後述の特権ハンドラ呼び出し部３１０５に上記の情報を入力する。
【０１２５】
Ｊａｖａプログラム保留表示部３１０４は、Ｊａｖａプログラム保留時処理部３１０３からの上記情報の入力に基づいて、ディスプレイ１３０５の画面上にダイアログを表示する。図２４は、ダイアログの一例である。ディスプレイの１３０５上に、ダイアログ２９０１が表示されている。ダイアログ２９０１上には、実行が保留されたＪａｖａプログラムが一覧表示される。図２４の例では、Ｊａｖａプログラム名２９０２、Ｊａｖａプログラム識別子２９０３、Ｊａｖａプログラムのアイコン２９０４、「頭出しして通常再生に戻す」ボタン２９０５、「キャンセル」ボタン２９０６が表示される。「頭出しして通常再生に戻す」ボタン２９０５と「キャンセル」ボタン２９０６は、リモコンで選択可能になっている。ここでユーザが「頭出しして通常再生に戻す」ボタン２９０５を押下すると、Ｊａｖａプログラム保留表示部３１０４はダイアログを消去する。さらにその後、ＪＭＦ１７０４ａのＡＰＩであるｓｅｔＰｏｓｉｔｉｏｎ（ｉｎｔ  ｔｉｍｅ）を、当該Ｊａｖａプログラムを含むＡＩＴの更新時間をｔｉｍｅに指定して呼び出す。さらに、ｓｅｔＲａｔｅ（１．０）を呼び出すことで、サービスの再生速度を通常速度に戻す。これにより、実行を保留されていたＪａｖａプログラムのＡＩＴが出現する位置からサービスの再生が再開され、かつサービスの特殊再生が解除されて通常再生となる。よって、先ほどは実行されなかったＪａｖａプログラムが実行される状態で、サービスが再生されることになる。一方、ユーザが「キャンセル」ボタン２９０６を押下した場合はダイアログを消去するだけである。
【０１２６】
ここで、Ｊａｖａプログラム保留表示部３１０４は、Ｊａｖａプログラム保留時処理部３１０３から実行保留されたＪａｖａプログラム情報が入力される度に、ダイアログの内容を更新するものとする。すなわち、更新された新しいＡＩＴに、それまで実行保留されていたＪａｖａプログラムの情報が全く含まれていない場合は、表示されているダイアログが消去される。
【０１２７】
特権ハンドラマネージャ１７０４ｇは、特権ハンドラ呼び出し部３１０５と特権ハンドラ登録部３１０６で構成される。
【０１２８】
特権ハンドラ登録部３１０６は、ｒｅｇｉｓｔｅｒＨａｎｄｌｅｒ（Ｈａｎｄｌｅｒ  ｈ）というＪａｖａ  ＡＰＩをＪａｖａプログラムに提供する。Ｊａｖａプログラムが任意のプログラムコードをＨａｎｄｌｅｒクラスとして実装し、パラメータｈに指定してこのＡＰＩを呼び出すと、特権ハンドラ登録部３１０６はそのハンドラｈを特権ハンドラ呼び出し部３１０５に渡す。
【０１２９】
特権ハンドラ呼び出し部３１０５は、特権ハンドラ登録部３１０６から渡されたハンドラｈを１次記憶部１３０８に記憶する。その後、Ｊａｖａプログラム保留時処理部３１０３から実行を保留されたＪａｖａプログラムに関する情報の入力があった時に、特権ハンドラ呼び出し部３１０５は先ほど登録されたハンドラｈを呼び出してハンドラに記述されたプログラムコードを実行する。
【０１３０】
ここでハンドラｈは、ｎｏｔｉｆｉｙ（Ｉｎｆｏ  ｉ）といったコールバックメソッドを持ったＪａｖａクラスである。Ｉｎｆｏは、終了されたＪａｖａプログラムあるいは実行されなかったＪａｖａプログラムのＪａｖａプログラム識別子、及び当該ＪａｖａプログラムのＪａｖａプログラム名、及び当該Ｊａｖａプログラムが記述されているＡＩＴの更新時刻と、当該Ｊａｖａプログラムのアイコンビットマップファイルを保持可能なデータ保持クラスである。特権ハンドラ呼び出し部３１０５がこのコールバックメソッドを呼び出すことで、ハンドラｈに記述されたプログラムコードは実行を保留されているＪａｖａプログラムに関する情報に基づいた動作を自由に実行できる。例えば、ハンドラｈが、Ｊａｖａプログラム保留表示部３１０４で説明したようなダイアログを表示するプログラムコードを持つことも可能である。ＪＭＦ１７０４ａのｓｅｔＲａｔｅ（）及びｓｅｔＰｏｓｉｔｉｏｎ（）メソッドはＪａｖａ  ＡＰＩとして提供されているため、ハンドラｈがこのメソッドを呼び出すことができる。
【０１３１】
ＥＰＧ１７０２は、電子番組表（Ｅｌｅｃｔｒｉｃ  Ｐｒｏｇｒａｍ  Ｇｕｉｄｅの略）であり、録画や再生の対象とする番組をユーザに選択させる機能である。放送波を受信しての通常の再生は本発明の趣旨から外れるため、説明を割愛する。
【０１３２】
番組を記録する場合は、ＥＰＧ１７０２は、放送番組一覧を表示してユーザに希望の番組を選択させる。図２５は、録画対象とする番組を選択させるための画面表示の一例である。時刻１９０１とチャンネル１９０２と１９０３が格子状に表示され、各時刻で記録可能な各チャンネルの番組を一覧できる。ユーザは端末装置１３００の入力部１３１０に備わっている上下左右カーソルボタン１４０１〜１４０４を用いて画面上のフォーカス１９１１を移動させることができる。更にＯＫボタン１４０５を押下すると、現在フォーカスが当たっている番組が記録対象として選択される。ＥＰＧ１７０２は当該番組のチャンネル識別子をライブラリから取得して知っており、ユーザによって記録対象番組が選択されると、当該番組のチャンネル識別子、開始時間、終了時間をレコーディングマネージャ１７０４ｈに通知する。レコーディングマネージャ１７０４ｈは、その情報に基づいて、当該番組を２次記憶部１３０７に記録する。
【０１３３】
一方、記録済みの番組を再生する場合は、ＥＰＧ１７０２は、記録済み番組一覧を表示してユーザに希望の番組を選択させる。図２６は、録画済み番組を選択させるための画面表示の一例である。その時点で２次記憶部１３０７に記憶されている番組がすべて一覧表示される。ユーザは端末装置１３００の入力部１３１０に備わっている上下カーソルボタン１４０１、１４０２を用いて画面上のフォーカス１８０１を移動させることができる。更にＯＫボタン１４０５を押下すると、現在フォーカスが当たっている番組が再生対象として選択される。ＥＰＧ１７０２は当該番組のレコード識別子をレコーディングマネージャ１７０４ｈから取得して知っており、ユーザによって再生対象番組が選択されると、当該番組のレコード識別子をサービスマネージャ１７０４ｆ内のサービス再生部３１０１に通知する。サービスマネージャ１７０４ｆは、その情報に基づいて、当該番組を２次記憶部１３０７から読み出して再生する。
【０１３４】
以上述べた構成を持つ放送録画再生装置の特徴的な動作を、以下にフローチャートを用いて説明する。
【０１３５】
図２７は、サービスを録画する際の動作の一例を示すフローチャートである。まずユーザがＥＰＧを用いて録画対象サービスを選択すると、Ｓ３２０１でＥＰＧがレコーディングマネージャにチャンネル識別子と開始時刻、終了時刻を入力する。すると、レコーディングマネージャは、開始時刻に至るまで待つ。開始時刻に至ると、Ｓ３２０２に移り、レコーディングマネージャは２次記憶部に記録領域を確保し、チューナにチューニング情報を与え、更に図１６の信号の流れになるように各ハードウェア構成要素の入出力を設定する。すると、Ｓ３２０３に至って、先ほどＥＰＧで選択したサービスの映像、音声、セクションデータが多重化されてひとつのＭＰＥＧ２トランスポートストリームとして２次記憶部に記録されていく。その後、終了時間に至ると、レコーディングマネージャはチューナのチューニング動作を停止させ、２次記憶部への記録を停止する。さらにレコード情報管理テーブルを作る。以上の動作により、ＥＰＧで選択されたサービスが２次記憶部に記録される。
【０１３６】
次に、上記のように２次記憶部に記録されたサービスを再生する場合の動作の一例を説明する。図２８、図２９及び図３０は、２次記憶部にＭＰＥＧ２トランスポートストリーム形式で記録されたサービスを再生する際の動作例を示すフローチャートである。
【０１３７】
まずＥＰＧで再生対象の記録済みサービスを選択すると、図２８のＳ３００１にてＥＰＧ１７０２がサービスマネージャ１７０４ｆのサービス再生部３１０１にレコード識別子を入力する。すると、Ｓ３００２に移り、サービスマネージャ１７０４ｆのサービス再生部３１０１は、レコード識別子に対応するチャンネル識別子とメディア識別子を検索する。その後Ｓ３００３にて、サービスマネージャ１７０４ｆのサービス再生部３１０１は、各構成要素の入出力を設定し、２次記憶部からＴＳデコーダにＭＰＥＧ２トランスポートストリームが出力され、かつ図１７の信号の流れになるように制御する。更に、Ｓ３００４にて、サービスマネージャ１７０４ｆのサービス再生部３１０１はＪＭＦ１７０４ａにチャンネル識別子を与える。するとＳ３００５に移り、ＪＭＦ１７０４ａは指定されたチャンネル識別子で特定される映像と音声を再生する。一方、Ｓ３００６にて、サービスマネージャ１７０４ｆのサービス再生部３１０１は、ＡＭ１７０４ｂに対して、ＭＰＥＧ２トランスポートストリームの所在として２次記憶部を指定し、再生対象のチャンネル識別子を通知する。
【０１３８】
これ以降、ＡＭ１７０４ｂによるＪａｖａプログラムの起動、終了処理が実行される。その動作を示すフローチャートが図２９である。まずＳ３３０１にて、ＪＭＦ１７０４ａから特殊再生管理マネージャに対して行われたｓｅｔＲａｔｅ（）の呼び出しによる再生速度の指定内容を確認する。まずＳ３３０２にて、再生速度がそれまで１．０であって、ｓｅｔＲａｔｅ（）の呼び出しによって１．０以外の値に変更されたかどうか判定する。もしそうであればＳ３３０３に移り、ＡＭ１７０４ｂに特殊再生開始の通知を行う。すると、Ｓ３３０４にて、ＡＭ１７０４ｂは実行中のＪａｖａプログラムで、特殊再生対応フラグ＝ｆａｌｓｅのものを全て強制終了する。そしてＳ３３０５にてＡＩＴの更新の有無とその更新内容を確認する。Ｓ３３０６に移って、更新されたＡＩＴの制御情報に基づいて、「特殊再生対応フラグ＝ｔｒｕｅ」のＪａｖａプログラムに関してのみ起動、終了を実施する。次いでＳ３３０７に移り、ＡＭ１７０４ｂからＪａｖａプログラム保留時処理部３１０３に、強制終了したＪａｖａプログラムと、起動されなかった「特殊再生対応フラグ＝ｆａｌｓｅ」のＪａｖａプログラムの識別子を通知する。Ｓ３３０９は、Ｊａｖａプログラム保留時処理部３１０３の動作であり、別の図３０にて説明する。Ｓ３４０１では、Ｊａｖａプログラム保留時処理部３１０３が、Ｊａｖａプログラム情報をＪａｖａプログラム保留表示部３１０４に通知する。するとＳ３４０２に移って、Ｊａｖａプログラム保留表示部３１０４は、強制終了されたＪａｖａプログラムと、実行されなかったＪａｖａプログラムをダイアログに表示する。ここで、Ｓ３４０３にて「頭出しして通常再生」ボタンが押されたかどうか判断し、もし押されていたらＳ３４０４に進む。Ｓ３４０３では、ｓｅｔＰｏｓｉｔｉｏｎ（当該Ｊａｖａプログラムを含むＡＩＴの更新時刻）でＡＩＴ更新時刻から再生を再開し、ｓｅｔＲａｔｅ（１．０）でサービスの再生を通常速度再生にする。これにより、ＡＩＴの更新時刻までさかのぼってサービスを通常速度で再度再生するため、先ほど強制終了したＪａｖａプログラムや起動されなかった「特殊再生対応フラグ＝ｆａｌｓｅ」のＪａｖａプログラムが起動された状態でサービスが再度再生される。以上で、Ｊａｖａプログラム保留表示部３１０４の動作は終了し、Ｓ３４０４に移って、特権ハンドラ呼び出し部３１０５の動作に移る。すなわち、Ｊａｖａプログラム保留時処理部３１０３が、Ｊａｖａプログラム情報を特権ハンドラ呼び出し部３１０５に通知する。すると、Ｓ３４０５で、過去に特権ハンドラ登録部３１０６で登録されたハンドラｈを、特権ハンドラ呼び出し部３１０５がコールバック実行する。これにより、ハンドラｈに記述された任意のＪａｖａプログラムが実行される。ここで再び図２９に戻って、Ｓ３３１０において、ＪＭＦのｓｅｔＲａｔｅ（）が呼び出されたら、Ｓ３３０１から処理を再開する。なお、Ｓ３３０２で再生速度が１．０から１．０以外の値に変化しなかった場合は、Ｓ３３１１に移る。Ｓ３３１１では逆に１．０以外の速度から１．０に変更されたかどうか判断し、もしそうであればＳ３３１２に移ってＡＭ１７０４ｂに特殊再生終了を通知する。その後は、Ｓ３３１３でＡＩＴの更新を確認し、Ｓ３３１４にて特殊再生対応フラグの値に関わらず、制御情報に基づいてＪａｖａプログラムの起動、終了を制御する。その後、Ｓ３３１５において、ＪＭＦのｓｅｔＲａｔｅ（）が呼び出されたら、Ｓ３３０１から処理を再開する。
【０１３９】
以上、説明した動作により、例えば、図３１に示したＡＩＴ（１）であれば、特殊再生中であるか通常再生中であるかによらず、全て制御情報に基づいてＪａｖａプログラムの起動、終了が実施される。
【０１４０】
別の例として、通常再生中に更新されたＡＩＴとしてＡＩＴ（２）を受信すると、行２７２１のＪａｖａプログラム（Ｊａｖａプログラム識別子＝３０１）のみが起動される。その後、ｆａｃｔｏｒ＝１．０以外の値でｓｅｔＲａｔｅ（）が呼び出されて特殊再生が始まると、行２７２１のＪａｖａプログラム（Ｊａｖａプログラム識別子＝３０１）は強制終了される。
【０１４１】
また、特殊再生中にＡＩＴ（２）を受信すると、Ｊａｖａプログラムは何も実行されない。
【０１４２】
以上、本実施の形態によると、サービスの特殊再生開始に起因してＪａｖａプログラムが終了した場合に、ユーザに状況を通知することにより、ユーザは本来実行されるべきＪａｖａプログラムの存在を知ることができ、通常再生に戻すなどの方法をとることが可能となり、Ｊａｖａプログラムが実行されないことを防ぐことができる。
【０１４３】
（実施の形態２）
図３２は、本実施例の放送録画再生装置の一般的なハードウェア構成を表すブロック図であり、すなわち図１における端末装置１１１、１１２、１１３の具体的な内部構成である。１３００は放送録画再生装置であり、チューナ１３０１、ＴＳデコーダ（ＴＳ  Ｄｅｍｕｌｔｉｐｌｅｘｅｒ）１３０２、ＡＶデコーダ１３０３、スピーカ１３０４、ディスプレイ１３０５、ＣＰＵ１３０６、２次記憶部１３０７、１次記憶部１３０８、ＲＯＭ１３０９、入力部１３１０、アダプタ１３１１、ＡＶエンコーダ１３１２、多重器（ＭＰＥＧ２  Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ  Ｍｕｌｔｉｐｌｅｘｅｒ等）１３１３、セクション変換部２４０１、セクション読み出し部２５０１で構成される。多重器１３１３、セクション変換部２４０１、セクション読み出し部２５０１以外は、実施の形態１で説明した図１３の同名、同番号のものと同じであるため、再度の説明を省略する。
【０１４４】
多重器１３１３は、ＡＩＴセクション及びＤＳＭＣＣセクションについては多重しない点が実施の形態１と異なる。それ以外は同じである。
【０１４５】
セクション変換部２４０１は、多重器で多重されなかったセクションを２次記憶部１３０７の記憶領域１５０４に記録する。ＴＳデコーダ１３０２でフィルタリングされたＡＩＴセクション及びＤＳＭＣＣセクションについては、１次記憶部１３０８を通った後、多重器を経由せずに、セクション変換部２４０１を通って記録領域１５０４に記録される。ここで、セクションの記録領域１５０４への記録に関しては、セクションの形式に応じて記録方式が異なる。
【０１４６】
ＤＳＭＣＣファイルシステムにてＭＰＥＧ２トランスポートストリーム中に記録されたファイルシステムに関しては、セクション変換部２４０１が、端末固有の記録領域１５０４独自のファイルシステムフォーマットに変換して記録領域１５０４に記録する。
【０１４７】
また、ＡＩＴに関しては、セクション変換部２４０１が、図３３に拡張したレコード情報管理テーブルの形式に変換して記録領域１５０４に記録する。図３３に示したレコード情報管理テーブルは、図２３に示したレコード情報管理テーブルを拡張したものであり、両図において同一の符号で識別される項目は、図２３に示したレコード情報管理テーブルと同等の意味をもつため、説明を省略する。
【０１４８】
各行２６１１、２６１２はそれぞれ１つのサービスのレコード情報を示す。各行２６１１、２６１２はそれぞれレコード識別子２１０１、チャンネル識別子２１０２、プログラムナンバー２１０３、サービスの記録を開始した時間２１０４、サービスの記録を終了した時間２１０５、メディア識別子２１０６、および、ＡＩＴ情報管理テーブルへの参照２６０７をもつ。ＡＩＴ情報管理テーブルはメディア時刻２６２１とそれに対応するＡＩＴバージョン２６２２をもつ。メディア時刻２６２１は対応するＭＰＥＧ２トランスポートストリームの再生時の時刻であって、対応するＭＰＥＧ２トランスポートストリーム上の位置を示す。ＡＩＴバージョン２６２２は図２１におけるＡＩＴバージョン２２００に対応する。例えば、レコード識別子２１０１として「００１」をもつサービスのレコード情報は、メディア識別子２１０６として「ＴＳ＿００２」をもち、参照されているＡＩＴ情報管理テーブルにおいてメディア時刻２６２１が「００：００：００」時には対応するＡＩＴバージョン２６２２は「１」となって、同様に、メディア時刻２６２１が「００：０５：００」時には対応するＡＩＴバージョン２６２２は「２」、メディア時刻２６２１が「００：２０：００」時には対応するＡＩＴバージョン２６２２は「３」となる。
【０１４９】
例えば、チャンネル識別子２６０１として「００１」をもつサービスの再生時には、レコード情報管理テーブルを参照して、メディア識別子２６０２である「ＴＳ＿００２」によって特定される映像および音声が多重化されたＭＰＥＧ２トランスポートストリームが再生されるとともに、ＡＩＴ情報管理テーブルを参照して、メディア時刻２６２１が「００：００：００」に達すれば、ＡＩＴバージョン２６２２が「１」であるＡＩＴに応じて、Ｊａｖａプログラムが起動あるいは終了等の制御が実行される。同様に、メディア時刻２６２１が「００：０５：００」に達すれば、ＡＩＴバージョン２６２２が「２」であるＡＩＴに応じて、メディア時刻２６２１が「００：２０：００」に達すれば、ＡＩＴバージョン２６２２が「３」であるＡＩＴに応じて、Ｊａｖａプログラムが起動あるいは終了等の制御が実行される。実際のＡＩＴは、プライベートセクション形式のバイナリファイルとして、端末固有の記録領域１５０４独自のファイルシステムフォーマットに変換して記録領域１５０４に記録するものとする。記録されたファイルは、一意に特定可能なユニークなファイル名がつけられ、それがレコード情報管理テーブル中にＡＩＴファイル名２６２３として記録される。
【０１５０】
実際の放送波においては、同一のＡＩＴバージョンをもつＡＩＴが何度も繰り返し送信されるが、本実施の形態においては、受信されるＡＩＴバージョンの変化を検出することで、その時点における更新された最初のＡＩＴのみを記録領域１５０４に記録することとする。
【０１５１】
セクション読み出し部２９０１は、記録領域から読み出したＭＰＥＧ２トランスポートストリームの現在再生時間に対応するメディア時間をレコード情報管理テーブルから検索し、そのメディア時間に相当するＡＩＴやＤＳＭＣＣファイルシステムをファイルから読み出してソフトウェアのＡＩＴ監視部に渡す。すなわち、ＡＩＴ監視部３２０１は、実施の形態１のようにＴＳデコーダのフィルタリング結果を参照するのではなく、セクション読み出し部２９０１からＡＩＴバイナリファイルやＤＳＭＣＣファイルシステムを得る。
【０１５２】
以上説明した放送録画再生装置が、放送波に含まれるサービスを２次記憶部１３０７に記録する動作と、２次記憶部１３０７から逐次読み出してサービスを再生する動作について、以下に詳細に説明する。
【０１５３】
まず、放送波に含まれるサービスを２次記憶部１３０７に記録する動作について述べる。
【０１５４】
図３４は、サービスの記録時における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図を示す。図中の構成要素のうち、図１６と同一番号を付した構成要素は、実施の形態１で既に説明済であるため、再度の説明を省略する。図３４のハードウェア構成では、図１６と異なり、ＴＳデコーダ１３０２でフィルタリングされたＡＩＴセクション及びＤＳＭＣＣセクションが、１次記憶部１３０８を通った後、多重器を経由せずに、セクション変換部２４０１を通って記録領域１５０４に記録される。
【０１５５】
次いで、２次記憶部１３０７から記録されたＭＰＥＧ２トランスポートストリームを逐次読み出してサービスを再生する動作について述べる。
【０１５６】
図３５に、サービスの再生時における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図を示す。図中の構成要素のうち、図１７と同一番号を付した構成要素は、実施の形態１で既に説明済であるため、再度の説明を省略する。
【０１５７】
図３５のハードウェア構成では、図１７と異なり、記録領域１５０４に記録されたセクションが、ＴＳデコーダを経由せずに、セクション読み出し部２９０１を通して一次記憶に読み込まれる。
【０１５８】
ここまでは、本発明に関するハードウェアの構成例に関して述べたが、以降、本発明の主要機能である、Ｊａｖａプログラムによるサービスの記録制御と特殊再生制御に関して説明する。
【０１５９】
本発明でサービスの記録と再生に必要とされるプログラムの構成は、実施の形態１で用いた図１８及び図２０と同じであり、ＲＯＭ１３０９に記憶されているソフトウェアである。図中に示された構成要素のうち、ＡＭ１７０４ｂ以外の構成要素については実施の形態１と同じ機能を持つため、再度の説明を省略する。
【０１６０】
ＡＭ１７０４ｂは、実施の形態１と同様の図２０に示した内部構成を持つ。ＡＩＴ監視部３２０１は、２次記憶部１３０７から読み出したＭＰＥＧ２トランスポートストリームに多重されたＡＩＴをフィルタリングして取得する代わりに、２次記憶部１３０７に別途記録されたＡＩＴファイルを読み出す点が異なる。ＡＩＴ監視部３２０１は、現在のメディア時刻に対応するＡＩＴを、ＡＩＴ情報管理テーブル内のメディア時刻２６２１と照合して、現在のメディア時刻に対応するＡＩＴファイル名を取得し、実際のＡＩＴファイルを読み取る。メディア時刻が進み、別のＡＩＴを参照するべき時間に至ると、新たなＡＩＴを読み取る。すなわち、ＡＩＴのバージョンアップに相当する。よって、現在のバージョンのＡＩＴの有効期間は、当該ＡＩＴの有効開始メディア時刻から他のＡＩＴの有効開始メディア時刻までとなる。
【０１６１】
アプリケーション状態管理部３２０２は、Ｊａｖａプログラムの読み込みをＭＰＥＧ２トランスポートストリームに多重されたＤＳＭＣＣセクションから読み出す代わりに、２次記憶部１３０７に独自ファイルシステム形式で記録されたＪａｖａクラスファイルを読み出す。それ以外の動作は、実施の形態１のアプリケーション状態管理部と同じである。
【０１６２】
ここで、図２１に示すＡＩＴと、図３３に示すレコード情報管理テーブルとによって、チャンネル識別子が「００１」に対応するサービスを記録領域１５０４から通常速度で再生する場合を一例として挙げる。
【０１６３】
再生するサービスとして、チャンネル識別子が「００１」に対応するサービスが指定されると、サービスの再生において前述したように、サービスに属する音声・映像、および、サービスに属するＪａｖａプログラムがそれぞれ再生および起動される。
【０１６４】
再生を開始するメディア時刻が指定されない場合は、メディア時刻２６２１が「００：００：００」から再生を開始する。すなわち、音声・映像としては、レコード識別子２１０１「００１」に対応するメディア識別子２１０２「ＴＳ＿００２」をもつＭＰＥＧ２トランスポートストリームがメディア時刻２６２１「００：００：００」から再生される。ＡＩＴ情報管理テーブルを参照して、メディア時刻２６２１「００：００：００」に対応するＡＩＴバージョン２６２２が「１」であるので、ＡＩＴバージョン２２００が「１」であるＡＩＴをファイルから読み出す。ＡＩＴの内容に基づいて、制御情報２２０２が「ａｕｔｏｓｔａｒｔ」であるプログラム名２２０４に対応するＪａｖａプログラムが起動される。
【０１６５】
次いで、サービスの再生が継続されて、メディア識別子３５０２「ＴＳ＿００２」に対応するＭＰＥＧ２トランスポートストリームが再生されている位置がメディア時刻２６２１「００：０５：００」となれば、ＡＩＴ情報管理テーブルを参照して、メディア時刻２６２１「００：０５：００」に対応するＡＩＴバージョン２６２２が「２」であるので、ＡＩＴバージョン２２００が「２」であるＡＩＴにもとづいて、制御情報２２０２が「ａｕｔｏｓｔａｒｔ」であるプログラム名２２０４に対応するＪａｖａプログラムが起動されるとともに、制御情報２２０２が「ｄｅｓｔｒｏｙ」、あるいは、「ｋｉｌｌ」であるプログラム名２２０４に対応するＪａｖａプログラムが終了される。ここで、図２１を参照して、制御情報２２０２が「ｄｅｓｔｒｏｙ」であるプログラム名は「／ｂ／ＭｕｓｉｃＸｌｅｔ」、制御情報２２０２が「ｋｉｌｌ」であるプログラム名は  「／ｚ／ＳｔｕｄｙＸｌｅｔ」であるので、メディア時刻２６２１「００：０５：００」において、それらのプログラム名に対応するＪａｖａプログラムが実行されていれば、それらのＪａｖａプログラムは終了される。
【０１６６】
次いで、サービスの再生が継続されて、メディア識別子２１０６「ＴＳ＿００２」に対応するＭＰＥＧ２トランスポートストリームが再生されている位置がメディア時刻２６２１「００：２０：００」となれば、ＡＩＴ情報管理テーブルを参照して、メディア時刻２６２１「００：２０：００」に対応するＡＩＴバージョン２６２２が「３」であるので、ＡＩＴバージョン２２００が「３」であるＡＩＴにもとづいて、制御情報２２０２が「ａｕｔｏｓｔａｒｔ」であるプログラム名２２０４に対応するＪａｖａプログラムが起動されるとともに、制御情報２２０２が「ｄｅｓｔｒｏｙ」、あるいは、「ｋｉｌｌ」であるプログラム名２２０４に対応するＪａｖａプログラムが終了される。
【０１６７】
以上述べた構成を持つ放送録画再生装置の特徴的な動作は、実施の形態１と同じフローチャートを用いて説明できる。
【０１６８】
図２７は、サービスを録画する際の動作の一例を示すフローチャートである。また、図２８、図２９及び図３０は、２次記憶部にＭＰＥＧ２トランスポートストリーム形式で記録されたサービスを再生する際の動作例を示すフローチャートである。いずれも、実施の形態１と同じであるため、再度の説明を省略する。
【０１６９】
以上、説明した動作により、例えば、図３１に示したＡＩＴ（１）であれば、特殊再生中であるか通常再生中であるかによらず、全て制御情報に基づいてＪａｖａプログラムの起動、終了が実施される。
【０１７０】
別の例として、通常再生中に更新されたＡＩＴとしてＡＩＴ（２）を受信すると、行２７２１のＪａｖａプログラム（Ｊａｖａプログラム識別子＝３０１）のみが起動される。その後、ｆａｃｔｏｒ＝１．０以外の値でｓｅｔＲａｔｅ（）が呼び出されて特殊再生が始まると、行２７２１のＪａｖａプログラム（Ｊａｖａプログラム識別子＝３０１）は強制終了される。
【０１７１】
また、特殊再生中にＡＩＴ（２）を受信すると、Ｊａｖａプログラムは何も実行されない。
【０１７２】
以上、本実施の形態によると、サービスの特殊再生開始に起因してＪａｖａプログラムが終了した場合に、ユーザに状況を通知することにより、ユーザは本来実行されるべきＪａｖａプログラムの存在を知ることができ、通常再生に戻すなどの方法をとることが可能となり、Ｊａｖａプログラムが実行されないことを防ぐことができる。
【０１７３】
（実施の形態３）
以上説明したいくつかの実施例は、本発明の実現例を示したものであり、本発明の趣旨が実現される限り他の実現例でも実施可能である。
【０１７４】
実施例ではケーブルシステムを対象とした構成を示したが、本発明は放送システムの種類に依存しない。例えば、衛星システム、地上波システム、あるいはＩＰネットワークを用いた番組配信システムなどにも容易に適応可能である。さらに本発明は各放送システムの違いと直接的な関係を持たないため、放送システムに係らず任意の伝送媒体で適用可能である。有線、無線の違いにも依存しない。
【０１７５】
ＡＶデコーダは、必ずしも映像および音声を同時にデコードする必要はない。映像デコーダ、音声デコーダを分離した構成としても、本発明は実現可能である。またＡＶデコーダがクローズドキャプションなどのデータに対するデコード機能を持っていても差し支えない。ＡＶデコーダによってデコードされたａｕｄｉｏ信号およびｖｉｄｅｏ信号が、記録領域１５０４に蓄積されるまでの任意の段階において暗号化されてもよい。
【０１７６】
実施例では、限定視聴を制御するアダプタを導入した例を示したが、アダプタは本発明を実現するために必ずしも必要ではない。アダプタの形式がいかなるものであってもよいし、またアダプタのない構成とすることも可能である。その場合、図１６において、チューナからのＭＰＥＧ２トランスポートストリームが直接ＴＳデコーダに入力される。この場合も本発明は適用可能である。また、アダプタによる限定視聴解除をＴＳデコーダ以前に行う必要はない。任意の位置でアダプタを利用して限定視聴を解除する構成とすることは容易であり、その場合も本発明は適用可能である。
【０１７７】
ＡＶエンコーダによるａｕｄｉｏ信号およびｖｉｄｅｏ信号のエンコード形式は、任意の形式であってもよい。本発明はいかなるエンコード形式であっても適用可能である。
【０１７８】
多重器の多重形式は任意の形式であってもよい。本発明はいかなる多重形式であっても適用可能である。
【０１７９】
ディスプレイおよびスピーカは、放送録画再生装置内部に包含していてもよく、放送録画再生装置に外部ディスプレイおよびスピーカを接続してもよい。ディスプレイおよびスピーカの存在場所や数によらず、本発明は適用可能である。
【０１８０】
ＣＰＵ自身が、ＴＳデコード、ＡＶデコード、ＡＶエンコードおよび多重化のすべてあるいはいくつかの処理を兼用で行うシステムであっても本発明は実施可能である。
【０１８１】
サービスを記録する形式としては、他にもＴＳデコーダを介さずにチューナからのＭＰＥＧ２トランスポートストリーム出力を直接、記録領域記録してもよいし、ＭＰＥＧ２トランスポートストリームの形式を変換するトランスレータを設けてチューナからのＭＰＥＧ２トランスポートストリームを形式変換して記録領域に記録してもよい。いかなるサービス記録方式を用いても、本発明は実施可能である。
【０１８２】
一部のＪａｖａバーチャルマシンは、バイトコードをＣＰＵが理解可能な実行形式に翻訳してから、ＣＰＵに引き渡して実行するが、この場合でも本発明は適用可能である。
【０１８３】
以上の実施例では、トランスポートストリームがＩｎ−ｂａｎｄから得られるとしてＡＩＴに関して実現方法を説明したが、ＡＭが実行すべきＪａｖａプログラムを参照する手法はＡＩＴによるものだけではない。米国ケーブルシステムで利用されることが想定されるＯＣＡＰでは図３に記載されるＯＯＢにてアプリケーションプログラムの参照情報を記載するＸＡＩＴが利用されている。その他、ＲＯＭに予め記録されているものを起動する、２次記憶にダウンロードして記憶したものを起動する、等の方法も考えられる。
【０１８４】
なお、実施の形態１及び２においては、ＡＩＴを拡張して特殊再生対応フラグを設けることで、それに対応するＪａｖａプログラムが特殊再生に対応しているかを示したが、その他の手法によって、Ｊａｖａプログラムが特殊再生に対応しているかを示してもよい。
【０１８５】
本実施の形態においては、特殊再生を指示するプログラムとしてＪａｖａプログラムを扱ったが、Ｊａｖａプログラムでないプログラムが特殊再生を指示したとしても、本発明は適用可能である。
【０１８６】
ＤＳＭＣＣファイルシステムおよびＡＩＴファイルの記録方式は任意の方式でよい。
ＭＰＥＧ２トランスポートストリームからＡＩＴセクションをフィルタリング取得する方式と、ＤＳＭＣＣセクションを独自形式でファイルに記録する方式を組み合わせても本発明は実施可能である。また、ＭＰＥＧ２トランスポートストリームからＤＳＭＣＣセクションをフィルタリング取得する方式と、ＡＩＴセクションを独自形式でファイルに記録する方式を組み合わせても本発明は実施可能である。
【０１８７】
実施の形態の説明ではＪａｖａプログラム保留表示部３１０４と特権ハンドラマネージャを両方実施する形態としたが、いずれか片方のみを実施した形態でもよい。
【０１８８】
実施の形態の説明では、特権ハンドラマネージャは、ハンドラプログラムコードのコールバックで実現したが、これに代えてイベント通知などで実現してもよい。
【０１８９】
特権ハンドラの登録のためには、何らかの認証やパーミッションが必要となるような構成にしてもよい。例えば、ＤＶＢ−ＭＨＰ仕様やＯＣＡＰ仕様で定義されるパーミッションリクエストファイルを要求する構成にしてもよい。
【０１９０】
実施の形態では、ＡＩＴの開始時刻からサービスを通常速度で再生するために、ＪＭＦが持つｓｅｔＰｏｓｉｔｉｏｎ（ＡＩＴの開始時刻）とｓｅｔＲａｔｅ（１．０）の両メソッドを連続して呼び出す構成としたが、これをひとまとめにした新たなメソッドをＡＰＩとして新設してもよい。例えば、ｒｅｗｉｎｄ（）のようなメソッドを呼び出すと、ｓｅｔＰｏｓｉｔｉｏｎ（ＡＩＴの開始時刻）とｓｅｔＲａｔｅ（１．０）の両メソッドが内部的に連続実行される構成にできる。あるいは、特権ハンドラのコールバックメソッドｎｏｔｉｆｙ（）の戻り値をｂｏｏｌｅａｎとし、ｔｒｕｅであればＡＩＴの開始時刻からサービスを通常速度で再生するようなＡＰＩ構成とすることも可能である。
【産業上の利用可能性】
【０１９１】
本発明に係る放送録画再生装置および放送録画再生方法は、映像および音声と同期して実行されるプログラムを含むサービスの特殊再生時において、プログラムが実行されない場合に、特殊再生中であるためにプログラムが実行されないことを視聴者に知らせる機構及びプログラムの開始時刻からサービスを頭出し再生する機構を提供することで、ユーザによるプログラムの見落としを未然に防ぐことを可能とするため、殊に放送録画再生装置に係る民生機器産業において利用される可能性が高い。例えば、ケーブルＳＴＢ、および、ディジタルＴＶ等として利用可能である。さらに、例えば、携帯電話等の機器においても放送受信機能をもつ機器であれば利用可能である。
【図面の簡単な説明】
【０１９２】
本願発明の目的、効果及び特徴は、本発明の特定の具体例を図示した図面を用いた後述する詳細な説明によって明らかとなる。それらの図面は以下の通りである。
【図１】本発明に係る放送システムの構成図
【図２】本発明に係るケーブルテレビシステムにおいて放送局側システムと端末装置間の通信に使用される周波数帯域の使い方の一例
【図３】本発明に係るケーブルテレビシステムにおいて放送局側システムと端末装置間の通信に使用される周波数帯域の使い方の一例
【図４】本発明に係るケーブルテレビシステムにおいて放送局側システムと端末装置間の通信に使用される周波数帯域の使い方の一例
【図５】ＭＰＥＧ２仕様で既定されるＴＳパケットの構成図
【図６】ＭＰＥＧ２トランスポートストリームの模式図
【図７】ＭＰＥＧ２仕様で既定されるＰＥＳパケットがＴＳパケットを用いて伝送される際の分割例
【図８】ＭＰＥＧ２仕様で既定されるＭＰＥＧ２セクションがＴＳパケットを用いて伝送される際の分割例
【図９】ＭＰＥＧ２仕様で既定されるＭＰＥＧ２セクションの構成図
【図１０】ＭＰＥＧ２仕様で既定されるＭＰＥＧ２セクションの利用例
【図１１】ＭＰＥＧ２仕様で規定されるＰＭＴの利用例
【図１２】ＭＰＥＧ２仕様で規定されるＰＡＴの利用例
【図１３】本発明に係る放送録画再生装置のハードウェア構成の構成例
【図１４】本発明に係る端末装置１２００のハードウェア構成における入力部１３１０のフロントパネル例
【図１５】本実施例の放送録画再生装置（端末装置）の外観の一例
【図１６】本発明に係る放送録画再生装置の録画時におけるデバイス接続例
【図１７】本発明に係る放送録画再生装置の再生時におけるデバイス接続例
【図１８】本発明に係る端末装置が保存するプログラム構成の構成図
【図１９】本発明に係る２次記憶部が保存する情報の一例
【図２０】本発明に係るＡＭ（Ａｐｐｌｉｃａｔｉｏｎ  Ｍａｎａｇｅｒ）の内部構成図
【図２１】本発明に係るＤＶＢ−ＭＨＰ規格が規定するＡＩＴの内容を表す模式図
【図２２】本発明に係るＤＳＭＣＣ方式で送信されるファイルシステムを表す模式図
【図２３】本発明に係るレコード情報管理テーブルの一例
【図２４】本発明に係るＪａｖａプログラム保留表示部によるディスプレイへの画面表示例上
【図２５】本発明に係る端末装置が実行するＥＰＧの一例
【図２６】本発明に係る端末装置が実行するＥＰＧの一例
【図２７】本発明に係るサービスを録画する際の動作の一例を示すフローチャート
【図２８】本発明に係る２次記憶部にＭＰＥＧ２トランスポートストリーム形式で記録されたサービスを再生する際の動作例を示すフローチャート
【図２９】本発明に係る２次記憶部にＭＰＥＧ２トランスポートストリーム形式で記録されたサービスを再生する際の動作例を示すフローチャート
【図３０】本発明に係る２次記憶部にＭＰＥＧ２トランスポートストリーム形式で記録されたサービスを再生する際の動作例を示すフローチャート
【図３１】本発明に係るＡＩＴ（Ａｐｐｌｉｃａｔｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｔａｂｌｅ）の一例
【図３２】本発明に係る実施の形態２における放送録画再生装置の一般的なハードウェア構成を表すブロック図
【図３３】本発明に係るレコード情報管理テーブルの一例
【図３４】本発明に係る放送録画再生装置の録画時におけるデバイス接続例
【図３５】本発明に係る放送録画再生装置の再生時におけるデバイス接続例
【図１】
2008546221.tif 000003
【図２】
2008546221.tif 000004
【図３】
2008546221.tif 000005
【図４】
2008546221.tif 000006
【図５】
2008546221.tif 000007
【図６】
2008546221.tif 000008
【図７】
2008546221.tif 000009
【図８】
2008546221.tif 000010
【図９】
2008546221.tif 000011
【図１０】
2008546221.tif 000012
【図１１】
2008546221.tif 000013
【図１２】
2008546221.tif 000014
【図１３】
2008546221.tif 000015
【図１４】
2008546221.tif 000016
【図１５】
2008546221.tif 000017
【図１６】
2008546221.tif 000018
【図１７】
2008546221.tif 000019
【図１８】
2008546221.tif 000020
【図１９】
2008546221.tif 000021
【図２０】
2008546221.tif 000022
【図２１】
2008546221.tif 000023
【図２２】
2008546221.tif 000024
【図２３】
2008546221.tif 000025
【図２４】
2008546221.tif 000026
【図２５】
2008546221.tif 000027
【図２６】
2008546221.tif 000028
【図２７】
2008546221.tif 000029
【図２８】
2008546221.tif 000030
【図２９】
2008546221.tif 000031
【図３０】
2008546221.tif 000032
【図３１】
2008546221.tif 000033
【図３２】
2008546221.tif 000034
【図３３】
2008546221.tif 000035
【図３４】
2008546221.tif 000036
【図３５】
2008546221.tif 000037
【国際調査報告】
2008546221.tif 000038
2008546221.tif 000039