(57)【要約】      （修正有）【課題】フォワードエラー訂正（ＦＥＣ）冗長度をネットワーク帯域幅の使用可能な範囲内で調整することができる映像データの配信サーバおよび映像データ配信方法を提供する。【解決手段】映像データの配信において、ネットワーク帯域幅に関する情報と、ビットレート算出手段によって求めたコンテンツのビットレートとを元に、ＦＥＣエンコード後のデータビットレートが、ネットワーク帯域を越えないように、ＦＥＣ冗長度をネットワーク帯域幅の使用可能な範囲内で動的に変化させて調整する。【選択図】図１
2006262288.tif 000002
【特許請求の範囲】
【請求項１】
映像データにフォワードエラー訂正（ＦＥＣ）を行うためのＦＥＣエンコードを施すＦＥＣエンコーダを備え、ＦＥＣエンコードが施された映像データを配信する配信サーバにおいて、
前記映像データのビットレートを算出するビットレート算出手段と、
ネットワーク帯域幅に関する情報を保持するネットワーク帯域情報保持手段と、
前記ビットレート算出手段により算出されたビットレートに基づき、前記映像データにＦＥＣエンコードを施した場合に前記ネットワーク帯域情報保持手段に保持されたネットワーク帯域幅の上限値を越えない範囲で最大のＦＥＣ冗長度を算出し、当該ＦＥＣ冗長度の情報を前記ＦＥＣエンコーダに与えるＦＥＣ冗長度制御手段と
を備えたことを特徴とする配信サーバ。
【請求項２】
前記ネットワーク帯域情報保持手段は、
ネットワーク帯域に関する情報を取得する手段と、
この取得する手段により取得したネットワーク帯域に関する情報に基づき自己が保持する情報を更新する手段と
を備えた請求項１記載の配信サーバ。
【請求項３】
前記取得する手段は、クライアント毎にネットワーク帯域に関する情報を取得する手段を備えた請求項２記載の配信サーバ。
【請求項４】
映像データにフォワードエラー訂正（ＦＥＣ）を行うためのＦＥＣエンコードを施し、ＦＥＣエンコードが施された映像データを配信する配信サーバに適用される映像データ配信方法において、
前記映像データのビットレートを算出し、算出されたビットレートに基づき、前記映像データにＦＥＣエンコードを施した場合にネットワーク帯域幅の上限値を越えない範囲で最大のＦＥＣ冗長度を算出し、当該ＦＥＣ冗長度の情報に基づきＦＥＣエンコードを施す
ことを特徴とする映像データ配信方法。
【請求項５】
ネットワーク帯域に関する情報を取得し、この取得したネットワーク帯域に関する情報に基づき前記上限値を更新する請求項４記載の映像データ配信方法。
【請求項６】
ネットワーク帯域に関する情報をクライアント毎に取得する請求項５記載の映像データ配信方法。
【請求項７】
映像データにフォワードエラー訂正（ＦＥＣ）を行うためのＦＥＣエンコードを施すＦＥＣエンコーダを備え、ＦＥＣエンコードが施された映像データを配信する配信サーバに適用されるプログラムにおいて、
情報処理装置にインストールすることにより、その情報処理装置に、
前記映像データのビットレートを算出するビットレート算出機能と、
ネットワーク帯域幅に関する情報を保持するネットワーク帯域情報保持機能と、
前記ビットレート算出機能により算出されたビットレートに基づき、前記映像データにＦＥＣエンコードを施した場合に前記ネットワーク帯域情報保持機能に保持されたネットワーク帯域幅の上限値を越えない範囲で最大のＦＥＣ冗長度を算出し、当該ＦＥＣ冗長度の情報を前記ＦＥＣエンコーダに与えるＦＥＣ冗長度制御機能と
を実現させることを特徴とするプログラム。
【請求項８】
前記ネットワーク帯域情報保持機能として、
ネットワーク帯域に関する情報を取得する機能と、
この取得する機能により取得したネットワーク帯域に関する情報に基づき自己が保持する情報を更新する機能と
を実現させる請求項７記載のプログラム。
【請求項９】
前記取得する機能として、クライアント毎にネットワーク帯域に関する情報を取得する機能を実現させる請求項８記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フォワードエラー訂正（ＦＥＣ）技術を用いた映像データ配信に利用する。特に、ＦＥＣ冗長度の動的制御技術に関する。
【背景技術】
【０００２】
ＦＥＣ(Forward Error Correction：フォワードエラー訂正)は、送信側で伝送するデータを符号化（これをＦＥＣエンコードという）し、受信側でデータの中の誤りを検出し、受信側で訂正する（これをＦＥＣデコードという）再送なしの誤り訂正方式であり、このＦＥＣを映像データの配信に用いることにより、品質の高い映像データの配信を実現することができる。
【０００３】
送信側におけるＦＥＣエンコードでは、正規なデータパケット列の中に受信側におけるＦＥＣデコードのためのＦＥＣ冗長データを含む冗長なパケットを挿入する。伝送路の伝送品質が低ければ低いほど、より多くのＦＥＣ冗長データを含む冗長パケットを挿入することにより、伝送路の伝送品質の低さを補うことができる。
【０００４】
しかしながら、冗長パケットの挿入数（これをＦＥＣ冗長度という）が増えるとデータサイズが増大し、データのスループットの低下を招くので、ある程度のＦＥＣ冗長度に固定されている。あるいは、伝送路の伝送品質に応じて最小の冗長パケットを挿入する技術が開示されている（例えば、特許文献１または２参照）。
【０００５】
【特許文献１】特開２００１−１６５８４号公報
【特許文献２】特開２００２−３３０１１８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ＦＥＣ冗長度を固定とする従来のエラー訂正技術を用いた映像データ配信においては、次のような課題がある。
【０００７】
第一の課題は、ＶＢＲ(Variable Bit Rate)コンテンツの配信においてＦＥＣ冗長度が固定の場合には、コンテンツが複雑なシーンほどＦＥＣ冗長データ量も大きくなるため、ネットワーク帯域幅の小さい環境においては、データの遅延やロストを引き起し易くなってしまうことである。
【０００８】
図７に第一の課題のイメージを示す。図７を見るとビットレートの閾値を越えてＦＥＣ冗長データが付加されている部分が有る。図７の例では、ＦＥＣ冗長度α％が固定された規定値であるため、ビットレートの閾値の如何に関わらず、映像データにＦＥＣ冗長データが同じ割合で付加されてしまい、結果的に使用可能なネットワーク帯域幅を逸脱する部分が生じている。使用可能なネットワーク帯域幅を逸脱した部分では、クライアント側でＦＥＣデコードを行うために必要なＦＥＣ冗長データの一部が損なわれているため、配信側が期待するＦＥＣデコードがクライアント側で行われず、クライアントのユーザは低品質な映像データの視聴を強いられる。
【０００９】
第二の課題は、ネットワーク品質が変化する場合には、コンテンツビットレートの可変あるいは固定を問わず、ＦＥＣ符号化後のデータビットレートが使用可能なネットワーク帯域幅の上限を越え易くなってしまうことである。
【００１０】
特に、ネットワーク帯域幅の小さい環境においては影響が大きく、ネットワーク品質が変化する環境下で配信を行う場合や可変ビットレート（ＶＢＲ）コンテンツの配信を行う場合には、データの遅延やロストを引き起し易くなってしまう問題があった。
【００１１】
また、例えば、特許文献１または２に開示されているように、伝送路の伝送品質に応じてＦＥＣ冗長度を可変とする従来技術においても、ネットワーク帯域幅の上限に関しては全く考慮されておらず、コンテンツが複雑なシーンほどＦＥＣ冗長データ量も大きくなるため、ネットワーク帯域幅の小さい環境においては、データの遅延やロストを引き起し易くなってしまう。
【００１２】
また、特許文献１または２に開示されている技術では、伝送路の伝送品質に応じて最小のＦＥＣ冗長度とすることしか提案されておらず、ネットワーク帯域幅が大きく余裕の有る環境であっても、最小のＦＥＣ冗長度に制限されてしまうため、高品質の映像データ配信が阻害される場合も有り得る。
【００１３】
本発明は、このような背景の下に行われたものであって、ＦＥＣ冗長度をネットワーク帯域幅の使用可能な範囲内で調整することができる映像データの配信サーバおよび映像データ配信方法を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明は、フォワードエラー訂正（ＦＥＣ）技術を用いた映像データ配信において、ネットワーク帯域とコンテンツのビットレートとに応じてＦＥＣ冗長度を動的に変化させることを特徴とする。すなわち、ネットワーク帯域情報とコンテンツビットレートとを元に、ＦＥＣエンコード後のデータビットレートがネットワーク帯域を越えないようにＦＥＣ冗長度を調整する。
【００１５】
このようにして、本発明では、配信サーバがネットワーク帯域情報を認識可能な環境下においてＦＥＣエンコードデータの配信を行う場合に、配信データ量をネットワーク帯域幅内に調整することが容易になる。
【００１６】
すなわち、本発明の第一の観点は、映像データにフォワードエラー訂正（ＦＥＣ）を行うためのＦＥＣエンコードを施すＦＥＣエンコーダを備え、ＦＥＣエンコードが施された映像データを配信する配信サーバである。
【００１７】
ここで、本発明の特徴とするところは、前記映像データのビットレートを算出するビットレート算出手段と、ネットワーク帯域幅に関する情報を保持するネットワーク帯域情報保持手段と、前記ビットレート算出手段により算出されたビットレートに基づき、前記映像データにＦＥＣエンコードを施した場合に前記ネットワーク帯域情報保持手段に保持されたネットワーク帯域幅の上限値を越えない範囲で最大のＦＥＣ冗長度を算出し、当該ＦＥＣ冗長度の情報を前記ＦＥＣエンコーダに与えるＦＥＣ冗長度制御手段とを備えたところにある。
【００１８】
このように本発明によれば、ネットワーク帯域情報とコンテンツビットレートとを元に、ＦＥＣエンコード後のデータビットレートがネットワーク帯域を越えないようにＦＥＣ冗長度を調整することができる。特に、ネットワーク帯域幅の上限値を認識しているため、例えば、上限値を越えない範囲で最大のＦＥＣ冗長度とすることができる。
【００１９】
したがって、常に最小のＦＥＣ冗長度とする従来の技術とは異なり、ネットワーク帯域幅に余裕が有る環境下では、高品質の映像データ配信を実現することができる。また、ネットワーク帯域幅に余裕がない環境下であっても、上限値を越えない範囲で最大のＦＥＣ冗長度とすることができるため、映像データの遅延やロストを回避することができる。
【００２０】
また、前記ネットワーク帯域情報保持手段は、ネットワーク帯域に関する情報を取得する手段と、この取得する手段により取得したネットワーク帯域に関する  情報に基づき自己が保持する情報を更新する手段とを備えることができる。
【００２１】
これによれば、ネットワーク帯域幅が時々刻々変化する環境下であってもリアルタイムで環境の変化に対応することができる。
【００２２】
また、前記取得する手段は、クライアント毎にネットワーク帯域に関する情報を取得する手段を備えることができる。
【００２３】
これによれば、個々のクライアントに対してＦＥＣ冗長度を適応的に変化させ、個々のクライアントに対して最適なＦＥＣ冗長度とすることができる。
【００２４】
本発明の第二の観点は、映像データにフォワードエラー訂正（ＦＥＣ）を行うためのＦＥＣエンコードを施し、ＦＥＣエンコードが施された映像データを配信する配信サーバに適用される映像データ配信方法である。
【００２５】
ここで、本発明の特徴とするところは、前記映像データのビットレートを算出し、算出されたビットレートに基づき、前記映像データにＦＥＣエンコードを施した場合にネットワーク帯域幅の上限値を越えない範囲で最大のＦＥＣ冗長度を算出し、当該ＦＥＣ冗長度の情報に基づきＦＥＣエンコードを施すところにある。
【００２６】
また、ネットワーク帯域に関する情報を取得し、この取得したネットワーク帯域に関する情報に基づき前記上限値を更新することができる。このときに、ネットワーク帯域に関する情報をクライアント毎に取得することができる。
【００２７】
本発明の第三の観点は、映像データにフォワードエラー訂正（ＦＥＣ）を行うためのＦＥＣエンコードを施すＦＥＣエンコーダを備え、ＦＥＣエンコードが施された映像データを配信する配信サーバに適用されるプログラムである。
【００２８】
ここで、本発明の特徴とするところは、情報処理装置にインストールすることにより、その情報処理装置に、前記映像データのビットレートを算出するビットレート算出機能と、ネットワーク帯域幅に関する情報を保持するネットワーク帯域情報保持機能と、前記ビットレート算出機能により算出されたビットレートに基づき、前記映像データにＦＥＣエンコードを施した場合に前記ネットワーク帯域情報保持機能に保持されたネットワーク帯域幅の上限値を越えない範囲で最大のＦＥＣ冗長度を算出し、当該ＦＥＣ冗長度の情報を前記ＦＥＣエンコーダに与えるＦＥＣ冗長度制御機能とを実現させるところにある。
【００２９】
また、前記ネットワーク帯域情報保持機能として、ネットワーク帯域に関する情報を取得する機能と、この取得する機能により取得したネットワーク帯域に関する情報に基づき自己が保持する情報を更新する機能とを実現させることができる。このときに、前記取得する機能として、クライアント毎にネットワーク帯域に関する情報を取得する機能を実現させることができる。
【００３０】
これにより、汎用の情報処理装置を用いて本発明の映像データの配信サーバを実現することができる。
【発明の効果】
【００３１】
本発明の第一の効果は、ＦＥＣ冗長度を動的に変更可能としたことにより、状況に応じて配信するデータ量を調整できることである。
【００３２】
本発明の第二の効果は、コンテンツビットレートとネットワーク帯域幅とに応じてＦＥＣ冗長度を変化させることにより、配信サーバからのデータ配信量を使用可能なネットワーク帯域幅内で調整することができることである。これは特にＶＢＲコンテンツの配信時において有効である。
【００３３】
本発明の第三の効果は、ＦＥＣ冗長度はサーバサイドで決定でき、クライアントでの設定は不要のため、クライアントの自由度を高めることができることである。
【００３４】
本発明の第四の効果は、ネットワーク帯域情報を動的に受信することにより、ネットワーク品質が変化する場合にも、ＦＥＣ冗長度を適応的に変化させることができることである。
【００３５】
本発明の第五の効果は、クライアント毎の受信状況を把握できることにより、クライアントが複数ある場合に、個々のクライアントに対してＦＥＣ冗長度を適応的に変化させることができることである。
【発明を実施するための最良の形態】
【００３６】
（第一実施例）
本発明第一実施例を図１ないし図５を参照して説明する。図１は第一実施例の配信サーバおよびクライアントのブロック構成図である。図２は第一実施例の映像データ配信方法を示すフローチャートである。
【００３７】
第一実施例は、図１に示すように、映像データにフォワードエラー訂正（ＦＥＣ）を行うためのＦＥＣエンコードを施すＦＥＣエンコーダ１０２を備え、ＦＥＣエンコードが施された映像データを配信する配信サーバ１０である。
【００３８】
ここで、第一実施例の特徴とするところは、前記映像データのビットレートを算出するビットレート算出部１０５と、ネットワーク帯域幅に関する情報を保持するネットワーク帯域情報保持部１０６と、ビットレート算出部１０５により算出されたビットレートに基づき、前記映像データにＦＥＣエンコードを施した場合にネットワーク帯域情報保持部１０６に保持されたネットワーク帯域幅の上限値を越えない範囲で最大のＦＥＣ冗長度を算出し、当該ＦＥＣ冗長度の情報をＦＥＣエンコーダ１０２に与えるＦＥＣ冗長度制御部１０４とを備えたところにある。
【００３９】
また、第一実施例の映像データ配信方法は、図２に示すように、映像データのビットレートを算出し（Ｓ１、Ｓ２）、算出されたビットレートに基づき、前記映像データにＦＥＣエンコードを施した場合にネットワーク帯域幅の上限値を越えない範囲で最大のＦＥＣ冗長度を算出し（Ｓ３、Ｓ４）、当該ＦＥＣ冗長度の情報に基づきＦＥＣエンコードを施す（Ｓ５、Ｓ６、Ｓ７）ことを特徴とする。
【００４０】
すなわち、パケット分割部１０３に到来した映像データに対し（Ｓ１）、ビットレート算出部１０５はそのビットレートを算出し（Ｓ２）、ＦＥＣ冗長度制御部１０４は、このビットレートとネットワーク帯域情報保持部１０６に保持されているネットワーク帯域幅の上限値とに基づきＦＥＣ冗長度最大値を算出する（Ｓ３、Ｓ４）。算出されたＦＥＣ冗長度最大値はＦＥＣエンコーダ１０２に与えられる。ＦＥＣエンコーダ１０２は、与えられた最大値がＦＥＣ冗長度の予定値よりも小さければ（Ｓ５）、ＦＥＣ冗長度を予定値よりも削減してＦＥＣエンコードを行う（Ｓ６）。また、与えられた最大値がＦＥＣ冗長度の予定値よりも大きければ（Ｓ５）、ＦＥＣ冗長度を予定値のままとしてＦＥＣエンコードを行う（Ｓ７）。あるいは、予定値よりもさらに大きなＦＥＣ冗長度でＦＥＣエンコードすることにより伝送品質が向上できる場合には、予定値以上、上限値以下の範囲内でＦＥＣ冗長度を増大させることもできる（Ｓ７）。
【００４１】
以下では、第一実施例をさらに詳細に説明する。
【００４２】
図１に示すように、配信サーバ１０は、データをストリーミング配信する装置で、送信部１０１とＦＥＣエンコーダ１０２、パケット分割部１０３、ＦＥＣ冗長度制御部１０４、ビットレート算出部１０５を備えている。送信部１０１は、データをストリーミング配信する。ＦＥＣエンコーダ１０２は、データをＦＥＣエンコードし、ＦＥＣ冗長データを生成する。パケット分割部１０３は、映像ファイルをパケット単位に分割する。ＦＥＣ冗長度制御部１０４は、コンテンツビットレートおよびネットワーク帯域幅を元にＦＥＣ冗長度を決定する。ビットレート算出部１０５は、映像ファイルからビットレート情報を取得する。
【００４３】
クライアント２０は、配信サーバ１０から配信されたデータを受信しながら映像を視聴する装置で、受信部２０１とＦＥＣデコーダ２０２、映像デコーダ２０３、映像出力部２０４を備えている。受信部２０１は、送信部１０１より配信されたデータを、ネットワーク３０を介して受信する。ＦＥＣデコーダ２０２は、受信したデータのエラーを検出して訂正し、冗長データを破棄する。映像デコーダ２０３は、映像データをデコードし、映像出力部２０４へ渡す。映像出力部２０４は、映像および音声の再生を行う。
【００４４】
本実施例では、ＦＥＣ冗長度規定値は固定値で、例えば、予めコンテンツ毎に設定しておくとする。また、ネットワーク帯域情報（閾値）は、配信サーバ１０で予め認識できているものとする。
【００４５】
また、配信サーバ１０におけるＦＥＣエンコード処理の詳細を図３に、クライアント２０におけるＦＥＣデコード処理の詳細を図４に示している。図３、図４において、データブロックは、１５フレーム（０．５秒）分のデータである。正規データパケットは、映像データをパケット化したものである。冗長データパケットは、複数の正規データパケットをＦＥＣエンコードした結果生成されるパケットである。この正規データパケットと生成された冗長データパケットとをまとめて、ＦＥＣブロックとする。検査行列をｍ行ｎ列とすると、正規データパケット数は（ｎ−ｍ）個、冗長パケット数はｍ個という関係がある。ＦＥＣデコード情報パケットは、ＦＥＣエンコードされたデータをデコードするのに必要な情報（検査行列等）を格納している。
【００４６】
本実施例では、コンテンツとしてエンコード済の映像ファイルを使用しているが、ビデオカメラ等から入力された映像をリアルタイムエンコードして使用してもよい。固定ビットレート（ＣＢＲ）コンテンツを配信する場合は、ビットレート算出部１０５を使用して逐次ビットレートを算出するのではなく、最初にビットレート情報を取得し使用してもよい。また、ＦＥＣエンコード方式は限定するものではない。
【００４７】
図１の配信サーバ１０の動作について、図１および図３を参照して説明する。
【００４８】
配信サーバ１０は、映像配信を開始する際に、パケット分割部１０３で映像ファイルを読み込み、必要単位（ＵＤＰ単位）に分割してパケット化する。その映像データパケットを逐次ビットレート算出部１０５およびＦＥＣエンコーダ１０２へ渡す。
【００４９】
ビットレート算出部１０５は、受け取った映像データからビットレートを算出し、ＦＥＣ冗長度制御部１０４へ渡す。
【００５０】
ＦＥＣ冗長度制御部１０４は、受け取ったビットレート情報と予め設定されているＦＥＣ冗長度規定値からＦＥＣエンコード後のビットレートを算出し、この値がネットワーク帯域幅を越える場合には、ビットレート情報とネットワーク帯域情報とから、ＦＥＣエンコード後のデータがネットワーク帯域幅を越えないようにＦＥＣ冗長度を調整する。そして、算出したＦＥＣ冗長度等をＦＥＣエンコーダ１０２へ渡す。
【００５１】
本実施例におけるＦＥＣ冗長度の調整のイメージを図５に示す。図５の例では、ビットレートの閾値を逸脱しそうな部分では、ＦＥＣ冗長度をα％からＸ％に落とすことにより閾値からの逸脱を回避している。また、ネットワーク帯域幅に余裕の有る部分では、ＦＥＣ冗長度はα％のままである。
【００５２】
図５と図７とを比較すると、結果的にクライアントに到着するＦＥＣ冗長データ量は同じように見えるが、図７の例では、クライアント側でＦＥＣデコードを行うために必要なＦＥＣ冗長データの一部が損なわれている。したがって、クライアント側におけるＦＥＣデコードは不完全になり、映像データの品質は大きく劣化する。これに対し、図５の例では、予めＦＥＣ冗長度を下げているので、クライアント側でＦＥＣデコードを行うために必要なＦＥＣ冗長データは全てクライアント側に届けられる。したがって、クライアント側におけるＦＥＣデコードは完全に行われ、映像データの品質は高く保たれる。
【００５３】
他の実施例として、ネットワーク帯域幅に余裕の有る部分では、必要に応じてＦＥＣ冗長度を規定値であるα％からさらに増大させることができるようにしてもよい。
【００５４】
ＦＥＣエンコーダ１０２は、ＦＥＣ冗長度を元に検査行列を生成する。そして、その検査行列を用いて映像データパケットをＦＥＣエンコードし、冗長データを生成後、パケット化する。エンコード方式としては、例えば、Ｌｏｗ−Ｄｅｎｓｉｔｙ  Ｐａｒｉｔｙ−Ｃｈｅｃｋ（ＬＤＰＣ）符号を用いることができる。
【００５５】
送信部１０１は、図３に示すＦＥＣブロック単位にＦＥＣデコード情報を付加して、順次データを送信する。
【００５６】
図１のクライアント２０の動作について、図１および図４を参照して説明する。受信部２０１は、送信部１０１よりデータが配信されるのを待ち受ける。データがネットワーク３０を介して配信されると、それを受信し、逐次ＦＥＣデコーダ２０２に渡す。
【００５７】
ＦＥＣデコーダ２０２は、データパケットのエラー（ロスト）を検査し、エラーを検出した場合には、ＦＥＣブロックおよびＦＥＣデコーダ情報からロストした映像データパケットをリカバリする。そして、冗長データを破棄し、映像データをデータブロック単位で映像デコーダ２０３へ渡す。映像デコーダ２０３は、映像データをデコードし、映像出力部２０４へ渡す。映像出力部２０４は、受け取った映像データの再生を行う。
【００５８】
なお、ＦＥＣエンコードおよびデコードの詳細については、当業者ではよく知られており、また、本発明の範囲外であるので、詳細な説明を省略する。
【００５９】
（第二実施例）
本発明第二実施例の配信サーバを図６を参照して説明する。第二実施例では、ネットワーク帯域情報保持部１０７は、ネットワーク帯域に関する情報を取得するネットワーク情報取得部１０８を備え、このネットワーク情報取得部１０８により取得したネットワーク帯域に関する情報に基づき自己が保持する情報を更新する手段を備える。
【００６０】
なお、ネットワーク情報取得部１０８は、クライアント２０毎に設けられたネットワーク品質調査部２０５からの情報を受け取り、クライアント２０毎にネットワーク帯域に関する情報を取得する手段を備える。
【００６１】
すなわち、第二実施例の映像データ配信方法は、ネットワーク情報取得部１０８によりネットワーク帯域に関する情報を取得し、ネットワーク帯域情報保持部１０７は、この取得したネットワーク帯域に関する情報に基づきネットワーク帯域幅の上限値を更新する。このとき、ネットワーク帯域に関する情報をクライアント２０毎に備えられたネットワーク品質調査部２０５からの情報を受け取り、クライアント２０毎に取得する。
【００６２】
このように、第二実施例は、第一実施例の基本構成に、ネットワーク情報取得部１０８とネットワーク情報調査部２０５とを追加することで、ネットワーク３０の品質が変化する場合に、より適応的にＦＥＣ冗長度を変更可能としたことを特徴としている。
【００６３】
ネットワーク情報取得部１０８は、クライアント２０からネットワーク帯域情報を取得する。ネットワーク品質調査部２０５は、ネットワーク品質を調査し、使用可能な帯域情報を逐次配信サーバ１０へ送信する。調査の方法は本発明の範囲外とするが、例えば、ネットワーク３０を監視したり、受信部２０１およびＦＥＣデコーダ２０２から受信状況（およびエラー訂正状況）を受け取ったりして判断する。
【００６４】
基本的な動作は第一実施例の基本構成時と同様であるので説明を省略するが、ＦＥＣ冗長度制御部１０４で使用するネットワーク帯域情報が静的なものではなく、動的に変化する点が異なるため、その部分について説明する。
【００６５】
まず、クライアント２０のネットワーク品質調査部２０５は、クライアント２０が使用しているネットワークの品質を調査し、使用可能なネットワーク帯域情報を配信サーバ１０に向けて送信する。配信サーバ１０のネットワーク情報取得部１０８は、ネットワーク３０を介して、クライアント１０のネットワーク帯域情報を受信し、ＦＥＣ冗長度制御部１０４へ渡す。ＦＥＣ冗長度制御部１０４は、そのネットワーク帯域情報、ビットレート制御部１０５から受け取ったビットレート情報、および予め設定されているＦＥＣ冗長度規定値よりＦＥＣ冗長度を決定する。
【００６６】
（第三実施例）
本実施例は、汎用の情報処理装置にインストールすることにより、その情報処理装置に本実施例の配信サーバ１０に相応する機能を実現させるプログラムとして実現することができる。このプログラムは、記録媒体に記録されて情報処理装置にインストールされ、あるいは通信回線を介して情報処理装置にインストールされることにより当該情報処理装置に、配信サーバ１０の本発明の特徴とするＦＥＣ冗長度制御部１０４、ビットレート算出部１０５、ネットワーク帯域情報保持部１０６または１０７（ネットワーク情報取得部１０８を含む）をはじめとする各部（送信部１０１、ＦＥＣエンコーダ１０２、パケット分割部１０３）にそれぞれ相応する機能を実現させることができる。
【産業上の利用可能性】
【００６７】
本発明によれば、ＦＥＣ冗長度を動的に変更可能とし、状況に応じて配信するデータ量を調整できる。また、配信サーバからのデータ配信量を使用可能なネットワーク帯域幅内で調整することができる。また、ＦＥＣ冗長度はサーバサイドで決定でき、クライアントでの設定は不要のため、クライアントの自由度を高めることができる。また、ネットワーク帯域情報を動的に受信することにより、ネットワーク品質が変化する場合にも、ＦＥＣ冗長度を適応的に変化させる。また、クライアント毎の受信状況を把握できることにより、クライアントが複数ある場合に、個々のクライアントに対してＦＥＣ冗長度を適応的に変化させることができる。
【００６８】
したがって、高品質な映像データを常時、自動的に配信することができるため、配信サーバの管理者およびクライアントのユーザの双方にとって利用価値の高い映像データ配信システムを提供することができる。
【図面の簡単な説明】
【００６９】
【図１】第一実施例の配信サーバおよびクライアントのブロック構成図。
【図２】本実施例の映像データ配信方法を示すフローチャート。
【図３】ＦＥＣエンコードを説明するための図。
【図４】ＦＥＣデコードを説明するための図。
【図５】ＦＥＣエンコード後のデータがネットワーク帯域幅を越えないようにＦＥＣ冗長度を調整するイメージを示す図。
【図６】第二実施例の配信サーバおよびクライアントのブロック構成図。
【図７】従来の課題を説明するための図。
【符号の説明】
【００７０】
１０  配信サーバ
２０  クライアント
３０  ネットワーク
１０１  送信部
１０２  ＦＥＣエンコーダ
１０３  パケット分割部
１０４  ＦＥＣ冗長度制御部
１０５  ビットレート算出部
１０６、１０７  ネットワーク帯域情報保持部
１０８  ネットワーク情報取得部
２０１  受信部
２０２  ＦＥＣデコーダ
２０３  映像デコーダ
２０４  映像出力部
２０５  ネットワーク品質調査部
【図１】
2006262288.tif 000003
【図２】
2006262288.tif 000004
【図３】
2006262288.tif 000005
【図４】
2006262288.tif 000006
【図５】
2006262288.tif 000007
【図６】
2006262288.tif 000008
【図７】
2006262288.tif 000009