JP6565382B2 - 情報処理方法及び動画データ送信システム - Google Patents

情報処理方法及び動画データ送信システム Download PDF

Info

Publication number
JP6565382B2
JP6565382B2 JP2015132005A JP2015132005A JP6565382B2 JP 6565382 B2 JP6565382 B2 JP 6565382B2 JP 2015132005 A JP2015132005 A JP 2015132005A JP 2015132005 A JP2015132005 A JP 2015132005A JP 6565382 B2 JP6565382 B2 JP 6565382B2
Authority
JP
Japan
Prior art keywords
data
synchronization
moving image
image data
information processing
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.)
Active
Application number
JP2015132005A
Other languages
English (en)
Other versions
JP2017017511A (ja
Inventor
哲司 西尾
哲司 西尾
建太郎 牛山
建太郎 牛山
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.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2015132005A priority Critical patent/JP6565382B2/ja
Publication of JP2017017511A publication Critical patent/JP2017017511A/ja
Application granted granted Critical
Publication of JP6565382B2 publication Critical patent/JP6565382B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

本発明は、複数の動画データを送信し、送信された複数の動画データを同期して再生する動画データ送信システムの技術分野に関する。
特許文献1には、1つの映像が複数に分割された分割映像を同期をとってそれぞれ複数のディスプレイに表示させるマルチディスプレイシステムが開示されている。このシステムにおいて、複数のディスプレイにそれぞれ対応する複数の信号処理部へ映像信号を供給する信号供給部が、映像信号の一フレームの中に、当該フレームの番号を示す映像マーカを複数の信号処理部に対応して複数挿入する。複数の信号処理部は、映像信号の一フレームの中から映像マーカを抽出し、フレームの番号が一致するように複数の信号処理部同士で同期をとって分割映像を表示させる。
特開2013−205821号公報
複数の送信装置により複数の動画データを送信する場合、送信装置間で動画データの送信の開始のタイミングを完全に一致させることは難しい。例えば、各送信装置が動画データの送信の開始の指令を受信するタイミングや、各送信装置の製造誤差、状態等により、動画データの送信の開始のタイミングがずれる場合がある。そのため、送信された複数の動画データを再生装置が受信して再生する場合、動画データ間でフレームの表示のタイミングにずれが生じるという問題がある。
本発明は、以上の点に鑑みてなされたものであり、上述したような手法とは異なる手法で、複数の送信装置から送信された複数の動画データを同期して再生することを可能とする情報処理方法及び動画データ送信システムを提供することを課題とする。
上記課題を解決するために、請求項1に記載の発明は、複数の送信装置それぞれが動画データを送信する動画データ送信システムにおける情報処理方法において、情報処理装置が、前記複数の送信装置によって送信される複数の動画データであって、1つの映像が分割された複数の映像を示す複数の動画データを同期して再生するための同期用のデータの要求を前記複数の送信装置へ送信する要求送信ステップと、前記複数の送信装置のそれぞれが、前記情報処理装置から送信された前記要求を受信する要求受信ステップと、前記複数の送信装置のそれぞれが、前記要求受信ステップにより前記要求が受信された場合、前記送信装置により送信される動画データにおける所定の期間の動画データ及び当該所定期間の動画データと同期して再生されるデータの何れかを、前記同期用のデータとして前記情報処理装置へ送信する同期用データ送信ステップと、前記情報処理装置が、前記複数の送信装置により送信された複数の同期用のデータを受信する同期用データ受信ステップと、前記情報処理装置が、前記同期用データ受信ステップにより受信された複数の同期用のデータに基づいて、前記複数の同期用のデータの何れかに対する前記複数の同期用のデータの時間的なずれ量をそれぞれ算出する算出ステップと、前記情報処理装置が、前記算出ステップにより算出された各ずれ量を、当該ずれ量に対応する前記送信装置へ送信するずれ量送信ステップと、前記複数の送信装置が、前記情報処理装置から送信されたずれ量を受信するずれ量受信ステップと、前記複数の送信装置のそれぞれが、前記送信装置により送信される動画データの長さを、前記ずれ量受信ステップにより受信されたずれ量に相当する時間長分調整する調整ステップと、前記複数の送信装置のそれぞれが、前記調整ステップにより長さが調整された動画データを、前記複数の動画データを再生する再生装置へ送信する動画データ送信ステップと、前記再生装置が、前記複数の送信装置により送信された複数の動画データを受信する動画データ受信ステップと、を含むことを特徴とする。
請求項2に記載の発明は、請求項1に記載の情報処理方法において、前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれは、前記要求受信ステップにより前記要求が受信された時点から前記所定の期間の動画データ及び当該所定期間の動画データと同期して再生されるデータの何れかを、前記同期用のデータとして前記情報処理装置へ送信することを特徴とする。
請求項3に記載の発明は、請求項1又は2に記載の情報処理方法において、前記要求送信ステップにおいて、前記情報処理装置は、前記同期用のデータの時間長として所定の第1時間を含む前記要求を送信し、前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれは、前記要求受信ステップにおいて受信された前記要求に含まれる時間長の前記同期用のデータを前記情報処理装置へ送信し、前記算出ステップにおいて、前記情報処理装置により、前記複数の同期用のデータの時間的なずれ量を算出することができなかった場合、前記情報処理装置が、前記同期用のデータの時間長として、前記第1時間よりも長い第2時間を含む前記要求を前記複数の送信装置へ送信する第3要求送信ステップと、を更に有することを特徴とする。
請求項4に記載の発明は、請求項1乃至3の何れか1項に記載の情報処理方法において、前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれが、前記要求受信ステップにより前記要求が受信された場合、送信される動画データにおける前記所定の期間の動画データと同期して再生される前記音データを、前記同期用のデータとして前記情報処理装置へ送信し、前記算出ステップにおいて、前記情報処理装置は、前記同期用データ受信ステップにおいて受信された複数の音データの何れかの音データが示す音に対する前記複数の音データが示す音のずれ量をそれぞれ算出することを特徴とする。
請求項5に記載の発明は、請求項1乃至3の何れか1項に記載の情報処理方法において、前記複数の動画データは、それぞれがフレームを備えると共にフレームには当該フレームの再生タイミングを示すタイミング情報が付加され、前記再生装置が、前記複数の送信装置から受信された前記複数の動画データの何れかの第1動画データ中の何れか第1フレームに付加されたタイミング情報が示すタイミングが到来したとき、前記タイミングから、前記複数の動画データのフレームレートの逆数の2分の1の時間経過したタイミングを取得する取得ステップと、前記再生装置が、前記複数の送信装置から受信された前記複数の動画データの中で前記第1動画データ以外の第2動画データ中のフレームのうち、前記取得ステップにより取得された前記タイミングよりも前記フレームレートの逆数の時間未満前のタイミングを示すタイミング情報が付加された第2フレームを特定する特定ステップと、前記再生装置が、前記第1フレームと前記特定ステップにより特定された前記第2フレームとを同時に再生する再生ステップと、を更に含むことを特徴とする。
請求項6に記載の発明は、複数の送信装置それぞれが動画データを送信する動画データ送信システムにおいて、前記複数の送信装置と、前記複数の送信装置から送信される複数の動画データを再生する生成装置と、情報処理装置と、を備え、前記情報処理装置は、前記複数の送信装置によって送信される複数の動画データであって、1つの映像が分割された複数の映像を示す複数の動画データを同期して再生するための同期用のデータの要求を前記複数の送信装置へ送信する要求送信手段と、前記要求送信手段により送信された前記要求が前記送信装置により受信された場合に前記送信装置により送信される動画データにおける所定の期間の動画データ及び当該所定期間の動画データと同期して再生されるデータの何れかを、前記同期用のデータとして前記複数の送信装置のそれぞれから受信する同期用データ受信手段と、前記同期用データ受信手段により受信された複数の同期用のデータに基づいて、前記複数の同期用のデータの何れかのデータに対する前記複数の同期用のデータの時間的なずれ量をそれぞれ算出する算出手段と、前記算出手段により算出された各ずれ量を、当該ずれ量に対応する前記送信装置へ送信するずれ量送信手段と、を備え、前記複数の送信装置のそれぞれは、前記情報処理装置から送信された前記要求を受信する要求受信手段と、前記要求受信手段により前記要求が受信された場合、前記同期用のデータを送信する同期用データ送信手段と、前記情報処理装置から送信されたずれ量を受信するずれ量受信手段と、前記送信装置により送信される動画データの長さを、前記ずれ量受信手段により受信されたずれ量に相当する時間長分調整する調整手段と、前記調整手段により長さが調整された動画データを、前記複数の動画データを再生する再生装置へ送信する動画データ送信手段と、を備え、前記再生装置は、前記複数の送信装置により送信された複数の動画データを受信する動画データ受信手段を備えることを特徴とする。
請求項1及び6に記載の発明によれば、複数の送信装置が、所定の期間の動画データ及び当該所定期間の動画データと同期して再生されるデータの何れかを、同期用のデータとして情報処理装置へ送信する。情報処理装置は、複数の同期用のデータの時間的なずれ量を算出して、複数の送信装置へ送信する。各送信装置は、受信された映像データを、ずれ量に相当する時間長分調整する。そして、各送信装置は、長さが調整された映像データを再生装置へ送信する。そのため、再生装置が、複数の送信装置から送信された複数の動画データを同期して再生することができる。
請求項2に記載の発明によれば、複数の送信装置が、情報処理装置から要求を受信することによる同期用のデータを送信するための処理の開始のタイミングのずれ量は、動画データの送信の開始のタイミングのずれ量に対応する。複数の送信装置は、送信装置が同期用のデータを送信するための処理の開始のタイミングから送信装置により送信される複数のフレームが再生されるべき期間に再生され、且つそれらの複数のフレームが再生されるべき期間に対応する内容のデータを、同期用のデータとして情報処理装置へ送信する。このような同期用のデータの内容の時間的なずれ量に応じて、映像データの長さが調整されるので、複数の送信装置から送信された複数の動画データを同期して再生することができる。
請求項3に記載の発明によれば、複数の送信装置から情報処理装置へ最初に送信された複数の同期用のデータに共通する部分がないためにずれ量を算出することができない場合、より時間が長い同期用のデータを複数の変換装置に送信させることで、同期用のデータに共通する部分が含まれている蓋然性を高め、これによりずれ量を算出することができる。
請求項4に記載の発明によれば、複数の動画データと同期して再生される音データを同期用のデータとして用いることで、複数の送信装置による動画データの送信のタイミングのずれ量を的確に算出することができる。
請求項5に記載の発明によれば、動画データと音データとの間に時間的なずれがあり、そのずれの量が送信装置によって異なる場合であっても、複数の動画データ間におけるフレームの再生を同期させることができる。
一実施形態の映像配信システムSの概要構成例を示す図である。 (A)は、一実施形態の制御装置1の概要構成例を示す図である。(B)は、一実施形態の変換装置4−1〜4−4の概要構成例を示す図である。(C)は、一実施形態の再生装置5の概要構成例を示す図である。 音声データA1〜A4、及び映像データV1〜V4の例を示す図である。 (A)乃至(D)は、映像データV1〜V4の長さの調整例を示す図である。 音声データA1及びA2、及び映像データV1及びV2の例を示す図である。 制御装置1の処理例を示すフローチャートである。 変換装置の処理例を示すフローチャートである。 再生装置5の処理例を示すフローチャートである。
以下、本発明の実施形態を図面に基づいて説明する。
[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等のケーブルにより接続されてもよい。
入力装置2は、映像配信システムSへ映像データ及び音声データを入力するための装置である。映像データは、複数のフレームで構成される。映像データは、本発明の動画データの一例である。音声データは、本発明の音データの一例である。入力装置2は、例えばテレビカメラ等であってもよい。入力装置2は、例えば所定の解像度の映像を撮影して、映像データを生成する。例えば、解像度は、4K解像度であってもよいし、別の解像度であってもよい。また、入力装置2は、例えばマイクにより音声を録音して、音声データを生成する。そして、入力装置2は、撮影及び録音を実行しながら映像データ及び音声データを分配器3へ送信する。このとき、入力装置2は、映像データをフレームごとに送信する。
分配器3は、入力装置2から受信された映像データを、第1象限〜第4象限の映像の映像データに分割する。すなわち、分配器3は、入力装置2から受信された映像データが示す映像を分割した4個の映像を示す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−4のそれぞれは、音声データを、AAC(Advanced Audio Coding)等のフォーマットの音声データにエンコードしてもよい。そして、変換装置4−1〜4−4のそれぞれは、エンコードを実行しながら、エンコードされた映像データ及び音声データを含むコンテンツデータをリアルタイムで再生装置5へ送信する。このとき、変換装置4−1〜4−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を参照して、各装置の構成について説明する。
[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に読み込まれてもよい。
[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から入力された映像データ及び音声データをエンコードする。例えば、エンコーダ45は、映像データ及び音声データのそれぞれを一時的に記憶するためのバッファメモリを備えてもよい。エンコーダ45は、映像・音声入力部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に予めインストールされていてもよい。
[1−3.映像データの再生の同期]
映像配信システム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のそれぞれの状態等が考えられる。たとえ、変換装置4−1〜4−4が入力装置2から映像データV1〜V4を同じタイミングで受信していたとしても、エンコード処理の開始のタイミングが異なると、再生装置5が受信する映像データV1〜V4のそれぞれの先頭のフレームの部分の本来の再生タイミングが異なる。従って、再生装置5が映像データV1〜V4のそれぞれの先頭から同時に映像データV1〜V4の再生を開始すると、映像データV1〜V4間でフレームの表示のタイミングにずれが生じる。また、エンコード処理の開始のタイミングが異なると、変換装置4−1〜4−4間でフレームに付与されるタイムスタンプにずれが生じる。そのため、変換装置4−1〜4−4から映像データV1〜V4を受信した再生装置5がタイムスタンプに従って映像データV1〜V4を再生すると、映像データV1〜V4間でフレームの表示のタイミングにずれが生じる。
この問題を具体的に説明する。図3は、音声データA1〜A4、及び映像データV1〜V4の例を示す図である。図3において、映像データV1〜V4のそれぞれに含まれる矩形はフレームを示す。なお、以下の例においては、フレームレートは25であるとする。また、フレームFi−jは、入力装置2から変換装置4−iへ送信されるフレームのうちj番目のフレームである。フレームFi−jの横方向における位置により、フレームFi−jが変換装置4−iに受信されるタイミングが示される。例えば、変換装置4−2は、フレームF2−0、F2−1、F2−2、F2−3等の順に、フレームを受信する。変換装置4−1が時刻T0でエンコードを開始したとする。このとき、変換装置4−1は、フレームF1−2の丁度先頭でエンコードを開始したとする。すなわち、変換装置4−1は、映像データV1を、フレームF1−2の先頭から再生装置5へ送信する。従って、再生装置5は、フレームF1−2の先頭から映像データV1を再生する。この場合、フレームF1−2のタイムスタンプは0ミリ秒であり、フレームF1−3のタイムスタンプは40ミリ秒である。変換装置4−2は、時刻T0よりも70ミリ秒前にエンコードを開始したとする。この場合、変換装置4−2は、フレームF2−0の先頭を受信してから10ミリ秒経過後にフレームF2−0のエンコードを開始する。従って、変換装置4−2は、フレームF2−0の30ミリ秒分のデータをエンコードすることになる。すなわち、変換装置4−2は、映像データV2を、フレームF2−0の途中から再生装置5へ送信する。従って、再生装置5は、フレームF2−0の途中から映像データV2を再生する。この場合、フレームF2−0のタイムスタンプは0ミリ秒である。また、変換装置4−2は、エンコードの開始から30ミリ秒後にフレームF2−1のエンコードを開始する。従って、フレームF2−1のタイムスタンプは30ミリ秒であり、フレームF2−3のタイムスタンプは110ミリ秒である。変換装置4−3は、時刻T0よりも25ミリ秒前にエンコードを開始したとする。この場合、変換装置4−3は、フレームF3−1の先頭を受信してから15ミリ秒経過後にフレームF3−1のエンコードを開始する。従って、変換装置4−3は、フレームF3−1の25ミリ秒分のデータをエンコードすることになる。すなわち、変換装置4−3は、映像データV3を、フレームF3−1の途中から再生装置5へ送信する。従って、再生装置5は、フレームF3−1の途中から映像データV3を再生する。この場合、フレームF3−1のタイムスタンプは0ミリ秒である。また、変換装置4−3はエンコードの開始から25ミリ秒後にフレームF3−2のエンコードを開始する。従って、フレームF3−2のタイムスタンプは25ミリ秒であり、フレームF3−3のタイムスタンプは65ミリ秒である。変換装置4−4は、時刻T0よりも30ミリ秒後にエンコードを開始したとする。この場合、変換装置4−4は、フレームF4−2の先頭を受信してから30ミリ秒経過後にフレームF4−2のエンコードを開始する。従って、変換装置4−4は、フレームF4−2の10ミリ秒分のデータをエンコードすることになる。すなわち、変換装置4−4は、映像データV4を、フレームF4−2の途中から再生装置5へ送信する。従って、再生装置5は、フレームF4−2の途中から映像データV4を再生する。この場合、フレームF4−2のタイムスタンプは0ミリ秒である。また、変換装置4−4は、エンコードの開始から10ミリ秒後にフレームF4−3のエンコードを開始する。従って、フレームF4−3のタイムスタンプは10ミリ秒である。このように、映像データV1〜V4間において、再生装置5が再生を開始する先頭部分が異なる場合がある。また、映像データV1〜V4にタイムスタンプを付加する場合、同時に再生されるべきフレーム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である。
本実施形態においては、同期用データとして音声データが用いられる。例えば、変換装置4−1〜4−4のそれぞれは、制御装置1から同期用データ生成命令を受信した時点から入力装置2から受信した音声データをRAM53に記憶させ、記憶された音声データを同期用データとして生成してもよい。制御装置1がエンコード開始命令を送信してから変換装置4−1〜4−4がエンコードを開始するタイミングのずれ量と、制御装置1が同期用データ生成命令を送信してから音声データのRAM53への記憶を開始するタイミングのずれ量は同じである。音声データのRAM53への記憶を開始するタイミングは、同期用データの生成開始のタイミングでもある。
図3に示すように、例えば変換装置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へ送信する。
制御装置1は、例えば予め定められた時間長の同期用データを変換装置4−1〜4−4のそれぞれから取得してもよい。例えば、制御装置1は、所定の時間長を含む同期用データ生成命令を変換装置4−1〜4−4へ送信する。変換装置4−1〜4−4は、同期用データ生成命令に含まれる時間長の同期用データを生成して、制御装置1へ送信する。制御装置1は、受信された予め定められた時間長の複数の同期用データに基づいて、ずれ量を生成する。このとき、複数の同期用データ間で、共通の音声波形部分を正確に特定することができない場合、ずれ量を正確に計算することができない。そこで、制御装置1は、ずれ量を計算することができなかった場合、より長い時間長の同期用データを変換装置4−1〜4−4から取得してもよい。これにより、複数の同期用データ間で共通の音声波形部分が含まれる蓋然性が高くなるので、ずれ量を計算することができる。
オフセットOF1〜OF4を受信した変換装置4−1〜4−4のそれぞれは、受信したオフセットに相当する時間長分、映像データV1〜V4の長さを調整する。例えば、オフセットが負の値である場合、変換装置4−iは、オフセットの絶対値に相当する時間長分の映像データを、映像データViから削除する。例えば、変換装置4−iは、オフセットの絶対値に相当する時間長分の映像データを、エンコーダ45のバッファメモリに記憶させずに、破棄してもよい。オフセットが正の値である場合、変換装置4−iは、オフセットに相当する時間長分の映像データを、映像データViに追加する。例えば、変換装置4−iは、オフセットに相当する時間長分の映像データを追加して記憶させてもよい。オフセットが0である場合、変換装置4−iは、映像データViの長さを調整しなくてもよい。変換装置4−1〜4−4は、それぞれ長さを調整した映像データV1〜V4をエンコードして再生装置5へ送信する。
図4(A)〜図4(D)は、映像データV1〜V4の長さの調整例を示す図である。例えば、図3を用いて説明したように、オフセットOF1が0ミリ秒であり、オフセットOF2が−70ミリ秒であり、オフセットOF3が−25ミリ秒であり、オフセットOF4が+30ミリ秒であるとする。オフセットOF1〜OF4の送信後、制御装置1はエンコード開始命令を変換装置4−1〜4−4へ送信する。図4(A)は、映像データV1の長さの調整例を示す図である。変換装置4−1は、時刻T1でエンコード開始命令を受信したとする。このとき、変換装置4−1は、フレームF1−12の丁度先頭を受信したとする。オフセットOF1が0ミリ秒であるため、変換装置4−1は、映像データV1の長さを調整しない。そして、変換装置4−1は、フレームF1−12の先頭から映像データV1のエンコードを開始して、エンコードした映像データV1を再生装置へ送信する。フレームF1−12のタイムスタンプは0ミリ秒である。
図4(B)は、映像データV2の長さの調整例を示す図である。変換装置4−2は、時刻T1−70ミリ秒でエンコード開始命令を受信したとする。このとき、変換装置4−2がフレームF2−10の受信を開始してから10ミリ秒が経過している。従って、変換装置4−2は、エンコード開始命令を受信してから、フレームF2−10の30ミリ秒分の長さの映像データを受信し、次いで、フレームF2−11、F2−12等を順次受信する。オフセットOF2が−70ミリ秒であるため、変換装置4−2は、映像データV1から、フレームF2−10の30ミリ秒分の長さの映像データ、及びフレームF2−11の全映像データを削除する。変換装置4−2は、フレームF2−12の先頭から映像データV2のエンコードを開始して、エンコードした映像データV2を再生装置へ送信する。フレームF2−12のタイムスタンプは0ミリ秒である。
図4(C)は、映像データV3の長さの調整例を示す図である。変換装置4−3は、時刻T1−25ミリ秒でエンコード開始命令を受信したとする。このとき、変換装置4−3がフレームF3−11の受信を開始してから15ミリ秒が経過している。従って、変換装置4−3は、エンコード開始命令を受信してから、フレームF3−11の25ミリ秒分の長さの映像データを受信し、次いで、フレームF3−12、F3−13等を順次受信する。オフセットOF3が−25ミリ秒であるため、変換装置4−3は、映像データV3から、フレームF2−11の25ミリ秒分の長さの映像データを削除する。そして、変換装置4−3は、フレームF3−12の先頭から映像データV3のエンコードを開始して、エンコードした映像データV3を再生装置へ送信する。フレームF3−12のタイムスタンプは0ミリ秒である。
図4(D)は、映像データV4の長さの調整例を示す図である。変換装置4−4は、時刻T1+30ミリ秒でエンコード開始命令を受信したとする。このとき、変換装置4−4がフレームF4−12の受信を開始してから30ミリ秒が経過している。従って、変換装置4−4は、エンコード開始命令を受信してから、フレームF4−12の10ミリ秒分の長さの映像データを受信し、次いで、フレームF4−13、F4−14等を順次受信する。オフセットOF3が+30ミリ秒であるため、変換装置4−4は、映像データV4に、30ミリ秒分の長さの映像データPVを追加する。映像データPVの内容は如何なる内容であってもよい。変換装置4−4は、例えば、フレームF4−12の10ミリ秒分の映像データの前に、映像データPVを追加してもよい。この場合、映像データPVとフレームF4−12の10ミリ秒分の映像データとで、1つのフレームが構成される。この場合、映像データPVで、フレームF4−12が補完されたとも考えることができる。変換装置4−4は、映像データPVから、映像データV4のエンコードを開始して、エンコードした映像データV4を再生装置へ送信する。すなわち、変換装置4−4は、補完されたフレームF4−12の先頭から映像データV4をエンコードする。補完されたフレームF4−12のタイムスタンプは0ミリ秒である。
再生装置5は、フレームF1−12〜F4−12のそれぞれの先頭から、映像データV1〜V4を受信する。そのため、再生装置5は、フレームF1−12〜F4−12のそれぞれの先頭から映像データV1〜V4を再生することができる。再生装置5は、例えばフレームに付加されたタイムスタンプに従って映像データV1〜V4を再生してもよい。映像データV1〜V4間において同じタイミングで再生されるべきフレームのタイムスタンプが互いに一致するので、再生装置5は、映像データV1〜V4を同期して再生することができる。或いは、再生装置5は、タイムスタンプを用いないで映像データV1〜V4を再生してもよい。この場合、再生装置5は、例えば映像データV1〜V4の先頭のフレームの再生のタイミングを互いに一致させて、映像データV1〜V4の再生を開始すればよい。この場合であっても、再生装置5は、映像データV1〜V4を同期して再生することができる。
なお、変換装置4−1〜4−4のそれぞれは、エンコード開始命令を受信した時点から、映像データのエンコード及び送信を開始し、その後所定のタイミング又は任意のタイミングで映像データの長さを調整してもよい。この場合、再生装置5は、映像データV1〜V4全ての長さの調整が完了した時点から、映像データV1〜V4を同期して再生することができる。また、制御装置1は、変換装置4−1〜4−4へエンコード開始命令を送信しなくてもよい。この場合、変換装置4−1〜4−4のそれぞれは、例えば制御装置1からオフセットを受信したときに、映像データのエンコード及び送信を開始してもよい。そして、変換装置4−1〜4−4のそれぞれは、オフセットを受信したタイミングで映像データの長さを調整してもよいし、オフセット受信後所定のタイミング又は任意のタイミングで映像データの長さを調整してもよい。
ところで、入力装置2から映像データ及び音声データを変換装置4−1〜4−4が受信するとき、映像データが音声データよりも若干遅れて受信される場合がある。映像データと音声データの受信のずれ量は、変換装置4−1〜4−4間で互いに異なる場合があるかもしれない。この場合、同期用データに基づいてフレームのタイムスタンプを生成したとしても、映像データV1〜V4間でフレームのタイムスタンプが若干ずれる。図5は、音声データA1及びA2、及び映像データV1及びV2の例を示す図である。図5において、映像データ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間で半周期時間未満のタイムスタンプのずれが生じている場合、そのずれを解消することができる。
図5においては、半周期時間は20ミリ秒である。例えば、映像データV1のフレームF1−2のタイムスタンプは60ミリ秒である。この場合、参照タイムスタンプは80ミリ秒となる。映像データV2において参照タイムスタンプに対応するフレームは、タイムスタンプが70ミリ秒であるフレームF2−2である。従って、再生装置5は、再生開始から60ミリ秒経過した時点で、フレームF1−2とフレーム2−2とを同時に再生する。
なお、上述した再生装置5による半周期未満の再生タイミングの調整は、変換装置が音声データを映像データよりも遅れて受信する場合にも適用可能である。また上述した半周期未満の再生タイミングの調整は、変換装置4−1〜4−4のうち或る変換装置は映像データを音声データよりも遅れて受信し、別の変換装置は音声データを映像データよりも遅れて受信する場合にも適用可能である。
[1−4.映像配信システムSの動作]
次に、図6乃至図8を参照して、本実施形態の映像配信システムSの動作について説明する。図6は、制御装置1の処理例を示すフローチャートである。例えば、入力部16を用いてエンコードを開始させる操作が行われたとき、CPU11は図6に示す処理を実行する。図6に示すように、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へエンコード終了命令を送信して、図6に示す処理を終了させる。
図7は、変換装置の処理例を示すフローチャートである。例えば、変換装置が起動したとき、変換装置4−1〜4−4のそれぞれは図7に示す処理を実行する。図7に示すように、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に進む。一方、CPU41は、オフセットを受信していないと判定した場合には(ステップS26:NO)、ステップS28に進む。
ステップS27において、CPU41は、入力装置2から受信された映像データの長さを調整する。具体的に、オフセットが負の値である場合、CPU41は、受信された映像データから、オフセットの絶対値が示す時間長分の映像データを削除する。例えば、CPU41は、エンコード開始命令の受信後、オフセットの絶対値が示す時間経過した時点から、受信された映像データのエンコーダ45のバッファメモリに記憶させてもよい。そして、CPU41は、エンコードを開始するアドレスを、記憶された映像データの先頭のアドレスに設定してもよい。オフセットが正の値である場合、CPU41は、受信された映像データに、オフセットが示す時間長分の映像データを追加する。例えば、CPU41は、オフセットが示す時間長分の映像データを生成して、生成した映像データをバッファメモリに記憶させてもよい。また、CPU41は、エンコードを開始するアドレスを、生成した映像データの先頭のアドレスに設定してもよい。そして、CPU41は、エンコード開始命令を受信した時点から受信した映像データを、生成した映像データの後にバッファメモリに記憶させてもよい。オフセットが0である場合、CPU41は、エンコード開始命令が受信された時点から、受信された映像データをバッファメモリに記憶させてもよい。そして、CPU41は、エンコードを開始するアドレスを、記憶された映像データの先頭のアドレスに設定してもよい。映像データの長さの調整を終えると、CPU41は、エンコード時間を0ミリ秒に設定する。エンコード時間は、エンコード処理の開始から経過した時間である。次いで、CPU41は、ステップS28に進む。
ステップS28において、CPU41は、エンコード処理を開始して、ステップS21に進む。エンコード処理において、エンコーダ45は、入力装置2から受信された映像データ及び音声データをバッファメモリに記憶させながら、先入れ後出し方式でバッファメモリから映像データ及び音声データを順次読み出して、映像データ及び音声データをエンコードする。このとき、エンコーダ45は、エンコードを開始するアドレスから、映像データのエンコードを開始する。また、エンコーダ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)、図7に示す処理を終了させる。
図8は、再生装置5の処理例を示すフローチャートである。例えば、入力部56を用いてコンテンツデータを再生させる操作が行われたとき、再生装置5は図8に示す処理を実行する。図8に示すように、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)、図8に示す処理を終了させる。
以上説明したように、本実施形態によれば、制御装置1が、変換装置4−1〜4−4から同期用データSD1〜SD4を取得する。また、制御装置1が、同期用のデータSD1に対する同期用のデータSD1〜SD4の時間的なずれ量をオフセットOF1〜OF4として算出し、オフセットOF1〜OF4を、変換装置4−1〜4−4へ送信する。そして、変換装置4−1〜4−4のそれぞれが、入力装置2から受信された映像データの長さを、オフセットが示す時間長分調整する。従って、変換装置4−1〜4−4から送信された映像データV1〜V4を同期して再生することができる。
[2.第2実施形態]
第1実施形態においては、制御装置1は、同期用データとして音声データを取得していた。しかしながら、制御装置1は、同期用データとして映像データを取得してもよい。
例えば、入力装置2が映像データを送信するとき、特定のフレームを例えば所定色のフレームに変更して、映像データを送信する。或いは、入力装置2による撮影中、例えば所定の発光物を瞬間的に発光させてもよい。そして、入力装置2により、瞬間の発光を撮影させてもよい。制御装置1から同期用データ生成命令を受信した変換装置4−1〜4−4のそれぞれは、同期用データ生成命令を受信した時点から、入力装置2から受信された映像データをRAM43に記憶させて、同期用データを生成する。そして、変換装置4−1〜4−4のそれぞれは、同期用データを制御装置1へ送信する。制御装置1は、各同期用データから、所定色のフレーム又は発光の映像を含むフレームの位置を検出する。制御装置1は、同期用データ間における所定色のフレーム又は発光の映像を含むフレームの位置のずれ量を、オフセットOF1〜OF4として算出する。
本実施形態においては、図5を用いて説明したような映像データ間のフレームのタイムスタンプのずれは生じない。本実施形態においては、入力装置2は変換装置4−1〜4−4へ音声データを送信してもよいし、送信しなくてもよい。
[3.他の実施形態]
なお、上記各実施形態においては、変換装置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 映像配信システム

Claims (6)

  1. 複数の送信装置それぞれが動画データを送信する動画データ送信システムにおける情報処理方法において、
    情報処理装置が、前記複数の送信装置によって送信される複数の動画データであって、1つの映像が分割された複数の映像を示す複数の動画データを同期して再生するための同期用のデータの要求を前記複数の送信装置へ送信する要求送信ステップと、
    前記複数の送信装置のそれぞれが、前記情報処理装置から送信された前記要求を受信する要求受信ステップと、
    前記複数の送信装置のそれぞれが、前記要求受信ステップにより前記要求が受信された場合、前記送信装置により送信される動画データにおける所定の期間の動画データ及び当該所定期間の動画データと同期して再生されるデータの何れかを、前記同期用のデータとして前記情報処理装置へ送信する同期用データ送信ステップと、
    前記情報処理装置が、前記複数の送信装置により送信された複数の同期用のデータを受信する同期用データ受信ステップと、
    前記情報処理装置が、前記同期用データ受信ステップにより受信された複数の同期用のデータに基づいて、前記複数の同期用のデータの何れかに対する前記複数の同期用のデータの時間的なずれ量をそれぞれ算出する算出ステップと、
    前記情報処理装置が、前記算出ステップにより算出された各ずれ量を、当該ずれ量に対応する前記送信装置へ送信するずれ量送信ステップと、
    前記複数の送信装置が、前記情報処理装置から送信されたずれ量を受信するずれ量受信ステップと、
    前記複数の送信装置のそれぞれが、前記送信装置により送信される動画データの長さを、前記ずれ量受信ステップにより受信されたずれ量に相当する時間長分調整する調整ステップと、
    前記複数の送信装置のそれぞれが、前記調整ステップにより長さが調整された動画データを、前記複数の動画データを再生する再生装置へ送信する動画データ送信ステップと、
    前記再生装置が、前記複数の送信装置により送信された複数の動画データを受信する動画データ受信ステップと、
    を含むことを特徴とする情報処理方法。
  2. 請求項1に記載の情報処理方法において、
    前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれは、前記要求受信ステップにより前記要求が受信された時点から前記所定の期間の動画データ及び当該所定期間の動画データと同期して再生されるデータの何れかを、前記同期用のデータとして前記情報処理装置へ送信することを特徴とする情報処理方法。
  3. 請求項1又は2に記載の情報処理方法において、
    前記要求送信ステップにおいて、前記情報処理装置は、前記同期用のデータの時間長として所定の第1時間を含む前記要求を送信し、
    前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれは、前記要求受信ステップにおいて受信された前記要求に含まれる時間長の前記同期用のデータを前記情報処理装置へ送信し、
    前記算出ステップにおいて、前記情報処理装置により、前記複数の同期用のデータの時間的なずれ量を算出することができなかった場合、前記情報処理装置が、前記同期用のデータの時間長として、前記第1時間よりも長い第2時間を含む前記要求を前記複数の送信装置へ送信する第3要求送信ステップと、
    を更に有することを特徴とする情報処理方法。
  4. 請求項1乃至3の何れか1項に記載の情報処理方法において、
    前記同期用データ送信ステップにおいて、前記複数の送信装置のそれぞれが、前記要求受信ステップにより前記要求が受信された場合、送信される動画データにおける前記所定の期間の動画データと同期して再生される前記音データを、前記同期用のデータとして前記情報処理装置へ送信し、
    前記算出ステップにおいて、前記情報処理装置は、前記同期用データ受信ステップにおいて受信された複数の音データの何れかの音データが示す音に対する前記複数の音データが示す音のずれ量をそれぞれ算出することを特徴とする情報処理方法。
  5. 請求項1乃至3の何れか1項に記載の情報処理方法において、
    前記複数の動画データは、それぞれがフレームを備えると共にフレームには当該フレームの再生タイミングを示すタイミング情報が付加され、
    前記再生装置が、前記複数の送信装置から受信された前記複数の動画データの何れかの第1動画データ中の何れか第1フレームに付加されたタイミング情報が示すタイミングが到来したとき、前記タイミングから、前記複数の動画データのフレームレートの逆数の2分の1の時間経過したタイミングを取得する取得ステップと、
    前記再生装置が、前記複数の送信装置から受信された前記複数の動画データの中で前記第1動画データ以外の第2動画データ中のフレームのうち、前記取得ステップにより取得された前記タイミングよりも前記フレームレートの逆数の時間未満前のタイミングを示すタイミング情報が付加された第2フレームを特定する特定ステップと、
    前記再生装置が、前記第1フレームと前記特定ステップにより特定された前記第2フレームとを同時に再生する再生ステップと、
    を更に含むことを特徴とする情報処理方法。
  6. 複数の送信装置それぞれが動画データを送信する動画データ送信システムにおいて、
    前記複数の送信装置と、
    前記複数の送信装置から送信される複数の動画データを再生する生成装置と、
    情報処理装置と、
    を備え、
    前記情報処理装置は、
    前記複数の送信装置によって送信される複数の動画データであって、1つの映像が分割された複数の映像を示す複数の動画データを同期して再生するための同期用のデータの要求を前記複数の送信装置へ送信する要求送信手段と、
    前記要求送信手段により送信された前記要求が前記送信装置により受信された場合に前記送信装置により送信される動画データにおける所定の期間の動画データ及び当該所定期間の動画データと同期して再生されるデータの何れかを、前記同期用のデータとして前記複数の送信装置のそれぞれから受信する同期用データ受信手段と、
    前記同期用データ受信手段により受信された複数の同期用のデータに基づいて、前記複数の同期用のデータの何れかのデータに対する前記複数の同期用のデータの時間的なずれ量をそれぞれ算出する算出手段と、
    前記算出手段により算出された各ずれ量を、当該ずれ量に対応する前記送信装置へ送信するずれ量送信手段と、
    を備え、
    前記複数の送信装置のそれぞれは、
    前記情報処理装置から送信された前記要求を受信する要求受信手段と、
    前記要求受信手段により前記要求が受信された場合、前記同期用のデータを送信する同期用データ送信手段と、
    前記情報処理装置から送信されたずれ量を受信するずれ量受信手段と、
    前記送信装置により送信される動画データの長さを、前記ずれ量受信手段により受信されたずれ量に相当する時間長分調整する調整手段と、
    前記調整手段により長さが調整された動画データを、前記複数の動画データを再生する再生装置へ送信する動画データ送信手段と、
    を備え、
    前記再生装置は、
    前記複数の送信装置により送信された複数の動画データを受信する動画データ受信手段
    を備えることを特徴とする動画データ送信システム。
JP2015132005A 2015-06-30 2015-06-30 情報処理方法及び動画データ送信システム Active JP6565382B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015132005A JP6565382B2 (ja) 2015-06-30 2015-06-30 情報処理方法及び動画データ送信システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015132005A JP6565382B2 (ja) 2015-06-30 2015-06-30 情報処理方法及び動画データ送信システム

Publications (2)

Publication Number Publication Date
JP2017017511A JP2017017511A (ja) 2017-01-19
JP6565382B2 true JP6565382B2 (ja) 2019-08-28

Family

ID=57831214

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015132005A Active JP6565382B2 (ja) 2015-06-30 2015-06-30 情報処理方法及び動画データ送信システム

Country Status (1)

Country Link
JP (1) JP6565382B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6875941B2 (ja) 2017-06-20 2021-05-26 株式会社アイシン 衝撃吸収装置
JP7356018B2 (ja) * 2019-11-15 2023-10-04 富士通株式会社 情報処理プログラム、情報処理方法および情報処理装置
CN114501061B (zh) * 2022-01-25 2024-03-15 上海影谱科技有限公司 一种基于物体检测的视频帧对齐方法及系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4231236B2 (ja) * 2002-04-05 2009-02-25 日本電信電話株式会社 映像伝送装置及び方法並びにプログラム及び記録媒体
JP2007288269A (ja) * 2006-04-12 2007-11-01 Mitsubishi Electric Corp 映像受信再生装置
JP5697494B2 (ja) * 2011-03-09 2015-04-08 日立マクセル株式会社 映像送信装置、映像送信方法、映像受信装置、および映像受信方法
GB2502578B (en) * 2012-05-31 2015-07-01 Canon Kk Method, device, computer program and information storage means for transmitting a source frame into a video display system
JP2014238537A (ja) * 2013-06-10 2014-12-18 ソニー株式会社 映像伝送システム及び映像伝送方法
WO2015045788A1 (ja) * 2013-09-26 2015-04-02 株式会社リコー 配信管理装置、配信方法、及びプログラム

Also Published As

Publication number Publication date
JP2017017511A (ja) 2017-01-19

Similar Documents

Publication Publication Date Title
EP3598761B1 (en) Method and device for synthesizing audio and video data stream
US11544029B2 (en) System and method for synchronized streaming of a video-wall
JP5761446B2 (ja) 符号化装置、復号化装置、符号化方法および復号化方法
WO2016122985A1 (en) Methods and systems for synchronizing media stream presentations
US20160119507A1 (en) Synchronized media servers and projectors
JP6244642B2 (ja) 符号化装置、復号化装置、符号化方法、復号化方法およびプログラム
JP7184248B2 (ja) リアルタイム編集システム
JP6565382B2 (ja) 情報処理方法及び動画データ送信システム
US20110141355A1 (en) Synchronization of video presentation by video cadence modification
JP2008079114A (ja) 同期再生システム
CN106060580A (zh) 图像同步显示方法及装置
KR100927447B1 (ko) 디지털 멀티비전 시스템
KR101948309B1 (ko) 초다시점 영상 표시 시스템 및 그 방법
JP2016187142A (ja) 情報処理方法、情報処理装置及び動画データ送信システム
KR101301618B1 (ko) 특수 효과 동기 장치 및 4d 상영 시스템
US10805063B2 (en) Virtual reality viewing system, reproduction synchronizing method, and virtual reality viewing program
KR101796226B1 (ko) 복수개의 동영상을 동시에 출력하는 시스템
WO2021111988A1 (ja) 動画再生装置、動画再生システム、および動画再生方法
WO2018208925A1 (en) Methods and apparatus for ordered serial synchronization of multimedia streams upon sensor changes
US20130058618A1 (en) Imaging device and imaging method
JP3462831B2 (ja) デジタルビデオ再生システム
TWI520577B (zh) 立體影像輸出裝置與相關的立體影像輸出方法
JP2006279294A (ja) コンテンツ再生システム、コンテンツ再生方法、およびコンピュータプログラム
CN115174978B (zh) 一种3d数字人的音画同步方法及电子设备
JP6913874B1 (ja) 映像ステージパフォーマンスシステムおよび映像ステージパフォーマンスの提供方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180622

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190326

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: 20190702

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190715

R150 Certificate of patent or registration of utility model

Ref document number: 6565382

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150