JP2003163691A - データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム - Google Patents

データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム

Info

Publication number
JP2003163691A
JP2003163691A JP2001362259A JP2001362259A JP2003163691A JP 2003163691 A JP2003163691 A JP 2003163691A JP 2001362259 A JP2001362259 A JP 2001362259A JP 2001362259 A JP2001362259 A JP 2001362259A JP 2003163691 A JP2003163691 A JP 2003163691A
Authority
JP
Japan
Prior art keywords
data
server
system clock
master server
slave
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2001362259A
Other languages
English (en)
Other versions
JP3906678B2 (ja
JP2003163691A5 (ja
Inventor
Kenji Yamane
健治 山根
Satoshi Futenma
智 普天間
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2001362259A priority Critical patent/JP3906678B2/ja
Publication of JP2003163691A publication Critical patent/JP2003163691A/ja
Publication of JP2003163691A5 publication Critical patent/JP2003163691A5/ja
Application granted granted Critical
Publication of JP3906678B2 publication Critical patent/JP3906678B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

(57)【要約】 【課題】 異なるシステムクロックに基づくサンプリン
グレートに従った異なるメディアの受信、同期再生を、
サーバ間における同期処理に基づいて可能とする。 【解決手段】 データ受信端末が、複数のデータ送信サ
ーバから1つのマスターサーバを選択したリストを各サ
ーバに送信し、リストによって選択されたマスターサー
バがタイムスタンプを格納した同期パケットを定期的に
スレーブサーバに送信する。スレーブサーバは、同期パ
ケットに基づいてマスターおよびスレーブ間のクロック
差を算出し、算出値に従って転送レートを変更する。本
構成により、マスターサーバのクロックに同期した複数
サーバからの複数のメディア転送が可能となる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データ通信システ
ム、データ送信装置、データ受信装置、および方法、並
びにコンピュータ・プログラムに関する。さらに詳細に
は、ストリーミングデータ転送における同期処理の改善
を図ったデータ通信システム、データ送信装置、データ
受信装置、および方法、並びにコンピュータ・プログラ
ムに関する。
【0002】
【従来の技術】昨今、インターネット通信など、様々な
通信媒体を介した画像、音声データ等のデータ転送が盛
んに行われている。特に、近年においては、インターネ
ット上のデータ転送において、従来から利用されている
ダウンロード型伝送方式に加えて、ストリーム型伝送方
式によるサービスが増加してきている。ダウンロード型
伝送方式においては、映像ファイルや音声ファイルとい
ったマルチメディアデータを伝送する場合、配信サーバ
からデータファイルを一旦受信側端末の記憶媒体にダウ
ンロードして、その後、記憶媒体から再生することにな
る。よって、この方式ではファイルを完全に転送が終わ
るまでは再生できず、長時間再生やリアルタイム再生な
どには不向きである。
【0003】一方、後者のストリーム型伝送方式では、
送信側から受信端末にデータ転送が行われている間に、
並列して受信データの再生処理を実行するものであり、
インターネット電話・遠隔テレビ会議・ビデオオンデマ
ンドといったインターネットサービスに利用されてい
る。
【0004】ストリーム型伝送方式は、例えば画像デー
タのMPEG圧縮処理により生成されるMPEGストリ
ームをIP(Internet Protocol)パケットに格納して
インターネット上を転送させて、PCやPDA、携帯電
話等の各通信端末において受信するシステム等において
使用され、開発が進んでいる。このような技術は、ビデ
オオンデマンドやライブ映像のストリーミング配信、あ
るいはビデオ会議、テレビ電話などのリアルタイム通信
において有効となる。
【0005】このようなストリーム型伝送方式に適した
インターネット技術に、IETF RFC1889で規定されている
プロトコル:RTP(Realtime Transport Protocol)が
ある。RTPに従ったデータ転送では、時間情報として
パケットにタイムスタンプを付加し、タイムスタンプの
参照により送信側と受信側の時間的関係の把握を行な
い、データ受信側において、パケット転送の遅延ゆらぎ
(ジッター)などの影響を受けずに同期をとった再生を
可能としている。
【0006】このようなパケットを利用したデータ転送
において、複数の異なるデータ配信サーバから異なるデ
ータをそれぞれ配信して1つの受信端末において、これ
らの複数信号の同期した再生を行なうシステムがある。
例えば画像データと音声データとを異なるデータ配信サ
ーバから送信し、PC、携帯端末等の受信端末装置にお
いてこれらの信号ほ受信して、画像データと音声データ
との同期をとった再生を実行するような構成である。
【0007】インターネットにおいて、データ送信サイ
トから受信端末へ、データをストリーミング配信して、
受信端末において再生しようとするとき、データ送信サ
イトと受信端末のシステムクロックが同期している場合
は、メディア再生が時間のずれなく可能となるが、デー
タ送信サイトと受信端末のシステムクロックが同期して
いない場合、データ送信サイトのデータ転送レートと受
信端末のデータ出力レートが異なることになり、受信端
末においてデータ一時保管用のバッファのデータ溢れに
よる受信データの蓄積不能、すなわちバッファオーバー
フローが生じたり、再生用データの受信、バッファ蓄積
が間に合わない、すなわちバッファアンダーランが生じ
ることがある。
【0008】データ受信端末では、これらのエラー回復
処理として、例えばバッファアンダーランの場合は、受
信端末において同じ情報を再度表示あるいは出力し、ま
た、バッファオーバーフローの場合には、一旦受信した
ものの蓄積不能として廃棄したパケットの再送要求をデ
ータ送信サイトに要求するなどの処理を実行しなくては
ならない状態に陥る。また、このとき、送信者側でのメ
ディアの送信時刻と、受信者側での再生時刻が異なるな
どの不都合が生じる。
【0009】複数のデータ送信サイトから複数の受信端
末へそれぞれ、複数の異なるメディア、例えば画像デー
タと音声データとをストリーミング配信して、受信端末
においてこれら複数のメディアの同期再生を実行しよう
とするとき、上記のバッファオーバーフロー、バッファ
アンダーフローの問題が複数のメデイア配信サイトと受
信端末間でそれぞれ発生し、さらに、複数の配信メディ
ア間のずれという新たな問題が発生することになる。
【0010】それぞれ異なるメディア(例えば画像、音
声)を配信する複数のデータ送信サイト間のシステムク
ロック(サンプリングレート)が同期していることが保
証されない場合は、複数のデータ送信サイトからそれぞ
れ配信されるメディア間の時間関係を受信者側で再現す
ることが不可能であり、メディア間の同期が取れないと
いう事態が発生する。
【0011】このような複数の異なるデータ配信サイト
(サーバ)から受信する複数の異なるデータ(メディ
ア)を同期再生するための構成が種々、提案されてい
る。例えば、特開平6−303254には、ATM網ク
ロックを利用してデータ配信サーバのクロック(ソース
クロック)をデータ受信装置としての再生側で再生可能
とするソースクロック再生回路をデータ受信端末に構成
して、メディア間同期を実現する構成を開示している。
しかし、この方法では、データ受信端末は、同期処理の
ために常にATM網のクロックを受信しなくてはならな
いという問題がある。
【0012】さらに、特開平11−69327では、ビ
デオ信号と、音声信号の同期再生を実現するために、ビ
デオ信号の再生タイミングに合わせて音声信号の再生タ
イミングを調整し、特に、音声信号の無音状態を検知
し、その無音時に音声情報の出力時刻を変更するスライ
ド処理を実行することにより音声の途切れないメディア
間同期を実現する構成を開示している。しかし、この方
法は、画像信号の大幅な遅れによる音声情報のバッファ
溢れ、すなわちバッファオーバーフローの問題は何ら解
決されない。また、音声信号のスライドを無音部分で行
なおうとする構成は、無音部分の少ない音楽などのメデ
ィアには適用することができない。
【0013】さらに、特開平9−55754では、各メ
ディアの送信端末が、送信端末から受信端末までのデー
タ伝送時間を計測して、データとともに伝送時間情報を
受信端末に送信し、受信端末において、各データ送信端
末からの伝送時間情報中、最も長い最長伝送時間情報を
選択して、最長伝送時間に従って送信されるデータの再
生に合わせて、他のデータ再生処理を遅らせて各メディ
ア間の同期再生を実現する構成を開示している。しか
し、この手法では、各送信端末は、送信端末から受信端
末までのデータ伝送時間を計測して受信端末に送信する
処理が必要となり、また、受信端末では、複数の送信端
末から受信する伝送時間情報を解析する処理が必要とな
り、常に遅延時間を監視しなくてはならないという問題
がある。
【0014】
【発明が解決しようとする課題】本発明は、上述の問題
点に鑑みてなされたものであり、例えばインターネット
等のデータ通信網を介してストリーミングデータを転送
する構成において、複数のデータ送信サイトとしてのデ
ータ送信サーバから送信されるデータ(メディア)の受
信端末における同期再生を、複数サーバ間の処理に基づ
いて実現するデータ通信システム、データ送信装置、デ
ータ受信装置、および方法、並びにコンピュータ・プロ
グラムを提供することを目的とする。
【0015】
【課題を解決するための手段】本発明の第1の側面は、
各々が異なるデータを送信するデータ送信装置としての
複数のサーバと、該複数のサーバからの送信データを受
信するデータ受信装置とからなるデータ通信システムで
あり、前記データ受信装置は、同期再生処理対象となる
異なるデータを送信する複数のサーバから1つのサーバ
をマスターサーバとして選択し、その他のサーバをスレ
ーブサーバとしたサーバリストを生成して前記複数のサ
ーバに送信する処理を実行する構成を有し、前記サーバ
リストによって選択されたマスターサーバは、自己のシ
ステムクロックで計測した時間情報に基づくタイムスタ
ンプを格納した同期パケットのスレーブサーバに対する
送信処理を実行する構成を有し、前記スレーブサーバ
は、前記データ受信装置に対する送信データの転送レー
トを、前記マスターサーバのシステムクロックに同期さ
せる転送レート変更処理を実行する構成を有することを
特徴とするデータ通信システムにある。
【0016】さらに、本発明のデータ通信システムの一
実施態様において、前記スレーブサーバは、前記マスタ
ーサーバからの同期パケットのタイムスタンプと、該ス
レーブサーバのシステムクロックに基づいて計測した同
期パケット受信間隔とに基づいて、マスターサーバとス
レーブサーバ間のクロック差データを算出し、該クロッ
ク差データに基づいて、前記データ受信装置に対する送
信データの転送レートを、前記マスターサーバのシステ
ムクロックに同期させる転送レート変更処理を実行する
構成を有することを特徴とする。
【0017】さらに、本発明のデータ通信システムの一
実施態様において、前記サーバリストは、同期再生処理
対象となる異なるデータを送信する複数のサーバのアド
レス情報を含む構成であることを特徴とする。
【0018】さらに、本発明のデータ通信システムの一
実施態様において、前記データ受信装置は、マスターサ
ーバからの受信パケットのタイムスタンプと、該データ
受信装置のシステムクロックに基づいて計測したパケッ
ト受信間隔とに基づいて、該データ受信装置のシステム
クロックと、マスターサーバのシステムクロックとの差
異を算出するとともに、該算出値に基づいてマスターサ
ーバからの受信データの再生サンプリングレートを設定
する処理を実行する構成を有することを特徴とする。
【0019】さらに、本発明のデータ通信システムの一
実施態様において、前記データ受信装置は、前記マスタ
ーサーバからの受信パケットのタイムスタンプと、該デ
ータ受信装置のシステムクロックに基づいて計測したパ
ケット受信間隔とに基づいて、該データ受信装置のシス
テムクロックと、マスターサーバのシステムクロックと
の差異Aを算出し、前記差異Aに基づいてマスターサー
バからの受信データの再生サンプリングレートを設定す
るとともに、前記スレーブサーバからの受信パケットの
タイムスタンプと、該データ受信装置のシステムクロッ
クに基づいて計測したパケット受信間隔とに基づいて、
該データ受信装置のシステムクロックと、スレーブサー
バのシステムクロックとの差異Bを算出し、該差異B
と、前記差異Aとに基づいて、スレーブサーバからの受
信データの再生サンプリングレートを、マスターサーバ
のシステムクロックに同期したレートとして設定する処
理を実行する構成を有することを特徴とする。
【0020】さらに、本発明のデータ通信システムの一
実施態様において、前記マスターサーバから前記スレー
ブサーバに対する同期パケットは、タイムスタンプと、
転送レート変更対象となるアプリケーション識別データ
とを含む構成であることを特徴とする。
【0021】さらに、本発明のデータ通信システムの一
実施態様において、前記複数のサーバがデータ受信装置
に対して送信するデータは、データ転送プロトコルとし
てのRTPに従ったフォーマットを有し、前記マスター
サーバから前記スレーブサーバに対する同期パケット
は、制御プロトコルとしてのRTCPに従ったフォーマ
ットを有することを特徴とする。
【0022】さらに、本発明のデータ通信システムの一
実施態様において、前記複数のサーバ中、少なくとも1
つのサーバは、動画像データのデータ受信装置に対する
送信処理を実行し、前記複数のサーバ中、少なくとも他
の1つのサーバは、音声データの該データ受信装置に対
する送信処理を実行する構成であり、前記データ受信装
置は、各サーバから受信する動画像データおよび音声デ
ータの同期再生処理を実行する構成であることを特徴と
する。
【0023】さらに、本発明の第2の側面は、マスター
サーバおよびスレーブサーバの各々がデータ受信装置に
対して異なるデータを送信し、データ受信装置において
各サーバからの受信データの同期再生処理を実行するシ
ステムにおけるマスターサーバとしてのデータ送信装置
であり、該データ送信装置は、自己のシステムクロック
で計測した時間情報に基づくタイムスタンプを格納した
同期パケットのスレーブサーバに対する送信処理を実行
する構成を有することを特徴とするデータ送信装置にあ
る。
【0024】さらに、本発明の第3の側面は、マスター
サーバおよびスレーブサーバの各々がデータ受信装置に
対して異なるデータを送信し、データ受信装置において
各サーバからの受信データの同期再生処理を実行するシ
ステムにおけるスレーブサーバとしてのデータ送信装置
であり、前記データ送信装置は、前記データ受信装置に
対する送信データの転送レートを、前記マスターサーバ
のシステムクロックに同期させる転送レート変更処理を
実行する構成を有することを特徴とするデータ送信装置
にある。
【0025】さらに、本発明のデータ送信装置の一実施
態様において、前記データ送信装置は、前記マスターサ
ーバから受信する同期パケットのタイムスタンプと、該
スレーブサーバとしてのデータ送信装置のシステムクロ
ックに基づいて計測した同期パケット受信間隔とに基づ
いて、マスターサーバとスレーブサーバ間のクロック差
データを算出するタイムスタンプ比較部と、前記タイム
スタンプ比較部において算出したクロック差データを格
納する転送レート変更情報格納部と、前記転送レート変
更情報格納部に格納されたクロック差データに基づい
て、前記データ受信装置に対する送信データの転送レー
トを、前記マスターサーバのシステムクロックに同期さ
せる転送レートに変更する転送レート調節部とを有する
構成であることを特徴とする。
【0026】さらに、本発明のデータ送信装置の一実施
態様において、前記データ送信装置は、マスターサーバ
とスレーブサーバ間のクロック差データに基づく転送レ
ート変更処理を実行する転送レート調節部を有し、前記
転送レート調節部は、システムクロックからの供給クロ
ックに基づいて動作するカウンタと、前記マスターサー
バとスレーブサーバ間のクロック差データに基づく前記
カウンタの補正値を算出するカウンタ補正部とを有し、
前記カウンタ補正部の補正カウンタ値に基づいてデータ
転送制御を実行することにより転送レート変更処理を実
行する構成であることを特徴とする。
【0027】さらに、本発明の第4の側面は、各々が異
なるデータを送信するデータ送信装置としての複数のサ
ーバと、該複数のサーバからの送信データを受信するデ
ータ受信装置とからなるデータ通信システムにおけるデ
ータ受信装置であり、前記データ受信装置は、同期再生
処理対象となる異なるデータを送信する複数のサーバか
ら1つのサーバをマスターサーバとして選択し、その他
のサーバをスレーブサーバとしたサーバリストを生成し
て前記複数のサーバに送信する処理を実行する構成を有
することを特徴とするデータ受信装置にある。
【0028】さらに、本発明のデータ受信装置の一実施
態様において、前記サーバリストは、同期再生処理対象
となる異なるデータを送信する複数のサーバのアドレス
情報を含む構成であることを特徴とする。
【0029】さらに、本発明のデータ受信装置の一実施
態様において、前記データ受信装置は、マスターサーバ
からの受信パケットのタイムスタンプと、該データ受信
装置のシステムクロックに基づいて計測したパケット受
信間隔とに基づいて、該データ受信装置のシステムクロ
ックと、マスターサーバのシステムクロックとの差異を
算出するタイムスタンプ比較部と、前記タイムスタンプ
比較部の算出値に基づいてマスターサーバからの受信デ
ータの再生サンプリングレートを設定するサンプリング
レート設定部と、を有する構成であることを特徴とす
る。
【0030】さらに、本発明のデータ受信装置の一実施
態様において、前記データ受信装置は、前記マスターサ
ーバからの受信パケットのタイムスタンプと、該データ
受信装置のシステムクロックに基づいて計測したパケッ
ト受信間隔とに基づいて、該データ受信装置のシステム
クロックと、マスターサーバのシステムクロックとの差
異Aを算出するとともに、前記スレーブサーバからの受
信パケットのタイムスタンプと、該データ受信装置のシ
ステムクロックに基づいて計測したパケット受信間隔と
に基づいて、該データ受信装置のシステムクロックと、
スレーブサーバのシステムクロックとの差異Bを算出す
るタイムスタンプ比較部と、前記差異Aに基づいてマス
ターサーバからの受信データの再生サンプリングレート
を設定するとともに、前記差異Aと、前記差異Bとに基
づいて、スレーブサーバからの受信データの再生サンプ
リングレートを、マスターサーバのシステムクロックに
同期したレートとして設定するサンプリングレート設定
部を有することを特徴とする。
【0031】さらに、本発明のデータ受信装置の一実施
態様において、前記複数のサーバ中、少なくとも1つの
サーバは、動画像データのデータ受信装置に対する送信
処理を実行し、前記複数のサーバ中、少なくとも他の1
つのサーバは、音声データの該データ受信装置に対する
送信処理を実行する構成であり、前記データ受信装置
は、各サーバから受信する動画像データおよび音声デー
タの同期再生処理を実行する構成であることを特徴とす
る。
【0032】さらに、本発明の第5の側面は、各々が異
なるデータを送信するデータ送信装置としての複数のサ
ーバと、該複数のサーバからの送信データを受信するデ
ータ受信装置とからなるデータ通信システムにおけるデ
ータ通信方法であり、前記データ受信装置において、同
期再生処理対象となる異なるデータを送信する複数のサ
ーバから1つのサーバをマスターサーバとして選択し、
その他のサーバをスレーブサーバとしたサーバリストを
生成して前記複数のサーバに送信する処理を実行し、前
記サーバリストによって選択されたマスターサーバにお
いて、自己のシステムクロックで計測した時間情報に基
づくタイムスタンプを格納した同期パケットのスレーブ
サーバに対する送信処理を実行し、前記スレーブサーバ
において、前記データ受信装置に対する送信データの転
送レートを、前記マスターサーバのシステムクロックに
同期させる転送レート変更処理を実行することを特徴と
するデータ通信方法にある。
【0033】さらに、本発明のデータ通信方法の一実施
態様において、前記データ通信方法において、前記スレ
ーブサーバは、前記マスターサーバからの同期パケット
のタイムスタンプと、該スレーブサーバのシステムクロ
ックに基づいて計測した同期パケット受信間隔とに基づ
いて、マスターサーバとスレーブサーバ間のクロック差
データを算出し、該クロック差データに基づいて、前記
データ受信装置に対する送信データの転送レートを、前
記マスターサーバのシステムクロックに同期させる転送
レート変更処理を実行することを特徴とする。
【0034】さらに、本発明のデータ通信方法の一実施
態様において、前記サーバリストは、同期再生処理対象
となる異なるデータを送信する複数のサーバのアドレス
情報を含む構成であることを特徴とする。
【0035】さらに、本発明のデータ通信方法の一実施
態様において、前記データ通信方法において、前記デー
タ受信装置は、マスターサーバからの受信パケットのタ
イムスタンプと、該データ受信装置のシステムクロック
に基づいて計測したパケット受信間隔とに基づいて、該
データ受信装置のシステムクロックと、マスターサーバ
のシステムクロックとの差異を算出するとともに、該算
出値に基づいてマスターサーバからの受信データの再生
サンプリングレートを設定する処理を実行することを特
徴とする。
【0036】さらに、本発明のデータ通信方法の一実施
態様において、前記データ通信方法において、前記デー
タ受信装置は、前記マスターサーバからの受信パケット
のタイムスタンプと、該データ受信装置のシステムクロ
ックに基づいて計測したパケット受信間隔とに基づい
て、該データ受信装置のシステムクロックと、マスター
サーバのシステムクロックとの差異Aを算出し、前記差
異Aに基づいてマスターサーバからの受信データの再生
サンプリングレートを設定するとともに、前記スレーブ
サーバからの受信パケットのタイムスタンプと、該デー
タ受信装置のシステムクロックに基づいて計測したパケ
ット受信間隔とに基づいて、該データ受信装置のシステ
ムクロックと、スレーブサーバのシステムクロックとの
差異Bを算出し、該差異Bと、前記差異Aとに基づい
て、スレーブサーバからの受信データの再生サンプリン
グレートを、マスターサーバのシステムクロックに同期
したレートとして設定する処理を実行することを特徴と
する。
【0037】さらに、本発明のデータ通信方法の一実施
態様において、前記マスターサーバから前記スレーブサ
ーバに対する同期パケットは、タイムスタンプと、転送
レート変更対象となるアプリケーション識別データとを
含む構成であることを特徴とする。
【0038】さらに、本発明の第6の側面は、マスター
サーバおよびスレーブサーバの各々がデータ受信装置に
対して異なるデータを送信し、データ受信装置において
各サーバからの受信データの同期再生処理を実行するシ
ステムにおけるスレーブサーバとしてのデータ送信方法
であり、前記マスターサーバから受信する同期パケット
のタイムスタンプと、該スレーブサーバとしてのデータ
送信装置のシステムクロックに基づいて計測した同期パ
ケット受信間隔とに基づいて、マスターサーバとスレー
ブサーバ間のクロック差データを算出するタイムスタン
プ比較ステップと、前記クロック差データに基づいて、
前記データ受信装置に対する送信データの転送レート
を、前記マスターサーバのシステムクロックに同期させ
る転送レートに変更する転送レート調節ステップと、有
することを特徴とするデータ送信方法にある。
【0039】さらに、本発明のデータ送信方法の一実施
態様において、前記データ送信方法において、前記転送
レート調節ステップは、システムクロックからの供給ク
ロックに基づいて動作するカウンタのカウンタ値を、前
記マスターサーバとスレーブサーバ間のクロック差デー
タに基づいて補正し、カウンタ補正値を算出するステッ
プと、前記カウンタ補正値に基づいて転送レート変更処
理を実行するステップと、を含むことを特徴とする。
【0040】さらに、本発明の第7の側面は、各々が異
なるデータを送信するデータ送信装置としての複数のサ
ーバと、該複数のサーバからの送信データを受信するデ
ータ受信装置とからなるデータ通信システムにおける受
信データ制御処理方法であり、同期再生処理対象となる
異なるデータを送信する複数のサーバから1つのサーバ
をマスターサーバとして選択し、その他のサーバをスレ
ーブサーバとしたサーバリストを生成して前記複数のサ
ーバに送信する処理を実行するステップと、マスターサ
ーバからの受信パケットのタイムスタンプと、該データ
受信装置のシステムクロックに基づいて計測したパケッ
ト受信間隔とに基づいて、該データ受信装置のシステム
クロックと、マスターサーバのシステムクロックとの差
異を算出するタイムスタンプ比較ステップと、前記タイ
ムスタンプ比較ステップにおける算出値に基づいてマス
ターサーバからの受信データの再生サンプリングレート
を設定するサンプリングレート設定ステップと、を有す
ることを特徴とする受信データ制御処理方法にある。
【0041】さらに、本発明の受信データ制御処理方法
の一実施態様において、前記サーバリストは、同期再生
処理対象となる異なるデータを送信する複数のサーバの
アドレス情報を含む構成であることを特徴とする。
【0042】さらに、本発明の受信データ制御処理方法
の一実施態様において、前記タイムスタンプ比較ステッ
プは、前記マスターサーバからの受信パケットのタイム
スタンプと、データ受信装置のシステムクロックに基づ
いて計測したパケット受信間隔とに基づいて、該データ
受信装置のシステムクロックと、マスターサーバのシス
テムクロックとの差異Aを算出するステップと、前記ス
レーブサーバからの受信パケットのタイムスタンプと、
該データ受信装置のシステムクロックに基づいて計測し
たパケット受信間隔とに基づいて、該データ受信装置の
システムクロックと、スレーブサーバのシステムクロッ
クとの差異Bを算出するステップを含み、前記サンプリ
ングレート設定ステップは、前記差異Aに基づいてマス
ターサーバからの受信データの再生サンプリングレート
を設定するとともに、前記差異Aと、前記差異Bとに基
づいて、スレーブサーバからの受信データの再生サンプ
リングレートを、マスターサーバのシステムクロックに
同期したレートとして設定するステップを含むことを特
徴とする。
【0043】さらに、本発明の第8の側面は、マスター
サーバおよびスレーブサーバの各々がデータ受信装置に
対して異なるデータを送信し、データ受信装置において
各サーバからの受信データの同期再生処理を実行するシ
ステム中のスレーブサーバにおけるデータ送信処理を実
行するコンピュータ・プログラムであって、前記マスタ
ーサーバから受信する同期パケットのタイムスタンプ
と、該スレーブサーバとしてのデータ送信装置のシステ
ムクロックに基づいて計測した同期パケット受信間隔と
に基づいて、マスターサーバとスレーブサーバ間のクロ
ック差データを算出するタイムスタンプ比較ステップ
と、前記クロック差データに基づいて、前記データ受信
装置に対する送信データの転送レートを、前記マスター
サーバのシステムクロックに同期させる転送レートに変
更する転送レート調節ステップと、を具備することを特
徴とするコンピュータ・プログラムにある。
【0044】さらに、本発明の第9の側面は、マスター
サーバおよびスレーブサーバの各々がデータ受信装置に
対して異なるデータを送信し、データ受信装置において
各サーバからの受信データの同期再生処理を実行するシ
ステムにおける受信データ処理を実行するコンピュータ
・プログラムであって、同期再生処理対象となる異なる
データを送信する複数のサーバから1つのサーバをマス
ターサーバとして選択し、その他のサーバをスレーブサ
ーバとしたサーバリストを生成して前記複数のサーバに
送信する処理を実行するステップと、マスターサーバか
らの受信パケットのタイムスタンプと、該データ受信装
置のシステムクロックに基づいて計測したパケット受信
間隔とに基づいて、該データ受信装置のシステムクロッ
クと、マスターサーバのシステムクロックとの差異を算
出するタイムスタンプ比較ステップと、前記タイムスタ
ンプ比較ステップにおける算出値に基づいてマスターサ
ーバからの受信データの再生サンプリングレートを設定
するサンプリングレート設定ステップと、を具備するこ
とを特徴とするコンピュータ・プログラムにある。
【0045】なお、本発明のコンピュータ・プログラム
は、例えば、様々なプログラム・コードを実行可能な汎
用コンピュータ・システムに対して、コンピュータ可読
な形式で提供する記憶媒体、通信媒体、例えば、CDや
FD、MOなどの記録媒体、あるいは、ネットワークな
どの通信媒体によって提供可能なコンピュータ・プログ
ラムである。このようなプログラムをコンピュータ可読
な形式で提供することにより、コンピュータ・システム
上でプログラムに応じた処理が実現される。
【0046】本発明のさらに他の目的、特徴や利点は、
後述する本発明の実施例や添付する図面に基づくより詳
細な説明によって明らかになるであろう。なお、本明細
書においてシステムとは、複数の装置の論理的集合構成
であり、各構成の装置が同一筐体内にあるものには限ら
ない。
【0047】
【発明の実施の形態】[システム及びデータ送受信概
要]まず、図1を参照して、本発明のシステム概要及び
データ送受信処理の概要について説明する。
【0048】図1のデータ通信システムにおいて、マス
ターメディアの送信を実行するマスターサーバ120、
スレーブメディアの送信を実行するスレーブサーバ13
0は、それぞれ異なるメディア、例えば画像メディア
と、音声メディア等、異なるデータを送信するサーバで
あり、データ受信端末140、150に対してそれぞれ
のメディア・データをパケット通信網110を介して送
信する。データ受信端末140、150では、マスター
サーバ120、スレーブサーバ130から受信するメデ
ィア(データ)を受信し、同期再生を実現する。
【0049】これらのデータ転送は、ストリーム型伝送
方式により実行され、マスターサーバ120、スレーブ
サーバ130からデータ受信端末140、150に対す
るデータ転送処理と並列してデータ受信端末140、1
50におけるデータ再生処理が実行される。
【0050】図1に示す構成において、マスターサーバ
120、スレーブサーバ130、受信端末140,15
0の各々は、それぞれ独自のシステムクロック125,
135,145,155を有し、これらの各システムク
ロック125,135,145,155の各々は同期せ
ずに動作しているものとする。
【0051】なお、マスターサーバ120、スレーブサ
ーバ130は、初期的にはどちらがマスターであるかス
レーブであるかの区別はなく、データ受信端末に対する
メディア配信のためのデータ受信端末とのセッション確
立後に、データ受信端末から各サーバに対して送付され
るサーバリストに基づいて、マスターであるかスレーブ
であるかが設定される。
【0052】なお、1つのデータ配信アプリケーション
システムにつき、マスターサーバは1つ設定され、マス
ターサーバに並列して異なるメディアを送信する1以上
のサーバがスレーブサーバとして設定される。本実施例
ではスレーブサーバは1台であるが、2台以上のスレー
ブサーバを設定する構成としてもよい。
【0053】例えば音声と動画を2つのメディアとして
それぞれ異なるサーバから送信し、受信端末において、
音声と動画を合わせて再生するシステム例を想定する
と、データ受信端末から各サーバに対して送付されるサ
ーバリストには、音声をストリーミング配信するサーバ
をマスターサーバ、動画をストリーミング配信するサー
バをスレーブサーバとした設定情報を格納するか、ある
いはその逆の設定情報を格納して各サーバに送付する。
【0054】データ受信端末からサーバリストを受信し
た各データ配信サーバは、自己がマスターサーバである
かスレーブサーバであるかをリストに基づいて識別す
る。
【0055】データ受信端末からのサーバリストによ
り、自己がマスターサーバであると指定されている場合
は、マスターサーバとしての処理、すなわち、自己のシ
ステムクロックに基づく転送レートに従ったデータ受信
端末に対するマスターメディアのデータ配信を実行する
とともに、サーバリストにリストアップされたスレーブ
サーバに対してタイムスタンプを付加したパケット(同
期パケット)を定期的に送信する。
【0056】一方、データ受信端末からのサーバリスト
により、自己がスレーブサーバであると指定されている
場合は、スレーブサーバとしての処理、すなわち、マス
ターサーバから受信する同期パケットに基づいて、デー
タ受信端末に対するデータ転送レートを、マスターサー
バのシステムクロックに同期するように変更する処理を
実行して、データ受信端末に対するスレーブメディアの
データ配信を実行する。
【0057】なお、図1に示す例では、データ受信端末
140、150の2つの端末のみを示しているが、1以
上の任意数の受信端末が存在可能であり、任意数の端末
において、マスターサーバ120、スレーブサーバ13
0からのデータ受信処理を行なう構成が可能である。た
だし、この場合、複数のデータ受信端末から異なるサー
バリストが各サーバに配信される可能性があるが、各サ
ーバに最初に到着したリストに従って、マスターサー
バ、スレーブサーバの設定を行なう等のリスト選別処理
によって1つのリストを選択採用して、1つのサーバリ
ストに基づいてマスターサーバ、スレーブサーバの設定
を実行する。
【0058】[データ受信端末装置の構成および処理]
次に、マスターサーバからマスターメディアを受信し、
スレーブサーバからスレーブメディアを受信して、受信
した複数のメデイアの同期再生処理を実行するデータ受
信端末装置の構成および処理について説明する。
【0059】図2にデータ受信端末装置の構成を説明す
るブロック図を示す。なお、図2においては、マスター
サーバからの受信データ処理部と、スレーブサーバから
の受信データ処理部とを区別して示してあるが、これ
は、理解を容易にするために区別して記載したものであ
り、同一機能を実行する複数の処理部は、単一の処理部
として構成して両受信データの処理を実行する構成とし
てもよい。
【0060】図2のデータ受信端末装置の構成に従って
データ再生処理について説明する。データ受信端末40
0は、マスターサーバ120として設定されたサーバか
らのマスターメディア格納パケットをデータ受信部41
1において受信するとともに、スレーブサーバ300と
して設定されたサーバからのスレーブメディア格納パケ
ットをデータ受信部421において受信する。それぞれ
の受信パケットは、それぞれのバッファ412,422
に格納される。
【0061】メディア格納パケットは、画像、音声等の
各種メディアをペイロードとしたパケットであり、マス
ターサーバがマスターメディアを格納したパケットを生
成してデータ受信端末に送信し、スレーブサーバがスレ
ーブメディアを格納したパケットを生成してデータ受信
端末に送信する。各サーバが送信するメディアは、例え
ばビデオカメラによって取得された画像、音声データ、
CD,DVD等の記憶媒体から入力されるデータ、ある
いは外部ネットワーク、衛星等から受信するデータ等で
ある。これらのデータは、符号化、例えばMPEG圧縮
処理等による符号化がなされて、パケットに格納された
構成であってもよい。
【0062】データ受信端末が各サーバから受信するパ
ケットは、例えば、リアルタイム・トランスポート・プ
ロトコル:RTP(Real-time Transport Protocol)に
従ったデータ・パケット(以下パケットと称する)であ
る。
【0063】パケットは、画像、音声データ等の各種メ
ディア(例えば符号化データ)をペイロードデータと
し、RTPヘッダを付加しパケット化されたものであ
る。RTPパケット構成を図3に示す。RTPヘッダに
は、バージョン番号(v)、パディング(P)、拡張ヘ
ッダ(X)の有無、送信元数(Counter)、マー
カ情報(M:marker bit)、ペイロードタイ
プ(Payload type)、シーケンス番号、タ
イムスタンプ、同期ソース(送信元)識別子(SSR
C)および貢献ソース(送信元)識別子(CSRC)の
各フィールドが設けられている。データ受信側におい
て、RTPヘッダに付与されたタイムスタンプによりR
TPパケットの展開時に処理時間の制御が実行され、リ
アルタイム画像、または音声の再生制御を行なうことが
可能となる。なお、例えば動画像データの符号化データ
を格納したRTPパケットにおいては、1つの画像フレ
ームに属する複数のRTPパケットに共通のタイムスタ
ンプが設定される。
【0064】なお、タイムスタンプは、各サーバ、すな
わち各メディアを送信するマスターサーバおよびスレー
ブサーバ各々のシステムクロックの制御の下に設定され
るサンプリングレート基づいて各パケット(例えばRT
Pパケット)に付与される。例えば、サーバのシステム
クロック206が90KHzクロックのクロックである
とき、動画像データについて、30fps(フレーム/
秒)のレートでサンプリングして符号化データをRTP
パケットに格納して送信すると仮定すると、RTPパケ
ットのタイムスタンプの値は、90K/30=3000
ずつカウントアップされ、第nフレームの符号化データ
を格納したパケットに設定されるタイムスタンプが12
000であるとき、n+1フレームのデータを格納した
パケットのタイムスタンプは15000として設定する
等の手法により、各RTPパケットにタイムスタンプが
付与される。
【0065】RTPヘッダを付加されたパケットはさら
にIPヘッダが付与される。図4にIPパケットの構成
中のIPヘッダの詳細を示す。IPv4、IPv6等の
バージョンを示すバージョン、ヘッダ長、さらに、優先
度情報を格納したTOS(Type of Service)フィール
ド、パケットの長さ、パケットの識別子、IP層でのデ
ータ分割(フラグメント)に関する制御情報としてのフ
ラグ、分割(フラグメント)されたデータの場所を示す
断片オフセット、データの破棄までの時間情報を示すT
TL(Time to Live)、上位層で利用されるプロトコル
(4:IP,TCP:7,UDP:17…)ヘッダのチ
ェックサム、送信元IPアドレス、宛て先IPアドレス
を有する。
【0066】各サーバにおいて生成されたパケットは、
インターネット等のパケット通信網110を介してデー
タ受信端末に送信される。
【0067】マスターサーバ120から送信されバッフ
ァ412に格納されたマスターメディア格納パケット
は、タイムスタンプ比較部413において、各パケット
に設定されたタイムスタンプ情報が取り出され、マスタ
ーサーバ120から受信する各パケットのパケット受信
間隔と、各パケットに設定されたタイムスタンプとの差
が比較される。パケット受信間隔は、データ受信端末の
システムクロック450から供給されるクロック情報に
従って計測される。
【0068】マスターメディアを格納したパケットに設
定されるタイムスタンプは、マスターサーバ120のシ
ステムクロック125に基づいて設定されるタイムスタ
ンプであり、設定されたタイムスタンプとパケット受信
間隔とが対応するべきであるが、データ受信端末400
のシステムクロック450は、マスターサーバ120の
システムクロック125との同期がとれていないもので
あり、マスターサーバ120のシステムクロック125
に基づいて設定される各パケットのタイムスタンプの差
と、データ受信端末400のシステムクロック450に
よって計測されるパケット受信間隔にはずれが発生す
る。このずれは、データ受信端末400のシステムクロ
ック450と、マスターサーバ120のシステムクロッ
ク125との差に相当する。
【0069】データ受信端末400では、データ受信端
末400のシステムクロック450と、マスターサーバ
120のシステムクロック125との差を考慮してデー
タ再生を実行する。このクロック差を考慮しないで、デ
ータ再生を実行すると、例えばデータ受信速度より早い
再生を実行すると、バッファ412のデータの不足、す
なわちバッファのアンダーランが発生し、データ受信速
度より遅い再生を実行すると、バッファ412のデータ
溢れ、すなわちバッファのオーバーフローが発生するこ
とになる。
【0070】タイムスタンプ比較部413において算出
されたデータ受信端末400のシステムクロック450
と、マスターサーバ120のシステムクロック125と
の差分を示す情報は、マスターメディアの再生に関する
サンプリングレートの設定を実行するサンプリングレー
ト設定部414、およびスレーブメディアの再生に関す
るサンプリングレートの設定を実行するサンプリングレ
ート設定部424の双方に出力され、それぞれのメデイ
アに関するサンプリングレート設定処理が実行される。
【0071】すなわち、マスターメディア、スレーブメ
ディア双方のデータ再生は、タイムスタンプ比較部41
3において算出されたデータ受信端末400のシステム
クロック450と、マスターサーバのシステムクロック
との差分に基づくデータ出力時刻調節処理によって実行
されることになる。
【0072】図5を参照してマスターメディアのサンプ
リングレート設定処理について説明する。図5に示す例
は、マスターサーバが10mm秒毎に1つのデータ処理
単位(例えば画像フレーム)のパケットを生成するサン
プリングレートでタイムスタンプをパケットに付加して
受信者にデータを転送している場合の処理例である。横
軸が時間(t)であり、各処理単位パケットには、マス
ターサーバ120のシステムクロック125に基づいて
設定されたタイムスタンプ[10〜40]が設定されて
いる。マスターサーバ120は、付加するタイムスタン
プを1mm秒毎に1づつインクリメントしており、図に
示す最初の処理単位パケットには、10のタイムスタン
プが設定され、後続の処理単位パケットには、10mm
秒後に出力されるので、10+10=20のタイムスタ
ンプが設定される。以下、30、40とタイムスタンプ
が設定されたパケットが送信される。
【0073】一方、このパケットデータを受信するデー
タ受信端末400では、これらのパケットの到着間隔
と、そのパケットに付加されているタイムスタンプをタ
イムスタンプ比較部413で比較する。図に示す例で
は、本来、データ受信端末はタイムスタンプ[40]の
設定されたパケットは、タイムスタンプ[10]の設定
されたパケット受信から、30mm秒後に受け取るはず
である。しかし、データ受信端末400のシステムクロ
ック450の供給クロックに基づいてタイムスタンプ比
較部413における測定結果として、タイムスタンプ
[10]の設定パケットからタイムスタンプ[40]の
設定パケットの到着間隔が35mm秒として計測された
とする。
【0074】これは、データ受信端末400のシステム
クロック450がマスターサーバ120のシステムクロ
ック125に対して、(到着時刻間隔/タイムスタンプ
の差)だけ、すなわち、35/30だけ早いことに起因
するものであると判定される。
【0075】この状態で、データ受信端末400がデー
タ受信端末400のシステムクロック450に基づいて
マスターサーバ120から受信するマスターメディアを
再生すると、データ受信端末400のクロック差に起因
して、マスターサーバ120のパケット転送レートより
も早いスピードで再生することになり、データ受信端末
400のマスターメディアのバッファ412がアンダー
ランしてしまう。
【0076】アンダーランの発生を防ぐためには、デー
タ受信端末400における再生時のサンプリングレート
を変更することが必要となる。そこで、データ受信端末
400のサンプリングレート設定部414は、データ受
信端末400のシステムクロック450と、マスターサ
ーバのシステムクロックとの差に基づいて、再生時のサ
ンプリングレートを変更する。この場合は、サンプリン
グレートを35/30に変更する処理を実行する。
【0077】この変更したサンプリングレートに基づい
て出力時刻調節部415が各パケットの出力処理部41
6に対する出力タイミングを決定し出力することで、マ
スターサーバ120のシステムクロック125に同期し
たマスターメディア再生処理が実行される。
【0078】出力処理部416は、バッファ412から
変更したサンプリングレートに基づいて順次入力される
パケットに格納された符号化データの復号を実行した
後、ディスプレイ、スピーカ等の出力装置に出力する。
【0079】データ受信端末400には、さらに、マス
ターサーバ120へ、マスター/スレーブの設定情報と
してのサーバリスト、さらに、制御パケットとして応答
確認を示すACKパケット、再送要求等のパケット、あ
るいはセッション開始要求等を送信するためのデータ送
信部417を有する。
【0080】一方、スレーブサーバ130から受信し、
バッファ422に格納されたスレーブメディアを格納し
たパケットの出力時刻調節は、サンプリングレート設定
部424の設定するサンプリングレートに基づいて行わ
れる。
【0081】図6を参照してスレーブメディアのサンプ
リングレート設定処理について説明する。図6に示す例
は、スレーブサーバ130が20mm秒毎に1つのデー
タ処理単位(例えば画像フレーム)のパケットを生成す
るサンプリングレートでタイムスタンプをパケットに付
加して受信者にデータを転送している場合の処理例であ
る。横軸が時間(t)であり、各処理単位パケットに
は、スレーブサーバ130のシステムクロック135に
基づいて設定されたタイムスタンプ[30〜90]が設
定されている。スレーブサーバは、付加するタイムスタ
ンプを1mm秒毎に1づつインクリメントしており、図
に示す最初の処理単位パケットには、30のタイムスタ
ンプが設定され、後続の処理単位パケットには、20m
m秒後に出力されるので、30+20=50のタイムス
タンプが設定される。以下、70、90とタイムスタン
プが設定されたパケットが送信される。
【0082】一方、このパケットデータを受信するデー
タ受信端末400では、これらのパケットの到着間隔
と、そのパケットに付加されているタイムスタンプをタ
イムスタンプ比較部423で比較する。図に示す例で
は、本来、データ受信端末はタイムスタンプ[90]の
設定されたパケットは、タイムスタンプ[30]の設定
されたパケット受信から、60mm秒後に受け取るはず
である。しかし、データ受信端末400のシステムクロ
ック450の供給クロックに基づいてタイムスタンプ比
較部423における測定結果として、タイムスタンプ
[30]の設定パケットからタイムスタンプ[90]の
設定パケットの到着間隔が80mm秒として計測された
とする。
【0083】これは、データ受信端末400のシステム
クロック450がスレーブサーバ130のシステムクロ
ック135に対して、(到着時刻間隔/タイムスタンプ
の差)だけ、すなわち、80/60だけ早いことに起因
するものであると判定される。
【0084】この状態で、データ受信端末400がデー
タ受信端末400のシステムクロック450に基づいて
スレーブサーバから受信するスレーブメディアを再生す
ると、データ受信端末400のクロック差に起因して、
スレーブサーバ130のパケット転送レートよりも早い
スピードで再生することになり、データ受信端末400
のスレーブメディアのバッファ422がアンダーランし
てしまう。
【0085】アンダーランの発生を防ぐためには、デー
タ受信端末400における再生時のサンプリングレート
を変更することが必要となる。そこで、データ受信端末
400のサンプリングレート設定部424は、データ受
信端末400のシステムクロック450と、スレーブサ
ーバのシステムクロック206との差に基づいて、再生
時のサンプリングレートを変更することが必要となる。
この場合は、サンプリングレートを80/60に変更す
る処理を実行することで、スレーブサーバのシステムク
ロック206に同期した再生が可能となる。
【0086】しかし、この処理では、マスターサーバか
ら受信するマスターメディアをマスターサーバのシステ
ムクロックに同期させて再生し、スレーブサーバから受
信するスレーブメディアをスレーブサーバのシステムク
ロックに同期させて再生することになる。しかし、マス
ターサーバのシステムクロックと、スレーブメディアを
スレーブサーバのシステムクロックとは同期しておら
ず、マスターメディアとスレーブメディアの同期した再
生は不可能となる。
【0087】ここで、マスターメディアとスレーブメデ
ィアの同期した再生を行なうため、スレーブメディアの
再生をマスターサーバのシステムクロックを基準として
再生を行なう。サンプリングレート設定部424は、デ
ータ受信端末400のシステムクロック450と、スレ
ーブサーバ130のシステムクロック135との差に基
づくサンプリングレート変更用データとしての[80/
60]と、受信端末400のシステムクロック450
と、マスターサーバ120のシステムクロック125と
の差に基づくサンプリングレート変更用データとしての
[35/30]との両データを用いて、スレーブメディ
アのサンプリングレートを[(35/30)/(80/
60)]を設定する処理を実行する。
【0088】このサンプリングレート[(35/30)
/(80/60)]に基づいて出力時刻調節部425が
スレーブメディアを格納したパケットを保持したバッフ
ァ422から順次、パケットを出力処理部426に出力
する。出力処理部426は、バッファ422から変更し
たサンプリングレートに基づいて順次入力されるパケッ
トに格納された符号化データの復号を実行した後、ディ
スプレイ、スピーカ等の出力装置に出力する。この処理
により、マスターサーバ120のシステムクロック12
5に同期したスレーブメディア再生処理が実行される。
【0089】上記処理の結果、マスターメディア、スレ
ーブメディアの双方ともマスターサーバ120のシステ
ムクロック125に同期した再生が行なわれ、異なるサ
ーバから送信される異なるメディアの同期再生が実現さ
れる。
【0090】しかし、この状態で再生を継続すると、マ
スターメディアの再生は、マスターサーバ120のシス
テムクロック125に基づいて再生されるので、マスタ
ーメディアを格納したバッファ412には、オーバーフ
ロー、アンダーフローの問題は生じないが、スレーブメ
ディアを格納したバッファ422には、オーバーフロ
ー、アンダーフローの問題が生じることになる。なぜな
ら、受信端末の再生サンプリングレートは、スレーブサ
ーバ130のシステムクロック135に基づくサンプリ
ングレートと一致していないからである。
【0091】この不一致を解消するために、本発明のシ
ステムでは、サーバリストによって設定されたマスター
サーバ120が定期的にスレーブサーバに対して同期パ
ケットを送信する。同期パケットには、スレーブサーバ
がデータ受信端末に対して送信するデータの転送レート
をマスターサーバのシステムクロックに同期させるため
の情報が格納され、スレーブサーバは、この情報に基づ
いて転送レートを変更する処理を実行する。これらの処
理については、後段で説明する。
【0092】次に、図7を参照して、データ受信端末に
おいて実行するデータ配信各サーバとのセッション確立
処理、各サーバに対するサーバリストの送信処理手順に
ついて説明する。
【0093】ステップS101では、例えば音声情報を
伴う動画像配信アプリケーションの実行セッション、音
声情報、字幕情報を伴う動画像配信アプリケーションの
実行セッション等、様々なセッションに対して設定され
たセッション記述ファイルを取得し、そのセッション記
述ファイルからアプリケーション実行に必要となるセッ
ション確立サーバ、すなわち画像、音声、字幕情報等の
各種メディアを送信するデータ送信サーバの情報を取得
し、各メディアを送信する複数のサーバから1つのマス
ターサーバを決定する。セッション記述ファイルは、例
えば下記に示す情報からなる。
【0094】v=0 o=- 2890844526 2890842807 IN IP4 192.16.24.202 s=RTSP Session m=audio 0 RTP/AVP 0 a=control:rtsp://10.0.1.1/twister/audio.en m=video 0 RTP/AVP 33 a=control:rtsp://10.0.1.2/twister/video
【0095】上記セッション記述ファイルの例は、音声
(audio)と、画像(Video)の配信サーバに
ついてのアドレス情報、配信するデータがRTPパケッ
トによって配信されこと、制御情報がRTSPに従って
配信されること等、セッションの基本情報を示すもので
ある。
【0096】データ受信端末は、例えば上記の如きセッ
ション記述ファイルから、画像、音声、字幕情報等の各
種メディアを送信するデータ送信サーバの情報を取得
し、各メディアを送信する複数のサーバから1つのマス
ターサーバを決定する。設定した1つのマスターサーバ
以外のすべてのサーバはスレーブサーバとして設定され
る。
【0097】ステップS102では、データ受信端末
は、設定したマスターサーバ、およびスレーブサーバと
の間でセッション確立処理を実行する。セッション確立
処理には、例えばRTSP(Real Time Streaming Proto
col)等が適用可能である。データ受信端末は、各サーバ
とのセッション確立の過程で,サーバのポート(port)
番号、セッションID(Session ID)等の情報を取得す
る。
【0098】ステップS103では、セッション記述フ
ァイル、およびセッション確立処理において取得した情
報に基づいて、サーバリストを生成し、生成したリスト
をサーバリスト保持部460に格納する。
【0099】サーバリストの例を図8に示す。図8の例
に示すように、リストは、各メディアを送信するサーバ
のIPアドレス、画像、音声等のメディアの種類をコー
ドとして示したメディアタイプ、各サーバのポート番
号、およびセッションIDの各情報、および、データ受
信端末の設定したマスター/スレーブの区別(M/S)
の設定情報からなる。
【0100】リストの上段がマスターサーバとして設定
されたサーバであり、マスターサーバのポート番号は1
080、セッションIDは22203、スレーブサーバ
のポート番号は2244、セッションIDは44441
である。このような各サーバの情報がサーバリストとし
て生成され、サーバリスト保持部460に格納される。
なお、サーバリストのIPアドレスと、メディアタイプ
は、セッション記述ファイルから取得可能なデータであ
る。
【0101】次に、データ受信端末は、ステップS10
4において、サーバリストに含まれる各サーバ、すなわ
ち1つのマスターサーバ、1つ以上のスレーブサーバに
対して、サーバリストを送信する。サーバリストには、
マスター/スレーブの設定情報が含まれ、サーバリスト
を受信した各サーバは、自己の設定がマスターであるか
スレーブであるかをリストに基づいて判定する。
【0102】次に、ステップS106において、データ
受信端末は、マスターサーバからマスターメディアを受
信し、スレーブサーバからはスレーブメディアを受信
し、各受信メディアの同期再生を実行する。
【0103】各サーバからのメデイア、例えば画像デー
タ、音声データ等のメディアは先に説明したタイムスタ
ンプを付与したRTPパケットに格納されて順次送信さ
れ、データ受信端末は、これらのパケットを受信し、再
生処理を実行する。
【0104】再生処理の手順について、図9の処理フロ
ーを参照して説明する。データ受信端末は、サーバから
受信するRTPパケットに設定されたタイムスタンプの
比較処理を予め定めた時間間隔毎に行なう。バッファオ
ーバーフローや、アンダーフローは、データ送信側と再
生側の非同期状態が所定時間継続した場合に発生する問
題であるから、所定間隔毎に行なえば十分であり、例え
ば5分間隔にタイムスタンプの比較処理を実行する。ス
テップS201は、このタイムスタンプ比較時間を設定
したタイマの更新処理ステップであり、ステップS20
2のタイムスタンプ比較時間に達するまで、タイマの更
新を行なう。
【0105】ステップS202でタイマがタイムスタン
プの比較処理間隔、例えば5分に達したとき、ステップ
S203に進む。ステップS203では、マスターサー
バから受信するパケットのタイムスタンプと、受信端末
のシステムクロックで計測したパケット間隔との差を算
出する。
【0106】ステップS204では、ステップS203
で算出したマスターサーバから受信するパケットのタイ
ムスタンプと、受信端末のシステムクロックで計測した
パケット間隔との差に基づいて、マスターメディアのサ
ンプリングレートを設定する。マスターメディアの再生
は、この設定されたサンプリングレートに基づいて実行
される。
【0107】次に、ステップS205では、スレーブサ
ーバから受信するパケットのタイムスタンプと、受信端
末のシステムクロックで計測したパケット間隔との差を
算出する。
【0108】ステップS206では、ステップS205
で算出したスレーブサーバから受信するパケットのタイ
ムスタンプと、受信端末のシステムクロックで計測した
パケット間隔との差、および、ステップS203で算出
したマスターサーバから受信するパケットのタイムスタ
ンプと、受信端末のシステムクロックで計測したパケッ
ト間隔との差に基づいて、スレーブメディアのサンプリ
ングレートを設定する。スレーブメディアの再生は、こ
の設定されたサンプリングレートに基づいて実行され
る。
【0109】ステップS207では、上記処理により設
定されたサンプリングレートに従って、マスターメディ
アとスレーブメディアの同期再生を実行する。
【0110】以上の処理で、データ受信端末は、マスタ
ーメディアとスレーブメディアの同期再生が可能とな
る。なお、スレーブサーバは、後述するマスターサーバ
から定期的に受信する同期パケットに基づいて、スレー
ブメディアのデータ受信端末に対するデータ転送レート
をマスターサーバのシステムクロックに同期させるレー
ト変更処理を実行しているので、その結果、マスターサ
ーバのデータ転送レートに従ってデータ再生処理を実行
しているデータ受信端末は、マスターメディア格納パケ
ットを記憶するバッファ、スレーブメディア格納パケッ
トを記憶するバッファについてのオーバーフロー、ある
いはアンダーフローを発生させることなく、安定した同
期再生処理を実行することが可能となる。
【0111】なお、上述の実施例では、1つのスレーブ
サーバに対する処理のみを示しているが、1つのマスタ
ーサーバに対して複数のスレーブサーバがある場合も、
サーバリストに従って選択された1つのマスターサーバ
は、複数のスレーブサーバに対して、同期パケットを送
信することにより、各スレーブサーバは、1つのマスタ
ーサーバのシステムクロックに同期したデータ送信処理
を実行することが可能となり、1つのマスターサーバと
複数のスレーブサーバからそれぞれ1つのマスターメデ
ィアと、複数のスレーブメディアを受信する受信端末で
は、マスターメディア格納パケットを記憶するバッフ
ァ、複数の異なるスレーブメディア格納パケットを記憶
する複数のバッファについてのオーバーフロー、あるい
はアンダーフローを発生させることなく、安定した同期
再生処理を実行することが可能となる。
【0112】[サーバの構成および処理] (サーバ構成)次にマスターメディア、またはスレーブ
メディアの送信処理を実行する図1におけるマスターサ
ーバ120、またはスレーブサーバ130の構成および
処理について説明する。まず、サーバの構成について、
図10を参照して説明する。前述したように、サーバ
は、初期的には、マスターメディアを送信するマスター
サーバとなるか、スレーブメディアを送信するスレーブ
サーバとなるかの設定はなされておらず、これらの設定
は、先に図8を参照して説明したデータ受信端末から送
信されるサーバリストに従って行なわれる。従って、各
サーバは、マスターサーバとしての処理機能、スレーブ
サーバとしての処理機能をあわせ持つ構成を有する。
【0113】図10にサーバ200の構成を説明するブ
ロック図を示す。サーバ200は、メディア供給部20
1、パケット生成部202、バッファ203、転送レー
ト調節部204、データ送信部205、システムクロッ
ク206、サンプリングレート設定部207、データ受
信部208、タイムスタンプ比較部209、転送レート
変更情報格納部210、時刻情報付加部211を有す
る。
【0114】メディア供給部201は、画像、音声等、
送信すべきマスターメディアまたはスレーブメディアを
パケット生成部に供給する。メディアは、例えばビデオ
カメラによって取得された画像、音声データ等である。
なお、メディアは、CD,DVD等の記憶媒体から入力
されるデータ、あるいは外部ネットワーク、衛星等から
受信するデータ等であってもよい。なお、ここでは省略
してあるが、これらのデータは、符号化、例えばMPE
G圧縮処理等による符号化がなされて、パケット生成部
202に供給され、パケット生成部202において、符
号化データをペイロードとして格納したパケットが生成
される。
【0115】パケット生成部202で生成するパケット
は、例えば先に図3を参照して説明した、リアルタイム
・トランスポート・プロトコル:RTP(Real-time Tr
ansport Protocol)に従ったデータ・パケット(以下パ
ケットと称する)である。
【0116】パケット生成部202は、メディア供給部
201から供給されるデータ(例えば符号化データ)を
ペイロードデータとし、RTPヘッダを付加しパケット
化する。RTPパケット構成は図3に示す通りであり、
ヘッダに、バージョン番号(v)、パディング(P)、
拡張ヘッダ(X)の有無、送信元数(Counte
r)、マーカ情報(M:marker bit)、ペイ
ロードタイプ(Payload type)、シーケン
ス番号、タイムスタンプ、同期ソース(送信元)識別子
(SSRC)および貢献ソース(送信元)識別子(CS
RC)の各フィールドを有する。データ受信側におい
て、RTPヘッダに付与されたタイムスタンプによりR
TPパケットの展開時に処理時間の制御が実行され、リ
アルタイム画像、または音声の再生制御を行なうことが
可能となる。
【0117】タイムスタンプは、図10に示すシステム
クロック206の制御の下にサンプリングレート設定部
207の設定するサンプリングレートに基づいて各パケ
ット(例えばRTPパケット)に設定する。例えば、シ
ステムクロック206が90KHzクロックのクロック
であるとき、動画像データについて、30fps(フレ
ーム/秒)のレートでサンプリングして符号化データを
RTPパケットに格納して送信すると仮定すると、RT
Pパケットのタイムスタンプの値は、90K/30=3
000ずつカウントアップされ、第nフレームの符号化
データを格納したパケットに設定されるタイムスタンプ
が12000であるとき、n+1フレームのデータを格
納したパケットのタイムスタンプは15000として設
定する。RTPヘッダを付加されたパケットはさらにI
Pヘッダ(図4参照)が付与され、ヘッダに付された宛
て先IPアドレスに向けて送信されることになる。
【0118】パケット生成部202において生成された
パケットは、バッファ203に格納された後、システム
クロック206のクロック供給を受ける転送レート調節
部204において、転送レートが制御され、データ送信
部205を介してインターネット等のパケット通信網1
10に送出される。
【0119】データ受信端末からサーバに向けて送付さ
れるサーバリストに基づいて、マスターサーバとして設
定された場合は、上記処理により、システムクロック2
06のクロック供給を受け、転送レート調節部204に
おいて転送レートが制御されることになるが、サーバリ
ストに基づいて、スレーブサーバとして設定された場合
には、データ受信部208がマスターサーバから受信す
る同期パケットに格納されたタイムスタンプと、システ
ムクロック206において計測する同期パケット受信時
刻との比較をタイムスタンプ比較部209において実行
し、この比較処理の結果として算出されるマスターサー
バと自己(スレーブ)サーバのクロック差データを転送
レート変更情報格納部210に格納し、転送レート調節
部204が、転送レート変更情報格納部210に格納さ
れたマスターサーバと自己(スレーブ)サーバのクロッ
ク差データに基づく転送レート変更処理を実行する。
【0120】スレーブサーバにおいては、マスターサー
バのシステムクロックに同期したデータ転送を行なうよ
うに転送レートの変更処理が実行される。この処理につ
いては、後段で詳細に説明する。
【0121】データ受信部208は、データ受信端末か
らのサーバリストの受信処理、さらに制御パケット、例
えば応答確認としてのACKパケット、再送要求等のパ
ケット、あるいはセッション開始要求を受信する処理を
実行する。また、スレーブサーバである場合は、マスタ
ーサーバからの同期パケットの受信処理を実行する。
【0122】転送レート調節部204の詳細構成を図1
1に示す。転送レート調節部204は、サーバがマスタ
ーサーバとして設定された場合と、スレーブサーバとし
て設定された場合とでは異なる処理を実行する。以下、
マスターサーバと、スレーブサーバとの処理について、
それぞれ説明する。
【0123】(1)マスターサーバとしての処理 まず、マスターサーバとして設定された場合の処理につ
いて説明する。最初に、マスターサーバとして設定され
た場合の転送レート調節部の処理について図11を参照
して説明する。カウンタ221は、システムクロック2
06のクロック供給を受け、クロック供給に応じてカウ
ンタ値を増加させる。
【0124】カウンタ補正部223は、自己がスレーブ
サーバである場合にカウンタ値を補正する処理を実行す
る。自己がスレーブサーバである場合、タイムスタンプ
比較部が、マスターサーバから受信する同期パケット
と、システムクロック206との差分データを算出し、
この算出データを転送レート変更情報格納部210に格
納する。カウンタ補正部223は、この格納情報を適用
したカウンタ値補正を実行する。この補正処理について
は、後段で詳細に説明する。
【0125】自己がマスターサーバとして設定されてい
る場合は、マスターサーバから受信する同期パケットは
なく、転送レート変更情報格納部210には差分データ
が格納されておらず、カウンタ補正部223は、カウン
タ221からの入力カウンタ値:Cの補正処理を実行せ
ず、カウンタ221からの入力カウンタ値:Cをそのま
ま、データ出力制御部222に出力する。
【0126】データ出力制御部222は、カウンタ22
1のカウンタ値:Cに応じてバッファ203に格納され
たパケットをデータ送信部に渡す処理を実行する。デー
タ出力制御部222は、カウンタ221のカウンタ値:
Cが、あらかじめ定められたカウンタ値:Vaに達した
とき、バッファからパケットを順次取り出して、データ
送信部205に出力する処理を実行する。
【0127】マスターサーバとして設定された場合の転
送レート調節部204の処理フローを図12に示す。ス
テップS301においてカウンタ値=0にリセットし、
ステップS302においてカウンタ221をシステムク
ロックからのクロック供給に従ってインクリメントす
る。ステップS303において、カウンタ値と、予め定
めた閾値:Vaと比較を実行して、カウンタ値=Vaと
なったことを条件として、ステップS304において、
データ(パケット)をバッファ203から取り出して、
データ送信部205へ出力し、ステップS305におい
て、さらにバッファ203に送信対象の蓄積データ(パ
ケット)があるか否かを判定し、ある場合は、ステップ
S301以下の処理を繰り返し実行し、データが無い場
合は、処理を終了する。この処理により、転送レートが
一定に保たれる。
【0128】マスターサーバとして設定された場合にお
けるデータ送信処理の流れを図13に示すフローチャー
トに従って説明する。まず、マスターサーバは、ステッ
プS401において、データ受信端末からのセッション
開始要求を待機する。データ受信端末からのセッション
開始要求を受信(S402でYes)すると、ステップS
403へ進み、メディア供給部201から送信するメデ
ィア(データまたは符号化データ)をペイロードとした
パケットをパケット生成部において生成する。
【0129】なお、このパケット生成においては、シス
テムクロック206のクロック供給の下にサンプリング
レート設定部207の設定したサンプリングレートに基
づくタイムスタンプがパケットヘッダに設定される(図
3参照)。
【0130】ステップとS404では、パケット化され
たデータをバッファ203に蓄積する。バッファ203
に蓄積されたデータは、ステップS405において、図
12のフローを参照して説明したように、クロック20
6のクロック供給に従って増分されるカウンタ221の
カウンタ値が所定値:Vaになる毎に順次、データ送信
部に出力され、ステップS406において、データ送信
部205からパケット通信網に出力される。
【0131】さらに、ステップS407において、送信
すべきデータの有無を判定し、有りの場合は、ステップ
S405以下を繰り返し、送信すべきデータが無しと判
定された時点で、ステップS407においてデータ終了
を示すEOS(End of Stream)パケットを送信し、処
理を終了する。
【0132】次に、マスターサーバが実行するスレーブ
サーバに対する同期パケットの送信処理について説明す
る。同期パケットは、スレーブサーバからデータ受信端
末に対するデータ送信を、マスターサーバのシステムク
ロックに同期した送信として実行するためのスレーブサ
ーバにおける転送レート変更処理情報を格納したパケッ
トである。
【0133】図14にマスターサーバが生成し、スレー
ブサーバに対して送信する同期パケットのフォーマット
例を示す。同期パケットは、例えばRTCP(Real-tim
e Transport Control Protocol)に従って生成され、図
14に示すように、バージョン番号(v)、パディング
(P)、コマンド(command)であることを示す
ペイロードタイプ(Payload type)情報、
メッセージ長、送信者同期ソース(送信元)識別子(S
SRC)、さらに、この同期パケットによって転送レー
トを調節すべきアプリケーションを識別するためのアプ
リケーション名、さらに、時刻情報付加部211によっ
て付加されるタイムスタンプを持つ。
【0134】同期パケットのタイムスタンプは、初期的
には、外部の時刻サーバとしてのNTP(Network Time
Protocol)時刻(例えば32bit)を時刻情報付加
部211を介してパケット生成部202において同期パ
ケットに設定し、その後の同期パケットには、マスター
サーバのシステムクロック206で計測した時間間隔に
基づく時刻情報を設定する。従って、マスターサーバが
送信する複数の同期パケットのタイムスタンプ間隔は、
マスターサーバのシステムクロックの計測時間に基づく
データとなる。
【0135】マスターサーバは、図14に示すフォーマ
ットを持つ同期パケットを定期的、例えば5分間隔毎に
生成してスレーブサーバに対して送信する。2つ以上の
スレーブサーバが存在する場合は、全てのスレーブサー
バに対して同様の同期パケットを定期的に送信する。
【0136】マスターサーバで実行する同期パケットの
送信処理について、図15のフローを参照して説明す
る。ステップS501において、同期パケット転送間隔
を計測するタイマを更新する。マスターサーバからスレ
ーブサーバに対する同期パケットの送信は、所定時間間
隔、例えば5分間隔に実行する。ステップS501は、
この時間を設定したタイマの更新処理ステップであり、
ステップS502の同期パケット転送時間に達するま
で、タイマの更新を行なう。
【0137】ステップS502でタイマが同期パケット
の転送処理時刻に達したと判定されると、ステップS5
03に進む。ステップS503では、パケット生成部に
おいて、図14を参照して説明したタイムスタンプを格
納した同期パケットを生成し、ステップS504におい
て、生成した同期パケットをスレーブサーバに対して送
信する。
【0138】(2)スレーブサーバとしての処理 次に、データ受信端末から受信するサーバリストによっ
て、自己がスレーブサーバとして設定された場合の処理
について説明する。最初に、スレーブサーバとして設定
された場合の転送レート調節部の処理について図11を
参照して説明する。カウンタ221は、システムクロッ
ク206のクロック供給を受け、クロック供給に応じて
カウンタ値を増加させる。
【0139】カウンタ補正部223は、自己がスレーブ
サーバである場合にカウンタ値を補正する処理を実行す
る。スレーブサーバである場合、タイムスタンプ比較部
209が、マスターサーバから受信する同期パケット
と、システムクロック206との差分データを算出し、
この算出データを転送レート変更情報格納部210に格
納する。カウンタ補正部223は、この格納情報を適用
したカウンタ値補正を実行する。
【0140】スレーブサーバにおいて、マスターサーバ
から受信する同期パケットに基づくカウンタ補正処理に
ついて説明する。スレーブサーバは、先に図14を参照
して説明した同期パケットを受信すると、タイムスタン
プ比較部209において、同期パケット受信時刻と同期
パケットに付加されているタイムスタンプを記録する。
さらに、その後マスターサーバから受信する同期パケッ
トの受信時刻と、それに付加されていたタイムスタンプ
をさらに記録し、これら複数の受信同期パケットに関す
る記録情報に基づいてマスターサーバとスレーブサーバ
とのクロックの差を求める。クロックの差を求める方法
について、図16を参照して説明する。
【0141】図16は、横軸が時間軸であり、上段がマ
スターサーバにおける2つの同期パケットの送信間隔を
示し、下段がスレーブサーバにおける2つの同期パケッ
トの受信間隔を示している。それぞれの同期パケットに
は、タイムスタンプ=120000、および12050
0が設定されている。このタイムスタンプは、マスター
サーバが設定したタイムスタンプであり、タイムスタン
プ=120000は、12時00分00秒にマスターサ
ーバがパケットを送信したことを示し、また、タイムス
タンプ=120500は、それから5分後、12時05
分00秒にマスターサーバがパケットを送信したことを
示している。スレーブサーバは、タイムスタンプ=12
0000の同期パケットを12時00分01秒に受信
し、また、タイムスタンプ=120500の同期パケッ
トを12時05分04秒に受信していることを示してい
る。スレーブサーバの同期パケットの受信時刻は、スレ
ーブサーバのシステムクロック206において計測した
時間である。
【0142】図16に示す例では、2つの同期パケット
に設定されたタイムスタンプの差は、5分、すなわち3
00秒であり、スレーブサーバのシステムクロック20
6において計測したこれら2つの同期パケットの受信間
隔は303秒である。スレーブサーバのタイムスタンプ
比較部209は、スレーブサーバのシステムクロック
の、マスターサーバに対する差、すなわちクロック差デ
ータとして、303/300を算出する。
【0143】スレーブサーバは、タイムスタンプ比較部
209の算出したクロック差データ[303/300]
を転送レート変更情報格納部210に格納する。
【0144】要約すると、タイムスタンプ比較部209
は、同期パケットに基づいて、マスターサーバとスレー
ブサーバのクロック差データを下式に従って求める。 クロック差=(スレーブサーバのシステムクロックで計
測した複数の同期パケットの受信間隔)/(受信間隔を
測定した複数の同期パケットのタイムスタンプ間隔)
【0145】タイムスタンプ比較部209において、上
記式によって算出されたクロック差データが転送レート
変更情報格納部210に格納される。
【0146】スレーブサーバにおける転送レート調節部
204では、上述の転送レート変更情報格納部210に
格納されたマスターサーバとスレーブサーバとのクロッ
ク差データに基づく転送レート変更処理が実行される。
図11に示す転送レート調節部204の構成を参照して
スレーブサーバにおける転送レート調整処理について説
明する。
【0147】転送レート調節部204は、システムクロ
ック206のクロック供給を受け、クロック供給に応じ
てカウンタ値を増加させるカウンタ221、カウンタ値
に応じてバッファ203に格納されたパケットをデータ
送信部に渡すデータ出力制御部222を有し、さらに、
転送レート変更情報格納部210に格納されたマスター
サーバとスレーブサーバとのクロック差データに従って
カウンタ221のカウンタ値を補正して補正したカウン
タ値をデータ出力制御部222に渡すカウンタ補正部2
23を有する。
【0148】カウンタ補正部223は、例えば、転送レ
ート変更情報格納部210に格納されたクロック差デー
タとして、[303/300]が格納されている場合、
カウンタ221のカウンタ値Cに転送レート変更用デー
タ[303/300]の逆数:300/303を乗じて
補正したカウンタ値C’を生成してデータ出力制御部2
22に渡す。すなわち、 補正カウンタ値C’=(300/303)×実カウンタ
値C として、補正処理を実行し、補正値C’をデータ出力制
御部222に渡す。
【0149】データ出力制御部222は、補正カウンタ
値C’に基づいて、補正カウンタ値C’が、あらかじめ
定められたカウンタ値:Vaに達したとき、バッファか
らパケットを順次取り出して、データ送信部205に出
力する処理を実行する。
【0150】スレーブサーバにおいて、マスターサーバ
から送信される同期パケットに基づいて算出するクロッ
ク差データに基づく補正処理を実行する場合の転送レー
ト調節部204の処理フローを図17に示す。ステップ
S601においてカウンタ値=0にリセットし、ステッ
プS602においてカウンタ221をシステムクロック
からのクロック供給に従ってインクリメントする。ステ
ップS603において、カウンタのカウンタ値をマスタ
ーサーバから受信した同期パケットに基づいてタイムス
タンプ比較部209において算出し、転送レート変更情
報格納部210に格納された、マスターサーバとスレー
ブサーバとのクロック差に従って補正する。
【0151】次にステップS604において、補正カウ
ンタ値と、予め定めた閾値:Vaと比較を実行して、補
正カウンタ値=Vaとなったことを条件として、ステッ
プS605において、データ(パケット)をバッファ2
03から取り出して、データ送信部205へ出力し、ス
テップS606において、さらにバッファ203に送信
対象の蓄積データ(パケット)があるか否かを判定し、
ある場合は、ステップS601以下の処理を繰り返し実
行し、データが無い場合は、処理を終了する。この処理
により、補正された転送レートによってスレーブメディ
アの送信処理が実行される。
【0152】スレーブサーバのデータ送信処理の流れを
図18に示すフローチャートに従って説明する。スレー
ブサーバは、ステップS701において、データ受信端
末からのセッション開始要求を待機する。データ受信端
末からのセッション開始要求を受信(S702でYes)
すると、ステップS703へ進み、メディア供給部20
1から送信するメディア(データまたは符号化データ)
をペイロードとしたパケットをパケット生成部において
生成する。
【0153】ステップとS704では、パケット化され
たデータをバッファ203に蓄積する。ステップS70
5では、転送レート変更情報格納部210にマスターサ
ーバとスレーブサーバとのクロック差データが格納され
ているか否かを判定し、無い場合は、ステップS706
に進み、システムクロック206のクロック供給に従っ
て増分される転送レート調節部204のカウンタ221
の実カウンタ値に基づいて、カウンタ値が所定値:Va
になる毎に順次、データ送信部に出力され、ステップS
707において、データ送信部205からパケット通信
網に出力される。
【0154】一方、転送レート変更情報格納部210に
マスターサーバとスレーブサーバとのクロック差データ
が格納されている場合は、ステップS711に進み、ク
ロック206のクロック供給に従って増分される転送レ
ート調節部204のカウンタ221の実カウンタ値:C
に対して、上述したマスターサーバとスレーブサーバと
のクロック差データに基づく補正を実行して補正カウン
タ値:C’を算出する。ステップS712では、補正カ
ウンタ値:C’が所定値:Vaになる毎に順次、データ
送信部205に出力され、ステップS707において、
データ送信部205からパケット通信網に出力される。
【0155】さらに、ステップS708において、送信
すべきデータの有無を判定し、有りの場合は、ステップ
S705以下を繰り返し、送信すべきデータが無しと判
定された時点で、ステップS709においてデータ終了
を示すEOS(End of Stream)パケットを送信し、処
理を終了する。
【0156】このように、スレーブサーバでは、マスタ
ーサーバからの同期パケットを受信し、同期パケットに
基づくマスターサーバとスレーブサーバとのクロック差
データが転送レート変更情報格納部210に格納されて
いる場合は、転送レート調節部において、実カウンタ
値:Cに対してマスターサーバとスレーブサーバとのク
ロック差データに基づく補正を実行して補正カウンタ
値:C’を算出し、補正カウンタ値:C’に基づいて転
送レートを決定する構成であり、マスターサーバのクロ
ックに同期したデータ転送、すなわち、マスターサーバ
におけるマスターメディア転送レートに同期したスリー
ブサーバにおけるスレーブメディアのデータ送信が可能
となる。
【0157】この結果、スレーブサーバのデータ転送レ
ートは、マスターサーバのデータ転送レートに同期する
こととなり、その結果、マスターサーバのデータ転送レ
ートに従ってデータ再生処理を実行しているデータ受信
端末では、マスターサーバから受信するマスターメディ
ア格納パケットを一時記憶するバッファ412、スレー
ブサーバから受信するスレーブメディア格納パケットを
一時記憶するバッファ422にバッファオーバーフロ
ー、あるいはアンダーフローの問題が発生することがな
く、安定した同期再生処理が実行可能となる。
【0158】なお、上述の実施例では、1つのスレーブ
サーバに対する処理を中心として説明したが、1つのマ
スターサーバに対して複数のスレーブサーバがある場合
も、各スレーブサーバに対して、同期パケットを送信す
ることにより、各スレーブサーバは、1つのマスターサ
ーバのシステムクロックに同期したデータ送信処理を実
行することが可能となり、1つのマスターサーバと複数
のスレーブサーバからそれぞれ1つのマスターメディア
と、複数のスレーブメディアを受信する受信端末では、
マスターメディア格納パケットを記憶するバッファ、複
数の異なるスレーブメディア格納パケットを記憶する複
数のバッファについてのオーバーフロー、あるいはアン
ダーフローを発生させることなく、安定した同期再生処
理を実行することが可能となる。
【0159】[データ送受信装置構成例]上述の実施例
で述べた一連の処理は、ハードウェア、またはソフトウ
ェア、あるいは両者の複合構成によって実行することが
可能である。ソフトウェアによる処理を実行する場合
は、処理シーケンスを記録したプログラムを、専用のハ
ードウェアに組み込まれたデータ処理装置内のメモリに
インストールして実行させるか、あるいは、各種処理が
実行可能な汎用コンピュータにプログラムをインストー
ルして実行させることが可能である。一連の処理をソフ
トウェアによって行う場合には、そのソフトウェアを構
成するプログラムが、例えば汎用のコンピュータやマイ
クロコンピュータ等にインストールされる。
【0160】図19に、上述の実施例で述べた一連の処
理を実行するデータ送信装置としてのマスターサーバ、
スレーブサーバ、およびデータ受信端末装置のシステム
構成例を示す。本発明のシステムで送受信されるデータ
の一例は、符号化データであり、データ送信装置ではエ
ンコード(符号化)処理が実行され、データ受信装置で
はデコード(復号)処理が実行される。符号化されたデ
ータはパケットとしてネットワークを介して送受信す
る。そのため、データ送信側では、パケット生成(パケ
タイズ処理)を実行し、データ受信側ではパケット展開
(デパケタイズ処理)を実行する。
【0161】図19に示すデータ送受信装置(ex.P
C)850は、エンコード(符号化)処理、デコード
(復号)処理を実行するとともにパケット生成、展開処
理を実行するコーデック851、通信ネットワークとの
インタフェースとして機能するネットワークインタフェ
ース852、マウス837、キーボード836等の入力
機器との入出力インタフェース853、ビデオカメラ8
33、マイク834、スピーカ835等のAVデータ入
出力機器からのデータ入出力を行なうAVインタフェー
ス854、ディスプレイ832に対するデータ出力イン
タフェースとしてのディスプレイ・インタフェース85
5、各データ入出力インタフェース、コーデック85
1、ネットワークインタフェース852間のデータ転送
制御、その他各種プログラム制御を実行するCPU85
6、CPU856により制御実行される各種プログラム
の格納、データの格納、CPU856のワークエリアと
して機能するRAM、ROMからなるメモリ857、デ
ータ格納、プログラム格納用の記憶媒体としてのHDD
858を有し、それぞれPCIバス859に接続され、
相互のデータ送受信が可能な構成を持つ。
【0162】コーデック851は、図19に示すよう
に、例えばビデオカメラ833からの画像データ、マイ
ク834からの音声データを入力し、符号化処理、パケ
ット生成処理(パケタイズ)を実行し、最終的に符号化
データをペイロードとしたパケットを生成する。生成さ
れたパケットは、PCIバス859上に出力され、ネッ
トワークインタフェース852を介してネットワークに
出力され、パケットのヘッダに設定された宛先アドレス
に配信される。
【0163】また、HDD858またはメモリ857に
格納されたソフトウェアエンコードプログラムに従って
CPU856の制御により、ビデオカメラ833からの
画像データ、マイク834からの音声データを符号化し
てネットワークインタフェース852を介してネットワ
ークに出力する処理も実行する構成としてもよい。
【0164】一方、ネットワークを介して入力するパケ
ット化されたデータは、ネットワークインタフェース8
52を介して、バス856上に出力されて、コーデック
851に入力される。コーデック851では入力データ
のパケット展開処理(デパケタイズ)を実行し、ペイロ
ードとして格納された符号化データを抽出後、復号処理
を実行して、ディスプレイ832、スピーカ835にお
いて再生、出力する。
【0165】上述の実施例における処理対象となる画像
等のデータは、カメラ他の入力機器、例えばスキャナ等
のデータ入力装置、あるいはフロッピー(登録商標)デ
ィスク、CD−ROM(Compact Disc Read Only Memor
y),MO(Magneto optical)ディスク,DVD(Digital
Versatile Disc)、磁気ディスク、半導体メモリなどの
リムーバブル記録媒体から入力可能である。
【0166】また、CPU856は、ROM格納プログ
ラムに限らず、ハードディスクに格納されているプログ
ラム、衛星若しくはネットワークから転送され、受信さ
れてインストールされたプログラム等を、RAM(Rando
m Access Memory)等のメモリにロードして実行すること
も可能である。
【0167】ここで、本明細書において、プログラム
は、1つのコンピュータにより処理されるものであって
も良いし、複数のコンピュータによって分散処理される
ものであっても良い。さらに、プログラムは、遠方のコ
ンピュータに転送されて実行されるものであっても良
い。
【0168】以上、特定の実施例を参照しながら、本発
明について詳解してきた。しかしながら、本発明の要旨
を逸脱しない範囲で当業者が該実施例の修正や代用を成
し得ることは自明である。すなわち、例示という形態で
本発明を開示してきたのであり、限定的に解釈されるべ
きではない。本発明の要旨を判断するためには、冒頭に
記載した特許請求の範囲の欄を参酌すべきである。
【0169】
【発明の効果】以上、説明してきたように、本発明によ
れば、それぞれ異なるシステムクロックに基づくサンプ
リングレートに従って画像、音声等、異なるメディアを
送信する複数サーバからの送信メディアをデータ受信装
置において受信して再生する構成において、データ受信
端末が複数サーバの1つをマスターサーバとして指定し
たサーバリストを各サーバに送信し、マスターサーバと
して設定されたサーバがスレーブサーバに対して、マス
ターサーバとスレーブサーバとのクロック差を算出する
ためのタイムスタンプ情報を格納した同期パケットを送
信し、スレーブサーバが同期パケットに基づいてマスタ
ーサーバとスレーブサーバとのクロック差を算出して、
算出値に基づいて、データ受信端末に対するスレーブメ
ディアの転送レートを変更する構成としたので、データ
受信端末は、マスターメディア格納パケットを記憶する
バッファ、スレーブメディア格納パケットを記憶するバ
ッファについてのオーバーフロー、あるいはアンダーフ
ローを発生させることなく、安定した同期再生処理を実
行することが可能となる。
【0170】さらに、本発明の構成によれば、1つのマ
スターサーバに対して複数のスレーブサーバがあり、様
々なメディアを配信する構成においても、各スレーブサ
ーバに対して、同期パケットを送信することにより、各
スレーブサーバは、1つのマスターサーバのシステムク
ロックに同期したデータ送信処理を実行することが可能
となり、1つのマスターサーバと複数のスレーブサーバ
からそれぞれ1つのマスターメディアと、複数のスレー
ブメディアを受信する受信端末では、マスターメディア
格納パケットを記憶するバッファ、および複数の異なる
スレーブメディア格納パケットを記憶する複数のバッフ
ァについてのオーバーフロー、あるいはアンダーフロー
を発生させることなく、安定した同期再生処理を実行す
ることが可能となる。
【図面の簡単な説明】
【図1】本発明のデータ通信システムの構成概要を示す
図である。
【図2】本発明のデータ通信システムのデータ受信端末
装置の構成を示す図である。
【図3】本発明のデータ通信システムにおいて転送され
るRTPパケットフォーマットを示す図である。
【図4】本発明のデータ通信システムにおいて転送され
るIPパケットヘッダフォーマットを示す図である。
【図5】本発明のデータ通信システムのデータ受信端末
装置におけるサンプリングレート設定処理について説明
する図である。
【図6】本発明のデータ通信システムのデータ受信端末
装置におけるサンプリングレート設定処理について説明
する図である。
【図7】本発明のデータ通信システムのデータ受信端末
装置におけるサーバリスト生成、および再生処理につい
て説明するフロー図である。
【図8】本発明のデータ通信システムのデータ受信端末
装置の生成するサーバリストの例を示す図である。
【図9】本発明のデータ通信システムのデータ受信端末
装置における再生処理について説明するフロー図であ
る。
【図10】本発明のデータ通信システムにおけるサーバ
の構成を示すブロック図である。
【図11】本発明のデータ通信システムにおけるサーバ
の転送レート調節部の構成を示す図である。
【図12】本発明のデータ通信システムにおけるマスタ
ーサーバの転送レート調節部の処理を説明するフローを
示す図である。
【図13】本発明のデータ通信システムにおけるマスタ
ーサーバの処理を説明するフロー図である。
【図14】本発明のデータ通信システムにおけるマスタ
ーサーバが生成し、スレーブサーバに送信する同期パケ
ットフォーマットを示す図である。
【図15】本発明のデータ通信システムにおけるスレー
ブサーバの転送レート調節部の処理を説明するフローを
示す図である。
【図16】本発明のデータ通信システムにおける同期パ
ケットに基づくスレーブサーバの転送レート変更処理を
説明する図である。
【図17】本発明のデータ通信システムにおけるスレー
ブサーバの転送レート調節部の処理を説明するフローを
示す図である。
【図18】本発明のデータ通信システムにおけるスレー
ブサーバの処理を説明するフロー図である。
【図19】データ送信端末装置およびデータ受信端末装
置のシステム構成例を示す図である。
【符号の説明】
110 パケット通信網 120 マスターサーバ 125 システムクロック 130 スレーブサーバ 135 システムクロック 140,150 データ受信端末 145,155 システムクロック 200 サーバ 201 メディア供給部 202 パケット生成部 203 バッファ 204 転送レート調節部 205 データ送信部 206 システムクロック 207 サンプリングレート設定部 208 データ受信部 209 タイムスタンプ比較部 210 転送レート変更情報格納部 211 時刻情報付加部 221 カウンタ 222 データ出力制御部 223 カウンタ補正部 400 データ受信端末装置 411,421 データ受信部 412,422 バッファ 413,423 タイムスタンプ比較部 414,424 サンプリングレート設定部 415,425 出力時刻調節部 416,426 出力処理部 417,427 データ送信部 450 システムクロック 460 サーバリスト保持部 809 PCIバス 832 ディスプレイ 833 ビデオカメラ 834 マイク 835 スピーカ 837 マウス 838 キーボード 850 データ送受信装置 851 コーデック 852 ネットワークインタフェース 853 入出力インタフェース 854 AVインタフェース 855 ディスプレイインタフェース 856 CPU 857 メモリ 858 HDD
フロントページの続き Fターム(参考) 5C064 BA07 BD02 BD08 5K030 GA11 HA08 HB01 HB02 HB15 JT04 LD18 MB08 5K047 AA12 BB15 GG06 LL10 MM02 MM11 MM24 MM38

Claims (30)

    【特許請求の範囲】
  1. 【請求項1】各々が異なるデータを送信するデータ送信
    装置としての複数のサーバと、該複数のサーバからの送
    信データを受信するデータ受信装置とからなるデータ通
    信システムであり、 前記データ受信装置は、 同期再生処理対象となる異なるデータを送信する複数の
    サーバから1つのサーバをマスターサーバとして選択
    し、その他のサーバをスレーブサーバとしたサーバリス
    トを生成して前記複数のサーバに送信する処理を実行す
    る構成を有し、 前記サーバリストによって選択されたマスターサーバ
    は、 自己のシステムクロックで計測した時間情報に基づくタ
    イムスタンプを格納した同期パケットのスレーブサーバ
    に対する送信処理を実行する構成を有し、 前記スレーブサーバは、 前記データ受信装置に対する送信データの転送レート
    を、前記マスターサーバのシステムクロックに同期させ
    る転送レート変更処理を実行する構成を有することを特
    徴とするデータ通信システム。
  2. 【請求項2】前記スレーブサーバは、 前記マスターサーバからの同期パケットのタイムスタン
    プと、該スレーブサーバのシステムクロックに基づいて
    計測した同期パケット受信間隔とに基づいて、マスター
    サーバとスレーブサーバ間のクロック差データを算出
    し、該クロック差データに基づいて、前記データ受信装
    置に対する送信データの転送レートを、前記マスターサ
    ーバのシステムクロックに同期させる転送レート変更処
    理を実行する構成を有することを特徴とする請求項1に
    記載のデータ通信システム。
  3. 【請求項3】前記サーバリストは、 同期再生処理対象となる異なるデータを送信する複数の
    サーバのアドレス情報を含む構成であることを特徴とす
    る請求項1に記載のデータ通信システム。
  4. 【請求項4】前記データ受信装置は、 マスターサーバからの受信パケットのタイムスタンプ
    と、該データ受信装置のシステムクロックに基づいて計
    測したパケット受信間隔とに基づいて、該データ受信装
    置のシステムクロックと、マスターサーバのシステムク
    ロックとの差異を算出するとともに、該算出値に基づい
    てマスターサーバからの受信データの再生サンプリング
    レートを設定する処理を実行する構成を有することを特
    徴とする請求項1に記載のデータ通信システム。
  5. 【請求項5】前記データ受信装置は、 前記マスターサーバからの受信パケットのタイムスタン
    プと、該データ受信装置のシステムクロックに基づいて
    計測したパケット受信間隔とに基づいて、該データ受信
    装置のシステムクロックと、マスターサーバのシステム
    クロックとの差異Aを算出し、前記差異Aに基づいてマ
    スターサーバからの受信データの再生サンプリングレー
    トを設定するとともに、 前記スレーブサーバからの受信パケットのタイムスタン
    プと、該データ受信装置のシステムクロックに基づいて
    計測したパケット受信間隔とに基づいて、該データ受信
    装置のシステムクロックと、スレーブサーバのシステム
    クロックとの差異Bを算出し、該差異Bと、前記差異A
    とに基づいて、スレーブサーバからの受信データの再生
    サンプリングレートを、マスターサーバのシステムクロ
    ックに同期したレートとして設定する処理を実行する構
    成を有することを特徴とする請求項1に記載のデータ通
    信システム。
  6. 【請求項6】前記マスターサーバから前記スレーブサー
    バに対する同期パケットは、タイムスタンプと、転送レ
    ート変更対象となるアプリケーション識別データとを含
    む構成であることを特徴とする請求項1に記載のデータ
    通信システム。
  7. 【請求項7】前記複数のサーバがデータ受信装置に対し
    て送信するデータは、データ転送プロトコルとしてのR
    TPに従ったフォーマットを有し、前記マスターサーバ
    から前記スレーブサーバに対する同期パケットは、制御
    プロトコルとしてのRTCPに従ったフォーマットを有
    することを特徴とする請求項1に記載のデータ通信シス
    テム。
  8. 【請求項8】前記複数のサーバ中、少なくとも1つのサ
    ーバは、動画像データのデータ受信装置に対する送信処
    理を実行し、前記複数のサーバ中、少なくとも他の1つ
    のサーバは、音声データの該データ受信装置に対する送
    信処理を実行する構成であり、 前記データ受信装置は、各サーバから受信する動画像デ
    ータおよび音声データの同期再生処理を実行する構成で
    あることを特徴とする請求項1に記載のデータ通信シス
    テム。
  9. 【請求項9】マスターサーバおよびスレーブサーバの各
    々がデータ受信装置に対して異なるデータを送信し、デ
    ータ受信装置において各サーバからの受信データの同期
    再生処理を実行するシステムにおけるマスターサーバと
    してのデータ送信装置であり、 該データ送信装置は、 自己のシステムクロックで計測した時間情報に基づくタ
    イムスタンプを格納した同期パケットのスレーブサーバ
    に対する送信処理を実行する構成を有することを特徴と
    するデータ送信装置。
  10. 【請求項10】マスターサーバおよびスレーブサーバの
    各々がデータ受信装置に対して異なるデータを送信し、
    データ受信装置において各サーバからの受信データの同
    期再生処理を実行するシステムにおけるスレーブサーバ
    としてのデータ送信装置であり、 前記データ送信装置は、 前記データ受信装置に対する送信データの転送レート
    を、前記マスターサーバのシステムクロックに同期させ
    る転送レート変更処理を実行する構成を有することを特
    徴とするデータ送信装置。
  11. 【請求項11】前記データ送信装置は、 前記マスターサーバから受信する同期パケットのタイム
    スタンプと、該スレーブサーバとしてのデータ送信装置
    のシステムクロックに基づいて計測した同期パケット受
    信間隔とに基づいて、マスターサーバとスレーブサーバ
    間のクロック差データを算出するタイムスタンプ比較部
    と、 前記タイムスタンプ比較部において算出したクロック差
    データを格納する転送レート変更情報格納部と、 前記転送レート変更情報格納部に格納されたクロック差
    データに基づいて、前記データ受信装置に対する送信デ
    ータの転送レートを、前記マスターサーバのシステムク
    ロックに同期させる転送レートに変更する転送レート調
    節部とを有する構成であることを特徴とする請求項10
    に記載のデータ送信装置。
  12. 【請求項12】前記データ送信装置は、 マスターサーバとスレーブサーバ間のクロック差データ
    に基づく転送レート変更処理を実行する転送レート調節
    部を有し、 前記転送レート調節部は、 システムクロックからの供給クロックに基づいて動作す
    るカウンタと、 前記マスターサーバとスレーブサーバ間のクロック差デ
    ータに基づく前記カウンタの補正値を算出するカウンタ
    補正部とを有し、 前記カウンタ補正部の補正カウンタ値に基づいてデータ
    転送制御を実行することにより転送レート変更処理を実
    行する構成であることを特徴とする請求項10に記載の
    データ送信装置。
  13. 【請求項13】各々が異なるデータを送信するデータ送
    信装置としての複数のサーバと、該複数のサーバからの
    送信データを受信するデータ受信装置とからなるデータ
    通信システムにおけるデータ受信装置であり、 前記データ受信装置は、 同期再生処理対象となる異なるデータを送信する複数の
    サーバから1つのサーバをマスターサーバとして選択
    し、その他のサーバをスレーブサーバとしたサーバリス
    トを生成して前記複数のサーバに送信する処理を実行す
    る構成を有することを特徴とするデータ受信装置。
  14. 【請求項14】前記サーバリストは、 同期再生処理対象となる異なるデータを送信する複数の
    サーバのアドレス情報を含む構成であることを特徴とす
    る請求項13に記載のデータ受信装置。
  15. 【請求項15】前記データ受信装置は、 マスターサーバからの受信パケットのタイムスタンプ
    と、該データ受信装置のシステムクロックに基づいて計
    測したパケット受信間隔とに基づいて、該データ受信装
    置のシステムクロックと、マスターサーバのシステムク
    ロックとの差異を算出するタイムスタンプ比較部と、 前記タイムスタンプ比較部の算出値に基づいてマスター
    サーバからの受信データの再生サンプリングレートを設
    定するサンプリングレート設定部と、 を有する構成であることを特徴とする請求項13に記載
    のデータ受信装置。
  16. 【請求項16】前記データ受信装置は、 前記マスターサーバからの受信パケットのタイムスタン
    プと、該データ受信装置のシステムクロックに基づいて
    計測したパケット受信間隔とに基づいて、該データ受信
    装置のシステムクロックと、マスターサーバのシステム
    クロックとの差異Aを算出するとともに、 前記スレーブサーバからの受信パケットのタイムスタン
    プと、該データ受信装置のシステムクロックに基づいて
    計測したパケット受信間隔とに基づいて、該データ受信
    装置のシステムクロックと、スレーブサーバのシステム
    クロックとの差異Bを算出するタイムスタンプ比較部
    と、 前記差異Aに基づいてマスターサーバからの受信データ
    の再生サンプリングレートを設定するとともに、前記差
    異Aと、前記差異Bとに基づいて、スレーブサーバから
    の受信データの再生サンプリングレートを、マスターサ
    ーバのシステムクロックに同期したレートとして設定す
    るサンプリングレート設定部を有することを特徴とする
    請求項13に記載のデータ受信装置。
  17. 【請求項17】前記複数のサーバ中、少なくとも1つの
    サーバは、動画像データのデータ受信装置に対する送信
    処理を実行し、前記複数のサーバ中、少なくとも他の1
    つのサーバは、音声データの該データ受信装置に対する
    送信処理を実行する構成であり、 前記データ受信装置は、各サーバから受信する動画像デ
    ータおよび音声データの同期再生処理を実行する構成で
    あることを特徴とする請求項13に記載のデータ受信装
    置。
  18. 【請求項18】各々が異なるデータを送信するデータ送
    信装置としての複数のサーバと、該複数のサーバからの
    送信データを受信するデータ受信装置とからなるデータ
    通信システムにおけるデータ通信方法であり、 前記データ受信装置において、 同期再生処理対象となる異なるデータを送信する複数の
    サーバから1つのサーバをマスターサーバとして選択
    し、その他のサーバをスレーブサーバとしたサーバリス
    トを生成して前記複数のサーバに送信する処理を実行
    し、 前記サーバリストによって選択されたマスターサーバに
    おいて、 自己のシステムクロックで計測した時間情報に基づくタ
    イムスタンプを格納した同期パケットのスレーブサーバ
    に対する送信処理を実行し、 前記スレーブサーバにおいて、 前記データ受信装置に対する送信データの転送レート
    を、前記マスターサーバのシステムクロックに同期させ
    る転送レート変更処理を実行することを特徴とするデー
    タ通信方法。
  19. 【請求項19】前記データ通信方法において、 前記スレーブサーバは、 前記マスターサーバからの同期パケットのタイムスタン
    プと、該スレーブサーバのシステムクロックに基づいて
    計測した同期パケット受信間隔とに基づいて、マスター
    サーバとスレーブサーバ間のクロック差データを算出
    し、該クロック差データに基づいて、前記データ受信装
    置に対する送信データの転送レートを、前記マスターサ
    ーバのシステムクロックに同期させる転送レート変更処
    理を実行することを特徴とする請求項18に記載のデー
    タ通信方法。
  20. 【請求項20】前記サーバリストは、 同期再生処理対象となる異なるデータを送信する複数の
    サーバのアドレス情報を含む構成であることを特徴とす
    る請求項18に記載のデータ通信方法。
  21. 【請求項21】前記データ通信方法において、 前記データ受信装置は、 マスターサーバからの受信パケットのタイムスタンプ
    と、該データ受信装置のシステムクロックに基づいて計
    測したパケット受信間隔とに基づいて、該データ受信装
    置のシステムクロックと、マスターサーバのシステムク
    ロックとの差異を算出するとともに、該算出値に基づい
    てマスターサーバからの受信データの再生サンプリング
    レートを設定する処理を実行することを特徴とする請求
    項18に記載のデータ通信方法。
  22. 【請求項22】前記データ通信方法において、 前記データ受信装置は、 前記マスターサーバからの受信パケットのタイムスタン
    プと、該データ受信装置のシステムクロックに基づいて
    計測したパケット受信間隔とに基づいて、該データ受信
    装置のシステムクロックと、マスターサーバのシステム
    クロックとの差異Aを算出し、前記差異Aに基づいてマ
    スターサーバからの受信データの再生サンプリングレー
    トを設定するとともに、 前記スレーブサーバからの受信パケットのタイムスタン
    プと、該データ受信装置のシステムクロックに基づいて
    計測したパケット受信間隔とに基づいて、該データ受信
    装置のシステムクロックと、スレーブサーバのシステム
    クロックとの差異Bを算出し、該差異Bと、前記差異A
    とに基づいて、スレーブサーバからの受信データの再生
    サンプリングレートを、マスターサーバのシステムクロ
    ックに同期したレートとして設定する処理を実行するこ
    とを特徴とする請求項18に記載のデータ通信方法。
  23. 【請求項23】前記マスターサーバから前記スレーブサ
    ーバに対する同期パケットは、タイムスタンプと、転送
    レート変更対象となるアプリケーション識別データとを
    含む構成であることを特徴とする請求項18に記載のデ
    ータ通信方法。
  24. 【請求項24】マスターサーバおよびスレーブサーバの
    各々がデータ受信装置に対して異なるデータを送信し、
    データ受信装置において各サーバからの受信データの同
    期再生処理を実行するシステムにおけるスレーブサーバ
    としてのデータ送信方法であり、 前記マスターサーバから受信する同期パケットのタイム
    スタンプと、該スレーブサーバとしてのデータ送信装置
    のシステムクロックに基づいて計測した同期パケット受
    信間隔とに基づいて、マスターサーバとスレーブサーバ
    間のクロック差データを算出するタイムスタンプ比較ス
    テップと、 前記クロック差データに基づいて、前記データ受信装置
    に対する送信データの転送レートを、前記マスターサー
    バのシステムクロックに同期させる転送レートに変更す
    る転送レート調節ステップと、 有することを特徴とするデータ送信方法。
  25. 【請求項25】前記データ送信方法において、 前記転送レート調節ステップは、 システムクロックからの供給クロックに基づいて動作す
    るカウンタのカウンタ値を、前記マスターサーバとスレ
    ーブサーバ間のクロック差データに基づいて補正し、カ
    ウンタ補正値を算出するステップと、 前記カウンタ補正値に基づいて転送レート変更処理を実
    行するステップと、 を含むことを特徴とする請求項24に記載のデータ送信
    方法。
  26. 【請求項26】各々が異なるデータを送信するデータ送
    信装置としての複数のサーバと、該複数のサーバからの
    送信データを受信するデータ受信装置とからなるデータ
    通信システムにおける受信データ制御処理方法であり、 同期再生処理対象となる異なるデータを送信する複数の
    サーバから1つのサーバをマスターサーバとして選択
    し、その他のサーバをスレーブサーバとしたサーバリス
    トを生成して前記複数のサーバに送信する処理を実行す
    るステップと、 マスターサーバからの受信パケットのタイムスタンプ
    と、該データ受信装置のシステムクロックに基づいて計
    測したパケット受信間隔とに基づいて、該データ受信装
    置のシステムクロックと、マスターサーバのシステムク
    ロックとの差異を算出するタイムスタンプ比較ステップ
    と、 前記タイムスタンプ比較ステップにおける算出値に基づ
    いてマスターサーバからの受信データの再生サンプリン
    グレートを設定するサンプリングレート設定ステップ
    と、 を有することを特徴とする受信データ制御処理方法。
  27. 【請求項27】前記サーバリストは、 同期再生処理対象となる異なるデータを送信する複数の
    サーバのアドレス情報を含む構成であることを特徴とす
    る請求項26に記載の受信データ制御処理方法。
  28. 【請求項28】前記タイムスタンプ比較ステップは、 前記マスターサーバからの受信パケットのタイムスタン
    プと、データ受信装置のシステムクロックに基づいて計
    測したパケット受信間隔とに基づいて、該データ受信装
    置のシステムクロックと、マスターサーバのシステムク
    ロックとの差異Aを算出するステップと、 前記スレーブサーバからの受信パケットのタイムスタン
    プと、該データ受信装置のシステムクロックに基づいて
    計測したパケット受信間隔とに基づいて、該データ受信
    装置のシステムクロックと、スレーブサーバのシステム
    クロックとの差異Bを算出するステップを含み、 前記サンプリングレート設定ステップは、 前記差異Aに基づいてマスターサーバからの受信データ
    の再生サンプリングレートを設定するとともに、前記差
    異Aと、前記差異Bとに基づいて、スレーブサーバから
    の受信データの再生サンプリングレートを、マスターサ
    ーバのシステムクロックに同期したレートとして設定す
    るステップを含むことを特徴とする請求項26に記載の
    受信データ制御処理方法。
  29. 【請求項29】マスターサーバおよびスレーブサーバの
    各々がデータ受信装置に対して異なるデータを送信し、
    データ受信装置において各サーバからの受信データの同
    期再生処理を実行するシステム中のスレーブサーバにお
    けるデータ送信処理を実行するコンピュータ・プログラ
    ムであって、 前記マスターサーバから受信する同期パケットのタイム
    スタンプと、該スレーブサーバとしてのデータ送信装置
    のシステムクロックに基づいて計測した同期パケット受
    信間隔とに基づいて、マスターサーバとスレーブサーバ
    間のクロック差データを算出するタイムスタンプ比較ス
    テップと、 前記クロック差データに基づいて、前記データ受信装置
    に対する送信データの転送レートを、前記マスターサー
    バのシステムクロックに同期させる転送レートに変更す
    る転送レート調節ステップと、 を具備することを特徴とするコンピュータ・プログラ
    ム。
  30. 【請求項30】マスターサーバおよびスレーブサーバの
    各々がデータ受信装置に対して異なるデータを送信し、
    データ受信装置において各サーバからの受信データの同
    期再生処理を実行するシステムにおける受信データ処理
    を実行するコンピュータ・プログラムであって、 同期再生処理対象となる異なるデータを送信する複数の
    サーバから1つのサーバをマスターサーバとして選択
    し、その他のサーバをスレーブサーバとしたサーバリス
    トを生成して前記複数のサーバに送信する処理を実行す
    るステップと、 マスターサーバからの受信パケットのタイムスタンプ
    と、該データ受信装置のシステムクロックに基づいて計
    測したパケット受信間隔とに基づいて、該データ受信装
    置のシステムクロックと、マスターサーバのシステムク
    ロックとの差異を算出するタイムスタンプ比較ステップ
    と、 前記タイムスタンプ比較ステップにおける算出値に基づ
    いてマスターサーバからの受信データの再生サンプリン
    グレートを設定するサンプリングレート設定ステップ
    と、 を具備することを特徴とするコンピュータ・プログラ
    ム。
JP2001362259A 2001-11-28 2001-11-28 データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム Expired - Fee Related JP3906678B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001362259A JP3906678B2 (ja) 2001-11-28 2001-11-28 データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001362259A JP3906678B2 (ja) 2001-11-28 2001-11-28 データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム

Publications (3)

Publication Number Publication Date
JP2003163691A true JP2003163691A (ja) 2003-06-06
JP2003163691A5 JP2003163691A5 (ja) 2005-07-14
JP3906678B2 JP3906678B2 (ja) 2007-04-18

Family

ID=19172791

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001362259A Expired - Fee Related JP3906678B2 (ja) 2001-11-28 2001-11-28 データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム

Country Status (1)

Country Link
JP (1) JP3906678B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008193178A (ja) * 2007-01-31 2008-08-21 Hewlett-Packard Development Co Lp データストリーミング方法
JP4870812B2 (ja) * 2006-06-27 2012-02-08 インターナショナル・ビジネス・マシーンズ・コーポレーション 高速短待ち時間データ通信環境においてアクティブ・フィード・アダプタとバックアップ・フィード・アダプタを同期させるための方法、装置、およびプログラム
KR101204445B1 (ko) 2011-12-07 2012-11-26 시큐아이닷컴 주식회사 마스터 장치와 슬레이브 장치 간 시간 동기화 시스템 및 시간 동기화 방법
WO2014188960A1 (ja) * 2013-05-23 2014-11-27 ソニー株式会社 送信装置、送信方法、受信装置および受信方法
US9003428B2 (en) 2006-06-27 2015-04-07 International Business Machines Corporation Computer data communications in a high speed, low latency data communications environment
KR20160023437A (ko) * 2014-08-22 2016-03-03 주식회사 문화방송 시간 동기화 시스템 및 그 방법

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4870812B2 (ja) * 2006-06-27 2012-02-08 インターナショナル・ビジネス・マシーンズ・コーポレーション 高速短待ち時間データ通信環境においてアクティブ・フィード・アダプタとバックアップ・フィード・アダプタを同期させるための方法、装置、およびプログラム
US8676876B2 (en) 2006-06-27 2014-03-18 International Business Machines Corporation Synchronizing an active feed adapter and a backup feed adapter in a high speed, low latency data communications environment
US9003428B2 (en) 2006-06-27 2015-04-07 International Business Machines Corporation Computer data communications in a high speed, low latency data communications environment
JP2008193178A (ja) * 2007-01-31 2008-08-21 Hewlett-Packard Development Co Lp データストリーミング方法
US8924579B2 (en) 2007-01-31 2014-12-30 Hewlett-Packard Development Company, L.P. Data streaming method
KR101204445B1 (ko) 2011-12-07 2012-11-26 시큐아이닷컴 주식회사 마스터 장치와 슬레이브 장치 간 시간 동기화 시스템 및 시간 동기화 방법
WO2014188960A1 (ja) * 2013-05-23 2014-11-27 ソニー株式会社 送信装置、送信方法、受信装置および受信方法
KR20160023437A (ko) * 2014-08-22 2016-03-03 주식회사 문화방송 시간 동기화 시스템 및 그 방법
KR101644619B1 (ko) 2014-08-22 2016-08-01 주식회사 문화방송 시간 동기화 시스템 및 그 방법

Also Published As

Publication number Publication date
JP3906678B2 (ja) 2007-04-18

Similar Documents

Publication Publication Date Title
US10264070B2 (en) System and method for synchronizing media presentation at multiple recipients
US7606928B2 (en) Method and device for controlling receiver buffer fullness level in multimedia streaming
JP4649091B2 (ja) 通信端末、サーバ装置、中継装置、放送通信システム、放送通信方法及びプログラム
US7379463B2 (en) Data transmission device and data transmission method
JP3912091B2 (ja) データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
EP1398931B1 (en) Synchronous play-out of media data packets
US7164680B2 (en) Scheme for supporting real-time packetization and retransmission in rate-based streaming applications
CN106686438B (zh) 一种跨设备的音频图像同步播放的方法、装置及系统
US8208460B2 (en) Method and system for in-band signaling of multiple media streams
WO2007041917A1 (fr) Appareil et méthode de synchronisation de flux de transmission multimédia temps réel dans un réseau par paquets
JP3922047B2 (ja) データ受信装置、および受信データ処理方法、並びにコンピュータ・プログラム
JP4600513B2 (ja) データ送信装置、送信レート制御方法およびプログラム
JP4042396B2 (ja) データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP3906678B2 (ja) データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP3906712B2 (ja) データストリーム処理装置
JP2002152307A (ja) データ受信装置、データ送信装置、データ通信システム、データ受信方法、データ送信方法、データ通信方法、並びにプログラム記憶媒体
JP2019211638A (ja) 処理装置、出力装置、同期制御システム、及びこれらの制御方法、並びにプログラム
JP4274988B2 (ja) データ送信装置
KR101148072B1 (ko) 멀티미디어 지원 시스템 및 그 지원방법
JP2001320407A (ja) データ通信装置、データ通信用拡張ボード及びデータ通信方法
JP2006067410A (ja) 送信装置および方法、プログラム、並びに送受信システム
JP2020096296A (ja) 出力装置、処理装置、管理装置、制御方法、プログラム、並びに記録媒体
JP2005269236A (ja) 通信システム、送信装置および方法、受信装置および方法、並びにプログラム
WO2005122578A1 (ja) 映像受信装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041124

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060602

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060620

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060816

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061010

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061208

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061226

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070108

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100126

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110126

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110126

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120126

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120126

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130126

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140126

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees