JP2016187142A - 情報処理方法、情報処理装置及び動画データ送信システム - Google Patents
情報処理方法、情報処理装置及び動画データ送信システム Download PDFInfo
- Publication number
- JP2016187142A JP2016187142A JP2015067237A JP2015067237A JP2016187142A JP 2016187142 A JP2016187142 A JP 2016187142A JP 2015067237 A JP2015067237 A JP 2015067237A JP 2015067237 A JP2015067237 A JP 2015067237A JP 2016187142 A JP2016187142 A JP 2016187142A
- Authority
- JP
- Japan
- Prior art keywords
- data
- synchronization
- information processing
- moving image
- image data
- 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.)
- Pending
Links
Images
Landscapes
- Transforming Electric Information Into Light Information (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
【課題】複数の送信装置から送信された複数の動画データを同期して再生することを可能とする。【解決手段】情報処理装置は、同期用のデータの要求を複数の送信装置へ送信し、要求が送信装置により受信された場合に送信装置により送信される動画データにおける所定の期間の動画データにより再生されるデータを、同期用のデータとして複数の送信装置のそれぞれから受信し、複数の同期用のデータの何れかのデータに対する複数の同期用のデータの時間的なずれ量をそれぞれ算出し、複数のずれ量を、複数の動画データそれぞれを構成するフレームの再生のタイミングを示すタイミング情報を生成するタイミング情報生成手段へ送信する。【選択図】図3
Description
本発明は、複数の動画データを送信し、送信された複数の動画データを同期して再生する動画データ送信システムの技術分野に関する。
特許文献1には、1つの映像が複数に分割された分割映像を同期をとってそれぞれ複数のディスプレイに表示させるマルチディスプレイシステムが開示されている。このシステムにおいて、複数のディスプレイにそれぞれ対応する複数の信号処理部へ映像信号を供給する信号供給部が、映像信号の一フレームの中に、当該フレームの番号を示す映像マーカを複数の信号処理部に対応して複数挿入する。複数の信号処理部は、映像信号の一フレームの中から映像マーカを抽出し、フレームの番号が一致するように複数の信号処理部同士で同期をとって分割映像を表示させる。
複数の送信装置により複数の動画データを送信する場合、送信装置間で動画データの送信の開始のタイミングを完全に一致させることは難しい。例えば、各送信装置が動画データの送信の開始の指令を受信するタイミングや、各送信装置の製造誤差、状態等により、動画データの送信の開始のタイミングがずれる場合がある。そのため、送信された複数の動画データを再生装置が受信して再生する場合、動画データ間でフレームの表示のタイミングにずれが生じるという問題がある。
本発明は、以上の点に鑑みてなされたものであり、上述したような手法とは異なる手法で、複数の送信装置から送信された複数の動画データを同期して再生することを可能とする情報処理方法、情報処理装置及び動画データ送信システムを提供することを課題とする。
上記課題を解決するために、請求項1に記載の発明は、複数の送信装置それぞれが動画データを送信する動画データ送信システムにおける情報処理方法であって、情報処理装置が、前記複数の送信装置によって送信される複数の動画データを同期して再生するための同期用のデータの要求を前記複数の送信装置へ送信する要求送信ステップと、前記複数の送信装置のそれぞれが、前記情報処理装置から送信された前記要求を受信する要求受信ステップと、前記複数の送信装置のそれぞれが、前記要求受信ステップにより前記要求が受信された場合、前記送信装置により送信される動画データにおける所定の期間の動画データにより再生されるデータを、前記同期用のデータとして前記情報処理装置へ送信する同期用データ送信ステップと、前記情報処理装置が、前記複数の送信装置により送信された複数の同期用のデータを受信する同期用データ受信ステップと、前記情報処理装置が、前記同期用データ受信ステップにより受信された複数の同期用のデータに基づいて、前記複数の同期用のデータの何れかに対する前記複数の同期用のデータの時間的なずれ量をそれぞれ算出する算出ステップと、前記情報処理装置が、前記算出ステップにより算出された複数のずれ量を、前記複数の動画データそれぞれを構成するフレームの再生のタイミングを示すタイミング情報を生成するタイミング情報生成手段へ送信するずれ量送信ステップと、前記タイミング情報生成手段が、前記情報処理装置から送信されたずれ量を受信するずれ量受信ステップと、前記タイミング情報生成手段が、前記ずれ量受信ステップにより受信されたずれ量に応じて、前記動画データを構成するフレームの再生タイミングを示す前記タイミング情報を生成する生成ステップと、を含むことを特徴とする。
請求項2に記載の発明は、請求項1に記載の情報処理方法であって、前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれは、前記要求受信ステップにより前記要求が受信された時点から前記所定の期間の動画データにより再生されるデータを、前記同期用のデータとして前記情報処理装置へ送信することを特徴とする。
請求項3に記載の発明は、請求項1又は2に記載の情報処理方法であって、前記複数の送信装置のそれぞれが、前記送信装置が送信する動画データに対応する前記タイミング情報生成手段を備え、前記ずれ量送信ステップにおいて、前記情報処理装置は、前記複数のずれ量のそれぞれを前記複数の送信装置へ送信し、前記生成ステップは、前記タイミング情報生成手段を備える前記送信装置が送信する動画データを構成するフレームの再生タイミングを示す前記タイミング情報を生成し、前記複数の送信装置のそれぞれが、前記生成ステップにより生成された前記タイミング情報が付加されたフレームを含む動画データを、前記複数の送信装置から送信される複数の動画データを再生する再生装置へ送信することを特徴とする。
請求項4に記載の発明は、請求項1又は2に記載の情報処理方法であって、前記複数の送信装置は、前記複数の動画データを再生する再生装置であって、前記タイミング情報生成手段を備える再生装置へ、前記複数の動画データを送信し、前記ずれ量送信ステップにおいて、前記情報処理装置は、前記複数のずれ量を前記再生装置へ送信し、前記再生装置が、前記生成ステップにより生成された前記タイミング情報に基づいて、前記複数の動画データのフレームを同期して再生する再生ステップと、を更に含むことを特徴とする。
請求項5に記載の発明は、請求項1乃至4に記載の情報処理方法であって、前記要求送信ステップにおいて、前記情報処理装置は、前記同期用のデータの時間長として所定の第1時間を含む前記要求を送信し、前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれは、前記要求受信ステップにおいて受信された前記要求に含まれる時間長の前記同期用のデータを前記情報処理装置へ送信し、前記算出ステップにおいて、前記情報処理装置により、前記複数の同期用のデータの時間的なずれ量を算出することができなかった場合、前記情報処理装置が、前記同期用のデータの時間長として、前記第1時間よりも長い第2時間を含む前記要求を前記複数の送信装置へ送信する第2要求送信ステップと、を更に有することを特徴とする。
請求項6に記載の発明は、請求項1乃至5の何れか1項に記載の情報処理方法であって、前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれが、前記要求受信ステップにより前記要求が受信された場合、送信される動画データにおける前記所定の期間のデータにより表される音データを、前記同期用のデータとして前記情報処理装置へ送信し、前記算出ステップにおいて、前記情報処理装置は、前記同期用データ受信ステップにおいて受信された複数の音データの何れかの音データが示す音に対する前記複数の音データが示す音のずれ量をそれぞれ算出することを特徴とする。
請求項7に記載の発明は、請求項4又は5に記載の情報処理方法であって、前記複数の送信装置は、前記複数の動画データを再生する再生装置へ、前記複数の動画データを送信し、前記再生装置が、前記複数の送信装置から受信された前記複数の動画データの何れかの第1動画データ中の何れか第1フレームに付加されたタイミング情報が示すタイミングが到来したとき、前記タイミングから、前記複数の動画データのフレームレートの逆数の2分の1の時間経過したタイミングを取得する取得ステップと、前記再生装置が、前記複数の送信装置から受信された前記複数の動画データの中で前記第1動画データ以外の第2動画データ中のフレームのうち、前記取得ステップにより取得された前記タイミングよりも前記フレームレートの逆数の時間未満前のタイミングを示すタイミング情報が付加された第2フレームを特定する特定ステップと、前記再生装置が、前記第1フレームと前記特定ステップにより特定された前記第2フレームとを同時に再生する再生ステップと、を更に含むことを特徴とする。
請求項8に記載の発明は、複数の送信装置それぞれが動画データを送信する動画データ送信システムにおける情報処理装置であって、前記複数の送信装置によって送信される複数の動画データを同期して再生するための同期用のデータの要求を前記複数の送信装置へ送信する要求送信手段と、前記要求送信手段により送信された前記要求が前記送信装置により受信された場合に前記送信装置により送信される動画データにおける所定の期間の動画データにより再生されるデータを、前記同期用のデータとして前記複数の送信装置のそれぞれから受信する同期用データ受信手段と、前記同期用データ受信手段により受信された複数の同期用のデータに基づいて、前記複数の同期用のデータの何れかに対する前記複数の同期用のデータの時間的なずれ量をそれぞれ算出する算出手段と、前記算出手段により算出された複数のずれ量を、前記複数の動画データそれぞれを構成するフレームの再生のタイミングを示すタイミング情報を生成するタイミング情報生成手段へ送信するずれ量送信手段と、を備えることを特徴とする。
請求項9に記載の発明は、複数の送信装置それぞれが動画データを送信する動画データ送信システムであって、前記複数の送信装置と、情報処理装置と、前記動画データを構成するフレームの再生のタイミングを示すタイミング情報を生成するタイミング情報生成手段と、を備え、前記情報処理装置は、前記複数の送信装置によって送信される複数の動画データを同期して再生するための同期用のデータの要求を前記複数の送信装置へ送信する要求送信手段と、前記要求送信手段により送信された前記要求が前記送信装置により受信された場合に前記送信装置により送信される動画データにおける所定の期間の動画データにより再生されるデータを、前記同期用のデータとして前記複数の送信装置のそれぞれから受信する同期用データ受信手段と、前記同期用データ受信手段により受信された複数の同期用のデータに基づいて、前記複数の同期用のデータの何れかのデータに対する前記複数の同期用のデータの時間的なずれ量をそれぞれ算出する算出手段と、前記算出手段により算出された複数のずれ量を前記タイミング情報生成手段へ送信するずれ量送信手段と、を備え、前記複数の送信装置のそれぞれは、前記動画データを送信する動画データ送信手段と、前記情報処理装置から送信された前記要求を受信する要求受信手段と、前記要求受信手段により前記要求が受信された場合、前記同期用のデータを送信する同期用データ送信手段と、を備え、前記タイミング情報生成手段は、前記情報処理装置から送信されたずれ量を受信するずれ量受信手段と、前記ずれ量受信手段により受信されたずれ量に応じて、前記動画データを構成するフレームの再生タイミングを示す前記タイミング情報を生成する生成手段と、を備えることを特徴とする。
請求項1、3、4、8及び9のそれぞれに記載の発明によれば、複数の送信装置が、所定の期間の動画データにより再生されるデータを、同期用のデータとして情報処理装置へ送信する。このような同期用のデータの時間的なずれ量に応じて生成されたタイミング情報を用いることで、複数の送信装置から送信された複数の動画データを同期して再生することができる。
請求項2に記載の発明によれば、複数の送信装置が、情報処理装置から要求を受信することによる同期用のデータを送信するための処理の開始のタイミングのずれ量は、動画データの送信の開始のタイミングのずれ量に対応する。複数の送信装置は、送信装置が同期用のデータを送信するための処理の開始のタイミングから送信装置により送信される複数のフレームが再生されるべき期間に再生され、且つそれらの複数のフレームが再生されるべき期間に対応する内容のデータを、同期用のデータとして情報処理装置へ送信する。このような同期用のデータの内容の時間的なずれ量に応じて生成されたタイミング情報を用いることで、複数の送信装置から送信された複数の動画データを同期して再生することができる。
請求項5に記載の発明によれば、複数の送信装置から情報処理装置へ最初に送信された複数の同期用のデータに共通する部分がないためにずれ量を算出することができない場合、より時間が長い同期用のデータを複数の変換装置に送信させることで、同期用のデータに共通する部分が含まれている蓋然性を高め、これによりずれ量を算出することができる。
請求項6に記載の発明によれば、複数の動画データと同期して再生される音データを同期用のデータとして用いることで、複数の送信装置による動画データの送信のタイミングのずれ量を的確に算出することができる。
請求項7に記載の発明によれば、動画データと音データとの間に時間的なずれがあり、そのずれの量が送信装置によって異なる場合であっても、複数の動画データ間におけるフレームの再生を同期させることができる。
以下、本発明の実施形態を図面に基づいて説明する。
[1.第1実施形態]
[1−1.映像配信システムの構成]
図1は、本実施形態の映像配信システムSの概要構成例を示す図である。図1に示すように、映像配信システムSは、制御装置1、入力装置2、分配器3、変換装置4−1〜44、及び再生装置5を含んで構成される。制御装置1は、本発明の情報処理装置の一例である。変換装置4−1〜4−4は、本発明の複数の送信装置の一例である。入力装置2と分配器3とは、例えばHDMI(登録商標)(High-Definition Multimedia)等のケーブルにより接続されている。分配器3と、変換装置4−1〜4−4のそれぞれとは、例えばHDMI等のケーブルにより接続されている。変換装置4−1〜4−4のそれぞれと、再生装置5とは、例えばインターネット等のネットワークを介して接続されてもよいし、USB(Universal Serial Bus)等のケーブルにより接続されてもよい。また、変換装置4−1〜4−4のそれぞれと、制御装置1とは、例えばLAN(Local Area Network)等のネットワークを介して接続されてもよいし、USB等のケーブルにより接続されている。
[1−1.映像配信システムの構成]
図1は、本実施形態の映像配信システムSの概要構成例を示す図である。図1に示すように、映像配信システムSは、制御装置1、入力装置2、分配器3、変換装置4−1〜44、及び再生装置5を含んで構成される。制御装置1は、本発明の情報処理装置の一例である。変換装置4−1〜4−4は、本発明の複数の送信装置の一例である。入力装置2と分配器3とは、例えばHDMI(登録商標)(High-Definition Multimedia)等のケーブルにより接続されている。分配器3と、変換装置4−1〜4−4のそれぞれとは、例えばHDMI等のケーブルにより接続されている。変換装置4−1〜4−4のそれぞれと、再生装置5とは、例えばインターネット等のネットワークを介して接続されてもよいし、USB(Universal Serial Bus)等のケーブルにより接続されてもよい。また、変換装置4−1〜4−4のそれぞれと、制御装置1とは、例えばLAN(Local Area Network)等のネットワークを介して接続されてもよいし、USB等のケーブルにより接続されている。
入力装置2は、映像配信システムSへ映像データ及び音声データを入力するための装置である。映像データは、複数のフレームで構成される。映像データは、本発明の動画データの一例である。音声データは、本発明の音データの一例である。入力装置2は、例えばテレビカメラ等であってもよい。入力装置2は、例えば所定の解像度の映像を撮影して、映像データを生成する。例えば、解像度は、4K解像度であってもよいし、別の解像度であってもよい。また、入力装置2は、例えばマイクにより音声を録音して、音声データを生成する。そして、入力装置2は、撮影及び録音を実行しながら映像データ及び音声データを分配器3へ送信する。このとき、入力装置2は、映像データをフレームごとに送信する。
分配器3は、入力装置2から受信された映像データを、第1象限〜第4象限の映像の映像データに分割する。分割前の映像データの解像度が4K解像度である場合、分割されたそれぞれの映像データの解像度は2K解像度となる。そして、分配器3は、第1象限〜第4象限の映像データのそれぞれを変換装置4−1〜4−4のそれぞれへ送信する。すなわち、iを1〜4の何れかとすると、分配器3は、第i象限の映像データを変換装置4−iへ送信する。また、分配器3は、入力装置2から受信された音声データを、変換装置4−1〜4のそれぞれへ送信する。分配器3から変換装置4−iへ送信される映像データ及び音声データを、映像データVi及び音声データAiという。
変換装置4−1〜4−4のそれぞれは、分配器3から受信した映像データ及び音声データをリアルタイムでエンコードする。例えば、変換装置4−1〜4−4のそれぞれは、映像データを、H.264等のフォーマットの映像データにエンコードしてもよい。また例えば、変換装置4−1〜4のそれぞれは、音声データを、AAC(Advanced Audio Coding)等のフォーマットの音声データにエンコードしてもよい。そして、変換装置4−1〜4−4のそれぞれは、エンコードを実行しながら、エンコードされた映像データ及び音声データを含むコンテンツデータをリアルタイムで再生装置5へ送信する。このとき、変換装置4−1〜4のそれぞれは、映像データをフレームごとに送信する。コンテンツデータのフォーマットは、例えばMPEG−4等であってもよい。変換装置4−iから送信されるコンテンツデータを、コンテンツデータCiという。コンテンツデータCiに含まれる映像データ及び音声データは、エンコードされた映像データVi及び音声データAiである。なお、変換装置4−1〜4−4の何れにも共通する事項を説明する場合、単に変換装置という。
再生装置5は、変換装置4−1〜4−4から受信したコンテンツデータC1〜C4のそれぞれに含まれる映像データV1〜V4の再生処理を実行するとともに、コンテンツデータC1〜C4の何れかに含まれる音声データの再生処理を実行する。これにより、再生装置5は、分割された4個の映像を結合して1つの画面内に表示するとともに、音声を出力する。再生装置5の例として、パーソナルコンピュータ、スマートフォン、タブレット型コンピュータ、携帯電話機等が挙げられる。
制御装置1は、変換装置4−1〜4−4によるエンコード処理の開始及び停止を制御する。また、制御装置1は、変換装置4−1〜4−4から再生装置5へ送信されるコンテンツデータC1〜C4を同期して再生するための制御を行う。制御装置1の例として、サーバ装置、パーソナルコンピュータ等が挙げられる。なお、例えば変換装置4−1〜4−4の何れかが、制御装置1を備えてもよい。
[1−2.各装置の構成]
次に、図2を参照して、各装置の構成について説明する。
次に、図2を参照して、各装置の構成について説明する。
[1−2−1.制御装置1の構成]
図2(A)は、本実施形態の制御装置1の概要構成例を示す図である。図2(A)に示すように、制御装置1は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、記憶部14、入出力インタフェース15、入力部16、及び表示部17等を備えて構成される。これらの構成要素は、バス16に接続されている。入出力インタフェース15には、例えばLAN、USB等のケーブルが接続される。入出力インタフェース15は、制御装置1と変換装置4−1〜4−4のそれぞれとの間のインタフェース処理を行う。例えば、入出力インタフェース15は、変換装置4−1〜4−4から制御装置1へ送信された音声データをCPU11に出力する。入力部16は、ユーザの操作を入力するための入力デバイスである。入力部16は、例えばキーボード、マウス等により構成されてもよい。表示部17は、例えば液晶パネル、有機ELパネル等により構成されるディスプレイである。記憶部14は、例えばハードディスクドライブにより構成される。記憶部14には、OS、及び制御プログラム等が記憶されている。制御プログラムは、コンピュータとしてのCPU11に、コンテンツデータC1〜C4を同期して再生するための制御等の処理を実行させるためのプログラムである。制御プログラム等は、例えば所定のサーバ等からダウンロードされてもよい。或いは、制御プログラム等は、例えば光ディスク、磁気テープ、メモリカード等の記録媒体に記録されてドライブ装置を介して記憶部14に読み込まれてもよい。
図2(A)は、本実施形態の制御装置1の概要構成例を示す図である。図2(A)に示すように、制御装置1は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、記憶部14、入出力インタフェース15、入力部16、及び表示部17等を備えて構成される。これらの構成要素は、バス16に接続されている。入出力インタフェース15には、例えばLAN、USB等のケーブルが接続される。入出力インタフェース15は、制御装置1と変換装置4−1〜4−4のそれぞれとの間のインタフェース処理を行う。例えば、入出力インタフェース15は、変換装置4−1〜4−4から制御装置1へ送信された音声データをCPU11に出力する。入力部16は、ユーザの操作を入力するための入力デバイスである。入力部16は、例えばキーボード、マウス等により構成されてもよい。表示部17は、例えば液晶パネル、有機ELパネル等により構成されるディスプレイである。記憶部14は、例えばハードディスクドライブにより構成される。記憶部14には、OS、及び制御プログラム等が記憶されている。制御プログラムは、コンピュータとしてのCPU11に、コンテンツデータC1〜C4を同期して再生するための制御等の処理を実行させるためのプログラムである。制御プログラム等は、例えば所定のサーバ等からダウンロードされてもよい。或いは、制御プログラム等は、例えば光ディスク、磁気テープ、メモリカード等の記録媒体に記録されてドライブ装置を介して記憶部14に読み込まれてもよい。
[1−2−2.変換装置4の構成]
図2(B)は、本実施形態の変換装置4−1〜4−4の概要構成例を示す図である。変換装置4−1〜4−4の構成は、基本的に互いに同じである。図2(B)に示すように、変換装置は、CPU41、ROM42、RAM43、映像・音声入力部44、エンコーダ45、入出力インタフェース46及び47等を備えて構成される。CPU41、ROM42、RAM43、及びエンコーダ45はバス48に接続されている。映像・音声入力部44には、例えばHDMI等のケーブルが接続される。映像・音声入力部44は、分配器3から送信されてきた映像データ及び音声データをエンコーダ45へ出力する。エンコーダ45は、CPU41の制御に基づいて、映像・音声入力部44から入力された映像データ及び音声データをエンコードする。エンコードされた映像データのフォーマットは、例えばH.264等であってもよい。エンコードされた音声データのフォーマットは、例えばAAC等であってもよい。エンコーダ45は、エンコードされた映像データ及び音声データにタイムスタンプを付与する。例えば、エンコーダ45は、映像データを構成する各フレームに対してタイムスタンプを生成し、生成したタイムスタンプをフレームに付加する。タイムスタンプは、タイムスタンプが付加されたフレームを再生するタイミングを示す情報である。タイムスタンプは、本発明のタイミング情報の一例である。エンコーダ45は、映像データのフレームレートの逆数の時間間隔で各フレームに対するタイムスタンプを生成する。映像データV1〜V4のフレームレートは互いに同じである。そして、エンコーダ45は、タイムスタンプが付加された映像データ及び音声データを例えば多重化してコンテンツデータを生成する。エンコーダ45は、映像データ及び音声データを順次エンコードしながら、生成されたコンテンツデータをリアルタイムで順次入出力インタフェース46へ出力する。また、エンコーダ45は、CPU41の制御に基づき、コンテンツデータを入出力インタフェース47へ出力することも可能である。また、エンコーダ45は、CPU41の制御に基づき、映像・音声入力部44から入力された音声データをRAM43へ出力する。入出力インタフェース46及び47には、例えばLAN、インターネット回線、USB等のケーブルが接続される。入出力インタフェース46は、変換装置と再生装置5との間のインタフェース処理を行う。例えば、出力インタフェース46は、エンコーダ45から入力されたコンテンツデータを再生装置5へ送信する。入出力インタフェース47は、変換装置と制御装置1との間のインタフェース処理を行う。例えば、入出力インタフェース47は、エンコーダ45から入力された音声データ又はコンテンツデータを制御装置1へ送信する。ROM42には、OS、及び制御プログラム等が記憶されている。制御プログラムは、コンピュータとしてのCPU41に、エンコーダ45の動作の制御、同期用データの送信等の処理を実行させる。
図2(B)は、本実施形態の変換装置4−1〜4−4の概要構成例を示す図である。変換装置4−1〜4−4の構成は、基本的に互いに同じである。図2(B)に示すように、変換装置は、CPU41、ROM42、RAM43、映像・音声入力部44、エンコーダ45、入出力インタフェース46及び47等を備えて構成される。CPU41、ROM42、RAM43、及びエンコーダ45はバス48に接続されている。映像・音声入力部44には、例えばHDMI等のケーブルが接続される。映像・音声入力部44は、分配器3から送信されてきた映像データ及び音声データをエンコーダ45へ出力する。エンコーダ45は、CPU41の制御に基づいて、映像・音声入力部44から入力された映像データ及び音声データをエンコードする。エンコードされた映像データのフォーマットは、例えばH.264等であってもよい。エンコードされた音声データのフォーマットは、例えばAAC等であってもよい。エンコーダ45は、エンコードされた映像データ及び音声データにタイムスタンプを付与する。例えば、エンコーダ45は、映像データを構成する各フレームに対してタイムスタンプを生成し、生成したタイムスタンプをフレームに付加する。タイムスタンプは、タイムスタンプが付加されたフレームを再生するタイミングを示す情報である。タイムスタンプは、本発明のタイミング情報の一例である。エンコーダ45は、映像データのフレームレートの逆数の時間間隔で各フレームに対するタイムスタンプを生成する。映像データV1〜V4のフレームレートは互いに同じである。そして、エンコーダ45は、タイムスタンプが付加された映像データ及び音声データを例えば多重化してコンテンツデータを生成する。エンコーダ45は、映像データ及び音声データを順次エンコードしながら、生成されたコンテンツデータをリアルタイムで順次入出力インタフェース46へ出力する。また、エンコーダ45は、CPU41の制御に基づき、コンテンツデータを入出力インタフェース47へ出力することも可能である。また、エンコーダ45は、CPU41の制御に基づき、映像・音声入力部44から入力された音声データをRAM43へ出力する。入出力インタフェース46及び47には、例えばLAN、インターネット回線、USB等のケーブルが接続される。入出力インタフェース46は、変換装置と再生装置5との間のインタフェース処理を行う。例えば、出力インタフェース46は、エンコーダ45から入力されたコンテンツデータを再生装置5へ送信する。入出力インタフェース47は、変換装置と制御装置1との間のインタフェース処理を行う。例えば、入出力インタフェース47は、エンコーダ45から入力された音声データ又はコンテンツデータを制御装置1へ送信する。ROM42には、OS、及び制御プログラム等が記憶されている。制御プログラムは、コンピュータとしてのCPU41に、エンコーダ45の動作の制御、同期用データの送信等の処理を実行させる。
[1−2−3.再生装置5の構成]
図2(C)は、本実施形態の再生装置5の概要構成例を示す図である。図2(C)に示すように、再生装置5は、CPU51、ROM52、RAM53、記憶部54、入出力インタフェース55、入力部56、表示部57、及びスピーカ58等を備えて構成される。これらの構成要素は、バス59に接続されている。入出力インタフェース55には、例えばLAN、インターネット回線、USB等のケーブルが接続される。入出力インタフェース55は、再生装置5と変換装置4−1〜4−4のそれぞれとの間のインタフェース処理を行う。例えば、入出力インタフェース55は、変換装置4−1〜4−4から再生装置5へ送信されたコンテンツデータC1〜C4をCPU51に出力する。入力部56は、ユーザの操作を入力するための入力デバイスである。入力部56は、例えばボタン、キー、タッチパネル、キーボード等の少なくとも1つにより構成されてもよい。表示部57は、例えば液晶パネル、有機ELパネル等により構成されるディスプレイである。記憶部54は、例えばフラッシュメモリ又はハードディスクドライブ等により構成される。記憶部54には、OS、及び再生プログラム等が記憶されている。再生プログラムは、コンピュータとしてのCPU51に、コンテンツデータC1〜C4の再生等の処理を実行させるプログラムである。再生プログラム等は、例えば所定のサーバ装置からダウンロードされてもよい。或いは、再生プログラム等は、例えば光ディスク、磁気テープ、メモリカード等の記録媒体に記録されてドライブ装置を介して記憶部54に読み込まれてもよい。或いは、再生プログラム等は、再生装置5に予めインストールされていてもよい。
図2(C)は、本実施形態の再生装置5の概要構成例を示す図である。図2(C)に示すように、再生装置5は、CPU51、ROM52、RAM53、記憶部54、入出力インタフェース55、入力部56、表示部57、及びスピーカ58等を備えて構成される。これらの構成要素は、バス59に接続されている。入出力インタフェース55には、例えばLAN、インターネット回線、USB等のケーブルが接続される。入出力インタフェース55は、再生装置5と変換装置4−1〜4−4のそれぞれとの間のインタフェース処理を行う。例えば、入出力インタフェース55は、変換装置4−1〜4−4から再生装置5へ送信されたコンテンツデータC1〜C4をCPU51に出力する。入力部56は、ユーザの操作を入力するための入力デバイスである。入力部56は、例えばボタン、キー、タッチパネル、キーボード等の少なくとも1つにより構成されてもよい。表示部57は、例えば液晶パネル、有機ELパネル等により構成されるディスプレイである。記憶部54は、例えばフラッシュメモリ又はハードディスクドライブ等により構成される。記憶部54には、OS、及び再生プログラム等が記憶されている。再生プログラムは、コンピュータとしてのCPU51に、コンテンツデータC1〜C4の再生等の処理を実行させるプログラムである。再生プログラム等は、例えば所定のサーバ装置からダウンロードされてもよい。或いは、再生プログラム等は、例えば光ディスク、磁気テープ、メモリカード等の記録媒体に記録されてドライブ装置を介して記憶部54に読み込まれてもよい。或いは、再生プログラム等は、再生装置5に予めインストールされていてもよい。
[1−3.映像データの再生の同期]
映像配信システムSにおいては、入力装置2が撮影を開始することにより、入力装置2が分配器3を介して変換装置4−1〜4−4のそれぞれへ映像データ及び音声データの送信を開始する。その後、制御装置1は、変換装置4−1〜4−4のそれぞれへエンコード開始命令を一斉に送信する。これにより、変換装置4−1〜4−4は、入力装置2からの映像データ及び音声データのエンコード処理を開始して、エンコードされた映像データ及び音声データにタイムスタンプを付加して再生装置5への送信を開始する。タイムスタンプは、例えばエンコード処理が開始されてから経過した時間で示される。エンコードの開始は、エンコードされた映像データの送信の開始でもある。
映像配信システムSにおいては、入力装置2が撮影を開始することにより、入力装置2が分配器3を介して変換装置4−1〜4−4のそれぞれへ映像データ及び音声データの送信を開始する。その後、制御装置1は、変換装置4−1〜4−4のそれぞれへエンコード開始命令を一斉に送信する。これにより、変換装置4−1〜4−4は、入力装置2からの映像データ及び音声データのエンコード処理を開始して、エンコードされた映像データ及び音声データにタイムスタンプを付加して再生装置5への送信を開始する。タイムスタンプは、例えばエンコード処理が開始されてから経過した時間で示される。エンコードの開始は、エンコードされた映像データの送信の開始でもある。
変換装置4−1〜4−4がエンコードを開始するタイミングが互いにずれる場合がある。従って、エンコードされた映像データの送信の開始のタイミングもずれる。タイミングがずれる要因として、エンコード開始命令の受信のタイミングが異なったり、変換装置4−1〜4−4の製造誤差があったり、変換装置4−1〜4−4のそれぞれの状態等が考えられる。たとえ、変換装置4−1〜4−4が入力装置2から映像データV1〜V4を同じタイミングで受信していたとしても、エンコード処理の開始のタイミングが異なると、変換装置4−1〜4−4間でフレームに付与されるタイムスタンプにずれが生じる。そのため、変換装置4−1〜4−4から映像データV1〜V4を受信した再生装置5がタイムスタンプに従って映像データV1〜V4を再生すると、映像データV1〜V4間でフレームの表示のタイミングにずれが生じる。
この問題を具体的に説明する。図3(A)は、音声データA1〜A4、及び映像データV1〜V4の例を示す図である。図3(A)において、映像データV1〜V4のそれぞれに含まれる矩形はフレームを示す。なお、以下の例においては、フレームレートは25であるとする。また、フレームFi−jは、入力装置2から変換装置4−iへ送信されるフレームのうちj番目のフレームである。フレームFi−jの横方向における位置により、フレームFi−jが変換装置4−iに受信されるタイミングが示される。例えば、変換装置4−2は、フレームF2−1、F2−2、F2−3等の順に、フレームを受信する。変換装置4−1が時刻T0でエンコードを開始したとする。このとき、変換装置4−1は、フレームF1−2の丁度先頭でエンコードを開始したとする。この場合、フレームF1−2のタイムスタンプは0ミリ秒であり、フレームF1−3のタイムスタンプは40ミリ秒である。変換装置4−2は、時刻T0よりも70ミリ秒前にエンコードを開始したとする。この場合、変換装置4−2は、エンコードの開始から30ミリ秒後にフレームF2−1のエンコードを開始する。従って、フレームF2−1のタイムスタンプは30ミリ秒であり、フレームF2−3のタイムスタンプは110ミリ秒である。変換装置4−3は、時刻T0よりも25ミリ秒前にエンコードを開始したとする。この場合、変換装置4−3は、エンコードの開始から25ミリ秒後にフレームF3−2のエンコードを開始する。従って、フレームF3−2のタイムスタンプは25ミリ秒であり、フレームF3−3のタイムスタンプは65ミリ秒である。変換装置4−4は、時刻T0よりも30ミリ秒後にエンコードを開始したとする。この場合、変換装置4−4は、エンコードの開始から10ミリ秒後にフレームF4−3のエンコードを開始する。従って、フレームF4−3のタイムスタンプは10ミリ秒である。このように、同時に再生されるべきフレームF1−3〜F4−3のタイムスタンプがばらばらとなる場合がある。
そこで、制御装置1は、変換装置4−1〜4−4から同期用データSD1〜SD4を取得する。同期用データSD1〜SD4は、変換装置4−1〜4−4からから送信される映像データV1〜V4を同期して再生するために用いられる。変換装置4−iから取得される同期用データは、同期用データSDiである。具体的に、制御装置1は、変換装置4−1〜4−4のそれぞれへ、同期用データ生成命令を一斉に送信する。同期用データは、変換装置により送信される映像データにおける所定の期間の映像データにより再生されるデータである。エンコードを開始するタイミングがずれることにより、この所定の期間がずれる。所定の期間の映像データにより再生されるデータは、例えば音声データ又は映像データである。同期用データは、例えば同期用データ生成命令を変換装置が受信した時点から所定の期間の動画データにより再生されるデータであってもよい。具体的に、同期用データは、例えば同期用データ生成命令を変換装置が受信した時点から所定の期間送信される複数のフレームが再生されるべき期間に再生されるデータであって、その期間に対応した内容のデータであってもよい。同期用データ生成命令を変換装置が受信した時点から送信される複数のフレームとは、具体的には、入力装置2からの映像データ及び音声データの送信の開始後に変換装置が入力装置2から受信する映像データのうち、同期用データ生成命令を変換装置が受信した時点から受信された映像データ部分の複数のフレームである。変換装置は、フレームを受信した時点でそのフレームをエンコードして再生装置5へ送信することができる。このとき、変換装置は受信したフレームを実際にはエンコードして送信する必要はない。そして、同期用データとして、同期用データ生成命令を変換装置が受信した時点から送信される複数のフレームが再生されるべき期間に対応した内容のデータとは、その複数のフレームに付加されるタイムスタンプが示すタイミングで再生されるデータである。すなわち、同期用データが映像データである場合、同期用データは、同期用データ生成命令を変換装置が受信した時点から送信される複数のフレームそのものである。同期用データが音声データである場合、同期用データは、変換装置が入力装置2から受信する音声データのうち、同期用データ生成命令を変換装置が受信した時点から送信される複数のフレームと同期して再生される音声データである。制御装置1は、変換装置4−1〜4−4からそれぞれ受信した同期用データSD1〜SD4に基づいて、同期用データSD1〜SD4のうち例えば同期用データSD1に対する同期用データSD1〜SD4の時間的なずれ量をそれぞれ算出する。なお、制御装置1は、同期用データSD1のずれ量を計算しなくてもよい。制御装置1は、同期用データSD1のずれ量として自動的に0を決定してもよい。
例えば、制御装置1は、同期用データSD1〜SD4のそれぞれから、互いに内容が共通する部分のデータを特定する。制御装置1は、同期用データSD1〜SD4のそれぞれについて、共通部分の時間的な位置を算出する。そして、CPU11は、同期用データSD1〜SD4のそれぞれにおける共通部分の時間的な位置を、同期用データSD1において共通部分の時間的な位置で減算することにより、ずれ量を計算する。なお、例えば、同期用データSD1及び同期用データSD2が共通部分P1を含み、同期用データSD2及び同期用データSD3が共通部分P2を含み、同期用データSD3及び同期用データSD4が共通部分P3を含むような場合であっても、制御装置1は、同期用データSD1の内容に対する同期用データSD1〜SD4の内容の時間的なずれ量を算出することが可能である。
制御装置1は、算出した複数のずれ量をオフセットOF1〜OF4とする。同期用データSDiのオフセットがオフセットOFiである。制御装置1は、オフセットOF1〜OF4を変換装置4−1〜4−4へ送信する。変換装置4−iへ送信されるオフセットは、オフセットOFiである。オフセットOF1〜OF4を受信した変換装置4−1〜4−4のそれぞれは、受信したオフセットに応じてフレームの再生タイミングをずらしたタイムスタンプを生成して、フレームに付加する。具体的に、変換装置は、タイムスタンプを元のタイムスタンプよりもオフセット分ずらす。また、変換装置は、音声データのタイムスタンプもオフセット分ずらす。例えば、変換装置は、タイムスタンプからオフセットを減算して、タイムスタンプを更新してもよい。
本実施形態においては、同期用データとして音声データが用いられる。例えば、変換装置4−1〜4−4のそれぞれは、制御装置1から同期用データ生成命令を受信した時点から入力装置2から受信した音声データをRAM53に記憶させ、記憶された音声データを同期用データとして生成してもよい。制御装置1がエンコード開始命令を送信してから変換装置4−1〜4−4がエンコードを開始するタイミングのずれ量と、制御装置1が同期用データ生成命令を送信してから音声データのRAM53への記憶を開始するタイミングのずれ量は同じである。音声データのRAM53への記憶を開始するタイミングは、同期用データの生成開始のタイミングでもある。
図3(A)に示すように、例えば変換装置4−1が時刻T0で同期用データの生成を開始した場合、変換装置4−2は、時刻T0よりも70ミリ秒前に同期用データの生成を開始し、変換装置4−3は、時刻T0よりも25ミリ秒前に同期用データの生成を開始し、変換装置4−4は、時刻T0よりも30ミリ秒後に同期用データの生成を開始することになる。制御装置1は、同期用データとしての音声データA1〜A4の音声波形に基づいて、音の時間的なずれ量を算出することができる。そして、制御装置1は、オフセットOF1を0ミリ秒とし、オフセットOF2を−70ミリ秒とし、オフセットOF3を−25ミリ秒とし、オフセットOF4を+30ミリ秒とする。制御装置1は、オフセットOFiを変換装置4−iへ送信する。この場合、変換装置4−1は、タイムスタンプを変更しない。変換装置4−2は、タイムスタンプを70ミリ秒早くする。変換装置4−3は、タイムスタンプを25ミリ秒早くする。変換装置4−4は、タイムスタンプを30ミリ秒遅くする。従って、フレームF1−3〜F4−3の全てのタイムスタンプは40ミリ秒となる。
制御装置1は、例えば予め定められた時間長の同期用データを変換装置4−1〜4−4のそれぞれから取得してもよい。例えば、制御装置1は、所定の時間長を含む同期用データ生成命令を変換装置4−1〜4−4へ送信する。変換装置4−1〜4−4は、同期用データ生成命令に含まれる時間長の同期用データを生成して、制御装置1へ送信する。制御装置1は、受信された予め定められた時間長の複数の同期用データに基づいて、ずれ量を生成する。このとき、複数の同期用データ間で、共通の音声波形部分を正確に特定することができない場合、ずれ量を正確に計算することができない。そこで、制御装置1は、ずれ量を計算することができなかった場合、より長い時間長の同期用データを変換装置4−1〜4−4から取得してもよい。これにより、複数の同期用データ間で共通の音声波形部分が含まれる蓋然性が高くなるので、ずれ量を計算することができる。
ところで、入力装置2から映像データ及び音声データを変換装置4−1〜4−4が受信するとき、映像データが音声データよりも若干遅れて受信される場合がある。映像データと音声データの受信のずれ量は、変換装置4−1〜4−4間で互いに異なる場合があるかもしれない。この場合、同期用データに基づいてフレームのタイムスタンプを生成したとしても、映像データV1〜V4間でフレームのタイムスタンプが若干ずれる。図3(B)は、音声データA1及びA2、及び映像データV1及びV2の例を示す図である。図3(B)において、映像データV1及びV2のタイムスタンプは、音声データA1及びA2に基づいて既に調整されている。変換装置4−1が映像データV1を音声データA1よりも20ミリ秒遅れて受信した場合、映像データV1において、フレームF1−1のタイムスタンプは20ミリ秒である。変換装置4−2が映像データV2を音声データA2よりも30ミリ秒遅れて受信した場合、映像データV2において、フレームF2−1のタイムスタンプは30ミリ秒である。従って、1番目のフレームのタイムスタンプに10ミリ秒の差が生じる。
そこで、再生装置5は、変換装置4−1〜4−4から受信した映像データV1〜V4を再生するとき、映像データV1〜V4のフレームレートを取得する。再生装置5は、取得したフレームレートの逆数の2分の1を、半周期時間として計算する。そして、再生装置5は、映像データV1〜V4のうち何れかを基準とする。例えば、映像データV1を基準とする。再生装置5は、タイムスタンプに基づき、映像データV1の何れかのフレームを再生するタイミングになったと判定したとき、そのフレームのタイムスタンプに半周期時間を加算して、参照タイムスタンプを計算する。そして、再生装置5は、映像データV2〜V4において、参照タイムスタンプに対応するフレームを、V1のフレームと同時に再生する。参照タイムスタンプに対応するフレームとは、タイムスタンプが示す時刻が参照タイムスタンプが示す時刻よりも早く、且つタイムスタンプが示す時刻が参照タイムスタンプが示す時刻よりもフレームレートの逆数未満早いフレームである。すなわち、参照タイムスタンプに対応するフレームとは、そのフレームのタイムスタンプが示す時刻が参照タイムスタンプが示す時刻よりも早く、そのフレームの次のフレームのタイムスタンプが示す時刻が参照タイムスタンプが示す時刻よりも遅いフレームである。例えば、フレームレートが25であり、参照タイムスタンプが80である場合、再生装置5は、タイムスタンプが40より大きく且つ80よりも小さいフレームを特定する。これにより、同期用データに基づくタイムスタンプの調整後、映像データV1〜V4間で半周期時間未満のタイムスタンプのずれが生じている場合、そのずれを解消することができる。
図3(B)においては、半周期時間は20ミリ秒である。例えば、映像データV1のフレームF1−2のタイムスタンプは60ミリ秒である。この場合、参照タイムスタンプは80ミリ秒となる。映像データV2において参照タイムスタンプに対応するフレームは、タイムスタンプが70ミリ秒であるフレームF2−2である。従って、再生装置5は、再生開始から60ミリ秒経過した時点で、フレームF1−2とフレーム2−2とを同時に再生する。
[1−4.映像配信システムSの動作]
次に、図4乃至図6を参照して、本実施形態の映像配信システムSの動作について説明する。図4は、制御装置1の処理例を示すフローチャートである。例えば、入力部16を用いてエンコードを開始させる操作が行われたとき、CPU11は図4に示す処理を実行する。図4に示すように、CPU11は、同期用データの時間長Tを予め定められた初期値に設定する(ステップS1)。次いで、制御装置1は、変換装置4−1〜4−4へ、時間長Tを含む同期用データ生成命令を送信する(ステップS2)。次いで、CPU11は、変換装置4−1〜4−4の全てから同期用データを受信したか否かを判定する(ステップS3)。このとき、CPU11は、変換装置4−1〜4−4の少なくとも1つから同期用データを受信していないと判定した場合には(ステップS3:NO)、ステップS3の判定を再実行する。一方、CPU11は、変換装置4−1〜4−4の全てから同期用データを受信したと判定した場合には(ステップS3:YES)、ステップS4に進む。
次に、図4乃至図6を参照して、本実施形態の映像配信システムSの動作について説明する。図4は、制御装置1の処理例を示すフローチャートである。例えば、入力部16を用いてエンコードを開始させる操作が行われたとき、CPU11は図4に示す処理を実行する。図4に示すように、CPU11は、同期用データの時間長Tを予め定められた初期値に設定する(ステップS1)。次いで、制御装置1は、変換装置4−1〜4−4へ、時間長Tを含む同期用データ生成命令を送信する(ステップS2)。次いで、CPU11は、変換装置4−1〜4−4の全てから同期用データを受信したか否かを判定する(ステップS3)。このとき、CPU11は、変換装置4−1〜4−4の少なくとも1つから同期用データを受信していないと判定した場合には(ステップS3:NO)、ステップS3の判定を再実行する。一方、CPU11は、変換装置4−1〜4−4の全てから同期用データを受信したと判定した場合には(ステップS3:YES)、ステップS4に進む。
ステップS4において、CPU11は、変換装置4−1〜4−4から同期用データSD1〜SD4として受信された音声データが示す音のずれ量を、オフセットOF1〜OF4として算出する。次いで、CPU11は、オフセットOF1〜OF4の算出が成功したか否かを判定する(ステップS5)。例えば、CPU11は、同期用データSD1〜SD4に共通の音声波形部分のデータを同期用データSD1〜SD4が含まない場合には、オフセットOF1〜OF4の算出が失敗したと判定する(ステップS5:NO)。この場合、CPU11は、時間長Tに所定値tを加算して、時間長Tを更新する(ステップS6)。所定値tは、0より大きい値である。そして、CPU11は、ステップS2に進む。一方、CPU11は、同期用データSD1〜SD4に共通の音声波形部分のデータを同期用データSD1〜SD4が含むことにより、オフセットOF1〜OF4の算出が成功したと判定した場合には(ステップS5:YES)、ステップS7に進む。
ステップS7において、CPU11は、変換装置4−1〜4−4へ、オフセットOF1〜OF4を送信する。次いで、CPU11は、変換装置4−1〜4−4へエンコード開始命令を送信する(ステップS8)。次いで、CPU11は、入力部16を用いてエンコードを終了させる操作が行われたか否かを判定する(ステップS9)。このとき、CPU11は、エンコードを終了させる操作が行われていないと判定した場合には(ステップS9:NO)、ステップS9の判定を再度実行する。一方、CPU11は、エンコードを終了させる操作が行われたと判定した場合には(ステップS9:YES)、ステップS10に進む。ステップS10において、CPU11は、変換装置4−1〜4−4へエンコード終了命令を送信して、図4に示す処理を終了させる。
図5は、変換装置の処理例を示すフローチャートである。例えば、変換装置が起動したとき、変換装置4−1〜4−4のそれぞれは図5に示す処理を実行する。図5に示すように、CPU41は、入力装置2から映像データ及び音声データを受信しているか否かを判定する(ステップS21)。このとき、CPU41は、映像データ及び音声データを受信していないと判定した場合には(ステップS21:NO)、ステップS21の判定を再度実行する。一方、CPU41は、映像データ及び音声データを受信したと判定した場合には(ステップS21:YES)、ステップS22に進む。
ステップS22において、CPU41は、制御装置1から同期用データ生成命令を受信したか否かを判定する。このとき、CPU41は、同期用データ生成命令を受信していないと判定した場合には(ステップS22:NO)、ステップS25に進む。一方、CPU41は、同期用データ生成命令を受信したと判定した場合には(ステップS22:YES)、ステップS23に進む。ステップS23において、CPU41は、同期用データを生成する。例えば、CPU41は、同期用データ生成命令を受信した時点から、入力装置2から受信される映像データをRAM43に記憶させる。CPU41は、同期用データ生成命令を受信した時点から、同期用データ生成命令に含まれる時間長Tが経過すると、映像データの記憶を停止させる。次いで、CPU41は、同期用データ生成命令を受信した時点から時間長Tの間にRAM43に記憶された音声データを同期用データとして制御装置1へ送信する(ステップS24)。次いで、CPU41は、ステップS21に進む。
ステップS25において、CPU41は、制御装置1からエンコード開始命令を受信したか否かを判定する。このとき、CPU41は、エンコード開始命令を受信していないと判定した場合には(ステップS25:NO)、ステップS29に進む。一方、CPU41は、エンコード開始命令を受信したと判定した場合には(ステップS25:YES)、ステップS26に進む。ステップS26において、CPU41は、オフセットがRAM43に記憶しているか否かを判定する。このとき、CPU41は、オフセットがRAM43に記憶されていると判定した場合には(ステップS26:YES)、ステップS27に進む。ステップS27において、CPU41は、エンコードの開始位置を、RAM43に記憶されたオフセット分ずらす。具体的に、CPU41は、エンコードの開始時のエンコード位置の初期値としての0ミリ秒に、オフセットを加算してエンコード位置を調整する。エンコード位置とは、エンコード処理の開始から経過した時間を示す。次いで、CPU41は、ステップS28に進む。一方、CPU41は、オフセットを受信していないと判定した場合には(ステップS26:NO)、ステップS28に進む。ステップS28において、CPU41は、エンコード処理を開始して、ステップS21に進む。エンコード処理において、エンコーダ45は、エンコード処理の開始から経過した時間に従ってエンコード位置を更新する。また、エンコーダ45は、入力装置2から受信された映像データ及び音声データを順次エンコードする。このとき、エンコーダ45は、映像データをフレームごとにエンコードし、エンコードされた映像データにその時点のエンコード位置を示すタイムスタンプを付加する。また、エンコーダ45は、エンコードされた音声データに例えば所定時間間隔でタイムスタンプを付加する。
ステップS29において、CPU41は、制御装置1からオフセットを受信したか否かを判定する。このとき、CPU41は、オフセットを受信していないと判定した場合には(ステップS29:NO)、ステップS31に進む。一方、CPU41は、オフセットを受信したと判定した場合には(ステップS29:YES)、ステップS30に進む。ステップS30において、CPU41は、受信したオフセットをRAM43に記憶させて、ステップS21に進む。
ステップS31において、CPU41は、再生装置5からコンテンツ要求を受信したか否かを判定する。このとき、CPU41は、コンテンツ要求を受信していないと判定した場合には(ステップS31:NO)、ステップS33に進む。一方、CPU41は、コンテンツ要求を受信したと判定した場合には(ステップS31:YES)、ステップS32に進む。ステップS32において、CPU41は、現時点でエンコードされている映像データ及び音声データを再生装置5へ送信して、ステップS21に進む。
ステップS33において、CPU41は、制御装置1からエンコード終了命令を受信したか否かを判定する。このとき、CPU41は、エンコード終了命令を受信していないと判定した場合には(ステップS33:NO)、ステップS35に進む。一方、CPU41は、エンコード終了命令を受信したと判定した場合には(ステップS33:YES)、ステップS34に進む。ステップS34において、CPU41は、エンコード処理を終了させて、ステップS21に進む。
ステップS35において、CPU41は、変換装置が停止するか否かを判定する。このとき、CPU41は、変換装置が停止しないと判定した場合には(ステップS35:NO)、ステップS21に進む。一方、CPU41は、変換装置が停止すると判定した場合には(ステップS35:YES)、図5に示す処理を終了させる。
図6は、再生装置5の処理例を示すフローチャートである。例えば、入力部56を用いてコンテンツデータを再生させる操作が行われたとき、再生装置5は図6に示す処理を実行する。図6に示すように、CPU51は、変換装置4−1〜4−4へコンテンツ要求を送信する(ステップS41)。次いで、CPU51は、変換装置4−1〜4−4から映像データ及び音声データを受信したか否かを判定する(ステップS42)。このとき、CPU51は、映像データ及び音声データを受信していないと判定した場合には(ステップS42:NO)、ステップS42の判定を再度実行する。一方、CPU51は、映像データ及び音声データを受信したと判定した場合には(ステップS42:YES)、受信された映像データ及び音声データをRAM53に記憶させる。そして、CPU51は、ステップS43に進む。
ステップS43において、CPU51は、受信された何れかの映像データからフレームレートを取得する。次いで、CPU51は、フレームレートの逆数を2で割ることにより、半周期時間を計算する(ステップS44)。次いで、CPU51は、受信された音声データA1〜A4のうち音声データA1のタイムスタンプに従って、音声データA1の再生を開始する(ステップS45)。これにより、スピーカ58により音声が出力される。CPU51は、音声データA1を再生しながら、音声データA1のタイムスタンプに従って音声データA1の再生位置を更新する。再生位置は、音声データA1の再生開始から経過した時間を示す。
次いで、CPU51は、音声データA1の再生位置が、受信された映像データV1においてまだ再生されていないフレームのうち先頭のフレームのタイムスタンプが示す時間に達したか否かを判定する(ステップS46)。このとき、CPU51は、再生位置が、映像データV1においてまだ再生されていないフレームのうち先頭のフレームのタイムスタンプが示す時間に達していないと判定した場合には(ステップS46:NO)、ステップS46の処理を再度実行する。一方、CPU51は、再生位置が、映像データV1においてまだ再生されていないフレームのうち先頭のフレームのタイムスタンプが示す時間に達したと判定した場合には(ステップS46:YES)、ステップS47に進む。
ステップS47において、CPU51は、映像データV1においてまだ再生されていないフレームのうち先頭のフレームのタイムスタンプに半周期時間を加算して、参照タイムスタンプを計算する。次いで、CPU51は、映像データV2〜V4のそれぞれにおいて、参照タイムスタンプに対応するフレームを特定する。具体的に、CPU51は、参照タイムスタンプが示す時刻よりも早い時刻を示すタイムスタンプであって、参照タイムスタンプが示す時刻よりもフレームレートの逆数未満早い時刻を示すタイムスタンプが付加されたフレームを特定する。そして、CPU51は、映像データV1においてまだ再生されていないフレームのうち先頭のフレームと、映像データV2〜V4のそれぞれにおいて、参照タイムスタンプに対応するフレームとを同時に再生する(ステップS48)。これにより、CPU51は、映像データV1〜V4のそれぞれの1フレーム分の静止画像を表示部57に表示させる。
次いで、CPU51は、必要に応じて変換装置4−1〜4−4の少なくとも何れかから映像データ及び音声データを取得する(ステップS49)。例えば、CPU51は、RAM53に記憶された映像データ又は音声データの最後のタイムスタンプと、現在の再生位置との差が所定時間未満となった場合、その映像データ又は音声データに対応する変換装置へ、コンテンツ要求を送信する。そして、CPU51は、コンテンツ要求に応じて変換装置から送信された映像データ及び音声データをRAM53に記憶させる。次いで、CPU51は、入力部56を用いてコンテンツデータの再生を終了させる操作が行われたか否かを判定する(ステップS50)。このとき、CPU51は、再生を終了させる操作が行われていないと判定した場合には(ステップS50:NO)、ステップS46に進む。一方、CPU51は、再生を終了させる操作が行われたと判定した場合には(ステップS50:YES)、音声データA1の再生を終了させて(ステップS51)、図6に示す処理を終了させる。
以上説明したように、本実施形態によれば、制御装置1が、変換装置4−1〜4−4から同期用データSD1〜SD4を取得する。また、制御装置1が、同期用のデータSD1に対する同期用のデータSD1〜SD4の時間的なずれ量をオフセットOF1〜OF4として算出し、オフセットOF1〜OF4を、変換装置4−1〜4−4へ送信する。そして、変換装置4−1〜4−4のそれぞれが、オフセットに応じて、動画データを構成するフレームの再生タイミングを示すタイムスタンプを生成する。従って、変換装置4−1〜4−4から送信された映像データV1〜V4を同期して再生することができる。
[2.第2実施形態]
第1実施形態においては、制御装置1はオフセットOF1〜OF4を変換装置4−1〜4−4へ送信していた。しかしながら、制御装置1はオフセットOF1〜OF4を再生装置5へ送信してもよい。この場合、再生装置5は、オフセットOF1〜OF4に応じて、映像データV1〜V4のそれぞれのフレームのタイムスタンプをずらす。また、再生装置5は、オフセットOF1に応じて、音声データA1のタイムスタンプをずらす。そして、再生装置5は、このようにして調整されたタイムスタンプに基づいて、映像データV1〜V4のそれぞれのフレームを同期して再生する。
第1実施形態においては、制御装置1はオフセットOF1〜OF4を変換装置4−1〜4−4へ送信していた。しかしながら、制御装置1はオフセットOF1〜OF4を再生装置5へ送信してもよい。この場合、再生装置5は、オフセットOF1〜OF4に応じて、映像データV1〜V4のそれぞれのフレームのタイムスタンプをずらす。また、再生装置5は、オフセットOF1に応じて、音声データA1のタイムスタンプをずらす。そして、再生装置5は、このようにして調整されたタイムスタンプに基づいて、映像データV1〜V4のそれぞれのフレームを同期して再生する。
タイムスタンプの調整方法は、変換装置4−1〜4−4によるタイムスタンプの調整方法と同様である。すなわち、第1位実施形態においては変換装置4−1〜4−4のそれぞれが映像データV1〜V4に対して行うタイムスタンプの調整を、1台の再生装置5が行う。
[3.第3実施形態]
第1実施形態においては、制御装置1は、同期用データとして音声データを取得していた。しかしながら、制御装置1は、同期用データとして映像データを取得してもよい。
第1実施形態においては、制御装置1は、同期用データとして音声データを取得していた。しかしながら、制御装置1は、同期用データとして映像データを取得してもよい。
例えば、入力装置2が映像データを送信するとき、特定のフレームを例えば所定色のフレームに変更して、映像データを送信する。制御装置1から同期用データ生成命令を受信した変換装置4−1〜4−4のそれぞれは、同期用データ生成命令を受信した時点から、入力装置2から受信された映像データをRAM43に記憶させて、同期用データを生成する。そして、変換装置4−1〜4−4のそれぞれは、同期用データを制御装置1へ送信する。制御装置1は、各同期用データから、所定色のフレームの位置を特定する。制御装置1は、同期用データ間における所定色のフレームの位置のずれ量を、オフセットOF1〜OF4として算出する。
本実施形態においては、図3(B)を用いて説明したような映像データ間のフレームのタイムスタンプのずれは生じない。本実施形態においては、入力装置2は変換装置4−1〜4−4へ音声データを送信してもよいし、送信しなくてもよい。
[4.他の実施形態]
なお、上記各実施形態においては、変換装置4−1〜4−4は、映像データ及び音声データをエンコードしていた。しかしながら、変換装置4−1〜4−4は、映像データ及び音声データをエンコードしなくてもよい。変換装置4−1〜4−4は、入力装置2から受信した映像データ及び音声データにタイムスタンプを付加して、そのまま再生装置5へ送信してもよい。また、入力装置2は、エンコードされていない映像データ及び音声データを変換装置4−1〜4−4へ送信してもよいし、エンコードされた映像データ及び音声データを変換装置4−1〜4−4へ送信してもよい。
なお、上記各実施形態においては、変換装置4−1〜4−4は、映像データ及び音声データをエンコードしていた。しかしながら、変換装置4−1〜4−4は、映像データ及び音声データをエンコードしなくてもよい。変換装置4−1〜4−4は、入力装置2から受信した映像データ及び音声データにタイムスタンプを付加して、そのまま再生装置5へ送信してもよい。また、入力装置2は、エンコードされていない映像データ及び音声データを変換装置4−1〜4−4へ送信してもよいし、エンコードされた映像データ及び音声データを変換装置4−1〜4−4へ送信してもよい。
また、上記各実施形態においては、映像データが4分割されていた。しかしながら、映像データは、4以外の数の映像データに分割されてもよい。
また、上記各実施形態においては、変換装置4−1〜4−4は、音声データを送信していた。しかしながら、変換装置4−1〜4−4は、人の声を含まない音を示す音データを送信してもよい。
また、上記各実施形態においては、制御装置1は、複数の同期用データのうち、一の同期用データを基準として、基準の同期用データに対する複数の同期用データのずれ量を計算していた。しかしながら、ずれ量を計算する同期用データごとに、基準となる同期用データが異なっていてもよい。例えば、制御装置1は、同期用データSD1のずれ量を0に決定し、同期用データSD1に対する同期用データSD2のずれ量を計算し、同期用データSD2に対する同期用データSD3のずれ量を計算し、同期用データSD3に対する同期用データSD4のずれ量を計算してもよい。
1 制御装置
2 入力装置
3 分配器
4−1、4−2、4−3、4−4 変換装置
5 再生装置
11、41、51 CPU
12、42、52 ROM
13、43、53 RAM
14、54 記憶部
15、46、47、55 入出力インタフェース
16、56 入力部
17、57 表示部
44 映像・音声入力部
45 エンコーダ
58 スピーカ
S 映像配信システム
2 入力装置
3 分配器
4−1、4−2、4−3、4−4 変換装置
5 再生装置
11、41、51 CPU
12、42、52 ROM
13、43、53 RAM
14、54 記憶部
15、46、47、55 入出力インタフェース
16、56 入力部
17、57 表示部
44 映像・音声入力部
45 エンコーダ
58 スピーカ
S 映像配信システム
Claims (9)
- 複数の送信装置それぞれが動画データを送信する動画データ送信システムにおける情報処理方法であって、
情報処理装置が、前記複数の送信装置によって送信される複数の動画データを同期して再生するための同期用のデータの要求を前記複数の送信装置へ送信する要求送信ステップと、
前記複数の送信装置のそれぞれが、前記情報処理装置から送信された前記要求を受信する要求受信ステップと、
前記複数の送信装置のそれぞれが、前記要求受信ステップにより前記要求が受信された場合、前記送信装置により送信される動画データにおける所定の期間の動画データにより再生されるデータを、前記同期用のデータとして前記情報処理装置へ送信する同期用データ送信ステップと、
前記情報処理装置が、前記複数の送信装置により送信された複数の同期用のデータを受信する同期用データ受信ステップと、
前記情報処理装置が、前記同期用データ受信ステップにより受信された複数の同期用のデータに基づいて、前記複数の同期用のデータの何れかに対する前記複数の同期用のデータの時間的なずれ量をそれぞれ算出する算出ステップと、
前記情報処理装置が、前記算出ステップにより算出された複数のずれ量を、前記複数の動画データそれぞれを構成するフレームの再生のタイミングを示すタイミング情報を生成するタイミング情報生成手段へ送信するずれ量送信ステップと、
前記タイミング情報生成手段が、前記情報処理装置から送信されたずれ量を受信するずれ量受信ステップと、
前記タイミング情報生成手段が、前記ずれ量受信ステップにより受信されたずれ量に応じて、前記動画データを構成するフレームの再生タイミングを示す前記タイミング情報を生成する生成ステップと、
を含むことを特徴とする情報処理方法。 - 請求項1に記載の情報処理方法であって、
前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれは、前記要求受信ステップにより前記要求が受信された時点から前記所定の期間の動画データにより再生されるデータを、前記同期用のデータとして前記情報処理装置へ送信することを特徴とする情報処理方法。 - 請求項1又は2に記載の情報処理方法であって、
前記複数の送信装置のそれぞれが、前記送信装置が送信する動画データに対応する前記タイミング情報生成手段を備え、
前記ずれ量送信ステップにおいて、前記情報処理装置は、前記複数のずれ量のそれぞれを前記複数の送信装置へ送信し、
前記生成ステップは、前記タイミング情報生成手段を備える前記送信装置が送信する動画データを構成するフレームの再生タイミングを示す前記タイミング情報を生成し、
前記複数の送信装置のそれぞれが、前記生成ステップにより生成された前記タイミング情報が付加されたフレームを含む動画データを、前記複数の送信装置から送信される複数の動画データを再生する再生装置へ送信することを特徴とする情報処理方法。 - 請求項1又は2に記載の情報処理方法であって、
前記複数の送信装置は、前記複数の動画データを再生する再生装置であって、前記タイミング情報生成手段を備える再生装置へ、前記複数の動画データを送信し、
前記ずれ量送信ステップにおいて、前記情報処理装置は、前記複数のずれ量を前記再生装置へ送信し、
前記再生装置が、前記生成ステップにより生成された前記タイミング情報に基づいて、前記複数の動画データのフレームを同期して再生する再生ステップと、
を更に含むことを特徴とする情報処理方法。 - 請求項1乃至4に記載の情報処理方法であって、
前記要求送信ステップにおいて、前記情報処理装置は、前記同期用のデータの時間長として所定の第1時間を含む前記要求を送信し、
前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれは、前記要求受信ステップにおいて受信された前記要求に含まれる時間長の前記同期用のデータを前記情報処理装置へ送信し、
前記算出ステップにおいて、前記情報処理装置により、前記複数の同期用のデータの時間的なずれ量を算出することができなかった場合、前記情報処理装置が、前記同期用のデータの時間長として、前記第1時間よりも長い第2時間を含む前記要求を前記複数の送信装置へ送信する第2要求送信ステップと、
を更に有することを特徴とする情報処理方法。 - 請求項1乃至5の何れか1項に記載の情報処理方法であって、
前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれが、前記要求受信ステップにより前記要求が受信された場合、送信される動画データにおける前記所定の期間のデータにより表される音データを、前記同期用のデータとして前記情報処理装置へ送信し、
前記算出ステップにおいて、前記情報処理装置は、前記同期用データ受信ステップにおいて受信された複数の音データの何れかの音データが示す音に対する前記複数の音データが示す音のずれ量をそれぞれ算出することを特徴とする情報処理方法。 - 請求項4又は5に記載の情報処理方法であって、
前記複数の送信装置は、前記複数の動画データを再生する再生装置へ、前記複数の動画データを送信し、
前記再生装置が、前記複数の送信装置から受信された前記複数の動画データの何れかの第1動画データ中の何れか第1フレームに付加されたタイミング情報が示すタイミングが到来したとき、前記タイミングから、前記複数の動画データのフレームレートの逆数の2分の1の時間経過したタイミングを取得する取得ステップと、
前記再生装置が、前記複数の送信装置から受信された前記複数の動画データの中で前記第1動画データ以外の第2動画データ中のフレームのうち、前記取得ステップにより取得された前記タイミングよりも前記フレームレートの逆数の時間未満前のタイミングを示すタイミング情報が付加された第2フレームを特定する特定ステップと、
前記再生装置が、前記第1フレームと前記特定ステップにより特定された前記第2フレームとを同時に再生する再生ステップと、
を更に含むことを特徴とする情報処理方法。 - 複数の送信装置それぞれが動画データを送信する動画データ送信システムにおける情報処理装置であって、
前記複数の送信装置によって送信される複数の動画データを同期して再生するための同期用のデータの要求を前記複数の送信装置へ送信する要求送信手段と、
前記要求送信手段により送信された前記要求が前記送信装置により受信された場合に前記送信装置により送信される動画データにおける所定の期間の動画データにより再生されるデータを、前記同期用のデータとして前記複数の送信装置のそれぞれから受信する同期用データ受信手段と、
前記同期用データ受信手段により受信された複数の同期用のデータに基づいて、前記複数の同期用のデータの何れかに対する前記複数の同期用のデータの時間的なずれ量をそれぞれ算出する算出手段と、
前記算出手段により算出された複数のずれ量を、前記複数の動画データそれぞれを構成するフレームの再生のタイミングを示すタイミング情報を生成するタイミング情報生成手段へ送信するずれ量送信手段と、
を備えることを特徴とする情報処理装置。 - 複数の送信装置それぞれが動画データを送信する動画データ送信システムであって、
前記複数の送信装置と、
情報処理装置と、
前記動画データを構成するフレームの再生のタイミングを示すタイミング情報を生成するタイミング情報生成手段と、
を備え、
前記情報処理装置は、
前記複数の送信装置によって送信される複数の動画データを同期して再生するための同期用のデータの要求を前記複数の送信装置へ送信する要求送信手段と、
前記要求送信手段により送信された前記要求が前記送信装置により受信された場合に前記送信装置により送信される動画データにおける所定の期間の動画データにより再生されるデータを、前記同期用のデータとして前記複数の送信装置のそれぞれから受信する同期用データ受信手段と、
前記同期用データ受信手段により受信された複数の同期用のデータに基づいて、前記複数の同期用のデータの何れかのデータに対する前記複数の同期用のデータの時間的なずれ量をそれぞれ算出する算出手段と、
前記算出手段により算出された複数のずれ量を前記タイミング情報生成手段へ送信するずれ量送信手段と、
を備え、
前記複数の送信装置のそれぞれは、
前記動画データを送信する動画データ送信手段と、
前記情報処理装置から送信された前記要求を受信する要求受信手段と、
前記要求受信手段により前記要求が受信された場合、前記同期用のデータを送信する同期用データ送信手段と、
を備え、
前記タイミング情報生成手段は、
前記情報処理装置から送信されたずれ量を受信するずれ量受信手段と、
前記ずれ量受信手段により受信されたずれ量に応じて、前記動画データを構成するフレームの再生タイミングを示す前記タイミング情報を生成する生成手段と、
を備えることを特徴とする動画データ送信システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015067237A JP2016187142A (ja) | 2015-03-27 | 2015-03-27 | 情報処理方法、情報処理装置及び動画データ送信システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015067237A JP2016187142A (ja) | 2015-03-27 | 2015-03-27 | 情報処理方法、情報処理装置及び動画データ送信システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016187142A true JP2016187142A (ja) | 2016-10-27 |
Family
ID=57203566
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015067237A Pending JP2016187142A (ja) | 2015-03-27 | 2015-03-27 | 情報処理方法、情報処理装置及び動画データ送信システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016187142A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020038249A (ja) * | 2018-09-03 | 2020-03-12 | シャープ株式会社 | 表示制御装置、表示制御方法、及び、表示制御プログラム |
-
2015
- 2015-03-27 JP JP2015067237A patent/JP2016187142A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020038249A (ja) * | 2018-09-03 | 2020-03-12 | シャープ株式会社 | 表示制御装置、表示制御方法、及び、表示制御プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11544029B2 (en) | System and method for synchronized streaming of a video-wall | |
KR102469142B1 (ko) | 미디어 스트림 재생들 사이를 트랜지션하는 동안 트랜지션 프레임들의 동적 재생 | |
JP5761446B2 (ja) | 符号化装置、復号化装置、符号化方法および復号化方法 | |
US9948940B2 (en) | Encoding apparatus, decoding apparatus, encoding method, and decoding method | |
KR102566550B1 (ko) | 복수의 커넥티드 장치 간 디지털 콘텐츠의 재생 동기화를 맞추는 방법 및 이를 이용한 장치 | |
JP6565382B2 (ja) | 情報処理方法及び動画データ送信システム | |
WO2023279793A1 (zh) | 视频的播放方法及装置 | |
CN108650541B (zh) | 实现不同设备同步播放视频的方法和系统 | |
CN106060580A (zh) | 图像同步显示方法及装置 | |
KR100927447B1 (ko) | 디지털 멀티비전 시스템 | |
JP2016187142A (ja) | 情報処理方法、情報処理装置及び動画データ送信システム | |
US10805063B2 (en) | Virtual reality viewing system, reproduction synchronizing method, and virtual reality viewing program | |
KR101301618B1 (ko) | 특수 효과 동기 장치 및 4d 상영 시스템 | |
KR101796226B1 (ko) | 복수개의 동영상을 동시에 출력하는 시스템 | |
JP3462831B2 (ja) | デジタルビデオ再生システム | |
TWI520577B (zh) | 立體影像輸出裝置與相關的立體影像輸出方法 | |
JP2006279294A (ja) | コンテンツ再生システム、コンテンツ再生方法、およびコンピュータプログラム | |
CN115174978B (zh) | 一种3d数字人的音画同步方法及电子设备 | |
JP2007201797A (ja) | 伝送システム及び映像出力方法 | |
JP2005223821A (ja) | マルチストリーム再生システム | |
JP2006262139A (ja) | コンテンツ配信システム、コンテンツ再生装置、コンテンツ再生方法およびコンテンツ再生プログラム | |
CN117319727A (zh) | 信号的同步显示方法及装置、存储介质、电子装置 | |
WO2018207253A1 (ja) | 映像記録再生装置、映像伝送装置、及び映像伝送方法 | |
Kajiyama et al. | Multiple-protocol conversion method for file-based storage in ultra-high-definition television systems | |
KR20180105430A (ko) | 네트워크 기반의 동기 보조 클록을 가지는 멀티 디스플레이 시스템 |