(57)【要約】【課題】好適なＬＤＰＣ検査行列の生成パタンを導出できる送信装置を提供する。【解決手段】データがエンコードされたフレームからデータパケットを生成するデータパケット生成部と、検査行列の生成に用いられるフレームの数を結合数として導出する結合数導出部と、結合数に基づいて、検査行列を導出する検査行列導出部と、検査行列を用いて、データパケットから冗長パケットを生成する冗長パケット生成部と、データパケット及び冗長パケットを送信する送信部と、を備える。【選択図】図４
2014011670.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してパケットを送信する送信装置であって、
データがエンコードされたフレームからデータパケットを生成するデータパケット生成部と、
検査行列の生成に用いられる前記フレームの数を結合数として導出する結合数導出部と、
前記結合数に基づいて、前記検査行列を導出する検査行列導出部と、
前記検査行列を用いて、前記データパケットから冗長パケットを生成する冗長パケット生成部と、
前記データパケット及び前記冗長パケットを送信する送信部と、
を備える送信装置。
【請求項２】
請求項１に記載の送信装置であって、
前記結合数導出部は、前記パケットを受信する受信装置におけるパケットロス率及び当該送信装置と前記受信装置との間における往復伝送時間に基づいて、前記結合数を導出する送信装置。
【請求項３】
請求項１または２に記載の送信装置であって、
前記検査行列導出部は、結合数分のフレームから生成されるデータパケットに基づく検査行列の複数のパタンを生成し、前記検査行列のパタンに対する相関行列の固有値の合計が所定値以上、及び、前記相関行列のランクが所定値以上、の少なくとも一方の条件を満たす検査行列を導出する送信装置。
【請求項４】
請求項１ないし３のいずれか１項に記載の送信装置であって、
前記送信部は、前記検査行列の情報を含むパケットを送信する送信装置。
【請求項５】
ネットワークを介してパケットを受信する受信装置であって、
パケットを受信する受信部と、
前記受信部により受信されたパケットに含まれる、検査行列の生成に用いられた結合数分のフレームから生成されたデータパケットに基づく検査行列の情報に基づいて、前記検査行列を導出する検査行列導出部と、
前記受信部により受信されたデータパケット及び冗長パケットと、前記検査行列と、に基づいて、誤り訂正復号する復号部と、
を備える受信装置。
【請求項６】
ネットワークを介してパケットを送信する送信方法であって、
データがエンコードされたフレームからデータパケットを生成するステップと、
検査行列の生成に用いられる前記フレームの数を結合数として導出するステップと、
前記結合数に基づいて、前記検査行列を導出するステップと、
前記検査行列を用いて、前記データパケットから冗長パケットを生成するステップと、
前記データパケット及び前記冗長パケットを送信するステップと、
を有する送信方法。
【請求項７】
ネットワークを介してパケットを受信する受信方法であって、
パケットを受信するステップと、
前記受信されたパケットに含まれる、検査行列の生成に用いられた結合数分のフレームから生成されたデータパケットに基づく検査行列の情報に基づいて、前記検査行列を導出するステップと、
前記受信されたデータパケット及び冗長パケットと、前記検査行列と、に基づいて、誤り訂正復号するステップと、
を有する受信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、送信装置、受信装置、送信方法、及び受信方法に関する。
【背景技術】
【０００２】
データ伝送における誤り制御の１つの手法として、前方誤り訂正（ＦＥＣ：Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ)が知られている。ＦＥＣの代表的な方式として、２Ｄ−ｐａｒｉｔｙ符号、Ｒｅｅｄ−Ｓｏｌｏｍｏｎ符号、低密度パリティ検査（ＬＤＰＣ：Ｌｏｗ  Ｄｅｎｓｉｔｙ  Ｐａｒｉｔｙ  Ｃｈｅｃｋ）符号、が挙げられる。
【０００３】
ＬＤＰＣ符号に関する技術として、空間結合符号が知られている（例えば、非特許文献１参照）。空間結合符号は、いくつかのＬＤＰＣブロック符号を結合することにより構成されるＬＤＰＣ畳み込み符号の１つである。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】笠井  健太，「空間結合符号とその応用」，電子情報通信学会技術研究報告，１１１（２２０）,２０１１年９月２９日，Ｐ１−Ｐ８
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１の技術では、好適な冗長パケットを生成するための検査行列の生成パタンを導出することは困難である。
【０００６】
本開示は、上記事情に鑑みてなされたものであって、好適な検査行列を導出できる送信装置、受信装置、通信システム、送信方法、及び受信方法を提供する。
【課題を解決するための手段】
【０００７】
本開示の送信装置は、ネットワークを介してパケットを送信する送信装置であって、データがエンコードされたフレームからデータパケットを生成するデータパケット生成部と、検査行列の生成に用いられる前記フレームの数を結合数として導出する結合数導出部と、前記結合数に基づいて、前記検査行列を導出する検査行列導出部と、前記検査行列を用いて、前記データパケットから冗長パケットを生成する冗長パケット生成部と、前記データパケット及び前記冗長パケットを送信する送信部と、を備える。
【発明の効果】
【０００８】
本開示によれば、好適な検査行列を導出できる。
【図面の簡単な説明】
【０００９】
【図１】複数のデータパケットにより構成される映像ピクチャが連続する場合の空間結合符号を示す図であり、（Ａ）は連続する映像ピクチャの結合前を示す図、（Ｂ）は連続する映像ピクチャの結合後を示す図
【図２】データパケットの結合パタンとパケットロス率との関係を示す図
【図３】実施形態における通信システムの構成例を示す図
【図４】実施形態における送信装置の構成例を示す図
【図５】実施形態における受信装置の構成例を示す図
【図６】実施形態における通信システムの動作例の概要図
【図７】実施形態における送信装置の結合数導出部の動作例を示すフローチャート
【図８】実施形態におけるＦＥＣ強度１００の場合のデータパケット数とＬＤＰＣ符号のパケットロス回復性能との関係の一例を示す図
【図９】実施形態における送信装置の検査行列導出部の動作例を示すフローチャート
【図１０】実施形態における結合時の符号化パラメータの算出例を示す図
【図１１】実施形態における結合ＬＤＰＣ検査行列のパタンの第１生成例を示す図
【図１２】実施形態における結合ＬＤＰＣ検査行列のパタンの第２生成例を示す図
【図１３】実施形態における結合ＬＤＰＣ検査行列のパタンの第３生成例を示す図
【図１４】実施形態における結合ＬＤＰＣ検査行列のパタンの第４生成例を示す図
【図１５】実施形態における結合ＬＤＰＣ検査行列の各パタンに対する相関行列の固有値分解の結果例を示す図
【図１６】実施形態における受信装置の検査行列導出部の動作例を示すフローチャート
【図１７】実施形態における送信装置の動作例の概要図
【図１８】実施形態における受信装置の動作例の概要図
【発明を実施するための形態】
【００１０】
以下、本開示の実施形態について、図面を参照して説明する。
【００１１】
（本開示の一形態を得るに至った経緯）
例えばＴＶ会議システムのＩＰベースのリアルタイムコミュニケーションシステムにおいて、Ｆｕｌｌ  ＨＤ（Ｆｕｌｌ  Ｈｉｇｈ  Ｄｅｆｉｎｉｔｉｏｎ）の映像伝送が既に可能となっている。
【００１２】
ＩＰネットワーク環境では、数％程度のパケットロスが発生する。そのため、例えば再送（ＡＲＱ：Ａｕｔｏｍａｔｉｃ  ｒｅｐｅａｔ−ｒｅｑｕｅｓｔ）又はパケット消失訂正（ＦＥＣ：Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ）機能を用いて、例えば映像品質又は音声品質を確保している。リアルタイム性の要求が高い映像伝送システムの場合、ＲＴＴ（Ｒｏｕｎｄ  Ｔｒｉｐ  Ｔｉｍｅ）が短い環境ではＡＲＱが有効であり、ＲＴＴが長い環境又はパケットロス率が高い環境ではＦＥＣが有効である。
【００１３】
また、近年、無線回線の高速化に伴い、モバイル環境における映像伝送システムが登場してきている。高速な無線回線には、例えばＷｉＭＡＸ（Ｗｏｒｌｄｗｉｄｅ  Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ  ｆｏｒ  Ｍｉｃｒｏｗａｖｅ  Ａｃｃｅｓｓ），ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）が含まれる。
【００１４】
無線環境では、例えば端末の移動による電波環境の変化又はハンドオーバが頻繁に起こるため、有線環境と比較すると、通信品質（例えばパケットロス率又はＲＴＴ）が劣悪であることが多い。従って、無線環境において映像品質又は音声品質を確保する手段としては、ＦＥＣが適している。
【００１５】
ＦＥＣでは、例えば映像又は音声のデータパケットから冗長パケットを生成し、データパケットとともにネットワーク上に冗長パケットを送信する。伝送帯域が限られる無線環境では、冗長パケットのオーバヘッドによりデータパケットの伝送帯域が圧迫され、映像品質又は音声品質に悪影響を及ぼす可能性がある。そのため、冗長量を抑えつつ、ある程度の映像品質を確保するシステム設計が望ましい。
【００１６】
ＦＥＣの方式のうち、Ｒｅｅｄ−Ｓｏｌｏｍｏｎ符号については、符号化処理及び復号化処理が他の方式に比べて複雑であり、処理時間が長くなる。そのため、Ｒｅｅｄ−Ｓｏｌｏｍｏｎ符号の処理部はハードウェアにより実装されることが多く、端末への実装コストが高くなる。
【００１７】
また、２Ｄ−ｐａｒｉｔｙ符号及びＬＤＰＣ符号については、ソフトウェアにより実装でき、Ｒｅｅｄ−Ｓｏｌｏｍｏｎ符号に比べて端末への実装コストは低い。２Ｄ−ｐａｒｉｔｙ符号及びＬＤＰＣ符号の性能を比較すると、符号長に対応するデータパケット数が多い程、ＬＤＰＣ符号の方が優れた回復性能を示す。しかし、１〜２ＭｂｐｓのＵＬ（ＵｐＬｉｎｋ）無線伝送環境を考えた場合、この伝送帯域（１〜２Ｍｂｐｓの伝送帯域）において映像を符号化（エンコード）した後のデータパケット数は、１０パケット未満となる頻度が高い。その結果、ＬＤＰＣ符号の回復性能が十分発揮されない可能性がある。
【００１８】
非特許文献１では、１ピクチャあたりのデータパケット数が多数である場合（例えば１００パケット、１０００パケット単位）を想定し、空間結合符号を用いて通信品質を改善している。一方、非特許文献１では、１ピクチャあたりのデータパケット数が少数（例えば１０パケット単位以下）である場合については、想定されていない。
【００１９】
ここで、１ピクチャあたりのデータパケット数が少数であると仮定し、空間結合符号について説明する。また、総パケット数Ｎ，データパケット数ＫのＬＤＰＣ符号を、ＬＤＰＣ（Ｎ，Ｋ）とも記す。
【００２０】
図１（Ａ），（Ｂ）は、データパケット数が２個の映像ピクチャが連続する場合を示し、図１（Ａ）はＬＤＰＣ符号の結合前、図１（Ｂ）はＬＤＰＣ符号の結合後を示す。また、データパケットに対して冗長パケットが２つ付加され、それぞれＬＤＰＣ（４，２）の符号化が行われている様子を示す。この場合、冗長パケットを生成するためのＬＤＰＣ検査行列を、以下の（式１）のように表せる。
【００２１】
【数１】
2014011670.tif 000003
【００２２】
図１（Ａ）の場合、データパケット数が２個と少ないので、パケット消失時の回復性能が不十分である。そこで、図１（Ｂ）のように、ＬＤＰＣ符号を結合する。つまり、冗長パケットを生成する際に処理対象の１つ前のデータパケットも利用し、ＬＤＰＣ（８，４）の符号化が行われていることになる。従って、ＬＤＰＣ検査行列を、以下の（式２）のように表せる。
【００２３】
【数２】
2014011670.tif 000004
【００２４】
パケットを受信する受信装置では、ＬＤＰＣ復号するために、冗長パケットの生成に用いられたパケットを全て揃える必要があるので、ＬＤＰＣ符号の結合分の受信遅延が発生する。受信装置は、パケットロスが発生した際に、例えば処理対象の１つ前のデータパケットと併せて回復処理を行うことにより、回復性能を改善できる。
【００２５】
また、ＬＤＰＣ符号が結合される映像ピクチャの数を増やすことにより回復性能を改善できるが、受信遅延が増加する。そのため、例えばリアルタイム性の要求が高い映像伝送では、冗長パケットを生成する際にＬＤＰＣ符号を結合できる数は限定的となる。
【００２６】
しかし、図２に示すように、どのデータパケットからどの冗長パケットを生成するか、言い換えれば、結合後のＬＤＰＣ検査行列の生成パタンによっては、回復性能が結合前より悪化することがある。例えば、結合あり（パタン３）の場合、結合なしの場合よりも、同一のネットワークのパケットロス（損失）率におけるＦＥＣ復号後のパケットロス率が高くなり、回復性能が悪化している。
【００２７】
また、図２の結果は、様々なＬＤＰＣ検査行列の生成パタンのパケットロス回復性能を計算機シミュレーションによって求めることにより判明した。しかし、図２の結果を、リアルタイム性を要する映像伝送中に導出することは困難であり、リアルタイムアプリケーションに適用することは困難である。
【００２８】
以下では、好適な検査行列を導出できる送信装置、受信装置、送信方法、及び受信方法について説明する。
【００２９】
（本開示の実施形態）
図３は本開示の実施形態における通信システム１０００の構成例を示すブロック図である。通信システム１０００は、送信装置１００、受信装置２００、及びＩＰネットワーク３００を含む。送信装置１００及び受信装置２００は、ＩＰネットワーク３００を介して接続される。ＩＰネットワーク３００は、有線又は無線の回線を有する。通信システム１０００は、例えばテレビ会議システム又は映像伝送システムに適用できる。
【００３０】
通信システム１０００では、送信装置１００と受信装置２００との間において、データパケットとフィードバックパケットとが送受信される。フィードバックパケットには、ＲＴＴの情報及びパケットロス率の情報が含まれる。
【００３１】
次に、送信装置１００の構成例について説明する。
図４は送信装置１００の構成例を示すブロック図である。
【００３２】
送信装置１００は、ＲＴＣＰ受信部１０１、帯域推定部１０２、コーデック制御部１０３、結合数導出部１０４、検査行列導出部１０５、パケット化部１０６、送信バッファ部１０７、ＬＤＰＣ符号化部１０８、及びＲＴＰ送信部１０９を備える。
【００３３】
ＲＴＣＰ（Ｒｅａｌ−ｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）受信部１０１は、ＲＴＣＰを用いて、受信装置２００により送信されたフィードバックパケットを受信する。
【００３４】
また、ＲＴＣＰ受信部１０１は、フィードバックパケットに含まれるネットワーク情報を抽出する。ネットワーク情報は、例えばパケットロス率の情報又はＲＴＴの情報を含む。ＲＴＣＰ受信部１０１は、抽出されたネットワーク情報を帯域推定部１０２及び結合数導出部１０４に出力する。ＲＴＴは、送信装置１００と受信装置２００との間における往復伝送時間の一例である。
【００３５】
帯域推定部１０２は、パケットロス率とＲＴＴとから、ネットワーク帯域（例えば伝送レート）を推定する。帯域推定部１０２は、推定されたネットワーク帯域をエンコードレートとしてコーデック制御部１０３に出力する。
【００３６】
また、帯域推定部１０２は、パケットロス率に基づいて、ＬＤＰＣ符号化においてどの程度冗長パケットを付与するかを示すＦＥＣ強度を導出する。例えば、データパケット数と冗長パケット数が同数の場合、ＦＥＣ強度＝１００である。帯域推定部１０２は、導出されたＦＥＣ強度を検査行列導出部１０５に出力する。
【００３７】
コーデック制御部１０３は、映像データをエンコード（符号化）し、映像ピクチャを生成する。具体的には、コーデック制御部１０３は、帯域推定部１０２から通知されるエンコードレートに応じて、映像データを所定の符号化方式（例えばＨ．２６４）を用いて圧縮符号化する。コーデック制御部１０３は、符号化されたデータとしての映像ピクチャ（例えばＩピクチャ、Ｐピクチャ）をパケット化部１０６に出力する。映像ピクチャは、フレームの一例である。
【００３８】
結合数導出部１０４は、検査行列の生成に用いられる映像ピクチャを結合する数（結合数）を導出する。本実施形態では、この結合数は、ＬＤＰＣ符号の結合数と同義である。結合数＝１の場合には、映像ピクチャの結合を行わないことを意味する。結合数導出部１０４は、結合数の情報を検査行列導出部１０５及び送信バッファ部１０７へ出力する。
【００３９】
結合数導出部１０４は、例えば、パケットロス率、ＲＴＴ、及びデータパケット数の情報から、結合数を算出する。複数の映像ピクチャを結合するＬＤＰＣ符号化（結合ＬＤＰＣ符号化）を行う場合、結合数＞１となり、結合ＬＤＰＣ符号化を行わない場合、結合数＝１となる。
【００４０】
検査行列導出部１０５は、ＬＤＰＣ符号化するためのＬＤＰＣ検査行列を導出する。結合数導出部１０４による算出の結果、結合数＝１である場合には、映像ピクチャを結合せずに、ＬＤＰＣ検査行列を導出する。一方、結合数＞１である場合には、映像ピクチャを結合したＬＤＰＣ検査行列（結合ＬＤＰＣ検査行列）を導出する。結合ＬＤＰＣ検査行列はＬＤＰＣ検査行列の１つであり、ＬＤＰＣ検査行列は検査行列の１つである。
【００４１】
検査行列導出部１０５は、ＬＤＰＣ検査行列自体を内部テーブルに保持しておき、必要時に内部テーブルから取得してもよい。また、検査行列導出部１０５は、初期シードを保持しておき、初期シードからＬＤＰＣ検査行列を算出してもよい。送信装置１００及び受信装置２００は、ＬＤＰＣ検査行列の情報、又は、初期シード及び行列を生成するためのアルゴリズムの情報を予め共有してもよい。
【００４２】
検査行列導出部１０５は、ＬＤＰＣ符号化するためのＬＤＰＣ符号化情報をパケット化部１０６へ出力し、検査行列の情報をＬＤＰＣ符号化部１０８へ出力する。ＬＤＰＣ符号化情報は、例えば、ＬＤＰＣ（Ｎ，Ｋ）で表わされる符号化パラメータの情報、結合数の情報、具体的な結合ＬＤＰＣ検査行列の値、又は結合ＬＤＰＣ検査行列を生成するための初期シードの情報、を含む。ＬＤＰＣ符号化情報により、例えば結合ＬＤＰＣ検査行列の情報が受信装置２００に通知される。
【００４３】
パケット化部１０６は、コーデック制御部１０３からの映像ピクチャを規定のパケットサイズにパケット化し、データパケットとしてＬＤＰＣ符号化部１０８及び送信バッファ部１０７へ出力する。また、パケット化部１０６は、データパケットのヘッダを生成する。ヘッダには、例えばＬＤＰＣ符号化情報が含まれる。パケット化部１０６は、データパケット生成部の一例である。
【００４４】
送信バッファ部１０７は、パケット化部１０６又はＬＤＰＣ符号化部１０８において処理済みのパケットを一時的に蓄積する。このパケットは、結合数＞１の場合に、処理対象の前のパケットとして利用される。
【００４５】
ＬＤＰＣ符号化部１０８は、検査行列導出部１０５からのＬＤＰＣ検査行列の情報とデータパケットとを用いて、ＬＤＰＣ符号化し、冗長パケットを生成する。ＬＤＰＣ符号化部１０８は、冗長パケット生成部の一例である。
【００４６】
ＲＴＰ（Ｒｅａｌ−ｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）送信部１０９は、ＲＴＰを用いて、ＩＰネットワーク３００にデータパケットと冗長パケットとを送信する。
【００４７】
次に、受信装置２００の構成例について説明する。
図５は受信装置２００の構成例を示すブロック図である。
【００４８】
受信装置２００は、ＲＴＰ受信部２０１、受信バッファ部２０２、パケットロス検出部２０３、検査行列導出部２０４、ＬＤＰＣ復号部２０５、デパケット化部２０６、及びコーデック制御部２０７を備える。また、受信装置２００は、フィードバックパケット生成部２０８及びＲＴＣＰ送信部２０９を備える。
【００４９】
ＲＴＰ受信部２０１は、送信装置１００から送信されたデータパケットと冗長パケットとを受信する。ＲＴＰ受信部は、受信されたパケット（受信パケット）を、受信バッファ部２０２とパケットロス検出部２０３とに出力する。
【００５０】
また、ＲＴＰ受信部２０１は、受信パケットのヘッダに含まれる時刻情報からＲＴＴを算出し、フィードバックパケット生成部２０８に出力する。この時刻情報は、送信装置１００による送信時刻の情報を含む。また、ＲＴＰ受信部２０１は、受信パケットのヘッダに含まれるＬＤＰＣ符号化情報を、検査行列導出部２０４へ出力する。
【００５１】
受信バッファ部２０２は、予め決められた一定期間、受信されたデータをバッファする。このデータは、映像ピクチャが結合された場合のＬＤＰＣ復号部２０５によるＬＤＰＣ復号に利用される。
【００５２】
パケットロス検出部２０３は、パケットロスを検出する。パケットロス検出部２０３は、例えば受信パケットのヘッダに含まれるシーケンス番号の連続性を確認することにより、パケットロスを検出する。パケットロス検出部２０３は、パケットロスに有無の情報を含むパケットロス情報を、検査行列導出部２０４に出力する。
【００５３】
また、パケットロス検出部２０３は、パケットロス率を算出し、パケットロス率の情報をフィードバックパケット生成部２０８へ出力する。このパケットロス率は、ＩＰネットワーク３００におけるパケットロス率に相当する。
【００５４】
検査行列導出部２０４は、ＲＴＰ受信部２０１からのＬＤＰＣ符号化情報に基づいて、ＬＤＰＣ復号部２０５によるＬＤＰＣ復号に用いるＬＤＰＣ検査行列を導出する。また、検査行列導出部２０４は、検査行列の導出結果を含む検査行列情報をＬＤＰＣ復号部２０５へ出力する。
【００５５】
例えば、検査行列導出部２０４は、ＬＤＰＣ符号化情報に具体的な結合ＬＤＰＣ検査行列の値が含まれる場合、その結合ＬＤＰＣ検査行列をＬＤＰＣ復号部２０５へ出力してもよい。また、結合ＬＤＰＣ検査行列を生成するための初期シードを取得し、所定のアルゴリズムを用いて結合ＬＤＰＣ検査行列を算出してもよい。
【００５６】
また、送信装置１００と同様に、検査行列導出部２０４は、映像ピクチャが結合されていない場合のＬＤＰＣ復号のために、ＬＤＰＣ検査行列自体を内部テーブルに保持しておき、必要時に内部テーブルから取得してもよい。また、検査行列導出部２０４は、初期シードを保持しておき、初期シードからＬＤＰＣ検査行列を算出してもよい。送信装置１００及び受信装置２００は、ＬＤＰＣ検査行列の情報、又は、初期シード及び行列を生成するためのアルゴリズムの情報を予め共有してもよい。
【００５７】
ＬＤＰＣ復号部２０５は、ＬＤＰＣ検査行列の情報、データパケット、及び冗長パケットを用いて、ロスパケットの回復処理（ＬＤＰＣ復号）を行う。映像ピクチャが結合された結合ＬＤＰＣ符号の場合、パケットロス検出部２０３からのパケットよりも前に受信されたパケット（処理対象の前のパケット）が必要となる。この場合、ＬＤＰＣ復号部２０５は、結合数に応じて、受信バッファ部２０２にバッファされたデータパケット又は冗長パケットを用いて、ＬＤＰＣ復号する。
【００５８】
デパケット化部２０６は、ＬＤＰＣ復号されたパケットをデパケット化し、映像ピクチャを生成する。
【００５９】
コーデック制御部２０７は、映像ピクチャをデコードすることにより、映像データを出力する。
【００６０】
フィードバックパケット生成部２０８は、例えばＲＴＴ又はパケットロス率からフィードバックパケットを生成し、ＲＴＣＰ送信部２０９へ出力する。フィードバックパケットは、ネットワーク情報を含む。ネットワーク情報は、例えばＲＴＴの情報及びパケットロス率の情報を含む。
【００６１】
ＲＴＣＰ送信部２０９は、ＩＰネットワーク３００上にフィードバックパケットを送信する。
【００６２】
次に、通信システム１０００の動作概要について説明する。
図６は、通信システム１０００の動作例の概要図である。
【００６３】
送信装置１００は、映像データを帯域推定された推定帯域（例えばエンコードレート）に基づいて映像符号化する。送信装置１００は、符号化された映像データをパケット化し、パケットロス対策のためのＦＥＣ処理としてＬＤＰＣ符号化し、データパケットから冗長パケットを生成する。送信装置１００は、データパケットと冗長パケットとを、映像パケットとしてＩＰネットワーク３００を通じて送信する。
【００６４】
送信装置１００は、受信装置２００からのフィードバックパケットに含まれるＲＴＴ及びパケットロス率の情報を取得し、帯域推定する。また、送信装置１００は、データパケット数とＲＴＴに応じて、例えば複数の映像ピクチャを結合してＬＤＰＣ符号化する。
【００６５】
送信装置１００は、映像ピクチャを結合しない場合にはデータパケット数とＦＥＣ強度に基づいてＬＤＰＣ検査行列を導出し、導出されたＬＤＰＣ検査行列を用いてＬＤＰＣ符号化する。
【００６６】
また、送信装置１００は、データパケット数が少なく（所定数以下であり）、ＲＴＴが受信許容遅延以内を示す場合、映像ピクチャを結合し、結合ＬＤＰＣ検査行列を導出する。例えば、データパケット数が所定数以上である場合、パケット回復性能を確保できるので、ピクチャ結合しない。また、ＲＴＴを結合判断基準に用いることで、遅延の影響を考慮できる。
【００６７】
送信装置１００は、映像ピクチャを結合する場合、バッファされた処理対象の前に処理されたデータパケットと、処理対象のデータパケットと、を用いて、結合ＬＤＰＣ符号化する。
【００６８】
一方、受信装置２００は、送信装置１００からの映像パケットを受信後、受信処理する。具体的には、受信装置２００は、データパケットを抽出し、データパケットのヘッダ部分に記載される送信時刻から、ＲＴＴを計算する。
【００６９】
また、受信装置２００は、受信パケットにパケットロスが検出された場合、パケットロス率を算出する。ＲＴＴ及びパケットロス率の情報は、フィードバックパケットに書き込まれる。
【００７０】
また、受信装置２００は、受信したデータパケット（例えば映像パケット）のヘッダ部分から、符号化パラメータの情報及び結合ＬＤＰＣ検査行列の情報を抽出する。符号化パラメータは、データパケット数と冗長パケット数との関係を示す。
【００７１】
また、受信装置２００は、パケットロスがなければ、映像パケットをデコードして映像データを出力する。
【００７２】
また、受信装置２００は、パケットロスが検出された場合、結合ＬＤＰＣ符号化が行われていなければ、符号化パラメータに基づいて、例えばＬＤＰＣ符号化テーブルから対応するＬＤＰＣ検査行列を選択する。そして、受信装置２００は、選択されたＬＤＰＣ検査行列に基づいて、ＬＤＰＣ復号する。
【００７３】
また、受信装置２００は、結合ＬＤＰＣ符号化が行われていれば、結合ＬＤＰＣ検査行列と、バッファされた現時刻より前（処理対象の前の）のデータパケットと現時刻の（処理対象の）データパケットとを用いて、ＬＤＰＣ復号する。
【００７４】
次に、送信装置１００の具体的な動作について説明する。
まず、図１７を用いて、送信装置１００の動作例の概要について説明する。
【００７５】
データパケット生成部は、データがエンコードされたフレームからデータパケットを生成する（ステップＳ１１）。データパケット生成部は、例えばパケット化部１０６である。
【００７６】
続いて、結合数導出部１０４は、検査行列の生成に用いられるフレームの数を結合数として導出する（ステップＳ１２）。
【００７７】
続いて、検査行列導出部１０５は、結合数に基づいて、検査行列を導出する（ステップＳ１３）。
【００７８】
続いて、冗長パケット生成部は、検査行列を用いて、データパケットから冗長パケットを生成する（ステップＳ１４）。冗長パケット生成部は、例えばＬＤＰＣ符号化部である。
【００７９】
続いて、送信部は、データパケット及び冗長パケットを送信する（ステップＳ１５）。送信部は、例えばＲＴＰ送信部１０９である。
【００８０】
次に、ＬＤＰＣ符号化部１０８の動作例について説明する。
【００８１】
ここでは、データパケット数＝２、冗長パケット数＝２、すなわちＦＥＣ強度１００のＬＤＰＣ（４，２）符号を想定する。データ系列を（ｍ１，ｍ２）、冗長系列を（ｐ１，ｐ２）とすると、ＬＤＰＣ符号化部１０８は、（式１）のＬＤＰＣ検査行列を用いてＬＤＰＣ符号化する。この場合、以下に示す関係が成り立つ。
【００８２】
【数３】
2014011670.tif 000005
【００８３】
（式３）は以下の（式４）のように展開でき、ＬＤＰＣ符号化部１０８は、データ系列から冗長系列を求めることができる。
【００８４】
【数４】
2014011670.tif 000006
【００８５】
ＬＤＰＣ符号化部１０８は、（式３），（式４）の演算を、パケットサイズに相当する回数分繰り返す。ＬＤＰＣ符号化部１０８は、データパケット数及びＦＥＣ強度毎に、ＬＤＰＣ検査行列を保持しておいても良い。また、ＬＤＰＣ符号化部１０８は、ＲＦＣ５１３０に示すように乱数発生シードに基づいて、ＬＤＰＣ符号化する都度、ＬＤＰＣ検査行列を生成してもよい。
【００８６】
次に、結合数導出部１０４の動作例について説明する。
図７は、結合数導出部１０４の動作例をフローチャートである。
【００８７】
パケット化部１０６からのデータパケット数を「Ｋ」、ＲＴＣＰ受信部１０１からのネットワーク情報に含まれるＲＴＴを「ＲＴＴ」、パケットロス率を「Ｐｂｅｆｏｒｅ」、帯域推定部１０２からのＦＥＣ強度を「ｓ」とする。この場合、結合数導出部１０４は、ＦＥＣパケットが付加された場合のパケットロス率Ｐａｆｔｅｒを、例えば以下の（式５）を用いて求める。なお、Ｐｂｅｆｏｒｅは、ネットワークのパケットロス率の一例であり、Ｐａｆｔｅｒは、ＦＥＣ復号後のパケットロス率の一例である。
【００８８】
【数５】
2014011670.tif 000007
【００８９】
また、通信システム１０００における品質目標として設定される目標パケットロス率を「Ｐｔａｒｇｅｔ」とする。
【００９０】
結合数導出部１０４は、パケットロス率Ｐａｆｔｅｒと目標パケットロス率Ｐｔａｒｇｅｔとを比較する（ステップＳ１０１）。目標パケットロス率Ｐｔａｒｇｅｔは、例えば予め設定される。
【００９１】
パケットロス率Ｐａｆｔｅｒが目標パケットロス率Ｐｔａｒｇｅｔ以下であれば、映像ピクチャの結合は不要であるため、結合数導出部１０４は、結合数Ｎｃ＝１を導出する（ステップＳ１０４）。
【００９２】
パケットロス率Ｐａｆｔｅｒが目標パケットロス率Ｐｔａｒｇｅｔより大きい場合、結合数導出部１０４は、受信装置２００からフィードバックされるＲＴＴと受信許容遅延Ｄｒとの関係を調べる（ステップＳ１０２）。受信許容遅延Ｄｒは、例えば予め設定される。
【００９３】
ＲＴＴが受信許容遅延Ｄｒ以上であれば、通信システム１０００の遅延制約から映像ピクチャの結合が不可能であるので、結合数導出部１０４は、結合数Ｎｃ＝１を算出する（ステップＳ１０４）。
【００９４】
ＲＴＴが受信許容遅延Ｄｒ未満であれば、結合数導出部１０４は、映像ピクチャの結合が可能であると判断する。この場合、結合数導出部１０４は、ＲＴＴとパケットロス率とに基づいて、結合数Ｎｃを算出する（ステップＳ１０３）。
【００９５】
時刻ｔにおける、複数の映像ピクチャを結合した後のデータパケット数をＫ’（ｔ）とおくと、Ｋ’（ｔ）は結合数Ｎｃの分だけデータパケット数を合計した値となり、以下の（式６）のように表せる。
【００９６】
【数６】
2014011670.tif 000008
【００９７】
（式５）に示したように、パケットロス率Ｐａｆｔｅｒは、Ｋ、Ｐｂｅｆｏｒｅ、及びｓを変数とする関数である。従って、映像ピクチャの結合後のデータパケット数Ｋ’（ｔ）を（式５）の「Ｋ」に代入することで、結合時のパケットロス率Ｐａｆｔｅｒを求められる。
【００９８】
結合数導出部１０４は、遅延要件を満たしつつ、目標パケットロス率Ｐｔａｒｇｅｔを達成できる例えば最小の結合数Ｎｃを算出する。遅延要件とは、ＲＴＴが受信許容遅延Ｄｒ未満を満たすことである。結合数導出部１０４は、例えば以下の（式７）を満たす結合数Ｎｃを算出する。
【００９９】
【数７】
2014011670.tif 000009
【０１００】
図８にＦＥＣ強度ｓ＝１００の場合のデータパケット数とＬＤＰＣ符号のパケットロス回復性能との関係の一例を示す。
【０１０１】
仮に、目標品質を目標パケットロス率Ｐｔａｒｇｅｔ＝０．１％とする。この目標品質の場合、結合数導出部１０４は、以下の領域において目標パケット数が満たせなくなり、映像ピクチャの結合の可否を検討する。
【０１０２】
具体的には、Ｋ＝１ではＰｂｅｆｏｒｅ＝３．２％以上、Ｋ＝２ではＰｂｅｆｏｒｅ＝４．４％以上、Ｋ＝３ではＰｂｅｆｏｒｅ＝８％以上、Ｋ＝４ではＰｂｅｆｏｒｅ＝９．２％以上の領域において、映像ピクチャの結合の可否が検討される。
【０１０３】
このように、結合数算出処理によれば、受信装置２００におけるパケットロス率（例えばネットワークのパケットロス率Ｐａｆｔｅｒ）及び送信装置１００と受信装置２００との間における往復伝送時間（例えばＲＴＴ）に基づいて、結合数を導出する。
【０１０４】
これにより、パケットロス率を考慮して目標品質以上の品質を確保し、往復伝送時間を考慮して迅速性を確保することが可能な好適な結合数を導出できる。
【０１０５】
次に、検査行列導出部１０５の動作例について説明する。
図９は、検査行列導出部１０５の動作例を示すフローチャートである。
【０１０６】
まず、検査行列導出部１０５は、結合数導出部１０４により導出された結合数Ｎｃが、Ｎｃ＞１を満たすか否かを判定する（ステップＳ２０１）。
【０１０７】
結合数Ｎｃ＝１の場合、映像ピクチャを結合しない。この場合、検査行列導出部１０５データパケット数ＫとＦＥＣ強度ｓに基づいて、通常のＬＤＰＣ検査行列を生成し、ＬＤＰＣ符号化部１０８に出力する（ステップＳ２１０）。
【０１０８】
また、検査行列導出部１０５は、結合数Ｎｃの情報と符号化パラメータの情報を含むＬＤＰＣ符号化情報をパケット化部１０６に出力する（ステップＳ２１１）。ＬＤＰＣ符号化情報は、パケット化部１０６によりデータパケットのヘッダに書き込まれる。
【０１０９】
一方、結合数Ｎｃ＞１の場合、検査行列導出部１０５は、映像ピクチャを結合する。以下では、結合数Ｎｃ＞１の場合、結合数Ｎｃ＝２を例示する。
【０１１０】
検査行列導出部１０５は、送信バッファ部１０７に格納されたデータパケットと冗長パケットとの符号化パラメータ、処理対象の符号化パラメータ、及びＦＥＣ強度に基づいて、結合時の符号化パラメータＬＤＰＣ（Ｎ，Ｋ）を算出する（ステップＳ２０２）。図１０に結合時の符号化パラメータの算出例を示す。
【０１１１】
図１０では、ＬＤＰＣ（８，４）により符号化されたデータパケットと冗長パケットとが、処理対象よりも１つ前のパケットとして、送信バッファ部１０７に格納されている。検査行列導出部１０５は、結合数導出部１０４により算出された結合数がＮｃ＝２であった場合、結合時の符号化パラメータＬＤＰＣ（Ｎ，Ｋ）を算出する。
【０１１２】
送信バッファ部１０７内に格納されたデータパケット数Ｋ（ｔ−１）＝４であり、処理対象のデータパケット数Ｋ（ｔ）＝２であるので、検査行列導出部１０５は、結合後のデータパケット数Ｋ’（ｔ）＝６を求める。また、検査行列導出部１０５は、ＦＥＣ強度ｓ＝１００であるので、結合後の符号化パラメータＬＤＰＣ（１２，６）を導出する。
【０１１３】
続いて、検査行列導出部１０５は、導出された結合時の符号化パラメータＬＤＰＣ（Ｎ，Ｋ）から、結合ＬＤＰＣ検査行列のパタンＨ（ｎ）を生成する（ステップＳ２０３）。結合時の符号化パラメータがＬＤＰＣ（１２，６）の場合における結合ＬＤＰＣ検査行列のパタンＨ（ｎ）の生成例を、図１１〜図１４に示す。
【０１１４】
図１１〜図１４では、送信バッファ部１０７に格納された前回受信の部分（処理対象の前）の冗長パケット生成方法は固定であり、今回受信部分（処理対象）の冗長パケット生成方法がそれぞれ異なる。
【０１１５】
尚、送信装置１００における遅延を想定しない場合、送信バッファ部１０７に格納されている部分のパタンを固定とする。従って、前回処理対象の冗長パケットの生成において、今回処理対象のデータパケット又は冗長パケットを考慮しない。これにより、演算量が低減し、送信遅延の発生を防止できる。
【０１１６】
一方、送信装置１００における遅延が許容できる場合、送信バッファ部１０７に格納されている部分のパタンを可変にしてもよい。例えば、前回処理対象の冗長パケットの生成において、今回処理対象のデータパケット又は冗長パケットを考慮してもよい。これにより、固有値解析の対象となる結合ＬＤＰＣ検査行列のパタンが増加する。
【０１１７】
続いて、検査行列導出部１０５は、結合ＬＤＰＣ検査行列の各パタンＨ（ｎ）の相関行列ＨＴＨ（ｎ）を求める（ステップＳ２０４）。
【０１１８】
図１１に示した結合ＬＤＰＣ検査行列のパタン１を行列表記すると、以下の（式８）のように表せる。図１２に示した結合ＬＤＰＣ検査行列のパタン２を行列表記すると、以下の（式９）のように表せる。図１３に示した結合ＬＤＰＣ検査行列のパタン３を行列表記すると、以下の（式１０）のように表せる。図１４に示した結合ＬＤＰＣ検査行列のパタン４を行列表記すると、以下の（式１１）のように表せる。
【０１１９】
【数８】
2014011670.tif 000010
【数９】
2014011670.tif 000011
【数１０】
2014011670.tif 000012
【数１１】
2014011670.tif 000013
【０１２０】
検査行列導出部１０５は、結合ＬＤＰＣ検査行列のパタン１〜４のうち、パケット回復性能が好適（例えば最適）なパタンを選択するために、固有値解析の手法を用いる。
【０１２１】
結合ＬＤＰＣ検査行列のパタンＨ（ｎ）を固有値解析するためには、行列が正方行列である必要がある。そのため、検査行列導出部１０５は、結合ＬＤＰＣ検査行列のパタンＨ（ｎ）の相関行列ＨＴＨ（ｎ）を算出する。ここで、結合ＬＤＰＣ検査行列のパタンを以下の（式１２）のように表す。
【数１２】
2014011670.tif 000014
【０１２２】
この場合、検査行列導出部１０５は、相関行列を、以下の（式１３）を計算することにより得る。
【数１３】
2014011670.tif 000015
【０１２３】
また、検査行列導出部１０５は、結合ＬＤＰＣ検査行列の要素が０，１の２値のみであるので、以下の（式１４）の演算を行う。
【数１４】
2014011670.tif 000016
【０１２４】
従って、結合ＬＤＰＣ検査行列の各パタンに対する相関行列を求めると、以下の（式１５）〜（式１８）のように表せる。（式１５）は、パタン１に対する相関行列である。（式１６）は、パタン２に対する相関行列である。（式１７）は、パタン３に対する相関行列である。（式１８）は、パタン４に対する相関行列である。
【０１２５】
【数１５】
2014011670.tif 000017
【数１６】
2014011670.tif 000018
【数１７】
2014011670.tif 000019
【数１８】
2014011670.tif 000020
【０１２６】
続いて、検査行列導出部１０５は、ステップＳ２０４において求められた相関行列の固有値を求める（ステップＳ２０５）。
【０１２７】
ここで、相関行列の固有値の導出方法の１つとして、特異値分解の手法を用いることを想定する。
【０１２８】
検査行列導出部１０５は、ランクｒのｎ×ｍ行列Ｈについては、以下の（式１９）のように特異値分解できる。
【数１９】
2014011670.tif 000021
【０１２９】
ここで、Ｕはｎ次直交行列、Ｖはｍ次直交行列、Ｌは以下の（式２０）により表せるｎ×ｍ行列である。また、σｉ（ｉ＝１〜ｒ）はＨの特異値である。
【０１３０】
【数２０】
2014011670.tif 000022
【０１３１】
検査行列導出部１０５が相関行列ＨＴＨに対して特異値分解すると、以下の（式２１）のようになる。
【数２１】
2014011670.tif 000023
【０１３２】
（式２１）において、Ｌ２は、相関行列ＨＴＨの固有値を対角要素とする行列であり、Ｈの特異値は、相関行列ＨＴＨにおける０でない固有値の平方根に等しい。
【０１３３】
続いて、検査行列導出部１０５は、相関行列ＨＴＨのランク（階数）を判定する（ランク落ち判定）（ステップＳ２０６）。行列のランク数が小さい場合、映像ピクチャの結合による効果が期待できないためである。相関行列ＨＴＨのランク数は、０でない固有値の個数と等しい。
【０１３４】
なお、相関行列ＨＴＨを固有値分解し、得られた値の絶対値をとることによっても、特異値解析の結果と同じ結果が得られる。
【０１３５】
（式１５）〜（式１８）に示したパタン１〜４に対する相関行列ＨＴＨの固有値分解の結果の一例について、図１５に示す。パタン１〜４ともフルランクからのランク落ちは１又は２であり、映像ピクチャの結合による性能改善が十分期待できる。
【０１３６】
続いて、検査行列導出部１０５は、固有値分解の結果に基づいて、ランク最大の結合ＬＤＰＣ検査行列のパタンのうち、固有値の合計が最大のパタンを結合ＬＤＰＣ検査行列として決定する（ステップＳ２０７）。
【０１３７】
続いて、検査行列導出部１０５は、決定された結合ＬＤＰＣ検査行列の情報をＬＤＰＣ符号化部１０８へ出力する（ステップＳ２０８）。
【０１３８】
また、検査行列導出部１０５は、例えば結合ＬＤＰＣ検査行列の情報及び結合数の情報を含むＬＤＰＣ符号化情報を、パケット化部１０６へ出力する（ステップＳ２０９）。結合ＬＤＰＣ検査行列の情報及び結合数の情報は、パケット化部１０６によりデータパケットのヘッダに書き込まれる。
【０１３９】
図１５の例では、パタン１がランク最大（ランク１１）であり、固有値の合計値も最大なので、結合ＬＤＰＣ検査行列として選択される。
【０１４０】
なお、検査行列導出部１０５は、ランクのみに基づいて、結合ＬＤＰＣ検査行列を選択してもよい。ランクのみに基づく場合であっても、図１５の例では、結合ＬＤＰＣ検査行列を一意に選択できる。
【０１４１】
また、検査行列導出部１０５は、固有値の合計値のみに基づいて、結合ＬＤＰＣ検査行列を選択してもよい。固有値の合計値のみに基づく場合であっても、図１５の例では、結合ＬＤＰＣ検査行列を一意に選択できる。
【０１４２】
さらに、ランク又は固有値の合計値が「最大」ではなくても、例えば所定値以上であるという条件を満たすものから選択してもよい。
【０１４３】
このように、検査行列導出部１０５は、結合数分のフレーム（例えば映像ピクチャ）から生成されるデータパケットに基づく検査行列の複数のパタンを生成してもよい。また、検査行列導出部１０５は、検査行列のパタンに対する相関行列の固有値の合計値が所定値以上、及び、相関行列のランクが所定値以上、の少なくとも一方の条件を満たす検査行列を導出してもよい。
【０１４４】
検査行列導出部１０５の動作によれば、複数の検査行列のパタン（候補）の中から、パケット回復性能を悪化させることなく、リアルタイム性を要する通信中に、好適な検査行列を導出できる。
【０１４５】
このように、送信装置１００によれば、無線ネットワーク状況に応じて複数のピクチャを結合するＦＥＣ符号化（例えばＬＤＰＣ符号化）を実施するか否かを判定する。これにより、例えば映像伝送における一定の高速性と、一定の映像品質を確保できる。
【０１４６】
また、データパケット数が少ない環境であっても、ＦＥＣ符号を複雑に生成でき、ＦＥＣ符号の回復性能を改善できる。また、検査行列の好適な結合パタンを迅速に導出でき、リアルタイム性を要する通信（例えば映像伝送）を高品質に実施できる。
【０１４７】
次に、受信装置２００の具体的な動作について説明する。
まず、図１８を用いて、受信装置２００の動作例の概要について説明する。
【０１４８】
受信部は、パケットを受信する（ステップＳ２１）。受信部は、例えばＲＴＰ受信部２０１である。
【０１４９】
続いて、検査行列導出部２０４は、受信パケットに含まれる、検査行列の生成に用いられた結合数分のフレームから生成されたデータパケットに基づく検査行列の情報に基づいて、検査行列を導出する（ステップＳ２２）。
【０１５０】
続いて、復号部は、受信されたデータパケット及び冗長パケットと、検査行列と、に基づいて、誤り訂正復号する（ステップＳ２３）。復号部は、例えばＬＤＰＣ復号部２０５である。
【０１５１】
次に、検査行列導出部２０４の動作例について説明する。
図１６は、検査行列導出部２０４の動作例を示すフローチャートである。
【０１５２】
まず、検査行列導出部２０４は、パケットロス検出部２０３からのパケットロス情報を受けとり、パケットロスがあるか否かを判定する（ステップＳ３０１）。
【０１５３】
パケットロスがなければ、検査行列導出部２０４は、ＦＥＣ処理の１つであるＬＤＰＣ復号を行わない（ステップＳ３０６）。
【０１５４】
一方、パケットロスがある場合、送信装置１００により結合ＬＤＰＣ符号化しているか否かにより、ＬＤＰＣ検査行列が異なる。映像ピクチャの結合があるか否かを判定するため、検査行列導出部２０４は、結合数Ｎｃ＞１を満たすか否かを判定する（ステップＳ３０２）。結合数Ｎｃの情報は、データパケットのヘッダに含まれる。
【０１５５】
結合数Ｎｃ＞１である場合、映像ピクチャが結合されているので、検査行列導出部２０４は、データパケットのヘッダに記述されたＬＤＰＣ符号化情報に含まれる復号ＬＤＰＣ検査行列の情報を抽出し、ＬＤＰＣ復号部２０５へ出力する（ステップＳ３０３）。
【０１５６】
一方、結合数Ｎｃ＝１である場合、映像ピクチャが結合されていないので、検査行列導出部２０４は、ＬＤＰＣ符号化情報に含まれる符号化パラメータ（Ｎ，Ｋ）の情報を抽出する（ステップＳ３０４）。また、符号化パラメータ（Ｎ，Ｋ）に基づいてＬＤＰＣ検査行列を算出し、算出結果を検査行列情報に含めてＬＤＰＣ復号部２０５へ出力する（ステップＳ３０５）。
【０１５７】
このように、受信装置２００は、ＲＴＰ受信部２０１が、検査行列の生成に用いられたフレーム（例えば映像ピクチャ）の数としての結合数の情報と、結合数分のフレームから生成されたデータパケットに基づく検査行列の情報と、を含むパケットを受信する。検査行列導出部２０４は、検査行列の情報に基づいて、検査行列を導出する。復号部は、受信パケットに含まれるデータパケット及び冗長パケットと、検査行列と、に基づいて、誤り訂正復号する。
【０１５８】
受信装置２００によれば、データパケット数が少ない環境であっても、ＦＥＣ符号の回復性能を改善できる。また、検査行列の好適な結合パタンを用いて、ＦＥＣ復号できる。
【０１５９】
本開示は、上記実施形態の構成に限られない。特許請求の範囲において示した機能、または上記実施形態の構成が持つ機能が達成できる構成であれば、どのようなものであっても適用できる。
【０１６０】
上記実施形態では、ＲＴＰ及びＲＴＣＰを用いてパケットを通信することを例示したが、ＲＴＰ、ＲＴＣＰ以外のプロトコルを用いてパケットを通信してもよい。
【０１６１】
上記実施形態では、ＬＤＰＣ符号化を行うことを例示したが、ＬＤＰＣ以外であっても、検査行列を用いるＦＥＣ符号化であればよい。
【０１６２】
上記実施形態では、データとして映像データを例示したが、例えば音声データ、音声データと映像データとの組み合わせであってもよい。
【０１６３】
また、上記実施形態では、本開示をハードウェアによって構成する場合を例にとって説明したが、本開示はハードウェアとの連携においてソフトウェアでも実現することも可能である。
【０１６４】
また、上記実施形態の説明に用いた各機能ブロックは、典型的には集積回路であるＬＳＩとして実現される。これらは個別に１チップ化されてもよいし、一部または全てを含むように１チップ化されてもよい。ここでは、ＬＳＩとしてもよいし、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称してもよい。
【０１６５】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路または汎用プロセッサで実現してもよい。例えば、ＬＳＩ製造後にプログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、ＬＳＩ内部の回路セルの接続、又は、設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【０１６６】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
【０１６７】
（開示の一態様の概要）
本開示の第１の送信装置は、
ネットワークを介してパケットを送信する送信装置であって、
データがエンコードされたフレームからデータパケットを生成するデータパケット生成部と、
検査行列の生成に用いられる前記フレームの数を結合数として導出する結合数導出部と、
前記結合数に基づいて、前記検査行列を導出する検査行列導出部と、
前記検査行列を用いて、前記データパケットから冗長パケットを生成する冗長パケット生成部と、
前記データパケット及び前記冗長パケットを送信する送信部と、
を備える。
【０１６８】
また、本開示の第２の送信装置は、第１の送信装置であって、
前記結合数導出部は、前記パケットを受信する受信装置におけるパケットロス率及び当該送信装置と前記受信装置との間における往復伝送時間に基づいて、前記結合数を導出する。
【０１６９】
また、本開示の第３の送信装置は、第１または第２の送信装置であって、
前記検査行列導出部は、結合数分のフレームから生成されるデータパケットに基づく検査行列の複数のパタンを生成し、前記検査行列のパタンに対する相関行列の固有値の合計が所定値以上、及び、前記相関行列のランクが所定値以上、の少なくとも一方の条件を満たす検査行列を導出する。
【０１７０】
また、本開示の第４の送信装置は、第１ないし第３のいずれか１つの送信装置であって、
前記送信部は、前記検査行列の情報を含むパケットを送信する。
【０１７１】
また、本開示の第５の受信装置は、
ネットワークを介してパケットを受信する受信装置であって、
パケットを受信する受信部と、
前記受信部により受信されたパケットに含まれる、検査行列の生成に用いられた結合数分のフレームから生成されたデータパケットに基づく検査行列の情報に基づいて、前記検査行列を導出する検査行列導出部と、
前記受信部により受信されたデータパケット及び冗長パケットと、前記検査行列と、に基づいて、誤り訂正復号する復号部と、
を備える。
【０１７２】
また、本開示の第６の送信方法は、
ネットワークを介してパケットを送信する送信方法であって、
データがエンコードされたフレームからデータパケットを生成するステップと、
検査行列の生成に用いられる前記フレームの数を結合数として導出するステップと、
前記結合数に基づいて、前記検査行列を導出するステップと、
前記検査行列を用いて、前記データパケットから冗長パケットを生成するステップと、
前記データパケット及び前記冗長パケットを送信するステップと、
を有する。
【０１７３】
また、本開示の第７の受信方法は、
ネットワークを介してパケットを受信する受信方法であって、
パケットを受信するステップと、
前記受信されたパケットに含まれる、検査行列の生成に用いられた結合数分のフレームから生成されたデータパケットに基づく検査行列の情報に基づいて、前記検査行列を導出するステップと、
前記受信されたデータパケット及び冗長パケットと、前記検査行列と、に基づいて、誤り訂正復号するステップと、
を有する。
【産業上の利用可能性】
【０１７４】
本開示は、好適なＬＤＰＣ検査行列の生成パタンを導出できる送信装置、受信装置、送信方法、及び受信方法等に有用である。
【符号の説明】
【０１７５】
１０００  通信システム
１００  送信装置
１０１  ＲＴＣＰ受信部
１０２  帯域推定部
１０３  コーデック制御部
１０４  結合数導出部
１０５  検査行列導出部
１０６  パケット化部
１０７  送信バッファ部
１０８  ＬＤＰＣ符号化部
１０９  ＲＴＰ送信部
２００  受信装置
２０１  ＲＴＰ受信部
２０２  受信バッファ部
２０３  パケットロス検出部
２０４  検査行列導出部
２０５  ＬＤＰＣ復号部
２０６  デパケット化部
２０７  コーデック制御部
２０８  フィードバックパケット生成部
２０９  ＲＴＣＰ送信部
３００  ＩＰネットワーク
【図１】
2014011670.tif 000024
【図２】
2014011670.tif 000025
【図３】
2014011670.tif 000026
【図４】
2014011670.tif 000027
【図５】
2014011670.tif 000028
【図６】
2014011670.tif 000029
【図７】
2014011670.tif 000030
【図８】
2014011670.tif 000031
【図９】
2014011670.tif 000032
【図１０】
2014011670.tif 000033
【図１１】
2014011670.tif 000034
【図１２】
2014011670.tif 000035
【図１３】
2014011670.tif 000036
【図１４】
2014011670.tif 000037
【図１５】
2014011670.tif 000038
【図１６】
2014011670.tif 000039
【図１７】
2014011670.tif 000040
【図１８】
2014011670.tif 000041