JP5899738B2 - 情報処理システム、情報処理装置及び情報処理プログラム - Google Patents

情報処理システム、情報処理装置及び情報処理プログラム Download PDF

Info

Publication number
JP5899738B2
JP5899738B2 JP2011203335A JP2011203335A JP5899738B2 JP 5899738 B2 JP5899738 B2 JP 5899738B2 JP 2011203335 A JP2011203335 A JP 2011203335A JP 2011203335 A JP2011203335 A JP 2011203335A JP 5899738 B2 JP5899738 B2 JP 5899738B2
Authority
JP
Japan
Prior art keywords
moving image
request
band
module
video
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.)
Expired - Fee Related
Application number
JP2011203335A
Other languages
English (en)
Other versions
JP2013066045A (ja
Inventor
敦 伊東
敦 伊東
安部 勉
勉 安部
永峯 猛志
猛志 永峯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation 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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2011203335A priority Critical patent/JP5899738B2/ja
Publication of JP2013066045A publication Critical patent/JP2013066045A/ja
Application granted granted Critical
Publication of JP5899738B2 publication Critical patent/JP5899738B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

本発明は、情報処理システム、情報処理装置及び情報処理プログラムに関する。
複数の動画再生装置で動画の再生を同期させる技術がある。
これに関連する技術として、例えば、特許文献1には、接続先と放送番組の記録及び/又は再生を同期させ、記録及び/又は再生する放送番組を接続先から指定可能にすることを課題とし、接続先と放送番組の記録及び/又は再生を同期させ、同期要求の送受によって、同一の放送番組の記録、再生に時間的な制約を受けることなく任意の時間に行える等、接続先と放送番組の同時再生を通話とともに行え、斯かる構成により、接続先と放送番組の記録及び/又は再生を同期させることができ、記録及び/又は再生をする放送番組を接続先から指定可能にすることができ、通信機能、放送受信機能及び放送番組の記録及び/又は再生の機能を備える機器の利便性を高めることが開示されている。
また、例えば、特許文献2には、ネットワーク上の複数の機器に対して同一のコンテンツが同時に配信可能な状態において、複数の機器についてコンテンツの再生動作を同期させることを課題とし、コンテンツサーバから複数台のコンテンツ再生装置へ同一のコンテンツを同時に配信可能な状態において、1台のコンテンツ再生装置に対してユーザの操作があったとき、ユーザの操作を受けたコンテンツ再生装置はコンテンツサーバへコンテンツ再生の状態変化に関するイベントの通知を発行し、コンテンツサーバはイベントの通知を受けたときそのコンテンツ再生装置以外のコンテンツ再生装置を制御し、前記あるコンテンツについてその再生状態を前記ユーザの操作を受けたコンテンツ再生装置の再生状態に一致させることが開示されている。
また、例えば、特許文献3には、画像フォーマットとフレームレートの2つを独立に操作することなく、1つの操作のみにて総合的な画質調整を実現することを課題とし、符号化映像の総合的な画質調整において、画像フォーマット毎に適用可能な符号化ビットレート、符号化フレームレートを定めたパラメータ変換データを予め記憶部に記憶しておき、パラメータ入力部から画質調整パラメータを入力し、画質調整部において、上記入力された画質調整パラメータをキーとして記憶部のパラメータ変換データを参照することによって、符号化フレームレートと画質フォーマットを決定し、それらを映像符号化処理部に出力することが開示されている。
特開2010−206414号公報 特開2009−253889号公報 特開2000−165864号公報
本発明は、複数の動画再生装置によって動画を同期して再生する場合にあって、動画に対する画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する操作者の要求が反映された動画を再生するようにした情報処理システム、情報処理装置及び情報処理プログラムを提供することを目的としている。
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項1の発明は、複数の動画再生装置との通信における帯域を取得する帯域取得手段と、前記帯域取得手段によって取得された帯域に基づいて、前記複数の動画再生装置によって動画を同期して再生するための通信における帯域を決定する帯域決定手段と、前記動画再生装置から動画に対する、動画中の予め定めた範囲内における画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を受信する要求受信手段と、前記帯域決定手段によって決定された帯域と前記要求受信手段によって受信された要求に基づいて、動画のエンコードパラメータを変換する動画変換手段と、前記帯域決定手段によって決定された帯域にしたがって、前記各動画再生装置に対して、前記動画変換手段によって変換された動画を送信する動画送信手段を有する動画送信装置と、前記動画送信装置の前記要求受信手段に対して、操作者の操作に基づいて、他の動画再生装置と同期して再生する動画に対する、動画中の予め定めた範囲内における画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を送信する要求送信手段と、前記動画送信装置の前記動画送信手段によって送信された動画を受信する動画受信手段と、前記動画受信手段によって受信された動画を再生する再生手段を有する動画再生装置を具備することを特徴とする情報処理システムである。
請求項2の発明は、複数の動画再生装置との通信における帯域を取得する帯域取得手段と、前記帯域取得手段によって取得された帯域に基づいて、前記複数の動画再生装置によって動画を同期して再生するための通信における帯域を決定する帯域決定手段と、前記動画再生装置から動画に対する、動画中の予め定めた範囲内における画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を受信する要求受信手段と、前記帯域決定手段によって決定された帯域と前記要求受信手段によって受信された要求に基づいて、動画のエンコードパラメータを変換する動画変換手段と、前記帯域決定手段によって決定された帯域にしたがって、前記各動画再生装置に対して、前記動画変換手段によって変換された動画を送信する動画送信手段を具備することを特徴とする情報処理装置である。
請求項3の発明は、動画送信装置に対して、操作者の操作に基づいて、他の情報処理装置と同期して再生する動画に対する、動画中の予め定めた範囲内における画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を送信する要求送信手段と、前記要求送信手段によって送信された要求に基づいて前記動画送信装置によって変換された動画を受信する動画受信手段と、前記動画受信手段によって受信された動画を再生する再生手段を具備することを特徴とする情報処理装置である。
請求項4の発明は、前記要求受信手段は、前記動画の各フレームの画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を受信し、前記動画変換手段は、前記要求受信手段によって受信された要求に基づいて、フレーム毎に動画のエンコードパラメータを変換することを特徴とする請求項2に記載の情報処理装置である。
請求項5の発明は、前記動画送信手段が動画を送信している間に、前記要求受信手段が要求を受信した場合は、前記動画変換手段は、未だ送信していない動画に対して、該要求に基づいて動画のエンコードパラメータを変換することを特徴とする請求項2又は4に記載の情報処理装置である。
請求項6の発明は、前記動画を次回送信する場合に、前記動画変換手段が前記要求に基づいて、該動画のエンコードパラメータを変換し得るように、前記要求受信手段によって受信された要求を記憶する記憶手段をさらに具備し、前記動画変換手段は、前記帯域決定手段によって決定された帯域と前記記憶手段に記憶された要求に基づいて、動画のエンコードパラメータを変換することを特徴とする請求項2、4、5のいずれか一項に記載の情報処理装置である。
請求項7の発明は、前記動画送信手段が動画を送信している間に、該動画を同期して再生する新たな動画再生装置が接続された場合は、前記帯域取得手段は、該動画再生装置との通信における帯域を取得し、前記帯域決定手段は、前記帯域取得手段によって取得された帯域に基づいて、前記新たな動画再生装置を含めた複数の動画再生装置によって動画を同期して再生するための通信における帯域を決定することを特徴とする請求項2、4、5、6のいずれか一項に記載の情報処理装置である。
請求項8の発明は、前記動画送信装置によって送信された第2の動画を受信する第2の動画受信手段と、前記第2の動画受信手段によって受信された第2の動画を記憶する動画記憶手段をさらに具備し、前記第2の動画受信手段よって受信された第2の動画は、前記動画受信手段よって受信された第1の動画よりも高画質であり、前記再生手段は、前記動画受信手段によって受信された第1の動画を再生している間に、前記第2の動画受信手段による第2の動画の受信が終了したことを検知した場合は、該第1の動画の再生を中止し、前記動画記憶手段によって記憶されている第2の動画を再生することを特徴とする請求項3に記載の情報処理装置である。
請求項9の発明は、コンピュータを、複数の動画再生装置との通信における帯域を取得する帯域取得手段と、前記帯域取得手段によって取得された帯域に基づいて、前記複数の動画再生装置によって動画を同期して再生するための通信における帯域を決定する帯域決定手段と、前記動画再生装置から動画に対する、動画中の予め定めた範囲内における画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を受信する要求受信手段と、前記帯域決定手段によって決定された帯域と前記要求受信手段によって受信された要求に基づいて、動画のエンコードパラメータを変換する動画変換手段と、前記帯域決定手段によって決定された帯域にしたがって、前記各動画再生装置に対して、前記動画変換手段によって変換された動画を送信する動画送信手段として機能させるための情報処理プログラムである。
請求項10の発明は、コンピュータを、動画送信装置に対して、操作者の操作に基づいて、他の情報処理装置と同期して再生する動画に対する、動画中の予め定めた範囲内における画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を送信する要求送信手段と、前記要求送信手段によって送信された要求に基づいて前記動画送信装置によって変換された動画を受信する動画受信手段と、前記動画受信手段によって受信された動画を再生する再生手段として機能させるための情報処理プログラムである。
請求項1の情報処理システムによれば、複数の動画再生装置によって動画を同期して再生する場合にあって、動画に対する画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する操作者の要求が反映された動画を再生することができる。
請求項2の情報処理装置によれば、複数の動画再生装置によって動画を同期して再生させる場合にあって、動画に対する画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する操作者の要求が反映された動画を送信することができる。
請求項3の情報処理装置によれば、複数の動画再生装置によって動画を同期して再生する場合にあって、動画に対する画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する操作者の要求が反映された動画を再生することができる。
請求項4の情報処理装置によれば、動画のフレーム毎に操作者の要求が反映された動画を送信することができる。
請求項5の情報処理装置によれば、動画の送信中でも操作者の要求が反映された動画を送信することができる。
請求項6の情報処理装置によれば、前回の再生における要求にしたがった動画の再生ができるようになる。
請求項7の情報処理装置によれば、動画の送信中に動画再生装置が増えた場合でも、同期して動画を再生することができる。
請求項8の情報処理装置によれば、最初は第1の動画の再生を行い、第2の動画の受信が終了した後の情報処理装置では、第1の動画よりも高画質である第2の動画を再生することができるようになる。
請求項9の情報処理プログラムによれば、複数の動画再生装置によって動画を同期して再生させる場合にあって、動画に対する画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する操作者の要求が反映された動画を送信することができる。
請求項10の情報処理プログラムによれば、複数の動画再生装置によって動画を同期して再生する場合にあって、動画に対する画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する操作者の要求が反映された動画を再生することができる。
第1の実施の形態の構成例についての概念的なモジュール構成図である。 第1の実施の形態を実現する場合のシステム構成例を示す説明図である。 第1の実施の形態による処理例を示すフローチャートである。 第1の実施の形態による処理例を示すフローチャートである。 第1の実施の形態による処理例を示すフローチャートである。 動画情報テーブルのデータ構造例を示す説明図である。 ユーザプロファイルテーブルのデータ構造例を示す説明図である。 セッション管理テーブルのデータ構造例を示す説明図である。 再生動画ファイル管理情報テーブルのデータ構造例を示す説明図である。 本実施の形態による処理例を示すフローチャートである。 動画表示画面の例を示す説明図である。 動画表示画面に対するフレームレートの要求の例を示す説明図である。 動画表示画面に対するフレームレートの要求の例を示す説明図である。 再生動画ファイル管理情報テーブルの例を示す説明図である。 第2の実施の形態の構成例についての概念的なモジュール構成図である。 第2実施の形態による処理例を示すフローチャートである。 第2実施の形態による処理例を示すフローチャートである。 動画ファイル管理テーブルのデータ構造例を示す説明図である。 本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
図1は、第1の実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。また、「Aである場合、Bをする」という意味を有する記載は、「Aであるか否かを判断し、Aであると判断した場合はBをする」の意味で用いる。ただし、Aであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
第1の実施の形態である情報処理システムは、複数のクライアント装置150で同期させて動画を再生するものであって、図1の例に示すように、サーバ装置100とクライアント装置150を有している。サーバ装置100とクライアント装置150は通信回線を介して接続されている。サーバ装置100は、動画送信装置としての機能を有し、クライアント装置150は、動画再生装置としての機能を有する。そして、クライアント装置150は複数ある。
サーバ装置100は、動画ファイルリポジトリ110、帯域幅測定モジュール115、動画品質調整モジュール120、同期視聴セッション管理モジュール125、動画ストリーミングモジュール130を有している。また、これらのサーバ装置100内の各モジュールは、それぞれ個別の情報処理装置(例えば、サーバ装置)として実現されていてもよいし、いくつかの複数のモジュールを組とした複数の情報処理装置として実現されていてもよい。
動画ファイルリポジトリ110は、動画品質調整モジュール120と接続されている。動画ファイルリポジトリ110は、動画(動画データ)を記憶する。さらに、その動画から生成されたストリーミング用動画を記憶していてもよい。
帯域幅測定モジュール115は、動画品質調整モジュール120、動画ストリーミングモジュール130、ストリーミング再生モジュール170と接続されている。帯域幅測定モジュール115は、複数のクライアント装置150との通信における帯域を取得する。そして、その取得した帯域に基づいて、その複数のクライアント装置150によって動画を同期して再生するための通信における帯域を決定する。
例えば、帯域が最低のものを選択することによって決定すること、帯域が最低のものから予め定められた値を減算すること、帯域が最低のものに予め定められた値(1未満の値)を乗算すること等がある。
また、動画ストリーミングモジュール130が動画を送信している間に、その動画を同期して再生する新たなクライアント装置150が接続された場合は、帯域幅測定モジュール115は、そのクライアント装置150との通信における帯域を取得し、取得した帯域に基づいて、その新たなクライアント装置150を含めた複数のクライアント装置150によって動画を同期して再生するための通信における帯域を決定するようにしてもよい。
動画品質調整モジュール120は、動画ファイルリポジトリ110、帯域幅測定モジュール115、同期視聴セッション管理モジュール125、動画ストリーミングモジュール130、品質調整操作受付モジュール165と接続されている。動画品質調整モジュール120は、クライアント装置150の品質調整操作受付モジュール165から動画に対する画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を受信する。そして、帯域幅測定モジュール115によって決定された帯域と受信した要求に基づいて、動画のエンコードパラメータを変換する、ストリーミング用動画を生成する。なお、「動画のエンコードパラメータを変換する」とは、その動画を変換することを含む。
また、動画品質調整モジュール120は、動画の各フレームの画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を受信し、その受信した要求に基づいて、フレーム毎に動画のエンコードパラメータを変換するようにしてもよい。
また、動画ストリーミングモジュール130が動画を送信している間に、動画品質調整モジュール120が要求を受信した場合は、動画品質調整モジュール120は、未だ送信していない動画に対して、その要求に基づいて動画のエンコードパラメータを変換するようにしてもよい。
また、動画品質調整モジュール120は、動画を次回送信する場合に、動画品質調整モジュール120が要求に基づいて、その動画のエンコードパラメータを変換し得るように、受信した要求を記憶モジュールに記憶させ、帯域幅測定モジュール115によって決定された帯域とその記憶モジュールに記憶された要求に基づいて、動画のエンコードパラメータを変換するようにしてもよい。ここで「動画を次回送信する場合」とは、次の新しいセッションにおいて、今回の動画と同じ動画の再生指示があった場合のことである。
同期視聴セッション管理モジュール125は、動画品質調整モジュール120、同期視聴コマンド送受信モジュール160と接続されている。同期視聴セッション管理モジュール125は、複数のクライアント装置150間で同期をとりながら動画の再生を行っている場合の、その動画に対する操作者の操作を受信する。そして、その操作に関する指示情報(例えば、再生や一時停止等の操作を示す情報(コマンド、イベント等)をいう。以下、単に「操作」という)を記憶モジュールに記憶させる。
例えば、同期視聴セッション管理モジュール125は、どのユーザとどのユーザが何という動画を同期視聴しているかをセッション情報として管理する。加えて、セッション内で発行された同期視聴コマンドを受信し、その発行者以外のユーザが使用しているクライアント装置150の同期視聴コマンド送受信モジュール160に転送する。この機能により同期視聴を実現する。
また、クライアント装置150からの要求にしたがって、記憶されている操作を送信するようにしてもよい。例えば、同期視聴セッション管理モジュール125は、同期視聴コマンドを発生タイミング(発生時刻、動画の再生を開始してからの経過時間等)とともに記録し、それをクライアント装置150からの要求があると、そのクライアント装置150に送信する。
動画ストリーミングモジュール130は、帯域幅測定モジュール115、動画品質調整モジュール120、ストリーミング再生モジュール170と接続されている。動画ストリーミングモジュール130は、帯域幅測定モジュール115によって決定された帯域にしたがって、クライアント装置150のストリーミング再生モジュール170に対して、動画品質調整モジュール120によって変換されたストリーミング用動画を送信する。動画ストリーミングモジュール130は、複数のクライアント装置150に対して、ストリーミング用動画を送信する。例えば、動画ストリーミングモジュール130は、ユーザ(操作者、視聴者等)から指定された動画データに対応するストリーミング用動画が動画ファイルリポジトリ110にある場合は、そのストリーミング用動画を送信する。また、動画ファイルリポジトリ110にストリーミング用動画がない場合は、動画品質調整モジュール120が動画ファイルリポジトリ110内のオリジナル版である動画データからストリーミング用動画を生成して、その生成したストリーミング用動画を送信する。
クライアント装置150は、同期視聴コマンド送受信モジュール160、品質調整操作受付モジュール165、ストリーミング再生モジュール170を有している。ユーザが動画を視聴するために使用するものである。
同期視聴コマンド送受信モジュール160は、同期視聴セッション管理モジュール125と接続されている。同期視聴コマンド送受信モジュール160は、サーバ装置100の同期視聴セッション管理モジュール125に記憶された操作を要求し、その要求にしたがって、サーバ装置100の同期視聴セッション管理モジュール125によって送信された操作を受信する。そして、ストリーミング再生モジュール170を制御して、受信した操作に基づいて、動画及び操作の再現を行う。
例えば、同期視聴コマンド送受信モジュール160は、同期視聴セッション管理モジュール125から受信した記録に基づきセッションを再現する。
そして、同期視聴コマンド送受信モジュール160は、操作者によって動画に対する操作が行われた場合は、その操作をサーバ装置100の同期視聴セッション管理モジュール125に送信する。
品質調整操作受付モジュール165は、動画品質調整モジュール120と接続されている。品質調整操作受付モジュール165は、サーバ装置100の動画品質調整モジュール120に対して、操作者の操作に基づいて、他のクライアント装置150と同期して再生する動画に対する画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を送信する。
また、品質調整操作受付モジュール165は、動画の各フレームの画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を送信するようにしてもよい。
また、品質調整操作受付モジュール165は、ストリーミング再生モジュール170が動画を再生している間(又はストリーミング再生モジュール170が動画を受信している間)に、サーバ装置100の動画品質調整モジュール120に対して、その動画に対する要求を送信するようにしてもよい。
ストリーミング再生モジュール170は、帯域幅測定モジュール115、動画ストリーミングモジュール130と接続されている。ストリーミング再生モジュール170は、サーバ装置100の動画ストリーミングモジュール130によって送信された動画を受信する。そして、その受信したストリーミング用動画を再生する。このストリーミング用動画は、品質調整操作受付モジュール165によって送信された要求に基づいてサーバ装置100の動画品質調整モジュール120によって変換された動画である。
また、ストリーミング再生モジュール170は、ユーザからの同期視聴コマンド操作を受け付け、同期視聴コマンド送受信モジュール160に通知する。
なお、ストリーミング再生モジュール170は、クライアント装置150の表示装置(液晶ディスプレイ、タッチパネル等)に動画ウィンドウを表示し、その動画ウィンドウ内に動画を再生する。
図2は、第1の実施の形態を実現する場合のシステム構成例を示す説明図である。
サーバ装置100、クライアント装置150A、クライアント装置150B、クライアント装置150Cは、それぞれ通信回線200を介して接続されている。もちろんのことながら、クライアント装置150は、図2の例のように3つだけでなく、それ以上の数であってもよいし、2つであってもよい。
例えば、遠隔でコミュニケーションする際に、相手に正確に情報を伝えるために動画を使用することが一般的になってきた。遠く離れた場所にいるユーザどうしがある動画コンテンツを同期して視聴しながらコミュニケーション(ユーザどうしは電話やインターネットを介した電話、TV会議システムなどを使って会話する)をするというシステムがある。
動画をあるサーバからストリーミング配信するとネットワーク帯域や通信遅延の関係で画質やフレームレートを落として配信せざるをえない。そこで、事前に動画を送り、再生や一時停止などの操作(コマンド、イベント等)のみをやりとりする手法が前述の特許文献等で提案されている。
しかし、例えば、緊急トラブルで急いで情報共有したい場合、この方法では動画ファイルの転送に時間がかかり(特に国際間の通信などの場合)、緊急対応ができなくなってしまう恐れがある。より具体的には、海外の工場で発生したトラブルについて日本の開発センターに状況をいち早く知らせて議論したい場合などがある。本実施の形態は、このような場合にも用いられるものである。つまり、本実施の形態の用いられ方の一例として、遠隔地間で動画の同期視聴を行う際に、緊急時は低品質の動画でもよいのですぐに利用可能にし、転送が間に合う場合や後で同期視聴の模様を振り返る場合には高画質の動画を利用する。
クライアント装置150間で同期をとりながら動画の再生を行っていることから、各動画再生装置の操作者たちは、同時に同じ動画を視聴していることになる。したがって、例えば、同じ動画を視聴しながら、電話等のリアルタイムでコミュニケーションをとることを行っている。
クライアント装置150の各々は、同じ性能を有していてもよいが、異なる性能を有していてもよい。また、サーバ装置100とクライアント装置150間の通信回線も同じ性能であってもよいが、異なる性能であってもよい。
図3から図5は、第1の実施の形態による処理例を示すフローチャートである。
まず、本実施の形態による処理の前提として、動画ファイルリポジトリ110に動画ファイルが保存されており、それらには本実施の形態において一意に識別し得る識別子(以下、動画ID(IDentification)ともいう)が割り振られている。ユーザは、ユーザインタフェース(CGIプログラムなど)を通じて、動画ファイルリポジトリ110内の視聴すべき動画の動画IDを検索・取得する。
例えば、動画ファイルリポジトリ110内に動画情報テーブル400を記憶している。図6は、動画情報テーブル400のデータ構造例を示す説明図である。動画情報テーブル400は、動画ID欄410、動画名欄420、キーワード欄430、動画ファイル格納場所欄440を有している。動画ID欄410は、動画IDを記憶している。動画名欄420は、その動画の名称を記憶している。キーワード欄430は、その動画に付されたキーワードを記憶している。動画ファイル格納場所欄440は、その動画が動画ファイルリポジトリ110内で格納されている格納場所(具値的には、ファイル名、URL(Uniform Resource Locator)等)を記憶している。動画情報テーブル400をユーザの検索指示(例えば、キーワード等の指定)に応じて検索し、該当する動画IDを取得する。
ステップS302では、同期視聴コマンド送受信モジュール160が、セッションID(セッションを本実施の形態において一意に識別し得る識別子である)、再生対象である動画IDを受け付ける。より具体的には、同期視聴コマンド送受信モジュール160は、ユーザの操作に応じて、同期視聴を行うためのクライアント装置150で動作するクライアントソフトが起動され、セッションIDとしてのセッション名(ユーザが設定する任意の名前であり、例えば、「トラブル対策ミーティング」等)と同期視聴したい動画ID(新しくセッションを作る場合であり、すでにあるセッションに参加する場合は不要である、以下同様)を受け付ける。なお、ここで、セッションとは、動画の同期視聴の処理を開始してから、終了するまでの、一連の操作、処理、通信等のことをいう。セッションを作るとは、新たに動画の同期視聴の処理を開始することをいい、セッションIDが付与される。そして、セッションに参加するとは、すでに動画の同期視聴の処理が行われているものに対して、そのセッションIDにユーザIDを対応させることをいう。
ステップS304では、同期視聴コマンド送受信モジュール160が、同期視聴セッション管理モジュール125に対して、ユーザID、セッションID、動画IDを送信する。より具体的には、同期視聴コマンド送受信モジュール160は、サーバ装置100の同期視聴セッション管理モジュール125に接続し、ユーザID(ユーザを本実施の形態において一意に識別し得る識別子であり、発行・管理方法等については特に問わない)、セッションID、動画IDを送信する。
ステップS306では、同期視聴セッション管理モジュール125が、同期視聴コマンド送受信モジュール160から送信されてきたユーザID、セッションID、動画IDを受信する。
ステップS308では、同期視聴セッション管理モジュール125が、既存のセッションIDであるか否かを判断し、既存の場合はステップS310へ進み、それ以外の場合はステップS312へ進む。
より具体的には、同期視聴セッション管理モジュール125は、セッション管理テーブル600を保持している。これによって、セッションに参加しているユーザとセッションで視聴されている動画(のID)を対応付けて保持する。具体例として、図8は、セッション管理テーブル600のデータ構造例を示す説明図である。セッション管理テーブル600は、セッションID欄610、参加ユーザIDのリスト欄620、動画ID欄630、セッション開始時刻欄640、セッションビットレート欄650を有している。セッションID欄610は、現在視聴されている動画のセッションIDを記憶している。参加ユーザIDのリスト欄620は、そのセッションに参加している複数人分のユーザIDを記憶している。動画ID欄630は、そのセッションで同期視聴されている動画の動画IDを記憶している。セッション開始時刻欄640は、そのセッションの開始時刻(年、月、日、時、分、秒を含んでいてもよく、さらに秒以下の時刻を含んでいてもよい)を記憶している。セッションビットレート欄650は、それぞれのユーザが利用可能な帯域(帯域幅、帯域帯、ビットレート等)の情報を記憶している。これらの算出は、ステップS310からステップS332までの処理で行う(算出されるまでは、これらの情報は空白である)。
ステップS310では、同期視聴セッション管理モジュール125が、該当するセッション管理テーブル600にユーザIDを追加する。つまり、既存のセッションに参加する場合であり、セッション管理テーブル600の参加ユーザIDのリスト欄620にユーザIDを追加する。
ステップS312では、同期視聴セッション管理モジュール125が、セッション管理テーブル600を生成し、セッション開始時刻をセッション管理テーブル600のセッション開始時刻欄640に記録する。つまり、新しいセッションを作る場合であり、セッション管理テーブル600のインスタンスを新たに作り、セッション管理テーブル600のセッション開始時刻欄640にそのときの時刻であるセッション開始時刻を記録する。
ステップS314では、同期視聴コマンド送受信モジュール160が、セッション参加成功か否かを判断し、成功の場合はステップS316へ進み、それ以外の場合はステップS356へ進む。なお、同期視聴セッション管理モジュール125からセッション参加成功か否かの通知(セッション管理テーブル600のインスタンスが作成されたか、すでにあるセッション管理テーブル600内にユーザIDを記憶させることができた場合は、成功であり、それ以外の場合は成功ではない。)を、同期視聴コマンド送受信モジュール160が受け、判断を行う。
ステップS356では、同期視聴コマンド送受信モジュール160が、セッションに参加できない旨をユーザに提示する。その後、終了する(ステップS399)。
ステップS316では、同期視聴コマンド送受信モジュール160が、ストリーミング再生モジュール170に対して、セッションIDを通知する。
ステップS318では、ストリーミング再生モジュール170が、使用帯域幅を指定する。なお、ステップS318の処理は行わない場合もある。例えば、オプションとして使用する帯域幅をプルダウンメニュー等で128k、256k、512k、1Mbpsなどを、操作者の操作によって選択し得るようにしてもよい。
ステップS320では、ストリーミング再生モジュール170が、動画ストリーミングモジュール130に対して、セッションID、使用帯域幅を通知する。もちろんのことながら、ステップS318で使用帯域幅が指定されていない場合は、使用帯域幅は通知されないことになる。
ステップS322では、帯域幅測定モジュール115が、使用帯域幅は指定されているか否かを判断し、指定されている場合はステップS330へ進み、それ以外の場合はステップS324へ進む。
ステップS324では、帯域幅測定モジュール115が、ユーザプロファイルに使用帯域幅は設定されているか否かを判断し、設定されている場合はステップS326へ進み、それ以外の場合はステップS328へ進む。帯域幅測定モジュール115は、ユーザプロファイル情報を保持し、そこに帯域が記憶されているようにしてもよい。図7は、ユーザプロファイルテーブル500のデータ構造例を示す説明図である。ユーザプロファイルテーブル500は、ユーザID欄510、ビットレート欄520を有している。ユーザID欄510は、ユーザを本実施の形態において一意に識別し得る情報であるユーザIDを記憶している。ビットレート欄520は、そのユーザが利用できる帯域を記憶している。また、ユーザID欄510は、ユーザIDではなく、クライアント装置150を本実施の形態において一意に識別し得る情報であるクライアント装置IDであってもよい。その場合、ビットレート欄520は、そのクライアント装置との通信で利用できる帯域を記憶している。
ステップS326では、帯域幅測定モジュール115が、ユーザプロファイルからユーザIDに対応する使用帯域幅を取り出す。
ステップS328では、帯域幅測定モジュール115が、帯域幅を測定する。ユーザからの明示的な指定がない場合であって、ユーザプロファイルにも使用帯域幅が記憶されていない場合は、帯域幅測定モジュール115が帯域幅の測定を行う。その方法は、TV会議システムやストリーミングシステムで一般的に利用されている方法を使うようにすればよい。例えば、サーバ・クライアント間で予め取り決めた時間間隔で、あるサイズのパケットをサーバが送信し、サーバ又はクライアントが実際に受信した間隔から帯域幅を推測する等がある。
ステップS330では、帯域幅測定モジュール115が、同期視聴セッション管理モジュール125にユーザの使用帯域幅を通知する。
ステップS332では、同期視聴セッション管理モジュール125が、そのユーザの使用帯域幅を記録する。
ステップS334では、帯域幅測定モジュール115が、ユーザの使用帯域幅から、そのセッションにおける帯域幅を設定する。例えば、前述のように、複数のユーザの使用帯域幅のうち帯域が最低のものを選択することによって設定してもよいし、その使用帯域幅のうち帯域が最低のものから予め定められた値を減算すること、帯域が最低のものに予め定められた値(1未満の値)を乗算すること等がある。
ステップS336では、動画ストリーミングモジュール130が、動画品質調整モジュール120に対して、セッションIDを通知する。
ステップS338では、動画品質調整モジュール120が、同期視聴セッション管理モジュール125から動画IDと帯域幅を取得する。
ステップS340では、動画品質調整モジュール120が、動画ファイルリポジトリ110から動画IDに対応する動画を取得する。
ステップS342では、動画品質調整モジュール120が、その動画を帯域幅に合わせた再生用ファイル(ストリーミング用動画)に変換し、動画ストリーミングモジュール130に渡す。ストリーミング用のフォーマット等の必要な変換等を行う。フォーマットの変換としては、例えば、データ量を削減するために低い画質にする、解像度を劣化させる、フレームレートを劣化させる処理がある。
また、動画品質調整モジュール120は、再生動画ファイル管理情報テーブル700を記憶する。図9は、再生動画ファイル管理情報テーブル700のデータ構造例を示す説明図である。再生動画ファイル管理情報テーブル700は、セッションID欄710、オリジナル動画ファイル欄720、フレーム欄730、再生動画ファイル欄740を有している。セッションID欄710は、セッションIDを記憶している。オリジナル動画ファイル欄720は、そのセッションにおいて再生する対象の動画(オリジナル版)のファイル名を記憶している。フレーム欄730は、動画内のフレーム番号を記憶している。再生動画ファイル欄740は、ストリーミング用の動画のファイル名を記憶している。フレーム欄730と再生動画ファイル欄740によって、オリジナル版の動画内のフレーム欄730のフレームの動画に対して変換を施して、再生動画ファイル欄740のストリーミング用動画が生成されたことが示されている。つまり、セッションID欄710のセッションIDにおいて、フレーム欄730の何フレーム目から何フレーム目までは、再生動画ファイル欄740内の再生動画ファイルをストリーミングするということを記録していることになる。この図9に示す例は、初期状態を示している。この後、ユーザからの要求に沿って、フレーム毎の動画が変換されることになる。これについては、図14の例を用いて後述する。
ステップS344では、動画ストリーミングモジュール130が、ストリーミング再生モジュール170に対して、再生用ファイルを送信する。
ステップS346では、ストリーミング再生モジュール170が、動画ストリーミングモジュール130から送信されてきた再生用ファイルを受信する。
ステップS348では、ストリーミング再生モジュール170が、再生用ファイルを再生する。
ステップS350では、終了操作があったか否かを判断し、あった場合はステップS352へ進み、それ以外の場合はステップS344からの処理に戻る。例えば、ユーザの操作として、ストリーミング再生モジュール170が表示している動画ウィンドウを閉じるなどの操作があった場合等が該当する。
ステップS352では、同期視聴コマンド送受信モジュール160が、同期視聴セッション管理モジュール125に対して、セッションからの脱退を通知する。
ステップS354では、同期視聴セッション管理モジュール125が、脱退の通知(ユーザIDを含む)を受信し、セッション管理テーブル600から脱退した操作者のユーザIDを削除する。
図10は、本実施の形態による処理例を示すフローチャートである。このフローチャートは、ストリーミングが開始され、ストリーミング用動画を再生している間に、新たなユーザがそのセッションに参加する場合の処理例を示すものである。具体的には、図3〜5の例に示すフローチャート内のステップS344〜S348の処理において、新しいユーザが加わった場合は、図10の例に示すフローチャートによる処理を行う。
ステップS802では、動画ストリーミングモジュール130が、セッションIDに該当する再生ファイルを動画品質調整モジュール120から受け取り、ストリーミングを開始する。具体的には、再生動画ファイル管理情報テーブル700にしたがった再生ファイルの送信を行う。
ステップS804では、動画ストリーミングモジュール130が、フレームが最後まで再生されるか、新しいユーザからの接続が来るか、セッションが終了する(セッションの終了とはセッションに参加しているユーザが一人もいなくなった場合を意味する)までストリーミングを続ける。
ステップS806では、動画ストリーミングモジュール130が、対処とするフレームの送信が終わったか否かを判断し、終わった場合はステップS808へ進み、それ以外の場合はステップS810へ進む。
ステップS808では、動画ストリーミングモジュール130が、動画品質調整モジュール120から該当するセッションIDの次のフレームから始まる再生動画ファイルを検索し、ストリーミングを開始し、ステップS804からの処理に戻る。具体的には、再生動画ファイル管理情報テーブル700にしたがった次の再生ファイルの送信を行う。
ステップS810では、同期視聴セッション管理モジュール125が、新しいユーザからの接続が来たか否かを判断し、来た場合はステップS812へ進み、それ以外の場合はステップS814へ進む。
ステップS812では、同期視聴セッション管理モジュール125が、新しいエントリを作成し、使用帯域幅を変更する必要があるか否かを判断し、ある場合はステップS816へ進み、それ以外の場合はステップS814へ進む。具体的には、セッション管理テーブル600のセッションビットレート欄650内の帯域で、その新たなユーザのクライアント装置150との通信が可能であるか否かを判断する。つまり、その新たなユーザのクライアント装置150との通信の帯域がセッション管理テーブル600のセッションビットレート欄650内の帯域以上であれば、そのままで通信可能であると判断することになる。通信可能であると判断した場合には、セッション管理テーブル600の参加ユーザIDのリスト欄620に、新たなユーザIDを追加する。
ステップS814では、動画ストリーミングモジュール130が、セッションが終わったか否かを判断し、終わった場合は処理を終了し(ステップS899)、それ以外の場合はステップS804からの処理に戻る。
ステップS816では、動画ストリーミングモジュール130が、現在のストリーミングを中断し、使用帯域幅を変更し、新しいエントリに該当するファイルのストリーミングを開始し、ステップS804からの処理に戻る。ここでの使用帯域幅の変更は、前述のステップS334と同等の処理を行えばよい。新しいエントリを作成するとは、セッション管理テーブル600に新たな行を追加し、セッション管理テーブル600の参加ユーザIDのリスト欄620には、新たなユーザIDを追加し、セッション管理テーブル600のセッションビットレート欄650には、変更された使用帯域幅を記憶させることになる。
クライアント装置150の表示装置への表示例を示す。図11は、動画表示画面900の例を示す説明図である。動画表示画面900は、動画プレイヤウィンドウ910、フレームリスト940、品質調整領域930が表示されている。ストリーミング再生モジュール170が、動画プレイヤウィンドウ910、フレームリスト940を表示する。品質調整操作受付モジュール165が、品質調整領域930を表示する。動画プレイヤウィンドウ910には、ストリーミング用動画を再生する。また、ユーザの操作によって、シークバー920上のシークポインタ925が移動させられると、その位置に合わせた動画を再生する。この他に、再生、一時停止、音量調整等の操作のためのボタンを表示してもよい。また、フレームリスト940には、フレーム毎の代表的な画像(例えば、そのフレームにおける最初の画像)を表示する。この各フレームの位置は、品質調整領域930内のフレームレート調整領域932、解像度調整領域934、画質調整領域936による調整の目安としての位置になる。
品質調整領域930は、フレームレート調整領域932、解像度調整領域934、画質調整領域936を有している。これは、ユーザの操作によって変更させられるものである。
例えば、ユーザはフレーム1から3までは高画質で見たい(つまり、フレームレートを劣化させる)場合、マウスカーソル1000を用いてフレームレート調整領域932を操作し、フレーム1から3においてはフレームレートを劣化させるように調整して、図12の例に示すフレームレート調整領域932の状態から、図13の例に示すフレームレート調整領域932の状態にすることになる。
品質調整操作受付モジュール165は、ユーザの操作を受け付けると、何フレーム目から何フレーム目までどの品質を劣化させるか等の要求を、サーバ装置100の動画品質調整モジュール120に通知する。
動画品質調整モジュール120は、その通知の要求に応じて、オリジナル版の動画ファイルから該当フレームを切り出し、その要求にしたがった変換を施して、新しい再生用動画ファイルを作成する。つまり、その作成時にはユーザが指定した品質を劣化させるパラメータを使うことになる。もちろんのことながら、動画ストリーミングモジュール130が未だ送信していないフレームの動画に対して、変換を施すことになる。図12の例から図13の例への調整は、未だ送信が開始されていない場合、又は、すでに動画の送信は終了したが、2回目以降の送信が行われる場合であって、未だその2回目以降の送信が行われていない場合等が該当する。
そして、その該当するフレームの再生時に、変換を施した再生用動画ファイルをストリーミングするようにする。もちろんのことながら、動画ストリーミングモジュール130は、現在送信しているフレームを把握しているので、変換を施した再生用動画ファイルのフレームになったら、その再生用動画ファイルを送信すればよい。また、再生動画ファイル管理情報テーブル700を更新する。例えば、図9に例示の再生動画ファイル管理情報テーブル700は、図14に例示の再生動画ファイル管理情報テーブル700となる。具体的には、この再生動画ファイル管理情報テーブル700に沿って、動画ストリーミングモジュール130が送信することになる。
図11〜14の例を用いて説明した処理は、図10の例に示すフローチャートに従う処理を開始する前に行うこと、つまり、図5の例に示すフローチャートのステップS342までに終了していればよい。又は、図10の例に示すフローチャートにおいて、例えば、ステップS810でNoの判断をした後であってもステップS814の処理を開始する前に行うようにしてもよい。
動画品質調整モジュール120が記憶する再生動画ファイル管理情報テーブル700は、このような品質調整操作受付モジュール165からの要求があると、セッション中に更新されていくことになる。
そして、セッション終了後も、この再生動画ファイル管理情報テーブル700のデータは保持され、別の機会(次に同じ動画に対しての同期視聴セッションが発生した場合)にクライアント装置150がサーバ装置100に接続したとき、セッションIDを受け付けると、保持されている再生動画ファイル管理情報テーブル700に基づいてストリーミングがされる。前述の例に即して説明すると、品質調整操作受付モジュール165による調整の操作が行われていなくても、フレーム1〜3はMovie−1−2が再生され、フレーム4〜6はMovie−1−1が再生されることになる。
ユーザが調整できる品質としては以下の通りである。
(1)フレームレート フレームレートを下げることで、解像度と画質を保つこととなる。
(2)解像度(画素数) 解像度を下げることで、フレームレートと画質を保つこととなる。
(3)画質 画質を下げることで、フレームレートと解像度を保つこととなる。
(4)これら2つ以上の組み合わせ
図15は、第2の実施の形態の構成例についての概念的なモジュール構成図である。
第2の実施の形態である情報処理システムは、複数のクライアント装置150で同期させて動画を再生するものであって、図15の例に示すように、サーバ装置100とクライアント装置150を有している。なお、第1の実施の形態と同種の部位には同一符号を付し重複した説明を省略する。
サーバ装置100は、動画ファイルリポジトリ110、帯域幅測定モジュール115、動画品質調整モジュール120、同期視聴セッション管理モジュール125、動画ストリーミングモジュール130、動画ファイル転送モジュール1314を有している。
動画ファイルリポジトリ110は、動画品質調整モジュール120、動画ファイル転送モジュール1314と接続されている。動画ファイルリポジトリ110は、動画(第2の動画)を記憶する。さらに、その動画から生成されたストリーミング用動画(第1の動画)を記憶していてもよい。なお、ストリーミング用動画はオリジナル版の動画(第2の動画)よりも低画質のものである。例えば、解像度を下げる、フレームレートの調整、解像度の調整、圧縮率の調整等を行ったものである。つまり、前述の第1の実施の形態における、帯域幅測定モジュール115によって決定された帯域と動画に対する画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求に基づいて、動画のエンコードパラメータを変換することである。
例えば、ここでいう高画質や低画質には、次のようなものが含まれる。
(1)フレームレートを調整する場合は、予め定められた基準と比べてフレームレートを高いものを高画質といい、予め定められた基準に対してフレームレートを落としたものを低画質という。
(2)また、解像度を調整する場合は、予め定められた基準と比べて解像度が高いものを高画質といい、予め定められた基準に対して解像度を落としたものを低画質という。
(3)また、非可逆圧縮方法を用いてデータ圧縮率を調整する場合は、予め定められた基準と比べて圧縮率が低いものを高画質といい、予め定められた基準に対して圧縮率を高めたものを低画質という。
動画ファイル転送モジュール1314は、動画ファイルリポジトリ110、動画ファイル受信モジュール1364と接続されている。動画ファイル転送モジュール1314は、動画ファイルリポジトリ110に記憶されているオリジナル版の動画を、複数のクライアント装置150の動画ファイル受信モジュール1364に対して送信する。ここで、送信するオリジナル版の動画とは、動画ストリーミングモジュール130が送信しているストリーミング用動画のオリジナル版の動画である。同じクライアント装置150に対して、動画ストリーミングモジュール130によるストリーミング用動画の送信とともにオリジナル版の動画を送信することになる。つまり、サーバ装置100からは、クライアント装置150に対して、ストリーミング用動画を送信して、残りの通信帯域の一部を利用して動画(オリジナル版)を送信することになる期間がある。例えば、ストリーミング用動画は、複数回再生したり(つまり、複数回の送受信が行われることを意味する)、再生途中で操作者の操作によって再生中止、停止、スロー再生等が行われることがある。したがって、ストリーミング用動画を視聴している間に、高画質の動画を受信し終えることもある。また、前述の帯域の一部をオリジナル版の動画を送信するのに用いてもよい。その場合は、ストリーミング用動画の帯域が、その分抑えられることになる。
動画ファイル転送モジュール1314は、動画ストリーミングモジュール130が送信するストリーミング用動画よりも高画質の動画(オリジナル版)を送信することになる。
クライアント装置150は、同期視聴コマンド送受信モジュール160、品質調整操作受付モジュール165、ストリーミング再生モジュール170、動画ファイル受信モジュール1364、動画ファイル蓄積モジュール1366を有している。
動画ファイル受信モジュール1364は、ストリーミング再生モジュール170、動画ファイル転送モジュール1314、動画ファイル蓄積モジュール1366と接続されている。動画ファイル受信モジュール1364は、サーバ装置100の動画ファイル転送モジュール1314によって送信されたオリジナル版の動画(現在再生しているストリーミング用動画のオリジナル版の動画、第2の動画)を受信する。動画ファイル受信モジュール1364が受信する動画は、ストリーミング再生モジュール170が受信するストリーミング用動画のオリジナル版である。したがって、前述の通り、動画ファイル受信モジュール1364が受信する動画は、ストリーミング再生モジュール170が受信する動画よりも高画質である。そして、動画ファイル受信モジュール1364は、受信が完了したら、ストリーミング再生モジュール170に受信の完了を通知する。
動画ファイル蓄積モジュール1366は、動画ファイル受信モジュール1364と接続されている。動画ファイル蓄積モジュール1366は、動画ファイル受信モジュール1364によって受信された動画(オリジナル版)を記憶する。
ストリーミング再生モジュール170は、帯域幅測定モジュール115、動画ストリーミングモジュール130、動画ファイル受信モジュール1364と接続されている。ストリーミング再生モジュール170は、第1の実施の形態におけるストリーミング再生モジュール170による処理に加えて、ストリーミング再生モジュール170によって受信されたストリーミング用動画を再生している間に、動画ファイル受信モジュール1364による第2の動画の受信が終了したことを検知した場合は、そのストリーミング用動画の再生を中止し、動画ファイル蓄積モジュール1366によって記憶されているオリジナル動画を再生する。つまり、ストリーミング再生モジュール170は、ストリーミング用動画又は動画ファイル蓄積モジュール1366によって記憶されている動画のいずれかを再生する。動画ファイル蓄積モジュール1366によって記憶されている動画(オリジナル版)を再生する場合は、ストリーミング用動画の再生を中止した場面から(現在の再生フレームにシークして)、その動画(オリジナル版)を再生する。
また、ストリーミング再生モジュール170は、同期視聴コマンド送受信モジュール160の制御にしたがって、同期視聴コマンド送受信モジュール160によって受信された操作に基づいて、動画及び操作の再現を行うようにしてもよい。その動画を再現する場合にあって、動画ファイル蓄積モジュール1366によってその動画が記憶されているか否かを判断し、その動画が記憶されていると判断した場合は、その動画を再生する。
第2の実施の形態を実現する場合も、第1の実施の形態と同様に、図2の例に示すシステム構成例のようになる。
図16は、第2実施の形態による処理例を示すフローチャートである。この処理は、図5の例に示したステップS344以降であって、ステップS350の判断でNOの間に、行われる。
ステップS1402では、同期視聴セッション管理モジュール125が、動画ファイル転送モジュール1314に対して、動画IDを送信する。
ステップS1404では、動画ファイル転送モジュール1314が、クライアント装置150の動画ファイル受信モジュール1364から送信されてきた動画IDを受信して、その動画IDに対応する動画ファイルを動画ファイルリポジトリ110から取り出す。
ステップS1406では、動画ファイル転送モジュール1314が、クライアント装置150の動画ファイル受信モジュール1364に対して、動画ファイルを送信する。
また、ステップS1406に対応して、クライアント装置150の動画ファイル受信モジュール1364が、その動画ファイルを動画ファイル蓄積モジュール1366に記憶させる。そして、動画ファイルの受信が完了したら、ストリーミング再生モジュール170に受信先のファイルパス名とともに通知する。動画IDと取得した動画ファイルのパス名の対応付けを動画ファイル管理テーブル1600に記憶(ファイルなどに保存)する。図18は、動画ファイル管理テーブル1600のデータ構造例を示す説明図である。動画ファイル管理テーブル1600は、動画ID欄1610、動画ファイル格納場所欄1620を有している。動画ID欄1610は、受信が完了した動画の動画IDを記憶している。動画ファイル格納場所欄1620は、その動画の格納場所(動画ファイルのパス名)を記憶している。
そして、ストリーミング再生モジュール170は、動画ファイル受信モジュール1364からの動画受信完了の通知を受け取ったら、通知されるファイルパスに存在する動画ファイルをオープンし、それまで再生していたストリーミング用動画の現在フレームまでシークし、再生を続行する。この処理については、図17の例に示すフローチャートを用いて詳述する。
図17は、第2実施の形態(クライアント装置150)による処理例を示すフローチャートである。
ステップS1502では、ストリーミング再生モジュール170が、ストリーミング受信を続ける。
ステップS1504では、動画ファイル受信モジュール1364が、動画ファイルの受信が完了したか否かを判断し、完了した場合はステップS1506へ進み、それ以外の場合はステップS1502からの処理を行う。
ステップS1506では、ストリーミング再生モジュール170が、現在フレーム位置、再生状態(一時停止中か再生中か)、マウスポインタの位置を一時的に記憶する。
ステップS1508では、ストリーミング再生モジュール170が、受信先のファイルパスにある動画ファイルをオープンし、ストリーミング接続を閉じて、動画ウィンドウのオープンした動画ファイルに差し替える。
ステップS1510では、ストリーミング再生モジュール170が、フレーム位置を一時記憶したフレーム位置に合わせる。
ステップS1512では、ストリーミング再生モジュール170が、マウスポインタの位置を一時記憶した位置に合わせる。
ステップS1514では、ストリーミング再生モジュール170が、一時記憶した再生状態を判断し、一時停止中の場合はステップS1516へ進み、再生中の場合はステップS1518へ進む。
ステップS1516では、ストリーミング再生モジュール170が、動画を一時停止させる。
ステップS1518では、ストリーミング再生モジュール170が、動画を再生させる。
この後は、ストリーミング用動画の再生ではなく、動画(オリジナル版)の再生によって、図5に例示のフローチャート内のステップS350以下の処理を行うこととなる。
なお、本実施の形態としてのプログラムが実行されるコンピュータのハードウェア構成は、図19に例示するように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバとなり得るコンピュータ等である。つまり、具体例として、処理部(演算部)としてCPU1901を用い、記憶装置としてRAM1902、ROM1903、HD1904を用いている。HD1904として、例えばハードディスクを用いてもよい。帯域幅測定モジュール115、動画品質調整モジュール120、同期視聴セッション管理モジュール125、動画ストリーミングモジュール130、同期視聴コマンド送受信モジュール160、品質調整操作受付モジュール165、ストリーミング再生モジュール170、動画ファイル転送モジュール1314、動画ファイル受信モジュール1364等のプログラムを実行するCPU1901と、そのプログラムやデータを記憶するRAM1902と、本コンピュータを起動するためのプログラム等が格納されているROM1903と、補助記憶装置であるHD1904と、キーボード、マウス、タッチパネル等に対する利用者の操作に基づいてデータを受け付ける受付装置1906と、CRT、液晶ディスプレイ等の出力装置1905と、ネットワークインタフェースカード等の通信ネットワークと接続するための通信回線インタフェース1907、そして、それらをつないでデータのやりとりをするためのバス1908により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図19に示すハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図19に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えばASIC等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図19に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、情報家電、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)などに組み込まれていてもよい。
なお、各モジュールの処理内容として背景技術で説明した技術を採用してもよい。
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray Disc(登録商標))、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM(登録商標))、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)、SD(Secure Digital)メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
100…サーバ装置
110…動画ファイルリポジトリ
115…帯域幅測定モジュール
120…動画品質調整モジュール
125…同期視聴セッション管理モジュール
130…動画ストリーミングモジュール
150…クライアント装置
160…同期視聴コマンド送受信モジュール
165…品質調整操作受付モジュール
170…ストリーミング再生モジュール
200…通信回線
1314…動画ファイル転送モジュール
1364…動画ファイル受信モジュール
1366…動画ファイル蓄積モジュール

Claims (10)

  1. 複数の動画再生装置との通信における帯域を取得する帯域取得手段と、
    前記帯域取得手段によって取得された帯域に基づいて、前記複数の動画再生装置によって動画を同期して再生するための通信における帯域を決定する帯域決定手段と、
    前記動画再生装置から動画に対する、動画中の予め定めた範囲内における画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を受信する要求受信手段と、
    前記帯域決定手段によって決定された帯域と前記要求受信手段によって受信された要求に基づいて、動画のエンコードパラメータを変換する動画変換手段と、
    前記帯域決定手段によって決定された帯域にしたがって、前記各動画再生装置に対して、前記動画変換手段によって変換された動画を送信する動画送信手段
    を有する動画送信装置と、
    前記動画送信装置の前記要求受信手段に対して、操作者の操作に基づいて、他の動画再生装置と同期して再生する動画に対する、動画中の予め定めた範囲内における画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を送信する要求送信手段と、
    前記動画送信装置の前記動画送信手段によって送信された動画を受信する動画受信手段と、
    前記動画受信手段によって受信された動画を再生する再生手段
    を有する動画再生装置
    を具備することを特徴とする情報処理システム。
  2. 複数の動画再生装置との通信における帯域を取得する帯域取得手段と、
    前記帯域取得手段によって取得された帯域に基づいて、前記複数の動画再生装置によって動画を同期して再生するための通信における帯域を決定する帯域決定手段と、
    前記動画再生装置から動画に対する、動画中の予め定めた範囲内における画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を受信する要求受信手段と、
    前記帯域決定手段によって決定された帯域と前記要求受信手段によって受信された要求に基づいて、動画のエンコードパラメータを変換する動画変換手段と、
    前記帯域決定手段によって決定された帯域にしたがって、前記各動画再生装置に対して、前記動画変換手段によって変換された動画を送信する動画送信手段
    を具備することを特徴とする情報処理装置。
  3. 動画送信装置に対して、操作者の操作に基づいて、他の情報処理装置と同期して再生する動画に対する、動画中の予め定めた範囲内における画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を送信する要求送信手段と、
    前記要求送信手段によって送信された要求に基づいて前記動画送信装置によって変換された動画を受信する動画受信手段と、
    前記動画受信手段によって受信された動画を再生する再生手段
    を具備することを特徴とする情報処理装置。
  4. 前記要求受信手段は、前記動画の各フレームの画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を受信し、
    前記動画変換手段は、前記要求受信手段によって受信された要求に基づいて、フレーム毎に動画のエンコードパラメータを変換する
    ことを特徴とする請求項2に記載の情報処理装置。
  5. 前記動画送信手段が動画を送信している間に、前記要求受信手段が要求を受信した場合は、前記動画変換手段は、未だ送信していない動画に対して、該要求に基づいて動画のエンコードパラメータを変換する
    ことを特徴とする請求項2又は4に記載の情報処理装置。
  6. 前記動画を次回送信する場合に、前記動画変換手段が前記要求に基づいて、該動画のエンコードパラメータを変換し得るように、前記要求受信手段によって受信された要求を記憶する記憶手段
    をさらに具備し、
    前記動画変換手段は、前記帯域決定手段によって決定された帯域と前記記憶手段に記憶された要求に基づいて、動画のエンコードパラメータを変換する
    ことを特徴とする請求項2、4、5のいずれか一項に記載の情報処理装置。
  7. 前記動画送信手段が動画を送信している間に、該動画を同期して再生する新たな動画再生装置が接続された場合は、
    前記帯域取得手段は、該動画再生装置との通信における帯域を取得し、
    前記帯域決定手段は、前記帯域取得手段によって取得された帯域に基づいて、前記新たな動画再生装置を含めた複数の動画再生装置によって動画を同期して再生するための通信における帯域を決定する
    ことを特徴とする請求項2、4、5、6のいずれか一項に記載の情報処理装置。
  8. 前記動画送信装置によって送信された第2の動画を受信する第2の動画受信手段と、
    前記第2の動画受信手段によって受信された第2の動画を記憶する動画記憶手段
    をさらに具備し、
    前記第2の動画受信手段よって受信された第2の動画は、前記動画受信手段よって受信された第1の動画よりも高画質であり、
    前記再生手段は、前記動画受信手段によって受信された第1の動画を再生している間に、前記第2の動画受信手段による第2の動画の受信が終了したことを検知した場合は、該第1の動画の再生を中止し、前記動画記憶手段によって記憶されている第2の動画を再生する
    ことを特徴とする請求項3に記載の情報処理装置。
  9. コンピュータを、
    複数の動画再生装置との通信における帯域を取得する帯域取得手段と、
    前記帯域取得手段によって取得された帯域に基づいて、前記複数の動画再生装置によって動画を同期して再生するための通信における帯域を決定する帯域決定手段と、
    前記動画再生装置から動画に対する、動画中の予め定めた範囲内における画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を受信する要求受信手段と、
    前記帯域決定手段によって決定された帯域と前記要求受信手段によって受信された要求に基づいて、動画のエンコードパラメータを変換する動画変換手段と、
    前記帯域決定手段によって決定された帯域にしたがって、前記各動画再生装置に対して、前記動画変換手段によって変換された動画を送信する動画送信手段
    として機能させるための情報処理プログラム。
  10. コンピュータを、
    動画送信装置に対して、操作者の操作に基づいて、他の情報処理装置と同期して再生する動画に対する、動画中の予め定めた範囲内における画質、解像度、フレームレートのいずれか1つ又はこれらの組み合わせに対する要求を送信する要求送信手段と、
    前記要求送信手段によって送信された要求に基づいて前記動画送信装置によって変換された動画を受信する動画受信手段と、
    前記動画受信手段によって受信された動画を再生する再生手段
    として機能させるための情報処理プログラム。
JP2011203335A 2011-09-16 2011-09-16 情報処理システム、情報処理装置及び情報処理プログラム Expired - Fee Related JP5899738B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011203335A JP5899738B2 (ja) 2011-09-16 2011-09-16 情報処理システム、情報処理装置及び情報処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011203335A JP5899738B2 (ja) 2011-09-16 2011-09-16 情報処理システム、情報処理装置及び情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2013066045A JP2013066045A (ja) 2013-04-11
JP5899738B2 true JP5899738B2 (ja) 2016-04-06

Family

ID=48189153

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011203335A Expired - Fee Related JP5899738B2 (ja) 2011-09-16 2011-09-16 情報処理システム、情報処理装置及び情報処理プログラム

Country Status (1)

Country Link
JP (1) JP5899738B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6339832B2 (ja) * 2014-03-24 2018-06-06 キヤノン株式会社 記録装置およびその制御方法
JP6953865B2 (ja) 2017-07-28 2021-10-27 富士フイルムビジネスイノベーション株式会社 情報処理システム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002290974A (ja) * 2000-12-07 2002-10-04 Matsushita Electric Ind Co Ltd 伝送レート制御方法
KR100916274B1 (ko) * 2004-06-07 2009-09-10 슬링 미디어 인코퍼레이티드 퍼스널 미디어 브로드캐스팅 시스템
JP4768250B2 (ja) * 2004-10-28 2011-09-07 シャープ株式会社 送信装置、受信装置、送受信装置、送信方法及び伝送システム
JP2007228445A (ja) * 2006-02-25 2007-09-06 Mitsubishi Materials Corp オーディオ・ビジュアルデータ通信システム及びオーディオ・ビジュアルデータ通信方法並びにオーディオ・ビジュアルデータ通信プログラム
JP2008311795A (ja) * 2007-06-12 2008-12-25 Sony Corp コンテンツ配信システム、配信サーバ、受信端末及びコンピュータプログラム

Also Published As

Publication number Publication date
JP2013066045A (ja) 2013-04-11

Similar Documents

Publication Publication Date Title
KR102484054B1 (ko) 프레임적으로 정확한 컨텐츠 수정을 용이하게 하기 위해, 낮은 레이트 핑거프린팅을 사용하는 보간을 기반으로 하는 시간 맵핑의 확립 및 사용
JP5727385B2 (ja) 複数のアプリケーション間におけるプレゼンテーション状態の同期化
KR102469142B1 (ko) 미디어 스트림 재생들 사이를 트랜지션하는 동안 트랜지션 프레임들의 동적 재생
JP2021534699A (ja) 置換コンテンツの最後を被置換コンテンツの最後と揃えるのに役立つ置換コンテンツ再生における動的短縮
US20100166387A1 (en) Method and apparatus for playing video data of high bit rate format by a player capable of playing video data of low bit rate format
US8665963B2 (en) Communication terminal, content reproduction method, content reproduction program, and content reproduction system for distributing and reproducing video contents with reduced stress
US10965731B2 (en) Transfer device, client apparatus, server apparatus, reproduction apparatus and transfer method
WO2015173975A1 (ja) 受信装置、および送信装置、並びにデータ処理方法
CN104683858A (zh) 一种流媒体的内容的预览方法及装置
JP5464632B2 (ja) 動画の視聴システム、文字コンテンツサーバ、動画の視聴方法およびプログラム
JP5899738B2 (ja) 情報処理システム、情報処理装置及び情報処理プログラム
JP2008085934A (ja) リモート映像再生システムおよびレジューム再生方法
JP2009194767A (ja) ビデオ評価装置及び方法、並びにビデオ提供装置
JP4977585B2 (ja) コンテンツ再生装置、および、コンテンツ情報表示方法
JP5899718B2 (ja) 情報処理システム、情報処理装置及び情報処理プログラム
EP2456224A2 (en) Recorder, recording device, and recorder control method
JP2013090102A (ja) 配信システム
JP6036373B2 (ja) コンテンツ再生システム、通信装置及びコンテンツ再生方法
JP2011087333A (ja) 画像再生装置
JP2006211191A (ja) 編集操作補助方法、装置、プログラム及び媒体
WO2013088788A1 (ja) コンテンツ再生システム、テレビジョン受信装置、同プログラム及び同プログラムを記憶した記録媒体
JP5089757B2 (ja) 録画装置、記録装置及び録画装置の制御方法
JP2020145682A (ja) 信号処理装置
JP5809433B2 (ja) 送出システムのスタンバイ指示方法
JP2007300665A (ja) 動画像表示方法及びシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140822

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150602

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150724

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160209

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160222

R150 Certificate of patent or registration of utility model

Ref document number: 5899738

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees