(57)【要約】【課題】帯域利用効率の低下を抑制できる送信装置を提供する。【解決手段】ネットワークを介してパケットを送信する送信装置であって、データパケット生成部と、結合判定部と、検査行列導出部と、冗長パケット生成部と、送信部と、を備える。結合判定部は、生成されるフレームあたりのデータパケット数に基づいて、フレームを他のフレームと結合するか否かを判定する。検査行列導出部は、この判定結果に応じて、検査行列を導出する。【選択図】図２
2014099708.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してパケットを送信する送信装置であって、
データがエンコードされたフレームからデータパケットを生成するデータパケット生成部と、
前記データパケット生成部により生成される前記フレームあたりのデータパケット数に基づいて、前記フレームを他のフレームと結合するか否かを判定する結合判定部と、
前記結合判定部により判定結果に応じて、検査行列を導出する検査行列導出部と、
前記検査行列を用いて、前記データパケットから冗長パケットを生成する冗長パケット生成部と、
前記データパケット及び前記冗長パケットを送信する送信部と、
を備える送信装置。
【請求項２】
請求項１に記載の送信装置であって、
前記検査行列導出部は、前記結合判定部により他のフレームと結合すると判定された場合、エンコードされたフレームと前記送信部により送信されたデータパケットのフレームとを結合し、前記検査行列を導出する送信装置。
【請求項３】
請求項１または２に記載の送信装置であって、
前記結合判定部は、当該送信装置と前記パケットを受信する受信装置との間における往復伝送時間に基づいて、エンコードされたフレームと他のフレームとを結合するか否かを判定する送信装置。
【請求項４】
ネットワークを介してパケットを受信する受信装置であって、
パケットを受信する受信部と、
前記受信部により受信されたパケットに含まれる、検査行列の生成のためにフレームが結合されたか否かを示す情報に基づいて、前記検査行列を導出する検査行列導出部と、
前記受信部により受信されたデータパケット及び冗長パケットと、前記検査行列と、に基づいて、誤り訂正復号する復号部と、
を備える受信装置。
【請求項５】
請求項４に記載の受信装置であって、更に、
前記データパケットに対応するフレームがデコードされる復号時刻以前の所定時刻になるまで、前記パケットをバッファする受信バッファ部を備え、
前記検査行列導出部は、前記受信バッファ部に蓄積されたパケットに対応する複数のフレームを結合し、前記検査行列を導出する受信装置。
【請求項６】
ネットワークを介してパケットを送信する送信装置における送信方法であって、
データがエンコードされたフレームからデータパケットを生成するステップと、
前記生成される前記フレームあたりのデータパケット数に基づいて、前記フレームを他のフレームと結合するか否かを判定するステップと、
前記判定の結果に応じて、検査行列を導出するステップと、
前記検査行列を用いて、前記データパケットから冗長パケットを生成するステップと、
前記データパケット及び前記冗長パケットを送信するステップと、
を有する送信方法。
【請求項７】
ネットワークを介してパケットを受信する受信装置における受信方法であって、
パケットを受信するステップと、
前記受信されたパケットに含まれる、検査行列の生成のためにフレームが結合されたか否かを示す情報に基づいて、前記検査行列を導出するステップと、
前記受信されたデータパケット及び冗長パケットと、前記検査行列と、に基づいて、誤り訂正復号するステップと、
を有する受信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、送信装置、受信装置、送信方法、及び受信方法に関する。
【背景技術】
【０００２】
データ伝送における誤り制御の１つの手法として、前方誤り訂正（ＦＥＣ：Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ)が知られている。
【０００３】
ＦＥＣに関する技術として、下記のＦＥＣエンコード方法が知られている（例えば、非特許文献１参照）。この方法では、順次供給されたメディアパケットが有するペイロードそれぞれをバッファメモリに順次蓄える。また、バッファメモリに蓄えられたペイロードの数が規定数に達したか、又は、バッファメモリにペイロードが蓄え始め得たときからの時間が一定時間に達したかを検知する。
【０００４】
上記規定数に達したと検知された場合、バッファメモリに蓄えられた規定数のペイロードによりＦＥＣ演算を行って、ＦＥＣのための第１の情報を生成する。そして、第１の情報を該第１の情報に対応するメディアパケットとともに出力する。
【０００５】
上記一定時間に達したと検知された場合に、バッファメモリに蓄えられたペイロードを用いてＦＥＣ演算を行って、ＦＥＣのための第２の情報を生成する。そして、第２の情報を該第２の情報に対応するメディアパケットとともに出力する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−０１１０９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１の技術では、帯域利用効率の低下を抑制することは困難であった。
【０００８】
本開示は、上記事情に鑑みてなされたものであって、帯域利用効率の低下を抑制できる送信装置、受信装置、通信システム、送信方法、及び受信方法を提供する。
【課題を解決するための手段】
【０００９】
本開示の送信装置は、ネットワークを介してパケットを送信する送信装置であって、データがエンコードされたフレームからデータパケットを生成するデータパケット生成部と、前記データパケット生成部により生成される前記フレームあたりのデータパケット数に基づいて、前記フレームを他のフレームと結合するか否かを判定する結合判定部と、前記結合判定部により判定結果に応じて、検査行列を導出する検査行列導出部と、前記検査行列を用いて、前記データパケットから冗長パケットを生成する冗長パケット生成部と、前記データパケット及び前記冗長パケットを送信する送信部と、を備える。
【発明の効果】
【００１０】
本開示によれば、帯域利用効率の低下を抑制できる。
【図面の簡単な説明】
【００１１】
【図１】実施形態における通信システムの構成例を示す図
【図２】実施形態における送信装置の構成例を示す図
【図３】実施形態における受信装置の構成例を示す図
【図４】実施形態における通信システムの動作例の概要図
【図５】実施形態における送信装置による検査行列の決定処理の一例を示すフローチャート
【図６】実施形態における映像ピクチャの結合なしの場合のＬＤＰＣ符号化処理のイメージ図
【図７】実施形態における映像ピクチャの結合ありの場合のＬＤＰＣ符号化処理のイメージ図
【図８】（Ａ）実施形態における送信装置によるＬＤＰＣ符号化と、送信されるパケットと、を時系列に示す図、（Ｂ）従来のパケットをバッファしない送信側によるＬＤＰＣ符号化と、送信されるパケットと、を時系列に示す図、（Ｃ）従来のパケットをバッファする送信側によるＬＤＰＣ符号化と、送信されるパケットと、を時系列に示す図
【図９】実施形態における受信装置による検査行列の決定処理の一例を示すフローチャート
【図１０】実施形態における映像ピクチャの結合ありの場合のＬＤＰＣ復号処理のイメージ図
【図１１】（Ａ）従来方法によりパケットをバッファせずにＬＤＰＣ符号化した場合に送信又は受信されるパケットを時系列に示す図、（Ｂ）従来方法によりパケットをバッファしてＬＤＰＣ符号化した場合に送信又は受信されるパケットを時系列に示す図
【図１２】従来方法によりパケットをバッファしてＬＤＰＣ符号化した場合に送信又は受信されるパケットの他例を時系列に示し、ＬＤＰＣ復号結果を示す図
【図１３】実施形態におけるＬＤＰＣ符号化と送信又は受信されるパケットとの一例を時系列に示す図
【図１４】実施形態におけるＬＤＰＣ符号化と送信又は受信されるパケットとの一例を時系列に示し、ＬＤＰＣ復号結果例を示す図
【図１５】実施形態における送信装置の動作例の概要図
【図１６】実施形態における受信装置の動作例の概要図
【発明を実施するための形態】
【００１２】
以下、本開示の実施形態について、図面を参照して説明する。
【００１３】
（本開示の一形態を得るに至った経緯）
【００１４】
例えばＴＶ会議システムのＩＰベースのリアルタイムコミュニケーションシステムにおいて、高品質の映像伝送及び音声伝送の要望が高まっている。
【００１５】
ＩＰネットワーク環境では、数％程度のパケットロスが発生する。そのため、例えば再送（ＡＲＱ：Ａｕｔｏｍａｔｉｃ  ｒｅｐｅａｔ−ｒｅｑｕｅｓｔ）又はパケット消失訂正（ＦＥＣ：Ｆｏｒｗａｒｄ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ）機能を用いて、例えば映像品質又は音声品質を確保している。リアルタイム性の要求が高い映像伝送システムの場合、ＲＴＴ（Ｒｏｕｎｄ  Ｔｒｉｐ  Ｔｉｍｅ）が短い環境ではＡＲＱが有効であり、ＲＴＴが長い環境又はパケットロス率が高い環境ではＦＥＣが有効である。
【００１６】
また、近年、無線回線の高速化に伴い、モバイル環境における映像伝送システムが登場してきている。高速な無線回線には、例えばＷｉＭＡＸ（Ｗｏｒｌｄｗｉｄｅ  Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ  ｆｏｒ  Ｍｉｃｒｏｗａｖｅ  Ａｃｃｅｓｓ），ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）が含まれる。
【００１７】
無線環境では、例えば端末の移動による電波環境の変化又はハンドオーバが頻繁に起こるため、有線環境と比較すると、通信品質（例えばパケットロス率又はＲＴＴ）が劣悪であることが多い。従って、無線環境において映像品質又は音声品質を確保する手段としては、ＦＥＣが適している。
【００１８】
ＦＥＣでは、例えば映像又は音声のデータパケットから冗長パケットを生成し、データパケットとともにネットワーク上に冗長パケットを送信する。データパケットに対し、より多くの冗長パケットを付与することにより、パケットロスに対する耐性を強化できる。ただし、無線環境では、有線環境に比べ伝送帯域が限られていることが多く、ネットワークのロス率に応じて適切な冗長パケット数を付与することが好ましい。
【００１９】
ＦＥＣの代表的な方式として、例えば、Ｒｅｅｄ−Ｓｏｌｏｍｏｎ符号及び低密度パリティ検査（ＬＤＰＣ：Ｌｏｗ  Ｄｅｎｓｉｔｙ  Ｐａｒｉｔｙ  Ｃｈｅｃｋ）符号がある。
【００２０】
Ｒｅｅｄ−Ｓｏｌｏｍｏｎ符号は、低冗長度であり、強いパケットロス耐性を得られる強力な符号化である反面、復号化のための演算処理が複雑になる。そのため、Ｒｅｅｄ−Ｓｏｌｏｍｏｎ符号をリアルタイム映像伝送に適応する場合、短時間において計算処理するためのハードウェア実装又は高性能なＣＰＵの実装が必要となり、端末への実装コストが高くなる。
【００２１】
ＬＤＰＣ符号については、Ｒｅｅｄ−Ｓｏｌｏｍｏｎ符号に比べて演算量が小さく、ソフトウェアにより実装できる。また、ＬＤＰＣ符号は、データパケット数が多い状況では、Ｒｅｅｄ−Ｓｏｌｏｍｏｎ符号を上回るパケットロス耐性を示す。
【００２２】
一方、無線環境では、１〜２Ｍｂｐｓ程度の低帯域しか確保できない環境もある。このような低帯域の環境では、１ピクチャあたりのデータパケット数が少なくなるので、必ずしもデータパケット数が多い環境ではない。
【００２３】
本実施形態では、ＦＥＣ符号として、ＬＤＰＣ符号を用いることを主に例示する。また、データパケット数をＫとし、データパケット数Ｋと冗長パケット数とを合算した総パケット数をＮとし、データパケット数：Ｋ、総パケット数：ＮのＬＤＰＣ符号をＬＤＰＣ（Ｎ，Ｋ）と示す。ＬＤＰＣ（Ｎ，Ｋ）は符号化パラメータの１つである。
【００２４】
例えば、ＬＤＰＣ（１０，６）の場合、従来のＦＥＣ装置（エンコード側）は、映像データパケットを６個エンコーダから取得し、そのパケットから冗長パケットを４個生成する。従来のＦＥＣ装置は、取得された映像データパケットが６個未満であった場合、ＦＥＣ装置は、６個目の映像データパケットが取得されるまでＬＤＰＣ符号化せずにバッファし、６個目が取得されてからＬＤＰＣ符号化する（バッファ符号化）。
【００２５】
しかし、エンコーダから取得されるパケット数が少ない状況では、映像データパケット数がＬＤＰＣ符号化するための数に達するまでに時間を要し、長時間にわたりＬＤＰＣ符号化できない。映像伝送システムのエンコーダは伝送帯域に応じてエンコードレートを調整することが多く、低いエンコードレートでは、１フレームから１パケットしか出力されないことがある。この場合、ＬＤＰＣ符号化に遅延が発生することがある。
【００２６】
特許文献１では、ＦＥＣ装置がタイムアウト機能を有することにより、このようなＬＤＰＣ符号化の遅延を抑制している。具体的には、一定時間内に出力された映像データパケット数が既定の数に達しない場合、不足分をヌルパケットにより補填し、ＬＤＰＣ符号化する。
【００２７】
しかし、特許文献１では、ヌルパケットを符号化に用いるので、映像データパケット数と冗長パケット数との比率（ＦＥＣ強度)が変化し、帯域利用効率が低下する。
【００２８】
例えば、タイムアウト機能付きバッファ符号化を用いて、ＬＤＰＣ（１０，６）の符号化を行うとする。また、ＦＥＣ装置は、データパケットを２個取得した時点においてタイムアウトし、４個のヌルパケットを補填してＬＤＰＣ符号化を行うとする。この場合、ＦＥＣ装置は、データパケット２個と冗長パケット４個を送信する。ヌルパケットの数は、例えばヘッダに書き込まれる。
【００２９】
従って、ＬＤＰＣ符号化によるパケット数は６個であるが、データパケット（２個）に対し２倍の冗長パケット（４個）を送っていることに等しい。過剰な冗長パケットを付加して送信することにより、帯域利用効率が低下する。
【００３０】
以下では、帯域利用効率の低下を抑制できる送信装置、受信装置、送信方法、及び受信方法について説明する。
【００３１】
図１は本開示の実施形態における通信システム１０００の構成例を示すブロック図である。通信システム１０００は、送信装置１００、受信装置３００、及びＩＰネットワーク２００を含む。送信装置１００及び受信装置３００は、ＩＰネットワーク２００を介して接続される。ＩＰネットワーク２００は、有線又は無線の回線を有する。通信システム１０００は、例えばテレビ会議システム又は映像伝送システムに適用できる。
【００３２】
通信システム１０００では、送信装置１００と受信装置３００との間において、データパケットとフィードバックパケットとが送受信される。フィードバックパケットは、フィードバック情報を含む。フィードバック情報は、例えば、ＲＴＴの情報及びパケットロス率の情報を含む。
【００３３】
次に、送信装置１００の構成例について説明する。
図２は送信装置１００の構成例を示すブロック図である。
【００３４】
送信装置１００は、エンコーダ部１１０、ＱｏＳ制御部１２０、パケット化部１３０、ＬＤＰＣ符号化演算部１４０、ＬＤＰＣ符号化処理決定部１５０、送信バッファ部１６０、ＲＴＰパケット送信部１７０、及びＲＴＣＰパケット受信部１８０を備える。
【００３５】
エンコーダ部１１０は、ＱｏＳ制御部１２０からコーデックレートの情報を取得し、コーデックレートに応じて映像データをエンコードする。つまり、エンコーダ部１１０は、映像データをエンコード（符号化）し、映像ピクチャを生成する。
【００３６】
具体的には、エンコーダ部１１０は、ＱｏＳ制御部１２０から通知されるエンコードレートに応じて、映像データを所定の符号化方式（例えばＨ．２６４）を用いて圧縮符号化する。エンコーダ部１１０は、符号化されたデータとしての映像ピクチャ（例えばＩピクチャ、Ｐピクチャ）をパケット化部１３０に送る。映像ピクチャは、フレームの一例である。
【００３７】
ＱｏＳ制御部１２０は、ＲＴＣＰパケット受信部１８０からフィードバック情報を取得し、フィードバック情報に基づいて帯域推定する。例えば、ＱｏＳ制御部１２０は、パケットロス率とＲＴＴとから、ネットワーク帯域（例えば伝送レート）を推定する。ＱｏＳ制御部１２０は、推定されたネットワーク帯域の情報をコーデックレートの情報としてエンコーダ部１１０に送る。
【００３８】
また、ＱｏＳ制御部１２０は、フィードバック情報に含まれるパケットロス率及びＲＴＴの情報を、ＬＤＰＣ符号化処理決定部１５０に送る。
【００３９】
また、ＱｏＳ制御部１２０は、パケットロス率に基づいて、ＬＤＰＣ符号化においてどの程度冗長パケットを付与するかを示すＦＥＣ強度を導出する。例えば、データパケット数と冗長パケット数とが同数の場合、ＦＥＣ強度＝１００である。ＱｏＳ制御部１２０は、導出されたＦＥＣ強度をＬＤＰＣ符号化処理決定部１５０に出力する。
【００４０】
パケット化部１３０は、エンコーダ部１１０によりエンコードされた映像データ（映像ピクチャ）を規定のパケットサイズにパケット化する。パケット化部１３０は、１ピクチャあたりのパケット数Ｋの情報をＬＤＰＣ符号化処理決定部１５０に通知する。パケット化部１３０は、生成されたパケットをデータパケットとして、ＬＤＰＣ符号化演算部１４０と送信バッファ部１６０とに送る。
【００４１】
また、パケット化部１３０は、データパケットのヘッダを生成する。ヘッダには、例えばＬＤＰＣ符号化情報が含まれる。パケット化部１３０は、データパケット生成部の一例である。ＬＤＰＣ符号化情報は、例えば、ＬＤＰＣ（Ｎ，Ｋ）により表わされる符号化パラメータの情報、後述する結合フラグの情報、具体的な検査行列の値、又は検査行列を生成するための初期シードの情報を含む。ＬＤＰＣ符号化情報により、検査行列の情報が受信装置３００に通知される。
【００４２】
ＬＤＰＣ符号化演算部１４０は、ＬＤＰＣ符号化処理決定部１５０から取得した検査行列の情報に基づいて、ＬＤＰＣ符号化する。つまり、ＬＤＰＣ符号化演算部１４０は、ＬＤＰＣ検査行列の情報とデータパケットとを用いて、ＬＤＰＣ符号化し、冗長パケットを生成する。ＬＤＰＣ符号化演算部１４０は、冗長パケット生成部の一例である。ＬＤＰＣ符号化の詳細については後述する。
【００４３】
また、ＬＤＰＣ符号化演算部１４０は、ＬＤＰＣ符号化に必要なパケットを、送信バッファ部１６０にバッファされた過去のパケットから取得することもある。ＬＤＰＣ符号化演算部１４０は、生成された冗長パケットとデータパケットとをＲＴＰパケット送信部１７０へ送る。
【００４４】
また、ＬＤＰＣ符号化演算部１４０の機能は、例えばＬＤＰＣ符号器により実現される。
【００４５】
ＬＤＰＣ符号化処理決定部１５０は、例えば、データパケット数、ＲＴＴ、及びパケットロス率の情報に基づいて、ＬＤＰＣ符号化に用いる検査行列を導出する。
【００４６】
また、ＬＤＰＣ符号化処理決定部１５０は、検査行列の生成に用いられる映像ピクチャを結合するか否かを決定する。ＬＤＰＣ符号化処理決定部１５０は、例えば、パケットロス率、ＲＴＴ、及びデータパケット数の情報から、映像ピクチャを結合するか否かを決定する。映像ピクチャを結合すると、ＬＤＰＣ符号が結合される。
【００４７】
ＬＤＰＣ符号化処理決定部１５０は、映像ピクチャを結合する場合、映像ピクチャを結合するか否かを示す結合フラグをＯＮにし、映像ピクチャを結合しない場合、結合フラグをＯＦＦにする。ＬＤＰＣ符号化処理決定部１５０は、結合フラグの情報をＬＤＰＣ符号化演算部１４０に送る。結合フラグの情報は、送信されるパケットのヘッダに含まれる。
【００４８】
また、ＬＤＰＣ符号化処理決定部１５０は、ＬＤＰＣ符号化に用いる検査行列を導出する。ＬＤＰＣ符号化処理決定部１５０は、結合フラグがＯＦＦである場合には、映像ピクチャを結合せずに、検査行列を導出する。ＬＤＰＣ符号化処理決定部１５０は、結合フラグがＯＮである場合には、映像ピクチャを結合した検査行列（結合検査行列）を導出する。結合検査行列は検査行列の一例である。
【００４９】
ＬＤＰＣ符号化処理決定部１５０は、映像ピクチャを結合する場合、例えば、エンコードされた映像ピクチャと送信バッファ部１６０により蓄積されたデータパケットに対応するピクチャを結合し、検査行列を導出する。これにより、パケットロスに対する耐性を強化できる。
【００５０】
ＬＤＰＣ符号化処理決定部１５０は、検査行列自体を内部テーブル（ルックアップテーブル）に保持しておき、必要時に内部テーブルから取得してもよい。検査行列は、ＦＥＣ強度毎に内部テーブルに保持されてもよい。また、ピクチャ結合用の内部テーブルを非ピクチャ結合用の内部テーブルと分けてもよい。また、ＬＤＰＣ符号化処理決定部１５０は、初期シードを保持しておき、初期シードから検査行列を算出してもよい。送信装置１００及び受信装置３００は、検査行列の情報、又は、初期シード及び行列を生成するためのアルゴリズムの情報を予め共有してもよい。
【００５１】
ＬＤＰＣ符号化処理決定部１５０は、ＬＤＰＣ符号化するためのＬＤＰＣ符号化情報をパケット化部１３０に送り、検査行列の情報をＬＤＰＣ符号化演算部１４０に送る。
【００５２】
送信バッファ部１６０は、例えばＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）により構成され、パケット化部１３０において処理済みのパケットを一時的に蓄積する。このパケットは、映像ピクチャが結合される場合に利用される。パケット化部１３０において処理済みのパケットは、ＲＴＰパケット送信部１７０により過去に送信されたパケットである。
【００５３】
ＲＴＰパケット送信部１７０は、ＲＴＰ（Ｒｅａｌ−ｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）を用いて、ＬＤＰＣ符号化演算部１４０からの冗長パケットとデータパケットとを、ＩＰネットワーク２００を介して受信装置３００に送信する。
【００５４】
ＲＴＣＰパケット受信部１８０は、ＲＴＣＰ（Ｒｅａｌ−ｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）を用いて、ＩＰネットワーク２００を介して受信装置３００により送信されたフィードバックパケットを受信する。
【００５５】
また、ＲＴＣＰパケット受信部１８０は、フィードバックパケットに含まれるフィードバック情報を抽出する。フィードバック情報は、例えばパケットロス率の情報及びＲＴＴの情報を含む。ＲＴＣＰ受信部１０１は、抽出されたフィードバック情報をＱｏＳ制御部１２０に送る。ＲＴＴは、送信装置１００と受信装置３００との間における往復伝送時間の一例である。
【００５６】
次に、受信装置３００の構成例について説明する。
図３は受信装置３００の構成例を示すブロック図である。
【００５７】
受信装置３００は、ＲＴＰパケット受信部３１０、受信バッファ部３２０、ロス検出部３３０、ＬＤＰＣ復号処理決定部３４０、復号時刻監視部３５０、ＬＤＰＣ復号演算部３６０、及びデコード部３７０を備える。また、受信装置３００は、フィードバック生成部３８０及びＲＴＣＰパケット送信部３９０を備える。
【００５８】
ＲＴＰパケット受信部３１０は、ＲＴＰを用いて、ＩＰネットワーク２００を介して送信装置１００からデータパケット及び冗長パケットを受信する。また、ＲＴＰパケット受信部３１０は、データパケット及び冗長パケット（受信パケット）を、受信バッファ部３２０及びロス検出部３３０に送る。
【００５９】
また、ＲＴＰパケット受信部３１０は、受信パケットのヘッダに含まれる時刻情報を、フィードバック生成部３８０に送る。この時刻情報は、送信装置１００による送信時刻の情報を含む。また、ＲＴＰパケット受信部３１０は、受信パケットのヘッダに含まれるＬＤＰＣ符号化情報を、ＬＤＰＣ復号処理決定部３４０に送る。ＬＤＰＣ符号化情報は、符号化パラメータ及び結合フラグの情報を含む。
【００６０】
受信バッファ部３２０は、例えばＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）により構成され、受信されたデータを蓄積する。このデータは、映像ピクチャが結合された場合のＬＤＰＣ復号演算部３６０によるＬＤＰＣ復号に利用される。また、復号時刻になる度に、受信バッファ部３２０に蓄積されたデータが削除されてもよい。
【００６１】
ロス検出部３３０は、ＲＴＰパケット受信部３１０からのパケットのＲＴＰシーケンス番号を取得し、パケット（データパケット又は冗長パケット）のロスを検出する。ロス検出部３３０は、例えば、受信パケットのヘッダに含まれるシーケンス番号の連続性を確認することにより、パケットロスを検出する。
【００６２】
ロス検出部３３０は、パケットのロスが検出された場合、パケットロスの有無を示すパケットロスフラグをＯＮにし、パケットのロスが検出されなかった場合、パケットロスフラグをＯＦＦにする。ロス検出部３３０は、パケットロスフラグをＬＤＰＣ復号処理決定部３４０に送る。
【００６３】
また、ロス検出部３３０は、受信パケット数とロスパケット数とからパケットロス率を算出し、パケットロス率の情報をフィードバック生成部３８０へ送る。このパケットロス率は、ＩＰネットワーク２００におけるパケットロス率に相当する。
【００６４】
ＬＤＰＣ復号処理決定部３４０は、ロス検出部３３０からパケットロスフラグの情報を受け取り、ＲＴＰパケット受信部３１０から符号化パラメータ及び結合フラグの情報を受け取り、復号時刻監視部３５０から復号時刻の情報を受け取る。
【００６５】
ＬＤＰＣ復号処理決定部３４０は、図示しないタイマが復号時刻になると、ＲＴＰ受信部２０１からのＬＤＰＣ符号化情報に基づいて、ＬＤＰＣ復号に用いる検査行列を導出する。ＬＤＰＣ復号処理決定部３４０は、導出された検査行列の情報をＬＤＰＣ復号演算部３６０に送る。復号時刻は、デコード部３７０によりデータパケットがデコードされる時刻である。また、所定期間毎に復号時刻となる。
【００６６】
例えば、ＬＤＰＣ復号処理決定部３４０は、結合フラグがＯＮであり、パケットロスフラグがＯＮである場合、結合検査行列を導出する。また、例えば、ＬＤＰＣ復号処理決定部３４０は、ＬＤＰＣ符号化情報に具体的な結合検査行列の値が含まれる場合、その結合検査行列に基づいてＬＤＰＣ復号に用いる検査行列を導出する。また、ＬＤＰＣ復号処理決定部３４０は、検査行列を生成するための初期シードを取得し、所定のアルゴリズムを用いて検査行列を算出してもよい。
【００６７】
また、送信装置１００と同様に、ＬＤＰＣ復号処理決定部３４０は、検査行列自体を内部テーブルに保持しておき、必要時に内部テーブルから取得してもよい。検査行列は、ＦＥＣ強度毎に内部テーブルに保持されてもよい。また、ピクチャ結合用の内部テーブルを非ピクチャ結合用の内部テーブルと分けてもよい。また、ＬＤＰＣ復号処理決定部３４０は、初期シードを保持しておき、初期シードからＬＤＰＣ検査行列を算出してもよい。送信装置１００及び受信装置３００は、ＬＤＰＣ検査行列の情報、又は、初期シード及び行列を生成するためのアルゴリズムの情報を予め共有してもよい。
【００６８】
復号時刻監視部３５０は、復号時刻を監視し、復号時刻の情報をＬＤＰＣ復号処理決定部３４０に送る。
【００６９】
ＬＤＰＣ復号演算部３６０は、ＬＤＰＣ復号処理決定部３４０から通知された検査行列の情報に基づきＬＤＰＣ復号し、復号された映像データをデコード部３７０に送信する。例えば、ＬＤＰＣ復号演算部３６０は、検査行列の情報、データパケット、及び冗長パケットを用いて、ロスパケットの回復処理（ＬＤＰＣ復号）を行う。ＬＤＰＣ復号は、ＦＥＣ復号の一例であり、誤り訂正復号の一例である。
【００７０】
また、映像ピクチャが結合された結合ＬＤＰＣ符号である場合、ＬＤＰＣ復号演算部３６０は、受信バッファ部３２０にバッファされたデータパケット又は冗長パケットを用いて、ＬＤＰＣ復号する。
【００７１】
また、ＬＤＰＣ復号演算部３６０は、ＬＤＰＣ復号されたパケットをデパケット化し、映像ピクチャを生成する。
【００７２】
デコード部３７０は、所定時間毎に、ＬＤＰＣ復号演算部３６０からの映像ピクチャをデコードすることにより、映像データを出力する。デコード部３７０は、映像ピクチャのデコードのタイミングを復号時刻として、復号時刻の情報を復号時刻監視部３５０に送る。
【００７３】
フィードバック生成部３８０は、ＲＴＰパケット受信部３１０から受信パケットを受信した受信時刻の情報を受け取り、ロス検出部３３０からパケットロス率の情報を受け取る。フィードバック生成部３８０は、この受信時刻及びパケットロス率の情報を含むフィードバックパケットを生成し、フィードバックパケットをＲＴＣＰパケット送信部３９０に送る。
【００７４】
ＲＴＣＰパケット送信部３９０は、フィードバック生成部３８０からフィードバックパケットを受け取る。ＲＴＣＰパケット送信部３９０は、ＲＴＣＰを用いて、ＩＰネットワーク２００を介してフィードバックパケットを送信装置１００に送信する。
【００７５】
次に、通信システム１０００の動作概要について説明する。
図４は、通信システム１０００の動作例の概要図である。
【００７６】
送信装置１００は、映像データをエンコードした後にパケット化する。送信装置１００は、フィードバック情報を基に帯域推定し、帯域推定値を、エンコードに用いるコーデックレートとする。送信装置１００は、パケット化されたデータパケットをＬＤＰＣ符号化した後、ＩＰネットワーク２００に送信する。
【００７７】
送信装置１００は、１ピクチャあたりのデータパケット数、ＲＴＴ、パケットロス率に基づいて、例えば、符号化パラメータ及び複数の映像ピクチャを結合するか否かを決定する。
【００７８】
受信装置３００は、ＩＰネットワーク２００からのパケット受信後、ＲＴＰシーケンス番号を基にパケットロスが発生したか否かを判定する。受信装置３００は、この判定結果に基づき、ＬＤＰＣ復号する。受信装置３００は、例えば、パケットロスの有無、符号化パラメータの情報を基に、ＬＤＰＣ復号する。
【００７９】
また、受信装置３００は、様々な遅延の影響を吸収するため、映像ピクチャの再生に間に合う範囲における限界まで待機してから、ＬＤＰＣ復号する。上記限界は、例えば、映像ピクチャから映像データに定期的にデコードされる時刻（復号時刻）である。上記遅延には、例えば、ＩＰネットワーク２００におけるネットワーク遅延、又は受信装置３００における処理遅延を含む。受信装置３００は、ＬＤＰＣ復号後のデータパケットをデコーダに送り、映像データにデコードする。
【００８０】
受信装置３００は、ＬＤＰＣ復号と並行して、フィードバックパケットの送信を行う。フィードバックパケットの送信では、受信装置３００は、送信装置１００に対し、ＩＰネットワーク２００のＲＴＴ及びパケットロス率の情報を含むフィードバック情報を通知する。送信装置１００は、フィードバック情報に基づいて帯域推定できる。
【００８１】
次に、送信装置１００の具体的な動作について説明する。
まず、図１５を用いて、送信装置１００の動作例の概要について説明する。
【００８２】
データパケット生成部は、データがエンコードされたフレームからデータパケットを生成する（Ｓ１１）。データパケット生成部は、例えばパケット化部１３０である。
【００８３】
続いて、結合判定部は、データパケット生成部により生成されるフレームあたりのデータパケット数に基づいて、フレームを他のフレームと結合するか否かを判定する（Ｓ１２）。結合判定部は、例えばＬＤＰＣ符号化処理決定部１５０である。
【００８４】
続いて、検査行列導出部は、結合判定部による判定結果に応じて、検査行列を導出する（Ｓ１３）。検査行列導出部は、例えばＬＤＰＣ符号化処理決定部１５０である。
【００８５】
続いて、冗長パケット生成部は、検査行列を用いて、データパケットから冗長パケットを生成する（Ｓ１４）。冗長パケット生成部は、例えばＬＤＰＣ符号化演算部１４０である。
【００８６】
続いて、送信部は、データパケット及び冗長パケットを送信する（Ｓ１５）。送信部は、例えばＲＴＰパケット送信部１７０である。
【００８７】
次に、送信装置１００によるＬＤＰＣ符号化処理について説明する。
図５は、検査行列の決定処理の一例を示すフローチャートである。
【００８８】
ＬＤＰＣ符号化処理決定部１５０は、パケット化部１３０から通知された１ピクチャ辺りのデータパケット数Ｋと、所定の閾値θＫと、を比較し、データパケット数Ｋが所定の閾値θＫよりも小さいか否かを判定する（Ｓ１０１）。
【００８９】
また、ＬＤＰＣ符号化処理決定部１５０は、ＱｏＳ制御部１２０から通知されたＲＴＴと所定の閾値θＤとを比較し、ＲＴＴが所定の閾値θＤよりも小さいか否かを判定する（Ｓ１０２）。
【００９０】
データパケット数Ｋが所定の閾値θＫよりも小さく、かつ、ＲＴＴが所定の閾値θＤよりも小さい場合、ＬＤＰＣ符号化処理決定部１５０は、結合フラグをＯＮとする（Ｓ１０３）。
【００９１】
一方、データパケット数Ｋが所定の閾値θＫ以上である場合、又は、ＲＴＴが所定の閾値θＤ以上である場合、ＬＤＰＣ符号化処理決定部１５０は、結合フラグをＯＦＦとする（Ｓ１０４）。
【００９２】
Ｓ１０４において結合フラグをＯＦＦにするのは、１ピクチャあたりのデータパケット数がピクチャ結合しなくても大きい場合、結合ＬＤＰＣ符号を使わなくても、ＬＤＰＣ復号の回復率を所望の水準に確保できるためである。また、ＲＴＴが長い環境では、パケット受信後すぐにＬＤＰＣ復号するため、復号時刻を考慮すると結合ＬＤＰＣによる改善効果が得られないことがあるためである。
【００９３】
なお、結合フラグの情報（例えばＯＮ／ＯＦＦの情報）は、例えば、パケット化部１３０によりＬＤＰＣパケットのヘッダ部分に記述される。
【００９４】
Ｓ１０３又はＳ１０４において結合フラグのＯＮ／ＯＦＦの決定後、ＬＤＰＣ符号化処理決定部１５０は、内部テーブルを参照して、検査行列を決定する（Ｓ１０５）。ＬＤＰＣ符号化処理決定部１５０の内部テーブルには、例えば、ＦＥＣ強度毎における検査行列が保存されている。ＬＤＰＣ符号化処理決定部１５０は、例えば、ネットワークのパケットロス率に応じて、特定のＦＥＣ強度の検査行列を選択する。
【００９５】
ＦＥＣ強度が大きい検査行列が選択されると、パケットロスが頻発する高パケットロス環境においても、通信システム１０００の品質目標として設定される目標パケットロス率Ｐｔａｒｇｅｔを達成できる可能性が高くなる。一方、ＦＥＣ強度が小さい行列が選択されると、冗長パケット数が少なくなり、伝送帯域を圧迫することを防止できる。
【００９６】
ＬＤＰＣ符号化処理決定部１５０は、結合フラグがＯＮの場合には、今回の検査行列の要素を、先のパケットに対するＬＤＰＣ符号化に用いられた検査行列の要素に結合させ、検査行列を設計する。このように、後続のパケット側のＬＤＰＣ符号化処理を変更するように検査行列を結合するので、先のパケットのＬＤＰＣ符号化は、後続のパケットに対するＬＤＰＣ符号化用の結合フラグのＯＮ／ＯＦＦの影響を受けない。この点、時間的に後続のパケットを待機してＬＤＰＣ符号化するバッファ符号化とは異なる。
【００９７】
なお、ＬＤＰＣ符号化処理決定部１５０は、ＩＰネットワーク２００の状況（例えばＲＴＴ）を考慮せずに、映像ピクチャを結合するか否かを決定してもよい。つまり、Ｓ１０２の処理は省略できる。
【００９８】
送信装置１００は、データパケット数に応じて映像ピクチャを結合するか否かを決定することにより、ロス耐性が不足すると推定される場合に、映像ピクチャを結合できるので、所望のロス耐性が得られる。また、送信装置１００は、ＲＴＴに応じて映像ピクチャを結合するか否かを決定することにより、受信装置３００の復号時刻を考慮して映像ピクチャを結合できるので、受信装置３００が復号時刻を超過してパケットを受信する確率を低下できる。
【００９９】
また、検査行列の情報は、上述のように内部テーブルに格納されていない場合であっても、内部テーブルに格納された情報（例えば初期シードの情報）から、所望の検査行列が生成されてもよい。
【０１００】
図６は、映像ピクチャの結合なしの場合のＬＤＰＣ符号化処理のイメージ図である。
【０１０１】
図６では、データパケット数Ｋ＝３とし、ＦＥＣ強度＝１００とする。また、ＬＤＰＣ符号化演算部１４０が、以下の式（１）に示される検査行列を用いて、ＬＤＰＣ符号化処理することを想定する。この検査行列Ｈは、ＬＤＰＣ符号化処理決定部１５０により決定される。
【０１０２】
【数１】
2014099708.tif 000003
【０１０３】
また、ＬＤＰＣ符号化演算部１４０は、式（１）により示される検査行列Ｈに対し、データパケットＤ［０］，Ｄ［１］，Ｄ［２］、及び冗長パケットＰ［０］，Ｐ［１］，Ｐ［２］が、以下の数式（２）の関係を満たすように冗長パケットを生成する。
【０１０４】
【数２】
2014099708.tif 000004
【０１０５】
つまり、ＬＤＰＣ符号化演算部１４０は、以下の式（３）〜（５）を用いて、冗長パケットを生成する。
【０１０６】
【数３】
2014099708.tif 000005
【数４】
2014099708.tif 000006
【数５】
2014099708.tif 000007
【０１０７】
図７は、映像ピクチャの結合ありの場合のＬＤＰＣ符号化処理のイメージ図である。
【０１０８】
図７では、ＬＤＰＣ符号化演算部１４０に、１ピクチャあたりのデータパケット数Ｋ＝２の映像データの後に、１ピクチャあたりのデータパケット数Ｋ＝１の映像データが到来することを想定する。つまり、１ピクチャ目のデータパケットにＤ［０］、Ｄ［１］が含まれ、２ピクチャ目のデータパケットにＤ［２］が含まれることを想定する。
【０１０９】
１ピクチャ目の符号化パラメータは、ＬＤＰＣ（４，２）である。２ピクチャ目の符号化パラメータは、（２，１）である。１ピクチャ目のＬＤＰＣ符号の生成に用いる検査行列Ｈ１１は、以下の式（６）により示される。２ピクチャ目のＬＤＰＣ符号の生成に用いる検査行列Ｈ１２は、以下の式（７）により示される。
【０１１０】
【数６】
2014099708.tif 000008
【数７】
2014099708.tif 000009
【０１１１】
例えば図７における閾値θＫ＝３とすると、上記映像データが到来する場合、映像ピクチャを結合しない。つまり、ＬＤＰＣ符号化演算部１４０は、１ピクチャ目を（Ｎ，Ｋ）＝（４，２）としてＬＤＰＣ符号化する。また、ＬＤＰＣ符号化演算部１４０は、２ピクチャ目を（Ｎ，Ｋ）＝（２，１）としてＬＤＰＣ符号化する。
【０１１２】
これに対し、例えば図７における閾値θＫ＝３とすると、上記映像データが到来する場合、映像ピクチャを結合する。つまり、ＬＤＰＣ符号化演算部１４０は、１ピクチャ目及び２ピクチャ目が結合された以下の式（８）により示される結合検査行列Ｈ１３を用いて、（Ｎ，Ｋ）＝（６，３）としてＬＤＰＣ符号化する。
【０１１３】
【数８】
2014099708.tif 000010
【０１１４】
結合検査行列Ｈ１３を生成する際に、初めて値が設定される要素Ｄ１００の部分及び要素Ｐ１００の部分には、任意の値が設定される。図７の例では、２ピクチャ目のデータパケットであるＤ［２］と、Ｄ［２］の直前のＤ［１］とを用いて、冗長パケットＰ［２］が生成されることを示している。つまり、ＬＤＰＣ符号化演算部１４０は、符号化対象のデータパケットと、直前のデータパケットと、を用いて、冗長パケットを生成してもよい。なお、ＬＤＰＣ符号化演算部１４０は、過去に処理したデータパケットであって直前ではないデータパケットを用いて、冗長パケットを生成してもよい。
【０１１５】
映像ピクチャを結合する場合、ピクチャ結合なしの場合のＬＤＰＣ符号に比べて、符号化パラメータ（Ｎ，Ｋ）を大きくでき、つまり検査行列の要素数を大きくできる。従って、ピクチャ結合ありの場合、符号化のバリエーションが多様化し、ピクチャ結合なしの場合に比べてパケットロスの回復率を改善できる。
【０１１６】
また、２ピクチャ目における映像ピクチャの結合処理は、１ピクチャ目と２ピクチャ目のピクチャ結合となるので、１ピクチャ目のＬＤＰＣ符号化に影響を与えない。つまり、１ピクチャ目の符号化パラメータは、ＬＤＰＣ（４，２）のままである。従って、バッファ符号化と異なり、ＬＤＰＣ符号化における遅延を抑制できる。
【０１１７】
送信装置１００によれば、過剰な冗長パケットを付加してパケットを送信することがなく、帯域利用効率の低下を抑制できる。また、図８（Ａ）に示すように、他のパケットの情報も用いてＬＤＰＣ符号化するので、符号化のバリエーションを多様化できる。従って、図８（Ｂ）に示す他のパケットの情報を用いずにパケットを送信する場合と比較すると、パケットロスに対する耐性を強化できる。
【０１１８】
また、図８（Ａ）に示すように、既に送信されたパケットの情報（過去情報）を用いてＬＤＰＣ符号化するので、ＬＤＰＣ符号化における遅延を抑制できる。この場合、受信装置３００において映像ピクチャをデコードする際に、より多くの映像ピクチャを結合してＬＤＰＣ復号できる。従って、図８（Ｃ）に示す後続のパケットを取得してからＬＤＰＣ符号化（バッファ符号化）する場合と比較すると、ネットワーク遅延に対する耐性を強化できる。
【０１１９】
なお、図８（Ａ）〜（Ｃ）では、Ｄ［０］〜Ｄ［３］をＤａｔａ［０］〜Ｄａｔａ［３］と示している。また、Ｐ［０］〜Ｐ［３］をＦＥＣ［０］〜ＦＥＣ［３］と示している。
【０１２０】
次に、受信装置３００の具体的な動作について説明する。
まず、図１６を用いて、受信装置３００の動作例の概要について説明する。
【０１２１】
受信部は、パケットを受信する（Ｓ２１）。受信部は、例えばＲＴＰパケット受信部３１０である。
【０１２２】
続いて、検査行列導出部は、受信パケットに含まれる、検査行列の生成のためにフレームが結合されたか否かを示す情報に基づいて、検査行列を導出する（Ｓ２２）。検査行列導出部は、例えばＬＤＰＣ復号処理決定部３４０である。
【０１２３】
続いて、復号部は、受信されたデータパケット及び冗長パケットと、検査行列と、に基づいて、誤り訂正復号する（Ｓ２３）。復号部は、例えばＬＤＰＣ復号演算部３６０である。
【０１２４】
次に、受信装置３００によるＬＤＰＣ復号処理について説明する。
図９は、検査行列の決定処理の一例を示すフローチャートである。
【０１２５】
まず、ＬＤＰＣ復号処理決定部３４０は、ロス検出部３３０からパケットロスフラグを受け取り、パケットロスフラグがＯＮであるか否かを判定する（Ｓ２０１）。
【０１２６】
なお、ロス検出部３３０は、パケットロスが発生した場合に限り、パケットロスフラグをＬＤＰＣ復号処理決定部３４０に通知してもよい。この場合、ＬＤＰＣ復号処理決定部３４０は、ロス検出部３３０からパケットロスフラグを受け取ったか否かを判定する。
【０１２７】
パケットロスフラグがＯＦＦである場合、パケットロスが発生しておらず、ＬＤＰＣ復号することなく全てのデータパケットが正常に受信されている。従って、ＬＤＰＣ復号演算部３６０によりパケットロスを回復させる必要がないので、図９の処理を終了する。なお、パケットロスフラグがＯＦＦであることを確認する代わりに、パケットロスフラグを受け取らなかったことを確認してもよい。
【０１２８】
パケットロスフラグがＯＮである場合、ＬＤＰＣ復号処理決定部３４０は、図示しないタイマを参照し、現在時刻が復号時刻であるか否かを判定する（Ｓ２０２）。
【０１２９】
復号時刻でない場合、ＬＤＰＣ復号処理決定部３４０は、受信バッファ部３２０へ受信パケットをバッファさせる（Ｓ２０３）。なお、復号時刻になるまでは、検査行列の決定を待機する。
【０１３０】
一方、現在時刻が復号時刻である場合、ＬＤＰＣ復号処理決定部３４０は、受信パケットに含まれる結合フラグがＯＮであるかＯＦＦであるかを判定する（Ｓ２０４）。結合フラグがＯＮ、つまり結合ＬＤＰＣ符号を利用している場合、先に受信された映像ピクチャと結合してからＬＤＰＣ復号することにより、パケットロスの回復率を改善できる。
【０１３１】
結合フラグがＯＮである場合、ＬＤＰＣ復号処理決定部３４０は、結合可能な映像ピクチャ、つまり受信バッファ部３２０にバッファされたパケットを結合して検査行列を決定する（Ｓ２０５）。この場合、ＬＤＰＣ復号処理決定部３４０は、例えば、結合される映像ピクチャに含まれるデータパケット数Ｋ、パケットロス率、及び映像ピクチャの結合数に応じて、結合検査行列を決定する。これにより、現在時刻から復号時刻まで時間的猶予がある場合、結合数（例えば２ピクチャ又は３ピクチャ）を例えば復号時刻に応じて増加できる。従って、データパケット数を増加でき、検査行列の要素のバリエーションを多様化できるので、パケットロスの回復率を改善できる。なお、結合数に応じて結合検査行列を決定するとは、例えば、どのピクチャと結合するか（例えば直前のピクチャと結合、２つ前のピクチャと結合）に応じて結合検査行列を決定することを含む。
【０１３２】
結合フラグがＯＦＦである場合、ＬＤＰＣ復号処理決定部３４０は、映像ピクチャを先に受信された映像ピクチャと結合せずに、ＬＤＰＣ復号する（Ｓ２０６）。この場合、ＬＤＰＣ復号処理決定部３４０は、例えばデータパケット数及びパケットロス率に応じて、検査行列を決定する。
【０１３３】
結合検査行列では、今回の検査行列の要素が、先の映像ピクチャのＬＤＰＣ復号に用いられた検査行列の要素と結合される。従って、時間的に後続するピクチャを受信するまでＬＤＰＣ復号できないという状況を回避でき、ＬＤＰＣ復号における遅延を抑制できる。
【０１３４】
また、復号時刻までの時間的猶予は、例えばＩＰネットワーク２００の遅延によって変化する。特に無線ネットワークを利用する場合、遅延の変動幅が予期できないことがある。受信装置３００により結合数を決定することにより、遅延変動を加味した上で、最大限データパケット数Ｋを大きく確保できる。結合数は、例えば、復号時刻に達した時点において、結合フラグがＯＮであるピクチャ数により決定される。
【０１３５】
このような検査行列の決定処理によれば、ＬＤＰＣ復号処理決定部３４０は、受信バッファ部３２０に蓄積されたパケットに対応する複数のピクチャを結合し、検査行列を導出してもよい。これにより、可能な限り検査行列に用いるデータパケット数を多くしてＬＤＰＣ復号でき、パケットロスに対する耐性を強化できる。
【０１３６】
なお、ＬＤＰＣ復号処理決定部３４０は、結合フラグがＯＮの場合、例えば内部テーブルからピクチャ結合ありの結合検査行列を選択する。ＬＤＰＣ復号処理決定部３４０は、結合フラグがＯＦＦの場合、例えば内部テーブルからピクチャ結合なしの検査行列を選択する。
【０１３７】
なお、符号化パラメータの情報は、ＬＤＰＣ符号化情報に含まれて送信装置１００から通知される。従って、ＬＤＰＣ復号処理決定部３４０は、結合フラグがＯＮの場合、結合ＬＤＰＣ符号に含まれる各ＬＤＰＣ符号の符号化パラメータに応じて、特定のＦＥＣ強度の検査行列を選択する。また、結合フラグがＯＦＦの場合、ＬＤＰＣ符号の符号化パラメータに応じて、特定のＦＥＣ強度の検査行列を選択する。
【０１３８】
図１０は、映像ピクチャの結合ありの場合のＬＤＰＣ復号処理のイメージ図である。なお、図１０では、送信装置１００において、２つの映像ピクチャが、先の式（５），（６）において示された検査行列を用いて、ＬＤＰＣ符号化が行われたことを想定している。受信装置３００は、式（５），（６）において示された検査行列、又はこの検査行列を生成するための情報（例えば初期シード）を、例えばＬＤＰＣ符号化情報から得る。なお、送信装置１００において、２ピクチャ目が１ピクチャ目と結合されたか否かは問わない。
【０１３９】
図１０では、受信装置３００がパケット受信し、ＬＤＰＣ復号するための検査行列を示す。図１０では、データパケットＤ［１］及び冗長パケットＰ［１］がＩＰネットワーク２００においてロスしている。そのため、ピクチャ結合無しの検査行列では、ＬＤＰＣ復号のためのデータが不足するので、ロスパケットを回復できない。
【０１４０】
この場合であっても、１ピクチャ目のパケット受信から復号時刻まで時間的猶予があり、２ピクチャ目のパケットを受信した場合、先に説明した式（８）の検査行列を用いて、ＬＤＰＣ復号できる。この場合、ＬＤＰＣ復号演算部３６０は、以下の式（９）のように、ＬＤＰＣ復号する。
【０１４１】
【数９】
2014099708.tif 000011
【０１４２】
なお、式（８）に示した結合検査行列の情報は、送信装置１００と同様の方法によりＬＤＰＣ復号処理決定部３４０が生成してもよいし、ＬＤＰＣ符号化情報に含めて送信装置１００から通知されてもよい。
【０１４３】
次に、復号時刻ｔｄと映像ピクチャの復号範囲との関係について説明する。
【０１４４】
図１１（Ａ），（Ｂ）は、従来方法によりＬＤＰＣ符号化した場合に送信又は受信されるパケットを時系列に示す図である。
【０１４５】
図１１（Ａ），（Ｂ）では、第１のピクチャにおけるデータパケットはＤ［０］であり、データパケット数はＫ＝１である。第２のピクチャにおけるデータパケットはＤ［１］，Ｄ［２］であり、データパケット数はＫ＝２である。第３のピクチャにおけるデータパケットはＤ［３］であり、データパケット数はＫ＝１である。なお、図面では、データパケットＤ［ｘ］を「ｘ」と示して無背景にしており、冗長パケットＰ［ｘ］を「ｘ」と示して背景をドットパターンにしている。
【０１４６】
図１１（Ａ），（Ｂ）では、送信側により送信されたパケットと、遅延が小さい場合の受信側による受信されるパケットと、遅延が大きい場合の受信側により受信されるパケットと、を時系列に示している。
【０１４７】
なお、受信側において、時間軸（ｔ軸）よりも上側に示されたパケット（例えば、Ｐ［０］、Ｄ［１］、Ｄ［２］）は、受信側に到達したパケットを示す。また、時間軸よりも下側に示されたパケット（例えば、Ｄ［０］）は、受信側に到達しなかったパケット、つまりロスしたパケットを示している。
【０１４８】
図１１（Ａ）では、パケットをバッファせずに、ＬＤＰＣ符号化及びＬＤＰＣ復号することを想定している。この場合、遅延が小さい場合でも大きい場合でも、復号時刻ｔｄまでに、パケットが送信側から受信側へ到達する。従って、送信側が送信したパケットの多くを用いて、ＬＤＰＣ復号できる。遅延は、例えばネットワーク遅延又は処理遅延を含む。
【０１４９】
ただし、パケットをバッファしないので、１ピクチャあたりのデータパケット数が小さい場合には、ＬＤＰＣ符号化及びＬＤＰＣ復号に用いる符号長（データパケット数）は小さいままであり、パケットロスに対する耐性を強化できない。
【０１５０】
図１１（Ｂ）では、パケットをバッファして、ＬＤＰＣ符号化及びＬＤＰＣ復号することを想定している。この場合、遅延が小さい場合には、復号時刻ｔｄまでに、パケットが送信側から受信側へ到達するが、遅延が大きい場合には、復号時刻ｔｄまでに、パケットが送信側から受信側へ到達しない。ここでは、遅延の程度は、図１１（Ａ）と同程度を想定している。図１１（Ｂ）では、受信側は、ＬＤＰＣ符号化した際の符号長と同じ符号長を用いる必要があるので、ＬＤＰＣ復号できないことになる。
【０１５１】
図１２は、従来方法によりパケットをバッファしてＬＤＰＣ符号化した場合に送信又は受信されるパケットの他例を時系列に示し、ＬＤＰＣ復号結果を示す図である。
【０１５２】
図１２では、Ｄ［０］及びＤ［２］がパケットロスしている。また、遅延が小さい場合、復号時刻ｔｄまでに送信側からの全てのパケットが受信側へ到達している。また、遅延が大きい場合、復号時刻ｔｄまでに送信側から送られるパケットのうち、データパケットＤ［３］、冗長パケットＰ［０］〜Ｐ［３］が受信側へ到達していない。
【０１５３】
従って、遅延が小さい場合には、Ｄ［０］及びＤ［２］がロスしているが、受信側は、ＬＤＰＣ復号によりＤ［０］及びＤ［２］を復元できる。一方、遅延が大きい場合には、Ｄ［０］及びＤ［２］がロスしており、Ｄ［３］は復号時刻ｔｄまでに到達せず、受信側はＬＤＰＣ復号できない。すなわち、受信側は、Ｄ［０］及びＤ［２］を復元できず、Ｄ［１］のみを得られる。
【０１５４】
図１３は、実施形態におけるＬＤＰＣ符号化と送信又は受信されるパケットとの一例を時系列に示す図である。
【０１５５】
図１３では、第１のピクチャにおけるデータパケットはＤ［０］であり、データパケット数はＫ＝１である。第２のピクチャにおけるデータパケットはＤ［１］，Ｄ［２］であり、データパケット数はＫ＝２である。第３のピクチャにおけるデータパケットはＤ［３］であり、データパケット数はＫ＝１である。なお、図１３では、データパケットＤ［ｘ］を「ｘ」と示して無背景にしており、冗長パケットＰ［ｘ］を「ｘ」と示して背景をドットパターンにしている。
【０１５６】
図１３に示すＬＤＰＣ符号化に用いる結合検査行列Ｈ２０を、以下の式（１０）に示す。
【数１０】
2014099708.tif 000012
【０１５７】
図１３では、送信装置１００により送信されたパケットと、遅延が小さい場合、中程度である場合、及び大きい場合の受信装置３００により受信されるパケットと、を時系列に示している。
【０１５８】
図１３では、遅延が小さい場合、復号時刻ｔｄまでに送信装置１００からの全てのパケットが受信装置３００に到達している。遅延が中程度の場合、復号時刻ｔｄまでに、データパケットＤ［３］及び冗長パケットＰ［３］以外のパケットが受信装置３００に到達している。遅延が大きい場合、復号時刻ｔｄまでに、データパケットＤ［０］及び冗長パケットＰ［０］が受信装置３００に到達している。
【０１５９】
従って、遅延が小さい場合、受信装置３００は、データパケットＤ［０］〜Ｄ［３］及び冗長パケットＰ［０］〜Ｐ［３］を用いて、ＬＤＰＣ復号する。つまり、ＬＤＰＣ復号に用いるデータパケット数Ｋ＝４である。この場合、ＬＤＰＣ復号に用いられる結合検査行列Ｈ２１は、以下の式（１１）により示される。（式１１）と（式１０）は同じである。
【０１６０】
【数１１】
2014099708.tif 000013
【０１６１】
また、遅延が中程度の場合、受信装置３００は、データパケットＤ［０］〜Ｄ［２］及び冗長パケットＰ［０］〜Ｐ［２］を用いて、ＬＤＰＣ復号する。つまり、ＬＤＰＣ復号に用いるデータパケット数Ｋ＝３である。この場合、ＬＤＰＣ復号に用いられる結合検査行列Ｈ２２は、以下の式（１２）により示される。
【０１６２】
【数１２】
2014099708.tif 000014
【０１６３】
また、遅延が大きい場合、受信装置３００は、データパケットＤ［０］及び冗長パケットＰ［２］を用いて、ＬＤＰＣ復号する。つまり、ＬＤＰＣ復号に用いるデータパケット数Ｋ＝１である。この場合、ＬＤＰＣ復号に用いられる検査行列Ｈ２３は、以下の式（１３）により示される。
【０１６４】
【数１３】
2014099708.tif 000015
【０１６５】
図１４は、実施形態におけるＬＤＰＣ符号化と送信又は受信されるパケットとの一例を時系列に示し、ＬＤＰＣ復号結果例を示す図である。図１３と異なる点は、Ｄ［０］及びＤ［２］がパケットロスしている点である。
【０１６６】
遅延が小さい場合、Ｄ［０］及びＤ［２］がロスしているが、受信装置３００は、ＬＤＰＣ復号によりＤ［０］及びＤ［２］を復元できるので、Ｄ［０］〜Ｄ［３］を得られる。
【０１６７】
一方、遅延が中程度の場合には、Ｄ［０］及びＤ［２］がロスしており、Ｄ［３］及びＰ［３］が復号時刻ｔｄまでに到達していない。この場合であっても、受信されたデータパケットＤ［１］及び冗長パケットＰ［０］，Ｐ［１］，Ｐ［２］を用いてＬＤＰＣ復号でき、Ｄ［０］及びＤ［２］を復元できる。なお、受信装置３００は、データパケットＤ［３］は復元できないが、復号時刻ｔｄまでに到達したパケットを最大限に利用して、効率良くＬＤＰＣ復号できる。図１４には、ＬＤＰＣ復号結果も示されている。
【０１６８】
このように、受信装置３００によれば、受信されたデータパケット数Ｋが少ない状況でも、ＬＤＰＣ復号による遅延を増加させず、ＬＤＰＣ復号に用いるデータパケット数Ｋを増加できるので、ＬＤＰＣ復号の回復性能を改善できる。また、遅延変動が激しいＩＰネットワーク２００（例えば無線ネットワーク）において、受信装置３００が結合ＬＤＰＣ符号を利用するか否かを最終判断するので、受信パケットを利用してデータパケット数を実現可能な範囲において最多とし、ＬＤＰＣ復号できる。
【０１６９】
また、映像伝送では、復号時刻までに届いたパケットを用いて、復号する。また、例えばＩＰネットワーク２００に応じて適切な符号長（例えばデータパケット数）によりＬＤＰＣ符号化していない場合、復号時刻より遅れて冗長パケットが到着する場合がある。特に、無線環境ではＲＴＴが急激に変動することがあり、復号時刻を超える可能性が高い。また、無線環境が劣悪である場合、画質を低下させることにより、１ピクチャあたりのデータパケット数が小さい状況が継続することも想定される。受信装置３００によれば、このような低帯域環境又は遅延変動が大きい環境であっても、好適にＬＤＰＣ復号できる。
【０１７０】
本開示は、上記実施形態の構成に限られない。特許請求の範囲において示した機能、または上記実施形態の構成が持つ機能が達成できる構成であれば、どのようなものであっても適用できる。
【０１７１】
上記実施形態では、ＲＴＰ及びＲＴＣＰを用いてパケットを通信することを例示したが、ＲＴＰ、ＲＴＣＰ以外のプロトコルを用いてパケットを通信してもよい。
【０１７２】
上記実施形態では、ＬＤＰＣ符号化を行うことを例示したが、ＬＤＰＣ以外であっても、検査行列を用いるＦＥＣ符号化であればよい。
【０１７３】
上記実施形態では、受信バッファ部３２０が、復号時刻まで受信パケットを蓄積することを示したが、復号時刻に至るまでのパケットのうち一部を省略して蓄積してもよい。また、受信バッファ部３２０が、復号時刻以前の所定時刻までに受信された受信パケットを蓄積してもよい。
【０１７４】
上記実施形態では、データとして映像データを例示したが、例えば音声データ、音声データと映像データとの組み合わせであってもよい。
【０１７５】
また、上記実施形態では、本開示をハードウェアによって構成する場合を例にとって説明したが、本開示はハードウェアとの連携においてソフトウェアでも実現することも可能である。
【０１７６】
また、上記実施形態の説明に用いた各機能ブロックは、典型的には集積回路であるＬＳＩとして実現される。これらは個別に１チップ化されてもよいし、一部または全てを含むように１チップ化されてもよい。ここでは、ＬＳＩとしてもよいし、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称してもよい。
【０１７７】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路または汎用プロセッサで実現してもよい。例えば、ＬＳＩ製造後にプログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、ＬＳＩ内部の回路セルの接続、又は、設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【０１７８】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
【０１７９】
（開示の一態様の概要）
本開示の第１の送信装置は、
ネットワークを介してパケットを送信する送信装置であって、
データがエンコードされたフレームからデータパケットを生成するデータパケット生成部と、
前記データパケット生成部により生成される前記フレームあたりのデータパケット数に基づいて、前記フレームを他のフレームと結合するか否かを判定する結合判定部と、
前記結合判定部により判定結果に応じて、検査行列を導出する検査行列導出部と、
前記検査行列を用いて、前記データパケットから冗長パケットを生成する冗長パケット生成部と、
前記データパケット及び前記冗長パケットを送信する送信部と、
を備える。
【０１８０】
また、本開示の第２の送信装置は、第１の送信装置であって、
前記検査行列導出部は、前記結合判定部により他のフレームと結合すると判定された場合、エンコードされたフレームと前記送信部により送信されたデータパケットのフレームとを結合し、前記検査行列を導出する。
【０１８１】
また、本開示の第３の送信装置は、第１または第２の送信装置であって、
前記結合判定部は、当該送信装置と前記パケットを受信する受信装置との間における往復伝送時間に基づいて、エンコードされたフレームと他のフレームとを結合するか否かを判定する。
【０１８２】
また、本開示の第４の受信装置は、
ネットワークを介してパケットを受信する受信装置であって、
パケットを受信する受信部と、
前記受信部により受信されたパケットに含まれる、検査行列の生成のためにフレームが結合されたか否かを示す情報に基づいて、前記検査行列を導出する検査行列導出部と、
前記受信部により受信されたデータパケット及び冗長パケットと、前記検査行列と、に基づいて、誤り訂正復号する復号部と、
を備える。
【０１８３】
また、本開示の第５の受信装置は、第４の受信装置であって、
前記データパケットに対応するフレームがデコードされる復号時刻以前の所定時刻になるまで、前記パケットをバッファする受信バッファ部を備え、
前記検査行列導出部は、前記受信バッファ部に蓄積されたパケットに対応する複数のフレームを結合し、前記検査行列を導出する。
【０１８４】
また、本開示の第６の送信方法は、
ネットワークを介してパケットを送信する送信装置における送信方法であって、
データがエンコードされたフレームからデータパケットを生成するステップと、
前記生成される前記フレームあたりのデータパケット数に基づいて、前記フレームを他のフレームと結合するか否かを判定するステップと、
前記判定の結果に応じて、検査行列を導出するステップと、
前記検査行列を用いて、前記データパケットから冗長パケットを生成するステップと、
前記データパケット及び前記冗長パケットを送信するステップと、
を有する。
【０１８５】
また、本開示の第７の受信方法は、
ネットワークを介してパケットを受信する受信装置における受信方法であって、
パケットを受信するステップと、
前記受信されたパケットに含まれる、検査行列の生成のためにフレームが結合されたか否かを示す情報に基づいて、前記検査行列を導出するステップと、
前記受信されたデータパケット及び冗長パケットと、前記検査行列と、に基づいて、誤り訂正復号するステップと、
を有する。
【産業上の利用可能性】
【０１８６】
本開示は、帯域利用効率の低下を抑制できる送信装置、受信装置、送信方法、及び受信方法等に有用である。
【符号の説明】
【０１８７】
１０００  通信システム
１００  送信装置
１１０  エンコーダ部
１２０  ＱｏＳ制御部
１３０  パケット化部
１４０  ＬＤＰＣ符号化演算部
１５０  ＬＤＰＣ符号化処理決定部
１６０  送信バッファ部
１７０  ＲＴＰパケット送信部
１８０  ＲＴＣＰパケット受信部
２００  ＩＰネットワーク
３００  受信装置
３１０  ＲＴＰパケット受信部
３２０  受信バッファ部
３３０  ロス検出部
３４０  ＬＤＰＣ復号処理決定部
３５０  復号時刻監視部
３６０  ＬＤＰＣ復号演算部
３７０  デコード部
【図１】
2014099708.tif 000016
【図２】
2014099708.tif 000017
【図３】
2014099708.tif 000018
【図４】
2014099708.tif 000019
【図５】
2014099708.tif 000020
【図６】
2014099708.tif 000021
【図７】
2014099708.tif 000022
【図８】
2014099708.tif 000023
【図９】
2014099708.tif 000024
【図１０】
2014099708.tif 000025
【図１１】
2014099708.tif 000026
【図１２】
2014099708.tif 000027
【図１３】
2014099708.tif 000028
【図１４】
2014099708.tif 000029
【図１５】
2014099708.tif 000030
【図１６】
2014099708.tif 000031