(57)【要約】【課題】複数の情報処理端末に動画を配信して複数のユーザが同時に動画視聴を行う場合に、各情報処理端末における動画の再生を簡易に同期させる、ことを目的とする。【解決手段】動画配信システムは、グループ登録された複数の携帯端末のうち、一つの携帯端末を親端末とし、他の携帯端末を子端末とし、親端末が、自身と子端末とで再生される動画の進行を同期させる。これにより、動画配信システムは、複数の携帯端末に動画を配信して複数のユーザが同時に動画視聴を行う場合に、各携帯端末における動画の再生を簡易に同期できる。【選択図】図１５
2019075605.tif 000002
【特許請求の範囲】
【請求項１】
情報処理端末へ動画データを配信する情報処理システムであって、
グループとして登録された至近距離に位置する複数の前記情報処理端末のうち、一つの前記情報処理端末が親端末とされ、他の前記情報処理端末が子端末とされ、
前記親端末は、自身と前記子端末とで再生される前記動画の進行を同期させる
情報処理システム。
【請求項２】
前記親端末は、一部の前記子端末における前記動画の進行が遅れている場合、自身と他の前記子端末で再生される前記動画の進行を遅延させる、又は前記一部の子端末で再生される前記動画の進行を促進させる請求項１記載の情報処理システム。
【請求項３】
前記親端末は、一部の前記子端末における前記動画の進行が進んでいる場合、自身と他の前記子端末で再生される前記動画の進行を促進させる、又は前記一部の子端末で再生される前記動画の進行を遅延させる請求項１又は請求項２記載の情報処理システム。
【請求項４】
前記動画は、複数の前記動画データで構成され、
前記情報処理端末は、複数の前記動画データの記憶場所及び再生順序を示す再生順序情報が配信され、
前記親端末は、自身と前記子端末とで再生される前記動画の進行が同期するように、前記再生順序情報により示される所定の前記動画データの再生を制御する
請求項１から請求項３の何れか１項記載の情報処理システム。
【請求項５】
前記親端末は、繰り返し再生させる前記所定の動画データの繰り返し数を増加させる、又は前記所定の動画データの再生速度を予め設定された再生速度よりも遅くすることで、前記動画の進行を遅延させる請求項４記載の情報処理システム。
【請求項６】
前記親端末は、繰り返し再生させる前記所定の動画データの繰り返し数を減少させる、又は前記所定の動画データの再生速度を予め設定された再生速度よりも速くすることで、前記動画の進行を促進させる請求項４又は請求項５記載の情報処理システム。
【請求項７】
前記親端末は、自身と前記子端末とで前記動画の進行が同期している場合、前記所定の動画データの再生を行わない請求項４から請求項６の何れか１項記載の情報処理システム。
【請求項８】
前記子端末は、自身における前記動画の進行状態を示す進行状態情報を前記親端末へ送信し、
前記親端末は、受信した前記進行状態情報に基づいて、自身と前記子端末とで再生される前記動画の進行を同期させる請求項１から請求項７の何れか１項記載の情報処理システム。
【請求項９】
前記情報処理端末を介して前記情報処理端末の位置情報を取得し、前記至近距離として予め定められた範囲内にある複数の前記情報処理端末を前記グループとして登録する請求項１から請求項８の何れか１項記載の情報処理システム。
【請求項１０】
情報処理端末へ動画データを配信する動画再生同期方法であって、
グループとして登録された至近距離に位置する複数の前記情報処理端末のうち、一つの前記情報処理端末を親端末とし、他の前記情報処理端末を子端末とする第１工程と、
前記親端末が、自身と前記子端末とで再生される前記動画の進行を同期させる第２工程と、
を有する動画再生同期方法。
【請求項１１】
情報処理端末へ動画データを配信する情報処理システムが備えるコンピュータに、
グループとして登録された至近距離に位置する複数の前記情報処理端末のうち、一つの前記情報処理端末を親端末とし、他の前記情報処理端末を子端末とする第１工程と、
前記親端末が、自身と前記子端末とで再生される前記動画の進行を同期させる第２工程と、
を実行させるための動画再生同期プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、動画再生同期方法、及び動画再生同期プログラムに関するものである。
【背景技術】
【０００２】
近年、スマートフォンやタブレット端末等の可搬型の情報処理端末を用いて映画やドラマ、アニメーション等の動画を視聴するユーザが増加している。このため、ユーザがより楽しんで動画を視聴可能とする技術開発が進められている。
【０００３】
しかしながら、動画データの配信において、無線状態の劣化等により情報処理端末への動画データの配信が途切れ、情報処理端末における動画データの再生が一時的に停止する場合がある。
【０００４】
情報処理端末への動画データの配信が途切れるような場合に対応するために、特許文献１には、サーバから受信して記憶したストリームデータの量を測定し、この測定したデータ量に応じて動画データの再生速度を決定する手法が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−２１４９０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、グループ登録されている複数の情報処理端末に動画を同時に配信する動画配信システムが開発されている。グループ登録されている情報処理端末のユーザは、動画を視聴しながら他のユーザとコミュニケーションをとるが、各情報処理端末で再生される動画の同期にずれがあると、ユーザ同士のコミュニケーションに支障が生じる可能性がある。
【０００７】
動画再生の同期がずれる原因としては、特許文献１に開示されているように無線状態の劣化等が挙げられるが、特許文献１に開示されている手法では、再生速度が各情報処理端末で異なることになるので、動画の再生を複数の情報処理端末で同期させることはできない。
【０００８】
本発明は、このような事情に鑑みてなされたものであって、複数の情報処理端末に動画を配信して複数のユーザが同時に動画視聴を行う場合に、各情報処理端末における動画の再生を簡易に同期できる、情報処理システム、動画再生同期方法、及び動画再生同期プログラム、を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明の情報処理システム、動画再生同期方法、及び動画再生同期プログラムは以下の手段を採用する。
【００１０】
上記課題を解決するため、本発明の一態様である「情報処理システム」は、情報処理端末へ動画データを配信する情報処理システムであって、グループとして登録された至近距離に位置する複数の前記情報処理端末のうち、一つの前記情報処理端末が親端末とされ、他の前記情報処理端末が子端末とされ、前記親端末は、自身と前記子端末とで再生される前記動画の進行を同期させる。
【００１１】
上記課題を解決するため、本発明の一態様である「動画再生同期方法」は、情報処理端末へ動画データを配信する動画再生同期方法であって、グループとして登録された至近距離に位置する複数の前記情報処理端末のうち、一つの前記情報処理端末を親端末とし、他の前記情報処理端末を子端末とする第１工程と、前記親端末が、自身と前記子端末とで再生される前記動画の進行を同期させる第２工程と、を有する。
【００１２】
上記課題を解決するため、本発明の一態様である「動画再生同期プログラム」は、情報処理端末へ動画データを配信する情報処理システムが備えるコンピュータに、グループとして登録された至近距離に位置する複数の前記情報処理端末のうち、一つの前記情報処理端末を親端末とし、他の前記情報処理端末を子端末とする第１工程と、前記親端末が、自身と前記子端末とで再生される前記動画の進行を同期させる第２工程と、を実行させる。
【００１３】
上記「情報処理システム」には、以下に例示するように、種々の技術的限定を加えてもよい。また、同趣旨の技術的限定を、「動画再生同期方法」が実行する処理ステップや「動画再生同期プログラム」の機能に加えてもよい。
【００１４】
前記親端末は、一部の前記子端末における前記動画の進行が遅れている場合、自身と他の前記子端末で再生される前記動画の進行を遅延させる、又は前記一部の子端末で再生される前記動画の進行を促進させてもよい。
【００１５】
前記親端末は、一部の前記子端末における前記動画の進行が進んでいる場合、自身と他の前記子端末で再生される前記動画の進行を促進させる、又は前記一部の子端末で再生される前記動画の進行を遅延させてもよい。
【００１６】
前記動画は、複数の前記動画データで構成され、前記情報処理端末は、複数の前記動画データの記憶場所及び再生順序を示す再生順序情報が配信され、前記親端末は、自身と前記子端末とで再生される前記動画の進行が同期するように、前記再生順序情報により示される所定の前記動画データの再生を制御してもよい。
【００１７】
前記親端末は、繰り返し再生させる前記所定の動画データの繰り返し数を増加させる、又は前記所定の動画データの再生速度を予め設定された再生速度よりも遅くすることで、前記動画の進行を遅延させてもよい。
【００１８】
前記親端末は、繰り返し再生させる前記所定の動画データの繰り返し数を減少させる、又は前記所定の動画データの再生速度を予め設定された再生速度よりも速くすることで、前記動画の進行を促進させてもよい。
【００１９】
前記親端末は、自身と前記子端末とで前記動画の進行が同期している場合、前記所定の動画データの再生を行わなくてもよい。
【００２０】
前記子端末は、自身における前記動画の進行状態を示す進行状態情報を前記親端末へ送信し、前記親端末は、受信した前記進行状態情報に基づいて、自身と前記子端末とで再生される前記動画の進行を同期させてもよい。
【００２１】
前記情報処理端末を介して前記情報処理端末の位置情報を取得し、前記至近距離として予め定められた範囲内にある複数の前記情報処理端末を前記グループとして登録してもよい。
【発明の効果】
【００２２】
本発明によれば、複数の情報処理端末に動画を配信して複数のユーザが同時に動画視聴を行う場合に、各情報処理端末における動画の再生を簡易に同期できる、という効果を有する。
【図面の簡単な説明】
【００２３】
【図１】本発明の第１実施形態に係る動画配信システムの構成図である。
【図２】本発明の第１実施形態に係るサーバの電気的構成を示すブロック図である。
【図３】本発明の第１実施形態に係る携帯端末の電気的構成を示すブロック図である。
【図４】本発明の第１実施形態に係る動画の進行変化の態様例を示す模式図である。
【図５】本発明の第１実施形態に係る動画再生ファイルを示す模式図である。
【図６】本発明の第１実施形態に係る複数の携帯端末のうち一部の携帯端末で異なる動画再生ファイルを再生する場合を示す模式図である。
【図７】本発明の第１実施形態に係るサーバの動画配信機能に関する機能ブロック図である。
【図８】本発明の第１実施形態に係る携帯端末の動画再生機能に関する機能ブロック図である。
【図９】本発明の第１実施形態に係る動画配信処理の流れを示すフローチャートである。
【図１０】本発明の第１実施形態の変形例２に係る動画再生ファイルを示す模式図である。
【図１１】本発明の第１実施形態の変形例３に係る動画再生ファイルを示す模式図である。
【図１２】本発明の第２実施形態に係る動画再生ファイルを示す模式図である。
【図１３】本発明の第２実施形態に係るグループ登録された携帯端末における動画の進行同期を示す模式図である。
【図１４】本発明の第２実施形態に係る携帯端末の動画再生同期機能に関する機能ブロック図である。
【図１５】本発明の第２実施形態に係る動画再生同期処理の流れを示すフローチャートである。
【図１６】本発明の第３実施形態に係るグループ登録された携帯端末における動画の進行同期を示す模式図である。
【図１７】本発明の第３実施形態に係る親端末の動画再生同期機能に関する機能ブロック図である。
【図１８】本発明の第３実施形態に係る動画再生同期処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００２４】
［１．第１実施形態］
以下、本発明の第１実施形態について説明する。
【００２５】
［１−１．動画配信システムの構成］
図１は、本実施形態に係る動画配信システム１の概略構成図である。動画配信システム１は、通信回線２、複数の携帯端末３、及びサーバ４を含んで構成される。
【００２６】
通信回線２は、コンピュータネットワークを形成するものであり、例えば、電気事業者によって提供される広域通信回線である。
【００２７】
携帯端末３は、例えば、スマートフォンやタブレット端末、ノートパソコン等の情報処理端末である。携帯端末３は、画像を表示するタッチパネルディスプレイ３ａ、音を出力するスピーカー３ｂ、音が入力されるマイク３ｃ、及び被写体を撮像するカメラ３ｄ等を備える。携帯端末３は、サーバ４から配信される動画データを再生するために、一例として、専用のアプリケーションソフトウエアがインストールされる。
【００２８】
サーバ４は、通信回線２を介して、複数の携帯端末３へ動画データを配信する情報処理装置である。動画データは、例えばアニメやドラマ等のようにストーリーが存在し、ストーリーに沿って物語が進行する動画を示すものである。サーバ４は、動画データを、例えばライブ配信ではなく非ライブ配信によって携帯端末３に配信する。動画データを受信した携帯端末３は、動画データを再生してタッチパネルディスプレイ３ａに表示したり、音をスピーカー３ｂから出力する。
【００２９】
動画データが配信される複数の携帯端末３は、至近距離に位置し、グループ５としてサーバ４に登録（以下「グループ登録」という。）される。すなわち、グループ登録された複数の携帯端末３は、サーバ４から配信された動画データに基づく動画を同じタイミングで、換言すると同期してタッチパネルディスプレイ３ａに表示する。そして、グループ登録された携帯端末３の各ユーザは、同時に動画を視聴することとなる。
【００３０】
図１では、グループ５を構成する携帯端末３を四つ（携帯端末３Ａ，３Ｂ，３Ｃ，３Ｄ）としているが、これは一例であり、グループ５は複数の携帯端末３で構成されていればその台数は限定されない。また、グループ５を構成する携帯端末３の種類も限定されず、スマートフォンやタブレット端末、ノートパソコン等が混在してもよい。
【００３１】
［１−２．サーバの構成］
図２は、本実施形態に係るサーバ４の電気的構成を示すブロック図である。
【００３２】
本実施形態に係るサーバ４は、サーバ４全体の動作を司る主制御部であるＣＰＵ（Central Processing Unit）２０、各種プログラム及び各種データ等が予め記憶されたＲＯＭ（Read Only Memory）２２、ＣＰＵ２０による各種プログラムの実行時のワークエリア等として用いられるＲＡＭ（Random Access Memory）２４、各種プログラム及び各種データを記憶する記憶手段としてのＨＤＤ（Hard Disk Drive）２６を備えている。
【００３３】
ＨＤＤ２６は、登録されたグループ５に関する情報や、携帯端末３に配信する動画データを記憶する。なお、記憶手段は、ＨＤＤ２６に限らず、例えば、フラッシュメモリ等の半導体メモリ等の他の記憶媒体であってもよい。
【００３４】
さらに、サーバ４は、キーボード及びマウス等で構成されて各種操作の入力を受け付ける操作入力部２８、各種画像を表示する例えば液晶ディスプレイ装置等のモニタ３０、通信回線２を介して携帯端末３等の他の情報処理装置等と接続され、他の情報処理装置等との間で各種データの送受信を行う外部インタフェース３２を備えている。
【００３５】
これらＣＰＵ２０、ＲＯＭ２２、ＲＡＭ２４、ＨＤＤ２６、操作入力部２８、モニタ３０、及び外部インタフェース３２は、システムバス３４を介して相互に電気的に接続されている。従って、ＣＰＵ２０は、ＲＯＭ２２、ＲＡＭ２４、及びＨＤＤ２６へのアクセス、操作入力部２８に対する操作状態の把握、モニタ３０に対する画像の表示、並びに外部インタフェース３２を介した他の情報処理装置等との各種データの送受信等を各々行なうことができる。
【００３６】
［１−３．携帯端末の電気的構成］
図３は、携帯端末３の電気的構成を示す機能ブロック図である。
【００３７】
携帯端末３は、図１に示される構成に加え、主制御部４０、主記憶部４２、補助記憶部４４、通信部４６、及び操作ボタン４８を備える。
【００３８】
主制御部４０は、例えば、ＣＰＵ、マイクロプロセッサ、ＤＳＰ（Digital Signal Processor）等であり、携帯端末３の全体の動作を制御する。
【００３９】
主記憶部４２は、例えば、ＲＡＭやＤＲＡＭ（Dynamic Random Access Memory）等で構成されており、主制御部４０による各種プログラムに基づく処理の実行時のワークエリア等として用いられる。
【００４０】
補助記憶部４４は、例えば、フラッシュメモリ等の不揮発性メモリであり、画像等の各種データ及び主制御部４０の処理に利用されるプログラム等を保存する。補助記憶部４４に記憶されるプログラムは、例えば、携帯端末３の基本的な機能を実現するためのＯＳ（Operating  System）、各種ハードウェアを制御するためのドライバ、電子メールやウェブブラウジング、その他各種機能を実現するためのプログラム等である。また、補助記憶部４４には、サーバ４から配信された動画データを再生してタッチパネルディスプレイ３ａに表示させるためのアプリケーションソフトが予め記憶されている。
【００４１】
通信部４６は、例えばＮＩＣ（Network Interface Controller）であり、通信回線２に接続する機能を有する。なお、通信部４６は、ＮＩＣに代えて又はＮＩＣと共に、無線ＬＡＮ（Local Area Network）に接続する機能、無線ＷＡＮ（Wide Area Network）に接続する機能、例えばBluetooth（登録商標）等の近距離の無線通信、及び赤外線通信等を可能とする機能を有してもよい。
【００４２】
操作ボタン４８は、携帯端末３の側面に設けられ、携帯端末３を起動又は停止させるための電源ボタンやスピーカー３ｂが出力する音のボリューム調整ボタン等である。
【００４３】
これら主制御部４０、主記憶部４２、補助記憶部４４、通信部４６、タッチパネルディスプレイ３ａ、スピーカー３ｂ、マイクロフォン３ｃ、カメラ３ｄ、及び操作ボタン４８は、システムバス４９を介して相互に電気的に接続されている。従って、主制御部４０は、主記憶部４２及び補助記憶部４４へのアクセス、タッチパネルディスプレイ３ａに対する画像の表示、ユーザによるタッチパネルディスプレイ３ａや操作ボタン４８に対する操作状態の把握、マイクロフォン３ｃへの音の入力、スピーカー３ｂからの音の出力、カメラ３ｄに対する制御、及び通信部４６を介した各種通信網や他の情報処理装置へのアクセス等を行える。
【００４４】
［１−４．動画の進行変化］
本実施形態に係るサーバ４は、グループとして登録された複数の携帯端末３へ動画データを配信し、携帯端末３からの入力に応じて、携帯端末３に表示させる動画の進行を変化させる動画配信処理を行う。
【００４５】
図４は、動画の進行変化の態様例を示す模式図である。
【００４６】
図４の例では、動画の進行が変化する分岐（分岐フェーズα，β１，β２，β３，γ）が複数存在する。図４の例では、分岐フェーズαを介して進行Ａから進行Ｂ、分岐フェーズβ１，β２，β３を介して進行Ｂから進行Ｃ、分岐フェーズγを介して進行Ｃから進行Ｄへ分岐する。
【００４７】
なお、一回の分岐による進行変化の数（種類）は限定されない。例えば、進行Ａから進行Ｂに分岐する場合は、４種類（進行Ｂ１〜Ｂ４）に分岐し、進行Ｂ１から進行Ｃに変化する場合は３種類（進行Ｃ１〜Ｃ３）に分岐している。また、他の進行では分岐フェーズが存在する一方で、進行Ｂ３から進行Ｃ５等のように分岐フェーズが存在しない進行を設けてもよい。さらに、進行Ｂ１と進行Ｂ２が進行Ｃ３となる場合や、進行Ｃ１と進行Ｃ２が進行Ｄ１となる場合のように、途中の進行が異なっても、その後の進行が同じになってもよい。
【００４８】
なお、本実施形態に係る動画配信処理は、グループ登録された携帯端末３の全てで、動画の進行を同様に変化させる。
【００４９】
［１−５．本実施形態に係る動作再生ファイルの詳細］
サーバ４が有する動画配信機能は、複数の携帯端末３へ動画データの記憶場所及び再生順序を示す再生順序情報を配信するものである。再生順序情報は、一例として、ＨＬＳ（HTTP Live Streaming）によって表されるものであり、以下、動画再生ファイル５０（図５参照）という。
【００５０】
ＨＬＳは、“.ｍ３ｕ”又は“.ｍ３ｕ８”という拡張子で表現され、ＨＬＳの実体は“.ｔｓ”の拡張子を有する複数のファイル（以下「ｔｓファイル」という。）である。ｔｓファイルは、動画データのパスをテキストで示したものである。すなわち、ｔｓファイルが動画データの記憶場所を示す。なお、ｔｓファイルで示される動画データの記憶場所（パス）は、一例として、ＵＲＬ（Uniform Resource Locator）で表される。そして、ｔｓファイルの並び順（図５の例では上から下方向）が動画データの再生順序を示す。
【００５１】
携帯端末３は、サーバ４から動画再生ファイル５０が配信されると、ｔｓファイルの並び順に沿ってｔｓファイルで表されるパスにアクセスし、動画データを再生する。
【００５２】
図５（Ａ）で示される動画再生ファイル５０であるstory_01.m3uは、一例として、chapter1.ts、chapter2.ts、chapter3.ts、chapter4.tsのように、４つのｔｓファイルで構成される。携帯端末３は、story_01.m3uが配信されると、このｔｓファイルを順番に読み込んで各ｔｓファイルに割り振られたＵＲＬへアクセスして動画データを一つずつ再生する。
【００５３】
このように動画配信においてＨＬＳを用いることによって、本来動画のストリーミング配信に向かないＨＴＴＰ（Hypertext Transfer Protocol）においてもストリーミング配信（疑似ストリーミング配信）が可能となる。
【００５４】
そして、本実施形態に係るサーバ４は、携帯端末３に表示される動画の進行分岐に応じて、他の携帯端末３に配信される動画再生ファイル５０に含まれる記憶場所とは異なる記憶場所を含む動画再生ファイル５０を携帯端末３に配信する。
【００５５】
なお、動画の進行分岐に応じた動画再生ファイル５０は、サーバ４のＨＤＤ２６に予め記憶されていてもよいし、後述するように、サーバ４が携帯端末３から送信される情報に基づいて生成してもよい。
【００５６】
動画の進行分岐に応じて異なる記憶場所を含む動画再生ファイル５０について、図５，６を参照して説明する。
【００５７】
図５（Ａ），（Ｂ）に示される動画再生ファイル５０は、３番目のｔｓファイルのみが異なる。すなわち、３番目のｔｓファイルが動画の進行分岐に対応するものである。このように、本実施形態に係る動画再生ファイル５０により示される動画の記憶場所は、動画の進行分岐に応じて異なるＵＲＬとされる。
【００５８】
なお、本実施形態に係る動画再生ファイル５０は、動画の進行分岐に応じて異なるｔｓファイルであってもその動画の再生時間（長さ）は同じとされている。すなわち、図５（Ａ），（Ｂ）の例では、chapter 3.tsとchapter3_dash.tsとで示される動画の再生時間は同じである。これにより、携帯端末３に応じて動画の進行が途中で異なっても、動画の最終的な終了時間は全ての携帯端末３で同じとなる。
【００５９】
図６は、複数の携帯端末３のうち一部の携帯端末３で異なる動画再生ファイル５０を再生する場合を示す模式図である。図６の例では、携帯端末３Ａ，３Ｂ，３Ｄに同じ動画再生ファイル５０が配信され、携帯端末３Ｃのみに異なる動画再生ファイル５０が配信される。そして、携帯端末３Ａ，３Ｂ，３Ｄに配信される動画再生ファイル５０を図５（Ａ）に示されるものとし、携帯端末３Ｃに配信される動画再生ファイル５０を図５（Ｂ）に示されるものとする。そして、図６に示されるように、「chapter 2」が終了すると、動画の進行が分岐し、携帯端末３Ａ，３Ｂ，３Ｄは「chapter 3」を再生するものの、携帯端末３Ｃのみが「chapter3_dash」を再生する。
【００６０】
なお、本実施形態では、一つの動画は、複数の動画再生ファイル５０によって構成されており、サーバ４は、予め定められた順序で動画再生ファイル５０を携帯端末３に配信する。携帯端末３は、サーバ４から配信された動画再生ファイル５０を記憶し、サーバ４から配信された順序で動画再生ファイル５０により示されるＵＲＬへアクセスして、動画データを再生し、タッチパネルディスプレイ３ａに動画を表示する。
【００６１】
［１−６．サーバの動画配信機能］
【００６２】
図７は、本実施形態に係るサーバ４の動画配信機能に関する機能ブロック図である。
【００６３】
サーバ４が備えるＣＰＵ２０は、グループ登録部６０、ＨＬＳ配信部６２、及びＨＬＳ選択部６４を備える。ＣＰＵ２０が備える各機能は、ＨＤＤ２６に記憶されているプログラムによって実現される。
【００６４】
グループ登録部６０は、至近距離に位置する複数の携帯端末３で構成されるグループ５の登録を受け付ける。
【００６５】
グループ登録部６０は、例えば、携帯端末３を介して携帯端末３の位置情報を取得し、至近距離として予め定められた範囲内（例えば１０ｍ内、以下「至近距離範囲」という。）にある複数の携帯端末３をグループ５として登録する。なお、携帯端末３の位置情報と共に、ユーザＩＤ（identification）も取得される。ユーザＩＤは、ユーザが動画配信サービスを受ける場合に、ログイン画面に入力するＩＤとして用いられる。
【００６６】
至近距離範囲に携帯端末３があるか否かは、例えば、ホストとされた一つの携帯端末３（以下「親端末３Ｍ」という。）を中心として直径１０ｍ以内に位置する携帯端末３が至近距離範囲にあるか否かによって判定される。より具体的には、まず、親端末３Ｍとなる携帯端末３が動画配信サービスに最初にログインすることによって、グループ５の登録が開始され、登録されたグループ５に入る許可申請を他の携帯端末３が行う。他の携帯端末３による許可申請は、親端末３Ｍによって可否が決定されると共に、親端末３Ｍと他の携帯端末３との距離が至近距離範囲内であるか否かがグループ登録部６０によって判定される。なお、親端末３Ｍに対して、他の携帯端末３を子端末３Ｓともいう。
【００６７】
グループ登録部６０は、他の携帯端末３が至近距離範囲内であると判定した場合にのみ、親端末３Ｍの許可に追従して他の携帯端末３がグループ５へ登録されることを許可する。一方、他の携帯端末３が至近距離範囲内でないと判定した場合、グループ登録部６０は、親端末３Ｍが許可しても、他の携帯端末３がグループ５へ登録されることを許可しない。
【００６８】
なお、グループ登録部６０は、携帯端末３の位置情報を取得することなく、ユーザＩＤの登録のみによってグループ５の登録を行ってもよい。この場合、他の携帯端末３による許可申請は、親端末３Ｍによってのみ可否が決定される。
【００６９】
ＨＬＳ配信部６２は、グループ登録された複数の携帯端末３へ動画再生ファイル５０を配信する。なお、一つの動画は、複数の動画再生ファイル５０によって構成されているため、ＨＬＳ配信部６２は、予め定められた順序で動画再生ファイル５０を携帯端末３に配信する。本実施形態に係るＨＬＳ配信部６２は、携帯端末３に表示される動画の進行分岐に応じて、異なる動画データの記憶場所を含む動画再生ファイル５０を携帯端末３に配信する。
【００７０】
ＨＬＳ選択部６４は、携帯端末３に配信する動画再生ファイル５０を選択する。そして、ＨＬＳ選択部６４は、選択した動画再生ファイル５０を携帯端末３に配信させる配信指示をＨＬＳ配信部６２へ出力する。なお、本実施形態に係るＨＬＳ選択部６４は、携帯端末３から送信される動画の進行分岐を示す進行分岐情報をサーバ４が受信した場合に、進行分岐情報に応じた動画再生ファイル５０をＨＤＤ２６から選択し、配信指示をＨＬＳ配信部６２へ出力する。
【００７１】
すなわち、ＨＬＳ配信部６２は、携帯端末３から送信される進行分岐情報に応じて、動画再生ファイル５０を携帯端末３に配信する。なお、進行分岐情報は、一例として、各携帯端末３が各々でサーバ４へ送信してもよいし、グループ登録された各携帯端末３（子端末３Ｓ）が親端末３Ｍを介してサーバ４へ送信してもよい。
【００７２】
また、携帯端末３から送信された進行分岐情報に対応する動画再生ファイル５０がサーバ４のＨＤＤ２６に記憶されていない場合、ＨＬＳ選択部６４は、ＨＬＳ生成手段として機能し、進行分岐情報に対応する動画再生ファイル５０を生成してもよい。
【００７３】
［１−７．携帯端末の動画再生機能］
図８は、本実施形態に係る携帯端末３の動画再生機能に関する機能ブロック図である。
【００７４】
携帯端末３が備える主制御部４０は、動画再生ファイル処理部７０、画像表示制御部７２、進行分岐決定部７４、進行分岐情報送信処理部７６、及び動画再生強制シーク部７８を備える。主制御部４０が備える各機能は、補助記憶部４４に記憶されているプログラムによって実現される。
【００７５】
動画再生ファイル処理部７０は、通信部４６を介してサーバ４から受信した動画再生ファイル５０を主記憶部４２に記憶させる。そして、動画再生ファイル処理部７０は、動画の進行に応じて主記憶部４２に記憶されている動画再生ファイル５０の再生順序毎にｔｓファイルを読み出し、ｔｓファイルが示すＵＲＬにアクセスし、動画データをダウンロード（キャッシュ）する。
【００７６】
なお、動画再生ファイル処理部７０は、重複するｔｓファイルがあり、そのｔｓファイルにより示される動画データを既にダウンロードしている場合、同じ動画データをダウンロードしない。これにより、動画データのダウンロードコストが削減される。
【００７７】
画像表示制御部７２は、画像データに基づいた画像を表示するようにタッチパネルディスプレイ３ａを制御する。本実施形態に係る画像表示制御部７２は、動画再生ファイル処理部７０によってダウンロードされた動画データを再生して、タッチパネルディスプレイ３ａに表示させる。
【００７８】
進行分岐決定部７４は、動画の進行が分岐フェーズに至った場合、進行の分岐先を決定する。なお、本実施形態に係る進行分岐決定部７４は、動画の進行が分岐フェーズに至った場合にユーザによる動画の進行分岐の選択を受け付けるが、これに限られず、携帯端末３に入力される各種情報等に基づいて、自動的に動画の進行分岐を選択してもよい。
【００７９】
進行分岐情報送信処理部７６は、進行分岐決定部７４で決定（選択）された進行の分岐先を示す情報である進行分岐情報を、通信部４６を介してサーバ４へ送信する。
【００８０】
動画再生強制シーク部７８は、動画再生ファイル５０により示される動画データの再生開始タイミングを、グループ登録された複数の携帯端末３で同じとなるように制御（強制シーク）する。より具体的には、動画再生ファイル５０で示される各動画データは再生開始から終了までの時間（以下「予定進行時間」という。）が予め定められており、動画再生強制シーク部７８は、各携帯端末３において動画が再生されてから予定進行時間に達した場合にはその動画データの再生が最後に至っていなくても、次の動画データの再生を強制的に開始する。なお、予定進行時間は、データの通信状態等が正常である場合に、その動画データの再生から終了に至るまでの時間である。
【００８１】
図６を参照して説明すると、携帯端末３Ａ，３Ｂ，３Ｃでは予定進行時間でchapter 1の動画データの再生が完了する一方、携帯端末３Ｄでは何らかの理由で通信状態が悪く、chapter 1の再生が終了していない場合、携帯端末３Ｄの動画再生強制シーク部７８が強制的にchapter 1の再生を終了し、携帯端末３Ａ，３Ｂ，３Ｃと再生開始タイミングが同じとなるようにchapter 2の再生を開始する。なお、予定進行時間を示す情報は、一例として、動画再生ファイル５０と共に、サーバ４から各携帯端末３に配信される。
【００８２】
これにより、グループ登録された複数の携帯端末３において、動画データの再生タイミングを同期させることができる。なお、強制シークを行うために、動画再生ファイル処理部７０は、ｔｓファイルにより示される動画データのダウンロードを先行して行う。例えば、動画再生ファイル処理部７０は、タッチパネルディスプレイ３ａにchapter 1の動画が表示されている状態で、既に少なくともchapter 2を示す動画データのダウンロードを終了する。
【００８３】
なお、強制シークは、サーバ４から送信される指示（以下「強制シーク指示」という。）に応じて行われてもよい。このため、各携帯端末３は、動画の進行に応じて、例えば、各ｔｓファイルで示される動画の再生が終了する毎に当該動画の終了時刻を示す動画終了情報をサーバ４へ送信する。サーバ４は、各携帯端末３からの動画終了情報を比較して、動画の進行に遅れが生じている携帯端末３へ強制シーク指示を送信する。強制シーク指示は、送信対象の携帯端末３における動画の進行が遅れている時間（遅れ時間）を含んでいる。このため、強制シーク指示を受信した携帯端末３は、遅れ時間を解消するように、再生中の動画を強制的に終了し、次の動画データの再生を開始する。
【００８４】
［１−８．本実施形態に係る動画配信処理のフロー］
図９は、サーバ４が備えるＣＰＵ２０によって実行される本実施形態に係る動画配信処理の流れを示すフローチャートである。動画配信処理を実行するためのプログラムはＨＤＤ２６の所定領域に予め記憶されている。動画配信処理は、一例として、サーバ４が動画の再生指示を携帯端末３から受信した場合に実行が開始される。
【００８５】
まず、ステップ１００では、動画は複数の動画再生ファイル５０で構成されるため、次の動画再生ファイル５０の配信タイミングに至ったか否かをＨＬＳ配信部６２が判定し、肯定判定の場合はステップ１０２へ移行する一方、否定判定の場合はステップ１０４へ移行する。
【００８６】
ステップ１０２では、携帯端末３で再生されている動画の進行に応じた所定の動画再生ファイル５０をＨＬＳ選択部６４が選択し、ステップ１１０へ移行する。
【００８７】
ステップ１０４では、進行分岐情報を携帯端末３から受信したか否かをＨＬＳ選択部６４が判定し、肯定判定の場合はステップ１０６へ移行する一方、否定判定の場合はステップ１００へ戻る。
【００８８】
ステップ１０６では、進行分岐情報に応じた動画再生ファイル５０をＨＬＳ選択部６４が選択する。
【００８９】
次のステップ１０８では、携帯端末３への動画再生ファイル５０の配信タイミングに至ったか否かをＨＬＳ配信部６２が判定し、肯定判定の場合はステップ１１０へ移行する。
【００９０】
ステップ１１０では、選択された動画再生ファイル５０をＨＬＳ配信部６２が携帯端末３に配信し、ステップ１００へ戻る。なお、ステップ１１０では、動画の進行分岐に応じた動画再生ファイル５０を配信するタイミングの場合には、ステップ１０６で選択した動画再生ファイル５０を携帯端末３に配信し、そうでない場合には、ステップ１０２で選択した動画再生ファイル５０を携帯端末３に配信する。
【００９１】
以上説明したように、本実施形態に係る動画配信処理は、携帯端末３に表示される動画の進行分岐に応じて、異なる動画データの記憶場所（ＵＲＬ）を含むＨＬＳで示される動画再生ファイル５０をサーバ４が携帯端末３に配信する。このように、サーバ４は、動画の進行分岐が生じても、動画の進行分岐に応じて記憶場所を異ならせた動画再生ファイル５０を携帯端末３に配信するだけであるので、本実施形態に係る動画配信処理は、携帯端末３に応じて進行が異なる動画をＨＴＴＰ通信によって簡易に配信できる。
【００９２】
［１−９．変形例１］
本変形例に係る動画再生ファイル５０は、記憶場所がプロキシ（プロキシサーバ、ＨＴＴＰプロキシ）で表される。このプロキシは、携帯端末３に表示される動画の進行分岐に応じて、異なる動画データの記憶場所（転送先）を示す。
【００９３】
例えば、携帯端末３Ａに配信される動画再生ファイル５０の記憶場所は“プロキシＡ”で表され、携帯端末３Ｂに配信される動画再生ファイル５０の記憶場所は“プロキシＢ”で表され、携帯端末３Ｃに配信される動画再生ファイル５０の記憶場所は“プロキシＣ”で表され、携帯端末３Ｄに配信される動画再生ファイル５０の記憶場所は“プロキシＤ”で表される。
【００９４】
動画の進行が分岐しない場合は、プロキシＡ〜Ｄは転送先である動画の記憶場所として同じ記憶場所を示す。一方、動画の進行が分岐する場合、例えば、携帯端末３Ｃで再生される動画の進行が他の携帯端末３と異なる場合、プロキシＣは他のプロキシＡ，Ｂ，Ｄとは異なる転送先を示す。すなわち、サーバ４は、動画の進行分岐に応じて、プロキシにより示される転送先を変更する。
【００９５】
すなわち、本変形例に係るサーバ４は、動画の進行分岐が生じても、携帯端末３に配信する動画再生ファイル５０の内容を変更しない。その一方で、サーバ４は、動画の進行分岐が生じた場合に、プロキシの転送先を変更する。これにより、動画の進行分岐が生じても携帯端末３へ同じ動画再生ファイル５０を配信し続ければいいので、サーバ４から携帯端末３に配信するための動画再生ファイル５０の選択等に関する処理が簡略化される。
【００９６】
［１−１０．変形例２］
本変形例に係るＨＬＳ配信部６２は、複数の進行分岐に対応可能なように、複数の異なる動画データの記憶場所（ｔｓファイル）を含んだ同じ動画再生ファイル５０を複数の携帯端末３に配信する。そして、携帯端末３は、複数の異なるｔｓファイルのうち、一つを選択して動画データをダウンロードして再生する。
【００９７】
図１０を参照して本変形例を説明する。本変形例に係る動画再生ファイル５０は、chapter 3が進行分岐に対応するものであり、chapter3-1.ts、chapter3-2.ts、及びchapter3-3.tsのように３つのうち何れかに分岐可能とされている。そして、各携帯端末３は、動画の進行分岐に応じて、上記３つのｔｓファイルのうち一つを選択する。これにより、サーバ４は、複数の携帯端末３に対して同じ動画再生ファイル５０を送信すればよく、サーバ４から携帯端末３に配信するための動画再生ファイル５０の選択等に関する処理が簡略化される。
【００９８】
なお、携帯端末３は、進行分岐に対応した複数のｔｓファイルのうち、一つのｔｓファイルにより示される動画データのみをダウンロードするのではなく、複数のｔｓファイルにより示される複数の動画データを予めダウンロードし、ダウンロードした複数の動画データのうち、一つのみを再生してもよい。このように、携帯端末３が、進行分岐に対応して予め複数の動画データをダウンロードすることによって、進行分岐に至る際に通信速度が低下したとしても、途切れることなく動画の再生が可能となる。
【００９９】
［１−１１．変形例３］
本変形例に係るＨＬＳ配信部６２は、同じ動画再生ファイル５０を複数の携帯端末３に配信し、かつ動画の進行分岐に応じた記憶場所を示す情報（以下「分岐動画情報」という。）５２（図１１参照）を対応する携帯端末３に配信する。そして、携帯端末３は、受信した動画再生ファイル５０の進行分岐に対応する記憶場所（ｔｓファイル）を、受信した分岐動画情報５２に応じた記憶場所に置き換える。
【０１００】
より具体的には、ＨＬＳ配信部６２は、複数の携帯端末３に対して同じ動画再生ファイル５０を配信する。さらに、ＨＬＳ配信部６２は、動画の進行分岐に対応した動画の記憶場所を示した分岐動画情報５２を、別途、携帯端末３へ送信する。そして、動画の進行が分岐する携帯端末３、すなわち分岐動画情報５２が配信された携帯端末３は、動画再生ファイル５０において進行分岐に対応するｔｓファイルを、分岐動画情報５２により示されるｔｓファイルに置き換える。
【０１０１】
例えば、図６に示すように携帯端末３Ｃで再生される動画の進行が他の携帯端末３と異なる場合、図１１に示すように携帯端末３Ｃにのみ分岐動画情報５２が配信され、携帯端末３Ｃにおいて動画再生ファイル５０のchapter3.tsがchapter3_dash.tsに置き換えられる。これにより、サーバ４は、複数の携帯端末３に対して同じ動画再生ファイル５０を送信すればよく、サーバ４から携帯端末３に配信するための動画再生ファイル５０の選択等に関する処理が簡略化される。
【０１０２】
［２．第２実施形態］
以下、本発明の第２実施形態について説明する。
【０１０３】
本実施形態に係る動画配信システム１、サーバ４、及び携帯端末３の構成は、図１〜図３に係る第１実施形態に係る動画配信システム１、サーバ４、及び携帯端末３の構成と同様であるので説明を省略する。
【０１０４】
本実施形態に係る動画配信システム１は、グループ登録された複数の携帯端末３のうち、一つを親端末３Ｍ（携帯端末３Ａ）とし他を子端末３Ｓ（携帯端末３Ｂ〜３Ｄ）とする。そして、本実施形態に係る親端末３Ｍは、自身と子端末３Ｓとで再生される動画の進行を同期させる進行同期処理を行う。すなわち、本実施形態に係る進行同期処理は、第１実施形態において説明した強制シークの一例でもある。
【０１０５】
［２−１．本実施形態に係る進行同期処理の概要］
本実施形態に係る動画配信システム１は、進行同期処理を行うために、子端末３Ｓが、自身で再生されている動画の進行状態を示す進行状態情報を親端末３Ｍへ送信する。親端末３Ｍは、進行状態情報に基づいて、自身と子端末３Ｓとで再生される動画の進行を同期させる。
【０１０６】
より具体的には、親端末３Ｍは、自身の進行状態情報及び子端末３Ｓの進行状態情報により示される動画の進行状態を比較して、同期がずれている子端末３Ｓが存在しているか否かを判定する。同期がずれている子端末３Ｓが存在している場合には、親端末３Ｍは、その同期のずれを導出する。同期のずれとは、他の携帯端末３に比べて子端末３Ｓの動画の進行が遅れている場合には、その遅れ時間であり、他の携帯端末３に比べて子端末３Ｓの動画の進行が進んでいる場合には、その進み時間である。なお、動画の進行が同期している場合とは、動画の進行が完全に一致している場合だけでなく、予め定められた時間（例えば１秒程度）以下のずれが生じている場合が含まれてもよい。
【０１０７】
そして、親端末３Ｍは、同期がずれている子端末と同期するように、自身と他の子端末３Ｓにおける動画データの再生を制御する。
【０１０８】
なお、本実施形態に係る親端末３Ｍ及び子端末３Ｓは、第１実施形態と同様に、一例として、ＨＬＳによって表される動画再生ファイル５０がサーバ４から携帯端末３に配信され、動画再生ファイル５０に基づいて携帯端末３が動画データをダウンロードして再生する。このため、本実施形態に係る親端末３Ｍは、自身と子端末３Ｓとで再生される動画の進行が同期するように、動画再生ファイル５０により示される所定の動画データであるバッファ動画データの再生を制御する。
【０１０９】
図１２は、本実施形態に係る動画再生ファイル５０の一例を示す模式図である。図１２においてchapter3_buffer.tsで示されるｔｓファイルが示す動画データは、親端末３Ｍと子端末３Ｓとで動画の進行を同期させるために再生が制御されるものであり、バッファ動画データである。バッファ動画データは、詳細を後述するように、再生が繰り返されたり、再生が行われなくても、物語の理解に影響のない動画を示すデータである。この動画は、例えば、人物や物（例えば自動車）が移動する場面や風景のみの場面の動画である。図１２の例では、動画再生ファイル５０にバッファ動画データが一つのみ含まれているが、これは一例であり、バッファ動画データは一つの動画再生ファイル５０に複数含まれてもよい。
【０１１０】
［２−１−１．子端末の再生が遅れている場合］
親端末３Ｍは、一部の子端末３Ｓにおける動画の進行が遅れている場合、自身と他の子端末３Ｓで再生される動画の進行を遅延させる。
【０１１１】
本実施形態に係るバッファ動画データは、繰り返し再生（以下「ループ再生」という。）されるものであり、本実施形態に係る進行同期処理では、一例として、バッファ動画データの繰り返し数を増加させることで、動画の進行を遅延させる。すなわち、本実施形態に係る進行同期処理は、子端末３Ｓにおける動画の進行の遅れに応じて、親端末３Ｍや他の子端末３Ｓのバッファ動画データを再生の制御対象とし、バッファ動画データのループ再生させる回数を増加させる。なお、バッファ動画データは、例えば、１秒の動画を１０回ループ再生するように予め設定されており、動画の進行を遅延させる場合には、このループ再生回数を増加させることになる。
【０１１２】
これにより、動画配信システム１は、親端末３Ｍや他の子端末３Ｓにおける動画の進行を強制的に遅延させ、グループ登録された携帯端末３で再生される動画の進行を同期させることになる。
【０１１３】
本実施形態に係る進行同期処理について、図１３を参照して説明する。図１３（Ａ）は、動画の進行に遅れがない場合である。図１３（Ｂ）は、一部の子端末３Ｓに動画の進行に遅れがある場合であり、一例として、chapter 2に遅れが生じている。
【０１１４】
図１３（Ｃ）は、動画の進行を強制的に遅延させる場合であり、親端末３Ｍは、動画の進行に遅れが生じていない自身と子端末３Ｓにおけるchapter 4の再生開始タイミングが、動画の進行に遅れがある子端末３Ｓのchapter 4の再生開始タイミングと同期するように、chapter 2の後に再生されるバッファ動画データのループ再生回数を増加させる。これにより、図１３（Ｂ），（Ｃ）に表されるように、遅れがある子端末３Ｓと親端末３Ｍ及び他の子端末３Ｓとで、バッファ動画データの後に再生される動画（chapter 4）の再生開始のタイミングが一致、すなわち同期することになる。
【０１１５】
すなわち、親端末３Ｍは、バッファ動画データの後に再生される動画データの再生開始タイミングがグループ登録された複数の携帯端末３で同期するように、バッファ動画データの再生を制御する。これにより、動画配信システム１は、複数の携帯端末３に動画を配信して複数のユーザが同時に動画視聴を行う場合に、各携帯端末３における動画の再生を簡易に同期できる。
【０１１６】
なお、ループ再生回数の増加数は、親端末３Ｍ及び子端末３Ｓの進行状態情報に基づいて、親端末３Ｍが判定する。すなわち、親端末３Ｍが、動画の進行が遅れている子端末３Ｓと、親端末３Ｍ及び他の子端末３Ｓの動画の進行状態（遅れ時間）の差に基づいてループ再生回数の増加数を決定する。例えば、バッファ動画データによる動画の再生時間が１秒であって、遅れ時間が５秒の場合には、この遅れ時間を解消するためにバッファ動画データのループ再生回数が５回増加される。
【０１１７】
そして、親端末３Ｍは、動画の進行を遅延させる子端末３Ｓに対して、バッファ動画データのループ再生回数を示した動画再生指示情報を送信する。親端末３Ｍは、自身に対応するように生成した動画再生指示情報に応じて、動画の進行を遅延させる。
【０１１８】
ループ再生回数の決定は、バッファ動画データの再生が開始した後に行われてもよいし、バッファ動画データの再生開始前に、バッファ動画データの再生時における動画の進行の遅れを推測して行われてもよい。また、動画の進行に遅れが生じている子端末３Ｓが複数存在する場合、動画再生指示情報により示されるループ再生回数は、親端末３Ｍや子端末３Ｓに応じて異なる。
【０１１９】
また、親端末３Ｍは、バッファ動画データをループ再生させず、バッファ動画データの再生速度を予め設定された再生速度よりも遅くすることで、動画の進行を遅延させてもよい。予め設定された再生速度は、通常の動画視聴が行われる場合の再生速度（×１倍）である。この場合、親端末３Ｍは、バッファ動画データの後に再生される動画データの再生開始タイミングが、グループ登録されている携帯端末３で同期するように、バッファ動画データの再生速度を低下させることになる。
【０１２０】
［２−１−２．子端末の再生が進行している場合］
親端末３Ｍは、一部の子端末３Ｓにおける動画の進行が進んでいる場合、自身と他の子端末３Ｓで再生される動画の進行を促進させる。
【０１２１】
この場合、親端末３Ｍは、バッファ動画データのループ再生回数を減少させる、又はバッファ動画データの再生速度を予め設定された再生速度よりも速くすることで、自身と他の子端末３Ｓで再生される動画の進行を促進させる。この場合、親端末３Ｍは、バッファ動画データの後に再生される動画データの再生開始タイミングがグループ登録された携帯端末３で同期するように、バッファ動画データの再生を制御することになる。また、親端末３Ｍは、バッファ動画データの再生を行わなかったり、途中で停止して次の動画データを再生させることで、自身と他の子端末３Ｓで再生される動画の進行を促進させてもよい。
【０１２２】
［２−１−３．動画の進行が同期している場合］
親端末３Ｍは、自身と子端末３Ｓとで動画の進行が同期している場合、バッファ動画データの再生を行わない。
【０１２３】
そもそも、バッファ動画データは、動画の進行に影響を与えない動画を示したものである。このため、グループ登録された複数の携帯端末３における動画の進行が同期している場合、親端末３Ｍは、バッファ動画データの再生を行わずに次の動画データの再生を行うことを示す動画再生指示情報を子端末３Ｓへ送信する。これにより、グループ登録された携帯端末３で再生される動画の進行が冗長とならずに、よりスムーズに行われる。
【０１２４】
［２−２．携帯端末の動画再生同期機能］
図１４は、本実施形態に係る携帯端末３の動画再生同期機能に関する機能ブロック図である。携帯端末３が備える主制御部４０は、進行状態情報送信処理部８０、進行状態情報受信処理部８２、動画進行状態判定部８４、動画再生指示生成部８６、動画再生指示送信処理部８８、動画再生指示受信処理部９０、及び動画再生制御部９２を備える。主制御部４０が備える各機能は、補助記憶部４４に記憶されているプログラムによって実現される。
【０１２５】
なお、子端末３Ｓは、進行状態情報送信処理部８０、動画再生指示受信処理部９０、及び動画再生制御部９２が機能する一方、進行状態情報受信処理部８２、動画進行状態判定部８４、動画再生指示生成部８６、及び動画再生指示送信処理部８８は機能しない。また、親端末３Ｍでは、動画再生指示受信処理部９０は機能しない。
【０１２６】
進行状態情報送信処理部８０は、自身で再生されている動画の進行状態を示す進行状態情報を生成する。進行状態情報は、一例として、各ｔｓファイルで示される動画データの再生が終了すると共に生成され、その内容は例えば最初のｔｓファイルの再生からの経過時間である。そして、子端末３Ｓは、生成した進行状態情報を通信部４６を介して親端末３Ｍへ送信する。親端末３Ｍは、生成した進行状態情報を主記憶部４２に記憶する。
【０１２７】
進行状態情報受信処理部８２は、親端末３Ｍで機能するものであり、子端末３Ｓから送信された進行状態情報を通信部４６を介して受信し、主記憶部４２に記憶する。
【０１２８】
動画進行状態判定部８４は、親端末３Ｍで機能するものであり、主記憶部４２に記憶されている携帯端末３（親端末３Ｍと子端末３Ｓ）の進行状態情報に基づいて、子端末３Ｓにおける動画の進行のずれ（遅れ又は進み）を判定する。
【０１２９】
動画再生指示生成部８６は、親端末３Ｍで機能するものであり、動画進行状態判定部８４による判定結果に基づいて、グループ登録された携帯端末３（親端末３Ｍと子端末３Ｓ）で動画の進行が同期するように動画再生指示を生成する。具体的には、動画再生指示生成部８６は、自身及び各子端末３Ｓ毎に、グループ登録された携帯端末３で動画の進行が同期するように、バッファ動画データの再生を制御するための動画再生指示を生成する。
【０１３０】
動画再生指示送信処理部８８は、親端末３Ｍで機能するものであり、動画再生指示生成部８６によって生成された動画再生指示を各子端末３Ｓへ通信部４６を介して送信する。
【０１３１】
動画再生指示受信処理部９０は、子端末３Ｓで機能するものであり、親端末３Ｍから送信された動画再生指示を通信部４６を介して受信し、主記憶部４２に記憶する。
【０１３２】
動画再生制御部９２は、動画再生指示に基づいて、動画再生ファイル５０により示される動画データを再生する。
【０１３３】
［２−３．動画再生同期処理のフロー］
図１５は、親端末３Ｍが備える主制御部４０によって実行される本実施形態に係る動画再生同期処理の流れを示すフローチャートである。動画再生同期処理を実行するためのプログラムは補助記憶部４４の所定領域に予め記憶されている。図１５に示される動画再生同期処理は、一例として、動画再生ファイル５０により示される動画データの再生開始と共に実行が開始される。
【０１３４】
まず、ステップ２００では、グループ登録された全ての子端末３Ｓから進行状態情報を受信したか否かを動画進行状態判定部８４が判定し、肯定判定の場合はステップ２０２へ移行する。
【０１３５】
ステップ２０２では、全ての子端末３Ｓと自身の進行状態情報に基づいて、動画の進行のずれを動画進行状態判定部８４が判定する。
【０１３６】
次のステップ２０４では、子端末３Ｓにおける動画の進行同期にずれがあるか否かを動画進行状態判定部８４が判定し、肯定判定の場合はステップ２０６へ移行する一方、否定判定の場合はステップ２１２へ移行する。
【０１３７】
ステップ２０６では、子端末３Ｓにおける動画の進行が遅れているか否かを判定し、肯定判定の場合はステップ２０８へ移行する一方、否定判定の場合はステップ２１０へ移行する。なお、ステップ２１０に移行する場合とは、子端末３Ｓにおける動画の進行が進んでいる場合である。
【０１３８】
ステップ２０８では、動画の進行を遅延させることを示した動画再生指示を子端末３Ｓ及び親端末３Ｍ毎に動画再生指示生成部８６が生成し、生成した動画再生指示を動画再生指示送信処理部８８が子端末３Ｓへ送信し、ステップ２００へ戻る。なお、各携帯端末３は、動画再生指示に基づいて、バッファ動画データの再生を制御する。
【０１３９】
ステップ２１０では、動画の進行を促進させることを示した動画再生指示を子端末３Ｓ及び親端末３Ｍ毎に動画再生指示生成部８６が生成し、生成した動画再生指示を動画再生指示送信処理部８８が子端末３Ｓへ送信し、ステップ２００へ戻る。なお、各携帯端末３は、動画再生指示に基づいて、バッファ動画データの再生を制御する。
【０１４０】
ステップ２０４で否定判定となった場合に移行するステップ２１２では、グループ登録された携帯端末３で動画の進行にずれがないため、バッファ動画データを再生させないことを示した動画再生指示を動画再生指示生成部８６が生成する。そして、生成した動画再生指示を動画再生指示送信処理部８８が子端末３Ｓへ送信し、ステップ２００へ戻る。なお、各携帯端末３は、動画再生指示に基づいて、バッファ動画データを再生することなく、バッファ動画データの次の動画データを再生する。
【０１４１】
以上説明したように、本実施形態に係る動画配信システム１は、グループ登録された複数の携帯端末３のうち、一つの携帯端末３を親端末３Ｍとし、他の携帯端末３を子端末３Ｓとし、親端末３Ｍが、自身と子端末３Ｓとで再生される動画の進行を同期させる。これにより、動画配信システム１は、複数の携帯端末３に動画を配信して複数のユーザが同時に動画視聴を行う場合に、各携帯端末３における動画の再生を簡易に同期できる。
【０１４２】
［２−４．変形例］
本変形例に係る親端末３Ｍは、一部の子端末３Ｓにおける動画の進行が遅れている場合、この一部の子端末３Ｓで再生される動画の進行を促進させるように動画再生指示を一部の子端末３Ｓに送信する。この形態の場合、一部の子端末３Ｓでは、親端末３Ｍにおける動画の進行状態と同期するように、バッファ動画データのループ再生回数が減少される、又はバッファ動画データの再生速度が予め設定された再生速度よりも速くされる。
【０１４３】
また、親端末３Ｍは、一部の子端末３Ｓにおける動画の進行が進んでいる場合、この一部の子端末３Ｓで再生される動画の進行を遅延させるように動画再生指示を一部の子端末３Ｓに送信する。この形態の場合、一部の子端末３Ｓでは、親端末３Ｍにおける動画の進行状態と同期するように、バッファ動画データのループ再生の繰り返し数が増加される、又はバッファ動画データの再生速度が予め設定された再生速度よりも遅くされる。
【０１４４】
また、バッファ動画データとされる動画データは、複数設けられ、その再生が制御される優先順位が予め定められてもよい。例えば、一つのバッファ動画データに対する再生制御だけでは、グループ登録されている携帯端末３における動画の進行を同期できない場合には、動画の進行が同期するように優先順位の高い順から再生制御が行われる。
【０１４５】
さらに、バッファ動画データは、携帯端末３に記憶され、動画の進行同期のために適宜再生制御されてもよい。例えば、バッファ動画データとされる動画データのＵＲＬが、最初に配信される動画再生ファイル５０で示され、それを携帯端末３がダウンロード（キャッシュ）する。携帯端末３は、その後に配信される動画再生ファイル５０にバッファ動画データを示す記憶場所（ＵＲＬ）が含まれていなくても、ダウンロードしたバッファ動画データを動画の進行同期のために適宜、再生制御する。
【０１４６】
［３．第３実施形態］
以下、本発明の第３実施形態について説明する。
【０１４７】
本実施形態に係る動画配信システム１、サーバ４、及び携帯端末３の構成は、図１〜図３に係る第１実施形態に係る動画配信システム１、サーバ４、及び携帯端末３の構成と同様であるので説明を省略する。
【０１４８】
本実施形態に係る動画配信システム１は、グループ登録された携帯端末３毎に、動画の再生開始からの継時時間を計測する。そして、各携帯端末３は、再生された動画の実際の進行時間である実進行時間が予定された進行時間である予定進行時間と異なる場合に、実進行時間が予定進行時間に一致するように動画データの再生を制御する進行同期処理を行う。すなわち、本実施形態に係る進行同期処理は、第１実施形態において説明した強制シークの一例でもある。
【０１４９】
［３−１．本実施形態に係る進行同期処理の概要］
本実施形態に係る携帯端末３は、第２実施形態と同様に、一例としてＨＬＳによって表される動画再生ファイル５０がサーバ４から携帯端末３に配信され、動画再生ファイル５０に基づいて携帯端末３が動画データをダウンロードして再生する。そして、動画再生ファイル５０には、第２実施形態と同様に、バッファ動画データを示すｔｓファイルが含まれる。なお、バッファ動画データは、予め定められた回数繰り返し再生（ループ再生）されるように設定されており、バッファ動画データは、例えば、１秒の動画を１０回ループ再生するように予め設定されている。
【０１５０】
各携帯端末３は、実進行時間が予定進行時間に一致するように、動画再生ファイル５０により示されるバッファ動画データの再生を制御する。
【０１５１】
ここで、予定進行時間と実進行時間とについて具体的に説明する。予定進行時間は、動画データ（動画再生ファイル５０）に予め設定されており、動画の再生に遅れがない場合における動画の再生開始からの継時時間である。すなわち、予定進行時間は、動画を再生する携帯端末３にかかわらず同じである。一方、実進行時間は、実際の再生開始からの継時時間であり、動画の再生が遅れている場合にはその遅れが反映される。すなわち、実進行時間は、動画を再生する携帯端末３毎に異なる可能性がある。
【０１５２】
そして、実進行時間と予定進行時間との差異が、各携帯端末３における動画の進行の遅れ時間となる。携帯端末３は、この遅れ時間を解消するように、バッファ動画データの再生を制御する。なお、実進行時間と予定進行時間が一致する場合は、動画の進行に遅れがない場合である。
【０１５３】
本実施形態に係る進行同期処理について、図１６を参照して説明する。図１６（Ａ）は、動画再生開始からの予定進行時間を示した模式図であり、動画の進行に遅れがない場合は、予定進行時間と実進行時間とが一致する。なお、本実施形態に係る予定進行時間及び実進行時間は、一例として、図１６に示されるように動画の再生開始から各ｔｓファイルで示される動画データの再生終了までの時間とする。図１６（Ｂ）は、動画の進行に遅れがある場合であり、一例として、chapter 2に遅れが生じており、予定進行時間２と実進行時間２との差異が動画の進行の遅れ時間となる。
【０１５４】
携帯端末３は、この遅れ時間を解消するように、chapter 2の後に再生されるバッファ動画データの再生を制御する。より具体的には、実進行時間が予定進行時間に一致するように、バッファ動画データのループ再生回数を予め定められた回数よりも減少させる。例えば、遅れ時間が５秒の場合には、再生時間が１秒とされるバッファ動画データのループ再生回数を５回少なくする。
【０１５５】
これにより、バッファ動画データの終了時における実進行時間３が予定進行時間３と一致する。さらに、その後のchapter 4に遅れが生じない場合には、実進行時間４と予定進行時間４とが一致する。
【０１５６】
なお、本実施形態に係る携帯端末３は、グループ登録された複数の携帯端末３で動画の再生開始タイミングを合わせる。そして、グループ登録された各携帯端末３が、各々で再生する動画の実進行時間が予定進行時間に一致するようにバッファ動画データの再生を制御するので、結果的に、各携帯端末３で動画の進行が同期することになる。
【０１５７】
なお、本実施形態に係る再生開始タイミングは、一例として、親端末３Ｍにおける動画の再生開始タイミングに合わせられる。すなわち、子端末３Ｓは、親端末３Ｍから動画の再生開始タイミングを示す進行状態情報を受信し、この再生開始タイミングに合わせて、動画の再生を開始する。
【０１５８】
また、本実施形態に係る携帯端末３は、自身で再生されている動画の進行状態を示す進行状態情報を生成し、グループ登録された他の携帯端末３へ送信する。この進行状態情報には、自身で再生されている動画の遅れ時間が含まれている。
【０１５９】
そして、本実施形態に係る携帯端末３は、グループ登録された複数の携帯端末３の全てで、実進行時間が予定進行時間に一致している場合、再生の制御対象とされるバッファ動画データの再生を行わない。これにより、グループ登録された携帯端末３で再生される動画の進行がよりスムーズに行われる。
【０１６０】
［３−２．携帯端末の動画再生同期機能］
図１７は、本実施形態に係る携帯端末３の動画再生同期機能に関する機能ブロック図である。携帯端末３が備える主制御部４０は、実進行時間計測部１００、進行遅れ判定部１０２、動画再生制御部１０４、及び進行状態情報処理部１０６を備える。主制御部４０が備える各機能は、補助記憶部４４に記憶されているプログラムによって実現される。
【０１６１】
実進行時間計測部１００は、動画の再生開始からの継時時間を計測する。
【０１６２】
進行遅れ判定部１０２は、再生された動画の実進行時間が予定進行時間と一致しているか否かを判定し、一致していない場合はそのずれである遅れ時間を導出する。
【０１６３】
動画再生制御部１０４は、進行遅れ判定部１０２により導出された遅れ時間を解消するように、すなわち実進行時間が予定進行時間に一致するようにバッファ動画データの再生を制御する。また、動画再生制御部１０４は、グループ登録された他の携帯端末３から送信される進行状態情報に基づいて、バッファ動画データの再生の有無を決定する。
【０１６４】
進行状態情報処理部１０６は、自身で再生される動画の進行状態、すなわち遅れ時間を進行状態情報として通信部４６を介して他の携帯端末３へ送信し、他の携帯端末３から受信した進行状態情報を主記憶部４２へ記憶する。
【０１６５】
［３−３．動画再生同期処理のフロー］
図１８は、携帯端末３が備える主制御部４０によって実行される本実施形態に係る動画再生同期処理の流れを示すフローチャートである。動画再生同期処理を実行するためのプログラムは補助記憶部４４の所定領域に予め記憶されている。図１８に示される動画再生同期処理は、一例として、動画再生ファイル５０により示される動画データの再生開始と共に実行が開始される。
【０１６６】
まず、ステップ３００では、動画再生ファイル５０により示される動画の再生を動画再生制御部１０４が行い、実進行時間の計測タイミングに至ったか否かを実進行時間計測部１００が判定し、肯定判定の場合はステップ３０２へ移行する。
【０１６７】
ステップ３０２では、実進行時間を実進行時間計測部１００が計測する。なお、実進行時間が計測される毎に、進行状態情報処理部１０６は、実進行時間と予定進行時間との差異（遅れ時間）を進行状態情報として他の携帯端末３へ送信する。
【０１６８】
ステップ３０４では、バッファ動画データの再生タイミングに至ったか否かを動画再生制御部１０４が判定し、肯定判定の場合はステップ３０６へ移行する一方、否定判定の場合はステップ３００へ戻る。
【０１６９】
次のステップ３０６では、実進行時間と予定進行時間とが一致するか否かを進行遅れ判定部１０２が判定し、否定判定の場合はステップ３０８へ移行する一方、肯定判定の場合はステップ３１０へ移行する。
【０１７０】
ステップ３０８では、動画進行の遅れ時間を解消するように、動画再生制御部１０４がバッファ動画データの再生を制御する。
【０１７１】
一方、ステップ３０６で肯定判定となった場合に移行するステップ３１０では、他の携帯端末３から送信された進行状態情報に基づいて、動画の進行に遅れがある他の携帯端末３が存在するか否かを動画再生制御部１０４が判定する。そして、肯定判定の場合はステップ３１２へ移行する一方、否定判定の場合はステップ３１４へ移行する。
【０１７２】
ステップ３１２は、動画再生制御部１０４がバッファ動画データを所定回数でループ再生することで、自身における動画の進行を遅れがある他の携帯端末３と同じとし、ステップ３００へ移行する。
【０１７３】
ステップ３１４では、動画再生制御部１０４がバッファ動画データの再生を行わずに、ステップ３００へ戻る。
【０１７４】
以上説明したように、本実施形態に係るグループ登録された各携帯端末３は、動画の再生開始からの継時時間を計測し、再生された動画の実進行時間が予定進行時間と異なる場合に、実進行時間が予定進行時間に一致するように動画データの再生を制御する。これにより、複数のユーザが同時に動画視聴を行う場合に、各携帯端末３における動画の再生が簡易に同期される。
【０１７５】
［３−４．変形例］
本変形例に係る携帯端末３は、実進行時間が予定進行時間に一致するように、バッファ動画データの再生速度を予め設定された再生速度よりも速くする。この変形例の場合、バッファ動画データは、ループ再生されることなく、１回の再生が終了後に次のｔｓファイルにより示される動画データの再生が開始される。このために、動画再生制御部１０４は、実進行時間と予定進行時間とが一致するように、バッファ動画データの再生速度を算出し、算出した再生速度でバッファ動画データを再生させる。
【０１７６】
さらに、他の変形例として携帯端末３は、実進行時間が予定進行時間に一致するように、バッファ動画データの再生を途中で停止、又はバッファ動画データの再生を行わないとしてもよい。この変形例の場合、遅れ時間がバッファ動画データの再生時間よりも長い場合には、バッファ動画データの再生が行われない。また、遅れ時間に相当する時間を再生しないように、バッファ動画データの再生が途中で停止される。
【０１７７】
［４．他の実施形態］
以上、本発明を、上記各実施形態を用いて説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。発明の要旨を逸脱しない範囲で上記各実施形態に多様な変更又は改良を加えることができ、該変更又は改良を加えた形態も本発明の技術的範囲に含まれる。また、上記各実施形態を適宜組み合わせてもよい。
【０１７８】
また、上記各実施形態においてサーバ４が行っていた処理の一部を、動画が配信される携帯端末３で行う形態としてもよい。
【０１７９】
また、上記各実施形態で説明した各フローで説明した各種処理の流れも一例であり、本発明の主旨を逸脱しない範囲内において不要なステップを削除したり、新たなステップを追加したり、処理順序を入れ替えたりしてもよい。
【符号の説明】
【０１８０】
１    情報処理システム（動画配信システム）
３    携帯端末（情報処理端末）
３Ｍ  親端末
３Ｓ  子端末
５    グループ
【図１】
2019075605.tif 000003
【図２】
2019075605.tif 000004
【図３】
2019075605.tif 000005
【図４】
2019075605.tif 000006
【図５】
2019075605.tif 000007
【図６】
2019075605.tif 000008
【図７】
2019075605.tif 000009
【図８】
2019075605.tif 000010
【図９】
2019075605.tif 000011
【図１０】
2019075605.tif 000012
【図１１】
2019075605.tif 000013
【図１２】
2019075605.tif 000014
【図１３】
2019075605.tif 000015
【図１４】
2019075605.tif 000016
【図１５】
2019075605.tif 000017
【図１６】
2019075605.tif 000018
【図１７】
2019075605.tif 000019
【図１８】
2019075605.tif 000020