(57)【要約】【課題】２次元ＦＥＣデータを効率的に生成することができるＦＥＣデータ生成方法及びＦＥＣデータ生成装置を提供する。【解決手段】ＦＥＣデータ生成方法は、第１乃至第Ｎの端末装置が要求する２次元ＦＥＣデータの行列の横サイズの最小公倍数Ｌを計算するステップと、横方向に並ぶメディアパケットをＬ個とするＦＥＣデータ計算用行列を用いて、各端末装置がそれぞれ要求する２次元ＦＥＣデータを生成するステップとを有し、ｐを１以上Ｎ以下の整数とし、ｋを１以上Ｌ以下の整数とし、ＴｋをＦＥＣデータ計算用行列の縦方向に並ぶメディアパケットのデータの排他的論理和で計算される縦方向ＦＥＣ用中間データとしたときに、第ｐの端末装置が要求する２次元ＦＥＣデータの第ｑ列の縦方向ＦＥＣデータを、Ｔｋを用いたステップＳＴ１４の式で計算する。【選択図】図６
2010041084.tif 000002
【特許請求の範囲】
【請求項１】
第１乃至第Ｎ（Ｎは２以上の整数）の端末装置がそれぞれ要求する２次元ＦＥＣデータの行列の横サイズの最小公倍数を計算するステップと、
前記最小公倍数を横方向に並ぶメディアパケットの個数とするＦＥＣデータ計算用行列を用いて、前記第１乃至第Ｎの端末装置のそれぞれに、前記第１乃至第Ｎの端末装置がそれぞれ要求する２次元ＦＥＣデータを生成するステップと
を有し、
ｄｉを、シーケンス番号ｉ（ｉ＝１，２，…）のメディアパケットのデータとし、
ｐを、１以上Ｎ以下の整数とし、
Ｌｐを、第ｐの端末装置が要求する２次元ＦＥＣデータの行列の横サイズとし、
Ｌを、前記最小公倍数とし、
ｋ＝１，２，…，Ｌとし、
Ｔｋを、前記ＦＥＣデータ計算用行列の縦方向に並ぶメディアパケットのデータの排他的論理和で計算される第１の縦方向ＦＥＣ用中間データとし、
Ｃ′ｐ，ｑを、次式
【数１】
2010041084.tif 000025
で計算される第２の縦方向ＦＥＣ用中間データとし、
【数２】
2010041084.tif 000026
を、前回同じ列で縦方向ＦＥＣデータを出力したときの前記第２の縦方向ＦＥＣ用中間データＣ′ｐ，ｑに等しい第３の縦方向ＦＥＣ用中間データとしたときに、
前記２次元ＦＥＣデータを生成する前記ステップにおいて、第ｐの端末装置が要求する２次元ＦＥＣデータの第ｑ列の縦方向ＦＥＣデータＣｐ，ｑを、次式
【数３】
2010041084.tif 000027
で計算する
ことを特徴とするＦＥＣデータ生成方法。
【請求項２】
Ｓを、シーケンス番号ｉまでのメディアパケットのデータの排他的論理和で計算される第１の横方向ＦＥＣ用中間データとし、
Ｓ′を、シーケンス番号（ｉ−Ｌｐ）までのメディアパケットのデータの排他的論理和で計算される第２の横方向ＦＥＣ用中間データとしたときに、
前記２次元ＦＥＣデータを生成する前記ステップにおいて、第ｐの端末装置が要求する２次元ＦＥＣデータの横方向ＦＥＣデータＲｐを、シーケンス番号ｉが横サイズＬｐのＪ倍であるときに、前記第１の横方向ＦＥＣ用中間データＳと前記第２の横方向ＦＥＣ用中間データＳ′との排他的論理和によって計算する
ことを特徴とする請求項１に記載のＦＥＣデータ生成方法。
【請求項３】
第１乃至第Ｎ（Ｎは２以上の整数）の端末装置がそれぞれ要求する２次元ＦＥＣデータの行列の横サイズの最小公倍数を計算する手段と、
前記最小公倍数を横方向に並ぶメディアパケットの個数とするＦＥＣデータ計算用行列を用いて、前記第１乃至第Ｎの端末装置のそれぞれに、前記第１乃至第Ｎの端末装置がそれぞれ要求する２次元ＦＥＣデータを生成する手段と
を有し、
ｄｉを、シーケンス番号ｉ（ｉ＝１，２，…）のメディアパケットのデータとし、
ｐを、１以上Ｎ以下の整数とし、
Ｌｐを、第ｐの端末装置が要求する２次元ＦＥＣデータの行列の横サイズとし、
Ｌを、前記最小公倍数とし、
ｋ＝１，２，…，Ｌとし、
Ｔｋを、前記ＦＥＣデータ計算用行列の縦方向に並ぶメディアパケットのデータの排他的論理和で計算される第１の縦方向ＦＥＣ用中間データとし、
Ｃ′ｐ，ｑを、次式
【数４】
2010041084.tif 000028
で計算される第２の縦方向ＦＥＣ用中間データとし、
【数５】
2010041084.tif 000029
を、前回同じ列で縦方向ＦＥＣデータを出力したときの前記第２の縦方向ＦＥＣ用中間データＣ′ｐ，ｑに等しい第３の縦方向ＦＥＣ用中間データとしたときに、
前記２次元ＦＥＣデータを生成する前記手段は、第ｐの端末装置が要求する２次元ＦＥＣデータの第ｑ列の縦方向ＦＥＣデータＣｐ，ｑを、次式
【数６】
2010041084.tif 000030
で計算する
ことを特徴とするＦＥＣデータ生成装置。
【請求項４】
Ｓを、シーケンス番号ｉまでのメディアパケットのデータの排他的論理和で計算される第１の横方向ＦＥＣ用中間データとし、
Ｓ′を、シーケンス番号（ｉ−Ｌｐ）までのメディアパケットのデータの排他的論理和で計算される第２の横方向ＦＥＣ用中間データとしたときに、
前記２次元ＦＥＣデータを生成する前記手段は、第ｐの端末装置が要求する２次元ＦＥＣデータの横方向ＦＥＣデータＲｐを、シーケンス番号ｉが横サイズＬｐのＪ倍であるときに、前記第１の横方向ＦＥＣ用中間データＳと前記第２の横方向ＦＥＣ用中間データＳ′との排他的論理和によって計算する
ことを特徴とする請求項３に記載のＦＥＣデータ生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２次元ＦＥＣ（Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ：前方誤り訂正）データを効率的に生成するＦＥＣデータ生成方法及びＦＥＣデータ生成装置に関するものである。
【背景技術】
【０００２】
図１は、従来の映像配信システムの構成を概略的に示す図である。図１において、映像配信サーバ３００は、デジタル符号化された音声及び映像データをパケットに分割し、ネットワーク４００を介して、複数の端末装置（例えば、端末装置１，２，３，４）に配信する。映像配信サーバ３００からネットワーク４００を介してデータを配信する場合、映像配信サーバ３００から各端末装置までの経路でパケットロスが発生することがある。このパケットロスによって失われたパケットを各端末装置で復元する技術として、ＦＥＣがある。特に、ＲＦＣ２７３３に準拠するパリティＦＥＣは、実現が容易であり、広く普及している。
【０００３】
図２は、従来のＦＥＣデータの生成方法を示す図である。図２には、メディアパケット（図において、シーケンス番号０１，…，１００を囲む矩形で示す。）を、行（横）サイズが１０パケットの行列として扱い、ＦＥＣデータを生成する場合が示されている。この方法では、横方向１０パケットのメディアパケットごとにＦＥＣデータを生成する。生成したＦＥＣデータは、ＦＥＣパケット（図において、Ｈ１，…，Ｈ１０で示す。）としてメディアパケット（シーケンス番号０１，…，１００）とともに映像配信サーバ３００から、端末装置に配信される。また、ＦＥＣがパリティＦＥＣである場合には、ＦＥＣデータは、横方向１０パケットのメディアパケットのデータの排他的論理和から計算される。例えば、メディアパケット（シーケンス番号０１，…，１０）のデータの排他的論理和から第１のＦＥＣデータ（ＦＥＣパケットＨ１）を計算し、メディアパケット（シーケンス番号１１，…，２０）のデータの排他的論理和から第２のＦＥＣデータ（ＦＥＣパケットＨ２）を計算し、以下同様の方法で、ＦＥＣデータ（ＦＥＣパケットＨ３，Ｈ４，…）を計算する。
【０００４】
図３は、従来の２次元ＦＥＣデータの生成方法を示す図である。図３には、メディアパケット（図において、シーケンス番号０１，…，１００を囲む矩形で示す。）を、行（横）及び列（縦）サイズが各１０パケットの行列として扱い、２次元ＦＥＣデータを生成する場合が示されている。２次元ＦＥＣデータは、Ｐｒｏ−ＭＰＥＧフォーラムで規定されている。２次元ＦＥＣデータ生成方法においては、メディアパケットを予め縦サイズと横サイズが決められ行列として扱い、各行ごとにメディアパケットのデータの排他的論理和を計算し、各列ごとにメディアパケットのデータの排他的論理和を計算し、各行の計算結果及び各列の計算結果のそれぞれを横方向ＦＥＣパケット（例えば、Ｈ１，…，Ｈ１０）と縦方向ＦＥＣパケット（例えば、Ｖ１，…，Ｖ１０）として、端末装置に送信される。２次元ＦＥＣデータを使用することによって、端末装置は同じ行のメディアパケットが２個ロスした場合であっても、ロスしたメディアパケットを縦方向ＦＥＣから復元できるため、誤り訂正能力が高い。
【０００５】
一般に、映像配信サーバが同時に同じメディアパケットを複数の端末装置に配信する場合であっても、メディアパケットの適切な行列サイズは端末装置ごとに異なる。そのため、映像配信サーバにおいて、複数の端末装置に対するＦＥＣデータの計算を効率的に行なう方法の提案がある（例えば、特許文献１参照）。このＦＥＣデータの計算方法においては、累積的に送信データの排他的論理和を計算し続け、前回のＦＥＣパケット挿入時点での排他的論理和の計算値と、今回のＦＥＣパケット挿入予定時点での排他的論理和の計算値との排他的論理和を計算することにより、今回挿入すべきＦＥＣデータを生成する。
【０００６】
【特許文献１】特開２００６−６７０７２号公報（要約、図５）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に開示されたＦＥＣデータ生成手法は、１次元ＦＥＣデータを効率的に計算する方法であるため、この方法を用いて、複数の端末装置の２次元ＦＥＣデータを少ない計算量で効率的に計算することはできないという問題がある。特に、端末装置ごとにメディアパケットの行列サイズが異なる場合、又は、縦方向ＦＥＣデータの生成に際して処理対象となるパケットのシーケンス番号が連続でない場合に、２次元ＦＥＣデータを効率的に計算することはできないという問題がある。
【０００８】
そこで、本発明は、上記従来技術の課題を解決するためになされたものであり、その目的は、２次元ＦＥＣデータを効率的に生成することができるＦＥＣデータ生成装置及びＦＥＣデータ生成方法を提供することにある。
【課題を解決するための手段】
【０００９】
本発明のＦＥＣデータ生成方法は、
第１乃至第Ｎ（Ｎは２以上の整数）の端末装置がそれぞれ要求する２次元ＦＥＣデータの行列の横サイズの最小公倍数を計算するステップと、
前記最小公倍数を横方向に並ぶメディアパケットの個数とするＦＥＣデータ計算用行列を用いて、前記第１乃至第Ｎの端末装置のそれぞれに、前記第１乃至第Ｎの端末装置がそれぞれ要求する２次元ＦＥＣデータを生成するステップとを有し、
ｄｉを、シーケンス番号ｉ（ｉ＝１，２，…）のメディアパケットのデータとし、
ｐを、１以上Ｎ以下の整数とし、
Ｌｐを、第ｐの端末装置が要求する２次元ＦＥＣデータの行列の横サイズとし、
Ｌを、前記最小公倍数とし、
ｋ＝１，２，…，Ｌとし、
Ｔｋを、前記ＦＥＣデータ計算用行列の縦方向に並ぶメディアパケットのデータの排他的論理和で計算される第１の縦方向ＦＥＣ用中間データとし、
Ｃ′ｐ，ｑを、次式
【数７】
2010041084.tif 000003
で計算される第２の縦方向ＦＥＣ用中間データとし、
【数８】
2010041084.tif 000004
を、前回同じ列で縦方向ＦＥＣデータを出力したときの前記第２の縦方向ＦＥＣ用中間データＣ′ｐ，ｑに等しい第３の縦方向ＦＥＣ用中間データとしたときに、
前記２次元ＦＥＣデータを生成する前記ステップにおいて、第ｐの端末装置が要求する２次元ＦＥＣデータの第ｑ列の縦方向ＦＥＣデータＣｐ，ｑを、次式
【数９】
2010041084.tif 000005
で計算することを特徴としている。
【発明の効果】
【００１０】
本発明によれば、複数の端末装置が異なる行列サイズの２次元ＦＥＣデータを要求している場合であっても、複数の端末装置がそれぞれ要求する２次元ＦＥＣデータの縦方向ＦＥＣデータの計算量を削減することができ、データ処理の負荷を軽減することができるという効果がある。
【発明を実施するための最良の形態】
【００１１】
図４は、本発明の実施の形態に係るＦＥＣデータ生成装置（すなわち、実施の形態に係るＦＥＣデータ生成方法を実施する装置）３１１を含む映像配信サーバ３１０、及びこの映像配信サーバを含む映像配信システムの構成を概略的に示す図である。図４に示されるように、映像配信システムは、インターネットなどのネットワーク４００を介して通信可能な映像配信サーバ３１０と、ネットワーク４００を介して通信可能な複数の端末装置（図には、４台の端末装置１，２，３，４を示すが、端末装置の数は４台以外であってもよい。）とを有する。映像配信サーバ３１０は、ＦＥＣデータ生成装置３１１と、デジタル符号化された音声及び映像データが格納されるメディアデータ格納部３１２と、ネットワーク４００を経由するデータの送受信を行なうデータ送受信部３１３とを有する。映像配信サーバ３１０は、デジタル符号化された音声及び映像データをパケットに分割し、ネットワーク４００を介して、複数の端末装置に配信する。また、映像配信サーバ３１０は、各端末装置及びメディアパケットが通過するネットワーク４００の特性に適した２次元ＦＥＣデータの行列サイズを各端末装置から受け取る。
【００１２】
図５は、実施の形態に係るＦＥＣデータ生成装置３１１の動作（ＦＥＣデータ生成方法）を示すフローチャート（その１）であり、図６は、実施の形態に係るＦＥＣデータ生成装置３１１の動作（ＦＥＣデータ生成方法）を示すフローチャート（その２）である。また、図７（ａ）及び（ｂ）は、第１の端末装置（以下「端末装置１」と記す。）が要求する行列サイズの２次元ＦＥＣデータの生成方法を説明するための図であり、図８（ａ）及び（ｂ）は、第２の端末装置（以下「端末装置２」と記す。）が要求する行列サイズの２次元ＦＥＣデータの生成方法を説明するための図であり、図９（ａ）及び（ｂ）は、第３の端末装置（以下「端末装置３」と記す。）が要求する行列サイズの２次元ＦＥＣデータの生成方法を説明するための図である。また、図１０は、本発明の実施の形態に係るＦＥＣデータ生成方法を説明するための図であり、図７（ａ）及び（ｂ）、図８（ａ）及び（ｂ）、図９（ａ）及び（ｂ）に示される縦方向ＦＥＣデータ（「縦方向ＦＥＣパケット」とも言う。）と横方向ＦＥＣデータ（「横方向ＦＥＣパケット」とも言う。）とを計算するために用いられる縦方向ＦＥＣ用中間データＴ１，…，Ｔ２０と横方向ＦＥＣ用中間データＳを示す。
【００１３】
ＦＥＣデータ生成装置３１１は、２次元ＦＥＣデータを生成する際に、以下に示す処理を行なう。以下の説明においては、メディアデータ（「メディアパケット」とも言う。）の配信先としてＮ個（Ｎは正の整数）の端末装置（クライアント）１，２，…，Ｎが存在し、端末装置１，２，…，Ｎが要求する２次元ＦＥＣデータの行列の横（行）サイズをそれぞれＬ１，Ｌ２，…，ＬＮとし、端末装置１，２，…，Ｎが要求する２次元ＦＥＣデータの行列の縦（列）サイズをそれぞれＭ１，Ｍ２，…，ＭＮとする。
【００１４】
先ず、図５のステップＳＴ１において、ＦＥＣデータ生成装置３１１は、端末装置１，…，Ｎに供給する横方向ＦＥＣデータ
【数１０】
2010041084.tif 000006
と、端末装置１，…，Ｎに供給する縦方向ＦＥＣデータ
【数１１】
2010041084.tif 000007
とを用意する。
【００１５】
ここで、「Ｒｐ」は、端末装置ｐ（ｐは、１以上Ｎ以下の整数）が要求する２次元ＦＥＣデータである。
【００１６】
また、「Ｃｐ，ｑ」は、端末装置ｐが要求する２次元ＦＥＣデータの第ｑ列（ｑは、１以上Ｌｐ以下の整数）である。また、Ｌｐは、端末装置ｐが要求する２次元ＦＥＣデータの行列の横サイズである。
【００１７】
次に、図５のステップＳＴ２において、ＦＥＣデータ生成装置３１１は、端末装置１，…，Ｎが要求する２次元ＦＥＣデータの行列の横サイズＬ１，Ｌ２，…，ＬＮの最小公倍数Ｌを計算する。
【００１８】
次に、図５のステップＳＴ３において、ＦＥＣデータ生成装置３１１は、端末装置１，…，Ｎの横方向ＦＥＣデータ
【数１２】
2010041084.tif 000008
を計算するために用いる横方向ＦＥＣ用中間データＳ，Ｓ′を初期化して０にする。この横方向ＦＥＣ用中間データＳは、図１０に示されている。
【００１９】
また、ＦＥＣデータ生成装置３１１は、端末装置１，…，Ｎの縦方向ＦＥＣデータ
【数１３】
2010041084.tif 000009
を計算するために用いる第１の縦方向ＦＥＣ用中間データＴ１，Ｔ２，…，ＴＬを初期化して０にする。この第１の縦方向ＦＥＣ用中間データ（Ｔ１，Ｔ２，…，Ｔ２０）は、図１０に示されている。
【００２０】
また、ＦＥＣデータ生成装置３１１は、第２の縦方向ＦＥＣ用中間データ
【数１４】
2010041084.tif 000010
と、第３の縦方向ＦＥＣ用中間データ
【数１５】
2010041084.tif 000011
とを用意し、第２の縦方向ＦＥＣ用中間データと第３の縦方向ＦＥＣ用中間データとを、初期化して０にする。
【００２１】
次に、図５のステップＳＴ４において、ＦＥＣデータ生成装置３１１は、処理中のシーケンス番号を表す変数ｉと処理中の中間データ（すなわち、第１の縦方向ＦＥＣ用中間データＴ１，Ｔ２，…，Ｔｋ，…，ＴＬ）の番号を表す変数ｋとのそれぞれに、１をセットする。
【００２２】
次に、図５のステップＳＴ５において、ＦＥＣデータ生成装置３１１は、メディアデータ格納部３１２に、次の１メディアパケット分のメディアデータｄｉが有るか無いかを判定する。ＦＥＣデータ生成装置３１１は、次の１メディアパケット分のメディアデータが無いと判定したときには、処理を終了する。ＦＥＣデータ生成装置３１１は、次の１メディアパケット分のメディアデータｄｉが有ると判定したときには、処理をステップＳＴ６に進める。
【００２３】
次に、図５のステップＳＴ６において、ＦＥＣデータ生成装置３１１は、メディアデータ格納部３１２から、次の１メディアパケット分のメディアデータｄｉを読み込む。
【００２４】
次に、図５のステップＳＴ７において、ＦＥＣデータ生成装置３１１は、次式（１）及び（２）により、横方向ＦＥＣ用中間データＳ及び第１の縦方向ＦＥＣ用中間データＴｋ（ｋは、１以上であり最小公倍数Ｌ以下である整数）を計算する。
【数１６】
2010041084.tif 000012
式（１）は、横方向ＦＥＣ用中間データＳとメディアデータｄｉとの排他的論理和を、新たな横方向ＦＥＣ用中間データＳとすることを示している。また、式（２）は、第１の縦方向ＦＥＣ用中間データＴｋとメディアデータｄｉとの排他的論理和を、新たな第１の縦方向ＦＥＣ用中間データ用変数Ｔｋとすることを示している。
【００２５】
次に、図５のステップＳＴ８において、ＦＥＣデータ生成装置３１１は、処理中の端末装置番号を表す変数ｐ（ｐは、１以上でありＮ以下である整数）と、２次元ＦＥＣデータの行列における列番号を表す変数ｑとを用意し、変数ｐに１をセットする。
【００２６】
次に、図６のステップＳＴ９において、ＦＥＣデータ生成装置３１１は、次式（３）が成立するか否かを判定する。
ｉ＝０  ｍｏｄＬｐ                                      （３）
ＦＥＣデータ生成装置３１１は、式（３）が成立すると判定したとき、すなわち、メディアパケットのシーケンス番号ｉが端末装置ｐが要求する２次元ＦＥＣデータの行列の横サイズＬｐの整数倍であると判定したときに、処理をステップＳＴ１０に進め、式（３）が成立しないと判定したとき、すなわち、メディアパケットのシーケンス番号ｉが端末装置ｐの２次元ＦＥＣデータの行列の横サイズＬｐの整数倍でないと判定したときに、処理をステップＳＴ１２に進める。
【００２７】
次に、図６のステップＳＴ１０において、ＦＥＣデータ生成装置３１１は、端末装置ｐの横方向ＦＥＣデータＲｐを、以下の式（４）を用いて計算する。ここで、Ｒｐは、端末装置ｐの横方向ＦＥＣデータを示す。
【数１７】
2010041084.tif 000013
端末装置ｐの横方向ＦＥＣデータＲｐは、横方向ＦＥＣ用中間データＳと横方向ＦＥＣ用中間データＳ′との排他的論理和から計算される。横方向ＦＥＣ用中間データＳ′は、ＦＥＣデータ生成装置３１１が前回横方向ＦＥＣデータを出力したときの横方向ＦＥＣ用中間データＳの値がセットされている。なお、１回目の式（４）の演算においては、横方向ＦＥＣ用中間データＳ′は０（図５のステップＳＴ３）である。
【００２８】
次に、式（５）に示すように、横方向ＦＥＣ用中間データＳ′には、式（４）で算出された横方向ＦＥＣ用中間データＳの値がセットされる。
【００２９】
次に、図６のステップＳＴ１１において、ＦＥＣデータ生成装置３１１は、データ送受信部３１３に横方向ＦＥＣデータＲｐを渡し、データ送受信部３１３は、端末装置ｐに横方向ＦＥＣデータＲｐを送信する。
【００３０】
なお、本実施の形態においては、端末装置１（ｐ＝１）に送信される横方向ＦＥＣデータＲｐは、例えば、図７（ａ）及び（ｂ）に示されるＲ１である。また、本実施の形態においては、端末装置２（ｐ＝２）に送信される横方向ＦＥＣデータＲｐは、例えば、図８（ａ）及び（ｂ）に示されるＲ２である。また、本実施の形態においては、端末装置３（ｐ＝３）に送信される横方向ＦＥＣデータＲｐは、例えば、図９（ａ）及び（ｂ）に示されるＲ３である。
【００３１】
次に、図６のステップＳＴ１２において、ＦＥＣデータ生成装置３１１は、次式（６）により変数ｑを計算する。
ｑ←（ｉ  ｍｏｄＬｐＭｐ）−Ｌｐ（Ｍｐ−１）            （６）
ここで、Ｌｐは、端末装置ｐの２次元ＦＥＣデータの行列の横サイズを表し、Ｍｐは、端末装置ｐの２次元ＦＥＣデータの行列の縦サイズを表す。
【００３２】
次に、図６のステップＳＴ１３において、ＦＥＣデータ生成装置３１１は、次式（７）が成立するか否かを判定する。
１≦ｑ≦Ｌｐ                                            （７）
ＦＥＣデータ生成装置３１１は、式（７）が成立すると判定したときには処理をステップＳＴ１４に進め、成立しないと判定したときには処理をステップＳＴ１６に進める。
【００３３】
式（６）と式（７）によって、端末装置ｐが要求する２次元ＦＥＣデータのＬｐ列Ｍｐ行の行列における最後の行のＬｐ個のメディアパケット、すなわち、Ｌｐ列Ｍｐ行の行列における最後の行の第｛Ｌｐ（Ｍｐ−１）＋１｝列のメディアパケットから第｛ＬｐＭｐ｝列のメディアパケットまでについてステップＳＴ１４の処理を行なう。例えば、端末装置１（ｐ＝１）の場合には、図７（ａ）に示されるシーケンス番号９７，…，１００の各メディアパケットを読み込んで処理するとき、及び、図７（ｂ）に示されるシーケンス番号１９７，…，２００の各メディアパケットを読み込んで処理するときに、ステップＳＴ１４の処理を行なう。また、例えば、端末装置２（ｐ＝２）の場合には、図８（ａ）に示されるシーケンス番号９６，…，１００の各メディアパケットを読み込んで処理するとき、及び、図８（ｂ）に示されるシーケンス番号１９６，…，２００の各メディアパケットを読み込んで処理するときに、ステップＳＴ１４の処理を行なう。また、例えば、端末装置３（ｐ＝３）の場合には、図９（ａ）に示されるシーケンス番号９１，…，１００の各メディアパケットを読み込んで処理するとき、及び、図９（ｂ）に示されるシーケンス番号１９１，…，２００の各メディアパケットを読み込んで処理するときに、ステップＳＴ１４の処理を行なう。
【００３４】
次に、図６のステップＳＴ１４において、ＦＥＣデータ生成装置３１１は、端末装置ｐの第ｑ列の第２の縦方向ＦＥＣ用中間データＣ′ｐ，ｑを、次式（８）で計算する。
【数１８】
2010041084.tif 000014
【００３５】
また、ＦＥＣデータ生成装置３１１は、端末装置ｐの第ｑ列の縦方向ＦＥＣデータＣｐ，ｑを、次式（９）で計算する。
【数１９】
2010041084.tif 000015
式（９）では、端末装置ｐの第ｑ列の縦方向ＦＥＣデータＣｐ，ｑを、端末装置ｐの第ｑ列の第２の縦方向ＦＥＣ用中間データ用変数Ｃ′ｐ，ｑと端末装置ｐの第ｑ列の第３の縦方向ＦＥＣ用中間データ用変数Ｃ”ｐ，ｑとの排他的論理和から計算している。
【００３６】
次に、式（１０）に示すように、端末装置ｐの第ｑ列の第３の縦方向ＦＥＣ用中間データＣ”ｐ，ｑには、式（８）で算出された端末装置ｐの第ｑ列の第２の縦方向ＦＥＣ用中間データＣ′ｐ，ｑの値がセットされる。
【数２０】
2010041084.tif 000016
【００３７】
次に、図６のステップＳＴ１５において、ＦＥＣデータ生成装置３１１は、データ送受信部３１３に端末装置ｐの２次元ＦＥＣデータの行列の第ｑ列の縦方向ＦＥＣデータＣｐ，ｑを渡し、データ送受信部３１３は端末装置ｐに縦方向ＦＥＣデータ用変数Ｃｐ，ｑを送信する。
【００３８】
次に、図６のステップＳＴ１６において、ＦＥＣデータ生成装置３１１は、ｐの値を１インクリメントし、図６のステップＳＴ１７において、ＦＥＣデータ生成装置３１１は、ステップＳＴ９からＳＴ１６までの処理をＮ回（端末装置の台数分）繰り返し、Ｎ回の処理が終了したときに、処理をステップＳＴ１８に進める。
【００３９】
次に、図６のステップＳＴ１８において、ＦＥＣデータ生成装置３１１は、次式（１１）及び（１２）の処理を行ない、その後、処理をステップＳＴ５に戻す。
ｉ←ｉ＋１                                              （１１）
ｋ←（ｋ＋１）ｍｏｄＬ                                  （１２）
なお、式（１１）は、シーケンス番号ｉを１インクリメントする処理を示す。また、式（１２）は、ｋを、１≦ｋ≦Ｌの範囲内で１インクリメントする（ｋの値がＬよりも大きくなるときは１に戻す）処理を示す。
【００４０】
次に、映像配信サーバ３１０が、端末装置１，２，３のそれぞれにデータを配信する場合の動作及びそのような動作の利点をより具体的に説明する。
【００４１】
図７（ａ）及び（ｂ）に示されるように、端末装置１（ｐ＝１）は、Ｌｐ＝４、Ｍｐ＝２５の行列サイズ（メディアパケットの行列のサイズ）の２次元ＦＥＣデータを要求しており、図８（ａ）及び（ｂ）に示されるように、端末装置２（ｐ＝２）は、Ｌｐ＝５、Ｍｐ＝２０の行列サイズ（メディアパケットの行列のサイズ）の２次元ＦＥＣデータを要求しており、図９（ａ）及び（ｂ）に示されるように、端末装置３（ｐ＝３）は、Ｌｐ＝１０、Ｍｐ＝１０の行列サイズ（メディアパケットの行列のサイズ）の２次元ＦＥＣデータを要求している。また、これらの図には、メディアパケットはシーケンス番号ｉが１（図では「０１」と表記している。）から２００まで存在する場合を説明する。
【００４２】
このとき、従来のＦＥＣデータ生成方法では、端末装置ごとにＦＥＣデータを計算する必要がある。図７（ａ）及び（ｂ）、図８（ａ）及び（ｂ）、図９（ａ）及び（ｂ）から、各端末装置１，２，３に対する横方向ＦＥＣデータ（横方向ＦＥＣパケット）及び縦方向ＦＥＣデータ（縦方向ＦＥＣパケット）の生成に必要な排他的論理和の計算回数は表１のようになる。
【表１】
2010041084.tif 000017
【００４３】
端末装置１の横方向ＦＥＣデータの計算においては、例えば、図７（ａ）における第１行のシーケンス番号０１，…，０４のメディアデータについて、メディアパケットの各データｄ０１とｄ０２とｄ０３とｄ０４との排他的論理和を行なうことになり、１行につき３回の排他的論理和の計算が必要になる。したがって、表１に示すように、端末装置１の横方向ＦＥＣデータの計算においては、１５０回の排他的論理和の計算が必要になる。同様の考え方により、端末装置２の横方向ＦＥＣデータの計算においては、１６０回の排他的論理和の計算が必要になり、端末装置３の横方向ＦＥＣデータの計算においては、１８０回の排他的論理和の計算が必要になる。横方向ＦＥＣデータの計算においては、合計４９０回の排他的論理和の計算が必要になる。
【００４４】
端末装置１の縦方向ＦＥＣデータの計算においては、例えば、図７（ａ）における第１列のシーケンス番号０１，０５，０９，…，９７のメディアデータについて、メディアパケットの各データｄ０１、ｄ０５、…、ｄ９７との排他的論理和を行なうことになり、１列につき２４回の排他的論理和の計算が必要になる。したがって、表１に示すように、端末装置１の縦方向ＦＥＣデータの計算においては、１９２回の排他的論理和の計算が必要になる。同様の考え方により、端末装置２の縦方向ＦＥＣデータの計算においては、１９０回の排他的論理和の計算が必要になり、端末装置３の縦方向ＦＥＣデータの計算においては、１８０回の排他的論理和の計算が必要になる。縦方向ＦＥＣデータの計算においては、合計５６２回の排他的論理和の計算が必要になる。
【００４５】
次に、本発明の実施の形態に係るＦＥＣデータ生成方法による場合の排他的論理和の計算の回数を調べる。本実施の形態においては、最小公倍数Ｌ＝２０であり、図１０に示されるように及び図５のステップＳＴ７に示されるように、横方向ＦＥＣ用中間データＳと縦方向ＦＥＣ用中間データＴｋ（ｋ＝１，２，…，２０）が計算される。そして、計算された横方向ＦＥＣ用中間データＳと縦方向ＦＥＣ用中間データＴｋ（ｋ＝１，２，…，２０）から、端末装置１の横方向ＦＥＣデータＲ１及び縦方向ＦＥＣデータＣ１，ｑ、端末装置２の横方向ＦＥＣデータＲ２及び縦方向ＦＥＣデータＣ２，ｑ、並びに、端末装置３の横方向ＦＥＣデータＲ３及び縦方向ＦＥＣデータＣ３，ｑが計算される。
【００４６】
図７（ａ）及び（ｂ）、図１０、図６のステップＳＴ１４、及び上記式（８）及び（９）から理解できるように、端末装置１が要求する２次元ＦＥＣデータの縦方向ＦＥＣデータは、次式（１３）から計算され
【数２１】
2010041084.tif 000018
端末装置１が要求する２次元ＦＥＣデータの横方向ＦＥＣデータは、次式（１４）から計算される。
【数２２】
2010041084.tif 000019
【００４７】
また、図８（ａ）及び（ｂ）、図１０、図６のステップＳＴ１４、及び上記式（８）及び（９）から理解できるように、端末装置２が要求する２次元ＦＥＣデータの縦方向ＦＥＣデータは、次式（１４）から計算され
【数２３】
2010041084.tif 000020
端末装置２が要求する２次元ＦＥＣデータの横方向ＦＥＣデータは、次式（１５）から計算される。
【数２４】
2010041084.tif 000021
【００４８】
また、図９（ａ）及び（ｂ）、図１０、図６のステップＳＴ１４、及び上記式（８）及び（９）から理解できるように、端末装置３が要求する２次元ＦＥＣデータの縦方向ＦＥＣデータは、次式（１６）から計算され
【数２５】
2010041084.tif 000022
端末装置３が要求する２次元ＦＥＣデータの横方向ＦＥＣデータは、次式（１７）から計算される。
【数２６】
2010041084.tif 000023
【００４９】
これらの式を比べるとわかるように、端末装置１，２，３のＦＥＣデータの生成にはＴ１，…，Ｔ２０の計算結果を共有しているため、それぞれ１回ずつ計算することで、計算量を削減できることがわかる。本実施の形態に係るＦＥＣデータ生成方法では、図７（ａ）及び（ｂ）、図８（ａ）及び（ｂ）、図９（ａ）及び（ｂ）から、各端末装置に対する横方向ＦＥＣデータ及び縦方向ＦＥＣデータの生成に必要な排他的論理和の計算回数は表２のようになる。
【表２】
2010041084.tif 000024
【００５０】
端末装置１の横方向ＦＥＣデータの計算においては、式（４）による横方向ＦＥＣデータの計算に際して必要な排他的論理和の計算回数は５０回であり、端末装置２の横方向ＦＥＣデータの計算においては、式（４）による横方向ＦＥＣデータの計算に際して必要な排他的論理和の計算回数は４０回であり、端末装置３の横方向ＦＥＣデータの計算においては、式（４）による横方向ＦＥＣデータの計算に際して必要な排他的論理和の計算回数は２０回である。また、式（１）に示されるように、Ｓの計算に必用な排他的論理和の計算回数は１９９回である。したがって、横方向ＦＥＣデータの計算においては、合計３０９回の排他的論理和の計算が必要になる。
【００５１】
また、端末装置１の縦方向ＦＥＣデータの計算においては、式（８）、（９）による縦方向ＦＥＣデータの計算に際して必要な排他的論理和の計算回数は４０回であり、端末装置２の縦方向ＦＥＣデータの計算においては、式（８）、（９）による縦方向ＦＥＣデータの計算に際して必要な排他的論理和の計算回数は４０回であり、端末装置３の縦方向ＦＥＣデータの計算においては、式（８）、（９）による縦方向ＦＥＣデータの計算に際して必要な排他的論理和の計算回数は４０回である。また、式（２）に示されるように、Ｔｋの計算に必用な排他的論理和の計算回数は１８０回である。したがって、縦方向ＦＥＣデータの計算においては、合計３００回の排他的論理和の計算が必要になる。
【００５２】
表１の合計と表２の合計とを比較してわかるように、本実施の形態に係るＦＥＣデータ生成方法によれば、排他的論理和の計算回数を削減することができる。
【００５３】
以上に説明したように、本実施の形態のＦＥＣデータ生成装置及びＦＥＣデータ生成方法によれば、複数の端末装置が異なる行列サイズの２次元ＦＥＣデータを要求している場合であっても、共通の計算をまとめることにより全体の計算量を削減することができ、映像配信サーバ３１０の演算処理の負荷を軽減することができるという効果がある。
【図面の簡単な説明】
【００５４】
【図１】従来の映像配信システムの構成を概略的に示す図である。
【図２】シーケンス番号０１から１００までのメディアパケットからＦＥＣパケットを生成する従来の１次元ＦＥＣデータ生成方法を示す図である。
【図３】シーケンス番号０１から１００までのメディアパケットから横方向ＦＥＣパケット及び縦方向ＦＥＣパケットを生成する従来の２次元ＦＥＣデータ生成方法を示す図である。
【図４】本発明の実施の形態に係るＦＥＣデータ生成装置（すなわち、実施の形態に係るＦＥＣデータ生成方法を実施する装置）を含む映像配信サーバ、及びこの映像配信サーバを含む映像配信システムの構成を概略的に示す図である。
【図５】本発明の実施の形態に係るＦＥＣデータ生成装置の動作（すなわち、ＦＥＣデータ生成方法）を示すフローチャート（その１）である。
【図６】本発明の実施の形態に係るＦＥＣデータ生成装置の動作（すなわち、ＦＥＣデータ生成方法）を示すフローチャート（その２）である。
【図７】（ａ）及び（ｂ）は、端末装置１が要求する行列サイズが２５行４列の２次元ＦＥＣデータの生成方法を説明するための図である。
【図８】（ａ）及び（ｂ）は、端末装置２が要求する行列サイズが２０行５列の２次元ＦＥＣデータの生成方法を説明するための図である。
【図９】（ａ）及び（ｂ）は、端末装置３が要求する行列サイズが１０行１０列の２次元ＦＥＣデータの生成方法を説明するための図である。
【図１０】本発明の実施の形態に係るＦＥＣデータ生成方法を説明するための図であり、図７（ａ）及び（ｂ）、図８（ａ）及び（ｂ）、図９（ａ）及び（ｂ）に示される横方向ＦＥＣデータと縦方向ＦＥＣデータを計算するために用いられる縦方向ＦＥＣ用中間データと横方向ＦＥＣ用中間データを示す。
【符号の説明】
【００５５】
１，２，３，４  端末装置、
３１０  映像配信サーバ、
３１１  ＦＥＣデータ生成装置、
３１２  メディアデータ格納部、
３１３  データ送受信部、
４００  ネットワーク。
【図１】
2010041084.tif 000031
【図２】
2010041084.tif 000032
【図３】
2010041084.tif 000033
【図４】
2010041084.tif 000034
【図５】
2010041084.tif 000035
【図６】
2010041084.tif 000036
【図７】
2010041084.tif 000037
【図８】
2010041084.tif 000038
【図９】
2010041084.tif 000039
【図１０】
2010041084.tif 000040