(57)【要約】【課題】  従来の放送波に含まれ繰り返し送信されるデータを、映像音声データと共に蓄積し、再生する技術においては、ＤＳＭＣＣ仕様に規定されるモジュール単位のデータ記録であり、オブジェクト単位での記憶領域の削減ができない。また、再生時において、アプリケーションの制御情報等を持つテーブルのデータを抽出するためのフィルタ資源の利用削減ができない。【解決手段】  繰り返し送信されるデータを蓄積、再生する為の記録領域やフィルタ資源等の利用を削減すること、及び、テーブル等のデータを蓄積時に放送波とは異なる形態にて蓄積することで再生時におけるフィルタ資源を利用したデータ抽出処理を削減し、記録領域からの再生時における負荷の高いトリックプレイ等の再生を実現する。【選択図】  図３２
2008066764.tif 000002
【特許請求の範囲】
【請求項１】
複数のデータから構成される放送波を記録・再生する放送波記録装置であって、
放送波を受信する手段と、
放送波からデータを抽出する抽出手段と、
抽出手段が抽出したデータを記録領域に記録及び記録領域に記録されたデータを取り出す記録管理手段と、
記録管理手段が取り出したデータを再生する再生手段
とを備えることを特徴とする放送記録装置。
【請求項２】
前記放送波に含まれる前記複数のデータは、一定間隔に繰り返し送信されるプログラムデータを含み、
前記抽出手段は、一定間隔に繰り返し送信されるプログラムデータを一定間隔に繰り返し抽出し、
前記記録管理手段は、前記抽出手段が抽出したプログラムデータを前記抽出手段が前記一定間隔前に抽出したプログラムデータと同じであると判断した場合には記録領域には記録せず、前記抽出手段が抽出したプログラムデータを前記抽出手段が前記一定間隔前に抽出したプログラムデータと異なると判断した場合には記録領域に記録し、
前記再生手段は、前記記録管理手段が記録領域から取り出したプログラムデータの実行を行う
ことを特徴とする請求項１記載の放送記録装置。
【請求項３】
前記一定間隔に繰り返し送信されるプログラムデータは識別子とバージョンを備える前記プログラムデータであり、
前記記録管理手段は、前記抽出手段が抽出したプログラムデータの識別子が前記抽出手段が前記一定間隔前に抽出したプログラムデータの識別子と同じであり、かつ、前記抽出手段が抽出したプログラムデータのバージョンが前記抽出手段が前記一定間隔前に抽出したプログラムデータのバージョンと同じ場合には、前記抽出手段が抽出したプログラムデータは前記抽出手段が前記一定間隔前に抽出したプログラムデータと同じであると判断する
ことを特徴とする請求項２記載の放送記録装置。
【請求項４】
前記放送波に含まれる前記複数のデータは更に、前記プログラムデータと同期して繰り返しなく送信される映像音声データを含み、
前記抽出手段は更に、映像音声データを抽出し、
前記記録管理手段はさらに、前記抽出手段が抽出した映像音声データを記録領域に記録し、
前記再生手段は、前記記録管理手段が取り出した映像音声の再生と前記記録管理手段が取り出したプログラムの実行を行う
ことを特徴とする請求項３記載の放送記録装置。
【請求項５】
前記記録管理手段はさらに、前記プログラムデータを記録領域に記録する際に
前記プログラムデータと同じプログラムデータを初めて抽出した時刻から前記プログラムデータと同じプログラムデータを最後に抽出した時刻までを示す有効期間を付して記録し、またさらに、前記再生手段がプログラムデータを実行する時には、その再生時刻を有効期間に含むプログラムデータを記録領域から取り出し、
前記再生手段は、前記記録管理手段が取り出した映像音声の再生と前記記録管理手段が取り出したプログラムデータの実行を同期して行う
ことを特徴とする請求項４記載の放送記録装置。
【請求項６】
前記放送波に含まれる前記複数のデータはさらに、前記プログラムデータの制御情報をもつ一定間隔に繰り返し送信されるプログラム制御テーブルを含み、さらに、前記放送波に含まれる複数のデータは複数のサービスという単位にてグループ化されるものであって、各サービスは前記映像音声データと前記プログラムデータと一つの前記プログラム制御テーブルを含み、
前記プログラム制御テーブルは、それを含むと同一のサービスに含まれる複数のプログラムデータを記述し、かつ、バージョンを備える前記プログラム制御テーブルであり、
前記抽出手段はさらに、記録を指定されたサービスが有する前記プログラム制御テーブルを一定間隔に繰り返し抽出し、抽出した前記プログラム制御テーブルに記述された全てのプログラムデータを一定間隔に繰り返し抽出し、
前記記録手段はさらに、前記抽出手段が抽出したプログラム制御テーブルをそのバージョンが前記抽出手段が前記一定間隔前に抽出したプログラム制御テーブルのバージョンと同じであると判断した場合には記録領域には記録せず、前記抽出手段が抽出したプログラム制御テーブルをそのバージョンが前記抽出手段が前記一定間隔前に抽出したプログラム制御テーブルと異なると場合には記録領域に記録し、さらに、前記プログラム制御テーブルを記録領域に記録する際に
前記プログラム制御テーブルと同じバージョンを持つプログラム制御テーブルを初めて抽出した時刻から前記プログラム制御テーブルと同じバージョンを持つプログラム制御テーブルを最後に抽出した時刻までを示すテーブル有効期間を付して記録し、またさらに、再生を指定されたサービスに従い前記再生手段がプログラムデータを実行する際には、その再生時刻をテーブル有効期間に含むプログラム制御テーブルに記述された全てのプログラムデータを記録領域から取り出し、
前記再生手段はさらに、再生を指定されたサービスに従い、前記記録管理手段が取り出した前記プログラム制御テーブルの情報に従って、前記記録管理手段が取り出した前記プログラムデータの実行を行う
ことを特徴とする請求項５記載の放送記録装置。
【請求項７】
前記プログラム制御テーブルはさらに、それを含むと同一のサービスに含まれる各プログラムデータについてそのサービスが記録または再生を指定されている期間に利用するか否かを記述し、
前記抽出手段はさらに、記録を指定されたサービスが有する前記プログラム制御テーブルを一定間隔に繰り返し抽出し、抽出した前記プログラム制御テーブルに記述されかつかつサービスの再生を指定されている期間に利用すると記述されたプログラムデータを一定間隔に繰り返し抽出し、
前記記録手段はさらに、再生を指定されたサービスに従い前記再生手段がプログラムデータを実行する際には、その再生時刻をテーブル有効期間に含むプログラム制御テーブルに記述されかつサービスの再生を指定されている期間に利用すると記述されたプログラムデータを記録領域から取り出す
ことを特徴とする請求項６記載の放送記録装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、放送波を蓄積、再生する放送記録装置に関する。特に、放送波に含まれ繰り返し送信されるアプリケーション等のデータをそれと同期して送信される映像音声データと共に蓄積し、映像音声と同期して再生する機構に関する。
【背景技術】
【０００２】
放送局から送信される放送波は、多種多様なデータを含んでいる。それらデータの中には、映像音声のように時系列に送信されるものや、一定の間隔に繰り返し送信されるものがある。一定の間隔に繰り返し送信されるデータとしては、例えば、ＢＭＬに代表されるデータ放送や、放送波にて映像音声と共に送信されるアプリケーション等のデータが存在する。時系列に送信されるデータは一度取得に失敗すると再び取得することができないが、一定の間隔に繰り返し送信されるデータは同じデータが繰り返し送信されるので、一度取得に失敗しても再度取得することができる。
【０００３】
現在、このような映像音声とアプリケーションを含む放送波を受信し、アプリケーションを映像音声と同期して実行する環境に関する仕様が策定され、運用されている。例えば、ＤＶＢ−ＭＨＰ（Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｂｒｏａｄｃａｓｔｉｎｇ−Ｍｕｌｔｉｍｅｄｉａ  Ｈｏｍｅ  Ｐｌａｔｆｏｒｍ）と呼ばれる仕様が欧州で策定され、既に仕様に準拠した運用が開始されている。またＯＣＡＰ（ＯｐｅｎＣａｂｌｅ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｌａｔｆｏｒｍ）と呼ばれるケーブル放送環境に対応する仕様が米国で策定されつつあり、２００５年に運用開始予定である。
【０００４】
さらに、近年、ＯＣＡＰ仕様にユーザが選択したサービスを録画・再生する機能を追加したＯＣＡＰ−ＤＶＲ仕様が策定中である。ここでサービスは映像音声及び映像音声と関連したアプリケーションを含む。従って、映像音声とともにアプリケーションを蓄積する機能、及び、蓄積された映像音声と同期してアプリケーションを実行する機能が要求されている。
【０００５】
なお、冒頭にて、放送波には繰り返し送信されるデータがあると述べたが、上記ＭＨＰ/ＯＣＡＰ/ＯＣＡＰ−ＤＶＲ仕様等において、放送波中に繰り返し送信されるデータとしては、アプリケーション等のカルーセル型データの他、放送波に含まれる番組構成を表現するテーブルや、アプリケーションの制御情報を表現するテーブル等が存在する。
【０００６】
放送記録装置は、例えばＤＶＤやＨＤＤ等を記録領域として搭載するが、一般的にこれら記録領域は有限である。また、上記ＭＨＰ/ＯＣＡＰ/ＯＣＡＰ−ＤＶＲ仕様において、放送局から送信される放送波または記録領域に蓄積された放送波から上述の各種テーブルを取得する際には、テーブル毎に放送波から各テーブルを抽出するためのフィルタ資源が必要である。また、ＯＣＡＰ−ＤＶＲ仕様に規定されるトリックプレイ（高速再生等）時には、記録領域に蓄積された放送波からリアルタイムにテーブルを抽出することは困難であり、蓄積時に抽出した各種テーブルを放送波とは異なる形態にて蓄積し、再生時におけるテーブルの抽出処理を減らすことが望ましい。そのため、放送波に含まれ繰り返し送信されるアプリケーションや各種テーブル等のデータを蓄積・再生する際には記録領域や放送波から各種テーブルを抽出するフィルタ資源等のリソースを無駄に消費せず効率的に蓄積・再生する工夫が必要である。
【０００７】
特許文献１（図５６）においては、繰り返し送信されるカルーセル型データを蓄積する際に、取得したデータのＶｅｒｓｉｏｎチェックを行い、同一Ｖｅｒｓｉｏｎのデータは記録せず、新規のＶｅｒｓｉｏｎのデータのみを記録することで、記録領域の削減を実現している。また、各Ｖｅｒｓｉｏｎのデータを有効期間と関連付けて記録し、再生時に映像音声とデータを同期させたストリームを作成することで、再生時におけるデータのＶｅｒｓｉｏｎ変更を実現可能としている。ここで、同一Ｖｅｒｓｉｏｎのデータとは、繰り返し送信される今回のデータが前回のデータと変更がないことを意味し、新規のＶｅｒｓｉｏｎのデータとは、繰り返し送信される今回のデータが前回のデータから変更されていることを意味する。
【０００８】
特許文献２においては、繰り返し送信されるカルーセル型データをストリームのまま記録せず、ＭＰＥＧ規格書  ＩＳＯ／ＩＥＣ１３８１８−６に記述されたＤＳＭＣＣ（Digital Storage Media -- Command & Control）仕様に規定されるモジュール単位にて記録することで、記録領域の削減を実現している。また、各Ｖｅｒｓｉｏｎのモジュールを有効期間と関連付けて記録することで、再生時におけるモジュールのＶｅｒｓｉｏｎ変更を実現可能としている。
【特許文献１】特開２００１−８１７６号公報
【特許文献２】特表２００４−５０２３５０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
文献１及び文献２の技術においては、繰り返し送信されるカルーセル型データを重複なく、かつ、各Ｖｅｒｓｉｏｎのデータに有効期限を付して記録することで記録領域の削減、及び、再生時におけるデータのＶｅｒｓｉｏｎ変更を実現可能としている。
【００１０】
しかしながら、上記ＭＨＰ/ＯＣＡＰ/ＯＣＡＰ−ＤＶＲ仕様等において規定されるカルーセル型データであるアプリケーションのデータはＤＳＭＣＣ仕様に規定されるオブジェクト単位にて形成されるものであるが、文献１及び文献２は共に、ＤＳＭＣＣ仕様に規定されるモジュール単位において、データを重複なく記録することによる記録領域の削減には言及しているが、ＤＳＭＣＣ仕様に規定されるオブジェクト単位でのデータ記録に言及していない。実際、オブジェクト単位のデータは、モジュール単位のデータから不必要なデータを除いたより詳細なデータであるため、モジュール単位でのデータ記録による記録領域の無駄な消費の改善には、より改善の余地が残っている。
【００１１】
また、先述のとおりＭＨＰ/ＯＣＡＰ/ＯＣＡＰ−ＤＶＲ仕様等において、放送波中に繰り返し送信されるデータとしては、カルーセル型データのほかに、放送波に含まれる番組構成を表現するテーブルや、アプリケーションの制御情報を表現するテーブル等が存在するが、文献１及び文献２は、カルーセル型データの効率的な記録のみに関する技術であり、これらテーブルの効率的な記録に関する技術はなかった。
【００１２】
また、先述のとおり、ＭＨＰ/ＯＣＡＰ/ＯＣＡＰ−ＤＶＲ仕様等において、放送波に含まれるアプリケーションの制御情報を表現するテーブル等を取得する際には、各テーブルを抽出するフィルタ資源が必要であるが、記録領域に蓄積された放送波の再生時におけるフィルタ資源の無駄な消費は改善されていない。
【００１３】
また、特にトリックプレイ（高速再生）時には、記録領域に蓄積された放送波からこれらフィルタ資源を利用してリアルタイムにテーブルを抽出することは困難であり、蓄積時に抽出した各種テーブルを放送波とは異なる形態にて蓄積し、再生時におけるテーブルの抽出処理を減らすことが望ましい。しかし、文献１においては、記録領域に蓄積された放送波を再生する際に、蓄積したデータから再形成された放送波を再生する形式をとっており、この形式によると再生時においても、放送波から各テーブルを抽出する処理が必要となり、リックプレイ時におけるテーブル抽出が困難であるという問題を改善していない。
【００１４】
そこで、本発明は、放送波に含まれ繰り返し送信されるデータを蓄積、再生する際に必要となる記録領域やフィルタ資源等リソースの利用を削減すること、及び、放送波からフィルタ資源を利用して抽出する必要のあるテーブル等のデータを蓄積時に放送波とは異なる形態にて記録領域に蓄積することで記録領域からの再生時におけるフィルタ資源を利用したデータ抽出処理を削減し、記録領域からのトリックプレイ等負荷の高い再生時においても、放送局から送信される放送波からの再生時同等の視聴をユーザに提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記課題を解決するため本発明は、複数のデータから構成される放送波を記録・再生する放送波記録装置であって、放送波を受信する手段と、放送波からデータを抽出する抽出手段と、抽出手段が抽出したデータを記録領域に記録及び記録領域に記録されたデータを取り出す記録管理手段と、記録管理手段が取り出したデータを再生する再生手段とを備えることとしている。
【発明の効果】
【００１６】
以上のように、本発明によれば、複数のデータから構成される放送波を記録・再生する放送波記録装置であって、放送波を受信する手段と、放送波からデータを抽出する抽出手段と、抽出手段が抽出したデータを記録領域に記録及び記録領域に記録されたデータを取り出す記録管理手段と、記録管理手段が取り出したデータを再生する再生手段とを備えることにより、放送波に含まれる複数のデータを記録再生できる。
【００１７】
また、前記放送波に含まれる前記複数のデータは、一定間隔に繰り返し送信されるプログラムデータを含み、前記抽出手段は、一定間隔に繰り返し送信されるプログラムデータを一定間隔に繰り返し抽出し、前記記録管理手段は、前記抽出手段が抽出したプログラムデータを前記抽出手段が前記一定間隔前に抽出したプログラムデータと同じであると判断した場合には記録領域には記録せず、前記抽出手段が抽出したプログラムデータを前記抽出手段が前記一定間隔前に抽出したプログラムデータと異なると判断した場合には記録領域に記録し、前記再生手段は、前記記録管理手段が記録領域から取り出したプログラムデータの実行を行うことにより、放送波中のプログラムの記録領域を削減できさらに再生時に抽出処理が不要となる。
【００１８】
また、前記一定間隔に繰り返し送信されるプログラムデータは識別子とバージョンを備える前記プログラムデータであり、前記記録管理手段は、前記抽出手段が抽出したプログラムデータの識別子が前記抽出手段が前記一定間隔前に抽出したプログラムデータの識別子と同じであり、かつ、前記抽出手段が抽出したプログラムデータのバージョンが前記抽出手段が前記一定間隔前に抽出したプログラムデータのバージョンと同じ場合には、前記抽出手段が抽出したプログラムデータは前記抽出手段が前記一定間隔前に抽出したプログラムデータと同じであると判断することにより放送波中のプログラムの記録領域を削減できさらに再生時に抽出処理が不要となる。
【００１９】
また、前記放送波に含まれる前記複数のデータは更に、前記プログラムデータと同期して繰り返しなく送信される映像音声データを含み、
前記抽出手段は更に、映像音声データを抽出し、前記記録管理手段はさらに、前記抽出手段が抽出した映像音声データを記録領域に記録し、前記再生手段は、前記記録管理手段が取り出した映像音声の再生と前記記録管理手段が取り出したプログラムの実行を行うことにより、プログラムと共に映像音声も記録再生できる。
【００２０】
また、前記記録管理手段はさらに、前記プログラムデータを記録領域に記録する際に前記プログラムデータと同じプログラムデータを初めて抽出した時刻から前記プログラムデータと同じプログラムデータを最後に抽出した時刻までを示す有効期間を付して記録し、またさらに、前記再生手段がプログラムデータを実行する時には、その再生時刻を有効期間に含むプログラムデータを記録領域から取り出し、前記再生手段は、前記記録管理手段が取り出した映像音声の再生と前記記録管理手段が取り出したプログラムデータの実行を同期して行うことにより、プログラムを映像音声と同期して再生できる。
【００２１】
また、前記放送波に含まれる前記複数のデータはさらに、前記プログラムデータの制御情報をもつ一定間隔に繰り返し送信されるプログラム制御テーブルを含み、さらに、前記放送波に含まれる複数のデータは複数のサービスという単位にてグループ化されるものであって、各サービスは前記映像音声データと前記プログラムデータと一つの前記プログラム制御テーブルを含み、前記プログラム制御テーブルは、それを含むと同一のサービスに含まれる複数のプログラムデータを記述し、かつ、バージョンを備える前記プログラム制御テーブルであり、前記抽出手段はさらに、記録を指定されたサービスが有する前記プログラム制御テーブルを一定間隔に繰り返し抽出し、抽出した前記プログラム制御テーブルに記述された全てのプログラムデータを一定間隔に繰り返し抽出し、前記記録手段はさらに、前記抽出手段が抽出したプログラム制御テーブルをそのバージョンが前記抽出手段が前記一定間隔前に抽出したプログラム制御テーブルのバージョンと同じであると判断した場合には記録領域には記録せず、前記抽出手段が抽出したプログラム制御テーブルをそのバージョンが前記抽出手段が前記一定間隔前に抽出したプログラム制御テーブルと異なると場合には記録領域に記録し、さらに、前記プログラム制御テーブルを記録領域に記録する際に、前記プログラム制御テーブルと同じバージョンを持つプログラム制御テーブルを初めて抽出した時刻から前記プログラム制御テーブルと同じバージョンを持つプログラム制御テーブルを最後に抽出した時刻までを示すテーブル有効期間を付して記録し、またさらに、再生を指定されたサービスに従い前記再生手段がプログラムデータを実行する際には、その再生時刻をテーブル有効期間に含むプログラム制御テーブルに記述された全てのプログラムデータを記録領域から取り出し、前記再生手段はさらに、再生を指定されたサービスに従い、前記記録管理手段が取り出した前記プログラム制御テーブルの情報に従って、前記記録管理手段が取り出した前記プログラムデータの実行を行うことにより、放送波中のプログラム制御テーブルの記録領域を削減できさらに再生時にAIT抽出が不要となる。
【００２２】
また、前記プログラム制御テーブルはさらに、それを含むと同一のサービスに含まれる各プログラムデータについてそのサービスが記録または再生を指定されている期間に利用するか否かを記述し、前記抽出手段はさらに、記録を指定されたサービスが有する前記プログラム制御テーブルを一定間隔に繰り返し抽出し、抽出した前記プログラム制御テーブルに記述されかつかつサービスの再生を指定されている期間に利用すると記述されたプログラムデータを一定間隔に繰り返し抽出し、前記記録手段はさらに、再生を指定されたサービスに従い前記再生手段がプログラムデータを実行する際には、その再生時刻をテーブル有効期間に含むプログラム制御テーブルに記述されかつサービスの再生を指定されている期間に利用すると記述されたプログラムデータを記録領域から取り出すことにより、プログラムの記録領域をより効率的に削減できる。
【００２３】
以上のように、繰り返し送信されるデータを映像音声との同期情報をもたせて重複なく蓄積することにより、記録領域やフィルタ資源等のリソースの利用を削減し、効率的な蓄積再生が実現される。
【発明を実施するための最良の形態】
【００２４】
（実施の形態１）
本発明は、対象となる放送システムとして、衛星システム、地上波システム、ケーブルシステムの三種類の運用形態を想定する。衛星システムは衛星を用いて放送信号を放送受信装置に伝送する形態、地上波システムは地上波信号送出装置を用いて放送信号を放送受信装置に伝送する形態、ケーブルシステムはケーブルヘッドエンドを用いて放送信号を放送受信装置に伝送する形態である。本発明は各放送システムの違いと直接的な関係を持たないため、放送システムに係らず適用可能である。
【００２５】
本発明に係る放送システムの実施の形態を、図面を参照しながら説明する。図１は、放送システムを構成する装置の関係を表したブロック図であり、放送局側システム１０１及び三個の端末装置Ａ１１１、端末装置Ｂ１１２、端末装置Ｃ１１３で構成される。放送局側システム〜各端末装置間の結合１２１については有線／無線の両場合が存在する。例えばケーブルシステムでは、放送局側システム〜各端末装置間は有線にて結合される。一方、衛星／地上波システムにおける放送局側システム〜各端末装置間には、下り（放送局側システムから各端末装置へ）方向には有線結合は存在せず、放送信号は電波を利用して伝送される。上り（各端末装置から放送局側システムへ）方向については電話回線、有線インターネット等を利用した有線結合、無線通信を利用した無線結合の両場合があり、各端末装置はユーザ入力等の情報を放送局側システムへ送信する。本実施の形態では、１つの放送局側システムに対して三つの端末装置が結合されているが、任意の数の端末装置を放送局側システムに結合しても、本発明は適用可能である。
【００２６】
放送局側システム１０１は、複数の端末装置に対して映像・音声・データ放送用データ等の情報を放送信号に含めて送信する。放送信号は放送システムの運用既定や、放送システムが運用される国・地域の法律により定められた周波数帯域内の周波数を利用して伝送される。
【００２７】
例として、ケーブルシステムに関する放送信号伝送既定の例を示す。本例に示すケーブルシステムでは、放送信号伝送に利用される周波数帯域は、そのデータの内容と伝送方向（上り、下り）について、分割して用いられる。図２は、周波数帯域の分割の一例を示す表である。周波数帯域は、Ｏｕｔ  Ｏｆ  Ｂａｎｄ（略称ＯＯＢ）とＩｎ−Ｂａｎｄの２種類に大別される。５〜１３０ＭＨｚがＯＯＢに割り当てられ、主に放送局側システム１０１と端末装置Ａ１１１、端末装置Ｂ１１２、端末装置Ｃ１１３間のデータのやり取りに使用される。１３０ＭＨｚ〜８６４ＭＨｚはＩｎ−Ｂａｎｄに割り当てられ、主として、映像・音声を含む放送チャンネルに使用される。ＯＯＢではＱＰＳＫ変調方式が、Ｉｎ−ＢａｎｄはＱＡＭ６４またはＱＡＭ２５６変調方式が使用される。変調方式技術については、本発明に関与が薄い公知技術であるので、詳細な説明は省略する。図３は、ＯＯＢ周波数帯域の更に詳細な使用の一例である。７０ＭＨｚ〜７４ＭＨｚは放送局側システム１０１からのデータ送信に使用され、全ての端末装置Ａ１１１、端末装置Ｂ１１２、端末装置Ｃ１１３が、放送局側システム１０１から同じデータを受け取ることになる。一方、１０．０ＭＨｚ〜１０．１ＭＨｚは端末装置Ａ１１１から放送局側システム１０１へのデータ送信に使用され、１０．１ＭＨｚ〜１０．２ＭＨｚは端末装置Ｂ１１２から放送局側システム１０１へのデータ送信に使用され、１０．２ＭＨｚ〜１０．３ＭＨｚは端末装置Ｃ１１３から放送局側システム１０１へのデータ送信に使用される。これにより、各端末装置固有のデータを各端末装置Ａ１１１、端末装置Ｂ１１２、端末装置Ｃ１１３から放送局側システム１０１に送信することができる。図４は、Ｉｎ−Ｂａｎｄの周波数帯に対する使用の一例である。１５０〜１５６ＭＨｚと１５６〜１６２ＭＨｚはそれぞれテレビチャンネル１とテレビチャンネル２に割り当てられ、以降、６ＭＨｚ間隔でテレビチャンネルが割り当てられている。３１０ＭＨｚ以降は、１ＭＨｚ単位でラジオチャンネルに割り当てられている。これらの各チャンネルはアナログ放送として使用してもデジタル放送として使用してもよい。デジタル放送の場合は、ＭＰＥＧ２仕様に基づいたＴＳパケット形式で伝送され、音声や映像に加え、各種データ放送用データやＥＰＧを構成するための番組編成情報も送信することができる。
【００２８】
放送局側システム１０１は、これらの周波数帯域を利用して端末装置に適切な放送信号を送信するため、ＱＰＳＫ変調部やＱＡＭ変調部等を有する。また、端末装置からのデータを受信するため、ＱＰＳＫ復調器を有する。また、放送局側システム１０１は、これら変調部及び復調部に関連する様々な機器を有すると考えられる。しかし、本発明は主として端末装置に関わるので、詳細な説明は省略する。
【００２９】
端末装置Ａ１１１、端末装置Ｂ１１２、端末装置Ｃ１１３は、放送局側システム１０１からの放送信号を受信し再生する。また、放送局側システム１０１に対して、各端末装置固有のデータを送信する。三つの端末装置は、本実施の形態では同じ構成を取る。
【００３０】
なお、本例ではケーブルシステム運用に関する一例の詳細を紹介しているが、本発明は衛星、地上波システム及びケーブルシステムの他形態においても適用可能である。衛星及び地上波システムにおける放送局側システムと各端末装置の結合は、前記のように有線／無線の両場合が存在し、さらに周波数帯域や周波数間隔、変調方式、放送局側システムの構成等は放送システムの種別や運用に依存して異なるが、それらは本発明との関連性はなく、本発明はそれらがどのように既定されようと適用可能である。
【００３１】
放送局側システム１０１は、ＭＰＥＧ２トランスポートストリームを変調して放送信号に含めて伝送する。放送受信装置は放送信号を受信し、復調してＭＰＥＧ２トランスポートストリームを再現し、その中から必要な情報を抽出して用いる。デジタル放送受信装置に存在するデバイスの機能と接続の構成を説明するため、まずＭＰＥＧ２トランスポートストリームの構成を簡単に述べる。
【００３２】
図５はＴＳパケットの構成を表す図である。ＴＳパケット５００は１８８バイトの長さを持ち、ヘッダ５０１、アダプテーションフィールド５０２、ペイロード５０３からなる。ヘッダ５０１はＴＳパケットの制御情報を保持する。４バイトの長さを持ち、５０４で表される構成をとる。この中に"Ｐａｃｋｅｔ  ＩＤ（以下ＰＩＤ）"と記述されるフィールドを持ち、このＰＩＤの値によって、ＴＳパケットの識別を行う。アダプテーションフィールド５０２は時刻情報などの付加的な情報を保持する。アダプテーションフィールド５０２の存在は必須ではなく、存在しない場合もある。ペイロード５０３は映像・音声やデータ放送用データ等、ＴＳパケットが伝送する情報を保持する。
【００３３】
図６はＭＰＥＧ２トランスポートストリームの模式図である。ＴＳパケット６０１及びＴＳパケット６０３はヘッダにＰＩＤ１００を保持し、ペイロードに映像１に関する情報を保持する。ＴＳパケット６０２及びＴＳパケット６０５はヘッダにＰＩＤ２００を保持し、ペイロードにデータ１に関する情報を保持する。ＴＳパケット６０４はヘッダにＰＩＤ３００を保持し、ペイロードに音声１に関する情報を保持する。
【００３４】
ＭＰＥＧ２トランスポートストリーム６００はＴＳパケット６０１〜６０５のような連続したＴＳパケットによって構成される。ＴＳパケットはそのペイロードに映像や音声、データ放送用のデータなど様々な情報を保持する。放送受信装置はＴＳパケットを受信して、各ＴＳパケットが保持する情報を抽出することで、映像・音声を再生し、番組編成情報等のデータを利用する。この時、同一ＰＩＤを持つＴＳパケットは同一種類の情報を保持する。図６においても、ＴＳパケット６０１及びＴＳパケット６０３は共に映像１に関する情報を伝送し、またＴＳパケット６０３及びＴＳパケット６０５は共にデータ１に関する情報を伝送する。
【００３５】
映像及び音声は、ＰＥＳ（Ｐａｃｋｅｔｉｚｅｄ  Ｅｌｅｍｅｎｔａｒｙ  Ｓｔｒｅａｍ）パケットと呼ばれる形式で表現される。ＰＥＳパケットはある時間帯の映像情報または音声情報を含み、放送受信装置は、ＰＥＳパケットを受信することで、そのＰＥＳパケットが内包する映像・音声情報を画面・スピーカに出力することができる。放送局がＰＥＳパケットを途切れなく伝送することで、放送受信装置は、映像・音声を途切れなく再生し続けることが可能となる。ＰＥＳパケットは、実際に伝送される際、一つのＴＳパケットのペイロードよりも大きいサイズを持つ場合は分割されて複数のＴＳパケットのペイロードに格納される。図７はＰＥＳパケットを伝送する際の分割例を表す。ＰＥＳパケット７０１は一つのＴＳパケット内のペイロードに格納して伝送するには大きいため、ＰＥＳパケット分割Ａ７０２ａ、ＰＥＳパケット分割Ｂ７０２ｂ、ＰＥＳパケット分割Ｃ７０２ｃに分割され、同一ＰＩＤを持つ三つのＴＳパケット７０３〜７０５によって伝送される。なお、ＰＥＳパケットは運用によっては映像・音声だけでなく、サブタイトルと呼ばれる字幕用データを伝送することもある。
【００３６】
番組編成情報やデータ放送用のデータ等の情報はＭＰＥＧ２セクションと呼ばれる形式を用いて表現される。ＭＰＥＧ２セクションは実際に伝送される際、一つのＴＳパケットのペイロードよりも大きいサイズを持つ場合は分割されて複数のＴＳパケットのペイロードに格納される。図８はＭＰＥＧ２セクションを伝送する際の分割例を表す。ＭＰＥＧ２セクション８０１は一つのＴＳパケット内のペイロードに格納して伝送するには大きいため、セクション分割Ａ８０２ａ、セクション分割Ｂ８０２ｂ、セクション分割Ｃ８０２ｃに分割され、同一ＰＩＤを持つ三つのＴＳパケット８０３〜８０５によって伝送される。
【００３７】
図９はＭＰＥＧ２セクションの構造を表現する。ＭＰＥＧ２セクション９００はヘッダ９０１及びペイロード９０２から構成される。ヘッダ９０１はＭＰＥＧ２セクションの制御情報を保持する。その構成はヘッダ構成９０３によって表現される。ペイロード９０２はＭＰＥＧ２セクション９００が伝送するデータを保持する。ヘッダ構成９０３に存在するｔａｂｌｅ＿ｉｄはＭＰＥＧ２セクションの種類を表現し、さらにｔａｂｌｅ＿ｉｄ＿ｅｘｔｅｎｓｉｏｎはｔａｂｌｅ＿ｉｄが等しいＭＰＥＧ２セクション同士を区別する際に用いられる拡張識別子である。ＭＰＥＧ２セクションの使用例として、図１０に番組編成情報を伝送する場合を挙げる。この例では、行１００４に記載されるように、放送信号の復調に必要な情報はヘッダ構成９０３内のｔａｂｌｅ＿ｉｄが６４であるＭＰＥＧ２セクションに記載され、さらにそのＭＰＥＧ２セクションはＰＩＤに１６が付与されたＴＳパケットによって伝送される。
【００３８】
ＭＰＥＧ２トランスポートストリーム内に存在するＴＳパケット列の中で、同一ＰＩＤによって識別されるもののみを抽出した部分ＴＳパケット列をエレメンタリーストリーム（ＥＳ）と呼ぶ。例えば、図７において、ＰＥＳパケット７０１を分割して伝送しているＴＳパケット７０３〜７０５は全てＰＩＤが１００で識別される。これはＰＥＳパケット７０１を伝送するＥＳである、と言うことができる。同様に、図８において、ＭＰＥＧ２セクション８０１を分割して伝送しているＴＳパケット８０３〜８０５は全てＰＩＤが２００で識別される。これはＭＰＥＧ２セクション８０１を伝送するＥＳである、と言うことができる。
【００３９】
ＭＰＥＧ２トランスポートストリーム内にはさらにプログラムという概念が存在する。プログラムはＥＳの集合として表現され、複数のＥＳをまとめて扱いたい場合に利用される。プログラムを利用すると、映像・音声や、それに付随するデータ放送用データなどを一まとめに扱うことが可能となる。例えば、同時に再生したい映像・音声をまとめて扱う場合、映像を含むＰＥＳパケットを伝送するＥＳと、音声を含むＰＥＳパケットを伝送するＥＳをプログラムとしてまとめることで、放送受信装置は二つのＥＳを同時に再生すべきであることがわかる。
【００４０】
プログラムを表現するために、ＭＰＥＧ２ではＰＭＴ（Ｐｒｏｇｒａｍ  Ｍａｐ  Ｔａｂｌｅ）及びＰＡＴ（Ｐｒｏｇｒａｍ  Ａｓｓｏｃｉａｔｉｏｎ  Ｔａｂｌｅ）と呼ばれる二つのテーブルが利用される。詳細な説明はＩＳＯ／ＩＥＣ１３８１８−１、"ＭＰＥＧ２  Ｓｙｓｔｅｍｓ"仕様を参照されたい。以下ではＰＭＴ及びＰＡＴに関して簡単に説明する。
【００４１】
ＰＭＴはＭＰＥＧ２トランスポートストリーム中に、プログラムの数だけ含まれるテーブルである。ＰＭＴはＭＰＥＧ２セクションとして構成され、ｔａｂｌｅ＿ｉｄは２である。ＰＭＴにはプログラムの識別に用いられるプログラムナンバーとプログラムの付加情報、さらにプログラムに属するＥＳに関する情報を保持する。ＰＭＴの例を図１１に挙げる。１１００はプログラムナンバーである。プログラムナンバーは同一トランスポートストリーム内でプログラムに一意に割り当てられ、ＰＭＴの識別に用いられる。行１１１１〜１１１４は個々のＥＳに関する情報を表現する。列１１０１はＥＳのタイプであり、"映像"、"音声"、"データ"などが指定される。列１１０２はＥＳを構成するＴＳパケットのＰＩＤである。列１１０３はＥＳに関する付加情報である。例えば、行１１１１に表されるＥＳは、音声用ＰＥＳパケットを伝送するＥＳであり、ＰＩＤが５０１１であるＴＳパケットによって構成される。
【００４２】
ＰＡＴはＭＰＥＧ２トランスポートストリームに一つだけ存在するテーブルである。ＰＡＴはＭＰＥＧ２セクションとして構成され、ｔａｂｌｅ＿ｉｄは０であり、ＰＩＤが０であるＴＳパケットによって伝送される。ＰＡＴには、ＭＰＥＧ２トランスポートストリームの識別に用いられるｔｒａｎｓｐｏｒｔ＿ｓｔｒｅａｍ＿ｉｄと、ＭＰＥＧ２トランスポートストリーム内に存在するプログラムを表現する全てのＰＭＴに関する情報を保持する。ＰＡＴの例を図１２に挙げる。１２００はｔｒａｎｓｐｏｒｔ＿ｓｔｒｅａｍ＿ｉｄである。ｔｒａｎｓｐｏｒｔ＿ｓｔｒｅａｍ＿ｉｄはＭＰＥＧ２トランスポートストリームの識別に用いられる。行１２１１〜１２１３はプログラムに関する情報を表現する。列１２０１はプログラムナンバーである。列１２０２はプログラムに対応するＰＭＴを伝送するＴＳパケットのＰＩＤである。例えば、行１２１１に表されるプログラムのＰＭＴは、プログラムナンバーが１０１であり、対応するＰＭＴはＰＩＤが５０１であるＴＳパケットによって伝送される。
【００４３】
放送受信装置において、ユーザがあるプログラムに属する映像・音声の再生指示を出した場合はＰＡＴ及びＰＭＴを用いて、指定された映像・音声の再生を行う。例えば図１２のＰＡＴ及び図１１のＰＭＴを伝送するＭＰＥＧ２トランスポートストリームに関して、プログラムナンバーが１０１であるプログラムに属する映像・音声の再生を行う場合は以下のような手順をとる。まずＰＩＤが"０"であるＴＳパケットより、ｔａｂｌｅ＿ｉｄが"０"のＭＰＥＧ２セクションとして伝送されるＰＡＴを取得する。ＰＡＴよりプログラムナンバーが"１０１"であるプログラムを探索し、行１２１１を得る。行１２１１より、プログラムナンバーが"１０１"であるプログラムのＰＭＴを伝送するＴＳパケットのＰＩＤ"５０１"を得る。次にＰＩＤが"５０１"であるＴＳパケットより、ｔａｂｌｅ＿ｉｄが"２"のＭＰＥＧ２セクションとして伝送されるＰＭＴを取得する。ＰＭＴより、音声のＥＳ情報である行１１１１及び映像のＥＳ情報である行１１１２を得る。行１１１１より、音声用ＰＥＳパケットを伝送するＥＳを構成するＴＳパケットのＰＩＤ"５０１１"を得る。また行１１１２より、映像用ＰＥＳパケットを伝送するＥＳを構成するＴＳパケットのＰＩＤ"５０１２"を得る。次にＰＩＤ"５０１１"のＴＳパケットより音声用ＰＥＳパケットを、ＰＩＤ"５０１２"のＴＳパケットより映像用ＰＥＳパケットを取得する。これにより、再生対象となる映像・音声のＰＥＳパケットを特定することが可能となり、これらが伝送する映像音声を再生することができる。
【００４４】
本発明は、ＭＰＥＧ２トランスポートストリームによって伝送される、暗号化された情報に対するアクセス制御に関する。ＭＰＥＧ２トランスポートストリームに含まれる情報の暗号化の形式をここで述べる。
【００４５】
一般に暗号化とは、あるデータを、暗号化アルゴリズムを利用して可逆変更し、元のデータの内容を隠蔽することである。暗号化されたデータは暗号解除アルゴリズムを利用することで元のデータに戻すことが可能である。放送では"鍵"と呼ばれるビット列を用いた暗号化・暗号解除アルゴリズムが用いられる。放送局は暗号化したいデータをある"暗号化鍵"を利用した暗号化アルゴリズムに従って可逆変更し、その"暗号化鍵"に対応する"暗号解除鍵"を暗号化されたデータと共に伝送する。放送受信装置は"暗号解除鍵"を利用した暗号解除アルゴリズムを利用して暗号化されたデータを復元し、元のデータを得る。本発明はこの暗号化・暗号解除アルゴリズム自身とは無関係であり、どのようなアルゴリズムが利用されたとしても本発明は適用可能である。
【００４６】
前述したように、ＭＰＥＧ２トランスポートストリームで伝送される情報はＰＥＳパケットまたはＭＰＥＧ２セクションの形式をとり、それが分割されてＴＳパケットで伝送される。この際、放送局で行われる暗号化処理はＰＥＳパケット及びＭＰＥＧ２セクション単位で行われ、暗号化されたＰＥＳパケット及び暗号化されたＭＰＥＧ２セクションが分割され、ＴＳパケットによって伝送される。例えば、ある映像・音声情報に対するアクセス制限を行う場合、その映像・音声情報を伝送するＰＥＳパケットに対して暗号化処理を行う。
【００４７】
図１３に暗号化されたＰＥＳパケットが伝送される状況を表す。ＰＥＳパケット１３０１は暗号化され、さらに、一つのＴＳパケット内のペイロードに格納して伝送するには大きいため、ＰＥＳパケット分割Ａ１３０２ａ、ＰＥＳパケット分割Ｂ１３０２ｂ、ＰＥＳパケット分割Ｃ１３０２ｃに分割され、同一ＰＩＤを持つ三つのＴＳパケット１３０３〜１３０５によって伝送される。結果的に、ＴＳパケット１３０３〜１３０５のペイロード部分が暗号化された形となる。
【００４８】
図１４に暗号化されたＭＰＥＧ２セクションが伝送される状況を表す。ＭＰＥＧ２セクション１４０１は暗号化され、さらに、一つのＴＳパケット内のペイロードに格納して伝送するには大きいため、セクション分割Ａ１４０２ａ、セクション分割Ｂ１４０２ｂ、セクション分割Ｃ１４０２ｃに分割され、同一ＰＩＤを持つ三つのＴＳパケット１４０３〜１４０５によって伝送される。結果的に、ＴＳパケット１４０３〜１４０５のペイロード部分が暗号化された形となる。
【００４９】
放送受信装置は、暗号化された情報を利用するために、デスクランブラと呼ばれるデバイスを用いて暗号解除を行う。デスクランブラは一つで一本のＥＳに関する暗号解除を行うことが可能である。放送受信装置は、ＴＳパケットのＴＳパケットヘッダ構成５０４に保持されるｔｒａｎｓｐｏｒｔ＿ｓｃｒａｍｂｌｉｎｇ＿ｃｏｎｔｒｏｌに設定されている値を用いて、そのＴＳパケットがペイロードに含んで伝送するＰＥＳパケットまたはＭＰＥＧ２セクションが暗号化されているかどうかを知ることが可能である。もし暗号化されていたのであれば、それらペイロードにて伝送されるＰＥＳパケットまたはＭＰＥＧ２セクションはデスクランブラに伝送され、暗号解除が行われる。
【００５０】
放送受信装置が暗号解除を行うのに必要な情報は二種類ある。「暗号解除鍵などの暗号解除情報」及び「各契約者の契約情報」である。一般に、前者はＥＣＭ（Ｅｎｔｉｔｌｅｍｅｎｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ）、後者はＥＭＭ（Ｅｎｔｉｔｌｅｍｅｎｔ  Ｍａｎａｇｅｍｅｎｔ  Ｍｅｓｓａｇｅ）と呼ばれる形式で、ＭＰＥＧ２トランスポートストリームに含められて伝送される。ＥＣＭは暗号解除に必要な鍵を伝送し、それらはデスクランブラに設定されて暗号解除が行われる。ＥＭＭは各契約者の契約情報を伝送し、暗号解除処理対象である情報の暗号解除が契約上許されるかどうかを判定するのに用いられる。両方ともＰＥＳパケットまたはＭＰＥＧ２セクション形式で伝送されることが可能であり、どちらが用いられるか、及びどのように伝送されるかは、運用規定によって決定される。放送受信装置がＥＣＭ及びＥＭＭを取得するためには、それぞれを伝送するＴＳパケットのＰＩＤが必要となる。それを表現するために、ＭＰＥＧ２仕様ではＣＡ（Ｃｏｎｄｉｔｉｏｎａｌ  Ａｃｃｅｓｓ）記述子及びＣＡＴ（Ｃｏｎｄｉｔｉｏｎａｌ  Ａｃｃｅｓｓ  Ｔａｂｌｅ）を規定している。ＣＡ記述子はＥＣＭ及びＥＭＭを伝送するＴＳパケットのＰＩＤを保持する。ＣＡＴは暗号解除に関する情報を伝送するテーブルであり、それ自身ｔａｂｌｅ＿ｉｄが"１"のＭＰＥＧ２セクションとして構成され、ＰＩＤが"１"のＴＳパケットにより伝送される。ＣＡＴはＣＡ記述子を保持し、そのＣＡ記述子が保持するＰＩＤによって識別されるＴＳパケットはＥＭＭを伝送する。また、ＰＭＴもＣＡ記述子を保持することができ、ＰＭＴに存在するＣＡ記述子が保持するＰＩＤによって識別されるＴＳパケットはＥＣＭを伝送する。
【００５１】
ＥＭＭは契約情報を伝送しており、放送受信装置自体に関連する情報である。放送受信装置がＥＭＭを受信する場合、まずＰＩＤが"１"であるＴＳパケットよりｔａｂｌｅ＿ｉｄが"１"であるＣＡＴを取得し、ＣＡＴに記載されるＣＡ記述子より、ＥＭＭを伝送するＴＳパケットのＰＩＤを取得する。そのＰＩＤにより識別されるＴＳパケットよりＥＭＭを取得する。放送受信装置が暗号化された情報にアクセスする際、それが契約上可能であるかどうかを判断するのに用いられる。
【００５２】
ＥＣＭはアクセスしたい情報を暗号解除するための鍵を伝送しており、プログラムやＥＳに依存する情報である。放送受信装置が暗号化された情報にアクセスする場合、まずＰＡＴ及びＰＭＴを用いて暗号化された情報を伝送するＥＳを特定する。そのＥＳに関する情報が記載されるＰＭＴには、それにあわせて必ずＣＡ記述子が記載されている。そのＣＡ記述子に記載されるＰＩＤによって識別されるＴＳパケットはＥＣＭを伝送し、そのＥＳが伝送する情報を暗号解除するのに必要な暗号解除鍵を含む。ＥＣＭに記載される暗号解除鍵は、デスクランブラに設定され、暗号解除に用いられる。
【００５３】
暗号解除処理におけるＥＭＭ及びＥＣＭに関わる動作シーケンスを図１５に示す。まず放送受信装置は指定された識別子からＰＭＴを取得し、暗号解除すべきＥＳを特定する（Ｓ１５０１）。この識別子は基本的にプログラムあるいはＥＳを指定するものであるが、どのような識別子を用いるかは運用に依存して決定される。もっとも単純な例としてはプログラムナンバーやＥＳを構成するＴＳパケットのＰＩＤである。次にＥＭＭより契約情報を得る（Ｓ１５０２）。得られた契約情報より、Ｓ１５０１で特定したＥＳが伝送する情報が、契約上暗号解除可能であるかどうか判別する（Ｓ１５０３）。もし暗号解除可能であれば、ＥＣＭを取得し（Ｓ１５０４）、ＥＣＭに記載される暗号解除鍵をデスクランブラに設定し（Ｓ１５０５）、暗号解除を開始する（Ｓ１５０６）。
【００５４】
なお、ＭＰＥＧ２仕様はＥＣＭやＥＭＭの詳細や利用形態は規定しておらず、それらは各環境に合わせた運用規定によって決定される。具体的には、各環境において、ＥＣＭ及びＥＭＭの形態（ＰＥＳパケットかＭＰＥＧ２セクションか）、ＥＣＭ及びＥＭＭのフォーマット、ＥＣＭに記載される暗号解除鍵の長さや数、暗号解除鍵の更新間隔時間の長さ、ＥＭＭに記載される契約情報の内容、ＥＣＭ及びＥＭＭの送出間隔、などの情報はＭＰＥＧ２仕様が規定せず、運用にあわせて決定される。各環境において、ＥＣＭやＥＭＭは暗号解除に必要な情報を伝送しており、当然暗号解除に関わるが、本発明は"暗号解除を開始するタイミング"、及び"暗号解除する対象"を決定するアルゴリズムに関するものであり、実際の暗号解除処理に先立って行われる前処理に関するものである。本発明は暗号解除処理そのものとは関連性が薄く、本発明は、ＥＣＭやＥＭＭがどのように運用されようと適用可能である。図１５におけるシーケンスに関しても、本発明における暗号解除の開始には関わるが、図１５がどのように実現されるかとは関係がないため、図１５のシーケンスが実際にどのように実現されたとしても適用可能である。
【００５５】
ここまでＭＰＥＧ２仕様に関する簡単な説明を行ったが、ここで単語の詳細な定義を行う。本発明に関して、「プログラム」という単語が二種類存在する。一つはＭＰＥＧ２仕様に登場する「プログラム」であり、もう一つはＣＰＵが実行するコードの集合という意味での「プログラム」である。前者に関しては、運用規定で用いられる「サービス」という単語と同義であるため、混乱を避けるため、以降、前者を「サービス」と呼び、後者を単に「プログラム」と呼ぶ。さらに後者に関して、特にＪａｖａ（登録商標）言語で記述された「プログラム」を「Ｊａｖａプログラム」と呼ぶ。
【００５６】
以上、本発明に関わる、ＭＰＥＧ２仕様にて決定されるいくつかの情報に関して説明を行った。以降、本実施の形態の前提となるハードウェア構成に関して説明する。
【００５７】
デジタル放送受信装置の一般的なハードウェア構成を表すブロック図を図１６に示す。１６００は端末装置であり、チューナ１６０１、ＴＳデコーダ（ＴＳ  Ｄｅｍｕｌｔｉｐｌｅｘｅｒ）１６０２、ＡＶデコーダ１６０３、スピーカ１６０４、ディスプレイ１６０５、ＣＰＵ１６０６、２次記憶部１６０７、１次記憶部１６０８、ＲＯＭ１６０９、入力部１６１０で構成される。
【００５８】
チューナ１６０１はＣＰＵ１６０６が指定する周波数を含むチューニング情報に従って、放送局側システム１０１内で変調され伝送されてきた放送信号を復調するデバイスである。チューナ１６０１が復調して得られるＭＰＥＧ２トランスポートストリームはＴＳデコーダ１６０２に送信される。
【００５９】
ＴＳデコーダ１６０２は、ＣＰＵ１６０６が指定するＰＩＤ，セクションフィルタ条件等の指定に基づいてＭＰＥＧ２トランスポートストリームから指定条件に合致するＰＥＳパケットやＭＰＥＧ２セクションを選別する機能を有するデバイスである。ＴＳデコーダ１６０２が選別したＰＥＳパケットはＡＶデコーダ１６０３に転送される。また、ＴＳデコーダ１６０２が選別したＭＰＥＧ２セクションは、１次記憶部１６０８にＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）転送され、ＣＰＵ１６０６が実行するプログラムによって利用される。また、ＴＳデコーダ１６０２内にはデスクランブラが存在し、暗号化されたＰＥＳパケット及びＭＰＥＧ２セクションの暗号解除を行う。
【００６０】
ＡＶデコーダ１６０３はエンコードされた映像及び音声をデコードする機能を有するデバイスである。ＡＶデコーダ１６０３がデコードして得られたａｕｄｉｏ信号及びｖｉｄｅｏ信号は、スピーカ１６０４、ディスプレイ１６０５に送信される。なお、ＡＶデコーダ１６０３は必ずしも映像及び音声を同時にデコードできない場合もある。映像デコーダ、音声デコーダ単体として存在することもある。なお、ＡＶデコーダ１６０３は場合によってはサブタイトルデータに対するデコード機能を有する場合もある。また、ＡＶデコーダ１６０３は、暗号化されたＰＥＳパケットが伝送する映像・音声情報をデコードすることはできない。そのため、ＴＳデコーダ１６０２内のデスクランブラにてＰＥＳパケットの暗号解除が行われない場合は、ユーザはそのＰＥＳパケットが伝送する映像・音声を視聴することは不可能となる。
【００６１】
スピーカ１６０４、ディスプレイ１６０５はそれぞれＡＶデコーダ１６０３から送信された音声、映像を出力する機能を有するデバイスである。
【００６２】
ＣＰＵ１６０６は放送受信装置上で動作するプログラムを実行する。ＣＰＵ１６０６が実行するプログラムは、ＲＯＭ１６０９に含まれる場合、放送信号やネットワークよりダウンロードされ１次記憶部１６０８に保持されている場合、放送信号やネットワークよりダウンロードされ２次記憶部１６０７に保存されている場合などが存在する。実行するプログラムの指示に従い、チューナ１６０１、ＴＳデコーダ１６０２、ＡＶデコーダ１６０３、スピーカ１６０４、ディスプレイ１６０５、２次記憶部１６０７、１次記憶部１６０８、ＲＯＭ１６０９、入力部１６１０を制御する。
【００６３】
２次記憶部１６０７はＦＬＡＳＨ−ＲＯＭなどの不揮発性メモリ、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＣＤ−ＲやＤＶＤ−Ｒなどの書き換え可能のメディアなど、端末装置１６００の電源断の際にも情報が消去されない機器によって構成され、ＣＰＵ１６０６の指示により情報の保存を行う。端末装置１６００の電源断によって消えては困るデータの保存に利用される。
【００６４】
１次記憶部１６０８はＲＡＭ等によって構成され、ＣＰＵ１６０６やＤＭＡ可能なデバイスの指示に従って情報を一時的に保存する機能を有するデバイスである。１次記憶部１６０８に保持された情報は、端末装置１６００の電源断によって消去される。
【００６５】
ＲＯＭ１６０９は、書き換え不可能なメモリーデバイスであり、具体的にはＲＯＭやＣＤ−ＲＯＭ、ＤＶＤなどで構成される。ＲＯＭ１６０９には、ＣＰＵ１６０６が実行するプログラムが格納されている。
【００６６】
入力部１６１０は、具体的には、フロントパネルやリモコンで構成され、ユーザーからの入力を受け付ける。図１７は、フロントパネルで入力部１６１０を構成した場合の一例である。フロントパネル１７００は七つのボタン、上カーソルボタン１７０１、下カーソルボタン１７０２、左カーソルボタン１７０３、右カーソルボタン１７０４、ＯＫボタン１７０５、取消ボタン１７０６、ＥＰＧボタン１７０７を備えている。ユーザーがボタンを押下すると、押下されたボタンの識別子が、ＣＰＵ１６０６に通知される。
【００６７】
なお、図１６ではディスプレイ１６０５、スピーカ１６０４を放送受信装置内部に包含する形で表現するが、放送受信装置にはディスプレイ１６０５、スピーカ１６０４を内包せず、外部にａｕｄｉｏ信号及びｖｉｄｅｏ信号のみ出力するタイプのものも存在する。ディスプレイ１６０５及びスピーカ１６０４の存在場所は本発明と関連性がなく、どちらのタイプに対しても本発明は適用可能である。また図１６では、チューナ１６０１やＡＶデコーダ１６０３は端末装置１６００内に一つずつしか存在しないが、これらデバイスが複数存在するハードウェア構成もあり、その場合においても本発明は適用可能である。
【００６８】
図１６に表されるハードウェア構成において、各デバイスは端末装置に出荷時にデフォルトで内包されている。しかし、端末装置上に搭載されていないデバイスを追加するため、及び端末装置上に搭載されているデバイスの機能を向上させるため、追加したいデバイスを搭載したアダプタをさらに端末装置に付与することがある。  例えば、図１６においてデスクランブラは端末装置１６００のＴＳデコーダ１６０２に出荷時にデフォルトで内包されているが、端末装置と、デスクランブラを含む外部アダプタを物理的に接続し、外部アダプタ内のデスクランブラを利用して暗号解除を行うハードウェア構成をとる端末装置が存在する。このようなハードウェア構成例として図１８を表す。１８００は端末装置であり、チューナ１８０１、ＴＳデコーダ１８０２、ＡＶデコーダ１６０３、スピーカ１６０４、ディスプレイ１６０５、ＣＰＵ１８０６、２次記憶部１２０７、１次記憶部１２０８、ＲＯＭ１６０９、入力部１６１０で構成される。端末装置１８００に搭載される、図１６と同じ番号で識別されるデバイスは図１６の場合と同じ機能を有するため、説明を省略する。端末装置１８００にはアダプタ１８１１が付与される。
【００６９】
アダプタ１８１１はデスクランブラを搭載する。図１８のハードウェア構成例に登場するアダプタ１８１１にはＭＰＥＧ２トランスポートストリームを入力とし、入力されたＭＰＥＧ２トランスポートストリームに含まれるＴＳパケットに関して、ＣＰＵ１８０６が指定したＰＩＤを持つＴＳパケットが伝送するＰＥＳパケットあるいはＭＰＥＧ２セクションに対して暗号解除を行う1以上のデスクランブラを保持する。アダプタ１８１１が保持するデスクランブラを動作させるためにはアダプタ１８１１に対してチューナ１８０１が復調したＭＰＥＧ２トランスポートストリームを入力する必要がある。そのため、チューナ１８０１は復調したＭＰＥＧ２トランスポートストリームをアダプタ１８１１に入力する。アダプタ１８１１は、入力されたＭＰＥＧ２トランスポートストリーム内の、ＣＰＵ１８０６が指定したＴＳパケットが伝送するＰＥＳパケットあるいはＭＰＥＧ２セクションに対する暗号解除を終えた後、ＭＰＥＧ２トランスポートストリームをＴＳデコーダ１８０２に送信する。ＴＳデコーダ１８０２は、図１６におけるＴＳデコーダ１６０２がチューナ１６０１から入力されるＭＰＥＧ２トランスポートストリームに対して処理を行うことができるのと同様、アダプタ１８１１から入力されたＭＰＥＧ２トランスポートストリームに対して処理を行うことが可能である。ＣＰＵ１８０６は端末装置１８００内に存在するデバイスだけでなく、アダプタ１８１１内のデバイスと通信あるいは制御することが可能である。
【００７０】
なお、図１８に表されるハードウェア構成では、アダプタ１８１１はデスクランブラを搭載するが、本発明はアダプタ１８１１が保持するデバイスの種類や数に依存せずに適用可能である。さらに、図１８に表されるハードウェア構成では、アダプタ１８１１は、チューナ１８０１からＭＰＥＧ２トランスポートストリームを入力され、ＴＳデコーダ１８０２にＭＰＥＧ２トランスポートストリームを送信する構成をとるが、放送信号を加工する過程のどの部分にアダプタ１８１１が搭載するデバイスが挿入されても適用可能である。例えば、アダプタ１８１１がＡＶデコーダを搭載し、アダプタ１８１１がＴＳデコーダ１８０２からＰＥＳパケットを入力され、ディスプレイ１２０５及びスピーカ１２０４にａｕｄｉｏ及びｖｉｄｅｏ信号を出力するような構成であっても本発明は適用可能である。また、端末装置１８００とアダプタ１８１１間のインタフェースはＰＣＭＣＩＡが一般的だが、本発明はそのインタフェースの形式とは関連性がないため、どのようなインタフェースであっても適用可能である。また、端末装置１８００が同時に物理的に接続することが可能なアダプタの数にも依存しないため、複数のアダプタと物理的に接続可能であっても適用可能である。
【００７１】
また、なお、アダプタ１８１１は着脱可能なカード型のデバイスとして実現されて端末装置１８００のカード接続端子と接続されて利用されたり、ボックス型のデバイスとして実現されて端末装置１８００のＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）端子やＩＥＥＥ（Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ）１３９４端子などの接続端子と接続されて利用されたり等、様々な形態で実現されるが、本発明はそのようなアダプタ１８１１のデバイス形態や、端末装置との接続方法に依存せずに適用可能である。また、端末装置１８００が同時に物理的に接続することが可能なアダプタの数にも依存しないため、複数のアダプタ１８１１と物理的に接続可能であっても適用可能である。また、図１８のハードウェア構成例では、チューナ１８０１からアダプタ１８１１に対して直接ＭＰＥＧ２トランスポートストリームが入力される構成をとるが、チューナ１８０１から出力されたＭＰＥＧ２トランスポートストリームが一度ＴＳデコーダ１８０２を経由し、その後アダプタ１８１１に入力されるハードウェア構成も考えられる。この場合、ＴＳデコーダ１８０２は、ＭＰＥＧ２トランスポートストリームをアダプタ１８１１に対して中継する機能を保持し、その機能を利用してチューナ１８０１から入力されるＭＰＥＧ２トランスポートストリームをアダプタ１８１１に対して出力する。また、図１８のハードウェア構成例にはチューナ１８０１やＡＶデコーダ１８０３が一つずつしか存在しないが、これらが複数存在するハードウェア構成も存在することがあり、その場合においても本発明は適用可能である。
【００７２】
アダプタの第一例として、欧州で利用されるＤＶＢ−ＣＩ（Ｃｏｍｍｏｎ  Ｉｎｔｅｒｆａｃｅ）カードについて説明する。ＤＶＢ−ＣＩの仕様については"ＥＴＳＩ  ＥＮ５０２２１"に示される。ここではＤＶＢ−ＣＩ仕様について簡単に説明する。ＤＶＢ−ＣＩ仕様は端末装置にアダプタを付与するためのインタフェース仕様であり、端末装置とアダプタを、ＰＣＭＣＩＡ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ  Ｍｅｍｏｒｙ  Ｃａｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ａｓｓｏｃｉａｔｉｏｎ）インタフェースを用いて接続する。ＤＶＢ−ＣＩカードは内部にデスクランブラを内包し、図１８におけるハードウェア構成例と同様の構成下において利用される。図１６におけるハードウェア構成例では、図１５のシーケンスをすべて端末装置１６００が行う必要があるが、ＤＶＢ−ＣＩでは、図１５のシーケンスはＤＶＢ−ＣＩカードに搭載されるＣＰＵが行う。端末装置１８００内のＣＰＵ１８０６は、ＤＶＢ−ＣＩカードに対して、ＥＳ情報及びＣＡ記述子が記述されたＰＭＴ（ＣＡ−ＰＭＴ）をバイナリで送信することで、ＤＶＢ−ＣＩがＥＭＭやＥＣＭの操作を行って、自動的に暗号解除を開始する。ＣＡ−ＰＭＴについては後述する。
【００７３】
アダプタの第二例として、米国ケーブルシステムで利用されるＣａｂｌｅＣＡＲＤ（旧名ＰＯＤ（Ｐｏｉｎｔ  Ｏｆ  Ｄｅｐｌｏｙｍｅｎｔ））について説明する。ＣａｂｌｅＣＡＲＤの仕様は、"ＯＣ−ＳＰ−ＣＣ−ＩＦ"仕様に示される。ここでは簡単にＣａｂｌｅＣＡＲＤについて説明する。ＣａｂｌｅＣＡＲＤもＤＶＢ−ＣＩ同様カード型の形態をとり、端末装置とＰＣＭＣＩＡインタフェースを用いて接続される。図１９はＣａｂｌｅＣＡＲＤ１９１１が付与された端末装置のハードウェア構成を表す。端末装置１９００内に存在するデバイスで、図１６あるいは図１８と同じ番号で識別されるデバイスは、図１６あるいは図１８の場合と同様の機能を持つ。ＣａｂｌｅＣＡＲＤ１９１１はデスクランブラを搭載しており、図１８におけるアダプタ１８１１と同様に、チューナ１９０１からＭＰＥＧ２トランスポートストリームを入力され、ＴＳデコーダ１９０２に対して、暗号解除処理済みのＭＰＥＧ２トランスポートストリームを出力する。また、米国ケーブルシステムでは、図２、図３で表されるように、ＯＯＢと言われる周波数帯域を用いて、様々な情報が上り及び下り方向に伝送されている。このとき、放送局側システム１０１が端末装置に対して送出する情報の形式と、端末装置１９００が解釈可能な情報の形式は異なるため、そのままでは情報のやりとりが不可能となる。ＣａｂｌｅＣＡＲＤ１９１１はこれらＯＯＢで伝送される上り、下りの情報の形式変換を行うデバイスを備えている。ＯＯＢで伝送される情報はＱＰＳＫ変調方式で変調される。本変調方式は公知の技術であり、詳細な説明は省略する。端末装置はＱＰＳＫ復調器１９１２とＱＰＳＫ変調器１９１３を備える。ＣＰＵ１９０６は端末装置１９００内のデバイスだけでなく、ＣａｂｌｅＣＡＲＤ１９１１内のデバイスを制御可能である。
【００７４】
下り方向の端末装置１９００の情報受信に関し、まずＱＰＳＫ復調器１９１２はＯＯＢで放送局側システム１０１から送信されてくる下りの信号を復調し、生成されたビットストリームをＣａｂｌｅＣＡＲＤ１９１１に入力する。ＣａｂｌｅＣＡＲＤ１９１１はビットストリームが含む様々な情報の中から、ＣＰＵ１９０６が指定する情報を抽出して、ＣＰＵ１９０６上で動作するプログラムが解釈可能な形式に変換して、ＣＰＵ１９０６に提供する。
【００７５】
上り方向の端末装置１９００の情報送信に関し、まずＣＰＵ１９０６が放送局側システム１０１に対して送信したい情報を、ＣａｂｌｅＣＡＲＤ１９１１に送信する。ＣａｂｌｅＣＡＲＤ１９１１はＣＰＵ１９０６から入力された情報を放送局側システム１０１が解釈可能な変換し、ＱＰＳＫ変調器１９１３に送信する。ＱＰＳＫ変調器１９１３はＣａｂｌｅＣＡＲＤ１９１１から入力された情報をＱＰＳＫ変調し、放送局側システム１０１に送信する。
【００７６】
なお、ＣａｂｌｅＣＡＲＤ１９１１もＤＶＢ−ＣＩ同様にＣＰＵを搭載しており、図１５のシーケンスをＣａｂｌｅＣＡＲＤ１９１１内のＣＰＵが実行する。端末装置１９００は、ＣａｂｌｅＣＡＲＤ１９１１に対して、ＣＡ記述子が記述されたＰＭＴ（ＣＡ−ＰＭＴ）をバイナリで送信することで、ＣａｂｌｅＣＡＲＤ１９１１がＥＭＭやＥＣＭに関する操作を行って、自動的に暗号解除を開始する。ＣＡ−ＰＭＴについては後述する。また、ＣａｂｌｅＣＡＲＤ１９１１が利用される環境では、ＥＭＭやＥＣＭはＩｎ−Ｂａｎｄで伝送されることもあれば、ＯＯＢで伝送されることもあるが、ＥＭＭやＥＣＭの取得手法は本発明と無関係であり、それがどのように伝送されても本発明は適用可能である。また、図１８同様、図１９に関しても、チューナ１９０１からＣａｂｌｅＣＡＲＤ１９１１に対して直接ＭＰＥＧ２トランスポートストリームが入力される構成となっているが、一度ＴＳデコーダ１９０２を経由してＣａｂｌｅＣＡＲＤ１９１１に入力される構成となっていてもよい。この場合、ＴＳデコーダ１９０２はチューナ１９０１から入力されるＭＰＥＧ２トランスポートストリームをＣａｂｌｅＣＡＲＤ１９１１に中継する機能を持つ。また、端末装置１９００はチューナ、ＡＶデコーダ等の各デバイスを一つずつしか保持しないが、本発明は各デバイスの数には依存しないため、それぞれが複数あろうと適用可能である。但し、チューナが複数存在して、それぞれが受信するＭＰＥＧ２トランスポートストリームをＣａｂｌｅＣＡＲＤ１９１１内のデスクランブラを用いて暗号解除するのであれば、ＣａｂｌｅＣＡＲＤ１９１１は複数のＭＰＥＧ２トランスポートストリームの入力を許す構成をとる必要があり、さらに端末装置１９００はＣａｂｌｅＣＡＲＤ１９１１に複数のＭＰＥＧ２トランスポートストリームを入力し、ＣａｂｌｅＣＡＲＤ１９１１から複数のＭＰＥＧ２トランスポートストリームを受け取る機能を持つ必要がある。
【００７７】
ここで、端末装置１６００内部にデスクランブラが存在する場合と、外部のアダプタ内にデスクランブラが存在する場合に関する暗号解除処理の違いについて簡単に説明する。
【００７８】
図１６に表されるハードウェア構成では、端末装置１６００内のデスクランブラが存在する。暗号解除を行うためにはデスクランブラに対して暗号解除鍵及びＰＩＤを指定する必要がある。そのため、このようなハードウェア構成では、端末装置１６００自身がＥＣＭを取得し、さらにそこから暗号解除鍵を取得してデスクランブラにそれら値を設定する。
【００７９】
図１８に表されるハードウェア構成では、端末装置１８００の外にデスクランブラが存在する。前述したように、その代表例としてＤＶＢ−ＣＩ及びＣａｂｌｅＣＡＲＤがある。外部アダプタ１８１１のように端末装置１８００の外にデスクランブラが存在する場合、端末装置１８００は、暗号解除開始及び停止すべきＥＳの情報を外部アダプタ１８１１に伝える必要がある。ＤＶＢ−ＣＩ及びＣａｂｌｅＣＡＲＤの場合、そのためにＣＡ−ＰＭＴと呼ばれるメッセージを用いる。ＣＡ−ＰＭＴはＰＭＴと同様の構造をとり内部にＥＳの情報を包含する。ＣＡ−ＰＭＴはＰＭＴから"暗号解除に関する情報以外の情報"を削除し、さらに暗号解除を開始するか停止するかを表す暗号解除制御フラグを付与したものである。ＤＶＢ−ＣＩ及びＣａｂｌｅＣＡＲＤは、暗号解除制御フラグが"開始"であるＣＡ−ＰＭＴを端末装置１８００より受信すると、そのＣＡ−ＰＭＴに記載されているＥＳの暗号解除を開始する。ＤＶＢ−ＣＩ及びＣａｂｌｅＣＡＲＤは内部にデスクランブラのみならず、ＣＰＵ、暗号解除プログラムが記録されたＲＯＭ、１次記憶、ＥＭＭ・ＥＣＭを取得するデバイスを保持しており、ＥＭＭ及びＥＣＭの取得、ＥＭＭ情報に基づいた契約上の判断や、ＥＣＭに記載される暗号解除鍵のデスクランブラへの設定、ＰＩＤのデスクランブラへの設定といった操作はＤＶＢ−ＣＩ及びＣａｂｌｅＣＡＲＤ上のプログラムが行う。また、ＤＶＢ−ＣＩ及びＣａｂｌｅＣＡＲＤは、暗号解除制御フラグが"停止"であるＣＡ−ＰＭＴを端末装置１８００より受信すると、そのＣＡ−ＰＭＴに記載されているＥＳの暗号解除を停止する。また、ＤＶＢ−ＣＩ及びＣａｂｌｅＣＡＲＤは、暗号解除制御フラグが"問い合わせ"であるＣＡ−ＰＭＴを端末装置１８００より受信すると、そのＣＡ−ＰＭＴに記載されているＥＳの暗号解除が可能かどうか判定し、端末装置１８００に対して、判定結果を通知する。端末装置１８００はＣＡ−ＰＭＴを構成してＤＶＢ−ＣＩやＣａｂｌｅＣＡＲＤに対して投げることでＤＶＢ−ＣＩ及びＣａｂｌｅＣＡＲＤに対して暗号解除の開始・停止指示やＥＳに関する情報を通知することができ、暗号解除の制御を行うことが可能となる。また、ＤＶＢ−ＣＩやＣａｂｌｅＣＡＲＤによっては、暗号解除制御フラグが"開始"であるＣＡ−ＰＭＴを端末装置１８００より受信したとき、既に別の暗号解除を行っていた場合、自動的に既に行われている暗号解除を停止し、受信したＣＡ−ＰＭＴに基づいて暗号解除を開始することもある。
【００８０】
図１６〜図１９に登場する各デバイスを利用して、放送受信装置は、放送信号に含まれて伝送される映像・音声を画面に出力する機能や、放送信号が含む番組編成情報などのデータを抽出し、ユーザに提示する機能を実現する。図２０に、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図を示す。２０００は端末装置であり、チューナ２００１、ＰＩＤフィルタ２００２、セクションフィルタ２００３、デスクランブラ２００４、ＡＶデコーダ２００５、ディスプレイ／スピーカ２００６、１次記憶部２００７を有する。図２０に登場するデバイスは図１６に登場するデバイスと１対１または１対多で対応する。
【００８１】
チューナ２００１はチューナ１６０１と対応し、放送信号を入力とし、ＭＰＥＧ２トランスポートストリームを出力する。
【００８２】
ＴＳデコーダ１６０２内にはＭＰＥＧ２トランスポートストリームに対して処理を行う３種類のデバイス、ＰＩＤフィルタ２００２、セクションフィルタ２００３、デスクランブラ２００４が存在する。これらの機能についてここで詳述する。
【００８３】
ＰＩＤフィルタ２００２は、入力されたＭＰＥＧ２トランスポートストリームから、ＣＰＵ１６０６が指定したＰＩＤを持つＴＳパケットを抽出し、さらにそのペイロードに存在するＰＥＳパケットやＭＰＥＧ２セクションを抽出する。例えば図７に表される状況でＰＥＳパケット７０１を抽出する場合を例にとる。まずＣＰＵ１６０６はＰＩＤフィルタにＰＩＤ１００を設定し、ＰＥＳパケットを抽出するように要求を出す。するとＰＩＤフィルタは、ＭＰＥＧ２トランスポートストリーム中を流れるＴＳパケットの中からＰＩＤが１００であるＴＳパケット７０３〜７０５を抽出し、さらに抽出されたＴＳパケット７０３〜７０５のペイロードに含まれるＰＥＳパケット分割Ａ７０２ａ、ＰＥＳパケット分割Ｂ７０２ｂ、ＰＥＳパケット分割Ｃ７０２ｃを取り出して連結し、ＰＥＳパケット７０１を構成する。ＰＩＤフィルタ２００２は、ＴＳデコーダ１６０２内に一つ以上存在する。
【００８４】
デスクランブラ２００４はＰＩＤフィルタ２００２が出力するＰＥＳパケット、ＭＰＥＧ２セクションに対して暗号解除を行う。ＰＥＳパケット及びＭＰＥＧ２セクションは暗号化された場合も図７及び図８同様に分割されて伝送される。デスクランブラ２００４は、ＣＰＵ１６０６のＰＩＤ指定により、暗号化されたＰＥＳパケット及びＭＰＥＧ２セクションを伝送するＴＳパケットを特定することができ、その上でＣＰＵ１６０６が指定する暗号解除鍵を用いて暗号解除処理を行う。デスクランブラ２００４は、暗号解除処理済みのＰＥＳパケットをＡＶデコーダ２００５へ、暗号解除処理済みのＭＰＥＧ２セクションをセクションフィルタ２００３へそれぞれ出力する。暗号解除は暗号化されたＰＥＳパケット及びＭＰＥＧ２セクションにのみ適用される処理であり、デスクランブラ２００４はＣＰＵ１６０６の指示により、必要な場合のみＰＩＤフィルタからＰＥＳパケット及びＭＰＥＧ２セクションを入力され、暗号解除処理を行う。スクランブルされていないＰＥＳパケット及びＭＰＥＧ２セクションについては、ＰＩＤフィルタから直接ＡＶデコーダ２００５及びセクションフィルタ２００３にそれぞれ出力される。デスクランブラ２００４はＴＳデコーダ１６０２内に一つ以上存在する。
【００８５】
セクションフィルタ２００３は、入力されたＭＰＥＧ２セクションの中から、ＣＰＵ１６０６が指定するセクションフィルタ条件に合致するＭＰＥＧ２セクションを抽出し、１次記憶部２００７にＤＭＡ転送する。１次記憶部２００７に保持されたＭＰＥＧ２セクションはＣＰＵ１６０６によって読み出され、利用される。例えば、図１０においてチューニング情報を保持するＭＰＥＧ２セクションを取得する場合を例にとる。ＣＰＵ１６０６はまずＰＩＤフィルタ２００２にＰＩＤ１６を設定し、セクションを取得するように要求を出す。ＰＩＤフィルタ２００２はＰＩＤが１６であるＴＳパケットからセクションを抽出し、セクションフィルタ２００３に提供する。次にＣＰＵ１６０６はｔａｂｌｅ＿ｉｄが６４であるセクションを抽出するようにセクションフィルタ２００３に対して要求する。セクションフィルタ２００３はＰＩＤフィルタ２００２によって入力されるＭＰＥＧ２セクションの中からｔａｂｌｅ＿ｉｄが６４であるセクションを抽出し、１次記憶部２００７にＤＭＡ転送する。セクションフィルタ２００３はＴＳデコーダ１６０２内に一つ以上存在する。
【００８６】
ＡＶデコーダ２００５は、ＡＶデコーダ１６０３と対応し、ＰＥＳパケットを入力、ａｕｄｉｏ信号をディスプレイ１６０５に出力しｖｉｄｅｏ信号をディスプレイ／スピーカ２００６に出力する。ディスプレイ／スピーカ２００６はディスプレイ１６０５及びスピーカ１６０４に対応し、ｖｉｄｅｏ信号を入力としてディスプレイ１６０５に映像を出力し、ａｕｄｉｏ信号を入力とし、スピーカ１６０４に音声を出力する。
【００８７】
１次記憶部２００７は１次記憶部１６０８と対応し、ＭＰＥＧ２セクションを入力とし、ＣＰＵ１６０６が実行するプログラムに対してその内容の参照を可能とする。
【００８８】
図２０の表現を用いて、映像及び音声をそれぞれディスプレイ及びスピーカに出力する手続きを例示する。放送受信装置に入力された放送信号は、まず、チューナ２００１によってＭＰＥＧ２トランスポートストリームに復調される。次にＰＩＤフィルタ２００２によって、ＣＰＵ１６０６が指定したＰＩＤを持つＴＳパケットが伝送する、映像及び音声情報を内包するＰＥＳパケットが抽出される。必要であればＰＥＳパケットはデスクランブラ２００４に送信され、暗号解除処理が施される。その後、ＰＥＳパケットはＡＶデコーダ２００５に入力され、デコードされてａｕｄｉｏ信号及びｖｉｄｅｏ信号が出力される。その後、ａｕｄｉｏ信号及びｖｉｄｅｏ信号はディスプレイ及びスピーカ２００６に入力され、映像及び音声の再生を行うことができる。
【００８９】
図２０の表現を用いて、番組編成情報等のデータを放送信号から抽出するための手続きを例示する。放送受信装置に入力された放送信号は、まず、チューナ２００１によってＭＰＥＧ２トランスポートストリームに復調される。次にＰＩＤフィルタ２００２によって、ＣＰＵ１６０６が指定したＰＩＤを持つＴＳパケットが伝送する、データを内包するＭＰＥＧ２セクションが抽出される。必要であればＭＰＥＧ２セクションはデスクランブラ２００４に送信され暗号解除処理が施される。さらに、ＭＰＥＧ２セクションはセクションフィルタ２００３に入力され、ＣＰＵ１６０６が指定したセクションフィルタ条件に合致するＭＰＥＧ２セクションのみが出力される。その後、ＭＰＥＧ２セクションは、１次記憶部２００７に入力され、ＣＰＵ１６０６に提供される。
【００９０】
なお図２０も図１６同様、自身がディスプレイ／スピーカ２００６を有する放送受信装置として概念図化されているが、ディスプレイ／スピーカ２００６は放送受信装置が内包せず、外部に存在するタイプもある。どちらのタイプに対しても本発明は適用可能である。また、図２０が表す概念図では、デスクランブラ２００４はＴＳデコーダ１６０２内に存在するが、ハードウェア構成によっては、ＴＳデコーダ外部に存在することもある。その場合でも本発明は適用可能である。
【００９１】
次に図１８に表される、アダプタが物理的に接続されるハードウェア構成に対応する、概念図を図２１に示す。２１００は端末装置であり、チューナ２１０１、ＰＩＤフィルタ２１０２，セクションフィルタ２００３、ＡＶデコーダ２００５、ディスプレイ／スピーカ２００６、１次記憶部２００７が存在する。さらに、アダプタ１８１１が存在し、デスクランブラ２１０４が存在する。図２０の場合と同一の番号で識別されるデバイスは、図２０の場合と同等の機能を有するため、説明を省略する。図２０における端末と異なるのはデスクランブラの接続箇所と機能である。図２０においては、デスクランブラはＴＳデコーダ１６０２内に存在し、ＣＰＵ１６０６が指定する暗号解除鍵を用いて、ＰＩＤフィルタ２００２が出力するＰＥＳパケット及びＭＰＥＧ２セクションの暗号解除を行う。それに対し、図２１においては、デスクランブラ２１０４はチューナ２１０１と接続され、チューナ２１０１が復調したＭＰＥＧ２トランスポートストリームが入力される。デスクランブラ２１０４はＣＰＵ１８０６が指定するＰＩＤをもつＴＳパケットを抽出し、自身でＭＰＥＧ２トランスポートストリーム中より暗号解除に必要な鍵を抽出し、暗号解除を行う。デスクランブラ２１０４が暗号解除処理を行ったＭＰＥＧ２トランスポートストリームはＴＳデコーダに入力され、それ以降は図２０と同様に処理が流れる。ＰＩＤフィルタ２１０２は、デスクランブラ２１０４から入力されたＭＰＥＧ２トランスポートストリームに対して、ＴＳパケットの抽出及びＰＥＳパケット、ＭＰＥＧ２セクションの構成が可能である。
【００９２】
図１９に表すＣａｂｌｅＣＡＲＤが存在するハードウェア構成に関してはＩｎ−Ｂａｎｄにて伝送される信号の処理に関しては図２１に表されるのと同様であるため、説明は省略する。
【００９３】
ここまでは、本発明に関するハードウェアの構成例に関して述べたが、以降、端末装置上でのプログラム動作手続きについて述べる。図２２は、ＲＯＭ１６０９に記憶され、ＣＰＵ１６０６に実行されるプログラムの構成図の一例である。
【００９４】
プログラム２２００は、複数のサブプログラムで構成され、具体的にはＯＳ２２０１、ＥＰＧ２２０２、ＪａｖａＶＭ２２０３、サービスマネージャ２２０４、Ｊａｖａライブラリ２２０５で構成される。
【００９５】
ＯＳ２２０１は、端末装置１６００の電源が投入されると、ＣＰＵ１６０６が起動するサブプログラムである。ＯＳ２２０１は、オペレーティングシステムの略であり、Ｌｉｎｕｘ、Ｗｉｎｄｏｗｓ（登録商標）等が一例である。ＯＳ２２０１は、他のサブプログラムを並行して実行するカーネル２２０１ａ及びライブラリ２２０１ｂで構成される公知の技術の総称であり、詳細な説明は省略する。本実施の形態においては、ＯＳ２２０１のカーネル２２０１ａは、ＥＰＧ２２０２とＪａｖａＶＭ２２０３をサブプログラムとして実行する。また、ライブラリ２２０１ｂは、これらサブプログラムに対して、端末装置１６００が保持する構成要素を制御するための複数の機能を提供する。
【００９６】
機能の一例として、チューニング機能を紹介する。チューニング機能は、他のサブプログラムから周波数を含むチューニング情報を受け取り、それをチューナ１６０１に引き渡す。チューナ１６０１は与えられたチューニング情報に基づき復調処理を行い、復調したＭＰＥＧ２トランスポートストリームをＴＳデコーダ１６０２に引き渡すことができる。この結果、他のサブプログラムはライブラリ２２０１ｃを通してチューナ１６０１を制御することができる。
【００９７】
ＥＰＧ２２０２は、ユーザーに番組一覧を表示及び、ユーザーからの入力を受け付ける番組表示部２２０２ａと、チャンネル選局を行う再生部２２０２ｂで構成される。ここで、ＥＰＧはＥｌｅｃｔｒｉｃ  Ｐｒｏｇｒａｍ  Ｇｕｉｄｅの略である。ＥＰＧ２２０２は、端末装置１６００の電源が投入されると、カーネル２２０１ａによって起動される、起動されたＥＰＧ２２０２の内部では、番組表示部２２０２ａが端末装置１６００の入力部１６１０を通して、ユーザーからの入力を待つ。ここで、入力部１６１０が図１７で示されるフロントパネルで構成されている場合、ユーザーが、入力部１６１０のＥＰＧボタン１７０７を押下すると、ＥＰＧボタンの識別子がＣＰＵ１６０６に通知される。ＣＰＵ１６０６上で動作するサブプログラムであるＥＰＧ２２０２の番組表示部２２０２ａは、この識別子を受け取り、番組情報をディスプレイ１６０５に表示する。図２３（１）及び（２）は、ディスプレイ１６０５に表示された番組表の一例である。図２３（１）を参照して、ディスプレイ１６０５には、格子状に番組情報が表示されている。列２３０１には、時刻情報が表示されている。列２３０２には、チャンネル名「チャンネル１」と、列２３０１の時刻に対応する時間帯に放映される番組が表示されている。「チャンネル１」では、９：００〜１０：３０に番組「ニュース９」が放映され、１０：３０〜１２：００は「映画ＡＡＡ」が放映されることを表す。列２３０３も列２３０２同様、チャンネル名「チャンネル２」と、列２３０１の時刻に対応する時間帯に放映される番組が表示されている。９：００〜１１：００に番組「映画ＢＢＢ」が放映され、１１：００〜１２：００は「ニュース１１」が放映される。２３３０は、カーソルである。カーソル２３３０は、フロントパネル１７００の左カーソル１７０３と右カーソル１７０４を押下すると移動する。図２３（１）の状態で、右カーソル１７０４を押下すると、カーソル２３３０は右に移動し、図２３（２）のようになる。また、図２３（２）の状態で、左カーソル１７０３を押下すると、カーソル２３３０は左に移動し、図２３（１）のようになる。
【００９８】
図２３（１）の状態で、フロントパネル１７００のＯＫボタン１７０５が押下されると、番組表示部２２０２ａは、「チャンネル１」のチャンネル識別子を再生部２２０２ｂに通知する。図２３（２）の状態で、フロントパネル１７００のＯＫボタン１７０５が押下されると、番組表示部２２０２ａは、「チャンネル２」のチャンネル識別子を再生部２２０２ｂに通知する。ここで、チャンネル識別子は、１つのチャンネルを一意に識別する識別子であり、一般に、一つのサービスを表す。チャンネル識別子とサービスとの関係については後述する。
【００９９】
また、番組表示部２２０２ａは、表示する番組情報を、放送局側システム１０１から定期的に、１次記憶部１６０８または２次記憶部１６０７に記憶しておく。一般的に、放送局側システムからの番組情報の取得は時間が掛かる。入力部１６１０のＥＰＧボタン１７０７が押下された時、１次記憶部１６０８または２次記憶部１６０７に予め保存された番組情報を表示することで、素早く番組表を表示することができる。
【０１００】
再生部２２０２ｂは、受け取ったチャンネル識別子を用いて、チャンネルを再生する。チャンネル識別子とチャンネルの関係は、チャンネル情報として、２次記憶部１６０７に予め格納されている。図２４は２次記憶部１６０７に格納されているチャンネル情報の一例である。チャンネル情報は表形式で格納されている。列２４０１は、チャンネル識別子である。列２４０２は、チャンネル名である。列２４０３はチューニング情報である。ここで、チューニング情報は周波数や転送レート、符号化率などを含み、チューナ１６０１に与える値である。列２４０４はプログラムナンバーである。行２４１１〜２４１４の各行は、各チャンネル識別子、チャンネル名、チューニング情報の組となる。行２４１１はチャンネル識別子が「１」、チャンネル名が「チャンネル１」、チューニング情報に周波数「１５０ＭＨｚ」、プログラムナンバーが「１０１」を含む組となっている。再生部２２０２ｂは、チャンネルの再生を行うため、受け取ったチャンネル識別子をそのままサービスマネージャに引き渡す。
【０１０１】
また、再生部２２０２ｂは、再生中に、ユーザーがフロントパネル１７００の上カーソル１７０１と下カーソル１７０２を押下すると、入力部１６１０からＣＰＵ１６０６を通して、押下された通知を受け取り、再生しているチャンネルを変更する。まず、再生部２２０２ｂは、１次記憶部１６０８に現在再生中のチャンネル識別子を記憶する。図２５（１）（２）及び（３）は、１次記憶部１６０８に保存しているチャンネル識別子の例である。図２５（１）ではチャンネル識別子「３」が記憶されており、図２４を参照し、チャンネル名「ＴＶ  ３」のチャンネルが再生中であることを示す。図２５（１）の状態で、ユーザーが上カーソル１７０１を押下すると再生部２２０２ｂは、図２４のチャンネル情報を参照し、表中の前のチャンネルであるチャンネル名「チャンネル２」のチャンネルに再生を切り変えるため、サービスマネージャにチャンネル名「チャンネル２」のチャンネル識別子「２」を引き渡す。同時に、１次記憶部１６０８に記憶されているチャンネル識別子「２」に書き換える。図２５（２）は、チャンネル識別子が書き換えられた状態を表す。また、図２５（１）の状態で、ユーザーが下カーソル１７０２を押下すると再生部２２０２ｂは、図２４のチャンネル情報を参照し、表中の次のチャンネルであるチャンネル名「ＴＶ  Ｊａｐａｎ」のチャンネルに再生を切り変えるため、サービスマネージャにチャンネル名「ＴＶ  Ｊａｐａｎ」のチャンネル識別子「４」を引き渡す。同時に、１次記憶部１６０８に記憶されているチャンネル識別子「４」に書き換える。図２５（３）は、チャンネル識別子が書き換えられた状態を表す。
【０１０２】
ＪａｖａＶＭ２２０３は、Ｊａｖａ（ＴＭ）言語で記述されたプログラムを逐次解析し実行するＪａｖａバーチャルマシンである。Ｊａｖａ言語で記述されたプログラムはバイトコードと呼ばれる、ハードウエアに依存しない中間コードにコンパイルされる。Ｊａｖａバーチャルマシンは、このバイトコードを実行するインタープリタである。また、一部のＪａｖａバーチャルマシンは、バイトコードをＣＰＵ１６０６が理解可能な実行形式に翻訳してから、ＣＰＵ１６０６に引渡し、実行することも行う。ＪａｖａＶＭ２２０３は、カーネル２２０１ａに実行するＪａｖａプログラムを指定され起動される。本実施の形態では、カーネル２２０１ａは、実行するＪａｖａプログラムとしてサービスマネージャ２２０４を指定する。Ｊａｖａ言語の詳細は、書籍「Ｊａｖａ  Ｌａｎｇｕａｇｅ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ（ＩＳＢＮ  ０−２０１−６３４５１−１）」等の多くの書籍で解説されている。ここでは、その詳細を省略する。また、ＪａｖａＶＭ自体の詳細な動作などは、「Ｊａｖａ  Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ（ＩＳＢＮ  ０−２０１−６３４５１―Ｘ）」等の多くの書籍で解説されている。ここでは、その詳細を省略する。
【０１０３】
サービスマネージャ２２０４は、Ｊａｖａ言語で書かれたＪａｖａプログラムであり、ＪａｖａＶＭ１６０３によって逐次実行される。サービスマネージャ２２０４は、ＪＮＩ（Ｊａｖａ  Ｎａｔｉｖｅ  Ｉｎｔｅｒｆａｃｅ）を通して、Ｊａｖａ言語で記述されていない他のサブプログラムを呼び出したり、または、呼び出されたりすることが可能である。ＪＮＩに関しても、書籍「Ｊａｖａ  Ｎａｔｉｖｅ  Ｉｎｔｅｒｆａｃｅ」等の多くの書籍で解説されている。ここでは、その詳細を省略する。
【０１０４】
サービスマネージャ２２０４は、ＪＮＩを通して、再生部２２０２ｂよりチャンネル識別子を受け取る。
【０１０５】
サービスマネージャ２２０４は、最初にＪａｖａライブラリ２２０５の中にあるＴｕｎｅｒ２２０５ｃに、チャンネル識別子を引き渡し、チューニングを依頼する。Ｔｕｎｅｒ２２０５ｃは、２次記憶部１６０７が記憶するチャンネル情報を参照し、チューニング情報を獲得する。今、サービスマネージャ２２０４がチャンネル識別子「１」をＴｕｎｅｒ２２０５ｃに引き渡すと、Ｔｕｎｅｒ２２０５ｃは、図２４の行２４１２を参照して、対応するチューニング情報「１５０ＭＨｚ」を獲得する。Ｔｕｎｅｒ２２０５ｃは、ＯＳ２２０１のライブラリ２２０１ｂを通してチューナ１６０１にチューニング情報を引き渡す。チューナ１６０１は与えられたチューニング情報に従って放送局側システム１０１から送信されてきた信号を復調し、ＴＳデコーダ１６０２に引き渡す。
【０１０６】
次にサービスマネージャ２２０４は、ＣＡライブラリ２２０６に暗号解除を依頼する。ＣＡライブラリ２２０６は、ＯＳ２２０１のライブラリ２２０１ｂを通して暗号解除に必要な情報をＴＳデコーダ１６０２内のデスクランブラ２００４に与える。
【０１０７】
次にサービスマネージャ２２０４は、Ｊａｖａライブラリ２２０５の中にあるＪＭＦ２２０５ａにチャンネル識別子を与え、映像・音声の再生を依頼する。
【０１０８】
まず、最初にＪＭＦ２２０５ａは、再生すべき映像と音声を特定するためのＰＩＤをＰＡＴ、ＰＭＴから取得する。ＪＭＦ２２０５ａは、ＰＡＴを取得するため、ＯＳ２２０１のライブラリ２２０１ｂを通して、ＴＳデコーダ１６０２にＰＩＤ「０」とＣＰＵ１６０６を指定する。ＴＳデコーダ１６０２がＰＩＤ「０」及びｔａｂｌｅ＿ｉｄ「０」でフィルタリングを行い、１次記憶部１６０８を通してＣＰＵ１６０６に引き渡すことで、ＪＭＦ２２０５ａは、ＰＡＴを収集する。ここで、ＰＡＴの例として図１２を挙げる。今、ＪＭＦ２２０５ａに与えられたチャンネル識別子が「１」とすると、ＪＭＦ２２０５ａは、図２４の行２４１２を参照して、対応するプログラムナンバー「１０１」を獲得し、次に、図１２のＰＡＴの行１２１１を参照し、プログラムナンバー「１０１」に対応するＰＩＤ「５０１」を獲得する。ＪＭＦ２２０５ａは、ＰＭＴを取得するため、ＯＳ２２０１のライブラリ２２０１ｂを通して、ＴＳデコーダ１６０２にＰＡＴより取得したＰＩＤとｔａｂｌｅ＿ｉｄ「２」を指定する。ここで、指定するＰＩＤは「５０１」とする。ＴＳデコーダ１６０２がＰＩＤ「５０１」及びｔａｂｌｅ＿ｉｄ「２」でフィルタリングを行い、１次記憶部１６０８を通してＣＰＵ１６０６に引き渡すことで、ＪＭＦ２２０５ａはＰＭＴの収集をする。ここでＰＭＴの例として図１１を挙げる。ＪＭＦ２２０５ａは、ＰＭＴから再生する映像と音声のＰＩＤを獲得する。図１１を参照して、ＪＭＦ２２０５ａは、行１１１１から音声のＰＩＤ「５０１１」を、行１１１２から映像のＰＩＤ「５０１２」を獲得する。
【０１０９】
次に、ＪＭＦ２２０５ａは、ＯＳ２２０１のライブラリ２２０１ｂを通して、獲得した映像／音声のＰＩＤと出力先としてＡＶデコーダ１６０３を、ＴＳデコーダ１６０２に与える。ＴＳデコーダ１６０２は与えられたＰＩＤに基づいて、フィルタリングを行う。ここではＰＩＤ「５０１１」「５０１２」のＴＳパケットをＡＶデコーダ１６０３に引き渡す。ＡＶデコーダ１６０３は、与えられたＰＥＳパケットのデコードを行いディスプレイ１６０５、スピーカ１６０４を通して映像／音声を再生する。
【０１１０】
最後にサービスマネージャ２２０４は、Ｊａｖａライブラリ２２０５の中にあるＡＭ２２０５ｂにチャンネル識別子を与え、データ放送再生を依頼する。ここで、データ放送再生とは、ＭＰＥＧ２トランスポートストリームに含まれるＪａｖａプログラムを抽出し、ＪａｖａＶＭ２２０３に実行させることである。ＭＰＥＧ２トランスポートストリームにＪａｖａプログラムを埋め込む方法は、ＭＰＥＧ規格書  ＩＳＯ／ＩＥＣ１３８１８−６に記述されたＤＳＭＣＣという方式を用いる。ここではＤＳＭＣＣの詳細な説明は省略する。ＤＳＭＣＣ方式は、ＭＰＥＧ２トランスポートストリームのＴＳパケットの中に、コンピュータで使用されているディレクトリやファイルで構成されるファイルシステムをＭＰＥＧ２セクションを用いてエンコードする方法を規定している。また、実行するＪａｖａプログラムの情報はＡＩＴと呼ばれる形式で、ＭＰＥＧ２トランスポートストリームのＴＳパケットの中に埋め込まれ、ｔａｂｌｅ＿ｉｄが「０ｘ７４」であるＭＰＥＧ２セクションとして送信されている。ＡＩＴは、ＤＶＢ−ＭＨＰ規格（正式には、ＥＴＳＩ  ＴＳ  １０１  ８１２  ＤＶＢ−ＭＨＰ仕様Ｖ１．０．２）の１０章に定義されている、Ａｐｐｌｉｃａｔｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｔａｂｌｅの略である。
【０１１１】
ＡＭ２２０５ｂは、まず、ＡＩＴを獲得するため、ＪＭＦ２２０５ａ同様ＰＡＴ、ＰＭＴを取得し、ＡＩＴが格納されているＴＳパケットのＰＩＤを獲得する。今、与えられたチャンネル識別子が「１」で、図１２のＰＡＴ、図１１のＰＭＴが送信されているとすると、ＪＭＦ２２０５ａと同様の手順で、図１１のＰＭＴを獲得する。ＡＭ２２０５ｂは、ＰＭＴからストリーム種別が「データ」で補足情報として「ＡＩＴ」を持つエレメンタリ−ストリームからＰＩＤを抽出する。図１１を参照して、行１１１３のエレメンタリ−ストリームが該当し、ＰＩＤ「５０１３」を獲得する。
【０１１２】
ＡＭ２２０５ｂは、ＯＳ２２０１のライブラリ２２０１ｂを通してＴＳデコーダ１６０２にＡＩＴのＰＩＤとｔａｂｌｅ＿ｉｄ「０ｘ７４」を与える。ＴＳデコーダ１６０２は、与えられたＰＩＤ及びｔａｂｌｅ＿ｉｄでフィルタリングを行い、１次記憶部１６０８を通してＣＰＵ１６０６に引き渡す。この結果、ＡＭ２２０５ｂは、ＡＩＴの収集することができる。図２６は、収集したＡＩＴの情報の一例を模式的に表した表である。列２６０１はＪａｖａプログラムの識別子である。列２６０２はＪａｖａプログラムの制御情報である。制御情報には「ａｕｔｏｓｔａｒｔ」「ｐｒｅｓｅｎｔ」「ｋｉｌｌ」などがあり、「ａｕｔｏｓｔａｒｔ」は即時に端末装置１６００がこのＪａｖａプログラムを自動的に実行することを意味し、「ｐｒｅｓｅｎｔ」は自動実行しないことを意味し、「ｋｉｌｌ」はＪａｖａプログラムを停止することを意味する。列２６０３は、ＤＳＭＣＣ方式でＪａｖａプログラムを含んでいるＰＩＤを抽出するためのＤＳＭＣＣ識別子である。列２６０４はＪａｖａプログラムのプログラム名である。行２６１１と２６１２は、Ｊａｖａプログラムの情報の組である。行２６１１で定義されるＪａｖａプログラムは、Ｊａｖａプログラムの識別子「３０１」、制御情報「ａｕｔｏｓｔａｒｔ」、ＤＳＭＣＣ識別子「１」、プログラム名「ａ／ＴｏｐＸｌｅｔ」の組である。行２６１２で定義されるＪａｖａプログラムは、Ｊａｖａプログラムの識別子「３０２」、制御情報「ｐｒｅｓｅｎｔ」、ＤＳＭＣＣ識別子「１」、プログラム名「ｂ／ＧａｍｅＸｌｅｔ」の組である。ここで二つのＪａｖａプログラムは同じＤＳＭＣＣ識別子を持つが、これは１つのＤＳＭＣＣ方式でエンコードされたファイルシステム内に二つのＪａｖａプログラムが含まれていることを表す。ここでは、Ｊａｖａプログラムに対して四つの情報しか規定しないが、実際にはより多くの情報が定義される。詳細はＤＶＢ−ＭＨＰ規格を参照されたい。
【０１１３】
ＡＭ２２０５ｂは、ＡＩＴの中から「ａｕｔｏｓｔａｒｔ」のＪａｖａプログラムを見つけ出し、対応するＤＳＭＣＣ識別子及びＪａｖａプログラム名を抽出する。図２６を参照して、ＡＭ２２０５ｂは行２６１１のＪａｖａプログラムを抽出し、ＤＳＭＣＣ識別子「１」及びＪａｖａプログラム名「ａ／ＴｏｐＸｌｅｔ」を獲得する。
【０１１４】
次にＡＭ２２０５ｂは、ＡＩＴから取得したＤＳＭＣＣ識別子を用いて、ＪａｖａプログラムをＤＳＭＣＣ方式で格納しているＴＳパケットのＰＩＤをＰＭＴから獲得する。具体的には、ＰＭＴの中でストリーム種別が「データ」で、補足情報のＤＳＭＣＣ識別子が合致するエレメンタリ−ストリームのＰＩＤを取得する。
【０１１５】
今、ＤＳＭＣＣ識別子が「１」であり、ＰＭＴが図１１とすると、行１１１４のエレメンタリ−ストリームが合致し、ＰＩＤ「５０１４」を取り出す。
【０１１６】
ＡＭ２２０５ｂは、ＯＳ２２０１のライブラリ２２０１ｂを通してＴＳデコーダ１６０２にＤＳＭＣＣ方式でデータが埋めこまれたＭＰＥＧ２セクションを伝送するＴＳパケットのＰＩＤ及びセクションフィルタ条件を指定する。ここでは、ＰＩＤ「５０１４」を与える。ＴＳデコーダ１６０２は与えられたＰＩＤを用いてＤＳＭＣＣ用ＭＰＥＧ２セクションのフィルタリングを行い、１次記憶部１６０８を通してＣＰＵ１６０６に引き渡す。この結果、ＡＭ２２０５ｂは、必要なＤＳＭＣＣ用ＭＰＥＧ２セクションを収集することができる。ＡＭ２２０５ｂは、収集したＭＰＥＧ２セクションから、ＤＳＭＣＣ方式に従ってファイルシステムを復元し、１次記憶部１６０８に保存する。ＭＰＥＧ２トランスポートストリーム中のＴＳパケットからファイルシステム等のデータを取り出し１次記憶部１６０８、２次記憶部１６０７等の記憶手段に保存することを以降、ダウンロードと呼ぶ。
【０１１７】
図２７は、ダウンロードしたファイルシステムの一例である。図中、丸はディレクトリを四角はファイルを表し、２７０１はルートディレクトリ、２７０２はディレクトリ「ａ」，２７０３はディレクトリ「ｂ」，２７０４はファイル「ＴｏｐＸｌｅｔ．ｃｌａｓｓ」、２７０５はファイル「ＧａｍｅＸｌｅｔ．ｃｌａｓｓ」である。
【０１１８】
次にＡＭ２２０５ｂは、１次記憶部１６０８にダウンロードしたファイルシステム中から実行するＪａｖａプログラムをＪａｖａＶＭ２２０３に引き渡す。今、実行するＪａｖａプログラム名が「ａ／ＴｏｐＸｌｅｔ」とすると、Ｊａｖａプログラム名の最後に「．ｃｌａｓｓ」を付加したファイル「ａ／ＴｏｐＸｌｅｔ．ｃｌａｓｓ」が実行すべきファイルとなる。「／」はディレクトリやファイル名の区切りであり、図２７を参照して、ファイル２７０４が実行すべきＪａｖａプログラムである。次にＡＭ２２０５ｂは、ファイル２７０４をＪａｖａＶＭ２２０３に引き渡す。
【０１１９】
なお、ＡＭ２２０５ｂが実行すべきＪａｖａプログラムを参照する手法はＡＩＴによるものだけではない。米国ケーブルシステムで利用されることが想定されるＯＣＡＰでは図３に記載されるＯＯＢにてアプリケーションの参照情報を記載するＸＡＩＴが利用されている。その他、ＲＯＭ１６０９に予め記録されているものを起動する、２次記憶１６０７にダウンロードして記憶したものを起動する、などの方法も考えられる。
【０１２０】
なお、ＪａｖａプログラムはＤＳＭＣＣ方式でＭＰＥＧ２トランスポートストリームによって送信されるものをダウンロードするだけでなく、ネットワークで端末装置と接続されたサーバからダウンロードしたり、ＤＶＤ、ＢＤ、ＳＤカードなどの持ち運び可能なメディアからロードしたりする方法も考えられ、その場合も本発明は適用可能である。
【０１２１】
ＪａｖａＶＭ２２０３は、引き渡されたＪａｖａプログラムを実行する。
【０１２２】
以上のような手続きで、サービスマネージャ２２０４はチャンネル識別子を受け取ってチューニング、暗号解除、映像・音声再生、Ｊａｖａプログラム起動を行う。この一連の手続きを、まとめて「サービスの選択」と呼ぶ。サービスの選択によって再生された映像・音声は、そのサービスに属している、と表現できる。同様に、サービスの選択によって起動されたＪａｖａプログラムは、そのサービスに属している、と表現できる。
【０１２３】
サービスマネージャ２２０４は、他のチャンネル識別子を受け取ると、Ｊａｖａライブラリ２２０５に含まれる各ライブラリを通して再生している映像・音声及びＪａｖａ（ＴＭ）プログラムの実行を、同じくＪａｖａ（ＴＭ）ライブラリ２２０５に含まれる各ライブラリを通して停止し、新たに受け取ったチャンネル識別子に基づいて、映像・音声の再生及びＪａｖａ（ＴＭ）プログラムの実行を行う。  一般に、チャンネル識別子は一つのサービスを表す。本実施の形態では、図２４に表されるようなチャンネル情報がチャンネル識別子からプログラムナンバーを求める際に利用されている。チャンネル識別子からプログラムナンバーの解決方法として代表的なのは、ＳＩ（Ｓｅｒｖｉｃｅ  Ｉｎｆｏｒｍａｔｉｏｎ）が用いられる方法である。ＳＩはＥＰＧ等に利用される番組編成情報であり、各放送環境によって規定され、伝送される。代表例として欧州における放送環境ではＥＮ４００−３６８に規定されるＤＶＢ−ＳＩが利用される。また米国ケーブル放送環境ではＡＮＳＩ／ＳＣＴＥ６５に規定されるＳＩが利用される。これらＳＩにおいては、サービスを特定するための何らかの識別子が既に規定されており、その識別子からプログラムナンバーを解決するための仕組みが既に考慮されている。チャンネル識別子は、これらＳＩが規定した識別子を利用する。その場合、放送受信装置は、ＳＩを利用し、チャンネル識別子からＰＭＴの取得に用いるプログラムナンバーへの解決を行う。その場合、本発明はそのＳＩの形態には依存しないため、どのようなＳＩが用いられても適用可能である。図２４のチャンネル情報も、ＳＩを利用して取得される。
【０１２４】
Ｊａｖａライブラリ２２０５は、ＲＯＭ１６０９に格納されている複数のＪａｖａライブラリの集合である。本実施の形態では、Ｊａｖａライブラリ２２０５は、ＪＭＦ２２０５ａ，ＡＭ２２０５ｂ，Ｔｕｎｅｒ２２０５ｃ，ＤＳＭ−ＣＣ２２０５ｄ、Ｓｅｃｔｉｏｎ  Ｆｉｌｔｅｒ（ＳＦ）２２０５ｅ、サービスマネージャ管理ライブラリ２２０５ｆを含んでいる。Ｊａｖａプログラムはこれらライブラリを利用しながら、Ｊａｖａプログラムの機能を実現する。
【０１２５】
またＪａｖａプログラムはサービスマネージャ管理ライブラリ２２０５ｆを利用することで、サービスマネージャ２２０４によるサービスの選択を行うことが可能である。具体的には、Ｊａｖａプログラムがサービスマネージャ管理ライブラリ２２０５ｆにチャンネル識別子を渡すと、サービス管理ライブラリは受け取ったチャンネル識別子をサービスマネージャ２２０４に引き渡す。その後はＥＰＧ２２０２を用いたチャンネル選択時と同様にサービスマネージャ２２０４によるサービスの選択が行われ、チャンネル識別子に対応するプログラムナンバーによって識別されるＰＭＴに記載される情報に基づき、そのサービスに属する映像・音声が再生され、そのサービスに属するＪａｖａプログラムが起動される。
【０１２６】
このように、ＪａｖａプログラムはＪａｖａライブラリに含まれるサービスマネージャ管理ライブラリ２２０５ｆを利用することで、サービスの選択を行うことができる。
【０１２７】
ここまで、サービスマネージャ２２０４によるサービスの選択、つまり、受け取ったチャンネル識別子に従い、チューニング、暗号解除、映像・音声再生、Ｊａｖａプログラム起動を行う動作について述べた。
【０１２８】
次に本発明の主要機能であるサービスのＲｅｃｏｒｄ・Ｐｌａｙｂａｃｋ機能について説明する。
【０１２９】
ここで、サービスのＲｅｃｏｒｄとは、サービスに含まれる映像・音声及びサービスに含まれるＪａｖａプログラムなどを、ＨＤＤ、ＢＤ、ＤＶＤやＳＤなどの半導体メモリ等の記録領域に蓄積することである。サービスのＰｌａｙｂａｃｋとは、既に記録領域に蓄積されたサービスに含まれる映像・音声の再生、及び、Ｊａｖａプログラムの起動である。
【０１３０】
なおここで、記録領域は、ＴＣＰ／ＩＰ接続、ＵＳＢ接続、ＩＥＥＥ１３９４接続、赤外線接続、等、何らかの方法で接続された別端末であってもよい。
【０１３１】
以降、図３６に示すように、サービスをＲｅｃｏｒｄする機能を有するレコーディングマネージャ３６０６を導入する。そして、サービスマネージャ２２０４は更に、サービスをＰｌａｙｂａｃｋする機能を備えるものとする。
【０１３２】
図２８は、サービスのＲｅｃｏｒｄ・Ｐｌａｙｂａｃｋ機能を備えるデジタル放送受信機の一般的なハードウェア構成を表すブロック図である。図２８において、端末装置２８００に搭載される図１６と同じ番号で識別されるデバイスは図１６の場合と同じ機能を有するため、説明を省略する。端末装置２８００は、ＡＶエンコーダ２８１１、多重器（ＴＳ  Ｍｕｌｔｉｐｌｅｘｅｒ等）２８１２を搭載する。
【０１３３】
ＡＶデコーダ１６０３はエンコードされた映像及び音声をデコードする機能を有するデバイスである。ＡＶデコーダ１６０３がデコードして得られたａｕｄｉｏ信号及びｖｉｄｅｏ信号は、サービスの選択時、及び、サービスのＰｌａｙｂａｃｋ時にはスピーカ１６０４、ディスプレイ１６０５に送信されるが、サービスのＲｅｃｏｒｄ時には  ＡＶエンコーダ２８１１へ送信される。
【０１３４】
ＡＶエンコーダ２８１１は、サービスのＲｅｃｏｒｄ時にＡＶデコーダ１６０３によってデコードされたａｕｄｉｏ信号及びｖｉｄｅｏ信号をエンコードする機能を有するデバイスである。ＡＶエンコーダ２８１１がエンコードして得られた映像及び音声は、多重器２８１２へ送信される。ここで、ＡＶエンコーダによるａｕｄｉｏ信号及びｖｉｄｅｏ信号のエンコード形式は、ａｕｄｉｏ信号の場合はＭＰＥＧ２ａｕｄｉｏエンコーダによるＭＰＥＧ２ａｕｄｉｏ形式が、ｖｉｄｅｏ 信号の場合はＭＰＥＧ２ｖｉｄｅｏエンコーダによるＭＰＥＧ２ｖｉｄｅｏ形式が一般的だが、その他の形式であってもよい。
【０１３５】
多重器２８１２は、サービスのＲｅｃｏｒｄ時にＡＶエンコーダ２８１１から送信された映像及び音声を、ＭＰＥＧ２トランスポートストリームへ多重化する機能を有するデバイスである。なお多重器２８１２が多重化して得られるストリームの形式はＭＰＥＧ２トランスポートストリームに限定せず、その他の形式であっても良い。
【０１３６】
端末装置２８００に搭載されるＣＰＵ１６０６は、実行するプログラムの指示に従い、更に、ＡＶエンコーダ２８１１、多重器２８１２を制御する。
【０１３７】
なお、端末装置２８００に搭載されるＣＰＵ１６０６自身が、ＴＳデコード、ＡＶデコード、ＡＶエンコード及び多重化の全ての処理を行うシステムであっても、或いは、端末装置２８００に搭載されるＣＰＵ１６０６自身が、そのいくつかの組み合わせの処理を行うシステムであっても、本発明は実施可能である。
【０１３８】
なお、図２８に表されるハードウェア構成において、各デバイスは端末装置に出荷時にデフォルトで内包されているが、しかし、図２９及び図３０に示すように、図１８及び図１９に示す場合と同様にして、端末装置上に搭載されていないデバイスを追加するため、及び端末装置上に搭載されているデバイスの機能を向上させるため、追加したいデバイスを搭載したアダプタをさらに端末装置に付与してもよい。図２９及び図３０において、図２８、図１８及び図１９と同じ番号で識別されるデバイスは、図２８、図１８及び図１９の場合と同じ機能を有するため、説明を省略する。
【０１３９】
図２８、図２９、図３０に登場する各デバイスを利用して、放送受信装置は、放送信号に含まれて伝送される映像・音声を画面に出力する機能や、放送信号が含む番組編成情報などのデータを抽出し、ユーザに提示する機能、更に、放送信号に含まれて伝送される映像・音声や放送信号が含む各種データを抽出し記録領域に蓄積する機能や、記録領域に蓄積された映像・音声や各種データを画面に出力する機能等を実現する。
【０１４０】
次に、図２８に示すようなサービスのＲｅｃｏｒｄ・Ｐｌａｙｂａｃｋ機能を備えるデジタル放送受信機における、レコーディングマネージャ３６０６によるサービスのＲｅｃｏｒｄ処理について述べる。
【０１４１】
図３１、図３２にサービスＲｅｃｏｒｄ時における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図を示す。図３１、図３２において、図２０の場合と同一の番号で識別されるデバイスは、図２０の場合と同等の機能を有するため、説明を省略する。
【０１４２】
図３１において、端末装置３１００は、ＡＶエンコーダ３１１１、多重器３１１１、記録領域３１１３を有する。
【０１４３】
ＡＶエンコーダ３１１１はＡＶエンコーダ２８１１と対応し、ａｕｄｉｏ信号及びｖｉｄｅｏ信号を入力し、映像・音声のＰＥＳパケットを出力する。
【０１４４】
多重器３１１１は多重器２８１２と対応し、映像・音声のＰＥＳパケット、セクションデータを入力し、Ｒｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームを出力する。
【０１４５】
記録領域３１１３は２次記憶領域１６０７の全体または一部と対応し、Ｒｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームを入力し、蓄積する。
【０１４６】
図３２において、端末装置３２００は、ＡＶエンコーダ３１１１、多重器３１１１、記録領域３１１３を有する。
【０１４７】
ＡＶエンコーダ３１１１はＡＶエンコーダ２８１１と対応し、ａｕｄｉｏ信号及びｖｉｄｅｏ信号を入力し、映像・音声のＰＥＳパケットを出力する。
【０１４８】
多重器３１１１は多重器２８１２と対応し、映像・音声のＰＥＳパケットを入力し、Ｒｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームを出力する。
【０１４９】
記録領域３１１３は２次記憶領域１６０７の全体または一部と対応し、Ｒｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリーム、セクションデータを入力、蓄積する。
【０１５０】
次に図２９に表される、アダプタが物理的に接続されるハードウェア構成に対応する、概念図を図３５に示す。図３５において、図２１及び図２９と同一の番号で識別されるデバイスは、図２１及び図２９の場合と同等の機能を有するため、説明を省略する。
【０１５１】
ここで、サービスのＲｅｃｏｒｄ時における図３１に示す端末装置３１００上でのプログラム動作手続きは、ここでは、詳細な説明を省略する。図３１に示す端末装置においては、サービスのＲｅｃｏｒｄ時に、サービスに含まれる映像・音声、サービスに含まれるＪａｖａプログラム等セクションデータは全て、多重器が出力するＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームとして記録領域３１１３に蓄積される。
【０１５２】
次に、サービスのＲｅｃｏｒｄ時における、図３２に示す端末装置３２００上でのプログラム動作手続きについて述べる。図３６は、ＲＯＭ１６０９に記憶され、ＣＰＵ１６０６に実行されるプログラムの構成図の一例である。図３６において、図２２と同じ番号で識別される構成要素は図２２の場合と同じ機能を有するため、説明を省略する。プログラム３６００は、ＥＰＧ３６０２、Ｊａｖａライブラリ３６０５、レコーディングマネージャ３６０６を備える。ＥＰＧ３６０２は、録画部３６０２ｃを備え、Ｊａｖａライブラリ３６０５はレコーディングマネージャ管理ライブラリ３６０５ｇ、蓄積管理ライブラリ３６０５ｈを備える。  さらに蓄積管理ライブラリ３６０５ｈは、図３７（１）に示すように、データ記録部３７０１、データ管理部３７０２、データ取出部３７０３を備える。
【０１５３】
蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、指定されたデータをトランスポートストリームから獲得したファイルシステムや映像音声等のデータをタイムスタンプ等必要な情報を付して記録領域３１１３に蓄積する機能を有する。
【０１５４】
蓄積管理ライブラリ３６０５ｈのデータ管理部３７０２は、記録領域３１１３に蓄積されたデータ毎の格納場所及び必要なデータを管理する。
【０１５５】
蓄積管理ライブラリ３６０５ｈのデータ取出部３７０３は、ＤＳＭＣＣ識別子等の指定に従い記録領域３１１３に蓄積されたデータを取り出す機能を有する。
【０１５６】
図３７（２）及び（３）は、蓄積管理ライブラリ３６０５ｈのデータ管理部３７０２が管理する蓄積されたデータ毎の格納場所及び必要なデータの一例である。図３７（２）は蓄積管理ライブラリがファイルシステムを記録、管理、取り出しする場合における、蓄積管理ライブラリ３６０５ｈのデータ管理部３７０２が管理する蓄積されたファイルシステムの格納場所及び必要なデータの一例である。図３７（２）において、行３７２１〜行３７２３は記録領域３１１３に蓄積された各ファイルシステムの各Ｖｅｒｓｉｏｎを示す。列３７１１は記録領域３１１３に蓄積されたファイルシステムの名前、列３７１２はファイルシステムのＶｅｒｓｉｏｎ、列３７１３はファイルシステムのＶｅｒｓｉｏｎ毎のタイムスタンプ、列３７１４はファイルシステムと関連するチャンネル識別子、列３７１５はファイルシステムのＤＳＭＣＣ識別子、列３７１６はファイルシステムのＶｅｒｓｉｏｎ毎の記録領域３１１３における格納場所である。図３７（３）は蓄積管理ライブラリが映像音声を多重化して生成されたＲｅｃｏｒｄ用ストリームを記録、管理、取り出しする場合における、蓄積管理ライブラリ３６０５ｈのデータ管理部３７０２が管理する蓄積されたＲｅｃｏｒｄ用ストリームの格納場所及び必要なデータの一例である。図３７（３）において、行３７４１〜行３７４２は記録領域３１１３に蓄積された各Ｒｅｃｏｒｄ用ストリームを示す。列３７３１は記録領域３１１３に蓄積されたＲｅｃｏｒｄ用ストリームの名前、列３７３２はＲｅｃｏｒｄ用ストリームが含と関連するチャンネル識別子、列３７３３はＲｅｃｏｒｄ用ストリームの記録領域３１１３における格納場所である。
【０１５７】
蓄積管理ライブラリ３６０５ｈによる各データの詳細な記録方法、管理方法、取得方法、タイムスタンプ等必要なデータについては後述する。
【０１５８】
ＥＰＧ３６０２は、ＥＰＧ２２０２の構成に加え、番組表示部が受け付けたユーザからの入力に従い、指定されたチャンネルの録画（サービスＲｅｃｏｒｄ）を行う録画部３６０２ｃを備える。図３８及び図３９は、ユーザーが、入力部１６１０のＥＰＧボタン１７０７を押下した際に、ＣＰＵ１６０６上で動作するサブプログラムであるＥＰＧ３６０２の番組表示部２２０２ａがディスプレイ１６０５に表示した番組表の一例である。ＥＰＧ３６０２は、チャンネルの選択機能及びチャンネルの録画機能を備えることから、番組表示部２２０２ａは、例えば録画選択モードと視聴選択モードを提供するものとし図３８及び図３９は録画モードを提供指定している画面であるとする。図３８及び図３９において、図２３の場合と同じ番号を付した構成は、図２３の場合と同等の機能を有するため、説明を省略する。
【０１５９】
図３８及の状態で、フロントパネル１７００のＯＫボタン１７０５が押下されると、番組表示部２２０２ａは、「チャンネル１」のチャンネル識別子を録画部３６０２ｃに通知する。図３９の状態で、フロントパネル１７００のＯＫボタン１７０５が押下されると、番組表示部２２０２ａは、「チャンネル２」のチャンネル識別子を録画部３６０２ｃに通知する。ここで、サービスＲｅｃｏｒｄ・Ｐｌａｙｂａｃｋ機能を備えるデジタル放送受信機において、チャンネル識別子は、放送局から送信されるサービス及び記録領域３１１３に蓄積されたサービスから1サービスを一意に特定する識別子である。
【０１６０】
録画部３６０２ｃは、受け取ったチャンネル識別子を用いて、チャンネルを録画する。チャンネル識別子とチャンネルの関係は、図２４を参照して、先述のとおりである。録画部３６０２ｃは、チャンネルの録画を行うため、受け取ったチャンネル識別子をそのままレコーディングマネージャ３６０６に引き渡す。
【０１６１】
ＪａｖａＶＭ２２０３は、サービスＲｅｃｏｒｄ（チャンネルの録画）時において、実行するＪａｖａプログラムとしてレコーディングマネージャ３６０６を指定する。
【０１６２】
レコーディングマネージャ３６０６は、Ｊａｖａ言語で書かれたＪａｖａプログラムであり、ＪａｖａＶＭ１６０３によって逐次実行される。レコーディングマネージャ３６０６は、ＪＮＩ（Ｊａｖａ  Ｎａｔｉｖｅ  Ｉｎｔｅｒｆａｃｅ）を通して、Ｊａｖａ言語で記述されていない他のサブプログラムを呼び出したり、または、呼び出されたりすることが可能である。
【０１６３】
レコーディングマネージャ３６０６は、ＪＮＩを通して、録画部３６０２ｃよりチャンネル識別子を受け取る。
【０１６４】
レコーディングマネージャ３６０６は、最初にＪａｖａライブラリ２２０５の中にあるＴｕｎｅｒ２２０５ｃに、チャンネル識別子を引き渡し、チューニングを依頼する。ここで、サービスＲｅｃｏｒｄ時においてレコーディングマネージャ３６０６からチューニングを依頼された場合のＴｕｎｅｒ２２０５ｃの処理は、サービス選択時においてサービスマネージャ２２０４からチューニングを依頼された場合の処理と同等であるため説明を省略する。
【０１６５】
次にレコーディングマネージャ３６０６は、ＣＡライブラリ２２０６に暗号解除を依頼する。ここで、サービスＲｅｃｏｒｄ時においてレコーディングマネージャ３６０６から暗号解除を依頼された場合のＣＡライブラリ２２０６の処理は、サービス選択時においてサービスマネージャ２２０４から暗号解除を依頼された場合の処理と同等であるため説明を省略する。
【０１６６】
なお、レコーディングマネージャ３６０６から暗号解除を依頼されたＣＡライブラリ２２０６は、暗号解除後に独自の形式で暗号を掛けるなどの方法を取っても良い。
【０１６７】
なお、サービスＰｌａｙｂａｃｋ時において暗号解除する場合には、サービスＲｅｃｒｄ時において暗号解除せず、レコーディングマネージャ３６０６は、ＣＡライブラリ２２０６に暗号解除の依頼は行わない。
【０１６８】
なお、レコーディングマネージャ３６０６が、ＣＡライブラリ２２０６に暗号解除を依頼する依頼しないに係わらず本発明は実施可能である。  次にレコーディングマネージャ３６０６は、Ｊａｖａライブラリ３６０５の中にあるＪＭＦ２２０５ａにチャンネル識別子を与え、映像・音声の記録を依頼する。
【０１６９】
まず、最初にＪＭＦ２２０５ａは、記録すべき映像と音声を特定するためのＰＩＤをＰＡＴ、ＰＭＴから取得する。ここで、ＪＭＦがＪＭＦ２２０５ａは、ＰＡＴを取得するため、ＯＳ２２０１のライブラリ２２０１ｂを通して、ＴＳデコーダ１６０２にＰＩＤ「０」とＣＰＵ１６０６を指定する。ＴＳデコーダ１６０２がＰＩＤ「０」及びｔａｂｌｅ＿ｉｄ「０」でフィルタリングを行い、１次記憶部１６０８を通してＣＰＵ１６０６に引き渡すことで、ＪＭＦ２２０５ａは、ＰＡＴを収集する。ここで、ＰＡＴの例として図１２を挙げる。今、ＪＭＦ２２０５ａに与えられたチャンネル識別子が「１」とすると、ＪＭＦ２２０５ａは、図２４の行２４１２を参照して、対応するプログラムナンバー「１０１」を獲得し、次に、図１２のＰＡＴの行１２１１を参照し、プログラムナンバー「１０１」に対応するＰＩＤ「５０１」を獲得する。ＪＭＦ２２０５ａは、ＰＭＴを取得するため、ＯＳ２２０１のライブラリ２２０１ｂを通して、ＴＳデコーダ１６０２にＰＡＴより取得したＰＩＤとｔａｂｌｅ＿ｉｄ「２」を指定する。ここで、指定するＰＩＤは「５０１」とする。ＴＳデコーダ１６０２がＰＩＤ「５０１」及びｔａｂｌｅ＿ｉｄ「２」でフィルタリングを行い、１次記憶部１６０８を通してＣＰＵ１６０６に引き渡すことで、ＪＭＦ２２０５ａはＰＭＴの収集をする。ここでＰＭＴの例として図４０を挙げる。ここで、図４０において、図１１と同等の構成要素には同一番号を付し説明を省略する。図４０において、行１１１５に表されるＥＳは、データ用セクションを伝送するＥＳであり、ＰＩＤが５０１５であり、付加情報がＤＳＭＣＣ［２］（ＤＳＭＣＣ識別子が２）であるＴＳパケットによって構成される。ＪＭＦ２２０５ａは、ＰＭＴから記録する映像と音声のＰＩＤを獲得する。図４０を参照して、ＪＭＦ２２０５ａは、行１１１１から音声のＰＩＤ「５０１１」を、行１１１２から映像のＰＩＤ「５０１２」を獲得する。
【０１７０】
次に、ＪＭＦ２２０５ａは、ＯＳ２２０１のライブラリ２２０１ｂを通して、獲得した映像／音声のＰＩＤと出力先としてＡＶデコーダ１６０３を、ＴＳデコーダ１６０２に与える。ＴＳデコーダ１６０２は与えられたＰＩＤに基づいて、フィルタリングを行う。ここではＰＩＤ「５０１１」「５０１２」のＰＥＳパケットをＡＶデコーダ１６０３に引き渡す。ＡＶデコーダ１６０３は、与えられたａｕｄｉｏ/ｖｉｄｅｏのＰＥＳパケットのデコードを行い、デコードしたａｕｄｉｏ信号及びｖｉｄｅｏ信号をＡＶエンコーダ３１１１に引き渡す。ＡＶエンコーダ３１１１はａｕｄｉｏ信号及びｖｉｄｅｏ信号をＰＥＳパケットへエンコードし、エンコードしたａｕｄｉｏ/ｖｉｄｅｏのＰＥＳパケットを多重器３１１２に引き渡す。多重器はａｕｄｉｏ/ｖｉｄｅｏのＰＥＳパケットを多重化（例えば、マルチプレクス）し、生成したＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームを記録領域３１１３へ蓄積する。なお、ここで、蓄積管理ライブラリ３６０５ｈは、Ｒｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームをチャンネル識別子と関連つけて記録領域３１１３へ蓄積する機能を備えることとし、ＪＭＦ２２０５ａは、レコーディングマネージャ３６０６からし指定されたチャンネル識別子と多重器３１１２が多重化して生成したＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームを、蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１に引き渡して、Ｒｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームの記録領域３１１３への蓄積を依頼することで、Ｒｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームを記録領域３１１３へ蓄積する、としても、本発明は実施可能である。
【０１７１】
また、ここで、多重器３１１２が多重化するＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームは、映像音声のみではなく、サービスＰｌａｙｂａｃｋの際に必要な、ＰＡＴ／ＰＭＴ／ＡＩＴ情報等のＴａｂｌｅを含むこととする。なお、ＡＩＴ情報等のＴａｂｌｅは、Ｒｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームに多重化せず、Ｒｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームとは別に記録領域３１１３に蓄積しても本発明は実施可能である。
【０１７２】
最後にレコーディングマネージャ３６０６は、Ｊａｖａライブラリ３６０５の中にある蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１にチャンネル識別子を与え、データ放送の蓄積を依頼する。ここで、データ放送の蓄積とは、ＭＰＥＧ２トランスポートストリームに含まれるＪａｖａプログラムを抽出し、記録領域３１１３に蓄積することである。  先述のとおり、ＭＰＥＧ２トランスポートストリームにＪａｖａプログラムを埋め込む方法は、ＭＰＥＧ規格書  ＩＳＯ／ＩＥＣ１３８１８−６に記述されたＤＳＭＣＣという方式を用いる。ここではＤＳＭＣＣの詳細な説明は省略する。ＤＳＭＣＣ方式は、ＭＰＥＧ２トランスポートストリームのＴＳパケットの中に、コンピュータで使用されているディレクトリやファイルで構成されるファイルシステムをＭＰＥＧ２セクションを用いてエンコードする方法を規定している。特に、ＤＳＭＣＣ方式は、エンコードされたデータを一定間隔に繰り返し送信するカルーセル型データ方式をとっている。また、先述のとおり、実行するＪａｖａプログラムの情報はＡＩＴと呼ばれる形式で、ＭＰＥＧ２トランスポートストリームのＴＳパケットの中に埋め込まれ、ｔａｂｌｅ＿ｉｄが「０ｘ７４」であるＭＰＥＧ２セクションとして送信されている。ＡＩＴは、ＤＶＢ−ＭＨＰ規格（正式には、ＥＴＳＩ  ＴＳ  １０１  ８１２  ＤＶＢ−ＭＨＰ仕様Ｖ１．０．２）の１０章に定義されている、Ａｐｐｌｉｃａｔｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｔａｂｌｅの略である。
【０１７３】
蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、まず、ＡＩＴを獲得するため、ＪＭＦ２２０５ａ同様ＰＡＴ、ＰＭＴを取得し、ＡＩＴが格納されているＴＳパケットのＰＩＤを獲得する。今、与えられたチャンネル識別子が「１」で、図１２のＰＡＴ、図４０のＰＭＴが送信されているとすると、ＪＭＦ２２０５ａと同様の手順で、図４０のＰＭＴを獲得する。蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、ＰＭＴからストリーム種別が「データ」で補足情報として「ＡＩＴ」を持つエレメンタリ−ストリームからＰＩＤを抽出する。図４０を参照して、行１１１３のエレメンタリ−ストリームが該当し、ＰＩＤ「５０１３」を獲得する。
【０１７４】
蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、ＯＳ２２０１のライブラリ２２０１ｂを通してＴＳデコーダ１６０２にＡＩＴのＰＩＤとｔａｂｌｅ＿ｉｄ「０ｘ７４」を与える。ＴＳデコーダ１６０２は、与えられたＰＩＤ及びｔａｂｌｅ＿ｉｄでフィルタリングを行い、１次記憶部１６０８を通してＣＰＵ１６０６に引き渡す。この結果、蓄積管理ライブラリ３６０５ｈは、ＡＩＴを収集することができる。図４１は、収集したＡＩＴの情報の一例を模式的に表した表である。図４１において、図２６と同一の構成要素には同一の番号を付し、説明を省略する。行４１１１〜行４１１４は、Ｊａｖａプログラムの情報の組である。行４１１１で定義されるＪａｖａプログラムは、Ｊａｖａプログラムの識別子「３０１」、制御情報「ａｕｔｏｓｔａｒｔ」、ＤＳＭＣＣ識別子「１」、プログラム名「ａ／ＴｏｐＸｌｅｔ」の組である。行４１１２で定義されるＪａｖａプログラムは、Ｊａｖａプログラムの識別子「３０２」、制御情報「ｐｒｅｓｅｎｔ」、ＤＳＭＣＣ識別子「１」、プログラム名「ｂ／ＧａｍｅＸｌｅｔ」の組である。行４１１３で定義されるＪａｖａプログラムは、Ｊａｖａプログラムの識別子「３０３」、制御情報「ｋｉｌｌ」、ＤＳＭＣＣ識別子「２」、プログラム名「ｚ／ＳｔｕｄｙＸｌｅｔ」の組である。行４１１４で定義されるＪａｖａプログラムは、Ｊａｖａプログラムの識別子「３０４」、制御情報「ｄｅｓｔｒｏｙ」、ＤＳＭＣＣ識別子「１」、プログラム名「ｂ／ＭｕｓｉｃＸｌｅｔ」の組である。
【０１７５】
次に、蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、ＡＩＴに記載される全てのＪａｖａプログラムを見つけ出し、対応するＤＳＭＣＣ識別子及びＪａｖａプログラム名を抽出する。図４１を参照して、蓄積管理ライブラリ３６０５ｈは行４１１１のＪａｖａプログラム、行４１１１のＪａｖａプログラム、行４１１３のＪａｖａプログラム、行４１１４のＪａｖａプログラム、を抽出し、ＤＳＭＣＣ識別子「１」及びＪａｖａプログラム名「ａ／ＴｏｐＸｌｅｔ」、ＤＳＭＣＣ識別子「１」及びＪａｖａプログラム名「ｂ／ＧａｍｅＸｌｅｔ」、ＤＳＭＣＣ識別子「２」及びＪａｖａプログラム名「ｚ／ＳｔｕｄｙＸｌｅｔ」、ＤＳＭＣＣ識別子「１」及びＪａｖａプログラム名「ｂ／ＭｕｓｉｃＸｌｅｔ」を獲得する。
【０１７６】
次に蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、ＡＩＴから取得したＤＳＭＣＣ識別子を用いて、ＤＳＭＣＣ方式で格納しているＴＳパケットのＰＩＤをＰＭＴから獲得する。具体的には、ＰＭＴの中でストリーム種別が「データ」で、補足情報のＤＳＭＣＣ識別子が合致するエレメンタリ−ストリームのＰＩＤを取得する。
【０１７７】
今、ＤＳＭＣＣ識別子が「１」及び「２」であり、ＰＭＴが図４０とすると、行１１１４及び行１１１５のエレメンタリ−ストリームが合致し、ＰＩＤ「５０１４」及びＰＩＤ「５０１５」を取り出す。
【０１７８】
蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、ＯＳ２２０１のライブラリ２２０１ｂを通してＴＳデコーダ１６０２にＤＳＭＣＣ方式でデータが埋めこまれたＭＰＥＧ２セクションを伝送するＴＳパケットのＰＩＤ及びセクションフィルタ条件を指定する。ここでは、ＰＩＤ「５０１４」と「５０１５」、及び、セクションフィルタ条件としてｔａｂｌｅ＿ｉｄ＝０ｘ３Ｂ等、を与える。ＴＳデコーダ１６０２は与えられたＰＩＤを用いてＤＳＭＣＣ用ＭＰＥＧ２セクションのフィルタリングを行い、１次記憶部１６０８を通してＣＰＵ１６０６に引き渡す。この結果、蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、必要なＤＳＭＣＣ用ＭＰＥＧ２セクションを収集することができる。蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、収集したＭＰＥＧ２セクションから、ＤＳＭＣＣ方式に従ってファイルシステムを復元し、ファイルシステムを記録領域３１１３に蓄積する。蓄積管理ライブラリ３６０５ｈによるファイルシステムの記録の詳細は後述する。
【０１７９】
図４２は、ＤＳＭＣＣ方式にてトランスポートストリームにエンコードされたファイルシステムの一例である。また、図４３は、サービスＲｅｃｏｒｄ時に記録領域３１１３に蓄積されたファイルシステムの一例であり、ここでは、復元された２つのファイルシステムが蓄積されている。図４２、図４３において、図中、丸はディレクトリを四角はファイルを表し、４３０１、４３１１はそれぞれのファイルシステムのルートディレクトリ、４３０２はディレクトリ「ａ」，４３０３はディレクトリ「ｂ」，４３１２はディレクトリ「ｚ」，４３０４はファイル「ＴｏｐＸｌｅｔ．ｃｌａｓｓ」、４３０５はファイル「ＧａｍｅＸｌｅｔ．ｃｌａｓｓ」、４３０６はファイル「ＭｕｓｉｃＸｌｅｔ．ｃｌａｓｓ」、４３０５はファイル「ＳｔｕｄｙＸｌｅｔ．ｃｌａｓｓ」である。
【０１８０】
ここで、サービスのＲｅｃｏｒｄは開始時刻と終了時刻をもつが、以降、開始時刻から終了時刻までの時間を「サービスのＲｅｃｏｒｄ期間」と呼ぶ。
【０１８１】
ここで、ＤＳＭＣＣ方式でエンコードされたファイルシステムは一定の間隔に繰り返し送信されるため、サービスのＲｅｃｏｒｄ期間中には、同一のファイルシステムが重複して送信されている。従って、サービスＲｅｃｏｒｄ時において蓄積管理ライブラリ３６０５ｈが、ＴＳデコーダ１６０２にＰＩＤ及びセクションフィルタ条件を指定して選別させ収集するＤＳＭＣＣ用ＭＰＥＧセクションは、サービスＲｅｃｏｒｄ期間中に繰り返し収集され、それに伴いＤＳＭＣＣ方式にて復元されるファイルシステムも繰り返し取得される。
【０１８２】
図４４は、サービスＲｅｃｏｒｄ期間中に繰り返し送信/取得される、一つのファイルシステムの一例を示す図である。
【０１８３】
繰り返し送信/取得される一つのファイルシステムは、サービスＲｅｃｏｒｄ中において、常に内容に変更なく重複して送信/取得されることもあれば、サービスＲｅｃｏｒｄ中において何度か内容に変更がある場合がある。例えば、図４４に示すように、1時間のサービスＲｅｃｏｒｄ期間に5秒間間隔にて繰り返し送信されるファイルシステムが、Ｒｅｃｏｒｄ開始から１０分後に内容変更（ＶｅｒｓｉｏｎＵＰ）を行う場合がある。
【０１８４】
ここで、一つのファイルシステムにおけるデータ内容をそのファイルシステムのＶｅｒｓｉｏｎと呼び、一つのファイルシステムにおけるデータ内容の変更をそのファイルシステムのＶｅｒｓｉｏｎＵＰと呼ぶ。またここで、同一Ｖｅｒｓｉｏｎとは、繰り返し送信されるファイルシステムの今回のデータ内容が前回の内容と変更がないことを意味し、新規のＶｅｒｓｉｏｎとは、繰り返し送信される今回のデータ内容が前回のデータ内容から変更されていることを意味する。なお、本発明において、繰り返し送信されるファイルシステム等データのＶｅｒｓｉｏｎＵＰ（データ内容の変更）の確認は、ファイルシステム等データがＶｅｒｓｉｏｎを持ち、そのＶｅｒｓｉｏｎの値を比較して値が異なればＶｅｒｓｉｏｎＵＰしていると判断することを前提とするが、ファイルシステム等データ自体の内容変更を検知できる方法であれば他の方法であっても、本発明は実施可能である。
【０１８５】
上述のように、サービスＲｅｃｏｒｄ期間中には、１つのファイルシステムが繰り返し送信/取得されるため、同一Ｖｅｒｓｉｏｎのファイルシステムを重複して記録領域３１１３に蓄積すると記録領域３１１３の無駄である。また、一方、サービスＲｅｃｏｒｄ期間中には、１つのファイルシステムはＶｅｒｓｉｏｎＵＰする場合があり、サービスＰｌａｙｂａｃｋ時にそのＶｅｒｓｉｏｎＵＰが行えるように、新規のＶｅｒｓｉｏｎのファイルシステムを記録領域３１１３に蓄積する必要がある。
【０１８６】
図４５は、サービスＲｅｃｏｒｄ時において、レコーディングマネージャからチャンネル識別子を与えられデータ放送の蓄積を依頼された蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１によるファイルシステムの記録処理の一例を示すフローチャートである。
【０１８７】
そこで、図４５のフローチャートを参照して、蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、サービスＲｅｃｏｒｄ期間中、レコーディングマネージャからチャンネル識別子を与えられデータ放送の蓄積を依頼された（Ｓ−４５０１）後、先に述べた手順でＡＩＴのフィルタリングによる取得とＤＳＭＣＣ用ＭＰＥＧ２セクションのフィルタリング及びファイルシステムの復元によるファイルシステムの取得を継続することとする（Ｓ−４５０２〜Ｓ−４５０６、Ｓ−４５１０）。
【０１８８】
そして、繰り返し取得されるファイルシステムのＶｅｒｓｉｏｎをチェックし、同一のファイルシステムに関して初回に取得したファイルシステムは、今回取得したＶｅｒｓｉｏｎのファイルシステムを記録領域３１１３に蓄積することとする（Ｓ−４５０７のｙｅｓ）。なお、初回に取得したファイルシステムであっても以前のサービスＲｅｃｏｒｄ時にすでに同じＶｅｒｓｉｏｎのファイルシステムが蓄積されていた場合には、今回取得したＶｅｒｓｉｏｎのファイルシステムを蓄積しなくても良い。今回取得したファイルシステムのＶｅｒｓｉｏｎが前回取得したファイルシステムのＶｅｒｓｉｏｎと一致する場合には、今回取得したファイルシステムを記録領域３１１３に蓄積しない（Ｓ−４５０７のｎｏ）。一方、今回取得したファイルシステムのＶｅｒｓｉｏｎが前回取得したファイルシステムのＶｅｒｓｉｏｎと異なる場合（新規のＶｅｒｓｉｏｎである場合）には（Ｓ−４５０７のｙｅｓ）、今回取得した新規Ｖｅｒｓｉｏｎのファイルシステムを記録領域３１１３に蓄積することとするが、新規Ｖｅｒｓｉｏｎのファイルシステムに含まれるファイルの中で、前回Ｖｅｒｓｉｏｎのファイルシステム中のファイルから変更のないファイルは新規に取得せず、前回Ｖｅｒｓｉｏｎのファイルシステム中の該当するファイルへのシンボリックリンク等の参照をもつこととする（Ｓ−４５０８）。なお、新規Ｖｅｒｓｉｏｎのファイルシステムにおける前回Ｖｅｒｓｉｏｎからの変更のないファイルの扱いは、そのファイルを重複して記録しない方法であれば他の方法でもよい。また、或いは、新規Ｖｅｒｓｉｏｎのファイルシステムはファイルシステム単位では蓄積せずに、変更のあったファイルのみにそのファイルの変更をしめすＶｅｒｓｉｏｎを付けて蓄積するなどの方法を取っても良い。
【０１８９】
また、さらに蓄積する各Ｖｅｓｉｏｎのファイルシステムには、そのＶｅｓｉｏｎのファイルシステムを新規に取得した時刻（開始時刻）から、次のＶｅｓｉｏｎＵＰしたファイルシステムを新規に取得する時刻（終了時刻）までの期間を示すタイムスタンプを付して蓄積することとする（Ｓ−４５０９）。ここで、タイムスタンプが刻む時刻の基準は、指定されたチャンネル識別子に従い特定された映像音声を多重化して作成したＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームが刻む時刻である。なお、タイムスタンプが刻む時刻の基準は、サービスＰｌａｙｂａｃｋ時において、指定されたチャンネル識別子から特定されるサービスに含まれるＪａｖａプログラムと、同じく指定されたチャンネル識別子に特定されるサービスに含まれるＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームに多重化された映像音声とが、サービスＲｅｃｏｒｄ時に同期して送信されていたのと同様に、同期して再生できる時刻の刻み方であれば他の時刻の刻みを基準にしてもよい。
【０１９０】
図４６は、蓄積管理ライブラリ３６０５ｈのデータ管理部３７０２が管理する、蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１によって、Ｖｅｒｓｉｏｎ毎にタイムスタンプ等の関連情報を付して記録領域３１１３に記録されているＶｅｒｓｉｏｎ毎のファイルシステムを示す一例である。図４６において、図３７と同等の構成要素には同一番号を付し説明を省略する。行３７２１に記載される、ファイルシステム名「ＦＳ−Ａ」、Ｖｅｒｓｉｏｎ「１」のファイルシステムは、タイムスタンプ「０：００−０：１０」であり、その格納位置は、記録領域３１１３内の４６０１であり、行３７２２に記載される、ファイルシステム名「ＦＳ−Ａ」、Ｖｅｒｓｉｏｎ「２」のファイルシステムは、タイムスタンプ「０：１０−０：２５」であり、その格納位置は、記録領域３１１３内の４６０２である。  また、行３７２３に記載される、ファイルシステム名「ＦＳ−Ｂ」、Ｖｅｒｓｉｏｎ「１」のファイルシステムは、タイムスタンプ「０：００−１：００」であり、その格納位置は、記録領域３１１３内の４６０３である。
【０１９１】
以上のような手続きで、レコーディングネージャ３６０６はチャンネル識別子を受け取ってチューニング、暗号解除、映像・音声の記録、Ｊａｖａプログラムの記録を行う。この一連の手続きを、まとめて「サービスのＲｅｃｏｒｄ」と呼ぶ。サービスのＲｅｃｏｒｄ処理は基本的に、サービスの選択処理と同じであるが、サービスの選択処理における映像・音声の再生、及び、Ｊａｖａプログラムの実行を行わず、代わりに、映像・音声、及び、Ｊａｖａプログラムの記録領域３１１３への蓄積を行う処理であると言える。
【０１９２】
次に、図２８に示すようなサービスのＲｅｃｏｒｄ・Ｐｌａｙｂａｃｋ機能を備えるデジタル放送受信機における、サービスマネージャによるサービスのＰｌａｙＢａｃｋ処理について述べる。
【０１９３】
図３３、図３４にサービスＰｌａｙＢａｃｋ時における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図を示す。図３３、図３４において、図２０の場合と同一の番号で識別されるデ
バイスは、図２０の場合と同等の機能を有するため、説明を省略する。
【０１９４】
図３３において、端末装置３３００は、記録領域３１１３を有する。記録領域３１１３は２次記憶領域１６０７の全体または一部と対応し、図３１に示されるデバイス接続をもつ端末装置でのサービスＲｅｃｏｒｄ時に蓄積されたＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームを出力する。
【０１９５】
図３４において、端末装置３４００は、記録領域３１１３を有する。記録領域３１１３は２次記憶領域１６０７の全体または一部と対応し、図３２に示されるデバイス接続をもつ端末装置でのサービスＲｅｃｏｒｄ時に蓄積されたＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリーム、蓄積管理ライブラリ３６０５ｈが記録したデータを出力する。
【０１９６】
ここで、サービスのＰｌａｙｂａｃｋ時における図３３に示す端末装置３３００上でのプログラム動作手続きは、ここでは、詳細な説明を省略する。図３３に示す端末装置においては、サービスのＰｌａｙｂａｃｋ時に、ＴＳデコーダは、記録領域３１１３に蓄積されたＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームを入力し、サービスに含まれる映像・音声、サービスに含まれるＪａｖａプログラム等セクションデータを出力する。
【０１９７】
次に、サービスのＰｌａｙｂａｃｋ時における、図３４に示す端末装置３４００上でのプログラム動作手続きについて述べる。
【０１９８】
図３６を参照して、ＥＰＧ３６０２の番組表示部２２０２ａは、放送局から送信されるサービス及び記録領域３１１３に蓄積されたサービスの両方をふくむ番組表をディスプレイ１６０５に表示し、番組表示部２２０２ａは、ユーザからの入力に従い、チャンネル識別子を、再生部２２０２ｂに通知する。ここで、ここで、サービスＲｅｃｏｒｄ・Ｐｌａｙｂａｃｋ機能を備えるデジタル放送受信機において、チャンネル識別子は、放送局から送信されるサービス及び記録領域３１１３に蓄積されたサービスから1サービスを一意に特定する識別子である。
【０１９９】
ＪａｖａＶＭ２２０３は、カーネル２２０１ａに実行するＪａｖａプログラムを指定され起動される。サービスＰｌａｙｂａｃｋ時においては、カーネル２２０１ａは、実行するＪａｖａプログラムとしてサービスマネージャ２２０４を指定する。
【０２００】
サービスマネージャ２２０４は、ＪＮＩを通して、再生部２２０２ｂよりチャンネル識別子を受け取る。
【０２０１】
サービスマネージャ２２０４は、最初にＪａｖａライブラリ２２０５の中にある蓄積管理ライブラリ３６０５ｈのデータ取出部３７０３にチャンネル識別子を引き渡し、記録領域３１１３からのチャンネル識別子が特定するサービスを含むＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームの取り出しを依頼する。蓄積管理ライブラリ３６０５ｈのデータ取出部３７０３は、取り出したＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームをＴＳデコーダに１６０２に引き渡す。
【０２０２】
次にサービスマネージャ２２０４は、サービスＲｅｃｏｒｄ時に暗号解除を行っていない場合には、ＣＡライブラリ２２０６に暗号解除を依頼する。ここで、サービスＰｌａｙｂａｃｋ時においてサービスマネージャ２２０４から暗号解除を依頼された場合のＣＡライブラリ２２０６の処理は、サービス選択時においてサービスマネージャ２２０４から暗号解除を依頼された場合の処理と同等であるため説明を省略する。
【０２０３】
なお、サービスＲｅｃｏｒｄ時に暗号解除を行った後、独自の形式にて暗号を掛けている場合があり、そのような場合、サービスマネージャ２２０４は、ＣＡライブラリ２２０６に暗号解除を依頼し、ＣＡライブラリは独自の形式にて暗号を解除するなどの方法を取っても良い。
【０２０４】
なお、サービスＲｅｃｏｒｄ時に暗号解除を行っている場合には、サービスｐｌａｙｂａｃｋ時において、サービスマネージャ２２０４は、ＣＡライブラリ２２０６に暗号解除を依頼しない。
【０２０５】
なお、サービスマネージャ２２０４が、ＣＡライブラリ２２０６に暗号解除を依頼する依頼しないに係わらず本発明は実施可能である。
【０２０６】
次にサービスマネージャ２２０４は、Ｊａｖａライブラリ２２０５の中にあるＪＭＦ２２０５ａにチャンネル識別子を与え、映像・音声の再生を依頼する。
【０２０７】
まず、最初にＪＭＦ２２０５ａは、指定されたチャンネル識別子が特定するＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームを記録領域３１１３から取り出す。なお、ここで、蓄積管理ライブラリ３６０５ｈのデータ取出部３７０３は更に、指定されたチャンネル識別子が特定するＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームを記録領域３１１３から取り出す機能を備えることとし、ＪＭＦ２２０５ａは、サービスマネージャ２２０４から指定されたチャンネル識別子を蓄積管理ライブラリ３６０５ｈのデータ取出部３７０３に引き渡し、Ｒｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームの取り出しを依頼し、蓄積管理ライブラリ３６０５ｈのデータ取出部３７０３は、指定されたチャンネル識別子が特定するＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームを記録領域３１１３から取り出し、ＪＭＦ２２０５ａに引き渡すことで、ＪＭＦ２２０５ａは指定されたチャンネル識別子が特定するＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームを記録領域３１１３から取り出す、としても、本発明は実施可能である。続いて、ＪＭＦ２２０５ａはサービス選択時においてサービスマネージャ２２０４から映像・音声の再生を依頼された場合と同様の方法で、Ｒｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームからＰＡＴ、ＰＭＴを取得する。そして、ＪＭＦ２２０５ａは、ＰＭＴから再生する映像と音声のＰＩＤを獲得する。
【０２０８】
次に、ＪＭＦ２２０５ａは、ＯＳ２２０１のライブラリ２２０１ｂを通して、獲得した映像／音声のＰＩＤと出力先としてＡＶデコーダ１６０３を、ＴＳデコーダ１６０２に与える。ＴＳデコーダ１６０２は与えられたＰＩＤに基づいて、フィルタリングを行う。ここではＰＩＤ「５０１１」「５０１２」のＴＳパケットをＡＶデコーダ１６０３に引き渡す。ＡＶデコーダ１６０３は、与えられたＰＥＳパケットのデコードを行いディスプレイ１６０５、スピーカ１６０４を通して映像／音声を再生する。
【０２０９】
最後にサービスマネージャ２２０４は、Ｊａｖａライブラリ２２０５の中にあるＡＭ２２０５ｂにチャンネル識別子を与え、データ放送再生を依頼する。ここで、データ放送再生とは、記録領域３１１３に記録されたファイルシステムから構成されるＪａｖａプログラムを取得し、ＪａｖａＶＭ２２０３に実行させることである。
【０２１０】
ＡＭ２２０５ｂは、まず、サービス選択時においてサービスマネージャ２２０４からデータ放送再生を依頼された場合と同様の方法で、Ｒｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームからＡＩＴを獲得する。なお、ここで、ＡＩＴは、サービスＲｅｃｏｒｄ時にＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームとは別に記録領域３１１３に蓄積されているものとし、記録領域３１１３からチャンネル識別子と対応するサービスに含まれるＡＩＴを獲得しても本発明は実施可能である。
【０２１１】
ＡＭ２２０５ｂは、ＡＩＴの中から「ａｕｔｏｓｔａｒｔ」のＪａｖａプログラムを見つけ出し、対応するＤＳＭＣＣ識別子及びＪａｖａプログラム名を抽出する。図４１を参照して、ＡＭ２２０５ｂは行４１１１のＪａｖａプログラムを抽出し、ＤＳＭＣＣ識別子「１」及びＪａｖａプログラム名「ａ／ＴｏｐＸｌｅｔ」を獲得する。
【０２１２】
次にＡＭ２２０５ｂは、ＡＩＴから取得したＤＳＭＣＣ識別子を蓄積管理ライブラリ３６０５ｈのデータ取出部３７０３に引き渡し、記録領域３１１３に蓄積されたファイルシステムの取り出しを依頼する。蓄積管理ライブラリ３６０５ｈのデータ取出部３７０３は、さらに指定されたＤＳＭＣＣ識別子が特定するファイルシステムであってかつタイムスタンプが有効なＶｅｒｓｉｏｎをもつファイルシステムを、データ管理部３７０２が管理する記録領域３１１３に記録されたＶｅｒｓｉｏｎ毎のファイルシステムから取り出し、取り出したファイルシステムをＡＭ２２０５ｂに引き渡し、ＡＭ２２０５ｂは、ファイルシステムを1次記憶１６０８または２次記憶部１６０７に保存する。
【０２１３】
図４７は、1次記憶１６０８または２次記憶部１６０７に保存されたファイルシステムの一例である。ここで、図４７において、図４２と同等の構成要素には同一番号を付し説明を省略する。
【０２１４】
次にＡＭ２２０５ｂは、1次記憶１６０８または２次記憶部１６０７に保存したファイルシステム中から実行するＪａｖａプログラムをＪａｖａＶＭ２２０３に引き渡す。今、実行するＪａｖａプログラム名が「ａ／ＴｏｐＸｌｅｔ」とすると、Ｊａｖａプログラム名の最後に「．ｃｌａｓｓ」を付加したファイル「ａ／ＴｏｐＸｌｅｔ．ｃｌａｓｓ」が実行すべきファイルとなる。「／」はディレクトリやファイル名の区切りであり、図４７を参照して、ファイル４３０４が実行すべきＪａｖａプログラムである。次にＡＭ２２０５ｂは、ファイル４３０４をＪａｖａＶＭ２２０３に引き渡す。
【０２１５】
ＪａｖａＶＭ２２０３は、引き渡されたＪａｖａプログラムを実行する。また、ＪａｖａＶＭ２２０３は、実行すべきＪａｖａプログラムからその他ファイルの読み出しが要求された場合には、基本的には、１次記憶に保存されたファイルシステム中のファイルを読みだす。但し、読み出しが要求されたファイルが、上記Ｊａｖａプログラムとは異なるファイルシステムに存在し、１次記憶に保存されていない場合などには、蓄積管理ライブラリに依頼して、読み出し要求されたファイルを含むファイルシステムを記録領域から取り出し、１次記憶に保存するなどの処理をおこなってもよい。
【０２１６】
ここで、サービスのＰｌａｙｂａｃｋ中には、映像音声とＪａｖａプログラムは、同期して実行される必要がある。従って、サービスのＰｌａｙｂａｃｋ時においては、ＪａｖａＶＭ２２０３からあるファイルシステムの取得が要求されたときに蓄積管理ライブラリ３６０５ｈのデータ取出部３７０３は、データ管理部３７０２が管理するファイルシステムのタイムスタンプを参照しタイムスタンプが有効なＶｅｒｓｉｏｎのファイルシステムを取り出す。ここで、タイムスタンプが有効であるとは、例えば、サービスＰｌａｙｂａｃｋ中のＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリーム上の時刻がタイムスタンプの示す開始時刻以上かつ終了時刻未満であることを言う。ここで、Ｊａｖａプログラムが同期すべき映像音声はサービスＲｅｃｏｒｄ時にＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームへ多重化された映像音声であり、Ｒｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームと常に同期して時刻を刻んでいる。したがって、ＪａｖａプログラムがＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリーム上の時刻と同期をとることは、ＪａｖａプログラムがＲｅｃｏｒｄＭＰＥＧ２トランスポートストリームに多重化されている映像音声と同期をとることと同じである。
【０２１７】
図４８は、サービスのＰｌａｙｂａｃｋ時において、サービスマネージャ２２０４からチャンネル識別子を与えられデータ放送再生を依頼されたＡＭ２２０５ｂによる蓄積管理ライブラリ３６０５を利用しての記録領域に蓄積されたＪａｖａプログラムの実行処理の一例を示すフローチャートである。
【０２１８】
図４８のフローチャートを参照して、ＡＩＴはサービスのＰｌａｙｂａｃｋ中、サービスマネージャ２２０４からチャンネル識別子を与えられデータ放送再生を依頼された（Ｓ−４８０１）後、先に述べた手順でＡＩＴのフィルタリングによる取得または記録領域からの取得（Ｓ−４８０２）し、取得したＡＩＴ情報に記述された制御情報が「ａｕｔｏｓｔａｒｔ」のＪａｖａプログラムを選択し、ＤＳＭＣＣ識別子、及びＪａｖａプログラム名を抽出（Ｓ−４８０３）し、抽出したＤＳＭＣＣ識別子にて、蓄積管理ライブラリ３６０５のデータ取出部３７０３へ記録領域からファイルシステムの取り出し依頼する（Ｓ−４８０４）。蓄積管理ライブラリ３６０５のデータ取出部３７０３は、データ管理部３７０２が管理する記録領域３１１３に記録されたＶｅｒｓｉｏｎごとのファイルシステムから、指定されたＤＳＭＣＣ識別子が特定し、かつ、タイムスタンプが有効なＶｅｒｓｉｏｎのファイルシステムを取り出しＡＭに引き渡し（Ｓ−４８０５）、ＡＭは記録領域３１１３から取り出したファイルシステムを１次記憶領域１６０８に保存する（Ｓ−４８０６）。続いてＡＭは、抽出したＪａｖａプログラム名に基づき、ファイルシステムから実行すべきＪａｖａプログラムのファイルを取得し、ＪａｖａＶＭ２２０３へ渡し、Ｊａｖａプログラムの起動指示を行う（Ｓ−４８０７）。さらに継続して、蓄積管理ライブラリ３６０５のデータ取出部３７０３は、サービスＰｌａｙｂａｃｋが終了するまでの間、記録領域３１１３から取り出したＶｅｒｓｉｏｎのファイルシステムについて、そのタイムスタンプの終了時刻がくると（Ｓ−４８０８〜Ｓ−４８１０）、再び、データ管理部３７０２が管理する記録領域３１１３に記録されたＶｅｒｓｉｏｎごとのファイルシステムから、指定されたＤＳＭＣＣ識別子が特定し、かつ、タイムスタンプが有効なＶｅｒｓｉｏｎのファイルシステムを取り出しＡＭに引き渡す（Ｓ−４８０５）処理を繰り返し継続し、Ｐｌａｙｂａｃｋ時刻と同期したファイルシステムの記録領域３１３３からの取り出しおよび１次記憶への保存を実現し、したがってＪａｖａＶＭ２２０３は常にＰｌａｙｂａｃｋ時刻と同期したファイルシステム中のファイルを利用することが実現される。
【０２１９】
以上のような手続きで、サービスマネージャ２２０４は、チャンネル識別子を受け取って、記録領域３１１３に蓄積されたＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームまたはデータの取得、暗号解除、映像・音声再生、Ｊａｖａプログラム起動を行う。この一連の手続きをまとめて「サービスのＰｌａｙＢａｃｋ」と呼ぶ。
【０２２０】
サービスマネージャ２２０４によるサービスのＰｌａｙＢａｃｋ処理は基本的に、サービス選択処理と同じであるが、サービス選択時には放送波から取得されたデータに基づく映像・音声の再生、及び、Ｊａｖａプログラムの起動を行うのに対し、サービスのＰｌａｙｂａｃｋ時には記録領域３１１３から取得されたデータに基づく映像・音声の再生、及び、Ｊａｖａプログラムの起動を行う点が異なる。また、Ｒｅｃｏｒｄは必ずしもサービスに含まれる全てのデータを蓄積しない。そのため、サービス選択時と、サービスＰｌａｙＢａｃｋ時には利用するデータは必ずしも全てが同じとは限らない。
【０２２１】
また、サービスのＲｅｃｏｒｄ・Ｐｌａｙｂａｃｋ機能を備える受信端末において、図３６を参照して、Ｊａｖａライブラリ３６０５は、レコーディングマネージャ管理ライブラリ３６０４ｇを含んでいる。また、Ｊａｖａライブラリ３６０５中のサービスマネージャ管理ライブラリ２２０５ｆは更に、サービスをＰｌａｙｂａｃｋする機能をＪａｖａプログラムに提供する。Ｊａｖａプログラムはこれらライブラリを利用しながら、Ｊａｖａプログラムの機能を実現する。
【０２２２】
Ｊａｖａプログラムは、レコーディングマネージャ管理ライブラリ３６０５ｇを利用することで、レコーディングマネージャ３６０６によるサービスのＲｅｃｏｒｄを行うことができる。
【０２２３】
具体的には、Ｊａｖａプログラムがレコーディングマネージャ管理ライブラリ３６０５ｇにチャンネル識別子を渡すと、レコーディングマネージャ管理ライブラリ３６０５ｇは受け取ったチャンネル識別子をレコーディングマネージャ３６０６に引き渡す。その後はＥＰＧ３６０２を用いたチャンネル録画時と同様にレコーディングマネージャ３６０６によるサービスのＲｅｃｏｒｄが行われ、チャンネル識別子に対応するプログラムナンバーによって識別されるＰＭＴに記載される情報に基づき、そのサービスに属する映像・音声が記録領域３１１３に記録され、そのサービスに属するＪａｖａプログラムが記録領域３１１３に記録される。
【０２２４】
また、Ｊａｖａプログラムはサービスマネージャ管理ライブラリ２２０５ｆを利用することで、サービスマネージャ２２０４によるサービスのＰｌａｙｂａｃｋを行うことができる。
【０２２５】
具体的には、Ｊａｖａプログラムがサービスマネージャ管理ライブラリ２２０５ｆに、サービスＲｅｃｏｒｄ時に記録領域３１１３に蓄積されたサービスを示すチャンネル識別子を渡すと、サービス管理ライブラリは受け取ったチャンネル識別子をサービスマネージャ２２０４に引き渡す。その後はＥＰＧ３６０２を用いたチャンネル再生時と同様にサービスマネージャ２２０４によるサービスのＰｌａｙＢａｃｋが行われ、チャンネル識別子に対応するプログラムナンバーによって識別されるＰＭＴに記載される情報に基づき、そのサービスに属する映像・音声が再生され、そのサービスに属するＪａｖａプログラムが記録領域３１１３から起動される。
【０２２６】
このように、Ｊａｖａプログラムは、Ｊａｖａライブラリに含まれるレコーディングマネージャ管理ライブラリ３６０５ｇを利用することでサービスのＲｅｃｏｒｄを行うことが可能となり、サービスマネージャ管理ライブラリ２２０５ｆを利用することで、サービスのＰｌａｙｂａｃｋを行うことが可能となる。
【０２２７】
以上、本実施の形態のようなサービスＲｅｃｏｒｄ・Ｐｌａｙｂａｃｋ処理による効果を以下に示す。第１の効果として、ある一つのファイルシステムについて、同一Ｖｅｓｉｏｎのファイルシステムは各々１つ蓄積され、重複した蓄積をすることがなくなり記録領域３１１３のへの蓄積領域を削減することができる。また更に、新規のＶｅｒｓｉｏｎのファイルシステムであっても、そこに含まれるファイルが前回Ｖｅｒｓｉｏｎのファイルシステムから変更がない場合には、重複して蓄積しないことで、さらにファイル単位での蓄積領域の実現をしている。第２の効果として、さらに、サービスＲｅｃｏｒｄ時において各Ｖｅｒｓｉｏｎのファイルシステムにタイムスタンプをつけて蓄積し、同一チャンネル中に同期して送信される映像音声はＲｅｃｏｒｄ用のストリームに多重化して蓄積することで、サービスＰｌａｙｂａｃｋ時おいて、同期して送信されていた映像音声データとＪａｖａプログラムを同期させて再生することができる。また、第３の効果として、ＤＳＭＣＣ仕様には、繰り返し送信するデータの単位として、モジュール単位（Modules of Data Carousels）、オブジェクト単位（U-U Object in an Object Carousel）を規定しており、オブジェクトは、モジュール中に含まれるモジュールより詳細なデータ単位であり、ＤｉｒｅｃｔｒｙやＦｉｌｅ等の各データの実体である。モジュール、オブジェクトについての詳細な説明はＤＳＭＣＣ仕様（ＩＳＯ／ＩＥＣ１３８１８−６）に記載される公知の技術であるため省略する。本発明におけるファイルシステムの復元及び蓄積は、ファイルシステム中のファイルに重複がないよう蓄積する仕組みであり、オブジェクト単位のデータの復元及び蓄積に相当するものであり、モジュール単位でのデータの復元及び蓄積を行う先行技術よりも、より効率的に蓄積領域の削減を実現することができる。第４の効果として、サービスＲｅｃｏｒｄ時に、サービスに含まれる全てのＪａｖａプログラムをファイルシステムとして復元したデータのまま記録領域３１１３に蓄積しているので、サービスＰｌａｙｂａｃｋ時において、再び、ＤＳＭＣＣ用ＭＰＥＧ２セクションのフィルタリング及びファイルシステムの復元処理を省くことができ、ファイルタ資源の利用を削減できるとともにＪａｖａプログラムの起動時間を短縮できる。
（実施の形態２）
実施の形態１においては、サービスＲｅｃｏｒｄ時にファイルシステムのＶｅｒｓｉｏｎをチェックし、各Ｖｅｒｓｉｏｎのファイルシステムにタイムスタンプを付して記録領域３１１３に蓄積することで、記録領域３１１３の削減及び映像音声と同期したＰｌａｙｂａｃｋを可能とする蓄積を実現していた。
【０２２８】
しかし、トランスポートストリーム中に一定の間隔に繰り返し送信されるデータとしては、ＤＳＭＣＣ形式にてエンコードされたファイルシステムの他に、トランスポートストリーム中の番組構成やサービスに含まれるＪａｖａプログラムの制御情報を表現するＰＡＴ、ＰＭＴ、ＡＩＴ等の ｔａｂｌｅや、ストリームイベントなどが存在する。例えばあるサービスに含まれるＡＩＴにはそのサービスに含まれるＪａｖａプログラムのＤＳＭＣＣ識別子、ファイル名、ＶｅｒｓｉｏｎＮｏ、制御情報等が記述されている。従って、サービスＰｌａｙｂａｃｋ時にはＡＩＴ記載の情報が必要である。
【０２２９】
本実施の形態においては、サービスのＲｅｃｏｒｄ時にＡＩＴ記載の情報を記録領域３１１３に蓄積する。また、ＡＩＴは繰り返し送信されるデータであるので、これら繰り返し送信されるデータを全て蓄積するのではなく、新規のＶｅｒｓｉｏｎのＡＩＴのみをタイムスタンプを付けて蓄積する。
【０２３０】
次に、本実施の形態における、図２８に示すようなサービスのＲｅｃｏｒｄ・Ｐｌａｙｂａｃｋ機能を備えるデジタル放送受信機における、レコーディングマネージャ３６０６によるサービスのＲｅｃｏｒｄ処理について述べる。本  実施の形態におけるレコーディングマネージャ３６０６によるサービスのＲｅｃｏｒｄ処理は、実施の形態１におけるレコーディングマネージャ３６０６によるサービスのＲｅｃｏｒｄ処理とＡＩＴの獲得に関する処理を除いてほぼ同等であるので、ここでは、同等の処理については説明を省略し、相違点であるレコーディングマネージャ３６０６からチャンネル識別子を与えられ、データ放送の蓄積を依頼された蓄積管理ライブラリ３６０５ｈの処理のみを記述する。
【０２３１】
蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、レコーディングマネージャ３６０６からチャンネル識別子を与えられ、データ放送の蓄積を依頼されると、まず、実施の形態１におけるサービスのＲｅｃｏｒｄ処理時と同様の方法で、ＰＡＴ、ＰＭＴを取得し、さらに、ＡＩＴを獲得する。
【０２３２】
次に、蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、実施の形態１におけるサービスのＲｅｃｏｒｄ処理時と同様の方法で、ＡＩＴに記載される全てのＪａｖａプログラムを見つけ出し、対応するＤＳＭＣＣ識別子及びＪａｖａプログラム名を抽出する。
【０２３３】
次に蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、実施の形態１におけるサービスのＲｅｃｏｒｄ処理時と同様の方法で、ＡＩＴから取得したＤＳＭＣＣ識別子を用いて、必要なＤＳＭＣＣ用ＭＰＥＧ２セクションを収集し、ＤＳＭＣＣ方式に従ってファイルシステムを復元し、ファイルシステムを記録領域３１１３に蓄積する。
【０２３４】
次に、蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、ＡＩＴの情報を記録領域３１１３に蓄積する。ここで、ＡＩＴの情報における各Ｊａｖａプログラムの情報に、蓄積したファイルシステムの格納位置を対応つけて記録領域３１１３に蓄積する。図４９は、記録領域３１１３にＡＩＴの情報と蓄積したファイルシステムが対応つけられて蓄積されている一例を表す図である。図４９において、図４１、図４３と同じ番号の要素は図４１、図４３と同じなので、説明は省略する。列４９０１は各Ｊａｖａプログラムに対応する蓄積したファイルシステムの格納位置を格納する。なお、ファイルシステムの格納位置は、Ｖｅｒｓｉｏｎに依存しない格納位置を参照する形式としてもよいが、ＡＩＴに記述したＪａｖａプログラム各々について、サービスＰｌａｙｂａｃｋ時において、各々のＪａｖａプログラムを含むファイルシステムについて、サービスＰｌａｙｂａｃｋのある時刻に、タイムスタンプの有効なＶｅｒｓｉｏｎのファイルシステムを参照できる形式としてもよい。前者の場合は、サービスＰｌａｙｂａｃｋ時において、ＡＩＴ情報がもつシステム格納位置をもとに、ある時刻において有効なＶｅｒｓｉｏｎのファイルシステムの抽出を蓄積管理ライブラリ３６０５ｈのデータ取出部３７０３に依頼する。後者の場合、サービスＰｌａｙｂａｃｋ時における記録領域３１１３からのタイムスタンプの有効なＶｅｒｓｉｏｎのファイルシステムへの参照はＡＩＴ情報に記載されているので蓄積管理ライブラリ３６０５ｈのデータ取出部３７０３に有効なＶｅｒｉｏｎのファイルシステムの抽出を依頼する必要がなくなりファイルシステム取得処理を容易にできる等の利点がある。
【０２３５】
ここで、ＡＩＴの情報は、サービスのＰｌａｙｂａｃｋ時にサービスに含まれるＪａｖａプログラムを起動/制御するに十分な情報を含むものであれば、ＡＩＴに記述される全てのＪａｖａプログラムについての全ての情報であっても一部の情報であっても、ＡＩＴとは全く異なる形式で情報であっても、本発明は実施可能である。
【０２３６】
ここで、ＰＡＴ、ＰＭＴ、ＡＩＴ等のｔａｂｌｅは一定の間隔に繰り返し送信されるため、サービスのＲｅｃｏｒｄ期間中には、同一のＰＡＴ、ＰＭＴ、ＡＩＴ等のｔａｂｌｅが重複して送信されている。従って、サービスＲｅｃｏｒｄ時において蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１が、ＴＳデコーダ１６０２にＰＩＤ及びセクションフィルタ条件を指定して選別させ収集するＰＡＴ、ＰＭＴ、ＡＩＴ等のｔａｂｌｅは、サービスＲｅｃｏｒｄ期間中に繰り返し獲得される。
【０２３７】
繰り返し送信/取得される一つのＰＡＴ、ＰＭＴ、ＡＩＴ等のｔａｂｌｅは、サービスＲｅｃｏｒｄ中において、常に内容に変更なく重複して送信/取得されることもあれば、サービスＲｅｃｏｒｄ中において何度か内容に変更がある場合がある。
【０２３８】
ここで、一つのｔａｂｌｅにおけるデータ内容をそのｔａｂｌｅのＶｅｒｓｉｏｎと呼び、一つのｔａｂｌｅにおけるデータ内容の変更をそのｔａｂｌｅのＶｅｒｓｉｏｎＵＰと呼ぶ。またここで、同一Ｖｅｒｓｉｏｎとは、繰り返し送信されるｔａｂｌｅの今回のデータ内容が前回の内容と変更がないことを意味し、新規のＶｅｒｓｉｏｎとは、繰り返し送信される今回のデータ内容が前回のデータ内容から変更されていることを意味する。
【０２３９】
なお、本発明において、繰り返し送信されるＡＩＴ等のｔａｂｌｅのＶｅｒｓｉｏｎＵＰ（データ内容の変更）の確認は、ＡＩＴ等のｔａｂｌｅがＶｅｒｓｉｏｎを持ち、そのＶｅｒｓｉｏｎの値を比較して値が異なればＶｅｒｓｉｏｎＵＰしていると判断することを前提とするが、ＡＩＴ等のｔａｂｌｅ自体の内容変更を検知できる方法であれば他の方法であっても、本発明は実施可能である。
【０２４０】
上述のように、サービスＲｅｃｏｒｄ期間中には、１つのｔａｂｌｅが繰り返し送信/取得されるため、同一Ｖｅｒｓｉｏｎのｔａｂｌｅを重複して記録領域３１１３に蓄積すると記録領域３１１３の無駄である。また、一方、サービスＲｅｃｏｒｄ期間中には、１つのｔａｂｌｅはＶｅｒｓｉｏｎＵＰする場合があり、サービスＰｌａｙｂａｃｋ時にそのＶｅｒｓｉｏｎＵＰが行えるように、新規のＶｅｒｓｉｏｎのｔａｂｌｅを記録領域３１１３に蓄積する必要がある。
【０２４１】
図５０は、レコーディングマネージャからチャンネル識別子を与えられデータ放送の蓄積を依頼された蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１によるＡＩＴ情報の記録処理の一例を示すフローチャートである。
【０２４２】
そこで、図５０を参照して、蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１は、サービスＲｅｃｏｒｄ期間中、レコーディングマネージャからチャンネル識別子を与えられデータ放送の蓄積を依頼された（Ｓ−５００１）後、先に述べた手順でＡＩＴのフィルタリングによる取得を継続し（Ｓ−５００２〜Ｓ−５００３，Ｓ−５００７）、並んで、図４５を参照して、先述の手順にてＤＳＭＣＣ用ＭＰＥＧ２セクションのフィルタリングによる取得及びファイルシステムの復元によるファイルシステムの取得を継続することとする。
【０２４３】
そして、同一のｔａｂｌｅに関して、繰り返し取得されるｔａｂｌｅのＶｅｒｓｉｏｎをチェックし、今回取得したｔａｂｌｅのＶｅｒｓｉｏｎが前回取得したｔａｂｌｅのＶｅｒｓｉｏｎと一致する場合には、今回取得したｔａｂｌｅを記録領域３１１３に蓄積しない。（Ｓ−５００４のｎｏ）。一方、初回に取得したｔａｂｌｅ、または、今回取得したｔａｂｌｅのＶｅｒｓｉｏｎが前回取得したｔａｂｌｅのＶｅｒｓｉｏｎと異なる場合（新規のＶｅｒｓｉｏｎである場合）には、今回取得した新規Ｖｅｒｓｉｏｎのｔａｂｌｅを記録領域３１１３に蓄積することとする。（Ｓ−５００４のｙｅｓ）また、さらに蓄積する各Ｖｅｓｉｏｎのｔａｂｌｅには、そのＶｅｓｉｏｎのｔａｂｌｅを新規に取得した時刻（開始時刻）から、次のＶｅｓｉｏｎＵＰしたｔａｂｌｅを新規に取得する時刻（終了時刻）までの期間を示すタイムスタンプを付して蓄積することとする（Ｓ−５００６）。
【０２４４】
また、さらに、図４９を参照して、サービスＲｅｃｏｒｄ期間中において、蓄積されたＡＩＴの情報がその格納位置を保持するファイルシステムのＶｅｒｓｉｏｎは変化する場合がある。そのような場合に備えて、ＡＩＴの情報は、ＡＩＴに記述したＪａｖａプログラム各々について、そのＪａｖａプログラムを含みＶｅｒｓｉｏｎごとにタイムスタンプを有した各Ｖｅｒｓｉｏｎの蓄積されたファイルシステムの格納位置を持つこととする（Ｓ−５００５）。各Ｖｅｒｓｉｏｎのファイルシステムの格納位置を持つ方法は図５２に後述する。
【０２４５】
図５１は、蓄積管理ライブラリ３６０５ｈのデータ管理部３７０２が管理する、蓄積管理ライブラリ３６０５ｈのデータ記録部３７０１によって、Ｖｅｒｓｉｏｎ毎にタイムスタンプ等の関連情報を付して記録領域３１１３に記録されているＶｅｒｓｉｏｎ毎のＡＩＴの情報を示す一例である。図５１において、図４１と同等の構成要素には同一番号を付し説明を省略する。図５１において、行５１２１〜行５１２３は記録領域３１１３に蓄積された各ＡＩＴの情報の各Ｖｅｒｓｉｏｎを示す。列５１１１は記録領域３１１３に蓄積されたＡＩＴの情報の名前、列５１１２はＡＩＴの情報のＶｅｒｓｉｏｎ、列５１１３はＡＩＴの情報のＶｅｒｓｉｏｎ毎のタイムスタンプ、列５１１４はＡＩＴの情報と関連するチャンネル識別子、列５１１５はＡＩＴの情報のＶｅｒｓｉｏｎ毎の記録領域３１１３における格納場所である。行５１２１に記載される、ＡＩＴの情報名「ＡＩＴ情報-Ｙ」、Ｖｅｒｓｉｏｎ「１」のＡＩＴの情報は、タイムスタンプ「０：００−０：２０」であり、その格納位置は、記録領域３１１３内の５１０１であり、行５１２２に記載される、ＡＩＴの情報名「ＡＩＴ情報-Ｙ」、Ｖｅｒｓｉｏｎ「２」のＡＩＴの情報は、タイムスタンプ「０：２０−０：２５」であり、その格納位置は、記録領域３１１３内の５１０２である。ここで、記憶領域３１１３内の５１０２に格納されるＶｅｒｓｉｏｎ２のＡＩＴの情報「ＡＩＴ情報-Ｙ」は、５１０１に格納されるＶｅｒｓｉｏｎ１のＡＩＴの情報「ＡＩＴ情報-Ｙ」と比較して、行５１３１に示すように、Ｊａｖａプログラムの識別子「３０１」のＪａｖａプログラムの制御情報が「ｄｅｓｔｒｏｙ」に変更され、行５１３２に示すように、Ｊａｖａプログラムの識別子「３０２」のＪａｖａプログラムの制御情報が「ａｕｔｏｓｔａｒｔ」に変更されている。また、行５２１３に記載される、ＩＴ情報名「ＡＩＴ情報-Ｚ」、Ｖｅｒｓｉｏｎ「１」のＡＩＴの情報は、タイムスタンプ「０：００−１：００」であり、その格納位置は、記録領域３１１３内の５１０３である。
【０２４６】
図５２は、さらに、蓄積管理ライブラリ３６０５ｈのデータ管理部３７０２が管理するＡＩＴの情報が、蓄積されたＡＩＴの情報が、ＡＩＴに記述したＪａｖａプログラム各々について、そのＪａｖａプログラムを含みＶｅｒｓｉｏｎごとにタイムスタンプを有した各Ｖｅｒｓｉｏｎのファイルシステムの格納位置を持つＡＩＴ情報を示す一例である。図５２において、図５１及び図４６と同等の構成要素には同一番号を付し説明を省略する。図５２において、行５２１１〜行５２２１は、行４１１１に記載されるＪａｖａプログラムを含むファイルシステムに関して、より詳細に、タイムスタンプごとに有効なＶｅｒｓｉｏｎのファイルシステムを記載し、列５２０１はタイムスタンプ、列５２０２はＶｅｒｓｉｏｎごとのファイルシステムの格納位置である。記憶領域３１１３内の５１０１に格納されるＶｅｒｓｉｏｎ１のＡＩＴの情報「ＡＩＴ情報-Ｙ」の、行４１１１に記載されるＪａｖａプログラムの識別子「３０１」のＪａｖａプログラムを含むファイルシステムの格納位置４９０１は、さらに行５２１１、列５２０１に示すように、タイムスタンプ「０：００−０：１０」を有したＶｅｒｓｉｏｎ「１」のファイルシステム「ＦＳ−Ａ」の格納位置、行５２１２、列５２０１に示すように、タイムスタンプ「０：１０−０：２５」を有したＶｅｒｓｉｏｎ「２」のファイルシステム「ＦＳ−Ａ」の格納位置を有する。
【０２４７】
次に、本実施の形態における、図２８に示すようなサービスのＲｅｃｏｒｄ・Ｐｌａｙｂａｃｋ機能を備えるデジタル放送受信機における、サービスマネージャによるサービスのＰｌａｙＢａｃｋ処理について述べる。本実施の形態におけるサービスマネージャによるサービスのＰｌａｙＢａｃｋ処理は、実施の形態１におけるサービスマネージャ２２０４によるサービスのＰｌａｙＢａｃｋ処理とＡＩＴの獲得に関する処理を除いてほぼ同等であるので、ここでは、同等の処理については説明を省略し、相違点である、サービスマネージャ２２０４からデータ放送再生の依頼を受けたＡＭ２２０５ｂの処理及び蓄積管理ライブラリ３６０５ｈの処理を説明する。
【０２４８】
ＡＭ２２０５ｂは、サービスマネージャ２２０４から、チャンネル識別子を与えられ、データ放送再生を依頼されると、まず、指定されたチャンネル識別子を蓄積管理ライブラリに引き渡し、記録領域３１１３に蓄積されたＡＩＴの情報の取り出しを依頼する。蓄積管理ライブラリ３６０５ｈは、さらに指定されたチャンネル識別子と対応するサービスに含まれるＡＩＴの情報であってかつタイムスタンプが有効なＶｅｒｓｉｏｎをもつＡＩＴの情報を取り出し、取り出したＡＩＴの情報をＡＭ２２０５ｂに引き渡し、ＡＭは、指定されたチャンネル識別子と対応するサービスに含まれるサービスＲｅｃｏｒｄ時に記録領域３１１３に蓄積されかつタイムスタンプが有効なＡＩＴの情報を獲得する。
【０２４９】
ＡＭ２２０５ｂは、図４９を参照して、ＡＩＴの情報の中から「ａｕｔｏｓｔａｒｔ」のＪａｖａプログラムを見つけ出し、対応するＪａｖａプログラム名を抽出する。図４９を参照して、ＡＭ２２０５ｂは行４１１１のＪａｖａプログラムを抽出し、Ｊａｖａプログラム名「ａ／ＴｏｐＸｌｅｔ」及び、タイムスタンプが有効なＶｅｒｓｉｏｎをもつファイルシステムの格納位置を獲得する。ＡＭ２２０５ｂは獲得したファイルシステムを1次記憶１６０８または２次記憶部１６０７に保存する。ここで、タイムスタンプが有効なファイルシステムの格納位置が容易に獲得できるので、ＤＳＭＣＣ識別子を取得して、蓄積管理ライブラリに問い合わせる等の処理を省くことができる。
【０２５０】
なお、ここで、ファイルシステムの格納位置がタイムスタンプをもつ各Ｖｅｒｓｉｏｎのファイルシステムの格納位置を保持せず単にファイルシステムの格納位置のみを保持するような場合、ＡＭ２２０５ｂは、獲得したファイルシステム格納位置を蓄積管理ライブラリに引き渡し、記録領域３１１３に蓄積されたファイルシステムの取り出しを依頼し、蓄積管理ライブラリ３６０５ｈは、タイムスタンプが有効なＶｅｒｓｉｏｎをもつファイルシステムを取り出しＡＭ２２０５ｂに引き渡すといった処理を行ってもよい。
【０２５１】
また、なおここで、ＡＭ２２０５ｂは、実行すべきＪａｖａプログラムのファイルシステムを取得し1次記憶１６０８または２次記憶部１６０７に保存する方法として、実施の形態1と同様の方法をとっても本実施の形態は実施可能である。具体的には、ＡＩＴの情報の中から「ａｕｔｏｓｔａｒｔ」のＪａｖａプログラムを見つけ出し、対応するＤＳＭＣＣ識別子及びＪａｖａプログラム名を抽出する。図４９を参照して、ＡＭ２２０５ｂは行４１１１のＪａｖａプログラムを抽出し、ＤＳＭＣＣ識別子「１」及びＪａｖａプログラム名「ａ／ＴｏｐＸｌｅｔ」を獲得し、ＡＩＴの情報から取得したＤＳＭＣＣ識別子を蓄積管理ライブラリに引き渡し、記録領域３１１３に蓄積されたファイルシステムの取り出しを依頼する。蓄積管理ライブラリ３６０５ｈは、さらに指定されたＤＳＭＣＣ識別子が特定するファイルシステムであってかつタイムスタンプが有効なＶｅｒｓｉｏｎをもつファイルシステムを取り出し、取り出したファイルシステムをＡＭ２２０５ｂに引き渡し、ＡＭ２２０５ｂは、ファイルシステムを1次記憶１６０８または２次記憶部１６０７に保存する。という方法を取っても本実施の形態は実施可能である。
【０２５２】
図４７は、1次記憶１６０８または２次記憶部１６０７に保存されたファイルシステムの一例である。ここで、図４７において、図４２と同等の構成要素には同一番号を付し説明を省略する。
【０２５３】
次にＡＭ２２０５ｂは、1次記憶１６０８または２次記憶部１６０７に保存したファイルシステム中から実行するＪａｖａプログラムをＪａｖａＶＭ２２０３に引き渡す。今、実行するＪａｖａプログラム名が「ａ／ＴｏｐＸｌｅｔ」とすると、Ｊａｖａプログラム名の最後に「．ｃｌａｓｓ」を付加したファイル「ａ／ＴｏｐＸｌｅｔ．ｃｌａｓｓ」が実行すべきファイルとなる。「／」はディレクトリやファイル名の区切りであり、図４７を参照して、ファイル４３０４が実行すべきＪａｖａプログラムである。次にＡＭ２２０５ｂは、ファイル４３０４をＪａｖａＶＭ２２０３に引き渡す。
【０２５４】
ＪａｖａＶＭ２２０３は、引き渡されたＪａｖａプログラムを実行する。
ここで、サービスのＰｌａｙｂａｃｋ中には、映像音声とＪａｖａプログラムは、同期して実行される必要がある。従って、サービスのＰｌａｙｂａｃｋ時においては、ＪａｖａＶＭ２２０３からあるファイルシステムの取得が要求されたときに蓄積管理ライブラリ３６０５ｈは、ファイルシステムのタイムスタンプを参照しタイムスタンプが有効なＶｅｒｓｉｏｎのファイルシステムを取り出す。ここで、タイムスタンプが有効であるとは、例えば、サービスＰｌａｙｂａｃｋ中のＭＰＥＧ２トランスポートストリーム上の時刻がタイムスタンプの示す開始時刻以上かつ終了時刻未満であることを言う。
【０２５５】
図５３は、サービスのＰｌａｙｂａｃｋ時において、サービスマネージャ２２０４からチャンネル識別子を与えられデータ放送再生を依頼されたＡＭ２２０５ｂによる蓄積管理ライブラリを利用しての記録領域に蓄積されたＪａｖａプログラムの実行処理の一例を示すフローチャートである。
【０２５６】
図５３のフローチャートを参照して、ＡＩＴはサービスのＰｌａｙｂａｃｋ中、サービスマネージャ２２０４からチャンネル識別子を与えられデータ放送再生を依頼された（Ｓ−５３０１）後、指定されたチャンネル識別子にて、蓄積管理ライブラリへ記録領域からＡＩＴの情報の取り出しを依頼し（Ｓ−５３０２）、蓄積管理ライブラリは、記録領域から、チャンネル識別子が特定し、かつ、
タイムスタンプが有効なＶｅｒｓｉｏｎのＡＩＴの情報を取り出す（Ｓ−５３０３）。続いて、取り出したＡＩＴの情報に記述された制御情報が「ａｕｔｏｓｔａｒｔ」のJavaプログラムを選択し、Ｊａｖａプログラム名、および、タイムスタンプが有効なＶｅｒｓｉｏｎのファイルシステムを抽出し（Ｓ−５３０４）、抽出したファイルシステムおよびＪａｖａプログラム名に基づき、実行すべきＪａｖａプログラムのファイルを取得し、ＪａｖａＶＭ２２０３へ渡し、Ｊａｖａプログラムの起動指示を行う（Ｓ−５３０５）。さらに継続して、蓄積管理ライブラリは、サービスＰｌａｙｂａｃｋが終了するまでの間、記録領域から取り出したＶｅｒｓｉｏｎのＡＩＴの情報のタイムスタンプの終了時刻がくると（Ｓ−５３０６〜Ｓ−５３０８）、再び、記録領域から、指定されたチャンネル識別子が特定し、かつ、タイムスタンプが有効なＶｅｒｓｉｏｎのＡＩＴの情報を取り出しＡＭに引き渡す（Ｓ−４８０５）処理を繰り返し継続し、Ｐｌａｙｂａｃｋ時刻と同期したＡＩＴの情報の記録領域からの取り出しを実現し、したがってＪａｖａＶＭは常にＰｌａｙｂａｃｋ時刻と同期したＡＩＴの情報に記載されたＪａｖａプログラムを含むＰｌａｙｂａｃｋ時刻と同期したファイルシステム中のファイルを利用することが実現される。
【０２５７】
このように、サービスＲｅｃｏｒｄ時にＡＩＴの情報を各Ｖｅｒｓｉｏｎにタイムスタンプを付して蓄積することで、サービスＰｌａｙｂａｃｋ時において、ＡＭがＡＩＴを獲得する処理が不要となる。さらに、蓄積するＡＩＴの情報がそのＡＩＴに記述されるＪａｖａプログラムを構成するファイルシステムであってタイムスタンプの有効なＶｅｒｓｉｏｎのファイルシステムの格納位置を保持することにより、サービスＰｌａｙｂａｃｋ時に記録領域３１１３からのファイルシステムの取得が容易になる。
【０２５８】
なお、本実施の形態においては、繰り返し送信されるデータの蓄積方法の例としてＡＩＴを取り上げて説明した。しかし、先述のように、トランスポートストリーム中に一定の間隔に繰り返し送信されるＤＣＭＣＣにてエンコードされたファイルシステム以外のデータとしては、ＰＡＴ、ＰＭＴ、ＡＩＴ等のｔａｂｌｅや、ストリームイベントなどが存在する。本実施の形態におけるサービスのＲｅｃｏｒｄ時に繰り返し送信されるデータにタイムスタンプを付けてＶｅｒｓｉｏｎごと蓄積し、サービスのｐｌａｙｂａｃｋ時に必要となったデータをそのタイムスタンプを参照して記録領域３１１３から取得して利用する方法は、これらＰＡＴ、ＰＭＴ、等のｔａｂｌｅや、ストリームイベントなどのデータにも適用可能である。
【０２５９】
本実施の形態による効果は以下のとおりである。
第1の効果として、実施の形態１において述べたように、ＴＳデコーダ１６０２は、ＣＰＵ１６０６が指定するＰＩＤ，セクションフィルタ条件等の指定に基づいてＭＰＥＧ２トランスポートストリームから指定条件に合致するＰＥＳパケットやＭＰＥＧ２セクションを選別する機能を有するデバイスであり、ＴＳデコーダ１６０２内には、ＰＩＤフィルタ２００２が１つ以上、セクションフィルタ２００３が１つ以上、デスクランブラ２００４が１つ以上ずつ存在する。ここで、特に、セクションフィルタ２００３に関して述べる、ＰＡＴ、ＰＭＴ、ＡＩＴの継続的なフィルタリング時においては、ＴＳデコーダは、それぞれ異なるセクションフィルタ条件、ｔａｂｌｅ＿ｉｄ「０」、ｔａｂｌｅ＿ｉｄ「２」、ｔａｂｌｅ＿ｉｄ「０ｘ７４」、を指定されるが、１つのセクションフィルタは同時に複数のｔａｂｌｅ（ＰＡＴ、ＰＭＴ、ＡＩＴ等）のフィルタリングを行うことができないため、フィルタリングが必要なｔａｂｌｅごとにセクションフィルタを用いることになる。セクションフィルタは有限数の資源であるが、サービス選択中/サービスＰｌａｙｂａｃｋ中においては、トランスポートストリーム内に存在するプログラムに関する情報の変更を検知するために、ＰＡＴ、ＰＡＴ、ＡＩＴのフィルタリングを継続する必要があり、従って、これらｔａｂｌｅをフィルタリングするための各セクションフィルタを独占的に利用することとなる。
【０２６０】
しかし、本実施の形態により、サービスＰｌａｙｂａｃｋ時において、ＡＭがＡＩＴを獲得する処理が不要となり、従ってＴＳデコーダによるトランスポートストリームからのＡＩＴの継続的なフィルタリング、或いは、ＰＡＴ、ＰＭＴ、ＡＩＴの継続的なフィルタリングが不要となる。これにより、ＰＡＴ、ＰＭＴ、ＡＩＴをフィルタリングするためのセクションフィルタの無駄な利用を削減できる。
【０２６１】
また、第２の効果として、蓄積するＡＩＴの情報がタイムスタンプの有効なＶｅｒｓｉｏｎのファイルシステムの格納位置を保持することにより、サービスＰｌａｙｂａｃｋ時に記録領域３１１３からのファイルシステムの取得が容易になる。
【０２６２】
また、第３の効果としては、サービスＰｌａｙｂａｃｋ時、特にトリックプレイ（高速再生）時には、記録領域３１１３に蓄積されたトランスポートストリームからセクションフィルタを利用してリアルタイムにＰＡＴ/ＰＭＴ／ＡＩＴ等のｔａｂｌｅをフィルタリングすることは困難である。本実施の形態においてはサービスＲｅｃｏｒｄ時にフィルタリングしたｔａｂｌｅをトランスポートストリームとは異なる形態にて蓄積し、サービスＰｌａｙｂａｃｋ時におけるトランスポートストリームからｔａｂｌｅをフィルタリングする処理を省くことができ、トリックプレイ時におけるｔａｂｌｅの情報取得を容易にできる。
【０２６３】
（実施の形態３）
実施の形態１及び実施の形態２においては、Ｒｅｃｏｒｄを指定されたサービスに含まれる全てのＪａｖａプログラムを含むファイルシステムを蓄積していたが、本実施の形態においては、Ｒｅｃｏｒｄを指定されたサービスに含まれるＪａｖａプログラムのうち、どのＪａｖａプログラムを含むファイルシステムを記録するかをＡＩＴに記載される各Ｊａｖａプログラムの制御情報２６０２に従って決定することとする。ＡＩＴに記載される制御情報には、Ｊａｖａプログラムを自動的に実行させる「ａｕｔｏｓｔａｒｔ」、自動的には実行しないが他のＪａｖａプログラムから実行されうる「ｐｒｅｓｅｎｔ」、自動的に終了させる「Ｋｉｌｌ」、「Ｄｅｓｔｒｏｙ」が存在するが、制御情報にて「Ｋｉｌｌ」、「Ｄｅｓｔｒｏｙ」と指定されたＪａｖａプログラムはもはや必要がない。従って、ＡＩＴに記載され、かつ、ＡＩＴの制御情報が「ａｕｔｏｓｔａｒｔ」または「ｐｒｅｓｅｎｔ」のＪａｖａプログラムを含むファイルシステムのみを記録領域３１１３に蓄積し、ＡＩＴに記載されていても制御情報２６０２が「ｋｉｌｌ」または「Ｄｅｓｔｒｏｙ」であるＪａｖａプログラムを含むファイルシステムは記録領域３１１３に蓄積しなくてよいものとする。
【０２６４】
このように、ＡＩＴの制御情報に従ったＪａｖａプログラムを含むファイルシステムの蓄積により、より効率的な記録領域３１１３の削減を実現することを本実施の形態の目的とする。
【０２６５】
次に、本実施の形態における、図２８に示すようなサービスのＲｅｃｏｒｄ・Ｐｌａｙｂａｃｋ機能を備えるデジタル放送受信機における、レコーディングマネージャ３６０６によるサービスのＲｅｃｏｒｄ処理について述べる。本  実施の形態におけるレコーディングマネージャ３６０６によるサービスのＲｅｃｏｒｄ処理は、実施の形態１または実施の形態２におけるレコーディングマネージャ３６０６によるサービスのＲｅｃｏｒｄ処理とＡＩＴの獲得に関する処理を除いてほぼ同等であるので、ここでは、同等の処理については説明を省略し、相違点である、レコーディングマネージャ３６０６からチャンネル識別子を与えられ、データ放送の蓄積を依頼された蓄積管理ライブラリ３６０５ｈの処理のみを記述する。
【０２６６】
蓄積管理ライブラリ３６０５ｈは、レコーディングマネージャ３６０６から、チャンネル識別子を与えられデータ放送の蓄積を依頼されると、まず、チャンネル識別子に従い、実施の形態１におけるサービスのＲｅｃｏｒｄ処理時と同様の方法で、ＰＡＴ、ＰＭＴを取得し、さらに、ＡＩＴを獲得する。
【０２６７】
ここで、取得したＡＩＴの情報は、図４１に示す情報であるとする。図４２は、ＡＩＴに記述される全てのＪａｖａプログラムを含むファイルシステムである。そして、ＡＩＴを参照して、ＡＩＴの中から「ａｕｔｏｓｔａｒｔ」または「ｐｒｅｓｎｔ」のＪａｖａプログラムを見つけ出し、対応するＤＳＭＣＣ識別子及びＪａｖａプログラム名を全て抽出する。図４１を参照して、蓄積管理ライブラリ３６０５ｈは行４１１１、及び、行４１１２のＪａｖａプログラムを抽出し、ＤＳＭＣＣ識別子「１」及びＪａｖａプログラム名「ａ／ＴｏｐＸｌｅｔ」、ＤＳＭＣＣ識別子「１」及びＪａｖａプログラム名「ｂ/ＧａｍｅＸｌｅｔ」を獲得する。
【０２６８】
次に蓄積管理ライブラリ３６０５ｈは、ＡＩＴから取得したＤＳＭＣＣ識別子を用いて、ＤＳＭＣＣ方式で格納しているＴＳパケットのＰＩＤをＰＭＴから獲得する。具体的には、ＰＭＴの中でストリーム種別が「データ」で、補足情報のＤＳＭＣＣ識別子が合致するエレメンタリ−ストリームのＰＩＤを取得する。
【０２６９】
今、ＤＳＭＣＣ識別子が「１」であり、ＰＭＴが図４０とすると、行１１１４のエレメンタリ−ストリームが合致し、ＰＩＤ「５０１４」を取り出す。
【０２７０】
蓄積管理ライブラリ３６０５ｈは、ＯＳ２２０１のライブラリ２２０１ｂを通してＴＳデコーダ１６０２にＤＳＭＣＣ方式でデータが埋めこまれたＭＰＥＧ２セクションを伝送するＴＳパケットのＰＩＤ及びセクションフィルタ条件を指定する。ここでは、ＰＩＤ「５０１４」を与える。ＴＳデコーダ１６０２は与えられたＰＩＤを用いてＤＳＭＣＣ用ＭＰＥＧ２セクションのフィルタリングを行い、１次記憶部１６０８を通してＣＰＵ１６０６に引き渡す。この結果、蓄積管理ライブラリ３６０５ｈは、必要なＤＳＭＣＣ用ＭＰＥＧ２セクションを収集することができる。蓄積管理ライブラリ３６０５ｈは、収集したＭＰＥＧ２セクションから、ＤＳＭＣＣ方式に従ってファイルシステムを復元し、そのファイルシステムを記録領域３１１３に蓄積する。
【０２７１】
図５４は、サービスＲｅｃｏｒｄ時に記録領域３１１３に蓄積されたファイルシステムの一例である。図４７において、図４３と同等の構成要素には同一番号を付し説明を省略する。
【０２７２】
そして、蓄積管理ライブラリ３６０５ｈは、実施の形態１または２と同様にして、サービスＲｅｃｏｒｄ期間中、ＡＩＴのフィルタリングとＤＳＭＣＣ用ＭＰＥＧ２セクションのフィルタリング及びファイルシステムの復元によるファイルシステムの取得を継続し、各Ｖｅｒｓｉｏｎのファイルシステムにタイムスタンプを付して蓄積する。
【０２７３】
なお、ここでは、蓄積すべきＪａｖａプログラムが同一のＤＳＭＣＣ識別子を持つため同一のエレメンタリ−ストリーム中のＤＳＭＣＣ用ＭＰＥＧセクションから復元されるファイルシステム中に存在しているが、蓄積すべきＪａｖａプログラムが異なるＤＳＭＣＣ識別子を持ち異なるエレメンタリーストリーム中に存在する場合など、他のケースにおいても本発明は実施可能である。
【０２７４】
ここで、本実施の形態における、図２８に示すようなサービスのＲｅｃｏｒｄ・Ｐｌａｙｂａｃｋ機能を備えるデジタル放送受信機における、サービスマネージャ２２０４によるサービスのＰｌａｙｂａｃｋ処理は、実施の形態１または実施の形態２の場合と同等の処理のため説明を省略する。
【０２７５】
なお、実施の形態1〜２及び、サービス選択時或いはサービスＰｌａｙｂａｃｋ時に、ＡＭ２２０５ｂがＪａｖａＶＭ２２０３に引き渡し実行を依頼するファイルは、ＡＩＴに記載されたＪａｖａプログラムのみであり、本実施の形態においては「a/ＴｏｐＸｌｅｔ．ｃｌａｓｓ」、「b/ＧａｍｅＸｌｅｔ．ｃｌａｓｓ」であるが、これら、ＪａｖａＶＭ２２０３に引き渡されＪａｖａＶＭ２２０３から実行されるファイルは、その実行時において更に自身を含むファイルシステム中の全てのファイルを利用可能である。従って、サービスＲｅｃｏｒｄ時においては、それらＪａｖａＶＭ２２０３に引き渡されたＪａｖａプログラムがその実行時に利用する可能性があることから、ＡＩＴに記載されたＪａｖａプログラムを含むファイルシステム内の全てのファイルを記録領域３１１３に蓄積する方法をとっている。しかし、ＭＨＰ／ＯＣＡＰ／ＯＣＡＰ−ＤＶＲに限定しないシステムを想定し、ＡＩＴに記載されたＪａｖａプログラムのみがサービス選択/Ｐｌａｙｂａｃｋ時に利用される場合においては、図５５に示すように、ＡＩＴに記載されたＪａｖａプログラムのみを蓄積しても良い。このような場合、蓄積管理ライブラリ３６０５ｈは、ＡＩＴから取得したＤＳＭＣＣ識別子を用いて、ＭＰＥＧ２セクションから、ＤＳＭＣＣ方式に従ってファイルシステムを復元し、さらに、復元したファイルシステムの内、Ｊａｖａプログラム名「ａ／ＴｏｐＸｌｅｔ」、Ｊａｖａプログラム名「ｂ/ＧａｍｅＸｌｅｔ」のＪａｖａプログラムのみを獲得し、記録領域３１１３に蓄積する。図５５は、このような場合においえるサービスＲｅｃｏｒｄ時に記録領域３１１３に蓄積されたファイルシステムの一例である。図中、丸はディレクトリを表し、４３０１はルートディレクトリ、４３０２はディレクトリ「ａ」，４３０３はディレクトリ「ｂ」，４３０４はファイル「ＴｏｐＸｌｅｔ．ｃｌａｓｓ」、４３０５はファイル「ＧａｍｅＸｌｅｔ．ｃｌａｓｓ」である。
【０２７６】
このように、本実施の形態に示す方法により、ＡＩＴの制御情報に従ったＪａｖａプログラムを含むファイルシステムまたはファイルを蓄積することにより、記録領域３１１３のへの蓄積領域を、より効果的に削減することができる。
（実施の形態４）
本発明の実施の形態について、図３１や図３２を参照して、ＴＳデコーダ１６０２、ＡＶデコーダ２００５、ＡＶエンコーダ３１１１、多重器３１１２は、これら全部あるいは１部が１つデバイスによって構成されていても発明は実施可能である。
【０２７７】
なお、本発明において、ＴＳデコーダ１６０２から出力されＡＶデコーダ２００５へ入力されるデータはＰＥＳパケットであることを前提として述べたが、ＴＳデコーダ１６０２から出力及びＡＶデコーダ２００５へ入力はＥＳ等、他の形式のデータであっても本発明は実施可能である。
【０２７８】
なお、ＡＶエンコーダによるａｕｄｉｏ信号及びｖｉｄｅｏ信号のエンコード形式は、ａｕｄｉｏ信号の場合はＭＰＥＧ２ａｕｄｉｏエンコーダによるＭＰＥＧ２ａｕｄｉｏ形式が、ｖｉｄｅｏ信号の場合はＭＰＥＧ２ｖｉｄｅｏエンコーダによるＭＰＥＧ２ｖｉｄｅｏ形式であることを前提とし、本発明の実施の形態において、ＡＶエンコーは、ａｕｄｉｏ信号及びｖｉｄｅｏ信号を入力し、映像・音声のＰＥＳパケットを出力すると記述したが、ＡＶエンコーダのエンコード形式は、上記ＭＰＥＧ２ａｕｄｉｏ、ＭＰＥＧ２ｖｉｄｅｏ形式限らず、出力する映像・音声の形式はＰＥＳパケットに制限しない。
【０２７９】
なお、本発明の実施の形態において、記録領域３１１３は、多重器２８１２が生成したＲｅｃｏｒｄ用ＭＰＥＧ２トランスポートストリームを入力し、蓄積すると記述したが、記録領域３１１３に蓄積するストリームの形式はＭＰＥＧ２トランスポートストリームに限らず、ＭＰＥＧ２プログラムストリーム等、他の形式であっても本発明は実施可能である。
【０２８０】
また、本発明の実施の形態において、多重器はＭＰＥＧ２トランスポートストリームを生成することを前提としたが、多重器は、ＴＳ Ｍｕｌｔｉｐｌｅｘｅｒに限らず、ＰＳ Ｍｕｌｔｉｐｌｅｘｅｒ等、他のデバイスが行ってもよく、従って、多重器が多重化するＲｅｃｏｒｄ用ストリームの形式はＭＰＥＧ２トランスポートストリームに限らず、ＭＰＥＧ２プログラムストリーム等、他の形式であっても本発明は実施可能である。
【０２８１】
また、なお、本発明において、サービスＰｌａｙｂａｃｋ時において、蓄積管理ライブラリ３６０５ｈは、記録領域３１１３からＭＰＥＧ２トランスポートストリームを取り出しＴＳデコーダに１６０２に引き渡すと記述したが、記憶領域から取り出すストーリームの形式は、サービスＲｅｃｏｒｄ時に蓄積する形式と同じであり、ＭＰＥＧ２トランスポートストリームとは限らず、他の形式であっても良い。そして、これに付随して、本発明の実施の形態においては、サービスＰｌａｙｂａｃｋ時には、ＴＳデコーダに１６０２がＭＰＥＧ２トランスポートストリームをデコードし、ＡＶデコーダがＰＥＳパケットをデコードすると記述したが、記録領域３１１３が蓄積するストリームと同じ形式のストリームをデコード可能なものであれば、その他のデコード形式に対応したその他デバイスを用いても本発明は実施可能である。
【０２８２】
なお、本発明において、記録領域３１１３は、２次記憶領域１６０７の全体または一部と対応すると記述したが、記憶領域３１１３は、1次記憶１６０８であっても、ＨＤＤ、ＢＤ、ＤＶＤやＳＤなどの半導体メモリであっても、ＴＣＰ／ＩＰ接続、ＵＳＢ接続、ＩＥＥＥ１３９４接続、赤外線接続、等、何らかの方法で接続された別端末であってもよい。また、記憶領域３１１３が蓄積するストリームの形式はＭＰＥＧ２トランスポートストリームに限らず他の形式であっても本発明は実施可能である。
【０２８３】
また、本発明では、ＲＯＭ１６０９が保存する内容を２次記憶部１６０７が保存することで、ＲＯＭ１６０９を削除することも実施可能である。また、２次記憶部１６０７は、複数のサブ２次記憶部で構成し、個々のサブ２次記憶部が異なる情報を保存しても実施可能である。例えば、１つのサブ２次記憶部はチューニング情報のみを保存し、別のサブ２次記憶部は、ＯＳ２２０１のライブラリ２２０１ｂを保存し、更に別のサブ２次記憶部は、ダウンロードしたＪａｖａプログラムを保存するなど、詳細に分割することが可能である。
【０２８４】
また、本発明においては、ダウンロードしたＪａｖａプログラムを１次記憶部１６０７に保存していたが、２次記憶部１６０８に保存することも実施可能である。１次記憶部１６０８に保存する場合、電源ＯＦＦ時に、保存された情報は全て消える。
【０２８５】
また、本発明においては、明記していない部分は参照ハードウェア構成例を図１６としているが、図１８のようにアダプタを利用するハードウェア構成でももちろん本発明は適用可能である。その場合は同一デバイスで図１６と図１８で識別番号が異なるものは、識別番号を置き換えた表現を用いることで、図１８の説明とする。例えば、ＣＰＵ１６０６はＣＰＵ１８０６として解釈される。また図２０と図２１においても同様である。基本参照ハードウェア構成として図２０を用いているが、図２１においてももちろん本発明は適用可能である。
【０２８６】
また、前述のＯＣＡＰ環境ではサービスは二種類存在する。一つはＰＭＴと結びついて存在する通常のサービスで、もう一つはＰＭＴと結びつかずに存在する抽象サービスである。通常のサービスは本発明でここまで説明してきたサービスと同義であり、通常のサービスが選択されると、チューニング、暗号解除、映像音声再生、Ｊａｖａプログラム起動がサービスマネージャ２２０４により行われる。一方、抽象サービスはＪａｖａプログラムのみを内包して存在し、サービスの選択時には映像・音声の再生は行われない。また、抽象サービスが内包するＪａｖａプログラムは、抽象サービスが選択された時にダウンロードされ起動されるが、その時、２次記憶部１６０７に記録される場合がある。一度２次記憶部１６０７にＪａｖａプログラムが記録されると、それ以降は、記録したＪａｖａプログラムよりも新しいＪａｖａプログラムがダウンロード可能でない限り、サービス選択時、Ｊａｖａプログラムは２次記憶部よりロードされて起動されるようになる。
【０２８７】
また、本発明の実施の形態において、サービスマネージャ２２０４、及び、レコーディングマネージャ３６０６は、Ｊａｖａ言語で書かれたＪａｖａプログラムであり、ＪａｖａＶＭ１６０３によって逐次実行され、ＪＮＩ（Ｊａｖａ  Ｎａｔｉｖｅ  Ｉｎｔｅｒｆａｃｅ）を通して、Ｊａｖａ言語で記述されていない他のサブプログラムを呼び出したり、または、呼び出されたりすることが可能であると記載したが、サービスマネージャ２２０４、及び、レコーディングマネージャ３６０６は、Ｃ言語等、Ｊａｖａ言語以外の言語で書かれ、他のサブプログラムと同様にＣＰＵ１６０６上にて実行するプログラムであっても本発明は実施可能である。
【０２８８】
また、本発明の実施の形態において、蓄積管理ライブラリ３６０５ｈは、Ｊａｖａライブラリ３６０５ｈに含まれると記載したが、Ｊａｖａライブラリ３６０５ｈに含まれず、Ｃ言語等、Ｊａｖａ言語以外の言語で記述されたサブプログラムであって、他のサブプログラムからはＪａｖａ以外の言語にて呼び出されたり、呼び出したりすることが可能なサブプログラムであっても本発明は実施可能である。
【０２８９】
また、本発明において、サービスに含まれる「Ｊａｖａプログラム」は、Ｊａｖａ言語で記述されＪａｖａＶＭによって実行されるプログラムであると記載したが、サービスに含まれる「Ｊａｖａプログラム」は、その他の言語で記載されたプログラムであっても本発明は実施可能である。
【産業上の利用可能性】
【０２９０】
本発明は、放送受信装置をベースとするが、携帯電話などの他の情報機器において放送を受信する機能を持つものであれば適用可能である。
【図面の簡単な説明】
【０２９１】
【図１】本発明に係る放送システムの構成図である。
【図２】本発明に係るケーブルテレビシステムにおいて放送局側システムと端末装置間の通信に使用される周波数帯域の使い方の一例である。
【図３】本発明に係るケーブルテレビシステムにおいて放送局側システムと端末装置間の通信に使用される周波数帯域の使い方の一例である。
【図４】本発明に係るケーブルテレビシステムにおいて放送局側システムと端末装置間の通信に使用される周波数帯域の使い方の一例である。
【図５】ＭＰＥＧ２仕様で既定されるＴＳパケットの構成図である。
【図６】ＭＰＥＧ２トランスポートストリームの模式図である。
【図７】ＭＰＥＧ２仕様で既定されるＰＥＳパケットがＴＳパケットを用いて伝送される際の分割例である。
【図８】ＭＰＥＧ２仕様で既定されるＭＰＥＧ２セクションがＴＳパケットを用いて伝送される際の分割例である。
【図９】ＭＰＥＧ２仕様で既定されるＭＰＥＧ２セクションの構成図である。
【図１０】ＭＰＥＧ２仕様で既定されるＭＰＥＧ２セクションの利用例である。
【図１１】ＭＰＥＧ２仕様で規定されるＰＭＴの利用例である。
【図１２】ＭＰＥＧ２仕様で規定されるＰＡＴの利用例である。
【図１３】ＭＰＥＧ２仕様で規定されるＰＥＳパケットが暗号化される場合の例である。
【図１４】ＭＰＥＧ２仕様で規定されるＭＰＥＧ２セクションが暗号化される場合の例である。
【図１５】ＥＭＭやＥＣＭを用いた暗号化の判定シーケンスである。
【図１６】本発明に係る放送受信装置のハードウエア構成の構成例である。
【図１７】本発明に係る端末装置１２００のハードウェア構成における入力部１６１０のフロントパネル例である。
【図１８】本発明に係る放送受信装置のハードウェア構成の構成例である。
【図１９】本発明に係るＣａｂｌｅＣＡＲＤを利用する放送受信装置のハードウェア構成例である。
【図２０】本発明に係る放送受信装置のデバイス接続例である。
【図２１】本発明に係る放送受信装置のデバイス接続例である。
【図２２】本発明に係る端末装置１６００が保存するプログラム構成の構成図である。
【図２３】本発明に係る端末装置１６００が実行するＥＰＧの例である。
【図２４】本発明に係る２次記憶部１６０７が保存する情報の一例である。
【図２５】本発明に係る１次記憶部１６０８が保存する情報の一例である。
【図２６】本発明に係るＤＶＢ−ＭＨＰ規格が規定するＡＩＴの内容を表す模式図である。
【図２７】本発明に係るＤＳＭＣＣ方式で送信されるファイルシステムを表す模式図である。
【図２８】サービスのＲｅｃｏｒｄ・Ｐｌａｙｂａｃｋ機能を備えるデジタル放送受信機の一般的なハードウェア構成を表すブロック図である。
【図２９】アダプタが物理的に接続されるハードウェア構成を示す図である。
【図３０】ＰＯＤが物理的に接続されるハードウェア構成を示す図である。
【図３１】サービスＲｅｃｏｒｄ時における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図を示す。
【図３２】サービスＲｅｃｏｒｄ時における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する別の概念図を示す。
【図３３】サービスＰｌａｙＢａｃｋ時における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図を示す。
【図３４】サービスＰｌａｙＢａｃｋ時における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する別の概念図を示す。
【図３５】図２９に表される、アダプタが物理的に接続されるハードウェア構成に対応する概念図である。
【図３６】ＲＯＭに記憶され、ＣＰＵに実行されるプログラムの構成図の一例を示す図である。
【図３７】（１）は、蓄積管理ライブラリの構成図であり、（２）及び（３）は、蓄積管理ライブラリのデータ管理部が管理する蓄積されたデータ毎の格納場所及び必要なデータの一例を示す図である。
【図３８】ＥＰＧの番組表示部がディスプレイに表示した番組表の一例を示す図である。
【図３９】ＥＰＧの番組表示部がディスプレイに表示した番組表の一例を示す図である。
【図４０】ＰＭＴの例を示す図である。
【図４１】収集したＡＩＴの情報の一例を模式的に表した表である。
【図４２】ＤＳＭＣＣ方式にてトランスポートストリームにエンコードされたファイルシステムの一例を示す図である。
【図４３】サービスＲｅｃｏｒｄ時に記録領域に蓄積されたファイルシステムの一例を示す図である。
【図４４】サービスＲｅｃｏｒｄ期間中に繰り返し送信/取得される、一つのファイルシステムの一例を示す図である。
【図４５】蓄積管理ライブラリのデータ記録部によるファイルシステムの記録処理の一例を示すフローチャートである。
【図４６】Ｖｅｒｓｉｏｎ毎のファイルシステムを示す一例である。
【図４７】１次記憶または２次記憶部に保存されたファイルシステムの一例を示す図である。
【図４８】Ｊａｖａプログラムの実行処理の一例を示すフローチャートである。
【図４９】記録領域にＡＩＴの情報と蓄積したファイルシステムが対応つけられて蓄積されている一例を表す図である。
【図５０】蓄積管理ライブラリのデータ記録部によるＡＩＴ情報の記録処理の一例を示すフローチャートである。
【図５１】Ｖｅｒｓｉｏｎ毎のＡＩＴの情報を示す一例である。
【図５２】Ｖｅｒｓｉｏｎごとにタイムスタンプを有した各Ｖｅｒｓｉｏｎのファイルシステムの格納位置を持つＡＩＴ情報を示す一例を示す図である。
【図５３】Ｊａｖａプログラムの実行処理の一例を示すフローチャートである。
【図５４】サービスＲｅｃｏｒｄ時に記録領域に蓄積されたファイルシステムの一例を示す図である。
【図５５】サービスＲｅｃｏｒｄ時に記録領域に蓄積されたファイルシステムの一例を示す図である。
【図５６】特許文献１の説明図である。
【符号の説明】
【０２９２】
２１００  端末装置
１８１１  アダプタ
１８０２  ＴＳデコーダ
２１０１  チューナ
２１０４  デスクランブラ
２１０２  ＰＩＤフィルタ
２００３  セクションフィルタ
２００５  ＡＶデコーダ
２００６  ディスプレイ／スピーカ
２００７  １次記憶
【図１】
2008066764.tif 000003
【図２】
2008066764.tif 000004
【図３】
2008066764.tif 000005
【図４】
2008066764.tif 000006
【図５】
2008066764.tif 000007
【図６】
2008066764.tif 000008
【図７】
2008066764.tif 000009
【図８】
2008066764.tif 000010
【図９】
2008066764.tif 000011
【図１０】
2008066764.tif 000012
【図１１】
2008066764.tif 000013
【図１２】
2008066764.tif 000014
【図１３】
2008066764.tif 000015
【図１４】
2008066764.tif 000016
【図１５】
2008066764.tif 000017
【図１６】
2008066764.tif 000018
【図１７】
2008066764.tif 000019
【図１８】
2008066764.tif 000020
【図１９】
2008066764.tif 000021
【図２０】
2008066764.tif 000022
【図２１】
2008066764.tif 000023
【図２２】
2008066764.tif 000024
【図２３】
2008066764.tif 000025
【図２４】
2008066764.tif 000026
【図２５】
2008066764.tif 000027
【図２６】
2008066764.tif 000028
【図２７】
2008066764.tif 000029
【図２８】
2008066764.tif 000030
【図２９】
2008066764.tif 000031
【図３０】
2008066764.tif 000032
【図３１】
2008066764.tif 000033
【図３２】
2008066764.tif 000034
【図３３】
2008066764.tif 000035
【図３４】
2008066764.tif 000036
【図３５】
2008066764.tif 000037
【図３６】
2008066764.tif 000038
【図３７】
2008066764.tif 000039
【図３８】
2008066764.tif 000040
【図３９】
2008066764.tif 000041
【図４０】
2008066764.tif 000042
【図４１】
2008066764.tif 000043
【図４２】
2008066764.tif 000044
【図４３】
2008066764.tif 000045
【図４４】
2008066764.tif 000046
【図４５】
2008066764.tif 000047
【図４６】
2008066764.tif 000048
【図４７】
2008066764.tif 000049
【図４８】
2008066764.tif 000050
【図４９】
2008066764.tif 000051
【図５０】
2008066764.tif 000052
【図５１】
2008066764.tif 000053
【図５２】
2008066764.tif 000054
【図５３】
2008066764.tif 000055
【図５４】
2008066764.tif 000056
【図５５】
2008066764.tif 000057
【図５６】
2008066764.tif 000058