(57)【特許請求の範囲】
【請求項１】
複数の送信装置それぞれが動画データを送信する動画データ送信システムにおける情報処理方法において、
情報処理装置が、前記複数の送信装置によって送信される複数の動画データであって、１つの映像が分割された複数の映像を示す複数の動画データを同期して再生するための同期用のデータの要求を前記複数の送信装置へ送信する要求送信ステップと、
前記複数の送信装置のそれぞれが、前記情報処理装置から送信された前記要求を受信する要求受信ステップと、
前記複数の送信装置のそれぞれが、前記要求受信ステップにより前記要求が受信された場合、前記送信装置により送信される動画データにおける所定の期間の動画データ及び当該所定期間の動画データと同期して再生される音データの何れかを、前記同期用のデータとして前記情報処理装置へ送信する同期用データ送信ステップと、
前記情報処理装置が、前記複数の送信装置により送信された複数の同期用のデータを受信する同期用データ受信ステップと、
前記情報処理装置が、前記同期用データ受信ステップにより受信された複数の同期用のデータに基づいて、前記複数の同期用のデータの何れかに対する前記複数の同期用のデータの時間的なずれ量をそれぞれ算出する算出ステップと、
前記情報処理装置が、前記算出ステップにより算出された各ずれ量を、当該ずれ量に対応する前記送信装置へ送信するずれ量送信ステップと、
前記複数の送信装置が、前記情報処理装置から送信されたずれ量を受信するずれ量受信ステップと、
前記複数の送信装置のそれぞれが、前記送信装置により送信される動画データの長さを、前記ずれ量受信ステップにより受信されたずれ量に相当する時間長分調整する調整ステップと、
前記複数の送信装置のそれぞれが、前記調整ステップにより長さが調整された動画データを、前記複数の動画データを再生する再生装置へ送信する動画データ送信ステップと、
前記再生装置が、前記複数の送信装置により送信された複数の動画データを受信する動画データ受信ステップと、
を含むことを特徴とする情報処理方法。
【請求項２】
請求項１に記載の情報処理方法において、
前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれは、前記要求受信ステップにより前記要求が受信された時点から前記所定の期間の動画データ及び当該所定期間の動画データと同期して再生される音データの何れかを、前記同期用のデータとして前記情報処理装置へ送信することを特徴とする情報処理方法。
【請求項３】
請求項１又は２に記載の情報処理方法において、
前記要求送信ステップにおいて、前記情報処理装置は、前記同期用のデータの時間長として所定の第１時間を含む前記要求を送信し、
前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれは、前記要求受信ステップにおいて受信された前記要求に含まれる時間長の前記同期用のデータを前記情報処理装置へ送信し、
前記算出ステップにおいて、前記情報処理装置により、前記複数の同期用のデータの時間的なずれ量を算出することができなかった場合、前記情報処理装置が、前記同期用のデータの時間長として、前記第１時間よりも長い第２時間を含む前記要求を前記複数の送信装置へ送信する第３要求送信ステップと、
を更に有することを特徴とする情報処理方法。
【請求項４】
請求項１乃至３の何れか１項に記載の情報処理方法において、
前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれが、前記要求受信ステップにより前記要求が受信された場合、送信される動画データにおける前記所定の期間の動画データと同期して再生される前記音データを、前記同期用のデータとして前記情報処理装置へ送信し、
前記算出ステップにおいて、前記情報処理装置は、前記同期用データ受信ステップにおいて受信された複数の音データの何れかの音データが示す音に対する前記複数の音データが示す音のずれ量をそれぞれ算出することを特徴とする情報処理方法。
【請求項５】
請求項１乃至３の何れか１項に記載の情報処理方法において、
前記複数の動画データは、それぞれがフレームを備えると共にフレームには当該フレームの再生タイミングを示すタイミング情報が付加され、
前記再生装置が、前記複数の送信装置から受信された前記複数の動画データの何れかの第１動画データ中の何れか第１フレームに付加されたタイミング情報が示すタイミングが到来したとき、前記タイミングから、前記複数の動画データのフレームレートの逆数の２分の１の時間経過したタイミングを取得する取得ステップと、
前記再生装置が、前記複数の送信装置から受信された前記複数の動画データの中で前記第１動画データ以外の第２動画データ中のフレームのうち、前記取得ステップにより取得された前記タイミングよりも前記フレームレートの逆数の時間未満前のタイミングを示すタイミング情報が付加された第２フレームを特定する特定ステップと、
前記再生装置が、前記第１フレームと前記特定ステップにより特定された前記第２フレームとを同時に再生する再生ステップと、
を更に含むことを特徴とする情報処理方法。
【請求項６】
複数の送信装置それぞれが動画データを送信する動画データ送信システムにおいて、
前記複数の送信装置と、
前記複数の送信装置から送信される複数の動画データを再生する生成装置と、
情報処理装置と、
を備え、
前記情報処理装置は、
前記複数の送信装置によって送信される複数の動画データであって、１つの映像が分割された複数の映像を示す複数の動画データを同期して再生するための同期用のデータの要求を前記複数の送信装置へ送信する要求送信手段と、
前記要求送信手段により送信された前記要求が前記送信装置により受信された場合に前記送信装置により送信される動画データにおける所定の期間の動画データ及び当該所定期間の動画データと同期して再生される音データの何れかを、前記同期用のデータとして前記複数の送信装置のそれぞれから受信する同期用データ受信手段と、
前記同期用データ受信手段により受信された複数の同期用のデータに基づいて、前記複数の同期用のデータの何れかのデータに対する前記複数の同期用のデータの時間的なずれ量をそれぞれ算出する算出手段と、
前記算出手段により算出された各ずれ量を、当該ずれ量に対応する前記送信装置へ送信するずれ量送信手段と、
を備え、
前記複数の送信装置のそれぞれは、
前記情報処理装置から送信された前記要求を受信する要求受信手段と、
前記要求受信手段により前記要求が受信された場合、前記同期用のデータを送信する同期用データ送信手段と、
前記情報処理装置から送信されたずれ量を受信するずれ量受信手段と、
前記送信装置により送信される動画データの長さを、前記ずれ量受信手段により受信されたずれ量に相当する時間長分調整する調整手段と、
前記調整手段により長さが調整された動画データを、前記複数の動画データを再生する再生装置へ送信する動画データ送信手段と、
を備え、
前記再生装置は、
前記複数の送信装置により送信された複数の動画データを受信する動画データ受信手段
を備えることを特徴とする動画データ送信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の動画データを送信し、送信された複数の動画データを同期して再生する動画データ送信システムの技術分野に関する。
【背景技術】
【０００２】
特許文献１には、１つの映像が複数に分割された分割映像を同期をとってそれぞれ複数のディスプレイに表示させるマルチディスプレイシステムが開示されている。このシステムにおいて、複数のディスプレイにそれぞれ対応する複数の信号処理部へ映像信号を供給する信号供給部が、映像信号の一フレームの中に、当該フレームの番号を示す映像マーカを複数の信号処理部に対応して複数挿入する。複数の信号処理部は、映像信号の一フレームの中から映像マーカを抽出し、フレームの番号が一致するように複数の信号処理部同士で同期をとって分割映像を表示させる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−２０５８２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
複数の送信装置により複数の動画データを送信する場合、送信装置間で動画データの送信の開始のタイミングを完全に一致させることは難しい。例えば、各送信装置が動画データの送信の開始の指令を受信するタイミングや、各送信装置の製造誤差、状態等により、動画データの送信の開始のタイミングがずれる場合がある。そのため、送信された複数の動画データを再生装置が受信して再生する場合、動画データ間でフレームの表示のタイミングにずれが生じるという問題がある。
【０００５】
本発明は、以上の点に鑑みてなされたものであり、上述したような手法とは異なる手法で、複数の送信装置から送信された複数の動画データを同期して再生することを可能とする情報処理方法及び動画データ送信システムを提供することを課題とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、請求項１に記載の発明は、複数の送信装置それぞれが動画データを送信する動画データ送信システムにおける情報処理方法において、情報処理装置が、前記複数の送信装置によって送信される複数の動画データであって、１つの映像が分割された複数の映像を示す複数の動画データを同期して再生するための同期用のデータの要求を前記複数の送信装置へ送信する要求送信ステップと、前記複数の送信装置のそれぞれが、前記情報処理装置から送信された前記要求を受信する要求受信ステップと、前記複数の送信装置のそれぞれが、前記要求受信ステップにより前記要求が受信された場合、前記送信装置により送信される動画データにおける所定の期間の動画データ及び当該所定期間の動画データと同期して再生される音データの何れかを、前記同期用のデータとして前記情報処理装置へ送信する同期用データ送信ステップと、前記情報処理装置が、前記複数の送信装置により送信された複数の同期用のデータを受信する同期用データ受信ステップと、前記情報処理装置が、前記同期用データ受信ステップにより受信された複数の同期用のデータに基づいて、前記複数の同期用のデータの何れかに対する前記複数の同期用のデータの時間的なずれ量をそれぞれ算出する算出ステップと、前記情報処理装置が、前記算出ステップにより算出された各ずれ量を、当該ずれ量に対応する前記送信装置へ送信するずれ量送信ステップと、前記複数の送信装置が、前記情報処理装置から送信されたずれ量を受信するずれ量受信ステップと、前記複数の送信装置のそれぞれが、前記送信装置により送信される動画データの長さを、前記ずれ量受信ステップにより受信されたずれ量に相当する時間長分調整する調整ステップと、前記複数の送信装置のそれぞれが、前記調整ステップにより長さが調整された動画データを、前記複数の動画データを再生する再生装置へ送信する動画データ送信ステップと、前記再生装置が、前記複数の送信装置により送信された複数の動画データを受信する動画データ受信ステップと、を含むことを特徴とする。
【０００７】
請求項２に記載の発明は、請求項１に記載の情報処理方法において、前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれは、前記要求受信ステップにより前記要求が受信された時点から前記所定の期間の動画データ及び当該所定期間の動画データと同期して再生される音データの何れかを、前記同期用のデータとして前記情報処理装置へ送信することを特徴とする。
【０００８】
請求項３に記載の発明は、請求項１又は２に記載の情報処理方法において、前記要求送信ステップにおいて、前記情報処理装置は、前記同期用のデータの時間長として所定の第１時間を含む前記要求を送信し、前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれは、前記要求受信ステップにおいて受信された前記要求に含まれる時間長の前記同期用のデータを前記情報処理装置へ送信し、前記算出ステップにおいて、前記情報処理装置により、前記複数の同期用のデータの時間的なずれ量を算出することができなかった場合、前記情報処理装置が、前記同期用のデータの時間長として、前記第１時間よりも長い第２時間を含む前記要求を前記複数の送信装置へ送信する第３要求送信ステップと、を更に有することを特徴とする。
【０００９】
請求項４に記載の発明は、請求項１乃至３の何れか１項に記載の情報処理方法において、前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれが、前記要求受信ステップにより前記要求が受信された場合、送信される動画データにおける前記所定の期間の動画データと同期して再生される前記音データを、前記同期用のデータとして前記情報処理装置へ送信し、前記算出ステップにおいて、前記情報処理装置は、前記同期用データ受信ステップにおいて受信された複数の音データの何れかの音データが示す音に対する前記複数の音データが示す音のずれ量をそれぞれ算出することを特徴とする。
【００１０】
請求項５に記載の発明は、請求項１乃至３の何れか１項に記載の情報処理方法において、前記複数の動画データは、それぞれがフレームを備えると共にフレームには当該フレームの再生タイミングを示すタイミング情報が付加され、前記再生装置が、前記複数の送信装置から受信された前記複数の動画データの何れかの第１動画データ中の何れか第１フレームに付加されたタイミング情報が示すタイミングが到来したとき、前記タイミングから、前記複数の動画データのフレームレートの逆数の２分の１の時間経過したタイミングを取得する取得ステップと、前記再生装置が、前記複数の送信装置から受信された前記複数の動画データの中で前記第１動画データ以外の第２動画データ中のフレームのうち、前記取得ステップにより取得された前記タイミングよりも前記フレームレートの逆数の時間未満前のタイミングを示すタイミング情報が付加された第２フレームを特定する特定ステップと、前記再生装置が、前記第１フレームと前記特定ステップにより特定された前記第２フレームとを同時に再生する再生ステップと、を更に含むことを特徴とする。
【００１１】
請求項６に記載の発明は、複数の送信装置それぞれが動画データを送信する動画データ送信システムにおいて、前記複数の送信装置と、前記複数の送信装置から送信される複数の動画データを再生する生成装置と、情報処理装置と、を備え、前記情報処理装置は、前記複数の送信装置によって送信される複数の動画データであって、１つの映像が分割された複数の映像を示す複数の動画データを同期して再生するための同期用のデータの要求を前記複数の送信装置へ送信する要求送信手段と、前記要求送信手段により送信された前記要求が前記送信装置により受信された場合に前記送信装置により送信される動画データにおける所定の期間の動画データ及び当該所定期間の動画データと同期して再生される音データの何れかを、前記同期用のデータとして前記複数の送信装置のそれぞれから受信する同期用データ受信手段と、前記同期用データ受信手段により受信された複数の同期用のデータに基づいて、前記複数の同期用のデータの何れかのデータに対する前記複数の同期用のデータの時間的なずれ量をそれぞれ算出する算出手段と、前記算出手段により算出された各ずれ量を、当該ずれ量に対応する前記送信装置へ送信するずれ量送信手段と、を備え、前記複数の送信装置のそれぞれは、前記情報処理装置から送信された前記要求を受信する要求受信手段と、前記要求受信手段により前記要求が受信された場合、前記同期用のデータを送信する同期用データ送信手段と、前記情報処理装置から送信されたずれ量を受信するずれ量受信手段と、前記送信装置により送信される動画データの長さを、前記ずれ量受信手段により受信されたずれ量に相当する時間長分調整する調整手段と、前記調整手段により長さが調整された動画データを、前記複数の動画データを再生する再生装置へ送信する動画データ送信手段と、を備え、前記再生装置は、前記複数の送信装置により送信された複数の動画データを受信する動画データ受信手段を備えることを特徴とする。
【発明の効果】
【００１２】
請求項１及び６に記載の発明によれば、複数の送信装置が、所定の期間の動画データ及び当該所定期間の動画データと同期して再生される音データの何れかを、同期用のデータとして情報処理装置へ送信する。情報処理装置は、複数の同期用のデータの時間的なずれ量を算出して、複数の送信装置へ送信する。各送信装置は、受信された映像データを、ずれ量に相当する時間長分調整する。そして、各送信装置は、長さが調整された映像データを再生装置へ送信する。そのため、再生装置が、複数の送信装置から送信された複数の動画データを同期して再生することができる。
【００１３】
請求項２に記載の発明によれば、複数の送信装置が、情報処理装置から要求を受信することによる同期用のデータを送信するための処理の開始のタイミングのずれ量は、動画データの送信の開始のタイミングのずれ量に対応する。複数の送信装置は、送信装置が同期用のデータを送信するための処理の開始のタイミングから送信装置により送信される複数のフレームが再生されるべき期間に再生され、且つそれらの複数のフレームが再生されるべき期間に対応する内容のデータを、同期用のデータとして情報処理装置へ送信する。このような同期用のデータの内容の時間的なずれ量に応じて、映像データの長さが調整されるので、複数の送信装置から送信された複数の動画データを同期して再生することができる。
【００１４】
請求項３に記載の発明によれば、複数の送信装置から情報処理装置へ最初に送信された複数の同期用のデータに共通する部分がないためにずれ量を算出することができない場合、より時間が長い同期用のデータを複数の変換装置に送信させることで、同期用のデータに共通する部分が含まれている蓋然性を高め、これによりずれ量を算出することができる。
【００１５】
請求項４に記載の発明によれば、複数の動画データと同期して再生される音データを同期用のデータとして用いることで、複数の送信装置による動画データの送信のタイミングのずれ量を的確に算出することができる。
【００１６】
請求項５に記載の発明によれば、動画データと音データとの間に時間的なずれがあり、そのずれの量が送信装置によって異なる場合であっても、複数の動画データ間におけるフレームの再生を同期させることができる。
【図面の簡単な説明】
【００１７】
【図１】一実施形態の映像配信システムＳの概要構成例を示す図である。
【図２】（Ａ）は、一実施形態の制御装置１の概要構成例を示す図である。（Ｂ）は、一実施形態の変換装置４−１〜４−４の概要構成例を示す図である。（Ｃ）は、一実施形態の再生装置５の概要構成例を示す図である。
【図３】音声データＡ１〜Ａ４、及び映像データＶ１〜Ｖ４の例を示す図である。
【図４】（Ａ）乃至（Ｄ）は、映像データＶ１〜Ｖ４の長さの調整例を示す図である。
【図５】音声データＡ１及びＡ２、及び映像データＶ１及びＶ２の例を示す図である。
【図６】制御装置１の処理例を示すフローチャートである。
【図７】変換装置の処理例を示すフローチャートである。
【図８】再生装置５の処理例を示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、本発明の実施形態を図面に基づいて説明する。
【００１９】
［１．第１実施形態］
［１−１．映像配信システムの構成］
図１は、本実施形態の映像配信システムＳの概要構成例を示す図である。図１に示すように、映像配信システムＳは、制御装置１、入力装置２、分配器３、変換装置４−１〜４４、及び再生装置５を含んで構成される。制御装置１は、本発明の情報処理装置の一例である。変換装置４−１〜４−４は、本発明の複数の送信装置の一例である。入力装置２と分配器３とは、例えばＨＤＭＩ（登録商標）（High-Definition Multimedia）等のケーブルにより接続されている。分配器３と、変換装置４−１〜４−４のそれぞれとは、例えばＨＤＭＩ等のケーブルにより接続されている。変換装置４−１〜４−４のそれぞれと、再生装置５とは、例えばインターネット等のネットワークを介して接続されてもよいし、ＵＳＢ（Universal Serial Bus）等のケーブルにより接続されてもよい。また、変換装置４−１〜４−４のそれぞれと、制御装置１とは、例えばＬＡＮ（Local Area Network）等のネットワークを介して接続されてもよいし、ＵＳＢ等のケーブルにより接続されてもよい。
【００２０】
入力装置２は、映像配信システムＳへ映像データ及び音声データを入力するための装置である。映像データは、複数のフレームで構成される。映像データは、本発明の動画データの一例である。音声データは、本発明の音データの一例である。入力装置２は、例えばテレビカメラ等であってもよい。入力装置２は、例えば所定の解像度の映像を撮影して、映像データを生成する。例えば、解像度は、４Ｋ解像度であってもよいし、別の解像度であってもよい。また、入力装置２は、例えばマイクにより音声を録音して、音声データを生成する。そして、入力装置２は、撮影及び録音を実行しながら映像データ及び音声データを分配器３へ送信する。このとき、入力装置２は、映像データをフレームごとに送信する。
【００２１】
分配器３は、入力装置２から受信された映像データを、第１象限〜第４象限の映像の映像データに分割する。すなわち、分配器３は、入力装置２から受信された映像データが示す映像を分割した４個の映像を示す４個の分割データに分割する。分割前の映像データの解像度が４Ｋ解像度である場合、分割されたそれぞれの映像データの解像度は２Ｋ解像度となる。そして、分配器３は、第１象限〜第４象限の映像データのそれぞれを変換装置４−１〜４−４のそれぞれへ送信する。すなわち、ｉを１〜４の何れかとすると、分配器３は、第ｉ象限の映像データを変換装置４−ｉへ送信する。また、分配器３は、入力装置２から受信された音声データを、変換装置４−１〜４のそれぞれへ送信する。分配器３から変換装置４−ｉへ送信される映像データ及び音声データを、映像データＶｉ及び音声データＡｉという。
【００２２】
変換装置４−１〜４−４のそれぞれは、分配器３から受信した映像データ及び音声データをリアルタイムでエンコードする。例えば、変換装置４−１〜４−４のそれぞれは、映像データを、Ｈ．２６４等のフォーマットの映像データにエンコードしてもよい。また例えば、変換装置４−１〜４−４のそれぞれは、音声データを、ＡＡＣ（Advanced Audio Coding）等のフォーマットの音声データにエンコードしてもよい。そして、変換装置４−１〜４−４のそれぞれは、エンコードを実行しながら、エンコードされた映像データ及び音声データを含むコンテンツデータをリアルタイムで再生装置５へ送信する。このとき、変換装置４−１〜４−４のそれぞれは、映像データをフレームごとに送信する。コンテンツデータのフォーマットは、例えばＭＰＥＧ−４等であってもよい。変換装置４−ｉから送信されるコンテンツデータを、コンテンツデータＣｉという。コンテンツデータＣｉに含まれる映像データ及び音声データは、エンコードされた映像データＶｉ及び音声データＡｉである。なお、変換装置４−１〜４−４の何れにも共通する事項を説明する場合、単に変換装置という。
【００２３】
再生装置５は、変換装置４−１〜４−４から受信したコンテンツデータＣ１〜Ｃ４のそれぞれに含まれる映像データＶ１〜Ｖ４の再生処理を実行するとともに、コンテンツデータＣ１〜Ｃ４の何れかに含まれる音声データの再生処理を実行する。これにより、再生装置５は、分割された４個の映像を結合して１つの画面内に表示するとともに、音声を出力する。再生装置５の例として、パーソナルコンピュータ、スマートフォン、タブレット型コンピュータ、携帯電話機等が挙げられる。
【００２４】
制御装置１は、変換装置４−１〜４−４によるエンコード処理の開始及び停止を制御する。また、制御装置１は、変換装置４−１〜４−４から再生装置５へ送信されるコンテンツデータＣ１〜Ｃ４を同期して再生するための制御を行う。制御装置１の例として、サーバ装置、パーソナルコンピュータ等が挙げられる。なお、例えば変換装置４−１〜４−４の何れかが、制御装置１を備えてもよい。
【００２５】
［１−２．各装置の構成］
次に、図２を参照して、各装置の構成について説明する。
【００２６】
［１−２−１．制御装置１の構成］
図２（Ａ）は、本実施形態の制御装置１の概要構成例を示す図である。図２（Ａ）に示すように、制御装置１は、ＣＰＵ（Central Processing Unit）１１、ＲＯＭ（Read Only Memory）１２、ＲＡＭ（Random Access Memory）１３、記憶部１４、入出力インタフェース１５、入力部１６、及び表示部１７等を備えて構成される。これらの構成要素は、バス１６に接続されている。入出力インタフェース１５には、例えばＬＡＮ、ＵＳＢ等のケーブルが接続される。入出力インタフェース１５は、制御装置１と変換装置４−１〜４−４のそれぞれとの間のインタフェース処理を行う。例えば、入出力インタフェース１５は、変換装置４−１〜４−４から制御装置１へ送信された音声データをＣＰＵ１１に出力する。入力部１６は、ユーザの操作を入力するための入力デバイスである。入力部１６は、例えばキーボード、マウス等により構成されてもよい。表示部１７は、例えば液晶パネル、有機ＥＬパネル等により構成されるディスプレイである。記憶部１４は、例えばハードディスクドライブにより構成される。記憶部１４には、ＯＳ、及び制御プログラム等が記憶されている。制御プログラムは、コンピュータとしてのＣＰＵ１１に、コンテンツデータＣ１〜Ｃ４を同期して再生するための制御等の処理を実行させるためのプログラムである。制御プログラム等は、例えば所定のサーバ等からダウンロードされてもよい。或いは、制御プログラム等は、例えば光ディスク、磁気テープ、メモリカード等の記録媒体に記録されてドライブ装置を介して記憶部１４に読み込まれてもよい。
【００２７】
［１−２−２．変換装置４の構成］
図２（Ｂ）は、本実施形態の変換装置４−１〜４−４の概要構成例を示す図である。変換装置４−１〜４−４の構成は、基本的に互いに同じである。図２（Ｂ）に示すように、変換装置は、ＣＰＵ４１、ＲＯＭ４２、ＲＡＭ４３、映像・音声入力部４４、エンコーダ４５、入出力インタフェース４６及び４７等を備えて構成される。ＣＰＵ４１、ＲＯＭ４２、ＲＡＭ４３、及びエンコーダ４５はバス４８に接続されている。映像・音声入力部４４には、例えばＨＤＭＩ等のケーブルが接続される。映像・音声入力部４４は、分配器３から送信されてきた映像データ及び音声データをエンコーダ４５へ出力する。エンコーダ４５は、ＣＰＵ４１の制御に基づいて、映像・音声入力部４４から入力された映像データ及び音声データをエンコードする。例えば、エンコーダ４５は、映像データ及び音声データのそれぞれを一時的に記憶するためのバッファメモリを備えてもよい。エンコーダ４５は、映像・音声入力部４４から入力された映像データ及び音声データを順次バッファメモリに記憶し、先入れ後出し方式で、バッファメモリから映像データ及び音声データを読み出してエンコードを行う。エンコードされた映像データのフォーマットは、例えばＨ．２６４等であってもよい。エンコードされた音声データのフォーマットは、例えばＡＡＣ等であってもよい。エンコーダ４５は、エンコードされた映像データ及び音声データにタイムスタンプを付与する。例えば、エンコーダ４５は、映像データを構成する各フレームに対してタイムスタンプを生成し、生成したタイムスタンプをフレームに付加する。タイムスタンプは、タイムスタンプが付加されたフレームを再生するタイミングを示す情報である。タイムスタンプは、本発明のタイミング情報の一例である。エンコーダ４５は、映像データのフレームレートの逆数の時間間隔で各フレームに対するタイムスタンプを生成する。映像データＶ１〜Ｖ４のフレームレートは互いに同じである。そして、エンコーダ４５は、タイムスタンプが付加された映像データ及び音声データを例えば多重化してコンテンツデータを生成する。エンコーダ４５は、映像データ及び音声データを順次エンコードしながら、生成されたコンテンツデータをリアルタイムで順次入出力インタフェース４６へ出力する。また、エンコーダ４５は、ＣＰＵ４１の制御に基づき、コンテンツデータを入出力インタフェース４７へ出力することも可能である。また、エンコーダ４５は、ＣＰＵ４１の制御に基づき、映像・音声入力部４４から入力された音声データをＲＡＭ４３へ出力する。入出力インタフェース４６及び４７には、例えばＬＡＮ、インターネット回線、ＵＳＢ等のケーブルが接続される。入出力インタフェース４６は、変換装置と再生装置５との間のインタフェース処理を行う。例えば、出力インタフェース４６は、エンコーダ４５から入力されたコンテンツデータを再生装置５へ送信する。入出力インタフェース４７は、変換装置と制御装置１との間のインタフェース処理を行う。例えば、入出力インタフェース４７は、エンコーダ４５から入力された音声データ又はコンテンツデータを制御装置１へ送信する。ＲＯＭ４２には、ＯＳ、及び制御プログラム等が記憶されている。制御プログラムは、コンピュータとしてのＣＰＵ４１に、エンコーダ４５の動作の制御、同期用データの送信等の処理を実行させる。
【００２８】
［１−２−３．再生装置５の構成］
図２（Ｃ）は、本実施形態の再生装置５の概要構成例を示す図である。図２（Ｃ）に示すように、再生装置５は、ＣＰＵ５１、ＲＯＭ５２、ＲＡＭ５３、記憶部５４、入出力インタフェース５５、入力部５６、表示部５７、及びスピーカ５８等を備えて構成される。これらの構成要素は、バス５９に接続されている。入出力インタフェース５５には、例えばＬＡＮ、インターネット回線、ＵＳＢ等のケーブルが接続される。入出力インタフェース５５は、再生装置５と変換装置４−１〜４−４のそれぞれとの間のインタフェース処理を行う。例えば、入出力インタフェース５５は、変換装置４−１〜４−４から再生装置５へ送信されたコンテンツデータＣ１〜Ｃ４をＣＰＵ５１に出力する。入力部５６は、ユーザの操作を入力するための入力デバイスである。入力部５６は、例えばボタン、キー、タッチパネル、キーボード等の少なくとも１つにより構成されてもよい。表示部５７は、例えば液晶パネル、有機ＥＬパネル等により構成されるディスプレイである。記憶部５４は、例えばフラッシュメモリ又はハードディスクドライブ等により構成される。記憶部５４には、ＯＳ、及び再生プログラム等が記憶されている。再生プログラムは、コンピュータとしてのＣＰＵ５１に、コンテンツデータＣ１〜Ｃ４の再生等の処理を実行させるプログラムである。再生プログラム等は、例えば所定のサーバ装置からダウンロードされてもよい。或いは、再生プログラム等は、例えば光ディスク、磁気テープ、メモリカード等の記録媒体に記録されてドライブ装置を介して記憶部５４に読み込まれてもよい。或いは、再生プログラム等は、再生装置５に予めインストールされていてもよい。
【００２９】
［１−３．映像データの再生の同期］
映像配信システムＳにおいては、入力装置２が撮影を開始することにより、入力装置２が分配器３を介して変換装置４−１〜４−４のそれぞれへ映像データ及び音声データの送信を開始する。その後、制御装置１は、変換装置４−１〜４−４のそれぞれへエンコード開始命令を一斉に送信する。これにより、変換装置４−１〜４−４は、入力装置２からの映像データ及び音声データのエンコード処理を開始して、エンコードされた映像データ及び音声データにタイムスタンプを付加して再生装置５への送信を開始する。タイムスタンプは、例えばエンコード処理が開始されてから経過した時間で示される。エンコードの開始は、エンコードされた映像データの送信の開始でもある。なお、変換装置４−１〜４−４は、映像データにタイムスタンプを付加しなくてもよい。
【００３０】
変換装置４−１〜４−４がエンコードを開始するタイミングが互いにずれる場合がある。従って、エンコードされた映像データの送信の開始のタイミングもずれる。タイミングがずれる要因として、エンコード開始命令の受信のタイミングが異なったり、変換装置４−１〜４−４の製造誤差があったり、変換装置４−１〜４−４のそれぞれの状態等が考えられる。たとえ、変換装置４−１〜４−４が入力装置２から映像データＶ１〜Ｖ４を同じタイミングで受信していたとしても、エンコード処理の開始のタイミングが異なると、再生装置５が受信する映像データＶ１〜Ｖ４のそれぞれの先頭のフレームの部分の本来の再生タイミングが異なる。従って、再生装置５が映像データＶ１〜Ｖ４のそれぞれの先頭から同時に映像データＶ１〜Ｖ４の再生を開始すると、映像データＶ１〜Ｖ４間でフレームの表示のタイミングにずれが生じる。また、エンコード処理の開始のタイミングが異なると、変換装置４−１〜４−４間でフレームに付与されるタイムスタンプにずれが生じる。そのため、変換装置４−１〜４−４から映像データＶ１〜Ｖ４を受信した再生装置５がタイムスタンプに従って映像データＶ１〜Ｖ４を再生すると、映像データＶ１〜Ｖ４間でフレームの表示のタイミングにずれが生じる。
【００３１】
この問題を具体的に説明する。図３は、音声データＡ１〜Ａ４、及び映像データＶ１〜Ｖ４の例を示す図である。図３において、映像データＶ１〜Ｖ４のそれぞれに含まれる矩形はフレームを示す。なお、以下の例においては、フレームレートは２５であるとする。また、フレームＦｉ−ｊは、入力装置２から変換装置４−ｉへ送信されるフレームのうちｊ番目のフレームである。フレームＦｉ−ｊの横方向における位置により、フレームＦｉ−ｊが変換装置４−ｉに受信されるタイミングが示される。例えば、変換装置４−２は、フレームＦ２−０、Ｆ２−１、Ｆ２−２、Ｆ２−３等の順に、フレームを受信する。変換装置４−１が時刻Ｔ０でエンコードを開始したとする。このとき、変換装置４−１は、フレームＦ１−２の丁度先頭でエンコードを開始したとする。すなわち、変換装置４−１は、映像データＶ１を、フレームＦ１−２の先頭から再生装置５へ送信する。従って、再生装置５は、フレームＦ１−２の先頭から映像データＶ１を再生する。この場合、フレームＦ１−２のタイムスタンプは０ミリ秒であり、フレームＦ１−３のタイムスタンプは４０ミリ秒である。変換装置４−２は、時刻Ｔ０よりも７０ミリ秒前にエンコードを開始したとする。この場合、変換装置４−２は、フレームＦ２−０の先頭を受信してから１０ミリ秒経過後にフレームＦ２−０のエンコードを開始する。従って、変換装置４−２は、フレームＦ２−０の３０ミリ秒分のデータをエンコードすることになる。すなわち、変換装置４−２は、映像データＶ２を、フレームＦ２−０の途中から再生装置５へ送信する。従って、再生装置５は、フレームＦ２−０の途中から映像データＶ２を再生する。この場合、フレームＦ２−０のタイムスタンプは０ミリ秒である。また、変換装置４−２は、エンコードの開始から３０ミリ秒後にフレームＦ２−１のエンコードを開始する。従って、フレームＦ２−１のタイムスタンプは３０ミリ秒であり、フレームＦ２−３のタイムスタンプは１１０ミリ秒である。変換装置４−３は、時刻Ｔ０よりも２５ミリ秒前にエンコードを開始したとする。この場合、変換装置４−３は、フレームＦ３−１の先頭を受信してから１５ミリ秒経過後にフレームＦ３−１のエンコードを開始する。従って、変換装置４−３は、フレームＦ３−１の２５ミリ秒分のデータをエンコードすることになる。すなわち、変換装置４−３は、映像データＶ３を、フレームＦ３−１の途中から再生装置５へ送信する。従って、再生装置５は、フレームＦ３−１の途中から映像データＶ３を再生する。この場合、フレームＦ３−１のタイムスタンプは０ミリ秒である。また、変換装置４−３はエンコードの開始から２５ミリ秒後にフレームＦ３−２のエンコードを開始する。従って、フレームＦ３−２のタイムスタンプは２５ミリ秒であり、フレームＦ３−３のタイムスタンプは６５ミリ秒である。変換装置４−４は、時刻Ｔ０よりも３０ミリ秒後にエンコードを開始したとする。この場合、変換装置４−４は、フレームＦ４−２の先頭を受信してから３０ミリ秒経過後にフレームＦ４−２のエンコードを開始する。従って、変換装置４−４は、フレームＦ４−２の１０ミリ秒分のデータをエンコードすることになる。すなわち、変換装置４−４は、映像データＶ４を、フレームＦ４−２の途中から再生装置５へ送信する。従って、再生装置５は、フレームＦ４−２の途中から映像データＶ４を再生する。この場合、フレームＦ４−２のタイムスタンプは０ミリ秒である。また、変換装置４−４は、エンコードの開始から１０ミリ秒後にフレームＦ４−３のエンコードを開始する。従って、フレームＦ４−３のタイムスタンプは１０ミリ秒である。このように、映像データＶ１〜Ｖ４間において、再生装置５が再生を開始する先頭部分が異なる場合がある。また、映像データＶ１〜Ｖ４にタイムスタンプを付加する場合、同時に再生されるべきフレームＦ１−３〜Ｆ４−３のタイムスタンプがばらばらとなる場合がある。
【００３２】
そこで、制御装置１は、変換装置４−１〜４−４から同期用データＳＤ１〜ＳＤ４を取得する。同期用データＳＤ１〜ＳＤ４は、変換装置４−１〜４−４から送信される映像データＶ１〜Ｖ４を同期して再生するために用いられる。変換装置４−ｉから取得される同期用データは、同期用データＳＤｉである。具体的に、制御装置１は、変換装置４−１〜４−４のそれぞれへ、同期用データ生成命令を一斉に送信する。同期用データは、変換装置により送信される映像データにおける所定の期間の映像データにより再生されるデータである。エンコードを開始するタイミングがずれることにより、この所定の期間がずれる。所定の期間の映像データにより再生されるデータは、例えば音声データ又は映像データである。同期用データは、例えば同期用データ生成命令を変換装置が受信した時点から所定の期間の動画データにより再生されるデータであってもよい。具体的に、同期用データは、例えば同期用データ生成命令を変換装置が受信した時点から所定の期間送信される複数のフレームが再生されるべき期間に再生されるデータであって、その期間に対応した内容のデータであってもよい。同期用データ生成命令を変換装置が受信した時点から送信される複数のフレームとは、具体的には、入力装置２からの映像データ及び音声データの送信の開始後に変換装置が入力装置２から受信する映像データのうち、同期用データ生成命令を変換装置が受信した時点から受信された映像データ部分の複数のフレームである。変換装置は、フレームを受信した時点でそのフレームをエンコードして再生装置５へ送信することができる。このとき、変換装置は受信したフレームを実際にはエンコードして送信する必要はない。そして、同期用データとして、同期用データ生成命令を変換装置が受信した時点から送信される複数のフレームが再生されるべき期間に対応した内容のデータとは、その複数のフレームに付加されるタイムスタンプが示すタイミングで再生されるデータである。すなわち、同期用データが映像データである場合、同期用データは、同期用データ生成命令を変換装置が受信した時点から送信される複数のフレームそのものである。同期用データが音声データである場合、同期用データは、変換装置が入力装置２から受信する音声データのうち、同期用データ生成命令を変換装置が受信した時点から送信される複数のフレームと同期して再生される音声データである。制御装置１は、変換装置４−１〜４−４からそれぞれ受信した同期用データＳＤ１〜ＳＤ４に基づいて、同期用データＳＤ１〜ＳＤ４のうち例えば同期用データＳＤ１に対する同期用データＳＤ１〜ＳＤ４の時間的なずれ量をそれぞれ算出する。なお、制御装置１は、同期用データＳＤ１のずれ量を計算しなくてもよい。制御装置１は、同期用データＳＤ１のずれ量として自動的に０を決定してもよい。
【００３３】
例えば、制御装置１は、同期用データＳＤ１〜ＳＤ４のそれぞれから、互いに内容が共通する部分のデータを特定する。制御装置１は、同期用データＳＤ１〜ＳＤ４のそれぞれについて、共通部分の時間的な位置を算出する。そして、ＣＰＵ１１は、同期用データＳＤ１〜ＳＤ４のそれぞれにおける共通部分の時間的な位置を、同期用データＳＤ１において共通部分の時間的な位置で減算することにより、ずれ量を計算する。なお、例えば、同期用データＳＤ１及び同期用データＳＤ２が共通部分Ｐ１を含み、同期用データＳＤ２及び同期用データＳＤ３が共通部分Ｐ２を含み、同期用データＳＤ３及び同期用データＳＤ４が共通部分Ｐ３を含むような場合であっても、制御装置１は、同期用データＳＤ１の内容に対する同期用データＳＤ１〜ＳＤ４の内容の時間的なずれ量を算出することが可能である。
【００３４】
制御装置１は、算出した複数のずれ量をオフセットＯＦ１〜ＯＦ４とする。同期用データＳＤｉのオフセットがオフセットＯＦｉである。制御装置１は、オフセットＯＦ１〜ＯＦ４を変換装置４−１〜４−４へ送信する。変換装置４−ｉへ送信されるオフセットは、オフセットＯＦｉである。
【００３５】
本実施形態においては、同期用データとして音声データが用いられる。例えば、変換装置４−１〜４−４のそれぞれは、制御装置１から同期用データ生成命令を受信した時点から入力装置２から受信した音声データをＲＡＭ５３に記憶させ、記憶された音声データを同期用データとして生成してもよい。制御装置１がエンコード開始命令を送信してから変換装置４−１〜４−４がエンコードを開始するタイミングのずれ量と、制御装置１が同期用データ生成命令を送信してから音声データのＲＡＭ５３への記憶を開始するタイミングのずれ量は同じである。音声データのＲＡＭ５３への記憶を開始するタイミングは、同期用データの生成開始のタイミングでもある。
【００３６】
図３に示すように、例えば変換装置４−１が時刻Ｔ０で同期用データの生成を開始した場合、変換装置４−２は、時刻Ｔ０よりも７０ミリ秒前に同期用データの生成を開始し、変換装置４−３は、時刻Ｔ０よりも２５ミリ秒前に同期用データの生成を開始し、変換装置４−４は、時刻Ｔ０よりも３０ミリ秒後に同期用データの生成を開始することになる。制御装置１は、同期用データとしての音声データＡ１〜Ａ４の音声波形に基づいて、音の時間的なずれ量を算出することができる。そして、制御装置１は、オフセットＯＦ１を０ミリ秒とし、オフセットＯＦ２を−７０ミリ秒とし、オフセットＯＦ３を−２５ミリ秒とし、オフセットＯＦ４を＋３０ミリ秒とする。制御装置１は、オフセットＯＦｉを変換装置４−ｉへ送信する。
【００３７】
制御装置１は、例えば予め定められた時間長の同期用データを変換装置４−１〜４−４のそれぞれから取得してもよい。例えば、制御装置１は、所定の時間長を含む同期用データ生成命令を変換装置４−１〜４−４へ送信する。変換装置４−１〜４−４は、同期用データ生成命令に含まれる時間長の同期用データを生成して、制御装置１へ送信する。制御装置１は、受信された予め定められた時間長の複数の同期用データに基づいて、ずれ量を生成する。このとき、複数の同期用データ間で、共通の音声波形部分を正確に特定することができない場合、ずれ量を正確に計算することができない。そこで、制御装置１は、ずれ量を計算することができなかった場合、より長い時間長の同期用データを変換装置４−１〜４−４から取得してもよい。これにより、複数の同期用データ間で共通の音声波形部分が含まれる蓋然性が高くなるので、ずれ量を計算することができる。
【００３８】
オフセットＯＦ１〜ＯＦ４を受信した変換装置４−１〜４−４のそれぞれは、受信したオフセットに相当する時間長分、映像データＶ１〜Ｖ４の長さを調整する。例えば、オフセットが負の値である場合、変換装置４−ｉは、オフセットの絶対値に相当する時間長分の映像データを、映像データＶｉから削除する。例えば、変換装置４−ｉは、オフセットの絶対値に相当する時間長分の映像データを、エンコーダ４５のバッファメモリに記憶させずに、破棄してもよい。オフセットが正の値である場合、変換装置４−ｉは、オフセットに相当する時間長分の映像データを、映像データＶｉに追加する。例えば、変換装置４−ｉは、オフセットに相当する時間長分の映像データを追加して記憶させてもよい。オフセットが０である場合、変換装置４−ｉは、映像データＶｉの長さを調整しなくてもよい。変換装置４−１〜４−４は、それぞれ長さを調整した映像データＶ１〜Ｖ４をエンコードして再生装置５へ送信する。
【００３９】
図４（Ａ）〜図４（Ｄ）は、映像データＶ１〜Ｖ４の長さの調整例を示す図である。例えば、図３を用いて説明したように、オフセットＯＦ１が０ミリ秒であり、オフセットＯＦ２が−７０ミリ秒であり、オフセットＯＦ３が−２５ミリ秒であり、オフセットＯＦ４が＋３０ミリ秒であるとする。オフセットＯＦ１〜ＯＦ４の送信後、制御装置１はエンコード開始命令を変換装置４−１〜４−４へ送信する。図４（Ａ）は、映像データＶ１の長さの調整例を示す図である。変換装置４−１は、時刻Ｔ１でエンコード開始命令を受信したとする。このとき、変換装置４−１は、フレームＦ１−１２の丁度先頭を受信したとする。オフセットＯＦ１が０ミリ秒であるため、変換装置４−１は、映像データＶ１の長さを調整しない。そして、変換装置４−１は、フレームＦ１−１２の先頭から映像データＶ１のエンコードを開始して、エンコードした映像データＶ１を再生装置へ送信する。フレームＦ１−１２のタイムスタンプは０ミリ秒である。
【００４０】
図４（Ｂ）は、映像データＶ２の長さの調整例を示す図である。変換装置４−２は、時刻Ｔ１−７０ミリ秒でエンコード開始命令を受信したとする。このとき、変換装置４−２がフレームＦ２−１０の受信を開始してから１０ミリ秒が経過している。従って、変換装置４−２は、エンコード開始命令を受信してから、フレームＦ２−１０の３０ミリ秒分の長さの映像データを受信し、次いで、フレームＦ２−１１、Ｆ２−１２等を順次受信する。オフセットＯＦ２が−７０ミリ秒であるため、変換装置４−２は、映像データＶ１から、フレームＦ２−１０の３０ミリ秒分の長さの映像データ、及びフレームＦ２−１１の全映像データを削除する。変換装置４−２は、フレームＦ２−１２の先頭から映像データＶ２のエンコードを開始して、エンコードした映像データＶ２を再生装置へ送信する。フレームＦ２−１２のタイムスタンプは０ミリ秒である。
【００４１】
図４（Ｃ）は、映像データＶ３の長さの調整例を示す図である。変換装置４−３は、時刻Ｔ１−２５ミリ秒でエンコード開始命令を受信したとする。このとき、変換装置４−３がフレームＦ３−１１の受信を開始してから１５ミリ秒が経過している。従って、変換装置４−３は、エンコード開始命令を受信してから、フレームＦ３−１１の２５ミリ秒分の長さの映像データを受信し、次いで、フレームＦ３−１２、Ｆ３−１３等を順次受信する。オフセットＯＦ３が−２５ミリ秒であるため、変換装置４−３は、映像データＶ３から、フレームＦ２−１１の２５ミリ秒分の長さの映像データを削除する。そして、変換装置４−３は、フレームＦ３−１２の先頭から映像データＶ３のエンコードを開始して、エンコードした映像データＶ３を再生装置へ送信する。フレームＦ３−１２のタイムスタンプは０ミリ秒である。
【００４２】
図４（Ｄ）は、映像データＶ４の長さの調整例を示す図である。変換装置４−４は、時刻Ｔ１＋３０ミリ秒でエンコード開始命令を受信したとする。このとき、変換装置４−４がフレームＦ４−１２の受信を開始してから３０ミリ秒が経過している。従って、変換装置４−４は、エンコード開始命令を受信してから、フレームＦ４−１２の１０ミリ秒分の長さの映像データを受信し、次いで、フレームＦ４−１３、Ｆ４−１４等を順次受信する。オフセットＯＦ３が＋３０ミリ秒であるため、変換装置４−４は、映像データＶ４に、３０ミリ秒分の長さの映像データＰＶを追加する。映像データＰＶの内容は如何なる内容であってもよい。変換装置４−４は、例えば、フレームＦ４−１２の１０ミリ秒分の映像データの前に、映像データＰＶを追加してもよい。この場合、映像データＰＶとフレームＦ４−１２の１０ミリ秒分の映像データとで、１つのフレームが構成される。この場合、映像データＰＶで、フレームＦ４−１２が補完されたとも考えることができる。変換装置４−４は、映像データＰＶから、映像データＶ４のエンコードを開始して、エンコードした映像データＶ４を再生装置へ送信する。すなわち、変換装置４−４は、補完されたフレームＦ４−１２の先頭から映像データＶ４をエンコードする。補完されたフレームＦ４−１２のタイムスタンプは０ミリ秒である。
【００４３】
再生装置５は、フレームＦ１−１２〜Ｆ４−１２のそれぞれの先頭から、映像データＶ１〜Ｖ４を受信する。そのため、再生装置５は、フレームＦ１−１２〜Ｆ４−１２のそれぞれの先頭から映像データＶ１〜Ｖ４を再生することができる。再生装置５は、例えばフレームに付加されたタイムスタンプに従って映像データＶ１〜Ｖ４を再生してもよい。映像データＶ１〜Ｖ４間において同じタイミングで再生されるべきフレームのタイムスタンプが互いに一致するので、再生装置５は、映像データＶ１〜Ｖ４を同期して再生することができる。或いは、再生装置５は、タイムスタンプを用いないで映像データＶ１〜Ｖ４を再生してもよい。この場合、再生装置５は、例えば映像データＶ１〜Ｖ４の先頭のフレームの再生のタイミングを互いに一致させて、映像データＶ１〜Ｖ４の再生を開始すればよい。この場合であっても、再生装置５は、映像データＶ１〜Ｖ４を同期して再生することができる。
【００４４】
なお、変換装置４−１〜４−４のそれぞれは、エンコード開始命令を受信した時点から、映像データのエンコード及び送信を開始し、その後所定のタイミング又は任意のタイミングで映像データの長さを調整してもよい。この場合、再生装置５は、映像データＶ１〜Ｖ４全ての長さの調整が完了した時点から、映像データＶ１〜Ｖ４を同期して再生することができる。また、制御装置１は、変換装置４−１〜４−４へエンコード開始命令を送信しなくてもよい。この場合、変換装置４−１〜４−４のそれぞれは、例えば制御装置１からオフセットを受信したときに、映像データのエンコード及び送信を開始してもよい。そして、変換装置４−１〜４−４のそれぞれは、オフセットを受信したタイミングで映像データの長さを調整してもよいし、オフセット受信後所定のタイミング又は任意のタイミングで映像データの長さを調整してもよい。
【００４５】
ところで、入力装置２から映像データ及び音声データを変換装置４−１〜４−４が受信するとき、映像データが音声データよりも若干遅れて受信される場合がある。映像データと音声データの受信のずれ量は、変換装置４−１〜４−４間で互いに異なる場合があるかもしれない。この場合、同期用データに基づいてフレームのタイムスタンプを生成したとしても、映像データＶ１〜Ｖ４間でフレームのタイムスタンプが若干ずれる。図５は、音声データＡ１及びＡ２、及び映像データＶ１及びＶ２の例を示す図である。図５において、映像データＶ１及びＶ２のタイムスタンプは、音声データＡ１及びＡ２に基づいて既に調整されている。変換装置４−１が映像データＶ１を音声データＡ１よりも２０ミリ秒遅れて受信した場合、映像データＶ１において、フレームＦ１−１のタイムスタンプは２０ミリ秒である。変換装置４−２が映像データＶ２を音声データＡ２よりも３０ミリ秒遅れて受信した場合、映像データＶ２において、フレームＦ２−１のタイムスタンプは３０ミリ秒である。従って、１番目のフレームのタイムスタンプに１０ミリ秒の差が生じる。
【００４６】
そこで、再生装置５は、変換装置４−１〜４−４から受信した映像データＶ１〜Ｖ４を再生するとき、映像データＶ１〜Ｖ４のフレームレートを取得する。再生装置５は、取得したフレームレートの逆数の２分の１を、半周期時間として計算する。そして、再生装置５は、映像データＶ１〜Ｖ４のうち何れかを基準とする。例えば、映像データＶ１を基準とする。再生装置５は、タイムスタンプに基づき、映像データＶ１の何れかのフレームを再生するタイミングになったと判定したとき、そのフレームのタイムスタンプに半周期時間を加算して、参照タイムスタンプを計算する。そして、再生装置５は、映像データＶ２〜Ｖ４において、参照タイムスタンプに対応するフレームを、Ｖ１のフレームと同時に再生する。参照タイムスタンプに対応するフレームとは、タイムスタンプが示す時刻が参照タイムスタンプが示す時刻よりも早く、且つタイムスタンプが示す時刻が参照タイムスタンプが示す時刻よりもフレームレートの逆数未満早いフレームである。すなわち、参照タイムスタンプに対応するフレームとは、そのフレームのタイムスタンプが示す時刻が参照タイムスタンプが示す時刻よりも早く、そのフレームの次のフレームのタイムスタンプが示す時刻が参照タイムスタンプが示す時刻よりも遅いフレームである。例えば、フレームレートが２５であり、参照タイムスタンプが８０である場合、再生装置５は、タイムスタンプが４０より大きく且つ８０よりも小さいフレームを特定する。これにより、同期用データに基づくタイムスタンプの調整後、映像データＶ１〜Ｖ４間で半周期時間未満のタイムスタンプのずれが生じている場合、そのずれを解消することができる。
【００４７】
図５においては、半周期時間は２０ミリ秒である。例えば、映像データＶ１のフレームＦ１−２のタイムスタンプは６０ミリ秒である。この場合、参照タイムスタンプは８０ミリ秒となる。映像データＶ２において参照タイムスタンプに対応するフレームは、タイムスタンプが７０ミリ秒であるフレームＦ２−２である。従って、再生装置５は、再生開始から６０ミリ秒経過した時点で、フレームＦ１−２とフレーム２−２とを同時に再生する。
【００４８】
なお、上述した再生装置５による半周期未満の再生タイミングの調整は、変換装置が音声データを映像データよりも遅れて受信する場合にも適用可能である。また上述した半周期未満の再生タイミングの調整は、変換装置４−１〜４−４のうち或る変換装置は映像データを音声データよりも遅れて受信し、別の変換装置は音声データを映像データよりも遅れて受信する場合にも適用可能である。
【００４９】
［１−４．映像配信システムＳの動作］
次に、図６乃至図８を参照して、本実施形態の映像配信システムＳの動作について説明する。図６は、制御装置１の処理例を示すフローチャートである。例えば、入力部１６を用いてエンコードを開始させる操作が行われたとき、ＣＰＵ１１は図６に示す処理を実行する。図６に示すように、ＣＰＵ１１は、同期用データの時間長Ｔを予め定められた初期値に設定する（ステップＳ１）。次いで、制御装置１は、変換装置４−１〜４−４へ、時間長Ｔを含む同期用データ生成命令を送信する（ステップＳ２）。次いで、ＣＰＵ１１は、変換装置４−１〜４−４の全てから同期用データを受信したか否かを判定する（ステップＳ３）。このとき、ＣＰＵ１１は、変換装置４−１〜４−４の少なくとも１つから同期用データを受信していないと判定した場合には（ステップＳ３：ＮＯ）、ステップＳ３の判定を再実行する。一方、ＣＰＵ１１は、変換装置４−１〜４−４の全てから同期用データを受信したと判定した場合には（ステップＳ３：ＹＥＳ）、ステップＳ４に進む。
【００５０】
ステップＳ４において、ＣＰＵ１１は、変換装置４−１〜４−４から同期用データＳＤ１〜ＳＤ４として受信された音声データが示す音のずれ量を、オフセットＯＦ１〜ＯＦ４として算出する。次いで、ＣＰＵ１１は、オフセットＯＦ１〜ＯＦ４の算出が成功したか否かを判定する（ステップＳ５）。例えば、ＣＰＵ１１は、同期用データＳＤ１〜ＳＤ４に共通の音声波形部分のデータを同期用データＳＤ１〜ＳＤ４が含まない場合には、オフセットＯＦ１〜ＯＦ４の算出が失敗したと判定する（ステップＳ５：ＮＯ）。この場合、ＣＰＵ１１は、時間長Ｔに所定値ｔを加算して、時間長Ｔを更新する（ステップＳ６）。所定値ｔは、０より大きい値である。そして、ＣＰＵ１１は、ステップＳ２に進む。一方、ＣＰＵ１１は、同期用データＳＤ１〜ＳＤ４に共通の音声波形部分のデータを同期用データＳＤ１〜ＳＤ４が含むことにより、オフセットＯＦ１〜ＯＦ４の算出が成功したと判定した場合には（ステップＳ５：ＹＥＳ）、ステップＳ７に進む。
【００５１】
ステップＳ７において、ＣＰＵ１１は、変換装置４−１〜４−４へ、オフセットＯＦ１〜ＯＦ４を送信する。次いで、ＣＰＵ１１は、変換装置４−１〜４−４へエンコード開始命令を送信する（ステップＳ８）。次いで、ＣＰＵ１１は、入力部１６を用いてエンコードを終了させる操作が行われたか否かを判定する（ステップＳ９）。このとき、ＣＰＵ１１は、エンコードを終了させる操作が行われていないと判定した場合には（ステップＳ９：ＮＯ）、ステップＳ９の判定を再度実行する。一方、ＣＰＵ１１は、エンコードを終了させる操作が行われたと判定した場合には（ステップＳ９：ＹＥＳ）、ステップＳ１０に進む。ステップＳ１０において、ＣＰＵ１１は、変換装置４−１〜４−４へエンコード終了命令を送信して、図６に示す処理を終了させる。
【００５２】
図７は、変換装置の処理例を示すフローチャートである。例えば、変換装置が起動したとき、変換装置４−１〜４−４のそれぞれは図７に示す処理を実行する。図７に示すように、ＣＰＵ４１は、入力装置２から映像データ及び音声データを受信しているか否かを判定する（ステップＳ２１）。このとき、ＣＰＵ４１は、映像データ及び音声データを受信していないと判定した場合には（ステップＳ２１：ＮＯ）、ステップＳ２１の判定を再度実行する。一方、ＣＰＵ４１は、映像データ及び音声データを受信したと判定した場合には（ステップＳ２１：ＹＥＳ）、ステップＳ２２に進む。
【００５３】
ステップＳ２２において、ＣＰＵ４１は、制御装置１から同期用データ生成命令を受信したか否かを判定する。このとき、ＣＰＵ４１は、同期用データ生成命令を受信していないと判定した場合には（ステップＳ２２：ＮＯ）、ステップＳ２５に進む。一方、ＣＰＵ４１は、同期用データ生成命令を受信したと判定した場合には（ステップＳ２２：ＹＥＳ）、ステップＳ２３に進む。ステップＳ２３において、ＣＰＵ４１は、同期用データを生成する。例えば、ＣＰＵ４１は、同期用データ生成命令を受信した時点から、入力装置２から受信される映像データをＲＡＭ４３に記憶させる。ＣＰＵ４１は、同期用データ生成命令を受信した時点から、同期用データ生成命令に含まれる時間長Ｔが経過すると、映像データの記憶を停止させる。次いで、ＣＰＵ４１は、同期用データ生成命令を受信した時点から時間長Ｔの間にＲＡＭ４３に記憶された音声データを同期用データとして制御装置１へ送信する（ステップＳ２４）。次いで、ＣＰＵ４１は、ステップＳ２１に進む。
【００５４】
ステップＳ２５において、ＣＰＵ４１は、制御装置１からエンコード開始命令を受信したか否かを判定する。このとき、ＣＰＵ４１は、エンコード開始命令を受信していないと判定した場合には（ステップＳ２５：ＮＯ）、ステップＳ２９に進む。一方、ＣＰＵ４１は、エンコード開始命令を受信したと判定した場合には（ステップＳ２５：ＹＥＳ）、ステップＳ２６に進む。ステップＳ２６において、ＣＰＵ４１は、オフセットがＲＡＭ４３に記憶されているか否かを判定する。このとき、ＣＰＵ４１は、オフセットがＲＡＭ４３に記憶されていると判定した場合には（ステップＳ２６：ＹＥＳ）、ステップＳ２７に進む。一方、ＣＰＵ４１は、オフセットを受信していないと判定した場合には（ステップＳ２６：ＮＯ）、ステップＳ２８に進む。
【００５５】
ステップＳ２７において、ＣＰＵ４１は、入力装置２から受信された映像データの長さを調整する。具体的に、オフセットが負の値である場合、ＣＰＵ４１は、受信された映像データから、オフセットの絶対値が示す時間長分の映像データを削除する。例えば、ＣＰＵ４１は、エンコード開始命令の受信後、オフセットの絶対値が示す時間経過した時点から、受信された映像データのエンコーダ４５のバッファメモリに記憶させてもよい。そして、ＣＰＵ４１は、エンコードを開始するアドレスを、記憶された映像データの先頭のアドレスに設定してもよい。オフセットが正の値である場合、ＣＰＵ４１は、受信された映像データに、オフセットが示す時間長分の映像データを追加する。例えば、ＣＰＵ４１は、オフセットが示す時間長分の映像データを生成して、生成した映像データをバッファメモリに記憶させてもよい。また、ＣＰＵ４１は、エンコードを開始するアドレスを、生成した映像データの先頭のアドレスに設定してもよい。そして、ＣＰＵ４１は、エンコード開始命令を受信した時点から受信した映像データを、生成した映像データの後にバッファメモリに記憶させてもよい。オフセットが０である場合、ＣＰＵ４１は、エンコード開始命令が受信された時点から、受信された映像データをバッファメモリに記憶させてもよい。そして、ＣＰＵ４１は、エンコードを開始するアドレスを、記憶された映像データの先頭のアドレスに設定してもよい。映像データの長さの調整を終えると、ＣＰＵ４１は、エンコード時間を０ミリ秒に設定する。エンコード時間は、エンコード処理の開始から経過した時間である。次いで、ＣＰＵ４１は、ステップＳ２８に進む。
【００５６】
ステップＳ２８において、ＣＰＵ４１は、エンコード処理を開始して、ステップＳ２１に進む。エンコード処理において、エンコーダ４５は、入力装置２から受信された映像データ及び音声データをバッファメモリに記憶させながら、先入れ後出し方式でバッファメモリから映像データ及び音声データを順次読み出して、映像データ及び音声データをエンコードする。このとき、エンコーダ４５は、エンコードを開始するアドレスから、映像データのエンコードを開始する。また、エンコーダ４５は、映像データをフレームごとにエンコードし、エンコードされた映像データにその時点のエンコード時間を示すタイムスタンプを付加する。また、エンコーダ４５は、エンコードされた音声データに例えば所定時間間隔でタイムスタンプを付加する。
【００５７】
ステップＳ２９において、ＣＰＵ４１は、制御装置１からオフセットを受信したか否かを判定する。このとき、ＣＰＵ４１は、オフセットを受信していないと判定した場合には（ステップＳ２９：ＮＯ）、ステップＳ３１に進む。一方、ＣＰＵ４１は、オフセットを受信したと判定した場合には（ステップＳ２９：ＹＥＳ）、ステップＳ３０に進む。ステップＳ３０において、ＣＰＵ４１は、受信したオフセットをＲＡＭ４３に記憶させて、ステップＳ２１に進む。
【００５８】
ステップＳ３１において、ＣＰＵ４１は、再生装置５からコンテンツ要求を受信したか否かを判定する。このとき、ＣＰＵ４１は、コンテンツ要求を受信していないと判定した場合には（ステップＳ３１：ＮＯ）、ステップＳ３３に進む。一方、ＣＰＵ４１は、コンテンツ要求を受信したと判定した場合には（ステップＳ３１：ＹＥＳ）、ステップＳ３２に進む。ステップＳ３２において、ＣＰＵ４１は、現時点でエンコードされている映像データ及び音声データを再生装置５へ送信して、ステップＳ２１に進む。
【００５９】
ステップＳ３３において、ＣＰＵ４１は、制御装置１からエンコード終了命令を受信したか否かを判定する。このとき、ＣＰＵ４１は、エンコード終了命令を受信していないと判定した場合には（ステップＳ３３：ＮＯ）、ステップＳ３５に進む。一方、ＣＰＵ４１は、エンコード終了命令を受信したと判定した場合には（ステップＳ３３：ＹＥＳ）、ステップＳ３４に進む。ステップＳ３４において、ＣＰＵ４１は、エンコード処理を終了させて、ステップＳ２１に進む。
【００６０】
ステップＳ３５において、ＣＰＵ４１は、変換装置が停止するか否かを判定する。このとき、ＣＰＵ４１は、変換装置が停止しないと判定した場合には（ステップＳ３５：ＮＯ）、ステップＳ２１に進む。一方、ＣＰＵ４１は、変換装置が停止すると判定した場合には（ステップＳ３５：ＹＥＳ）、図７に示す処理を終了させる。
【００６１】
図８は、再生装置５の処理例を示すフローチャートである。例えば、入力部５６を用いてコンテンツデータを再生させる操作が行われたとき、再生装置５は図８に示す処理を実行する。図８に示すように、ＣＰＵ５１は、変換装置４−１〜４−４へコンテンツ要求を送信する（ステップＳ４１）。次いで、ＣＰＵ５１は、変換装置４−１〜４−４から映像データ及び音声データを受信したか否かを判定する（ステップＳ４２）。このとき、ＣＰＵ５１は、映像データ及び音声データを受信していないと判定した場合には（ステップＳ４２：ＮＯ）、ステップＳ４２の判定を再度実行する。一方、ＣＰＵ５１は、映像データ及び音声データを受信したと判定した場合には（ステップＳ４２：ＹＥＳ）、受信された映像データ及び音声データをＲＡＭ５３に記憶させる。そして、ＣＰＵ５１は、ステップＳ４３に進む。
【００６２】
ステップＳ４３において、ＣＰＵ５１は、受信された何れかの映像データからフレームレートを取得する。次いで、ＣＰＵ５１は、フレームレートの逆数を２で割ることにより、半周期時間を計算する（ステップＳ４４）。次いで、ＣＰＵ５１は、受信された音声データＡ１〜Ａ４のうち音声データＡ１のタイムスタンプに従って、音声データＡ１の再生を開始する（ステップＳ４５）。これにより、スピーカ５８により音声が出力される。ＣＰＵ５１は、音声データＡ１を再生しながら、音声データＡ１のタイムスタンプに従って音声データＡ１の再生位置を更新する。再生位置は、音声データＡ１の再生開始から経過した時間を示す。
【００６３】
次いで、ＣＰＵ５１は、音声データＡ１の再生位置が、受信された映像データＶ１においてまだ再生されていないフレームのうち先頭のフレームのタイムスタンプが示す時間に達したか否かを判定する（ステップＳ４６）。このとき、ＣＰＵ５１は、再生位置が、映像データＶ１においてまだ再生されていないフレームのうち先頭のフレームのタイムスタンプが示す時間に達していないと判定した場合には（ステップＳ４６：ＮＯ）、ステップＳ４６の処理を再度実行する。一方、ＣＰＵ５１は、再生位置が、映像データＶ１においてまだ再生されていないフレームのうち先頭のフレームのタイムスタンプが示す時間に達したと判定した場合には（ステップＳ４６：ＹＥＳ）、ステップＳ４７に進む。
【００６４】
ステップＳ４７において、ＣＰＵ５１は、映像データＶ１においてまだ再生されていないフレームのうち先頭のフレームのタイムスタンプに半周期時間を加算して、参照タイムスタンプを計算する。次いで、ＣＰＵ５１は、映像データＶ２〜Ｖ４のそれぞれにおいて、参照タイムスタンプに対応するフレームを特定する。具体的に、ＣＰＵ５１は、参照タイムスタンプが示す時刻よりも早い時刻を示すタイムスタンプであって、参照タイムスタンプが示す時刻よりもフレームレートの逆数未満早い時刻を示すタイムスタンプが付加されたフレームを特定する。そして、ＣＰＵ５１は、映像データＶ１においてまだ再生されていないフレームのうち先頭のフレームと、映像データＶ２〜Ｖ４のそれぞれにおいて、参照タイムスタンプに対応するフレームとを同時に再生する（ステップＳ４８）。これにより、ＣＰＵ５１は、映像データＶ１〜Ｖ４のそれぞれの１フレーム分の静止画像を表示部５７に表示させる。
【００６５】
次いで、ＣＰＵ５１は、必要に応じて変換装置４−１〜４−４の少なくとも何れかから映像データ及び音声データを取得する（ステップＳ４９）。例えば、ＣＰＵ５１は、ＲＡＭ５３に記憶された映像データ又は音声データの最後のタイムスタンプと、現在の再生位置との差が所定時間未満となった場合、その映像データ又は音声データに対応する変換装置へ、コンテンツ要求を送信する。そして、ＣＰＵ５１は、コンテンツ要求に応じて変換装置から送信された映像データ及び音声データをＲＡＭ５３に記憶させる。次いで、ＣＰＵ５１は、入力部５６を用いてコンテンツデータの再生を終了させる操作が行われたか否かを判定する（ステップＳ５０）。このとき、ＣＰＵ５１は、再生を終了させる操作が行われていないと判定した場合には（ステップＳ５０：ＮＯ）、ステップＳ４６に進む。一方、ＣＰＵ５１は、再生を終了させる操作が行われたと判定した場合には（ステップＳ５０：ＹＥＳ）、音声データＡ１の再生を終了させて（ステップＳ５１）、図８に示す処理を終了させる。
【００６６】
以上説明したように、本実施形態によれば、制御装置１が、変換装置４−１〜４−４から同期用データＳＤ１〜ＳＤ４を取得する。また、制御装置１が、同期用のデータＳＤ１に対する同期用のデータＳＤ１〜ＳＤ４の時間的なずれ量をオフセットＯＦ１〜ＯＦ４として算出し、オフセットＯＦ１〜ＯＦ４を、変換装置４−１〜４−４へ送信する。そして、変換装置４−１〜４−４のそれぞれが、入力装置２から受信された映像データの長さを、オフセットが示す時間長分調整する。従って、変換装置４−１〜４−４から送信された映像データＶ１〜Ｖ４を同期して再生することができる。
【００６７】
［２．第２実施形態］
第１実施形態においては、制御装置１は、同期用データとして音声データを取得していた。しかしながら、制御装置１は、同期用データとして映像データを取得してもよい。
【００６８】
例えば、入力装置２が映像データを送信するとき、特定のフレームを例えば所定色のフレームに変更して、映像データを送信する。或いは、入力装置２による撮影中、例えば所定の発光物を瞬間的に発光させてもよい。そして、入力装置２により、瞬間の発光を撮影させてもよい。制御装置１から同期用データ生成命令を受信した変換装置４−１〜４−４のそれぞれは、同期用データ生成命令を受信した時点から、入力装置２から受信された映像データをＲＡＭ４３に記憶させて、同期用データを生成する。そして、変換装置４−１〜４−４のそれぞれは、同期用データを制御装置１へ送信する。制御装置１は、各同期用データから、所定色のフレーム又は発光の映像を含むフレームの位置を検出する。制御装置１は、同期用データ間における所定色のフレーム又は発光の映像を含むフレームの位置のずれ量を、オフセットＯＦ１〜ＯＦ４として算出する。
【００６９】
本実施形態においては、図５を用いて説明したような映像データ間のフレームのタイムスタンプのずれは生じない。本実施形態においては、入力装置２は変換装置４−１〜４−４へ音声データを送信してもよいし、送信しなくてもよい。
【００７０】
［３．他の実施形態］
なお、上記各実施形態においては、変換装置４−１〜４−４は、映像データ及び音声データをエンコードしていた。しかしながら、変換装置４−１〜４−４は、映像データ及び音声データをエンコードしなくてもよい。変換装置４−１〜４−４は、入力装置２から受信した映像データ及び音声データにタイムスタンプを付加して、そのまま再生装置５へ送信してもよい。また、入力装置２は、エンコードされていない映像データ及び音声データを変換装置４−１〜４−４へ送信してもよいし、エンコードされた映像データ及び音声データを変換装置４−１〜４−４へ送信してもよい。
【００７１】
また、上記各実施形態においては、映像データが４分割されていた。しかしながら、映像データは、４以外の数の映像データに分割されてもよい。
【００７２】
また、上記各実施形態においては、変換装置４−１〜４−４は、音声データを送信していた。しかしながら、変換装置４−１〜４−４は、人の声を含まない音を示す音データを送信してもよい。
【００７３】
また、上記各実施形態においては、制御装置１は、複数の同期用データのうち、一の同期用データを基準として、基準の同期用データに対する複数の同期用データのずれ量を計算していた。しかしながら、ずれ量を計算する同期用データごとに、基準となる同期用データが異なっていてもよい。例えば、制御装置１は、同期用データＳＤ１のずれ量を０に決定し、同期用データＳＤ１に対する同期用データＳＤ２のずれ量を計算し、同期用データＳＤ２に対する同期用データＳＤ３のずれ量を計算し、同期用データＳＤ３に対する同期用データＳＤ４のずれ量を計算してもよい。
【符号の説明】
【００７４】
１  制御装置
２  入力装置
３  分配器
４−１、４−２、４−３、４−４  変換装置
５  再生装置
１１、４１、５１  ＣＰＵ
１２、４２、５２  ＲＯＭ
１３、４３、５３  ＲＡＭ
１４、５４  記憶部
１５、４６、４７、５５  入出力インタフェース
１６、５６  入力部
１７、５７  表示部
４４  映像・音声入力部
４５  エンコーダ
５８  スピーカ
Ｓ  映像配信システム
【図１】
0006565382.tif 000002
【図２】
0006565382.tif 000003
【図３】
0006565382.tif 000004
【図４】
0006565382.tif 000005
【図５】
0006565382.tif 000006
【図６】
0006565382.tif 000007
【図７】
0006565382.tif 000008
【図８】
0006565382.tif 000009