図1を利用して本実施形態における情報処理システムの概略構成について記述する。
本発明に関わる情報処理システムの概略構成の一例として、情報処理システムは、クライアント端末100、クライアント端末101、ネットワーク102、通信サーバ103、及びデータ管理サーバ104で構成されており、それぞれネットワーク102を介して、通信可能なように接続されている。
クライアント端末100は、本情報処理システムにおいて、ログイン画面1200(詳細後述)やコミュニケーション画面1300(詳細後述)を表示し、種々の入出力を行うクライアント機能を提供する。
尚、これらの画面は、例えば、Webブラウザを用いて提供することが可能であるが、このような態様に限らず、生成したアプリケーションにより提供することも可能である。
クライアント端末101は、本情報処理システムにおいて、ログイン画面、ルーム選択画面、あるいはコミュニケーション画面を表示し、種々の入出力を行うクライアント機能を提供する。
尚、これらの画面は、前述したように、例えば、Webブラウザを用いて提供することが可能であるが、このような態様に限らず、生成したアプリケーションにより提供することも可能である。
通信サーバ103は、外部のプラットフォームであり、音声、映像などをリアルタイムで通信可能な技術(例えば、WebRTC等)を用いた通信機能を提供する。
データ管理サーバ104は、映像などのデータを記憶し、ケースによっては、音声のデータ(以降、音声データ)と映像のデータ(以降、映像データ)とを合成してクライアント端末へ提供する。
データ管理サーバ104は、録画装置105と記憶装置106とを備えており、録画装置105は、音声データと映像データとを合成し、記憶装置106は、映像データや、音声データと映像データとを合成した合成データを記憶する。
次に、図2に示すフローチャートを用いて、クライアント端末100、及びクライアント端末101のハードウェアの概略構成について説明を行う。
図2に示すように、各装置は、システムバス204を介してCPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、入力コントローラ205、ビデオコントローラ206、メモリコントローラ207、よび通信I/Fコントローラ208が接続される。
CPU201は、システムバス204に接続される各デバイスやコントローラを統括的に制御する。
ROM202あるいは外部メモリ211は、CPU201が実行する制御プログラムであるBIOS(Basic Input/Output System)やOS(Operating System)や、本情報処理方法を実現するためのコンピュータ読み取り実行可能なプログラムおよび必要な各種データ(データテーブルを含む)を保持している。
RAM203は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは外部メモリ211からRAM203にロードし、ロードしたプログラムを実行することで各種動作を実現する。
入力コントローラ205は、キーボードや不図示のマウス等のポインティングデバイス等の入力デバイス209からの入力を制御する。
入力装置がタッチパネルの場合、ユーザがタッチパネルに表示されたアイコンやカーソルやボタンに合わせて押下(指等でタッチ)することにより、各種の指示を行うことができることとする。
また、タッチパネルは、マルチタッチスクリーンなどの、複数の指でタッチされた位置を検出することが可能なタッチパネルであってもよい。
ビデオコントローラ206は、ディスプレイ210などの外部出力装置への表示を制御する。
ディスプレイは本体と一体になったノート型パソコンのディスプレイも含まれるものとする。
なお、外部出力装置はディスプレイに限ったものははく、例えばプロジェクタであってもよい。また、前述のタッチ操作を受け付け可能な装置については、入力装置も提供する。
なお、ビデオコントローラ206は、表示制御を行うためのビデオメモリ(VRAM)を制御することが可能で、ビデオメモリ領域としてRAM203の一部を利用することもできるし、別途専用のビデオメモリを設けることも可能である。
メモリコントローラ207は、外部メモリ211へのアクセスを制御する。外部メモリとしては、ブートプログラム、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイル、および各種データ等を記憶する外部記憶装置(ハードディスク)、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等を利用可能である。
通信I/Fコントローラ208は、ネットワークを介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信やISDNなどの電話回線、および携帯電話の3G回線を用いた通信が可能である。
尚、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ210上での表示を可能としている。また、CPU201は、ディスプレイ210上の不図示のマウスカーソル等でのユーザ指示を可能とする。
カメラコントローラ212は、カメラ214による撮影を制御する。カメラ214によって撮影することにより得られた画像は、外部メモリ211やROM202等の記憶領域へ記憶される。
音声コントローラ213は、マイク/スピーカ215による発音や集音の制御を行う。マイク/スピーカ215に対して発せられた音を取得して、音声データとして外部メモリ211やROM202等の記憶領域へ記憶したり、音量を調節して発音することができる。
尚、通信サーバ103、及びデータ管理サーバ104も、ほぼ同様な構成を備えるため、説明は省略する。
次に、図3を用いて情報処理システムにおける各機能の概略について説明を行うが、各機能について、後述するフローチャートと合わせて説明を行う。
クライアント端末100は、ログイン部300、ルーム管理部301、静止画取得部302、静止画表示部303、録画開始/終了部304、及び送受信部305を備えている。
ログイン部300は、クライアント端末100における情報処理システムへのログイン機能を備え、ログイン画面1200(図12参照)を出力し、入力されたユーザIDやパスワードを用いて認証を行い、当該ユーザをログインさせる。
ルーム管理部301は、通信サーバ103を利用した音声データや映像データなどをリアルタイムでやり取りしコミュニケーションを行う空間(以後、ルーム)への入室および退室機能を備える。
また、クライアント端末100を起動したユーザが発した声などの音声データを、入室したルームへ配信する機能を備える。さらに、レコーダー起動API900(図9参照)を生成し、データ管理サーバ104に対して送信する機能を備える。
静止画取得部302は、静止画取得API930(図9参照)を生成し、静止画取得API930を利用してクライアント端末101で撮影してアップロードされた静止画を記憶装置106から取得する機能を備える。
静止画表示部303は、記憶装置106から取得した静止画を、コミュニケーション画面1300(図13参照)に出力する機能を備えている。
録画開始/終了部304は、録画要求コマンド1000(図10参照)を生成し、クライアント端末101に対して送信する機能を備えている。
送受信部305は、他の装置等と種々のデータのやり取りを行う機能を備えている。
クライアント端末101は、ログイン部310、ルーム管理部311、静止画アップロード部312、録画開始/終了部313、映像データ保存部314、映像データアップロード部315、及び送受信部316を備えている。
ログイン部310は、クライアント端末101における情報処理システムへのログイン機能を備え、ログイン画面1400(図14参照)を出力し、入力されたユーザIDやパスワードを用いて認証を行い、当該ユーザをログインさせる。
ルーム管理部311は、ルームへの入室および退室機能を備え、また、クライアント端末101を起動したユーザが発した声などの音声データを、入室したルームへ配信する機能を備えている。
静止画アップロード部312は、静止画アップロードAPI920(図9参照)を生成し、静止画アップロードAPI920を利用して、クライアント端末101が動作するデバイスのカメラで撮影した静止画のデータ(以降、静止画データ)を記憶装置106へ送信する機能を持つ。
録画開始/終了部313は、録画開始/録画終了コマンド1001(図10参照)を生成し、録画装置105に対して送信する機能を備えている。
映像データ保存部314は、クライアント端末101が動作するデバイスのカメラで撮影した映像データを保存する機能を備えている。
映像データアップロード部315は、映像データアップロードAPI950(図9参照)を生成し、映像データアップロードAPI950を用いて、映像データ保存部314で保存した映像データを記憶装置106へ送信する機能を備えている。
送受信部316は、他の装置等と種々のデータのやり取りを行う機能を備えている。
録画装置105は、ログイン部32、ルーム管理部321、音声データ保存部322、音声データアップロード部323、映像/音声データ取得部324、映像/音声データ合成部325、合成データアップロード部326、及び送受信部327を備えている。
ログイン部320は、録画装置105における情報処理システムへのログイン機能を備えている。
ルーム管理部321は、ルームへの入室および退出機能を備え、音声データ保存部322は、ルームに配信されている音声データを取得し、保存する機能を備えている。
音声データアップロード部323は、音声データアップロードAPI940(図9参照)を生成し、音声データアップロードAPI940を利用して、音声データ保存部322で保存した音声データを記憶装置106へ送信する機能を備えている。
映像/音声データ取得部324は、記憶装置106に保存されている映像データおよび音声データを、記憶装置106から取得する機能を備えている。
映像/音声データ合成部325は、映像/音声データ取得部324で取得した映像データおよび音声データを合成する機能を備えている。
合成データアップロード部326は、合成データアップロードAPI970(図9参照)を生成し、合成データアップロードAPI970を用いて、映像/音声データ合成部325で生成した合成データを記憶装置106へ送信する機能を持つ。
送受信部327は、他の装置等と種々のデータのやり取りを行う機能を備えている。
データ管理サーバ104は、起動部330、データストレージ部331、データ合成指示部332、及び送受信部333を備えている。
起動部330は、クライアント端末100のルーム管理部301において送信されたレコーダー起動API900を受信すると、録画準備API910(図9参照)を生成し、録画装置105に対して録画準備API910を送信する機能を備えている。
データストレージ部331は、情報処理システムにおいて生成された静止画、音声データ、映像データ、及び合成データを保存する機能を備えている。
データ合成指示部332は、映像データアップロード部315によって、記憶装置106に映像データが保存されたことを検知し、映像データ/音声データ合成API960(図9参照)を生成する。
生成した映像/音声データ合成API960を録画装置105に送信する機能を備えている。
送受信部305は、他の装置等と種々のデータのやり取りを行う機能を備えている。
図4及び図5に示すフローチャートを用いて本実施形態におけるコミュニケーション通信処理について説明を行う。
ステップS400では、ログイン部300は、ログイン画面1200(図12参照)を出力し、ログイン画面1200に対して入力されたユーザID及びパスワード等のユーザ情報を取得して認証を行い、認証がなされると、情報処理システムへのログインがなされる。
図12には、クライアント端末100に出力されるログイン画面1200の構成が示されており、ログイン画面1200は、ユーザIDを入力するためのユーザID入力欄1201、パスワードを入力するためのパスワード入力欄1202、及びログインの指示を行うために押下するためのログインボタン1203を備えている。
ユーザは、ログインボタン1203を押下すると、ユーザID入力欄1201及びパスワード入力欄1202に入力されたユーザID及びパスワードを用いて認証を行い、認証がなされると、情報処理システムへのログインがなされる。
ステップS401では、ルーム管理部301は、コミュニケーション画面1300(図13参照)を出力する。
図13には、クライアント端末100に出力されるコミュニケーション画面1300の構成が示されており、コミュニケーション画面1300は、リモート撮影ボタン1301、録画開始/終了ボタン1302、ルーム選択リストボックス1303、ルーム入室ボタン1304、及びルーム退室ボタン1305を備えている。
リモート撮影ボタン1301を押下すると、通信相手のクライアント端末101に対してリモートで撮影指示を行う。
録画開始/終了ボタン1302を押下すると、録画を開始することができ、録画が開始すると録画開始/終了ボタン1302が赤色に変わる。
一方、録画実行中の状態で録画開始/終了ボタン1302を押下して、録画を終了することができ、録画が終了するとボタンが緑色に変わる。
ルーム選択リストボックス1303には、入室するルームを出力選択することができ、ルーム入室ボタン1304を押下して、選択したルームへの入室ができ、ルーム退室ボタン1305を押下すると、入室しているルームから退室することができる。
本ステップでは、ルーム選択リストボックス1303に出力されたルームが選択された状態で、ルーム入室ボタン1304が押下されたことを検知すると、選択されたルームへユーザを入室させる。
ステップS402では、ルーム管理部301は、クライアント端末100で取得した音声をルームに対して配信する。
ステップS403では、ルーム管理部301は、レコーダー起動API900を生成し、送受信部305によって、データ管理サーバ104に送信する。
図9には、レコーダー起動API900の構成が示されており、レコーダー起動API900は、ユーザID、及びルームを識別するためのルームIDで構成される。尚、ルームIDには、ステップS401で選択したルームのルームIDが設定される。
レコーダー起動API900は、クライアント端末100からデータ管理サーバ104に対して、録画装置105の起動要求を行うためのAPIである。
ステップS404では、送受信部333は、ステップS403においてクライアント端末100から送信されたレコーダー起動API900を受信する。
ステップS405では、起動部330は、録画準備API910を生成し、送受信部333によって録画装置105に送信する。
図9には、録画準備API910の構成が示されており、録画準備API910は、ドメイン(ユーザIDのドメイン、
以降の文字列)、ルームIDで構成される。
録画準備API910は、録画装置105に対して、録画準備要求を行うためのAPIであり、録画準備とは、本情報処理システムへのログインおよびクライアント端末100と同じルームへの入室する処理を指し示し、ドメイン及びルームIDの情報を利用することで録画準備処理の実行ができる。
ステップS406では、送受信部327は、ステップS405においてデータ管理サーバ104から送信された録画準備API910を受信する。
ステップS407では、ログイン部320は、ステップS406において受信した録画準備API910のパラメーターを利用して、本情報処理システムにログインする。
ステップS408では、ルーム管理部321は、ステップS401において入室したルームと同じルームへ録画装置105を入室させる。
ステップS409では、ルーム管理部321は、録画準備APIレスポンス911を生成し、送受信部327によってデータ管理サーバ104に返す。
図9には、録画準備APIレスポンス911の構成が示されており、録画準備APIレスポンス911は、録画準備がなされた旨等を示すメッセージで構成される。
ステップS410では、送受信部333は、ステップS409において録画装置105から送信された録画準備APIレスポンス911を受信する。
ステップS411では、送受信部333は、レコーダー起動APIレスポンス901をクライアント端末100に返す。
図9には、レコーダー起動APIレスポンス901の構成が示されており、レコーダー起動APIレスポンス901は、録画準備がなされた旨等を示すメッセージで構成される。
ステップS412では、送受信部305は、ステップS411によってデータ管理サーバ104から送信されたレコーダー起動APIレスポンス901を受信する。
ステップS413は、ステップS414からステップS519の処理を所定時間の間隔(例えば、1秒間隔)で繰り返し処理を行うことを示している。
ステップS414では、静止画取得部302は、静止画取得API930(図9参照)を生成し、送受信部305によって、データ管理サーバ104に送信する。
図9には、静止画取得API930の構成が示されており、静止画取得API930は、テナントID(ユーザIDのドメイン、
以降の文字列)、ルームID、及びファイルID(詳細後述)で構成される。
静止画取得API930は、クライアント端末100からデータ管理サーバ104に対して、記憶装置106に保存された静止画取得要求を行うためのAPIであり、テナントID、ルームID、及びファイルIDを利用することで、記憶装置106から特定の静止画を取得することができる。
ステップS415では、送受信部333は、ステップS414においてクライアント端末100から送信された静止画取得API930を受信する。
ステップS416では、静止画取得部334は、ステップS415において受信した静止画取得API930のパラメーターに従って、記憶装置106から静止画を取得する。
ステップS417では、送受信部333は、ステップS416において記憶装置106から取得した静止画を静止画取得APIレスポンス931(図9参照)でクライアント端末100に返す。
図9には、静止画取得APIレスポンス931の構成が示されており、静止画取得APIレスポンス931は、ステータスコード(HTTPにおけるエラーコード等)、及び静止画取得URLで構成される。
静止画取得APIレスポンス931をクライアント端末100が受信すると、クライアント端末100は、静止画取得URLを利用することで、静止画を取得することができる。
ステップS418では、送受信部305は、ステップS417において返信された静止画取得APIレスポンス931を受信し、ステップS419では、静止画表示部303は、ステップS418において受信した静止画取得APIレスポンス931に含まれる静止画を画面に表示する。
ステップS500では、ログイン部310によって、ログイン画面1400(図14参照)を出力し、ログイン画面1400に対して入力されたユーザID及びパスワード等のユーザ情報を取得して認証を行い、認証がなされると、情報処理システムへのログインがなされる。
図14には、クライアント端末101に出力されるログイン画面1400の構成が示されており、ログイン画面1400は、ユーザIDを入力するためのユーザID入力欄1401、パスワードを入力するためのパスワード入力欄1402、及びログインの指示を行うために押下するためのログインボタン1403を備えている。
ユーザは、ログインボタン1403を押下すると、ユーザID入力欄1401及びパスワード入力欄1402に入力されたユーザID及びパスワードを用いて認証を行い、認証がなされると、情報処理システムへのログインがなされる。
ステップS501では、ルーム管理部311は、ルーム選択画面1500(図15参照)を出力する。
図15には、ルーム選択画面1500の構成が示されており、ルーム選択画面1500は、ルーム選択リストボックス1501で入室するルームを選択し、ルーム入室ボタン1504を押下して、選択したルームへの入室ができる。
また、録画データアップロードボタン1503を押下して、映像データのアップロードをすることができる。
また、戻るボタン1502を押下すると、前に表示されていたログイン画面1400が表示される。
入室がなされると、コミュニケーション画面1600(図16参照)が表示される。
図16には、コミュニケーション画面1600の構成が示されており、コミュニケーション画面1600は、ルームを退室する際に押下するためのルーム退室ボタン1601、写真撮影を行う撮影ボタン1602、録画開始/終了ボタン1603を押下すると、録画を開始することができ、再度、録画開始/終了ボタン1603を押下すると録画が終了する。
ステップS502では、ルーム管理部311は、クライアント端末101で取得した音声をルームに対して配信する。
ステップS503では、映像データ保存部314は、クライアント端末101で動作するカメラで撮影した映像をバッファ領域に所定のフレームレート(例えば、毎秒30fps)で保存する。ここで保存した映像は、後続の録画処理の映像データとして利用する。
概ね、毎秒30fpsで保存することによって、高いフレームレートの映像データとして残すことができ、また、クライアント端末101のバッファ領域に保存することによって、高い画質の映像データとして残すことができる。
ステップS504は、ステップS415からS530の処理を1秒間隔で繰り返し処理を行うことを示している。
ステップS505では、静止画アップロード部312は、ステップS503において保存している映像データから、毎秒1枚の静止画を取得する。ここで取得した静止画は、クライアント端末100とのコミュニケーションに利用する。
ステップS506では、静止画アップロード部312は、静止画アップロードAPI920(図9参照)を生成し、送受信部316によって、静止画アップロードAPI920を利用して、ステップS505で取得した静止画をデータ管理サーバ104に送信する。
図9には、静止画アップロードAPI920の構成が示されており、静止画アップロードAPI920は、テナントID、ルームID、ファイルID、静止画のバイナリデータで構成される。
静止画アップロードAPI920は、クライアント端末101からデータ管理サーバ104に対して、記憶装置106へ静止画アップロード要求を行うためのAPIであり、テナントID、ルームID、及びファイルID(相手との通信を行うために、IDが一意となるように発行される。)を利用することで、記憶装置106に保存された静止画を一意に管理することができる。
ステップS420では、送受信部333は、ステップS506においてクライアント端末101から送信された静止画アップロードAPI920を受信し、ステップS421では、データストレージ部331は、静止画アップロードAPI920に含まれる静止画を取得し、記憶装置106に保存する。
ステップS422では、送受信部333は、静止画アップロードAPIレスポンス921(図9参照)をクライアント端末101に返す。
図9には、静止画アップロードAPIレスポンス921の構成が示されており、静止画アップロードAPIレスポンス921は、ステータスコード、及びメッセージ(処理結果を示すメッセージ)で構成される。
ステップS430では、送受信部316は、ステップS429において返信された静止画アップロードAPIレスポンス921を受信する。
図6に示すフローチャートを用いて本実施形態における録画開始時の動作の処理について説明する。
ステップS600では、録画開始/終了部304は、コミュニケーション画面1300の録画開始/終了ボタン1302が押下されたことを受け付けると、録画要求コマンド1000(図10参照)を生成して、送受信部305によって、クライアント端末101(入室しているルーム)に対して送信する。
図10には、録画要求コマンド1000の構成が示されており、録画要求コマンド1000は、録画を開始/終了を指示するためのコマンド、録画フラグ(録画を開始しているか、停止しているかを示す)、及び録画ID(相手との通信を行うために、IDが一意となるように発行される。)で構成される。ここでは、コマンドとして録画を開始する指示に係る指示情報が含まれている。
録画要求コマンド1000は、クライアント端末100からクライアント端末101に対して、録画の開始/終了を指示するコマンドである。
録画IDは、録画処理によって生成される映像データ、音声データ、および合成データを一意に識別するための情報である。
録画IDを映像データ、音声データおよび合成データのファイル名として利用することで、映像データと音声データを紐づけることができる。これにより、映像データと音声データとが別々に保存されていても、合成処理によって、映像データと音声データが1つになった合成データを生成することができる。
ステップS601では、送受信部316は、ステップS600において送信された録画要求コマンド1000を受信する。
ステップS602では、録画開始/終了部313は、録画開始日時(例えば、システム日時等)を取得する。
ステップS603では、録画開始/終了部313は、録画開始/録画終了コマンド1001を生成し、クライアント端末100(入室しているルーム)に対して録画開始/録画終了コマンド1001(図10参照)を送信する。
図10には、録画開始/録画終了コマンド1001の構成が示されており、録画開始/録画終了コマンド1001は、コマンド、録画フラグ、録画ID、録画開始日時で構成される。
録画開始/録画終了コマンド1001は、クライアント端末101から録画装置105に対して、録画の開始/終了を指示するコマンドである。ここでは、録画の開始を指示するコマンドが含まれている。
ステップS604では、送受信部327は、ステップS603においてクライアント端末101から送信された録画開始/録画終了コマンド1001を受信する。
ステップS605では、ルーム管理部321は、ステップS604において受信した録画開始/録画終了コマンド1001から、録画ID、及び録画開始日時を取得する。
ステップS606は、ステップS607の処理を録画開始/録画終了コマンド1001を再度受信するまで繰り返すことを示している。
ステップS607では、音声データ保存部322は、入室しているルームに配信されている音声データをWebブラウザのバッファ領域に保存する。
ステップS608では、映像データ保存部314は、映像データ1101(図11参照)の構成で映像データのファイル名を生成する。
図11には、映像データ1101の構成が示されており、映像データ1101は、クライアント端末101で生成される映像データであり、ファイル名を録画開始/録画終了コマンド1001に含まれる、録画開始日時と録画IDで構成し、ファイル名を録画開始/録画終了コマンド1001に含まれる、録画開始日時と録画IDで構成する。ファイル名が録画IDと録画開始日時で構成されているため、後続の合成処理において、映像データと音声データとの紐づけを行うことができる。
ステップS609は、ステップS610の処理を、録画要求コマンド1000を再度受信するまで繰り返すことを示している。
ステップS610では、ステップS503において、クライアント端末101のバッファ領域に保存している映像データをファイルに書き出す。
図7に示すフローチャートを用いて本実施形態における録画終了時の動作の処理について説明する。
ステップS700では、録画開始/終了部304は、録画要求コマンド1000を生成し、送受信部305によって、クライアント端末101(入室しているルーム)に対して録画要求コマンド1000を送信する。この際に、コマンドとして録画を終了する指示に係る指示情報が含まれている。
ステップS701では、送受信部316は、録画要求コマンド1000を受信し、ステップS702では、録画開始/終了部313は、録画開始/録画終了コマンド1001(図11参照)を生成し、入室しているルームに対して録画開始/録画終了コマンド1001を送信する。ここでは、コマンドとして、録画を終了する指示のコマンドが含まれている。
ステップS703では、送受信部327は、ステップS702において送信された録画開始/録画終了コマンド1001を受信する。
ステップS704では、音声データ保存部322は、ステップS607において開始した音声データの保存処理を終了する。
ステップS705では、音声データアップロード部323は、音声データアップロードAPI940(図9参照)を生成し、送受信部327は、音声データアップロードAPI940を利用して、保存した音声データをデータ管理サーバ104に送信する。
図9には、音声データアップロードAPI940の構成が示されており、音声データアップロードAPI940は、テナントID、ルームID、及びファイルIDで構成される。
音声データアップロードAPI940は、録画装置105からデータ管理サーバ104に対して、記憶装置106へ音声データアップロード要求を行うためのAPIである。
テナントID、ルームID、及びファイルIDを利用することで、記憶装置106に保存された音声データを一意に管理することができ、送信する音声データのファイル名は、音声データ1100(図11参照)の構成とすることで、ファイル名が録画IDと録画開始日時とで構成されているため、後続の合成処理において映像データと音声データとの紐づけを行うことができる。
図11には、音声データ1100の構成が示されており、音声データ1100は、録画装置105で生成される音声データであり、ファイル名を録画開始/録画終了コマンド1001に含まれる、録画開始日時と録画IDとで構成する。
ステップS706では、送受信部333は、ステップS705において、録画装置105から送信された音声データアップロードAPI940を受信する。
ステップS707では、データストレージ部331は、ステップS706において受信した音声データアップロードAPIから音声データを取得し、記憶装置106に保存する。
ステップS708では、データストレージ部331は、音声データアップロードAPIレスポンス941(図9参照)を生成し、送受信部333によって、録画装置105に送信する。
図9には、音声データアップロードAPIレスポンス941の構成が示されており、音声データアップロードAPIレスポンス941は、ステータスコード、及びプロードURLで構成される。アップロードURLを利用することで、録画装置105が音声データのアップロードをすることができる。
ステップS709では、送受信部327は、ステップS708においてデータ管理サーバ104から送信された音声データアップロードAPIレスポンス941を受信する。
ステップS710では、映像データ保存部314は、ステップS610において開始した映像データのファイル書き出し処理を終了し、ステップS711では、映像データ保存部314は、書き出した映像データをストレージ領域に保存する。
次に、図8に示すフローチャートを用いて本実施形態における録画データ合成時の動作の処理について説明する。
ステップS800では、映像データアップロード部315は、映像データアップロードAPI950(図9参照)を生成する。
図9には、映像データアップロードAPI950の構成が示されており、映像データアップロードAPI950は、テナントID、ルームID、及びファイルIDで構成される。
映像データアップロードAPI950は、クライアント端末101からデータ管理サーバ104に対して、記憶装置106へ映像データアップロード要求を行うためのAPIである。テナントID、ルームID、及びファイルIDを利用することで、記憶装置106に保存された映像データを一意に管理することができる。
映像データアップロードAPI950を利用して、ステップS711においてクライアント端末101のストレージ領域に保存した映像データを、データ管理サーバ104に送信する。
ステップS801では、送受信部333は、ステップS800においてクライアント端末101から送信された映像データアップロードAPI950を受信する。
ステップS802では、データストレージ部331は、ステップS801において受信した映像データアップロードAPI950から映像データを取得し、記憶装置106に保存する。
ステップS803では、データストレージ部331は、映像データアップロードAPIレスポンス951(図9参照)を生成し、送受信部333は、クライアント端末101に送信する。
映像データアップロードAPIレスポンス951は、ステータスコード、及びアップロードURLで構成されており、アップロードURLを利用することで、クライアント端末101が映像データのアップロードをすることができる。
ステップS804では、送受信部316は、ステップS803においてデータ管理サーバ104から送信された映像データアップロードAPIレスポンス951を受信する。
ステップS805では、データ合成指示部332は、映像/音声データ合成API960(図9参照)を生成し、送受信部333によって、録画装置105に送信する。
図9には、映像/音声データ合成API960の構成が示されており、映像/音声データ合成API960は、映像データ保存パス、音声データ保存パス、及び合成データ保存パスで構成される。
映像/音声データ合成API960は、データ管理サーバ104から録画装置105に対して、映像データ、及び音声データの合成要求を行うためのAPIである。
映像データ保存パス、及び音声データ保存パスを利用することで、録画装置105は、記憶装置106から合成対象の映像データと音声データとを取得することができる。
ステップS806では、送受信部327は、ステップS805においてデータ管理サーバ104から送信された映像/音声データ合成API960を受信する。
ステップS807では、映像/音声データ取得部324は、ステップS806において受信した映像/音声データ合成API960の情報を元に、記憶装置106から映像データを取得する。
ステップS808では、映像/音声データ取得部324は、ステップS806において受信した映像/音声データ合成API960の情報を元に、記憶装置106から音声データを取得する。
ステップS809では、映像/音声データ合成部325は、ステップS807及びステップS808において記憶装置106から取得した映像データと音声データとの合成処理を行う。
ステップS810では、映像/音声データ合成部325は、ステップS809で合成することにより得られた合成データ1102をファイル保存する。
図11には、合成データ1102の構成が示されており、合成データ1102は、録画装置105で生成される合成データであり、ファイル名を録画開始/録画終了コマンド1001に含まれる、録画開始日時と録画IDとで構成する。
、ステップS811では、合成データアップロード部326は、合成データアップロードAPI970(図9参照)を生成し、送受信部327によって、データ管理サーバ104に送信する。
図9には、合成データアップロードAPI970の構成が示されており、合成データアップロードAPI970は、テナントID、ルームID、及びファイルIDで構成される。
合成データアップロードAPI970は、録画装置105からデータ管理サーバ104に対して、記憶装置106へ合成データアップロード要求を行うためのAPIである。テナントID、ルームID、及びファイルIDを利用することで、記憶装置106に保存された合成データを一意に管理することができる。合成データアップロードAPI970を利用して、合成データをデータ管理サーバ104に送信する。
ステップS812では、送受信部333は、ステップS811において録画装置105から送信された合成データアップロードAPI970を受信し、ステップS813では、データ合成指示部332は、合成データアップロードAPI970から合成データを取得し、記憶装置106に保存し、ステップS814では、データ合成指示部332は、合成データアップロードAPIレスポンス971(図9参照)を生成し、送受信部333によって、録画装置105に送信する。
図9には、合成データアップロードAPIレスポンス971の構成が示されており、合成データアップロードAPIレスポンス971は、ステータスコード、及びアップロードURLで構成される。アップロードURLを利用することで、録画装置105が合成データのアップロードをすることができる。
ステップS815では、送受信部327は、ステップS814においてデータ管理サーバ104から送信された合成データアップロードAPIレスポンス971を受信する。
図17には、データ管理サーバ104に保存されている合成データを再生するための録画データ確認画面1700の構成が示されており、録画データ確認画面1700には、当該合成データを識別するためにサムネイル画像等を表示しておき、再生ボタン1701を押下することにより、合成データの再生を行うことができる。
以上、実施形態について示したが、本発明は、例えば、システム、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能である。
具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、本発明におけるプログラムは、図4乃至8に示すフローチャートの処理方法をコンピュータが実行可能なプログラムであり、本発明の記憶媒体は図4乃至8の処理方法をコンピュータが実行可能なプログラムが記憶されている。なお、本発明におけるプログラムは図4乃至8の各装置の処理方法ごとのプログラムであってもよい。
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、DVD-ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク等を用いることが出来る。
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。
また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適用できることは言うまでもない。
この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。