JP2008096756A - 多画面表示システムおよびその表示方法 - Google Patents

多画面表示システムおよびその表示方法 Download PDF

Info

Publication number
JP2008096756A
JP2008096756A JP2006279307A JP2006279307A JP2008096756A JP 2008096756 A JP2008096756 A JP 2008096756A JP 2006279307 A JP2006279307 A JP 2006279307A JP 2006279307 A JP2006279307 A JP 2006279307A JP 2008096756 A JP2008096756 A JP 2008096756A
Authority
JP
Japan
Prior art keywords
client
information
moving image
piece
display device
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
Application number
JP2006279307A
Other languages
English (en)
Inventor
Yoichi Kuge
洋一 久下
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP2006279307A priority Critical patent/JP2008096756A/ja
Publication of JP2008096756A publication Critical patent/JP2008096756A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Transforming Electric Information Into Light Information (AREA)

Abstract


【課題】 時間が経過しても各表示装置に表示される動画像の同期を維持することができる多画面表示システムおよびその表示方法を提供する。
【解決手段】 主クライアントであるクライアントA20Aは、タイムスタンプを受信するマルチキャストIP/ポート番号を、分割ファイルを再生する副クライアントに通知する。クライアントA20Aは、再生するコンテンツのPCR/SCRのタイムスタンプをマルチキャストIP/ポートで送信する。分割ファイルを再生する主クライアントおよび副クライアントは、主クライアントから送信されるタイムスタンプをマルチキャストIP/ポートから受信し、受信したタイムスタンプと、自クライアントの記録部23に記憶されている再生すべきコンテンツの各フレームのタイムスタンプとを比較し、受信したタイムスタンプと同じタイムスタンプを持つフレームを再生する。
【選択図】 図1

Description

本発明は、複数の表示装置から構成される多画面表示システムおよびその表示方法に関する。
近年、インフォメーションディスプレイあるいは業務用ディスプレイなどに、45インチあるいは60インチなどの大型の画面が用いられている。さらに講演会場用あるいは映画館用には、複数たとえば4台あるいは9台のディスプレイを隣接配置してより大きな画面とし、1つの映像を表示するように構成した多画面表示システムがある。
大画面を構成する複数のディスプレイは、たとえばCOM(Communication)ポートでシリアルに接続され、サーバからのDVI(Digital Visual Interface)信号によって、個々のディスプレイへの映像信号が供給される。あるいはLAN(Local Area Network)
によって接続され、サーバからストリーミングの形態で個々の映像が供給される。複数のディスプレイを用いるので、画像の同期を取る必要がある。
画像の同期を取るための第1の従来の技術として、複数の映像拡大装置の各画面を同期して表示させる多画面表示装置がある。この多画面表示装置は、1台のシステムコントローラと、そのシステムコントローラからの制御信号によって複数の映像ソースのうちの一つを選択してそれぞれ出力する複数の映像拡大装置を含む。複数の映像拡大装置は、1台のマスタ映像拡大装置と、複数のスレーブ映像拡大装置とから構成される。システムコントローラから自動運転プログラムが各映像拡大装置に送信されると、マスタ映像拡大装置は、スレーブ映像拡大装置に起動のタイミングを送信する。各スレーブ映像拡大装置は、その起動のタイミングによって自動運転プログラムに従って起動される。プログラム終了後、マスタ映像拡大装置からスレーブ映像拡大装置に停止のタイミングが送信され、全映像拡大装置が停止する(たとえば特許文献1参照)。
第2の従来の技術として、情報を表示する複数の表示装置を並べて構成する多画面表示装置がある。この多画面表示装置は、複数の表示装置と、それらを制御する外部制御装置とから構成される。外部制御装置は、外部制御装置から各表示装置に順次指示する表示の切換信号の時間差に相当するそれぞれの表示遅れ時間を、各表示装置に指示する。各表示装置は、指示された表示遅れ時間をタイマにセットし、タイマの割り込み信号によって表示切換を行う(たとえば特許文献2参照)。
特開平2−304593号公報 特開平8−221042号公報
しかしながら、第1の従来の技術は、システムコントローラからの指示によって表示を開始するものであり、システムコントローラからの指示がないと表示が開始されない。さらに、再生を開始するタイミングで同期は取れるが、時間の経過とともにずれが生じるという問題がある。
第2の従来の技術は、各表示装置は、外部制御装置からそれぞれ指示された表示遅れ時間をタイマにセットしておいて、外部制御装置からの切換信号を契機とするタイマの割り込み信号によって表示切換を行うので、表示の切換を行う時間間隔は、その表示遅れ時間以上の時間を確保する必要があり、動画像には適用することができないという問題がある。
本発明の目的は、時間が経過しても各表示装置に表示される動画像の同期を維持することができる多画面表示システムおよびその表示方法を提供することである。
本発明は、予め定めるデータ単位毎に、時系列順で再生されるべきタイミングを表すタイミング情報が付される動画像情報を記憶する記憶手段と、記憶手段から動画像情報を読み出して画像として表示再生する表示手段と、表示再生すべき動画像情報から時系列順にタイミング情報を抽出する抽出手段と、動画像情報の再生を指示する指示手段と、通信回線を介して、少なくともタイミング情報を送受信する送受信手段とをそれぞれ有する複数の表示装置を含み、
複数の表示装置の送受信手段は、通信回線を介して相互に接続され、
複数の表示装置のうちいずれかの表示装置が有する指示手段によって動画像情報の再生が指示されると、この指示手段を有する表示装置では、表示再生すべき動画像情報から抽出手段によって時系列順にタイミング情報を順次抽出し、抽出したタイミング情報を送受信手段によって順次送信し、
各表示装置は、送受信手段によってタイミング情報を受信すると、それぞれの表示装置で、表示手段が記憶手段に記憶される動画像情報うち、受信したタイミング情報に応じたタイミング情報が付された部分を読み出して画像として表示再生することを特徴とする多画面表示システムである。
本発明に従えば、記憶手段によって、予め定めるデータ単位毎に、時系列順で再生されるべきタイミングを表すタイミング情報が付される動画像情報が記憶され、表示手段によって、記憶手段から動画像情報が読み出されて画像として表示再生され、抽出手段によって、表示再生すべき動画像情報から時系列順にタイミング情報が抽出され、指示手段によって、動画像情報の再生が指示され、送受信手段によって、通信回線を介して、少なくともタイミング情報が送受信される複数の表示装置を含む多画面表示システムで動画像を表示再生するにあたって、各送受信手段によって、複数の表示装置が通信回線を介して相互に接続され、複数の表示装置のうちいずれかの表示装置が有する指示手段によって動画像情報の再生が指示されると、この指示手段を有する表示装置によって、表示再生すべき動画像情報から抽出手段によって時系列順にタイミング情報が順次抽出され、抽出されたタイミング情報が送受信手段によって順次送信される。さらに、各表示装置によって、送受信手段によってタイミング情報が受信されると、それぞれの表示装置で、表示手段によって、記憶手段に記憶される動画像情報うち、受信されたタイミング情報に応じたタイミング情報が付された部分が読み出されて画像として表示再生されるので、動画像情報の再生が指示された表示装置からのタイミング情報によって、各表示装置は継続して同期を合わせることができ、時間が経過しても、各表示装置に表示される動画像の同期を維持することができる。
また本発明は、前記複数の表示装置は、主表示装置と副表示装置とを含み、
主表示装置が有する指示手段によって動画像情報の再生が指示されると、主表示装置では、表示再生すべき動画像情報から抽出手段によって時系列順にタイミング情報を順次抽出し、抽出したタイミング情報を送受信手段によって順次送信し、
主表示装置および副表示装置は、送受信手段によってタイミング情報を受信すると、表示手段が記憶手段に記憶される動画像情報のうち、受信したタイミング情報に応じたタイミング情報が付された部分を読み出して画像として表示再生することを特徴とする。
本発明に従えば、前記複数の表示装置は、主表示装置と副表示装置とを含み、主表示装置が有する指示手段によって動画像情報の再生が指示されると、主表示装置によって、表示再生すべき動画像情報から抽出手段によって時系列順にタイミング情報が順次抽出され、抽出されたタイミング情報が送受信手段によって順次送信され、主表示装置および副表示装置によって、送受信手段によってタイミング情報が受信されると、表示手段によって、記憶手段に記憶される動画像情報のうち、受信したタイミング情報に応じたタイミング情報が付された部分が読み出されて画像として表示再生されるので、再生を開始する前に、表示装置以外の装置たとえばサーバなどによって主表示装置を選択しておくことができる。
また本発明は、前記副表示装置が有する指示手段によって動画像情報の再生が指示されると、この指示手段を有する副表示装置では、動画像情報の再生の指示を表す再生指示情報を送受信手段によって前記主表示装置に送信し、
主表示装置では、送受信手段によって再生指示情報を受信すると、表示再生すべき動画像情報から抽出手段によって時系列順にタイミング情報を順次抽出し、抽出したタイミング情報を送受信手段によって順次送信することを特徴とする。
本発明に従えば、前記副表示装置が有する指示手段によって動画像情報の再生が指示されると、この指示手段を有する副表示装置によって、動画像情報の再生の指示を表す再生指示情報が送受信手段によって前記主表示装置に送信され、主表示装置によって、送受信手段によって再生指示情報が受信されると、表示再生すべき動画像情報から抽出手段によって時系列順にタイミング情報が順次抽出され、抽出されたタイミング情報が送受信手段によって順次送信されるので、再生の開始が、主表示装置以外の表示装置で指示されても、主表示装置をマスタとすることができる。
また本発明は、予め定めるデータ単位毎に、時系列順で再生されるべきタイミングを表すタイミング情報が付される動画像情報を記憶する記憶部と、記憶部から動画像情報を読み出して画像として表示再生する表示部と、動画像情報の再生を指示する指示部とをそれぞれ有する複数の表示装置を含む多画面表示システムの表示方法であって、
複数の表示装置うちいずれかの表示装置が有する指示部から動画像情報の再生が指示されると、この指示部を有する表示装置で、表示再生すべき動画像情報から時系列順にタイミング情報を順次抽出し、抽出したタイミング情報を順次通信回線を介して取得可能にするタイミング情報取得可能化工程と、
各表示装置で、通信回線を介して、タイミング情報取得可能化工程で順次取得可能化されたタイミング情報を順次取得し、記憶部に記憶される動画像情報のうち、取得したタイミング情報に応じたタイミング情報が付された部分を順次読み出して画像として表示部に表示再生する表示工程とを含むことを特徴とする多画面表示システムの表示方法である。
本発明に従えば、予め定めるデータ単位毎に、時系列順で再生されるべきタイミングを表すタイミング情報が付される動画像情報を記憶する記憶部と、記憶部から動画像情報を読み出して画像として表示再生する表示部と、動画像情報の再生を指示する指示部とをそれぞれ有する複数の表示装置を含む多画面表示システムで動画像を表示再生するにあたって、タイミング情報取得可能化工程では、複数の表示装置うちいずれかの表示装置が有する指示部から動画像情報の再生が指示されると、この指示部を有する表示装置で、表示再生すべき動画像情報から時系列順にタイミング情報を順次抽出し、抽出したタイミング情報を順次通信回線を介して取得可能にする。さらに、表示工程では、各表示装置で、通信回線を介して、タイミング情報取得可能化工程で順次取得可能化されたタイミング情報を順次取得し、記憶部に記憶される動画像情報のうち、取得したタイミング情報に応じたタイミング情報が付された部分を順次読み出して画像として表示部に表示再生するので、動画像情報の再生が指示された表示装置からのタイミング情報によって、各表示装置は継続して同期を合わせることができ、時間が経過しても、各表示装置に表示される動画像の同期を維持することができる。
本発明によれば、動画像情報の再生が指示された表示装置からのタイミング情報によって、各表示装置は継続して同期を合わせることができ、時間が経過しても、各表示装置に表示される動画像の同期を維持することができるので、この多画面表示システムを用いれば、画像を再生する際に、表示装置全体を制御するサーバは必要がなく、表示装置だけで同期をとって画像を再生することができる。
また本発明によれば、再生を開始する前に、表示装置以外の装置たとえばサーバなどによって主表示装置を選択しておくことができるので、表示装置の処理能力に応じて、主表示装置を変更することができる。
また本発明によれば、再生の開始が、主表示装置以外の表示装置で指示されても、主表示装置をマスタとすることができるので、どの表示装置からでも再生の開始を指示することができ、利便性を向上することができる。
また本発明によれば、動画像情報の再生が指示された表示装置からのタイミング情報によって、各表示装置は継続して同期を合わせることができ、時間が経過しても、各表示装置に表示される動画像の同期を維持することができるので、この表示方法を多画面表示システムに適用することによって、画像を再生する際に、表示装置全体を制御するサーバは必要がなく、表示装置だけで同期をとって画像を再生することができる。
図1は、本発明の実施の一形態である多画面表示装置1の構成を示す。多画面表示システムである多画面表示装置1は、ネットワークによって接続される複数の表示装置であるクライアント20、たとえばクライアントA20A〜クライアントD20Dを含み、ネットワークを介してサーバ10に接続される。ネットワークは、たとえば無線LAN(
Local Area Network)もしくは有線LANによるLAN30、またはIEEE(
Institute of Electrical and Electronic Engineers)1394などの規格を用いるネットワークである。多画面表示システムの表示方法は、多画面表示装置1によって処理される。
サーバ10は、コンテンツなどのデータおよびプログラムを記憶する半導体メモリあるいはハードディスク装置などによって構成される記憶部11と、記憶部11に記憶されるコンテンツをストリーミングデータたとえばMPEG2/TS(Moving Picture Experts Group phase 2/Transport Stream)のデータストリーミングに変換する映像出力部12と、映像出力部12によって変換されたストリーミングデータあるいは各クライアント20の位置情報などの情報を、ネットワークを介してクライアント20と送受信するサーバ通信部13と、キーボードあるいはマウスなどによって構成される図示しない入力装置と、液晶ディスプレイなどによって構成される図示しない出力装置と、これらを制御するサーバ制御部14とを含む。
サーバ制御部14は、たとえばCPU(Central Processing Unit)などで構成され、記憶部11に記憶されるプログラムを実行することによって制御する。サーバ制御部14は、サーバ通信部13によって、各クライアント20から、各クライアント20および隣接するクライアント20に関する隣接情報を取得し、取得した隣接情報に基づいて、クライアント20の構成と各クライアント20の配置位置を設定する。クライアント20および隣接するクライアント20に関する隣接情報は、隣接情報を送信するクライアント20のクライアントID(Identification)、上下左右に隣接するクライアント20の有無、隣接するクライアント20のクライアントIDなどの情報を含む。クライアントIDは、各クライアント20を識別するための情報である。
クライアントA20Aは、サーバ10および他のクライアント20と通信を行うクライアント通信部21と、ユーザがデータを入力するためのリモートコントローラ(以下「リモコン」という)などによって構成される入力部22と、サーバ10からクライアント通信部21によって受信されたコンテンツのストリーミングデータなどの情報を記憶する記録部23と、記録部23に記憶されたコンテンツのストリーミングデータから映像データに変換して、表示、必要であれば拡大して表示するディスプレイなどによって構成される表示部24と、上下左右に隣接するクライアント20の有無の検出および隣接するクライアント20がある場合はその隣接するクライアント20の識別情報を取得する位置検出部26と、プログラムおよび処理に必要なデータなどを記憶する半導体メモリあるいはハードディスク装置などによって構成される図示しない記憶装置と、これらを制御するクライアント制御部27とを含む。クライアント制御部27は、たとえばCPUなどで構成され、図示しない記憶装置に記憶されるプログラムを実行することによって制御する。クライアントB20B〜クライアントD20Dは、クライアントA20Aと同じ構成であるので、説明は省略する。
図2は、図1に示したサーバ10からクライアント20へのコンテンツの送信例を示す。サーバ10は、クライアント20の構成に基づいてコンテンツを分割し、たとえば図2に示した例では、クライアントの台数が4台であるので、コンテンツを4分割し、分割したそれぞれの分割ファイルを各クライアント20に送信する。クライアントA20A〜クライアントD20Dは、受信したそれぞれの分割ファイルの画像を拡大して表示する。図2に示した例では、画像を4分割した分割ファイルのうち、クライアントA20Aは、画面に向かって左上の分割ファイルの画像を拡大して表示し、クライアントB20Bは、画面に向かって右上の分割ファイルの画像を拡大して表示し、クライアントC20Cは、画面に向かって左下の分割ファイルの画像を拡大して表示し、クライアントD20Dは、画面に向かって右下の分割ファイルの画像を拡大して表示する。したがって、クライアントA20A〜クライアントD20Dがそれぞれの配置位置に配置されている状態で、たとえば後述する図8(a)に示す構成で、全体として1つの画像で表示される。
図3は、図1に示したクライアント20の外観の斜視図である。クライアント20は、隣接するクライアント20と通信する4つの位置検出部(以下「検出器」ともいう)26を含む。4つの検出器26は、クライアント20の上面、左側面、下面、および右側面の4つの面に設けられる。
図4は、図3に示した検出器26の端子の配置例を示す。検出器26は、端子TX、端子GND、および端子RXの3つの端子を有する。端子TXは、情報を送信するための端子であり、端子GNDはグランド端子であり、端子RXは、情報を受信するための端子である。
図5は、図3に示した検出器26の端子と隣接するクライアント20の検出器26の端子との接続関係を示す。クライアント20の上側の検出器26U1は、上側に隣接するクライアント20の下側の検出器26D2と接続される。検出器26U1の端子TXと検出器26D2の端子RXとが接続され、検出器26U1の端子GNDと検出器26D2の端子GNDとが接続され、検出器26U1の端子RXと検出器26D2の端子TXとが接続される。同様に、クライアント20の右側の検出器26R1は、右側に隣接するクライアント20の左側の検出器26L2と接続され、クライアント20の下側の検出器26D1は、下側に隣接するクライアント20の上側の検出器26U2と接続され、クライアント20の左側の検出器26L1は、左側に隣接するクライアント20の右側の検出器26R2と接続される。
クライアント20は、これら4つの検出器26によって、それぞれ隣接するクライアント20があるか否かを検出し、隣接するクライアント20が検出された場合は、その隣接するクライアント20のクライアントIDを取得する。クライアントIDは、予め各クライアント20に割り当てられ、各クライアントの図示しない記憶装置に設定されている。
図6は、図3に示した検出器26を接続する接続ケーブル36の一例を示す。接続ケーブル36は、隣接するクライアント20同士を接続するケーブルであり、接続ケーブル36の両端は、それぞれ各クライアント20の検出器26と接続される。この例では、接続ケーブル36を用いているが、2つのクライアント20を隣接したとき、それぞれの検出器26の各端子が密着するように構成し、接続ケーブル36を用いないで接続するようにしてもよい。
サーバ10は、クライアント20が配置された後、実際に配置されたクライアント20の構成を、手動によって設定する手動設定、または自動的に設定する自動設定によって設定する。
図7は、図1に示したサーバ10における構成設定画面40の例を示す。図7に示した構成設定画面40は、サーバ10の図示しない出力装置に出力される画面であり、実際に配置されている各クライアント20の位置を、手動でサーバ10に設定するための画面である。設定すべきクライアント20を表示する領域41が構成設定画面40の右側にあり、その左側の領域がクライアント20を実際に配置されている位置に対応する位置に設定するためのマップ領域である。図8(a)に示す縦2段横2列の構成の場合を例にして、説明する。
図7(a)は、まだ配置位置の設定が行われていない構成設定画面であり、設定すべきクライアント20が領域41に表示されている。設定すべきクライアント20は、サーバ10が隣接情報を受信したクライアント20であり、たとえば隣接情報を受信した順序で、領域41の上側から表示される。1番目のクライアント20のクライアントIDは「C」であり、2番目のクライアント20のクライアントIDは「A」であり、3番目のクライアント20のクライアントIDは「B」であり、4番目のクライアント20のクライアントIDは「D」である。
ユーザは、サーバ10の図示しない入力装置によって、最初に設定するクライアント20を選択する。このとき、サーバ10は、選択されたクライアント20に対して、選択されていることを示す表示を指示する。たとえば画面の色を他のクライアント20と異なる色に変更した表示、そのクライアント20のMAC(Media Access Control)アドレスの表示、あるいは画面をフラッシングする表示を指示する。
図7(b)は、1番目のクライアント20が、実際の位置に対応するマップ領域の位置に設定された状態を示している。ユーザは、図7(a)で選択した1番目のクライアント20、つまりのクライアントID「C」のクライアント20の実際の位置を確認し、確認した位置に対応するマップ領域の位置にそのクライアント20を設定する。
図8は、図7に示した構成設定画面40に表示されたクライアント20の実際の位置との対応を示す。図8(a)は、図7に示した構成設定画面40で設定を行う構成を示す。図8(a)に示した例は、縦2段横2列の構成の場合の例を示している。上段左側にクライアントA20Aが配置され、上段右側にクライアントB20Bが配置され、下段左側にクライアントC20Cが配置され、下段右側にクライアントD20Dが配置されている。
図8(b)は、クライアントC20Cが選択されている状態を示す。図7(a)に示した領域41の1番目のクライアント20が選択されたとき、サーバ10は、クライアントID「C」のクライアント20に選択されていることを示す表示、たとえば画面をフラッシングする表示を指示する。クライアントC20Cは、サーバ10からの指示によって、画面をフラッシングする。
図8(c)は、領域41での2番目のクライアント20、たとえばクライアントA20Aが選択されている状態を示す。図7(a)に示した領域41の2番目のクライアント20が選択されたとき、サーバ10は、クライアントID「A」のクライアント20に選択されていることを示す表示、たとえば画面をフラッシングする表示を指示する。クライアントA20Aは、サーバ10からの指示によって、画面をフラッシングする。
図9は、図7に示した構成設定画面40での2台目のクライアント20の手動設定の例を示す。ユーザは、図8(c)に示したフラッシングされているクライアント20の位置を確認し、その位置に対応するマップ領域の位置に2台目のクライアント20、たとえばクライアントA20Aを設定する。同様に、3台目および4台目のクライアント20についても設定する。
図10は、図7に示した構成設定画面40で手動設定されたクライアント20の配置位置を示す。左上に2番目のクライアント20であるクライアントA20Aが設定され、右上に3番目のクライアント20であるクライアントB20Bが設定され、左下に1番目のクライアント20であるクライアントC20Cが設定され、右下に4番目のクライアント20であるクライアントD20Dが設定されている。手動でマップ領域に設定されたマップは、記憶装置11に記憶される。構成の自動設定については、図27〜図42で後述する。
図11は、図1に示したサーバ10とクライアント20とで送受信される情報を示す。サーバ10は、まず、LAN30を介して接続されている各クライアント20から、IP(Internet Protocol)アドレスや、各クライアント20のクライアント通信部21を構成するLANカードに設定されているMACアドレスを取得する。各クライアントのIPアドレスは、たとえばクライアントA20Aは、「xx.xx.xx.100」であり、クライアントB20Bは、「xx.xx.xx.110」であり、クライアントC20Cは、「xx.xx.xx.120」であり、クライアントD20Dは、「xx.xx.xx.130」である。
サーバ10は、次に、再生予定のコンテンツ、たとえばファイル名が「car.mpg」のコンテンツを、画像が4等分されるように分割する。さらに、分割されたコンテンツの分割ファイルと、取得したIPアドレスから生成した連携情報とを、LAN30を介して各クライアント20に送信する。図11に示した連携情報は、ファイル名「car.mpg」、分割数「4」、IP(主)「xx.xx.xx.100」、IP(副)「xx.xx.xx.110」、IP(副)「xx.xx.xx.120」、およびIP(副)「xx.xx.xx.130」などを含む情報である。そして、各クライアント20は、分割ファイルおよび連携情報を受信し、受信した分割ファイルおよび連携情報をそれぞれの記録部23に記録する。
図12は、図11に示したクライアント20が受信した連携情報を連携情報DB(
database)60に反映する例を示す。IPアドレスが「xx.xx.xx.110」であるクライアントB20Bは、LAN30を介して分割ファイルおよび連携情報を受信すると、受信した分割ファイルを記録部23に記憶し、さらに受信した連携情報を、記録部23に記憶される連携情報DB60に反映つまり記憶する。連携情報DB60は、図13で詳述する。
図13は、図1に示した記録部23に記憶される連携情報DB60の一例を示す。連携情報DB60は、1つのコンテンツについて1つのレコードを形成し、サーバ10から受信した1つの連携情報が1つのレコードに反映される。1つのレコードは、レコードを識別するためのレコード番号「No.」、コンテンツを識別するための名前「コンテンツ名」、分割ファイルの記憶場所を表す情報「保存場所」、コンテンツが分割されている数を表す「分割数」、主クライアントのIPアドレス「主」、および副クライアントのIPアドレス「副」の項目からなる。「副」の項目は、複数の項目を含み、分割数よりも「1」少ないIPアドレスが記憶される。
たとえば、No.「1」のレコードについては、コンテンツ名「car.mpg」、保存場所「C:¥file」、分割数「4」、主「xx.xx.xx.100」、ならびに副「xx.xx.xx.110」、「xx.xx.xx.120」、および「xx.xx.xx.130」であり、副に示される「NULL」は、クライアントが登録されていないことを示す。No.「2」のレコードについては、コンテンツ名「dog.mpg」、保存場所「C:¥temp」、分割数「2」、主「xx.xx.xx.100」、および副「xx.xx.xx.110」である。No.「3」のレコードについては、すべての項目が「NULL」であり、削除されたことを示している。No.「4」のレコードについては、コンテンツ名「demo1.mpg」、保存場所「D:¥demo」、分割数「4」、主「xx.xx.xx.100」、副「xx.xx.xx.110」、副「xx.xx.xx.120」、および副「xx.xx.xx.130」である。No.「5」のレコードについては、コンテンツ名「water.mpg」、保存場所「C:¥file」、分割数「2」、主「xx.xx.xx.110」、および副「xx.xx.xx.200」である。No.「6」のレコードについては、コンテンツ名「demo2.mpg」、保存場所「D:¥demo」、分割数「4」、主「xx.xx.xx.110」、副「xx.xx.xx.130」、副「xx.xx.xx.200」、および副「xx.xx.xx.220」である。No.「7」のレコードについては、コンテンツ名「toy.mpg」、保存場所「C:¥temp」、分割数「4」、主「xx.xx.xx.100」、副「xx.xx.xx.110」、副「xx.xx.xx.120」、および副「xx.xx.xx.130」である。No.「8」のレコードについては、コンテンツ名「0001.mpg」、保存場所「C:¥file」、分割数「3」、主「xx.xx.xx.210」、副「xx.xx.xx.200」、および副「xx.xx.xx.110」である。
図14は、図1に示したクライアント20のDB更新画面50の一例を示す。DB更新画面50には、連携情報DB60に含まれるレコードごとに、「コンテンツ名」、「保存場所」、「分割数」、「主」、および「副」の項目が示され、各レコードにチェック欄55が付加されている。さらに、削除ボタン51、OKボタン52、およびキャンセルボタン53の3つの操作ボタンと、表示されていないレコードをスクロールして表示するためのスクロールバー56とが示されている。連携情報DB60の項目のうち、「NULL」でない情報がDB更新画面50に表示され、すべての項目が「NULL」のレコードは表示されない。DB更新画面50は、入力部22、たとえばマウスやリモコンなどによって操作される。
削除ボタン51は、コンテンツとそのコンテンツのレコードを削除するための操作ボタンである。削除したいコンテンツのレコードのチェック欄55にチェックマークを付して、削除ボタン51を押下すると、チェックマークが付されたレコードが示す記録部23の保存場所に記憶されたコンテンツが削除されるとともに、そのレコードが連携情報DB60から削除される。削除されたレコードは、図13に示したように、連携情報DB60では、すべての項目が「NULL」とされる。
OKボタン52は、登録されているレコードの内容を変更するためのボタンである。変更対象のレコードの内容を変更して、OKボタン52を押下すると、変更された内容が、連携情報DB60に反映される。キャンセルボタン53は、操作中の削除あるいは変更をキャンセルするためのボタンであり、キャンセルボタン53が押下されると、操作中に入力した情報がキャンセルされ、DB更新画面50を終了する。
図15は、図13に示したDB更新画面50で更新された更新内容の各クライアントへのフィードバックの手順を示す。コンテンツを削除する場合、クライアントA20Aは、削除するコンテンツのレコードに示されたIPアドレスのうち、自クライアントのIPアドレス以外のIPアドレスのクライアントに対して、削除すべきコンテンツ名と削除要求とを送信する。削除すべきコンテンツ名と削除要求とを受信したクライアントは、受信したコンテンツ名のコンテンツを削除するとともに、連携情報DB60からそのコンテンツのレコードを削除する。
連携情報DB60の内容を変更する場合、クライアントA20Aは、変更された内容のコンテンツのレコードに示されたIPアドレスのうち、自クライアントのIPアドレス以外のIPアドレスのクライアントに対して、変更すべきレコードの内容と変更要求とを送信する。変更すべきレコードの内容と変更要求とを受信したクライアントは、変更すべきレコードの内容を連携情報DB60に反映する。
図15には、図の上段に示したレコード61が示すコンテンツを削除する例を示す。レコード61の各項目は、コンテンツ名「demo1.mpg」、保存場所「D:¥demo」、分割数「4」、主「xx.xx.xx.100」、副「xx.xx.xx.110」、副「xx.xx.xx.120」、および副「xx.xx.xx.130」である。クライアントA20Aは、コンテンツ名「demo1.mpg」のコンテンツを記録部23から削除し、そのコンテンツのレコードを連携情報DB60から削除した後、コンテンツ名「demo1.mpg」のコンテンツの削除要求を、IPアドレスが「xx.xx.xx.110」、「xx.xx.xx.120」、および「xx.xx.xx.130」であるクライアントに送信する。IPアドレスが「xx.xx.xx.110」、「xx.xx.xx.120」、および「xx.xx.xx.130」であるクライアント、つまりクライアントB20B〜クライアントD20Dは、コンテンツ名「demo1.mpg」のコンテンツの削除要求を受信すると、コンテンツ名「demo1.mpg」のコンテンツを記録部23から削除するとともに、連携情報DB60からコンテンツ名「demo1.mpg」のレコードを削除する。
図16は、図1に示したクライアント20での同期再生に関連する部分のブロック図である。クライアントA20Aを主クライアント、クライアントB20Bを副クライアントとした場合、それぞれが関係する部位を、模式的に示している。
クライアント20は、送信部211、受信部212、タイムスタンプ抽出部271、遅延部272、FIFO(First-In First-Out)バッファ273、およびシンクロ部274を含む。送信部211および受信部212は、クライアント通信部21に含まれる。タイムスタンプ抽出部271、遅延部272、FIFOバッファ273、およびシンクロ部274は、クライアント制御部27に含まれる。
タイムスタンプ抽出部271は、記録部23に記憶されるコンテンツの画像ファイル231から、タイムスタンプたとえばPCR(Program Clock Reference)/SCR(
System Clock Reference)を抽出する。遅延部272は、タイムスタンプ抽出部271によって抽出されたタイムスタンプを数ms〜数十ms遅延させて、送信部211に送る。送信部211は、遅延部272から受け取ったタイムスタンプを、LAN30によって送信する。タイムスタンプを送信する頻度は、たとえば1秒間に60回の頻度である。マルチキャストIP/ポート番号232は、タイムスタンプを送信するIPアドレスおよびポート番号であり、予め記録部23などに設定しておく。送信部211は、タイムスタンプの送信を開始する前に、記録部23に記憶される連携情報DB60のうち、再生するコンテンツのレコードが示すIPアドレスのクライアントに、マルチキャストIP/ポート番号232を送信する。
受信部212は、受信したマルチキャストIP/ポート番号232が示すIPアドレスおよびポート番号で、送信部211によって送信されたタイムスタンプを受信し、受信したタイムスタンプをシンクロ部274に送る。FIFOバッファ273は、記録部23に記憶される画像ファイル231から読み出したコンテンツをフレーム単位で記憶するFIFOバッファである。シンクロ部274は、受信部212からタイムスタンプを受け取る度に、受信部212から受け取ったタイムスアンプと同じタイムスタンプを有するフレームを、FIFOバッファ273から読み出して、表示部24に送る。表示部24は、シンクロ部274から受け取ったフレームを表示する。
クライアント20が主クライアントの場合、上述した処理を行うが、クライアント20が副クライアントの場合、送信部211、タイムスタンプ抽出部271、遅延部272、およびFIFOバッファ273は、動作しない。シンクロ部274は、受信部212からタイムスタンプを受け取る度に、受信部212から受け取ったタイムスアンプと同じタイムスタンプを有するフレームを、記録部23に記憶されるコンテンツの画像ファイル231から読み出して、表示部24に送る。
図17は、図1に示したクライアント20間での同期再生の開始手順を示す。図17(a)は、再生を指示されたクライアントが主クライアントの場合の同期再生の開始手順である。リモコン22aによってコンテンツの再生が指示され、再生を指示されたコンテンツの連携情報DBに示される主のIPアドレスが、自クライアントのIPアドレスに一致すると、自クライアントは、主クライアントである。図17(a)に示した例では、主クライアントであるクライアントA20Aに対して、リモコン22aによってコンテンツの再生の指示が行われたので、クライアントA20Aは、再生を指示されたコンテンツのコンテンツ名を副クライアントに送信し、再生を指示する。副クライアントは、再生を指示されたコンテンツのレコードに示されるIPアドレスのクライアントである。
図17(b)は、再生を指示されたクライアントが副クライアントの場合の同期再生の開始手順である。リモコン22aによってコンテンツの再生が指示され、再生を指示されたコンテンツの連携情報DBに示される主のIPアドレスが自クライアントのIPアドレスに一致しないと、自クライアントは、主クライアントではない。図17(b)に示した例では、副クライアントであるクライアントB20Bに対して、リモコン22aによってコンテンツの再生の指示が行われたので、クライアントB20Bは、再生を指示されたコンテンツの連携情報DBに示される主のIPアドレスのクライアント、この例では、クライアントA20Aに、再生を指示されたコンテンツのコンテンツ名を送信し、再生指示を要求する。クライアントA20Aは、再生指示が要求されると、再生を指示されたコンテンツのコンテンツ名を、再生を指示されたコンテンツのレコードに示されるIPアドレスの副クライアントに送信し、再生を指示する。
図18は、図17に示した主クライアントおよび副クライアントでの同期再生を示す。同期再生は、主クライアントから副クライアントに定期的にタイムスタンプをマルチキャスト送信することによって再生するものである。マルチキャスト送信するためのマルチキャストIPアドレス/ポートを、タイムスタンプを送信する前に、ネットワークたとえばLAN30に接続された副クライアントに指示しておく。副クライアントは、マルチキャスト送信されたタイムスタンプを、指示されたマルチキャストIPアドレス/ポートから受信し、受信したタイムスタンプと、再生するコンテンツ内部のタイムスタンプを比較し、同じタイムスタンプのフレームを再生する。
図18(a)は、マルチキャストIPアドレス/ポートの通知を示す。主クライアントであるクライアントA20Aは、各クライアントがタイムスタンプを受信するマルチキャストIP/ポートのIPアドレス/ポート番号、たとえば「IP=239.255.1.1:Port=10」を、分割ファイルを再生する副クライアントに通知する。図18(b)は、タイムスタンプの送信を示す。主クライアントであるクライアントA20Aは、再生するコンテンツのPCR/SCRのタイムスタンプをマルチキャストIPアドレス/ポートで送信する。図18(c)は、フレームの再生を示す。分割ファイルを再生する主クライアントおよび副クライアントは、マルチキャストIP/ポートから、図18(b)に示した主クライアントから送信されるタイムスタンプを受信し、受信したタイムスタンプと、自クライアントの記録部23に記憶されている再生すべきコンテンツの各フレームのタイムスタンプとを比較し、受信したタイムスタンプと同じタイムスタンプを持つフレームを再生する。
図19は、図1に示したサーバ10での連携情報生成処理のフローチャートである。連携情報生成処理は、サーバ10によって実行される処理であり、同期再生を行う前に、事前に再生予定のコンテンツを各クライアントに登録する処理である。再生予定のコンテンツを各クライアントに登録するとき、ステップX1に移る。
ステップX1では、各クライアントのIPアドレスを取得する。すなわち、コンテンツを再生する際に用いるクライアントのIPアドレスが、たとえば図示しない入力装置によって入力されると、その入力されたIPアドレスを取得する。ステップX2では、ステップX1でIPアドレスを取得したクライアントの台数を、コンテンツを再生するクライアントの台数として決定する。ステップX3では、再生コンテンツ、たとえば図示しない入力装置によって入力されるコンテンツ名によって指定されるコンテンツを、ステップX2で決定した台数に応じて分割する。たとえばステップX2で決定された台数が4台であれば、コンテンツをフレームごとに4分割し、分割された各フレームに、元のフレームのPCR/SCRと同じタイムスタンプを入れる。
ステップX4では、再生コンテンツの連携情報を作成する。連携情報は、たとえば図11に示した連携情報であり、再生コンテンツのファイル名、分割数、ならびに主クライアントおよび副クライアントのIPアドレスを含む。分割数は、ステップX2で決定した台数の数と同じ数である。副クライアントの数は、「分割数−1」である。ステップX5では、クライアント位置に応じた分割ファイルおよび連携情報を各クライアントに送信する。ステップX6では、自機が連携再生に含まれるか否かを判定する。すなわち、自機のIPアドレスがステップX4で作成した連携情報のIPアドレスに含まれると、つまり自機のIPアドレスがステップX1で取得したIPアドレスに含まれると、自機が連携再生に含まれると判定し、ステップX7に進み、自機のIPアドレスがステップX1で取得したIPアドレスに含まれないと、自機が連携再生に含まれないと判定し、終了する。ステップX7では、連携情報DBに登録して終了する。すなわち、クライアント位置に応じた分割ファイルを記録部23に記憶し、連携情報を連携情報DBに記憶して終了する。
図20は、図1に示したクライアント20での連携情報保存処理のフローチャートである。連携情報保存処理は、クライアント20によって実行される処理であり、サーバ10から受信した分割ファイルおよび連携情報を記憶する。サーバ10から送信される分割ファイルおよび連携情報を受信する際に、ステップY1に移る。
ステップY1では、分割コンテンツファイルを受信し保存する。つまりコンテンツの分割ファイルを受信し、受信した分割ファイルを記録部23に記憶する。ステップY2では、連携情報を受信する。ステップY3では、連携情報DBに連携情報を追加して終了する。すなわち、ステップY2で受信した連携情報を、連携情報DBに追加して記憶し、終了する。
図21は、図1に示したクライアント20での連携情報保存詳細処理のフローチャートである。連携情報保存詳細処理は、図20に示した連携情報保存処理を詳細に表したフローチャートである。サーバ10から分割ファイルおよび連携情報を受信すると、ステップZ1に移る。
ステップZ1では、DBがあるか否か、つまり連携情報DB60が構築されているか否かを判定する。連携情報DB60が構築されていると、ステップZ2に進み、連携情報DB60が構築されていないと、ステップZ8に進む。ステップZ2では、登録数を読み出す。つまり連携情報DB60に登録されているレコードの数を読み出す。ステップZ3では、登録数を「1」増やす。ステップZ4では、ファイルを設定保存場所に保存する。すなわち、サーバ10から受信した分割ファイルを、保存場所として設定されている記録部23内の場所に記憶する。
ステップZ5では、DBの登録数のレコードの「コンテンツ名」、「保存場所」に記録する。すなわち、ステップZ3で「1」増やした登録数に基づいて表されるレコード番号のレコードの「コンテンツ名」に、サーバ10から受信した連携情報のファイル名を記録し、「保存場所」に、ステップZ4で分割ファイルを記憶した記録部23の保存場所を記録する。ステップZ6では、分割数をDBの登録数のレコードの「分割数」に記録する。すなわち、サーバ10から受信した連携情報の分割数を、登録数に基づいて表されるレコード番号のレコードの「分割数」に記録する。
ステップZ7では、ファイルを再生するモニタのIPアドレスをDBの登録数のレコードの「IP部(主および副)」に記録して終了する。すなわち、サーバ10から受信した連携情報の「IP(主)」および「IP(副)」のIPアドレスを、登録数に基づいて表されるレコード番号のレコードのIPアドレス「主」および「副」に記録して終了する。モニタは、クライアントのことである。ステップZ8では、連携情報DB60を構築し、登録数を「0」に初期化して、ステップZ3に進む。
図22は、図1に示したクライアント20での連携情報更新処理のフローチャートである。連携情報更新処理は、連携情報DB60の更新を行う処理である。図14に示したDB更新画面50が選択されると、ステップA1に移る。
ステップA1では、連携情報DB60のデータを取得する。すなわち連携情報DB60のデータを記録部23から読み出す。ステップA2では、連携情報DB60のデータを表示する。すなわち、ステップA1で取得したデータを、図14に示したDB更新画面50で表示部24に表示する。ステップA3では、編集を入力する。すなわち、表示部24に表示したDB更新画面50に応答して、入力部22によって連携情報DB60に対する編集たとえばコンテンツの削除あるいはレコードの内容の変更などの入力を行う。
ステップA4では、削除ボタン51が押下されたか否かを判定する。削除ボタン51が押下されると、ステップA7に進み、削除ボタン51が押下されないと、ステップA5に進む。ステップA5では、OKボタン52が押下されたか否かを判定する。OKボタン52が押下されると、ステップA10に進み、OKボタン52が押下されないと、ステップA6に進む。ステップA6では、キャンセルボタン53が押下されたか否かを判定する。キャンセルボタン53が押下されると、ステップA13に進み、キャンセルボタン53が押下されないと、ステップA3に戻る。
ステップA7では、項目が選択されているか否かを判定する。チェック欄55にチェックマークが付されていると、項目が選択されていると判定し、ステップA8に進む。チェック欄55にチェックマークが付されていないと、項目が選択されていないと判定し、ステップA9に進む。ステップA8では、DBの選択項目を削除して、ステップA14に進む。すなわち、チェックマークが付されたレコードを、連携情報DB60から削除して、ステップA14に進む。具体的には、連携情報DBの該当レコードの各項目を「NULL」とする。ステップA9では、“選択されていません”と表示して、ステップA3に戻る。つまり“選択されていません”いうメッセージを、たとえばDB更新画面50にポップアップで表示して、ステップA3に戻る。
ステップA10では、項目変更があるか否かを判定する。いずれかのレコードの内容が変更されていると、項目変更があると判定し、ステップA11に進み、いずれのレコードの内容も変更されていないと、項目変更がないと判定し、ステップA12に進む。ステップA11では、選択項目をDB更新し、ステップA14に進む。すなわち、変更されているレコードの内容を連携情報DB60に反映して、ステップA14に進む。ステップA12では、“選択されていません”と表示して、ステップA3に戻る。
ステップA13では、変更内容を破棄して、DBは更新しないで、終了する。すなわち、削除あるいは変更内容を破棄して、連携情報DB60を更新せずに、DB更新画面50を終了する。ステップA14では、他のクライアントにDBの更新要求を送信して、終了する。すなわち、ステップA8で行われた削除あるいはステップA11で行われた変更を、他のクライアントにも行わせるための更新要求を、更新されたコンテンツのレコードのIPアドレスのクライアントに送信して、終了する。
図23は、図1に示したクライアント20での入力部22による連携再生開始処理のフローチャートである。連携再生開始処理は、入力部22の指示によって、コンテンツを選択して、コンテンツを連携して再生する処理である。入力部22によって、コンテンツを選択して再生するときに、ステップB1に移る。
ステップB1では、連携情報DB60に登録されているコンテンツと、自機にある再生可能コンテンツとを表示する。すなわち、連携情報DB60に登録されているコンテンツのコンテンツ名と、自機の記録部23に単独でつまり分割されないで記憶しているコンテンツのコンテンツ名とを、表示部24に表示する。ステップB2では、再生コンテンツを選択する。すなわち、入力部22によって、表示部24に表示されたコンテンツ名の中から再生するコンテンツのコンテンツ名を選択する。
ステップB3では、選択されたコンテンツが、連携情報DB60に登録されたコンテンツであるか否かを判定する。選択されたコンテンツが、連携情報DB60に登録されたコンテンツであると、ステップB5に進み、選択されたコンテンツが、連携情報DB60に登録されたコンテンツでないと、ステップB4に進む。ステップB4では、単独で再生して終了する。すなわち、他のクライアントと連携せずに、自機にある再生可能コンテンツの中から選択されたコンテンツを再生して終了する。
ステップB5では、選択コンテンツの連携情報を確認する。すなわち、連携情報DB60のレコードのうち、選択されたコンテンツのレコードを確認する。ステップB6では、再生コンテンツの主が自機であるか否かを判定する。選択されたコンテンツのレコードの主クライアントのIPアドレスが、自クライアントのIPアドレスに一致すると、再生コンテンツの主が自機であると判定して、ステップB8に進み、選択されたコンテンツのレコードの主クライアントのIPアドレスが、自クライアントのIPアドレスに一致しないと、再生コンテンツの主が自機でないと判定して、ステップB7に進む。
ステップB7では、主のクライアントに再生を要求して、終了する。主のクライアントは、選択されたコンテンツのレコードの「主」欄のIPアドレスのクライアントである。ステップB8では、副のクライアントに再生を要求する。副のクライアントは、選択されたコンテンツのレコードの「副」欄のIPアドレスのクライアントである。ステップB9では、自機で対象分割ファイルを再生して、終了する。
図24は、図1に示したクライアント20での他機からの要求による連携再生DB更新処理のフローチャートである。連携再生DB更新処理は、他機からの要求によってコンテンツを連携して再生する処理および他機からの要求によって連携情報DB60を更新する処理を行う。他機からの要求の有無を確認し、要求があればその要求を処理するときに、ステップC1に移る。
ステップC1では、再生要求を受信したか否かを判定する。再生要求を受信すると、ステップC3に進み、再生要求を受信しないと、ステップC2に進む。ステップC2では、DB変更要求であるか否かを判定する。分割ファイルおよび連携情報、または更新要求を受信すると、DB変更要求であると判定し、ステップC9に進み、分割ファイルおよび連携情報、ならびに更新要求を受信しないと、DB変更要求でないと判定し、終了する。
ステップC3では、再生要求が主のコンテンツ再生要求か否かを判定する。主クライアントに対する再生要求であると、再生要求が主のコンテンツ再生要求であると判定し、ステップC5に進み、主クライアントに対する再生要求でないと、再生要求が主のコンテンツ再生要求でないと判定し、ステップC4に進む。ステップC4では、再生要求が副のコンテンツ再生要求か否かを判定する。副クライアントに対する再生要求であると、再生要求が副のコンテンツ再生要求であると判定し、ステップC8に進み、副クライアントに対する再生要求でないと、再生要求が副のコンテンツ再生要求でないと判定し、終了する。
ステップC5では、連携情報DB60から副クライアントのIPアドレスを読み出す。ステップC6では、読み出したIPアドレスのクライアントに再生要求を送信する。ステップC7では、自機での対象分割ファイルを再生して、終了する。ステップC8では、対象分割ファイルを再生して、終了する。
ステップC9では、登録要求であるか否かを判定する。分割ファイルおよび連携情報を受信すると、登録要求であると判定し、ステップC11に進む。分割ファイルおよび連携情報を受信しないと、登録要求でないと判定し、ステップC10に進む。ステップC10では、更新要求を受信したか否かを判定する。更新要求は、レコードの内容の変更要求またはコンテンツの削除要求である。更新要求を受信すると、ステップC12に進み、更新要求を受信しないと、終了する。
ステップC11では、コンテンツをDBに登録して、終了する。すなわち、受信した分割ファイルを記録部23に記憶するとともに、受信した連携情報を連携情報DB60に記憶して、終了する。ステップC12では、項目の修正要求であるか否かを判定する。レコードの内容の変更要求であると、項目の修正要求であると判定し、ステップC14に進み、レコードの内容の変更要求でないと、項目の修正要求でないと判定し、ステップC13に進む。ステップC13では、コンテンツの削除要求であるか否かを判定する。コンテンツの削除要求であると、ステップC15に進み、コンテンツの削除要求ででないと、終了する。ステップC14では、連携情報DB60の該当項目を変更して、すなわち連携情報DB60の該当レコードの内容を変更して終了する。ステップC15では、連携情報DB60の該当項目を削除して、すなわち記録部23から該当するコンテンツを削除するとともに、連携情報DB60の該当レコードを削除して、終了する。
図25は、図18に示した主クライアントの同期再生処理のフローチャートである。主クライアントの同期再生処理は、図23に示したステップB9あるいは図24に示したステップC7から呼び出され、呼び出されると、ステップD1に移る。
ステップD1では、タイムスタンプ送出IPアドレス/ポートを通知する。すなわち、タイムスタンプを受信するためのタイムスタンプ送出IPアドレス/ポートつまりマルチキャストIP/ポートのIPアドレス/ポート番号を、副クライアントに送信する。ステップD2では、副側からの応答を受信する。すなわち、IPアドレス/ポート番号を受信し、受信したIPアドレス/ポート番号を記録部23に設定したことを示す応答を副クライアントから受信する。ステップD3では、すべての副側に設定されたか否かを判定する。すべての副クライアントから応答を受信すると、すべての副側に設定されたと判定し、ステップD4に進む。すべての副クライアントから応答を受信しないと、すべての副側に設定されていないと判定し、ステップD2に戻る。
ステップD4では、再生コンテンツのタイムスタンプを送信する。ステップD5では、タイムスタンプ送出IPアドレス/ポートからタイムスタンプを受信する。ステップD6では、受信したタイムスタンプと同じタイムスタンプのフレームを再生する。すなわち、受信したタイムスタンプと同じタイムスタンプのフレームを記録部23に記録したコンテンツから読み出して再生する。ステップD7では、終了処理であるか否かを判定する。再生しているコンテンツが終了すると、終了処理であると判定し、終了する。再生しているコンテンツが終了しないと、終了処理でないと判定し、ステップD4に戻る。
図26は、図18に示した副クライアントの同期再生処理のフローチャートである。副クライアントの同期再生処理は、図24に示したステップC8から呼び出され、呼び出されると、ステップE1に移る。
ステップE1では、タイムスタンプ送出IPアドレス/ポートを受信する。すなわち、タイムスタンプを受信するためのIPアドレス/ポート番号を、主クライアントから受信する。ステップE2では、受信したIPアドレス/ポート番号を記録部23に設定する。ステップE3では、主側に設定応答する。すなわち、IPアドレス/ポート番号を設定したことを示す応答を主クライアントに送信する。
ステップE4では、タイムスタンプ送出IPアドレス/ポートからタイムスタンプを受信する。ステップE5では、受信したタイムスタンプと同じタイムスタンプのフレームを再生する。すなわち、受信したタイムスタンプと同じタイムスタンプのフレームを記録部23に記録したコンテンツから読み出して再生する。ステップE6では、終了処理であるか否かを判定する。再生しているコンテンツが終了すると、終了処理であると判定し、終了する。再生しているコンテンツが終了しないと、終了処理でないと判定し、ステップE3に戻る。
図27は、図1に示したサーバ10が処理する位置設定処理のフローチャートである。位置設定処理は、クライアント20(以下「モニタ」ともいう)の構成つまり配置位置を設定する処理を行う。モニタの構成を設定するときに、ステップF1に移る。
ステップF1では、前回の設定を使用するか否かを判定する。すなわち、たとえば、図示しない入力装置によって、記憶部11に記憶されている前回用いたモニタの構成の設定を使用することが指示されると、前回の設定を使用すると判定する。前回の設定を使用する場合は、ステップF5に進み、前回の設定を使用しない場合は、ステップF2に進む。ステップF2では、自動設定を行うか否かを判定する。すなわち、たとえば、図示しない入力装置によって、モニタの構成を自動で設定する指示があると、自動設定を行うと判定する。自動設定を行なう場合は、ステップF7に進み、自動設定を行わない場合は、ステップF3に進む。
ステップF3では、手動で構成を設定する。手動設定は、たとえば、図7に示した構成設定画面40によってモニタの構成の設定を行う。ステップF4では、現在の設定を保存して、終了する。すなわち、ステップF3で新たに設定されたモニタの構成の設定を記憶部11に記憶して、終了する。ステップF5では、設定値があるか否かを判定する。すなわち、記憶部11にモニタの構成の設定が記憶されていると、設定値があると判定する。設定値があると、ステップF6に進み、設定値がないと、ステップF2に進む。ステップF6では、前回の保存された設定値を使用し、終了する。すなわち、モニタの構成の設定を、記憶部11に記憶されている設定値そのままに設定し、終了する。
ステップF7では、モニタの構成を自動で設定する後述する自動設定処理を呼び出す。ステップF8では、コンテンツを表示させるモニタのかたまりを選択する後述する有効ブロック選択処理を呼び出す。有効ブロックは、隣接するモニタによって構成されるブロックのうちコンテンツを表示させるブロックである。ステップF9では、現在の設定を保存して、終了する。すなわち、ステップF7およびステップF8で新たに設定されたモニタの構成の設定を記憶部11に記憶して、終了する。
図28は、図1に示したサーバ10が用いる受信配列およびpiece配列の例を示す。図では、「piece」を「Piece」とも記す。図28(a)は、モニタ状態とそのモニタ状態に対応する受信配列を示す。モニタ状態は、モニタの実際の構成を示す。受信配列は、サーバ10が各モニタから受信した隣接情報を、たとえばモニタから応答があった順序で配列したものであり、サーバ10の記憶部11に記憶される。受信配列は、各モニタのクライアントIDを示す「自」の項目、ならびに各モニタの上側、左側、下側、および右側に隣接するモニタのクライアントIDをそれぞれ示す「上」、「左」、「下」、および「右」の項目がある。以下、「上」、「左」、「下」、および「右」の項目欄に示されるクライアントIDを隣接モニタIDという。
図28(a)に示したモニタは、縦3段横3列の9台のモニタによって構成される。上段には、左側からクライアントIDが「B」、「D」、および「F」の3台のモニタが配置され、中段には、左側からクライアントIDが「C」、「E」、および「G」の3台のモニタが配置され、下段には、左側からクライアントIDが「A」、「H」、および「I」の3台のモニタが配置されている。
これに対応する受信配列には、たとえば自IDが「C」のモニタについては、「上」の隣接モニタIDが「B」であり、「左」の隣接モニタIDが「NULL」であり、「下」の隣接モニタIDが「A」であり、「右」の隣接モニタIDが「E」である。「NULL」は、隣接するモニタが存在しないことを示す。同様に、自IDが「E」については、「D」、「C」、「H」、および「G」であり、自IDが「I」については、「G」、「H」、「NULL」、および「NULL」であり、自IDが「D」については、「NULL」、「B」、「E」、および「F」であり、自IDが「G」については、「F」、「E」、「I」、および「NULL」であり、自IDが「A」については、「C」、「NULL」、「NULL」、および「H」であり、自IDが「F」については、「NULL」、「D」、「G」、および「NULL」であり、自IDが「B」については、「NULL」、「NULL」、「C」、および「D」であり、ならびに自IDが「H」については、「E」、「A」、「NULL」、および「I」である。
図28(b)は、piece配列を示す。piece配列は、応答を受信した順序を表すpiece番号順に、受信した隣接情報の項目と配置の確認の状態を表す「チェック」の項目を2次元に配列したものである。piece配列は、piece番号毎に、「自ID」、「上ID」、「左ID」、「下ID」、「右ID」、および「チェック」の6つの項目がある。これらの6つの項目のうち、「チェック」を除く項目は、図28(a)に示した受信配列の5つの項目に対応する。「チェック」の項目は、配置の確認の状態を表し、「0」〜「2」の値が入る。「0」は、配置の確認が完了した状態であることを示し、「1」は、初期値つまり確認が行われていない状態であることを示し、「2」は、配置の確認が完了しているモニタに隣接しており、かつまだ確認が行われていない状態であることを示す。
piece配列の各要素は、piece[m][n]で表す。[m]は、piece番号である。[n]は、「自ID」、「上ID」、「左ID」、「下ID」、「右ID」、および「チェック」の6つの項目に対応する番号であり、この順序で「0」からの整数を上昇順に割り当てた番号である。つまり、「自ID」が[0]、「上ID」が[1]、「左ID」が[2]、「下ID」が[3]、「右ID」が[4]、および「チェック」が[5]である。piece[0][0]〜piece[8][4]には、図28(a)に示した受信配列の内容がそのまま入り、接続がないところは「NULL」がそのまま入る。
図29は、図1に示したサーバ10が用いる確認済ID格納配列の例を示す。確認済ID格納配列sumi[]は、配置の確認が完了したモニタのクライアントIDを登録する配列であり、記憶部11に記憶される。図では、「sumi」を「Sumi」とも記す。確認済ID格納配列に登録されるモニタは、piece配列のチェック欄が「0」のモニタであり、そのモニタのクライアントIDつまり「自ID」が確認済ID格納配列に登録される。図29に示した確認済ID格納配列は、初期化されて、すべて空欄つまり「NULL」の状態を示している。
図30は、図1に示したサーバ10が用いる端ID格納配列の例を示す。端ID格納配列haji[]は、左側および上側に隣接するモニタのないモニタのクライアントIDを登録する配列であり、記憶部11に記憶される。図では、「haji」を「Haji」とも記す。図30(a)に示した端ID格納配列は、初期化されて、すべて空欄つまり「NULL」の状態を示している。図30(b)に示した端ID格納配列は、後述する端ID検索処理が行われた後の状態を示しており、クライアントID「B」のモニタが登録されている。図35に示す端ID検索処理で用いる「haji_count」は、左側および上側に隣接するモニタのないモニタの数、すなわち端ID格納配列に登録されているモニタの数を示し、haji[0]〜haji[haji_count−1]に、左側および上側に隣接するモニタのないモニタのクライアントIDが登録される。
図31は、図27に示した位置設定処理から呼び出される自動設定処理のフローチャートである。自動設定処理は、モニタの構成を自動で設定する。図27に示したステップF7で呼び出されると、ステップG1に移る。
ステップG1では、各モニタから受信した隣接情報をpiece配列に格納する後述する構成取得・格納処理を呼び出す。ステップG2では、確認済ID格納配列を初期化する後述する確認済ID格納配列確保処理を呼び出す。ステップG3では、端ID格納配列を初期化する後述する端ID格納配列確保処理を呼び出す。ステップG4では、左側および上側に隣接するモニタのないモニタを検索する後述する端ID検索処理を呼び出す。
ステップG5では、「block=0」、「chk_total=0」、および「BB=0」とする。すなわち、隣接するモニタによって構成されるブロックの数をカウントするためのカウンタblock、確認済みのモニタの数chk_total、および端IDの確認用カウンタBBを「0」にクリアする。図では、「block」を「Block]、および「chk_total」を「Chk_total」とも記す。ステップG6では、haji[BB]のIDを持つpiece配列でpiece[][5]≠0か否かを判定する。すなわち端ID格納配列haji[]のBB番目のモニタのクライアントIDのpiece配列のチェック項目piece[][5]の値が「0」つまり確認済か否かを判定する。piece[][5]≠0であると、つまり確認済でないと、ステップG7に進み、piece[][5]≠0でないと、つまりpiece[][5]=0であると、既にそのモニタは設定済であるので、ステップG11に進む。
ステップG7では、隣接するモニタによって構成されるブロックの確定と、各ブロックを構成するモニタのマップの作成を行う後述するマップ格納処理を呼び出す。ステップG8では、「chk_total=chk_total+count+1」とする。すなわち、確認済みのモニタの数chk_totalに、ステップG7のマップ格納処理でカウントされたcountの値と「1」とを加算する。ステップG9では、chk_total<totalか否かを判定する。確認済みのモニタの数chk_totalが、モニタの数totalよりも小さいと、ステップG10に進み、確認済みのモニタの数chk_totalが、モニタの数totalよりも小さくないと、終了する。ステップG10では、「block=block+1」とする。すなわち、ブロックの数blockに「1」を加算する。ステップG11では、「BB=BB+1」とし、ステップG6に戻る。すなわち、端IDの確認用カウンタBBに「1」を加算し、ステップG6に戻る。
図32は、図31に示した自動設定処理から呼び出される構成取得・格納処理のフローチャートである。構成取得・格納処理は、piece配列を作成し、モニタ台数totalを確定する。図では、「total」を「Total」とも記す。図31に示したステップG1で呼び出されると、ステップH1に移る。
ステップH1では、「total=0」とし、piece[]の確保/クリアを行う。すなわち、モニタの数totalを「0」にクリアし、piece配列を記憶するための記憶エリアを記憶部11に確保し、その記憶エリアをNULLにクリアする。ステップH2では、制御ポートでクライアント20つまりモニタに対してID要求を送信する。すなわち、制用ポートを介して、各モニタに対して、各モニタのクライアントIDおよび各モニタが検出した隣接クライアントのクライアントIDを含む隣接情報の送信要求を送信する。制御ポートは、サーバ10とモニタとの間で制御情報、たとえば隣接情報およびその送信要求などの情報を送受信するためのチャネルであり、ネットワークのチャネルの中で特定のIPアドレスおよびポート番号が割り当てられたチャネルである。
ステップH3では、モニタから応答つまり隣接情報の応答があるか否かを判定する。モニタから応答があると、ステップH4に進み、モニタから応答がないと、ステップH6に進む。ステップH4では、「piece[total][0]=受信ID」とし、「piece[total][0]からpiece[total][4]に受信隣接情報を格納」し、「piece[total][5]=1」とする。すなわち、total番目のpiece配列の「自ID」に、隣接情報に含まれる隣接情報を送信したモニタのクライアントIDを登録し、total番目のpiece配列の「上ID」、「左ID」、「下ID」、および「右ID」に、それぞれ隣接情報に含まれる上側に隣接するモニタのクライアントID、左側に隣接するモニタのクライアントID、下側に隣接するモニタのクライアントID、および右側に隣接するモニタのクライアントIDを登録する。隣接するモニタがない場合は、隣接するモニタがないことを示す「NULL」が登録される。total番目のpiece配列の「チェック」の項目には、初期値「1」が登録される。
ステップH5では、「total=total+1」とし、totalに応答のあったモニタ数を「1」増やす。ステップH6では、タイムアウト内か否かを判定する。すなわち、ステップH2で送信したID要求に対する応答を監視する監視時間、たとえば10秒が経過していないか否かを判定する。タイムアウト内つまり監視時間内であると、ステップH3に戻り、タイムアウト内つまり監視時間内でないと、終了する。
図33は、図31に示した自動設定処理から呼び出される確認済ID格納配列確保処理のフローチャートである。図31に示したステップG2で呼び出されると、ステップJ1に移る。ステップJ1では、sumi[]の確保/クリアを行い、終了する。すなわち、確認済ID格納配列sumi[]を記憶するための記憶エリアを記憶部11に確保し、その記憶エリアをNULLにクリアし、終了する。
図34は、図31に示した自動設定処理から呼び出される端ID格納配列確保処理のフローチャートである。図31に示したステップG3で呼び出されると、ステップK1に移る。ステップK1では、haji[]の確保/クリアを行い、終了する。すなわち、端ID格納配列haji[]を記憶するための記憶エリアを記憶部11に確保し、その記憶エリアをNULLにクリアし、終了する。
図35は、図31に示した自動設定処理から呼び出される端ID検索処理のフローチャートである。図31に示したステップG4で呼び出されると、ステップL1に移る。ステップL1では、「haji_count=0」とする。すなわち、左側および上側に隣接するモニタのないモニタの数haji_countを「0」にクリアする。ステップL2では、「c=0」とする。すなわち、piece配列のうちでチェック対象の配列のpiece番号「c」を「0」にクリアする。図では、「c」を「C」とも記す。
ステップL3では、piece[c][1]=NULL&piece[c][2]=NULLか否かを判定する。すなわち、チェック対象の配列のモニタが、左側および上側に隣接するモニタのないモニタであるか否かを判定する。piece[c][1]=NULL&piece[c][2]=NULLであると、つまりチェック対象の配列のモニタが左側および上側に隣接するモニタのないモニタであると、ステップL6に進み、piece[c][1]=NULL&piece[c][2]=NULLでないと、つまりチェック対象の配列のモニタが左側または上側に隣接するモニタのあるモニタであると、ステップL4に進む。ステップL4では、「c=c+1」とする。すなわち、piece配列のうちでチェック対象の配列のpiece番号「c」に「1」を加算する。ステップL5では、c<totalか否かを判定する。すなわち、piece配列のうちでチェック対象の配列のpiece番号「c」の値が、モニタの数totalよりも小さいか否かを判定する。c<totalであると、つまりpiece配列のうちでチェック対象の配列のpiece番号「c」の値が、モニタの数totalよりも小さいと、ステップL3に戻り、c<totalでないと、つまりpiece配列のうちでチェック対象の配列のpiece番号「c」の値が、モニタの数totalよりも小さくないと、終了する。
ステップL6では、「haji[haji_count]=piece[c][0]」とする。すなわち、端ID格納配列のhaji_count番目に、左側および上側に隣接するモニタのないモニタのクライアントIDを登録する。ステップL7では、「haji_count=haji_count+1」として、ステップL4に進む。すなわち、左側および上側に隣接するモニタのないモニタの数haji_countに「1」を加算して、ステップL4に進む。
図36は、図31に示した自動設定処理から呼び出されるマップ格納処理の前半部分のフローチャートである。マップ格納処理は、隣接するモニタによって構成されるブロックの確定と、各ブロックを構成するモニタのマップの作成を行う。図31に示したステップG7で呼び出されると、ステップM1に移る。
ステップM1では、「count=0、MM=100、NN=100、cc=0」とする。まず、ブロック内のモニタの数をカウントするためのカウンタcountを「0」にクリアする。次に、1つのブロックについて、モニタを配置する縦方向の候補の位置を示す値MMに、最初にモニタを配置する縦方向の位置を示す値「100」、およびモニタを配置する横方向の候補の位置を示す値NNに最初にモニタを配置する横方向の位置を示す値「100」を設定する。この例では、最初にモニタを配置する縦方向および横方向の位置の値をいずれも「100」としたが、この値に限定されるものではない。さらに、最初のモニタまで戻ったか否かを確認するためのカウンタccを「0」にクリアする。
ステップM2では、「mat[block][0][0]〜mat[block][254][254]=NULL、temp=0」とする。すなわちブロック毎のマップを表す3次元配列matの各要素を「NULL」に初期化し、tempを「0」にクリアする。blockは、ブロックの数をカウントするためのカウンタで、初期値は「0」であり、mat配列の1番目の要素である。mat配列の2番目の要素は、モニタの縦方向の位置を示し、mat配列の3番目の要素は、モニタの縦方向の位置を示す。ストリーミングでは、同じセグメント内で流せるIDは、「0」〜「254」であるので、この例では、mat配列の2番目および3番目の要素の範囲を、「0」〜「254」としたが、これに限定されるものではない。mat配列の2番目および3番目の要素の範囲が、「0」〜「254」であるので、モニタの位置として、縦横いずれも255の位置が用意され、255×255の升目の中に各モニタの位置が設定される。図では、matのことを「Mat」、「temp」のことを「Temp」とも記す。
ステップM3では、「次の確認ID=haji[BB]」とする。すなわち、次に確認するモニタのクライアントIDを、端ID格納配列haji[]のうち、「BB」の値が示す配列位置に登録されている確認済IDとする。つまり左側および上側に隣接するモニタがないモニタとして端ID格納配列に登録されたモニタのうち、「BB」の値が示す配列位置に登録されているクライアントIDとする。
ステップM4では、「現ID=次の確認ID、次の確認ID=NULL」とする。すなわち、現IDつまりこれから隣接するモニタがあるか否かを確認するモニタのクライアントIDを、「次の確認ID」が示すクライアントIDとした後、「次の確認ID」を「NULL」に初期化する。ステップM5では、「sumi[count]=現ID、現IDのpiece[][5]=0」とする。すなわち、確認済ID格納配列sumi[]に現IDが示すクライアントIDを登録し、現IDが示すクライアントIDのpiece配列のチェック項目を「0」つまり確認済とする。
ステップM6では、「M=MM、N=NN」とする。すなわち、マップの縦方向の位置を示すポインタMの値をMMの値とし、マップの横方向の位置を示すポインタNの値をNNの値とする。ステップM7では、piece[0][0]〜piece[total−1][0]の中から、現IDを含む配列を取り出す。ステップM8では、「mat[block][M][N]=現IDのpiece[][0]」とする。すなわち、マップの縦M番目および横N番目の位置を、現IDが示すクライアントIDとする。
ステップM9では、上側に隣接するモニタがあるか否かを確認する後述する上の隣接処理を呼び出す。ステップM10では、左側に隣接するモニタがあるか否かを確認する後述する左の隣接処理を呼び出す。ステップM11では、下側に隣接するモニタがあるか否かを確認する後述する下の隣接処理を呼び出す。ステップM12では、右側に隣接するモニタがあるか否かを確認する後述する右の隣接処理を呼び出す。ステップM13では、「次の確認ID」=NULLであるか否かを判定する。「次の確認ID」がNULLであると、つまり次に確認すべきモニタが隣接するモニタの中にないと、図37に示すステップM20に進み、「次の確認ID」がNULLでないと、つまり次に確認すべきモニタが隣接するモニタの中にあると、ステップM14に進む。ステップM14では、「count=count+1」として、ステップM4に戻る。すなわち、ブロック内のモニタの数をカウントするためのカウンタcountに「1」を加算して、ステップM4に戻る。
図37は、図31に示した自動設定処理から呼び出されるマップ格納処理の後半部分のフローチャートである。図36に示したステップM13で、「次の確認ID」がNULLであると判定されたとき、ステップM20に移る。
ステップM20では、「cc=count」とする。すなわち、最初のモニタまで戻ったか否かを確認するためのカウンタccをブロック内のモニタの数をカウントするためのカウンタcountの値とする。ステップM21では、cc<0であるか否かを判定する。cc<0であると、つまり最初のモニタまで戻ると、終了し、cc<0でないと、つまり最初のモニタまで戻っていないと、ステップM22に進む。
ステップM22では、sumi[cc]のIDのpiece[][1]=NULLであるか否かを判定する。すなわち、確認済ID格納配列sumi[]に登録されているクライアントIDのうち、sumi[cc]に登録されているクライアントIDのpiece配列の上IDがNULLか否かを判定する。sumi[cc]のIDのpiece[][1]=NULLでないとき、つまり上側に隣接するモニタがある場合、ステップM27に進み、sumi[cc]のIDのpiece[][1]=NULLであるとき、つまり上側に隣接するモニタがない場合、ステップM23に進む。
ステップM23では、sumi[cc]のIDのpiece[][2]=NULLであるか否かを判定する。すなわち、確認済ID格納配列sumi[]に登録されているクライアントIDのうち、sumi[cc]に登録されているクライアントIDのpiece配列の左IDがNULLか否かを判定する。sumi[cc]のIDのpiece[][2]=NULLでないとき、つまり左側に隣接するモニタがある場合、ステップM28に進み、sumi[cc]のIDのpiece[][2]=NULLであるとき、つまり左側に隣接するモニタがない場合、ステップM24に進む。
ステップM24では、sumi[cc]のIDのpiece[][3]=NULLであるか否かを判定する。すなわち、確認済ID格納配列sumi[]に登録されているクライアントIDのうち、sumi[cc]に登録されているクライアントIDのpiece配列の下IDがNULLか否かを判定する。sumi[cc]のIDのpiece[][3]=NULLでないとき、つまり下側に隣接するモニタがある場合、ステップM29に進み、sumi[cc]のIDのpiece[][3]=NULLであるとき、つまり下側に隣接するモニタがない場合、ステップM25に進む。
ステップM25では、sumi[cc]のIDのpiece[][4]=NULLであるか否かを判定する。すなわち、確認済ID格納配列sumi[]に登録されているクライアントIDのうち、sumi[cc]に登録されているクライアントIDのpiece配列の右IDがNULLか否かを判定する。sumi[cc]のIDのpiece[][4]=NULLでないとき、つまり右側に隣接するモニタがある場合、ステップM30に進み、sumi[cc]のIDのpiece[][4]=NULLであるとき、つまり右側に隣接するモニタがない場合、ステップM26に進む。ステップM26は、「cc=cc−1」とする。すなわち、最初のモニタまで戻ったか否かを確認するためのカウンタccから「1」減算し、ステップM21に戻る。
ステップM27では、「次の確認ID=sumi[cc]のIDを持つpiece[][1]」として、ステップM31に進む。すなわち、「次の確認ID」を、sumi[cc]に登録されているクライアントIDのpiece配列の上IDのクライアントIDとして、ステップM31に進む。ステップM28では、「次の確認ID=sumi[cc]のIDを持つpiece[][2]」として、ステップM31に進む。すなわち、「次の確認ID」を、sumi[cc]に登録されているクライアントIDのpiece配列の左IDのクライアントIDとして、ステップM31に進む。ステップM29では、「次の確認ID=sumi[cc]のIDを持つpiece[][3]」として、ステップM31に進む。すなわち、「次の確認ID」を、sumi[cc]に登録されているクライアントIDのpiece配列の下IDのクライアントIDとして、ステップM31に進む。ステップM30では、「次の確認ID=sumi[cc]のIDを持つpiece[][4]」として、ステップM31に進む。すなわち、「次の確認ID」を、sumi[cc]に登録されているクライアントIDのpiece配列の右IDのクライアントIDとして、ステップM31に進む。
ステップM31では、「次の確認ID」があるmat[block]のmat[block][M][]とmat[block][][N]とを探す。すなわち、「次の確認ID」が示すクライアントIDを含むブロックの中から、「次の確認ID」が位置する縦方向の位置Mと横方向の位置Nとを探す。具体的には、まず、sumi[cc]のIDのモニタの位置を既に登録されているブロックのマップの中から探し、次に、探した位置を基準に、sumi[cc]のIDのモニタの位置と「次の確認ID」が示すクライアントIDのモニタの位置との相対的な位置関係に基づいて、「次の確認ID」が示すクライアントIDのモニタの位置を確定し、その縦方向の位置をMとし、横方向の位置をNとする。
ステップM32では、「MM=M、NN=N」として、図36に示したステップM14に戻る。すなわち、MMの値をMの値とし、NNの値をNの値とする。MMおよびNNを次に確認するモニタのマップ内の位置を表す値、つまりステップM31で探したMおよびNの値にして、図36に示したステップM14に戻る。
図38は、図36に示したマップ格納処理から呼び出される上の隣接処理のフローチャートである。上の隣接処理は、上側に隣接するモニタがあるか否かを確認する。図36に示したステップM9で呼び出されると、ステップN1に移る。
ステップN1では、現IDのpiece[][1]がNULLでないか否かを判定する。現IDのpiece[][1]がNULLでないと、つまり現IDのpiece配列の上IDにクライアントIDがあると、ステップN2に進み、現IDのpiece[][1]がNULLであると、つまり現IDのpiece配列の上IDにクライアントIDがないと終了する。
ステップN2では、現IDのpiece[][1]のクライアントIDが、piece[0][0]〜piece[total−1][0]にあるか否かを判定する。すなわち、現IDのpiece配列の上IDが示すクライアントIDが、piece配列の自IDの中にあるか否かを判定する。現IDのpiece[][1]のクライアントIDがpiece[0][0]〜piece[total−1][0]にあると、つまり現IDのpiece配列の上IDが示すクライアントIDが、piece配列の自IDの中にあると、ステップN3に進み、現IDのpiece[][1]のクライアントIDがpiece[0][0]〜piece[total−1][0]にないと、つまり現IDのpiece配列の上IDが示すクライアントIDが、piece配列の自IDの中にないと、終了する。
ステップN3では、対象のpiece[][5]が「0」でないか否かを判定する。すなわち、上IDが示すクライアントIDのpiece配列のチェック項目が「0」でないか否かを判定する。対象のpiece[][5]が「0」でないと、つまり上IDが示すクライアントIDのpiece配列のチェック項目が確認済みでないと、ステップN4に進み、対象のpiece[][5]が「0」であると、つまり上IDが示すクライアントIDのpiece配列のチェック項目が確認済みであると、終了する。
ステップN4では、mat[block][M−1][N]がNULLでないか否かを判定する。すなわち、マップ上で1つ上の位置にクライアントIDが設定されているか否かを判定する。mat[block][M−1][N]がNULLでないと、つまりマップ上で1つ上の位置にクライアントIDが設定されていると、ステップN7に進み、mat[block][M−1][N]がNULLであると、つまりマップ上で1つ上の位置にクライアントIDが設定されていないと、ステップN5に進む。ステップN5では、「対象のpiece[][5]=2」とする。すなわち、上IDが示すクライアントIDのpiece配列のチェック項目を「2」にする。「2」は、配置の確認が完了しているモニタに隣接しており、かつまだ確認が行われていない状態であることを示す。ステップN6では、mat[block][M−1][N]に現IDのpiece[][1]を設定する。すなわち、マップ上で1つ上の位置に、現IDのpiece配列の上IDのクライアントIDを設定する。
ステップN7では、現IDを持つpiece[][1]をTIDに代入し、現IDを持つpiece[][1]をNULLにする。すなわち現IDのpiece配列の上IDをNULLにし、検索済とする。TIDは、次の確認IDとすべきクライアントIDを一時的に記憶するためのワークである。ステップN8では、対象のIDを持つpiece[][3]をNULLにする。すなわち、「次の確認ID」のpiece配列の下IDをNULLにし、検索済とする。ステップN9では、「次の確認ID=TID」とする。すなわち、「次の確認ID」を現IDのpiece配列にあった上IDのクライアントIDとする。ステップN10では、「MM=M−1、NN=N」として、終了する。すなわち、MMおよびNNを次に確認するモニタのマップ内の位置、つまり1つ上の位置を表す値にして、終了する。
図39は、図36に示したマップ格納処理から呼び出される左の隣接処理のフローチャートである。左の隣接処理は、左側に隣接するモニタがあるか否かを確認する。図36に示したステップM10で呼び出されると、ステップP1に移る。
ステップP1では、現IDのpiece[][2]がNULLでないか否かを判定する。現IDのpiece[][2]がNULLでないと、つまり現IDのpiece配列の左IDにクライアントIDがあると、ステップP2に進み、現IDのpiece[][2]がNULLであると、つまり現IDのpiece配列の左IDにクライアントIDがないと終了する。
ステップP2では、現IDのpiece[][2]のクライアントIDが、piece[0][0]〜piece[total−1][0]にあるか否かを判定する。すなわち、現IDのpiece配列の左IDが示すクライアントIDが、piece配列の自IDの中にあるか否かを判定する。現IDのpiece[][2]のクライアントIDがpiece[0][0]〜piece[total−1][0]にあると、つまり現IDのpiece配列の左IDが示すクライアントIDが、piece配列の自IDの中にあると、ステップP3に進み、現IDのpiece[][2]のクライアントIDがpiece[0][0]〜piece[total−1][0]にないと、つまり現IDのpiece配列の左IDが示すクライアントIDが、piece配列の自IDの中にないと、終了する。
ステップP3では、対象のpiece[][5]が「0」でないか否かを判定する。すなわち、左IDが示すクライアントIDのpiece配列のチェック項目が「0」でないか否かを判定する。対象のpiece[][5]が「0」でないと、つまり左IDが示すクライアントIDのpiece配列のチェック項目が確認済みでないと、ステップP4に進み、対象のpiece[][5]が「0」であると、つまり左IDが示すクライアントIDのpiece配列のチェック項目が確認済みであると、終了する。
ステップP4では、mat[block][M][N−1]がNULLでないか否かを判定する。すなわち、マップ上で1つ左の位置にクライアントIDが設定されているか否かを判定する。mat[block][M][N−1]がNULLでないと、つまりマップ上で1つ左の位置にクライアントIDが設定されていると、ステップP7に進み、mat[block][M][N−1]がNULLであると、つまりマップ上で1つ左の位置にクライアントIDが設定されていないと、ステップP5に進む。ステップP5では、「対象のpiece[][5]=2」とする。すなわち、左IDが示すクライアントIDのpiece配列のチェック項目を「2」にする。「2」は、配置の確認が完了しているモニタに隣接しており、かつまだ確認が行われていない状態であることを示す。ステップP6では、mat[block][M][N−1]に現IDのpiece[][2]を設定する。すなわち、マップ上で1つ左の位置に、現IDのpiece配列の左IDのクライアントIDを設定する。
ステップP7では、現IDを持つpiece[][2]をTIDに代入し、現IDを持つpiece[][2]をNULLにする。すなわち現IDのpiece配列の左IDをNULLにし、検索済とする。ステップP8では、対象のIDを持つpiece[][4]をNULLにする。すなわち、「次の確認ID」のpiece配列の右IDをNULLにし、検索済とする。ステップP9では、「次の確認ID」が設定されているか否かを判定する。「次の確認ID」が設定されていると、終了し、「次の確認ID」が設定されていないと、ステップP10に進む。すなわち、図38に示した上の隣接処理で、すでに「次の確認ID」が設定されている場合は、「次の確認ID」の更新をスキップする。
ステップP10では、「次の確認ID=TID」とする。すなわち、「次の確認ID」を現IDのpiece配列にあった左IDのクライアントIDとする。ステップP11では、「MM=M、NN=N−1」として、終了する。すなわち、MMおよびNNを次に確認するモニタのマップ内の位置、つまり1つ左の位置を表す値にして、終了する。
図40は、図36に示したマップ格納処理から呼び出される下の隣接処理のフローチャートである。下の隣接処理は、下側に隣接するモニタがあるか否かを確認する。図36に示したステップM11で呼び出されると、ステップQ1に移る。
ステップQ1では、現IDのpiece[][3]がNULLでないか否かを判定する。現IDのpiece[][3]がNULLでないと、つまり現IDのpiece配列の下IDにクライアントIDがあると、ステップQ2に進み、現IDのpiece[][3]がNULLであると、つまり現IDのpiece配列の下IDにクライアントIDがないと終了する。
ステップQ2では、現IDのpiece[][3]のクライアントIDが、piece[0][0]〜piece[total−1][0]にあるか否かを判定する。すなわち、現IDのpiece配列の下IDが示すクライアントIDが、piece配列の自IDの中にあるか否かを判定する。現IDのpiece[][3]のクライアントIDがpiece[0][0]〜piece[total−1][0]にあると、つまり現IDのpiece配列の下IDが示すクライアントIDが、piece配列の自IDの中にあると、ステップQ3に進み、現IDのpiece[][3]のクライアントIDがpiece[0][0]〜piece[total−1][0]にないと、つまり現IDのpiece配列の下IDが示すクライアントIDが、piece配列の自IDの中にないと、終了する。
ステップQ3では、対象のpiece[][5]が「0」でないか否かを判定する。すなわち、下IDが示すクライアントIDのpiece配列のチェック項目が「0」でないか否かを判定する。対象のpiece[][5]が「0」でないと、つまり下IDが示すクライアントIDのpiece配列のチェック項目が確認済みでないと、ステップQ4に進み、対象のpiece[][5]が「0」であると、つまり下IDが示すクライアントIDのpiece配列のチェック項目が確認済みであると、終了する。
ステップQ4では、mat[block][M+1][N]がNULLでないか否かを判定する。すなわち、マップ上で1つ下の位置にクライアントIDが設定されているか否かを判定する。mat[block][M+1][N]がNULLでないと、つまりマップ上で1つ下の位置にクライアントIDが設定されていると、ステップQ7に進み、mat[block][M+1][N]がNULLであると、つまりマップ上で1つ下の位置にクライアントIDが設定されていないと、ステップQ5に進む。ステップQ5では、「対象のpiece[][5]=2」とする。すなわち、下IDが示すクライアントIDのpiece配列のチェック項目を「2」にする。「2」は、配置の確認が完了しているモニタに隣接しており、かつまだ確認が行われていない状態であることを示す。ステップQ6では、mat[block][M+1][N]に現IDのpiece[][3]を設定する。すなわち、マップ上で1つ下の位置に、現IDのpiece配列の下IDのクライアントIDを設定する。
ステップQ7では、現IDを持つpiece[][3]をTIDに代入し、現IDを持つpiece[][3]をNULLにする。すなわち現IDのpiece配列の下IDをNULLにし、検索済とする。ステップQ8では、対象のIDを持つpiece[][1]をNULLにする。すなわち、「次の確認ID」のpiece配列の上IDをNULLにし、検索済とする。ステップQ9では、「次の確認ID」が設定されているか否かを判定する。「次の確認ID」が設定されていると、終了し、「次の確認ID」が設定されていないと、ステップQ10に進む。すなわち、図38に示した上の隣接処理または図39に示した左の隣接処理で、すでに「次の確認ID」が設定されている場合は、「次の確認ID」の更新をスキップする。
ステップQ10では、「次の確認ID=TID」とする。すなわち、「次の確認ID」を現IDのpiece配列にあった下IDのクライアントIDとする。ステップQ11では、「MM=M+1、NN=N」として、終了する。すなわち、MMおよびNNを次に確認するモニタのマップ内の位置、つまり1つ下の位置を表す値にして、終了する。
図41は、図36に示したマップ格納処理から呼び出される右の隣接処理のフローチャートである。右の隣接処理は、右側に隣接するモニタがあるか否かを確認する。図36に示したステップM12で呼び出されると、ステップR1に移る。
ステップR1では、現IDのpiece[][4]がNULLでないか否かを判定する。現IDのpiece[][4]がNULLでないと、つまり現IDのpiece配列の右IDにクライアントIDがあると、ステップR2に進み、現IDのpiece[][4]がNULLであると、つまり現IDのpiece配列の右IDにクライアントIDがないと終了する。
ステップR2では、現IDのpiece[][4]のクライアントIDが、piece[0][0]〜piece[total−1][0]にあるか否かを判定する。すなわち、現IDのpiece配列の右IDが示すクライアントIDが、piece配列の自IDの中にあるか否かを判定する。現IDのpiece[][4]のクライアントIDがpiece[0][0]〜piece[total−1][0]にあると、つまり現IDのpiece配列の右IDが示すクライアントIDが、piece配列の自IDの中にあると、ステップR3に進み、現IDのpiece[][4]のクライアントIDがpiece[0][0]〜piece[total−1][0]にないと、つまり現IDのpiece配列の右IDが示すクライアントIDが、piece配列の自IDの中にないと、終了する。
ステップR3では、対象のpiece[][5]が「0」でないか否かを判定する。すなわち、右IDが示すクライアントIDのpiece配列のチェック項目が「0」でないか否かを判定する。対象のpiece[][5]が「0」でないと、つまり右IDが示すクライアントIDのpiece配列のチェック項目が確認済みでないと、ステップR4に進み、対象のpiece[][5]が「0」であると、つまり右IDが示すクライアントIDのpiece配列のチェック項目が確認済みであると、終了する。
ステップR4では、mat[block][M][N+1]がNULLでないか否かを判定する。すなわち、マップ上で1つ右の位置にクライアントIDが設定されているか否かを判定する。mat[block][M][N+1]がNULLでないと、つまりマップ上で1つ右の位置にクライアントIDが設定されていると、ステップQ7に進み、mat[block][M][N+1]がNULLであると、つまりマップ上で1つ右の位置にクライアントIDが設定されていないと、ステップQ5に進む。ステップQ5では、「対象のpiece[][5]=2」とする。すなわち、右IDが示すクライアントIDのpiece配列のチェック項目を「2」にする。「2」は、配置の確認が完了しているモニタに隣接しており、かつまだ確認が行われていない状態であることを示す。ステップR6では、mat[block][M][N+1]に現IDのpiece[][4]を設定する。すなわち、マップ上で1つ右の位置に、現IDのpiece配列の右IDのクライアントIDを設定する。
ステップR7では、現IDを持つpiece[][4]をTIDに代入し、現IDを持つpiece[][4]をNULLにする。すなわち現IDのpiece配列の右IDをNULLにし、検索済とする。ステップR8では、対象のIDを持つpiece[][2]をNULLにする。すなわち、「次の確認ID」のpiece配列の左IDをNULLにし、検索済とする。ステップR9では、「次の確認ID」が設定されているか否かを判定する。「次の確認ID」が設定されていると、終了し、「次の確認ID」が設定されていないと、ステップR10に進む。すなわち、図38に示した上の隣接処理、図39に示した左の隣接処理、または図40に示した下の隣接処理で、すでに「次の確認ID」が設定されている場合は、「次の確認ID」の更新をスキップする。
ステップR10では、「次の確認ID=TID」とする。すなわち、「次の確認ID」を現IDのpiece配列にあった右IDのクライアントIDとする。ステップR11では、「MM=M、NN=N+1」として、終了する。すなわち、MMおよびNNを次に確認するモニタのマップ内の位置、つまり1つ右の位置を表す値にして、終了する。
図42は、図27に示した位置設定処理から呼び出される有効ブロック選択処理のフローチャートである。有効ブロック選択処理は、コンテンツを表示させるブロックを選択する。図27に示したステップF8で呼び出されると、ステップS1に移る。
ステップS1では、block>0であるか否かを判定する。すなわち、block=0のとき、ブロック数が「1」であるので、ブロックの数が「1」よりも大きいか否かを判定する。block>0であると、つまりブロックの数が「1」よりも大きいと、2つ以上のブロックに分かれているので、ステップS4に進み、block>0でないと、つまりブロックの数が「1」よりも大きくないと、ステップS2に進む。ステップS2では、block=0を有効とする。すなわち、block=0として、ブロック数が「1」であることを示す。ステップS3では、選択ブロックが、四角として構成されるか否かを判定する。すなわち、選択されて有効とされたブロックの形状つまりブロックを構成するモニタの画面が形成する形状が、四角形であるか否かを判定する。選択ブロックが四角として構成されると、つまり選択ブロックの形状が四角形であると、終了し、選択ブロックが四角として構成されていないと、つまり選択ブロックの形状が四角形でないと、ステップS6に進む。選択されたブロックの形状が四角形である場合は、そのブロックに含まれるモニタのクライアントIDが記憶部11に記憶される。
ステップS4では、ブロックの選択を行う。すなわち、複数のブロックの中から、コンテンツを表示するブロックを1つ選択する。ブロックの選択は、たとえば図27に示したステップF7の自動設定処理で、自動で設定されたモニタの構成の中の複数のブロックを、ブロック番号を付して、サーバ10の図示しない出力装置に表示し、サーバ10の図示しない入力装置によって、ブロック番号を指定することによって選択する。ステップS5では、選択したブロックを有効とし、ステップS3に進む。ステップS6では、有効域の選択を行って終了する。たとえば選択されたモニタの画面からなる形状が四角形を形成するようにモニタを選択して、終了する。モニタ選択は、たとえばサーバ10の図示しない入力装置によって、クライアントIDを指定することによって選択してもよいし、構成設定画面40で設定されているモニタを指示することによって選択してもよい。選択されたブロック番号および選択されたモニタのクライアントIDは、記憶部11に記憶される。サーバ10は、記憶部11に記憶されたブロック番号が示すブロックを構成するモニタのうち、選択されたモニタに対して、コンテンツを送信する。
このように、記憶手段であるたとえば記録部23によって、予め定めるデータ単位毎であるたとえばフレーム単位毎に、時系列順で再生されるべきタイミングを表すタイミング情報であるたとえばタイムスタンプが付される動画像情報であるたとえばコンテンツが記憶され、表示手段であるたとえば表示部24によって、記憶手段から動画像情報が読み出されて画像として表示再生され、抽出手段であるたとえばタイムスタンプ抽出部271によって、表示再生すべき動画像情報から時系列順にタイミング情報が抽出され、指示手段であるたとえば入力部22によって、動画像情報の再生が指示され、送受信手段であるたとえばクライアント通信部21によって、通信回線であるたとえばLAN30を介して、少なくともタイミング情報が送受信される複数の表示装置であるたとえばクライアント20を含む多画面表示システムであるたとえば多画面表示装置1で動画像を表示再生するにあたって、各送受信手段によって、複数の表示装置が通信回線を介して相互に接続され、複数の表示装置のうちいずれかの表示装置が有する指示手段によって動画像情報の再生が指示されると、この指示手段を有する表示装置によって、表示再生すべき動画像情報から抽出手段によって時系列順にタイミング情報が順次抽出され、抽出されたタイミング情報が送受信手段によって順次送信される。さらに、各表示装置によって、送受信手段によってタイミング情報が受信されると、それぞれの表示装置で、表示手段によって、記憶手段に記憶される動画像情報うち、受信されたタイミング情報に応じたタイミング情報が付された部分が読み出されて画像として表示再生されるので、動画像情報の再生が指示された表示装置からのタイミング情報によって、各表示装置は継続して同期を合わせることができ、時間が経過しても、各表示装置に表示される動画像の同期を維持することができる。したがって、この多画面表示システムを用いれば、画像を再生する際に、表示装置全体を制御するサーバは必要がなく、表示装置だけで同期をとって画像を再生することができる。
さらに前記複数の表示装置であるたとえばクライアント20は、主表示装置であるたとえば主クライアントと副表示装置であるたとえば副クライアントとを含み、主表示装置が有する指示手段であるたとえば入力部22によって動画像情報であるたとえばコンテンツの再生が指示されると、主表示装置によって、表示再生すべき動画像情報から抽出手段であるたとえばタイムスタンプ抽出部271によって時系列順にタイミング情報であるたとえばタイムスタンプが順次抽出され、抽出されたタイミング情報が送受信手段であるたとえばクライアント通信部21によって順次送信され、主表示装置および副表示装置によって、送受信手段によってタイミング情報が受信されると、表示手段であるたとえば表示部24によって、記憶手段であるたとえば記録部23に記憶される動画像情報のうち、受信したタイミング情報に応じたタイミング情報が付された部分が読み出されて画像として表示再生されるので、再生を開始する前に、表示装置以外の装置たとえばサーバなどによって主表示装置を選択しておくことができる。したがって、表示装置の処理能力に応じて、主表示装置を変更することができる。
さらにまた、前記副表示装置であるたとえば副クライアントが有する指示手段であるたとえば入力部22によって動画像情報であるたとえばコンテンツの再生が指示されると、この指示手段を有する副表示装置によって、動画像情報の再生の指示を表す再生指示情報が送受信手段であるたとえばクライアント通信部21によって前記主表示装置であるたとえば主クライアントに送信され、主表示装置によって、送受信手段によって再生指示情報が受信されると、表示再生すべき動画像情報から抽出手段であるたとえばタイムスタンプ抽出部271によって時系列順にタイミング情報であるたとえばタイムスタンプが順次抽出され、抽出されたタイミング情報が送受信手段によって順次送信されるので、再生の開始が、主表示装置以外の表示装置で指示されても、主表示装置をマスタとすることができる。したがって、どの表示装置からでも再生の開始を指示することができ、利便性を向上することができる。
さらにまた、予め定めるデータ単位毎であるたとえばフレーム単位毎に、時系列順で再生されるべきタイミングを表すタイミング情報であるたとえばタイムスタンプが付される動画像情報であるたとえばコンテンツを記憶する記憶部であるたとえば記録部23と、記憶部から動画像情報を読み出して画像として表示再生する表示部であるたとえば表示部24と、動画像情報の再生を指示する指示部であるたとえば入力部22とをそれぞれ有する複数の表示装置であるたとえばクライアント20を含む多画面表示システムであるたとえば多画面表示装置1で動画像を表示再生するにあたって、タイミング情報取得可能化工程であるたとえば主クライアントの同期再生処理では、複数の表示装置うちいずれかの表示装置が有する指示部から動画像情報の再生が指示されると、この指示部を有する表示装置で、表示再生すべき動画像情報から時系列順にタイミング情報を順次抽出し、抽出したタイミング情報を順次通信回線であるたとえばLAN30を介して取得可能にする。さらに、表示工程であるたとえば主クライアントの同期再生処理および副クライアントの同期再生処理では、各表示装置で、通信回線を介して、タイミング情報取得可能化工程で順次取得可能化されたタイミング情報を順次取得し、記憶部に記憶される動画像情報のうち、取得したタイミング情報に応じたタイミング情報が付された部分を順次読み出して画像として表示部に表示再生するので、動画像情報の再生が指示された表示装置からのタイミング情報によって、各表示装置は継続して同期を合わせることができ、時間が経過しても、各表示装置に表示される動画像の同期を維持することができる。したがって、この表示方法を多画面表示システムに適用することによって、画像を再生する際に、表示装置全体を制御するサーバは必要がなく、表示装置だけで同期をとって画像を再生することができる。
本発明の実施の一形態である多画面表示装置1の構成を示す。 図1に示したサーバ10からクライアント20へのコンテンツの送信例を示す。 図1に示したクライアント20の外観の斜視図である。 図3に示した検出器26の端子の配置例を示す。 図3に示した検出器26の端子と隣接するクライアント20の検出器26の端子との接続関係を示す。 図3に示した検出器26を接続する接続ケーブル36の一例を示す。 図1に示したサーバ10における構成設定画面40の例を示す。 図7に示した構成設定画面40に表示されたクライアント20の実際の位置との対応を示す。 図7に示した構成設定画面40での2台目のクライアント20の手動設定の例を示す。 図7に示した構成設定画面40で手動設定されたクライアント20の配置位置を示す。 図1に示したサーバ10とクライアント20とで送受信される情報を示す。 図11に示したクライアント20が受信した連携情報を連携情報DB60に反映する例を示す。 図1に示した記録部23に記憶される連携情報DB60の一例を示す。 図1に示したクライアント20のDB更新画面50の一例を示す。 図13に示したDB更新画面50で更新された更新内容の各クライアントへのフィードバックの手順を示す。 図1に示したクライアント20での同期再生に関連する部分のブロック図である。 図1に示したクライアント20間での同期再生の開始手順を示す。 図17に示した主クライアントおよび副クライアントでの同期再生を示す。 図1に示したサーバ10での連携情報生成処理のフローチャートである。 図1に示したクライアント20での連携情報保存処理のフローチャートである。
図1に示したクライアント20での連携情報保存詳細処理のフローチャートである。 図1に示したクライアント20での連携情報更新処理のフローチャートである。 図1に示したクライアント20での入力部22による連携再生開始処理のフローチャートである。 図1に示したクライアント20での他機からの要求による連携再生DB更新処理のフローチャートである。 図18に示した主クライアントの同期再生処理のフローチャートである。 図18に示した副クライアントの同期再生処理のフローチャートである。 図1に示したサーバ10が処理する位置設定処理のフローチャートである。 図1に示したサーバ10が用いる受信配列およびpiece配列の例を示す。 図1に示したサーバ10が用いる確認済ID格納配列の例を示す。 図1に示したサーバ10が用いる端ID格納配列の例を示す。 図27に示した位置設定処理から呼び出される自動設定処理のフローチャートである。 図31に示した自動設定処理から呼び出される構成取得・格納処理のフローチャートである。 図31に示した自動設定処理から呼び出される確認済ID格納配列確保処理のフローチャートである。 図31に示した自動設定処理から呼び出される端ID格納配列確保処理のフローチャートである。 図31に示した自動設定処理から呼び出される端ID検索処理のフローチャートである。 図31に示した自動設定処理から呼び出されるマップ格納処理の前半部分のフローチャートである。 図31に示した自動設定処理から呼び出されるマップ格納処理の後半部分のフローチャートである。 図36に示したマップ格納処理から呼び出される上の隣接処理のフローチャートである。 図36に示したマップ格納処理から呼び出される左の隣接処理のフローチャートである。 図36に示したマップ格納処理から呼び出される下の隣接処理のフローチャートである。
図36に示したマップ格納処理から呼び出される右の隣接処理のフローチャートである。 図27に示した位置設定処理から呼び出される有効ブロック選択処理のフローチャートである。
符号の説明
1 多画面表示装置
10 サーバ
11 記憶部
12 映像出力部
13 サーバ通信部
14 サーバ制御部
20 クライアント
21 クライアント通信部
22 入力部
23 記録部
24 表示部
26 位置検出部
27 クライアント制御部
30 LAN
36 接続ケーブル
40 構成設定画面
50 DB更新画面
60 連携情報DB
211 送信部
212 受信部
271 タイムスタンプ抽出部
272 遅延部
273 FIFOバッファ
274 シンクロ部

Claims (4)

  1. 予め定めるデータ単位毎に、時系列順で再生されるべきタイミングを表すタイミング情報が付される動画像情報を記憶する記憶手段と、記憶手段から動画像情報を読み出して画像として表示再生する表示手段と、表示再生すべき動画像情報から時系列順にタイミング情報を抽出する抽出手段と、動画像情報の再生を指示する指示手段と、通信回線を介して、少なくともタイミング情報を送受信する送受信手段とをそれぞれ有する複数の表示装置を含み、
    複数の表示装置の送受信手段は、通信回線を介して相互に接続され、
    複数の表示装置のうちいずれかの表示装置が有する指示手段によって動画像情報の再生が指示されると、この指示手段を有する表示装置では、表示再生すべき動画像情報から抽出手段によって時系列順にタイミング情報を順次抽出し、抽出したタイミング情報を送受信手段によって順次送信し、
    各表示装置は、送受信手段によってタイミング情報を受信すると、それぞれの表示装置で、表示手段が記憶手段に記憶される動画像情報うち、受信したタイミング情報に応じたタイミング情報が付された部分を読み出して画像として表示再生することを特徴とする多画面表示システム。
  2. 前記複数の表示装置は、主表示装置と副表示装置とを含み、
    主表示装置が有する指示手段によって動画像情報の再生が指示されると、主表示装置では、表示再生すべき動画像情報から抽出手段によって時系列順にタイミング情報を順次抽出し、抽出したタイミング情報を送受信手段によって順次送信し、
    主表示装置および副表示装置は、送受信手段によってタイミング情報を受信すると、表示手段が記憶手段に記憶される動画像情報のうち、受信したタイミング情報に応じたタイミング情報が付された部分を読み出して画像として表示再生することを特徴とする請求項1に記載の多画面表示システム。
  3. 前記副表示装置が有する指示手段によって動画像情報の再生が指示されると、この指示手段を有する副表示装置では、動画像情報の再生の指示を表す再生指示情報を送受信手段によって前記主表示装置に送信し、
    主表示装置では、送受信手段によって再生指示情報を受信すると、表示再生すべき動画像情報から抽出手段によって時系列順にタイミング情報を順次抽出し、抽出したタイミング情報を送受信手段によって順次送信することを特徴とする請求項2に記載の多画面表示システム。
  4. 予め定めるデータ単位毎に、時系列順で再生されるべきタイミングを表すタイミング情報が付される動画像情報を記憶する記憶部と、記憶部から動画像情報を読み出して画像として表示再生する表示部と、動画像情報の再生を指示する指示部とをそれぞれ有する複数の表示装置を含む多画面表示システムの表示方法であって、
    複数の表示装置うちいずれかの表示装置が有する指示部から動画像情報の再生が指示されると、この指示部を有する表示装置で、表示再生すべき動画像情報から時系列順にタイミング情報を順次抽出し、抽出したタイミング情報を順次通信回線を介して取得可能にするタイミング情報取得可能化工程と、
    各表示装置で、通信回線を介して、タイミング情報取得可能化工程で順次取得可能化されたタイミング情報を順次取得し、記憶部に記憶される動画像情報のうち、取得したタイミング情報に応じたタイミング情報が付された部分を順次読み出して画像として表示部に表示再生する表示工程とを含むことを特徴とする多画面表示システムの表示方法。
JP2006279307A 2006-10-12 2006-10-12 多画面表示システムおよびその表示方法 Pending JP2008096756A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006279307A JP2008096756A (ja) 2006-10-12 2006-10-12 多画面表示システムおよびその表示方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006279307A JP2008096756A (ja) 2006-10-12 2006-10-12 多画面表示システムおよびその表示方法

Publications (1)

Publication Number Publication Date
JP2008096756A true JP2008096756A (ja) 2008-04-24

Family

ID=39379664

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006279307A Pending JP2008096756A (ja) 2006-10-12 2006-10-12 多画面表示システムおよびその表示方法

Country Status (1)

Country Link
JP (1) JP2008096756A (ja)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011120082A (ja) * 2009-12-04 2011-06-16 Mitsubishi Electric Corp 列車内映像表示システムおよび方法
JP2011228784A (ja) * 2010-04-15 2011-11-10 Nippon Telegr & Teleph Corp <Ntt> 同期再生システム、同期再生方法及び同期再生プログラム
JP2012049836A (ja) * 2010-08-27 2012-03-08 Hitachi Consumer Electronics Co Ltd 映像音声出力装置、および映像音声出力システム、およびマスタ装置
JP2012513645A (ja) * 2009-04-13 2012-06-14 エンサーズ カンパニー リミテッド 動画像関連広告を提供する方法およびその装置
JP2012169739A (ja) * 2011-02-10 2012-09-06 Nippon Telegr & Teleph Corp <Ntt> 映像分割再生方法、映像再生方法、映像分割再生システム、及び映像分割再生プログラム
JP2014127762A (ja) * 2012-12-25 2014-07-07 Mitsubishi Electric Corp 映像情報再生方法及びシステム
JP2015022592A (ja) * 2013-07-19 2015-02-02 株式会社リコー 集合出力システム、端末装置および出力プログラム
US8954496B2 (en) 2010-12-10 2015-02-10 Mitsubishi Electric Corporation Multi-screen display system
CN104572000A (zh) * 2015-01-23 2015-04-29 广州视源电子科技股份有限公司 拼接墙开机logo显示方法以及装置
US9066061B2 (en) 2009-11-27 2015-06-23 Mitsubishi Electric Corporation Video information reproduction method and system, and video information content
JP2015170369A (ja) * 2014-03-05 2015-09-28 三菱電機株式会社 映像情報再生システム、この映像情報再生システムを備えた映像情報表示システム及びこの映像情報再生システムに設けられた車両内映像再生装置
US9323495B2 (en) 2012-03-16 2016-04-26 Sony Corporation Display, client computer device and method for displaying a moving object
JP2017102962A (ja) * 2017-02-03 2017-06-08 タイト ケア リミテッド 自動の及び遠隔の訓練された人によりガイドされる医学検査を行うためのシステム及び方法
JP2017183854A (ja) * 2016-03-29 2017-10-05 セイコーエプソン株式会社 表示システム、表示装置、頭部装着型表示装置、表示制御方法、表示装置の制御方法、及び、プログラム

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012513645A (ja) * 2009-04-13 2012-06-14 エンサーズ カンパニー リミテッド 動画像関連広告を提供する方法およびその装置
US9066061B2 (en) 2009-11-27 2015-06-23 Mitsubishi Electric Corporation Video information reproduction method and system, and video information content
JP2011120082A (ja) * 2009-12-04 2011-06-16 Mitsubishi Electric Corp 列車内映像表示システムおよび方法
JP2011228784A (ja) * 2010-04-15 2011-11-10 Nippon Telegr & Teleph Corp <Ntt> 同期再生システム、同期再生方法及び同期再生プログラム
JP2012049836A (ja) * 2010-08-27 2012-03-08 Hitachi Consumer Electronics Co Ltd 映像音声出力装置、および映像音声出力システム、およびマスタ装置
US8954496B2 (en) 2010-12-10 2015-02-10 Mitsubishi Electric Corporation Multi-screen display system
JP2012169739A (ja) * 2011-02-10 2012-09-06 Nippon Telegr & Teleph Corp <Ntt> 映像分割再生方法、映像再生方法、映像分割再生システム、及び映像分割再生プログラム
US9323495B2 (en) 2012-03-16 2016-04-26 Sony Corporation Display, client computer device and method for displaying a moving object
JP2014127762A (ja) * 2012-12-25 2014-07-07 Mitsubishi Electric Corp 映像情報再生方法及びシステム
JP2015022592A (ja) * 2013-07-19 2015-02-02 株式会社リコー 集合出力システム、端末装置および出力プログラム
JP2015170369A (ja) * 2014-03-05 2015-09-28 三菱電機株式会社 映像情報再生システム、この映像情報再生システムを備えた映像情報表示システム及びこの映像情報再生システムに設けられた車両内映像再生装置
CN104572000A (zh) * 2015-01-23 2015-04-29 广州视源电子科技股份有限公司 拼接墙开机logo显示方法以及装置
JP2017183854A (ja) * 2016-03-29 2017-10-05 セイコーエプソン株式会社 表示システム、表示装置、頭部装着型表示装置、表示制御方法、表示装置の制御方法、及び、プログラム
JP2017102962A (ja) * 2017-02-03 2017-06-08 タイト ケア リミテッド 自動の及び遠隔の訓練された人によりガイドされる医学検査を行うためのシステム及び方法

Similar Documents

Publication Publication Date Title
JP2008096756A (ja) 多画面表示システムおよびその表示方法
US7777692B2 (en) Multi-screen video reproducing system
JP3664132B2 (ja) ネットワーク情報処理システム及び情報処理方法
KR101045321B1 (ko) 동기화된 영상을 디스플레이하는 디스플레이 시스템 및 디스플레이 방법
KR101243390B1 (ko) 표시 장치 및 이동 장치로의 컨텐츠 전달을 동기화하는 장치, 시스템 및 방법
TW201330907A (zh) 協同娛樂平臺
CN112217960A (zh) 一种多屏播放画面同步显示的方法
CN104012101A (zh) 视频再现***
JP2009100470A (ja) データ再生装置およびデータ再生方法
JP2016048835A (ja) 撮像装置、撮像装置の制御方法、撮像装置の制御プログラム、及び撮像システム
JP4673805B2 (ja) 表示装置およびその音出力方法
US20180018941A1 (en) Display device, display control method, and display system
CN104253931A (zh) 一种多屏拼接显示***的屏幕图像录制方法
JP2008306355A (ja) 画像再生処理装置、画像再生処理方法、プログラム、及び記録媒体
JP4016914B2 (ja) 動画表示制御システム
KR101542416B1 (ko) 멀티앵글영상서비스 제공 방법 및 시스템
WO2001045411A1 (fr) Systeme et technique de transmission d&#39;un produit audio/visuel par un serveur/client
JP2007311929A (ja) 映像送出装置、映像送出方法、映像受信装置及び映像受信方法
JP6383974B2 (ja) 再生システム、及び、再生方法
JP4383909B2 (ja) 画像収集装置およびその方法およびその方法を実行するためのプログラムおよびそのプログラムを記憶した記憶媒体
JP6295634B2 (ja) 情報処理システム及びプログラム
JPH10260665A (ja) 映像制御システム及びそのシステムを用いた映像システム
JP2008102462A (ja) 表示装置およびその構成設定方法
JP2004362392A (ja) プログラム及び画像再生装置
US20230059670A1 (en) Image processing apparatus, control method, and storage medium