(57)【特許請求の範囲】
【請求項１】
遠隔会議に参加可能な第１通信装置のコンピュータに実行させるための通信プログラムであって、
前記第１通信装置のカメラにおいて撮影された映像がエンコードされた映像データを送信する送信ステップと、
前記遠隔会議に参加する第２通信装置が前記映像データをデコードする場合の負荷状態、及び、前記映像データがデコードされた映像が、前記第２通信装置の表示部に表示される場合の解像度を受信する受信ステップと、
前記受信ステップによって受信された前記負荷状態が、第１負荷状態か判断する第１判断ステップと、
前記受信ステップによって受信された前記解像度が、第２所定値以下か判断する第２判断ステップと、
前記第１判断ステップによって前記第１負荷状態と判断された場合、
前記第２判断ステップによって前記解像度が前記第２所定値以下と判断されたことに応じて、第２エンコード条件でエンコードされた第２映像データを生成し、
前記第２判断ステップによって前記解像度が前記第２所定値より大きいと判断されたことに応じて、前記第２エンコード条件よりも負荷が大きい第１エンコード条件でエンコードされた第１映像データを生成する第１生成ステップと
を前記コンピュータに実行させ、
前記送信ステップは、
前記第１生成ステップによって前記第１映像データが生成された場合、前記映像データとして前記第１映像データを送信し、
前記第１生成ステップによって前記第２映像データが生成された場合、前記映像データとして前記第２映像データを送信することを特徴とする通信プログラム。
【請求項２】
前記受信ステップによって受信された前記負荷状態が、前記第１負荷状態よりも小さいことを示す第２負荷状態か判断する第３判断ステップと、
前記第３判断ステップによって前記第２負荷状態と判断された場合、前記第１エンコード条件でエンコードされた前記第１映像データを生成する第２生成ステップと
を前記コンピュータに更に実行させ、
前記送信ステップは、前記第２生成ステップによって生成された前記第１映像データを、前記映像データとして送信することを特徴とする請求項１に記載の通信プログラム。
【請求項３】
前記受信ステップによって受信された前記負荷状態が、前記第１負荷状態よりも大きいことを示す第３負荷状態か判断する第４判断ステップと、
前記第４判断ステップによって前記第３負荷状態と判断された場合、前記第２エンコード条件でエンコードされた前記第２映像データを生成する第３生成ステップを更に前記コンピュータに実行させ、
前記送信ステップは、前記第３生成ステップによって生成された前記第２映像データを、前記映像データとして送信することを特徴とする請求項１又は２に記載の通信プログラム。
【請求項４】
前記第１判断ステップは、
前記第２通信装置が前記第１映像データをデコードするときの負荷の度合いが第１所定値以上の場合、又は、前記第２通信装置が前記第２映像データをデコードするときの負荷の度合いが前記第１所定値より小さい場合、前記第１負荷状態と判断することを特徴とする請求項１から３の何れかに記載の通信プログラム。
【請求項５】
前記負荷の度合いは、前記第２通信装置のプロセッサの負荷の度合いであることを特徴とする請求項４に記載の通信プログラム。
【請求項６】
遠隔会議に参加可能な第２通信装置のコンピュータに実行させるための通信プログラムであって、
前記遠隔会議に参加する第１通信装置からの映像データをデコードするときの前記第２通信装置における負荷状態を決定する決定ステップと、
前記第２通信装置の表示部に、前記映像データがデコードされた映像が表示される場合の解像度を取得する取得ステップと、
前記映像データとして、第１エンコード条件でエンコードされた第１映像データ、及び、前記第１エンコード条件よりも負荷が小さい第２エンコード条件でエンコードされた第２映像データを受信する受信ステップと、
前記決定ステップによって決定された前記負荷状態、及び、前記取得ステップによって取得された前記解像度に基づいて、前記第１映像データ及び前記第２映像データの何れかをデコードすると判断する第１判断ステップと、
前記受信ステップによって受信された前記映像データと、前記第１判断ステップによってデコードすると判断された前記映像データとが、何れも前記第１映像データである場合又は何れも前記第２映像データである場合、前記映像データをデコードし、前記受信ステップによって受信された前記映像データと、前記第１判断ステップによってデコードすると判断された前記映像データとが、前記第１映像データと前記第２映像データとで相違する場合、前記映像データをデコードしない処理ステップと
を前記コンピュータに実行させるための通信プログラム。
【請求項７】
前記決定ステップは、
前記映像データをデコードするときの前記第２通信装置における負荷の度合いに応じて、前記負荷状態を、第１負荷状態、前記第１負荷状態よりも前記度合いの小さい第２負荷状態、及び、前記第１負荷状態よりも前記度合いの大きい第３負荷状態の何れかとして決定し、
前記第１判断ステップは、
前記決定ステップによって前記第２負荷状態が決定された場合、前記第１映像データをデコードすると判断し、
前記決定ステップによって前記第３負荷状態が決定された場合、前記第２映像データをデコードすると判断し、
前記決定ステップによって前記第１負荷状態が決定された場合であって、前記解像度が第２所定値よりも大きい場合、前記第１映像データをデコードすると判断し、
前記決定ステップによって前記第１負荷状態が決定された場合であって、前記解像度が前記第２所定値以下の場合、前記第２映像データをデコードすると判断する
ことを特徴とする請求項６に記載の通信プログラム。
【請求項８】
遠隔会議に参加可能な第１通信装置及び第２通信装置を含む通信システムであって、
前記第１通信装置は、
前記第１通信装置のカメラにおいて撮影された映像がエンコードされた映像データを送信する送信手段と、
前記第２通信装置が前記映像データをデコードする場合の負荷状態、及び、前記映像データがデコードされた映像が、前記第２通信装置の表示部に表示される場合の解像度を受信する第１受信手段と、
前記第１受信手段によって受信された前記負荷状態が、第１負荷状態か判断する第１判断手段と、
前記第１受信手段によって受信された前記解像度が、第２所定値以下か判断する第２判断手段と、
前記第１判断手段によって前記第１負荷状態と判断された場合、
前記第２判断手段によって前記解像度が前記第２所定値以下と判断されたことに応じて、第２エンコード条件でエンコードされた第２映像データを生成し、
前記第２判断手段によって前記解像度が前記第２所定値より大きいと判断されたことに応じて、前記第２エンコード条件よりも負荷が大きい第１エンコード条件でエンコードされた第１映像データを生成する第１生成手段と
を備え、
前記送信手段は、
前記第１生成手段によって前記第１映像データが生成された場合、前記映像データとして前記第１映像データを送信し、
前記第１生成手段によって前記第２映像データが生成された場合、前記映像データとして前記第２映像データを送信し、
前記第２通信装置は、
前記負荷状態を決定する決定手段と、
前記解像度を取得する取得手段と、
前記映像データとして前記第１通信装置から送信された前記第１映像データ及び前記第２映像データを受信する第２受信手段と、
前記決定手段によって決定された前記負荷状態、及び、前記取得手段によって取得された前記解像度に基づいて、前記第１映像データ及び前記第２映像データの何れかをデコードすると判断する第３判断手段と、
前記第２受信手段によって受信された前記映像データと、前記第３判断手段によってデコードすると判断された前記映像データとが、何れも前記第１映像データである場合又は何れも前記第２映像データである場合、前記映像データをデコードし、前記第２受信手段によって受信された前記映像データと、前記第３判断手段によってデコードすると判断された前記映像データとが、前記第１映像データと前記第２映像データとで相違する場合、前記映像データをデコードしない処理手段と
を備えたことを特徴とする通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して通信を行うことによって遠隔会議を実現するための通信プログラム、及び、通信システムに関する。
【背景技術】
【０００２】
ネットワークに接続した複数の通信装置のそれぞれのユーザの間で遠隔会議を行うための遠隔会議システムが知られている。特許文献１は、複数の通信装置の間で通信を行うことによって、各通信装置のユーザにビデオサービスを提供することが可能なシステムを開示する。このシステムでは、各通信装置から宛先通信装置に対してビデオフレームが送信される場合の設定条件が、それぞれの通信装置のコスト係数と、ＣＰＵリソースとの関係に基づいて決定される。コスト係数は、現時点でのビデオフレームのエンコードクロック、デコードクロック、レンダリングクロック、フレームレート等に基づいて特定される。決定される設定条件の具体例として、ビデオフレームのフレームサイズ、フレームレート、及び、ビデオフレームを生成するエンコーダの種別等が挙げられている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２００７−５２５８８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
宛先通信装置においてビデオフレームが受信され、表示部に映像が表示される場合を例示する。仮に、特許文献１では、宛先通信装置の復号およびレンダリングによって、宛先通信装置の使用可能ＣＰＵ速度の４０％よりも宛先通信装置のコスト係数が大きくなる場合、フレームサイズ、フレームレート、及び、ビデオフレームを生成するエンコーダの種別が変更される。例えば、フレームサイズが小さく設定される。一方、宛先通信装置において表示される映像の画質は、宛先通信装置の表示部における映像の解像度（例えば、表示される大きさ）に応じて変化する。例えば、フレームサイズが小さく設定された映像が表示された状態で、表示される大きさを大きくした場合、表示される大きさに応じて映像に含まれる画素は補完される。従って、例えば、宛先通信装置のＣＰＵリソースの消費量は下がる一方で、宛先通信装置のユーザが、映像の表示される大きさを大きくした場合、映像が粗くなることに応じて画質が低下する可能性がある。
【０００５】
本発明の目的は、表示部における映像の表示される大きさに応じて画質が低下することを抑制するための通信プログラム、及び、通信システムを提供することである。
【課題を解決するための手段】
【０００６】
本発明の第１態様に係る通信プログラムは、遠隔会議に参加可能な第１通信装置のコンピュータに実行させるための通信プログラムであって、前記第１通信装置のカメラにおいて撮影された映像がエンコードされた映像データを送信する送信ステップと、前記遠隔会議に参加する第２通信装置が前記映像データをデコードする場合の負荷状態、及び、前記映像データがデコードされた映像が、前記第２通信装置の表示部に表示される場合の解像度を受信する受信ステップと、前記受信ステップによって受信された前記負荷状態が、第１負荷状態か判断する第１判断ステップと、前記受信ステップによって受信された前記解像度が、第２所定値以下か判断する第２判断ステップと、前記第１判断ステップによって前記第１負荷状態と判断された場合、前記第２判断ステップによって前記解像度が前記第２所定値以下と判断されたことに応じて、第２エンコード条件でエンコードされた第２映像データを生成し、前記第２判断ステップによって前記解像度が前記第２所定値より大きいと判断されたことに応じて、前記第２エンコード条件よりも負荷が大きい第１エンコード条件でエンコードされた第１映像データを生成する第１生成ステップとを前記コンピュータに実行させ、前記送信ステップは、前記第１生成ステップによって前記第１映像データが生成された場合、前記映像データとして前記第１映像データを送信し、前記第１生成ステップによって前記第２映像データが生成された場合、前記映像データとして前記第２映像データを送信することを特徴とする。
【０００７】
第１態様によれば、第１通信装置は、第２通信装置の負荷状態が第１負荷状態の場合であり、且つ、解像度が第２所定値以下の場合に、第２映像データを送信する。その理由は、第２通信装置の負荷を軽減させるためである。なお、第２エンコード条件でエンコードが実行される場合の負荷は、第１エンコード条件でエンコードが実行される場合よりも小さい。このため、第２エンコード条件でエンコードされた第２映像データをデコードするときの負荷は、第１エンコード条件でエンコードされた第１映像データをデコードするときの負荷よりも小さくなる。このため、第１通信装置は、第２映像データを送信することによって、第２通信装置がデコード処理を行うときの負荷を軽減できる。
【０００８】
なお、第１映像及び第２映像が共通の解像度で表示部に表示された場合、第２映像の画質は、第１映像の画質よりも低画質となる場合がある。これに対し、第１通信装置は、第２通信装置の表示部に表示された映像の解像度が第２所定値以下の場合に、第２映像データを送信する。その理由は、表示部に表示された映像の解像度が第２所定値以下であるので、例えば第１映像の代わりに第２映像が表示部に表示された場合でも、映像の画質の劣化が目立ちにくい為である。このように、第１通信装置は、第２通信装置の表示部に表示される映像の画質が低画質となることを抑制しつつ、第２通信装置の負荷を軽減できる。
【０００９】
一方、第１通信装置は、第２通信装置の負荷状態が第１負荷状態の場合であり、且つ、解像度が第２所定値よりも大きい場合に、第１映像データを送信する。その理由は、例えば第１映像の代わりに第２映像が表示された場合、映像の画質の劣化が目立ちやすいので、映像の画質を優先させる必要性が高いためである。このように、第１通信装置は、第２通信装置の表示部に表示される映像の画質が低画質となることを抑制できる。
【００１０】
本発明の第２態様に係る通信プログラムは、遠隔会議に参加可能な第２通信装置のコンピュータに実行させるための通信プログラムであって、前記遠隔会議に参加する第１通信装置からの映像データをデコードするときの前記第２通信装置における負荷状態を決定する決定ステップと、前記第２通信装置の表示部に、前記映像データがデコードされた映像が表示される場合の解像度を取得する取得ステップと、前記映像データとして、第１エンコード条件でエンコードされた第１映像データ、及び、前記第１エンコード条件よりも負荷が小さい第２エンコード条件でエンコードされた第２映像データを受信する受信ステップと、前記決定ステップによって決定された前記負荷状態、及び、前記取得ステップによって取得された前記解像度に基づいて、前記第１映像データ及び前記第２映像データの何れかをデコードすると判断する第１判断ステップと、前記受信ステップによって受信された前記映像データと、前記第１判断ステップによってデコードすると判断された前記映像データとが、何れも前記第１映像データである場合又は何れも前記第２映像データである場合、前記映像データをデコードし、前記受信ステップによって受信された前記映像データと、前記第１判断ステップによってデコードすると判断された前記映像データとが、前記第１映像データと前記第２映像データとで相違する場合、前記映像データをデコードしない処理ステップとを前記コンピュータに実行させる。
【００１１】
第２態様によれば、第２通信装置は、第１通信装置から受信した映像データ（第１映像データ又は第２映像データ）と、負荷状態及び解像度に基づいて特定される映像データとを比較する。第２通信装置は、双方の映像データが、何れも第１映像データである場合又は何れも第２映像データである場合、映像データをデコードする。第２通信装置は、双方の映像データが第１映像データと第２映像データとで相違する場合、映像データをデコードしない。これによって、第２通信装置は、負荷が相対的に高くなることを抑制しつつ、表示部に表示された映像の画質が低画質となることを抑制できる。
【００１２】
本発明の第３態様に係る通信システムは、遠隔会議に参加可能な第１通信装置及び第２通信装置を含む通信システムであって、前記第１通信装置は、前記第１通信装置のカメラにおいて撮影された映像がエンコードされた映像データを送信する送信手段と、前記第２通信装置が前記映像データをデコードする場合の負荷状態、及び、前記映像データがデコードされた映像が、前記第２通信装置の表示部に表示される場合の解像度を受信する第１受信手段と、前記第１受信手段によって受信された前記負荷状態が、第１負荷状態か判断する第１判断手段と、前記第１受信手段によって受信された前記解像度が、第２所定値以下か判断する第２判断手段と、前記第１判断手段によって前記第１負荷状態と判断された場合、前記第２判断手段によって前記解像度が前記第２所定値以下と判断されたことに応じて、第２エンコード条件でエンコードされた第２映像データを生成し、前記第２判断手段によって前記解像度が前記第２所定値より大きいと判断されたことに応じて、前記第２エンコード条件よりも負荷が大きい第１エンコード条件でエンコードされた第１映像データを生成する第１生成手段とを備え、前記送信手段は、前記第１生成手段によって前記第１映像データが生成された場合、前記映像データとして前記第１映像データを送信し、前記第１生成手段によって前記第２映像データが生成された場合、前記映像データとして前記第２映像データを送信し、前記第２通信装置は、前記負荷状態を決定する決定手段と、前記解像度を取得する取得手段と、前記映像データとして前記第１通信装置から送信された前記第１映像データ及び前記第２映像データを受信する第２受信手段と、前記決定手段によって決定された前記負荷状態、及び、前記取得手段によって取得された前記解像度に基づいて、前記第１映像データ及び前記第２映像データの何れかをデコードすると判断する第３判断手段と、前記第２受信手段によって受信された前記映像データと、前記第３判断手段によってデコードすると判断された前記映像データとが、何れも前記第１映像データである場合又は何れも前記第２映像データである場合、前記映像データをデコードし、前記第２受信手段によって受信された前記映像データと、前記第３判断手段によってデコードすると判断された前記映像データとが、前記第１映像データと前記第２映像データとで相違する場合、前記映像データをデコードしない処理手段とを備えたことを特徴とする。第３態様によれば、第１態様及び第２態様と同様の効果を奏することができる。
【図面の簡単な説明】
【００１３】
【図１】通信システム１の概要と、サーバ１１及び通信装置１２の電気的構成とを示す図である。
【図２】通信装置１２の記憶部１２４に記憶された第１テーブル１２４Ａ及び第２テーブル１２４Ｂを示す図である。
【図３】第１処理のフローチャートである。
【図４】第２処理のフローチャートである。
【図５】第３処理のフローチャートである。
【図６】第４処理のフローチャートである。
【図７】第５処理のフローチャートである。
【図８】通信シーケンスを示す図である。
【図９】サーバ装置１１の記憶部１１４に記憶されたテーブル１１４Ａを示す図である。
【図１０】サーバ処理のフローチャートである。
【図１１】通信装置１２Ａの記憶部１２４に記憶された第１テーブル１２４Ａ及び第２テーブル１２４Ｂを示す図である。
【発明を実施するための形態】
【００１４】
＜通信システム１の概要＞
図１を参照し、通信システム１について説明する。通信システム１は、サーバ装置１１、及び、通信装置１２Ａ、１２Ｂ、１２Ｃを備える。以下、通信装置１２Ａ、１２Ｂ、１２Ｃを総称して、「通信装置１２」という。サーバ装置１１、及び、通信装置１２は、ネットワーク１４を介して接続する。通信システム１は、通信装置１２のそれぞれのユーザに対し、仮想会議室を提供することによって、それぞれのユーザ間でＷｅｂ会議を実現させるためのシステムである。
【００１５】
サーバ装置１１は、周知のMulti-point Control Unit（ＭＣＵ）である。通信装置１２は、周知の汎用Personal Computer（ＰＣ）に対して、Ｗｅｂ会議を行なうためのアプリケーション（以下、「会議アプリケーション」という。）のプログラムをインストールすることで構成される。以下、通信装置１２Ａ、１２Ｂ、１２ＣのそれぞれのＩＤを、「１２Ａ」「１２Ｂ」「１２Ｃ」とする。通信装置１２Ａ、１２Ｂ、１２Ｃのそれぞれのユーザを、ユーザ１３Ａ、１３Ｂ、１３Ｃという。ユーザ１３Ａ、１３Ｂ、１３Ｃを総称してユーザ１３という。なお、サーバ装置１１は、汎用のサーバに対して、サーバ用の会議アプリケーションのプログラムをインストールすることで構成されてもよい。通信装置１２の少なくとも１つは、遠隔会議用の専用端末、スマートフォン、タブレット端末等のモバイル端末に対して会議アプリケーションのプログラムをインストールすることで構成されてもよい。
【００１６】
＜電気的構成＞
サーバ装置１１の電気的構成を説明する。サーバ装置１１は、サーバ装置１１の制御を司るＣＰＵ１１１を備える。ＣＰＵ１１１は、ＲＯＭ１１２、ＲＡＭ１１３、記憶部１１４、通信Ｉ／Ｆ１１５、及び、ドライブ装置１１６と、非図示のインタフェース回路を介して電気的に接続する。ＲＯＭ１１２には、ブートプログラム、ＢＩＯＳ等が記憶される。ＲＡＭ１１３には、タイマやカウンタ、フラグデータ、一時的なデータ等が記憶される。記憶部１１４は、コンピュータが読み取り可能な非一時的な記憶媒体、たとえは、ハードディスク等で構成される。記憶部１１４には、ＣＰＵ１１１が実行する処理のプログラム、及びＯＳが記憶される。
【００１７】
通信Ｉ／Ｆ１１５は、サーバ装置１１がネットワーク１４に接続するためのインタフェース素子（例えば、ＬＡＮカードなど）、又は、サーバ装置１１がネットワーク１４に接続した図示外のアクセスポイントと接続して無線通信を行うためのインタフェース素子（例えば、Ｗｉ−Ｆｉ（登録商標）通信モデムなど）である。ＣＰＵ１１１は、通信Ｉ／Ｆ１１５を介して、ネットワーク１４に接続する他の機器とデータの送受信を行う。ドライブ装置１１６は、半導体メモリや光ディスク等のコンピュータが読み取り可能な記憶媒体１１６Ａに記憶された情報を読み出すことができる。ＣＰＵ１１１は、記憶媒体１１６Ａに記憶されたプログラムをドライブ装置１１６によって読み出し、記憶部１１４に記憶できる。
【００１８】
通信装置１２の電気的構成を説明する。通信装置１２は、通信装置１２の制御を司るＣＰＵ１２１を備える。ＣＰＵ１２１は、ＲＯＭ１２２、ＲＡＭ１２３、記憶部１２４、カメラ１２５、表示部１２６、通信Ｉ／Ｆ１２７、入力部１２８、マイク１２９、スピーカ１３０、及び、ドライブ装置１３１と、非図示のインタフェース回路を介して電気的に接続する。ＲＯＭ１２２には、ブートプログラム、ＢＩＯＳ等が記憶される。ＲＡＭ１２３には、タイマやカウンタ、フラグデータ、一時的なデータ等が記憶される。記憶部１２４は、コンピュータが読み取り可能な非一時的な記憶媒体、たとえは、ハードディスク等で構成される。記憶部１２４には、会議アプリケーションのプログラム、及びＯＳが記憶される。カメラ１２５は、撮影した映像のデータ（以下、「撮影データ」という。）をＣＰＵ１２１に対して出力可能である。表示部１２６はLiquid Crystal Display（ＬＣＤ）などのディスプレイである。通信Ｉ／Ｆ１２７は、通信装置１２がネットワーク１４に接続するためのインタフェース素子、又は、通信装置１２がネットワーク１４に接続した図示外のアクセスポイントと接続して無線通信を行うためのインタフェース素子である。ＣＰＵ１２１は、通信Ｉ／Ｆ１２７を介して、ネットワーク１４に接続する他の機器とデータの送受信を行う。入力部１２８は、キーボード１２８Ａ、マウス１２８Ｂ等を含む。ドライブ装置１３１は、半導体メモリ等のコンピュータが読み取り可能な記憶媒体１３１Ａに記憶された情報を読み出すことができる。ＣＰＵ１２１は、記憶媒体１３１Ａに記憶されたプログラムをドライブ装置１３１によって読み出し、記憶部１２４に記憶できる。
【００１９】
なお、記憶部１１４、１２４は、例えば、フラッシュメモリ及び／又はＲＯＭ等、他の非一時的な記憶媒体で構成されてもよい。非一時的な記憶媒体は、情報を記憶する期間に関わらず、情報を記憶可能な記憶媒体であればよい。非一時的な記憶媒体は、一時的な記憶媒体（例えば、伝送される信号）を含まなくてもよい。ＣＰＵ１１１、１２１として、汎用的なプロセッサが用いられてもよい。ＣＰＵ１１１，１２１によって実行される処理の一部は、他の電子部品（例えば、ＡＳＩＣ）によって実行されてもよい。ＣＰＵ１１１、１２１によって実行される処理は、複数の電子機器（つまり、複数のＣＰＵ）によって分散処理されてもよい。例えば、サーバ装置１１のＣＰＵ１１１によって実行される処理の一部は、通信装置１２のＣＰＵ１２１によって実行されてもよい。プログラムは、例えば、ネットワーク１４に接続された別のサーバからダウンロードされて（即ち、伝送信号として送信され）、記憶部１１４、１２４に記憶されてもよい。この場合、プログラムは、別のサーバに備えられたハードディスクなどの非一時的な記憶媒体に保存されていることとなる。
【００２０】
通信装置１２のＣＰＵ１２１は、カメラ１２５から出力された撮影データを取得した場合、第１エンコード条件及び第２エンコード条件の何れかを選択してエンコードすることが可能である。第１エンコード条件及び第２エンコード条件で撮影データがエンコードされる場合、何れの場合も、撮影データは別の形式のデータに変換される。以下、撮影データが第１エンコード条件でエンコードされた場合に生成されるデータを、「第１映像データ」という。撮影データが第２エンコード条件でエンコードされた場合に生成されるデータを、「第２映像データ」という。第１映像データ及び第２映像データを総称して、「映像データ」という。例えば、撮影データはアナログデータであり、映像データは符号化されたデジタルデータである。
【００２１】
本実施形態では、第１エンコード条件でエンコードが実行される場合のＣＰＵ１２１の負荷が、第２エンコード条件でエンコードが実行される場合のＣＰＵ１２１の負荷よりも大きいことを前提とする。エンコード時におけるＣＰＵ１２１の負荷は、例えば、エンコード後のデータのビットレートに比例する。本実施形態において、第１映像データと第２映像データとでは、例えば、ビットレートが相違する。第１映像データのビットレートは、第２映像データのビットレートよりも大きい。このビットレートの相違は、第１映像データのフレームサイズ及びフレームレートが、第２映像データのフレームサイズ及びフレームレートに比べて大きいことに起因する。なお、同一のエンコーダが用いられる場合、第１エンコード条件は、例えば、第２エンコード条件と比較して、エンコーダの設定が異なってもよい（例えば、第１エンコード条件は、第２エンコード条件よりも参照フレーム数が多い）。あるいは、異なるエンコーダが用いられる場合、第１エンコード条件（例えば、Ｈ．２６４）と第２エンコード条件（例えば、ＭＰＥＧ４）とが異なってもよい。
【００２２】
又、通信装置１２のＣＰＵ１２１は、他の通信装置１２によって生成された映像データをデコードし、表示部１２６に表示することが可能なデータを生成可能である。以下、第１映像データがデコードされた場合に生成される映像を、「第１映像」という。第２映像データがデコードされた場合に生成される映像を、「第２映像」という。本実施形態では、第１映像データをデコードする場合のＣＰＵ１２１の負荷が、第２映像データをデコードする場合のＣＰＵ１２１の負荷よりも大きいことを前提とする。その理由は、第１映像データのビットレートは、第２映像データのビットレートよりも大きいのに対し、デコード時におけるＣＰＵ１２１の負荷は、例えば、映像データのビットレートに比例するためである。
【００２３】
＜メインウィンドウ２０の概要＞
通信装置１２Ａ〜１２Ｃのそれぞれのユーザ１３Ａ〜１３Ｃが、仮想会議室（以下、単に「会議室」という。）を利用するための所定の操作を行った場合を例に挙げる。所定の操作は、周知のＷｅｂ会議システムにおいて会議室が利用される場合にユーザによって行われる操作と同一である。例えば、所定の操作は、サーバ装置１１から通信装置１２に対して予め通知されたＵＲＬを、マウス１２８Ｂによって選択する操作である。このＵＲＬには、例えば、参加する会議室を識別する会議ＩＤが引数として含まれる。この場合、通信装置１２のＣＰＵ１２１は、サーバ装置１１と通信を行い、周知の会議接続の処理を実行する。会議接続の処理では、サーバ装置１１と通信装置１２との間で会議室のセッションが確立される。サーバ装置１１は、会議室に参加するすべての通信装置１２のＩＤ及びアドレス情報を、各通信装置１２に対して通知する。以下では、通信装置１２Ａ〜１２Ｃとサーバ装置１１との間で会議室のセッションが確立され、通信装置１２Ａ〜１２Ｃが共通の会議室に参加することを前提とする。
【００２４】
セッションの確立後、通信装置１２のＣＰＵ１２１によって会議アプリケーションが実行される。会議アプリケーションが実行された場合、会議アプリケーションのメインウィンドウ２０が表示部１２６に表示される。メインウィンドウ２０には、映像ウィンドウ２１が含まれる。映像ウィンドウ２１には、会議室に参加する他の通信装置１２のカメラ１２５によって撮影された映像が表示される。映像ウィンドウ２１の大きさは、通信装置１２のユーザ１３がマウス１２８Ｂを操作することによって変更可能である。
【００２５】
図１において、通信装置１２Ａの表示部１２６に表示されたメインウィンドウ２０Ａには、映像ウィンドウ２２Ｂ、２２Ｃが含まれる。映像ウィンドウ２２Ｂ（解像度：６４０×４８０（ｄｏｔ））には、通信装置１２Ｂのカメラ１２５によって撮影されたユーザ１３Ｂの映像が表示されている。映像ウィンドウ２２Ｃ（解像度：３２０×２４０（ｄｏｔ））には、通信装置１２Ｃのカメラ１２５によって撮影されたユーザ１３Ｃの映像が表示されている。通信装置１２Ｂの表示部１２６に表示されたメインウィンドウ２０Ｂには、映像ウィンドウ２３Ａ、２３Ｃが含まれる。映像ウィンドウ２３Ａ（解像度：６４０×４８０（ｄｏｔ））には、通信装置１２Ａのカメラ１２５によって撮影されたユーザ１３Ａの映像が表示されている。映像ウィンドウ２３Ｃ（解像度：３２０×２４０（ｄｏｔ））には、通信装置１２Ｃのカメラ１２５によって撮影されたユーザ１３Ｃの映像が表示されている。通信装置１２Ｃの表示部１２６に表示されたメインウィンドウ２０Ｃには、映像ウィンドウ２４Ａ、２４Ｂが含まれる。映像ウィンドウ２４Ａ（解像度：３２０×２４０（ｄｏｔ））には、通信装置１２Ａのカメラ１２５によって撮影されたユーザ１３Ａの映像が表示されている。映像ウィンドウ２４Ｂ（解像度：６４０×４８０（ｄｏｔ））には、通信装置１２Ｂのカメラ１２５によって撮影されたユーザ１３Ｂの映像が表示されている。
【００２６】
通信装置１２ＡのＣＰＵ１２１によって第１映像データが生成され、この第１映像データに基づいて、通信装置１２Ｂの映像ウィンドウ２３Ａ、及び、通信装置１２Ｃの映像ウィンドウ２４Ａに第１映像が表示される場合を例に挙げる。上記で説明したように、第１映像データのフレームサイズは、第２映像データのフレームサイズよりも大きい。このため、映像ウィンドウ２３Ａに第１映像が表示された場合の画質は、映像ウィンドウ２３Ａに第２映像が表示された場合の画質よりも高画質となる。同様に、映像ウィンドウ２４Ａに第１映像が表示された場合の画質は、映像ウィンドウ２４Ａに第２映像が表示された場合の画質よりも高品質となる。
【００２７】
又、映像ウィンドウ２３Ａの解像度（６４０×４８０（ｄｏｔ））は、映像ウィンドウ２４Ａの解像度３２０×２４０（ｄｏｔ）よりも大きい。このため、第１映像に代えて第２映像が表示された場合の画質の劣化は、映像ウィンドウ２４Ａよりも映像ウィンドウ２３Ａの方が目立ちやすい。例えば、第２映像の画素が、映像ウィンドウ２３Ａ、２４Ａのそれぞれの解像度で表示可能なように補完された場合、映像ウィンドウ２３Ａに表示された第２映像の画素の大きさは、映像ウィンドウ２４Ａに表示された第２映像の画素の大きさよりも大きくなる。このため、フレームサイズが元々小さい第２映像データに対応する第２映像が、映像ウィンドウ２３Ａに表示された場合、映像ウィンドウ２４Ａに第２映像が表示される場合よりも、各画素が粗くなり、画質が低画質になりやすい。このため、特に通信装置１２Ｂの映像ウィンドウ２３Ａには、第２映像よりも第１映像が表示されることが好ましい。
【００２８】
但し、第１映像データをデコードする場合のＣＰＵ１２１の負荷は、第２映像データをデコードする場合のＣＰＵ１２１の負荷よりも大きくなる。このため、第１映像データのデコードが実行された場合、ＣＰＵ１２１の負荷が過多になり好ましくない場合がある。
【００２９】
一方、通信装置１２ＡのＣＰＵ１２１によって第２映像データが生成され、この第２映像データに基づいて、通信装置１２Ｂの映像ウィンドウ２３Ａ、及び、通信装置１２Ｃの映像ウィンドウ２４Ａに第２映像が表示される場合を例に挙げる。この場合、第２映像データをデコードする場合のＣＰＵ１２１の負荷は、第１映像データをデコードする場合のＣＰＵ１２１の負荷よりも小さくなるので、第２映像データのデコードが実行されることによって、ＣＰＵ１２１の負荷が過多になることを抑制できる場合がある。しかし上記のように、映像ウィンドウ２３Ａに表示された第２映像は、映像ウィンドウ２４Ａに表示された第２映像よりも低画質になりやすい。
【００３０】
これに対し、本実施形態において、通信装置１２のＣＰＵ１２１は、他の通信装置１２の映像ウィンドウ２１の解像度、及び、他の通信装置１２のＣＰＵ１２１の負荷の状態に応じて、第１エンコード条件及び第２エンコード条件の何れの条件で撮影データをエンコードするかを決定する。又、通信装置１２のＣＰＵ１２１は、自身のＣＰＵ１２１の負荷の状態、及び、映像ウィンドウ２１の解像度に応じて、第１映像データ及び第２映像データの何れをデコードして映像ウィンドウ２１に映像を表示するかを決定する。
【００３１】
＜第１テーブル１２４Ａ＞
図２を参照し、通信装置１２の記憶部１２４に記憶された第１テーブル１２４Ａについて説明する。第１テーブル１２４Ａには、通信装置１２の負荷状態、及び、解像度が格納される。負荷状態は、ＣＰＵ１２１の負荷の度合いのレベルを示す。負荷状態の詳細は後述する。解像度は、通信装置１２の表示部１２６に表示された各映像ウィンドウ２１の解像度である。解像度は、各映像ウィンドウ２１に表示される映像の映像データを送信した通信装置１２のＩＤに対応付けられる。以下、映像データを送信した通信装置１２のＩＤを、「表示ＩＤ」という。「映像ウィンドウ２１に表示される映像の映像データを送信した通信装置１２の表示ＩＤ」を、「映像ウィンドウ２１の表示ＩＤ」と言い換える。図２では、通信装置１２Ａ、１２Ｂ、１２Ｃのそれぞれの記憶部１２４に記憶された第１テーブル１２４Ａが示されている。第２テーブル１２４Ｂについての説明は後述する。
【００３２】
＜第１処理＞
図３〜図８を参照し、通信装置１２のＣＰＵ１２１によって実行される第１処理〜第５処理について説明する。はじめに、図３を参照し、第１処理について説明する。第１処理は、サーバ装置１１との間のセッションの確立後に会議アプリケーションが実行されてメインウィンドウ２０が表示部１２６に表示された場合、記憶部１２４に記憶されたプログラムをＣＰＵ１２１が実行することによって、一定周期（例えば、５〜１０分毎）で開始される。ＣＰＵ１２１は、第１処理を最初に実行する場合、第１テーブル１２４Ａ（図２参照）の「負荷状態」の初期値として、負荷の度合いのレベルが低い状態（以下、「低状態」という。）であることを示す「１」を設定する。以下、負荷状態に「１」を設定することを、「負荷状態に低状態を設定する」という。
【００３３】
はじめに、ＣＰＵ１２１は、ＣＰＵ１２１の負荷の度合いを特定する。負荷の度合いとは、後述する第５処理（図５参照）において受信された映像データ（第１映像データ又は第２映像データ）がデコードされる場合における、ＣＰＵ１２１の使用率を示す。ＣＰＵ１２１は、特定された負荷の度合いが、第１所定値（例えば、４０％）以上か判断する（Ｓ１１）。ＣＰＵ１２１は、特定された負荷の度合いが第１所定値以上と判断された場合（Ｓ１１：ＹＥＳ）、第１テーブル１２４Ａの負荷状態が低状態に設定されているか判断する（Ｓ１７）。なお、上記のように、最初に第１処理が実行される場合、第１テーブル１２４Ａの負荷状態は低状態に設定されている。ＣＰＵ１２１は、第１テーブル１２４Ａの負荷状態が低状態に設定されていると判断した場合（Ｓ１７：ＹＥＳ）、負荷の度合いのレベルが中程度の状態（以下、「中状態」という。）であることを示す「２」を、第１テーブル１２４Ａの負荷状態に設定する（Ｓ１９）。以下、第１テーブル１２４Ａの負荷状態に「２」を設定することを、「負荷状態に中状態を設定する」という。ＣＰＵ１２１は、第１テーブル１２４Ａの負荷状態を、サーバ装置１１に対して送信する（Ｓ２３）。ＣＰＵ１２１は第１処理を終了させる。一方、例えば、前回の第１処理において第１テーブル１２４Ａの負荷状態が中状態又は高状態に設定されている場合、ＣＰＵ１２１は、第１テーブル１２４Ａの負荷状態が低状態に設定されていないと判断する（Ｓ１７：ＮＯ）。この場合、ＣＰＵ１２１は、負荷の度合いのレベルが高い状態（以下、「高状態」という。）であることを示す「３」を、第１テーブル１２４Ａの負荷状態に設定する（Ｓ２１）。以下、第１テーブル１２４Ａの負荷状態に「３」を設定することを、「負荷状態に高状態を設定する」という。ＣＰＵ１２１は、第１テーブル１２４Ａの負荷状態を、サーバ装置１１に対して送信する（Ｓ２３）。ＣＰＵ１２１は第１処理を終了させる。
【００３４】
一方、負荷の度合いが第１所定値未満と判断された場合（Ｓ１１：ＮＯ）、第１テーブル１２４Ａの負荷状態に高状態が設定されているか判断する（Ｓ１３）。例えば、前回の第１処理において第１テーブル１２４Ａの負荷状態が高状態に設定されている場合、ＣＰＵ１２１は、第１テーブル１２４Ａの負荷状態に高状態が設定されていると判断する（Ｓ１３：ＹＥＳ）。この場合、ＣＰＵ１２１は、第１テーブル１２４Ａの負荷状態に中状態を設定する（Ｓ１９）。ＣＰＵ１２１は、第１テーブル１２４Ａの負荷状態を、サーバ装置１１に対して送信する（Ｓ２３）。ＣＰＵ１２１は第１処理を終了させる。一方、例えば、前回の第１処理において第１テーブル１２４Ａの負荷状態が低状態又は中状態に設定されている場合、ＣＰＵ１２１は、第１テーブル１２４Ａの負荷状態に高状態が設定されていないと判断する（Ｓ１３：ＮＯ）。この場合、ＣＰＵ１２１は、第１テーブル１２４Ａの負荷状態に低状態を設定する（Ｓ１５）。ＣＰＵ１２１は、第１テーブル１２４Ａの負荷状態を、サーバ装置１１に対して送信する（Ｓ２３）。ＣＰＵ１２１は第１処理を終了させる。
【００３５】
＜第２処理＞
図４を参照し、通信装置１２のＣＰＵ１２１によって実行される第２処理について説明する。第２処理は、サーバ装置１１とのセッションの確立後に会議アプリケーションが実行されてメインウィンドウ２０が表示された直後、又は、メインウィンドウ２０に含まれる映像ウィンドウ２１の何れかの大きさを変更する操作が、入力部１２８を介して行われた場合に、記憶部１２４に記憶されたプログラムをＣＰＵ１２１が実行することによって開始される。ＣＰＵ１２１は、第２処理を最初に実行する場合、第１テーブル１２４Ａ（図２参照）のすべての解像度として、「０×０」（ｄｏｔ）を設定する。
【００３６】
はじめに、ＣＰＵ１２１は、メインウィンドウ２０に含まれる映像ウィンドウ２１の何れかの解像度を取得する（Ｓ４１）。なお、取得される解像度は、映像ウィンドウ２１に第１映像又は第２映像が表示される場合の解像度に対応する。ＣＰＵ１２１は、Ｓ４１の処理によって取得された解像度と、第１テーブル１２４Ａのうち、Ｓ４１の処理によって解像度が取得された映像ウィンドウ２１の表示ＩＤに対応付けられた解像度（以下、「対応解像度」という。）とを比較する。
【００３７】
ＣＰＵ１２１は、Ｓ４１の処理によって取得された解像度と第１テーブル１２４Ａの対応解像度とが相違する場合、映像ウィンドウ２１の解像度が変更されたと判断する（Ｓ４３：ＹＥＳ）。この場合、ＣＰＵ１２１は、第１テーブル１２４Ａにおいて対応解像度に対応付けられた表示ＩＤを、Ｓ４１の処理によって取得された解像度に関連付け、サーバ装置１１に対して送信する（Ｓ４５）。ＣＰＵ１２１は、第１テーブル１２４Ａの対応解像度を、Ｓ４１の処理によって取得された解像度に変更する。ＣＰＵ１２１は処理をＳ４７に進める。一方、ＣＰＵ１２１は、Ｓ４１の処理によって取得された解像度と、第１テーブル１２４Ａの対応解像度とが一致する場合、映像ウィンドウ２１の解像度が変更されていないと判断する（Ｓ４３：ＮＯ）。この場合、ＣＰＵ１２１は処理をＳ４７に進める。
【００３８】
なお、上記のＳ４５の処理において、ＣＰＵ１２１は、Ｓ４１の処理によって取得された解像度と第１テーブル１２４Ａの対応解像度との相違が所定の範囲内である場合に、映像ウィンドウ２１の解像度が変更されていないと判断してもよい。具体的には、例えば、それぞれの解像度の横方向及び縦方向の画素数の相違量が何れも１００ｄｏｔ以内の場合、ＣＰＵ１２１は、映像ウィンドウ２１の解像度が変更されていないと判断してもよい。
【００３９】
ＣＰＵ１２１は、メインウィンドウ２０に含まれるすべての映像ウィンドウ２１の解像度が、Ｓ４１の処理によって取得されたか判断する（Ｓ４７）。ＣＰＵ１２１は、解像度を取得していない映像ウィンドウ２１が残っている場合、すべての映像ウィンドウ２１の解像度が取得されていないと判断する（Ｓ４７：ＮＯ）。ＣＰＵ１２１は処理をＳ４１に戻す。ＣＰＵ１２１は、解像度が取得されていない映像ウィンドウ２１の何れかから、解像度を取得し（Ｓ４１）、Ｓ４３、Ｓ４５の処理を繰り返す。ＣＰＵ１２１は、すべての映像ウィンドウ２１の解像度が取得されたと判断された場合（Ｓ４７：ＹＥＳ）、第２処理を終了させる。
【００４０】
なお、メインウィンドウ２０が表示された直後、最初に第２処理が実行される場合、第１テーブル１２４Ａのすべての解像度に「０×０」が設定される。このため、すべての映像ウィンドウ２１について、Ｓ４１の処理によって取得された解像度と対応解像度とが相違すると判断される（Ｓ４３）。従って、すべての映像ウィンドウ２１の解像度に、第１テーブル１２４Ａにおいて対応解像度に対応付けられた表示ＩＤが関連付けられ、サーバ装置１１に対して送信される（Ｓ４５）。
【００４１】
図８は、サーバ装置１１及び通信装置１２の間の通信シーケンスの概要を示す。上記の第１処理（図３参照）が通信装置１２ＡのＣＰＵ１２１によって実行され、低状態が第１テーブル１２４Ａに設定された場合、低状態が設定された負荷状態は、通信装置１２Ａからサーバ装置１１に対して送信される（矢印Ｃ１１）。又、上記の第２処理（図４参照）が、通信装置１２ＡのＣＰＵ１２１によって実行された場合、例えば、映像ウィンドウ２２Ｂ（図１参照）の解像度「６４０×４８０」（ｄｏｔ）に、通信装置１２ＢのＩＤ「１２Ｂ」が関連付けられ、通信装置１２Ａからサーバ装置１１に対して送信される（矢印Ｃ１１）。又、例えば、映像ウィンドウ２２Ｃ（図１参照）の解像度「３２０×２４０」（ｄｏｔ）に、通信装置１２ＣのＩＤ「１２Ｃ」が関連付けられ、通信装置１２Ａからサーバ装置１１に対して送信される（矢印Ｃ１１）。なお、通信装置１２ＢのＣＰＵ１２１によって第１処理及び第２処理が実行された場合、及び、通信装置１２ＣのＣＰＵ１２１によって第１処理及び第２処理が実行された場合も同様である（矢印Ｃ１３、Ｃ１５）。なお、図８では、負荷状態及び解像度が通信装置１２から同時に送信されているように記載されているが、実際には、負荷状態及び解像度は、第１処理及び第２処理の実行時に送信されるので、それぞれは別々に送信される。もちろん、負荷状態及び解像度が通信装置１２から同時に送信されても差し支え無い。
【００４２】
詳細は後述するが、サーバ装置１１のＣＰＵ１１１は、矢印Ｃ１１、Ｃ１３、Ｃ１５のように送信された負荷状態及び解像度を受信する。ＣＰＵ１１１は、記憶部１１４に記憶されたテーブル１１４Ａ（図９参照）に、受信された負荷状態及び解像度を格納する。
【００４３】
＜テーブル１１４Ａ＞
図９に示すように、テーブル１１４Ａにおいて、負荷状態は、負荷状態を送信した通信装置１２のＩＤ「１２Ａ」「１２Ｂ」「１２Ｃ」に対応付けられる。又、解像度は、解像度を送信した通信装置１２のＩＤと、解像度に関連付けられていた通信装置１２のＩＤとに対応付けられる。以下、負荷状態及び解像度を送信した通信装置１２のＩＤを、「第１ＩＤ」という。解像度に関連付けられていた通信装置１２のＩＤを、「第２ＩＤ」という。
【００４４】
ＣＰＵ１１１は、通信装置１２から負荷状態を受信する度に、受信した負荷状態に第１ＩＤを関連付け、会議室に参加するすべての通信装置１２に対してブロードキャスト送信する（矢印Ｃ１２、Ｃ１４、Ｃ１６）。又、ＣＰＵ１１１は、通信装置１２から解像度を受信する度に、受信した解像度に、第１ＩＤ及び第２ＩＤを関連付け、会議室に参加するすべての通信装置１２に対してブロードキャスト送信する（矢印Ｃ１２、Ｃ１４、Ｃ１６）。
【００４５】
＜第３処理＞
図５を参照し、通信装置１２のＣＰＵ１２１によって実行される第３処理について説明する。第３処理は、サーバ装置１１とのセッションの確立後に会議アプリケーションが実行されてメインウィンドウ２０が表示された後、サーバ装置１１から送信された負荷状態又は解像度の受信が開始された場合に、記憶部１２４に記憶されたプログラムをＣＰＵ１２１が実行することによって開始される。
【００４６】
はじめに、ＣＰＵ１２１は、サーバ装置１１から送信された負荷状態の受信が開始されたか判断する（Ｓ８１）。ＣＰＵ１２１は、負荷状態の受信が開始されたと判断された場合（Ｓ８１：ＹＥＳ）、負荷状態をすべて受信する。ＣＰＵ１２１は、受信された負荷状態と、受信された負荷状態に関連付けられた第１ＩＤとを対応付けて、第２テーブル１２４Ｂ（図２参照、後述）に格納する（Ｓ８３）。ＣＰＵ１２１は処理をＳ８５に進める。ＣＰＵ１２１は、負荷状態の受信が開始されていないと判断された場合（Ｓ８１：ＮＯ）、処理をＳ８５に進める。
【００４７】
ＣＰＵ１２１は、サーバ装置１１から送信された解像度の受信が開始されたか判断する（Ｓ８５）。ＣＰＵ１２１は、解像度の受信が開始されたと判断された場合（Ｓ８５：ＹＥＳ）、解像度をすべて受信する。ＣＰＵ１２１は、受信された解像度と、受信された解像度に関連付けられた第１ＩＤ及び第２ＩＤとを対応付けて、第２テーブル１２４Ｂ（図２参照、後述）に格納する（Ｓ８７）。ＣＰＵ１２１は第３処理を終了させる。ＣＰＵ１２１は、解像度を受信していないと判断された場合（Ｓ８５：ＮＯ）、第３処理を終了させる。
する。
【００４８】
例えば、図８に示すように、サーバ装置１１から矢印Ｃ１２、Ｃ１４、Ｃ１６のようにブロードキャスト送信された負荷状態及び解像度は、通信装置１２Ａ、１２Ｂ、１２ＣのそれぞれのＣＰＵ１２１が第３処理を実行することによって受信される。なお、図５の第３処理では説明を省略しているが、ＣＰＵ１２１は、自身のＩＤが第１ＩＤとして関連付けられている負荷状態及び解像度を受信した場合、この負荷状態及び解像度を第２テーブル１２４Ｂに記憶しない。具体的には、例えば、通信装置１２ＡのＣＰＵ１２１は、サーバ装置１１から矢印Ｃ１２のように送信された負荷状態及び解像度を受信した場合、自身のＩＤと同じ第１ＩＤ「１２Ａ」が関連付けられているので、この負荷状態及び解像度を第２テーブル１２４Ｂに記憶しない（Ｒ１１）。一方、ＣＰＵ１２１は、サーバ装置１１から矢印Ｃ１４のように送信された負荷状態を受信した場合、自身のＩＤと異なる第１ＩＤ「１２Ｂ」が関連付けられているので、負荷状態に第１ＩＤを対応付けて記憶部１２４に記憶する（Ｒ２１）。ＣＰＵ１２１は、サーバ装置１１から矢印Ｃ１４のように送信された解像度を受信した場合、解像度に第１ＩＤ及び第２ＩＤを対応付けて記憶部１２４に記憶する（Ｒ２１）。サーバ装置１１から矢印Ｃ１６のように送信された負荷状態及び解像度が受信された場合についても同様である（Ｒ３１）。又、通信装置１２ＢのＣＰＵ１２１が、サーバ装置１１から矢印Ｃ１２、Ｃ１４、Ｃ１６のように送信された負荷状態及び解像度を受信した場合（Ｒ１２、Ｒ２２、Ｒ３２）、及び、通信装置１２ＣのＣＰＵ１２１が、サーバ装置１１から矢印Ｃ１２、Ｃ１４、Ｃ１６のように送信された負荷状態及び解像度を受信した場合（Ｒ１３、Ｒ２３、Ｒ３３）についても同様であるので、説明を省略する。
【００４９】
＜第２テーブル１２４Ｂ＞
図２を参照し、通信装置１２の記憶部１２４に記憶された第２テーブル１２４Ｂについて説明する。第２テーブル１２４Ｂには、サーバ装置１１から受信された負荷状態が、第１ＩＤに対応付けて格納される。又、第２テーブル１２４Ｂには、サーバ装置１１から受信された解像度が、第１ＩＤ及び第２ＩＤに対応付けて格納される。
【００５０】
＜第４処理＞
図６を参照し、通信装置１２のＣＰＵ１２１によって実行される第４処理について説明する。第４処理は、サーバ装置１１とのセッションの確立後に会議アプリケーションが実行されてメインウィンドウ２０が表示された後、映像データのフレーム周期で繰り返し起動される。
【００５１】
はじめに、ＣＰＵ１２１は、カメラ１２５から撮影データを取得する（Ｓ５１）。ＣＰＵ１２１は、会議室に参加する他の通信装置１２のＩＤの何れかを選択する（Ｓ５３）。なお、ＣＰＵ１２１は、サーバ装置１１とのセッションが確立した後、会議室に参加するすべての通信装置１２のＩＤ及びアドレス情報を、サーバ装置１１から受信している。ＣＰＵ１２１は、第３処理（図５参照）を実行することによって第２テーブル１２４Ｂ（図２参照）に格納された負荷状態のうち、Ｓ５３の処理によって選択されたＩＤと同じ第１ＩＤに対応付けられた負荷状態を取得する（Ｓ５５）。ＣＰＵ１２１は、第３処理を実行することによって第２テーブル１２４Ｂに格納された解像度のうち、Ｓ５３の処理によって選択されたＩＤと同じ第１ＩＤ、且つ、自身のＩＤと同じ第２ＩＤに対応付けられた解像度を取得する（Ｓ５７）。
【００５２】
ＣＰＵ１２１は、Ｓ５５の処理によって取得された負荷状態が低状態に設定されているか判断する（Ｓ５９）。ＣＰＵ１２１は、負荷状態が低状態に設定されていると判断された場合（Ｓ５９：ＹＥＳ）、Ｓ５１の処理によって取得された撮影データを第１エンコード条件でエンコードすると決定する（Ｓ６５）。ＣＰＵ１２１は処理をＳ６９に進める。
【００５３】
ＣＰＵ１２１は、Ｓ５５の処理によって取得された負荷状態に低状態が設定されていないと判断された場合（Ｓ５９：ＮＯ）、負荷状態に中状態が設定されているか判断する（Ｓ６１）ＣＰＵ１２１は、中状態が設定されていると判断された場合（Ｓ６１：ＹＥＳ）、Ｓ５７の処理によって取得された解像度が、第２所定値（例えば、３２０×２４０（ｄｏｔ））よりも大きいか判断する。ＣＰＵ１２１は、第２所定値よりも大きいと判断された場合（Ｓ６３：ＹＥＳ）、Ｓ５１の処理によって取得された撮影データを第１エンコード条件でエンコードすると決定する（Ｓ６５）。ＣＰＵ１２１は処理をＳ６９に進める。ＣＰＵ１２１は、Ｓ５７の処理によって取得された解像度が、第２所定値以下と判断された場合（Ｓ６３：ＮＯ）、Ｓ５１の処理によって取得された撮影データを第２エンコード条件でエンコードすると決定する（Ｓ６７）。ＣＰＵ１２１は処理をＳ６９に進める。
【００５４】
ＣＰＵ１２１は、Ｓ５５の処理によって取得された負荷状態に中状態が設定されていないと判断された場合（Ｓ６１：ＮＯ）、処理をＳ６７に進める。この場合、Ｓ５５の処理によって取得された負荷状態に高状態が設定されている。ＣＰＵ１２１は、Ｓ５１の処理によって取得された撮影データを第２エンコード条件でエンコードすると判断する（Ｓ６７）。ＣＰＵ１２１は処理をＳ６９に進める。
【００５５】
ＣＰＵ１２１は、Ｓ５１の処理によって取得された撮影データを、Ｓ６５、又は、Ｓ６７の処理によって決定した条件（第１エンコード条件、又は、第２エンコード条件）でエンコードし、映像データを生成する（Ｓ６９）。ＣＰＵ１２１は、生成された映像データをＲＡＭ１２３に記憶する。ＣＰＵ１２１は、会議室に参加する他の通信装置１２のＩＤを、Ｓ５３の処理によってすべて選択したか判断する（Ｓ７１）。ＣＰＵ１２１は、会議室に参加する他の通信装置１２のＩＤを、Ｓ５３の処理によってすべて選択していないと判断された場合（Ｓ７１：ＮＯ）、処理をＳ５３に戻す。ＣＰＵ１２１は、会議室に参加する他の通信装置１２のＩＤのうち、選択されていないＩＤの何れかを選択し（Ｓ５３）、処理を繰り返す。
【００５６】
なお、会議室に参加する他の通信装置１２が２以上ある場合、上記のように処理が繰り返される過程で、第１エンコード条件又は第２エンコード条件が２回以上決定される場合がある。このような場合、Ｓ５１の処理によって取得された撮影データは、決定された条件で既にエンコードされており、生成された映像データはＲＡＭ１２３に既に記憶されている。この場合、図６の第４処理では説明を省略しているが、ＣＰＵ１２１は、２回目以降に決定された条件によるエンコード（Ｓ６９）を実行しない。これによって、ＣＰＵ１２１は、同一の映像データが重複して生成されることを回避できる。
【００５７】
ＣＰＵ１２１は、遠隔会議に参加する他の通信装置１２のＩＤが、Ｓ５３の処理によってすべて選択されたと判断された場合（Ｓ７１：ＹＥＳ）、処理をＳ７３に進める。ＣＰＵ１２１は、ＲＡＭ１２３に記憶されたすべての映像データ（第１映像データ又は第２映像データ）を、サーバ装置１１に対して送信する（Ｓ７３）。ＣＰＵ１２１は第４処理を終了させる。
【００５８】
通信装置１２ＡのＣＰＵ１２１において第４処理が実行された場合について、図８を参照して具体的に説明する。通信装置１２ＡのＣＰＵ１２１は、カメラ１２５から撮影データを取得する（Ｓ５１）。ＣＰＵ１２１は、会議室に参加する通信装置１２Ｂ、１２Ｃのうち、通信装置１２ＢのＩＤ「１２Ｂ」を選択する。（Ｓ５３）。ＣＰＵ１２１は、記憶部１２４の第２テーブル１２４Ｂ（図２（Ａ）参照）に格納された負荷状態のうち、選択されたＩＤ「１２Ｂ」と同じ第１ＩＤに対応付けられた負荷状態に設定された中状態を取得する（Ｓ５５）。ＣＰＵ１２１は、第２テーブル１２４Ｂに格納された解像度のうち、選択されたＩＤ「１２Ｂ」と同じ第１ＩＤ、及び、自身のＩＤ「１２Ａ」と同じ第２ＩＤに対応付けられた解像度「６４０×４８０」を取得する（Ｓ５７）。
【００５９】
ＣＰＵ１２１は、取得された負荷状態に低状態が設定されておらず（Ｓ５９：ＮＯ）、中状態が設定されており（Ｓ６１：ＹＥＳ）、解像度「６４０×４８０」が第２所定値よりも大きいと判断する（Ｓ６３：ＹＥＳ）。ＣＰＵ１２１は、第１エンコード条件を決定し（Ｓ６５）、Ｓ５１の処理によって取得された撮影データをエンコードして第１映像データを生成する（Ｓ６９）。ＣＰＵ１２１は、第１映像データをＲＡＭ１２３に記憶する。ＣＰＵ１２１は、会議室に参加する通信装置１２ＣのＩＤ「１２Ｃ」がＳ５３の処理によって選択されていないので（Ｓ７１：ＮＯ）、処理をＳ５３に戻す。
【００６０】
次に、ＣＰＵ１２１は、会議室に参加する通信装置１２Ｂ、１２Ｃのうち、通信装置１２ＢのＩＤ「１２Ｃ」を選択する。（Ｓ５３）。ＣＰＵ１２１は、第２テーブル１２４Ｂに格納された負荷状態のうち、選択されたＩＤ「１２Ｃ」と同じ第１ＩＤに対応付けられた負荷状態に設定された高状態を取得する（Ｓ５５）。ＣＰＵ１２１は、第２テーブル１２４Ｂに格納された解像度のうち、選択されたＩＤ「１２Ｃ」と同じ第１ＩＤ、及び、自身のＩＤ「１２Ａ」と同じ第２ＩＤに対応付けられた解像度「３２０×２４０」を取得する（Ｓ５７）。
【００６１】
ＣＰＵ１２１は、取得された負荷状態に低状態が設定されておらず（Ｓ５９：ＮＯ）、且つ、中状態が設定されていないと判断する（Ｓ６１：ＮＯ）。ＣＰＵ１２１は、第２エンコード条件を決定し（Ｓ６５）、Ｓ５１の処理によって取得された撮影データをエンコードして第２映像データを生成する（Ｓ６９）。ＣＰＵ１２１は、第２映像データをＲＡＭ１２３に記憶する。ＣＰＵ１２１は、会議室に参加する通信装置１２Ｂ、１２ＣのＩＤ「１２Ｂ」「１２Ｃ」がＳ５３の処理によって選択されているので（Ｓ７１：ＹＥＳ）、ＲＡＭ１２３に記憶された第１映像データ及び第２映像データを、サーバ装置１１に対して送信する（Ｓ７３、矢印Ｃ１７、矢印Ｃ１９（図８参照））。
【００６２】
詳細は後述するが、サーバ装置１１のＣＰＵ１１１は、図８に示すように、通信装置１２Ａから矢印Ｃ１７のように送信された第１映像データ、及び、通信装置１２ＡからＣ１９のように送信された第２映像データを受信する。図示されていないが、ＣＰＵ１１１は、通信装置１２Ｂ、１２Ｃから送信された映像データ（第１映像データ又は第２映像データ）も同様に受信する。ＣＰＵ１１１は、映像データを通信装置１２から受信する度に、受信された映像データに、受信された映像データを送信した通信装置１２のＩＤを関連付け、会議室に参加するすべての通信装置１２に対してブロードキャスト送信する（矢印Ｃ１８、Ｃ２０）。以下、映像データを送信した通信装置１２ＩＤを、「第３ＩＤ」という。
【００６３】
＜第５処理＞
図７を参照し、通信装置１２のＣＰＵ１２１によって実行される第５処理について説明する。第５処理は、サーバ装置１１とのセッションの確立後に会議アプリケーションが実行されてメインウィンドウ２０が表示された後、サーバ装置１１から送信された映像データの受信が開始された場合に、記憶部１２４に記憶されたプログラムをＣＰＵ１２１が実行することによって開始される。
【００６４】
ＣＰＵ１２１は、サーバ装置１１から送信された映像データをすべて受信し、ＲＡＭ１２３に記憶する（Ｓ３１）。ＣＰＵ１２１は、以下の方法で、デコードの対象とする映像データを特定する（Ｓ３３）。はじめに、ＣＰＵ１２１は、第１テーブル１２４Ａ（図２参照）に格納された負荷状態を取得する。次に、ＣＰＵ１２１は、第１テーブル１２４Ａに格納された解像度のうち、受信された映像データに関連付けられた第３ＩＤと同じ表示ＩＤに対応付けられた解像度を取得する。ＣＰＵ１２１は、（１）取得された負荷状態に低状態が設定されている場合、取得された解像度に関わらず、第１映像データをデコードの対象として特定する。ＣＰＵ１２１は、（２）取得された負荷状態に高状態が設定されている場合、取得された解像度に関わらず、第２映像データをデコードの対象として特定する。ＣＰＵ１２１は、（３）取得された負荷状態に中状態が設定されている場合であって、取得された解像度が第２所定値よりも大きい場合、第１映像データをデコードの対象として特定する。ＣＰＵ１２１は、（４）取得された負荷状態に中状態が設定されている場合であって、取得された解像度が第２所定値以下の場合、第２映像データをデコードの対象として特定する。
【００６５】
ＣＰＵ１２１は、Ｓ３１の処理によって第１映像データが受信されており、且つ、Ｓ３３の処理によって、第１映像データが特定されている場合、又は、Ｓ３１の処理によって第２映像データが受信されており、且つ、Ｓ３３の処理によって、第２映像データが特定されている場合、映像データの種別が一致すると判断する（Ｓ３５：ＹＥＳ）。この場合、ＣＰＵ１２１は、Ｓ３１の処理によって第１映像データが受信されている場合、受信された第１映像データをデコードして第１映像を生成する（Ｓ３７）。ＣＰＵ１２１は、Ｓ３１の処理によって第２映像データが受信されている場合、受信された第２映像データをデコードして第２映像を生成する（Ｓ３７）。ＣＰＵ１２１は、メインウィンドウ２０の映像ウィンドウ２１のうち、Ｓ３１の処理によって受信された映像データに関連付けられた第３ＩＤと同じ表示ＩＤの映像ウィンドウ２１を選択する。ＣＰＵ１２１は、選択された映像ウィンドウ２１に、生成された第１映像又は第２映像を表示させる（Ｓ３９）。ＣＰＵ１２１は第５処理を終了させる。
【００６６】
一方、ＣＰＵ１２１は、Ｓ３１の処理によって第１映像データが受信されており、且つ、Ｓ３３の処理によって第２映像データが特定された場合、又は、Ｓ３１の処理によって第２映像データが受信されており、且つ、Ｓ３３の処理によって第１映像データが特定された場合、映像データの種別が一致しないと判断する（Ｓ３５：ＮＯ）。この場合、ＣＰＵ１２１は、Ｓ３１の処理によってＲＡＭ１２３に記憶された第１映像データ又は第２映像データを削除する（Ｓ４０）。ＣＰＵ１２１は第５処理を終了させる。
【００６７】
上記の第５処理が実行された場合について、図８を参照して具体的に説明する。なお、図７の第５処理では説明を省略しているが、ＣＰＵ１２１は、自身のＩＤが第３ＩＤとして関連付けられている映像データを受信した場合、この映像データをＲＡＭ１２３から削除する。具体的には、例えば、通信装置１２ＡのＣＰＵ１２１は、サーバ装置１１から矢印Ｃ１８のように送信された第１映像データを受信した場合、自身のＩＤ「１２Ａ」と同じ第３ＩＤが関連付けられているので、この第１映像データをＲＡＭ１２３から削除する（Ｒ４１）。又、通信装置１２ＡのＣＰＵ１２１は、サーバ装置１１から矢印Ｃ２０のように送信された第２映像データを受信した場合、自身のＩＤ「１２Ａ」と同じ第３ＩＤが関連付けられているので、この第２映像データをＲＡＭ１２３から削除する（Ｒ５１）。
【００６８】
通信装置１２ＢのＣＰＵ１２１は、サーバ装置１１から矢印Ｃ１８のように送信された第１映像データを受信する（Ｓ３１）。ＣＰＵ１２１は、通信装置１２Ｂの記憶部１２４に記憶された第１テーブル１２４Ａ（図２（Ｂ）参照）に格納された負荷状態「中状態」を取得する。ＣＰＵ１２１は、第１テーブル１２４Ａのうち、受信された第１映像データに関連付けられた第３ＩＤ「１２Ａ」と同じ表示ＩＤに対応付けられた解像度「６４０×４８０」を取得する。ＣＰＵ１２１は、中状態が設定されている場合であって、解像度が第２所定値よりも大きいので、上記の（３）の条件を満たすと判断する。この場合、ＣＰＵ１２１は、第１映像データをデコードの対象として特定する（Ｓ３３）。ＣＰＵ１２１は、Ｓ３１の処理によって第１映像データが受信され、且つ、Ｓ３３の処理によって第１映像データが特定されているので、映像データの種別が一致すると判断する（Ｓ３５：ＹＥＳ）。この場合、ＣＰＵ１２１は、受信された第１映像データをデコードして第１映像を生成する（Ｓ３７）。ＣＰＵ１２１は、メインウィンドウ２０に含まれる映像ウィンドウ２１のうち、受信された第１映像データに関連付けられた第３ＩＤ「１２Ａ」と同じ表示ＩＤの映像ウィンドウ２３Ａ（図１参照）に、生成された第１映像を表示させる（Ｓ３９、Ｒ４２（図８参照））。
【００６９】
又、通信装置１２ＢのＣＰＵ１２１は、サーバ装置１１から矢印Ｃ２０のように送信された第２映像データを受信する（Ｓ３１）。ＣＰＵ１２１は、上記と同様、第１映像データをデコードの対象として特定する（Ｓ３３）。ＣＰＵ１２１は、Ｓ３１の処理によって第１映像データが受信され、且つ、Ｓ３３の処理によって第２映像データが特定されているので、映像データの種別が一致しないと判断する（Ｓ３５：ＮＯ）。この場合、ＣＰＵ１２１は、受信された第２映像データをＲＡＭ１２３から削除する（Ｓ４１、Ｒ５２（図８参照））。
【００７０】
通信装置１２ＣのＣＰＵ１２１は、サーバ装置１１から矢印Ｃ１８のように送信された第１映像データを受信する（Ｓ３１）。ＣＰＵ１２１は、通信装置１２Ｃの記憶部１２４に記憶された第１テーブル１２４Ａ（図２（Ｃ）参照）に格納された負荷状態「高状態」を取得する。ＣＰＵ１２１は、第１テーブル１２４Ａのうち、受信された第１映像データに関連付けられた第３ＩＤ「１２Ａ」と同じ表示ＩＤに対応付けられた解像度「３２０×２４０」を取得する。ＣＰＵ１２１は、高状態が設定されているので、上記の（２）の条件を満たすと判断する。この場合、ＣＰＵ１２１は、取得された解像度に関わらず、第２映像データをデコードの対象として特定する（Ｓ３３）。ＣＰＵ１２１は、Ｓ３１の処理によって第１映像データが受信され、且つ、Ｓ３３の処理によって第２映像データが特定されているので、映像データの種別が一致しないと判断する（Ｓ３５：ＮＯ）。この場合、ＣＰＵ１２１は、受信された第１映像データをＲＡＭ１２３から削除する（Ｓ４１、Ｒ４３（図８参照））。
【００７１】
又、通信装置１２ＣのＣＰＵ１２１は、サーバ装置１１から矢印Ｃ２０のように送信された第２映像データを受信する（Ｓ３１）。ＣＰＵ１２１は、上記と同様、第２映像データをデコードの対象として特定する（Ｓ３３）。ＣＰＵ１２１は、Ｓ３１の処理によって第２映像データが受信され、且つ、Ｓ３３の処理によって第２映像データが特定されているので、映像データの種別が一致すると判断する（Ｓ３５：ＹＥＳ）。この場合、ＣＰＵ１２１は、受信された第２映像データをデコードして第２映像を生成する（Ｓ３７）。ＣＰＵ１２１は、メインウィンドウ２０に含まれる映像ウィンドウ２１のうち、受信された第２映像データに関連付けられた第３ＩＤ「１２Ａ」と同じ表示ＩＤの映像ウィンドウ２４Ａ（図１参照）に、第２映像を表示させる（Ｓ３９、Ｒ５３（図８参照））。
【００７２】
＜サーバ処理＞
図１０を参照し、サーバ装置１１のＣＰＵ１２１によって実行されるサーバ処理について説明する。サーバ処理は、負荷状態、解像度、及び、映像データの何れかを通信装置１２から受信した場合、記憶部１１４に記憶されたプログラムをＣＰＵ１１１が実行することによって開始される。なお、ＣＰＵ１１１は、会議室に参加するすべての通信装置１２Ａ〜１２ＣのＩＤ及びアドレス情報を、通信装置１２Ａ〜１２Ｃとの間でセッションが確立された場合に取得する。ＣＰＵ１１１は、通信装置１２Ａ〜１２ＣのＩＤ及びアドレス情報を対応付け、記憶部１１４に記憶する。
【００７３】
はじめに、ＣＰＵ１１１は、通信装置１２から送信された負荷状態（Ｃ１１、１３、１５（図８参照））を受信したか判断する（Ｓ１０１）。ＣＰＵ１１１は、負荷状態が受信されたと判断された場合（Ｓ１０１：ＹＥＳ）、受信された負荷状態を送信した通信装置１２のＩＤを特定する。ＣＰＵ１１１は、特定した第１ＩＤを、第１ＩＤとして負荷状態に対応付け、記憶部１１４のテーブル１１４Ａ（図９参照）に記憶する（Ｓ１０３）。ＣＰＵ１１１は、受信された負荷状態に第１ＩＤを関連付けて、会議室に参加するすべての通信装置１２に対してブロードキャスト送信する（Ｓ１０５、Ｃ１２、１４、１６（図８参照））。ＣＰＵ１１１は処理をＳ１０７に進める。一方、ＣＰＵ１１１は、負荷状態を受信していないと判断された場合（Ｓ１０１：ＮＯ）、処理をＳ１０７に進める。
【００７４】
ＣＰＵ１１１は、通信装置１２から送信された解像度（Ｃ１１、１３、１５（図８参照））を受信したか判断する（Ｓ１０７）。ＣＰＵ１１１は、解像度を受信したと判断された場合（Ｓ１０７：ＹＥＳ）、受信された解像度を送信した通信装置１２のＩＤを第１ＩＤとして特定する。ＣＰＵ１１１は、受信された解像度に関連付けられたＩＤを、第２ＩＤとして特定する。ＣＰＵ１１１は、特定した第１ＩＤ及び第２ＩＤと、受信された解像度とを対応付け、記憶部１１４のテーブル１１４Ａに記憶する（Ｓ１０９）。ＣＰＵ１１１は、受信された解像度に第１ＩＤ及び第２ＩＤを関連付けて、会議室に参加するすべての通信装置１２に対してブロードキャスト送信する（Ｓ１１１、Ｃ１２、１４、１６（図８参照））。ＣＰＵ１１１は処理をＳ１１３に進める。一方、ＣＰＵ１１１は、解像度を受信していないと判断された場合（Ｓ１０７：ＮＯ）、処理をＳ１１３に進める。
【００７５】
ＣＰＵ１１１は、通信装置１２から送信された映像データ（Ｃ１７、１９（図８参照））を受信したか判断する（Ｓ１１３）。ＣＰＵ１１１は、映像データを受信したと判断された場合（Ｓ１１３：ＹＥＳ）、受信された映像データを送信した通信装置１２のＩＤを特定する。ＣＰＵ１１１ＣＰＵ１１１は、特定したＩＤを第３ＩＤとして映像データに関連付けて、会議室に参加するすべての通信装置１２に対してブロードキャスト送信する（Ｓ１１５、Ｃ１８、２０（図８参照））。ＣＰＵ１１１はサーバ処理を終了させる。一方、ＣＰＵ１１１は、映像データを受信していないと判断された場合（Ｓ１１３：ＮＯ）、サーバ処理を終了させる。
【００７６】
なお、図１０では説明を省略しているが、ＣＰＵ１１１は、通信装置１２との間でセッションが確立された場合、テーブル１１４Ａに格納された各負荷状態に第１ＩＤを関連付けて、セッションが確立された通信装置１２に対して送信する。又、ＣＰＵ１１１は、通信装置１２との間でセッションが確立された場合、テーブル１１４Ａに格納された各解像度に第１ＩＤ及び第２ＩＤを関連付けて、セッションが確立された通信装置１２に対して送信する。これによって、通信装置１２のＣＰＵ１２１は、会議室に参加した直後の状態であっても、第１テーブル１２４Ａ及び第２テーブル１２４Ｂを作成して映像ウィンドウ２１に映像を表示することが可能となる。
【００７７】
＜本実施形態の主たる作用、効果＞
図２（Ａ）〜（Ｃ）によって示される第１テーブル１２４Ａ及び第２テーブル１２４Ｂが通信装置１２Ａ〜１２Ｃの記憶部１２４に記憶された状態で、通信装置１２ＣのＣＰＵ１２１によって、負荷状態が中状態と判断された場合（Ｓ１９）を例示する。この場合、図２（Ｃ）と異なり、通信装置１２Ｃの第１テーブル１２４Ａにおいて、負荷状態として中状態が格納される。又、図１１（Ｄ）で示されるように、通信装置１２Ａの第２テーブル１２４Ｂにおいて、第１ＩＤ「１２Ｃ」に対応する負荷状態として、中状態が格納される。
【００７８】
上記の場合において、通信装置１２ＡのＣＰＵ１２１は、図１１（Ｄ）の第２テーブル１２４Ｂに基づき、通信装置１２Ｃの負荷状態が中状態であり（Ｓ６１：ＹＥＳ）、且つ、通信装置１２Ｃの表示部１２６に表示された映像ウィンドウ２１のうち表示ＩＤが「１２Ａ」の映像ウィンドウ２４Ａの解像度（３２０×２４０）が、第２所定値以下であると判断する（Ｓ６３：ＮＯ）。この場合、ＣＰＵ１２１は、第２エンコード条件で撮影データをエンコードすると決定し（Ｓ６７）、第２映像データを生成してサーバ装置１１に送信する（Ｓ６９、Ｓ７３）。その理由は、通信装置１２ＣのＣＰＵ１２１の負荷を軽減させることを優先させるためである。ここで、第２映像データをデコードする場合のＣＰＵ１２１の負荷は、第１映像データをデコードする場合のＣＰＵ１２１の負荷よりも小さくなる。このため、通信装置１２ＡのＣＰＵ１２１は、第２映像データを生成して送信することによって、通信装置１２ＣのＣＰＵ１２１が映像データのデコード処理を行うときの負荷を軽減できる。
【００７９】
なお、第２映像が映像ウィンドウ２４Ａに表示された場合、第２映像の画質は、第１映像が表示された場合の画質よりも低画質となる場合がある。これに対し、通信装置１２ＡのＣＰＵ１２１は、映像ウィンドウ２４Ａの解像度が第２所定値以下であるので、第２映像データを生成して送信する。その理由は、映像ウィンドウ２４Ａの解像度が低いので、例えば第１映像に代えて第２映像が映像ウィンドウ２４Ａに表示された場合でも、映像の画質の劣化が目立ちにくい為である。このように、通信装置１２Ａは、第２映像データを生成して送信することによって、通信装置１２Ｃの表示部１２６の映像ウィンドウ２４Ａに表示される映像の画質が低画質となることを抑制しつつ、通信装置１２ＣのＣＰＵ１２１の負荷を軽減できる。
【００８０】
又、上記の場合において、通信装置１２ＡのＣＰＵ１２１は、図１１（Ｄ）の第２テーブル１２４Ｂに基づき、通信装置１２Ｂの負荷状態が中状態であり（Ｓ６１：ＹＥＳ）、且つ、通信装置１２Ｂの表示部１２６に表示された映像ウィンドウ２１のうち表示ＩＤが「１２Ａ」の映像ウィンドウ２３Ａの解像度（６４０×４８０）が、第２所定値よりも大きいと判断する（Ｓ６３：ＹＥＳ）。この場合、ＣＰＵ１２１は、第１エンコード条件で撮影データをエンコードすると決定し（Ｓ６５）、第１映像データを生成してサーバ装置１１に送信する（Ｓ６９、Ｓ７３）。その理由は、映像ウィンドウ２３Ａの解像度が高く、例えば第１映像に代えて第２映像が映像ウィンドウ２３Ａに表示された場合、映像の画質の劣化が目立ちやすいので、映像の画質を優先させる必要性が高いためである。なお、通信装置１２ＢのＣＰＵ１２１の負荷状態は中状態であるので、第１映像データのデコードによってＣＰＵ１２１の負荷が高くなり過ぎる可能性は低い。
【００８１】
図２（Ａ）〜（Ｃ）によって示される第１テーブル１２４Ａ及び第２テーブル１２４Ｂが通信装置１２Ａ〜１２Ｃの記憶部１２４に記憶された状態で、通信装置１２ＢのＣＰＵ１２１によって負荷状態が低状態と判断された場合（Ｓ１５）を例示する。この場合、図２（Ｂ）と異なり、通信装置１２Ｂの第１テーブル１２４Ａにおいて、負荷状態として低状態が格納される。又、図１１（Ｅ）で示されるように、通信装置１２Ａの第２テーブル１２４Ｂにおいて、第１ＩＤ「１２Ｂ」に対応する負荷状態として低状態が格納される。
【００８２】
上記の場合において、通信装置１２ＡのＣＰＵ１２１は、図１１（Ｅ）の第２テーブル１２４Ｂに基づき、通信装置１２Ｂの負荷状態が低状態であるので（Ｓ５９：ＹＥＳ）、映像ウィンドウ２１の解像度に関わらず、第１エンコード条件で撮影データをエンコードすると決定する（Ｓ６５）。この場合、ＣＰＵ１２１は、第１映像データを生成してサーバ装置１１に送信する（Ｓ６９、Ｓ７３）。その理由は、通信装置１２ＢのＣＰＵ１２１の負荷が既に低い状態であるので、ＣＰＵ１２１の負荷を更に軽減させる必要性が低い為である。この場合、通信装置１２Ｂの表示部１２６の映像ウィンドウ２３Ａには、第１映像が表示される。従って、通信装置１２Ａは、通信装置１２Ｂの表示部１２６の映像ウィンドウ２１に映像を高画質で表示させることができる。
【００８３】
又、上記の場合において、通信装置１２ＡのＣＰＵ１２１は、図１１（Ｅ）の第２テーブル１２４Ｂに基づき、通信装置１２Ｃの負荷状態が高状態であるので（Ｓ６１：ＮＯ）、映像ウィンドウ２１の解像度に関わらず、第２エンコード条件で撮影データをエンコードすると決定する（Ｓ６９）。この場合、ＣＰＵ１２１は、第２映像データを生成してサーバ装置１１に送信する（Ｓ６９、Ｓ７３）。その理由は、通信装置１２ＣのＣＰＵ１２１の負荷が既に高い状態であるので、ＣＰＵ１２１の負荷を軽減させる必要性が高い為である。この場合、通信装置１２ＣのＣＰＵ１２１は、第２映像データをデコードして第２映像を映像ウィンドウ２４Ａに表示させる。従って、通信装置１２ＡのＣＰＵ１２１は、通信装置１２ＣのＣＰＵ１２１が映像データのデコード処理を行うときの負荷を軽減できる。
【００８４】
通信装置１２のＣＰＵ１２１は、サーバ装置１１からブロードキャスト送信された映像データを受信した（Ｓ３１）場合、第１テーブル１２４Ａ及び第２テーブル１２４Ｂに基づき、デコードの対象とする映像データを、（１）〜（４）の条件に応じて特定する（Ｓ３３）。ＣＰＵ１２１は、受信された映像データと、デコードの対象とする映像データとが、何れも第１映像データである場合、又は、何れも第２映像データである場合（Ｓ３５：ＹＥＳ）、映像データをデコードする（Ｓ３７）。一方、ＣＰＵ１２１は、双方の映像データが第１映像データと第２映像データとで相違する場合（Ｓ３５：ＮＯ）、映像データをデコードせず、記憶部１２４から削除する（Ｓ４１）。
【００８５】
具体的には、ＣＰＵ１２１は、（１）として、自身の負荷状態として低状態が設定されている場合、映像ウィンドウ２１の解像度に関わらず、第１映像データをデコードの対象として特定する。この理由は、ＣＰＵ１２１の負荷が低い状態であるので、第１映像データをデコードしても、ＣＰＵ１２１の負荷が高くなり過ぎる可能性が低い為である。又、第１映像を映像ウィンドウ２１に表示させることによって、映像の画質を高品質とすることができるためである。又、ＣＰＵ１２１は、（２）として、自身の負荷状態として高状態が設定されている場合、映像ウィンドウ２１の解像度に関わらず、第２映像データをデコードの対象として特定する。この理由は、ＣＰＵ１２１の負荷が高い状態であるので、第２映像データをデコードすることによってＣＰＵ１２１の負荷を軽減させる必要性が高い為である。又、ＣＰＵ１２１は、（３）として、自身の負荷状態として中状態が設定されている場合であって、映像ウィンドウ２１の解像度が第２所定値よりも大きい場合、第１映像データをデコードの対象として特定する。この理由は、映像ウィンドウ２１の解像度が高く、映像の画質の劣化が目立ちやすいので、映像の画質を優先させる必要性が高いためである。又、ＣＰＵ１２１の負荷状態は中状態であるので、第１映像データのデコードによってＣＰＵ１２１の負荷が高くなり過ぎる可能性は低いためである。又、ＣＰＵ１２１は、（４）として、自身の負荷状態として中状態が設定されている場合であって、取得された解像度が第２所定値以下の場合、第２映像データをデコードの対象として特定する。この理由は、映像ウィンドウ２１の解像度が低く、映像の画質の劣化が目立ちにくいので、ＣＰＵ１２１の負荷を軽減させることを優先させるためである。
【００８６】
以上のように、ＣＰＵ１２１は、ＣＰＵ１２１の負荷が高くなることを抑制しつつ、映像ウィンドウ２１に表示される映像の画質を維持できる。又、ＣＰＵ１２１は、サーバ装置１１からブロードキャスト送信された映像データをデコードするか否かを、第１テーブル１２４Ａ及び第２テーブル１２４Ｂに基づいて判断できる。
【００８７】
ＣＰＵ１２１は、第１テーブル１２４Ａの負荷状態が低状態に設定されている場合、デコードの対象とする映像データとして、第１映像データを特定する（Ｓ３３）。又、ＣＰＵ１２１は、映像データがデコードされる場合におけるＣＰＵ１２１の使用率を、負荷の度合いとして特定する（図３参照）。ＣＰＵ１２１は、特定された負荷の度合いが第１所定値以上の場合（Ｓ１１：ＹＥＳ）、且つ、第１テーブル１２４Ａの負荷状態が低状態に設定されている場合（Ｓ１７：ＹＥＳ）、第１テーブル１２４Ａの負荷状態に中状態を設定する（Ｓ１９）。つまり、第１映像データがデコードされる場合の負荷の度合いが第１所定値以上の場合、負荷状態は、低状態から中状態に変更されることになる。このため、ＣＰＵ１２１は、デコード時のＣＰＵ１２１の負荷が大きい第１映像データをデコードする場合の負荷の度合いが、第１所定値以上の場合に、低状態に対して１段階上の中状態に負荷状態を設定できる。
【００８８】
ＣＰＵ１２１は、第１テーブル１２４Ａの負荷状態が高状態に設定されている場合、デコードの対象とする映像データとして、第２映像データを特定する（Ｓ３３）。又、ＣＰＵ１２１は、特定された負荷の度合いが第１所定値よりも小さい場合（Ｓ１１：ＮＯ）、且つ、第１テーブル１２４Ａの負荷状態が高状態に設定されている場合（Ｓ１３：ＹＥＳ）、第１テーブル１２４Ａの負荷状態に中状態を設定する（Ｓ１９）。つまり、第２映像データがデコードされる場合の負荷の度合いが第１所定値よりも場合、負荷状態は、高状態から中状態に変更されることになる。このため、ＣＰＵ１２１は、デコード時のＣＰＵ１２１の負荷が小さい第２映像データをデコードする場合の負荷の度合いが、第１所定値よりも小さい場合に、高状態に対して１段階下の中状態に負荷状態を設定できる。前回設定された負荷状態、及び、現時点での負荷の度合いに基づいて、負荷状態が設定されるため、現時点での負荷の度合いのみに基づいて負荷状態が設定される場合と比べて、より細かな負荷状態の設定が可能になる。
【００８９】
＜変形例＞
なお、本発明は上記実施形態に限定されず、種々の変更が可能である。上記において、通信装置１２間の通信は、サーバ装置１１を介して実行された。これに対し、通信装置１２間の通信は、サーバ装置１１を介さず直接行われてもよい。通信装置１２のＣＰＵ１２１は、撮影データのエンコード処理、及び、映像データのデコード処理を、専用デバイスに実行させてもよい。ＣＰＵ１２１は、専用デバイスのエンコード処理によって専用デバイスから出力される映像データ、及び、専用デバイスのデコード処理によって専用デバイスから出力される映像を取得してもよい。
【００９０】
上記において、ＣＰＵ１２１は、映像データがデコードされる場合におけるＣＰＵ１２１の使用率を、負荷の度合いとして特定した（Ｓ１１）。ＣＰＵ１２１は、負荷の度合いとして別のパラメータを特定してもよい。例えば、ＣＰＵ１２１は、映像データがデコードされる場合のＣＰＵ１２１の処理速度、処理量、ＲＡＭ１２３の使用率、デコード終了までに要する時間の少なくとも何れかを、負荷の度合いとして特定してもよい。又、ＣＰＵ１２１は、使用率、処理速度、処理量、ＲＡＭ１２３の使用率、及び、デコード終了までに要する時間のうち２つ以上を、所定の演算式に適用してパラメータを算出し、このパラメータを負荷の度合いとして特定してもよい。
【００９１】
上記において、ＣＰＵ１２１は、映像ウィンドウ２１のドット数を解像度としてサーバ装置１１に送信した。このため、各ドットの大きさが通信装置１２によって異なる場合、つまり、各通信装置１２の表示部１２６の大きさが相違する場合、解像度が同一であっても、映像ウィンドウ２１の大きさが異なる場合があった。これに対し、ＣＰＵ１２１は、映像ウィンドウ２１の解像度に加えて、映像ウィンドウ２１の縦方向及び横方向の長さ（以下、「映像ウィンドウの大きさ」という。）を、Ｓ４５の処理によってサーバ装置１１に対して送信してもよい。サーバ装置１１のＣＰＵ１１１は、解像度及び映像ウィンドウの大きさを受信した場合、解像度及び映像ウィンドウの大きさを通信装置１２に対してブロードキャスト送信してもよい。通信装置１２のＣＰＵ１２１は、解像度及び映像ウィンドウの大きさを受信した場合、Ｓ６３の処理によって、解像度が第２所定値よりも大きく且つ映像ウィンドウの大きさが第３所定値よりも大きい場合（Ｓ６３：ＹＥＳ）、第１エンコード条件で撮影データをエンコードすると決定してもよい。一方、ＣＰＵ１２１は、解像度が第２所定以下か、又は、映像ウィンドウの大きさが第３所定値以下の場合（Ｓ６３：ＮＯ）、第２エンコード条件で撮影データをエンコードすると決定してもよい。
【００９２】
ＣＰＵ１２１は、使用率が第１所定値以上である状態の経過時間に応じて、低状態、中状態、及び、高状態の何れかを負荷状態として特定してもよい。例えば、ＣＰＵ１２１は、使用率が第１所定値以上である状態が所定時間以上継続した場合に、より大きな（例えば、１段階上の）負荷状態を特定してもよい。ここで、低状態に対する１段階上の負荷状態は中状態であり、中状態に対する１段階上の負荷状態は高状態である。又、ＣＰＵ１２１は、使用率が第１所定値未満である状態が所定時間以上継続した場合に、より小さな（例えば、１段階下の）負荷状態を特定してもよい。ここで、高状態に対する１段階下の負荷状態は中状態であり、中状態に対する１段階下の負荷状態は低状態である。又、ＣＰＵ１２１は、負荷状態を３段階（低状態、中状態、及び、高状態）で特定した。これに対し、ＣＰＵ１２１は、負荷状態を２段階（低状態及び中状態、又は、中状態及び高状態）で特定してもよいし、４段階以上で特定してもよい。
【００９３】
上記において、通信装置１２のＣＰＵ１２１は、映像データをサーバ装置１１に送信する場合、映像データの宛先の通信装置１２を指定して送信してもよい。又、サーバ装置１１は、映像データを通信装置１２に対して送信する場合、ブロードキャスト送信でなく、映像データを受信したときに指定された宛先に対して送信してもよい。この場合、ＣＰＵ１２１は、第５処理を実行せず、受信した映像データをすべてデコードしてもよい。
【００９４】
上記において、通信装置１２のＣＰＵ１２１は、一定周期で第１処理（図３参照）を実行して負荷状態を特定し、サーバ装置１１に送信した。又、ＣＰＵ１２１は、映像ウィンドウ２１の解像度が変更された場合に第２処理（図４参照）を実行して解像度を取得し、サーバ装置１１に送信した。これに対し、ＣＰＵ１２１は、映像データを送信するタイミングで、サーバ装置１１に対して要求データを送信してもよい。サーバ装置１１のＣＰＵ１１１は、要求データを受信した場合、要求データをブロードキャスト通信してもよい。通信装置１２のＣＰＵ１２１は、要求データを受信した場合、負荷状態及び解像度をサーバ装置１１に対して送信してもよい。サーバ装置１１のＣＰＵ１１１は、負荷状態及び解像度を受信した場合、要求データを送信した通信装置１２に対して負荷状態及び解像度を送信してもよい。
【００９５】
＜その他＞
Ｓ７３の処理は、本発明の第１通信装置のコンピュータに実行させるための通信プログラム（以下、「第１通信プログラム」という。）における「送信ステップ」の一例である。Ｓ８３、Ｓ８７の処理は本発明の第１通信プログラムにおける「受信ステップ」の一例である。Ｓ６１の処理は本発明の本発明の第１通信プログラムにおける「第１判断ステップ」「第４判断ステップ」の一例である。Ｓ６３の処理は本発明の本発明の第１通信プログラムにおける「第２判断ステップ」の一例である。Ｓ６５、Ｓ６７、Ｓ６９の処理は本発明の本発明の第１通信プログラムにおける「第１生成ステップ」「第２生成ステップ」「第３生成ステップ」の一例である。Ｓ５９の処理は本発明の本発明の第１通信プログラムにおける「第３判断ステップ」の一例である。Ｓ１５、Ｓ１９、Ｓ２１の処理は、本発明の第２通信装置のコンピュータに実行させるための通信プログラム（以下、「第２通信プログラム」という。）における「決定ステップ」の一例である。Ｓ４１の処理は本発明の第２通信プログラムにおける「取得ステップ」の一例である。Ｓ３１の処理は本発明の第２通信プログラムにおける「受信ステップ」の一例である。Ｓ３３の処理は本発明の第２通信プログラムにおける「第１判断ステップ」の一例である。Ｓ３５、Ｓ３７、Ｓ４１の処理は本発明の第２通信プログラムにおける「処理ステップ」の一例である。Ｓ７３の処理を行うＣＰＵ１２１は、本発明の「送信手段」の一例である。Ｓ８３、Ｓ８７の処理を行うＣＰＵ１２１は、本発明の「第１受信手段」の一例である。Ｓ６１の処理を行うＣＰＵ１２１は、本発明の「第１判断手段」の一例である。Ｓ６３の処理を行うＣＰＵ１２１は、本発明の「第２判断手段」の一例である。Ｓ６５、Ｓ６７、Ｓ６９の処理を行うＣＰＵ１２１は、本発明の「第１生成手段」の一例である。Ｓ１５、Ｓ１９、Ｓ２１の処理を行うＣＰＵ１２１は、本発明の「決定手段」の一例である。Ｓ４１の処理を行うＣＰＵ１２１は、本発明の「取得手段」の一例である。Ｓ３１の処理を行うＣＰＵ１２１は、本発明の「受信手段」の一例である。Ｓ３３の処理を行うＣＰＵ１２１は、本発明の「第３判断手段」の一例である。Ｓ３５、Ｓ３７、Ｓ４１の処理を行うＣＰＵ１２１は、本発明の「処理手段」の一例である。中状態は、本発明の「第１負荷状態」の一例である。低状態は、本発明の「第２負荷状態」の一例である。高状態は、本発明の「第３負荷状態」の一例である。
【符号の説明】
【００９６】
１        ：通信システム
１１      ：サーバ装置
１２、１２Ａ、１２Ｂ、１２Ｃ    ：通信装置
１１１    ：ＣＰＵ
１１４Ａ  ：テーブル
１２１    ：ＣＰＵ
１２４Ａ  ：第１テーブル
１２４Ｂ  ：第２テーブル
１２５    ：カメラ
【図１】
0006406200.tif 000002
【図２】
0006406200.tif 000003
【図３】
0006406200.tif 000004
【図４】
0006406200.tif 000005
【図５】
0006406200.tif 000006
【図６】
0006406200.tif 000007
【図７】
0006406200.tif 000008
【図８】
0006406200.tif 000009
【図９】
0006406200.tif 000010
【図１０】
0006406200.tif 000011
【図１１】
0006406200.tif 000012