以下本発明の実施の形態について、図面を参照しながら説明する。
1.装置の構成
以下に、本発明の実施の形態に係る録画システム、録画装置および録画方法を、図面を参照しながら説明する。本発明は、任意の媒体で送受信されるコンテンツの録画および再生を対象としたものであるが、本実施の形態ではケーブルテレビ放送システムでの実施の形態を例にとって説明する。ケーブルテレビ放送システムでは、本発明のマルチメディアデータ受信装置は一般的に端末装置と呼ばれる。端末装置は、録画装置、再生装置、あるいは録画装置と再生装置の両機能を一つの本体内に備えた録画再生装置を含む。
本実施の形態では、録画機能を持つことが特徴の端末装置を、特に「録画装置(または録画端末)」と呼び、再生機能を持つことが特徴の端末装置を「再生装置(または再生端末)」と呼ぶことにする。
更に、コンテンツの送信の機能を持つことが特徴の要素である録画装置を「録画送出装置」、コンテンツの受信の機能を持つことが特徴の要素である再生装置を「受信再生装置」と呼ぶことにする。
図1は、本発明の実施の形態における端末間ネットワーク通信システムの構成の一例を示す構成図である。この構成は、マルチメディアコンテンツ通信システムを表す。
端末間ネットワーク通信システム105は、受信再生装置101、録画送出装置102a、102b、放送局側システム100、およびネットワーク104を備えている。図1において、録画送出装置102aおよび録画送出装置102bは本発明における録画装置を表し、受信再生装置101は本発明における再生装置を表す。これらによって構成される録画送出装置102a、録画送出装置102bおよび受信再生装置101は、ネットワーク104(例えばホームネットワーク)に接続されており、ネットワーク104を介して利用可能な装置(この例では家庭内で利用可能な録画送出装置102a、録画送出装置102b、受信再生装置101)と相互に通信可能である。また、ケーブル103は各装置と放送局側システム100を結ぶ。また、実施の形態においてネットワーク104に接続される装置は、端末IDを有する。端末IDはネットワーク104に接続される端末の間で一意に端末を特定する識別情報である。図1に例示する端末間ネットワーク通信システム105において、受信再生装置101の端末IDは「001」、録画送出装置102aの端末IDは「002」、録画送出装置102bの端末IDは「004」である。
なお、本実施の形態では、録画送出装置102a、102bおよびネットワーク104から本発明の録画システムが構成されている。
本実施の形態における録画送出装置102a及び録画送出装置102bは、例えばネットワークインタフェースと、マルチメディアデータを録画する記録領域とを備えた、デジタル放送を受信するSTB(Set Top Box)である。ここでは、録画送出装置102a及び録画送出装置102bは同様の録画送出装置であるため、それぞれを録画送出装置102として説明する。受信再生装置101および録画送出装置102は、ケーブル103を介して放送局側システム100に接続されている。そして、録画送出装置102は、放送局側システム100から受信したデジタル放送コンテンツのマルチメディアデータを、記録領域に蓄積する。
また、録画送出装置102は、ネットワーク104を通じて送信された、受信再生装置101からの要求を受信する。そして、要求に応じて受信したデジタル放送のコンテンツ、もしくは、蓄積しているコンテンツごとの情報や属性もしくはマルチメディアデータを、ネットワーク104を通じて受信再生装置101へ送信する。あるいは、録画送出装置102は、受信再生装置101からの要求に応じて放送局側システム100から受信したデジタル放送のコンテンツを録画する。なお、本実施の形態においては、録画送出装置102は、ネットワーク104を介してマルチメディアデータを出力するときに用いる通信プロトコルとして、DLNAにて必須プロトコルとなっているHTTP(Hypertext Transfer Protocol)を用いることとするが、他のプロトコルであっても同様の効果が得られる。
また、録画送出装置102は、受信再生装置101からの要求に従い、放送局側システム100から受信したデジタル放送コンテンツを蓄積する。これら蓄積したコンテンツも、受信再生装置101へ提供する(リモート予約録画)。
なお、録画送出装置102は、記録領域に蓄積したマルチメディアコンテンツすべてを提供しても良いし、放送局側システム100からダウンロードしたアプリケーションなどによって、設定された範囲のマルチメディアコンテンツを提供しても良い。
受信再生装置101は、ユーザの要求により、録画送出装置102へ、提供可能なコンテンツの一覧送信要求、マルチメディアデータおよびコンテンツの属性の送信要求を送信する。またその返答として、録画送出装置102よりデータを受信して、ユーザに提示する。また、ユーザの要求により、録画送出装置102へ録画予約の要求を送信する(リモート予約録画)。
受信再生装置101は、ユーザの要求により、録画送出装置102へ、提供可能なコンテンツの一覧送信要求、マルチメディアデータおよびコンテンツの属性の送信要求を送信する。またその返答として、録画送出装置102よりデータを受信して、ユーザに提示する。受信再生装置101は、例えば、DLNAによって策定されたガイドラインに従って実装された機器である。DLNA対応機器については、DLNAが発行したガイドラインに詳細が記載されているため、ここでは説明を省略する。
ネットワーク104は、家庭内に施設されたホームネットワークであり、イーサネット(登録商標)、無線LANなどによって構成されたIP(Internet Protocol)ネットワークである。
録画送出装置102と受信再生装置101は、通信において、ネットワーク104に接続された他の装置を検索すること、及び各装置の保持する機能を取得することが可能である。また、受信再生装置101は、録画送出装置102に対し、提供可能なコンテンツの一覧送信要求を発行する。そして、録画送出装置102は、その要求を受け、提供可能コンテンツを検索し、その一覧を、受信再生装置101へ返信する。
提供コンテンツ一覧を受信した受信再生装置101は、その一覧をユーザに提示する。そして、ユーザが選択したコンテンツのデータ送信を、録画送出装置102へ要求する。録画送出装置102は、要求されたコンテンツデータを記録領域から読み出し、要求元の受信再生装置101へ送信する。コンテンツデータを受信した受信再生装置101は、それをユーザに表示する。
また、リモート予約録画時は、受信再生装置101が、録画送出装置102に対し、リモート予約録画の要求を発行し、録画送出装置102は、その要求に従い、受信したデジタル放送コンテンツの録画を行う。
これら一連の動作は、DLNA及びUPnPにて定義されている手法を利用して実施される。DLNA及びUPnPにて定義されている手法に関しては、詳細説明は省略する。
なお、図1に示す端末間ネットワーク通信システム105では、録画送出装置102a、録画送出装置102b、受信再生装置101がそれぞれ放送局側システム100と接続されているが、録画送出装置102a及び録画送出装置102bのみが放送局側システム100と接続されていても、あるいは端末間ネットワーク通信システム105を構成する複数の装置が放送局側システム100と接続されていても、本発明は適用可能である。
なお、図1に示す端末間ネットワーク通信システム105では、録画送出装置102および受信再生装置101、は各々異なる端末であるが、一つの端末が録画送出装置102の機能と受信再生装置101の機能の両方を備えても本発明は適用可能である。具体的には、録画送出装置102aが録画送出装置102aの機能に加え受信再生装置101の機能を備えても、また、受信再生装置101が受信再生装置101の機能に加え録画送出装置102aの機能を備えても、本発明は適用可能である。
以降、本実施の形態で用いる録画送出装置102及び受信再生装置101に関して詳細に説明する。
図2は、本実施の形態で用いる録画送出装置102の一般的なハードウェア構成の一例を表すブロック図である。なお、本実施の形態においては録画送出装置102a、102bが同じ構成を備えるものを例に説明するため、共通の符号を付して説明をする。
また後述の説明において録画送出装置102aまたは録画送出装置102bが具備する構成要素に特化して説明をする場合には、図2にて説明した構成要素の符号の最後に「a」または「b」を付して説明する。(例えば録画送出装置102aが具備する第1チューナについて説明をする場合、その第1チューナを第1チューナ210aと記し、録画送出装置102bが具備する第1チューナについてについて説明をする場合、その第1チューナを第1チューナ210bと記す)。図4、図6、図13、図16、および図17についても同様である。
録画送出装置102は、第1チューナ210、第2チューナ211、TSデコーダ(TS Demultiplexer)212、AVデコーダ202、AVエンコーダ216、CPU203、2次記憶部204、1次記憶部205、ROM206、入力部207、アダプタ208、ネットワーク制御部209を含む。なお、録画送出装置は、複数のチューナを備えるのが一般的であり、本実施の形態における録画送出装置102は、第1チューナ210と第2チューナ211を備える2チューナモデルであるが、3つ以上のチューナを備えてもよいし、1つのみを備えても良い。
第1チューナ210及び第2チューナ211は、CPU203が指定する周波数などのチューニング情報に従って、放送局側システム100から伝送される変調された放送信号を復調するデバイスである。第1チューナ210もしくは第2チューナ211が信号を復調した結果得られるMPEG2トランスポートストリームは、暗号解除機能をもつアダプタ208を経て、TSデコーダ212に転送される。
TSデコーダ212は、CPU203が指定するPID(Packet Identification)、セクションフィルタ条件等の指定にもとづいて、MPEG2トランスポートストリームから指定条件に合致するPES(Packetized Elementary Stream)パケットやMPEG2セクションを選別する機能をもつデバイスである。この選別機能をパケットフィルタリングと呼ぶ。TSデコーダ212内にはPIDフィルタとセクションフィルタの二種類のフィルタデバイスが内蔵されている。
TSデコーダ212への入力はMPEG2トランスポートストリームである。MPEG2トランスポートストリームは、アダプタ208あるいは2次記憶部204から供給される。TSデコーダ212からの出力は、入力されたMPEG2トランスポートストリームに対してパケットフィルタリングを施した後のPESパケットである。PESパケットはAVデコーダ202や1次記憶部205に供給される。TSデコーダ212が選別した映像および音声のPESパケットは、AVデコーダ202に出力される。また、TSデコーダ212が選別したMPEG2セクションは、1次記憶部205にDMA(Direct Memory Access)転送され、CPU203が実行するプログラムなどによって利用される。TSデコーダ212の入力元や出力先は、ソフトウェアからの指示を受けて、CPU203によって制御される。
AVデコーダ202はエンコードされた映像ESおよび音声ESをデコードする機能をもつデバイスである。AVデコーダ202はTSデコーダ212から転送される音声および映像情報を伝送するPESパケットから音声ESおよび映像ESを取り出してデコードする。AVデコーダ202がデコードして得られたaudio信号およびvideo信号は、サービスの再生時には音声出力および映像出力としてそれぞれ図示しないスピーカ、図示しないブラウン管、液晶、有機ELなどの表示装置に出力される。一方、サービスの録画時には、AVデコーダ202がデコードして得られたaudio信号およびvideo信号はAVエンコーダ216へ出力され、AVエンコーダ216からの出力が例えば、2次記憶部204に記録される。AVエンコーダ216によるエンコード形式は、AVデコーダ202でデコードできる形式であれば任意の形式であってもよい。いずれの出力経路を取るかは、ソフトウェアからの指示を受けて、CPU203によって制御される。
CPU203は録画送出装置102上で動作するプログラムを実行する。CPU203は、ROM206に内蔵されるプログラムを実行する。あるいは、放送信号やネットワークよりダウンロードされ1次記憶部205に保持されているプログラムも実行する。あるいは、放送信号やネットワークよりダウンロードされ2次記憶部204に保存されているプログラムも実行する。そしてCPU203は実行するプログラムの指示に従い、第1チューナ210、第2チューナ211、TSデコーダ212、AVデコーダ202、2次記憶部204、1次記憶部205、ROM206、入力部207、アダプタ208、AVエンコーダ216、およびネットワーク制御部209を制御する。また、CPU203は録画送出装置102内に存在するデバイスだけでなく、アダプタ208内のデバイスと通信し、アダプタ208を制御することが可能である。
2次記憶部204は機器の電源が遮断されても記憶が消去されない記憶装置である。機器の設定情報や、後述の録画コンテンツなどを記録する。
1次記憶部205は、CPU203やDMA転送可能なデバイスの指示に従って情報を一時的に保存する機能をもつデバイスであり、RAM等によって構成される。
ROM206は、書き換え不可能なメモリーデバイスであり、具体的にはROMやCD−ROM、DVD等で構成される。ROM206には、CPU203が実行するプログラムが格納されている。
入力部207は、具体的には、例えばフロントパネルやリモコン受信機で構成され、ユーザからの入力を受け付け、入力信号をCPU203に通知する。
図3は、フロントパネルとして構成される入力部207の一例を示す図である。フロントパネル300は例えば七つのボタンを備えている。七つのボタンはそれぞれ、上カーソルボタン301、下カーソルボタン302、左カーソルボタン304、右カーソルボタン303、OKボタン307、取消ボタン306、EPGボタン305、モード切換ボタン308である。ユーザがボタンを押下すると、押下されたボタンの識別子が、CPU203に通知される。
アダプタ208は、MPEG2トランスポートストリームにかけられた暗号を解除する装置で、1つ以上のデスクランブラを搭載する。アダプタ208は第1チューナ210もしくは第2チューナ211から入力されたMPEG2トランスポートストリーム中の、CPU203が指定したTSパケットに対して暗号解除を行い、暗号を解除したMPEG2トランスポートストリームをTSデコーダ212に出力する。さらに、アダプタ208は、別周波数帯で伝送されるデータの形式変換も行う。
ネットワーク制御部209は、ネットワーク104を介して入出力される任意のデータを取り扱う。ネットワーク104の物理層及び論理層は任意の構成でよい。本実施の形態では、一例として、物理層にMoCAを使用する。また、論理層にはHTTP、TCP、IPプロトコルを用いることとし、論理層はソフトウェアで実現する。MoCAは、RF同軸ケーブル上でIPネットワークを実現するための規格である。例えば、本実の形態では、HTTPリクエストをTCP/IPパケット形式で受信し、要求内容に応じてソフトウェア処理した結果のデータをHTTPレスポンスによって出力する。
ここまでは、本発明の録画装置の一例である録画送出装置102に関するハードウェアの構成例に関して図2を用いて述べたが、以降、本発明の録画装置の主要機能である、サービスの記録制御、ネットワーク経由でのサービスの記録制御(リモート予約録画)、記録済みサービスの再生制御及びネットワーク経由でのサービスの出力制御に関して説明する。
本発明の録画装置におけるサービスの記録とは、サービスに含まれる映像、音声、Javaプログラム、Javaプログラムの同期情報等をハードディスク、BD(Blu−ray Disc)、DVD(Digital Versatile Disc)、SD(Secure Digital)メモリカードといった任意の記録媒体に記録することであり、サービスの録画と同義である。これらの記録媒体は、図2の構成図では例えば2次記憶部204として記載されている。記録済みサービスの再生とは、例えば記録媒体に記録された映像、音声、Javaプログラムを同期情報に基づいて再生および実行することである。記録済みサービスの再生結果は、放送波を受信して直接サービスを再生した結果とほぼ等価であることが要求される。
ネットワーク(図1の例ではネットワーク104)経由でのサービスの出力とは、記録済みサービスを端末自身で再生するのではなく、他の端末での再生のためにネットワーク経由でサービスに含まれる映像、音声、Javaプログラム、Javaプログラムの同期情報等を出力することである。
図4は、録画送出装置102で実行されるプログラムの構成の一例を示す図である。このプログラム400は、Javaプログラムによるサービスの記録制御、ネットワーク経由でのサービスの記録制御(リモート予約録画)、記録済みサービスの再生制御及びネットワーク経由でのサービスの出力制御に必要とされるプログラム及びダウンロードされたJavaプログラムであり、本実施の形態の録画送出装置上で動作するソフトウェアである。プログラム400は、ROM206に記憶されているソフトウェアである。
プログラム400は、サブプログラムであるOS414、JavaVM417、組み込みミドルウェア401、EPG412、およびデバイス競合解決マネージャ413を含む。
OS414は、オペレーティングシステム(Operating System)であり、Linux、Windows(登録商標)等が一例である。OS414は、他のサブプログラム、例えばJavaVM417を実行するためのカーネル415と、録画送出装置102が具備する各ブロックの構成要素を制御するためにサブプログラムが利用するライブラリ416とを含む。カーネル415は公知技術であり、詳細な説明は省略する。
ライブラリ416は、例えば第1チューナ210および第2チューナ211といったチューナを制御するチューニング機能を提供する。ライブラリ416は、他のサブプログラムや後述するTuner404から周波数を含むチューニング情報を受け取り、それを第1チューナ210または第2チューナに引き渡す。例えば第1チューナ210にチューニング情報が引き渡されたとすると、第1チューナ210は与えられたチューニング情報にもとづき復調処理を行い、アダプタ208を介して復調したMPEG2トランスポートストリームをTSデコーダ212に引き渡すことができる。この結果、他のサブプログラムはライブラリ416を通して第1チューナ210を制御することができる。また例えば、第2チューナ211にチューニング情報が引き渡されたとすると、第2チューナ211は与えられたチューニング情報にもとづき復調処理を行い、アダプタ208を介して復調したMPEG2トランスポートストリームをTSデコーダ212に引き渡すことができる。この結果、他のサブプログラムはライブラリ416を通して第2チューナ211を制御することができる。
また、ライブラリ416は、チャンネルを一意に識別するためのチャンネル情報を提供する。
図5は、チャンネル情報の一例を示す図である。チャンネル情報は例えばOOB(Out of Band)あるいはIn−band周波数帯を利用して放送局側システム100から送信され、受信したデータをアダプタ208で表形式に変換したものであり、ライブラリ416がアクセス可能な1次記憶部205に格納される。
図5において、列1001はチャンネル識別子、列1002はチャンネル名、列1003はチューニング情報、列1004は番組を指定するためのプログラムナンバーを示す。例えば、行1005は、チャンネル識別子が「1」、チャンネル名が「チャンネル1」、チューニング情報が周波数「150MHz,....」、プログラムナンバーが「101」であるサービス情報の組となっている。
またライブラリ416は、HTTP/TCP/IPといったネットワークプロトコルスタックや、2次記憶部204へのデータ読み書き制御機能も提供する。さらに、ライブラリ416は、自身の端末装置(録画送出装置102)の状態を判定する。ここで、端末装置の状態とは、例えば、電源オフ、スタンバイ、放送サービスを視聴中等の端末装置の状態などである。なお、端末装置の状態は左記の状態に限定しない。この他にも、ライブラリ416は例えば図2に示したハードウェア構成要素に対して制御用のパラメータを設定することができる。
JavaVM417は、例えばJava(TM)言語で記述されたプログラムを逐次解析し実行するJavaバーチャルマシンである。Java言語で記述されたプログラムはバイトコードと呼ばれる、ハードウェアに依存しない中間コードにコンパイルされる。JavaVM417は、この中間コードを逐次解析し、実行するインタープリタである。また、JNI(Java Native Interface)を通して、Java言語で記述されていない他のサブプログラムを呼び出したり、または、呼び出されたりすることが可能である。このような形態は、OCAPのように組み込みミドルウェア401を様々な製造会社が開発し、放送局側システム100から送信される同一のダウンロードJavaプログラムを各端末装置上で実行させるような運用において有益な仕組みである。
組み込みミドルウェア401は、JMF402、AM403、Tuner404、DSMCC405、SF406、録画マネージャ407、サービスマネージャ408、リレー録画マネージャ409、およびネットワーク制御マネージャ411を含む。
Tuner404は、録画送出装置102の第1チューナ210および第2チューナ211を制御する。JavaプログラムがTuner404に周波数などを含むチューニング情報を渡すと、Tuner404はそれを用いてライブラリ416のチューナ機能を呼び出し、結果、第1チューナ210および第2チューナ211の動作を制御できる。
SF(Section Filter)406は、TSデコーダ212に指定したパケットIDを送り、フィルタリング処理の結果出力されたデータを他のプログラムに出力する。
DSMCC405は、DSMCCオブジェクトカルーセルのファイルシステムにアクセスする。
AM403は、サービスに含まれるJavaプログラムの実行や終了を管理する機能を提供するアプリケーションマネージャ(Application Manager)である。AM403は、指定されたMPEG2トランスポートストリームの指定されたチャンネルに多重されたJavaプログラムを抽出し、別途多重された同期情報に従って抽出したJavaプログラムに含まれる必要なファイルデータをJavaVM417に引き渡し、その抽出したJavaプログラムをJavaVM417に実行させる。またAM403はJavaVM417に実行させているJavaプログラムを上述の同期情報に従って終了させる。
MPEG2トランスポートストリーム中のTSパケットからファイルシステム等のデータを取り出し1次記憶部205または2次記憶部204等の記憶手段に保存することを、ダウンロードとよぶ。
JMF402は、サービスに含まれる映像と音声の再生制御を担う。具体的には、サービスの再生時に、TSデコーダ212から出力されるMPEG2トランスポートストリームから特定の映像ESと音声ESをAVデコーダ202に入力させる。
AVデコーダ202でデコードされた音声及び映像は、音声出力、映像出力としてそれぞれ図示しないスピーカ、表示装置から出力される。
録画マネージャ407は、指定されたサービスを含むMPEG2トランスポートストリームを2次記憶部204に記録する機能、及び後述するリレー録画登録の管理をする機能を持つ。
図6は、録画マネージャ407の内部構成の一例を示す図である。録画マネージャ407は、録画登録部500、録画制御部501、録画デバイス設定部502、リレー録画登録部503を備える。録画制御部501は録画サービス選択部504を備える。録画の指定は、入力部207を用い録画装置(録画送出装置102)を利用するユーザによる指定、Java APIを用いた録画装置上で実行するJavaアプリケーションプログラムによる指定、非Java言語のプログラムからの指定、及び、ネットワーク制御部209を用いてネットワーク104を介して接続する他の端末装置(または他の端末装置上で実行されるJavaプログラム)からの指定が行われる。
録画登録部500は、チャンネル識別子と開始時刻および終了時刻とを入力として、チャンネル識別子に対応するサービスについて、入力により指定された開始時刻と終了時刻の間だけ記録する要求を受け付ける。ここで、チャンネル識別子と開始時刻および終了時刻とを含む入力情報を録画予約情報と呼ぶ。また録画登録部500は非Java言語のプログラムからの録画登録依頼も受け付ける。例えば、EPG412からチャンネル識別子と開始時刻および終了時刻とを指定できる。また録画登録部500は ネットワーク制御部209を経由してネットワーク104と接続する他の端末装置からの録画登録も受け付ける。例えば、ネットワーク104に接続された受信再生装置101からネットワーク104を経由してネットワーク制御部209が受け取ったチャンネル識別子と開始時刻および終了時刻とを含んだ録画登録依頼を録画登録部500が受け付けることができるようにネットワーク制御マネージャ411が制御することにより、受信再生装置101から指定した録画予約を行うことができる。
録画登録されると、録画登録部500は録画予約情報を保持し、録画開始時刻の一定時間前になるまで待機する。なお、録画登録直後に、録画デバイス設定部502に録画に利用するデバイスの仮確保を要求することも可能である。その後、録画開始時刻の一定時間前に至ると、録画デバイス設定部502に録画に利用するデバイスの確保を要求する。続いて、録画制御部501に、指定されたチャンネル識別子と、録画開始時刻及び録画終了時刻とを与えてサービスの記録を要求する。ここで、一定時間は任意の時間でよいが、以下に説明する録画制御部501での行う録画の前処理が完了できるだけの時間であることが望ましい。
録画デバイス設定部502は、各々の録画予約(録画登録)について、録画開始時刻から録画終了時刻までの期間に録画に利用するデバイスを確保する。ここで、デバイスとは、第1チューナ210、2次記憶部204、AVデコーダ202、TSデコーダ212などの録画に利用するデバイスである。デバイスの確保は、デバイス競合解決マネージャ413へのデバイス確保要求により実現される。
録画制御部501は、設定されたデバイスを用いて、指定されたチャンネル識別子と、録画開始時刻及び録画終了時刻とに基づいて、2次記憶部204へのサービスの録画を行う。録画制御部501は、録画サービス選択部504を備える。この録画サービス選択部504は、チャンネル識別子をキーとして、ライブラリ416が保有するチャンネル情報から当該チャンネル識別子に相当するチューニング情報を取得する。
最初に、録画制御部501は、例えば2次記憶部204内に、指定された開始時刻から終了時刻までのMPEG2トランスポートストリームを記録するための記録領域を確保する。確保した記録領域には、メディア識別子を与える。次に録画サービス選択部504が当該チャンネル識別子に相当するチューニング情報を得る。その後、Tuner404にチューニング情報を与えると、Tuner404はチューニングを開始する。ここで、チューニング情報は、周波数や変調方式などが特定可能な情報である。さらに、録画制御部501は、SF406を利用して、MPEG2トランスポートストリームから必要なデータを取得する。その後、ライブラリ416を通じて、各ハードウェア構成要素の出力先を設定する(例えばAVデコーダ202の出力をAVエンコーダ216へ入力されるようにするとともに、AVエンコーダ216の出力を第2記憶部204において確保した記憶領域へ出力されるように設定をするなど)。すると、指定されたチャネル識別子に対応するサービスに含まれる全ES(エンコードされた映像ES、音声ESなど)が、先ほど領域確保した2次記憶部204に記録される。
またAVエンコーダ216でエンコードする必要がない場合には、AVデコーダ215の出力を2次記憶部204に直接記録しても良い。また2次記憶部204へ記録するとき、図示しない多重化器などを利用して映像ES、音声ESおよび必要な情報を多重化したMPEG2トランスポートストリームとして2次記憶部204へ記憶しても良い。
なお、録画制御部501は、指定された録画終了時刻に至る前にMPEG2トランスポートストリームの入力が途切れると、そのMPEG2トランスポートストリームの録画を一旦終了する。そしてその後、指定された録画終了時刻に至るまでの間にMPEG2トランスポートストリームが再度入力される度に、新たに録画を開始し、MPEG2トランスポートストリームを2次記憶部204に記録する。MPEG2トランスポートストリームの入力が途切れたり、再開したことは、例えば、TSデコーダ212への入力が途切れたり再開したことで検出できる。録画制御部501は、TSデコーダ212へのMPEG2トランスポートストリームの入力状態を、ライブラリ416の機能を利用して常に監視している。
その後、指定された録画終了時刻に至ると、録画制御部501は、Tuner404のチューニング動作を停止させ、2次記憶部204へのMPEG2トランスポートストリームの書き込みを終了させる。
また、録画制御部501は、2次記憶部204へ記録したMPEG2トランスポートストリームの管理情報として、例えば図7に示す録画情報管理テーブルを作成する。これについて、以下に詳細を述べる。
図7は、2次記憶部204等に記録されている録画情報を管理するための録画情報管理テーブルの一例を示す図である。録画情報管理テーブル1200は、レコード識別子1201を保持するとともに、レコード識別子1201ごとに、録画予約情報と、録画予約情報に従って録画したコンテンツに関連する情報である録画コンテンツ情報とを保持する。録画予約情報は、1つのレコード識別子に対して1つある。録画コンテンツ情報は、1つのレコード識別子に対して、複数あることもあれば、また、ないこともある。ここで、レコード識別子1201「001」に対応する、録画予約情報d12の一例を図8に、録画コンテンツ情報d121〜123の一例をそれぞれ図9から図11に示す。
図8は、録画予約情報の一例を示す図である。なお、図8に示す録画予約情報は、レコード識別子1201「001」に対応する録画予約情報d12の一例である。録画予約情報d12は、録画開始時刻1301、録画終了時刻1302、チャネル識別子1303、プログラムナンバー1304、および録画状態1305を含む。録画開始時刻1301はサービスの録画開始時刻、録画終了時刻1302はサービスの録画終了時刻である。チャネル識別子1303は、録画対象として指定されたチャネル識別子である。プログラムナンバー1304は、MPEG2トランスポートストリーム中のPMT(Program Map Table)を指定するためのプログラムナンバーである。録画状態1305は、録画の状態である。この録画の状態については、後述する。
図9は、録画コンテンツ情報の一例を示す図である。なお、図9に示す録画コンテンツ情報は、図7に示したレコード識別子1201「001」に対応する録画コンテンツ情報d121の一例である。録画コンテンツ情報d121は、録画先1401、録画サイズ1402、録画時間1403、録画ビットレート1404、およびメディア識別子1405を含む。メディア識別子1405はサービスとして記録されたMPEG2トランスポートストリームを識別するメディア識別子である。録画先1401は録画先であり、メディア識別子1405が指し示すMPEG2トランスポートストリームを格納する場所である。録画サイズ1402は、メディア識別子1405が指し示すMPEG2トランスポートストリームに対応するデータを実際に録画したときのデータサイズである。録画時間1403は、メディア識別子1405が指し示すメディアの実際に録画されている時間長である。録画ビットレート1404は、メディア識別子1405が指し示すMPEG2トランスポートストリームの録画時のビットレートである。
この録画コンテンツ情報d121は、例えば録画開始時に生成される。このとき、メディア識別子1405が指し示すMPEG2トランスポートストリーム(この例ではTS_121に対応するMPEG2トランスポートストリーム)が第2記憶部204に確保した領域(この例ではvolume A)に記憶される。
このとき、録画コンテンツ情報d121は、録画情報管理テーブル1200において、レコード識別子1201「001」に対応する録画コンテンツ情報として管理される。録画サイズ1402や録画時間1403は、録画開始後に随時変更されても良い。
レコード識別子1201「001」の場合、図8で示すように、録画開始時刻が「2007/4/1 15:00」であり、録画終了時刻が「2007/4/1 16:00」であることを鑑みると、録画時間は1時間となるのに対し、図9のTS_121の長さは00:25しかない。これは、MPEG2トランスポートストリームの録画開始後、00:25経過した時点でMPEG2トランスポートストリームの入力が何らかの理由で途切れたことを意味する。
この時、録画は一旦終了され、TS_121の録画もその時点で終了される。その後、サービスの録画終了時刻(図8の例では録画予約情報に示される録画終了時刻1302に示された時刻)に至るまでにMPEG2トランスポートストリームの入力が再開すると、入力が再開したMPEG2トランスポートストリームに別のメディア識別子を割り当てた情報(この例ではTS_122)を含んだ録画コンテンツ情報d122を生成するとともに、MPEG2トランスポートストリームの録画が開始される。
図10は、録画コンテンツ情報d122の一例を示す図である。
録画コンテンツ情報d122は例えば、図10に示すようなものであり、録画情報管理テーブル1200のレコード識別子1201「001」に対応する録画コンテンツ情報として管理される。図10の場合、入力が再開したMPEG2トランスポートストリームに別のメディア識別子「TS_122」が割り当てられ、そのメディア識別子に対応するMPEG2トランスポートストリームが実際に録画された時間長は00:02である。すなわち、一旦録画は再開されたが、00:02経過した時点で、再び、MPEG2トランスポートストリームが何らかの理由で途切れたことを意味する。
その後、サービスの録画終了時刻に至るまでの間にMPEG2トランスポートストリームが再開して、別のメディア識別子「TS_123」が割り当てられた情報を含む録画コンテンツ情報d123が生成され、同様に入力が再開されたMPEG2トランスポートストリームが録画される。
図11は、録画コンテンツ情報d123の一例を示す図である。
録画コンテンツ情報d123は例えば図11に示すようなものであり、録画情報管理テーブル1200のレコード識別子1201「001」に対応する録画コンテンツ情報として管理される。
再生時にはレコード識別子1201「001」を指定することで、レコード識別子1201「001」に対応する録画コンテンツ情報d121、d122、d123のそれぞれに含まれるメディア識別子「TS_121」、「TS_122」、「TS_123」を特定し、特定したメディア識別子に対応するMPEG2トランスポートストリームをそれぞれ録画した順序に従って再生することにより、それらのMPEG2トランスポートストリーがあたかもひとつの番組であるかのように連続して再生される。
また、録画登録部500は、これらの録画状態に合わせた状態遷移を管理し、録画状態遷移を元に、図7の録画予約情報d12にある録画状態1305を更新する。
この録画状態の種別は、図12のような種別が例に挙げられる。
図12は、OCAP DVRで定められている録画状態の種別を示す図である。録画状態は、録画の継続状況によって各種の状態へ遷移する。状態遷移に関しての詳細は、OCAP DVR仕様を参照されたい。本実施の形態では、録画前の状態も状態遷移の種別に含むことから録画登録部500が状態遷移を管理することとしているが、録画制御部501が状態遷移を管理しても良い。また、同様の理由より、録画予約情報の一部に録画状態の情報を含み、録画予約情報を状態遷移に合わせて更新することとしているが、録画コンテンツ情報の一部として管理し、状態遷移に合わせて更新しても良い。
図12において、例えば「COMPLETED」はコンテンツの録画が完了した状態、「DELETED」は録画されたコンテンツが消去された状態、「FAILED」はコンテンツの録画が失敗した状態、「INCOMPLETE」は録画が不完全である状態、「IN_PROGRESS_INCOMPLETE」は分割されたコンテンツの録画を行っている状態、「IN_PROGRESS_INSUFFICIENT_SPACE」は、容量が少ない記録領域に録画を行っている状態、「IN_PROGRESS」は録画が進行中である状態、「IN_PROGRESS_WITH_ERROR」は録画終了時刻以前に録画が中断している状態、「PENDING_NO_CONFLICT」は、録画開始予定時刻よりも所定時間前において、録画に必要なデバイスに競合が発生していない状態、「PENDING_WITH_CONFLICT」は、録画開始予定時刻よりも所定時間前において、録画に必要なデバイスに競合が発生している状態、「CANCELLED」は(予約)録画がキャンセルされた状態、「TEST_RECORDING」はテスト録画である状態を示す。
リレー録画登録部503は、チャンネル識別子と開始時刻および終了時刻などの録画予約情報、リレー録画の予約を依頼した録画装置の端末ID、対応するレコード識別子、ネットワーク上のほかの録画装置と情報の送受信を行うためのリクエストIDを入力として、該当録画時間のデバイス仮設定を行う。また、入力された情報を保存しておく。リレー録画登録部503の動作については、リレー録画マネージャ409の動作説明時に詳細に説明する。
サービスマネージャ408は、2次記憶部204に記録済みのMPEG2トランスポートストリーム中のサービス、あるいはアダプタ208から入力されるMPEG2トランスポートストリーム中のサービスの再生を管理する。またサービスマネージャ408は、放送局側システム100から受信するMPEG2トランスポートストリーム中のサービスの再生を管理する。
以下に、録画済みMPEG2トランスポートストリーム中のサービスの再生を管理する場合の動作について述べる。サービスマネージャ408は、録画済みサービスの再生に利用するデバイスを確保し、録画マネージャ407が作成した図7に示すような録画情報管理テーブル1200、録画予約情報、および録画コンテンツ情報を参照して、指定されたレコード識別子で再生されるべきチャンネル識別子と、指定したレコード識別子と対応付けられた録画コンテンツ情報に含まれる情報(例えば、録画先の情報、一連のメディア識別子など)の取得を行う。
さらに、サービスマネージャ408は、2次記憶部204の録画先に記憶されたMPEG2トランスポートストリームのうち、最初のメディア識別子で特定されるMPEG2トランスポートストリームを特定し、特定したMPEG2トランスポートストリームを2次記憶部204からTSデコーダ212に出力するように、ライブラリ416を通して指示する。その後、JMF402に再生すべきチャンネル識別子を与えると、2次記憶部204から出力されるMPEG2トランスポートストリームに多重された映像と音声の再生を開始する。
更に、サービスマネージャ408は、AM403に再生すべきチャンネル識別子を与えると、同MPEG2トランスポートストリームに多重されたAITに従って、Javaプログラムの実行および終了を開始する。その後、2次記憶部204から出力されるMPEG2トランスポートストリームの終端まで、上述のサービスの再生を継続する。当該メディア識別子で特定されるMPEG2トランスポートストリームの再生が終了すると、次のメディア識別子で特定されるMPEG2トランスポートストリームがあれば、次のメディア識別子で特定されるMPEG2トランスポートストリームの再生を開始する。既にハードウェアの設定や、JMF402などに対する通知は完了しているため、2次記憶部204から読み出すMPEG2トランスポートストリームを変更するだけである。以降、指定されたチャンネル識別子のサービスの録画で記録されたメディア識別子のすべてについてMPEG2トランスポートストリームの再生を終えるまで、これを繰り返す。
一方、以下に、放送局側システム100から受信するMPEG2トランスポートストリーム中のサービスの再生を管理する場合を説明する。この場合、サービスマネージャ408は、放送サービスの再生に利用するデバイスを確保し、ライブラリ416を通しての各ハードウェア構成要素への指示を行い、JMF402に再生すべきチャンネル識別子を与えることで、MPEG2トランスポートストリームに多重された映像と音声の再生を開始する。更に、AM403にも再生すべきチャンネル識別子を与えと、MPEG2トランスポートストリームに多重されたAITに従って、MPEG2トランスポートストリームに多重されたJavaプログラムの実行および終了を開始する。
ネットワーク制御マネージャ411は、ネットワーク104経由で端末(録画送出装置102)外から来るメッセージに対して応答する機能を持つ。
図13は、ネットワーク制御マネージャ411の構成を示す図である。ネットワーク制御マネージャ411は、機器探索処理部600、サービス探索処理部601、メディア供給部602、およびメッセージ送受信部603を含む。
メッセージ送受信部603は、ネットワーク104経由で端末外から来るメッセージを受信して、その内容に応じて、機器探索処理部600、サービス探索処理部601、メディア供給部602、デバイス競合解決マネージャ413、およびリレー録画マネージャ409に処理要求を出す。端末(録画送出装置102)が装備するネットワーク制御部209は、MoCA仕様に準拠して変調された信号を受信して復調し、IPパケット列を取り出す。IPパケットはライブラリ416が持つネットワークプロトコルに渡される。ネットワークプロトコルは、取り出したIPパケット列をTCP/IPプロトコル仕様に準じて展開して、TCPパケットを取り出す。さらにTCPパケットからHTTPプロトコル仕様に準じて展開してHTTPメッセージを取り出す。一方、送信時には逆に、メッセージ送受信部603は、ライブラリを利用してメッセージをHTTP/TCP/IPプロトコルに準じてIPパケット化し、その後ネットワーク制御部209がMoCA仕様に準拠して変調し、送信先の機器宛に送出する。
本実施の形態では、ネットワーク104経由の端末間通信のためにDLNA仕様を用いる。DLNAはDigital Living Network Allianceの略で、家電製品をネットワーク経由で相互接続して制御しあうための共通仕様である。DLNAでは、ネットワーク上の機器の確認や、サービスの取得に、UPnP仕様を用いる。UPnPは、Universal Plug and Playの略で、ネットワーク接続した機器を制御するための共通仕様である。DLNAやUPnPでは、ネットワーク経由でメッセージをやり取りするのにHTTPプロトコルを用いる。そして、HTTPメッセージにDLNAやUPnPで定義するコマンドを規定に従ってパックして送受信し合う。詳細は、DLNA仕様やUPnP仕様を参照されたい。
メッセージ送受信部603は、受信したHTTPメッセージに内包されるコマンドに応じて、機器探索処理部600、サービス探索処理部601、メディア供給部602、デバイス競合解決マネージャ413、およびリレー録画マネージャ409のいずれかにコマンドを転送する。機器探索処理部600、サービス探索処理部601、メディア供給部602、デバイス競合解決マネージャ413、およびリレー録画マネージャ409はメッセージ受信部603から転送されたコマンドを処理して、その結果をメッセージ送受信部603に返す。するとメッセージ送受信部603は、その結果をDLNA仕様及びUPnP仕様の定義に従ってHTTPメッセージにパックし、結果を返すべき機器宛に送信する。ここで、本実施の形態において、メッセージ送受信部603が受信するHTTPメッセージに内包されるコマンドは、1)処理要求種別、2)メッセージ送信元の端末のIDを記載するものを例にして説明を行なう。また、必要に応じてその他の情報を記載しても良い。
処理要求種別は処理要求を特定できる情報であればその形式を問わない。メディア供給部602等、処理を実行するプログラムへのコマンドを転送時には、これらの記載内容を共に引き渡す。ここで、処理要求とは、録画装置上から直接ユーザまたはJavaプログラムによって指示される、或いは、ネットワーク104経由で別の端末から指示される再生、録画やストリーミング送出などデバイスを必要とする処理要求である。メッセージ送受信部603が扱う処理要求はネットワーク104経由で別の端末から指示される処理要求であり、その処理要求には、メディア供給部602などの処理実行プログラムによって実現される処理がある。
さらに、メッセージ送受信部603が、リレー録画マネージャ409とコマンドを送受信することで、リレー録画の実現可能となる。この処理についての詳細はリレー録画マネージャ409の説明時に記載する。
機器探索処理部600は、機器探索コマンドを処理する。機器探索コマンドは例えば、ネットワーク104に接続されている端末装置に関する情報を取得するためのコマンドである。このコマンドを受信した場合、例えば自身の端末の種別を含む情報をHTTPメッセージにパックして、機器探索コマンドをパックしたHTTPメッセージを送信した端末装置へ返送する。例えばメッセージ送受信部603は、受信したHTTPメッセージを展開した結果、含まれるコマンドが機器探索コマンドであると判断した場合は、メッセージ送受信部603はそのコマンドを機器探索処理部600に転送する。そして、機器探索処理部600は自身がどのような機能を有する端末装置かどうかを調べて、その結果を示す返信コマンドを生成して、メッセージ送受信部603に返す。機器探索処理部600は例えば自身が録画機能を有する端末装置かどうかを調べるには、機器探索処理部600が録画機能を有するハードウェア(例えば2次記憶部)を有するかどうかを調べたり、端末装置の中に自身の機能(例えば録画機能など)を示す情報を保持しており、その保持する情報を調べるなどにより実現される。メッセージ送受信部603は、その返信コマンドをDLNA仕様及びUPnP仕様の定義に従ってHTTPメッセージにパックして、コマンドを送ってきた機器に返送する。
サービス探索処理部601は、自身の端末装置が持っている録画サービスを他の端末装置が知るための録画済みサービス取得コマンドを処理する。このコマンドを受信した場合、例えば自身の端末装置の2次記憶部204に録画した録画サービスを含む情報をHTTPメッセージにパックして、録画済みサービス取得コマンドをパックしたHTTPメッセージを送信した端末装置へ返送する。例えばメッセージ送受信部603は、受信したHTTPメッセージを展開した結果、含まれるコマンドが録画済みサービス取得コマンドであると判断した場合は、メッセージ送受信部603はそのコマンドをサービス探索処理部601に転送する。
サービス探索処理部601は、例えば送信元の端末装置がリレー録画を行なうことを目的とする場合、リレー録画マネージャ409(より具体的にはリレー録画コンテンツ管理部702)より、録画済みサービス情報を取得し、取得した録画済みのサービスに関する情報を返信コマンドとしてメッセージ送受信部603に返送する。また、サービス探索処理部601は、送信元の端末装置が自身の端末装置に録画された録画サービスの視聴を目的とする場合、録画マネージャ407より、2次記憶部204に録画された録画済みのサービスを取得し、返信コマンドとしてメッセージ送受信部603に返送する。
録画済みのサービス情報とは、例えば図7に示す録画情報管理テーブル1200に含まれる録画されているサービスのレコード識別子1201と、レコード識別子1201に対応付けられる録画予約情報に含まれるチャンネル識別子、プログラムナンバー、録画開始時刻、および録画終了時刻と、録画時間と、後述する図35に示されるようなリレー録画プレイリストファイル名5101との組である。リレー録画プレイリストについては、後述のリレー録画マネージャの説明時に、詳細に述べる。
リレー録画プレイリストは、存在する場合としない場合があり、存在する場合のみ録画済みのサービス情報の組に含まれる。サービス探索処理部601は、録画装置に記録されているすべての録画済みサービスに関する情報の組を、一覧としてメッセージ送受信部603に返す。すなわち、2つのサービスが記録済みであれば、その両方に関する情報を返信コマンドに含むようにしてメッセージ送受信部603に返す。
なお、ひとつのレコード識別子が示す録画済みサービスが複数の録画コンテンツを含み、複数の録画コンテンツの録画先が同じ場合、またはひとつのレコード識別子が示す録画済みサービスが複数の録画コンテンツを含み、複数の録画コンテンツのうちの少なくとも2つの録画コンテンツに対応する録画コンテンツ情報について、各録画コンテンツ情報に含まれるメディア識別子によって特定されるMPEG2トランスポートストリームの録画先が異なる場合(つまり録画先が異なる端末の2次記憶装置に録画されている場合)、サービス探索処理部601は、そのレコード識別子に対応する録画コンテンツ情報に示されるメディア識別子によって特定される録画コンテンツの長さの合計をメディア長としてメッセージ送受信部603に返す。メッセージ送受信部603はそれらの情報をDLNA仕様及びUPnP仕様の定義に従ってHTTPメッセージにパックして、コマンドを送ってきた端末装置に返送する。
なお、録画送出装置102におけるサービス検索処理部601は、基本的に、リレー録画において継続された録画済みサービスを、問合せ端末へ返すリストに含めない。しかし、録画送出装置102におけるサービス検索処理部601は、リレー録画において継続された録画済みサービスの情報を問合せ端末に返してもよく、その場合は、分割録画情報を追加して返しても良い。
ここではリレー録画用のプレイリストを録画済みサービス情報の一部として提供することとしているが、通常UPnPで利用されるプレイリストとして管理し、プレイリストとして問合せ端末へ提供しても良い。
メディア供給部602は、ネットワーク104に接続する他の端末装置が要求してきた録画済みのサービスに対応するメディア、すなわち録画済みサービスに含まれるMPEG2トランスポートストリームの一部あるいはすべてを2次記憶部204から取得し要求元の機器の送出する機能を持つ。
例えばメッセージ送受信部603は、受信したHTTPメッセージ展開した結果、含まれるコマンドがMPEG2トランスポートストリームの一部あるいはすべてを取得するコマンドであると判断した場合、メッセージ送受信部603はそのコマンドをメディア供給部602に転送する。
例えば、コマンドが、録画済みサービスのレコード識別子「001」と取得したい最初のバイト位置と最後のバイト位置とを示して、録画済みMPEG2トランスポートストリームの当該部分を取得するコマンドであれば、メッセージ送受信部603はそのコマンドをメディア供給部602に転送する。
メディア供給部602は、例えば図7の録画情報管理テーブルを参照し、レコード識別子「001」に対応付けられた録画コンテンツ情報d121〜d123のメディア識別子1405、1502、1602を取得する。メディア識別子1405、1502、1602は、録画されたMPEG2トランスポートストリームのファイルを指し示すものである。例えばメディア供給部602に対応するコマンドが受け付けられたとき、メディア供給部602は、メディア識別子1405、1502、1602によって特定されるMPEG2トランスポートストリームを結合し、1次記憶部205に記憶する。このときレコード識別子に対応付けられた録画コンテンツ情報に示されるメディア識別子が1つしかない場合には結合の処理は当然不要である。メディア供給部602は、結合したMPEG2トランスポートストリームに対応するファイルのうち、コマンドで指定された最初のバイト位置から最後のバイト位置までのTSパケットデータを、ライブラリ416を用いてファイルアクセスして取得し、取得した情報をメッセージ送受信部603に返す。
上述においては、録画済みMPEG2トランスポートストリームの当該部分を取得するコマンドの一例として、録画済みサービスのレコード識別子「001」と取得したい最初のバイト位置と最後のバイト位置を示すものを例に説明をしたが、これに限定される必要はなく、例えば録画済みサービスのレコード識別子と再生時刻とサイズを示すものであっても良い。
例えば録画済みMPEG2トランスポートストリームの当該部分を取得するコマンドに、録画済みサービスのレコード識別子「001」と再生時刻「00:26」と、サイズ「100Mbye」とが示されている場合、そのコマンドは、レコード識別子「001」の再生時刻「00:26」の再生位置から「100Mbyte」に相当するサイズのMPEG2トランスポートストリームの取得を要求するコマンドであることを意味する。
メディア供給部602が上述のコマンドを受け付けると、レコード識別子、録画コンテンツ情報d121、d122、d123を調べ、「00:26」の再生位置は録画コンテンツ情報d122のメディア識別子「TS_122」に対応するMPEG2トランスポートストリームに存在することを特定し、特定した再生位置からコマンドに示されたサイズに相当するTSパケットデータを、ライブラリ416を用いてファイルアクセスして取得し、取得した情報をメッセージ送受信部603に返す。
メッセージ送受信部603は、メディア供給部602が返した情報(MPEG2トランスポートストリームの一部あるいはすべてのバイトデータ)をDLNA仕様及びUPnP仕様の定義に従ってHTTPメッセージにパックして、コマンドを送ってきた端末装置に返送する。メディア供給部602はさらに、他の端末装置からの要求に応じて、録画装置が受信する放送サービス、およびVODサービスを要求元の機器に送出する機能も持つ。
EPG412は、電子番組表(Electric Program Guideの略)であり、録画や再生の対象とする番組をユーザに選択させる機能である。
EPG412は、放送サービスを選択し再生する機能を有する。本機能は一般的によく知られている機能であり、この機能は本発明の本旨との関連が低いため、簡潔に記すに留める。
番組を記録する場合は、EPG412は、放送番組一覧を表示してユーザに録画を希望する番組を選択させる。
図14は、録画を希望する番組を選択させるための画面表示の一例を示す図である。時刻902とチャンネル903と904が格子状に表示され、各時刻で記録可能な各チャンネルの番組を一覧できる。ユーザは録画送出装置102の入力部207に備わっている上下左右カーソルボタン301〜304を用いて画面上のフォーカス905を移動させることができる。更にOKボタン307を押下すると、現在フォーカスが当たっている番組が記録対象として選択される。EPG412は当該番組のチャンネル識別子をライブラリ416から取得して知っており、ユーザによって記録対象番組が選択されると、当該番組のチャンネル識別子、開始時刻、終了時刻を録画マネージャ407の録画登録部500に通知する。
一方、記録済みの番組を再生する場合は、EPG412は、記録済み番組一覧を表示してユーザに希望の番組を選択させる。
図15は、録画済み番組を選択させるための画面表示の一例を示す図である。その時点で2次記憶部204に記憶されている番組が一覧表示される。ユーザは録画送出装置102の入力部207に備わっている上下カーソルボタン301、302を用いて画面上のフォーカス1103を移動させることができる。更にOKボタン307を押下すると、現在フォーカスが当たっている番組が再生対象として選択される。
EPG412は当該番組のレコード識別子を録画マネージャ407から取得して知っており、ユーザによって再生対象番組が選択されると、当該番組のレコード識別子をサービスマネージャ408に通知する。 サービスマネージャ408は、その情報に基づいて、当該番組を2次記憶部204から読み出して再生する。
リレー録画マネージャ409は、リモート予約録画時にリレー録画を実行し、この録画に関わる情報を管理する機能を持つ。よって、受信したHTTPメッセージがリモート予約録画を指示するコマンドであれば、メッセージ送受信部603はそのコマンドをリレー録画マネージャ409に転送する。そして、リレー録画マネージャ409は、録画登録部500へ情報を渡し、録画予約を特定する識別子を取得する。そして、録画予約を特定する識別子をメッセージ送受信部603に返す。その後、メッセージ送受信部603は、リレー録画マネージャ409が返した録画予約を特定する識別子含む情報をDLNA仕様及びUPnP仕様の定義に従ってHTTPメッセージにパックして、コマンドを送ってきた機器に返送する。
図16は、リレー録画マネージャ409の構成の一例を示す図である。
図16のように、リレー録画マネージャ409は、リレー録画可能機器調査部700、録画状態監視部701、リレー録画コンテンツ管理部702、およびリレー録画制御部703を含む。各部の詳細は、図1に示す端末間ネットワーク通信システム105を例に挙げて説明する。
本実施の形態において、録画送出装置102aをリレー録画元の録画装置、録画送出装置102bをリレー録画先の録画装置として、リレー録画マネージャ409の内部構成の説明を行う。
図17は、録画送出装置102a、102bのリレー録画に関連する構成を示す図である。つまり、図17は、録画送出装置102a及び録画送出装置102bのリレー録画に関連するリレー録画マネージャ409の構成及びリレー録画に関連する処理部の一例を示す。録画送出装置102a及び録画送出装置102bはどちらも録画装置のため、同様に図16に示すリレー録画マネージャ409を持つが、図17では、リレー録画を行うにあたり各録画装置で必須となる処理部が示されている。
まず、リレー録画を行うにあたり、リレー録画元の録画送出装置102aとリレー録画先の録画送出装置102bで送受信を行う情報(送受信情報)について説明する。
図18は、送受信情報の種別の一例を示す図である。
図18に示す例では、録画可否問合せ情報2801には「001」、録画可否返信情報2802には「002」、リレー録画予約情報2803には「003」、録画継続問合せ情報2804には「004」、録画状態情報2805には「005」、リレー録画状態情報2806には「006」、コンテンツ検索要求情報2807には「007」、検索結果通知情報2808には「008」がそれぞれ情報IDとして割り当てられている。なお、送受信情報の情報IDは、これに限定される必要はなく、上述の送受信情報を一意に特定できるようなものであれば、どのようなものであっても良い。
また、各情報の一例を図19〜図24及び図25、図26に示す。図19は、録画可否問合せ情報2801の例を示す図である。図20は、録画可否返信情報2802の例を示す図である。図21は、リレー録画予約情報2803の例を示す図である。図22は、録画継続問合せ情報2804の例を示す図である。図23は、録画状態情報2805の例を示す図である。図24は、リレー録画状態情報2806の例を示す図である。図25は、コンテンツ検索要求情報2807の例を示す図である。図26は、検索結果通知情報2808の例を示す図である。図19〜図26の情報は、情報の種別を特定するために、情報IDを保持する。この情報IDは、図18に示す該当ID(001〜008)である。また、図19〜図26の情報は、ネットワーク上でその他の録画装置と情報の送受信を行うためのIDであるリクエストIDも保持する。さらに、送信元端末の端末IDも保持する。ここでは、各情報で、情報ID、リクエストID、送信元端末ID以外に保持する情報について説明する。
図19は、録画可否問合せ情報2801の一例を示す図である。録画可否問合せ情報2801は、例えばリレー録画元の録画送出装置102aがネットワーク上の他の録画装置にリレー録画が可能かを問い合わせるための情報である。録画可否問合せ情報2801は、自身の情報を特定するための情報ID2901(図18から「001」は録画可否問合せ情報2801と理解できる)、リクエストID2902、送信元の端末装置のID2903(この例では送信元の端末装置が録画送出装置102aであり、図1に示すように録画送出装置102aの端末IDは「002」)、録画開始時刻2904、録画終了時刻2905、およびチャネル識別子2906を含む。録画開始時刻2904、録画終了時刻2905、チャネル識別子2906は、受信再生装置101からリモート予約録画するために送られた、録画予約情報である。
リレー録画元の録画送出装置102aは、リレー録画を行うため、録画機能を有する録画装置(この例では録画送出装置102b)へ図19に示す録画可否問合せ情報2801をDLNA仕様及びUPnP仕様の定義に従ってHTTPメッセージにパックして、録画機能を有する録画装置(この例では、録画送出装置102b)へ送る。
リレー録画元の録画送出装置102aからネットワーク経由で図19に示す録画可否問合せ情報2801を受け取ると、録画送出装置102b(より具体的にはリレー録画マネージャ409b)は、リレー録画可能かどうかを判断し、その結果を示す情報である録画可否返信情報2802をメッセージ送受信部603bへ送り、メッセージ送受信部603bは録画可否返信情報2802をDLNA仕様及びUPnP仕様の定義に従ってHTTPメッセージにパックして、リレー録画元の録画送出装置102aへ返送する。
図20は、録画可否返信情報2802の一例を示す図である。録画可否返信情報2802は、録画可否問合せ情報2801を受け取った録画装置が、リレー録画の可否を問合せ元の録画装置へ通知する情報である。
録画可否返信情報2802は、自身の情報を特定するための情報ID3000(図18から「002」は録画可否返信情報2802と理解できる)、リクエストID3001、送信元の端末装置のID3002(この例では送信元の端末装置が録画送出装置102bであり、図1に示すように録画送出装置102aの端末IDは「004」)、およびリレー録画が継続可能かどうかの情報3003(図20に示す例ではリレー録画が可能であることを示す情報)を示す。
リレー録画元の録画送出装置102a(より具体的には例えばリレー録画マネージャ409a)はネットワーク104経由で図20に示すようなリレー録画可能である旨の録画可否返信情報2802を録画送出装置102bから受け取ると、録画送出装置102aは受け付けた予約録画について、自身の端末装置の不具合(電源遮断など)に起因して録画が中断した場合に備えて、リレー録画を行ってもらうために、リレー録画の登録を行うための情報であるリレー録画予約情報2803をメッセージ送受信部603aへ送り、メッセージ送受信部603aはリレー録画予約情報2803をDLNA仕様及びUPnP仕様の定義に従ってHTTPメッセージにパックして、リレー録画先の録画送出装置102bへ返送する。
図21は、リレー録画予約情報2803の一例を示す図である。リレー録画予約情報2803は、自身の情報を特定するための情報ID3100(図18から「003」はリレー録画予約情報2803と理解できる)、リクエストID3102、送信元の端末装置のID3103(この例では送信元の端末装置が録画送出装置102aであり、図1に示すように録画送出装置102aの端末IDは「002」)、録画開始時刻3104、録画終了時刻3105、チャネル識別子3106、およびレコード識別子3107を含む。録画開始時刻3104、録画終了時刻3105、チャネル識別子3106は、録画可否問合せ情報2801で送られたものと同様の情報である。
また、レコード識別子3107は、送信元端末ID3103で特定される録画装置で、録画予約情報に該当するコンテンツに割り当てられたレコード識別子であり、この例では図7に示すレコード管理テーブル1200において、レコード識別子「002」に対応する録画予約情報に従って録画されるコンテンツがリレー録画の対象であることを示している。
リレー録画先の録画送出装置102b(より具体的には例えばリレー録画マネージャ409b)は、リレー録画予約情報2803を受け取ると、リレー録画予約情報2803に含まれる録画開始時刻3104、録画終了時刻3105によって特定される時刻の間は、チャネル識別子3106によって特定されるサービスを録画するために必要なリソース(例えばチューナなど)を確保できるようにして待機する。
このとき、リレー録画先の録画送出装置102b(より具体的には例えばリレー録画マネージャ409b)はリレー録画を依頼した録画装置(この例では録画送出装置102a)にて、録画が継続されているか否かを問い合わせる情報である録画継続問合せ情報2804を生成し、(メッセージ送受信部603bにより)DLNA仕様及びUPnP仕様の定義に従ってHTTPメッセージにパックして、リレー録画を依頼した録画装置(この例では録画送出装置102a)に送る。
図22は、録画継続問合せ情報2804の一例を示す図である。録画継続問合せ情報2804は、リレー録画を依頼した録画装置で録画が継続されているかを確認するための、問合せ情報である。録画継続問合せ情報2804は、自身の情報を特定するための情報ID3200(図18から「004」は録画継続問合せ情報2804と理解できる)、リクエストID3201、送信元の端末装置のID3203(この例では送信元の端末装置が録画送出装置102bであり、図1に示すように録画送出装置102bの端末IDは「004」)、およびレコード識別子3204を含む。
レコード識別子3204は、リレー録画依頼元の録画装置で録画登録された該当コンテンツのレコードIDであり、この例では、図7に示すレコード管理テーブル1200において、レコード識別子「002」に対応する録画予約情報に従って録画するコンテンツの識別子を示す。
リレー録画元の録画送出装置102a(より具体的には例えばリレー録画マネージャ409a)はネットワーク104経由で図22に示すような録画継続問合せ情報2804を受け取ると、現在の録画状態を通知するための情報である録画状態情報2805を生成し、(メッセージ送受信部603aにより)DLNA仕様及びUPnP仕様の定義に従ってHTTPメッセージにパックして、リレー録画を受けた録画装置(この例では録画送出装置102b)に送る。
図23は、録画状態情報2805の一例を示す図である。録画状態情報2805は、録画継続問合せ情報2804を受けた録画装置が、現在の録画状態を通知するための情報である。録画状態情報2805は、自身の情報を特定するための情報ID3300(図18から「005」は録画状態情報2805と理解できる)、リクエストID3301、送信元の端末装置のID3302(この例では送信元の端末装置が録画送出装置102aであり、図1に示すように録画送出装置102aの端末IDは「002」)、および録画状態3303を保持する。図23に示す例では、録画送信装置102aにおける録画が現在行なわれている最中であることを示す情報である「IN_PROGRESS」が含まれていることを示す。録画状態3303は、録画送信装置102aにおける録画の状態に応じて、都度変化する。
なお、上述の例では、録画継続問合せ情報2804をリレー録画元の録画送出装置102aが受けて、録画状態情報2805をリレー録画先の録画送出装置102bへ返す構成を示している。しかし、本発明は、これに限定をされる必要はなく、例えばリレー録画元の録画送出装置102aにおいて、録画が中断されたとき、録画状態情報2805を生成し、リレー録画先の録画送出装置102bへ返すような構成としても構わない。
リレー録画先の録画送出装置102b(より具体的には例えばリレー録画マネージャ409b)は、ネットワーク104経由でリレー録画元の録画送出装置102aから送られる録画状態情報2805に含まれる録画状態3303が、録画送出装置102aにて録画ができないことを示していると、チャネル識別子3106によって特定されるサービスを録画するために必要なリソース(例えばチューナなど)を確保し、本来、録画送出装置102aにて録画すべき処理を継続する(リレー録画する)。
このとき、リレー録画先の録画送出装置102b(より具体的には例えばリレー録画マネージャ409b)は、リレー録画依頼元の録画送出装置102aで録画が中断され、リレー録画先の録画送出装置102bで録画が継続されているときのリレー録画の状態をリレー録画依頼元の録画装置へ通知するための情報であるリレー録画状態情報2806を生成し、(メッセージ送受信部603bにより)DLNA仕様及びUPnP仕様の定義に従ってHTTPメッセージにパックして、リレー録画を依頼した録画装置(この例では録画送出装置102a)に送る。
図24は、リレー録画状態情報2806の一例を示す図である。リレー録画状態情報2806は、自身の情報を特定するための情報ID3500(図18から「006」はリレー録画状態情報2806と理解できる)、リクエストID3501、送信元の端末装置のID3502(この例では送信元の端末装置が録画送出装置102bであり、図1に示すように録画送出装置102bの端末IDは「004」)、リレー元レコード識別子3503(図24に示す例では「002」)、リレー先レコード識別子3504、および録画状態3505を含む。
リレー元レコード識別子3503は、リレー録画依頼元の録画装置で、録画登録されたコンテンツを示すレコード識別子である。リレー先レコード識別子3504は、リレー録画依頼先の録画装置で、録画を継続するために、録画登録されたコンテンツを表すレコード識別子であり、図24に示す例では、録画送出装置102bにて保持される録画情報管理テーブルにおいて、レコード識別子「001」に対応する録画コンテンツ情報に示されたコンテンツがリレー録画先の録画コンテンツであることを示す。
録画状態3505は、リレー先レコード識別子3504で特定されるコンテンツの録画状態を表すものであり、図24に示す例ではレコード識別子「001」にて特定されるリレー録画先の録画コンテンツ(MPEG2トランスポートストリーム)が現在録画の処理を行なっている最中であることを示す。録画状態3505は、録画の状態にあわせ、都度変化する。
なお、本実施の形態において、リレー録画先の録画送出装置102b(より具体的には例えばリレー録画マネージャ409b)は、ネットワーク104経由でリレー録画元の録画送出装置102aから送られる録画状態情報2805に含まれる録画状態が、録画送出装置102aにて録画ができないことを示していると、リレー録画を行う。さらに、例えばリレー録画元の録画送出装置102aが電源遮断されたときを想定して、本実施の形態におけるリレー録画先の録画送出装置102bは、例えば録画継続問合せ情報2804を送信したときから一定時間が経過しても録画状態情報2805を受け取らなければ、リレー録画元の録画送出装置102aが電源遮断により録画を継続できなくなったと判断し、リレー録画を行う。
録画の動作を中断したリレー録画元の録画送出装置102aは、リレー録画されたコンテンツが存在するかどうかを問い合わせる情報であるコンテンツ検索要求情報2807を生成し、(メッセージ送受信部603aにより)DLNA仕様及びUPnP仕様の定義に従ってHTTPメッセージにパックして、リレー録画を受け付けた録画装置(この例では録画送出装置102b)に送る。
図25は、コンテンツ検索要求情報2807の一例を示す図である。コンテンツ検索要求情報2807は、リレー録画がされているコンテンツがあった場合、そのコンテンツに対応してリレー録画されたコンテンツが存在するかを問い合わせるための情報である。コンテンツ検索要求情報2807は、自身の情報を特定するための情報ID4900(図18から「007」はコンテンツ検索要求情報2807と理解できる)、リクエストID4901、送信元の端末装置のID4902(この例では送信元の端末装置が録画送出装置102aであり、図1に示すように録画送出装置102aの端末IDは「002」)、レコード識別子4903、および問合せ先端末ID4904を含む。レコード識別子4903は、リレー録画されているか確認したい録画コンテンツを表すレコード識別子であり、この例では、録画送出装置102aが保持する図7に示すレコード管理テーブル1200において「002」である。問合せ先端末ID4904は、リレー録画コンテンツ検索の問合せを受け付ける録画装置の端末IDであり、この例では、録画送出装置102bの端末ID「004」である。
コンテンツ検索要求情報2807を受け取った録画送出装置102bは、自身の端末にコンテンツ検索要求情報2807に含まれるレコード識別子4903に関連するリレー録画したコンテンツがあるのかどうかを検索し、検索結果を示す情報である検索結果通知情報2808を生成し、(メッセージ送受信部603bにより)DLNA仕様及びUPnP仕様の定義に従ってHTTPメッセージにパックして、リレー録画を依頼した録画装置(この例では録画送出装置102a)に送る。
図26は、検索結果通知情報2808の一例を示す図である。検索結果通知情報2808は、自身の情報を特定するための情報ID5000(図18から「008」は検索結果通知情報2808と理解できる)、リクエストID5001、送信元の端末装置のID5002(この例では送信元の端末装置が録画送出装置102bであり、図1に示すように録画送出装置102bの端末IDは「004」)、コンテンツ有無情報5003、レコード識別子5004、録画開始時刻5005、録画終了時刻5006、および録画時間5007を含む。
コンテンツ有無情報5003は、リレー録画を行ったコンテンツが存在するかどうかを表す情報であり、この例では、コンテンツ検索要求情報2807に含まれるレコード識別子4903に関連してリレー録画した録画コンテンツがある旨を示している。また、コンテンツ有無情報5003が、リレー録画したコンテンツがないことを示す場合、レコード識別子5004、録画開始時刻5005、録画終了時刻5006、および録画時間5007に対応する情報は保持されない(または、対応する情報がないことを示す情報が保持される)。レコード識別子5004は、リレー録画した録画コンテンツに関する録画コンテンツ情報に対応付けられたレコード識別子であり、このレコード識別子は例えば録画送出装置102bが保持する録画情報管理テーブルに保持されている。
図27は、録画送出装置102bが保持する録画情報管理テーブルの一例を示す図である。録画送出装置102bが保持する録画情報管理テーブル1200bは、図7に示す録画情報管理テーブル1200と同様、レコード識別子1201bと、そのレコード識別子1201bに対応付けられた録画予約情報d21および録画コンテンツ情報d211とを含む。
図28は、録画送出装置102bが保持する録画予約情報d21の一例を示す図である。
録画予約情報d21は、図8に示す録画予約情報d12と同様、録画開始時刻2301、録画終了時刻2302、チャネル識別子2303、プログラムナンバー2304、および録画状態2305を含む。
図29は、録画送出装置102bが保持する録画コンテンツ情報d211の一例を示す図である。
録画コンテンツ情報d211は、図9〜図11に示す録画コンテンツ情報d121〜d123と同様、録画先、録画サイズ、録画時間2401、録画ビットレート、およびメディア識別子2402を含む。なお、この録画コンテンツ情報d211には、分割録画情報dd21が関連付けられている。
つまり、図26に示す検索結果通知情報2808に含まれるレコード識別子5004は、録画送出装置102bが保持する録画管理テーブル1200b(図27参照)において、レコード識別子1201b「001」と対応付けた録画コンテンツ情報d211のメディア識別子2402(図29参照)によって特定されるMPEG2トランスポートストリームが、リレー録画した録画コンテンツであることを示す。
また、図26に示す検索結果通知情報2808において、録画開始時刻5005および録画終了時刻5006はそれぞれ、リレー録画を開始した時刻、およびリレー録画を終了した時刻を示す。録画時間5007はリレー録画を行なった時間間隔を示す。
上述の例では、リレー録画マネージャ409bはリレー録画が完了すると、リレー先のレコード識別子によって特定される録画コンテンツ情報を(メッセージ送受信部603bにより)DLNA仕様及びUPnP仕様の定義に従ってHTTPメッセージにパックして、リレー録画を依頼した録画装置(この例では録画送出装置102a)に送る。
次に、リレー録画元となる録画送出装置102aのリレー録画マネージャ409aの機能について説明する。ここでは説明のため、図7の録画情報管理テーブル1200の、レコード識別子「002」に対応するコンテンツが、リレー録画されるコンテンツとする。
図30は、録画情報管理テーブル1200のレコード識別子「002」に対応付けられた録画予約情報d13の一例を示す図である。
録画予約情報d13は、録画開始時刻1700、録画終了時刻1701、チャネル識別子1702、プログラムナンバー1703、録画状態1704、およびリレー録画依頼端末ID1705を含む。
図31は、録画情報管理テーブル1200のレコード識別子「002」に対応付けられた録画コンテンツ情報d131の一例を示す図である。
録画コンテンツ情報d131は、録画先、録画サイズ、録画時間1801、録画ビットレート、およびメディア識別子1802を含む。なお、この録画コンテンツ情報d131には、分割録画情報dd13が関連付けられている。
リレー録画制御部703aは、リレー録画が可能となるよう各部への情報送受信、各情報の判断を行う機能を持つ。リレー録画制御部703aは、メッセージ送受信部603よりチャンネル識別子、録画開始時刻、録画終了時刻を含む録画予約情報を受け取り、録画予約であった場合は、録画登録部500へ情報を通知し、対応するレコード識別子を受け取る。
次に、リレー録画制御部703aは、リレー録画が可能な機器を検索するため、リレー録画可能機器調査部700aへ、リクエストID及び録画予約情報を渡し、メッセージ送受信部603よりネットワーク上の録画装置へ送信する。その後、リレー録画可能機器調査部700aから録画可否情報を受け取った場合は、その情報を元に、録画が中断した場合に継続して録画を実行させる録画装置を選択する。ここでの装置の選択は、始めに返信があった端末を選択しても良いし、図20の録画可否返信情報2802に記憶領域の残容量などの追加情報を含め、この追加情報を元に選択しても良い。追加情報を元に選択する場合は、複数の端末の録画可否返信情報2802を判断できるように、一定の待ち時間を持っても良い。
リレー録画制御部703aは録画を継続させる録画装置を選択したら、リクエストID、該当録画装置の端末ID、対応するレコード識別子をリレー録画可能機器調査部700a及び録画状態監視部701aへ渡す。また、図30に示すように、リレー録画依頼端末ID1705(この例では録画送出装置102bにリレー録画を依頼するため、リレー録画依頼端末ID1705として「004」を保持する)を録画予約情報d13に関連付けて保存しておく。
リレー録画可能機器調査部700aは、録画送出装置102aにおいて、録画が中断した場合、ネットワーク104上に存在する録画送出装置で継続した録画(リレー録画)が可能となるよう、機器を検索するためのメッセージの生成・解読、及びリレー録画予約メッセージの生成を行う機能を持つ。リレー録画可能機器調査部700aはリレー録画制御部703aより録画予約情報を受け取ると、録画可否問合せ情報2801を生成し、メッセージ送受信部603aへ渡し、ネットワーク104上に存在する端末へ送信する。その後、メッセージ送受信部603aを介して録画可否返信情報2802を受け取った場合、リレー録画可能機器調査部700aは録画可否返信情報2802をリレー録画制御部703aに渡す。また、これ以外に、返信を送ってくる録画装置の保持する記憶領域の残容量などが追加されている場合は、その情報もリレー録画制御部703aへ渡し、録画を継続させる録画装置の選択時の参考とする。
さらに、リレー録画可能機器調査部700aは、リクエストIDおよび端末IDを受け取った場合に、リクエストIDに関連した録画予約情報と、リレー録画制御部703aより受け取った端末IDと、レコード識別子とを元に、リレー録画予約情報2803を生成し、メッセージ送受信部603aへ渡す。
録画状態監視部701aは、自端末で録画予約をしているコンテンツ、及びネットワーク104上でリレー録画されているコンテンツの録画状態を監視し、録画状態情報2805を更新する機能を持つ。録画状態監視部701aは、リレー録画制御部703aよりレコード識別子を受け取った時点から、録画登録部500aに対して該当コンテンツの状態変化通知要求を出す。さらに、録画を継続予定の録画装置が決定後、リレー録画制御部703aよりリクエストID、該当録画装置の端末ID、及び対応するレコード識別子を受け取ったら、それらの情報を保持しておく。
録画状態監視部701aは、録画登録部500aより録画開始の通知を受けた場合、保持しておいたリクエストID、端末ID、およびレコード識別子と共に録画状態を録画状態情報2805としてメッセージ送受信部603aへ渡し、録画送出装置102bへ送信する。
さらに、録画状態監視部701aは、録画登録部500aより通知される録画状態の変化を、対応するリクエストID、端末ID、およびレコード識別子と共に保存しておく。メッセージ送受信部603aより、録画継続問合せ情報2804を受け取った場合、録画状態情報2805をメッセージ送受信部603aへ渡す。この録画状態情報2805は、メッセージ送受信部603aより録画継続問合せ情報2804を受け取る度、メッセージ送受信部603aへ渡しても良いし、一定の時間ごとに録画状態情報2805をメッセージ送受信部603aへ渡して、録画送出装置102bへ送信しても良い。
録画状態監視部701aは、リレー録画状態情報2806を受け取る場合がある。つまり、録画登録部500aより受け取った録画状態変化通知が録画中断を示す状態、すなわちIN_PROGRESS_WITH_ERRORであり、ネットワーク104上の他の録画装置で録画が継続された場合に、録画状態監視部701aは、メッセージ送受信部603aを介してリレー録画状態情報2806を受信する。なお、IN_PROGRESS_INSUFFICIENT_SPACEであった場合にも、録画が中断する前に録画送出装置102bの判断により録画継続されている場合は、録画状態監視部701aは、メッセージ送受信部603aを介してリレー録画状態情報2806を受け取ることもある。
リレー録画制御部703aは、録画状態監視部701aより、ネットワーク104上に存在する録画装置(この例では録画送出装置102b)においてリレー録画が開始されたことを受け取ると、分割録画情報を生成し、図31のように録画コンテンツ情報d131に関連付けて保存しておく。なお、リレー録画制御部703aは、録画送出装置102aの電源が断たれたときにも対応できるように、録画送出装置102bがリレー録画先に決定または仮決定されたときに、その分割録画情報を生成してもよい。
図32は、リレー録画制御部703aによって生成される分割録画情報の一例を示す図である。
分割録画情報dd13は、リレー録画の有無と、前方分割の有無と、後方分割の有無とを示し、リレー録画がある場合には、前方分割または後方分割に関連付けられた分割録画特定情報d13Aを含む。
図33は、分割録画情報dd13に含まれる分割録画特定情報d13Aの一例を示す図である。
分割録画特定情報d13Aは、リレー録画されたコンテンツを有する録画装置の端末ID(例えば、録画送出装置102bの端末ID「004」)を含む。
なお、図33では、分割録画特定情報d13Aは端末IDのみ保持しているが、この情報を元に継続のレコード識別子を保持しておいても良い。また、録画終了時刻以前に録画が中断されている場合、録画登録部500aより通知される録画状態はIN_PROGRESS_WITH_ERRORとなるが、コンテンツの録画状態を録画要求元である受信再生装置101などへ送信する場合は、その録画状態をIN_PROGRESS_INCOMPLETEとしても良い。
録画状態監視部701aは、録画送出装置102b(の録画登録部500b)より受け取った録画状態がIN_PROGRESS_WITH_ERRORであった場合、レコード識別子および録画状態をリレー録画制御部703aへ渡し、リレー録画制御部703aはリレー録画可能機器調査部700aに再度機器検索を要求しても良い。この処理により、リレー録画を依頼した機器に変更があった場合は、図32、図33に示す分割録画情報dd13を更新する。
ここまで、リレー録画制御部703aはメッセージ送受信部603aより録画情報を受け取った場合に、リレー録画を実施する手順について説明してきた。加えて、録画登録部500aからリレー録画制御部703aへ、録画予約情報を渡し、録画登録部500aがJavaのAPIより録画予約を受けた場合にも、同様のリレー録画を実施しても良い。なお、録画登録部500aからリレー録画制御部703aへ録画予約を渡す場合は、レコード識別子1201も録画予約情報と共に渡し、リレー録画制御部703aより録画登録部500aへ再度の録画登録が行われないようにする。
リレー録画コンテンツ管理部702aは、録画済みのコンテンツがリレー録画されている場合に、対応するコンテンツの取得要求を送出し、受信したリレー録画コンテンツを元にリレー録画プレイリストを生成する機能を持つ。リレー録画コンテンツ管理部702aは、メッセージ送受信部603aより録画済みサービス一覧取得要求を受け取った場合に、録画登録部500aより、録画情報管理テーブル1200を取得する。この録画情報管理テーブル1200は、コンテンツ検索要求情報2807を受け取ったときではなく、端末起動時やサーバ機能が有効になったとき、受信再生装置101からコンテンツリスト取得要求があったときなどに取得し、リレー録画コンテンツ管理部702bで保持しておいても良い。録画済みサービスの録画コンテンツ情報に、分割録画情報が含まれていた場合、分割録画情報に含まれる端末IDと、コンテンツのレコード識別子とをメッセージ送受信部603aへ渡し、該当端末IDの端末に、該当コンテンツの継続コンテンツ(リレー録画したコンテンツ)が存在するか探索する要求を出す。その後、リレー録画コンテンツ管理部702aは、メッセージ受信部603aより例えば図26に示す検索結果通知情報2808を受け取った場合、コンテンツ有無情報5003を確認する。コンテンツ有無情報5003が「有」を表す場合、図34のように、リレー録画コンテンツを関連付けたテーブルを生成し、保存する。
図34は、元々予約録画されたコンテンツとリレー録画されたコンテンツを関連付けたリレー録画サービス情報の一例を示す図である。
図34において、リレー録画サービス情報sd13は、プレイリストファイル名4801、トラック番号4802、端末ID4803、レコード識別子4804、プログラムナンバー4805、録画開始時刻4806、録画終了時刻4807、および録画時間4808を含む。
例えば、このリレー録画サービス情報sd13は、トラック番号4802「1」で特定されるコンテンツ(端末ID4803「002」およびレコード識別子「002」で特定されるコンテンツ)に続くコンテンツが、トラック番号4802「2」で特定されるコンテンツ(端末ID4803「004」およびレコード識別子「001」で特定されるコンテンツ)であることを示している。
また、リレー録画コンテンツ管理部702aは、リレー録画プレイリストを生成する。
図35は、リレー録画プレイリストの一例を示す図である。
リレー録画プレイリスト5100は、リレー録画プレイリストファイル名5101と、複数のアドレスからなるプレイリスト5102とからなる。
プレイリスト5102の各アドレスは、端末IDおよびレコード識別子を含む。この例では、アドレスはそれぞれ、図34に示す端末ID「002」のレコード識別子「002」と、端末ID「004」のレコード識別子「001」とを示している。
このアドレスは一例であり、端末および録画コンテンツが特定可能となる情報を含むものとする。また、図35では、リレー録画プレイリストファイル名5101を「002.m3u」としている。これは、レコード識別子「002」に、プレイリストの拡張子として一般的である「m3u」をつけたものである。このファイル名および拡張子も、録画装置および再生装置で共用可能であるものであれば、変更可能である。
リレー録画プレイリスト5100は、リレー録画コンテンツ保存先の録画送出装置102aの端末ID「002」およびレコード識別子「002」と、録画送出装置102bの端末ID「004」およびレコード識別子「001」とを指定している。しかし、録画送出装置102bのアドレスの代わりに、録画送出装置102aのアドレスを記述し、そのアドレスが指す箇所に録画送出装置102bおよびレコード識別子「001」を選択するための情報を記述し、リダイレクトが可能となるようにしても良い。また、ここでは、録画済みサービス一覧取得要求を受け取った場合に、リレー録画プレイリストを生成するものとして述べたが、録画終了時刻や任意の時刻において、リレー録画プレイリストを生成しても良い。
さらに、ここでは、リレー録画実施コンテンツに対してのみ、リレー録画プレイリストを生成するものと述べたが、全てのコンテンツに対してリレー録画プレイリストを生成しても良い。この場合、リレー録画が実施されなかったコンテンツに対するプレイリストには、該当コンテンツのアドレスのみが含まれることとなる。また、リレー録画の場合だけではなく、同一端末内で複数のメディアに分割されて録画されたコンテンツ、例としては図7におけるレコード識別子1201「001」の録画済みコンテンツの場合にも、同様にプレイリストを生成して管理しても良い。
このプレイリスト生成の過程において、該当録画済みサービスをコピー、もしくは移動することで、同一端末の記録領域に存在するメディアとして扱うことも可能となる。
次に、リレー録画先となる録画送出装置102bのリレー録画マネージャ409bの機能について説明する。
リレー録画制御部703bは、リレー録画可能機器調査部700aより録画予約情報、リレー録画依頼元端末ID、依頼元レコード識別子、およびリクエストIDを含むリレー録画予約情報2803を受け取った場合は、この情報をリレー録画登録部503bへ渡す。リレー録画登録部503bは、受け取った情報を元に図36のようなリレー録画予約情報2100を生成し、保持しておく。
リレー録画制御部703bは、録画状態が録画開始を通知する状態であった場合、録画送出装置102aの録画状態情報を監視するための録画継続問合せ情報2804を生成し、メッセージ送受信部603へ渡す。ここで、録画開始を通知する状態とは、図12におけるIN_PROGRESSおよびIN_PROGRESS_INSUFFICIENT_SPACEである。録画状態がIN_PROGRESS_WITH_ERRORであった場合は、録画が開始されていないため、リレー録画登録部503bで保持していたリレー録画予約情報2100を取得し、録画開始時刻を現時刻に変更した録画予約として録画登録部500へ渡す。
さらに、リレー録画登録部503bは、メッセージ送受信部603bを介してリレー録画予約情報2803を受け取った場合は、リレー録画予約情報2100を生成し、リレー録画制御部703bへ渡す。リレー録画可否機器検索部700bが、メッセージ送受信部603bより録画可否問合せ情報2801を受け取った場合は、リクエストIDおよび録画予約情報をリレー録画制御部703bへ渡す。その後、リレー録画可否機器検索部700bは、リレー録画制御部703bを介してリクエストIDおよび録画可否情報を受け取った場合に、録画可否返信情報2802をメッセージ送受信部603bへ渡す。
録画状態監視部701bは、メッセージ送受信部603bを介して録画状態情報を受け取ったら、録画状態情報をリレー録画制御部703bへ渡す。リレー録画制御部703bは、受け取った録画状態を確認し、録画が中断されていた場合は、リレー録画登録部503bで保持していたリレー録画予約情報2803を取得し、録画開始時刻を現時刻に変更した録画予約として録画登録部500bへ渡す。録画登録部500bは、図28に示す録画予約情報d21を生成し、該当レコード識別子をリレー録画制御部703bへ渡す。
また、リレー録画が開始された場合に、録画制御部501bは、図29に示す録画コンテンツ情報d211を生成し、該当レコード識別子に関連付けて、録画情報管理テーブル1200bを更新する。また、録画状態監視部701bは、リレー録画制御部703bより、レコード識別子を受け取り、録画状態の監視を開始する。
さらに、録画状態監視部701bは、リレー録画状態情報2806をメッセージ送受信部603bへ渡し、リレー録画状態情報2806をリレー録画元の録画装置(録画送出装置102a)へ通知する。このリレー録画状態情報2806は、一定時間ごとに送信されても良いし、リレー録画元の録画装置から要求が発生した場合に送信されても良い。
リレー録画の結果はリレー録画情報(録画情報管理テーブル1200b)に書き込まれる。図28は、録画情報管理テーブル1200bに含まれる録画予約情報d21の一例を示す図であり、この例では、リレー録画制御部703bは、受け取った録画状態を確認し、録画が「15:30」に中断されたと判断し、リレー録画登録部503bで保持していたリレー録画予約情報2100を取得し、リレー録画予約情報2100の録画開始時刻(「15:00」)を現時刻(「15:30」)に変更した録画予約として録画登録部500bへ渡した場合の例である。図28の例は、「15:30」にリレー録画を開始し、「16:00」にリレー録画が終了したことを示し、リレー録画したコンテンツのチャネル識別子が「1」、プログラムナンバーが「101」、録画状態が「COMPLETE」(リレー録画完了)であることを示している。
図29は、予約録画情報に従ってリレー録画したコンテンツに対応する録画コンテンツ情報d211の一例を示す図である。録画コンテンツ情報d211には、録画先として「volumeB」、録画サイズとして「400Mbyte」、録画時間として「00:30」、録画ビットレートとして「high」、メディア識別子として「TS_211」が含まれ、分割録画情報dd21が関連付けられている。
図37は、分割録画情報dd21の一例を示す図である。分割録画情報dd21は、リレー録画が「あり」であること、自身のコンテンツがあるコンテンツに後続することを示す前方分割有無が「あり」であること、これに該当するコンテンツを示す分割録画特定情報d21B、および、自身のコンテンツに後続するコンテンツの有無を示す後方分割有無が「なし」であることを示す。
図38は、分割録画特定情報d21Bの一例を示す図である。分割録画特定情報d21Bは、端末ID「002」およびレコード識別子「002」を示す。
図29、図37および図38より、図27に示すレコード識別子「001」に対応する録画コンテンツが、端末ID「002」におけるレコード識別子「002」のコンテンツのリレー録画したコンテンツであることを特定することが可能となる。
リレー録画制御部703bは、録画終了時刻に達した場合、もしくはメッセージ送受信部603bより受け取った録画状態情報の録画状態が録画完了を示すものであった場合、リレー録画登録部503bへ、リレー録画予約情報2803の破棄を要求する。
リレー録画コンテンツ管理部702bは、メッセージ送受信部603bより、コンテンツ検索要求情報2807を受け取る。リレー録画コンテンツ管理部702bは、録画登録部500bより、自端末に保存されている録画情報管理テーブルを取得する。この録画情報管理テーブルは、コンテンツ検索要求情報2807を受け取ったときではなく、端末起動時やサーバ機能が有効になったとき、受信再生装置101からコンテンツリスト取得要求があったときなどに取得し、リレー録画コンテンツ管理部702bで保持しておいても良い。
リレー録画コンテンツ管理部702bは、例えば図27に示す録画情報管理テーブル1200bより、問合せのあった録画装置の端末ID、リレー元のレコード識別子を含む分割録画情報dd21を持つ録画済みサービスを検索する。例えば端末IDが「002」、リレー元のコンテンツのレコード識別子が「002」の分割録画情報に該当するコンテンツの問い合わせがあった場合、リレー録画コンテンツ管理部702bは、該当するコンテンツが見つかった場合、図26に示すような検索結果通知情報2808を、メッセージ送受信部603bへ渡す。該当するコンテンツが見つからなかった場合、リクエストID、端末ID、および該当コンテンツが見つからなかった旨を示す情報をメッセージ送受信部603bへ渡す。メッセージ送受信部703bは受け取った情報を、問い合わせを発行した端末へ送出する。
図26は、リレー録画コンテンツがあったときの検索結果通知情報2808の一例を示す図である。図26の検索結果通知情報2808において、情報ID5000は、図18における「検索結果通知情報」の種別に対応する「008」を示し、送信元端末ID5002は、自身の端末IDである「004」を示し、レコード識別子5004は、図27に示す「001」を示し、録画開始時刻5005は、図28に示すリレー録画を開始した時刻である「2007/4/2 15:30」を示し、録画終了時刻は、図28に示すリレー録画を終了した時刻である「2007/4/2 16:00」を示し、録画時間は、図28に示す「00:30」を示す。
なお、この例において、録画時間がリレー録画を開始した時刻とリレー録画を終了した時刻の間の時間間隔に等しいものを例に説明をしているが、装置内において、リレー録画を開始するための行うべき処理に起因して、実際の録画開始が遅れ、録画時間がリレー録画を開始した時刻とリレー録画を終了した時刻の間の時間間隔に等しくならない場合もある。
次に、本実施の形態における受信再生装置101の構成および機能について詳細に述べる。
図39は、本実施の形態の受信再生装置101の一般的なハードウェア構成を表すブロック図である。すなわち、図39により示される構成は、図1における端末装置101の具体的な内部構成である。受信再生装置101は、第1チューナ210、TSデコーダ212、AVデコーダ202、CPU203、1次記憶部205、2次記憶部204、ROM206、入力部207、アダプタ208、およびネットワーク制御部209を含む。
図39において、図2と同一の番号を付した構成要素については、録画送出装置102の構成要素と同じ機能を持つため再度の説明を省略する。すなわち、第1チューナ210、TSデコーダ212、AVデコーダ202、音声出力201、映像出力200、CPU203、1次記憶部205、2次記憶部204、ROM206、入力部207、アダプタ208、およびネットワーク制御部209は、録画送出装置102の同名の構成要素と同じ機能を持つ。ただし、受信再生装置101では放送サービスの録画機能はないため、2次記憶部204はMPEG2トランスポートストリームを記録しない。また、本構成例では、受信再生装置101は、一般的な構成として、1つのチューナを備えているが、2つ以上のチューナを備えても良い。
以降、本発明の再生端末の主要機能である、Javaプログラムによるサービスの再生制御及びネットワーク104経由で入力されたサービスの再生制御に関して説明する。
本発明の受信再生装置101におけるサービスの再生とは、放送波に多重されたサービスを受信し、サービスを構成する映像、音声、およびJavaプログラムを、Javaプログラムの同期情報に基づいて再生及び実行することである。ネットワーク104経由で入力されたサービスの再生とは、放送波を受信してサービスを再生する代わりに、ネットワーク104経由でサービスを入力してサービスを構成する映像、音声、およびJavaプログラムを、Javaプログラムの同期情報に基づいて再生及び実行することである。放送波を受信してサービス再生する場合と、同サービスをネットワーク104経由で入力して再生する場合とは、ほぼ同等のサービス再生結果が得られることが要求される。
図40は、Javaプログラムによるサービスの再生制御及びネットワーク経由で入力されたサービスの再生制御に必要とされるプログラムの構成図である。このプログラムは、ROM206に記憶されているソフトウェアである。
プログラム400は、サブプログラムであるOS414、EPG412、JavaVM417、および組み込みミドルウェア401を含む。
このうち、JavaVM417については、本実施の形態の録画装置に備わっている同名の構成要素と同じ機能を有するため、再度の説明を省略する。
EPG412は、後述のサービス列挙部5705の機能を使用して放送サービスの一覧を取得する。そして、ディスプレイ上に録画送出装置102のEPGと同様に、放送サービスの一覧を表示し、そのひとつをユーザに選択させる。選択された放送サービスをサービス切り替え部5704の機能を利用して再生する。
OS414は、本実施の形態の録画送出装置102に備わっている同名の構成要素と同じである。OS414の内部構成要素に関して、カーネル415は本実施の形態の録画送出装置102に備わっている同名の構成要素と同じである。OS414の内部構成要素であるライブラリ416は、本実施の形態の録画送出装置102に備わっている同名の構成要素と同じであるが、受信再生装置101が再生装置であるため、録画のために記憶部へMPEG2トランスポートストリームを読み書きする動作は行わない。
組み込みミドルウェア401は、本発明の録画送出装置102における同名の構成要素とほぼ同じ機能を持つ。組み込みミドルウェア401の内部は、JMF402、AM403、Tuner404、DSMCC405、SF406、ネットワーク対応サービスマネージャ5600、およびネットワーク制御マネージャ5601を含む。
このうちJMF402、AM403、Tuner404、DSMCC405、およびSF406は、本発明の録画送出装置102における同名の構成要素と同じ機能を有するため、再度の説明を省略する。
ネットワーク制御マネージャ5600は、ネットワーク104経由で受信再生装置101自身以外の端末にメッセージを送信して返信を受信する機能を持つ。本実施の形態で主となる用途は、録画送出装置102にメッセージを送信して、必要なデータや録画済みMPEG2トランスポートストリームを受信することである。
図41は、ネットワーク制御マネージャ5601およびネットワーク対応サービスマネージャ5600の構成を示す図である。ネットワーク制御マネージャ5601は、機器探索部5700、サービス探索部5701、メディア取得部5703、メッセージ送受信部5702、および録画予約部5708を含む。
メッセージ送受信部5702は、機器探索部5700、サービス探索部5701、メディア取得部5703、および録画予約部5708が生成するメッセージを受け付けて、そのメッセージを外部の端末に向けて送信する。本実施の形態では、メッセージはHTTPプロトコルを用いて送受信されるため、メッセージ送受信部5702は、ライブラリ416を利用してHTTP/TCP/IPプロトコルに準じてメッセージをIPパケット化し、その後、受信再生装置101のネットワーク制御部209のハードウェアを利用してMoCA変調して相手機器宛に送出する。 逆に、ネットワーク制御部209がIPパケット化されたメッセージを受信した場合は、ライブラリ416がIPパケットをHTTP/TCP/IPプロトコルに準じて展開し、内包されているコマンドをメッセージ送受信部5702に渡す。そして、メッセージ送受信部5702は、そのメッセージの内容に応じて、機器探索部5700、サービス探索部5701、メディア取得部5703、および録画予約部5708のいずれかにメッセージを渡す。
なお、本実施の形態では、録画送出装置102と同様に、受信再生装置101においても、ネットワーク104経由の端末間通信のためにDLNA仕様を用いる。DLNAに関しては録画送出装置102の説明で既に述べたため、再度の説明は省略する。
機器探索部5700は、後述するサービス列挙部5705からの機器探索の要求を入力として受けると、メッセージ送受信部5702に機器探索コマンドを渡して、宛先機器へのメッセージ送信を依頼する。通常、宛先はネットワーク104上の全機器である。ネットワーク104を経由して機器探索コマンドをパックしたメッセージを受け取った機器は、自身が録画装置であれば、コマンドを発信した受信再生装置101宛に自身が録画装置であることを示す返信メッセージを送り返す。受信再生装置101のメッセージ送受信部5702は、メッセージを展開してコマンドを取り出し、自身が録画装置であることを示すコマンドであれば、その返信コマンドを機器探索部5702に渡す。この返信メッセージを参照することで、機器探索部5700は、ネットワーク上に存在する録画装置を知ることができる。機器探索部5700は、録画装置を特定するためのIDとして、すべての録画装置のIPアドレスをサービス列挙部5705に返す。なお、録画装置のIPアドレスは、ライブラリ416から返信メッセージの送出元として得ることができる。
サービス探索部5701は、後述するサービス列挙部5705から録画装置を特定するID(ここではIPアドレス)、もしくは録画装置を特定するIDとレコード識別子を入力として受け取ると、録画済みサービス取得コマンドを生成してそのIPアドレスと共にメッセージ送受信部5702に渡す。するとメッセージ送受信部5702は、当該録画装置へ録画済みサービス取得コマンドをパックしたメッセージを送信する。メッセージを受信した録画装置では前述した処理が行われ、返信として図7、図30、図31の録画情報管理テーブル1200で説明した、録画されているサービスのレコード識別子1201、チャンネル識別子1702、録画開始時刻1700、録画終了時刻1701、録画時間1801、及びリレー録画プレイリスト5100の組が、録画済みサービス情報である返信メッセージとして受信再生装置101に返される。このメッセージを受けた受信再生装置101のネットワーク制御部209は、ライブラリ416にメッセージを渡す。ライブラリ416は、HTTP/TCP/IPプロトコルに従ってメッセージを展開し、録画済みサービス情報の組をメッセージ送受信部5702に渡す。メッセージ送受信部5702は、受け取った情報が録画済みサービス情報の組であれば、それをサービス探索部5701に返す。サービス探索部5701は、この情報を、サービス列挙部5705が指定した録画送出装置102上にある録画済みのサービスの組として、サービス列挙部5705に返す。
メディア取得部5703は、後述するサービス切り替え部5704から、受信再生装置101上で再生したい録画済みサービスを特定するための、録画装置のIDすなわちIPアドレスと、レコード識別子1201と、取得したい最初のバイト位置および最後のバイト位置とを入力として受ける。メディア取得部5703は、ライブラリ416を利用して、これらの情報をHTTPメッセージにマッピングし、HTTP/TCP/IPプロトコルに従ってIPパケット化して、ネットワーク制御部209を利用して当該録画装置に送出する。メッセージを受信した録画装置では前述した処理が行われ、返信として、レコード識別子が指し示す録画済みMPEG2トランスポートストリームのうち指定された最初のバイト位置から最後のバイト位置までのバイナリデータをHTTP/TCP/IPプロトコルに従って返信する。このメッセージを受けた受信再生装置101のネットワーク制御部209は、ライブラリ416にメッセージを渡す。ライブラリ416は、HTTP/TCP/IPプロトコルに従ってメッセージを展開し、暗号化MPEG2トランスポートストリームのバイナリデータをメッセージ送受信部5702に渡す。メッセージ送受信部5702は、受け取った情報が暗号化MPEG2トランスポートストリームのバイナリデータであれば、それをメディア取得部5703に返す。
録画予約部5708は、ネットワーク104上に録画装置が存在した場合に、Javaアプリケーションに対して、録画予約を行うためのAPIを提供する。後述の録画指示Javaプログラム5603は、このAPIを利用することにより、ネットワーク104上の録画装置に対してリモート録画予約を行うことが可能となる。録画予約部5708は、まず機器探索部5700に機器探索の要求を出す。すると、前述のように機器探索部5700は、ネットワーク104上に存在するすべての録画装置のIPアドレスを返す。その後、録画予約部5708は、録画指示Javaプログラム5603へ録画装置の一覧を提示する。録画指示Javaプログラム5603は、提示された録画装置のうち1つを選択し、さらに、録画を行いたい番組を選択することで、録画予約部5708へチャンネル識別子、録画開始時刻、および録画終了時刻の組である録画予約情報を渡す。録画予約部5708は、メッセージ送受信部5702に選択された録画装置のIPアドレスと、録画予約コマンドを渡して、宛先機器へのメッセージ送信(録画予約情報の送信)を依頼する。
ネットワーク対応サービスマネージャ5600は、アダプタ208から入力されるMPEG2トランスポートストリーム中のサービスの再生や、ネットワーク104経由でネットワーク制御部209から入力される暗号化MPEG2トランスポートストリーム中のサービスの再生を管理する。ネットワーク対応サービスマネージャ5600の内部構成を図41に示す。ネットワーク対応サービスマネージャ5600は、サービス列挙部5705、サービス切り替え部5704、およびPlayList解析部5706を含む。サービス列挙部5705とサービス切り替え部5704の動作は、放送波中のMPEG2トランスポートストリーム中のサービスを再生する場合と、ネットワーク104経由で入力される暗号化MPEG2トランスポートストリーム中のサービスを再生する場合で、異なる動作を切り替えて実行するため、以下にそれぞれの場合の動作を詳細に述べる。
まず、チューナ210から入力される放送波中のMPEG2トランスポートストリーム中のサービスを再生する場合を説明する。これは、放送サービスを再生することに相当する。
サービス列挙部5705は、Javaアプリケーションに対して、再生可能なサービスの一覧を提供するAPIを備える。再生指示Javaプログラム5602は、このAPIを利用することにより、再生可能な放送サービスの一覧を取得可能となる。放送サービスを識別するためのIDとしては、既に述べたチャンネル識別子を用いることにする。サービス列挙部5705が提供する放送サービスの情報には、チャネル識別子を含む。サービス列挙部5705は、特定の条件が入力されると、条件に一致した放送サービスの配列を返す。例えば、何も条件を指定しない場合は、視聴可能なすべての放送サービスの一覧が返る。サービス列挙部5705は、ライブラリ416を利用して視聴可能な放送サービスのチャンネル識別子を調べ、それぞれに対応するチャンネル識別子を設定したサービスの一覧を返す。
サービス切り替え部5704は、指定された放送サービスへ切り替えてサービスの再生を開始する。サービス切り替え部5704はJavaプログラムに対して再生するサービスを指定するAPIを提供する。再生指示Javaプログラム5602は、そのAPIを利用して、再生したい放送サービスを指定する。サービス切り替え部5704は、指定されたサービスの情報より、当該サービスのチャンネル識別子を知ることができる。サービス切り替え部5704は、図39のアダプタ208から出力されるMPEG2トランスポートストリームをTSデコーダ212に出力するように、ライブラリ416を通して指示する。またライブラリ416を通して各ハードウェア構成要素の出力先を設定する。その後、JMF402に再生すべきチャンネル識別子を与える。すると、JMF402は、MPEG2トランスポートストリームに多重された映像と音声の再生を開始する。更に、AM403にも再生すべきチャンネル識別子を与える。すると、AM403は、MPEG2トランスポートストリームに多重されたJavaプログラムの実行および終了を開始する。
一方、以下に、ネットワーク104経由でネットワーク制御部209に入力された録画済みMPEG2トランスポートストリーム中のサービスの再生を管理する場合の動作について述べる。
サービス列挙部5705は、ネットワーク104上に存在する録画装置に録画されている再生可能な録画済みサービスの一覧を提供するAPIを備える。再生指示Javaプログラムは、このAPIを利用することにより、再生可能な録画済みサービスの一覧を取得可能となる。録画済みサービスを識別するためのIDとしては、既に述べたレコード識別子1201を用いることにする。サービス列挙部5705が提供する録画済みサービスには、レコード識別子を含む。また、サービス列挙部5705は、リレー録画された録画済みコンテンツの管理を行うリレー録画管理部5707を備える。
前述したように、サービス列挙部5705は、特定の条件を入力されると、条件に一致した録画済みサービスの一覧を返す。録画済みサービスを取得するための条件を指定すると、サービス列挙部5705は、まず機器探索部5700に機器探索の要求を出す。すると、前述のように機器探索部5700は、ネットワーク104上に存在するすべての録画装置のIPアドレスを返す。その後、サービス列挙部5705は、返ってきた録画装置のIPアドレスをサービス探索部5701に入力する。すると、特定の録画装置より、サービス探索部5701は、録画されているサービスのレコード識別子1201、チャンネル識別子、プログラムナンバー、録画開始時刻、録画終了時刻、録画時間、およびリレー録画プレイリストファイル名の組として、録画済みサービス情報を取得し、サービス列挙部5705に返す。ただし、リレー録画プレイリストは、存在しない場合もある。サービス列挙部5705は、上記動作をすべての録画装置に関して繰り返し、最終的に、すべての録画装置上のすべての録画済みサービス情報を得る。
次に、サービス列挙部5705は、今得た録画済みサービスに関して、それぞれのレコード識別子、チャンネル識別子、プログラムナンバー、録画開始時刻、録画終了時刻、録画時間、およびリレー録画プレイリストと、この録画済みサービスが記録されている録画装置のIPアドレスとを設定する。サービス列挙部5705は、このようにして生成された録画済サービスの一覧を返す。
サービス切り替え部5704は、指定された録画済みサービスを受信再生装置101上で再生する。また、そのためのAPIを備える。再生指示Javaプログラムは、このAPIを利用することにより、録画済みサービスの再生制御を行うことが可能となる。録画済みサービスの指定は、サービス列挙部5705によって知ることができる。前述のように、サービス切り替え部5704は、再生するサービスを指定するAPIを提供する。サービス切り替え部5704は、指定された録画済サービス情報が保持するレコード識別子を知ることができる。また、この録画済みサービスが記録されている録画装置のIPアドレス値も知ることができる。
サービス切り替え部5704は、上述した録画済みサービスのレコード識別子、および録画装置のIPアドレスを用いて、ネットワーク104経由で入力される録画済みMPEG2トランスポートストリームを再生する。その詳細な流れを以下に述べる。
サービス切り替え部5704は、まず、再生対象の録画済みサービスのレコード識別子で示される録画済みMPEG2トランスポートストリームの再生を開始したい最初のバイト位置と再生を終了したい最後のバイト位置とを決める。通常、録画済みサービスの先頭から再生するため、再生開始のバイト位置は0である。再生を終了したい最後のバイト位置は、受信再生装置101が備える一時バッファサイズに応じて決まる。また、後述の再生指示Javaプログラムが提供したAPIを利用して再生開始位置を指定することもある。ネットワーク104経由のメディア再生は、メディアデータをネットワーク104経由で取得した後、一時バッファにメディアデータを一時的に蓄え、それをデコーダに入力し、バッファに空きが生じればその分、次のメディアデータを取得して一時バッファに蓄えるということを繰り返す。よって、一時バッファのサイズに応じて、再生を終了したい最後のバイト位置を決定する。
次に、サービス切り替え部5704は、ライブラリ416を通して各ハードウェア構成要素の出力先を設定し、JMF402に再生すべきチャンネル識別子を与える。すると、JMF402は、既に述べた動作によって、TSデコーダ212から出力されるMPEG2トランスポートストリームに多重された映像と音声の再生を開始できるようになる。
次に、サービス切り替え部5704は、再生要求を受けた録画済みサービスがリレー録画されたものであった場合、再生開始前にリレー録画管理部5707へ録画装置のIPアドレス、レコード識別子、および開始バイト位置を渡す。リレー録画管理部5707は、録画済みサービス、及び該当録画サービスでの開始位置を特定し、それらの情報をサービス切り替え部5704へ返す。リレー録画管理部5707の機能については、後述する。
次に、サービス切り替え部5704は、先ほど決定したレコード識別子、再生を開始したい最初のバイト位置、および再生を終了したい最後のバイト位置の3つの値を、メディア取得部5703に与える。前述したように、JMF402設定は完了しているため、録画済みサービスの映像、音声、およびJavaプログラムは順次再生される。
その後、サービス切り替え部5704は、メディア取得部5703が録画済みMPEG2トランスポートストリームを途切れることなく再生できるように、メディア取得部5703に次の録画済みMPEG2トランスポートストリームの取得を依頼する。すなわち、前回に依頼した再生を終了したい最後のバイト位置の次の値を、再生を開始したい最初のバイト位置とし、一時バッファサイズに応じて再生を終了したい最後のバイト位置を決める。そして、レコード識別子、再生を開始したい最初のバイト位置、および再生を終了したい最後のバイト位置の3つの値の組を、メディア取得部5703に与える。これを繰り返すことで、録画済みMPEG2トランスポートストリームの再生を最後まで行うことができる。
リレー録画管理部5707は、選択された録画済みサービスがリレー録画されていた場合に、各録画済みサービスを連続した録画済みサービスとして再生するための機能を持つ。前述のように、サービス切り替え部5704で指定された録画済みサービスを示すものであれば、サービス切り替え部5704は、録画装置のIPアドレス、レコード識別子、およびリレー録画プレイリストファイル名5101、再生開始バイト位置、および再生終了バイト位置をリレー録画管理部5707へ渡す。リレー録画管理部5707は、PlayList解析部5706へ、録画装置のIPアドレス、レコード識別子、およびリレー録画プレイリストファイル名5101を受け渡す。PlayList解析部5706は、後述の処理手順より、プレイリストに存在するすべての録画済みサービス情報を取得し、その一覧をレコード識別子と共にリレー録画管理部5707へ返す。リレー録画管理部5707は、サービス切り替え部5704より受け取った、開始バイト位置が対応する録画済みサービスを特定し、該当録画済みサービスの開始位置から、再生開始バイト位置、および再生終了バイト位置を算出する。その後、リレー録画管理部5707は、再生を開始する録画済みサービスの保存されている録画装置のIPアドレス、録画済みサービスのレコード識別子、および算出したバイト位置をサービス切り替え部5704へ返す。
なお、リレー録画管理部5707での処理は、再生開始前に実施するものと説明したが、サービス切り替え部5704が選択された録画済みサービスを特定するレコード識別子を再生開始後に行っても良い。
PlayList解析部5706は、受け取ったプレイリストにある録画済みサービスの情報を取得する機能を持つ。本実施の形態では、サービス切り替え部5704から、リレー録画プレイリストファイル名5101を受け取った場合の処理について述べる。PlayList解析部5706は、サービス切り替え部5704より、録画装置のIPアドレス、録画済みサービスのレコード識別子、およびリレー録画プレイリストファイル名5101を受け取る。PlayList解析部5706は、メッセージ送受信部5702へ、該当の録画装置のIPアドレス、録画済サービスのレコード識別子、およびリレー録画プレイリストファイル名5101を渡す。メッセージ送受信部5702は、該当の録画装置へ問合せを行う。メッセージ送受信部5702は、リレー録画プレイリスト5100のメッセージを受信した場合、PlayList解析部5706へ該当メッセージを渡す。PlayList解析部5706は、プレイリスト5102に列挙されたアドレスより、録画装置のIPアドレスとレコード識別子を特定する。PlayList解析部5706は、特定した録画装置のIPアドレスとレコード識別子を、サービス検索部5701へ渡す。サービス検索部5701は、上述の手順より録画済みサービス情報を取得し、PlayList解析部5706へ返す。PlayList解析部5706は、プレイリストに記述された全てのアドレスに対して上記録画済みサービス情報取得処理を実施し、サービス切り替え部5704へ返す。
ここでは、リレー録画プレイリストから録画装置及び録画済みサービスを特定し、各録画装置から録画済みサービス情報を取得することとして記述したが、リレー録画プレイリストを保持する録画装置が、すでに各録画装置から録画済みサービス情報を取得し、図34のように保持していた場合、プレイリストに各録画装置のID及びそれらの情報を記載しておき、受信再生装置101はプレイリストから各録画装置のID及び録画済みサービス情報を取得可能となるようにしても良い。
また、本実施の形態のPlayList解析部5706は、録画済サービスの情報を取得したが、対象となるプレイリストに記述される情報は、VideoやAudio、Imageなどのファイルでもよく、VideoやAudio、Imageなどのファイルが記述されている場合は、それらに対応した情報を取得する。
再生指示Javaプログラム5602、及び録画指示プログラム5603は、放送局側システム100から、1次記憶205上にダウンロードされるJava言語で記述されたソフトウェアである。通常、放送局側システム100からダウンロードできるJavaプログラムは、ユーザに便利な機能を多数搭載するプログラムであるが、図40では、本実施の形態を説明するために最低限のプログラムのみとしている。
再生指示Javaプログラム5602は、本実施の形態の録画装置上に記録されている録画済サービスの一覧を取得し、それらの詳細情報表示や、サービスの再生を指示する。再生指示Javaプログラムは、例えば図42に示すディスプレイの画面5800に、録画済みサービスを一覧表示して、ユーザに選択させる。
図42は、録画済みサービスの一覧の例を示す図である。
ユーザは、図3のような入力装置を用いて、カーソルを移動し、期待する処理を選択する。例えば、カーソルを「info」ボタン5802に合わせて選択すると、図43のような録画済みサービス情報表示モード画面に遷移する。
図43は、録画済みサービス情報表示モード画面の例を示す図である。
リレー録画実施コンテンツを選択した場合、録画時間5904は全メディアの録画時間の合計となる。また、録画済みサービスのタイトルにカーソルを合わせ、OKボタン307を押下すると、再生を開始する。このとき、再生指示Javaプログラム5602は、サービス切り替え部5704の提供するAPIに、先ほどユーザが選択した録画済サービスを指定して呼び出す。すると、サービス切り替え部5704は、既に述べた動作で、ネットワーク経由で指定した録画済みサービスの再生を開始する。
録画指示Javaプログラム5603は、本実施の形態の録画送出装置102に対してリモート録画予約を指示する。録画指示Javaプログラム5603は、前述の録画予約部5708より録画装置の一覧を取得し、ユーザに選択させる。ユーザは、図3のような入力装置を用いて、カーソルを移動し、録画送出装置102を選択する。その後、図14のような録画選択モード画面に遷移する。さらに、ユーザは、録画したい番組を選択する。このとき、録画Javaプログラムは、録画予約部5708が提供するAPIに、先ほどユーザが選択した録画装置の情報、及び録画番組の予約情報を指定する。すると、録画予約部5708は、すでに述べた動作で、ネットワーク経由で録画装置にリモート録画を予約する。
本実施の形態では、リレー録画プレイリスト5100は、録画済みサービスの再生要求が発生した場合に、自動的に関連付けされて再生されることとして記述したが、録画済みサービスとの関連付けをしなくても良い。その場合、録画済みサービス一覧画面とは別に、PlayList画面が存在し、PlayListを選択することで、上記と同様にリレー録画済みサービスの再生が可能となる。その場合、録画済みサービス一覧画面で、リレー録画済みサービスを選択されたときは、リレー録画を実施した録画装置で別録画装置のコンテンツ内容をバッファリングしながら、再生を行っていく方法を取っても良い。例えば、録画送出装置102aでレコード識別子「002」のコンテンツを選択された場合、録画送出装置102aが、録画送出装置102bのコンテンツをバッファリングしながら再生するという方法である。
以上、本実施の形態の受信再生装置101のソフトウェア構成および機能について述べた。
2.装置の動作
次に、以上の様に構成されるリレー録画の動作を説明する。
図44〜図51、および図55は、リレー録画のリレー録画処理における処理手順例を示すフローチャートである。
本実施の形態において、リレー録画の要求を行う装置は録画送出装置102a、リレー録画の要求を受けてリレー録画を実行する装置は録画送出装置102bであるとする。
図44、図47、図48、および図50は録画送出装置102aの処理手順を、図45、図46、図49、図51、および図55は録画送出装置102bの処理手順を示す。
まず、リレー録画の予約において行なわれる録画送出装置102aおよび録画送出装置102bで連携して行われる処理をそれぞれ図44および図45を用いて説明をする。
図44は、録画送出装置102aが、リレー録画可能な録画装置を検索するときの動作を示すフローチャートである。
図45は、録画送出装置102bが、録画送出装置102aからの問合せに対して返信するときの動作を示すフローチャートである。
図44において、例えば再生受信装置101上で録画送出装置102aに対し、リモート録画予約が指定された場合、録画送出装置102aへ録画要求が送られ、録画送出装置102aのリレー録画制御部703aはリモート録画予約のメッセージを受信する(S3600)。
録画送出装置102aのリレー録画制御部703aは、録画登録部500に対し録画予約の登録を行う(S3601)。
次に、ネットワーク104上に存在する録画送出装置102の中で該当時間(リモート録画予約のメッセージに示される録画開始時刻〜録画終了時刻までの時間帯)に録画可能な装置の調査を行うため、リレー録画可能機器調査部700aは、録画可否問合せ情報2801をメッセージ送受信部603aへ渡し、ネットワーク104へ送信する(S3602)。
このとき、ネットワーク104に接続する録画送出装置102bのメッセージ送受信部603bは、例えばメッセージ受信があるのかどうかを常時チェックしている。例えば、メッセージ受信部603bは録画可否問合せ情報2801を受け取ったかどうかを判断する(S4100)。受け取ったと判断された場合、リレー録画可能機器調査部700bは録画可否問合せ情報2801をメッセージ送受信部603bより受け取り、リレー録画制御部703bへ通知する。
リレー録画制御部703bは、録画可否問合せ情報2801を元に、その録画可否問合せ情報2801に示される録画が可能かを確認する(S4101)。録画可能であった場合(S4101のYES)、リレー録画可能機器調査部700bは、メッセージ送受信部603bを介して録画が可能である旨を記した録画可否返信情報2802を録画送出装置102aへ送信する(S4102)。録画不可能であった場合(S4101のNO)、リレー録画可能機器調査部700bは、メッセージ送受信部603bを介して録画が不可能である旨を記した録画可否返信情報2802を録画送出装置102aへ送信する(S4103)。
一方、S3602において録画可否問合せ情報2801を送信した録画送出装置102aは、他の録画送出装置からの録画可否返信情報2802の受信を待機しており、録画送出装置102aのリレー録画可能機器調査部700aは、メッセージ送受信部603aを介して録画可否返信情報2802を受信すると、リレー録画制御部703aへ通知する。リレー録画制御部703aは録画可否返信情報2802を確認し、いずれの録画可否返信情報2802にも録画が不可能な旨の情報が記されている結果、リレー録画可能な録画送出装置がネットワーク104上に存在しないと判断した場合(S3603のN)、そのまま録画開始時刻まで待機する(S3605)。
リレー録画可能な録画送出装置がネットワーク104上に少なくとも1つ存在すると判断した場合(S3603のYES)、リレー録画可能機器調査部700aは、該当する装置へリレー録画予約情報2803を送信する(S3604)。ここでは、録画送出装置102bが選択されたとして説明する。
なお、録画可能を示す複数の録画可否返信情報2802を受信した場合、リレー録画制御部703aは、複数の録画送出装置の中から1台の装置を選択しリレー録画予約情報2803を送信する(S3604)。選択方法は例えば、最初に受信したリレー録画可否返信情報2802に対応する録画送出装置を選択する方法でも良いし、録画可否返信情報2802にHDDの残容量を追加し、その情報に基づいて、残容量が最も多い録画送出装置を選択する方法でも良い。S3604において、リレー録画予約情報2803を送信した後、録画送出装置102aは録画開始時刻まで待機する(S3605)。
次に、図46を用いて継続機器として選択された録画送出装置102bが、録画送出装置102aからリレー録画予約情報2803を受信したときの動作を説明する。
図46は、録画送出装置102bがリレー録画予約情報2803を受信したときの動作を示すフローチャートである。
図47は、録画送出装置102aが予約録画を行うときの動作を示すフローチャートである。
録画送出装置102bのメッセージ送受信部603bは、例えばメッセージ受信があるのかどうかを常時チェックしている。例えばメッセージ送受信部603bはリレー録画予約情報2803を受け取ったかどうかを判断し(S4200)、受け取ったと判断した場合(S4200のYES)、そのリレー録画予約情報2803をリレー録画可能機器調査部700bへ送る。このとき、リレー録画制御部703bは、受け取ったリレー録画予約情報2803をリレー録画登録部503bへ通知する。リレー録画登録部503bは、録画送出装置102bにおいて、録画に必要なデバイスが録画開始時刻に使用できるようにするための予約を実施する(S4201)。その後、録画送出装置102bは録画開始時刻まで待機する(S4202)。
予約録画開始時刻になると、録画登録部500aは録画開始時刻に録画が開始されたかどうかを判断し(S3700)、録画状態監視部701aへ通知する。録画状態監視部701aは録画開始の通知を受けた場合(S3700のYES)、保持しておいたリクエストID、端末ID、およびレコード識別子と共に録画を開始したことを示す録画開始通知を含む録画状態情報2805をメッセージ送受信部603aへ渡し、対応する録画送出装置(この例では録画送出装置102b)へ送出する(S3701)。
一方、録画状態監視部701aは、録画開始時刻に録画登録部500aから録画が開始されなかったことが通知された場合(S3700のNO)、録画状態監視部701aがメッセージ受信部603aを介して録画送出装置102bへ録画要求情報を送信する(S3702)。
一方、録画送出装置102bでは、録画状態監視部702bは、録画送出装置102aからの録画開始通知を受信した場合(S4203のYES)、録画送出装置102aの録画状態の監視を開始する(S4205)。録画開始通知を受信しなかった場合(S4203のNO)、リレー録画制御部703bは、録画送出装置102aにおいて予約録画が行われなかったと判断し、リレー録画登録部503bより録画予約情報を取得し、録画開始時刻を現時刻に修正した後、録画登録部500bへ予約を登録し、録画(リレー録画)を開始する(S4204)。このとき、予約しておいたデバイス設定情報を取得し、録画登録部500bへ渡しても良い。もしくは、予約していた情報であることを録画登録部500bへ通知し、録画登録部500bでデバイス設定情報を取得しても良い。
またS4203において、予約録画が行なわれたかどうかの判断の一例として録画開始通知の受信の有無で判断をしたが、これに限定をされる必要はなく、例えば録画送出装置102aにおいて、録画が成功したかどうかの通知に基づいて判断するようにしても良い。
この場合、録画成功の通知を受ければ、S4205へ進み、録画失敗の通知を受ければS4204へ進むように構成すれば良い。
また、録画送出装置102aで録画が開始されなかった場合、録画送出装置102aは録画可能装置検索を再度実施し、録画要求を出す装置を変更しても良い。その場合、録画送出装置102bにもその旨を通知してもよい。
上述における録画状態の監視とは、録画送出装置102aにおいて予約録画が継続されているかどうか問い合わせるための録画継続問合せ情報2804を録画送出装置102bから録画送出装置102aへ送信することにより行われる。
図48は、録画送出装置102b(リレー録画の要求を受けた録画送出装置)から録画継続問合せ情報2804を受信した場合の録画送出装置102a(リレー録画の要求を送出した録画送出装置)の動作を示すフローチャートである。
録画送出装置102aのメッセージ送受信部603aは、例えばメッセージ受信があるのかどうかを常時チェックしている。例えばメッセージ受信部603aは録画継続問合せ情報2804を受け取ったかどうかを判断し(S3900)、受け取ったと判断した場合、録画状態監視部701aへ通知し、メッセージ受信部603aを介して録画状態情報2805を録画送出装置102bへ送出する。
図49は、録画送出装置102bが録画送出装置102aからの録画状態情報2805に応じて録画を開始する動作を示すフローチャートである。
録画送出装置102bの録画状態監視部701bは、一定時間ごとにメッセージ受信部603bを介して録画送出装置102aへ録画継続問合せ情報2804を送信する(S4300)。
録画送出装置102bの録画状態監視部701bは、メッセージ受信部603bを介して録画送出装置102aから一定時間通信(録画状態情報2805)がなかった場合(S4301のNO)、リレー録画登録部503bより録画予約情報を取得し、録画開始時刻を現時刻に修正した後、録画登録部500bへ予約を登録する(S4303)。これにより、録画送出装置102aが電源断となった場合にも対応可能となる。つまり、録画送出装置102bがリレー録画を開始することができる。
録画状態情報2805を受信した場合(S4301のYES)、リレー録画制御部703bは、受信した録画状態情報2805を確認し、録画が継続されている状態かどうかを判断する(S4302)。録画が継続されていた場合(S4302のYES)、一定時間後にS4300の処理を再度行う(録画状態を再度確認する)。録画が継続されていなかった場合(S4302のNO)、通信がなかった場合と同様に、リレー録画制御部703bは、録画予約情報を取得し、録画開始時刻を現時刻に修正した後、録画登録部500bへ予約登録を行い、録画を開始する(S4304)。ここで、受信した録画状態情報2805に含まれる録画状態がIN_PROGRESS_INSUFFICIENT_SPACE(容量が不足している記録領域に録画を行っている)であった場合、録画送出装置102aでは録画が継続されているが、記憶領域が足りない可能性がある。したがって、この場合にも、リレー録画制御部703bは、録画が中断することを見越して、録画登録部500bに録画予約情報を登録しても良い。
これらの過程において録画送出装置102bが録画を開始した場合、録画送出装置102aと通信が可能であれば、録画送出装置102bの録画状態監視部701bは、メッセージ受信部603bを介して録画送出装置102aへ録画を開始したことを通知する(S4305)。
図50は、録画送出装置102aにおいて録画されるコンテンツが分割されるときの録画送出装置102aの動作を示すフローチャートである。
録画送出装置102aのリレー録画制御部703aは、分割録画情報が存在した場合、もしくは、前述のリレー録画開始通知を受けた場合に(S4000のYES)、分割録画情報を更新する(S4001)。さらに、メッセージ受信部603aを介してリレー録画状態情報2806を受信した場合(S4002Y)、録画状態を更新する(S4003)。
図51は、録画送出装置102bにおいて録画を開始することなく録画終了時刻に達した場合、もしくは録画送出装置102aより受信した録画状態情報2805の録画状態が録画完了となったときの、録画送出装置102bの動作を示すフローチャートである。
録画送出装置102bは、録画を開始することなく録画終了時刻に達したかどうか、もしくは録画送出装置102aより受信した録画状態情報2805の録画状態が録画完了であるかどうかを調べ、上述のいずれかであった場合(S4400のYES)、リレー録画制御部703bはリレー録画登録部503bに対して、リレー録画予約情報2803の破棄を依頼する(S4401)。
本実施の形態の録画送出装置102では、録画中断後に、再度録画が可能となった場合は、自律的に録画を再開する機能を持つ場合がある。録画送出装置102aが電源断から復帰した場合に他の機器でリレー録画が実施されていた場合は、録画送出装置102aで録画を再開しても良いし、録画送出装置102bでのみ録画を継続するのでもよい。また、それらが選択可能なAPIを録画送出装置102が提供し、ダウンロードしたJavaプログラムが選択可能としても良い。
次に、録画送出装置102のコンテンツ表示に関する処理手順例を図52および図53のフローチャートに示す。
図52は、録画送出装置102aの処理手順を示すフローチャートである。図53は、録画送出装置102bの処理手順を示すフローチャートである。
まず、例えば予約録画の要求を行った受信再生装置101は、コンテンツリストの要求を録画送出装置102aへ行う。録画送出装置102aのリレー録画コンテンツ管理部702aは、メッセージ受信部603aより、コンテンツリスト送信要求メッセージを受け取った場合(S5200)、自端末内のコンテンツ一覧を、録画登録部500aより取得する(S5201)。取得した録画済みサービス一覧の中で、リレー録画が実施されたコンテンツであった場合、すなわち、録画コンテンツ情報に分割録画情報を含む場合(S5202のYES)、分割録画情報に含まれる分割録画特定情報(より具体的には分割録画特定情報に含まれる端末ID)を元に、該当する端末へコンテンツ検索要求を出す(S5203)。
ここでは、図33に示す分割録画特定情報より、端末ID「004」を持つ録画送出装置102bへ要求を出したものとする。
録画装置102bのリレー録画コンテンツ管理部702bは、コンテンツの検索要求を受信した場合(S5300)、自端末内の録画済みサービス一覧を、録画登録部500bより取得する(S5301)。録画済みサービス一覧の中で、録画コンテンツ情報に分割録画情報を含むコンテンツがあった場合(S5302のYES)、問合せを受けた端末の端末IDおよびリレー元のレコード識別子がその分割録画情報に含まれているか否かを確認する(S5303)。その端末IDおよびレコード識別子が含まれている場合(S5303のYES)、自身の端末ID及び該当コンテンツの情報を、要求元の録画送出装置102aへ送付する(S5304)。
録画送出装置102aは、録画送出装置102bより、リレー録画したコンテンツが発見されたことを表す通知があった場合(S5204のYES)、分割録画情報を含んでいた録画済みサービスと、発見された継続録画済みサービスを元にリレー録画プレイリストを作成する(S5205)。
これらの処理を、録画済みサービス一覧に列挙されている全てのコンテンツに対して行う。
図54は、リレー録画済みサービスの再生に関する処理手順例を示すフローチャートである。このフローチャートは、受信再生装置101における再生時の手順を示す。
再生指示Javaプログラム5602より、録画済みサービス一覧取得要求があった場合、サービス列挙部5705は、サービス探索部5701より録画済みサービス情報の一覧を取得し、再生指示Javaプログラム5602へ返す(S6000)。次に、再生指示Javaプログラム5602より、サービス切り替え部5704へ録画済みサービスの再生要求があった場合(S6001)、該当録画済みサービス情報にリレー録画プレイリストファイル名が存在するかを確認する(S6002)。リレー録画プレイリストファイル名が存在しなかった場合(S6002のNO)、選択された録画済みサービスの指定された再生開始バイト位置から再生を開始する(S6005)。リレー録画プレイリストが存在した場合(S6002Y)、サービス切り替え部5704は、録画装置のIPアドレス、レコード識別子、リレー録画プレイリストファイル名、再生開始バイト位置、および再生終了バイト位置をリレー録画管理部5707へ渡す。リレー録画管理部5707は、それらの情報を元に、録画済みサービス情報を取得する(S6003)。次に、リレー録画管理部5707は、再生開始バイト位置および再生終了バイト位置より、再生を行う録画済みサービスを特定し、特定した録画済みサービスに対応した再生開始バイト位置および再生終了バイト位置を算出する(S6004)。リレー録画管理部5707は、特定した録画済みサービスを保持する録画装置のIPアドレス、特定した録画済みサービスを表すレコード識別子、算出した再生開始位置、再生終了位置をサービス切り替え部5704へ返す。サービス切り替え部5704は、これらの情報よりメディア取得部5703へメディア取得要求を出し、再生を開始する(S6005)。
図55は、録画送出装置102bがリレー録画状態情報2806を送信する動作を示すフローチャートである。
録画送出装置102bは、リレー録画を実施しているか否かを判別し(S4600)、実施していると判別したときには(S4600のYES)、さらに、録画送出装置102aと通信可能か否かを判別する(S4601)。ここで、録画送出装置102bは、通信可能と判別すると(S4601のYES)、リレー録画状態情報2806を録画送出装置102aに送信する(S4602)。
ここまで、図1に示すように、受信再生装置1台と録画送出装置2台でのリレー録画、コンテンツリスト出力、および再生に関して説明してきた。本実施の形態では、最低限の構成として図1に示す構成で説明を行ったが、録画送出装置は3台以上であっても良いし、受信再生装置101がリレー録画機能を備えても良い。その場合、録画送出装置102aは、ネットワーク104上に存在する全ての録画装置に、録画開始通知や録画状態情報2805を送っても良い。また、録画送出装置102aでの録画が中断した場合や、録画送出装置102aの通信が途絶えた場合は、録画送出装置102bとネットワーク104上のそれ以外の録画装置で調停を行い、録画継続先を変更しても良い。変更する場合は、録画送出装置102bで変更先を登録しておき、録画送出装置102aより探索可能としても良い。また、録画送出装置102aは、リレー録画継続コンテンツを検索するときに、ネットワーク104上の全ての録画装置に対して検索要求を出しても良い。
そのほか、録画送出装置102bは、録画送出装置102aが行ったのと同様に、ネットワーク104上のその他の録画装置に対して、さらにリレー録画を実施しても良い。
ここで、本実施の形態における録画システムの全体的な動きをシーケンス図を用いて説明する。
なお、以下の説明では、録画システムは、上記録画送出装置102に相当するn台(nは2以上の整数)の装置を備え、n台の録画送出装置のそれぞれを、録画送出装置1、録画送出装置2、…、録画送出装置nとして区別する。また、録画送出装置1は、リレー録画を他の録画送出装置に依頼するリレー録画元である上記録画送出装置102aに相当し、録画送出装置2〜nはそれぞれ、録画送出装置1からのリレー録画の依頼を受け付けるリレー録画先となり得る録画送出装置であって、上記録画送出装置102bに相当する。
また、録画送出装置1は、録画予約情報を登録するとき、つまり録画予約するときに、上述の録画送出装置102aのように、リレー録画先となる録画送出装置を正式に決定することなく、仮に決定し、その後、録画開始時刻の直前、例えば録画開始時刻のX分前(例えばX=1〜3)に、リレー録画先となる録画送出装置を正式に決定する。さらに、リレー録画先として正式に決定された録画送出装置は、さらに、その装置自体がリレー録画元としての役割を担い、他の録画送出装置をリレー録画先として決定してもよい。つまり、リレー録画が世代管理されてもよい。
図56は、リレー録画先となる録画送出装置を仮決定するときの録画システムの動きを示すシーケンス図である。
まず、受信再生装置101は、リモート録画予約を受け付け(S100)、録画予約情報を送信することによって録画予約を録画送出装置1に要求する(S101)。この要求を受け付けた録画送出装置1は、その録画予約情報を登録することによって録画予約を行う(S102)。さらに、録画送出装置1は、リレー録画元となり、ネットワーク104に接続されている録画送出装置2〜nに録画可否問合せ情報2801を送信する(S103)。
録画可否問合せ情報2801を受信した録画送出装置2〜nはそれぞれ、録画可否問合せ情報2801に示される録画開始時刻、録画終了時刻およびチャネル識別子などに基づいて、録画が可能か否かを判別し、その判別結果を示す録画可否返信情報2802を録画送出装置1に送信する(S104)。
録画送出装置1は、録画送出装置2〜nのそれぞれから録画可否返信情報2802を受信すると、それらの録画可否返信情報2802に基づいて、録画送出装置2〜nの中から、リレー録画先となる録画送出装置(第1リレー録画送出装置)を仮決定する(S105)。例えば、録画可否返信情報2802に、その情報を送信した録画送出装置の記録媒体の残容量が示されていれば、録画送出装置1は、録画可能を示す録画可否返信情報2802のうち最も多い残容量が示された録画可否返信情報2802を送信した録画送出装置を、第1リレー録画送出装置に仮決定する。具体的には、録画送出装置2から送信された録画可否返信情報2802に、録画可能および残量量「200GB」が示され、録画送出装置3〜(n−1)から送信された録画可否返信情報2802に、録画不可が示され、録画送出装置nから送信された録画可否返信情報2802に、録画可能および残量量「100GB」が示されている。この場合、録画送出装置1は、録画可能を示す録画可否返信情報2802のうち最も多い残容量が示された録画可否返信情報2802を送信した録画送出装置2を、第1リレー録画送出装置に仮決定する。なお、録画送出装置1は、録画可能を示す録画可否返信情報2802を最も早く送信した録画送出装置(例えば、録画送出装置2)を、第1リレー録画送出装置に仮決定してもよい。
次に、録画送出装置1は、リレー録画予約情報2803を第1リレー録画送出装置である録画送出装置2に送信することにより、録画送出装置2に第1リレー録画の仮予約を依頼し(S106)、録画開始時刻のX分前まで待機する(S107)。
一方、第1リレー録画の仮予約の依頼を受け付けた録画送出装置2は、その第1リレー録画に要するリソースを仮に確保しておき(S108)、待機する(S109)。なお、このリソースの仮確保とは、そのリソースの使用に対して、リレー録画予約情報2803に従った録画の優先度を設定することであり、その優先度は低く、優先度の高い処理(例えば、EAS(Emergency Alert System)による緊急情報の受信)が要求されると、そのリソースは優先度の高い処理に利用される。
図57は、リレー録画先となる録画送出装置を正式に決定して録画が開始されるときの録画システムの動きを示すシーケンス図である。
リレー録画元の録画送出装置1は、録画開始時刻のX分前に、第1リレー録画送出装置として仮決定された録画送出装置2がこの時点でリレー録画可能か否かを確認するために、録画送出装置2に録画可否問合せ情報2801を再送する(S120)。録画送出装置2は、その録画可否問合せ情報2801を受信すると、リレー録画可能か否かを確認し(S121)、その確認結果を示す録画可否返信情報2802を録画送出装置1に送信する(S122)。例えば、録画送出装置2は、リレー録画可能であることを確認して、録画可能を示す録画可否返信情報2802を録画送出装置1に送信する。これにより、録画送出装置2は、第1リレー録画送出装置として正式に決定され、仮確保しておいたリソースを正式に確保する(S123)。つまり、仮確保のときに、そのリソースの使用に対して設定された、リレー録画予約情報2803に従った録画の優先度を、最も高く設定し直す。
さらに、録画送出装置2は、第1リレー録画送出装置として正式に決定されると、リレー録画元としての役割を担い、録画送出装置1と同様に、録画可否問合せ情報2801を録画送出装置3〜nに送信する(S124)。録画可否問合せ情報2801を受信した録画送出装置3〜nはそれぞれ、録画可否問合せ情報2801に示される録画開始時刻、録画終了時刻およびチャネル識別子などに基づいて、録画が可能か否かを判別し、その判別結果を示す録画可否返信情報2802を録画送出装置2に送信する(S125)。録画送出装置2は、録画送出装置3〜nのそれぞれから録画可否返信情報2802を受信すると、上述と同様、それらの録画可否返信情報2802に基づいて、録画送出装置3〜nの中から、例えば録画送出装置nを、次のリレー録画先となる録画送出装置(第2リレー録画送出装置)として決定する(S126)。つまり、録画送出装置nが第二世代のリレー録画送出装置として決定される。そして、録画送出装置2は、リレー録画予約情報2803を第2リレー録画送出装置である録画送出装置nに送信することにより、録画送出装置nに第2リレー録画の予約を依頼する(S127)。第2リレー録画の予約の依頼を受け付けた録画送出装置nは、その第2リレー録画に要するリソースを確保しておく(S128)。
一方、録画送出装置1は、録画可否問合せ情報2801をS120で再送してからX分経過した録画開始時刻に録画を開始する(S129)。
このように、リレー録画が世代管理されるため、第1リレー録画送出装置が録画不可能になった場合でも、第2リレー録画送出装置によって録画が行われ、より確実にコンテンツ(サービス)を録画することができる。なお、上述の例では、リレー録画先となる録画送出装置を第二世代まで決定したが、さらに、第三世代以降の録画送出装置を決定してもよい。また、その世代が増すごとに、その世代のリレー録画先となる録画送出装置におけるリレー録画の優先度を低くしておいてもよい。
図58は、録画送出装置2が第1リレー録画送出装置として正式に決定されない場合の録画システムの動作を示すシーケンス図である。
リレー録画元の録画送出装置1は、録画開始時刻のX分前に、上述と同様、録画送出装置2に録画可否問合せ情報2801を再送する(S140)。録画送出装置2は、その録画可否問合せ情報2801を受信すると、リレー録画可能か否かを確認し(S141)、その確認結果を示す録画可否返信情報2802を録画送出装置1に送信する(S142)。例えば、録画送出装置2は、リレー録画不可であることを確認して、録画不可を示す録画可否返信情報2802を録画送出装置1に送信する。
録画送出装置1は、録画送出装置2から録画不可を示す録画可否返信情報2802を受信すると、再び、録画可否問合せ情報2801を録画送出装置3〜nに送信する(S143)。録画可否問合せ情報2801を受信した録画送出装置3〜nはそれぞれ、録画可否問合せ情報2801に示される録画開始時刻、録画終了時刻およびチャネル識別子などに基づいて、録画が可能か否かを判別し、その判別結果を示す録画可否返信情報2802を録画送出装置1に送信する(S144)。録画送出装置1は、録画送出装置3〜nのそれぞれから録画可否返信情報2802を受信すると、上述と同様、それらの録画可否返信情報2802に基づいて、録画送出装置3〜nの中から、例えば録画送出装置nを第1リレー録画送出装置として決定する(S145)。つまり、第1リレー録画送出装置が選択し直される。そして、録画送出装置1は、リレー録画予約情報2803を第1リレー録画送出装置である録画送出装置nに送信することにより、録画送出装置nに第1リレー録画の予約を依頼する(S146)。第1リレー録画の予約の依頼を受け付けた録画送出装置nは、その第1リレー録画に要するリソースを確保しておく(S147)。
一方、録画送出装置1は、録画可否問合せ情報2801をS140で再送してからX分経過した録画開始時刻に録画を開始する(S148)。
このように、録画送出装置1は、録画予約時に他の録画送出装置を第1リレー録画送出装置として仮決定しておき、録画開始時刻の直前に、その録画送出装置で録画可能か否かを確認し、不可能であれば、さらに他の録画送出装置を第1リレー録画送出装置として選択し直す。したがって、より確実にコンテンツ(サービス)のリレー録画を行うことができる。
なお、録画送出装置1は、図56に示すように録画予約時に第1リレー録画送出装置の仮決定を行わずに、録画開始時刻のX分前に第1リレー録画送出装置および第2リレー録画送出装置を正式に決定してもよい。
図59は、録画システムの録画開始後に行われるポーリングを示すシーケンス図である。
リレー録画元である録画送出装置1は、録画開始時刻に録画を開始すると(S160)、録画開始を示す録画状態情報2805を、第1リレー録画送出装置として決定された録画送出装置2に送信する(S161)。録画送出装置2は、その録画状態情報2805を受信すると、その受信から所定時間経過後に、録画継続問合せ情報2804を録画送出装置1に送信する(S162)。録画送出装置1は、その録画継続問合せ情報2804を受信すると、そのときに録画中であれば、録画中であることを示す録画状態情報2805を録画送出装置2に送信する(S163)。そして、録画送出装置1および録画送出装置2は、録画継続問合せ情報2804および録画状態情報2805の送受信を繰り返し実行する(S164,S165)。
このように、録画送出装置2は、所定時間の経過ごとに、録画継続問合せ情報2804を録画送出装置1に繰り返し送信して、録画状態情報2805を受信することにより、録画送出装置1の録画状態を監視している。つまり、ポーリングが行われることによって、録画送出装置1の録画状態が監視される。なお、録画送出装置2からの録画継続問合せ情報2804の送信のタイミングは、録画送出装置1による録画位置がフレームの切れ目になるときであることが望ましい。これにより、録画継続問合せ情報2804の送信が、録画送出装置1による録画の邪魔になるのを防ぐことができる。
図60は、録画送出装置1で録画が中断された場合の録画システムの動作を示すシーケンス図である。
リレー録画元である録画送出装置1は、上述と同様、録画開始時刻に録画を開始すると(S180)、録画開始を示す録画状態情報2805を、第1リレー録画送出装置として決定された録画送出装置2に送信する(S181)。録画送出装置2は、その録画状態情報2805を受信すると、その受信から所定時間経過後に、録画継続問合せ情報2804を録画送出装置1に送信する(S182)。録画送出装置1は、その録画継続問合せ情報2804を受信すると、そのときに録画中であれば、録画中であることを示す録画状態情報2805を録画送出装置2に送信する(S183)。
さらに、録画送出装置2は、その録画状態情報2805を受信し、S182で録画継続問合せ情報2804を送信してから所定時間経過後に、再び録画継続問合せ情報2804を録画送出装置1に送信する(S184)。ここで、録画送出装置1は、その録画継続問合せ情報2804を受信すると、そのときに録画が中断されていれば、録画が中断されていることを示す録画状態情報2805を録画送出装置2に送信する(S185)。例えば、録画送出装置1は、EASによる緊急情報を受信するために、録画に利用されているチューナを必要とする場合、その録画を中断する。または、録画送出装置1は、録画中に記録媒体の残容量が所定の閾値以下になると、録画を中断する。
録画送出装置2は、録画が中断されていることを示す録画状態情報2805を受信すると、録画予約情報に示される録画開始時刻を現時刻に更新し(S186)、録画予約情報に従って録画を開始する(S187)。さらに、録画送出装置2は、録画開始を示すリレー録画状態情報2806を録画送出装置1に送信する(S188)。これにより、録画送出装置1が録画可能な状態に復帰したときにも、その録画送出装置1による録画の再開を防ぐことができる。また、録画送出装置2は、録画送出装置nが第2リレー録画送出装置として決定されていれば、録画開始を示す録画状態情報2805を録画送出装置nにも送信する(S189)。これにより、録画送出装置nは、録画送出装置2の録画状態の監視を開始することができる。
図61は、録画送出装置1の電源が遮断された場合の録画システムの動作を示すシーケンス図である。
リレー録画元である録画送出装置1は、上述と同様、録画開始時刻に録画を開始すると(S200)、録画開始を示す録画状態情報2805を、第1リレー録画送出装置として決定された録画送出装置2に送信する(S201)。録画送出装置2は、その録画状態情報2805を受信すると、その受信から所定時間経過後に、録画継続問合せ情報2804を録画送出装置1に送信する(S202)。録画送出装置1は、その録画継続問合せ情報2804を受信すると、そのときに録画中であれば、録画中であることを示す録画状態情報2805を録画送出装置2に送信する(S203)。
さらに、録画送出装置2は、その録画状態情報2805を受信し、S202で録画継続問合せ情報2804が送信されてから所定時間経過後に、再び録画継続問合せ情報2804を録画送出装置1に送信する(S204)。ここで、録画送出装置1は、録画継続問合せ情報2804が送信されたときに、既に電源が遮断されていると、その録画継続問合せ情報2804に対して録画状態情報2805を録画送出装置2に返信することができない。つまり、録画状態情報2805の定期的な送信が停止する。
その結果、録画送出装置2は、録画継続問合せ情報2804をS204で送信してから、録画状態情報2805を受信することなく一定時間経過すると、録画状態情報2805の定期的な受信が停止したと判断するとともに、録画送出装置1による録画が中断されたと判断し、録画予約情報に示される録画開始時刻を現時刻に更新し(S206)、録画予約情報に従って録画を開始する(S207)。なお、上記一定時間は、録画送出装置1に電源が供給されている状態において、録画送出装置2から録画継続問合せ情報2804が送信されてから、録画状態情報2805が録画送出装置2に受信されるまでの時間の最大値よりも長く設定されている。
さらに、録画送出装置2は、録画送出装置nが第2リレー録画送出装置として決定されていれば、録画開始を示す録画状態情報2805を録画送出装置nに送信する(S208)。これにより、録画送出装置nは、録画送出装置2の録画状態の監視を開始することができる。つまり、ポーリングが開始される。具体的には、録画送出装置nは、その録画状態情報2805を受信すると、その受信から所定時間経過後に、録画継続問合せ情報2804を録画送出装置2に送信する(S209)。録画送出装置2は、その録画継続問合せ情報2804を受信すると、そのときに録画中であれば、録画中であることを示す録画状態情報2805を録画送出装置nに送信する(S210)。
これにより、録画送出装置1の電源が遮断されて録画送出装置1による録画が中断されたときにも、録画送出装置2は録画送出装置1に代わってその録画を継続することができ、コンテンツ(サービス)を確実に録画することができる。
なお、上述の例では、録画送出装置2は、録画継続問合せ情報2804を送信してから一定時間経過した後に録画を開始したが、録画継続問合せ情報を送信するごとに、その送信時から一定時間分だけの録画を行うように動作し、録画中を示す録画状態情報を受信するごとに、それまで録画されたコンテンツ(サービス)を消去してもよい。これにより、上記一定時間だけ録画されない状態を回避して、リレー録画をシームレスに行うことができる。また、本実施の形態では、録画送出装置1は録画状態情報2805を定期的に送信したが、録画送出装置1に電源が入っていることを証明できるような情報や信号であれば、録画状態情報2805以外の任意の情報や信号を送信してもよい。さらに、録画送出装置1は、録画状態情報2805と異なる信号を送信するときには、その信号の送信が継続的であれば、録画状態情報2805のようにその信号を断続的(定期的)に送信してもよく、その信号を常時送信してもよい。
図62は、録画送出装置1が録画不可な状態から可能な状態に復帰したときの録画システムの動作を示すシーケンス図である。
録画送出装置2は、録画送出装置1の代わりに録画を開始すると(S220)、録画開始を示す録画状態情報2805をリレー録画元の録画送出装置1に送信し(S221)、所定時間経過後に、さらに、録画中であることを示すリレー録画状態情報2806をその録画送出装置1に送信する(S222)。
そこで、録画送出装置1は、録画不可能な状態から可能な状態に復帰すると(S223)、録画送出装置2に録画状態を問い合わせる(S224)。録画送出装置2は、録画状態の問い合わせを受けると、録画中であることを示すリレー録画状態情報2806を録画送出装置1に送信する(S225)。
録画送出装置1は、そのリレー録画状態情報2806を録画送出装置2から受信すると、録画送出装置2が録画送出装置1の代わりに録画を行っていると判断し、録画継続の中止処理を行う(S226)。つまり、録画送出装置1は、録画可能な状態になっても、録画を再開することなく録画送出装置2に録画を任せる。
なお、録画送出装置1は、録画可能な状態に復帰したときに、録画送出装置2による録画を停止させて、録画を再開してもよい。また、録画送出装置1は、録画可能な状態に復帰したときに、録画を再開するか否かをユーザに選択させてもよく、事前にユーザに選択させておいてもよい。
また、上述の例では、録画送出装置2は、ポーリングすることにより録画送出装置1の録画状態を監視したが、録画送出装置1にリスナーを登録することにより録画状態を監視してもよい。
図63は、リスナーが登録される場合の録画システムの動作を示すシーケンス図である。
リレー録画元の録画送出装置1は、録画開始時刻のX分前に、第1リレー録画送出装置として仮決定された録画送出装置2がこの時点でリレー録画可能か否かを確認するために、録画送出装置2に録画可否問合せ情報2801を再送する(S240)。録画送出装置2は、その録画可否問合せ情報2801を受信すると、リレー録画可能か否かを確認し(S241)、その確認結果を示す録画可否返信情報2802を録画送出装置1に送信する(S242)。例えば、録画送出装置2は、リレー録画可能であることを確認して、録画可能を示す録画可否返信情報2802を録画送出装置1に送信する。これにより、録画送出装置2は、第1リレー録画送出装置として正式に決定され、仮確保しておいたリソースを正式に確保する(S243)。
次に、録画送出装置2は、例えばUPnPを利用して録画送出装置1にリスナーを登録する(S244)。このリスナーには、録画送出装置2のアドレスなどが設定されており、リスナーが登録された録画送出装置1は、そのリスナーを利用することにより、録画送出装置2から録画継続問合せ情報2804を受けることなく、録画送出装置2に録画状態情報2805を定期的に送信することができる。なお、UPnPを利用せず、録画送出装置1と録画送出装置2で通知が可能なリスナーを独自に定義し、そのリスナーを利用して録画状態情報2805を送受信してもよい。
その結果、録画送出装置1は、録画開始時刻に録画を開始すると(S245)、所定時間経過ごとに、そのときの録画状態を示す録画状態情報2805を録画送出装置2に繰り返し送信する(S246,S247)。
これにより、録画送出装置2は、録画継続問合せ情報2804を定期的に録画送出装置1に送信することなく、録画送出装置1の録画状態を監視することができる。
図64は、録画送出装置1で録画終了時刻まで録画が行われるときの録画システムの動作を示すシーケンス図である。
リレー録画元である録画送出装置1は、録画開始時刻に録画を開始すると(S260)、録画開始を示す録画状態情報2805を、第1リレー録画送出装置として決定された録画送出装置2に送信する(S261)。録画送出装置2は、その録画状態情報2805を受信すると、その受信から所定時間経過後に、録画継続問合せ情報2804を録画送出装置1に送信する(S262)。録画送出装置1は、その録画継続問合せ情報2804を受信すると、そのときに録画中であれば、録画中であることを示す録画状態情報2805を録画送出装置2に送信する(S263)。そして、録画送出装置1および録画送出装置2は、録画継続問合せ情報2804および録画状態情報2805の送受信を繰り返し実行する(S264,S265)。
録画送出装置1は、録画終了時刻に録画を終了すると(S266)、録画が終了したことを示す録画状態情報2805を録画送出装置2に送信する(S267)。録画送出装置2は、その録画状態情報2805を受信すると、登録していたリレー録画予約情報を破棄し(S268)、確保していたリソースを開放する(S269)。なお、録画送出装置2は、録画状態情報2805の受信に関わらず、リレー録画予約情報に示される録画終了時刻に現時刻が達した時点で、そのリレー録画予約情報を破棄してもよい。
図65は、受信再生装置101がコンテンツリストを取得するときの録画システムの動作を示すシーケンス図である。
受信再生装置101は、コンテンツリストの取得要求を録画送出装置1に送信する(S280)。これにより、録画送出装置1は、その装置内のコンテンツ一覧(録画情報管理テーブルまたは録画済みサービス一覧)を取得し(S281)、その中に含まれる録画コンテンツ情報を確認する(S282)。例えば、録画コンテンツ情報には、分割録画情報が関連付けられてあり、その分割録画情報は、コンテンツが録画送出装置2(および録画送出装置n)にも分割して録画されていることを示している。このとき、録画送出装置1は、その録画コンテンツ情報に基づいて特定される録画送出装置2(および録画送出装置n)に対して、コンテンツ検索要求情報を送信する(S283)。コンテンツ検索要求情報を受信した録画送出装置2(および録画送出装置n)は、そのコンテンツ検索要求情報に応じたコンテンツを録画していれば、そのコンテンツの録画コンテンツ情報および自らの端末IDなどを検索結果通知情報として録画送出装置1に送信する(S284)。
録画送出装置1は、録画送出装置2(および録画送出装置n)から受信した検索結果通知情報に基づいてリレー録画プレイリストを生成し(S285)、そのリレー録画プレイリストを含むコンテンツリストを受信再生装置101に送信する(S286)。
図66は、受信再生装置101がコンテンツを再生するときの録画システムの動作を示すシーケンス図である。
受信再生装置101は、ユーザによる再生要求を受け付け(S300)、その要求に対応するリレー録画プレイリストを解析する(S301)。その結果、受信再生装置101は、コンテンツの最初の部分を保持している録画送出装置1に対して再生要求を送信する(S302)。再生要求を受信した録画送出装置1は、その再生要求に応じたコンテンツを受信再生装置101に転送する(S303)。
受信再生装置101は、録画送出装置1から転送されるコンテンツを再生しながら、そのコンテンツの終了を検知すると(S304)、コンテンツの次の部分を保持している録画送出装置2に対して再生要求を送信する(S305)。再生要求を受信した録画送出装置2は、その再生要求に応じたコンテンツを受信再生装置101に転送する(S306)。
さらに、受信再生装置101は、録画送出装置2から転送されるコンテンツを再生しながら、そのコンテンツの終了を検知すると(S307)、コンテンツの次の部分を保持している録画送出装置nに対して再生要求を送信する(S308)。再生要求を受信した録画送出装置nは、その再生要求に応じたコンテンツを受信再生装置101に転送する(S309)。
なお、受信再生装置101は、リレー録画プレイリストを解析すること、つまり、リレー録画プレイリストに記載されているアドレスおよびレコード識別子に基づいて録画済みサービス情報(録画コンテンツ情報)を取得することによって、上述のコンテンツの終了する時刻を検知している。また、受信再生装置101は、コンテンツの終了する時刻よりも数秒前に再生要求を録画送出装置に送信してもよい。これにより、分割されたコンテンツをシームレスに再生することができる。
図67は、受信再生装置101がコンテンツを特殊再生するときの録画システムの動作を示すシーケンス図である。
受信再生装置101は、ユーザによる特殊再生(例えば、巻き戻し再生など)の要求を受け付け(S320)、その要求に対応するリレー録画プレイリストを解析する(S321)。なお、特殊再生前に通常再生されており、リレー録画プレイリストが既に解析されていれば、受信再生装置101は、S321でリレー録画プレイリストを再度解析することなく、メモリ上に保持されている解析結果を利用する。
次に、受信再生装置101は、コンテンツの再生位置を計算し(S322)、その再生位置に相当する部分を保持している録画送出装置nに再生要求を送信する(S323)。再生要求を受信した録画送出装置nは、その再生要求に応じたコンテンツを受信再生装置101に転送する(S324)。
受信再生装置101は、録画送出装置nから転送されるコンテンツを再生しながら、そのコンテンツの終了を検知すると(S325)、コンテンツの前の部分を保持している録画送出装置1に対して再生要求を送信する(S326)。再生要求を受信した録画送出装置1は、その再生要求に応じたコンテンツを受信再生装置101に転送する(S327)。
以上、本実施の形態によると、ホームネットワーク環境に存在する1台の録画装置で何らかの原因により録画が中断された場合、他の録画装置で録画を継続することにより、より短い中断時間で録画を再開することが可能となる。また、録画中の録画装置の電源が切れた場合などにも、ネットワーク104上の他の録画装置にて録画を継続することが可能となる。さらに、複数の録画装置に分割保存されている録画コンテンツを1つのコンテンツのように再生することが可能となり、再生時の特殊再生(早送り、巻き戻し、スキップなど)にも対応可能となる。加えて、分割保存された録画コンテンツのコピーおよび移動などを利用することにより、1つのコンテンツとして保存し直すことが容易となる。
(変形例)
本発明を、上記実施の形態に基づいて説明してきたが、本発明は、上記実施の形態に限定されるものではない。以下のような場合も、本発明に含まれる。
(1)上記実施の形態においては、録画送出装置102aは、リレー録画の結果のプレイリスト情報を生成し、受信再生装置101は、録画送出装置102aより前記プレイリスト情報受信し、前記プレイリスト情報を解析することにより再生に必要なデータを持つ録画送出装置を特定し、該録画送出装置にデータ送信要求を行ってデータを受信することにより、再生を行っていた。しかし、録画送出装置102aは、リレー録画を行った場合であっても、受信再生装置101にはひとつのコンテンツとしてアクセスするURI(Uniformed Resource Identifier)を示し、受信再生装置101から該URIへのアクセスがあった場合に、録画送出装置102aがプレイリスト情報を解析し、必要なデータを持つ録画送出装置を特定して、その録画送出装置より必要なデータを受信し、受信したデータを受信再生装置101へ送信する構成であっても良い。
本変形例によれば、録画送出装置102aのみの処理により、リレー録画であっても受信再生装置101で再生が行える。すなわち、受信再生装置101からは、録画送出装置102aがすべてのデータを持っている場合と同様の処理となる。したがって、受信再生装置101は、DLNA準拠のクライアントのような従来の構成のものであっても対応可能となる。
(2)上記実施の形態においては、録画送出装置102aは、リレー録画の結果のプレイリスト情報を生成し、受信再生装置101は、録画送出装置102aより前記プレイリスト情報受信し、前記プレイリスト情報を解析することにより再生に必要なデータを持つ録画送出装置を特定し、該録画送出装置にデータ送信要求を行ってデータを受信することにより、再生を行っていた。しかし、録画送出装置102aは、リレー録画を行った場合であっても、受信再生装置101にはひとつのコンテンツとしてアクセスするURIを示し、受信再生装置101から該URIへのアクセスがあった場合に、録画送出装置102aは、プレイリスト情報を解析し、必要なデータをもつ録画送出装置および該データにアクセスするためのURIを特定し、該URIを受信再生装置101へ通知し、受信再生装置101は、通知されたURIへアクセスすることにより、該データを受信して再生する構成であっても良い。また、該URIの通知は、必要なデータを持つ録画送出装置が、受信再生装置101からアクセスのリクエストを受けた録画送出装置102a以外の場合に行い、必要なデータを持つ録画送出装置が録画送出装置102aの場合には、受信再生装置101にデータを送信する構成であっても良い。
このように、録画送出装置102aから受信再生装置101へのURIの通知とそれに続く受信再生装置101からのデータ送信要求、データ受信には、HTTPをデータ通信プロトコルとして用いる場合、HTTP−GETリクエストのレスポンスとして “307 Temporary Redirect”レスポンスを使用することで行える。すなわち、受信再生装置101は録画送出装置102aに対してHTTP−GETリクエストを発信し、録画送出装置102aは、そのレスポンスとして、ヘッダ“Location”に通知するURIをもった“307 Temporary Redirect”レスポンスを返す。このレスポンスを受信した受信再生装置101は、ヘッダ“Location”よりURIを読み取り、改めて該URIにHTTP−GETリクエストを送信する。なお、録画送出装置は、該録画送出装置が保存するデータの終端まで送信が終了すれば、受信再生装置101へデータ送信終了を通知する。この通知方法としては、HTTPでのデータ通信を行っているコネクションを切断することで行える。あるいは、データ転送にHTTP規格で定義されたChunk形式転送を用いている場合は、サイズ0のチャンクを送信することによって行える。また、HTTP−GETに対するレスポンスには、転送するデータサイズをContent−Lengthヘッダにより送信するデータ量をクライアントに送ることが可能である。また、Content−Rangeヘッダを用いて、送信するデータの範囲を通知することが可能である。これらの情報を用いて、受信再生装置101がデータ送信終了を検知する方法であっても良い。HTTPについての詳しい内容はHTTP規格(RFC2616)を参照されたい。
また、上記したURIを通知する場合に、録画送出装置102aは受信再生装置101へ、該URIによって参照されるデータのうち、必要なデータの始点、もしくは範囲を通知する構成であっても良い。例えば、特殊再生を行う場合、該URIによって参照されるデータの一部が必要な場合がある。この場合、録画送出装置102aは、プレイリスト情報や録画コンテンツ情報を参照することにより、必要なデータの始点もしくは範囲を特定して通知する構成であっても良い。この始点もしくは範囲は、該データの先頭を0としたバイト位置であっても良いし、該データの先頭を0とした再生時間情報であっても良い。このような情報の通知は、HTTPをデータ通信プロトコルとして用いる場合、上記“307 Temporary Redirect”レスポンスに独自ヘッダを追加することで行うことが可能である。
また、データ通信プロトコルとして、RTPとRTSPを利用する場合は、前記したURIの通知は、サーバからクライアントに対してREDIRECTメソッドを送ることによって実現できる。詳しくは、RTSP規格(RFC2326)を参照されたい。
本変形例によれば、受信再生装置101は録画送出装置102aの指示に従うのみであり、録画送出装置102aの処理によって、リレー録画であっても再生を行うことが可能となる。そのため、受信再生装置101の構成が簡易になるという効果を有する。また、上記の変形例(1)と比較した場合、変形例(1)では、データを持つ録画送出装置から録画送出装置102aへデータが転送され、さらに、同じデータが録画送出装置102aから受信再生装置101へ転送されるため、ネットワーク帯域を2倍に消費するが、本変形例では、データを持つ録画送出装置から受信再生装置101へ直接データが転送されるため、ネットワーク帯域の消費量を増大させないという効果も有する。
(3)上記実施の形態においては、録画送出装置102aは、リレー録画の結果のプレイリスト情報を生成し、受信再生装置101は、録画送出装置102aより前記プレイリスト情報受信し、前記プレイリスト情報を解析することにより再生に必要なデータを持つ録画送出装置を特定し、該録画送出装置にデータ送信要求を行ってデータを受信することにより、再生を行っていた。しかし、録画送出装置102aは、可能であれば、リレー録画を依頼した録画送出装置での録画が終了した後に、該録画データを該録画送出装置より受信して保存し、該録画送出装置からはデータを削除する構成であっても良い。
(4)本発明の録画送出装置、受信再生装置は、上記に示す方法であるとしてもよい。また、この方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
また、本発明の録画送出装置、受信再生装置は、前記コンピュータプログラム又は前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD―ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなど、に記録したものとしてもよい。また、これらの記録媒体に記録されている前記コンピュータプログラム又は前記デジタル信号であるとしてもよい。
また、本発明の録画送出装置、受信再生装置は、前記コンピュータプログラム又は前記デジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
また、本発明の録画送出装置、受信再生装置は、マイクロプロセッサとメモリとを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムに従って動作するとしてもよい。
また、前記プログラム又は前記デジタル信号を前記記録媒体に記録して移送することにより、又は前記プログラム又は前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
(5)上記変形例をそれぞれ組み合わせるとしてもよい。
上記に詳細に説明した本発明の実施の形態は単なる例示にすぎず、本発明の新規な教示および効果から実質的に逸脱することなく例示として挙げた実施の形態において様々な変更が可能であることは、当業者であれば容易に理解するところである。したがって、かかる変更はすべて本発明の範囲内に含まれるものである。