JP2010041084A - Method and device for generating fec data - Google Patents
Method and device for generating fec data Download PDFInfo
- Publication number
- JP2010041084A JP2010041084A JP2008198262A JP2008198262A JP2010041084A JP 2010041084 A JP2010041084 A JP 2010041084A JP 2008198262 A JP2008198262 A JP 2008198262A JP 2008198262 A JP2008198262 A JP 2008198262A JP 2010041084 A JP2010041084 A JP 2010041084A
- Authority
- JP
- Japan
- Prior art keywords
- fec
- data
- fec data
- vertical
- dimensional
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Description
本発明は、2次元FEC(Forward Error Correction:前方誤り訂正)データを効率的に生成するFECデータ生成方法及びFECデータ生成装置に関するものである。 The present invention relates to an FEC data generation method and an FEC data generation apparatus that efficiently generate two-dimensional FEC (Forward Error Correction) data.
図1は、従来の映像配信システムの構成を概略的に示す図である。図1において、映像配信サーバ300は、デジタル符号化された音声及び映像データをパケットに分割し、ネットワーク400を介して、複数の端末装置(例えば、端末装置1,2,3,4)に配信する。映像配信サーバ300からネットワーク400を介してデータを配信する場合、映像配信サーバ300から各端末装置までの経路でパケットロスが発生することがある。このパケットロスによって失われたパケットを各端末装置で復元する技術として、FECがある。特に、RFC2733に準拠するパリティFECは、実現が容易であり、広く普及している。
FIG. 1 is a diagram schematically showing a configuration of a conventional video distribution system. In FIG. 1, a
図2は、従来のFECデータの生成方法を示す図である。図2には、メディアパケット(図において、シーケンス番号01,…,100を囲む矩形で示す。)を、行(横)サイズが10パケットの行列として扱い、FECデータを生成する場合が示されている。この方法では、横方向10パケットのメディアパケットごとにFECデータを生成する。生成したFECデータは、FECパケット(図において、H1,…,H10で示す。)としてメディアパケット(シーケンス番号01,…,100)とともに映像配信サーバ300から、端末装置に配信される。また、FECがパリティFECである場合には、FECデータは、横方向10パケットのメディアパケットのデータの排他的論理和から計算される。例えば、メディアパケット(シーケンス番号01,…,10)のデータの排他的論理和から第1のFECデータ(FECパケットH1)を計算し、メディアパケット(シーケンス番号11,…,20)のデータの排他的論理和から第2のFECデータ(FECパケットH2)を計算し、以下同様の方法で、FECデータ(FECパケットH3,H4,…)を計算する。
FIG. 2 is a diagram illustrating a conventional method for generating FEC data. FIG. 2 shows a case where a media packet (indicated by a rectangle surrounding
図3は、従来の2次元FECデータの生成方法を示す図である。図3には、メディアパケット(図において、シーケンス番号01,…,100を囲む矩形で示す。)を、行(横)及び列(縦)サイズが各10パケットの行列として扱い、2次元FECデータを生成する場合が示されている。2次元FECデータは、Pro−MPEGフォーラムで規定されている。2次元FECデータ生成方法においては、メディアパケットを予め縦サイズと横サイズが決められ行列として扱い、各行ごとにメディアパケットのデータの排他的論理和を計算し、各列ごとにメディアパケットのデータの排他的論理和を計算し、各行の計算結果及び各列の計算結果のそれぞれを横方向FECパケット(例えば、H1,…,H10)と縦方向FECパケット(例えば、V1,…,V10)として、端末装置に送信される。2次元FECデータを使用することによって、端末装置は同じ行のメディアパケットが2個ロスした場合であっても、ロスしたメディアパケットを縦方向FECから復元できるため、誤り訂正能力が高い。
FIG. 3 is a diagram illustrating a conventional method for generating two-dimensional FEC data. In FIG. 3, a media packet (indicated by a rectangle surrounding
一般に、映像配信サーバが同時に同じメディアパケットを複数の端末装置に配信する場合であっても、メディアパケットの適切な行列サイズは端末装置ごとに異なる。そのため、映像配信サーバにおいて、複数の端末装置に対するFECデータの計算を効率的に行なう方法の提案がある(例えば、特許文献1参照)。このFECデータの計算方法においては、累積的に送信データの排他的論理和を計算し続け、前回のFECパケット挿入時点での排他的論理和の計算値と、今回のFECパケット挿入予定時点での排他的論理和の計算値との排他的論理和を計算することにより、今回挿入すべきFECデータを生成する。 In general, even when the video distribution server simultaneously distributes the same media packet to a plurality of terminal devices, the appropriate matrix size of the media packets differs for each terminal device. Therefore, there is a proposal of a method for efficiently calculating FEC data for a plurality of terminal devices in the video distribution server (see, for example, Patent Document 1). In this FEC data calculation method, the exclusive OR of the transmission data is continuously calculated, and the calculated value of the exclusive OR at the previous FEC packet insertion time and the current FEC packet insertion scheduled time are calculated. The FEC data to be inserted this time is generated by calculating the exclusive OR with the calculated value of the exclusive OR.
しかしながら、特許文献1に開示されたFECデータ生成手法は、1次元FECデータを効率的に計算する方法であるため、この方法を用いて、複数の端末装置の2次元FECデータを少ない計算量で効率的に計算することはできないという問題がある。特に、端末装置ごとにメディアパケットの行列サイズが異なる場合、又は、縦方向FECデータの生成に際して処理対象となるパケットのシーケンス番号が連続でない場合に、2次元FECデータを効率的に計算することはできないという問題がある。
However, since the FEC data generation method disclosed in
そこで、本発明は、上記従来技術の課題を解決するためになされたものであり、その目的は、2次元FECデータを効率的に生成することができるFECデータ生成装置及びFECデータ生成方法を提供することにある。 Accordingly, the present invention has been made to solve the above-described problems of the prior art, and an object thereof is to provide an FEC data generation apparatus and an FEC data generation method capable of efficiently generating two-dimensional FEC data. There is to do.
本発明のFECデータ生成方法は、
第1乃至第N(Nは2以上の整数)の端末装置がそれぞれ要求する2次元FECデータの行列の横サイズの最小公倍数を計算するステップと、
前記最小公倍数を横方向に並ぶメディアパケットの個数とするFECデータ計算用行列を用いて、前記第1乃至第Nの端末装置のそれぞれに、前記第1乃至第Nの端末装置がそれぞれ要求する2次元FECデータを生成するステップとを有し、
diを、シーケンス番号i(i=1,2,…)のメディアパケットのデータとし、
pを、1以上N以下の整数とし、
Lpを、第pの端末装置が要求する2次元FECデータの行列の横サイズとし、
Lを、前記最小公倍数とし、
k=1,2,…,Lとし、
Tkを、前記FECデータ計算用行列の縦方向に並ぶメディアパケットのデータの排他的論理和で計算される第1の縦方向FEC用中間データとし、
C′p,qを、次式
前記2次元FECデータを生成する前記ステップにおいて、第pの端末装置が要求する2次元FECデータの第q列の縦方向FECデータCp,qを、次式
Calculating a least common multiple of a horizontal size of a matrix of two-dimensional FEC data respectively requested by first to N-th terminal devices (N is an integer of 2 or more);
Each of the first to Nth terminal devices requests each of the first to Nth terminal devices using an FEC data calculation matrix having the least common multiple as the number of media packets arranged in the horizontal direction. Generating dimensional FEC data;
Let d i be the data of the media packet with sequence number i (i = 1, 2,...)
p is an integer of 1 to N,
Let L p be the horizontal size of the matrix of two-dimensional FEC data required by the p-th terminal device,
L is the least common multiple,
k = 1, 2,..., L,
T k is the first vertical FEC intermediate data calculated by exclusive OR of media packet data arranged in the vertical direction of the FEC data calculation matrix,
C ′ p, q is expressed as
In the step of generating the two-dimensional FEC data, the vertical FEC data C p, q of the q-th column of the two-dimensional FEC data requested by the p-th terminal device is expressed by the following equation:
本発明によれば、複数の端末装置が異なる行列サイズの2次元FECデータを要求している場合であっても、複数の端末装置がそれぞれ要求する2次元FECデータの縦方向FECデータの計算量を削減することができ、データ処理の負荷を軽減することができるという効果がある。 According to the present invention, even when a plurality of terminal devices request two-dimensional FEC data having different matrix sizes, the amount of calculation of the vertical FEC data of the two-dimensional FEC data requested by each of the plurality of terminal devices. Can be reduced, and the data processing load can be reduced.
図4は、本発明の実施の形態に係るFECデータ生成装置(すなわち、実施の形態に係るFECデータ生成方法を実施する装置)311を含む映像配信サーバ310、及びこの映像配信サーバを含む映像配信システムの構成を概略的に示す図である。図4に示されるように、映像配信システムは、インターネットなどのネットワーク400を介して通信可能な映像配信サーバ310と、ネットワーク400を介して通信可能な複数の端末装置(図には、4台の端末装置1,2,3,4を示すが、端末装置の数は4台以外であってもよい。)とを有する。映像配信サーバ310は、FECデータ生成装置311と、デジタル符号化された音声及び映像データが格納されるメディアデータ格納部312と、ネットワーク400を経由するデータの送受信を行なうデータ送受信部313とを有する。映像配信サーバ310は、デジタル符号化された音声及び映像データをパケットに分割し、ネットワーク400を介して、複数の端末装置に配信する。また、映像配信サーバ310は、各端末装置及びメディアパケットが通過するネットワーク400の特性に適した2次元FECデータの行列サイズを各端末装置から受け取る。
FIG. 4 shows a
図5は、実施の形態に係るFECデータ生成装置311の動作(FECデータ生成方法)を示すフローチャート(その1)であり、図6は、実施の形態に係るFECデータ生成装置311の動作(FECデータ生成方法)を示すフローチャート(その2)である。また、図7(a)及び(b)は、第1の端末装置(以下「端末装置1」と記す。)が要求する行列サイズの2次元FECデータの生成方法を説明するための図であり、図8(a)及び(b)は、第2の端末装置(以下「端末装置2」と記す。)が要求する行列サイズの2次元FECデータの生成方法を説明するための図であり、図9(a)及び(b)は、第3の端末装置(以下「端末装置3」と記す。)が要求する行列サイズの2次元FECデータの生成方法を説明するための図である。また、図10は、本発明の実施の形態に係るFECデータ生成方法を説明するための図であり、図7(a)及び(b)、図8(a)及び(b)、図9(a)及び(b)に示される縦方向FECデータ(「縦方向FECパケット」とも言う。)と横方向FECデータ(「横方向FECパケット」とも言う。)とを計算するために用いられる縦方向FEC用中間データT1,…,T20と横方向FEC用中間データSを示す。
FIG. 5 is a flowchart (part 1) illustrating an operation (FEC data generation method) of the FEC
FECデータ生成装置311は、2次元FECデータを生成する際に、以下に示す処理を行なう。以下の説明においては、メディアデータ(「メディアパケット」とも言う。)の配信先としてN個(Nは正の整数)の端末装置(クライアント)1,2,…,Nが存在し、端末装置1,2,…,Nが要求する2次元FECデータの行列の横(行)サイズをそれぞれL1,L2,…,LNとし、端末装置1,2,…,Nが要求する2次元FECデータの行列の縦(列)サイズをそれぞれM1,M2,…,MNとする。
The FEC
先ず、図5のステップST1において、FECデータ生成装置311は、端末装置1,…,Nに供給する横方向FECデータ
ここで、「Rp」は、端末装置p(pは、1以上N以下の整数)が要求する2次元FECデータである。 Here, “R p ” is two-dimensional FEC data requested by the terminal device p (p is an integer of 1 to N).
また、「Cp,q」は、端末装置pが要求する2次元FECデータの第q列(qは、1以上Lp以下の整数)である。また、Lpは、端末装置pが要求する2次元FECデータの行列の横サイズである。 “C p, q ” is the q-th column of the two-dimensional FEC data requested by the terminal device p (q is an integer of 1 to L p ). L p is the horizontal size of the matrix of the two-dimensional FEC data requested by the terminal device p.
次に、図5のステップST2において、FECデータ生成装置311は、端末装置1,…,Nが要求する2次元FECデータの行列の横サイズL1,L2,…,LNの最小公倍数Lを計算する。
Next, in step ST2 of FIG. 5, the FEC
次に、図5のステップST3において、FECデータ生成装置311は、端末装置1,…,Nの横方向FECデータ
また、FECデータ生成装置311は、端末装置1,…,Nの縦方向FECデータ
また、FECデータ生成装置311は、第2の縦方向FEC用中間データ
次に、図5のステップST4において、FECデータ生成装置311は、処理中のシーケンス番号を表す変数iと処理中の中間データ(すなわち、第1の縦方向FEC用中間データT1,T2,…,Tk,…,TL)の番号を表す変数kとのそれぞれに、1をセットする。
Next, in step ST4 of FIG. 5, the FEC
次に、図5のステップST5において、FECデータ生成装置311は、メディアデータ格納部312に、次の1メディアパケット分のメディアデータdiが有るか無いかを判定する。FECデータ生成装置311は、次の1メディアパケット分のメディアデータが無いと判定したときには、処理を終了する。FECデータ生成装置311は、次の1メディアパケット分のメディアデータdiが有ると判定したときには、処理をステップST6に進める。
Next, in step ST5 of FIG. 5, FEC
次に、図5のステップST6において、FECデータ生成装置311は、メディアデータ格納部312から、次の1メディアパケット分のメディアデータdiを読み込む。
Next, in step ST <b> 6 of FIG. 5, the FEC
次に、図5のステップST7において、FECデータ生成装置311は、次式(1)及び(2)により、横方向FEC用中間データS及び第1の縦方向FEC用中間データTk(kは、1以上であり最小公倍数L以下である整数)を計算する。
次に、図5のステップST8において、FECデータ生成装置311は、処理中の端末装置番号を表す変数p(pは、1以上でありN以下である整数)と、2次元FECデータの行列における列番号を表す変数qとを用意し、変数pに1をセットする。
Next, in step ST8 of FIG. 5, the FEC
次に、図6のステップST9において、FECデータ生成装置311は、次式(3)が成立するか否かを判定する。
i=0 modLp (3)
FECデータ生成装置311は、式(3)が成立すると判定したとき、すなわち、メディアパケットのシーケンス番号iが端末装置pが要求する2次元FECデータの行列の横サイズLpの整数倍であると判定したときに、処理をステップST10に進め、式(3)が成立しないと判定したとき、すなわち、メディアパケットのシーケンス番号iが端末装置pの2次元FECデータの行列の横サイズLpの整数倍でないと判定したときに、処理をステップST12に進める。
Next, in step ST9 of FIG. 6, the FEC
i = 0 modL p (3)
When the FEC
次に、図6のステップST10において、FECデータ生成装置311は、端末装置pの横方向FECデータRpを、以下の式(4)を用いて計算する。ここで、Rpは、端末装置pの横方向FECデータを示す。
次に、式(5)に示すように、横方向FEC用中間データS′には、式(4)で算出された横方向FEC用中間データSの値がセットされる。 Next, as shown in the equation (5), the value of the horizontal FEC intermediate data S calculated by the equation (4) is set in the horizontal FEC intermediate data S ′.
次に、図6のステップST11において、FECデータ生成装置311は、データ送受信部313に横方向FECデータRpを渡し、データ送受信部313は、端末装置pに横方向FECデータRpを送信する。
Next, in step ST11 of FIG. 6, the FEC
なお、本実施の形態においては、端末装置1(p=1)に送信される横方向FECデータRpは、例えば、図7(a)及び(b)に示されるR1である。また、本実施の形態においては、端末装置2(p=2)に送信される横方向FECデータRpは、例えば、図8(a)及び(b)に示されるR2である。また、本実施の形態においては、端末装置3(p=3)に送信される横方向FECデータRpは、例えば、図9(a)及び(b)に示されるR3である。 In the present embodiment, the lateral FEC data R p transmitted to the terminal device 1 (p = 1) is, for example, R 1 shown in FIGS. 7A and 7B. In the present embodiment, the lateral FEC data R p transmitted to the terminal device 2 (p = 2) is, for example, R 2 shown in FIGS. 8A and 8B. Further, in this embodiment, lateral FEC data R p to be transmitted to the terminal device 3 (p = 3) is, for example, R 3 shown in FIG. 9 (a) and (b).
次に、図6のステップST12において、FECデータ生成装置311は、次式(6)により変数qを計算する。
q←(i modLpMp)−Lp(Mp−1) (6)
ここで、Lpは、端末装置pの2次元FECデータの行列の横サイズを表し、Mpは、端末装置pの2次元FECデータの行列の縦サイズを表す。
Next, in step ST12 of FIG. 6, the FEC
q ← (i mod L p M p ) −L p (M p −1) (6)
Here, L p represents the horizontal size of the matrix of the two-dimensional FEC data of the terminal device p, and M p represents the vertical size of the matrix of the two-dimensional FEC data of the terminal device p.
次に、図6のステップST13において、FECデータ生成装置311は、次式(7)が成立するか否かを判定する。
1≦q≦Lp (7)
FECデータ生成装置311は、式(7)が成立すると判定したときには処理をステップST14に進め、成立しないと判定したときには処理をステップST16に進める。
Next, in step ST13 of FIG. 6, the FEC
1 ≦ q ≦ L p (7)
The FEC
式(6)と式(7)によって、端末装置pが要求する2次元FECデータのLp列Mp行の行列における最後の行のLp個のメディアパケット、すなわち、Lp列Mp行の行列における最後の行の第{Lp(Mp−1)+1}列のメディアパケットから第{LpMp}列のメディアパケットまでについてステップST14の処理を行なう。例えば、端末装置1(p=1)の場合には、図7(a)に示されるシーケンス番号97,…,100の各メディアパケットを読み込んで処理するとき、及び、図7(b)に示されるシーケンス番号197,…,200の各メディアパケットを読み込んで処理するときに、ステップST14の処理を行なう。また、例えば、端末装置2(p=2)の場合には、図8(a)に示されるシーケンス番号96,…,100の各メディアパケットを読み込んで処理するとき、及び、図8(b)に示されるシーケンス番号196,…,200の各メディアパケットを読み込んで処理するときに、ステップST14の処理を行なう。また、例えば、端末装置3(p=3)の場合には、図9(a)に示されるシーケンス番号91,…,100の各メディアパケットを読み込んで処理するとき、及び、図9(b)に示されるシーケンス番号191,…,200の各メディアパケットを読み込んで処理するときに、ステップST14の処理を行なう。
According to Expression (6) and Expression (7), L p media packets in the last row in the matrix of L p columns M p rows of the two-dimensional FEC data requested by the terminal device p, that is, L p columns M p rows The process of step ST14 is performed from the {L p (M p −1) +1} th column media packet to the {L p M p } column media packet in the last row in the matrix. For example, in the case of the terminal device 1 (p = 1), when each media packet of
次に、図6のステップST14において、FECデータ生成装置311は、端末装置pの第q列の第2の縦方向FEC用中間データC′p,qを、次式(8)で計算する。
また、FECデータ生成装置311は、端末装置pの第q列の縦方向FECデータCp,qを、次式(9)で計算する。
次に、式(10)に示すように、端末装置pの第q列の第3の縦方向FEC用中間データC”p,qには、式(8)で算出された端末装置pの第q列の第2の縦方向FEC用中間データC′p,qの値がセットされる。
次に、図6のステップST15において、FECデータ生成装置311は、データ送受信部313に端末装置pの2次元FECデータの行列の第q列の縦方向FECデータCp,qを渡し、データ送受信部313は端末装置pに縦方向FECデータ用変数Cp,qを送信する。
Next, in step ST15 in FIG. 6, FEC
次に、図6のステップST16において、FECデータ生成装置311は、pの値を1インクリメントし、図6のステップST17において、FECデータ生成装置311は、ステップST9からST16までの処理をN回(端末装置の台数分)繰り返し、N回の処理が終了したときに、処理をステップST18に進める。
Next, in step ST16 of FIG. 6, the FEC
次に、図6のステップST18において、FECデータ生成装置311は、次式(11)及び(12)の処理を行ない、その後、処理をステップST5に戻す。
i←i+1 (11)
k←(k+1)modL (12)
なお、式(11)は、シーケンス番号iを1インクリメントする処理を示す。また、式(12)は、kを、1≦k≦Lの範囲内で1インクリメントする(kの値がLよりも大きくなるときは1に戻す)処理を示す。
Next, in step ST18 of FIG. 6, the FEC
i ← i + 1 (11)
k ← (k + 1) modL (12)
Equation (11) represents a process of incrementing the sequence number i by 1. Expression (12) represents a process of incrementing k by 1 within a range of 1 ≦ k ≦ L (returns to 1 when the value of k becomes larger than L).
次に、映像配信サーバ310が、端末装置1,2,3のそれぞれにデータを配信する場合の動作及びそのような動作の利点をより具体的に説明する。
Next, the operation when the
図7(a)及び(b)に示されるように、端末装置1(p=1)は、Lp=4、Mp=25の行列サイズ(メディアパケットの行列のサイズ)の2次元FECデータを要求しており、図8(a)及び(b)に示されるように、端末装置2(p=2)は、Lp=5、Mp=20の行列サイズ(メディアパケットの行列のサイズ)の2次元FECデータを要求しており、図9(a)及び(b)に示されるように、端末装置3(p=3)は、Lp=10、Mp=10の行列サイズ(メディアパケットの行列のサイズ)の2次元FECデータを要求している。また、これらの図には、メディアパケットはシーケンス番号iが1(図では「01」と表記している。)から200まで存在する場合を説明する。 As shown in FIGS. 7A and 7B, the terminal apparatus 1 (p = 1) requests two-dimensional FEC data having a matrix size (media packet matrix size) of Lp = 4 and Mp = 25. As shown in FIGS. 8A and 8B, the terminal device 2 (p = 2) has a two-dimensional matrix size (media packet matrix size) of Lp = 5 and Mp = 20. FEC data is requested, and as shown in FIGS. 9A and 9B, the terminal device 3 (p = 3) has a matrix size of Lp = 10 and Mp = 10 (the size of the media packet matrix). ) Two-dimensional FEC data. Further, in these drawings, a case where the media packet has a sequence number i from 1 (indicated as “01” in the figure) to 200 will be described.
このとき、従来のFECデータ生成方法では、端末装置ごとにFECデータを計算する必要がある。図7(a)及び(b)、図8(a)及び(b)、図9(a)及び(b)から、各端末装置1,2,3に対する横方向FECデータ(横方向FECパケット)及び縦方向FECデータ(縦方向FECパケット)の生成に必要な排他的論理和の計算回数は表1のようになる。
端末装置1の横方向FECデータの計算においては、例えば、図7(a)における第1行のシーケンス番号01,…,04のメディアデータについて、メディアパケットの各データd01とd02とd03とd04との排他的論理和を行なうことになり、1行につき3回の排他的論理和の計算が必要になる。したがって、表1に示すように、端末装置1の横方向FECデータの計算においては、150回の排他的論理和の計算が必要になる。同様の考え方により、端末装置2の横方向FECデータの計算においては、160回の排他的論理和の計算が必要になり、端末装置3の横方向FECデータの計算においては、180回の排他的論理和の計算が必要になる。横方向FECデータの計算においては、合計490回の排他的論理和の計算が必要になる。
In the calculation of the lateral FEC data of the
端末装置1の縦方向FECデータの計算においては、例えば、図7(a)における第1列のシーケンス番号01,05,09,…,97のメディアデータについて、メディアパケットの各データd01、d05、…、d97との排他的論理和を行なうことになり、1列につき24回の排他的論理和の計算が必要になる。したがって、表1に示すように、端末装置1の縦方向FECデータの計算においては、192回の排他的論理和の計算が必要になる。同様の考え方により、端末装置2の縦方向FECデータの計算においては、190回の排他的論理和の計算が必要になり、端末装置3の縦方向FECデータの計算においては、180回の排他的論理和の計算が必要になる。縦方向FECデータの計算においては、合計562回の排他的論理和の計算が必要になる。
In the calculation of the longitudinal FEC data of the
次に、本発明の実施の形態に係るFECデータ生成方法による場合の排他的論理和の計算の回数を調べる。本実施の形態においては、最小公倍数L=20であり、図10に示されるように及び図5のステップST7に示されるように、横方向FEC用中間データSと縦方向FEC用中間データTk(k=1,2,…,20)が計算される。そして、計算された横方向FEC用中間データSと縦方向FEC用中間データTk(k=1,2,…,20)から、端末装置1の横方向FECデータR1及び縦方向FECデータC1,q、端末装置2の横方向FECデータR2及び縦方向FECデータC2,q、並びに、端末装置3の横方向FECデータR3及び縦方向FECデータC3,qが計算される。
Next, the number of exclusive OR calculations in the case of the FEC data generation method according to the embodiment of the present invention is examined. In the present embodiment, the least common multiple L = 20, and as shown in FIG. 10 and step ST7 of FIG. 5, the horizontal FEC intermediate data S and the vertical FEC intermediate data T k. (K = 1, 2,..., 20) is calculated. Then, from the calculated horizontal FEC intermediate data S and vertical FEC intermediate data T k (k = 1, 2,..., 20), the horizontal FEC data R 1 and the vertical FEC data C of the
図7(a)及び(b)、図10、図6のステップST14、及び上記式(8)及び(9)から理解できるように、端末装置1が要求する2次元FECデータの縦方向FECデータは、次式(13)から計算され
また、図8(a)及び(b)、図10、図6のステップST14、及び上記式(8)及び(9)から理解できるように、端末装置2が要求する2次元FECデータの縦方向FECデータは、次式(14)から計算され
また、図9(a)及び(b)、図10、図6のステップST14、及び上記式(8)及び(9)から理解できるように、端末装置3が要求する2次元FECデータの縦方向FECデータは、次式(16)から計算され
これらの式を比べるとわかるように、端末装置1,2,3のFECデータの生成にはT1,…,T20の計算結果を共有しているため、それぞれ1回ずつ計算することで、計算量を削減できることがわかる。本実施の形態に係るFECデータ生成方法では、図7(a)及び(b)、図8(a)及び(b)、図9(a)及び(b)から、各端末装置に対する横方向FECデータ及び縦方向FECデータの生成に必要な排他的論理和の計算回数は表2のようになる。
端末装置1の横方向FECデータの計算においては、式(4)による横方向FECデータの計算に際して必要な排他的論理和の計算回数は50回であり、端末装置2の横方向FECデータの計算においては、式(4)による横方向FECデータの計算に際して必要な排他的論理和の計算回数は40回であり、端末装置3の横方向FECデータの計算においては、式(4)による横方向FECデータの計算に際して必要な排他的論理和の計算回数は20回である。また、式(1)に示されるように、Sの計算に必用な排他的論理和の計算回数は199回である。したがって、横方向FECデータの計算においては、合計309回の排他的論理和の計算が必要になる。
In the calculation of the lateral FEC data of the
また、端末装置1の縦方向FECデータの計算においては、式(8)、(9)による縦方向FECデータの計算に際して必要な排他的論理和の計算回数は40回であり、端末装置2の縦方向FECデータの計算においては、式(8)、(9)による縦方向FECデータの計算に際して必要な排他的論理和の計算回数は40回であり、端末装置3の縦方向FECデータの計算においては、式(8)、(9)による縦方向FECデータの計算に際して必要な排他的論理和の計算回数は40回である。また、式(2)に示されるように、Tkの計算に必用な排他的論理和の計算回数は180回である。したがって、縦方向FECデータの計算においては、合計300回の排他的論理和の計算が必要になる。
Further, in the calculation of the vertical FEC data of the
表1の合計と表2の合計とを比較してわかるように、本実施の形態に係るFECデータ生成方法によれば、排他的論理和の計算回数を削減することができる。 As can be seen by comparing the total of Table 1 and the total of Table 2, the FEC data generation method according to the present embodiment can reduce the number of exclusive OR calculations.
以上に説明したように、本実施の形態のFECデータ生成装置及びFECデータ生成方法によれば、複数の端末装置が異なる行列サイズの2次元FECデータを要求している場合であっても、共通の計算をまとめることにより全体の計算量を削減することができ、映像配信サーバ310の演算処理の負荷を軽減することができるという効果がある。
As described above, according to the FEC data generation device and the FEC data generation method of the present embodiment, even when a plurality of terminal devices request two-dimensional FEC data having different matrix sizes, By summing up these calculations, it is possible to reduce the overall calculation amount and to reduce the processing load on the
1,2,3,4 端末装置、
310 映像配信サーバ、
311 FECデータ生成装置、
312 メディアデータ格納部、
313 データ送受信部、
400 ネットワーク。
1, 2, 3, 4 terminal devices,
310 video distribution server,
311 FEC data generator,
312 Media data storage unit,
313 data transmitter / receiver,
400 network.
Claims (4)
前記最小公倍数を横方向に並ぶメディアパケットの個数とするFECデータ計算用行列を用いて、前記第1乃至第Nの端末装置のそれぞれに、前記第1乃至第Nの端末装置がそれぞれ要求する2次元FECデータを生成するステップと
を有し、
diを、シーケンス番号i(i=1,2,…)のメディアパケットのデータとし、
pを、1以上N以下の整数とし、
Lpを、第pの端末装置が要求する2次元FECデータの行列の横サイズとし、
Lを、前記最小公倍数とし、
k=1,2,…,Lとし、
Tkを、前記FECデータ計算用行列の縦方向に並ぶメディアパケットのデータの排他的論理和で計算される第1の縦方向FEC用中間データとし、
C′p,qを、次式
前記2次元FECデータを生成する前記ステップにおいて、第pの端末装置が要求する2次元FECデータの第q列の縦方向FECデータCp,qを、次式
ことを特徴とするFECデータ生成方法。 Calculating a least common multiple of a horizontal size of a matrix of two-dimensional FEC data respectively requested by first to N-th terminal devices (N is an integer of 2 or more);
Each of the first to Nth terminal devices requests each of the first to Nth terminal devices using an FEC data calculation matrix having the least common multiple as the number of media packets arranged in the horizontal direction. Generating dimensional FEC data; and
Let d i be the data of the media packet with sequence number i (i = 1, 2,...)
p is an integer of 1 to N,
Let L p be the horizontal size of the matrix of two-dimensional FEC data required by the p-th terminal device,
L is the least common multiple,
k = 1, 2,..., L,
T k is the first vertical FEC intermediate data calculated by exclusive OR of media packet data arranged in the vertical direction of the FEC data calculation matrix,
C ′ p, q is expressed as
In the step of generating the two-dimensional FEC data, the vertical FEC data C p, q of the q-th column of the two-dimensional FEC data requested by the p-th terminal device is expressed by the following equation:
S′を、シーケンス番号(i−Lp)までのメディアパケットのデータの排他的論理和で計算される第2の横方向FEC用中間データとしたときに、
前記2次元FECデータを生成する前記ステップにおいて、第pの端末装置が要求する2次元FECデータの横方向FECデータRpを、シーケンス番号iが横サイズLpのJ倍であるときに、前記第1の横方向FEC用中間データSと前記第2の横方向FEC用中間データS′との排他的論理和によって計算する
ことを特徴とする請求項1に記載のFECデータ生成方法。 S is the first intermediate FEC intermediate data calculated by exclusive OR of media packet data up to sequence number i,
When S ′ is the second intermediate data for FEC in the horizontal direction calculated by exclusive OR of media packet data up to the sequence number (i−L p ),
In the step of generating the 2 dimensional FEC data, the lateral FEC data R p of the two-dimensional FEC data first p terminal device requests, when the sequence number i is J times the lateral size L p, wherein 2. The FEC data generation method according to claim 1, wherein calculation is performed by an exclusive OR of the first horizontal FEC intermediate data S and the second horizontal FEC intermediate data S ′.
前記最小公倍数を横方向に並ぶメディアパケットの個数とするFECデータ計算用行列を用いて、前記第1乃至第Nの端末装置のそれぞれに、前記第1乃至第Nの端末装置がそれぞれ要求する2次元FECデータを生成する手段と
を有し、
diを、シーケンス番号i(i=1,2,…)のメディアパケットのデータとし、
pを、1以上N以下の整数とし、
Lpを、第pの端末装置が要求する2次元FECデータの行列の横サイズとし、
Lを、前記最小公倍数とし、
k=1,2,…,Lとし、
Tkを、前記FECデータ計算用行列の縦方向に並ぶメディアパケットのデータの排他的論理和で計算される第1の縦方向FEC用中間データとし、
C′p,qを、次式
前記2次元FECデータを生成する前記手段は、第pの端末装置が要求する2次元FECデータの第q列の縦方向FECデータCp,qを、次式
ことを特徴とするFECデータ生成装置。 Means for calculating a least common multiple of a lateral size of a matrix of two-dimensional FEC data respectively requested by first to N-th (N is an integer of 2 or more) terminal devices;
Each of the first to Nth terminal devices requests each of the first to Nth terminal devices using an FEC data calculation matrix having the least common multiple as the number of media packets arranged in the horizontal direction. Means for generating dimensional FEC data;
Let d i be the data of the media packet with sequence number i (i = 1, 2,...)
p is an integer of 1 to N,
Let L p be the horizontal size of the matrix of two-dimensional FEC data required by the p-th terminal device,
L is the least common multiple,
k = 1, 2,..., L,
T k is the first vertical FEC intermediate data calculated by exclusive OR of media packet data arranged in the vertical direction of the FEC data calculation matrix,
C ′ p, q is expressed as
The means for generating the two-dimensional FEC data uses the following formula to calculate the vertical FEC data C p, q in the q-th column of the two-dimensional FEC data requested by the p-th terminal device:
S′を、シーケンス番号(i−Lp)までのメディアパケットのデータの排他的論理和で計算される第2の横方向FEC用中間データとしたときに、
前記2次元FECデータを生成する前記手段は、第pの端末装置が要求する2次元FECデータの横方向FECデータRpを、シーケンス番号iが横サイズLpのJ倍であるときに、前記第1の横方向FEC用中間データSと前記第2の横方向FEC用中間データS′との排他的論理和によって計算する
ことを特徴とする請求項3に記載のFECデータ生成装置。
S is the first intermediate FEC intermediate data calculated by exclusive OR of media packet data up to sequence number i,
When S ′ is the second intermediate data for FEC in the horizontal direction calculated by exclusive OR of media packet data up to the sequence number (i−L p ),
Said means for generating said two-dimensional FEC data, the lateral FEC data R p of the two-dimensional FEC data first p terminal device requests, when the sequence number i is J times the lateral size L p, wherein 4. The FEC data generation apparatus according to claim 3, wherein calculation is performed by an exclusive OR of the first horizontal FEC intermediate data S and the second horizontal FEC intermediate data S ′. 5.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008198262A JP5256915B2 (en) | 2008-07-31 | 2008-07-31 | FEC data generation method and FEC data generation apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008198262A JP5256915B2 (en) | 2008-07-31 | 2008-07-31 | FEC data generation method and FEC data generation apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010041084A true JP2010041084A (en) | 2010-02-18 |
JP5256915B2 JP5256915B2 (en) | 2013-08-07 |
Family
ID=42013216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008198262A Active JP5256915B2 (en) | 2008-07-31 | 2008-07-31 | FEC data generation method and FEC data generation apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5256915B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004153471A (en) * | 2002-10-29 | 2004-05-27 | Sanyo Electric Co Ltd | Method for calculating checksum, method for recording checksum, and communication apparatus capable of utilizing the methods |
JP2006067072A (en) * | 2004-08-25 | 2006-03-09 | Fujitsu Ltd | Generation method, generator, generation program for error correction data, and computer readable recording medium storing the same |
JP2007509557A (en) * | 2003-10-23 | 2007-04-12 | トムソン ライセンシング | Method for reconstructing lost packets and apparatus for implementing the method |
-
2008
- 2008-07-31 JP JP2008198262A patent/JP5256915B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004153471A (en) * | 2002-10-29 | 2004-05-27 | Sanyo Electric Co Ltd | Method for calculating checksum, method for recording checksum, and communication apparatus capable of utilizing the methods |
JP2007509557A (en) * | 2003-10-23 | 2007-04-12 | トムソン ライセンシング | Method for reconstructing lost packets and apparatus for implementing the method |
JP2006067072A (en) * | 2004-08-25 | 2006-03-09 | Fujitsu Ltd | Generation method, generator, generation program for error correction data, and computer readable recording medium storing the same |
Also Published As
Publication number | Publication date |
---|---|
JP5256915B2 (en) | 2013-08-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100742450B1 (en) | Quantum key delivery method and communication device | |
US7516386B2 (en) | System and method for transparent electronic data transfer using error correction to facilitate bandwidth-efficient data recovery | |
JP6730741B2 (en) | Processing device, processing method, processing program, and cryptographic processing system | |
JP2020537191A5 (en) | ||
CN106453285B (en) | A kind of verification method and device that secret data is shared | |
Li et al. | A lattice-based homomorphic proxy re-encryption scheme with strong anti-collusion for cloud computing | |
WO2007011071A1 (en) | Time apparatus, encrypting apparatus, decrypting apparatus, and encrypting/decrypting system | |
CN117591886B (en) | Method and device for quickly aggregating heterogeneous data based on cluster federation learning | |
JP5256915B2 (en) | FEC data generation method and FEC data generation apparatus | |
TW201250629A (en) | Method and apparatus for adjusting 3-D images converted from 2-D images | |
US10511434B2 (en) | Method and encryption node for encrypting message | |
JP2011120227A (en) | Data transmission method and network node | |
JPWO2019039383A1 (en) | Share generator, restorer, secret calculation system, share generator, restore method, program, and recording medium | |
Barreto et al. | Energy-efficient channel coding strategy for underwater acoustic networks | |
KR20150137490A (en) | Method and apparatus for generating frame for error correction | |
CN111769945B (en) | Auction processing method based on block chain and block chain link point | |
CN111125752B (en) | Privacy protection method in edge computing environment | |
US10897371B2 (en) | Information processing apparatus, system, and method transmitting a data list using a forwarding path or forwarding method | |
WO2021106143A1 (en) | Shuffle system, shuffle method, and program | |
Lee et al. | TensorCrypto | |
CN115033645B (en) | Power data storage method and system based on block chain technology | |
Ding et al. | Participants Increasing for Shamir’s Polynomial-Based Secret Image Sharing Scheme | |
Järpe | An Alternative Diffie-Hellman Protocol | |
CN113360285B (en) | Calculation method of distributed bilateral security matrix problem under arbitrary collusion mode | |
US9532089B2 (en) | Session-based encryption for delivering content on-demand |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110322 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121025 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121106 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121219 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130326 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130408 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160502 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5256915 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |