(57)【要約】【課題】送信側と複数の受信側で事前に時刻を同期させることなく、複数の受信側におけるストリーム再生を同期すること。【解決手段】送信サーバは、ストリームパケットを予め決められた送信タイミングで送信し、複数の受信端末は、ストリームパケットのコンテンツデータを再生する。送信サーバは、第１制御パケットを送信し、複数の受信端末は、それぞれ、第１制御パケットに応じて複数の第２制御パケットを送信する。送信サーバは、それぞれ、そのときの複数のパケット往復時間を含む複数の第３制御パケットを送信する。複数の受信端末は、それぞれ、複数のパケット往復時間に基づいて、複数の時刻差を含む複数の第４制御パケットを送信する。送信サーバは、それぞれ、複数の時刻差に基づいて、設定時刻に複数の受信端末がストリームパケットのコンテンツデータを同時に再生するための複数の調整送信タイミングを決定する。【選択図】図１
2009081654.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続され、内蔵タイマを備える送信サーバ及び複数の受信端末を具備し、
前記送信サーバは、コンテンツデータを含むストリームパケットを予め決められた送信タイミングで前記複数の受信端末に送信し、
前記複数の受信端末は、前記ストリームパケットに含まれる前記コンテンツデータを再生し、
前記送信サーバは、前記ストリームパケットを送信した後に、第１制御パケットを生成して前記複数の受信端末に送信し、
前記複数の受信端末は、それぞれ、前記第１制御パケットに応じて複数の第２制御パケットを生成して前記送信サーバに送信し、
前記送信サーバは、
それぞれ、前記送信サーバが前記複数の受信端末に前記第１制御パケットを送信してから、前記複数の受信端末から前記複数の第２制御パケットを受信するまでのパケットの往復時間を表す複数のパケット往復時間を計算し、
それぞれ、前記複数のパケット往復時間を含む複数の第３制御パケットを生成し、前記複数の受信端末に送信し、
前記複数の受信端末は、
それぞれ、前記複数の第３制御パケットに含まれる前記複数のパケット往復時間に基づいて、前記送信サーバと前記複数の受信端末との間の相対的な時間差を表す複数の時刻差を計算し、
それぞれ、前記複数の時刻差を含む複数の第４制御パケットを生成して前記送信サーバに送信し、
前記送信サーバは、
それぞれ、前記複数の第４制御パケットに含まれる前記複数の時刻差に基づいて、前記送信サーバの前記内蔵タイマが表す時刻を基準とした場合に設定時刻に前記複数の受信端末が前記ストリームパケットに含まれる前記コンテンツデータを同時に再生するための複数の調整送信タイミングを決定し、
次に前記ストリームパケットを送信する場合、それぞれ、前記送信タイミングに代えて前記複数の調整送信タイミングで、前記ストリームパケットを前記複数の受信端末に送信する
ストリーム同期再生システム。
【請求項２】
前記第１制御パケットは、前記第１制御パケットを送信するときの時刻を表す制御パケット送信時刻を含み、
前記複数の第２制御パケットは、それぞれ、前記第１制御パケットに含まれる前記制御パケット送信時刻と、前記複数の受信端末が前記第１制御パケットを受信してから、前記複数の第２制御パケットを送信するまでの時間を表す複数の経過時間とを含み、
前記送信サーバは、
それぞれ、前記複数の第２制御パケットを受信し、前記複数の第２制御パケットに含まれる前記制御パケット送信時刻及び複数の経過時間と、前記複数の第２制御パケットを受信したときの複数の制御パケット受信時刻とに基づいて、前記複数のパケット往復時間を計算する
請求項１に記載のストリーム同期再生システム。
【請求項３】
前記制御パケット送信時刻をＴ１とし、前記複数の制御パケット受信時刻の各々をＴ２とし、前記複数の経過時間の各々をαとし、前記複数のパケット往復時間の各々をＲＴＴ（Ｒｏｕｎｄ  Ｔｒｉｐ  Ｔｉｍｅ）とした場合、
前記複数のパケット往復時間の各々は、
ＲＴＴ＝Ｔ２−Ｔ１−α
により表される
請求項２に記載のストリーム同期再生システム。
【請求項４】
前記ストリームパケットは、前記ストリームパケットを送信するときの時刻を表すストリームパケット送信時刻を更に含み、
前記複数の受信端末は、
それぞれ、前記複数の第３制御パケットを受信し、前記複数の第３制御パケットに含まれる前記複数のパケット往復時間と、前記ストリームパケット送信時刻と、前記コンテンツデータを再生したときの複数のデータ再生時刻とに基づいて、前記複数の時刻差を計算する
請求項１〜３のいずれかに記載のストリーム同期再生システム。
【請求項５】
前記ストリームパケット送信時刻をＸとし、前記複数のデータ再生時刻の各々をＹとし、前記複数のパケット往復時間の各々をＲＴＴとし、前記複数の時刻差の各々をＺとした場合、
前記複数の時刻差の各々は、
Ｚ＝Ｙ−Ｘ−（ＲＴＴ÷２）
により表される
請求項４に記載のストリーム同期再生システム。
【請求項６】
前記複数の受信端末は、
それぞれ、複数のストリーム送受信記憶部を更に備え、
前記ストリームパケットに含まれる前記コンテンツデータを再生したときに、それぞれ、前記ストリームパケットに含まれるストリームパケット送信時刻と、前記コンテンツデータを再生したときの複数のデータ再生時刻とを前記複数のストリーム送受信記憶部に格納し、
それぞれ、前記複数の第３制御パケットを受信し、前記複数の第３制御パケットに含まれる前記複数のパケット往復時間と、前記複数のストリーム送受信記憶部に格納された前記ストリームパケット送信時刻及び前記複数のデータ再生時刻とに基づいて、前記複数の時刻差を計算する
請求項４又は５に記載のストリーム同期再生システム。
【請求項７】
前記複数の受信端末は、
それぞれ、複数の受信側制御パラメータ記憶部を更に備え、
それぞれ、前記複数の時刻差を計算したときに、前記複数の時刻差を前記複数の受信側制御パラメータ記憶部に格納し、
それぞれ、前記送信サーバから前記複数の調整送信タイミングによって送信された前記ストリームパケットを受信した場合、前記複数の受信側制御パラメータ記憶部を参照して、前記ストリームパケットに含まれる前記ストリームパケット送信時刻に対して前記複数の時刻差が経過したときに、前記ストリームパケットに含まれる前記コンテンツデータを再生する
請求項４〜６のいずれかに記載のストリーム同期再生システム。
【請求項８】
前記送信サーバは、
前記複数の受信端末を識別する複数の端末識別子と前記送信タイミングとを格納する送信側制御パラメータ記憶部を更に備え、
前記複数のパケット往復時間を計算したときに、前記複数のパケット往復時間を前記複数の端末識別子に対応付けて前記送信側制御パラメータ記憶部に格納し、
前記送信側制御パラメータ記憶部を参照して、それぞれ、前記複数のパケット往復時間を含む複数の第３制御パケットを生成し、前記複数の受信端末に送信し、
それぞれ、前記複数の第４制御パケットを受信し、前記複数の第４制御パケットに含まれる前記複数の時刻差を前記複数の端末識別子に対応付けて前記送信側制御パラメータ記憶部に格納し、
それぞれ、前記送信側制御パラメータ記憶部に格納された前記複数の時刻差に基づいて、前記複数の調整送信タイミングを決定し、前記複数の端末識別子に対応付けて前記送信側制御パラメータ記憶部に格納し、
次に前記ストリームパケットを送信する場合、前記送信側制御パラメータ記憶部を参照して、それぞれ、前記送信タイミングに代えて前記複数の調整送信タイミングで、前記ストリームパケットを前記複数の受信端末に送信する
請求項１〜７のいずれかに記載のストリーム同期再生システム。
【請求項９】
前記複数の調整送信タイミングは、前記複数の時刻差の中から、その時刻差が大きい順に決定される
請求項１〜８のいずれかに記載のストリーム同期再生システム。
【請求項１０】
前記送信サーバは、
前記複数の調整送信タイミングとして１番目からＮ番目（Ｎは整数）までのＮ個の調整送信タイミングに対して、各々のタイミングが近い１グループ目からＭグループ目（ＭはＭ＜Ｎを満たす整数）までのＭグループの調整送信タイミング群を生成し、
前記複数の受信端末としてＮ個の受信端末に対して、次に前記ストリームパケットを送信する場合、前記Ｎ個の受信端末のうちの、前記Ｍグループの調整送信タイミング群に対応するＭグループの受信端末群に前記ストリームパケットを同時に送信する
請求項９に記載のストリーム同期再生システム。
【請求項１１】
前記送信サーバと前記複数の受信端末は、
ＲＴＰ（Ｒｅａｌ−ｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）に適用され、
ＲＴＣＰ（ＲＴＰ  Ｃｏｎｔｒｏｌ  Ｐａｃｋｅｔ）の仕様に従って、前記ストリームパケットに含まれる前記コンテンツデータの再生を同期する
請求項１〜１０のいずれかに記載のストリーム同期再生システム。
【請求項１２】
ネットワークに接続され、内蔵タイマを備える送信サーバ及び複数の受信端末を用いる方法であって、
前記送信サーバが、コンテンツデータを含むストリームパケットを予め決められた送信タイミングで前記複数の受信端末に送信するステップと、
前記複数の受信端末が、前記ストリームパケットに含まれる前記コンテンツデータを再生するステップと、
前記送信サーバが、前記ストリームパケットを送信した後に、第１制御パケットを生成して前記複数の受信端末に送信するステップと、
前記複数の受信端末が、それぞれ、前記第１制御パケットに応じて複数の第２制御パケットを生成して前記送信サーバに送信するステップと、
前記送信サーバが、
それぞれ、前記送信サーバが前記複数の受信端末に前記第１制御パケットを送信してから、前記複数の受信端末から前記複数の第２制御パケットを受信するまでのパケットの往復時間を表す複数のパケット往復時間を計算するステップと、
それぞれ、前記複数のパケット往復時間を含む複数の第３制御パケットを生成し、前記複数の受信端末に送信するステップと、
前記複数の受信端末が、
それぞれ、前記複数の第３制御パケットに含まれる前記複数のパケット往復時間に基づいて、前記送信サーバと前記複数の受信端末との間の相対的な時間差を表す複数の時刻差を計算するステップと、
それぞれ、前記複数の時刻差を含む複数の第４制御パケットを生成して前記送信サーバに送信するステップと、
前記送信サーバが、
それぞれ、前記複数の第４制御パケットに含まれる前記複数の時刻差に基づいて、前記送信サーバの前記内蔵タイマが表す時刻を基準とした場合に設定時刻に前記複数の受信端末が前記ストリームパケットに含まれる前記コンテンツデータを同時に再生するための複数の調整送信タイミングを決定するステップと、
次に前記ストリームパケットを送信する場合、それぞれ、前記複数の調整送信タイミングで、前記ストリームパケットを前記複数の受信端末に送信するステップと、
を具備するストリーム同期再生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストリームの再生を同期させるストリーム同期再生システム及び方法に関する。
【背景技術】
【０００２】
近年、インターネットへの接続を含めたネットワーク環境の通信速度の向上と、ネットワークへの常時接続環境の普及により、動画や音声といったストリーミングメディアの配信が盛んになっている。しかし、今後のストリーミングを利用した放送型コンテンツの双方向化により、複数の受信側の各々で放送型コンテンツが再生されるタイミングが異なる場合、複数の受信側の視聴者のうちの、一部の視聴者にとって都合が悪い。例えば、クイズ番組のような番組で、ある視聴者より他の視聴者がタイミングの違いによって問題の答えを先に知ることができる場合、ある視聴者にとって不公平になる。
【０００３】
そこで、この問題を解決する方法として、送信側と複数の受信側との間で同期した時刻に基づいた絶対時間（実時間）を表す情報をストリーミングのパケットに挿入して送信する方法が提案されている（特許文献１）。これにより、複数の受信側の各々は、受信したパケット内の実時間を表す情報と、受信側が持つ実時間を表す情報とを比較して、再生するタイミングを調節し、この問題の解決を図っている。
【０００４】
しかし、特許文献１に記載された技術では、送信側と複数の受信側との間で時刻を同期しないと、パケット内に実時間を表す情報を入れても再生のタイミングがずれることになり、複数の受信側におけるストリーム再生を同期することができない。このため、特許文献１に記載された技術では、送信側と複数の受信側で事前に時刻を同期させている必要がある。
【０００５】
したがって、送信側と複数の受信側で事前に時刻を同期させることなく、複数の受信側におけるストリーム再生を同期することが望まれる。
【０００６】
送受信に関連する技術について紹介する。
【０００７】
上記の特許文献１として、特開２００６−１２９４２０号公報には、情報コミュニケーション端末装置が開示されている。情報コミュニケーション端末装置は、コミュニケーション手段と、コミュニケーションデータ再生手段と、放送コンテンツデータ受信再生手段と、音声映像出力手段と、コミュニケーション状態検出手段と、遅延時間算出手段とを備えている。前記コミュニケーション手段は、通信回線を利用して複数の情報コミュニケーション端末間で、撮影装置を使用して撮影する音声映像信号とその撮影の撮影時刻情報とを含むコミュニケーションデータの双方向通信を行う。前記コミュニケーションデータ再生手段は、前記コミュニケーション手段により他の情報コミュニケーション端末から受信したコミュニケーションデータを再生する。前記放送コンテンツデータ受信再生手段は、音声映像信号からなる放送コンテンツデータを受信再生する。前記音声映像出力手段は、前記コミュニケーションデータ再生手段より得られたコミュニケーションデータ再生信号と、前記放送コンテンツデータ受信再生手段により得られた放送コンテンツデータ再生信号とを同時出力する。前記コミュニケーション状態検出手段は、前記コミュニケーション手段が、他の情報コミュニケーション端末から自らの情報コミュニケーション端末へコミュニケーションを図られている状態なのか、自らの情報コミュニケーション端末から他の情報コミュニケーション端末へコミュニケーションを図っている状態なのかを判断する。前記遅延時間算出手段は、前記コミュニケーション状態検出手段が、他の情報コミュニケーション端末から自らの情報コミュニケーション端末へコミュニケーションを図られている状態であると判断した場合は、他の情報コミュニケーション端末から受信している前記コミュニケーションデータ内の前記撮影時刻情報と、自らの情報コミュニケーション端末内の時計から得られる時刻情報との差分を計算することで、前記コミュニケーションデータが他の情報コミュニケーション端末から自らの情報コミュニケーション端末に到達し再生されるまでに要する遅延時間を算出する。前記コミュニケーション状態検出手段が、他の情報コミュニケーション端末から自らの情報コミュニケーション端末へコミュニケーションを図られていると判断した場合は、前記放送コンテンツデータ受信再生手段は、自らの情報コミュニケーション端末内での前記放送コンテンツデータを再生するタイミングを、前記遅延時間算出手段により算出した前記遅延時間分だけ遅らせることを特徴としている。
【０００８】
特開平１０−７５２０５号公報には、移動通信装置が開示されている（特許文献２）。移動通信装置は、移動局との間で無線により通信を行う複数の無線基地局と、この複数の無線基地局への送信信号の分配及びこの複数の無線基地局がそれぞれ受信した信号の収集を行う集中基地局とを備えている。前記集中基地局は、前記複数の無線基地局のそれぞれとの間の伝送路遅延を測定する遅延測定手段と、この遅延測定手段の測定値にしたがって前記複数の無線基地局にそれぞれ送出する信号のタイミングを調整するタイミング調整手段とを含んでいる。前記遅延測定手段は、前記複数の無線基地局のそれぞれに対し、前記集中基地局から送出した信号がその無線基地局から送信され直接に同じ無線基地局により受信されて前記集中基地局に戻るまでの伝達時間を測定する第一の測定手段と、前記集中基地局から送出した信号がその無線基地局から送信され他の無線基地局により受信されて前記集中基地局に戻るまでの伝達時間を測定する第二の測定手段とを含んでいる。前記遅延測定手段はさらに、前記複数の無線基地局のそれぞれに対し、前記集中基地局から送出した信号がその無線基地局から送信されて移動局により受信され、その移動局が送信した信号が同じ無線基地局により受信されて前記集中基地局に戻るまでの伝達時間を測定する第三の測定手段と、前記集中基地局から送出した信号がその無線基地局から送信されて移動局により受信され、その移動局が送信した信号が他の無線基地局により受信されて前記集中基地局に戻るまでの伝達時間を測定する第四の測定手段とを含むことを特徴としている。
【０００９】
特表２００３−５０１６３２号公報には、無線測位システムの改良方法が開示されている（特許文献３）。この方法は、所定の位置に対応する複数の送信源信号の、時間、位相、周波数又はそれらの微分値についての、或いはそれらの距離又は微分値の差として表わしたそれらの等価物についての、共通基準に対する差のリストを作成するものであって、（ａ）送信源から受信した信号のそれぞれにおける時間、位相、周波数又はそれらの微分値の、各受信器内の基準源に対する差又は信号相互間の差を含むデータを、位置が既知であるか又は位置を求めることができる２つまたそれ以上の受信器から取得し、（ｂ）取得した前記データを組み合わせ、前記所定の位置に対応する、共通基準に対する差のリストを算出すること、からなる。
【００１０】
【特許文献１】特開２００６−１２９４２０号公報
【特許文献２】特開平１０−７５２０５号公報
【特許文献３】特表２００３−５０１６３２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
本発明の課題は、送信側と複数の受信側で事前に時刻を同期させることなく、複数の受信側におけるストリーム再生を同期することができるストリーム同期再生システム及び方法を提供することにある。
【課題を解決するための手段】
【００１２】
本発明のストリーム同期再生システムは、ネットワークに接続され、内蔵タイマを備える送信サーバ及び複数の受信端末を具備している。
送信サーバは、コンテンツデータを含むストリームパケットを予め決められた送信タイミングで複数の受信端末に送信する。
複数の受信端末は、ストリームパケットに含まれるコンテンツデータを再生する。
送信サーバは、ストリームパケットを送信した後に、第１制御パケットを生成して複数の受信端末に送信する。
複数の受信端末は、それぞれ、第１制御パケットに応じて複数の第２制御パケットを生成して送信サーバに送信する。
送信サーバは、それぞれ、送信サーバが複数の受信端末に第１制御パケットを送信してから、複数の受信端末から複数の第２制御パケットを受信するまでのパケットの往復時間を表す複数のパケット往復時間を計算する。送信サーバは、それぞれ、複数のパケット往復時間を含む複数の第３制御パケットを生成し、複数の受信端末に送信する。
複数の受信端末は、それぞれ、複数の第３制御パケットに含まれる複数のパケット往復時間に基づいて、送信サーバと複数の受信端末との間の相対的な時間差を表す複数の時刻差を計算する。複数の受信端末は、それぞれ、複数の時刻差を含む複数の第４制御パケットを生成して送信サーバに送信する。
送信サーバは、それぞれ、複数の第４制御パケットに含まれる複数の時刻差に基づいて、送信サーバの内蔵タイマが表す時刻を基準とした場合に設定時刻に複数の受信端末がストリームパケットのコンテンツデータを同時に再生するための複数の調整送信タイミングを決定する。送信サーバは、次にストリームパケットを送信する場合、それぞれ、送信タイミングに代えて複数の調整送信タイミングで、ストリームパケットを複数の受信端末に送信する。
【発明の効果】
【００１３】
このように、本発明のストリーム同期再生システムでは、ストリーム送信サーバとストリーム受信端末との間のパケット往復時間ＲＴＴと時刻差Ｚを求めることにより、送信側（ストリーム送信サーバ）と複数の受信側（ストリーム受信端末）との間で事前に時刻を同期させることなく、複数のストリーム受信端末におけるストリーム再生（ストリームパケットのコンテンツデータの再生）を同期することができる。
【発明を実施するための最良の形態】
【００１４】
以下に添付図面を参照して、本発明のストリーム同期再生システムについて詳細に説明する。
【００１５】
（第１実施例）
［構成］
図１は、本発明の第１実施例によるストリーム同期再生システムの構成を示すブロック図である。そのストリーム同期再生システムは、送信側であるストリーム送信サーバ１と、受信側である複数のストリーム受信端末２と、ネットワーク３と、を具備している。ストリーム送信サーバ１と複数のストリーム受信端末２は、ネットワーク３に接続されている。また、ストリーム送信サーバ１と複数のストリーム受信端末２は、時刻を表す内蔵タイマ（図示しない）を備えている。
【００１６】
本実施例では、ストリーム送信サーバ１と複数のストリーム受信端末２との間で送受信されるパケットとして、ストリームパケットＰと、第１制御パケットと、複数の第２制御パケットと、複数の第３制御パケットと、複数の第４制御パケットと、を含んでいる（図２参照）。第１〜第４制御パケットをそれぞれストリーム制御パケットＡ、Ｂ、Ｃ、Ｄと称する。
【００１７】
ストリームパケットＰは、ストリーム送信サーバ１により送信される。このストリームパケットＰは、コンテンツデータと、ストリームパケット送信時刻（最初のストリームパケットＰを送信した時刻を基準とした相対時間）Ｘとを含んでいる。
【００１８】
ストリーム制御パケットＡは、ストリーム送信サーバ１により送信される。このストリーム制御パケットＡは、自身の制御パケット送信時刻Ｔ１を含んでいる。
【００１９】
複数のストリーム制御パケットＢは、それぞれ、複数のストリーム受信端末２により送信される。この複数のストリーム制御パケットＢは、それぞれ、制御パケット送信時刻Ｔ１と、複数のストリーム受信端末２がストリーム制御パケットＡを受信してからストリーム制御パケットＢを送信するまでの複数の経過時間αと、を含んでいる。
【００２０】
複数のストリーム制御パケットＣは、ストリーム送信サーバ１により送信される。この複数のストリーム制御パケットＣは、それぞれ、ストリーム送信サーバ１が複数のストリーム受信端末２にストリーム制御パケットＡを送信してから、複数のストリーム受信端末２から複数のストリーム制御パケットＢを受信するまでに、パケットが往復するのに必要な時間を表す複数のパケット往復時間（ＲＴＴ：Ｒｏｕｎｄ  Ｔｒｉｐ  Ｔｉｍｅ）を含んでいる。
【００２１】
複数のストリーム制御パケットＤは、それぞれ、複数のストリーム受信端末２により送信される。この複数のストリーム制御パケットＤは、それぞれ、ストリーム送信サーバ１と複数のストリーム受信端末２との間の相対的な時間差を表す複数の時刻差Ｚを含んでいる。複数の時刻差Ｚは、ストリーム送信サーバ１の内蔵タイマが表す時刻を基準としている。
【００２２】
ストリーム送信サーバ１は、更に、パケット送信部１０１と、パケット受信部１０２と、コンテンツデータ蓄積部１０３と、ストリームデータ作成部１０４と、ストリーム制御パケット生成部１０５と、ストリーム制御パケット解析部１０６と、パケット往復時間計算部１０７と、制御パラメータ管理部１０８と、送信タイミング制御部１０９と、を備えている。
【００２３】
パケット送信部１０１は、ストリームデータ作成部１０４からのストリームパケットＰを複数のストリーム受信端末２に送信する。また、パケット送信部１０１は、ストリーム制御パケット生成部１０５からのストリーム制御用パケットＡを複数のストリーム受信端末２に送信する。また、パケット送信部１０１は、ストリーム制御パケット生成部１０５からの複数のストリーム制御用パケットＣをそれぞれ複数のストリーム受信端末２に送信する。
【００２４】
パケット受信部１０２は、それぞれ複数のストリーム受信端末２から送信された複数のストリーム制御用パケットＢを受信し、ストリーム制御パケット解析部１０６に出力する。また、パケット受信部１０２は、複数のストリーム受信端末２から送信された複数のストリーム制御パケットＤを受信し、ストリーム制御パケット解析部１０６に出力する。
【００２５】
コンテンツデータ蓄積部１０３は、ストリーム受信端末２へ送信するコンテンツデータを蓄積している。
【００２６】
ストリームデータ作成部１０４は、コンテンツデータ蓄積部１０３に蓄積されたコンテンツデータを含むストリームパケットＰを生成する。ストリームデータ作成部１０４は、ストリームパケットＰを送信するときに、その時刻を表すストリームパケット送信時刻ＸをストリームパケットＰに含める（付加する）。ストリームデータ作成部１０４は、予め決められた送信タイミングで、このストリームパケットＰを、パケット送信部１０１を介して複数のストリーム受信端末２へ送信する。送信タイミングは、制御パラメータ管理部１０８により管理され、複数のストリーム受信端末２に対してストリームパケットＰを送信するタイミングを表している。
【００２７】
ストリーム制御パケット生成部１０５は、ストリームデータ作成部１０４が（パケット送信部１０１を介してストリーム受信端末２に）ストリームパケットＰを送信した後に、ストリーム制御パケットＡを生成する。ストリーム制御パケット生成部１０５は、ストリーム制御パケットＡを送信するときに、その時刻を表す制御パケット送信時刻Ｔ１をストリーム制御パケットＡに含める（付加する）。ストリーム制御パケット生成部１０５は、このストリーム制御パケットＡを、パケット送信部１０１を介して複数のストリーム受信端末２へ送信する。
【００２８】
また、ストリーム制御パケット生成部１０５は、それぞれ複数のストリーム受信端末２からの複数のストリーム制御パケットＢに応じて、複数のストリーム制御パケットＣを生成する。ストリーム制御パケット生成部１０５は、複数のストリーム制御パケットＣを送信するときに、それぞれ、パケット往復時間計算部１０７により計算された複数のパケット往復時間ＲＴＴを複数のストリーム制御パケットＣに含める（付加する）。ストリーム制御パケット生成部１０５は、この複数のストリーム制御パケットＣを、それぞれ、パケット送信部１０１を介して複数のストリーム受信端末２へ送信する。
【００２９】
ストリーム制御パケット解析部１０６は、パケット受信部１０２により受信される複数のパケットを解析する。その結果、複数のパケットがそれぞれ複数のストリーム制御パケットＢである場合、ストリーム制御パケット解析部１０６は、複数のストリーム制御パケットＢをパケット往復時間計算部１０７へ出力する。一方、複数のパケットがそれぞれ複数のストリーム制御パケットＤである場合、ストリーム制御パケット解析部１０６は、複数のストリーム制御パケットＤを制御パラメータ管理部１０８へ出力する。
【００３０】
パケット往復時間計算部１０７は、それぞれ、複数のストリーム制御パケットＢに含まれる制御パケット送信時間Ｔ１及び経過時間αと、複数のストリーム制御パケットＢをそれぞれパケット受信部１０２が受信したときの複数の制御パケット受信時刻Ｔ２とに基づいて、ストリーム送信サーバ１が複数のストリーム受信端末２にストリーム制御パケットＡを送信してから、複数のストリーム受信端末２から複数のストリーム制御パケットＢを受信するまでに、パケットが往復するのに必要な時間を表す複数のパケット往復時間ＲＴＴを計算する。複数のパケット往復時間ＲＴＴの各々は、
ＲＴＴ（秒）＝Ｔ２−Ｔ１−α（秒）
により表される。パケット往復時間計算部１０７は、複数のパケット往復時間ＲＴＴをストリーム制御パケット生成部１０５と制御パラメータ管理部１０８とに出力する。
【００３１】
制御パラメータ管理部１０８は、パケット往復時間計算部１０７により計算された複数のパケット往復時間ＲＴＴと、複数のストリーム受信端末２により計算された複数の時刻差Ｚとを管理する。例えば、制御パラメータ管理部１０８は、複数のパケット往復時間ＲＴＴと複数の時刻差Ｚとを管理するための送信側制御パラメータ記憶部（図示しない）を備えている。この送信側制御パラメータ記憶部には、複数のストリーム受信端末２のそれぞれを識別するための複数の端末識別子と、複数のストリーム受信端末２に対してストリームパケットＰを送信するタイミングを表す送信タイミングとが予め格納されている。制御パラメータ管理部１０８は、複数の端末識別子に対応付けて、複数のパケット往復時間ＲＴＴと複数の時刻差Ｚとを送信側制御パラメータ記憶部に格納しておく。
【００３２】
送信タイミング制御部１０９は、制御パラメータ管理部１０８により管理されている複数の時刻差Ｚに基づいて、ストリーム送信サーバ１における時刻を基準とした場合に設定時刻に複数のストリーム受信端末２がストリームパケットＰに含まれるコンテンツデータを同時に再生するためのタイミングを表す複数の調整送信タイミングを決定する。ここで、複数の調整送信タイミングは、複数の時刻差Ｚの中から、その時刻差が大きい順に決定される。送信タイミング制御部１０９は、送信タイミングに代えて、複数の調整送信タイミングを、複数の端末識別子に対応付けて、制御パラメータ管理部１０８の送信側制御パラメータ記憶部に格納（更新）する。即ち、送信タイミング制御部１０９は、それぞれ、複数のストリーム受信端末２に対するストリームパケットＰの送信タイミングを複数の調整信タイミングに変更する。これにより、ストリームデータ作成部１０４は、次にストリームパケットＰを送信する場合、それぞれ、送信タイミングに代えて、複数の調整送信タイミングで、ストリームパケットＰを、パケット送信部１０１を介して複数のストリーム受信端末２へ送信する。
【００３３】
複数のストリーム受信端末２の各々は、更に、パケット送信部２０１と、パケット受信部２０２と、ストリームデータ再生部２０３と、ストリームデータ表示部２０４と、ストリーム制御パケット生成部２０５と、ストリーム制御パケット解析部２０６と、パケット経過時間取得部２０７と、時刻差計算部２０８と、制御パラメータ管理部２０９と、再生タイミング制御部２１０と、を備えている。
【００３４】
パケット送信部２０１は、ストリーム制御パケット生成部２０５からのストリーム制御用パケットＢをストリーム送信サーバ１に送信する。また、パケット送信部２０１は、ストリーム制御パケット生成部２０５からのストリーム制御パケットＤをストリーム送信サーバ１に送信する。
【００３５】
パケット受信部２０２は、ストリーム送信サーバ１から送信されたパケットを受信し、そのパケットがストリームパケットＰである場合、ストリームデータ再生部２０３に出力する。また、パケット受信部２０２は、そのパケットがストリーム制御パケットＡ又はストリーム制御パケットＣである場合、ストリーム制御パケット解析部２０６に出力する。
【００３６】
ストリームデータ再生部２０３は、パケット受信部２０２からのストリームパケットＰを受け取り、そのストリームパケットＰに含まれるコンテンツデータを再生する。また、ストリームデータ再生部２０３は、ストリームパケットＰに含まれるストリームパケット送信時刻Ｘと、コンテンツデータを再生したときの複数のデータ再生時刻Ｙとを時刻差計算部２０８に出力する。
【００３７】
ストリームデータ表示部２０４は、ストリームデータ再生部２０３により再生されたコンテンツを出力して、利用者に提供する。例えば、ストリームデータ表示部２０４は、ディスプレイとスピーカとを含んでいる。コンテンツが、映像を表す映像データを含んでいる場合、映像データがディスプレイに表示される。コンテンツが、音声を表す音声データを含んでいる場合、音声データがスピーカに出力される。
【００３８】
ストリーム制御パケット生成部２０５は、ストリーム送信サーバ１からのストリーム制御パケットＡに応じて、ストリーム制御パケットＢを生成する。ストリーム制御パケットＢは、ストリーム制御パケットＡに含まれる制御パケット送信時刻Ｔ１を含んでいる。また、ストリーム制御パケット生成部２０５は、ストリーム制御パケットＢを送信するときに、パケット経過時間取得部２０７にアクセスし、パケット経過時間取得部２０７からの経過時間αをストリーム制御パケットＢに含める（付加する）。ストリーム制御パケット生成部２０５は、このストリーム制御パケットＢを、パケット送信部２０１を介してストリーム送信サーバ１へ送信する。
【００３９】
ストリーム制御パケット生成部２０５は、ストリーム送信サーバ１からのストリーム制御パケットＣに応じて、ストリーム制御パケットＤを生成する。ストリーム制御パケット生成部２０５は、ストリーム制御パケットＤを送信するときに、時刻差計算部２０８からの時刻差Ｚをストリーム制御パケットＤに含める（付加する）。ストリーム制御パケット生成部２０５は、このストリーム制御パケットＤを、パケット送信部２０１を介してストリーム送信サーバ１へ送信する。
【００４０】
ストリーム制御パケット解析部２０６は、パケット受信部２０２により受信されるパケットを解析する。その結果、パケットがストリーム制御パケットＡである場合、ストリーム制御パケット解析部２０６は、ストリーム制御パケットＡをストリーム制御パケット生成部２０５へ出力する。一方、パケットがストリーム制御パケットＣである場合、ストリーム制御パケット解析部２０６は、ストリーム制御パケットＣを時刻差計算部２０８へ出力する。
【００４１】
パケット経過時間取得部２０７は、パケット受信部２０２がストリーム制御パケットＡを受信したときにカウントを開始する。パケット経過時間取得部２０７は、ストリーム制御パケット生成部２０５からアクセスされたときに、カウント値に対応する経過時間αをストリーム制御パケット生成部２０５に出力する。
【００４２】
時刻差計算部２０８は、ストリームデータ再生部２０３からのストリームパケット送信時刻Ｘと複数のデータ再生時刻Ｙとを格納するためのストリーム送受信記憶部（図示しない）を備えている。時刻差計算部２０８は、ストリーム制御パケット解析部２０６からのストリーム制御パケットＣに含まれるパケット往復時間ＲＴＴと、ストリーム送受信記憶部に格納されたストリームパケット送信時刻Ｘ及び複数のデータ再生時刻Ｙとに基づいて、ストリーム送信サーバ１の内蔵タイマが表す時刻を基準とした場合にストリーム送信サーバ１と自身のストリーム受信端末２との間の相対的な時間差を表す時刻差Ｚを計算する。時刻差Ｚは、
Ｚ（秒）＝Ｙ−Ｘ−（ＲＴＴ÷２）
により表される。時刻差計算部２０８は、その時刻差Ｚをストリーム制御パケット生成部２０５と制御パラメータ管理部２０９とに出力する。
【００４３】
制御パラメータ管理部２０９は、時刻差計算部２０８からの時刻差Ｚやジッタバッファのサイズといった再生タイミングを制御するためのストリーム再生制御用のパラメータを管理する。例えば、制御パラメータ管理部２０９は、ストリーム再生制御用のパラメータを格納するための受信側制御パラメータ記憶部（図示しない）を備えている。
【００４４】
再生タイミング制御部２１０は、制御パラメータ管理部２０９により管理されているストリーム再生制御用のパラメータを使用し、ジッタバッファのサイズ変更によるストリームデータの再生までのバッファリング時間の変更といった再生タイミングの制御を行う。
【００４５】
［動作］
次に、本発明の第１実施例によるストリーム同期再生システムの動作について説明する。図２は、そのストリーム同期再生システムの動作を示すシーケンス図である。
【００４６】
（ステップＳ１）
まず、ストリーム送信サーバ１のストリームデータ作成部１０４は、ストリームパケットＰを生成し、予め決められた送信タイミングで、パケット送信部１０１を介して複数のストリーム受信端末２へ送信する。ストリームパケットＰは、コンテンツデータ蓄積部１０３に蓄積されたコンテンツデータと、ストリームパケットＰを送信するときの時刻を表すストリームパケット送信時刻Ｘとを含んでいる。送信タイミングは、複数のストリーム受信端末２に対してストリームパケットＰを送信するタイミングを表している。
【００４７】
複数のストリーム受信端末２のパケット受信部２０２は、それぞれ、ストリーム送信サーバ１から送信されたストリームパケットＰを受信し、複数のストリーム受信端末２のストリームデータ再生部２０３へ出力する。複数のストリーム受信端末２のストリームデータ再生部２０３は、そのストリームパケットＰに含まれるコンテンツデータを再生する。複数のストリーム受信端末２のストリームデータ表示部２０４は、それぞれ、複数のストリーム受信端末２のストリームデータ再生部２０３により再生されたコンテンツを出力して、利用者へ提供する。コンテンツが、映像を表す映像データを含んでいる場合、ストリームデータ表示部２０４は、映像データを自身のディスプレイに表示する。コンテンツが、音声を表す音声データを含んでいる場合、ストリームデータ表示部２０４は、音声データを自身のスピーカに出力する。また、複数のストリーム受信端末２のストリームデータ再生部２０３は、それぞれ、ストリームパケットＰに含まれるストリームパケット送信時刻Ｘと、コンテンツデータを再生したときの複数のデータ再生時刻Ｙとを、複数のストリーム受信端末２の時刻差計算部２０８のストリーム送受信記憶部に格納する。
【００４８】
（ステップＳ２）
ストリーム送信サーバ１のストリーム制御パケット生成部１０５は、ストリームデータ作成部１０４がストリームパケットＰを送信した後に、ストリーム制御パケットＡを生成し、パケット送信部１０１を介して複数のストリーム受信端末２へ送信する。ストリーム制御パケットＡは、ストリーム制御パケットＡを送信するときの時刻を表す制御パケット送信時刻Ｔ１を含んでいる。
【００４９】
（ステップＳ３、Ｓ４）
複数のストリーム受信端末２のパケット受信部２０２は、それぞれ、ストリーム送信サーバ１から送信されたストリーム制御パケットＡを受信し、複数のストリーム受信端末２のストリーム制御パケット解析部２０６を介して、複数のストリーム受信端末２のストリーム制御パケット生成部２０５へ出力する。複数のストリーム受信端末２のストリーム制御パケット生成部２０５は、それぞれ、ストリーム制御パケットＡに応じて、複数のストリーム制御パケットＢを生成し、複数のストリーム受信端末２のパケット送信部２０１を介してストリーム送信サーバ１へ送信する。複数のストリーム制御パケットＢは、それぞれストリーム制御パケットＡに含まれる制御パケット送信時刻Ｔ１と、複数のストリーム受信端末２がストリーム制御パケットＡを受信してから、複数のストリーム制御パケットＢを送信するまでの時間を表す複数の経過時間αとを含んでいる。
【００５０】
（ステップＳ５）
ストリーム送信サーバ１のパケット受信部１０２は、それぞれ複数のストリーム受信端末２から送信された複数のストリーム制御用パケットＢを受信し、ストリーム制御パケット解析部１０６を介して、パケット往復時間計算部１０７へ出力する。パケット往復時間計算部１０７は、それぞれ、複数のストリーム制御パケットＢに含まれる制御パケット送信時間Ｔ１及び複数の経過時間αと、複数のストリーム制御パケットＢをパケット受信部１０２が受信したときの複数の制御パケット受信時刻Ｔ２とに基づいて、ストリーム送信サーバ１が複数のストリーム受信端末２にストリーム制御パケットＡを送信してから、複数のストリーム受信端末２から複数のストリーム制御パケットＢを受信するまでのパケットの往復時間を表す複数のパケット往復時間ＲＴＴを
ＲＴＴ（秒）＝Ｔ２−Ｔ１−α（秒）
により計算する。
【００５１】
（ステップＳ６）
ストリーム送信サーバ１のパケット往復時間計算部１０７は、複数のパケット往復時間ＲＴＴをストリーム制御パケット生成部１０５と制御パラメータ管理部１０８とに出力する。制御パラメータ管理部１０８は、複数のパケット往復時間ＲＴＴを、複数の端末識別子と送信タイミングとに対応付けて、送信側制御パラメータ記憶部に格納する。ストリーム制御パケット生成部１０５は、送信側制御パラメータ記憶部を参照して、それぞれ、複数のパケット往復時間ＲＴＴを含む複数のストリーム制御パケットＣを生成し、パケット送信部１０１を介して複数のストリーム受信端末２へ送信する。
【００５２】
（ステップＳ７）
複数のストリーム受信端末２のパケット受信部２０２は、それぞれ、ストリーム送信サーバ１から送信された複数のストリーム制御パケットＣを受信し、複数のストリーム受信端末２のストリーム制御パケット解析部２０６を介して、複数のストリーム受信端末２の時刻差計算部２０８へ出力する。複数のストリーム受信端末２の時刻差計算部２０８は、それぞれ、複数のストリーム制御パケットＣに含まれる複数のパケット往復時間ＲＴＴと、自身のストリーム送受信記憶部に格納されたストリームパケット送信時刻Ｘ及び複数のデータ再生時刻Ｙとに基づいて、ストリーム送信サーバ１の内蔵タイマが表す時刻を基準とした場合にストリーム送信サーバ１と複数のストリーム受信端末２との間の相対的な時間差を表す複数の時刻差Ｚを
Ｚ（秒）＝Ｙ−Ｘ−（ＲＴＴ÷２）
により計算する。
【００５３】
（ステップＳ８）
複数のストリーム受信端末２の時刻差計算部２０８は、それぞれ、複数の時刻差Ｚを複数のストリーム受信端末２のストリーム制御パケット生成部２０５と制御パラメータ管理部２０９とに出力する。複数のストリーム受信端末２の制御パラメータ管理部２０９は、それぞれ、複数のストリーム再生制御用のパラメータとして、複数の時刻差Ｚを自身の受信側制御パラメータ記憶部に格納する。複数のストリーム再生制御用のパラメータは、それぞれ、複数のストリーム受信端末２の再生タイミング制御部２１０により再生タイミングの制御に用いられる。複数のストリーム受信端末２のストリーム制御パケット生成部２０５は、それぞれ、複数の時刻差Ｚを含む複数のストリーム制御パケットＤを生成し、複数のストリーム受信端末２のパケット送信部２０１を介してストリーム送信サーバ１へ送信する。
【００５４】
ストリーム送信サーバ１のパケット受信部１０２は、それぞれ複数のストリーム受信端末２から送信された複数のストリーム制御用パケットＤを受信し、ストリーム制御パケット解析部１０６を介して、制御パラメータ管理部１０８へ出力する。制御パラメータ管理部１０８は、それぞれ、複数のストリーム制御パケットＤに含まれる複数の時刻差Ｚを、複数の端末識別子と送信タイミングと複数のパケット往復時間ＲＴＴとに対応付けて、送信側制御パラメータ記憶部に格納する。
【００５５】
ストリーム送信サーバ１の送信タイミング制御部１０９は、制御パラメータ管理部１０８の送信側制御パラメータ記憶部に格納された複数の時刻差Ｚに基づいて、ストリーム送信サーバ１の内蔵タイマが表す時刻を基準とした場合に設定時刻に複数のストリーム受信端末２がストリームパケットＰに含まれるコンテンツデータを同時に再生するためのタイミングを表す複数の調整送信タイミングを決定する。ここで、複数の調整送信タイミングは、複数の時刻差Ｚの中から、その時刻差が大きい順に決定される。送信タイミング制御部１０９は、送信タイミングに代えて、複数の調整送信タイミングを、複数の端末識別子に対応付けて制御パラメータ管理部１０８の送信側制御パラメータ記憶部に格納する。
【００５６】
これにより、ストリーム送信サーバ１のストリームデータ作成部１０４は、次にストリームパケットＰを送信する場合、送信側制御パラメータ記憶部を参照して、それぞれ、送信タイミングに代えて、複数の調整送信タイミングで、ストリームパケットＰを、パケット送信部１０１を介して複数のストリーム受信端末２へ送信する。
【００５７】
このとき、複数のストリーム受信端末２のパケット受信部２０２は、それぞれ、ストリーム送信サーバ１から複数の調整送信タイミングによって送信されたストリームパケットＰを受信し、複数のストリーム受信端末２のストリームデータ再生部２０３へ出力する。複数のストリーム受信端末２のストリームデータ再生部２０３は、それぞれ、複数のストリーム受信端末２の制御パラメータ管理部２０９の受信側制御パラメータ記憶部を参照して、ストリームパケットＰに含まれるストリームパケット送信時刻Ｘに対して複数の時刻差Ｚが経過したときに、ストリームパケットＰに含まれるコンテンツデータを再生する。複数のストリーム受信端末２のストリームデータ表示部２０４は、それぞれ、複数のストリーム受信端末２のストリームデータ再生部２０３により再生されたコンテンツを出力して、利用者へ提供する。
【００５８】
調整送信タイミングについて図３〜図５を用いて説明する。ここで、図３〜図５では、ある時刻を“秒”で表すものとし、ストリーム送信サーバ１の内蔵タイマが表す時刻を基準としたときの設定時刻を“３００”とする。また、ストリーム送信サーバ１を利用・管理する者を送信者Ａと称し、複数のストリーム受信端末２を利用する者をそれぞれ受信者Ｂ１、Ｂ２、…と称する。複数のストリーム受信端末２のうちの、受信者Ｂ１に利用されるストリーム受信端末２を第１ストリーム受信端末２とし、受信者Ｂ２に利用されるストリーム受信端末２を第２ストリーム受信端末２とする。
【００５９】
図３に示されるように、ストリーム送信サーバ１（送信者Ａ）は、送信タイミングで、ストリームパケットＰを第１ストリーム受信端末２（受信者Ｂ１）、第２ストリーム受信端末２（受信者Ｂ２）にこの順に送信する。この場合、送信者Ａは、ストリームパケットＰを、時刻“２７０”に受信者Ｂ１へ送信し、時刻“２８０”に受信者Ｂ２へ送信している。しかし、送信者Ａと受信者Ｂ１、Ｂ２との間で時刻が統一されていないため、時刻“３００”で再生されるように送信しても、受信者Ｂ１とＢ２の間で再生されるタイミングが異なる結果になる。
【００６０】
そこで、図４に示されるように、ストリーム送信サーバ１（送信者Ａ）は、ストリーム送信サーバ１の内蔵タイマが表す時刻を基準とした場合に設定時刻“３００”に複数のストリーム受信端末２がストリームパケットＰを同時に再生するために、調整送信タイミングで、ストリームパケットＰを第２ストリーム受信端末２（受信者Ｂ２）、第１ストリーム受信端末２（受信者Ｂ１）にこの順に送信する。この場合、送信者Ａは、送信者Ａを基準とした時刻において、受信者Ｂ１が時刻“＋１０”、受信者Ｂ２が時刻“−１０”のずれがあることが計算できる（図５参照）。そのため、送信者Ａは、ストリームパケットＰを受信者Ｂ１が時刻“３１０”から再生するように、時刻“２８５”に受信者Ｂ１へ送信し、ストリームパケットＰを受信者Ｂ２が時刻“２９０”から再生するように、時刻“２８０”に受信者Ｂ２へ送信する。このようにして、送信者Ａの時刻“３００”において受信者Ｂ１及び受信者Ｂ２で同時に再生できるよう調整を行う。
【００６１】
［効果］
次に、本発明の第１実施例によるストリーム同期再生システムにおける効果について説明する。
【００６２】
上述のように、ストリーム送信サーバ１は、コンテンツデータを含むストリームパケットＰを予め決められた送信タイミングで複数のストリーム受信端末２に送信する。このとき、複数のストリーム受信端末２は、ストリームパケットＰに含まれるコンテンツデータを再生する。
ストリーム送信サーバ１は、ストリームパケットＰを送信した後に、ストリーム制御パケットＡを生成して複数のストリーム受信端末２に送信する。このとき、複数のストリーム受信端末２は、それぞれ、ストリーム制御パケットＡに応じて複数のストリーム制御パケットＢを生成してストリーム送信サーバ１に送信する。
ストリーム送信サーバ１は、それぞれ、ストリーム送信サーバ１が複数のストリーム受信端末２にストリーム制御パケットＡを送信してから、複数のストリーム受信端末２から複数のストリーム制御パケットＢを受信するまでのパケットの往復時間を表す複数のパケット往復時間ＲＴＴを計算する。このとき、ストリーム送信サーバ１は、それぞれ、複数のパケット往復時間ＲＴＴを含む複数のストリーム制御パケットＣを生成し、複数のストリーム受信端末２に送信する。
複数のストリーム受信端末２は、それぞれ、複数のストリーム制御パケットＣに含まれる複数のパケット往復時間ＲＴＴに基づいて、ストリーム送信サーバ１と複数のストリーム受信端末２との間の相対的な時間差を表す複数の時刻差Ｚを計算する。このとき、複数のストリーム受信端末２は、それぞれ、複数の時刻差Ｚを含む複数のストリーム制御パケットＤを生成してストリーム送信サーバ１に送信する。
ストリーム送信サーバ１は、それぞれ、複数のストリーム制御パケットＤに含まれる複数の時刻差Ｚに基づいて、ストリーム送信サーバ１の内蔵タイマが表す時刻を基準とした場合に設定時刻に複数のストリーム受信端末２がストリームパケットＰに含まれるコンテンツデータを同時に再生するための複数の調整送信タイミングを決定する。これにより、ストリーム送信サーバ１は、次にストリームパケットＰを送信する場合、それぞれ、前記送信タイミングに代えて複数の調整送信タイミングで、ストリームパケットＰを複数のストリーム受信端末２に送信する。
【００６３】
このように、本発明の第１実施例によるストリーム同期再生システムでは、ストリーム送信サーバ１とストリーム受信端末２との間のパケット往復時間ＲＴＴと時刻差Ｚを求めることにより、送信側（ストリーム送信サーバ１）と複数の受信側（ストリーム受信端末２）との間で事前に時刻を同期させることなく、複数のストリーム受信端末２におけるストリーム再生（ストリームパケットのコンテンツデータの再生）を同期することができる。
【００６４】
（第２実施例）
［構成］
特許文献１に記載された技術では、ストリームのパケット内に実時間を記述するにはプロトコルの拡張が必要であるため、その効果が拡張プロトコルを実装したものに限られる。本発明の第２実施例によるストリーム同期再生システムでは、ストリーム送信サーバ１と複数のストリーム受信端末２は、ＲＴＰ（Ｒｅａｌ−ｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）に適用され、ＲＴＣＰ（ＲＴＰ  Ｃｏｎｔｒｏｌ  Ｐａｃｋｅｔ）の仕様に従って、ストリームＰに含まれるコンテンツデータの再生を同期する。これについて説明する。ここで、第２実施例では、第１実施例と重複する説明を省略する。
【００６５】
図６Ａに示されるように、ストリーム制御パケット生成部１０５は、ＳＲパケット生成部１０５１と、ＡＰＰパケット生成部１０５２と、を備えている。図６Ｂに示されるように、ストリーム制御パケット解析部１０６は、ＲＲパケット解析部１０６１と、ＡＰＰパケット生成部１０６２と、を備えている。図６Ｃに示されるように、ストリーム制御パケット生成部２０５は、ＲＲパケット生成部２０５１と、ＡＰＰパケット生成部２０５２と、を備えている。図６Ｄに示されるように、ストリーム制御パケット解析部２０６は、ＳＲパケット解析部２０６１と、ＡＰＰパケット生成部２０６２と、を備えている。
【００６６】
［動作］
次に、本発明の第２実施例によるストリーム同期再生システムの動作について説明する。
【００６７】
ストリーム送信サーバ１のストリーム制御パケット生成部１０５において、ＳＲパケット生成部１０５１は、ＲＴＣＰ（ＲＴＰ  Ｃｏｎｔｒｏｌ  Ｐａｃｋｅｔ）の仕様に従って、ＳＲパケットをストリーム制御パケットＡとして生成する。ＳＲパケットは、制御パケット送信時刻Ｔ１を含んでいる。
【００６８】
また、ストリーム送信サーバ１のストリーム制御パケット生成部１０５において、ＡＰＰパケット生成部１０５２は、ＲＴＣＰの仕様に従って、ＡＰＰパケットをストリーム制御パケットＣとして生成する。ＡＰＰパケットは、パケット往復時間ＲＴＴを含んでいる。
【００６９】
ストリーム送信サーバ１のストリーム制御パケット解析部１０６において、ＲＲパケット解析部１０６１は、パケット受信部１０２により受信される複数のパケットを解析する。その結果、複数のパケットがそれぞれ複数のＲＲパケット（ストリーム制御パケットＢ）である場合、ＲＲパケット解析部１０６１は、複数のＲＲパケットをパケット往復時間計算部１０７へ出力する。複数のＲＲパケットは、それぞれ、制御パケット送信時刻Ｔ１と複数の経過時間αとを含んでいる。
【００７０】
また、ストリーム送信サーバ１のストリーム制御パケット解析部１０６において、ＡＰＰパケット生成部１０６２は、パケット受信部１０２により受信される複数のパケットを解析する。その結果、複数のパケットがそれぞれ複数のＡＰＰパケット（ストリーム制御パケットＤ）である場合、ＡＰＰパケット生成部１０６２は、複数のＡＰＰパケットを制御パラメータ管理部１０８へ出力する。複数のＡＰＰパケットは、それぞれ、複数の時刻差Ｚを含んでいる。
【００７１】
複数のストリーム受信端末２の各々のストリーム制御パケット生成部２０５において、ＲＲパケット生成部２０５１は、ＲＴＣＰの仕様に従って、制御パケット送信時刻Ｔ１と経過時間αを含むＲＲパケットをストリーム制御パケットＢとして生成する。
【００７２】
また、複数のストリーム受信端末２の各々のストリーム制御パケット生成部２０５において、ＡＰＰパケット生成部２０５２は、ＲＴＣＰの仕様に従って、時刻差Ｚを含むＡＰＰパケットをストリーム制御パケットＤとして生成する。
【００７３】
複数のストリーム受信端末２の各々のストリーム制御パケット解析部２０６において、ＳＲパケット解析部２０６１は、パケット受信部２０２により受信されるパケットを解析する。その結果、パケットが、制御パケット送信時刻Ｔ１を含むＳＲパケット（ストリーム制御パケットＡ）である場合、ＳＲパケット解析部２０６１は、ＳＲパケットをストリーム制御パケット生成部２０５へ出力する。
【００７４】
また、複数のストリーム受信端末２の各々のストリーム制御パケット解析部２０６において、ＡＰＰパケット生成部２０６２は、パケット受信部２０２により受信されるパケットを解析する。その結果、パケットが、パケット往復時間ＲＴＴを含むＡＰＰパケット（ストリーム制御パケットＣ）である場合、ＡＰＰパケット生成部２０６２は、ＡＰＰパケットを時刻差計算部２０８へ出力する。例えば、ＡＰＰパケットにパラメータを入れる際には、図７に示されるようなフォーマットにより、ＲＴＰの仕様に基づいて機能追加を行うことができる。
【００７５】
［効果］
これにより、本発明の第２実施例によるストリーム同期再生システムでは、第１実施例のそれをＲＴＰの仕様に従って実現することが可能である。
【００７６】
（第３実施例）
［構成］
本発明の第３実施例によるストリーム同期再生システムでは、ストリーム送信サーバ１は、ストリームパケットＰを調整送信タイミングで送信する際、全てのストリーム受信端末２毎にストリームパケットＰを送信するのではなく、１度のパケット送信によりタイミングが近い複数の送信先へ送信する。例えば、図８に示されるように、送信タイミングが近い受信者Ｂ２と受信者Ｂ３、受信者Ｂ１と受信者Ｂ４をそれぞれ１つのグループとしてパターン分けし、グループ毎に各ストリーム受信端末２に対してパケットを同時に送信する。これにより、ストリーム送信サーバ１のパケット送信負荷を軽減する。これについて説明する。ここで、第３実施例では、第１、２実施例と重複する説明を省略する。
【００７７】
［動作］
ストリーム送信サーバ１において、送信タイミング制御部１０９は、前述の複数の調整送信タイミングとして１番目からＮ番目（Ｎは整数）までのＮ個の調整送信タイミングに対して、各々のタイミングが近い１グループ目からＭグループ目（ＭはＭ＜Ｎを満たす整数）までのＭグループの調整送信タイミング群を生成する。このとき、送信タイミング制御部１０９は、複数の調整送信タイミングとして、Ｍグループの調整送信タイミング群を、複数の端末識別子に対応付けて制御パラメータ管理部１０８の送信側制御パラメータ記憶部に格納する。
【００７８】
ストリームデータ作成部１０４は、複数のストリーム受信端末２としてＮ個のストリーム受信端末２に対して、次にストリームパケットＰを送信する。この場合、ストリームデータ作成部１０４は、Ｎ個のストリーム受信端末２のうちの、Ｍグループの調整送信タイミング群に対応するＭグループの受信端末群２にストリームパケットＰを、パケット送信部１０１を介して同時に送信する。
【００７９】
［効果］
これにより、本発明の第３実施例によるストリーム同期再生システムでは、ストリーム受信端末２毎に別々のタイミングでパケットの送信に伴う処理を行う必要がなく、ストリーム送信サーバ１のパケット送信負荷を軽減することができる。
【図面の簡単な説明】
【００８０】
【図１】本発明の第１実施例によるストリーム同期再生システムの構成を示すブロック図である。
【図２】本発明の第１実施例によるストリーム同期再生システムの動作を示すシーケンス図である。
【図３】従来のストリーム同期再生システムの動作の説明として、ストリーム同期再生のタイミングを示す図である。
【図４】本発明の第１実施例によるストリーム同期再生システムの動作の説明として、ストリーム同期再生のタイミングを示す図である。
【図５】図４における送信者Ａと受信者Ｂ１、受信者Ｂ２の時刻とパケット送信時間の差を示す表である。
【図６Ａ】本発明の第２実施例によるストリーム同期再生システムにおいて、ストリーム制御パケット生成部１０５の構成を示すブロック図である。
【図６Ｂ】本発明の第２実施例によるストリーム同期再生システムにおいて、ストリーム制御パケット解析部１０６の構成を示すブロック図である。
【図６Ｃ】本発明の第２実施例によるストリーム同期再生システムにおいて、ストリーム制御パケット生成部２０５の構成を示すブロック図である。
【図６Ｄ】本発明の第２実施例によるストリーム同期再生システムにおいて、ストリーム制御パケット解析部２０６の構成を示すブロック図である。
【図７】本発明の第２実施例によるストリーム同期再生システムにおいて、ＲＴＣＰのＡＰＰパケットのフォーマットを示す図である。
【図８】本発明の第３実施例によるストリーム同期再生システムの動作の説明として、ストリーム同期のタイミングを示す図である。
【符号の説明】
【００８１】
１        ストリーム送信サーバ、
１０１    パケット送信部、
１０２    パケット受信部、
１０３    コンテンツデータ蓄積部、
１０４    ストリームデータ作成部、
１０５    ストリーム制御パケット生成部、
１０６    ストリーム制御パケット解析部、
１０７    パケット往復時間計算部、
１０８    制御パラメータ管理部、
１０９    送信タイミング制御部、
１０５１  ＳＲパケット生成部、
１０５２  ＡＰＰパケット生成部、
１０６１  ＲＲパケット解析部、
１０６２  ＡＰＰパケット解析部、
２        ストリーム受信端末、
２０１    パケット送信部、
２０２    パケット受信部、
２０３    ストリームデータ再生部、
２０４    ストリームデータ表示部、
２０５    ストリーム制御パケット生成部、
２０６    ストリーム制御パケット解析部、
２０７    パケット経過時間取得部、
２０８    時刻差計算部、
２０９    制御パラメータ管理部、
２１０    再生タイミング制御部、
２０５１  ＲＲパケット生成部、
２０５２  ＡＰＰパケット生成部、
２０６１  ＳＲパケット解析部、
２０６２  ＡＰＰパケット解析部、
３        ネットワーク、
【図１】
2009081654.tif 000003
【図２】
2009081654.tif 000004
【図３】
2009081654.tif 000005
【図４】
2009081654.tif 000006
【図５】
2009081654.tif 000007
【図６Ａ】
2009081654.tif 000008
【図６Ｂ】
2009081654.tif 000009
【図６Ｃ】
2009081654.tif 000010
【図６Ｄ】
2009081654.tif 000011
【図７】
2009081654.tif 000012
【図８】
2009081654.tif 000013