本発明の第1の態様にかかる受信装置は、少なくともひとつ以上のメディアの表示レイアウトを決定するレイアウト情報および前記レイアウト情報を構成する前記メディアを受信する伝送部と、前記メディアの受信状態に基づいて複数の異なる前記レイアウト情報から1つを選択する受信データ管理部と、選択した前記レイアウト情報を用いて前記メディアを再生する再生制御部と、を具備した構成を採る。
これにより、メディアの受信状態に対して、適切なレイアウト情報を用いたレイアウティングを行ってコンテンツを表示させることが可能となる。
本発明の第2の態様は、第1の態様にかかる受信装置において、前記受信データ管理部は、構成する全ての前記メディアが受信可能な前記レイアウト情報を選択する。
これにより、受信可能なメディアに対して、適切なレイアウト情報を用いたレイアウティングを行ってコンテンツを表示させることが可能となる。例えば、受信装置が、テキスト、静止画のみを受信できるときには、テキスト、静止画のみの場合に適したレイアウティングを行って表示し、映像、音声、静止画、テキストを受信できる場合には、これらのメディアに適したレイアウティングを行って表示できる。つまり、伝送された映像、音声、静止画、テキストなどさまざまなメディアからなるコンテンツを表示する場合に、受信可能なメディアに適した形態でコンテンツを表示できる。
本発明の第3の態様は、第1の態様または第2の態様にかかる受信装置において、前記レイアウト情報は再生に必須である必須メディアを有し、前記受信データ管理部は前記必須メディアが受信可能である前記レイアウト情報を選択する。
これにより、一部のメディアが再生できない状態で、そのレイアウト情報を再生するべきか否かを決定することができる。
本発明の第4の態様は、第1の態様から第3の態様のいずれかにかかる受信装置において、前記レイアウト情報は使用の優先度情報を有し、前記受信データ管理部は前記複数の異なるレイアウト情報から前記優先度情報の最も高い前記レイアウト情報を選択する。
これにより、複数のレイアウト情報が再生可能な状態になったときに、優先度を用いていずれのレイアウト情報を選択すべきか決定することができる。
本発明の第5の態様は、第1の態様から第3の態様のいずれかにかかる受信装置において、前記受信データ管理部は、前記複数の異なるレイアウト情報から、前記送信側から送信されてくる送信間隔が最も長い前記レイアウト情報を選択する。
送信間隔が最も長い前記レイアウト情報は、使用する受信装置が少ないものに対応したものであり、より情報量の多いメディアを含むものであることが考えられる。よって、これにより、複数のレイアウト情報が再生可能な状態になったときに、より情報量の多いレイアウト情報を選択することができる。
本発明の第6の態様は、第1の態様から第3の態様のいずれかにかかる受信装置において、前記受信データ管理部は、前記複数の異なるレイアウト情報がひとつの番組情報に記載されている場合に、前記複数の異なるレイアウト情報から最も記載順の早い前記レイアウト情報を選択する。
記載順の早いレイアウト情報は、番組作成者が最も表現したいものであることが考えられる。よって、これにより、複数のレイアウト情報が再生可能な状態になったときに、最も表現することが好ましいレイアウト情報を選択できる。
本発明の第7の態様は、第1の態様から第3の態様のいずれかにかかる受信装置において、前記受信データ管理部は、前記複数の異なるレイアウト情報から構成する前記メディアの数が多い前記レイアウト情報を選択する。
これにより、複数のレイアウト情報が再生可能な状態になったときに、最もメディアの数が多い、つまり表現することが好ましいレイアウト情報を選択できる。
本発明の第8の態様は、第1の態様から第3の態様のいずれかにかかる受信装置において、前記受信データ管理部は、前記複数の異なるレイアウト情報から映像メディアを含む前記レイアウト情報を選択する。
これにより、複数のレイアウト情報が再生可能な状態になったときに、映像メディアを含む、つまり表現することが好ましいレイアウト情報を選択できる。
本発明の第9の態様は、第1の態様から第3の態様のいずれかにかかる受信装置において、前記メディアの伝送路上でのロス率を測定する受信制御部を具備し、前記受信データ管理部は前記複数の異なるレイアウト情報から前記ロス率が所定以下の前記レイアウト情報をひとつ選択する。
これにより、メディアが継続的に再生できるときにのみ、再生を行うことになり、パケットロスの多い劣化した情報を表示することがなくなる。
本発明の第10の態様にかかる送信装置は、少なくとも1つ以上のメディアの表示レイアウトを決定するレイアウト情報を複数送信するレイアウト情報伝送部と、前記レイアウト情報を構成するメディアデータを送信するメディアデータ伝送部と、を具備した構成を採る。
これにより、受信側に、メディアの受信状態に対して、適切なレイアウト情報を用いたレイアウティングを行ってコンテンツを表示させることが可能となる。
本発明の第11の態様は、第10の態様にかかる送信装置において、前記レイアウト情報を構成する前記メディアが再生可能である場合にのみ前記レイアウト情報を利用して再生を行うことを許可する識別子を送信する。
これにより、受信側に、一部のメディアが再生できない状態で、そのレイアウト情報を再生するべきか否かを決定させることができる。
本発明の第12の態様は、第10の態様にかかる送信装置において、複数の異なる前記レイアウト情報を送信する際に、使用の優先度の高い前記レイアウト情報の送信間隔を、使用の優先度の低い前記レイアウト情報の送信間隔よりも長く設定する。
優先度の高いレイアウト情報は、情報量が多いので、受信できる受信装置が少ないことが考えられる。よって、このように、優先度の高いレイアウト情報の送信間隔を長くすることにより、伝送帯域を有効に使用できる。
本発明の第13の態様は、上記の送信装置と、上記の受信装置とを具備したことを特徴とするメディア配信システムである。
本発明の第14の態様は、少なくともひとつ以上のメディアの表示レイアウトを決定するレイアウト情報を受信するステップと、前記レイアウト情報を構成する前記メディアを受信するステップと、前記メディアの受信状態に基づいて複数の異なる前記レイアウト情報から1つを選択するステップと、選択した前記レイアウト情報を用いて前記メディアを再生するステップと、を具備したことを特徴とする情報閲覧方法である。
本発明の第15の態様は、少なくとも1つ以上のメディアの表示レイアウトを決定するレイアウト情報を複数送信するステップと、前記レイアウト情報を構成するメディアデータを送信するステップと、を具備したことを特徴とするメディア送信方法である。
本発明の第16の態様は、送信側において、少なくとも1つ以上のメディアの表示レイアウトを決定するレイアウト情報を複数送信するステップと、前記レイアウト情報を構成するメディアデータを送信するステップと、受信側において、送信側から送信されてきた前記レイアウト情報を受信するステップと、前記レイアウト情報を構成する前記メディアを受信するステップと、前記メディアの受信状態に基づいて複数の異なる前記レイアウト情報から1つを選択するステップと、選択した前記レイアウト情報を用いて前記メディアを再生するステップと、を具備したことを特徴とする情報閲覧方法である。
本発明の第17の態様は、コンピュータに、少なくともひとつ以上のメディアの表示レイアウトを決定するレイアウト情報を受信するステップと、前記レイアウト情報を構成する前記メディアを受信するステップと、前記メディアの受信状態に基づいて複数の異なる前記レイアウト情報から1つを選択するステップと、選択した前記レイアウト情報を用いて前記メディアを再生するステップと、を行わせることを特徴とするプログラムである。
本発明の第18の態様は、コンピュータに、少なくとも1つ以上のメディアの表示レイアウトを決定するレイアウト情報を複数送信するステップと、前記レイアウト情報を構成するメディアデータを送信するステップと、を行わせることを特徴とするプログラムである。
本発明の第19の態様は、上記のプログラムを格納した記憶媒体である。
(実施の形態1)
以下、本発明にかかる実施の形態1について、図面を参照しつつ説明を行う。
まず、図1(a)〜図1(c)を用いて実施の形態1にかかる通信網の利用形態について説明する。図1(a)〜図1(c)は、実施の形態1にかかるメディア配信システムを示した図である。
図1(a)に示すように、実施の形態1にかかるメディア配信システムは、送信装置であるサーバ102から配信されたコンテンツを、通信網101を介して、受信端末104が受信するようになっている。
サーバ102は、動画、音声、音楽、テキスト、静止画、レイアウト情報、プログラムなどさまざまなメディア対象としたコンテンツを伝送する。また、サーバ102は、コンテンツとして、番組情報と番組データとを送信している。
番組情報は、番組の概要や、放送開始・終了時間、放送に使用される通信ポート(TV放送におけるチャンネルにあたるもので、具体的には、あて先IPアドレスやポート番号のことをいう)などの受信条件を記したデータである。
また、番組情報の記述方法としては例えば、SDP(Session Description Protocol)が用いられている。
また、番組データは、動画、音声、音楽、テキスト、静止画、プログラムなどのメディアと、これらを組み合わせて表示するためのレイアウト情報である。
レイアウト情報の記述方法としては、例えば、SMIL(Synchronized Multimedia Integration Language)やJAVA(R)を用いられている。
なお、SMILの詳細については、http://www.w3.org/TR/smil20/に、SDPの詳細についてはhttp://www.ietf.org/rfc/rfc2327.txtに、それぞれ記述されている。
受信端末104は、携帯電話、TV、PDA、パソコンなど、表示解像度や処理能力が異なる端末である。受信端末104は、最初にサーバ102から送信された番組情報を受信し、番組情報に記載される番組データ受信用の受信チャネルを開いて番組データを受信する。そして、受信端末104は、番組情報に対応する番組を再生する。
なお、受信端末104は番組を配信する複数のサーバから同時にコンテンツを受信してもよい。さらに、受信端末104は、単一の伝送路だけでなく、複数の伝送路に同時に接続できる能力を有するものであってもよい。
通信網101は、有線網(例えば、ADSL、ISDN、ATM、FTTHなど)であっても無線網(例えば、携帯電話、無線LANなど)である。
また、通信機器はルータやゲートウェイ(GW)といった中継ノード103で相互接続される。
中継ノード103は、ブロードキャストやマルチキャスト機能を備え、中継ノード103でデータパケットを複製することができる。
また、コンテンツの伝送方法としては、サーバ102と受信端末104間で1対1型の通信を行ってもよいし、ブロードキャストやマルチキャスト機能を用いて、サーバ102と受信端末104間1対N型の通信を行ってもよい。
なお、番組情報や番組データは、同一の伝送路を利用して伝送してもよいし、それぞれ別々の伝送路を利用して伝送してもよい。例えば、番組情報は放送網を用いて伝送し、番組データは通信網を用いて伝送することとしてもよい。
また、実施の形態1は、図1(b)に示すように、有線網と無線網が相互接続された通信網105を備えた形態であってもよい。
さらに、実施の形態1は、図1(c)に示すように、サーバ102が各所に存在し、近傍のエリアにデータをブロードキャストし、受信端末104がデータを受信する通信形態であってもよい。このような通信形態の場合には、伝送プロトコルとして、BlueToothや無線LANなどを利用できる。
また、サーバ102と受信端末104間の接続経路は通信網101だけではなく、放送網(例えば、地上波デジタル放送、衛星デジタル放送など)や、放送網と通信網を融合したシステム構成であってもよい。
ところで、特に、図1(b)に示すように、携帯電話のような移動する受信端末104へコンテンツを放送する形態では、受信端末104が存在する地域ごとに異なるコンテンツを放送したいという要望もある。しかし、サーバ102から複数の受信端末104に、ブロードキャストもしくはマルチキャストした場合、位置に応じて放送内容を変更することは容易ではない。
そこで、実施の形態1においては、位置に応じた放送を実現するために、例えば、図1(b)では、サーバ102と中継ノード103間は1対1で通信し(有線網の区間)、中継ノード103と受信端末104間は、無線網を用いたブロードキャスト機能を利用して配信している。
このように、ブロードキャスト機能を実現する中継ノード103は、他の中継ノード103をまたがって、パケットをブロードキャストすることはない。
次に、受信端末104における、受信できるメディアに応じた番組の再生結果の違いを図2(a)〜図2(d)を用いて説明する。図2(a)〜図2(d)は、受信端末104における、中継ノード103からの物理的もしくは論理的な距離に応じた番組の再生結果の違いを説明する図である。
この例では、サーバ102は、テキストデータ(201)、低解像度の静止画データ1(202)、静止画データ2(203)、MPEG4映像ストリームデータ(204、206)、高解像度の静止画データ1(205)を送信しているものとする。
MPEG4映像ストリームデータ204、206は、同じ画像を高解像度と低解像度で符号化したものである。MPEG4映像ストリームデータ204は低解像度で符号化したものであり、MPEG4映像ストリームデータ206は高解像度で符号化したものである。また、サーバ102は、MPEG4映像ストリームデータ204はフレーム内符号化フレーム(Iフレーム)、MPEG4映像ストリームデータ206はフレーム間符号化フレーム(Pフレーム)のデータを送信しているものとする。
図2(a)に示す表示結果は、受信端末104が、テキストデータ201と低解像度の静止画データ1(202)を受信可能な場合の表示結果である。この場合には、受信端末104に、テキストデータ201と低解像度の静止画データ1(202)が表示される。
図2(b)に示す表示結果は、受信端末104が、テキストデータ201と低解像度の静止画データ1(202)に加えて、静止画データ2(203)を受信可能な場合の番組の再生結果である。この場合、受信端末104は、テキストデータ201、低解像度の静止画データ1(202)、および、静止画データ2(203)を表示するのに適したレイアウトを採用している。
図2(c)に示す表示結果は、受信端末104が、テキストデータ201、低解像度の静止画データ1(202)、および、静止画データ2(203)に加えてMPEG4映像ストリームデータ204をできるときの番組の再生結果である。この場合、受信端末104は、MPEG4映像ストリームデータ204が中央に配置され、テキストデータ201、静止画データ1(202)、静止画データ2(203)が、縮小されて表示されるレイアウトを採用している。
図2(d)に示す表示結果は、受信端末104が、テキストデータ201、低解像度の静止画データ1(202)、静止画データ2(203)、MPEG4映像ストリームデータ204に加えて、MPEG4映像ストリームデータ206および高解像度の静止画データ1(206)を受信できる場合の番組の再生結果である。この場合、受信端末104は、図2(c)に示す場合にくらべ、静止画データ1の解像度が上がり、映像のフレームレートも上がっている。
本発明では、図2に示したように、受信端末104が、受信できるメディアが少ない場合にはそれらのメディアに適した適切なレイアウティングを行って番組を表示し、かつ、多くのメディアにより情報を表示できる場合にはそれらのメディアに適したレイアウティングを行って番組を表示するようにしている。
以下、上述したように、受信できるメディアに適したレイアウトでメディアを表示する受信端末104を含むメディア配信システムの構成について図3を用いて説明する。図3は、実施の形態1にかかるメディア配信システムの全体像を示す概略図である。
コンテンツ送信装置であるサーバ102は、データ管理部301、番組放送管理部314、送出制御部304、番組情報生成部312、および伝送部305を備えている。
データ管理部301は、番組テーブル301a、レイアウト情報を格納するレイアウト情報格納部301b、MPEG4映像ストリームデータ204、206を格納するAVデータ格納部301c、静止画データ202、203、205を格納する静止画格納部301d、およびテキストデータ201を格納するテキスト格納部301eから構成される。データ管理部301は、ハードディスクドライブに代表される記録媒体である。
番組テーブル301aは、番組の情報を格納するテーブルである。この番組テーブル301aに基づいて、各番組が放送される。
番組テーブル301aの詳細について図4を用いて説明する。図4は、サーバ102が保有する番組テーブル301aを示した図である。
番組テーブル301aは、1つの番組の情報を格納するものであり、サーバ102は、この番組テーブル301aを放送する番組の数だけ保有している。なお、図3では、図面の簡略化のため、番組テーブル301aをひとつしか示していない。
番組テーブル301aは、セッション情報401とメディア情報402に分かれている。
セッション情報401は番組全体に関する情報を表しており、メディア情報402は、番組を構成する各メディアの情報を表している。
セッション情報401には、タイトル403、セッション番号404、送信開始・終了時刻405、および、あて先アドレス406が格納されている。
タイトル403は、この番組のタイトルを表している。
セッション番号404は、この番組を一意に示す番号である。
送信開始・終了時刻405は、番組の送信開始と終了時刻が記載されている。
あて先アドレス406は、データのあて先アドレスを示しており、どのアドレスあてに番組データを送信するかを示している。
また、メディア情報402は、ファイル名407、送信名408、メディアの種別409、必須フラグ410、および、送信周期・繰り返し回数411といった情報を持つ。
ファイル名407は、そのメディア(番組)に格納されているファイル名が記載されている。ファイル名407は、メディアデータおよびレイアウト情報の名前である。
送信名408は、そのメディアデータの送信の際に、データを一意に識別するために付与される識別子を示している。この情報は、レイアウト情報で各メディアを指定するために使用する。また、各メディアの送信名は、番組情報に入力される。
メディアの種別409は、そのメディアの種別を示している。この情報は番組情報に入力されて、受信装置に送信される。
必須フラグ410は、対応するメディアデータが再生不可能なときに、受信端末104が、そのメディアを構成メディアとして持つレイアウト情報を使って番組を再生することを許可するか否かを示すフラグである。つまり、必須フラグ410は、そのメディアがレイアウト情報の再生に必須であるか否かを示すフラグである。
必須フラグ410が1になっているときは、そのメディアが再生不可能であるときには、そのメディアをレイアウトの構成要素として持つレイアウト情報を使って番組を再生することを許可しない。言い換えれば、必須フラグ410は、メディアが対応するレイアウト情報に必須な必須メディアか否かを示すものである。
必須フラグ410は、番組情報もしくはレイアウト情報に記載されて受信装置に通知される。
送信周期・繰り返し回数411は、送信するメディアデータが静止画、テキストデータである場合には、そのメディアデータの送信の繰り返し周期を示し、送信するメディアデータがストリームのデータである場合には、そのストリームデータを何回繰り返して送信するかを示す。
図4の例では、ストリームデータはAudio、Videoであり、その繰り返し回数は無限回(サーバ102が停止指示を出すまで送信しつづける)となっている。
以上のように番組テーブル301aは構成されている。
ここで図3を用いたコンテンツ配信装置の説明に戻る。
番組放送管理部314は、各番組の放送開始、終了を管理するものである。番組放送管理部314は、番組再生開始、終了時刻を記憶して、送信開始時刻になれば番組の送信を開始し、終了時刻になると番組の送信を終了する。
さらに詳細には、番組放送管理部314は、各番組の番組テーブル301aからセッション情報401に関する情報を読み込み、そこに記録された番組の放送開始時刻・終了時刻405を記憶する。そして、番組放送管理部314は、各番組の放送開始時刻になると送出制御部304および番組情報生成部312にその番組の放送開始を指示する。また、番組放送管理部314は、終了時刻になると、送出制御部304および番組情報生成部312にその番組の放送終了を指示する。
送出制御部304は、番組放送管理部314からの放送開始指示に従って、指示された番組テーブル301aのメディア情報402を読み出し、メディア情報402のファイル名407をもとに番組データを構成するメディアデータおよびレイアウト情報を読み出す。送出制御部304は、読み出した番組データを伝送部305に渡す。また、送出制御部304は、番組放送管理部314からの放送終了指示に基づいて、指示された番組の放送を停止する。
番組情報生成部312は、番組放送管理部314からの放送開始指示に従って、指示された番組の番組情報をデータ管理部301より読み出す。そして、必要であれば、番組情報に番組データの放送チャンネル(各メディアデータのあて先IPアドレス、ポート番号など)の情報を追加する。そして、番組情報生成部312は、この番組情報を一定周期で伝送部305に渡す。また、番組情報生成部312は、番組放送管理部314からの放送終了指示に従って、指示された番組の番組情報の伝送部305への受け渡しを終了する。
なお、番組情報をあらかじめ受信端末104に渡してあって、番組放送時点では番組情報を送信する必要がない場合には、サーバ102にこの番組情報生成部312を備える必要はない。
伝送部305は、IPネットワークにデータを送信可能なインターフェースである。また、この伝送部305は、番組情報生成部312および送出制御部304から受け取った番組情報および番組データをパケット化する機能を有する。さらに、伝送部305は、あらかじめ定められた番組情報用チャンネルに番組情報を送信し、番組情報に基づいて、定められたチャンネルに番組データを送信する機能を有する。
なお、上記のシステムにおいて、番組情報は、リアルタイムで生成しても良いし、放送前に事前に生成しても良い。また、番組情報は、必ずしも番組データとあわせて送信する必要はなく、別の手段により送信してもよい。
例えば、番組情報送信用の別のサーバを準備し、受信装置が、そのサーバからHTTPなどを用いて取得することとしてもよい。
次に、受信端末104について説明する。
受信端末104は、端末制御部310、受信制御部307、番組選択部317、再生制御部308、表示部316、受信データ管理部318および伝送部315を備えている。
端末制御部310は、受信端末104全体の制御を行う。図3においては、図の簡便化のため端末制御部310から他の処理部への信号線を省略しているが、実際には、全ての処理部に対する信号線がある。
受信制御部307は、伝送部315により受信したデータをバッファ320に蓄積する。そして、受信制御部307は、蓄積したデータの種別を判別し、受信したデータが番組情報である場合には、番組選択部317へデータを渡す。受信制御部307は、受信したデータがレイアウト情報である場合には、そのレイアウト情報の優先度、レイアウトを構成するメディア、各メディアの表示が必須であるかどうかなどを解析し、後述する受信データ管理テーブル319へ記入する。また、受信制御部307は、受信したデータがメディアデータである場合には、メディアの再生準備が完了したかどうかを判定し、その結果を受信データ管理テーブル319に記載する。また、受信制御部307は、メディアデータが継続的に受信可能かどうかを判定し、判定結果を受信データ管理テーブル319に記載する。受信制御部307は、以上の機能を有する。
番組選択部317は、受信制御部307より受け取った番組情報から、受信する番組を選択し、伝送部315に受信の指示をするものである。番組選択部317は、受信する番組の選択を、視聴者からの指示で行ってもよいし、受信端末104が自動的に選択する仕組みであってもよい。
自動的に選択する方法としては、例えば、番組選択部317は、受信した番組情報中からランダムに選択する。
番組選択部317は、表示部316に番組タイトルなどの番組一覧を表示させる。そして、視聴者が表示部316に表示された番組一覧から任意の番組を選択する。
また、番組選択部317は現在放送中の番組の番組データを受信するためのチャンネルを番組情報から求める。
なお、実施の形態1では、番組情報は番組データを送信するサーバ102から送信される仕組みとなっているが、番組情報は、別の方法で入手することも可能である。例えば、HTTPを使ってHTTPサーバから取得する方法などがある。
受信データ管理部318は、受信データ管理テーブル319を保持し、受信データ管理テーブル319の更新を検出し、後述するテーブル管理処理に基づいて、使用すべきレイアウト情報を決定し、再生制御部308に通知する。
再生制御部308は、受信データ管理部318の決定したレイアウト情報を受信制御部307より取得し、レイアウト情報に基づいて番組データの再生処理を行う。
なお、再生制御部308は、映像や音声の再生に、復号処理のためのさまざまな方式の復号化処理を行う。この方式としてはMPEG4やMPEG2といった標準化された方式を用いても良いし、標準化されていない方式を用いても良い。
また、再生制御部308は、復号された情報を合成するために、テキストやアニメーションの表示位置や表示タイミングを決定する。メディア間の同期は、MPEG2、SMILといった標準化された方式を用いても良いし、標準化されていない方式を用いても良い。
伝送部315は、IPネットワークからのデータパケットを受信可能なインターフェースである。伝送部315は、番組情報受信用チャンネルをオープンして番組情報を受信したり、番組選択部317より受信開始指示されたチャンネルをオープンし、番組データを受信する機能を有する。
また、伝送部315は、受信した各種データパケットから、データを取り出して、受信制御部307に渡す機能を有する。さらに、伝送部315は、番組選択部317からの受信終了指示されたチャンネルをクローズして番組データの受信を停止する機能を有する。
なお、実施の形態1では、番組情報および番組データは同一伝送路で伝送されているが、受信端末104に複数の伝送路に接続する機能が備わっている場合には、それぞれを別々の伝送路で受信してもよい。
表示部316は、再生制御部308により復号されたAVデータ、テキスト、静止画といった各種メディアを、再生制御部308によって決定されたタイミングで視聴者に提示するものである。視聴者への提示は、具体的には、CRTやLCDなどに代表される映像表示デバイスと、スピーカなどの音声再生デバイスを用いて行われる。
次に、受信管理テーブル319の構成について図5を用いて説明する。図5は、受信管理テーブル319の構成を示すブロック図である。
データ受信管理テーブル319は、レイアウト情報テーブル901と、メディアテーブル902からなる。
レイアウト情報テーブル901は、優先度903、構成メディア904、および必須フラグ905の各フィールドを持つ。
優先度フィールド903には、各レイアウト情報の優先度が記載される。優先度は、どのレイアウトを優先的に採用するかを示す値である。優先度は、コンテンツをより詳細に表現できるレイアウトほど高くなっている。この優先度は、送信端末であるサーバ102より明示的もしくは暗示的に送信される場合や、受信端末104の表示のポリシーに従って決定される場合がある。
なお、優先度(フィールド)903の優先度については、サーバ102から、番組情報やパケットヘッダを用いて明示的に通知し、通知された値を使用する方法もあるし、サーバ102と受信端末104間であらかじめ定められた取り決めによって暗示的に通知する方法もある。
優先度を暗示的に通知する方法としては、例えば、番組情報に記載される順番をレイアウト情報の優先度とすることが考えられる。
記載順の早いレイアウト情報は、番組作成者が最も表現したいものであることが考えられる。よって、これにより、最も表現することが好ましいレイアウト情報も優先度を高くできる。この結果、受信端末104が、複数のレイアウト情報が再生可能な状態になったときに、最も表現することが好ましいレイアウト情報を選択できる。
また、送信間隔の長いレイアウト情報の方の優先度を高くすることも考えられる。
送信間隔が最も長いレイアウト情報は、使用する受信端末104が少ないものに対応したものであり、より情報量の多いメディアを含むものであることが考えられる。よって、これにより、より情報量の多いレイアウト情報の優先度を高くすることができる。この結果、受信端末104は、複数のレイアウト情報が再生可能な状態になったときに、より情報量の多いレイアウト情報を選択することができる。
また、サーバ102が優先度を決定するのではなく、受信端末104に「映像が含まれるレイアウト情報の優先度が最も高い」、「使用しているメディアの数が多いものが最も優先度が高い」といったポリシーを登録しておきそのポリシーに応じて再生する方法もある。
これにより、最もメディアの数が多い、もしくは、映像メディアを含む、つまり表現することが好ましいレイアウト情報の優先度を高くすることができる。この結果、受信端末104は、複数のレイアウト情報が再生可能な状態になったときに、つまり表現することが好ましいレイアウト情報を選択できる。
また、受信端末104では、再生可能なレイアウト情報のうち、最も優先度が高い(図の例では、値が小さいほど優先度が高い)レイアウト情報を優先して再生するルールとなっている。ここで、レイアウト情報が再生可能とは、そのレイアウトを構成するメディアデータの一部が再生可能な状態になることを意味する。
メディアデータが再生可能な状態とは、ストリームデータであれば、プレバッファリングが完了した状態であり、テキスト、静止画データであれば、そのメディアを構成するメディアデータ全てを受信した状態であることを意味する。
構成メディアフィールド904には、各レイアウトを構成するメディアが示される。受信端末104は、構成メディアフィールド904に記載されるメディアについてレイアウト情報を解析することで取得する。
また、番組情報中にレイアウト情報がどのメディアにより構成されているか記載されている場合には、受信端末104は番組情報から各レイアウトを構成するメディアを取得することもできる。
必須フラグ905は、そのレイアウト情報を用いて再生を行うのに、そのメディアが再生可能な状態になっていなければ成らないか否かを示すフラグである。
例えば、優先度1のレイアウト情報は、text1、image1、image2、audio1、video1から構成されるが、このレイアウトを用いて再生する際には、必須フラグ905が1になっているaudio1およびvideo1の再生が可能な状態になっていなくてはいけない。他のメディアについては、再生ができなくても、そのメディアを表示する部分を空白にしたまま再生してもよい。
必須フラグ905の情報については、レイアウト情報に格納されており、受信端末104はその情報を取得してレイアウト情報テーブル901に入力する。また、番組情報に必須フラグ905の情報が記載されている場合には番組情報から取得して入力することとしてもよい。
メディアテーブル902は、送信名(メディア名)906、優先度907、受信完了フラグ908、受信継続可能フラグ909からなる。
送信名(フィールド)906には、サーバ102から番組情報により通知されるメディアの送信名が記載される。
優先度(フィールド)907には、同一送信名で送信されるメディアが存在する場合に、どちらのメディアを優先して使用するかを示す優先度が記載される。
例えば、image1は、送信するデータとして高解像度のものと、低解像度のものが送信される。したがって、受信端末104は、高解像度のものが受信できれば、低解像度のものよりも優先して表示する必要がある。よって、高解像度のimage1の優先度は、低解像度のimage1の優先度より高くなっている。
この優先度は、サーバ102から番組情報やパケットヘッダに明示的に格納して送付してもよいし、サーバ102と受信端末104間であらかじめ定められた取り決めによって暗示的に通知してもよい。
例えば、番組情報に記載される順番が、メディアの優先度を表すこととするとか、送信間隔の長いレイアウト情報の方を優先度が高いとするとか、メディアのデータ量が大きい方が、優先度が高いものとするなどが考えられる。
また、スケーラブルなメディア(MPEG4のFGSや、MPEGのIフレームとPフレームを別々に送信するなど)の場合には、基本レイヤのみのメディアの優先度が低く、再生と基本レイヤと拡張レイヤを組み合わせたメディアの方の優先度が高くなるよう優先度(フィールド)907に記入するものとする。
受信完了フラグ(フィールド)908には、そのメディアが再生可能な状態になったことを示す受信完了フラグが記載される。ストリームデータの場合には、プレバッファリングが完了した際に受信完了フラグが1に設定される。また、静止画、テキストデータの場合には、メディアを構成する全てのメディアデータの受信を完了した際に受信完了フラグが1に設定される。
受信継続可能フラグ(フィールド)909には、そのメディアデータを継続的に受信できるかどうかを示す継続受信可能フラグが記載される。継続的に受信できるとは、パケットがある程度連続して受信できることを表している。例えば、パケットロス率がある閾値をよりも下回っている場合には継続受信可能フラグは1、上回っている場合には受信継続可能フラグは0と設定する。
受信端末104の受信制御部307は、番組情報、レイアウト情報を受信するとレイアウト情報テーブル901を更新し、番組情報、メディアを受信するとメディアテーブル902を更新する。また、更新の結果、再生すべきレイアウト情報が変化した場合には、受信端末104は、再生するレイアウト情報を変更して再生を行う。
本発明では、複数のレイアウト情報の中から、受信端末104で再生可能なものを選択して再生することで、受信可能なデータに応じた適切な番組表示を実現する。
受信端末104において適切なレイアウト情報の選択を実現するためには、受信端末104において、1)レイアウト情報の優先度、2)メディアデータの優先度、3)レイアウトを構成するメディアデータ、4)そのレイアウトを再生するのに必須となるメディアデータ、5)メディアの送信名、を何らかの形で決定する必要がある。
このため、実施の形態1では、サーバ102から受信端末104、上述した1)〜5)を番組情報により通知している。
以下、実施の形態1にかかる番組情報について図6を用いて説明する。図6は、実施の形態1における番組情報をSDP(Session Description Protocol、IETF Internet Draft RFC2327)により記述した図である。
図6に示す番組情報1800では、SDPのセッション情報部分は省略し、メディア情報の部分のみを記述している。
また、番組情報1800では、テキスト、静止画、静止画、ビデオ、オーディオ、レイアウト情報を番組データとして送信することを表している。
具体的には、番組情報1800は、1801に示すように、m=フィールドにより、ポート番号49234にRTP(Realtime Transport Protocl、IETF Internet Draft RFC1889)を用いてペイロードタイプ102でテキストを送信することを表している。
また、番組情報1800では、番組データの送信名はa=namemap:フィールドに記載されている。このフィールドは“a=namemap:<PT> <送信名>”のフォーマットになっており、<PT>は、RTPのペイロードタイプを表す。これにより、“RTPのペイロードタイプが<PT>であるメディアの送信名は<送信名>である。”という意味を表している。
また、番組情報1800には、1802で示される部分に、静止画のメディア情報が記載されている。この例では、複数の静止画を同一送信名で送信するよう記載されている(ペイロードタイプ104、105でそれぞれ送信する)。
このように、同一送信名で複数のメディアデータを送信する場合には、受信端末104でどちらのメディアデータを優先して使用するべきかをサーバ102から通知する必要がある。
この例では、“a=prioritymap:”フィールドによりそれを定義することとしている。このフィールドは、“a=prioritymap:<PT> <priority>”のフォーマットになっており、“ペイロードタイプが<PT>であるメディアの優先度は<priority>である”という意味を表している。
したがって、番組情報1800では、ペイロードタイプ104で送信されるデータは優先度が1であり、ペイロードタイプ105で送信されるデータは優先度が2であることを表している。
また、番組情報1800の1804に示される部分には、映像データを伝送することが記述されている。映像データに関しては、MPEG4のIフレーム、Pフレームを別のペイロードタイプを付与して送信するよう設定している。例えば、“a=rtpmap:106 MPEG4−ES/90000/I”の”I“の部分で、ペイロードタイプ106のメディアはIフレームのみを送信することを表している。
番組情報1800の1806に示される部分には、レイアウト情報を送信することが表されている。レイアウト情報については、1802に示されているのと同様に、a=priority:フィールドによって、レイアウト情報の優先度を付与している。また、a=mediamap:フィールドによって、レイアウト情報を構成するメディア、メディアがそのレイアウトの再生に必須であるかどうかを示している。
このフィールドのフォーマットは、“a=mediamap:<PT> <必須構成メディア> ; <必須ではない構成メディア>”というフォーマットになっている。<必須構成メディア>と<必須ではない構成メディア>はペイロードタイプにより記載される。
また、同一名により複数のデータが送信されるメディアが構成メディアとなっている場合には、そのどちらかを受信すればよいことになる。この場合には、依存メディアは、スラッシュを用いて“<PT1>/<PT2>”と表現する(“<PT1>もしくは<PT2>いずれか”を意味する)。
具体例を見ると、例えば番組情報1800の1807に示すように、“ペイロードタイプ100のレイアウト情報は、「;」の前に記述されたペイロードタイプ109のメディア(image2)を必須構成メディアとし、「;」の後に記述されたペイロードタイプ102(text1)と104もしくは105のいずれか(image1)を必須でない構成メディアとして持つ”ということを表している。
このように、番組情報1800にレイアウト情報を構成するメディアの情報を明示することにより、受信端末104側でレイアウト情報を解析せずに構成メディアの情報を知ることができ、端末の処理負荷を下げることができる。
なお、受信端末104は、レイアウト情報を構成するメディアの情報を、レイアウト情報を解析することにより検出する形態であっても良い。
また、実施の形態1は、サーバ102から受信端末104に対し、4)レイアウトを再生するのに必須となるメディアデータをレイアウト情報により通知する形態であってもよい。
次に、レイアウトを再生するのに必須となるメディアデータ通知するためのレイアウト情報について図7を用いて説明する。図7は、実施の形態1におけるレイアウト情報をSMILにより記述した図である。
図7に示すレイアウト情報1900には、1901に示す部分に、text1という送信名を持つデータを、1902に示す部分に、image1という送信名を持つデータを表示することが記述されている。
このように、レイアウト情報1900には、このレイアウトに含まれるメディアデータを記載している。
また、各タグの“display=”により、そのメディアがこのレイアウト情報の再生に必須であるかどうかを示している。具体的には、“display=”は、“mandatory”と“optional”のどちらかの値をとる。“display=”が、“mandatory”の場合には、その表示が必須であることをあらわす。また、“display=”が、“optional”はその表示が必須でないことをあらわす。
受信端末104は、この情報(“display=”)により、データ受信管理テーブル319の必須フラグ905の値を決定することができる。
このようにして、レイアウト情報に、4)そのレイアウトを再生するのに必須となるメディアデータ、を記載することにより、受信端末104に4)そのレイアウトを再生するのに必須となるメディアデータを通知することができる。
また、実施の形態1は、サーバ102から受信端末104に、1)レイアウト情報の優先度、2)メディアデータの優先度、をパケットヘッダにより通知する形態であっても良い。
以下、1)レイアウト情報の優先度、2)メディアデータの優先度、をパケットヘッダにより通知するためのフォーマットについて図8を用いて説明する。図8は、実施の形態1にかかるパケットヘッダのフォーマットを示す図である。
図8に示すパケットヘッダ2000は、データパケットをRTPにより送信する場合の例である。
パケットヘッダ2000の2001で記される部分の記述は、RTPの標準の範囲内であるので、説明は省略する。
また、パケットヘッダ2000の2002で記される部分の記述は、RTPを拡張する際のフォーマットである。
具体的には、lengthは拡張フィールド(2002で記される部分)の長さをバイト単位で入力するフィールドである。priorityは、そのメディアの優先度を入力するフィールドであり、このフィールドを用いて、レイアウト情報、メディアの優先度を付与する。また、reservedは予約であり、使用しない。
このようにパケットヘッダ2000を記述することにより、受信端末104は、パケットヘッダ2000を解析することにより、1)レイアウト情報の優先度、2)メディアデータの優先度を認識することができる。
また、レイアウト情報の使用の優先度を通知する方法として、先に述べたように、番組情報に複数のレイアウト情報を記述して、対応する優先度を記述する方法以外にも、番組情報自体を複数送信し、番組情報自体に優先度を付与することで、レイアウト情報の使用の優先度を通知する方法もある。
以下、番組情報自体を複数送信し、番組情報自体に優先度を付与するための番組情報について図9を用いて説明する。図9は、実施の形態1における番組情報をSDPにより送信する場合の例を説明するための図である。
この例では、先ほどの例とは異なり、ひとつの番組に対して番組情報を複数送信することを想定しており、番組情報2101、2102をそれぞれ個別に送信する。
また、各番組情報には図6の例とは異なり、レイアウト情報をひとつしか記述していない。具体的には、2105および2106に示す部分が、レイアウト情報に関する情報を記述したフィールドである。
このように、番組情報とレイアウト情報を1対1対応させることで、番組情報に付与された優先度がレイアウト情報の使用の優先度を表すようにできる。
番組情報の優先度は、セッション情報を入力するフィールドにおいて、2103および2104に示されるように、“a=priority:”フィールドを挿入することで、番組情報の優先度を表している。
このフィールドは、“a=priority:<優先度>”のフォーマットになっており、“この番組情報の優先度は<優先度>である”という意味になる。
以上のようなデータ1800、1900、2000、2101および2102を用いて、受信端末104は、1)レイアウト情報の優先度、2)メディアデータの優先度、3)レイアウトを構成するメディアデータ、4)そのレイアウトを再生するのに必須となるメディアデータ、5)メディアの送信名、を決定できる。
次に、サーバ102の動作について図10を用いて説明する。図10は実施の形態1におけるサーバ102の動作を示すフローチャートである。
サーバ102は、起動すると、番組放送管理部314において、まず処理しようとする番組に対応する番組テーブル301aの送信開始・終了時刻405を読み込み、記憶する(ステップ501)。
その後、番組放送管理部314は、送信開始時刻もしくは終了時刻がくるまで待つ(ステップ502)。そして、番組放送管理部314は、ある番組の送信開始時刻になった際に(ステップ503)、その番組の番組テーブル301aのメディア情報402を抽出し、送信するデータの情報を記憶する(ステップ504)。
続いて、サーバ102の番組情報生成部312は、番組放送管理部314が記憶したメディア情報402のファイル名407を参照し、メディア情報402に含まれるメディアデータおよびレイアウト情報にそれぞれ送信チャンネルを割り当てることにより(ステップ505)、番組情報を生成し、伝送部305を介して受信端末104へ送信する(ステップ506)。
次に、番組放送管理部314が、送出制御部304に対してステップ506において送信した番組情報に含まれる各メディアデータおよび各レイアウト情報のデータ送信処理(メディア送信処理)の開始を指示し、送出制御部304がメディア送信処理を開始する(ステップ507)。なお、メディア送信処理の詳細については後述する。
また、番組放送管理部314は、送信終了時刻がくると(ステップ503)、送出制御部304に該当番組のメディア送信処理の終了を指示する。そして、送出制御部304は、該当番組に含まれる各メディアデータおよび各レイアウト情報の送信を終了(停止)する(ステップ508)。次に、番組放送管理部314は、該当番組の番組情報の送信処理を停止する(ステップ509)。
次に、サーバ102のメディア送信処理について図11を用いて説明する。図11は、実施の形態1にかかるサーバ102のメディア送信処理のフローチャートである。
メディア送信処理は、各メディアデータに対して行われる。
まず、送出制御部304は、データ管理部301の番組テーブル301aのメディア情報402を参照し、番組に含まれるファイル名407を抽出する。そして、送出制御部304は、抽出したファイル名407に対応するメディアデータおよびレイアウト情報をレイアウト情報格納部301b、AV情報格納部301c、静止画格納部301d、テキスト格納部301eから読み込む(ステップ601)。
次に、送出制御部304は、読み込んだメディアデータおよびレイアウト情報を分割し、伝送部305に送る。
次に、伝送部305は、送られてきたデータをデータごとにパケットヘッダを付与してパケット化する(ステップ602)。
その後、伝送部305は、送出制御部304から、生成したパケットの受信端末104への送出停止指示があるまで定期的にパケットを繰り返し送信し(ステップ604)、その後、送出制御部304から送信停止指示があれば(ステップ605)、データ送信処理を終了する。
このようにして、サーバ102は、メディアデータおよびレイアウト情報を受信端末104に送信する。
次に、受信端末104の動作について図12を用いて説明する。図12は、実施の形態1における受信端末104の動作を説明する図である。
まず、受信端末104が起動すると、伝送部315があらかじめ定められた番組情報受信用のチャンネルをオープンする(ステップ1001)。
続いて、受信端末104は、後述する受信制御部307による受信処理を起動し(ステップ1002)、後述する受信データ管理部318によるテーブル管理処理を起動する(ステップ1003)。
そして、受信端末104の各処理部は、端末制御部310から終了指示があるまで待つ(ステップ1004)。
そして、終了指示がくると、伝送部315は番組情報受信チャンネルを閉じ(ステップ1005)、受信制御部307は受信処理を停止し(ステップ1006)、受信データ管理部318はテーブル管理処理を停止する(ステップ1007)。
このように、受信端末104は、動作を開始し、動作を終了する。
次に、受信端末104の受信処理について図13を用いて説明する。図13は、受信端末104の受信処理のフローチャートである。
受信処理は、番組情報、番組データを受信したときの動作およびユーザが番組を選択したときの処理である。
まず、受信端末104の受信制御部307は、ユーザが番組を選択したかどうかを判定し(ステップ1101)、番組を選択した場合には、後述する番組選択処理を行う(ステップ1102)。
ユーザが番組を選択していない場合には、続いて、受信制御部307は、端末制御部310より終了指示を受けているかどうかを判定し(ステップ1120)、終了指示を受けている場合には受信処理を終了する。
終了指示を受けていない場合には、続いて、伝送部315が、番組情報および番組データなどのデータを受信し、受信制御部307に送る(ステップ1103)。
そして、受信制御部307は、受信データが番組データであるかどうかを判定する(ステップ1104)。
受信したデータが番組データでなければ、受信制御部307は、受信したデータが番組情報であるかどうかを判定する(ステップ1105)。
受信したデータが番組情報である場合には、受信制御部307は、番組選択部317に対して、番組のタイトルの取得を指示する。これに対して、番組選択部317が番組のタイトルを取得する(ステップ1106)。そして、番組選択部317は、番組タイトルをユーザに提示して(ステップ1107)、ステップ1101に戻る。
また、ステップ1104において、受信したデータが番組データであった場合には、受信制御部307は、レイアウト情報であるかどうかを判定し(ステップ1108)、レイアウト情報であった場合には、後述するレイアウト情報受信処理を行って(ステップ1109)、ステップ1101に戻る。
また、ステップ1108において、受信したデータがレイアウト情報でなければ、受信制御部307は、AVデータであるかどうかを判定する(ステップ1110)。そして受信したデータがAVデータである場合には、受信制御部307は、後述するAVデータ受信処理を行って(ステップ1111)、ステップ1101に戻る。
また、ステップ1111において、受信したデータがAVデータでなかった場合には、受信制御部307は、受信したデータがテキスト・静止画データであるかどうかを判定し(ステップ1112)、テキスト、静止画データであった場合には、テキスト・静止画データ受信処理を行って(ステップ1113)、ステップ1101に戻る。
このように、受信端末104は、受信処理を行う。
次に、受信端末104の番組選択処理について図14を用いて説明する。図14は、受信端末104の番組選択処理を説明する図である。番組選択処理は、図13に示すステップ1102の処理である。
番組選択処理では、まず、受信制御部307が、現在受信端末104において他の番組再生中であるかどうかを判定する(ステップ1201)。
他の番組再生中でない場合には、受信制御部307は、今回受信しようとする番組情報のメディア情報から、レイアウト情報テーブル901とメディアテーブル902を作成する(ステップ1205)。
続いて、受信制御部307は、伝送部315に対して番組の受信チャンネルを開くという指示をし、伝送部315が番組の受信チャンネルを開き(ステップ1206)、処理を終了する。
一方、ST1201において番組再生中である場合には、今回受信した番組の処理を行うために、受信制御部307は、再生中の番組の受信チャンネルを閉じ(ステップ1202)、現在再生している番組の再生を停止し(ステップ1203)、受信データ管理テーブル319に格納している情報を削除する(ステップ1204)。そして、受信制御部307は、ステップ1205の処理に移行する。
このようにして、受信端末104は、番組選択処理を行う。
次に、受信端末104のレイアウト情報受信処理について図15を用いて説明する。図15は、受信端末104のレイアウト情報受信処理を示す図である。この処理は、図13に示すステップ1109の処理である。
まず、サーバ102からデータが分割・パケット化されて送信されてくるので、受信制御部307は、分割された全てのデータがそろったかどうかを確認する(ステップ1301)。
分割されたデータが全てそろっていなければ、受信制御部307は、データをバッファ320に保存して戻る(ステップ1302)。
一方、データが全てそろった場合には、受信制御部307は、バッファ320に格納されたデータを読み出してレイアウト情報を構成し、レイアウト情報を構成するメディアを解析する(ステップ1303)。
続いて、受信制御部307は、各構成メディアの必須フラグを取得する(ステップ1304)。次に、受信制御部307は、レイアウト情報テーブル901に、優先度903、構成メディア904、必須フラグ905を入力し(ステップ1305)、このレイアウト情報テーブル901を保存して処理を終了する(ステップ1306)。
このようにして、受信制御部307は、レイアウト情報テーブル901を作成する。
次に、受信端末104のAVデータ受信処理について図16を用いて説明する。図16は、実施の形態1における受信端末104のAVデータ受信処理を表すフローチャートである。AVデータ受信処理は図13に示すステップ1111の処理である。
まず、受信制御部307は、受信したデータが、その番組を受信してから始めて受信したAVデータであるかどうかを判定する(ステップ1401)。
そして、初めて受信したデータである場合には、受信制御部307は、プレバッファリング処理を開始する(ステップ1402)。
プレバッファリング処理とは、AVデータを受信してから一定時間再生を行わずにデータを保存する処理である。その後、ステップ1406の処理に進む。
一方、ステップ1401において、受信したデータが初めて受信したAVデータでなければ、受信制御部307は、プレバッファリングが完了したかどうかを判定し(ステップ1403)、プレバッファリングが完了していなければ、ステップ1406の処理に進む。
また、ステップ1403において、プレバッファリングが完了した場合には、受信制御部307は、メディアテーブル902にそのメディアの優先度を入力し(優先度の情報は、明示的に通知される場合には、番組情報もしくはパケットヘッダにより通知されるので、その情報を入力する)(ステップ1404)、メディアテーブル902の該当する受信完了フラグを1にセットする(ステップ1405)。
続いて、受信制御部307は、後述する継続受信可能判定処理を行って(ステップ1406)、受信したデータをバッファ320に格納してAVデータ受信処理を終了する(ステップ1407)。
このようにして、受信制御部307は、AVデータ受信処理を行う。
次に、受信端末104のテキスト・静止画データ受信処理について図17を用いて説明する。図17は、テキスト・静止画データ受信処理を表すフローチャートである。テキスト・静止画データ受信処理は、図13に示すステップ1113の処理である。
まず、受信制御部307は、サーバ102から送られてくるデータが分割・パケット化されて送信されてくるので、分割された全てのデータがそろったかどうかを確認する(ステップ1501)。
分割されたデータが全てそろっていなければ、受信制御部307は、データをバッファ320に保存してステップ1506の処理に進む。
データが全てそろった場合には、受信制御部307は、バッファ320に格納されたメディアデータを読み出してメディアを構成する。そして、受信制御部307は、メディアテーブル902の該当欄に優先度を入力し(優先度の情報は、明示的に通知される場合には、番組情報もしくはパケットヘッダにより通知されるので、その情報を入力する)(ステップ1503)。次に、受信制御部307は、メディアテーブル902の該当する受信完了フラグを1にセットする(ステップ1504)。
そして、受信制御部307は、メディアデータであるテキスト・静止画データをバッファ320に保存する(ステップ1505)。
その後、受信制御部307は、後述する継続受信可能判定処理を行い(ステップ1506)、処理を終了する。
このようにして、受信制御部307は、テキスト・静止画データ受信処理を行う。
次に、受信端末104の継続受信可能判定処理について図18を用いて説明する。図18は、実施の形態1における受信端末104の継続受信可能判定処理を表すフローチャートである。この処理は、図16のステップ1406および図17のステップ1506の処理である。
まず、受信制御部307は、そのメディアデータのパケットロス率Lを計算する(ステップ1601)。
パケットロス率の計算は、過去に受信したパケットの履歴から計算可能である。パケットロスは、パケットにシーケンス番号を付与しておき、その欠落で検出することができる。パケットロス率の計算は、例えば、L=(過去5秒間にロスしたパケットの数)/((最近受信したパケットのシーケンス番号)−(5秒前に受信したパケットのシーケンス番号))といった式から計算が可能である。
続いて、受信制御部307は、パケットロス率Lが閾値L1(あらかじめ設定する固定値)よりも大きいかどうかを判定し(ステップ1602)、大きい場合には、継続的に受信することが困難であると判定して、該当メディアの継続受信フラグ909を0にセットする(ステップ1603)。
続いて、受信制御部307は、パケットロス率Lと閾値L2(あらかじめ設定する固定値であり、L1より小さい値)よりも小さいかどうかを判定し(ステップ1604)、小さい場合には、継続的にパケットが受信できると判定し、該当メディアの継続受信可能フラグ909を1にセットし、処理を終了する(ステップ1605)。
このように、受信端末104は、継続受信フラグ909をセットし、継続受信フラグ909が1になっているときにメディアの再生が可能であると判定することにより、ゾーンの境界に位置する受信端末104が不安定な再生になることを防ぐことができる。
次に、受信端末104のテーブル管理処理について図19を用いて説明する。図19は、実施の形態1における受信端末104のテーブル管理処理の動作を説明するフローチャートである。
テーブル管理処理では、受信データ管理部318は、受信データ管理テーブル319の内容が更新されるまで待つ(ステップ1701)。
そして、受信データ管理テーブル319の内容が更新されると、受信データ管理部318は、まず、レイアウト情報テープル901を参照し、最も優先度903の高い、つまり最も詳細にデータを表示できるレイアウト情報を選択し、処理の対象とする(ステップ1702)。
続いて、受信データ管理部318は、処理対象としたレイアウト情報の構成メディアをレイアウト情報テーブル901より取得し(ステップ1703)、構成メディアごとに以下の再生可能判定処理を行う。
受信データ管理部318は、処理対象としたレイアウト情報の個々の構成メディアを構成メディア1〜Nとあらわす。ただし、Nは構成メディアの数である。
受信データ管理部318は、メディアテーブル902から構成メディアiの情報を参照し(ステップ1704)、構成メディアiが複数の優先度を持っている場合には、構成メディアiの中で最も優先度の高いものを選択して以下の処理を行う(ステップ1705)。
まず、受信データ管理部318は、ステップ1705で選択したメディアの受信完了フラグおよび継続受信可能フラグが1であるか確認する(ステップ1706、ステップ1707)。
そして、受信完了フラグおよび継続受信可能フラグがともに1の場合には、受信データ管理部318は、そのメディアを再生可能であると判定し、次のメディア(構成メディアi+1)について(ステップ1708)、ステップ1705に戻って処理を続ける。
このように、メディアの伝送路上でのロス率に基づいた継続受信可能フラグが1、つまりメディアが継続的に再生できるときにのみ、再生を行うことができ、パケットロスの多い劣化した情報を表示することがなくなる。
そして、受信データ管理部318は、N個のメディアについて全て再生可能判定処理を行う(ステップ1709)。
次に、受信データ管理部318は、ひとつ以上のメディアが再生可能であったかどうかを判定し(ステップ1710)、ひとつ以上のメディアが再生可能であった場合には、選択されたレイアウト情報に基づいて、再生を開始する(ステップ1711)。
そして、受信データ管理部318は、端末制御部310から終了指示がない場合は(ステップ1717)、ステップ1701の処理に戻り、終了指示が合った場合は、処理を終了する。
一方、ステップ1710において、再生判定処理を行った結果、1つも再生可能なメディアが存在しなかった場合には、受信データ管理部318は、このレイアウト情報が再生できないと判定し、ステップ1712へ進む。
ステップ1712では、受信データ管理部318は、現在処理対象としているレイアウト情報よりも優先度の低いレイアウト情報があるか、つまり他のレイアウト情報があるか判定する。
そして、優先度の低いレイアウト情報がある場合には、受信データ管理部318は、現在処理対象としているレイアウト情報の次に優先度が高いものを選択して(ステップ1713)、ステップ1703の処理に進む。
一方、ステップ1712において優先度の低いレイアウト情報が存在しない場合には、再生できるレイアウトがないということなので、ステップ1701へ進み、受信データ管理テーブル319の更新を待つ。
また、ステップ1706もしくはステップ1707において、受信完了フラグおよび継続受信可能フラグのどちらかが0である場合には、ステップ1705において選択したメディアが再生できないと判断できる。よって、受信データ管理部318は、再生できるメディアを検出するために、構成メディアiの中でより優先度の低いものがあるかどうかを判定する(ステップ1714)。
そして、優先度がより低いものがある場合には、受信データ管理部318は、次に優先度が低いものを選択して(ステップ1715)、ステップ1706の処理へ進む。
一方、ステップ1713において、より優先度の低いメディアが存在しない場合には、受信データ管理部318は、そのメディアの必須フラグ905を確認し(ステップ1716)、必須フラグが0の場合には、そのメディアデータは必ずしも再生される必要がないため、次のメディアの再生可能判定に移る。
一方、必須フラグが1の場合には、受信データ管理部318は、再生が必須となるメディアの再生ができないため、このレイアウトは再生できないと判断され、ステップ1712へ進む。
このように、受信端末104は、必須フラグを参照することにより、一部のメディアデータが再生できない状態で、そのレイアウト情報を再生するべきか否かを決定することができる。
このように、受信端末104は、テーブル管理処理を行う。
以上説明したように、実施の形態1によれば、受信端末104が受信できたメディアデータに適したレイアウト情報を選択し、選択したレイアウト情報を用いて受信したメディアデータを表示できる。例えば、受信端末104が、テキスト、静止画のみを受信したときには、テキスト、静止画のみの場合に適したレイアウティングを行って表示し、映像、音声、静止画、テキストを受信できる場合には、これらのメディアに適したレイアウティングを行って表示できる。つまり、受信端末104が、伝送された映像、音声、静止画、テキストなどさまざまなメディアからなるコンテンツを表示する場合に、受信可能なメディアデータに適した形態でコンテンツを表示できる。
また、実施の形態1によれば、複数のレイアウト情報が再生可能な状態になったときに、優先度を用いていずれのレイアウト情報を選択すべきか決定することができる。
なお、実施の形態1におけるサーバ102および受信端末104の動作をプログラムにし、記憶媒体に格納し、汎用のコンピュータに実行させる形態であっても良い。
(実施の形態2)
本発明の実施の形態2では、放送型ではなく、通信型でコンテンツを配信する場合における実施の形態を示す。
通信型の場合では、受信端末よりコンテンツ(放送の場合における、番組データと同じもの)の配信要求を送信する点と、コンテンツの詳細な情報(放送の場合における、番組情報)の取得方法が放送型と異なる。コンテンツの配信方法に関しては、放送の場合と同等である。
実施の形態2においては、対象とする通信網の利用形態は、図1に示すものと同等である。
以下、実施の形態2について図面を用いて詳細に説明する。まず、実施の形態2にかかるメディア配信システムについて図20を用いて説明する。図20は、実施の形態2におけるコンテンツシステムの全体像を表すブロック図である。図20は、図3と比較して、サーバ2206に番組放送管理部314の代わりにコンテンツ配信管理部2204を配置し、受信端末2211に番組選択部317の代わりにコンテンツ選択部2207を配置した点が異なる。その他の部分については、同一であるので、同じ符号を付与し詳細な説明を省略する。
コンテンツ配信管理部2204は、受信端末2211からのコンテンツ配信要求を受信して、コンテンツの配信を管理する手段である。コンテンツ配信の制御は、HTTPや、RTSPといったプロトコルにより行われる。
コンテンツ選択部2207は、ユーザにURLを入力させるインターフェースを持ち、ユーザにより入力されるURLに従って、レイアウト情報を取得する機能を有する。このとき、コンテンツ選択部2207は複数のレイアウト情報を取得するものとする。
また、コンテンツ選択部2207は、レイアウト情報に記載されるURLに基づいて、HTTPやRTSPを用いてコンテンツを取得する機能を有する。このとき、コンテンツ選択部2207は、取得したレイアウト情報に基づいて複数のレイアウト情報に記載する全てのメディアを取得するよう要求する。
次に、実施の形態2にかかる受信端末2211の動作について図21を用いて説明する。図21は、実施の形態2における受信端末2211の動作を示すフローチャートである。
まず、受信端末2211は、コンテンツ選択部2207において、ユーザにより入力されたレイアウト情報のURLを取得する(ステップ2300)。
続いて、受信制御部307が、ステップ2300において取得したURLに基づいてレイアウト情報を、伝送部315を介してサーバ2206から取得する(ステップ2301)。
このとき、受信制御部307は、複数のレイアウト情報を取得するものとし、レイアウト情報の優先度は、レイアウト情報自身に記載されているものとする。
続いて、受信制御部307は、各レイアウト情報に記載されるメディアのURLを取得し(ステップ2302)、そのURLに基づいてメディアの送信リクエストを伝送部315に送信する。そして、伝送部315がサーバ2206に対してメディアの送信リクエストをする(ステップ2303)。
続いて、伝送部315を介してサーバ2206から各メディアデータが送信されてくるので、受信データ管理部318は、受信できるメディアデータに基づいて、レイアウトを選択し(ステップ2304)、再生する(ステップ2305)。
なお、レイアウト情報の選択方法に関しては、実施の形態1に述べられるとおりである。
その後、ユーザによる再生停止指示により、再生制御部308が再生を停止して終了する(ステップ2306)。
以上説明したように実施の形態2によれば、実施の形態1にかかるメディア配信システムを、通信型に適用したシステムを実現できる。