(57)【特許請求の範囲】
【請求項１】
１つまたは複数のデータ送信装置よりネットワークを通じて転送された複数のストリームデータを同期再生するためのデータ再生方法において、
前記複数のストリームデータがバッファ部に一時的に記憶された後に再生出力処理の開始が要求されてから実際に再生信号の出力が行われるまでの遅延時間を、前記複数のストリームデータのそれぞれを再生出力する複数の再生処理部ごとにあらかじめ記憶部に記憶し、
前記１つまたは複数のデータ送信装置に対して前記ネットワークを通じて送信要求信号を送信し、
前記送信要求信号に応じて送信された前記複数のストリームデータを前記ネットワークを通じて受信して前記バッファ部に一時的に記憶し、
前記バッファ部における前記各ストリームデータの記憶量が前記再生出力処理に必要な所定量を超えたことを検知すると、一の再生処理部に対して前記バッファ部に記憶された一のストリームデータの再生出力処理を開始するように要求した後、前記記憶部に記憶された前記遅延時間が前記一の再生処理部より短い他の再生処理部に対して、前記バッファ部に記憶された他のストリームデータの再生出力処理の開始を、前記一の再生処理部における前記遅延時間と前記他の再生処理部における前記遅延時間との差分だけ遅延させて要求する、
ことを特徴とするデータ再生方法。
【請求項２】
前記遅延時間を前記記憶部に記憶する際には、前記各再生処理部に対して前記遅延時間の通知を要求し、要求に応じて前記各再生処理部から通知された前記遅延時間を前記記憶部に記憶することを特徴とする請求項１記載のデータ再生方法。
【請求項３】
１つまたは複数のデータ送信装置よりネットワークを通じて転送された複数のストリームデータを同期再生するためのデータ再生制御プログラムにおいて、
コンピュータに、
前記複数のストリームデータがバッファ部に一時的に記憶された後に再生出力処理の開始が要求されてから実際に再生信号の出力が行われるまでの遅延時間を、前記複数のストリームデータのそれぞれを再生出力する複数の再生処理部ごとにあらかじめ記憶部に記憶し、
前記１つまたは複数のデータ送信装置に対して前記ネットワークを通じて送信要求信号を送信し、
前記送信要求信号に応じて送信された前記複数のストリームデータを前記ネットワークを通じて受信して前記バッファ部に一時的に記憶し、
前記バッファ部における前記各ストリームデータの記憶量が前記再生出力処理に必要な所定量を超えたことを検知すると、一の再生処理部に対して前記バッファ部に記憶された一のストリームデータの再生出力処理を開始するように要求した後、前記記憶部に記憶された前記遅延時間が前記一の再生処理部より短い他の再生処理部に対して、前記バッファ部に記憶された他のストリームデータの再生出力処理の開始を、前記一の再生処理部における前記遅延時間と前記他の再生処理部における前記遅延時間との差分だけ遅延させて要求する、
処理を実行させることを特徴とするデータ再生制御プログラム。
【請求項４】
前記遅延時間を前記記憶部に記憶する際には、前記各再生処理部に対して前記遅延時間の通知を要求し、要求に応じて前記各再生処理部から通知された前記遅延時間を前記記憶部に記憶することを特徴とする請求項３記載のデータ再生制御プログラム。
【請求項５】
１つまたは複数のデータ送信装置よりネットワークを通じて転送された複数のストリームデータを同期再生するデータ再生装置において、
前記ネットワークを通じて受信した前記複数のストリームデータのそれぞれを一時的に記憶するバッファ部と、
受信した前記各ストリームデータに対応して設けられて、前記各ストリームデータを前記バッファ部から読み出して順次再生出力する複数の再生処理部と、
前記各再生処理部において、前記各ストリームデータの再生出力処理の開始が要求されてから実際に再生信号の出力が行われるまでの遅延時間を、前記再生処理部ごとに記憶する記憶部と、
前記１つまたは複数のデータ送信装置に対して前記ネットワークを通じて送信要求信号を送信し、前記送信要求信号に応じて送信されて前記バッファ部に記憶された前記各ストリームデータの記憶量が、対応する前記再生処理部による前記再生出力処理に必要な所定量を超えたことを検知すると、一の再生処理部に対して前記バッファ部に記憶された一のストリームデータの再生出力処理を開始するように要求した後、前記記憶部に記憶された前記遅延時間が前記一の再生処理部より短い他の再生処理部に対して、前記バッファ部に記憶された他のストリームデータの再生出力処理の開始を、前記一の再生処理部における前記遅延時間と前記他の再生処理部における前記遅延時間との差分だけ遅延させて要求する再生制御部と、
を有することを特徴とするデータ再生装置。
【請求項６】
前記各再生処理部に対して前記遅延時間の通知を要求し、要求に応じて前記各再生処理部から通知された前記遅延時間を前記記憶部に記憶させる遅延時間取得部をさらに有することを特徴とする請求項５記載のデータ再生装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のストリームデータをネットワークを通じて受信して同期再生するためのデータ再生方法、データ再生制御プログラムおよびデータ再生装置に関する。
【０００２】
【従来の技術】
近年、インターネット等のネットワークを通じて転送された動画像データや音声データ等のストリームデータを、実時間で再生出力するためのサービスが行われている。このようなサービスでは、受信端末からの送信要求に応じて、ストリーミングを行う送信装置よりストリームデータが時系列順に転送され、受信端末では、受信したストリームデータを再生する再生ソフトウェアの実行により、受信データの実時間での再生が行われる。
【０００３】
また、例えば動画像データと音声データ等の複数のストリームデータを、個別の送信装置やストリーミングソフトウェアの実行によって転送し、受信端末において同期再生することも行われている。ここで図６に、このような複数のストリームデータを用いた従来のデータ送受信システムの概略構成例を示す。
【０００４】
図６に示したデータ送受信システム２０は、それぞれ個別のストリームデータ２１ａおよび２２ａの送信を行う送信装置２１および２２と、各ストリームデータ２１ａおよび２２ａを受信して再生出力する受信装置２３によって構成され、送信装置２１および２２と受信装置２３とは、ネットワーク２４によって接続されている。送信装置２１および２２、受信装置２３はともに、プロセッサおよび記憶装置等によって構成されるコンピュータ装置等の情報処理装置である。また、ネットワーク２４は、例えば電話回線等により構成されるインターネット等である。
【０００５】
送信装置２１は、例えばＨＤＤ（Hard Disc Drive）等の記憶手段に記憶された、動画像データ等のストリームデータ２１ａを、ネットワーク２４を通じて受信装置２３に対して送信するためのストリーミングサーバ２１ｂとして機能する。また、送信装置２２は同様に、ＨＤＤ等の記憶手段に記憶されて、例えば音声データ等の、送信装置２１のストリームデータ２１ａとは異なるストリームデータ２２ａを送信するためのストリーミングサーバ２２ｂとして機能する。さらに、受信装置２３は、ネットワーク２４を通じて受信した各ストリームデータ２１ａおよび２２ａの再生出力を行うための再生クライアント２３ａおよび２３ｂとして機能する。
【０００６】
このデータ送受信システム２０において、ストリームデータ２１ａおよび２２ａを同期させたストリーミングが行われる場合は、受信装置２３において、再生クライアント２３ａおよび２３ｂの処理により、例えばユーザからのストリーミング開始入力に応じて、それぞれ送信装置２１および２２に対して、ストリームデータ２１ａおよび２２ａに対する送信要求信号が同時に送出される。送信装置２１および２２では、ストリーミングサーバ２１ｂおよび２２ｂの並行した処理により、ネットワーク２４を通じて、各ストリームデータ２１ａおよび２２ａに対する送信要求信号を受信すると、記憶されたストリームデータ２１ａおよび２１ｂがそれぞれ読み出され、受信装置２３に対して、再生時間にしたがって順次送出される。受信装置２３では、送出された各ストリームデータ２１ａおよび２２ａが順次受信されて、例えばバッファメモリに一時的に記憶され、再生に必要なデータ量を超えた時点で読み出されて、再生出力される。
【０００７】
このように、データ送受信システム２０では、ストリームデータ２１ａおよび２２ａのそれぞれの送信および再生出力を行うための２系統のクライアント／サーバシステムが構築されている。このとき、各系統におけるクライアント／サーバ間では、独立したセッションによりパケットの送受信が行われており、また、ストリーミングサーバ２１ｂおよび２２ｂの間では、例えばタイミング信号等の制御信号を用いた動作の同期制御は行われない。
【０００８】
なお、図６では例として２つのストリームデータ２１ａおよび２２ａを用いた場合のシステムについて挙げたが、これに限らず、２系統以上の複数のストリームデータを用い、これらのそれぞれについて送信および再生出力を行うためのクライアント／サーバシステムが構築されていてもよい。また、送信装置２１および２２の処理機能は、同一装置内において実現されてもよい。
【０００９】
【発明が解決しようとする課題】
ところで、上記のデータ送受信システム２０では、ネットワーク２４のトラフィックの状況によっては、受信装置２３から送出された送信要求信号を各送信装置２１および２２において受信するタイミングにズレが生じる場合がある。また、送信要求信号を受信してから、実際に各ストリームデータ２１ａおよび２２ｂの送信が開始されるまでの時間も同じとは限らない。上述したように、ストリーミングサーバ２１ｂおよび２２ｂの間の動作では同期制御が行われてはおらず、このため、再生クライアント２３ａおよび２３ｂにおいて各ストリームデータ２１ａおよび２２ｂの同期再生を行うためには、送信装置２１および２２からストリームデータ２１ａおよび２２ｂの送信が実際に開始されるタイミングのズレを考慮して、一時的に記憶するためのバッファの容量が余分に必要となる。また、ストリーミングサーバ２１ｂおよび２２ｂの間では、互いに他方における再生クライアント２３ｂおよび２３ａとの接続性を検知することができないため、一方のストリームデータ２１ａまたは２２ａの送信のみが行われる等の誤作動が生じる可能性がある。
【００１０】
さらに、受信装置２３においても、受信したストリームデータ２１ａおよび２２ａがバッファに一時的に記憶され、再生可能な状態となって再生開始要求がなされてから、実際に再生出力されるまでの遅延時間に、各再生クライアント２３ａおよび２３ｂの間でバラツキがあるため、正確な同期再生が行われないことがあった。
【００１１】
本発明はこのような課題に鑑みてなされたものであり、受信した複数のストリームデータを正確に同期再生することが可能なデータ再生方法を提供することを目的とする。
【００１２】
また、本発明の他の目的は、受信した複数のストリームデータを正確に同期再生することが可能なデータ再生制御プログラムを提供することである。
【００１３】
さらに、本発明の他の目的は、受信した複数のストリームデータを正確に同期再生することが可能なデータ再生装置を提供することである。
【００１４】
【課題を解決するための手段】
本発明では上記課題を解決するために、１つまたは複数のデータ送信装置よりネットワークを通じて転送された複数のストリームデータを同期再生するためのデータ再生方法において、前記複数のストリームデータがバッファ部に一時的に記憶された後に再生出力処理の開始が要求されてから実際に再生信号の出力が行われるまでの遅延時間を、前記複数のストリームデータのそれぞれを再生出力する複数の再生処理部ごとにあらかじめ記憶部に記憶し、前記１つまたは複数のデータ送信装置に対して前記ネットワークを通じて送信要求信号を送信し、前記送信要求信号に応じて送信された前記複数のストリームデータを前記ネットワークを通じて受信して前記バッファ部に一時的に記憶し、前記バッファ部における前記各ストリームデータの記憶量が前記再生出力処理に必要な所定量を超えたことを検知すると、一の再生処理部に対して前記バッファ部に記憶された一のストリームデータの再生出力処理を開始するように要求した後、前記記憶部に記憶された前記遅延時間が前記一の再生処理部より短い他の再生処理部に対して、前記バッファ部に記憶された他のストリームデータの再生出力処理の開始を、前記一の再生処理部における前記遅延時間と前記他の再生処理部における前記遅延時間との差分だけ遅延させて要求する、ことを特徴とするデータ再生方法が提供される。
【００１９】
このようなデータ再生方法では、受信して一時的に記憶された複数のストリームデータについて、再生出力処理の開始することが可能となってから、あらかじめ記憶していた遅延時間に応じて、各ストリームデータの再生出力処理に開始タイミングを遅延させるように制御するので、再生出力処理の開始が要求されてから実際に再生信号の出力が行われるまでの遅延時間が、ストリームデータごとに異なる場合にも、正確な同期再生を行うことが可能となる。
【００２０】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。まず図１に、本発明のデータ送受信システムの概略構成例を示す。
【００２１】
図１に示すデータ送受信システム１０は、それぞれ個別のストリームデータ１１ａおよび１２ａの送信を行う送信装置１１および１２と、各送信装置１１および１２の送信開始タイミングを制御する送信制御装置１３と、各ストリームデータ１１ａおよび１２ａを受信して再生出力する受信装置１４によって構成される。送信装置１１および１２と受信装置１４とは、ネットワーク１５によって互いに接続され、また、送信装置１１および１２と送信制御装置１３とは、ネットワーク１６によって接続されている。送信装置１１および１２、送信制御装置１３、受信装置１４は、ともにプロセッサおよび記憶装置等によって構成されるコンピュータ装置等の情報処理装置である。また、ネットワーク１５は、例えば電話回線等により構成されるインターネット等の通信回線であり、ネットワーク１６は、例えば専用回線等の比較的高速な通信回線である。
【００２２】
送信装置１１は、例えばＨＤＤ（Hard Disc Drive）等の記憶手段に記憶された動画像データ等のストリームデータ１１ａを、ネットワーク１５を通じて受信装置１４に対して送信するためのストリーミングサーバ１１ｂとして機能する。また、送信装置１２は同様に、ＨＤＤ等の記憶手段に記憶されて、例えば音声データ等、送信装置１１に記憶されたストリームデータ１１ａとは異なるストリームデータ１２ａを送信するためのストリーミングサーバ１２ｂとして機能する。送信制御装置１３は、各送信装置１１および１２におけるストリームデータ１１ａおよび１２ａの送信開始タイミングを制御するためのストリーミングコントローラ１３ａとして機能する。
【００２３】
一方、受信装置１４は、ネットワーク１５を通じて受信した各ストリームデータ１１ａおよび１２ａの再生出力を行うための再生クライアント１４ａおよび１４ｂと、各再生クライアント１４ａおよび１４ｂによる処理を制御するための再生コントローラ１４ｃとして機能する。この受信装置１４は、再生クライアント１４ａおよび１４ｂの処理により、ネットワーク１５を通じて、送信装置１１および１２から送信された各ストリームデータ１１ａおよび１２ａを受信すると、例えばバッファメモリに一時的に記憶した後、再生出力処理を行う。また、再生コントローラ１４ｃは、再生クライアント１４ａおよび１４ｂの処理動作を制御するとともに、再生クライアント１４ａおよび１４ｂのそれぞれにおいて、受信したストリームデータ１１ａおよび１２ａをバッファメモリに一時記憶し、再生出力処理が可能になってから、再生出力処理が行われて実際に再生データが出力されるまでの遅延時間を、ストリーミング開始の前にあらかじめ検知して記憶する。
【００２４】
次に、データ送受信システム１０におけるストリーミング動作について説明する。ストリーミング動作に先立ち、受信装置１４では、再生コントローラ１４ｃによって、再生クライアント１４ａおよび１４ｂにおける再生処理動作の遅延時間検出処理が行われ、それぞれにおいて検出された遅延時間が記憶される。この遅延時間は、例えば、受信装置１４において受信したストリームデータ１１ａおよび１２ａがバッファメモリに一時記憶され、再生コントローラ１４ｃによって、一時記憶されたデータ量が、各再生クライアント１４ａおよび１４ｂによって再生出力処理を介することが可能なデータ量となったことが判断されて、再生出力処理の開始要求がなされるタイミングから、この開始要求に応じてバッファメモリに対するアクセスが行われて記憶データが読み出され、所定のデコード処理が行われて、実際に画像や音声用の再生信号が出力されるタイミングまでの時間であり、再生クライアント１４ａおよび１４ｂのそれぞれについての遅延時間が記憶される。
【００２５】
この後、受信装置１４において、再生クライアント１４ａまたは１４ｂは例えばユーザによる操作入力に応じて、再生コントローラ１４ｃに対してストリーミングの開始要求の受信を通知する。再生コントローラ１４ｃはこの通知に応じて、再生クライアント１４ａおよび１４ｂと送信装置１１および１２とに対して、それぞれストリームデータ１１ａおよび１２ｂの送信要求信号を同時に送出させる。
【００２６】
各送信装置１１および１２は、ネットワーク１５を通じて送信要求信号を受信すると、ストリーミングサーバ１１ｂおよび１２ｂにより、送信要求信号の受信を通知する制御信号を、送信制御装置１３に対してネットワーク１６を通じて、送信する。送信制御装置１３では、ストリーミングコントローラ１３ａにより、ネットワーク１６を通じて、すべての送信装置１１および１２から送信要求信号の受信通知のための制御信号を受信すると、各送信装置１１および１２に対して、ストリームデータ１１ａおよび１２ａの送信を開始するための制御信号を、ネットワーク１６を通じて送出する。送信装置１１および１２は、送信制御装置１３からの制御信号を受信すると、各ストリームデータ１１ａおよび１２ａを、再生時間にしたがって順次、ネットワーク１５を通じて送信する。
【００２７】
受信装置１４では、各ストリームデータ１１ａおよび１２ｂが受信されると、再生クライアント１４ａおよび１４ｂの処理により、受信データがバッファメモリに一時的に記憶され、再生クライアント１４ａおよび１４ｂにより、ストリームデータ１１ａおよび１２ａのそれぞれについて、再生出力処理に必要なだけのデータ量が記憶されたことが検知されると、検知を通知する制御信号を再生コントローラ１４ｃに出力する。
【００２８】
再生コントローラ１４ｃは、すべての再生クライアント１４ａおよび１４ｂからの制御信号を受信した時点で、各ストリームデータ１１ａおよび１２ａについて記憶していた遅延時間を参照し、各再生クライアント１４ａおよび１４ｂによる再生信号の出力タイミングが一致するように、各再生クライアント１４ａおよび１４ｂによる再生出力処理の開始タイミングを制御する。各再生クライアント１４ａおよび１４ｂは、再生コントローラ１４ｃからの要求に応じて、バッファメモリからデータを順次読み出してデコード処理等を行い、再生信号を出力する。
【００２９】
このように、データ送受信システム１０では、ストリームデータ１１ａおよび１２ａのそれぞれの送信および再生出力を行うための２系統のクライアント／サーバシステムが構築されている。このとき、各系統におけるクライアント／サーバ間では、独立したセッションによりパケットの送受信が行われており、また、ストリーミングサーバ１１ｂおよび１２ｂの間では、例えばタイミング信号等の制御信号を用いた動作の同期制御は行われない。
【００３０】
また、このようなデータ送受信システム１０では、ネットワーク１５のトラフィックの状況によっては、受信装置１４から送出された送信要求信号を各送信装置１１および１２において受信するタイミングにズレが生じる場合がある。さらに、送信要求信号を受信してから、実際に各ストリームデータ１１ａおよび１２ｂの送信が開始されるまでの時間は一致するとは限らない。このため、データ送受信システム１０では、ストリーミングコントローラ１３ａの処理によって、送信装置１１および１２の双方において、送信要求信号が受信されたことを検知した後、各ストリームデータ１１ａおよび１２ａの送信を開始するように、各ストリーミングサーバ１１ｂおよび１２ｂの動作を制御している。
【００３１】
これによって、受信装置１４から送信装置１１および１２への経路におけるネットワーク１５上のトラフィックに起因する、再生クライアント１４ａおよび１４ｂにおける各ストリームデータ１１ａおよび１２ａの受信タイミングの不一致を解消することが可能となり、例えば、受信装置１４において正確な同期再生を行うための余分なバッファメモリを設ける必要がなくなる。また、ストリーミングコントローラ１３ａの処理によって、各再生クライアント１４ａおよび１４ｂと、ストリーミングサーバ１１ｂとの接続の有無を把握することができるため、一方のストリームデータ１１ａまたは１２ａの送信のみが行われることによる、再生出力動作の誤作動の発生を防止することが可能となる。
【００３２】
また、受信装置１４においても、各再生クライアント１４ａおよび１４ｂの間で、受信した一時記憶したストリームデータ１１ａおよび１２ａに対して、再生出力処理が要求されてから実際に再生信号が出力される間までの遅延時間が異なり、各ストリームデータ１１ａおよび１２ａによる再生信号が正確に同期しないことがある。このため、上記のデータ送受信システム１０では、再生コントローラ１４ｃにより各再生クライアント１４ａおよび１４ｂにおける遅延時間をあらかじめ検知して記憶しておき、再生出力処理において、この遅延時間の差を考慮して、各再生クライアント１４ａおよび１４ｂに対する再生出力処理の開始タイミングを制御することにより、複数のストリームデータ１１ａおよび１２ａを用いた正確な再生出力動作が行われるようになっている。
【００３３】
なお、図１では例として２つのストリームデータ１１ａおよび１２ａを用いた場合のシステムについて挙げたが、これに限らず、２系統以上の複数のストリームデータを用い、これらのそれぞれについて送信および再生出力を行うためのクライアント／サーバシステムが構築されるように構成してもよい。また、ネットワーク１５および１６は、同一に構成されてもよい。ただし、ネットワーク１６は、送信装置１１および１２と送信制御装置１３との間の制御信号の送受信に遅延が生じないことが望ましいことから、専用回線やＬＡＮ（Local Area Network）等、比較的伝送速度の速い、あるいは一定の通信速度が保証された通信回線を用いることが好ましい。
【００３４】
次に、図２に送信装置１１の内部構成例を示す。なお、送信装置１１および１２は基本的に同様の内部構成を有しているため、ここでは例として、送信装置１１についてのみ説明する。
【００３５】
送信装置１１は、それぞれネットワーク１５および１６に接続してデータの送受信を行う通信インタフェース（以下、通信Ｉ／Ｆと略称する）１１１および１１２と、ストリームデータ１１ａの例として３Ｄアニメーションのためのモーションデータ等の動画像データ１１３ａが格納されたデータ記憶部１１３と、動画像データ１１３ａよりストリームを生成するストリーム生成部１１４と、装置全体の制御をつかさどる制御部１１５によって構成される。
【００３６】
通信Ｉ／Ｆ１１１および１１２は、それぞれケーブルを接続するためのコネクタや、通信プロトコルの変換処理を行う制御部等を具備している。また、データ記憶部１１３は例えばＨＤＤ等により構成される。ストリーム生成部１１４および制御部１１５では、例えばＲＯＭやＨＤＤ等に記憶された制御プログラムをプロセッサによって実行すること等によって、データ記憶部１１３から動画像データ１１３ａを順次読み出して、例えば固定ビットレートのストリームを生成する処理、および各機能ブロックの制御処理がそれぞれ実現される。
【００３７】
次に、図３に送信装置１１における処理のフローチャートを示す。
ステップＳ３０１において、制御部１１５では、通信Ｉ／Ｆ１１１における、受信装置１４からの動画像データ１１３ａに対する送信要求信号の受信が判断され、受信していない間はステップＳ３０１の処理が繰り返され、受信した場合はステップＳ３０２に進む。ステップＳ３０２において、制御部１１５は、送信要求信号の受信を通知する制御信号を、通信Ｉ／Ｆ１１２およびネットワーク１６を介して、送信制御装置１３に送信する。
【００３８】
送信制御装置１３では、受信装置１４から要求された、動画像データ１１３ａを含むすべてのストリームデータ１１ａおよび１２ａに対する送信要求信号についての受信通知を示す制御信号を受信した時点で、各送信装置１１および１２に対して同時に、ストリームデータ１１ａおよび１２ａの送信開始を要求する制御信号を、ネットワーク１６を通じて送信する。また、最初に受信通知の制御信号を受信してから、一定時間以上、すべてのストリームデータ１１ａおよび１２ａに対応した受信通知の制御信号が受信されない場合には、すべての送信装置１１および１２に対してエラー信号を返す。
【００３９】
ステップＳ３０３において、送信制御装置１３からのエラー信号の受信が判断され、受信した場合はステップＳ３０４に進み、受信しない場合はステップＳ３０５に進む。ステップＳ３０４において、制御部１１５によって、例えば送信要求エラーを表示するためのエラー信号が、通信Ｉ／Ｆ１１１およびネットワーク１５を介して、受信装置１４に対して送信される。
【００４０】
また、ステップＳ３０５において、送信制御装置１３からの、動画像データ１１３ａの送信要求のための制御信号に対する受信が判断され、受信しない場合はステップＳ３０３に戻り、受信した場合はステップＳ３０６に進む。ステップＳ３０６において、制御部１１５はストリーム生成部１１４を制御して、データ記憶部１１３に記憶された動画像データ１１３ａを、再生開始部から順次読み出させ、ストリーム生成部１１４に供給させる。ステップＳ３０７において、制御部１１５はストリーム生成部１１４を制御して、読み出した動画像データ１１３ａより、例えばタイムコード等の制御データの付加処理等を施した、例えば固定ビットレートによるストリームを生成させる。ステップＳ３０８において、制御部１１５は、生成されたストリームを、通信Ｉ／Ｆ１１１によりネットワーク１５を通じて、受信装置１４に順次送信させる。
【００４１】
以上の処理により、受信装置１４には動画像データ１１３ａが、再生時間にしたがって順次供給される。上記の送信装置１１では、受信装置１４からネットワーク１５を通じて送信された、動画像データ１１３ａの送信要求信号を受信すると、この受信をネットワーク１６を通じて送信制御装置１３に通知する。送信制御装置１３の処理により、各送信装置１１および１２において、送信が要求されたすべてのストリームに対する送信要求信号の受信がなされたことが確認されてから、各送信装置１１および１２におけるストリームデータ１１ａおよび１２ａの送信処理が開始されるので、受信装置１４から各送信装置１１および１２への通信経路上のトラフィック状態に起因する伝送遅延が補正され、受信装置１４における各ストリームデータ１１ａおよび１２ａの受信タイミングのズレが抑制される。
【００４２】
また、何らかの理由で一部のストリームデータ１１ａまたは１２ａに対する送信要求信号が各送信装置１１または１２で受信されなかった場合には、送信制御装置１３がこのことを検知してエラーを返すことにより、ストリームデータ１１ａまたは１２ａの一方だけ受信装置１４に送信されて再生が行われるという誤動作が防止され、また、一方だけの送信によって発生するネットワーク１５上の不必要なトラフィックを未然に防止することが可能となる。
【００４３】
次に、図４に受信装置１４の内部構成例を示す。
受信装置１４は、ネットワーク１５に接続してデータの送受信を行う通信Ｉ／Ｆ１４１と、受信したストリームデータ１１ａおよび１２ａをそれぞれ一時的に記憶するバッファメモリ１４２および１４３と、バッファメモリ１４２および１４３による各記憶データを読み出して再生し、再生信号を出力する再生処理部１４４および１４５と、装置全体の制御をつかさどる制御部１４６によって構成される。
【００４４】
通信Ｉ／Ｆ１４１は、ケーブルを接続するためのコネクタや、通信プロトコルの変換処理を行う制御部等を具備している。バッファメモリ１４２および１４３は、例えば半導体によるＲＡＭやＨＤＤ等により構成される。再生処理部１４４および１４５、例えば、ＲＯＭ等に記憶された制御プログラムをプロセッサによって実行すること等によって、バッファメモリ１４２および１４３の記憶データを順次読み出し、デコード処理を行って再生信号を生成して、図示しない画像表示部や音声出力部等に出力する。
【００４５】
次に、図５に受信装置１４における処理のフローチャートを示す。
ステップＳ５０１において、各再生処理部１４４および１４５における再生処理動作の遅延時間検出処理が行われる。制御部１４６は、各再生処理部１４４および１４５に対して、受信したストリームデータ１１ａおよび１２ａをバッファメモリ１４２および１４３に所定量記憶して再生出力処理の準備が整い、再生開始要求がなされてから、実際に再生信号が出力されるまでの遅延時間の通知を要求する。この遅延時間は、例えば再生開始要求を受けてから処理を開始するまでの時間や、バッファメモリ１４２または１４３にアクセスしてデータを読み出す時間、デコード処理の時間等が含まれる。各再生処理部１４４および１４５は、制御部１４６からの要求に基づいて遅延時間の取得処理を行い、制御部１４６に通知する。制御部１４６はそれぞれの遅延時間を例えば図示しないＲＡＭ等に記憶する。なお、このような再生処理部１４４および１４５の遅延時間検出処理は、例えばコンピュータ装置におけるＯＳ（Operating System）の機能として用意される。
【００４６】
ステップＳ５０２において、ストリーミング動作の開始要求が行われたか否かが判断され、行われない場合はステップＳ５０２の処理を繰り返し、行われた場合はステップＳ５０３に進む。ステップＳ５０２では、例えば、再生処理部１４４および１４５の一方または双方に対する再生開始および終了操作のためのグラフィカルインタフェースが、図示しない表示部に表示されて、マウス等の図示しない入力装置を用いてユーザにより再生開始操作が行われること等によって、制御部１４６に対してストリーミング動作の開始を要求する制御信号が供給される。ステップＳ５０３において、制御部１４６の制御により、各ストリームデータ１１ａおよび１２ａに対する送信要求信号が、通信Ｉ／Ｆ１４１およびネットワーク１５を通じて各送信装置１１および１２に対して送信される。
【００４７】
ステップＳ５０４において、送信装置１１および１２からの、エラーを示す制御信号の受信を判断し、受信した場合はステップＳ５０５に進み、受信しない場合はステップＳ５０６に進む。ステップＳ５０５において、例えば表示装置にストリーミング動作においてエラーが発生したことを表示すること等により、エラー発生をユーザに通知して、処理を終了する。ステップＳ５０６において、送信装置１１および１２からのストリームデータ１１ａおよび１２ａの受信を判断し、受信しない場合はステップＳ５０６の処理が繰り返され、受信した場合はステップＳ５０７に進む。ストリームデータ１１ａおよび１２ａとしては、例えば動画像データ１１３ａおよび音声データ等が送信される。ステップＳ５０７において、受信した動画像データ１１３ａおよび音声データを、それぞれバッファメモリ１４２および１４３に一時的に順次記憶させる。
【００４８】
ステップＳ５０８において、各バッファメモリ１４２および１４３において、再生処理部１４４および１４５の再生出力処理を行うために必要なデータ量の記憶が行われたか否かを判断し、必要な記憶量に満たない場合はステップＳ５０８の処理を繰り返し、バッファメモリ１４２および１４３の双方においてこの必要記憶量に達した場合は、制御部１４６がこれを検知し、ステップＳ５０９に進む。ステップＳ５０９において、制御部１４６は各再生処理部１４４および１４５における再生出力処理の遅延時間を参照して、最も遅延時間の長い一方の再生処理部１４４または１４５に対して、再生出力処理の開始を要求する制御信号を出力して動作を開始させ、その後に、他方の再生処理部１４４または１４５に対して、同様の制御信号を遅延時間の差分だけ遅延させて出力して、動作を開始させる。各再生処理部１４４および１４５では、制御部１４６からの開始要求に応じて、各バッファメモリ１４２および１４３から記憶された動画像データ１１３ａおよび音声データを順次読み出してデコードし、再生信号を出力する。これにより、例えば図示しない表示部に動画像が表示され、同時に図示しないスピーカ等の音声出力部より音声が出力される。
【００４９】
以上の処理によって、受信装置１４では、各再生処理部１４４および１４５による、再生出力処理の開始から再生信号の出力までの遅延時間の差が補正され、動画像データ１１３ａおよび音声データの再生タイミングの正確性が高まる。またこれに加えて、上述した送信制御装置１３による各送信装置１１および１２の制御により、受信装置１４から各送信装置１１および１２への送信要求信号の伝送遅延時間が補正されて、受信装置１４における動画像データ１１３ａおよび音声データの受信タイミングの差が抑制されていることから、単純なシステム構成を用いて、複数のストリームデータ１１ａおよび１２ａのより正確な同期再生を行うことが可能となっている。さらに、例えば再生処理部１４４および１４５の間で同期信号を用いた再生同期が行われる場合には、送信要求信号の伝送遅延時間の差を考慮したバッファリング量だけ、バッファメモリ１４２および１４３の記憶容量を抑制することが可能となる。
【００５０】
なお、以上説明したデータ送受信システム１０では、複数のストリームデータ１１ａおよび１２ａを送信するためのストリーミングサーバ１１ｂおよび１２ｂを、個別の送信装置１１および１２上に設けた構成としたが、各ストリーミングサーバ１１ｂおよび１２ｂは同一装置上に設けられてもよい。また、ストリーミングコントローラ１３ａも、ストリーミングサーバ１１ｂおよび１２ｂとは別の装置上に設けたが、各ストリーミングサーバ１１ｂまたは１２ｂのいずれか１つあるいは双方と同一の装置上に設けられてもよい。
【００５１】
また、上記のデータ送受信システム１０における処理機能は、サーバコンピュータとクライアントコンピュータとによって実現することができる。その場合、送信装置１１および１２が有すべき機能、または、送信装置１１および１２のいずれかまたは双方と送信制御装置１３が有すべき機能の処理内容を記述したサーバプログラム、および受信装置１４が有すべき機能の処理内容を記述したクライアントプログラムが提供される。サーバプログラムをサーバコンピュータで実行することにより、送信装置１１および１２の処理機能、またはこれと送信制御装置１３が統合された処理機能が、サーバコンピュータ上で実現される。また、クライアントプログラムをクライアントコンピュータで実行することにより、受信装置１４の処理機能がクライアントコンピュータ上で実現される。
【００５２】
処理内容を記述したサーバプログラムやクライアントプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等がある。磁気記録装置には、ハードディスク装置（ＨＤＤ）、フロッピーディスク（ＦＤ）、磁気テープ等がある。光ディスクには、ＤＶＤ(Digital Versatile Disc)、ＤＶＤ−ＲＡＭ(Random Access Memory)、ＣＤ−ＲＯＭ(Compact Disc Read Only Memory)、ＣＤ−Ｒ(Recordable)／ＲＷ(ReWritable)等がある。光磁気記録媒体には、ＭＯ(Magneto-Optical disc)等がある。
【００５３】
サーバプログラムやクライアントプログラムを流通させる場合には、例えば、各プログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体が販売される。また、クライアントプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータからクライアントコンピュータにクライアントプログラムを転送することもできる。
【００５４】
サーバプログラムを実行するサーバコンピュータは、例えば、可搬型記録媒体に記録されたサーバプログラムを、自己の記憶装置に格納する。そして、サーバコンピュータは、自己の記憶装置からサーバプログラムを読み取り、サーバプログラムに従った処理を実行する。なお、サーバコンピュータは、可搬型記録媒体から直接サーバプログラムを読み取り、そのサーバプログラムに従った処理を実行することもできる。
【００５５】
クライアントプログラムを実行するクライアントコンピュータは、例えば、可搬型記録媒体に記録されたクライアントプログラムもしくはサーバコンピュータから転送されたクライアントプログラムを、自己の記憶装置に格納する。そして、クライアントコンピュータは、自己の記憶装置からクライアントプログラムを読み取り、クライアントプログラムに従った処理を実行する。なお、クライアントコンピュータは、可搬型記録媒体から直接クライアントプログラムを読み取り、そのクライアントプログラムに従った処理を実行することもできる。また、クライアントコンピュータは、サーバコンピュータからクライアントプログラムが転送される毎に、逐次、受け取ったクライアントプログラムに従った処理を実行することもできる。
【００５６】
【発明の効果】
以上説明したように、本発明のデータ再生方法では、受信して一時的に記憶された複数のストリームデータについて、再生出力処理の開始することが可能となってから、あらかじめ記憶していた遅延時間に応じて、各ストリームデータの再生出力処理に開始タイミングを遅延させるように制御するので、再生出力処理の開始が要求されてから実際に再生信号の出力が行われるまでの遅延時間が、ストリームデータごとに異なる場合にも、正確な同期再生を行うことが可能となる。
【図面の簡単な説明】
【図１】本発明のデータ送受信システムの概略構成例を示す図である。
【図２】送信装置の内部構成例を示す図である。
【図３】送信装置における処理を示すフローチャートである。
【図４】受信装置の内部構成例を示す図である。
【図５】受信装置における処理を示すフローチャートである。
【図６】複数のストリームデータを用いた従来のデータ送受信システムの概略構成例を示す図である。
【符号の説明】
１０……データ送受信システム、１１……送信装置、１１ａ……ストリームデータ、１１ｂ……ストリーミングサーバ、１２……送信装置、１２ａ……ストリームデータ、１２ｂ……ストリーミングサーバ、１３……送信制御装置、１３ａ……ストリーミングサーバ、１４……受信装置、１４ａ、１４ｂ……再生クライアント、１４ｃ……再生コントローラ、１５、１６……ネットワーク
【図１】
0004595247.tif 000002
【図２】
0004595247.tif 000003
【図３】
0004595247.tif 000004
【図４】
0004595247.tif 000005
【図５】
0004595247.tif 000006
【図６】
0004595247.tif 000007