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