(57)【特許請求の範囲】
【請求項１】
映像データをサーバ装置でエンコードし、クライアント装置にストリーム送信し、クライアント装置でデコードするストリーム通信システムであって、
前記サーバ装置は、
映像データを所定のパラメータに基づいてエンコードするエンコード手段と、
エンコードした映像データを前記クライアント装置にストリーム送信するストリーム送信手段と、を備え、
前記クライアント装置は、
送信されたストリームを受信し、１フレームのストリームの受信にかかった時間である受信時間を測定するストリーム受信手段と、
受信したストリームをデコードし、１フレームのストリームのデコードにかかった時間であるデコード時間を測定するデコード手段と、
前記パラメータと前記受信時間と前記デコード時間に基づいて、調整されたパラメータを算出するパラメータ調整手段と、を備え、
前記サーバ装置の前記エンコード手段は、
映像データを、前記所定のパラメータに代えて前記調整されたパラメータに基づいてエンコードし、
前記パラメータは、映像データをエンコードする際に用いるビットレートとフレームレートを含み、
前記パラメータ調整手段により算出される調整後のビットレートは、下記式によって算出されることを特徴とする、ストリーム通信システム。
Ｂｒ＝ＴｓＢｓ／Ｔｒ
ただし、Ｂｒは調整後のビットレート、Ｔｓは調整前のフレームレートの逆数、Ｂｓは調整前のビットレート、Ｔｒは前記受信時間及び前記デコード時間のうちいずれか大きい方とする。
【請求項２】
前記サーバ装置の前記エンコード手段は、
前記パラメータ調整手段により算出される調整後のパラメータがあらかじめ設定されたパラメータの上限値を超える値であった場合に、
映像データを、前記所定のパラメータに代えて前記パラメータの上限値に基づいてエンコードすることを特徴とする、請求項１記載のストリーム通信システム。
【請求項３】
前記サーバ装置の前記エンコード手段は、
前記パラメータ調整手段により算出される調整後のパラメータがあらかじめ設定されたパラメータの下限値を下回る値であった場合に、
映像データを、前記所定のパラメータに代えて前記パラメータの下限値に基づいてエンコードすることを特徴とする、請求項１又は２記載のストリーム通信システム。
【請求項４】
前記パラメータ調整手段により算出される調整後のフレームレートは、前記受信時間及び前記デコード時間のうちいずれか大きい方（Ｔｒ）の逆数とすることを特徴とする、請求項１から３のいずれか１項記載のストリーム通信システム。
【請求項５】
前記パラメータ調整手段は、ユーザの画質についての選好に基づいて、フレームレートの調整を行うか否かを決定することを特徴とする、請求項４記載のストリーム通信システム。
【請求項６】
前記パラメータ調整手段は、前記ストリーム受信手段が測定した受信時間を複数用いた統計値より受信時間の代表値を決定し、前記デコード手段が測定したデコード時間を複数用いた統計値よりデコード時間の代表値を決定し、
前記Ｔｒの受信時間は、前記受信時間の代表値を用い、
前記Ｔｒのデコード時間は、前記デコード時間の代表値を用いることを特徴とする、請求項１から５のいずれか１項記載のストリーム通信システム。
【請求項７】
映像データをエンコードし、クライアント装置に送信するサーバ装置であって、
前記クライアント装置から、ストリームの受信にかかった受信時間とデコードにかかったデコード時間とに基づいて決定された、映像データをエンコードする際に用いる調整後のビットレートとフレームレートを含む調整後のパラメータを受信し、
前記調整後のパラメータに基づいて映像データをエンコードし、
前記受信した調整後のパラメータに含まれる調整後のビットレートは、下記式によって算出されることを特徴とする、サーバ装置。
Ｂｒ＝ＴｓＢｓ／Ｔｒ
ただし、Ｂｒは調整後のビットレート、Ｔｓは調整前のフレームレートの逆数、Ｂｓは調整前のビットレート、Ｔｒは前記受信時間及び前記デコード時間のうちいずれか大きい方とする。
【請求項８】
エンコードされた映像データのストリームを受信し、デコードするクライアント装置であって、
ストリームの受信にかかった受信時間と、ストリームのデコードにかかったデコード時間に基づいて、映像データをエンコードする際に用いる調整後のビットレートとフレームレートを決定し、決定した調整後の前記ビットレートとフレームレートを含む調整後のパラメータを、映像データを送信するサーバ装置に送信し、
前記調整後のパラメータに含まれる調整後のビットレートは、下記式によって算出されることを特徴とする、クライアント装置。
Ｂｒ＝ＴｓＢｓ／Ｔｒ
ただし、Ｂｒは調整後のビットレート、Ｔｓは調整前のフレームレートの逆数、Ｂｓは調整前のビットレート、Ｔｒは前記受信時間及び前記デコード時間のうちいずれか大きい方とする。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストリーム通信システム、サーバ装置及びクライアント装置に関し、特に、映像ストリームを配信するシステムにおいてネットワーク帯域変動及びクライアント装置の処理負荷の変動に適切に対応する技術に関する。
【背景技術】
【０００２】
ネットワークを介してサーバ装置とクライアント装置が映像ストリーム通信を行うサーバ・クライアント・システムにおいては、近時、益々「リアルタイム性」が求められる傾向にある。例えば、サーバ装置で動作するオペレーション・システムのグラフィカル・ユーザ・インターフェースを、映像ストリーム通信によってクライアント装置へ送信し、クライアント装置が備える表示装置で表示するようなサーバ・クライアント・システムを考えた場合、映像の遅延が生じることは問題であり、高度なリアルタイム性が必要である。
【０００３】
本発明に関連する技術が記載されている文献としては、特許文献１がある。特許文献１には、映像配信サーバから映像データの配信を受ける携帯端末が、端末のＣＰＵ負荷とネットワーク帯域の状態を検出し、サーバへ送信し、サーバ側でこれらに基づいて必要なときには、映像配信方式をストリーミング方式からダウンロード方式に切り替えることが記載されている。しかしながら、この関連技術における映像配信サーバは、配信する映像データをダウンロード方式にも対応しうるように、蓄積（バッファリング）しておく必要がある。そのため、この関連技術では、上述したリアルタイム性の要求に応えられない。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１５２９５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述の高度なリアルタイム性を実現するには、理想的なネットワーク環境やクライアント装置の十分な性能が期待される。しかしながら、これを実現するために専用のネットワークや専用のハードウェアを用いると、システム設計の自由度が制限される。サーバ装置とクライアント装置を接続するネットワークは、種々のネットワークが考えられ、インターネットや無線ＬＡＮのようなベストエフォート型のネットワークも含まれる。また、クライアント装置も、汎用性やコストの観点から、汎用のパーソナルコンピュータを使用することが考えられる。
【０００６】
ベストエフォート型のネットワークにおいては、利用可能なネットワーク帯域の変動が生じるため、ネットワーク帯域が狭くなってしまうような場合には映像ストリームのビットレートに対して十分な帯域が確保できず、クライアント装置が再生する映像にカクツキが発生することがある。ネットワーク帯域変動の要因としては、他の通信による帯域圧迫や、（無線ＬＡＮの場合は、）電波状態など物理条件の影響などがある。
【０００７】
このような問題に対しては、一般的に、ネットワーク帯域の変動を吸収するためにストリームデータをバッファリングする手法が用いられる。しかしながら、上述の高度なリアルタイム性が要求されている場合はこの手法を用いることができない。バッファリングすることは映像を遅延させることと同義であるからである。
【０００８】
クライアント装置に汎用のパーソナルコンピュータを用いることについても、上述の高度なリアルタイム性を実現するにあたっては、映像の遅延に繋がる課題が存在する。汎用のパーソナルコンピュータは、システム利用者が各自の好みや必要に応じて、多様な環境を構築することが普通である。したがって、専用のハードウェアを用いる場合と比べて、突発的なハードウェアリソースの不足が発生して映像に遅延が生じる可能性が比較的高い。
【０００９】
例えば、汎用のパーソナルコンピュータにコンピュータウィルス対策ソフトがインストールされており、映像ストリームの再生表示中にバックグラウンドでウィルス検索処理が始められたような場合、ウィルス対策ソフトがＣＰＵリソースを使用してしまい、映像ストリームの受信アプリケーションが十分なＣＰＵリソースを利用することができず、カクツキが発生するという不具合が起こりうる。
【００１０】
これらの課題に対して、従来では、ユーザが配信される映像のビットレートやフレームレートの調整を行うことでネットワーク負荷ないしＣＰＵ負荷を下げることで対処がなされてきた。しかしながら、この方法はユーザにとって煩雑である。また、ネットワーク負荷やＣＰＵ負荷が突発的なものであって、十分なリソースが利用できる状態になったとしても、ユーザがそのことを認識することは難しく、低いビットレート、フレームレートのまま利用することになるという不便さをユーザに強いるものである。
【００１１】
本発明は、上記実情に鑑みてなされたものであって、ネットワークを介してサーバ装置とクライアント装置が映像ストリーム通信を行うサーバ・クライアント・システムにおいて、ネットワーク帯域の変動とクライアント装置のストリーム処理能力の変動に適切に対応することが可能なストリーム通信システム、サーバ装置及びクライアント装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、本発明は、第１の態様として、映像データをサーバ装置でエンコードし、クライアント装置にストリーム送信し、クライアント装置でデコードするストリーム通信システムであって、前記サーバ装置は、映像データを所定のパラメータに基づいてエンコードするエンコード手段と、エンコードした映像データを前記クライアント装置にストリーム送信するストリーム送信手段と、を備え、前記クライアント装置は、送信されたストリームを受信し、１フレームのストリームの受信にかかった時間である受信時間を測定するストリーム受信手段と、受信したストリームをデコードし、１フレームのストリームのデコードにかかった時間であるデコード時間を測定するデコード手段と、前記パラメータと前記受信時間と前記デコード時間に基づいて、調整されたパラメータを算出するパラメータ調整手段と、を備え、前記サーバ装置の前記エンコード手段は、映像データを、前記所定のパラメータに代えて前記調整されたパラメータに基づいてエンコードすることを特徴とする、ストリーム通信システムを提供するものである。
【００１３】
また、上記目的を達成するために、本発明は、第２の態様として、映像データをエンコードし、クライアント装置に送信するサーバ装置であって、前記クライアント装置から、ストリームの受信にかかった時間とデコードにかかった時間とに基づいて決定された、映像データをエンコードする際に用いるビットレートとフレームレートを受信し、前記ビットレートとフレームレートに基づいて映像データをエンコードすることを特徴とする、サーバ装置を提供するものである。
【００１４】
また、上記目的を達成するために、本発明は、第３の態様として、エンコードされた映像データのストリームを受信し、デコードするクライアント装置であって、ストリームの受信にかかった時間と、ストリームのデコードにかかった時間に基づいて、映像データをエンコードする際に用いるビットレートとフレームレートを決定し、決定した前記ビットレートとフレームレートを、映像データを送信するサーバ装置に送信することを特徴とする、クライアント装置を提供するものである。
【発明の効果】
【００１５】
本発明によれば、ネットワークを介してサーバ装置とクライアント装置が映像ストリーム通信を行うサーバ・クライアント・システムにおいて、ネットワーク帯域の変動とクライアント装置のストリーム処理能力の変動に適切に対応することが可能なストリーム通信システム、サーバ装置及びクライアント装置を提供することが可能となる。
【図面の簡単な説明】
【００１６】
【図１】本発明を実施するための形態の全体構成を示すブロック図である。
【図２】図１のパラメータ調整部２０５が行うパラメータ調整処理の手順を示すフローチャートである。
【図３】本実施形態のパラメータ調整処理に用いる処理時間の統計値を説明するための概念図である。
【図４】本実施形態のパラメータ調整処理におけるビットレートの算出方法を説明するための概念図である。
【図５】本実施形態のパラメータ調整処理におけるフレームレートの変更をするか否かの判断基準を説明するための概念図である。
【発明を実施するための形態】
【００１７】
以下、本発明を実施するための形態について、図面を参照しながら説明する。本実施形態は、ネットワークを介してサーバ装置とクライアント装置が接続し、サーバ装置が出力する映像ストリームをクライアント装置が受信するサーバ・クライアント・システム（以下、「映像ストリーム通信システム」という）に、本発明を適用した実施形態である。
【００１８】
図１に、本実施形態の全体構成を示す。図示のように、本実施形態に係る映像ストリーム通信システムは、サーバ装置１００とクライアント装置２００がネットワーク３００を介して接続している。サーバ装置１００は、動画像入力部１０１と、動画像エンコード部１０２と、ストリーム送信部１０３と、サーバ制御通信部１０４とを備える構成である。クライアント装置２００は、動画像再生部２０１と、動画像デコード部２０２と、ストリーム受信部２０３と、クライアント制御通信部２０４と、パラメータ調整部２０５と、画質設定記憶部２０６とを備える構成である。
【００１９】
サーバ装置１００を構成する各部は、汎用のコンピュータと、当該コンピュータを利用して所定の情報処理を行うソフトウェアプログラムとの協働によって実現する。クライアント装置２００を構成する各部についても同様である。
【００２０】
動画像入力部１０１は、本実施形態に係る映像ストリーム通信システムに、ストリーム通信する動画像を入力する機能を備える。入力する動画像としては種々のものが考えられ、例えば、サーバ装置１００上ないし他のコンピュータ上で動作するオペレーティングシステムのグラフィカル・ユーザ・インターフェース（デスクトップ画面）や、インターネット上の配信サーバ（不図示）からサーバ装置１００に配信された動画像でもよい。動画像入力部１０１により入力された動画像は、まず、動画像エンコード部１０２に入力される。
【００２１】
動画像エンコード部１０２は、入力された動画像を、伝送路に適した形式に変換する（エンコードする）機能を備える。エンコードの際、動画像エンコード部１０２は、所定のパラメータを用いる。パラメータとしては、ネットワーク帯域の変動とクライアント装置のストリーム処理能力の変動に対応するという課題をより適切に解決するものという観点から、フレームレートとビットレートが適している。以下の説明では、特に断りのない限りパラメータとしてフレームレートとビットレートを用いる。
【００２２】
ストリーム送信部１０３は、動画像エンコード部１０２によりエンコードされた動画像データをクライアント装置２００へストリーム通信により送信する機能を備える。サーバ制御通信部１０４は、クライアント装置２００から送信されてきた本映像ストリーム通信システムの制御通信を受信して、当該制御通信に基づき動画像エンコード部１０２のパラメータを変更する機能を備える。
【００２３】
ネットワーク３００は、種々の態様のネットワークが利用でき、無線ＬＡＮやインターネットなどベストエフォート型のネットワークが含まれる。
【００２４】
クライアント装置２００のストリーム受信部２０３は、サーバ装置１００から送信されてきたストリーム通信を受信する機能を備える。また、ストリーム受信部２０３は、受信したストリーム通信に含まれる動画像データを動画像デコード部２０２に送る。また、ストリーム受信部２０３は、１フレーム分のストリームデータの受信にかかった時間を測定する。１フレーム分のストリームデータの受信にかかった時間を、以下、「受信時間」という。ストリーム受信部２０３は、フレーム毎に受信時間を算出し、パラメータ調整部２０５に送る。
【００２５】
動画像デコード部２０２は、ストリーム受信部２０３から送られてきた動画像データをデコードする機能を備える。デコードして得られた動画像は動画像再生部２０１に入力され、再生される。また、動画像デコード部２０２は、１フレーム分のストリームデータのデコードにかかった時間を測定する。１フレーム分のストリームデータのデコードにかかった時間を、以下、「デコード時間」という。動画像デコード部２０２は、フレームごとにデコード時間を算出し、パラメータ調整部２０５に送る。
【００２６】
画質設定記憶部２０６は、クライアント装置２００のユーザが視聴する動画の画質についての設定（プリファレンス）を記憶する機能を備える。画質の設定は、ユーザの利用シーンに応じて設定でき、本実施形態では、フレームレートを高くすることを優先する「動き優先」設定と、１フレームあたりのデータ量を多くすることを優先する「画質優先」設定を含む。画質設定記憶部２０６が記憶する画質の設定は、パラメータ調整部２０５が必要に応じて参照する。
【００２７】
パラメータ調整部２０５は、ストリーム受信部２０３が測定した受信時間と、動画像デコード部２０２が測定したデコード時間に基づいて、パラメータの調整を行う機能を備える。調整後のパラメータは、クライアント制御通信部２０４に送られ、クライアント制御通信部２０４が本映像ストリーム通信システムの制御通信によりサーバ装置１００に送信する。以下、パラメータ調整部２０５の行うパラメータ調整処理について説明する。
【００２８】
図２にパラメータ調整処理の手順を示す。パラメータ調整処理が開始されるタイミングは、例えば、定期的に数秒おきに行うものとしてもよく、また、ストリーム受信部２０３及び動画像デコード部２０２により所定のフレーム数分だけ受信時間とデコード時間が測定されたタイミングとしてもよい。
【００２９】
図２において、パラメータ調整部２０５は、測定された受信時間とデコード時間から、ストリームの受信時間、デコード時間の統計値を計算する（ステップＳ１０１）。次に、統計値より調整使用する受信時間、デコード時間の代表値を決定する（ステップＳ１０２）。次に、代表値に基づき、パラメータの調整が必要か否かを判断する（ステップＳ１０３）。ステップＳ１０３の判断は、例えば、ステップＳ１０２で得られた代表値が所定の値以上に変動した場合にパラメータ調整が必要と判断するものである。
【００３０】
ここで、統計値とは、受信時間とデコード時間が測定されたフレームの内、例えば直近１０〜１００フレームの受信時間、デコード時間（以下の説明では受信時間とデコード時間を区別せずに「処理時間」ということがある。）の統計値をいうこととする。具体的には、直近フレームの平均値、直近フレームの標準偏差（図３（ａ）参照）、直近フレームを処理時間の長さごとに並べた場合の上位数％の位置に位置するフレームの処理時間の値（図３（ｂ）参照）、等を用いることができる。これらの統計値の中でも特に、処理時間の長さごとに並べた場合の上位数％の位置に位置するフレームの処理時間の値を代表値とすることが最も好ましい。図３を参照して説明する。
【００３１】
図３は、本実施形態のパラメータ調整処理に用いる処理時間の統計値を説明するための概念図である。図３（ａ）は、直近フレームの平均値と標準偏差を統計値として代表値を算出する場合を示し、この場合の代表値は例えば平均値μと標準偏差σの和μ＋σとすることができる。処理時間が正規分布する場合に有効である。図３（ｂ）は、直近フレームを処理時間の長さごとに並べた場合の上位数％の位置に位置するフレームの処理時間の値を代表値とする場合を示す。図中矢印で示したフレームが、処理時間の長いフレームから順に並べ、上位数％の位置に位置するフレームである。ここで上位何％であるかは任意に定めることができる。
【００３２】
比較例として、直近１０〜１００フレーム中の処理時間の最大値を代表値とすることを考えると、この比較例は、処理能力に対して、（後段のパラメータ調整処理の結果得られる）ビットレートが低くなりすぎるおそれがあるという問題点がある。また、別の比較例として、直近フレームの平均値を統計値とすることを考えると、この比較例も、約半分の時間でカクツキが発生するおそれがあり、比較的有効ではない。ベストエフォート型のネットワークや汎用のコンピュータを利用する環境においては、急激に負荷が高まることが頻繁におきるため、図３（ｂ）に示したような統計値の決定方法が最も好ましい。
【００３３】
再び図２を参照して、パラメータ調整部２０５は、パラメータ処理を実行する場合、ステップＳ１０２で計算した受信時間の代表値と、デコード時間の代表値とを比較して、より大きい方を調整で用いる値（Ｔｒ）とする（ステップＳ１０４）。大きい方を調整で用いる意義は、処理時間の大きい方が、より処理能力の低下が見られる方なので、調整後のパラメータをより処理能力の低下が見られる方に合わせるということにある。
【００３４】
次に、パラメータ調整部２０５は、Ｔｒを用いて下記の数式から調整後のビットレート（Ｂｒ）を決定する（ステップＳ１０５）。
Ｂｒ  ＝  ＴｓＢｓ／Ｔｒ
ただし、Ｔｓ：ストリームのフレームレートの逆数
Ｂｓ：ストリームのビットレート
【００３５】
上記数式の意味について図４を参照して説明する。図４は、本実施形態のパラメータ調整処理におけるビットレートの算出方法を説明するための概念図である。上記数式と図４中におけるＴｓは、パラメータ調整処理が実行された時点において設定されているストリームのフレームレートの逆数である。つまり、Ｔｓは、１フレームあたりの処理に割り当て可能な時間の長さを意味する。また、Ｂｓは、同じくパラメータ調整処理が実行された時点において設定されているストリームのビットレートである。そうすると、ＴｓＢｓ（図４中、ＴｓとＢｓの２つの値で囲まれた四角形の面積）は、１フレームあたりのデータ量に相当する。なお、ＴｓとＢｓは、ストリーム受信部２０３より設定値を受け取る。
【００３６】
ここで、図２のステップＳ１０４までに決定されたＴｒの値が、図４中のＴｒ１（Ｔｓ＜Ｔｒ１）であった場合、上記数式によって得られるビットレートは、図４中のＢｒ１となる。すなわち、ストリームのビットレートＢｓより低い値に下がる。一方、Ｔｒの値が、図４中のＴｒ２（Ｔｓ＞Ｔｒ２）であった場合、ストリームのビットレートＢｓより高い値のＢｒ２に上がる。図４において、Ｔｒ１とＢｒ１の２つの値で囲まれた四角形の面積（データ量）とＴｒ２とＢｒ２の２つの値で囲まれた四角形の面積（データ量）は、ＴｓとＢｓの２つの値で囲まれた四角形の面積（データ量）は等しい。これは、同じデータ量を処理するのにビットレートが変化すると処理時間が変化することを意味し、逆に処理時間とデータ量からビットレートを推定できることを示している。
【００３７】
再び図２を参照して、調整後のビットレートを決定後、パラメータ調整部２０５は、次に、フレームレートを変更するか否かを判断し、変更すると判断した場合は変更処理をする（ステップＳ１０６，Ｓ１０７）。フレームレートを変更するか否かの判断は、ネットワーク帯域又はストリーム処理能力の変動の態様に依存するが、画質を一定の水準に保つか否かというユーザの選好にも依存する。図５を参照して説明する。
【００３８】
図５は、本実施形態のパラメータ調整処理におけるフレームレートの変更をするか否かの判断基準を説明するための概念図である。図示のように、上述のＴｓがＴｒより大きい場合（Ｔｒ＜Ｔｓ，図４中のＴｒ２の場合）、パラメータ調整部２０５は、画質設定記憶部２０６に記憶されている画質の設定を参照して、「動き優先」設定である場合、フレームレートを変更する。変更後（調整後）のフレームレートは、Ｔｒの逆数である（図４の例ではＴｒ２の逆数）。一方で、「画質優先」設定である場合、フレームレートを変更しない。
【００３９】
同様に、上述のＴｓがＴｒより小さい場合（Ｔｒ＞Ｔｓ，図４中のＴｒ１の場合）、パラメータ調整部２０５は、画質設定記憶部２０６に記憶されている画質の設定を参照して、「動き優先」である場合、フレームレートを変更しない。「画質優先」である場合、フレームレートを変更する。変更後（調整後）のフレームレートは、Ｔｒの逆数である（図４の例ではＴｒ１の逆数）。
【００４０】
なお、フレームレートは極端に小さくなると動画像がコマ送り状態となってしまい動画像として機能しなくなる。また、動画像入力部１０１に入力される動画像のフレームレート以上の値を動画像エンコード部１０２に設定しても、エンコード後のストリームのフレームレートは動画像入力部１０１に入力される動画像のフレームレート以上にはならない。そのため、フレームレート変更の際、上限値と下限値をあらかじめ設定しておき、変更後のフレームレートを設定した範囲内に収まるように制御すると、より適切である（例えば、変更後のフレームレートが下限値を下回る場合は、下限値を変更後のフレームレートとする）。同様に、ビットレートについてもあるビットレート以上になると画質向上の効果が認識できなくなるため、上限値と下限値のビットレートを設定しておき、変更後のビットレートを設定した範囲内に収まるように制御すると、より適切である（例えば、変更後のビットレートが上限値を上回る場合は、上限値を変更後のビットレートとする）。
【００４１】
以上で、本実施形態のパラメータ調整処理の説明を終える。
上述のように調整されたパラメータは、クライアント制御通信部２０４がサーバ装置１００に送信し、サーバ装置１００ではこれを受け取ったあと、動画像エンコード部１０２が、調整されたパラメータによって入力される動画像のエンコードを実行する。
【００４２】
したがって、ネットワーク帯域の変動によりストリーム受信に遅延が生じている場合や、外部アプリケーションによる処理負荷の増大に伴いクライアント装置２００のストリーム再生処理に遅延が生じている場合は、ビットレートを下げてエンコードしたストリームを通信することになるので、クライアント装置２００のユーザが動画像再生部２０１で再生する動画像にカクツキ等の不具合を経験することが無くなる。
【００４３】
一方で、ネットワーク負荷や処理負荷が突発的なものであって、十分なリソースが利用できる状態になった場合は、自動的にビットレートを上げてエンコードしたストリームを通信することになるので、クライアント装置２００のユーザにとって、煩雑でなく、また、不便さを感じさせることもなく、ユーザビリティが向上する。
【００４４】
すなわち、本実施形態によれば、ネットワーク帯域の変動とクライアント装置のストリーム処理能力の変動に適切に対応することができる。
【符号の説明】
【００４５】
１００    サーバ装置
１０１    動画像入力部
１０２    動画像エンコード部
１０３    ストリーム送信部
１０４    サーバ制御通信部
２００    クライアント装置
２０１    動画像再生部
２０２    動画像デコード部
２０３    ストリーム受信部
２０４    クライアント制御通信部
２０５    パラメータ調整部
２０６    画質設定記憶部
【図１】
0005428702.tif 000002
【図２】
0005428702.tif 000003
【図３】
0005428702.tif 000004
【図４】
0005428702.tif 000005
【図５】
0005428702.tif 000006