(57)【要約】【課題】ネットワークに不具合が生じ、その不具合が回復した場合、続きからストリーミング配信できるようにする。【解決手段】再生位置情報受信部５１は、送信コントロール部５２に対し、ユーザ端末から受信した再生位置情報を供給するとともに、タイムアウト内にパケットを受信することができなかった場合、ネットワーク不具合を通知する。送信コントロール部５２は、供給された再生位置情報をメモリ５３に記録し、ネットワーク不具合が通知された場合、データ送信モジュール５４を制御してストリーミング配信を一時停止させる。再び再生位置情報が供給された場合、送信コントロール部５２は、ネットワークが回復したと判断し、いま供給された再生位置情報を破棄し、メモリ５３に記録されている再生位置情報に基づいて、続きからストリーミングデータを配信させるようにデータ送信モジュール５４を制御する。本発明は、ストリーミング配信に適用できる。【選択図】　　　図４
2004007172.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して、情報配信装置から情報端末装置にデータを配信する情報配信システムにおいて、
前記情報配信装置は、
前記データを前記情報端末装置に配信する配信手段と、
前記情報端末装置から送信されてくる情報を受信する受信手段、
前記受信手段により受信された前記情報に含まれる再生位置情報を記録する
記録手段と、
前記受信手段が前記情報を受信することができなかった場合、前記データの
配信を停止する停止手段と
を備え、
前記情報端末装置は、
前記情報配信装置から配信されてくる前記データを受信する受信手段と、
前記受信手段により受信された前記データを再生する再生手段と、
前記再生手段により再生されている前記データから前記再生位置情報を取得
し、所定期間毎に前記情報配信装置に送信する送信手段と
を備えることを特徴とする情報配信システム。
【請求項２】
ネットワークを介して、情報端末装置にデータを配信する情報配信装置において、
前記データを前記情報端末装置に配信する配信手段と、
前記情報端末装置から所定期間毎に送信されてくる情報を受信する受信手段と、
前記受信手段により受信された前記情報に含まれる再生位置情報を記録する記録手段と、
前記受信手段が前記情報を受信することができなかった場合、前記データの配信を停止する停止手段と
を備えることを特徴とする情報配信装置。
【請求項３】
前記受信手段が前記情報を再び受信することができた場合、前記配信手段は、前記記録手段に記録されている前記再生位置情報に基づいて、前記データを配信する
ことを特徴とする請求項２に記載の情報配信装置。
【請求項４】
ネットワークを介して、情報端末装置にデータを配信する情報配信装置の情報配信方法において、
前記データの前記情報端末装置への配信を制御する配信制御ステップと、
前記情報端末装置から所定期間毎に送信されてくる情報の受信を制御する受信制御ステップと、
前記受信制御ステップの処理により受信が制御された前記情報に含まれる再生位置情報の記録を制御する記録制御ステップと、
前記受信制御ステップの処理が前記情報を受信することができなかった場合、前記データの配信を停止する停止ステップと
を含むことを特徴とする情報配信方法。
【請求項５】
ネットワークを介して、情報端末装置にデータを配信する情報配信装置を制御するプログラムであって、
前記データの前記情報端末装置への配信を制御する配信制御ステップと、
前記情報端末装置から所定期間毎に送信されてくる情報の受信を制御する受信制御ステップと、
前記受信制御ステップの処理により受信が制御された前記情報に含まれる再生位置情報の記録を制御する記録制御ステップと、
前記受信制御ステップの処理が前記情報を受信することができなかった場合、前記データの配信を停止する停止ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
【請求項６】
ネットワークを介して、情報端末装置にデータを配信する情報配信装置を制御するコンピュータに、
前記データの前記情報端末装置への配信を制御する配信制御ステップと、
前記情報端末装置から所定期間毎に送信されてくる情報の受信を制御する受信制御ステップと、
前記受信制御ステップの処理により受信が制御された前記情報に含まれる再生位置情報の記録を制御する記録制御ステップと、
前記受信制御ステップの処理が前記情報を受信することができなかった場合、前記データの配信を停止する停止ステップと
を実行させる。
【請求項７】
ネットワークを介して、情報配信装置からデータを受信する情報端末装置において、
前記情報配信装置から配信されてくる前記データを受信する受信手段と、
前記受信手段により受信された前記データを再生する再生手段と、
前記再生手段により再生されている前記データから再生位置情報を取得し、所定期間毎に前記情報配信装置に送信する送信手段と
を備えることを特徴とする情報端末装置。
【請求項８】
前記送信手段は、前記データの受信状況に関わらず、前記再生位置情報を前記情報配信装置に送信する
ことを特徴とする請求項７に記載の情報端末装置。
【請求項９】
ネットワークを介して、情報配信装置からデータを受信する情報端末装置の情報処理方法において、
前記情報配信装置から配信されてくる前記データの受信を制御する受信制御ステップと、
前記受信制御ステップの処理により受信が制御された前記データを再生する再生ステップと、
前記再生ステップの処理により再生されている前記データから再生位置情報を取得し、所定期間毎に前記情報配信装置への送信を制御する送信制御ステップと
を含むことを特徴とする情報処理方法。
【請求項１０】
ネットワークを介して、情報配信装置からデータを受信する情報端末装置を制御するプログラムであって、
前記情報配信装置から配信されてくる前記データの受信を制御する受信制御ステップと、
前記受信制御ステップの処理により受信が制御された前記データを再生する再生ステップと、
前記再生ステップの処理により再生されている前記データから再生位置情報を取得し、所定期間毎に前記情報配信装置への送信を制御する送信制御ステップとを含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
【請求項１１】
ネットワークを介して、情報配信装置からデータを受信する情報端末装置を制御するコンピュータに、
前記情報配信装置から配信されてくる前記データの受信を制御する受信制御ステップと、
前記受信制御ステップの処理により受信が制御された前記データを再生する再生ステップと、
前記再生ステップの処理により再生されている前記データから再生位置情報を取得し、所定期間毎に前記情報配信装置への送信を制御する送信制御ステップとを実行させる。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報配信システム、情報配信装置および方法、情報端末装置および情報処理方法、記録媒体、並びにプログラムに関し、特に、例えば、ストリーミング配信中にネットワークに不具合が生じ、そのネットワークの回復後、不具合が生じた位置から続けて配信することができるようにした情報配信システム、情報配信装置および方法、情報端末装置および情報処理方法、記録媒体、並びにプログラムに関する。
【０００２】
【従来の技術】
近年、インターネットなどのネットワークインフラの普及に伴い、例えば、携帯電話機などの携帯型情報端末を用いて、様々な場所からネットワークにアクセスすることが可能になりつつある。
【０００３】
例えば、ユーザは、外出先において、携帯電話機を用いて、ネットワークを介してストリーミング配信サーバにアクセスし、音声や動画像などのデータを取得しながら、リアルタイムに再生させることができる。
【０００４】
【発明が解決しようとする課題】
しかしながら、モバイル状況での常時接続性という観点では、例えば、電車で移動中にトンネルに入った場合などといったように、依然としてネットワークにアクセスできない場所が多く、移動中において絶えずネットワークにアクセスしていることは難しかった。
【０００５】
また、動画像データをストリーミングで視聴している途中でネットワークにアクセスできない状況になった場合、その間のデータ（シーン）を見逃してしまうことになり、ユーザは、ユーザインターフェースを操作して（例えば、少し前の映像から再生するようにプレイヤのスライダバーを移動させて）、ストリーミング配信サーバに対し、中断された再生位置からのデータ配信を要求しなければならなかった。
【０００６】
本発明はこのような状況に鑑みてなされたものであり、端末から所定期間毎に送信されてくる再生位置を記録しておくことにより、ネットワークに不具合が生じ、そのネットワーク回復後、記録してある再生位置からデータを続けて配信することができるようにするものである。
【０００７】
【課題を解決するための手段】
本発明の情報配信システムは、情報配信装置が、データを情報端末装置に配信する配信手段と、情報端末装置から送信されてくる情報を受信する受信手段と、受信手段により受信された情報に含まれる再生位置情報を記録する記録手段と、受信手段が情報を受信することができなかった場合、データの配信を停止する停止手段とを備え、情報端末装置が、情報配信装置から配信されてくるデータを受信する受信手段と、受信手段により受信されたデータを再生する再生手段と、再生手段により再生されているデータから再生位置情報を取得し、所定期間毎に情報配信装置に送信する送信手段とを備えることを特徴とする。
【０００８】
本発明の情報配信装置は、データを情報端末装置に配信する配信手段と、情報端末装置から所定期間毎に送信されてくる情報を受信する受信手段と、受信手段により受信された情報に含まれる再生位置情報を記録する記録手段と、受信手段が情報を受信することができなかった場合、データの配信を停止する停止手段とを備えることを特徴とする。
【０００９】
受信手段が情報を再び受信することができた場合、配信手段には、記録手段に記録されている再生位置情報に基づいて、データを配信させるようにすることができる。
【００１０】
本発明の情報配信方法は、データの情報端末装置への配信を制御する配信制御ステップと、情報端末装置から所定期間毎に送信されてくる情報の受信を制御する受信制御ステップと、受信制御ステップの処理により受信が制御された情報に含まれる再生位置情報の記録を制御する記録制御ステップと、受信制御ステップの処理が情報を受信することができなかった場合、データの配信を停止する停止ステップとを含むことを特徴とする。
【００１１】
本発明の第１の記録媒体に記録されているプログラムは、データの情報端末装置への配信を制御する配信制御ステップと、情報端末装置から所定期間毎に送信されてくる情報の受信を制御する受信制御ステップと、受信制御ステップの処理により受信が制御された情報に含まれる再生位置情報の記録を制御する記録制御ステップと、受信制御ステップの処理が情報を受信することができなかった場合、データの配信を停止する停止ステップとを含むことを特徴とする。
【００１２】
本発明の第１のプログラムは、データの情報端末装置への配信を制御する配信制御ステップと、情報端末装置から所定期間毎に送信されてくる情報の受信を制御する受信制御ステップと、受信制御ステップの処理により受信が制御された情報に含まれる再生位置情報の記録を制御する記録制御ステップと、受信制御ステップの処理が情報を受信することができなかった場合、データの配信を停止する停止ステップとをコンピュータに実行させる。
【００１３】
本発明の情報端末装置は、情報配信装置から配信されてくるデータを受信する受信手段と、受信手段により受信されたデータを再生する再生手段と、再生手段により再生されているデータから再生位置情報を取得し、所定期間毎に情報配信装置に送信する送信手段とを備えることを特徴とする。
【００１４】
送信手段には、データの受信状況に関わらず、再生位置情報を情報配信装置に送信させるようにすることができる。
【００１５】
本発明の情報処理方法は、情報配信装置から配信されてくるデータの受信を制御する受信制御ステップと、受信制御ステップの処理により受信が制御されたデータを再生する再生ステップと、再生ステップの処理により再生されているデータから再生位置情報を取得し、所定期間毎に情報配信装置への送信を制御する送信制御ステップとを含むことを特徴とする。
【００１６】
本発明の第２の記録媒体に記録されているプログラムは、情報配信装置から配信されてくるデータの受信を制御する受信制御ステップと、受信制御ステップの処理により受信が制御されたデータを再生する再生ステップと、再生ステップの処理により再生されているデータから再生位置情報を取得し、所定期間毎に情報配信装置への送信を制御する送信制御ステップとを含むことを特徴とする。
【００１７】
本発明の第２のプログラムは、情報配信装置から配信されてくるデータの受信を制御する受信制御ステップと、受信制御ステップの処理により受信が制御されたデータを再生する再生ステップと、再生ステップの処理により再生されているデータから再生位置情報を取得し、所定期間毎に情報配信装置への送信を制御する送信制御ステップとをコンピュータに実行させる。
【００１８】
本発明の情報配信システムにおいては、情報配信装置で、データが情報端末装置に配信され、情報端末装置から送信されてくる情報が受信され、受信された情報に含まれる再生位置情報が記録され、情報を受信することができなかった場合、データの配信が停止され、情報端末装置で、情報配信装置から配信されてくるデータが受信されて再生され、再生データから再生位置情報が取得されて所定期間毎に情報配信装置に送信される。
【００１９】
本発明の情報配信装置および方法、並びに第１のプログラムにおいては、データが情報端末装置に配信され、情報端末装置から所定期間毎に送信されてくる情報が受信され、受信された情報に含まれる再生位置情報が記録され、情報を受信することができなかった場合、データの配信が停止される。
【００２０】
本発明の情報端末装置および情報処理方法、並びに第２のプログラムにおいては、情報配信装置から配信されてくるデータが受信されて再生され、再生データから再生位置情報が取得されて所定期間毎に情報配信装置に送信される。
【００２１】
【発明の実施の形態】
以下、図を参照して、本発明の実施の形態について説明する。
【００２２】
図１は、本発明を適用したストリーミング配信システムの構成例を示す図である。このストリーミング配信システムにおいては、インターネットなどのネットワーク２に、ストリーミング配信サーバ１およびユーザ端末装置３が接続されている。
【００２３】
ストリーミング配信サーバ１は、コンピュータであって、そのＣＰＵ（Ｃｅｎｔｒａｌ　ＰｒｏｃｅｓｓｉｎｇＵｎｉｔ）１１（図２）がストリーミング配信プログラムに基づいて、ストリーミングデータの配信処理を実行する。例えば、ストリーミング配信サーバ１は、ハードディスクドライブ（ＨＤＤ）１９に様々なメディアデータを記憶させ、ユーザ端末装置３からネットワーク２を介して所定のメディアデータのストリーミング配信が要求された場合、対応するメディアデータを読み出し、ストリーミング配信を行うためのＲＴＰ（Ｒｅａｌ−Ｔｉｍｅ　Ｔｒａｎｓｐｏｒｔ　Ｐｒｏｔｏｃｏｌ）規格に準拠するようなＲＴＰパケットを生成し、ネットワーク２を介して配信する。
【００２４】
またストリーミング配信サーバ１は、所定期間毎に、ネットワーク２を介してユーザ端末装置３から送信されてくるパケットを受信し、そのパケットに含まれる再生位置情報（後述）を記録する。ストリーミング配信サーバ１は、タイムアウト時間内にユーザ端末装置３からパケットを受信することができなかった場合、ネットワーク２に不具合が発生したと判断し、ストリーミング配信を停止する。
【００２５】
さらにストリーミング配信サーバ１は、ユーザ端末装置３から、再びパケット受信することができた場合、ネットワーク２が回復したと判断し、記録している再生位置情報に基づいて、続きからストリーミング配信する。
【００２６】
ユーザ端末装置３は、例えば、デジタル携帯電話機、ＰＤＡ（Ｐｅｒｓｏｎａｌ　Ｄｉｇｉｔａｌ　Ａｓｓｉｓｔａｎｔ）、あるいはノートブック型パーソナルコンピュータなどにより構成され、ネットワーク２を介してストリーミング配信サーバ１にアクセスし、ストリーミングデータの配信を要求し、その要求に基づいて配信されてくるストリーミングデータを受信する。ユーザ端末装置３は、受信したストリーミングデータを再生し、ユーザに視聴させる。
【００２７】
またユーザ端末装置３は、受信したストリーミングデータの再生位置に関する情報（再生位置情報）を所定のパケットに埋め込み、所定期間毎に、ネットワーク２を介してストリーミング配信サーバ１に送信する。
【００２８】
ここでは、パケットの種類は特に限定しないが、例えば、ＲＴＰ／ＵＤＰ（Ｕｓｅｒ　Ｄａｔａｇｒａｍ　Ｐｒｏｔｏｃｏｌ：ＲＦＣ（Ｒｅｑｕｅｓｔ　ｆｏｒ　Ｃｏｍｍｅｎｔｓ）１８８９）の規格に基づいてデータの送受信を行っている場合、ＲＴＣＰ（ＲＴＰ　Ｃｏｎｔｒｏｌ　Ｐｒｏｔｏｃｏｌ）パケットが利用される。ＲＴＣＰパケットには、ＳＲ（Ｓｅｎｄｅｒ　Ｒｅｐｏｒｔ）、ＲＲ（Ｒｅｃｅｉｖｅｒ　Ｒｅｐｏｒｔ）、ＳＤＥＳ（Ｓｏｕｒｃｅ　Ｄｅｓｃｒｉｐｔｉｏｎ）、ＢＹＥ（Ｇｏｏｄ−ｂｙｅ）、およびＡＰＰ（Ａｐｐｌｉｃａｔｉｏｎ−ｄｅｆｉｎｅｄ）の５種類のパケットがある。
【００２９】
ＳＲパケットは、データの受信者から送信される情報であって、受信したＲＴＰパケットの総数（データパケット総数）などの情報を含む。ＲＲパケットは、データの受信者から送信される情報であって、受信したＲＴＰパケットの破棄率（受信できなかったパケット率）やパケットの到着間隔の情報などを含む。ＳＤＥＳパケットは、ＳＲパケットやＲＲパケットに付随して送信される情報であって、ＲＴＣＰパケットの送信者の情報（例えば、送信者の名前やメールアドレスなど）を含む。ＢＹＥパケットは、ＲＴＣＰパケットの送受信を終了する際に送信される。ＡＰＰパケットは、アプリケーションが独自に指定することができるものであって、最初のヘッダ以外は全て任意のデータを格納することができる。
【００３０】
従って、本実施の形態においては、図７を用いて後述するように、アプリケーションが独自に指定することが可能なＡＰＰパケットを利用し、そこに再生位置情報を埋め込むようにする。
【００３１】
ネットワーク２は、公衆回線網、移動体無線通信網、ローカルエリアネットワーク、またはインターネットなどのネットワーク、デジタル衛星放送といった、有線または無線のいずれでもよい。
【００３２】
図１に示したストリーミング配信システムの例では、ユーザ端末装置３を１つしか図示していないが、勿論、多数のユーザ端末装置が接続されることは言うまでもない。
【００３３】
図２は、ストリーミング配信サーバ１の構成例を示すブロック図である。
【００３４】
ＣＰＵ１１は、ＲＯＭ（Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ）１２に記憶されているストリーミング配信プログラム、またはハードディスクドライブ１９からＲＡＭ（Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）１３にロードされたストリーミング配信プログラムに従って、各種の処理を実行する。ＲＡＭ１３にはまた、ＣＰＵ１１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【００３５】
ＣＰＵ１１、ＲＯＭ１２、およびＲＡＭ１３は、バス１４を介して相互に接続されている。このバス１４にはまた、入出力インターフェース１５も接続されている。
【００３６】
入出力インターフェース１５には、ボタン、スイッチ、キーボードあるいはマウスなどで構成される入力部１６、ＣＲＴ（Ｃａｔｈｏｄｅ　Ｒａｙ　Ｔｕｂｅ）やＬＣＤ（Ｌｉｑｕｉｄ　Ｃｒｙｓｔａｌ　Ｄｉｓｐｌａｙ）などのディスプレイ、並びにスピーカなどで構成される出力部１７、モデムやターミナルアダプタなどで構成される通信部１８、およびハードディスクドライブ１９が接続されている。通信部１８は、ネットワーク２を介して通信処理を行う。ハードディスクドライブ１９には、ストリーミング配信プログラムの他、ストリーミング配信するためのメディアデータなどが格納されている。
【００３７】
入出力インターフェース１５にはまた、必要に応じてドライブ２０が接続され、磁気ディスク２１、光ディスク２２、光磁気ディスク２３、あるいは半導体メモリ２４などが適宜装着され、そこから読み出されたコンピュータプログラム（ストリーミング配信プログラムなど）が、必要に応じてハードディスクドライブ１９にインストールされる。
【００３８】
図３は、ユーザ端末装置３の構成例を示すブロック図である。なお、図２に示したストリーミング配信サーバ１の構成と基本的に同様であるため、その説明は適宜省略する。
【００３９】
ＣＰＵ３１は、ＲＯＭ３２に記憶されているストリーミング再生プログラム、またはハードディスクドライブ１９からＲＡＭ３３にロードされたストリーミング再生プログラムに従って、ストリーミングデータの再生処理を実行する。
【００４０】
ドライブ４０には、磁気ディスク４１、光ディスク４２、光磁気ディスク４３、あるいは半導体メモリ４４などが適宜装着され、そこから読み出されたコンピュータプログラム（ストリーミング再生プログラムなど）が、必要に応じてハードディスクドライブ３９にインストールされる。
【００４１】
図４は、ストリーミング配信サーバ１のＣＰＵ１１にインストールされて実行されるストリーミング配信プログラムの機能を説明する図である。同図に示されるように、ストリーミング配信プログラムは、再生位置情報受信部５１、送信コントロール部５２、メモリ５３、およびデータ送信モジュール５４で構成されている。データ送信モジュール５４は、圧縮部６１、パケタイザ６２、レート調整部６３、およびパケット送信部６４で構成されている。
【００４２】
再生位置情報受信部５１は、ユーザ端末装置３から、ネットワーク２および通信部１８を介して送信されてきたＡＰＰパケットを受信し、そのパケットに含まれる再生位置情報を抽出して、送信コントロール部５２に供給するとともに、ＡＰＰパケットからパケット送信間隔を抽出し、そのパケット送信間隔に所定時間を加算してタイムアウト時間を設定する。
【００４３】
タイムアウト時間は、ユーザ端末装置３からのパケット送信のタイミングに依存するため、ここでは特に限定しないが、例えば、予め、ユーザ端末装置３から送信されるパケットにパケット送信のタイミングを入れ、ネットワーク２のジッタ（ゆらぎ）を考慮し、さらに、ある程度の余裕を持たせた値にすることが望ましい。
【００４４】
また再生位置情報受信部５１は、設定したタイムアウト時間内にユーザ端末装置３からＡＰＰパケットを受信することができなかった場合、ネットワーク２に不具合が発生したと判断し、その旨を送信コントロール部５２に通知する。さらに再生位置情報受信部５１は、ユーザ端末装置３から、再びＡＰＰパケットを受信することができた場合、そのパケットに含まれる再生位置情報を抽出して、送信コントロール部５２に供給する。
【００４５】
送信コントロール部５２は、データ送信モジュール５４の各部を制御するものであり、ネットワーク２を介してユーザ端末装置３から送信されてくるＰＬＡＹメソッドに応じて、ストリーミングデータの配信処理を実行するようにデータ送信モジュール５４の各部を制御する。ここでいうＰＬＡＹメソッドとは、例えば、ストリーミング配信サーバ１に対して、再生するコンテンツを要求するメソッドを示す。
【００４６】
また送信コントロール部５２は、ユーザ端末装置３から、ネットワーク２、通信部１８、および再生位置情報受信部５１を介して供給されるデータに基づいて、各種の処理を実行する。
【００４７】
例えば、再生位置情報受信部５１から再生位置情報が供給された場合、送信コントロール部５２は、その再生位置情報をメモリ５３に記録する。また例えば、再生位置情報受信部５１からネットワーク２の不具合が通知された場合、送信コントロール部５２は、ストリーミング配信の一時停止処理を実行するようにデータ送信モジュール５４の各部を制御する。さらにまた例えば、再生位置情報受信部５１から、再び、再生位置情報が供給された場合、送信コントロール部５２は、ネットワーク２の不具合が回復したと判断し、いま供給された再生位置情報を破棄した後、メモリ５３に記録されている再生位置情報を読み出し、その再生位置からストリーミングデータの配信処理を実行するようにデータ送信モジュール５４の各部を制御する。
【００４８】
圧縮部６１は、送信コントロール部５２の制御の下、ユーザ端末装置３から送信されてきたＰＬＡＹメソッドに応じて、ハードディスクドライブ１９に蓄積されている複数のメディアデータの中から、ストリーミング対象となる所望のメディアデータを読み出し、例えば、ＭＰＥＧ（Ｍｏｖｉｎｇ　Ｐｉｃｔｕｒｅ　Ｅｘｐｅｒｔｓ　Ｇｒｏｕｐ）方式など、所定のフォーマット形式で圧縮処理した後、パケタイザ６２に供給する。
【００４９】
パケタイザ６２は、送信コントロール部５２の制御の下、圧縮部６１で圧縮されたデータからＲＴＰパケットを生成し、レート調整部６３に供給する。レート調整部６３は、送信コントロール部５２の制御の下、パケタイザ６２で生成されたＲＴＰパケットを、データに合わせた伝送レートになるように調整した後、パケット送信部６４に供給する。
【００５０】
パケット送信部６４は、送信コントロール部５２の制御の下、レート調整部６３で伝送レートが調整されたＲＴＰパケットを、通信部１８およびネットワーク２を介してユーザ端末装置３に送信（配信）する。
【００５１】
図５は、ユーザ端末装置３のＣＰＵ３１にインストールされて実行されるストリーミング再生プログラムの機能を説明する図である。同図に示されるように、ストリーミング再生プログラムは、再生モジュール７１および再生位置情報送信部７２で構成されている。再生モジュール７１は、パケット受信部８１、バッファ８２、デパケタイザ８３、デコーダ８４、および表示制御部８５で構成されている。
【００５２】
パケット受信部８１は、ストリーミング配信サーバ１から、ネットワーク２および通信部３８を介して配信されてきたストリーミングデータであるＲＴＰパケットを受信し、バッファ８２に蓄積させる。
【００５３】
すなわち、ストリーミング視聴する場合、ネットワーク２を介してストリーミングデータが配信されてくるため、データが配信されるタイミングにはジッタがある（ストリーミング配信サーバ１が所定間隔でデータを送信していたとしても、ネットワーク２の状況によっては、多くのデータが送信されてくる場合と、ほとんどデータが送信されてこない場合がある）。従って、そのジッタに対応するため、所定量のストリーミングデータがバッファリングされた後、再生される。
【００５４】
デパケタイザ８３は、バッファ８２に所定量のＲＴＰパケットが蓄積されると、そこからＲＴＰパケットを読み出して、ヘッダ部分を除去するといったデパケタイズ処理を施し、デコーダ８４に供給する。
【００５５】
デコーダ８４は、デパケタイザ８３から供給されたデータが、ＭＰＥＧデータなどの圧縮データの場合、それを復号した後、表示制御部８５に供給する。表示制御部８５は、デコーダ８４で復号された画像を出力部３７（ディスプレイ）のユーザインターフェース９１（図６）などに表示させ、ユーザに視聴させる。
【００５６】
図６は、ユーザインターフェース９１の表示例を示している。同図に示されるように、ユーザインターフェース９１には、ストリーミングデータを再生（表示）する画面９２、現在の再生位置を示すスライダレバー９３、再生を指示する場合にユーザによって選択される再生ボタン９４、再生停止を指示する場合にユーザによって選択される停止ボタン９５、および、再生の一時停止を指示する場合にユーザによって選択される一時停止ボタン９６が表示されている。
【００５７】
図５の説明に戻る。再生位置情報送信部７２は、所定期間毎にデコーダ８４を参照し、そのときに復号されるデータから再生位置情報を取得する。例えば、ＭＰＥＧ１　Ｓｙｓｔｅｍ，ＭＰＥＧ２　Ｓｙｓｔｅｍでは、再生位置情報を、ＰＴＳ（Ｐｒｅｓｅｎｔａｔｉｏｎ　Ｔｉｍｅ　Ｓｔｕｍｐ）の値などから算出することができる。そして、再生位置情報送信部７２は、この再生位置情報をＡＰＰパケットに埋め込んだ後、通信部３８およびネットワーク２を介してストリーミング配信サーバ１に送信する。
【００５８】
図７は、ＲＴＣＰパケットのＡＰＰパケットの構成例を示す図である。
【００５９】
同図に示されるように、ＡＰＰパケットは、固定長の２ビットのＶｅｒｓｉｏｎ、１ビットのＰａｄｄｉｎｇ、５ビットのＳｕｂ　Ｔｙｐｅ、Ｐａｃｋｅｔ　Ｔｙｐｅ、１６ビットのＬｅｎｇｔｈ、３２ビットのＳＳＲＣ／ＣＳＲＣ（Ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ　Ｓｏｕｒｃｅ／Ｃｏｎｔｒｉｂｕｔｉｎｇ　Ｓｏｕｒｃｅｓ）、３２ビットのＮａｍｅ、および３２ビットのＡｐｐｌｉｃａｔｉｏｎ　Ｄｅｐｅｎｄｅｎｔ　Ｄａｔａから構成されている。
【００６０】
Ｖｅｒｓｉｏｎは、ＲＴＣＰのバージョンを表わし、Ｐａｄｄｉｎｇは、ＲＴＣＰパケットの最後の部分にパディング（意味を持たないデータであり、パケットの長さ合わせのために付加されるもの）が付加されているか否かを表わし、Ｓｕｂ　Ｔｙｐｅは、ＡＰＰパケットのサブタイプ（種類）を表わし、Ｐａｃｋｅｔ　Ｔｙｐｅは、パケットタイプ（ＡＰＰ＝２０４）を表わし、Ｌｅｎｇｔｈは、パケットの長さを表わし、ＳＳＲＣ／ＣＳＲＣは、サーバ識別子あるいはサーバに関連する識別子を表わし、Ｎａｍｅは、パケットの名前を表わし、Ａｐｐｌｉｃａｔｉｏｎ　Ｄｅｐｅｎｄｅｎｔ　Ｄａｔａは、アプリケーション依存の領域を表わしている。
【００６１】
すなわち、再生位置情報送信部７２は、取得した再生位置情報を、ＡＰＰパケットのＡｐｐｌｉｃａｔｉｏｎ　Ｄｅｐｅｎｄｅｎｔ　Ｄａｔａに埋め込むようにする。なお、再生位置情報送信部７２がＡＰＰパケットを送信するタイミングは、ここでは特に限定しないが、例えば、通常のＲＴＣＰパケットの送信と同様に、定期的（数秒毎）に送信するようにする。
【００６２】
次に、図８に示されるように、ストリーミングデータの配信を行っている途中で、時刻Ｔ１においてネットワーク２に不具合が発生し、期間ΔＬの経過後、時刻Ｔ２においてネットワーク２の不具合が回復した場合のストリーミング配信処理について、図９のフローチャートを参照して説明する。なお、図８における横軸は、時刻（時間軸）で表わされている。
【００６３】
ステップＳ２１において、ユーザ端末装置３のＣＰＵ３１は、ユーザからの指示に基づいて、ネットワーク２を介してストリーミング配信サーバ１に対し、ＰＬＡＹメソッドを送信する。
【００６４】
ステップＳ１において、ストリーミング配信サーバ１の送信コントロール部５２は、ユーザ端末装置３から受信したＰＬＡＹメソッドに応じて、圧縮部６１を制御し、ハードディスクドライブ１９からストリーミング対象となる所望のメディアデータを読み出させ、所定形式で圧縮処理させる。パケタイザ６２は、圧縮されたデータからＲＴＰパケットを生成し、レート調整部６３は、生成されたＲＴＰパケットの伝送レートを調整する。パケット送信部６４は、伝送レートが調整されたＲＴＰパケットを、通信部１８およびネットワーク２を介してユーザ端末装置３に送信（配信）する。
【００６５】
ステップＳ２２において、ユーザ端末装置３のパケット受信部８１は、ストリーミング配信サーバ１から配信されてきたＲＴＰパケットを受信することができたか否かを判定し、ＲＴＰパケットを受信することができたと判定した場合、受信したＲＴＰパケットをバッファ８２に蓄積させ、ステップＳ２３に進む。ステップＳ２３において、デパケタイザ６３は、バッファ６３に所定量のＲＴＰパケットが蓄積されると、そこからＲＴＰパケットを読み出してデパケタイズ処理を施し、デコーダ８４に供給する。デコーダ８４は、デパケタイザ８３から供給されたデータを復号し、表示制御部８５は、復号された画像をユーザインターフェース９１に表示（再生）させ、ユーザに視聴させる（図６）。
【００６６】
ステップＳ２４において、再生位置情報送信部７２は、所定時間毎にデコーダ８４を参照し、そのときに復号されるデータから再生位置情報を取得し、ＡＰＰパケットのＡｐｐｌｉｃａｔｉｏｎ　Ｄｅｐｅｎｄｅｎｔ　Ｄａｔａ（図７）に埋め込んだ後、通信部３８およびネットワーク２を介してストリーミング配信サーバ１に送信する。
【００６７】
ステップＳ２において、ストリーミング配信サーバ１の再生位置情報受信部５１は、タイムアウト時間（いまの場合、タイムアウト時間は、デフォルト）内に再生位置情報を受信したか否か、すなわち、ユーザ端末装置３からネットワーク２を介して送信されてくるＡＰＰパケットをタイムアウト時間内に受信したか否かを判定する。
【００６８】
ステップＳ２において、タイムアウト時間内に再生位置情報を受信したと判定された場合、再生位置情報受信部５１は、受信したＡＰＰパケットに含まれる再生位置情報を抽出して送信コントロール部５２に供給し、ステップＳ３に進む。
【００６９】
ステップＳ３において、送信コントロール部５２は、再生位置情報受信部５１から供給された再生位置情報をメモリ５３に記録する。ステップＳ４において、再生位置情報受信部５１は、受信したＡＰＰパケットからパケット送信間隔を抽出し、そのパケット送信間隔に所定時間（ジッタを考慮した時間）を加算してタイムアウト時間を設定する。
【００７０】
ステップＳ５において、ＣＰＵ１１は、ストリーミング配信を終了するか否か、すなわち、ＰＬＡＹメソッドに応じて配信中のストリーミングデータを最後まで配信したか否かを判定し、未だストリーミング配信を終了しないと判定した場合、ステップＳ１に戻り、上述した処理を繰り返し実行する。
【００７１】
ステップＳ２において、タイムアウト時間内に再生位置情報を受信することができなかったと判定された場合、ステップＳ６に進み、再生位置情報受信部５１は、ネットワーク２に不具合が発生したと判断し、その旨を送信コントロール部５２に通知する。ステップＳ７において、送信コントロール部５２は、再生位置情報受信部５１からネットワーク２の不具合通知を受け、ストリーミング配信の一時停止処理を実行するようにデータ送信モジュール５４の各部を制御する。
【００７２】
ステップＳ２２において、ユーザ端末装置３のパケット受信部８１は、ＲＴＰパケットを受信することができなかったと判定した場合、ステップＳ２６に進み、さらにタイムアウトであるか否かを判定し、タイムアウトではないと判定した場合、ステップＳ２７に進む。
【００７３】
ステップＳ２７において、表示制御部８５は、ネットワークの状態（すなわち、ネットワーク２に不具合が発生したことを示すためのメッセージ）を出力部３７のユーザインターフェース９１に表示させる。これにより、例えば、図１０に示されるように、「ネットワークに不具合が発生しました。このまましばらくお待ちください。」といったメッセージが記載されたダイアログボックス１１１が表示される。
【００７４】
このメッセージを確認したユーザは、ネットワーク２に不具合が発生したことにより、ストリーミング再生が中断したことを知ることができる。
【００７５】
ステップＳ２８において、再生位置情報送信部７２は、デコーダ８４を参照し、そのときに復号されるデータから再生位置情報を取得し、ＡＰＰパケットのＡｐｐｌｉｃａｔｉｏｎ　Ｄｅｐｅｎｄｅｎｔ　Ｄａｔａ（図７）に埋め込んだ後、通信部３８およびネットワーク２を介してストリーミング配信サーバ１に送信した後、ステップＳ２５に進む。
【００７６】
ステップＳ２５において、ユーザ端末装置３のＣＰＵ３１は、ストリーミング再生を終了するか否か、すなわち、ユーザにより入力部３６が操作され、再生終了が指示されたか否か、あるいは、指定したストリーミングデータを最後まで再生したか否かを判定し、未だストリーミング再生を終了しないと判定した場合、ステップＳ２２に戻り、上述した処理を繰り返し実行する。
【００７７】
ステップＳ２６において、タイムアウトになってもＲＴＰパケットを受信することができなかったと判定された場合、ステップＳ２９に進み、表示制御部８５は、プレイヤの状態（すなわち、ストリーミング再生を一時停止することを示すためのメッセージ）を出力部３７のユーザインターフェース９１に表示させる。これにより、例えば、図１１に示されるように、「ネットワークが回復しませんので、再生を一時停止します。再生を続ける場合は、再生ボタンを押して下さい。」といったメッセージが記載されたダイアログボックス１３１が表示される。
【００７８】
ステップＳ３０において、ＣＰＵ３１は、デコーダ８４を制御し、実行中のストリーミング再生を一時停止させる。
【００７９】
図１１のメッセージを確認したユーザは、不具合が発生したネットワーク２がタイムアウトになっても回復しないため、ストリーミング再生が一時停止したことを知ることができる。そして、ユーザが再生ボタン９４を選択することにより、ステップＳ２８の処理が実行され、再びストリーミング配信を要求することができる。
【００８０】
ステップＳ８において、ストリーミング配信サーバ１の再生位置情報受信部５１は、予め設定したタイムアウト時間内にＡＰＰパケットを受信したか否か、すなわち、ユーザ端末装置３からネットワーク２を介して、再び送信されてきたＡＰＰパケットをタイムアウト時間内に受信したか否かを判定し、タイムアウト時間内にＡＰＰパケットを受信したと判定した場合、受信したＡＰＰパケットに含まれる再生位置情報を抽出して送信コントロール部５２に供給した後、ステップＳ９に進む。
【００８１】
ステップＳ９において、送信コントロール部５２は、再生位置情報受信部５１から、再び、再生位置情報が供給されると、ネットワーク２の不具合が回復したと判断し、いま供給された再生位置情報を破棄した後、ステップＳ３の処理によってメモリ５３に記録されている再生位置情報（図８の例の場合、時刻Ｔ１）を読み出し、その再生位置からストリーミングデータの配信処理を実行するようにデータ送信モジュール５４の各部を制御する。その後、処理はステップＳ２に戻り、上述した処理が繰り返し実行される。
【００８２】
ステップＳ８において、タイムアウト時間内にパケットを受信することができなかったと判定された場合、ステップＳ１０に進み、送信コントロール部５１は、所定時間が経過してもネットワーク２の不具合が回復しないと判断し、ストリーミング配信の停止処理を実行するようにデータ送信モジュール５４の各部を制御する。
【００８３】
そして、図１１を用いて上述したようにして、ユーザにより再生ボタン９４が選択されると、上述したステップＳ２８の処理が実行され、再び、ユーザ端末装置３からストリーミング配信が要求される。この要求を受けたストリーミング配信サーバ１の送信コントロール部５２は、上述したステップＳ９の処理を実行し、一時停止した再生位置からストリーミング配信を行うことができる。
【００８４】
ステップＳ５において、ストリーミング配信を終了すると判定された場合、ストリーミング配信サーバ１の配信処理は終了される。また、ステップＳ２５において、ストリーミング再生を終了すると判定された場合、ユーザ端末装置３の再生処理は終了される。
【００８５】
以上のように、ストリーミング配信サーバ１は、動画像などをストリーミング配信している状況において、ユーザ端末装置３から定期的に送信されてくる再生位置情報を受信し、それを記録するようにしたので、再生位置情報を受信することができなくなった場合、ネットワーク２に不具合が発生したと判断することができる。そして、再び、ユーザ端末装置３から再生位置情報を受信することができるようになった場合、ストリーミング配信サーバ１は、ネットワーク２が回復したと判断することができ、中断時に記録した再生位置からストリーミング配信を行うことができる。これにより、ユーザは、所定区間のシーンを見逃すことなくストリーミング視聴することが可能になる。
【００８６】
また、ネットワークの不具合が発生している時間が短い場合（すなわち、ネットワークがすぐに回復した場合）、自動的に、続きからストリーミング配信を行うようにしたので、無駄な操作を軽減することができる。
【００８７】
また以上においては、ユーザ端末装置３から所定期間毎に送信される再生位置情報を含むパケットは、ＡＰＰパケット（図７）であるものとして説明したが、これに限らず、例えば、図１２Ａに示されるように、送信コマンド（Ｐｌａｙ　Ｐｏｓｉｔｉｏｎ）内に、「００：１２：３４」（再生位置情報としての再生時刻）と記述したり、あるいは、図１２Ｂに示されるように、「Ｐａｃｋｅｔ＃１２３」（再生位置情報としてのパケット識別子）と記述して、ストリーミング配信サーバ１に送信するようにしてもよい。
【００８８】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
【００８９】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを記録する記録媒体は、図２および図３に示されるように、磁気ディスク２１，４１（フレキシブルディスクを含む）、光ディスク２２，４２（ＣＤ−ＲＯＭ、ＤＶＤ（Ｄｉｇｉｔａｌ　Ｖｅｒｓａｔｉｌｅ　Ｄｉｓｃ）を含む）、光磁気ディスク２３，４３（ＭＤ（Ｍｉｎｉ−Ｄｉｓｃ）（登録商標）を含む）、もしくは半導体メモリ２４，４４などよりなるパッケージメディア、または、プログラムが一時的もしくは永続的に記録されるＲＯＭ１２，３２やハードディスクドライブ１９，３９などにより構成される。記録媒体へのプログラムの記録は、必要に応じてルータ、モデムなどのインターフェースを介して、公衆回線網、ローカルエリアネットワーク、またはインターネットなどのネットワーク２、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【００９０】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【００９１】
なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【００９２】
【発明の効果】
以上のように、第１の本発明によれば、ストリーミングデータを配信することができる。
【００９３】
また第１の本発明によれば、端末から定期的に送信される再生位置情報を受信することができなかった場合、ネットワークに不具合が生じたと判断し、ストリーミングデータの配信を一時停止することができる。
【００９４】
第２の本発明によれば、ストリーミングデータを配信することができる。
【００９５】
また第２の本発明によれば、端末側から定期的に送信される再生位置情報を受信し、ネットワークに不具合が生じた際の再生位置情報を記録するようにしたので、ネットワーク回復後、その再生位置情報に基づいて続きからストリーミングデータを配信することができる。
【００９６】
第３の本発明によれば、ストリーミングデータを視聴することができる。
【００９７】
また第３の本発明によれば、定期的に再生位置情報をサーバに送信するようにしたので、シーンを見逃すことなくストリーミング視聴することができる。
【図面の簡単な説明】
【図１】本発明を適用したストリーミング配信システムの構成例を示す図である。
【図２】ストリーミング配信サーバの構成例を示すブロック図である。
【図３】ユーザ端末装置の構成例を示すブロック図である。
【図４】ストリーミング配信サーバにインストールされて実行される、ストリーミング配信プログラムの機能を説明する図である。
【図５】ユーザ端末装置にインストールされて実行される、ストリーミング再生プログラムの機能を説明する図である。
【図６】ユーザインターフェースの表示例を示す図である。
【図７】ＲＴＣＰパケットのＡＰＰパケットの構成例を示す図である。
【図８】ストリーミングデータの配信中にネットワークに不具合が発生した例を説明する図である。
【図９】ストリーミング配信処理を説明するフローチャートである。
【図１０】ユーザインターフェースのダイアログボックスの表示例を示す図である。
【図１１】ユーザインターフェースの他のダイアログボックスの表示例を示す図である。
【図１２】ユーザ端末装置から送信されるコマンドの一例を示す図である。
【符号の説明】
１　ストリーミング配信サーバ，　２　ネットワーク，　３　ユーザ端末装置，　５１再生位置情報受信部，　５２　送信コントロール部，　５３　メモリ，　６１　圧縮部，　６２　パケタイザ，　６３　レート調整部，　６４　パケット送信部，　７２　再生位置情報送信部，　８１　パケット受信部，　８２　バッファ，　８３　デパケタイザ，８４　デコーダ，　８５　表示制御部
【図１】
2004007172.tif 000003
【図２】
2004007172.tif 000004
【図３】
2004007172.tif 000005
【図４】
2004007172.tif 000006
【図５】
2004007172.tif 000007
【図６】
2004007172.tif 000008
【図７】
2004007172.tif 000009
【図８】
2004007172.tif 000010
【図９】
2004007172.tif 000011
【図１０】
2004007172.tif 000012
【図１１】
2004007172.tif 000013
【図１２】
2004007172.tif 000014