JP2006345505A - 放送蓄積端末 - Google Patents

放送蓄積端末 Download PDF

Info

Publication number
JP2006345505A
JP2006345505A JP2006137043A JP2006137043A JP2006345505A JP 2006345505 A JP2006345505 A JP 2006345505A JP 2006137043 A JP2006137043 A JP 2006137043A JP 2006137043 A JP2006137043 A JP 2006137043A JP 2006345505 A JP2006345505 A JP 2006345505A
Authority
JP
Japan
Prior art keywords
service
program
tsb
recording
broadcast
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006137043A
Other languages
English (en)
Inventor
Takasato Suzuki
孝聡 鈴木
Shigeaki Watanabe
茂晃 渡邉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of JP2006345505A publication Critical patent/JP2006345505A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)

Abstract

【課題】ユーザの嗜好に合致するがユーザが視聴していない番組を揮発性のバッファに一定時間録画しておく放送蓄積端末を提供する。
【解決手段】ユーザの嗜好を考慮して、自動録画を行うと、嗜好分析に失敗した場合、ユーザの嗜好に合わないコンテンツ分、録画領域が無駄になる。そこで、ユーザの嗜好に合致し、かつユーザが視聴していない番組を固定長のリングバッファに記録することにより、一定期間番組を記録してユーザが後から見たいと思ったときに利用可能な上に、録画領域を無駄にすることがない。
【選択図】図25

Description

本発明は、コンテンツを蓄積するとともに、蓄積されたコンテンツを再生する録画再生装置(放送蓄積端末)に関する。殊に、映像、音声およびプログラム等のデータから構成されるコンテンツが相互に同期をとって放送波に多重されて送信され、その放送波を受信して映像、音声、データを蓄積するための仕組み、および、映像、音声とプログラム等のデータの同期を保持しつつコンテンツの再生を実行する仕組みに関する。
放送局から送信される放送波は、多種多様なコンテンツを含んでいる。コンテンツは、通常の番組で用いられる映像、音声の他に、データを含む場合がある。データの送信方法にはいくつかの方式があり、大別して時系列に送信する方式と、一定の間隔ごとに繰り返し送信する方式がある。前者の時系列に送信する方式では、例えば、時間経過に合わせて連続するデータを順次送信していく。大量のデータを長時間かけて送信する場合に適しているが、送信タイミングで受信しなかった場合は二度と受信できないという欠点がある。一方、後者の一定の間隔ごとに繰り返し送信する方式では、同じデータを一定の期間何度も繰り返し送信する。同一データを送信している期間内に、繰り返し送信されているデータのいずれかひとつを受信すればよいので、受信タイミングが限定されないというメリットがある。例えば、BMLに代表されるデータ放送や、DSMCCデータカルーセルによるファイル送信がこの方式である。特に放送においては、受信者がいつ選局して受信を開始するかわからない。時系列に送信する方式では、受信開始が送信タイミングよりも遅れてしまって、データ取得に失敗した場合、二度と再取得できない。よって、放送波で映像、音声とともにアプリケーションプログラム等のデータを送信したい場合には、一定の間隔ごとに繰り返し送信される方式が好適である。
現在、上記のような方式で、映像、音声とアプリケーションプログラムとを含む放送波を受信し、アプリケーションプログラムを映像、音声と同期して実行するための仕様が策定され、運用されている。通常の映像、音声を見るだけでなく、送信されたアプリケーションプログラムを受信して端末に取り込み、それを実行して様々な付加機能を実現することができる。このようにアプリケーションプログラムを送信して端末に取り込む方法はダウンロードとも呼ばれている。例えば、DVB−MHP(Digital Video Broadcasting−Multimedia Home Platform) ETSI ES 201 812 V1.1.1(2003−12)仕様が欧州で策定され、既に仕様に準拠した運用が開始されている。また米国ではケーブル放送環境で同様の仕組みを提供するOCAP(OpenCable Application Platform) OC−SP−OCAP1.0−I14−050119仕様が策定されており、実際に運用開始予定である。これらの仕様では、アプリケーションプログラムがJava(登録商標)言語で記述されている。端末上にはチューニングやグラフィックス表示のための様々なAPI(アプリケーションプログラミングインタフェース)が用意されており、JavaアプリケーションプログラムはAPIを呼び出すことでそれらの機能を制御できる。
さらに、北米では、OCAP仕様にコンテンツの録画再生機能を追加するためのOCAP−DVR OC−SP−OCAP−DVR−I01−040524仕様を策定中である。これはケーブルテレビ放送として送出される映像、音声およびそれらと同期して実行されるJavaアプリケーションプログラムをコンテンツとして録画し、さらに録画したコンテンツを放送波から直接再生する場合と同じように再生するものである。アプリケーションプログラムは、放送波からの直接再生と同様に映像、音声と同期をとって再生される。
またOCAP DVRでは、ハードディスクや半導体メモリといった高速アクセス可能な記録媒体に放送されたコンテンツを録画することで、コンテンツの特殊再生を実現している。ここで、特殊再生とは、早送り、巻戻し、スロー、一時停止、スキップ等の、コンテンツを任意の速度で再生したり、任意の位置から再生したりする機能である。OCAP DVRでは、放送波から端末に取り込んだアプリケーションプログラムがコンテンツの録画や特殊再生を制御できる。すなわち、端末上に録画や特殊再生のためのAPIが用意されており、JavaアプリケーションプログラムがそのAPIを呼び出すことで各機能を制御できる。
さらに、OCAP DVRでは、TSB(Time Shift Buffer)と呼ばれる、ユーザがその時点で視聴しているコンテンツを同時に録画しておき、リプレイを容易に実現する機能がサポートされている。通常のコンテンツ録画は、前提として、高速アクセス可能な記録媒体上にコンテンツを記録することで成され、そのコンテンツを記録した領域はそのコンテンツが削除されるまで再利用することができない。またその領域の大きさは、コンテンツの録画継続時間に比例して大きくなる。それに対してTSBは、ある程度短い時間におけるリプレイを想定して設計されており、高速アクセス可能な記録媒体上の固定長領域に、コンテンツを繰り返しリングバッファ的に録画する。論理的には、その固定長領域の最初からコンテンツを記録していき、固定長領域の最後に到達したら、再度固定長領域の最初からコンテンツを上書きする。TSBを用いることで、固定長の領域を利用して、簡単にリプレイを実現することが可能となる。
OCAP−DVR仕様 OC−SP−OCAP−DVR−I01−040524
既に発売されているいくつかの端末は、ユーザの視聴履歴を利用してユーザの嗜好を分析し、ユーザが明示的に録画を指示しなくても、自動的にユーザが好みそうなコンテンツの録画を行う。しかし、自動的に録画したコンテンツが占める領域は、削除するまで他のコンテンツの録画に利用することができない。そのため、分析に失敗して、ユーザの嗜好に合わないコンテンツを録画してしまった場合は、録画領域が不要なコンテンツで占められてしまう。
また、その中でさらに幾つかの端末は、自動録画用の領域の最大長を設定できる。この場合、自動録画したコンテンツが占める領域が指定された最大長に達した場合、自動録画機能がストップし、それ以上の録画は行われない。この場合、コンテンツ自動録画機能が利用可能な領域を制限することで、領域が無駄に消費されることを防ぐことはできるが、自動録画機能がストップすることにより、それ以降、ユーザの嗜好に合った番組があったとしても自動録画されなくなる。
固定長領域をリングバッファ的に用いて、ユーザがよく視聴するコンテンツを録画することで、領域制限及び自動録画継続を両立させる。
放送サービスを記録する固定長のリングバッファと、指定されたサービス識別子に対応するサービスを再生するサービス再生手段と、前記サービス再生手段と前記リングバッファを1対1で結合するリングバッファ結合手段と前記リングバッファ結合手段を用いて前記サービス再生手段と結合された第一のリングバッファに、前記サービス再生手段により再生される放送サービスを同時に記録する視聴放送サービス自動記録手段と、前記サービス再生手段にサービス識別子を指定してサービスの再生を開始するサービス選択手段と、前記サービス再生手段を用いて再生されたサービスの履歴を保持するサービス再生履歴保持手段と、前記サービス再生履歴保持手段を参照して、ユーザが嗜好する番組を選択して、第二のリングバッファに記録する嗜好番組自動記録手段を具備し、前記サービス再生手段は、自身と結び付けられた前期リングバッファに記録されたサービスを再生することで追っかけ再生を実現する機能を備え、さらに、前記サービス選択手段は、前記サービス再生手段にサービス識別子を渡してサービスの再生を指令する前に、前記嗜好番組自動記録手段が第二のリングバッファに対して、既にこれから選択するサービス識別子にて特定されるサービスの記録を開始しているかどうか調査し、開始されていれば、前記リングバッファ結合手段を用いて、サービス再生手段と第二のリングバッファを結合することで、既に第二のリングバッファに記録が開始されているサービスに関しては、第二のリングバッファを利用して、サービス選択直後から、視聴する前のリプレイを開始することが可能である。
また、前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に視聴回数の多い番組を優先的に記録することで、過去に視聴回数の多い番組を第二のリングバッファに自動記録し、後に前記サービス選択手段を用いて選択した際、視聴前のリプレイを行うことが可能である。
また、前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に録画回数の多い番組を優先的に記録することで、過去に録画回数の多い番組を第二のリングバッファに自動記録し、後に前記サービス選択手段を用いて選択した際、視聴前のリプレイを行うことが可能である。
また、前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に視聴及び録画の合計回数の多い番組を優先的に記録することで、視聴及び録画の合計回数の多い番組を第二のリングバッファに自動記録し、後に前記サービス選択手段を用いて選択した際、視聴前のリプレイを行うことが可能である。
また、前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に視聴した際、番組の放送時間帯の一定割合以上視聴した番組を優先的に記録することで、過去に視聴した際に、多くの時間を視聴した番組を第二のリングバッファに自動記録し、後に前記サービス選択手段を用いて選択した際、視聴前のリプレイを行うことが可能である。
また、前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に視聴した番組と同一ジャンルの番組を優先的に記録することで、過去に視聴した番組と同一ジャンルの番組を第二のリングバッファに自動記録し、後に前記サービス選択手段を用いて選択した際、視聴前のリプレイを行うことが可能である。
また、前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に視聴した番組と同一出演者の番組を優先的に記録することで、過去に視聴する番組と同一出演者の番組を第二のリングバッファに自動記録し、後に前記サービス選択手段を用いて選択した際、視聴前のリプレイを行うことが可能である。
また、前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に視聴した番組と同一タイトルの番組を優先的に記録することで、過去に視聴した番組と同一タイトルの番組を第二のリングバッファに自動記録し、後に前記サービス選択手段を用いて選択した際、視聴前のリプレイを行うことが可能である。
また、前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に視聴した番組と同一シリーズの番組を優先的に記録することで、過去に視聴した番組と同一シリーズの番組を第二のリングバッファに自動記録し、後に前記サービス選択手段を用いて選択した際、視聴前のリプレイを行うことが可能である。
(実施の形態1)
以下に、本発明の第1の実施形態に係る装置および方法を、図面を参照しながら説明する。本発明は、任意の媒体で送受信されるコンテンツの録画および再生を対象としたものであるが、本実施例ではケーブルテレビ放送システムでの実施の形態を例にとって説明する。ケーブルテレビ放送システムでは、本発明の放送録画再生装置(放送蓄積端末)は一般的に端末装置と呼ばれる。
図1は、放送システムを構成する装置の関係を表したブロック図であり、放送局側システム101および三個の端末装置A111、端末装置B112、端末装置C113で構成される。放送局側システムと各端末装置間の結合121は、ケーブルシステムでは同軸ケーブルや光ファイバでの有線結合である。図1では、1つの放送局側システムに対して三つの端末装置が結合されているが、端末装置の数は任意である。
放送局側システム101は、複数の端末装置に対して映像・音声・データ放送用データ等の情報を放送信号に含めて送信する。放送信号は放送システムの運用既定や、放送システムが運用される国・地域の法律により定められた周波数帯域内の周波数を利用して伝送される。
本実施例のケーブルシステムでは、放送信号伝送に利用する周波数帯域は、そのデータの内容と伝送方向(上り、下り)ごとに分割して割り当てる。
図2は、周波数帯域の分割の一例を示す表である。周波数帯域は、Out Of Band(略称OOB)とIn−Bandの2種類に大別される。5〜130MHzがOOBに割り当てられ、主に放送局側システム101と端末装置A111、端末装置B112、端末装置C113間の上下双方向データのやり取りに使用される。130MHz〜864MHzはIn−Bandに割り当てられ、主として、映像・音声を含む下りのみの放送チャンネルに使用される。OOBではQPSK変調方式が、In−BandはQAM64またはQAM256変調方式が使用される。変調方式技術については、本発明に関与が薄い公知技術であるので、詳細な説明は省略する。
図3は、OOB周波数帯域のさらに詳細な使用の一例である。70MHz〜74MHzは放送局側システム101からの下りデータ送信に使用され、すべての端末装置A111、端末装置B112、端末装置C113が、放送局側システム101から等しいデータを受け取ることになる。一方、10.0MHz〜10.1MHzは端末装置A111から放送局側システム101への上りデータ送信に使用され、10.1MHz〜10.2MHzは端末装置B112から放送局側システム101への上りデータ送信に使用され、10.2MHz〜10.3MHzは端末装置C113から放送局側システム101への上りデータ送信に使用される。これにより、各端末装置固有のデータを各端末装置A111、端末装置B112、端末装置C113から放送局側システム101に独立して送信することができる。
図4は、In−Bandの周波数帯に対する使用の一例である。150〜156MHzと156〜162MHzはそれぞれテレビチャンネル1とテレビチャンネル2に割り当てられ、以降、6MHz間隔でテレビチャンネルが割り当てられている。310MHz以降は、1MHz単位でラジオチャンネルに割り当てられている。これらの各チャンネルはアナログ放送として使用してもディジタル放送として使用してもよい。ディジタル放送の場合は、MPEG2仕様にもとづいたTSパケット形式で伝送され、音声や映像に加え、各種データ放送用データやEPGを構成するための番組編成情報も送信することができる。
放送局側システム101は、以上に説明した周波数帯域を利用して端末装置に適切な放送信号を送信するため、QPSK変調部やQAM変調部等をもつ。また、端末装置からのデータを受信するため、QPSK復調器をもつ。また、放送局側システム101は、これら変調部および復調部に関連する様々な機器をもつと考えられる。しかし、本発明は主として端末装置に関わるので、詳細な説明は省略する。
一方、端末装置A111、端末装置B112、端末装置C113は、放送局側システム101からの放送信号を受信し再生するために、QAM復調部やQPSK復調部を持つ。また、放送局側システム101に対して、各端末装置固有のデータを送信するためにQPSK変調部を持つ。本発明では、端末装置は放送録画再生装置であり、その詳細な構成は後述する。
放送局側システム101は、MPEG2トランスポートストリームを変調して放送信号に含めて伝送する。端末装置は放送信号を受信し、復調してMPEG2トランスポートストリームを再現し、その中から必要な情報を抽出して用いる。端末装置に存在するデバイスの機能と接続の構成を説明するため、まずMPEG2トランスポートストリームの構成を簡単に述べる。
図5はTSパケットの構成を表す図である。TSパケット500は188バイトの長さを持ち、ヘッダ501、アダプテーションフィールド502、ペイロード503からなる。ヘッダ501はTSパケットの制御情報を保持する。4バイトの長さを持ち、504で表される構成をとる。この中に“Packet ID(以下PID)”と記述されるフィールドを持ち、このPIDの値によって、TSパケットの識別を行う。アダプテーションフィールド502は時刻情報等の付加的な情報を保持する。アダプテーションフィールド502の存在は必須ではなく、存在しない場合もある。ペイロード503は映像・音声やデータ放送用データ等、TSパケットが伝送する情報を保持する。
図6はMPEG2トランスポートストリームの模式図である。TSパケットはそのペイロードに映像や音声、データ放送用のデータ等様々な情報を保持する。TSパケット601およびTSパケット603はヘッダにPID100を保持し、ペイロードに映像1に関する情報を保持する。TSパケット602およびTSパケット605はヘッダにPID200を保持し、ペイロードにデータ1に関する情報を保持する。TSパケット604はヘッダにPID300を保持し、ペイロードに音声1に関する情報を保持する。このように様々な種類のデータをペイロードに保持したTSパケットを混合して一連のシーケンスとして送出することを多重と呼ぶ。MPEG2トランスポートストリーム600はTSパケット601〜605を多重した構成の一例である。
同一PIDをもつTSパケットは同一種類の情報を保持する。そのため、端末装置は多重されたTSパケットを受信して、各TSパケットが保持する情報をPIDごとに抽出することで、映像・音声を再現したり、番組編成情報等のデータを再現したりできる。図6においては、TSパケット601およびTSパケット603は共に映像1に関する情報を伝送し、またTSパケット602およびTSパケット605は共にデータ1に関する情報を伝送する。
ここで、ペイロードに内包される各種データの形式について説明する。
映像および音声は、PES(Packetized Elementary Stream)パケットと呼ばれる形式で表現される。PESパケットはある時間帯の映像情報または音声情報を含み、放送録画再生装置は、PESパケットを受信することで、そのPESパケットが内包する映像・音声情報を画面・スピーカに出力することができる。放送局がPESパケットを途切れなく伝送することで、放送録画再生装置は、映像・音声を途切れなく再生し続けることが可能となる。PESパケットは、実際に伝送される際、一つのTSパケットのペイロードよりも大きいサイズをもつ場合は分割されて複数のTSパケットのペイロードに格納される。
図7はPESパケットを伝送する際の分割例を表す。PESパケット701は一つのTSパケット内のペイロードに格納して伝送するには大きいため、PESパケット分割A702a、PESパケット分割B702b、PESパケット分割C702cに分割され、同一PIDをもつ三つのTSパケット703〜705によって伝送される。実際には、映像や音声は、複数のPESパケットのペイロードに含まれるデータを結合して得られるエレメンタリストリーム(ES)として得られる。このエレメンタリストリームは、MPEG2 Video規格やMPEG1、2 Audio規格で定義されるディジタル化映像、音声の形式になっている。
一方、番組編成情報やデータ放送用のデータ等の情報はMPEG2セクションと呼ばれる形式を用いて表現される。MPEG2セクションは実際に伝送される際、一つのTSパケットのペイロードよりも大きいサイズをもつ場合は分割されて複数のTSパケットのペイロードに格納される。
図8はMPEG2セクションを伝送する際の分割例を表す。MPEG2セクション801は一つのTSパケット内のペイロードに格納して伝送するには大きいため、セクション分割A802a、セクション分割B802b、セクション分割C802cに分割され、同一PIDをもつ三つのTSパケット803〜805によって伝送される。
図9はMPEG2セクションの構造を表現する。MPEG2セクション900はヘッダ901およびペイロード902から構成される。ヘッダ901はMPEG2セクションの制御情報を保持する。その構成はヘッダ構成903によって表現される。ペイロード902はMPEG2セクション900が伝送するデータを保持する。ヘッダ構成903に存在するtable_idはMPEG2セクションの種類を表現し、さらにtable_id_extensionはtable_idが等しいMPEG2セクション同士を区別する際に用いられる拡張識別子である。
MPEG2セクションの使用例として、図10に番組編成情報を伝送する場合を挙げる。この例では、行1004に記載されるように、放送信号の復調に必要な情報はヘッダ構成903内のtable_idが64であるMPEG2セクションに記載され、さらにそのMPEG2セクションはPIDに16が付与されたTSパケットによって伝送される。
MPEG2セクションの場合、PES形式は存在しない。そのため、MPEG2トランスポートストリームの中の同一PIDによって識別されるTSパケットのペイロードを結合したものをエレメンタリストリーム(ES)とする。例えば、図8において、MPEG2セクション801を分割して伝送しているTSパケット803〜805はすべてPIDが200で識別される。これはMPEG2セクション801を伝送するESである、と言うことができる。
MPEG2トランスポートストリーム内にはさらにプログラムという概念が存在する。プログラムはESの集合として表現され、複数のESをまとめて扱いたい場合に利用される。プログラムを利用すると、映像・音声や、それに付随するデータ放送用データ等を一まとめに扱うことが可能となる。例えば、同時に再生したい映像・音声をまとめて扱う場合、映像ESと、音声ESをプログラムとしてまとめることで、放送録画再生装置はこれら二つのESを1つの番組として同時に再生すべきであることがわかる。
プログラムを表現するために、MPEG2ではPMT(Program Map Table)およびPAT(Program Association Table)と呼ばれる二つのテーブルが利用される。詳細な説明はISO/IEC13818−1、“MPEG2 Systems”仕様を参照されたい。以下ではPMTおよびPATに関して簡単に説明する。
PMTはMPEG2トランスポートストリーム中に、プログラムの数だけ含まれるテーブルである。PMTはMPEG2セクションとして構成され、table_idは2である。PMTにはプログラムの識別に用いられるプログラムナンバーとプログラムの付加情報、さらにプログラムに属するESに関する情報を保持する。
PMTの例を図11に挙げる。1100はプログラムナンバーである。プログラムナンバーは同一トランスポートストリーム内でプログラムに一意に割り当てられ、PMTの識別に用いられる。行1111〜1115は個々のESに関する情報を表現する。列1101はESのタイプであり、“映像”、“音声”、“データ”等が指定される。列1102はESを構成するTSパケットのPIDである。列1103はESに関する付加情報である。例えば、行1111に表されるESは、音声ESであり、PIDが5011であるTSパケットによって伝送される。
PATはMPEG2トランスポートストリームに一つだけ存在するテーブルである。PATはMPEG2セクションとして構成され、table_idは0であり、PIDが0であるTSパケットによって伝送される。PATには、MPEG2トランスポートストリームの識別に用いられるtransport_stream_idと、MPEG2トランスポートストリーム内に存在するプログラムを表現するすべてのPMTに関する情報を保持する。
PATの例を図12に挙げる。1200はtransport_stream_idである。transport_stream_idはMPEG2トランスポートストリームの識別に用いられる。行1211〜1213はプログラムに関する情報を表現する。列1201はプログラムナンバーである。列1202はプログラムに対応するPMTを伝送するTSパケットのPIDである。例えば、行1211に表されるプログラムのPMTは、プログラムナンバーが101であり、対応するPMTはPIDが501であるTSパケットによって伝送される。
端末装置があるプログラムを再生する場合は、PATおよびPMTを用いてプログラムを構成する映像・音声を特定し、それらを再生する。例えば、図12のPATおよび図11のPMTを伝送するMPEG2トランスポートストリームに関して、プログラムナンバーが101であるプログラムに属する映像・音声の再生を行う場合は以下のような手順をとる。まずPIDが“0”であるTSパケットより、table_idが“0”のMPEG2セクションとして伝送されるPATを取得する。PATよりプログラムナンバーが“101”であるプログラムを探索し、行1211を得る。行1211より、プログラムナンバーが“101”であるプログラムのPMTを伝送するTSパケットのPID“501”を得る。次いでPIDが“501”であるTSパケットより、table_idが“2”のMPEG2セクションとして伝送されるPMTを取得する。PMTより、音声のES情報である行1111および映像のES情報である行1112を得る。行1111より、音声ESを伝送するTSパケットのPID“5011”を得る。また行1112より、映像ESを伝送するTSパケットのPID“5012”を得る。次いでPID“5011”のTSパケットより音声用PESパケットを、PID“5012”のTSパケットより映像用PESパケットを取得する。これにより、再生対象となる映像・音声のESパケットを取得することが可能となり、プログラムナンバー101を構成する映像と音声を再生することができる。
なお、MPEG2トランスポートストリームは暗号化されている場合がある。これは限定視聴とも呼ばれる仕組みである。例えば、ある映像・音声情報を伝送するPESパケットに対して暗号化処理を行うことで、その暗号を解読できる特定視聴者のみが視聴できるようになる。暗号を解読して映像や音声を視聴するために、視聴者はデスクランブラと呼ばれるデバイスを用いて暗号解除を行う。例えば、OCAP対応の端末装置は、デスクランブラを内蔵したカード型のアダプタを利用する。ケーブルテレビのオペレータは、視聴者ごとに特定のプログラムを解読できるように設定したアダプタを配布し、視聴者はそのアダプタを端末装置に挿入する。すると、アダプタは、暗号解除鍵等の暗号解除情報や各契約者の契約情報を元に、特定のプログラムに関して暗号を解除する。暗号解除の方式や、暗号解除鍵の入手方法はアダプタ依存であり、本発明の実現には影響しない。
ここまでMPEG2仕様に関する簡単な説明を行ったが、ここで、単語の詳細な定義を行う。本発明に関して、「プログラム」という単語が二種類存在する。一つはMPEG2仕様に登場する「プログラム」であり、もう一つはCPUが実行するコードの集合という意味での「プログラム」である。前者に関しては、運用規定で用いられる「サービス」という単語と同義であるため、混乱を避けるため、以降、前者を「サービス」と呼び、後者を単に「プログラム」とよぶ。さらに後者に関して、特にJava言語で記述された「プログラム」を「Javaプログラム」とよぶ。
以上、本発明に関わる、MPEG2仕様にて決定されるいくつかの一般的な情報に関して説明を行った。以降、本実施の形態で用いる放送録画再生端末に関して詳細に説明する。
図13は、本実施例の放送録画再生装置の一般的なハードウェア構成を表すブロック図であり、すなわち図1における端末装置111、112、113の具体的な内部構成である。1300は放送録画再生装置であり、チューナ1301、TSデコーダ(TS Demultiplexer)1302、AVデコーダ1303、スピーカ1304、ディスプレイ1305、CPU1306、2次記憶部1307、1次記憶部1308、ROM1309、入力部1310、アダプタ1311、AVエンコーダ1312、多重器(MPEG2 Transport Stream Multiplexer等)1313、QPSK復調器1314、QPSK変調器1315で構成される。なお本実施例は、OCAP−DVR仕様で実現される放送録画再生端末を拡張して得られるものであり、基本的なハードウェア構成はOCAP−DVR仕様で要求されるものとほぼ同じである。
チューナ1301は、CPU1306が指定する周波数などのチューニング情報に従って、放送局側システム101から伝送される変調された放送信号を復調するデバイスである。チューナ1301のQAM復調器1301がIn−band信号を復調した結果得られるMPEG2トランスポートストリームは、暗号解除機能をもつアダプタ1311を経て、TSデコーダ1302に転送される。本例ではチューナ1301a及びチューナ1301bの2つの例が存在するが、両方とも機能は同一である。以下、特にことわらない場合はチューナ1301と呼んだ場合は両方のチューナに共通の性質を述べる。
TSデコーダ1302は、CPU1306が指定するPID、セクションフィルタ条件等の指定にもとづいてMPEG2トランスポートストリームから指定条件に合致するPESパケットやMPEG2セクションを選別する機能をもつデバイスである。この選別機能をパケットフィルタリングと呼ぶ。TSデコーダ内にはPIDフィルタとセクションフィルタの二種類のフィルタデバイスが内蔵されている。フィルタリングの詳細については後述する。TSデコーダへのMPEG2トランスポートストリームの入力は,複数種類の構成要素から行われる。放送を受信してサービスを録画せずに再生する場合は、アダプタ1311が出力するMPEG2トランスポートストリームがTSデコーダ1302に入力される。一方、2次記憶部1307に録画されているサービスを再生する場合は、2次記憶部1307が出力するMPEG2トランスポートストリームがTSデコーダ1302に入力される。いずれの入力を受けるかは、ソフトウェアからの指示を受けて,CPU1306によって制御される。
TSデコーダ1302が選別した映像および音声のPESパケットは、AVデコーダ1303に出力される。また、TSデコーダ1302が選別したMPEG2セクションは、1次記憶部1308にDMA(Direct Memory Access)転送され、CPU1306が実行するプログラムなどによって利用される。なおTSデコーダ1302は複数のTS入力を受け付けることができてもよい。
AVデコーダ1303はエンコードされた映像ESおよび音声ESをデコードする機能をもつデバイスである。AVデコーダはTSデコーダから転送される音声および映像情報を伝送するPESパケットからESを取り出してデコードする。AVデコーダ1303がデコードして得られたaudio信号およびvideo信号は、サービスの再生時にはスピーカ1304、ディスプレイ1305に出力されるが、一方、サービスの録画時にはAVエンコーダ1312へ出力される。いずれの出力経路を取るかは、ソフトウェアからの指示を受けて,CPU1306によって制御される。
スピーカ1304は、AVデコーダ1303から出力された音声を再生する。
ディスプレイ1305は、AVデコーダ1303から出力された映像を再生する。
CPU1306は放送録画再生装置上で動作するプログラムを実行する。CPU1306は、ROM1309に内蔵されるプログラムを実行する。あるいは、放送信号やネットワークよりダウンロードされ1次記憶部1308に保持されているプログラムも実行する。あるいは、放送信号やネットワークよりダウンロードされ2次記憶部1307に保存されているプログラムも実行する。そして実行するプログラムの指示に従い、チューナ1301、TSデコーダ1302、AVデコーダ1303、スピーカ1304、ディスプレイ1305、2次記憶部1307、1次記憶部1308、ROM1309、入力部1310、アダプタ1311、AVエンコーダ1312、多重器1313を制御する。また、CPU1306は端末装置1300内に存在するデバイスだけでなく、アダプタ1311内のデバイスと通信し、アダプタ1311を制御することが可能である。
2次記憶部1307は機器の電源が遮断されても記憶が消去されない記憶装置である。例えばFLASH−ROM等の不揮発性メモリ、HDD(Hard Disk Drive)、CD−RやDVD−R等の書き換え可能のメディア等、端末装置1300の電源断の際にも情報が消去されない機器によって構成され、CPU1306の指示により情報の保存を行う。
1次記憶部1308は、CPU1306やDMA転送可能なデバイスの指示に従って情報を一時的に保存する機能をもつデバイスであり、RAM等によって構成される。
ROM1309は、書き換え不可能なメモリーデバイスであり、具体的にはROMやCD−ROM、DVD等で構成される。ROM1309には、CPU1306が実行するプログラムが格納されている。
入力部1310は、具体的には、フロントパネルやリモコン受信機で構成され、ユーザからの入力を受け付ける。図14は、フロントパネルで入力部1310を構成した場合の一例である。フロントパネル1400は七つのボタン、上カーソルボタン1401、下カーソルボタン1402、左カーソルボタン1403、右カーソルボタン1404、OKボタン1405、取消ボタン1406、EPGボタン1407、モード切換ボタン1408を備えている。ユーザがボタンを押下すると、押下されたボタンの識別子が、CPU1306に通知される。
アダプタ1311は、In−band周波数帯で伝送されるMPEG2トランスポートストリームにかけられた暗号を解除する装置で、1つ以上のデスクランブラを搭載する。アダプタ1311にはチューナ1301aが出力するMPEG2トランスポートストリームが入力され、CPU1306が指定したPIDをもつTSパケットに対して暗号解除を行う。アダプタ1311は、暗号を解除したMPEG2トランスポートストリームをTSデコーダ1302に出力する。
さらに、アダプタ1311は、OOB周波数帯で伝送されるデータの形式変換も行う。OOBで伝送される情報はQPSK変調方式で変調される。下り方向の伝送に関しては、QPSK復調器1314は放送局側システム101から送信されてくる下りの信号を復調し、生成されたビットストリームをアダプタ1311に入力する。アダプタ1311はビットストリームが含む様々な情報の中から、CPU1306が指定する情報を抽出して、CPU1306上で動作するプログラムが解釈可能な形式に変換して、CPU1306に提供する。一方、上り方向の伝送に関しては、CPU1306が、放送局側システム101に対して送信したい情報を、アダプタ1311に入力する。アダプタ1311は、CPU1306から入力された情報を放送局側システム101が解釈可能な形式に変換し、QPSK変調器1315に入力する。QPSK変調器1315はアダプタ1311から入力された情報をQPSK変調し、放送局側システム101に送信する。
アダプタ1311の具体例としては、米国ケーブルシステムで利用されるCableCARD、旧名POD(Point Of Deployment)が挙げられる。
AVエンコーダ1312は、AVデコーダ1303によってデコードされたaudio信号をMPEG audio形式の音声にエンコードし、video信号をMPEG video形式の映像にエンコードする。AVエンコーダ1312がエンコードした映像および音声は、多重器1313へ出力される。AVエンコーダ1312は,公知の技術で実現可能である。
多重器1313は、AVエンコーダ1312から入力された映像および音声,及びTSデコーダによってフィルタリングされて分離されたプライベートセクションデータを、MPEG2トランスポートストリームへ多重化する機能をもつデバイスである。多重器1313は,公知の技術で実現可能である。
以上説明した放送録画再生装置が、放送波に含まれるサービスを2次記憶部1307に記録する動作と、2次記憶部1307から逐次読み出してサービスを再生する動作について、以下に詳細に説明する。
まず、放送波に含まれるサービスを2次記憶部1307に記録する動作について述べる。
図15に、サービスの記録時における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図を示す。1500は端末装置であり、チューナ1301、アダプタ1311、デスクランブラ1501、TSデコーダ1302、PIDフィルタ1502、セクションフィルタ1503、AVデコーダ1303、1次記憶部1308、AVエンコーダ1312、多重器1313、および、記録領域1504をもつ。図15の構成要素のうち、図13の構成要素と同一符号を持つものは、それらと同等の機能をもつため、説明を省略する。
まずCPU1306が指定したチューニング指示に従って、チューナ1301が放送波をチューニングする。チューナ1301は、放送波を復調し、アダプタ1311にMPEG2トランスポートストリームを入力する。
アダプタ1311内にあるデスクランブラ1501は、視聴者ごとの限定解除情報に基づいて、MPEG2トランスポートストリームの暗号解除を行う。暗号解除されたMPEG2トランスポートストリームは、TSデコーダに入力される。
TSデコーダ1302内にはMPEG2トランスポートストリームに対して処理を行う2種類のデバイス、PIDフィルタ1502、セクションフィルタ1503が存在する。
PIDフィルタ1502は、入力されたMPEG2トランスポートストリームから、CPU1306が指定したPIDをもつTSパケットを抽出し、さらにそのペイロードに存在するPESパケットやMPEG2セクションを抽出する。例えば、CPU1306がPID=100のTSパケットを抽出するPIDフィルタリングを指示した場合に図6のMPEG2トランスポートストリームが入力されたとすると、パケット601および603が抽出されて更に連結され、映像1のPESパケットが再構成される。あるいは、CPU1306がPID=200のTSパケットを抽出するPIDフィルタリングを指示した場合に図6のMPEG2トランスポートストリームが入力されたとすると、パケット602および605が抽出されて更に連結され、データ1のMPEG2セクションが再構成される。
セクションフィルタ1503は、入力されたMPEG2セクションの中から、CPU1306が指定するセクションフィルタ条件に合致するMPEG2セクションを抽出し、1次記憶部1308にDMA転送する。セクションフィルタ条件としては,PID値と補助条件としてtable_id値が指定できる。例えば、CPU1306はPID=200のTSパケットを抽出するPIDフィルタリングとtable_idが64であるセクションを抽出するセクションフィルタリングをセクションフィルタ1503に対して指定したとする。先に述べたように、データ1のMPEG2セクションが再構成された後、セクションフィルタ1503はそのMPEG2セクションの中からtable_idが64であるセクションのみを抽出し、バッファである1次記憶部1308にDMA転送する。
1次記憶部1308に入力されたMPEG2セクションは、多重器1313に入力される。
TSデコーダ1302によって抽出された映像PESパケットと音声PESパケットは、AVデコーダ1303に入力される。
AVデコーダは、映像PESパケットをデコードして映像に変換し、AVエンコーダ1312に入力する。また音声PESパケットをデコードして音声に変換し、AVエンコーダ1312に入力する。
AVエンコーダ1312は、映像をMPEG videoに変換し、多重器1313に入力する。また音声をMPEG audioに変換し、多重器1313に入力する。
多重器1313は、AVエンコーダから入力されたMPEG videoとMPEG audioと、1次記憶1308から入力されたMPEG2セクションを多重してMPEG2トランスポートストリームを生成する。生成されたMPEG2トランスポートストリームは、記録領域1504に記録される。
記録領域1504は2次記憶部1307の全体または一部、あるいは、その他の記録領域で構成され、サービスを構成するMPEG2トランスポートストリームを記憶する。
次いで、2次記憶部1307から逐次読み出してサービスを再生する動作について述べる。
図16に、サービスの再生時における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図を示す。1600は端末装置であり、記録領域1504、TSデコーダ1302、PIDフィルタ1502、セクションフィルタ1503、AVデコーダ1303、スピーカ1304、ディスプレイ1305、および、1次記憶部1308をもつ。図16の構成要素のうち、図13の構成要素と同一符号を持つものは、それらと同等の機能をもつため、説明を省略する。
図15で説明した手順で記録領域1504に記録されたMPEG2トランスポートストリームが、TSデコーダ1302に入力される。
次いで、TSデコーダ1302内のPIDフィルタ1502によって、CPU1306が指定したPIDを持つ映像PESおよび音声PESが抽出される。抽出されたPESパケットはAVデコーダ1303に入力される。あるいは、TSデコーダ1302内のPIDフィルタ1502とセクションフィルタ1503によって、CPU1306が指定したPIDとtable_id持つMPEG2セクションが抽出される。抽出されたMPEG2セクションは1次記憶部1308にDMA転送される。
AVデコーダ1303に入力された映像PESと音声PESは、デコードされてaudio信号およびvideo信号が出力される。その後、audio信号およびvideo信号はディスプレイ1305およびスピーカ1304に入力され、映像および音声が再生される。
1次記憶部1308に入力されたMPEG2セクションは、適宜CPU1306に入力され,ソフトウェアから利用される。
さらに、TSB(Time Shift Buffer)に関する動作について述べる。
TSB機能は、サービスを一旦2次記憶部1307中の固定長領域に記録し、そこから再生を行うことにより、再生中のサービスのリプレイや追っかけ再生を容易に実現するものである。その固定長領域をTSBと呼ぶ。
図17に、2次記憶部1307に固定長領域として存在するTSBを表現する図を示す。2次記憶部1307は以前解説した通りであり、TSB1701を内包する。TSB1701はあらかじめ定められた固定長領域として実現される。TSBにサービスを記録する手法は前述した2次記憶部1307に放送波内のサービスを記録する手法と同様である。ただし、前述した手法では、2次記憶部1307内の任意の位置からサービス記録を開始し、サービスの記録の終了を明示的に指示されるまでは、新たな領域を確保しながらサービスの記録を継続する。TSBの場合は、予め設定されたTSB1701の先頭アドレス1711からサービスの記録を開始し、サービスの記録がTSB1701の終了アドレス1712に到達したら、先頭アドレス1711に移動して、以前に記録したサービスを上書きしながらサービスの記録を継続する。つまり、TSB1701にサービスを記録する場合、TSB1701を超えた領域にサービスを記録することはない。
また、TSBは固定長であることから、TSB1701が一度に保持可能なサービスの記録は常にある一定時間分のみである。なお、TSB1701は2次記憶部1307に複数存在することもありうる。図18は、2次記憶部1307にTSBが2つ存在する状況を表現する図を示す。番号が図17と同じものは説明を省略する。TSB2(1802)は2次記憶部1307に存在する2つ目のTSBであり、先頭アドレスは1811、終了アドレスは1812である。複数のTSBが2次記憶部18に存在する場合、各々の領域が重なることはなく独立して存在する。TSBは通常、チューナ1301の個体数と等しい数存在する。図13のハードウェア構成をとる場合、チューナ1301a及びチューナ1301bの2つのInbandチューナが存在するため、図18同様、TSBは2次記憶部1307内に2つ存在する。以降、2次記憶部1307内に存在する「TSB以外の領域」を「通常記録領域」と呼んでTSBと区別する。通常記録領域のサービスの記録は、明示的に削除しない限り自動的に消えることはない。明示的に削除する方法として、Javaプログラムが即時削除を指示する方法や、録画時に生き残り期間を設定し、その期間経過したら削除、など様々な方法があるが、その詳細は本発明と無関係なため省略する。
TSB機能の実現には、「サービスの再生」と「サービスの記録」を同時に行う必要がある。図19はTSB機能実現時における、各デバイスの物理的な接続順序と処理内容を示した図である。
TSB1701を挟んで左側が「サービスの記録」、右側が「サービスの再生」を担当する。
まず「TSBへのサービスの記録」について解説する。
1900は端末装置であり、図13と同様のデバイス構成を持つ。さらに2次記憶部1307内部にTSB1701を持つ。図19の構成要素のうち、図13の構成要素と同一符号を持つものは、それらと同等の機能を持つため、説明を省略する。
まずCPU1306が指定したチューニング指示に従って、チューナ1301が放送波をチューニングする。チューナ1301は、放送波を復調し、アダプタ1311にMPEG2トランスポートストリームを入力する。
アダプタ1311の処理は図15にて既に説明した。内部のデスクランブラを経由してTSデコーダにMPEG2トランスポートストリームが入力される。
サービス記録時のTSデコーダ1302内部のPIDフィルタ及びセクションフィルタの処理は図15にて既に説明した。処理結果としてTSデコーダ1302は映像及び音声のPESパケット及びセクションを出力する。TSBにサービスを記録する際は映像及び音声の再エンコードをする必要がないため、映像及び音声のPESパケットは多重器1313へ、MPEG2セクションは1次記憶部1308へ入力される。
多重器1313の処理は図15にて既に説明した。TSデコーダ1302から入力されたPESパケット及び1次記憶部1308から入力されたMPEG2セクションを多重したMPEG2トランスポートストリームは、TSB1701に入力される。
TSB1701は、2次記憶部1307中の固定長領域として存在し、MPEG2トランスポートストリームを記録する。
次に「TSBからのサービスの再生」について解説する。
TSB1701に記録されたMPEG2トランスポートストリームは、記録されると同時に読み出され、TSデコーダ1302に入力される。
記録済みサービス再生時のTSデコーダ1302の処理は図16にて既に説明した。抽出されたPESパケットはAVデコーダ1303へ、抽出されたMPEG2セクションは1次記憶部1308へ入力される。
記録済みサービス再生時のAVデコーダ1303の処理は図16にて既に説明した。処理結果のvideo信号及びaudio信号はディスプレイ1305及びスピーカ1304に入力され、映像及び音声が再生される。
1次記憶部1308に入力されたMPEG2セクションは、適宜CPU1306に入力され、ソフトウェアから利用される。
図19のようにデバイスを接続して処理することにより、「サービスの記録」及び「サービスの再生」を同時に行うことが可能となる。なお、本記述ではTSB1701への記録を例として述べているが、2次記憶部1307中に複数のTSBが存在する場合、そのどれを利用することも可能である。例えば図18の場合、TSB2(1802)を利用することも可能である。
また、TSBに記録されたサービス記録を、2次記憶部1307内の通常記録領域にコピーすることも可能である。TSBに記録されたサービスは時間の経過とともに上書きされるため、何もしなければ消えてしまう揮発性の情報であると捉えることができる。そこで、TSBに記録されたサービス記録を通常記録領域にコピーすることで、永続的にサービス記録を保持することも可能である。
また「サービスの再生」及び「サービスの記録」が同時に行われているため、固定長領域であるTSBの内部には常に、「再生中のサービスの過去X秒分」が記録されている(ここでXの値は、TSBの長さに依存する)。多重器1313からTSBへ入力されるMPEG2トランスポートストリームのビットレートは、放送波のビットレートに依存するため一定であり、変更することは不可能だが、TSBから読み出してTSデコーダ1302に入力するMPEG2トランスポートストリームのビットレートは端末内部で自由に変更可能である。また、TSBに記録されるMPEG2トランスポートストリームの読み出し位置を自由に変更することも可能である。これら機能を利用することで、TSBに記録される「再生中のサービスの過去X秒分」に関しては巻き戻し再生、一時停止、追っかけ再生などのトリック再生が可能となる。
また、TSBへサービスの記録のみを行うことも可能である。この場合、図19におけるチューナ1301からTSB1701までの構成を必要とし、既に述べた動作によってTSB1701にサービスの記録を行う。
また、図19の接続図にはTSデコーダ1302が2回登場するが、TSデコーダ1302と同一機能を有する別々のデバイスであってもよく、同一のTSデコーダ1302であってもよい。
ここまでは、本発明に関するハードウェアの構成例に関して述べたが、以降、本発明の主要機能である、Javaプログラムによるサービスの記録再生制御に関して説明する。
本発明におけるサービスの記録とは、サービスに含まれる映像、音声、Javaプログラム、Javaプログラムの同期情報等をハードディスク、BD(Blu−ray Disc)、DVD(Digital Versatile Disc)、SD(Secure Digital)メモリカードといった任意の記録媒体に記録することである。これらの記録媒体は,図13の構成図では2次記憶部1307として記載されている。サービスの再生とは、記録媒体に記録された映像、音声、Javaプログラムを同期情報に基づいて再生および実行することである。記録済みサービスの再生結果は、放送波を受信して直接サービスを再生した結果とほぼ等価であることが要求される。
図20は、サービスの記録と再生に必要とされるプログラムの構成図であり、ROM1309に記憶されているソフトウェアである。
プログラム2000は、サブプログラムであるOS2001、EPG2002、JavaVM2003、Javaライブラリ2004で構成される。
OS2001は、オペレーティングシステム(Operating System)であり、Linux、Windows(登録商標)等が一例である。OS2001は、他のサブプログラム、例えばEPG2002とJavaVM2003を実行するためのカーネル2001aと、サブプログラムが端末装置1300の構成要素を制御するために利用するライブラリ2001bで構成される。カーネル2001aは公知技術であり、詳細な説明は省略する。
ライブラリ2001bは、例えばチューナを制御するチューニング機能を提供する。ライブラリ2001bは、他のサブプログラムから周波数を含むチューニング情報を受け取り、それをチューナ1301に引き渡す。チューナ1301は与えられたチューニング情報にもとづき復調処理を行い、復調したMPEG2トランスポートストリームをTSデコーダ1302に引き渡すことができる。この結果、他のサブプログラムはライブラリ2001bを通してチューナ1301を制御することができる。
また、ライブラリ2001bは、チャンネルを一意に識別するためのチャンネル情報を提供する。チャンネル情報の一例を図21に示す。チャンネル情報はOOBあるいはIn−band周波数帯を利用して送信され、アダプタ1311で表形式に変換され、ライブラリがアクセス可能な一時記憶部に格納される。列2101は、チャンネル識別子で、例えば、SCTE 65 Service Information Delivered Out−Of−Band For Digital Cable Televisionで定義されるsource_IDが相当する。列2102は、チャンネル名であり、同SCTE 65規格ではsource_nameなどに相当する。列2103はチューニング情報であり、周波数や転送レート、変調方式といったチューナ1301に与える情報である。列2104はPMTを指定するためのプログラムナンバーである。例えば、行2111はチャンネル識別子が「1」、チャンネル名が「チャンネル1」、チューニング情報に周波数「150MHz,....」、プログラムナンバーが「101」であるサービス情報の組となっている。
この他にも,ライブラリ2001bは図13に示したハードウェア構成要素に対して制御用のパラメータを設定することができる。個々の機能については,後述する。
JavaVM2003は、Java(TM)言語で記述されたプログラムを逐次解析し実行するJavaバーチャルマシンである。Java言語で記述されたプログラムはバイトコードと呼ばれる、ハードウェアに依存しない中間コードにコンパイルされる。Javaバーチャルマシンは、このバイトコードを実行するインタープリタである。JavaVM2003は、Java言語で記述されたJavaライブラリ2004を実行する。Java言語やJavaVMの詳細は、書籍「Java Language Specification(ISBN 0−201−63451−1)」や「Java Virtual Machine Specification(ISBN 0−201−63451―X)」等を参照のこと。また、JNI(Java Native Interface)を通して、Java言語で記述されていない他のサブプログラムを呼び出したり、または、呼び出されたりすることが可能である。JNIに関しては、書籍「Java Native Interface」等を参照のこと。
Javaライブラリ2004は、Javaプログラムが放送録画再生装置の機能を制御するために呼び出すJava言語で記述されたライブラリである。ただし、必要に応じて、OS2001のライブラリ2001bなど非Java言語で記述されたサブプログラムを利用することもある。Javaプログラムは、Javaライブラリ2004が持つJava API(アプリケーションプログラミングインタフェース)を呼び出すことで、Javaライブラリ2004が提供する機能を利用できる。
Tuner2004cは、放送録画再生端末のIn−band受信用チューナ1301を制御するためのJavaライブラリである。JavaプログラムがTuner2004cに周波数などを含むチューニング情報を渡すと、Tuner2004cはそれを用いてライブラリ2001bのチューナ機能を呼び出し、結果、放送録画再生端末のIn−band受信用チューナ1301の動作を制御できる。
SF2004eは、放送録画再生端末のPIDフィルタ1502およびセクションフィルタ1503機能を制御するためのJavaライブラリである。JavaプログラムがSF2004eにPIDやtable_idなどのフィルタ条件を渡すと、SF2004eはその条件を元にライブラリ2001bの機能などを用いてPIDフィルタ1502およびセクションフィルタ1503にフィルタリング条件を設定して制御し、所望のフィルタ条件に叶うMPEG2セクションを取得して、フィルタ条件を設定したJavaプログラムに渡す。
DSM−CC2004dは、DSM−CCオブジェクトカルーセルのファイルシステムにアクセスするためのJavaライブラリである。DSM−CCオブジェクトカルーセルは、SF2004eによって取得されるMPEG2セクションが内包している。DSM−CCは、ISO/IEC13818−6規格で定義されており、MPEG2セクションを利用して任意のファイルを伝送するための仕組みである。これを利用することで、放送局から端末にファイルを伝送することができる。DSM−CC2004dは,Javaプログラム等から指定されたDSMCC識別子とファイル識別子等を元に,SF2004eを利用してMPEG2セクションを取得し,ISO/IEC13818−6規格に基づいてファイルを取り出して1次記憶部1308や2次記憶部1307に出力する。DSM−CCの詳細な実現方法は本発明とは関係ないため、説明を省略する。
AM2004bは、サービスに含まれるJavaプログラムの実行や終了を管理する機能を提供するアプリケーションマネージャ(Application Manager)である。AM2004bは指定されたMPEG2トランスポートストリームの指定されたチャンネルに多重されたJavaプログラムを抽出し、その抽出したJavaプログラムを別途多重された同期情報に従って実行したり、あるいは終了させたりする。JavaプログラムのJavaクラスファイルは、前述のDSM―CC方式でMPEG2トランスポートストリームに多重されている。また、Javaプログラムの同期情報はAITと呼ばれる形式で、MPEG2トランスポートストリームに多重されている。AITは、DVB−MHP規格(ETSI TS 101 812 DVB−MHP仕様V1.0.2)の10章に定義されている、Application Information Tableの略であり、table_idが「0x74」であるMPEG2セクションである。
AM2004bの内部構成を図22に示す。AM2004bは、AIT監視部2202と、アプリケーション状態管理部2201で構成される。
AIT監視部2202は、サービスの再生時及び録画時にTSデコーダから出力されるMPEG2トランスポートストリーム中のプライベートセクションとチャンネル識別子を入力として、AITの更新状況を監視する。まず、AIT監視部2202は、指定されたチャンネル識別子をキーとしてライブラリ2001bのチャンネル情報を検索し、当該サービスのプログラムナンバーを得る。次にSF2004eなどを利用して、MPEG2トランスポートストリームからPATを取得する。さらにPMTの情報から、先ほど得られたプログラムナンバーに対応するPMTのPIDが得られる。再度SF2004eを利用して、実際のPMTを取得する。取得されたPMTは図11の形式をしており、ストリーム種別が「データ」で補足情報として「AIT」をもつエレメンタリ−ストリームのPIDが書かれている。更にSF2004eに、フィルタリング条件として今得られたAITのPIDとtable_id「0x74」を与えると、AITの実体が得られる。
図23は、AITの情報の一例を模式的に表した表である。AITバージョン番号2300は、そのAITのバージョンを表現する。AITバージョンが大きいほど、そのAITはより新しいAITである。等しいAITバージョンをもつAITは繰り返し受信されるが、AIT監視部2202はすでに取得したAITと等しいAITバージョンをもつAITは取得せずに無視し、すでに取得したAITよりも新しいAITのみを取得する。AIT監視部2202は,取得した新しいAITを都度,アプリケーション状態管理部2201及び録画サービス選択部2204に出力する。列2301はJavaプログラムの識別子である。MHP規格によれば、この識別子はApplication IDとして定義される。列2302はJavaプログラムの制御情報である。制御情報には「autostart」「present」「kill」等があり、「autostart」は即時に端末装置1300がこのJavaプログラムを自動的に実行することを意味し、「present」は自動実行しないことを意味し、「kill」はJavaプログラムを停止することを意味する。列2303は、DSM―CC方式でJavaプログラムを含んでいるPIDを抽出するためのDSM―CC識別子である。列2304はJavaプログラムのプログラム名である。列2305は,service_bound_flagで,1の場合は別のサービスを選択した際に当該Javaプログラムは必ず終了されることを意味する。
0の場合は,別のサービスを選択した際に,そのサービスのAITにも当該Javaプログラムが記述されている場合には当該Javaプログラムは終了せずに継続して実行されることを意味する。ただし,0の場合であっても,新しく選択されたサービスにおいてJavaプログラムの制御情報が優先する。また,0の場合に,新しく選択されたサービスが録画されていなかった場合は,現在の当該Javaプログラムの実行をそのまま継続する。なお,この場合に,当該Javaプログラムを終了させる構成にしてもよい。行2311、行2312、行2313、行2314は、Javaプログラムの情報の組である。行2311で定義されるJavaプログラムは、Javaプログラムの識別子「0x3221」、制御情報「autostart」、DSMCC識別子「1」、プログラム名「a/TopXlet」の組である。同様に、行2312で定義されるJavaプログラムは、Javaプログラムの識別子「0x3222」、制御情報「present」、DSMCC識別子「1」、プログラム名「b/GameXlet」の組である。ここで、行2311、行2312、行2314で定義される3つのJavaプログラムは同一のDSMCC識別子をもつが、これは1つのDSMCC方式でエンコードされたファイルシステム内に3つのJavaプログラムが含まれていることを表す。ここでは、Javaプログラムに対して4つの情報しか規定しないが、実際にはより多くの情報が定義される。詳細はDVB−MHP規格を参照されたい。
アプリケーション状態管理部2201は,AIT監視部2202から出力される更新されたAITの内容を解析し、AITの内容に基づいてJavaプログラムの実行状態を管理する。
まずアプリケーション状態管理部2201は、AITの中から制御情報が「autostart」であるJavaプログラムを見つけ出し、対応するDSMCC識別子およびJavaプログラム名を抽出する。図23を参照して、AM2004bは行2311のJavaプログラムを抽出し、DSMCC識別子「1」およびJavaプログラム名「a/TopXlet」を取得する。次いでアプリケーション状態管理部2201は、AITから取得したDSMCC識別子を用いてDSMCC2004dにアクセスし、DSMCCファイルシステムに格納されたJavaプログラムのファイルを取り出せるようにする。ファイルは1次記憶部1308や2次記憶部1307に記録される。MPEG2トランスポートストリーム中のTSパケットからファイルシステム等のデータを取り出し1次記憶部1308、2次記憶部1307等の記憶手段に保存することを以降、ダウンロードとよぶ。
図24は、ダウンロードしたファイルシステムの一例である。図中、丸はディレクトリを四角はファイルを表し、2401はルートディレクトリ、2402はディレクトリ「a」、2403はディレクトリ「b」、2404はファイル「TopXlet.class」、2405はファイル「GameXlet.class」、2406はディレクトリ「z」、2407はファイル「MusicXlet.class」、2408はファイル「StudyXlet.class」である。
次いでアプリケーション状態管理部2201は、1次記憶部1308にダウンロードされたファイルシステム中から実行するJavaプログラムをJavaVM2003に引き渡す。ここで、実行するJavaプログラム名が「a/TopXlet」とすると、Javaプログラム名の最後に「.class」を付加したファイル「a/TopXlet.class」が実行すべきファイルとなる。「/」はディレクトリやファイル名の区切りであり、図24を参照して、ファイル2404が実行すべきJavaプログラムである。ファイルはJavaプログラムとしてJava VM上で実行される。
アプリケーション状態管理部2201は、新しいAITバージョンを持つAITがAIT監視部2202から出力される度にそのAITを解析して新しいJavaプログラムの実行状態を変更させる。
JMF2004aは、サービスに含まれる映像と音声の再生制御を担う。具体的には、サービスの再生時に,TSデコーダから出力されるMPEG2トランスポートストリームから特定の映像ESと音声ESをAVデコーダに入力させる。
JMF2004aは再生対象のチャンネル識別子を入力とする。まず、JMF2004aは、指定されたチャンネル識別子をキーとしてライブラリ2001bのチャンネル情報を検索し、プログラムナンバーを得る。次にSF2004eなどを利用して、MPEG2トランスポートストリームからPATを取得する。さらにPMTの情報から、先ほど得られたプログラムナンバーに対応するPMTのPIDが得られる。再度SF2004eを利用して、実際のPMTを取得する。取得されたPMTは図11の形式をしており、ストリーム種別が「映像」および「音声」であるエレメンタリストリームのPIDが書かれている。JMF2004aが、それらのPIDを、ライブラリ2001bを通してTSデコーダ1302のPIDフィルタ1502に設定すると、図16に示されたごとく、該当PIDで多重されている映像ESと音声ESがAVデコーダ1303でデコードされる。デコードされた音声及び映像は,スピーカ1304,ディスプレイ1305経由で再生される。
またさらに、JMF2004aは2次記憶部1307に記録されたMPEG2トランスポートストリームをTSデコーダに入力する際のビットレートを変更する機能を有する。JMF2004aは、MPEG2トランスポートストリームのビットレート変更要求を受信すると、ライブラリ2001bを利用して2次記憶部1307に含まれる記憶領域1504またはTSB1701に指令を出し、入力するMPEG2トランスポートストリームのビットレートを変更する。これにより、早送り再生、巻き戻し再生などのトリック再生を実現することができる。
サービスマネージャ2004fは「サービスの再生」を制御する。「サービスの再生」には2種類あり、2次記憶部1307に記録済みのMPEG2トランスポートストリーム中のサービス(記録済みサービス)を再生する場合、及びチューナ1301から入力されるMPEG2トランスポートストリーム中のサービス(放送サービス)を再生する場合、が想定されている。また特に、放送サービスを再生する場合、TSB機能を実現するために、「放送サービスの録画」を同時に執り行う。
まず、サービスマネージャ2004fが管理する「サービスコンテキスト」について解説する。図25中段にサービスマネージャ2004fがサービスコンテキスト2521を管理する図を示す。
図16及び図19に詳述したように、「サービスの再生」を行うためには、複数のデバイスを接続し、各々に指令を出して適切な処理をさせる必要がある。これら接続されたデバイスをグループと捉え「サービスコンテキスト」と呼ぶ。Javaプログラムは、サービスマネージャ2004fに問い合わせることでサービスコンテキスト2521を取得し、取得したサービスコンテキスト2521に対してチャンネル識別子を引き渡して再生を要求することで、そのサービスコンテキストとしてグループ化された一連のデバイスを用いてサービスの再生処理を開始することができる。このとき、「サービスコンテキスト上でサービスが再生される」と呼ぶ。例えばOCAP仕様では、サービスの再生依頼はServiceContextクラスのselectメソッドにより実現する。
図19に詳述したように、TSB機能を実現するためには、放送サービスを一旦TSBに録画し、そこからサービスの再生を行う必要があり、それを実現するサービスコンテキスト2521は少なくともチューナ1301、TSデコーダ1302、多重器1313、2次記憶部1307中のTSB、AVデコーダ1303、ディスプレイ1305、スピーカ1304をグループ化している。サービスマネージャ2004fが管理するサービスコンテキストは端末に1である必要はない。サービスコンテキストの数はつまり「同時に再生可能なサービスの数」と捉えることができる。サービスコンテキストはデバイスグループを表現しているため、サービスコンテキストの数は、端末装置が搭載するデバイスの数等に依存する。またサービスコンテキストを識別するためにサービスコンテキスト識別子を導入する。
次に、サービスマネージャ2004fが、チューナ1301から入力されるMPEG2トランスポートストリーム中のサービスの再生を管理する場合の動作について述べる。これは放送サービスの再生に相当する。前述したようにこの場合、放送サービスを一旦TSBに記録し、そこからサービスの再生を行う必要がある。サービスマネージャ2004fは、チャンネル識別子を入力とする。そのチャンネル識別子で特定される放送波中のサービスが再生及び記録対象である。
サービスマネージャ2004fは自身が管理するサービスコンテキストを監視し、これらサービスコンテキストに対してチャンネル識別子が与えられると、TSBマネージャ2004gの録画登録部2501に「TSBに記録すべきチャンネル識別子」及び、「記録先のTSBを特定するTSB識別子」を与える。すると、TSBマネージャ2004gは後で述べる動作によってチューナ1301を用いてチューニングを行い、アダプタ1311から出力されTSデコーダ1302に入力されるMPEG2トランスポートストリームの中から必要な情報を抽出し、多重器1313に入力して再度MPEG2トランスポートストリームに形式変換し、TSBに記録を開始する。さらに同時に、TSBより記録したMPEG2トランスポートストリームを即座に読み出し、TSデコーダ1302に入力する。その後、JMF2004gに再生すべきチャンネル識別子を与える。すると、JMF2004aは、既に述べた動作によって、TSデコーダ1302に入力されるMPEG2トランスポートストリームに多重された映像と音声の再生を開始する。更に、AM2004bのAIT監視部2202に再生すべきチャンネル識別子を与える。すると、AM2004bはチューナ1301からTSデコーダ経由で出力されるMPEG2トランスポートストリームに多重されたAITに従って、同MPEG2トランスポートストリームに多重されたJavaプログラムの実行及び終了を開始する。
また、上記放送サービスの再生中に、例えばJavaプログラムが、JMF2004aに対してサービスの再生速度変更または再生位置変更を要求すると、JMF2004aは、前に述べた手法に従って、TSBがTSデコーダ1302に入力するMPEG2トランスポートストリームのビットレートまたは読み出し位置を変更する。これにより、TSBの中の「再生中のサービスの記録」を利用してトリックプレイを実現可能である。
TSBマネージャ2004gは、指定されたサービスを含むMPEG2トランスポートストリームを2次記憶部1307中のTSBに記録する。図25に,TSBマネージャ2004gの内部構成を示す。TSBマネージャ2004gは,TSB録画サービス選択部2502、TSB録画登録部2501、TSB切替部2503、TSB取得部2504を備える。
TSB管理部2504は、Javaプログラムによって利用されるライブラリであり、2次記憶部1307に存在するTSBの情報を管理する。図26はTSB管理部2504が管理するTSB管理テーブルの一例を表した図である。列2601はTSB識別子、列2602はその時点でTSBに記録しているサービスを特定するチャンネル識別子、列2603はその時点でサービスコンテキストと結合しているかどうかを表すフラグ、列2604はTSBの先頭アドレス、列2605はTSBの終了アドレスである。行2611及び行2612は各TSBに関する情報を表す。例えば行2611はTSB識別子が「1」、その時点で当該TSBに記録されているサービスのチャンネル識別子は「1」、その時点で当該TSBはサービスコンテキストと結合されている、先頭アドレスは「0x8000000」、終了アドレスは「0xa000000」である、という情報を表現する。Javaプログラムは、TSB管理部2504より、TSB管理テーブルに記載される情報を取得することが可能である。
TSB切替部2503は、サービスマネージャ2004fが管理するサービスコンテキストと接続されるTSBを切り替えるために、Javaプログラムによって用いられるライブラリである。サービスコンテキストを識別するためのサービスコンテキスト識別子とTSBを識別するためのTSB識別子を入力とする。TSB切替部2503は、「入力されたサービスコンテキスト識別子にて特定されるサービスコンテキスト」と「入力されたTSB識別子によって識別されるTSB」を論理的に接続する。この操作により、そのサービスコンテキストに元々接続されていたTSBは論理的に接続解除される。この時、新規にサービスコンテキストに接続されたTSBが切り替え前まで記録していたサービスの書き込みアドレスはリセットされないため、切り替え以降、サービスが記録される際には、その書き込みアドレスからサービスの記録が再開される。Javaプログラムが、TSB切替部2503を利用してサービスコンテキスト内のTSBを接続切り替えして以降、そのサービスコンテキスト上で再生される放送サービスは、既に述べたサービスマネージャ2004fの「放送サービスの再生」動作により、切り替えられたTSBに自動的に記録されるようになる。また更に、既にサービスマネージャ2004fの説明に述べたように、JMF2004aを利用してサービスのトリック再生を行うことが可能である。
TSB録画登録部2501は、TSBへのサービス記録要求を登録するために、Javaプログラムまたはサービスマネージャ2004fによって用いられる。TSB録画登録部2501は、「2次記憶部1307に存在するTSBを識別するTSB識別子」と「記録対象のサービスを特定するチャンネル識別子」を入力とする。要求を受け付けると、TSB録画サービス選択部2502に,指定されたTSB識別子及びチャンネル識別子を与えてサービスの記録を要求する。TSB録画登録部2501は例えば、端末が備える命令として実現され、その形式はrecord(channel、tsb)となる。ここでchannelはチャンネル識別子、tsbはTSB識別子である。
TSB録画サービス選択部2502は,指定されたチャンネル識別子に基づいて2次記憶部1307中の、指定されたTSB識別子が特定するTSBへのサービスの記録を行う。TSB録画サービス選択部2502は最初に、2次記憶部1307内に存在するTSBの中から、与えられたTSB識別子によって特定されるTSBを取得する。取得作業は、TSB管理部2504が保持するTSB管理テーブルを参照し、TSB識別子が等しい行を探索、先頭アドレス及び終了アドレスを取得することで行われる。次にチャンネル識別子をキーとして、ライブラリ2001bが保有するチャンネル情報から当該チャンネル識別子に相当するチューニング情報を得る。その後、Tuner2004cにチューニング情報を与えると、Tuner2004cはチューニングを開始する。ここで、チューニング情報は、周波数や変調方式などが特定可能な情報である。また図19に示されるように、アダプタ1311経由でMPEG2トランスポートストリームがTSデコーダに入力されるようにハードウェア構成要素の入出力を設定する。次に、SF2004eを利用して、チューニングで得られたMPEG2トランスポートストリームからPATを取得する。その後、PMTのPIDをPATから取り出し,また更にMPEG2トランスポートストリーム中の,指定されたチャンネル識別子に対応するプログラムナンバーをライブラリ2001bから検索し,SF2004eを利用して、対応するPMTを取得する。
その後、取得したPMTより、映像ES、音声ES、データESなどそのサービスに含まれるES全てのPIDを取得し、ライブラリ2001bを通してTSデコーダ1302内部のPIDフィルタ1502にそれらPIDを設定しPESパケット及びMPEG2セクションを抽出する。抽出したPESパケットやMPEG2セクションは多重器1313へ入力し、再度MPEG2トランスポートストリームに多重した上で指定されたTSB識別子によって特定されたTSBに記録する。なお,MPEG規格上,PAT及びPMTはバージョンアップが認められている。よってTSB録画サービス選択部2502は,常にPATをフィルタリングして監視し,PATがバージョンアップした時は上記動作を再度行って,MPEG2トランスポートストリーム中の録画対象サービスのPMTを再取得し、サービスの記録を開始する。その後、TSB管理部2504に対して、「新規に記録を開始したサービスのチャンネル識別子」及び「記録先TSBを特定するTSB識別子」を引き渡し、TSB管理テーブル中の、引き渡したTSB識別子で特定されるTSBの情報を保持する行の列2602を、引き渡したチャンネル識別子で置き換える。
TSBへのサービスの記録は、再度TSB録画登録部2501が、別のサービスの記録要求を受け付けるまで継続される。TSB録画登録部2501が別のサービスの記録要求を受け付けると、TSB録画サービス選択部2502はTSB録画登録部2501よりTSB識別子及びチャンネル識別子を受け取り、指定されたサービスに関してTSBへの録画を開始する。また、記録したMPEG2トランスポートストリームの管理情報を記録する。図27は2次記憶部1307等のTSBに記録されているTSBレコード情報を管理するためのTSBレコード情報管理テーブルの一例である。TSBレコード情報は表形式で記録されている。列2701は、レコード識別子である。列2702は、録画対象として指定されたチャンネル識別子である。列2703はそれに対応するプログラムナンバーである。列2704はサービスの録画開始時間、列2705はサービスの録画終了時間である。行2711〜2712の各行は、各レコード識別子、チャンネル識別子、プログラムナンバー、開始時間、終了時間の組となる。例えば、行2711はレコード識別子が「000」、チャンネル識別子が「2」、プログラムナンバーが「102」、開始時間が「2005/03/30 11:00」、終了時間が「2005/03/30 12:00」、であることを示す。
TSBはリングバッファ的に利用されるものであり、TSBの終了アドレスを超えて記録が行われそうになると、TSBの開始アドレスに戻って記録を継続する。そのため、古いサービス記録は新しいサービス記録によって上書きされ続ける。TSB録画サービス選択部2502は、レコード情報管理テーブルが常に最新のTSBの状況を表現するよう、随時更新を行う。
EPG2002は、電子番組表(Electric Program Guideの略)であり、再生の対象とする番組をユーザに選択させる機能である。放送波を受信しての通常の再生はサービスマネージャ2004fにチャンネル識別子を引き渡すことによって成される。
番組を再生する場合は、EPG2002は、放送番組一覧を表示してユーザに希望の番組を選択させる。図29は、再生対象とする番組を選択させるための画面表示の一例である。時刻2901とチャンネル2902と2903が格子状に表示され、各時刻で記録可能な各チャンネルの番組を一覧できる。ユーザは端末装置1300の入力部1310に備わっている上下左右カーソルボタン1401〜1404を用いて画面上のフォーカス2911を移動させることができる。更にOKボタン1405を押下すると、現在フォーカスが当たっている番組が再生対象として選択される。EPG2002は当該番組のチャンネル識別子をライブラリから取得して知っており、ユーザによって再生対象番組が選択されると、当該番組のチャンネル識別子をサービスコンテキストに引き渡して、サービスの再生を指令する。
録画済みコンテンツを再生する場合は、EPG2002は、録画済みコンテンツを表示してユーザに希望の番組を選択させる。図28は再生対象とする番組を選択させるための画面表示の一例である。操作方法は本発明と関連しないため、割愛する。
ここまでは端末装置が予め内蔵するプログラムの動作について解説したが、以降、AM2004bがダウンロードして端末装置上で実行されるJavaプログラムの、本発明における特徴的な動作について解説する。
本実施の形態が実現する放送受信蓄積端末は、2次記憶部1307内に2つのTSBを有する。上記Javaプログラムは、まずサービスマネージャ2004fが管理するサービスコンテキスト上で実行する「ユーザが視聴する放送サービスを一旦TSBに記録し、それをTSBより再生」する機能の実現に1つのTSBを利用する。さらにそれと並行し、過去のユーザの視聴履歴を参照して判断した「ユーザが最も嗜好する」裏番組を、もう1つのTSBに記録する。つまり前者のTSBには再生中のサービスが記録され、後者のTSBには裏番組が記録されていく。ここで前者の、サービスコンテキストと接続されるTSBを「メインTSB」、後者の、サービスコンテキストと接続されないTSBを「サブTSB」と呼ぶ。この状況下で、ユーザが「再生するサービスの変更」をJavaプログラムに指示した際、JavaプログラムはまずサブTSBを調査する。今ユーザが指定した変更先サービスが既にサブTSBに記録されていれば、上記サービスコンテキストからメインTSBを切り離し、サブTSBを接続してから、変更先サービスの再生をサービスコンテキストに要求する。これにより、サービスコンテキストが変更先サービスの再生を開始した時には、既にそのTSBはそのサービスの記録を保持しているため、そのTSBを利用し、シームレスなトリック再生を行うことが可能となる。
図25はJavaプログラムの構成図を含む。ダウンロードしたJavaプログラムはEPG表示部2511、チャンネル決定部2512、視聴履歴管理部2513、自動TSB録画制御部2514を含む。
EPG表示部2511はEPG2002同様、ユーザに対して電子番組表を提示し、再生するサービスの選択を促す。EPG表示部2511は、各番組を特定する番組識別子や番組の開始時刻、終了時刻などの情報を予め含む。ここで、番組識別子は、番組タイトルが等しい番組に同じ識別子が割り当てられる。ユーザが視聴したサービスを選択すると、ユーザが選択した番組の番組識別子及びチャンネル識別子をチャンネル決定部2512に引渡し、サービスの再生を依頼する。
チャンネル決定部2512は起動すると、まず初期化手順としてTSBマネージャ2004gのTSB管理部2504を利用して、2次記憶部1307に存在する全てのTSBのTSB識別子を取得する。次に、サービスマネージャ2004fから取得したサービスコンテキスト識別子及び、取得したTSB識別子の中の一つをTSB切替部2503に与え、サービスコンテキストと2次記憶部1307に存在するTSBを結合する。
それ以降は、定常動作として、EPG表示部2511からの番組識別子及びチャンネル識別子入力を待つ。図31はEPG表示部2511が番組識別子及びチャンネル識別子をチャンネル決定部2512に引き渡した後の動作を表したシーケンス図である。S3101にて、EPG表示部2511から入力されたチャンネル識別子及び番組識別子を受け取る。次にS3102にて、TSB管理部2504が管理するTSB管理テーブルを調べ、「サブTSBが記録中のサービスを特定するチャンネル識別子」を取得する。この時、TSB管理テーブルの列2603のフラグを見てサブTSBを特定し、そのTSBが記録中のチャンネル識別子を取得する。S3103に至り、「S3101で受け取ったチャンネル識別子」と「サブTSBが記録中のサービスを特定するチャンネル識別子」の二つを比較する。サブTSBがS3101で受け取ったチャンネル識別子が特定するサービスを記録中でなければ、「No」に進んでS3105に至る。S3103の判定で、サブTSBが既にS3101で受け取ったチャンネル識別子が特定するサービスを記録中であれば、「Yes」に進んでS3104に至る。S3104では、TSB切替部2503を利用して、サブTSBとサービスコンテキストを結合し直す。
この段階で、サブTSBはメインTSBとなり、それまでのメインTSBはサービスコンテキストと切り離され、利用されなくなる。例えば、TSB1及びTSB2があり、前者がメインTSB、後者がサブTSBとして利用されていた場合、S3104の処理により、TSB2がメインTSBになり、TSB1は利用されなくなる。S3105に進み、サービスマネージャ2004fにチャンネル識別子を引き渡して、サービスの再生を指令し、S3106にて、視聴履歴管理部2513に番組識別子及びチャンネル識別子を引き渡して、視聴履歴の更新を指令する。
視聴履歴管理部2513は、ユーザのサービス視聴履歴を管理する。図30は視聴履歴管理部2513が管理する視聴履歴管理テーブルの一例である。列3001は番組識別子を表す。列3002はチャンネル識別子を表す。列3003は番組が放送されている時間帯を表す。列3004はユーザが当該番組をどれくらい視聴しているか評価するためのポイントである。行3011〜行3014は各番組に関する情報を保持する。例えば、行3011は番組識別子が「1」、チャンネル識別子が「1」、時間帯が「Mon:8:00−9:00」、ポイントが「5」であることを表現する。視聴履歴管理部2513は、チャンネル決定部2512から番組識別子及びチャンネル識別子を受け取ると、当該番組のポイントを1加算する。また、視聴履歴管理部2513は、自身が管理する視聴履歴管理テーブル内部に保持される番組の開始時刻になると、自動TSB録画制御部2514を励起する。
自動TSB録画制御部2514は、視聴履歴管理部2513によって視聴履歴管理テーブル内の番組の開始時刻に励起される。図32は、その後の動作を表現したシーケンス図である。S3201にて、視聴履歴管理部2513が管理する視聴履歴管理テーブルを参照し、その時間帯で最もポイントの高い番組を取得、そのチャンネル識別子を得る。次にS3202にて、TSB管理部2504が管理するTSB管理テーブルを参照し、メインTSB、すなわち「サービスコンテキストと接続されたTSB」が記録中のサービスのチャンネル識別子を取得する。S3203にて、メインTSBが「既にS3201にて得たチャンネル識別子が特定するサービス」を記録中かどうか調査し、既に記録中であれば、「Yes」に進んでS3204に至る。S3204では、視聴履歴管理部2513が管理する視聴履歴管理テーブルを再度参照し、記録対象として2番目にポイントの高い番組を取得、そのチャンネル識別子を得る。S3203にて、メインTSBが記録中のサービスと、S3201で取得したチャンネル識別子が特定するサービスが異なれば、「No」に進んでS3205に至る。S3205にて、TSB管理部2504が管理するTSB管理テーブルを参照し、サブTSBのTSB識別子を取得する。S3206に進んで、TSB録画登録部S2501に、「S3201にて受け取ったチャンネル識別子」及びTSB識別子を引き渡して、サービスの記録を指令する。
以上、本実施の形態によると、JavaプログラムがEPGを表示する形態をとる放送記録端末において、ユーザが視聴した回数の多い番組は、例えその番組と同じ時間帯にユーザが明示的に裏番組を視聴していたとしても、自動的にサブTSBに記録される。さらに、ユーザが、Javaプログラムが表示するEPG上で新しく再生するサービスを選択した際、そのサービスが既にサブTSBに自動記録されていた場合は、サブTSBをメインTSBとして切り替えることで、それまで明示的に視聴していてメインTSBに記録が残っているサービスでなくても、サブTSBに記録されて残っている分に関して、巻き戻して視聴することが可能となる。
なお、視聴履歴管理部2513が視聴履歴管理テーブルにユーザの視聴履歴情報を追加してポイントを加算する手法に様々なものが考えられる。本実施の形態では単純に視聴した回数に応じてポイントを加算しているが、例えば、視聴だけでなく、レコーディングマネージャ2004hに記録を指令した番組に関しても、その回数に応じてポイントを加算するような手法であってもよい。
さらに、番組放映時間帯中80%を超えて視聴した場合は当該番組のポイントを加算するような手法であってもよい。なお、その際のパーセンテージは80でなくてもよい。さらにパーセンテージをユーザがEPG表示部2511が表示する設定画面から設定可能であってもよい。
さらに、Javaプログラムが管理し、EPG表示部2511に表示するのに利用される番組情報を利用してもよい。またさらに、視聴履歴管理テーブルに未来の番組の情報を追加してもよい。この場合、記載された未来の番組の時間帯に関して、本実施の形態で述べたのと同様に扱われるため、その開始時間に到達すると、視聴履歴管理部2513は自動TSB録画制御部2514を起こし、サブTSBにサービスの記録を開始する。例えば、チャンネル決定部2512が視聴履歴管理部2513に番組識別子及びチャンネル識別子を引き渡された場合、視聴履歴管理部2513は、番組識別子から当該番組の番組情報を取得し、そのジャンルに一致するその他未来の番組を自動的に視聴履歴管理テーブルに追加してもよい。例えば、スポーツであれば、その他スポーツ番組を視聴履歴管理テーブルに追加してもよい。またジャンルでなくとも、タイトルのキーワード一致、内容のキーワード一致、出演者一致、時間帯一致、Rating情報一致などであってもよい。さらにそれらを組み合わせた複合条件検索を行っても良い。例えば、ジャンルがスポーツで、なおかつ時間帯が一致する、などであってもよい。
さらに、複数回の番組に分割されて放送される予定の「シリーズ番組群」に関して、例えば初回番組を視聴したことにより、視聴履歴管理部2513が独自に条件判断して、それ以降の同一シリーズの番組全てを視聴履歴管理テーブルに追加してもよい。また、シリーズ2回目を視聴したことにより、視聴履歴管理部2513が独自に条件判断して、シリーズ初回の再放送を視聴履歴管理テーブルに追加してもよい。
なお、視聴履歴管理部2513が視聴履歴管理テーブルに番組を追加し、ポイントを加算する際、1ポイントずつ加算する必要はない。例えば、視聴履歴管理部2513が録画履歴を重視するのであれば、視聴回数毎に1ポイント、録画回数毎に5ポイントというように、重み付けしてもよい。この場合、自動TSB録画制御部2514が記録するサービスを判断する際に高ポイントの番組を放送しているサービスを重視するため、録画回数が多い方が、優先されてサブTSBに記録されることになる。
なお、視聴履歴管理部2513が視聴履歴管理テーブルを明示的に番組単位で管理する必要はない。例えば、図30の列3002のチャンネル識別子及び3003の時間帯毎に管理することで、番組の単位を超えた管理を行うことが可能となる。
なお、本実施の形態では、自動TSB録画制御部2514は、視聴履歴管理部2513に記載された番組の開始時刻になると起こされてTSB録画登録部2502を呼び、即座にTSB録画が開始される。しかしTSB録画登録部2502自体にタイマ機能を付与し、自動TSB録画制御部2514は、TSB録画を開始する時刻と共にTSB録画登録部2502にTSBへのサービス記録を指示し、TSB録画登録部2502は、指定された開始時刻まで待ち、指定された開始時刻になると、TSB録画サービス選択部2502に対して、サービス記録を指示する。この場合TSB録画登録部2501を実現する命令の一例として、record(channnel,tsb,starttime)を挙げる。ここでchannelは録画対象のサービスを指定するチャンネル識別子、tsbはTSBを特定するTSB識別子、starttimeは録画開始時間を意味する。
以上説明したいくつかの実施例は、本発明の実現例を示したものであり、本発明の趣旨が実現される限り他の実現例でも実施可能である。また,各実施例の主要な動作を取捨選択して組み合わせた構成としてもよい。
実施例ではケーブルシステムを対象とした構成を示したが、本発明は放送システムの種類に依存しない。例えば、衛星システム、地上波システム、あるいはIPネットワークを用いた番組配信システムなどにも容易に適応可能である。さらに本発明は各放送システムの違いと直接的な関係を持たないため、放送システムに係らず任意の伝送媒体で適用可能である。有線、無線の違いにも依存しない。
AVデコーダは、必ずしも映像および音声を同時にデコードする必要はない。映像デコーダ、音声デコーダを分離した構成としても、本発明は実現可能である。またAVデコーダがクローズドキャプションなどのデータに対するデコード機能を持っていても差し支えない。AVデコーダによってデコードされたaudio信号およびvideo信号が、記録領域1504に蓄積されるまでの任意の段階において暗号化されてもよい。
実施例では、限定視聴を制御するアダプタを導入した例を示したが、アダプタは本発明を実現するために必ずしも必要ではない。アダプタの形式がいかなるものであってもよいし、またアダプタのない構成とすることも可能である。その場合、図15において、チューナからのMPEG2トランスポートストリームが直接TSデコーダに入力される。この場合も本発明は適用可能である。また、アダプタによる限定視聴解除をTSデコーダ以前に行う必要はない。任意の位置でアダプタを利用して限定視聴を解除する構成とすることは容易であり、その場合も本発明は適用可能である。
AVエンコーダによるaudio信号およびvideo信号のエンコード形式は、任意の形式であってもよい。本発明はいかなるエンコード形式であっても適用可能である。
多重器の多重形式は任意の形式であってもよい。本発明はいかなる多重形式であっても適用可能である。
ディスプレイおよびスピーカは、放送録画再生装置内部に包含していてもよく、放送録画再生装置に外部ディスプレイおよびスピーカを接続してもよい。ディスプレイおよびスピーカの存在場所や数によらず、本発明は適用可能である。
CPU自身が、TSデコード、AVデコード、AVエンコードおよび多重化のすべてあるいはいくつかの処理を兼用で行うシステムであっても本発明は実施可能である。
サービスを記録する形式としては、他にもTSデコーダを介さずにチューナからのMPEG2トランスポートストリーム出力を直接、記録領域記録してもよいし、MPEG2トランスポートストリームの形式を変換するトランスレータを設けてチューナからのMPEG2トランスポートストリームを形式変換して記録領域に記録してもよい。いかなるサービス記録方式を用いても、本発明は実施可能である。
一部のJavaバーチャルマシンは、バイトコードをCPUが理解可能な実行形式に翻訳してから、CPUに引き渡して実行するが、この場合でも本発明は適用可能である。
以上の実施例では、トランスポートストリームがIn−bandから得られるとしてAITに関して実現方法を説明したが、AMが実行すべきJavaプログラムを参照する手法はAITによるものだけではない。米国ケーブルシステムで利用されることが想定されるOCAPではAITと同様の同期データをOOBにて転送するXAITが利用されている。その他、ROMに予め記録されているものを起動する、2次記憶にダウンロードして記憶したものを起動する、等の方法も考えられる。
DSMCCファイルシステムおよびAITファイルの記録方式は任意の方式でよい。
MPEG2トランスポートストリームからAITセクションをフィルタリング取得する方式と,DSMCCセクションを独自形式でファイルに記録する方式を組み合わせても本発明は実施可能である。また,MPEG2トランスポートストリームからDSMCCセクションをフィルタリング取得する方式と,AITセクションを独自形式でファイルに記録する方式を組み合わせても本発明は実施可能である。
Javaプログラムをダウンロードして実施する例となっているが、Javaプログラムはダウンロードせず、端末内部の2次記憶部1307から起動してもよい。
本発明に係る録画再生装置および録画再生方法は、放送を録画再生する装置に係る民生機器産業において利用可能である。例えば、ケーブルSTB、および、ディジタルTV等として利用可能である。さらに、例えば、携帯電話等の機器においても放送受信機能をもつ機器であれば利用可能である。
本発明に係る放送局側システムと端末装置の接続図である。 周波数利用の例を表現した図である。 周波数利用の例を表現した図である。 周波数利用の例を表現した図である。 MPEG2に規定されるTSパケットの構造図である。 MPEG2トランスポートストリームの構成図である。 PESパケットとTSパケットの関連図である。 MPEG2セクションとTSパケットの関連図である。 MPEG2セクションの構造図である。 番組編成情報を伝送する時のMPEG2セクションのパラメータ例を示す図である。 PMTの例を示す図である。 PATの例を示す図である。 本発明に係るハードウェア構成図の一例である。 入力部をフロントパネルで構成した際の一例を示す図である。 サービスの記録時における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図である。 記録済みサービスの再生時における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図である。 2次記憶部内に存在するTSBの一例を示す図である。 2次記憶部内にTSBが2つ存在する場合の一例を示す図である。 TSB実現における、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図である。 サービスの記録と再生に必要とされるプログラムの構成図である。 ライブラリが管理するチャンネル情報の一例を示す図である。 AMの構成図である。 AITの構成図である。 DSM−CCオブジェクトカルーセルによって伝送されるファイルツリーの一例を示す図である。 本発明に係るJavaプログラム、サービスコンテキスト、サービスマネージャ、TSBマネージャの構成及び関連図である。 TSB管理テーブルの一例を示す図である。 TSB情報管理テーブルの一例を示す図である。 EPGの録画済みコンテンツ選択モードの例を示す図である。 EPGの再生番組選択モードの例を示す図である。 視聴履歴管理テーブルの一例を示す図である。 チャンネル決定部の動作シーケンスである。 自動TSB録画制御部の動作シーケンスである。
符号の説明
2004f サービスマネージャ
2004g TSBマネージャ
2500 Javaプログラム
2501 TSB録画登録部
2502 TSB録画サービス選択部
2503 TSB切替部
2504 TSB管理部
2511 EPG表示部
2512 チャンネル決定部
2513 視聴履歴管理部
2514 自動TSB録画制御部

Claims (9)

  1. 放送サービスを記録する固定長のリングバッファと、
    指定されたサービス識別子に対応するサービスを再生するサービス再生手段と、
    前記サービス再生手段と前記リングバッファを1対1で結合する リングバッファ結合手段と、
    前記リングバッファ結合手段を用いて前記サービス再生手段と結合された第一のリングバッファに、前記サービス再生手段により再生される放送サービスを同時に記録する視聴放送サービス自動記録手段と、
    前記サービス再生手段にサービス識別子を指定してサービスの再生を開始するサービス選択手段と、
    前記サービス再生手段を用いて再生されたサービスの履歴を保持するサービス再生履歴保持手段と、
    前記サービス再生履歴保持手段を参照して、ユーザが嗜好する番組を選択して、
    第二のリングバッファに記録する嗜好番組自動記録手段を具備し、
    前記サービス再生手段は、自身と結び付けられた前期リングバッファに記録されたサービスを再生することで追っかけ再生を実現する機能を備え、
    さらに、前記サービス選択手段は、前記サービス再生手段にサービス識別子を渡してサービスの再生を指令する前に、前記嗜好番組自動記録手段が第二のリングバッファに対して、既にこれから選択するサービス識別子にて特定されるサービスの記録を開始しているかどうか調査し、開始されていれば、前記リングバッファ結合手段を用いて、サービス再生手段と第二のリングバッファを結合する
    ことを特徴とする放送蓄積端末。
  2. 前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に視聴回数の多い番組を優先的に記録する
    ことを特徴とする請求項1に記載の放送蓄積端末。
  3. 前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に録画回数の多い番組を優先的に記録する
    ことを特徴とする請求項1に記載の放送蓄積端末。
  4. 前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に視聴及び録画の合計回数の多い番組を優先的に記録する
    ことを特徴とする請求項1に記載の放送蓄積端末。
  5. 前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、
    過去に視聴した際、番組の放送時間帯の一定割合以上視聴した番組を優先的に記録する
    ことを特徴とする請求項1に記載の放送蓄積端末。
  6. 前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に視聴した番組と同一ジャンルの番組を優先的に記録する
    ことを特徴とする請求項1に記載の放送蓄積端末。
  7. 前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に視聴した番組と同一出演者の番組を優先的に記録する
    ことを特徴とする請求項1に記載の放送蓄積端末。
  8. 前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に視聴した番組と同一タイトルの番組を優先的に記録する
    ことを特徴とする請求項1に記載の放送蓄積端末。
  9. 前記嗜好番組自動記録手段は、前記サービス再生履歴保持手段を参照し、過去に視聴した番組と同一シリーズの番組を優先的に記録する
    ことを特徴とする請求項1に記載の放送蓄積端末。
JP2006137043A 2005-06-09 2006-05-16 放送蓄積端末 Pending JP2006345505A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US68868605A 2005-06-09 2005-06-09

Publications (1)

Publication Number Publication Date
JP2006345505A true JP2006345505A (ja) 2006-12-21

Family

ID=37642063

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006137043A Pending JP2006345505A (ja) 2005-06-09 2006-05-16 放送蓄積端末

Country Status (1)

Country Link
JP (1) JP2006345505A (ja)

Similar Documents

Publication Publication Date Title
US8745632B2 (en) Broadcast receiving terminal and program execution method for resource reservation
US7590331B2 (en) Broadcast recording apparatus
US7840116B2 (en) Broadcast receiving terminal
US7962001B2 (en) Content reproduction apparatus
JP2008546221A (ja) 放送録画再生装置および方法
JP2009520381A (ja) 残量検出部を有する記録装置
US20070022208A1 (en) Recording and reproduction apparatus
US20070157263A1 (en) Content management system
US20070140650A1 (en) Broadcast receiving apparatus
US20060290775A1 (en) Program execution apparatus and execution method
JP2008543121A (ja) 記録再生装置および記録再生方法
US20070011357A1 (en) Recording and reproduction apparatus
US20070154172A1 (en) Recording and reproduction apparatus
JP2008066764A (ja) 放送記録装置
JP2009094702A (ja) 操作履歴を記憶する情報処理装置
JP2006345505A (ja) 放送蓄積端末
JP2010011115A (ja) 放送受信装置
MX2007013061A (es) Aparato de reproduccion de contenido.