"複数のシンボルを含むK個のパケットに対して、冗長データで構成されるM個の冗長パケットを生成する情報処理装置であって、第k番目1≦k≦Kのパケットの第i番目のシンボルをシンボルSk,iとし、当該シンボルSk,iをD等分した場合の第d番目の部分シンボルをSk,idと表し、第m番目1≦m≦Mの冗長パケットの第i番目のシンボルを冗長シンボルRm,iと表し、当該冗長シンボルRm,iをD等分した場合の第d番目の部分冗長シンボルをRm,idと表す場合に、前記部分シンボルS1,id,...,SK,idのうちD個ずつを連結して、K/D個の連結シンボルT1,id,...,TK/D,idを生成する連結手段と、前記連結シンボルT1,id,...,TK/D,idから、M/D個の冗長データU1,id,...,UM/D,idを生成する生成手段と、前記冗長データU1,id,...,UM/D,idのそれぞれをD個ずつに分割して、部分冗長シンボルR1,id,...,RM,idのそれぞれが前記分割された冗長データのそれぞれとなるように、冗長パケットを組み立てる組立手段と、前記冗長パケットを出力する出力手段と、を備えることを特徴とする情報処理装置。前記Mの値は、前記情報処理装置がデータを送信する際の、パケットを単位とした場合の最大バーストエラー長以上であり、前記M/Kの値は前記情報処理装置がデータを送信する際のエラーレート以上であり、前記K/Dの値が前記情報処理装置の処理能力を示す所定値以下であることを特徴とする、請求項1に記載の情報処理装置。前記最大バーストエラー長、前記エラーレート、及び前記所定値に従って、前記M、K及びDの値を決定する決定手段をさらに備えることを特徴とする、請求項2に記載の情報処理装置。複数のシンボルを含むK個のパケットに対して、冗長データで構成されるM個の冗長パケットを生成する情報処理装置が行う情報処理方法であって、第k番目1≦k≦Kのパケットの第i番目のシンボルをシンボルSk,iとし、当該シンボルSk,iをD等分した場合の第d番目の部分シンボルをSk,idと表し、第m番目1≦m≦Mの冗長パケットの第i番目のシンボルを冗長シンボルRm,iと表し、当該冗長シンボルRm,iをD等分した場合の第d番目の部分冗長シンボルをRm,idと表す場合に、前記情報処理装置の入力手段が、送信すべきK個のパケットを入力する入力工程と、前記情報処理装置の連結手段が、前記部分シンボルS1,id,...,SK,idのうちD個ずつを連結して、K/D個の連結シンボルT1,id,...,TK/D,idを生成する連結工程と、前記情報処理装置の生成手段が、前記連結シンボルT1,id,...,TK/D,idから、M/D個の冗長データU1,id,...,UM/D,idを生成する生成工程と、前記情報処理装置の組立手段が、前記冗長データU1,id,...,UM/D,idのそれぞれをD個ずつに分割して、部分冗長シンボルR1,id,...,RM,idのそれぞれが前記分割された冗長データのそれぞれとなるように、冗長パケットを組み立てる組立工程と、前記情報処理装置の出力手段が、前記冗長パケットを出力する出力工程と、を含むことを特徴とする情報処理方法。コンピュータを、請求項1乃至3の何れか1項に記載の情報処理装置が有する各手段として機能させるための、コンピュータプログラム。特許文献1の方法によれば、誤り訂正データの生成にかかる処理負荷が大きくなってしまう可能性がある。すなわち、通信においては、連続的なパケットロスであるバーストエラーが発生しやすい。バーストエラー耐性を高めるためにはFECパケットの数を増やす必要がある。特許文献1の方法によれば、1つのデータブロックについての冗長シンボルが別々のFECパケットに格納される。すなわち、FECパケットの数を増やすと、1つのデータブロックについての冗長シンボルの数も増えることとなる。一方で冗長度が高いと送信データ量が増えるため、輻輳エラーが発生しやすくなる。冗長度を抑えるためには、FECパケットの数に対するデータパケットの数を増やす必要がある。ところで、特許文献1の方法によれば1つのデータブロックについてのシンボルは別々のデータパケットに格納される。したがって、冗長度を抑える場合には、1つのデータブロックについてのシンボルの数は増加する。このように、シンボルの数及び冗長シンボルの数が増加すると、シンボルから冗長シンボルを計算するための処理負荷が大きくなってしまうことがある。本発明は、誤り訂正データの生成に必要な処理負荷を低減することを目的とする。本発明の目的を達成するために、例えば、本発明の情報処理装置は以下の構成を備える。すなわち、複数のシンボルを含むK個のパケットに対して、冗長データで構成されるM個の冗長パケットを生成する情報処理装置であって、第k番目1≦k≦Kのパケットの第i番目のシンボルをシンボルSk,iとし、当該シンボルSk,iをD等分した場合の第d番目の部分シンボルをSk,idと表し、第m番目1≦m≦Mの冗長パケットの第i番目のシンボルを冗長シンボルRm,iと表し、当該冗長シンボルRm,iをD等分した場合の第d番目の部分冗長シンボルをRm,idと表す場合に、前記部分シンボルS1,id,...,SK,idのうちD個ずつを連結して、K/D個の連結シンボルT1,id,...,TK/D,idを生成する連結手段と、前記連結シンボルT1,id,...,TK/D,idから、M/D個の冗長データU1,id,...,UM/D,idを生成する生成手段と、前記冗長データU1,id,...,UM/D,idのそれぞれをD個ずつに分割して、部分冗長シンボルR1,id,...,RM,idのそれぞれが前記分割された冗長データのそれぞれとなるように、冗長パケットを組み立てる組立手段と、前記冗長パケットを出力する出力手段と、を備えることを特徴とする。誤り訂正データの生成に必要な処理負荷を低減できる。以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施例において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。以下の実施例においてデータシンボル、冗長シンボル、部分シンボル、連結シンボル、冗長部分シンボル、冗長データ、及び分割冗長データのビット長は2Z1Z1は0以上の整数で表される。また、分割数Dも2Z2Z2は0以上の整数で表される。しかしながらビット長及び分割数Dが2Z1ではない場合にも、以下の実施例を修正して適用できることは、当業者には明らかであろう。また、以下の実施例では映像データパケットに対する冗長データパケットを生成する場合について説明する。しかしながらデータの種類は映像データに限られず、文書データ、音声データなどでもよい。[実施例1]実施例1では、FECとして、リードソロモン符号FECを用いる場合について説明する。リードソロモン符号FECは、CDやDVDなどの記憶装置や、衛星通信、地上デジタル放送等の通信分野でも使われている誤り訂正方法で、ガロア体の元を使って符合語冗長シンボルを生成するのが特徴である。まず、従来技術におけるリードソロモン符号化を図7を用いて説明する。図7AにおけるM1~M40は保護対象データを40個のシンボルに分割したものである。シンボルとは、複数のビットからなるビット列である。リードソロモン符号FECにおいては、以下で説明するように複数のシンボルから冗長シンボルが生成される。リードソロモン符号化における1シンボルのビット数は規定されていないが、コンピュータの仕様上、8ビットの倍数であることが多い。本実施例においては、1シンボルは8ビットであるものとして説明する。また、40個のシンボルの集合をブロックと呼ぶ。各ブロックごとに、冗長シンボルを生成するための計算が行われる。すなわち、各ブロックごとに、以下で説明する生成シンドロームに従う冗長データの算出が行われる。F1~F8は冗長シンボルを表す。すなわち、40個のシンボルM1~M40から冗長シンボルF1~F8が生成される。従来技術においては、40個のシンボルM1~M40と冗長シンボルF1~F8とが、1つのパケットとして送信される。冗長シンボルF1~F8は生成シンドロームと呼ばれる多項式から生成する。図7Bにおいて、S1~S8は生成シンドロームを表す。αのべき乗はガロア体の元を表している。また、生成シンドロームはS1~S8で構成される。S1は各シンボルの排他的論理和であり、S2~S8は、各シンボルとαのべき乗との積の、排他的論理和である。冗長シンボルF1~F8は、生成シンドロームS1~S8が0になるように生成される。また、冗長シンボル数の半分の値が、誤り訂正可能なシンボル数となる。図7Aの例では、40個の保護対象データシンボルのうち、任意の4シンボルのエラーを訂正することができる。誤りがあるシンボルが特定できている場合には、最大8シンボルまで訂正することができる。特許文献1の方法によれば、40個のシンボルM1~M40と冗長シンボルF1~F8とが、48個のパケットのそれぞれに含められる。図8に特許文献1の方法について示す。図8において、1ブロックを構成するシンボルM1~M40は、別々のパケット1~40に含められている。また、8個の冗長シンボルF1~F8も、別々のFECパケット1~8に含められている。すなわち、保護対象パケットのヘッダを除くペイロード部分が1400バイトである場合、1シンボルは8ビット1バイトだから、1つの保護対象パケットは1400個のシンボルを含む。以下に、図面を参照しながら、実施例1について説明する。図1に示されるように、本実施例に係る情報処理装置であるサーバ100は、映像入力部101、映像符号化部102、映像パケット生成部103、FECパケット生成部104、及びパケット送信部105とを備える。以下、サーバ100はネットワークカメラであるものとして説明する。しかしながら他の実施例において、サーバ100は、通信を行うことができる一般的なコンピュータであってもよい。なお、本実施例のサーバ100は、データパケットを復元するための復元パケットを生成する、生成装置として動作する。本実施例のサーバ100は、データパケットと、データパケットから生成された復元パケットとを送信する。これらのパケットを受信したクライアントは、データパケットが破損又は欠損している場合に、復元パケットを用いてデータパケットを修復することができる。映像入力部101は、映像データを取得する。例えば映像入力部101は撮像部を備えてもよく、映像入力部101は、この撮像部が撮像した映像データを取得しうる。もっとも、映像入力部101が取得するデータは映像データには限られず、音声データやテキストデータなどを入力してもよい。映像符号化部102は、映像入力部101が取得した映像データを符号化する。例えば映像符号化部102は、映像データに対して離散コサイン変換及び量子化処理を行うことにより、映像データを圧縮符号化しうる。符号化方式は任意の方法でよく、例えばJPEG符号化、MPEG-2符号化、又はMPEG-4符号化などを用いることができる。また映像符号化部102は、映像入力部101が取得した映像データがアナログデータである場合には、A/D変換処理によって映像データをデジタル化することができる。もっとも、映像符号化部102による符号化は本実施例において必須ではない。例えば後述する映像パケット生成部103は、映像入力部101が取得した映像データをパケット化してもよい。映像パケット生成部103は、映像符号化部102が符号化した映像データをパケット化する。例えば映像パケット生成部103は、通信に適したサイズへと、映像データをパケット化しうる。映像パケット生成部103が生成するパケットは、通常、複数のシンボルを含む。FECパケット生成部104は、映像パケット生成部103で生成されたK個通常はK≧2の映像パケットを用いて、冗長パケットで構成されるM個M≧1、通常はM≧2のFECパケット冗長パケットを生成する。以下で、N=KMとする。FECパケット生成部104が行う処理の詳細については後述する。パケット送信部105は、映像パケット生成部103が生成した映像パケット及びFECパケット生成部104が生成したFECパケットを、クライアントに送信する。本実施例においてパケット送信部105は、インターネット110を経由してパケットを送信する。しかしながら、送信経路はインターネットに限られず、パケット送信部105は例えば無線通信路のような任意の送信経路を介してパケットを送信することができる。クライアント120は、パケット受信部121、誤り訂正部122、映像復号化部123、及び映像再生部124を備える。本実施例においてクライアント120は、サーバ100より送信された映像データを受信するための通信機能を備えたクライアントである。例えばクライアント120は、一般のコンピュータ、テレビ、ストレージ装置などでありうる。パケット受信部121は、サーバ100のパケット送信部105から送信された映像パケット及びFECパケットを受信する。誤り訂正部122は、パケット受信部121が受信した映像パケットに、破損又は欠損があるか否かを判定する。映像パケットに破損又は欠損が見つかった場合、誤り訂正部122は、FECパケットを用いて映像パケットを回復することが可能か否かを判定する。回復が可能である場合誤り訂正部122は、FECパケットを用いて映像パケットを回復する。誤り訂正部122が行う処理は、既知の誤り訂正技術に従って行うことができる。映像復号化部123は、パケット受信部121が受信した映像パケット又は、誤り訂正部122が回復した映像パケットを、復号化する。映像復号化部123は、映像符号化部102が行った符号化処理に対応する復号化処理を行う。例えば映像符号化部102が離散コサイン変換及び量子化を行っている場合、映像復号化部123は逆量子化及び逆離散コサイン変換処理を行う。映像復号化部123は、D/A変換によってデジタルデータをアナログデータに変換してもよい。映像再生部124は、映像復号化部123が復号化した映像データを再生する。映像再生部124は例えば、ディスプレイ機能を持つ表示デバイスなどでありうる。次に、FECパケット生成部104についてより詳しく説明をする。図3は、FECパケット生成部104が行う処理のフローチャートである。まず、ステップS301においてFECパケット生成部104は、通信情報308を取得し、この通信情報に従って冗長度及び最大バーストエラー訂正能力を決定する。ここでいう通信情報とは、サーバ100が行う通信の状況を示す情報である。通信情報とは例えば、利用可能帯域幅や過去の最大バーストエラー長等である。この通信情報は、サーバ100とクライアント120とが行う通信の状況を示す情報であってもよい。利用可能帯域幅の取得方法としては、どのような方法でも用いることができる。利用可能帯域幅の取得方法の例としては、TFRCのスループット方程式が挙げられる。TFRCのスループット方程式は、RTTやエラーレート等の情報から、セッションが利用可能な帯域幅を算出するための方程式であり、一般的に広く知られている。その他にも、主にTCPで用いられるAIMDと呼ばれる取得方法などもある。過去の最大バーストエラー長を取得する方法についても、どのような方法でも用いることができる。例えば、映像パケットを受信するクライアント120は、エラーパケット解析を行い、過去のある一定期間の最大バーストエラー長を計測しうる。クライアント120が計測結果をサーバ100に通知することで、サーバ100は過去の最大バーストエラー長を取得することができる。その他にも、クライアントからのRRに含まれるエラーパケット数等から、過去の最大バーストエラー長を推測することもできる。この場合RRは、非常に短い期間についてのRRであってもよい。冗長度の算出方法としては、どのような方法でも用いることができる。通常は、利用可能帯域幅が大きいほど冗長度が大きくなるように、冗長度は計算される。また、通信のエラーレートが大きいほど冗長度が大きくなるように、冗長度は計算される。本実施例においては、K個のパケットからM個の冗長パケットが生成されるが、この場合冗長度はM/Kで表される。したがって一例として、M/Kがエラーレート以上となるように、M及びKの値は定められうる。この場合、例えばクライアント120からのRRから、サーバ100はエラーレートを知ることができる。別の具体的な例としては、映像のビットレートと冗長データのビットレートとの合計が利用可能帯域幅よりも小さくなるように、冗長度が決定されてもよい。最大バーストエラー訂正能力は、過去の最大バーストエラー長に従って計算されうる。例えば最大バーストエラー訂正能力は過去の最大バーストエラー長に一致してもよいし、過去の最大バーストエラー長に所定の係数を乗じて得られる値に一致してもよい。本実施例においては、K個のパケットからM個の冗長パケットが生成されるが、この場合バーストエラー訂正能力はMパケットとなる。したがって通常Mは、サーバ100がデータを送信する際の、パケットを単位とした場合の最大バーストエラー長以上となるように定められる。ステップS302でFECパケット生成部104は、ブロック長を算出する。本実施例においては、ブロック長を算出する前に、1つの連結シンボルがいくつのパケットから抽出されるのかが決定されている。1つの連結シンボルがD個のパケットから抽出される場合、分割数がDであるものとする。分割数は例えば、ユーザによって予め設定されていてもよい。分割数Dと、ステップS301で算出された冗長度及び最大バーストエラー訂正能力とに従って、FECパケット生成部104はブロック長を算出する。具体的には以下の式3に従って、FECパケット生成部104はブロック長K単位:パケットを算出しうる。K=M×100/r/D...2式2において、Dは分割数を、rは冗長度をを、Mは最大バーストエラー訂正能力単位:パケットを、それぞれ示す。次にステップS303でFECパケット生成部104は、映像パケット生成部103入力手段が入力したK個の映像パケット309を取得し、K個の映像パケット309から部分シンボルを抽出する。さらにステップS304においてFECパケット生成部104が備える連結部不図示は、部分シンボルを結合して連結シンボルを生成する連結手段。具体的には、第k番目1≦k≦Kの映像パケットの第i番目のシンボルをシンボルSk,iとする場合に、FECパケット生成部104はシンボルSk,iのそれぞれをD等分して、部分シンボルSk,i1,....Sk,iDを抽出する。そしてFECパケット生成部104は部分シンボルS1,id,...,SK,idのうちD個ずつを連結して、K/D個の連結シンボルT1,id,...,TK/D,idを生成する。より具体的な一例としては、FECパケット生成部104は、部分シンボルSDx-11,i,...,SDx,id1≦x≦K/Dを連結して連結シンボルTx,idを生成してもよい。ステップS305でFECパケット生成部104は、1ブロックに含まれる全ての部分シンボルが抽出されたか否かを判定する。まだ抽出されていない部分シンボルがある場合には、処理はステップS303に戻る。全ての部分シンボルが抽出されている場合には、処理はステップS306に進む。映像パケットが可変長パケットである場合には、それぞれの映像パケットの長さは互いに異なるかもしれない。この場合、それぞれの映像パケットの長さが等しくなるように、短い映像パケットに対してパディングを行ってもよい。ステップS306でFECパケット生成部104は、以上のように生成された連結シンボルを用いて生成シンドロームを算出する。ステップS307においてFECパケット生成部104が備える生成部不図示は、生成シンドロームを用いて冗長データを生成する生成手段。さらにFECパケット生成部104が備える組立部不図示は、冗長データを分割して分割冗長データを生成し、分割冗長データを有するFECパケット310を生成する組立手段。具体的にはFECパケット生成部104は、連結シンボルT1,id,...,TK/D,idから、M/D個の冗長データU1,id,...,UM/D,idを生成する。この生成処理は、図7に示されるような生成シンドロームに従って行えばよい。そしてFECパケット生成部104は、冗長データU1,id,...,UM/D,idのそれぞれをD個ずつに分割して、分割冗長データを生成する。さらにFECパケット生成部104は、部分冗長シンボルR1,id,...,RM,idのそれぞれが生成された分割冗長データとなるように、FECパケットを組み立てる。ここで、第m番目1≦m≦MのFECパケットの第i番目のシンボルを冗長シンボルRm,iと表し、冗長シンボルRm,iをD等分した場合の第d番目の部分冗長シンボルをRm,idと表す。こうして生成されたFECパケットは、パケット送信部105出力手段によって冗長パケットとして出力される。より具体的な一例としては、FECパケット生成部104は、部分冗長シンボルRDy-11,id,...,RDy,id1≦y≦M/Dのそれぞれが分割冗長データUy,id1,...,Uy,idDとなるように、FECパケットを組み立ててもよい。ここで、冗長データUy,idをD等分して得られる分割冗長データをUy,id1,...,Uy,idDと表すものとする。次に、ステップS303~S307において複数のデータパケットからFECパケットを生成する方法について、図4を参照して詳しく説明する。図4においては説明のために1シンボルが8ビットで構成されているが、1シンボルを構成するビット数は任意でありうる。図4Aは、従来のFECパケット生成方法を示す。この例では、1シンボルが1パケットから抽出される。具体的にはFECパケット生成部104は、映像パケット生成部103が生成した映像パケットを受け取る。そしてFECパケット生成部104は、それぞれの映像パケットのペイロード部分を8ビット毎に分割することにより、ペイロードデータを複数のシンボルに変換する。すなわち1つの映像パケットのペイロードは、1番目のシンボルからx番目のシンボルまでの、x個のシンボルに分割される。図4Aの例では、FECパケット生成部104は、映像パケット生成部103からy個の映像パケットを連続して受け取る。そしてFECパケット生成部104は、y個の映像パケットから、z個のFECパケットを生成する。具体的にはFECパケット生成部104は、以下のようにFECパケットを生成しうる。まずFECパケット生成部104は、y個の映像パケットのそれぞれについての1番目のシンボルを用いて、z個のFECパケットのシンボルを生成する。FECパケット生成部104は、図7に示される生成シンドロームに従って、y個のシンボルからz個の冗長データを生成しうる。生成されたz個の冗長データのそれぞれは、1番目の冗長シンボルとして、z個のFECパケットのそれぞれに格納される。同様にFECパケット生成部104は、y個の映像パケットのそれぞれについての2番目のシンボルを用いて、z個の冗長データを生成する。生成されたz個の冗長データのそれぞれは、2番目の冗長シンボルとして、z個のFECパケットのそれぞれに格納される。同じようにFECパケット生成部は、3番目~x番目のシンボルから冗長データを生成し、生成された冗長データを3番目~x番目の冗長シンボルとして、FECパケットのそれぞれに格納する。図4Aの例において、1つのブロックは、y個のシンボルで構成される。すなわちy個の映像パケットには、x個のブロックが含まれる。1ブロックからは上述のように、z個の冗長データが生成される。冗長データの数は、要求される訂正能力に応じて設定されうる。上述のようの冗長データのそれぞれは別々のFECパケットに含まれるため、z個のFECパケットが生成されることになる。図4Bは、本実施例におけるFECパケット生成方法のうちの1つを示す。この例では、1つの連結シンボルは2つの映像パケットから抽出される。すなわち、FECパケット生成部104は、y個の映像パケットのそれぞれのペイロード部分を4ビット毎に分割する。説明のためにここでは、分割された4ビットのデータを部分シンボルと呼ぶ。すなわち、1個の映像パケットは2x個の部分シンボルに分割される。続けてFECパケット生成部104は、y個の映像パケットのそれぞれについての1番目の部分シンボルを用いて、z/2個の冗長データを生成する。具体的にはまずFECパケット生成部104は、y個の部分シンボルからy/2個の連結シンボルを生成する。すなわち、2つの部分シンボルを連結して1つの連結シンボルを生成する。例えば1番目の映像パケットの部分シンボルと2番目の映像パケットの部分シンボルとを連結して、1つの連結シンボルを生成することができる。また、3番目の映像パケットの部分シンボルと4番目の映像パケットの部分シンボルとを連結して1つの連結シンボルを生成することができる。こうしてFECパケット生成部104は、y/2個の連結シンボルを生成する。上述のように、1つのシンボルは8ビットであり、1つの部分シンボルは4ビットであり、1つの連結シンボルは8ビットである。そしてFECパケット生成部104は、図7に示される生成シンドロームに従って、生成されたy/2個の連結シンボルから、z/2個の冗長データを生成する。1つの冗長データは8ビットである。さらにFECパケット生成部104は、生成されたz/2個の冗長データを、z個の分割冗長データに分割する。具体的には、8ビットの冗長データのそれぞれを2つに分割し、4ビットの分割冗長データとすればよい。z個の分割冗長データのそれぞれは、1番目の部分冗長シンボルとして、z個のFECパケットのそれぞれに格納される。y個の映像パケットのそれぞれについての2番目以降の部分シンボルからも、同様に分割冗長データが生成される。このようにして、y個の映像パケットから、z個のFECパケットが生成される。図4Bの例において1つのブロックは、y/2個の連結シンボルで、すなわちy個の部分シンボルで構成される。またy個の映像パケットには、2x個のブロックが含まれる。1ブロックからは上述のように、z/2個の冗長データが、すなわちz個の分割冗長データが生成される。図4Cは、本実施例におけるFECパケット生成方法のうちの1つを示す。この例では、1つの連結シンボルは4つの映像パケットから抽出される。すなわち、FECパケット生成部104は、y個の映像パケットのそれぞれのペイロード部分を2ビット毎に分割する。この例では、分割された2ビットのデータを部分シンボルと呼ぶ。すなわち、1個の映像パケットは4x個の部分シンボルに分割される。その後FECパケット生成部104は、図4Bに示される場合と同様に、FECパケットを生成する。すなわちFECパケット生成部104は、y個の映像パケットのそれぞれについての1番目の部分シンボルを用いて、z/4個の冗長データを生成する。具体的にはFECパケット生成部104は、y個の部分シンボルからy/4個の連結シンボルを生成し、生成されたy/4個の連結シンボルから、z/4個の冗長データを生成する。さらにFECパケット生成部104は、生成されたz/4個の冗長データを、z個の分割冗長データに分割する。z個の分割冗長データのそれぞれは、1番目の部分冗長シンボルとして、z個のFECパケットのそれぞれに格納される。y個の映像パケットのそれぞれについての2番目以降の部分シンボルからも、同様に分割冗長データが生成される。このようにして、y個の映像パケットから、z個のFECパケットが生成される。図4Cの例において1つのブロックは、y/4個の連結シンボルで、すなわちy個の部分シンボルで構成される。またy個の映像パケットには、4x個のブロックが含まれる。1ブロックからは上述のように、z/4個の冗長データが、すなわち4個の分割冗長データが生成される。ここで、冗長度と最大バーストエラー訂正能力が同条件である場合の、冗長データを計算するための計算量を、図4A~Cに示される例について比較してみる。以下では、冗長度が20、最大バーストエラー訂正能力が8パケットとなるように、冗長データを生成するものとする。ところで、リードソロモン符号化における計算量は以下のようになる。エンコードデコード時の計算量:Ok0m0log2n0...1デコード時の逆行列の計算量:Ok03...2ここで、k0は生成シンドロームにおける保護対象データのシンボル数であり、m0は生成シンドロームにおける冗長データのシンボル数である。また、n0はk0とm0との和である。以後、リードソロモン符号化のパラメータをn0,k0で表現する。この場合n0=N/D、k0=K/Dとなるが、このことを具体例を挙げて以下で説明する。まず図4Aに示される例D=1では、最大バーストエラー訂正能力が8パケットであるから、1つの映像パケット群に対して、FECパケットは8パケット必要である。冗長度が20なので、40個の映像パケットに対して8個のFECパケットが生成される。また、上述のように1ブロックについて生成された冗長シンボルのそれぞれは異なる1つのFECパケットに配置されるため、1ブロックから8個の冗長シンボルを生成することになる。また、冗長度が20なので、1ブロックには40個のシンボルが含まれる。すなわち式1において、n0=48、k0=40、m0=8である。したがって、計算量O=320×4log3となる。対数logの底は2であり、以下でもlogの底は2である。次に図4Bに示される例D=2では、最大バーストエラー訂正能力が8パケットであるから、1つの映像パケット群に対して、FECパケットは8パケット必要である。冗長度が20なので、40個の映像パケットに対して8個のFECパケットが生成される。上述のように、それぞれのFECパケットには1つの分割冗長データが配置される。すなわち、1ブロックからは8つの分割冗長データが生成される。分割冗長データは4ビット、冗長データは8ビットであるから、1ブロックから4個の冗長データを生成することになる。また、冗長度が20なので、1ブロックには20個のシンボルが含まれる。すなわち式1において、n0=24、k0=20、m0=4である。また、上述のように図4Bに示される例では、図4Aに示される例と比べて、40個の映像パケットに含まれるブロックの数は2倍である。式1は1つのブロックについての計算量であるから、このことを考慮すると、計算量O=2×80×3log3となる。最後に図4Cに示される例D=4では、最大バーストエラー訂正能力が8パケットであるから、1つの映像パケット群に対して、FECパケットは8パケット必要である。冗長度が20なので、40個の映像パケットに対して8個のFECパケットが生成される。上述のように、それぞれのFECパケットには1つの分割冗長データが配置される。すなわち、1ブロックからは8つの分割冗長データが生成される。分割冗長データは2ビット、冗長シンボルは8ビットであるから、1ブロックから2個の冗長データを生成することになる。また、冗長度が20なので、1ブロックには10個のシンボルが含まれる。すなわち式1において、n0=12、k0=10、m0=2である。また上述のように図4Bに示される例では、図4Aに示される例と比べて、40個の映像パケットに含まれるブロックの数は4倍である。また、式1は1つのブロックについての計算量であるから、このことを考慮すると、計算量O=4×20×2log3となる。図4Aに示される例の計算量Oと、図4Bに示される例の計算量Oとを比べると、FECパケットを算出する際の計算量は4分の1以下になっていることが分かる。デコード時の計算量も含めると、その差はさらに大きくなる。最後に、FECパケットのヘッダ例を図5に示す。501のSNbaseには、対応する映像パケット群のうち、最も小さいパケットについてのシーケンス番号が格納される。502のmaには、1シンボルを構成するビット数が格納される。503のdaには、シンボルの分割数が格納される。504のfには、FECパケット群に含まれる各パケットの順番を識別するための番号が格納される。505のnaには、対応する映像パケット群に含まれるシンボル数と冗長シンボル数との和が格納される。506のkaには、対応する映像パケット群に含まれるシンボル数が格納される。なお、図5に示されるヘッダは一例に過ぎず、本実施例に係るFECパケットは異なるヘッダを有してもよい。以上説明してきたように、本実施例によれば、FECパケットを算出する際に、従来より少ない計算量で、同等の冗長度及び同等のバーストエラー耐性を実現することができる。<実施例2>実施例1では、分割数Dはユーザによって予め設定されていた。しかしながらこの分割数Dは、さまざまな方法で決定することができる。例えば、1フレームに含まれるパケット数から分割数Dを決定することができる。また、RTTやクライアント側におけるバッファリング時間等があらかじめ分かっている、あるいはある程度予測できる場合には、それらの情報を利用して決定してもよい。もっとも、分割数Dの決定方法は特に限定されない。実施例2では、分割数Dを決定する方法の一例について、図6のフローチャートを参照して説明する。本実施例では、受信クライアント側から送信されるフィードバック情報を用いて、分割数Dが動的に変更される。ステップS601においてサーバ100のパケット受信部不図示は、クライアント120からフィードバック情報を受信したかどうかを確認する。フィードバック情報は例えば、RTCPパケットとして送信されることができる。このRTCPパケットは例えば、AVPを拡張したAVPFIETF-RFC4585でありうる。AVPFは、AVPと比べてより迅速な統計的フィードバックを提供することができる。パケット受信部がフィードバック情報を受信していない場合、処理はステップS602に進む。パケット受信部がフィードバック情報を受信している場合、処理はステップS603に進む。ステップS602~ステップS608で、上述のn0,k0、及び分割数Dが決定される。以下の処理で、分割数Dの初期値は1であるものとする。ステップS602でサーバ100のパケット受信部は、フィードバック情報が受信されるのを待つか否かを判定する。例えばサーバ100のパケット送信部105による情報送信が行われている間、パケット受信部はフィードバック情報を待ってもよい。また、サーバ100のパケット送信部105による情報送信が終了してから所定の時間、パケット受信部はフィードバック情報を待ってもよい。パケット受信部がフィードバック情報を待つ場合、処理はステップS601に戻る。パケット受信部がフィードバック情報を待たない場合、処理は終了する。S603においてサーバ100の制御部不図示、制御手段は、ステップS601で受信したフィードバック情報から、エラーレート及び最大バーストエラー長を取得する。これらは、クライアント120が受信データについてエラー解析を行うことにより得られた情報である。S604においてサーバ100の制御部は、ステップS603で取得されエラーレートから冗長度を決定する。この冗長度は、クライアント120におけるエラー回復のために必要な最小限の値でありうる。冗長度の決定は、周知の技術に従って行うことができる。例えば、Aのデータに誤りが存在する場合には、制御部は、冗長度をA以上にすればよい。S605においてサーバ100の制御部は、最大バーストエラー長及び冗長度から、リードソロモン符号化におけるパラメータn0データシンボル数と冗長シンボル数との和及びk0データシンボル数を仮決定する。n0及びk0の決定は実施例1で説明した通りに行えばよい。例えば最大バーストエラー長がBパケットの場合、冗長シンボル数n0-k0をB以上にすればよい。また、冗長度がAの場合、100n0-k0/k0をA以上にすればよい。S606においてサーバ100の制御部は、ステップS605又はステップS607で仮決定されたn0及びk0を、予め定められた閾値Nmax及びKmaxと比較する。閾値Nmax及びKmaxは、サーバ100の処理能力を示す値でありうる。すなわち、サーバ100の処理能力がより大きい場合には、閾値Nmax及びKmaxはより大きく設定されうる。もっとも、比較はn0とNmaxとの間でのみ行われてもよいし、k0とKmaxとの間でのみ行われてもよい。ここで、n0=N/Dであり、k0=k0/Dである。そして、n0≦Nmaxかつk0≦Kmaxである場合、制御部は値n0,k0,Dの組をFECパケット生成部104に送信する。その後処理はステップS601に戻り、ステップS601でサーバ100のパケット受信部は次のフィードバック情報を待つ。ステップS606においてn0>Nmaxまたはk0>Kmaxである場合、処理はステップS607に進む。ステップS607でサーバ100の制御部は、部分シンボル長が所定値又は所定値以下であるか否かを判定する。この所定値とは部分シンボル長の最低値であり、例えば1ビットでありうる。部分シンボル長は、シンボル長/Dである。部分シンボル長が所定値以下ではない場合、処理はステップS608に進む。部分シンボル長が所定値以下である場合、制御部は値n0,k0,Dの組をFECパケット生成部104に送信する。その後処理はステップS601に戻り、ステップS601でサーバ100のパケット受信部は次のフィードバック情報を待つ。もっとも、部分シンボル長が所定値以下である場合、制御部は、n0≦Nmaxかつk0≦Kmaxであるn0,k0,Dの組が発見できないことを示すエラーを出力してもよい。ステップS608でサーバ100の制御部は、分割数Dを2倍にする。この場合、実施例1で説明したように、n0は半分になり、k0も半分になる。その後、処理はステップS606に戻る。本実施例の方法によれば、通信状態やクライアント120の処理能力等に応じて、適応的にシンボルの分割数を決定することができる。本実施例では、エラーレート及び最大バーストエラー長がフィードバック情報に含まれていた。しかしながらクライアント120が、求められる冗長度を計算し、フィードバック情報としてサーバ100に送信してもよい。またサーバ100は、エラーレートに基づいて冗長度を決定する代わりに、冗長データと映像データの合計が利用可能帯域幅を超えないように、冗長度を決定しても良い。<その他の実施例>以上、実施例を詳述したが、本発明は例えば、システム、装置、方法、プログラム若しくは記録媒体記憶媒体等として実現されうる。例えば、複数の機器例えば、ホストコンピュータ、インタフェース機器、撮像装置、及びwebアプリケーション等から構成されるシステムに本発明を適用してもよい。また、一つの機器からなる装置に本発明を適用してもよい。図2に、上述の実施例に係る処理を実現しうるコンピュータの構成例を示す。図2においてCPU901は、コンピュータ全体の動作をコントロールする。例えばCPU901は、一次記憶902に格納されたプログラムの実行等を行う。一次記憶902は、主にRAM等のメモリであり、二次記憶903に記憶されたプログラム等を読み込んで格納する。二次記憶903は、例えばハードディスク、CD-ROM等がこれに該当する。本実施形態では、実施形態の処理手順を実現するプログラムは二次記憶903に格納し、プログラム実行時に一次記憶902に読み込んで、CPU901が実行処理を行う。入力デバイス904とはコンピュータに情報を入力するデバイスであって、例えばマウスやキーボード等がこれに該当する。入力デバイス904を用いることにより、ユーザがコンピュータに情報を入力することが可能であってもよい。出力デバイス905とはコンピュータが情報を出力するデバイスであって、モニタ及びプリンタを含む。読込デバイス906は、外部の情報を取得するためのデバイスである。読込デバイス906は、メモリカードリーダ及びネットワークカードを含む。バス908は、上述の各部を接続し、データのやりとりを可能とする。また本発明は、以下のようにしても実現されうる。すなわち、前述した実施例の機能を実現するソフトウェアのプログラムを、システムあるいは装置に直接あるいは遠隔から供給する。そしてそのシステムあるいは装置のコンピュータが、供給されたプログラムコードを読み出して実行すればよい。この場合のプログラムとは、コンピュータが読み取り可能なプログラムであり、以上の実施例について図示したフローチャートに対応している。従って、本発明の処理をコンピュータで実現するために、コンピュータにインストールされるプログラムコード自体も本発明を実現する。つまり、本発明には、本発明の処理を実現するためのコンピュータプログラム自体も含まれる。この場合プログラムは、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ、等の形態をとってもよい。プログラムを供給するための記録媒体としては、以下に示す媒体がある。例えば、フロッピー登録商標ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD-ROM、CD-R、CD-RW、磁気テープ、不揮発性のメモリカード、ROM、DVDDVD-ROM,DVD-Rなどである。プログラムの供給方法としては、以下に示す方法も可能である。すなわち、クライアントコンピュータのブラウザからインターネットのホームページに接続する。そして、本発明のコンピュータプログラムそのもの又は圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードしてもよい。また、本発明のプログラムを構成するプログラムコードが複数のファイルに分割されている場合に、それぞれのファイルを異なるホームページからダウンロードしてもよい。つまり、本発明の処理をコンピュータで実現するためのプログラムファイルをユーザに提供するWWWサーバも、本発明に含まれるものである。また、本発明のプログラムを暗号化し、CD-ROM等の記憶媒体に格納してユーザに配布することもできる。この場合、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせてもよい。すなわちユーザは、この鍵情報を使用することによって暗号化されたプログラムをコンピュータにインストールすることができる。またコンピュータが読み出したプログラムを実行することによって、前述した実施例の機能が実現される。さらにこのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ってもよい。OSの処理によっても、前述した実施例の機能が実現されうる。さらに、記録媒体から読み出されたプログラムは、コンピュータに挿入された機能拡張ボード又はコンピュータに接続された機能拡張ユニットが備えるメモリに書き込まれてもよい。メモリに書き込まれたプログラムが実行されることによっても、前述した実施例の機能が実現されうる。すなわち、このプログラムの指示に基づき、機能拡張ボード又は機能拡張ユニットが備えるCPUなどが実際の処理の一部または全部を行ってもよい。他の実施形態本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェアプログラムをネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ又はCPUやMPU等がプログラムコードを読み出して実行する。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。"