(57)【要約】【課題】パケット損失率の揺らぎに応じてＦＥＣ符号の誤り耐性を動的に制御可能な通信装置を提供する。【解決手段】他の通信装置からフィードバックされるパケット損失率を格納する第１のパケットを受信する受信部１２３と、第１のパケットを解析し、パケット損失率を取得する解析部１２９と、コンテンツを分割した第２のパケットを、パケット損失率が高いほど小さくなるように定められる格納数だけ格納する第３のパケットを生成する生成部１２１と、複数の第３のパケットを格納数によって定まる行列サイズに従って行方向及び列方向に配置して行列を生成し、行列に対してパリティ演算を行って得られるＦＥＣ符号を格納する第４のパケットを生成する生成部１２２と、第３のパケット及び第４のパケットを他の通信装置に送信する送信部１２５とを具備する。【選択図】  図３
2010119021.tif 000002
【特許請求の範囲】
【請求項１】
無線区間を含む伝送路を介して他の通信装置にコンテンツを送信する通信装置において、
前記他の通信装置からフィードバックされるパケット損失率を格納する第１のパケットを受信する受信部と、
前記第１のパケットを解析し、前記パケット損失率を取得する解析部と、
前記コンテンツを分割した第２のパケットを、前記パケット損失率が高いほど小さくなるように定められる格納数だけ格納する第３のパケットを生成する第１の生成部と、
複数の前記第３のパケットを前記格納数によって定まる行列サイズに従って行方向及び列方向に配置して行列を生成し、前記行列に対してパリティ演算を行って得られる前方誤り訂正符号を格納する第４のパケットを生成する第２の生成部と、
前記第３のパケット及び前記第４のパケットを前記他の通信装置に送信する送信部と
を具備することを特徴とする通信装置。
【請求項２】
無線区間を含む伝送路を介して他の通信装置からコンテンツを受信する通信装置において、
前記コンテンツを分割した第１のパケットを格納数だけ格納する第２のパケットと、当該第２のパケットのパケット損失を回復するための前方誤り訂正符号が格納された第３のパケットとを受信する受信部と、
前記格納数を解析する解析部と、
複数の前記第２のパケットを前記格納数によって定まる行列サイズに従って行方向及び列方向に配置して行列を生成し、前記行列に対して前記前方誤り訂正符号を用いて誤り訂正を行う誤り訂正部と
を具備することを特徴とする通信装置。
【請求項３】
前記格納数は、前記パケット損失率が等しければ前記コンテンツのビットレートが高いほど大きく、前記ビットレートが等しければ前記パケット損失率が高いほど小さくなるように定められることを特徴とする請求項１記載の通信装置。
【請求項４】
前記第２の生成部は、前記行列サイズを示す情報を前記第４のパケットのヘッダに格納することを特徴とする請求項１記載の通信装置。
【請求項５】
無線区間を含む第１の伝送路及び無線区間を含む第２の伝送路を有する複数の伝送路を介して他の通信装置にコンテンツを送信する通信装置において、
前記他の通信装置から前記第１の伝送路を介してフィードバックされる第１のパケット損失率を格納する第１のパケットを受信する第１の受信部と、
前記第１のパケットを解析し、前記第１のパケット損失率を取得する第１の解析部と、
前記コンテンツを分割した第２のパケットを、前記第１のパケット損失率が高いほど小さくなるように定められる第１の格納数だけ格納する第３のパケットを生成する第１の生成部と、
複数の前記第３のパケットを前記第１の格納数によって定まる第１の行列サイズに従って行方向及び列方向に配置して第１の行列を生成し、前記第１の行列に対してパリティ演算を行って得られる第１の前方誤り訂正符号を格納する第４のパケットを生成する第２の生成部と、
前記第３のパケット及び前記第４のパケットを前記第１の伝送路を介して前記他の通信装置に送信する第１の送信部と、
前記他の通信装置から前記第２の伝送路を介してフィードバックされる第２のパケット損失率を格納する第５のパケットを受信する第２の受信部と、
前記第５のパケットを解析し、前記第２のパケット損失率を取得する第２の解析部と、
前記第２のパケットを、前記第２のパケット損失率が高いほど小さくなるように定められる第２の格納数だけ格納する第６のパケットを生成する第３の生成部と、
複数の前記第６のパケットを前記第２の格納数によって定まる第２の行列サイズに従って行方向及び列方向に配置して第２の行列を生成し、前記第２の行列に対してパリティ演算を行って得られる第２の前方誤り訂正符号を格納する第７のパケットを生成する第４の生成部と、
前記第６のパケット及び前記第７のパケットを前記第２の伝送路を介して前記他の通信装置に送信する第２の送信部と
を具備することを特徴とする通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツデータを送信及び／または受信する通信装置に関する。
【背景技術】
【０００２】
従来、ユーザがコンテンツを視聴する場合、ＴＶ、ＰＣ、レコーダ（ＤＶＤレコーダ等の各種記録媒体にコンテンツを記録可能な装置を指す）等のＴＶチューナを備える機器を用いて、放送局から所定時刻に送信される放送信号を受信し、コンテンツを再生する視聴形式が一般的である。また、コンテンツが記録されたＤＶＤ、ビデオテープ等のリムーバルな記録媒体を賃貸または購入し、記録媒体に応じた再生機器（例えば、ＤＶＤプレーヤ、ＶＨＳプレーヤ等）によってコンテンツを再生する視聴形式も広く利用されている。
【０００３】
一方、ブロードバンドサービスの普及に伴い、いわゆるＶＯＤ（video on demand）サービスと呼ばれる視聴形式が浸透しつつある。ＶＯＤサービスでは、大量のコンテンツを保有するコンテンツサーバが設けられる。コンテンツサーバは、ユーザから要求されたコンテンツを、ネットワーク接続されたＴＶ、ＰＣ、レコーダ等に対して配信する。そして、このようなＶＯＤサービスによれば、ユーザは視聴したい時に視聴したいコンテンツを視聴できる。
【０００４】
ＶＯＤサービスを実現するための具体的方式として、インターネット回線を伝送路として用いてコンテンツを配信するＩＰＴＶ（Internet Protocol TV）方式が知られている。ＩＰＴＶ方式では、コンテンツ全体が所定サイズのメディアパケットを単位として分割され、これらメディアパケットが多重されたストリームが伝送される。ここで、メディアパケットの全てが受信側に正しく伝送されるとは限らない。即ち、伝送路上のエラーやネットワーク機器のバッファあふれによるパケット損失が生じることがある。
【０００５】
ところで、パケット損失を回復する手法の１つとして受信側から送信側に対して損失が生じたパケットの再送を要求する手法が知られているが、パケットの再送にはある程度の時間を要するため、ストリーミング再生のようなリアルタイム性が重視されるパケット伝送には不向きである。従って、ＩＰＴＶ方式では、損失が生じたパケットを受信側において自律的に復元できるように、送信側においてメディアパケットに対して前方誤り訂正（ＦＥＣ；Forward Error Correction）符号を演算し、当該ＦＥＣ符号を格納するＦＥＣパケットをメディアパケットと共に伝送することが望ましい。尚、ＦＥＣ符号のパラメータは固定である必要はなく、例えば伝送路品質が悪ければ（パケット損失率が高ければ）誤り耐性を強化するように制御されてもよい。
【０００６】
特許文献１記載の映像符号化・送信装置は、ストリーム中のメディアパケット分割位置（例えばピクチャ境界）を予測し、予測したメディアパケット分割位置に基づきＦＥＣ符号の演算を行っている。特許文献１記載の映像符号化・送信装置によれば、映像伝送遅延を抑制することができる。
【特許文献１】特開２００７−２８２４１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ＩＰＴＶ方式において、伝送路の一部に無線区間を含む場合がある。例えば、受信側の機器（通信装置）が携帯電話機、無線ＬＡＮに接続されたＰＣ等で構成される場合、メディアパケットはアクセスポイント等から無線を介して受信側の通信装置に伝送される。無線区間は、有線区間に比べてパケット損失率の揺らぎが大きいことが知られている。仮に、ＦＥＣ符号のパラメータを固定化する場合、伝送路に関して想定される最悪のパケット損失率に応じた誤り耐性を実現するためのパラメータを設定することが一般的である。従って、無線区間を含む伝送路に関して上記ＦＥＣ符号のパラメータを固定すると、誤り訂正の演算単位が大きくなるため、受信側においてメディアパケットをバッファリングする時間が増大し、コンテンツ再生が恒常的に大きく遅延するという問題が生じる。尚、特許文献１記載の映像符号化・送信装置は、パケット損失率に応じてＦＥＣ符号のパラメータを制御するわけではないので、上記問題を解消しない。
【０００８】
従って、本発明はパケット損失率の揺らぎに応じてＦＥＣ符号の誤り耐性を動的に制御可能な通信装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一態様に係る通信装置は、無線区間を含む伝送路を介して他の通信装置にコンテンツを送信する通信装置において、前記他の通信装置からフィードバックされるパケット損失率を格納する第１のパケットを受信する受信部と、前記第１のパケットを解析し、前記パケット損失率を取得する解析部と、前記コンテンツを分割した第２のパケットを、前記パケット損失率が高いほど小さくなるように定められる格納数だけ格納する第３のパケットを生成する第１の生成部と、複数の前記第３のパケットを前記格納数によって定まる行列サイズに従って行方向及び列方向に配置して行列を生成し、前記行列に対してパリティ演算を行って得られる前方誤り訂正符号を格納する第４のパケットを生成する第２の生成部と、前記第３のパケット及び前記第４のパケットを前記他の通信装置に送信する送信部とを具備する。
【００１０】
本発明の他の態様に係る通信装置は、無線区間を含む伝送路を介して他の通信装置からコンテンツを受信する通信装置において、前記コンテンツを分割した第１のパケットを格納数だけ格納する第２のパケットと、当該第２のパケットのパケット損失を回復するための前方誤り訂正符号が格納された第３のパケットとを受信する受信部と、前記格納数を解析する解析部と、複数の前記第２のパケットを前記格納数によって定まる行列サイズに従って行方向及び列方向に配置して行列を生成し、前記行列に対して前記前方誤り訂正符号を用いて誤り訂正を行う誤り訂正部とを具備する。
【００１１】
本発明の他の態様に係る通信装置は、無線区間を含む第１の伝送路及び無線区間を含む第２の伝送路を有する複数の伝送路を介して他の通信装置にコンテンツを送信する通信装置において、前記他の通信装置から前記第１の伝送路を介してフィードバックされる第１のパケット損失率を格納する第１のパケットを受信する第１の受信部と、前記第１のパケットを解析し、前記第１のパケット損失率を取得する第１の解析部と、前記コンテンツを分割した第２のパケットを、前記第１のパケット損失率が高いほど小さくなるように定められる第１の格納数だけ格納する第３のパケットを生成する第１の生成部と、複数の前記第３のパケットを前記第１の格納数によって定まる第１の行列サイズに従って行方向及び列方向に配置して第１の行列を生成し、前記第１の行列に対してパリティ演算を行って得られる第１の前方誤り訂正符号を格納する第４のパケットを生成する第２の生成部と、前記第３のパケット及び前記第４のパケットを前記第１の伝送路を介して前記他の通信装置に送信する第１の送信部と、前記他の通信装置から前記第２の伝送路を介してフィードバックされる第２のパケット損失率を格納する第５のパケットを受信する第２の受信部と、前記第５のパケットを解析し、前記第２のパケット損失率を取得する第２の解析部と、前記第２のパケットを、前記第２のパケット損失率が高いほど小さくなるように定められる第２の格納数だけ格納する第６のパケットを生成する第３の生成部と、複数の前記第６のパケットを前記第２の格納数によって定まる第２の行列サイズに従って行方向及び列方向に配置して第２の行列を生成し、前記第２の行列に対してパリティ演算を行って得られる第２の前方誤り訂正符号を格納する第７のパケットを生成する第４の生成部と、前記第６のパケット及び前記第７のパケットを前記第２の伝送路を介して前記他の通信装置に送信する第２の送信部とを具備する。
【発明の効果】
【００１２】
本発明によれば、パケット損失率の揺らぎに応じてＦＥＣ符号の誤り耐性を動的に制御可能な通信装置を提供できる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照して、本発明の実施形態について説明する。  
（第１の実施形態）  
図１に示すように、本発明の第１の実施形態に係る通信装置は、カメラ１０、マイクロホン２０、ディスプレイ３０、スピーカ４０、メモリ５０、信号処理部６０、無線部７０、アンテナ８０及び制御部１００を有する。
【００１４】
信号処理部６０は、制御部１００から符号化された映像データ、符号化された音声データ、または制御データなどを含むパケットを送信データ系列として受け取り、デジタル変調処理等の信号処理を施して送信データ信号を生成し、無線部７０に入力する。また、信号処理部６０は、無線部７０から受信データ信号を受け取り、デジタル復調処理等の信号処理を施して符号化された映像データ、符号化された音声データ、または制御データなどを含むパケットを受信データ系列として生成し、制御部１００に入力する。
【００１５】
無線部７０は、信号処理部６０から送信データ信号を受け取り、デジタル−アナログ変換、アップコンバート処理、フィルタ処理及び増幅処理等を施して送信無線信号を生成し、アンテナ８０に入力する。また、無線部７０は、アンテナ８０から受信無線信号を受け取り、増幅処理、フィルタ処理、ダウンコンバート処理及びアナログ−デジタル変換処理等を施して受信データ信号を生成し、信号処理部６０に入力する。  
アンテナ８０は、無線部７０からの送信無線信号を受信側の通信装置に対して送信する。また、アンテナ８０は、送信側の通信装置から無線信号を受信し、受信無線信号として無線部７０に入力する。
【００１６】
制御部１００は、図１の通信装置の各部を統括制御する。また、制御部１００は、ＣＰＵ等の汎用プロセッサに所定のプログラムを実行させることにより、若しくは、ＬＳＩ（Large Scale Integration）、ＡＳＩＣ（Application Specific Integrated Circuit）等の専用プロセッサで構成することにより、マルチメディア処理部１１０及びパケット処理部１２０としても動作する。
【００１７】
マルチメディア処理部１１０は、図２に示すように、映像符号化部１１１、音声符号化部１１２、多重部１１３、分離部１１４、映像復号部１１５及び音声復号部１１６を有する。尚、図２のマルチメディア処理部１１０は、図１の通信装置がコンテンツの送受信を行う場合の構成を示す。図１の通信装置がコンテンツの送信を行わない場合、映像符号化部１１１、音声符号化部１１２及び多重部１１３は不要である。また、図１の通信装置がコンテンツの受信を行わない場合、分離部１１４、映像復号部１１５及び音声復号部１１６は不要である。
【００１８】
マルチメディア処理部１１０は、カメラ１０及びマイクロホン２０のような入力デバイスから取得した映像データ、音声データから構成されるマルチメディアデータに対する符号化及び多重化を行って、コンテンツ伝送のためのストリームを生成する。  
カメラ１０は、図１の通信装置外部の被写体を撮影し、動画像（または静止画像）を取得し、映像データとして映像符号化部１１１に入力する。マイクロホン２０は、例えばカメラ１０の撮影期間において図１の通信装置周囲の音声を取得し、音声データとして音声符号化部１１２に入力する。
【００１９】
映像符号化部１１１は、カメラ１０からの映像データに対して所定の符号化（映像符号化）を施し、符号化された映像データ（符号化映像データ）を得る。映像符号化部１１１は、符号化映像データを多重部１１３に入力する。
【００２０】
音声符号化部１１２は、マイクロホン２０からの音声データに対して所定の符号化（音声符号化）を施し、符号化された音声データ（符号化音声データ）を得る。音声符号化部１１２は、符号化音声データを多重部１１３に入力する。
【００２１】
多重部１１３は、映像符号化部１１１からの符号化映像データ及び音声符号化部１１２からの符号化音声データを、所定サイズを有するパケット単位で夫々分割する（パケット化する）。多重部１１３は、符号化映像データをパケット化して得られる映像パケット及び符号化音声データをパケット化して得られる音声パケットを夫々多重して、コンテンツ伝送のためのストリームを生成する。多重部１１３は、上記ストリームをパケット処理部１２０に入力する。
【００２２】
例えば、多重部１１３は、ＭＰＥＧ−２  ＴＳパケット（１８８バイト）に更にタイプスタンプ（４バイト）を付加したＴＴＳ（タイムスタンプ付きＴＳ）パケット（１９２バイト）を単位として、符号化映像データ及び符号化音声データのパケット化する。
【００２３】
また、マルチメディア処理部１１０は、パケット処理部１２０から取得したストリームに対する分離及び復号を行って、受信コンテンツを構成する映像データ及び音声データを復元する  
分離部１１４は、他の通信装置から送信されたストリームをパケット処理部１２０から取得する。上記ストリームには、符号化映像データがパケット化された映像パケット及び符号化音声データがパケット化された音声パケットが多重されている。分離部１１４は、上記ストリームを映像パケット及び音声パケットに分離する。分離部１１４は、映像パケットを映像復号部１１５に入力し、音声パケットを音声復号部１１６に入力する。
【００２４】
映像復号部１１５は、分離部１１４からの映像パケットを映像符号化方式に対応する映像復号方式に従って復号し、映像データを得る。映像復号部１１５は、上記映像データをディスプレイ３０に入力する。ディスプレイ３０は、例えばＬＣＤ（Liquid Crystal Display）、有機ＥＬディスプレイで構成され、映像復号部１１５からの映像データを表示する。
【００２５】
音声復号部１１６は、分離部１１４からの音声パケットを音声符号化方式に対応する音声復号方式に従って復号し、音声データを得る。音声復号部１１６は、上記音声データをスピーカ４０に入力する。スピーカ４０は、音声復号部１１５からの音声データを出力する。
【００２６】
また、マルチメディア処理部１１０は、メモリ５０との間でマルチメディアデータのやり取りを行う。メモリ５０は、コンテンツを、符号化映像データをパケット化した映像パケット及び符号化音声データをパケット化した音声パケットが多重されたストリーム形式で保持する。マルチメディア処理部１１０は、メモリ５０に保持されているコンテンツを読み出してパケット処理部１２０に入力したり、パケット処理部１２０から取得したコンテンツをメモリ５０に書き込んだりする。
【００２７】
パケット処理部１２０は、図３に示すように、メディアパケット生成部１２１、ＦＥＣパケット生成部１２２、パケット受信部１２３、損失率解析部１２４、パケット送信部１２５、メディアパケット解析部１２６、メディアパケットバッファ１２７、誤り訂正部１２８、ＦＥＣパケット解析部１２９及び損失率パケット生成部１３０を有する。
【００２８】
パケット処理部１２０は、他の通信装置にコンテンツを伝送するためのパケット処理を行ったり、他の通信装置から伝送されたコンテンツを受信するためのパケット処理を行ったりする。尚、図３のパケット処理部１２０は、図１の通信装置がコンテンツの送受信を行う場合の構成を示す。図１の通信装置がコンテンツの受信を行わない場合、メディアパケット解析部１２６、メディアパケットバッファ１２７、誤り訂正部１２８、ＦＥＣパケット解析部１２９及び損失率パケット生成部１３０は不要である。また、図１の通信装置がコンテンツの送信を行わない場合、メディアパケット生成部１２１、ＦＥＣパケット生成部１２２及び損失率解析部１２４は不要である。
【００２９】
メディアパケット生成部１２１は、マルチメディア処理部１１０からのストリームに多重されている映像パケット及び音声パケットを用いてメディアパケットを生成する。上記メディアパケットは、コンテンツの伝送単位としてのパケットであり、少なくとも１つの映像パケット及び／または音声パケットを格納する。例えば、ＲＴＰ（Real-time Transport Protocol）パケットが上記メディアパケットとして用いられる。ＩＰＴＶフォーラム規格では、１個のＲＴＰパケットに１〜７個のＴＴＳパケットが格納されることが規定され、7個が望ましいとされている。尚、後述するように、メディアパケット生成部１２１が生成するメディアパケットに格納される映像パケット及び／または音声パケットの個数（以下、単に格納数と称する）は可変であり、ＦＥＣパケット生成部１２２によって変更される。メディアパケット生成部１２１は、メディアパケットをパケット送信部１２５に入力する。
【００３０】
ＦＥＣパケット生成部１２２は、受信側の通信装置がメディアパケットの損失を自律的に回復するためのＦＥＣ符号を生成し、当該ＦＥＣ符号を格納するＦＥＣパケットを生成する。尚、後述するように、ＦＥＣパケット生成部１２２は、損失率解析部１２４から通知されるパケット損失率に基づいて、メディアパケットのパケット長（実際には、上記格納数）を変更する。ここで、ＦＥＣパケットは、例えばＰｒｏ−ＭＰＥＧ方式に従って生成されるＰｒｏ−ＭＰＥＧ  ＦＥＣパケットである。ＦＥＣパケット生成部１２２は、ＦＥＣパケットをパケット送信部１２５に入力する。
【００３１】
尚、損失率解析部１２４によって計算されるパケット損失率は、一定時間間隔Ｔに受信したＲＴＰパケット数Ｘと、この受信したＲＴＰパケットの最小シーケンス番号Ｓmin及び最大シーケンス番号Ｓmaxとに基づき、パケット損失率＝｛（Ｓmax−Ｓmin）−Ｘ｝/（Ｓmax−Ｓmin）なる計算式に従って求められる。
【００３２】
パケット受信部１２３は、信号処理部６０から取得した受信データ系列から受信パケットを取り出し、取り出した受信パケットを損失率解析部１２４、メディアパケット解析部１２６及びＦＥＣパケット解析部１２９に振り分ける。即ち、パケット受信部１２３は、信号処理部６０から取得した受信パケットが、損失率パケット（例えばＲＴＣＰ（RTP Control Protocol）パケット）であれば損失率解析部１２４に入力し、メディアパケットであればメディアパケット解析部１２６に入力し、ＦＥＣパケットであればＦＥＣパケット解析部１２９に入力する。
【００３３】
損失率解析部１２４は、パケット受信部１２３からの損失率パケットを解析し、受信側の通信装置からフィードバックされたパケット損失率を取得する。損失率解析部１２４は、上記パケット損失率をＦＥＣパケット生成部１２２に通知する。
【００３４】
パケット送信部１２５は、メディアパケット生成部１２１からのメディアパケットと、ＦＥＣパケット生成部１２２からのＦＥＣパケットと、損失率パケット生成部１３０からの損失率パケットとを多重した送信データ系列を信号処理部６０に入力する。
【００３５】
メディアパケット解析部１２６は、パケット受信部１２３からのメディアパケットを解析し、パケット損失率及びメディアパケット長を取得する。メディアパケット解析部１２６は、パケット損失率を損失率パケット生成部１３０に入力し、メディアパケット長を誤り訂正部１２８に通知する。また、メディアパケット解析部１２６は、解析済みのメディアパケットをメディアパケットバッファ１２７に入力する。
【００３６】
メディアパケットバッファ１２７には、メディアパケットが一時的に蓄積される。後述するＦＥＣ演算行列サイズに応じた数のメディアパケットがメディアパケットバッファ１２７に蓄積されると、誤り訂正部１２８によって誤り訂正が行われる。誤り訂正済みのメディアパケットは、マルチメディア処理部１１０によって取り出される。
【００３７】
誤り訂正部１２８は、ＦＥＣパケット解析部１２９からのＦＥＣ符号を用いて、メディアパケットバッファ１２７に蓄積されているメディアパケットに対して誤り訂正を行う。ＦＥＣパケット解析部１２９は、パケット受信部１２３からのＦＥＣパケットを解析し、当該ＦＥＣパケットに格納されているＦＥＣ符号を取得する。ＦＥＣパケット解析部１２９は、ＦＥＣ符号を誤り訂正部１２８に入力する。
【００３８】
損失率パケット生成部１３０は、メディアパケット解析部１２９からのパケット損失率を、送信側の通信装置に対してフィードバックするための損失率パケットを生成する。損失率パケットとして、例えばＲＴＣＰパケットが利用可能である。損失率パケット生成部１３０は、損失率パケットをパケット送信部１２５に入力する。
【００３９】
以下、図４乃至図７を用いて、図１の通信装置が行う誤り耐性制御を説明する。尚、以降の説明において、メディアパケットはＲＴＰパケットであり、ＦＥＣパケット生成部１２２によって指定される格納数だけＴＴＳパケットを格納しているものとする。また、ＦＥＣパケットは１次元Ｐｒｏ−ＭＰＥＧ  ＦＥＣ方式に従って生成されるものとするが、２次元Ｐｒｏ−ＭＰＥＧ  ＦＥＣ方式若しくはその他のＦＥＣ方式に従って生成されてもよい。
【００４０】
図４及び図６において、データ送信装置Ａ及びデータ受信装置Ｂはいずれも図１の通信装置と同様の構成を有するものとする。また、データ送信装置Ａ−無線アクセスポイント間が有線区間を介して接続されているように描かれているが、無線区間を介して接続されてもよい。更に、データ送信装置Ａ及びデータ受信装置Ｂの間には更に多くの中継装置（無線アクセスポイントを含む）が設けられてもよい。
【００４１】
図４に示すように、伝送路品質が比較的良好な（即ち、パケット損失率が比較的低い）状況において、ＲＴＰパケットで構成されるメディアパケットには、７個のＴＴＳパケットが格納されている。尚、ＲＴＰヘッダ、ＵＤＰ（User Datagram Protocol）ヘッダ、ＩＰヘッダの説明は省略する。
【００４２】
データ送信装置Ａ内部のＦＥＣパケット生成部１２２は、図５に示すように上記メディアパケットを行方向に１０個、列方向に１０個ずつ夫々配置して１０行１０列のＦＥＣ演算行列を生成し、列方向にパリティ演算（ＸＯＲ演算）を行ってＦＥＣ符号を生成する。上記ＦＥＣ演算行列の要素であるメディアパケットには７個のＴＴＳパケットが格納されているので、１つのＦＥＣ演算行列には計７００個（＝１０×１０×７）のＴＴＳパケットが包含される。
【００４３】
データ送信装置Ａ内部のＦＥＣパケット生成部１２２は、データ受信装置Ｂからフィードバックされるパケット損失率が閾値を超えると（即ち、伝送路の品質が悪化すると）、図６に示すように、メディアパケット中のＴＴＳパケットの格納数を１に変更する。
【００４４】
ＦＥＣパケット生成部１２２は、上記格納数の変更に伴い、ＦＥＣ演算行列の行列サイズを変更する。具体的には、ＦＥＣパケット生成部１２２は、図７に示すように上記メディアパケットを行方向に７０個、列方向に１０個ずつ夫々配置して１０行７０列のＦＥＣ演算行列を生成し、列方向にパリティ演算を行ってＦＥＣ符号を生成する。図７のＦＥＣ演算行列は図５のＦＥＣ演算行列に比べて列数が拡大しているので、インタリーブ処理によってメディアパケットを時間的に広く分散できる。従って、図７のＦＥＣ演算行列に基づき生成されたＦＥＣ符号によれば、無線区間において生じやすいバースト誤りに対する誤り耐性を向上させることができる。
【００４５】
また、図７のＦＥＣ演算行列の要素であるメディアパケットには１個のＴＴＳパケットが格納されているので、１つのＦＥＣ演算行列には計７００個（＝１０×７０×１）のＴＴＳパケットが包含される。即ち、上記格納数の変更に関わらずＦＥＣ演算行列に包含されるＴＴＳパケットは固定されている（換言すれば、ＦＥＣ演算行列の列数を格納数に反比例するように変更している）ので、データ受信装置Ｂにおける誤り訂正のためのメディアパケットのバッファリング時間は格納数の変更による影響を受けない。
【００４６】
以下、図８を用いて、ＦＥＣパケット生成部１２２によるＦＥＣ演算行列サイズの変更処理を説明する。ＦＥＣ演算行列サイズの変更処理は、損失率パケットの受信によって開始する。  
まず、ＦＥＣパケット生成部１２２は、損失率解析部１２４からパケット損失率を取得する（ステップＳ２０１）。ＦＥＣパケット生成部１２２は、ステップＳ２０１において取得したパケット損失率を閾値と比較する（ステップＳ２０２）。尚、図８において、閾値は１つであるかのように描かれているが、ＦＥＣ演算行列サイズをより細かく変更するために閾値が複数設けられてもよい。
【００４７】
ステップＳ２０２において、パケット損失率が閾値以上であれば、誤り耐性を強化するために処理はステップＳ２０３に進む。一方、ステップＳ２０２において、パケット損失率が閾値未満であれば、ＦＥＣ符号の誤り耐性を緩和するために処理はステップＳ２０５に進む。
【００４８】
ステップＳ２０３において、ＦＥＣパケット生成部１２２は現在のメディアパケット長が、最短のパケット長に一致するか否かを確認する。ここで、最短のパケット長とは、メディアパケットの格納数を最小とした場合のパケット長（例えば、ＴＴＳパケットを１個格納するＲＴＰパケットのパケット長）である。ステップＳ２０３において、現在のメディアパケット長が最短のパケット長に一致していれば、これ以上メディアパケットを短くする（換言すれば、ＦＥＣ演算行列サイズを拡大する）ことができないので、処理はステップＳ２０８に進む。一方、ステップＳ２０３において、現在のメディアパケット長が最短のパケット長に一致しなければ、メディアパケットを短くするために処理はステップＳ２０４に進む。
【００４９】
ステップＳ２０４において、ＦＥＣパケット生成部１２２はメディアパケットのパケット長を短くして（即ち、メディアパケットの格納数を減らして）、処理はステップＳ２０７に進む。具体的には、例えばＦＥＣパケット生成部１２２は、選択可能な複数の格納数のうち、現在の格納数よりも小さい格納数を選択する。メディアパケットが短くなると、ＦＥＣ演算行列の行列サイズは拡大する（より正確には、ＦＥＣ演算行列の列数が拡大する）。また、ＦＥＣパケット生成部１２２は、変更済みの格納数をメディアパケット生成部１２１に通知する。
【００５０】
ステップＳ２０５において、ＦＥＣパケット生成部１２２は現在のメディアパケット長が、最長のパケット長に一致するか否かを確認する。ここで、最長のパケット長とは、メディアパケットの格納数を最大とした場合のパケット長（例えば、ＴＴＳパケットを７個格納するＲＴＰパケットのパケット長）である。ステップＳ２０５において、現在のメディアパケット長が最長のパケット長に一致していれば、これ以上メディアパケットを長くする（換言すれば、ＦＥＣ演算行列を縮小する）ことができないので、処理はステップＳ２０８に進む。一方、ステップＳ２０５において、現在のメディアパケット長が最長のパケット長に一致しなければ、メディアパケットを長くするために処理はステップＳ２０６に進む。
【００５１】
ステップＳ２０６において、ＦＥＣパケット生成部１２２はメディアパケットのパケット長を長くして（即ち、メディアパケット長の格納数を増やして）、処理はステップＳ２０７に進む。具体的には、例えばＦＥＣパケット生成部１２２は、選択可能な複数の格納数のうち、現在の格納数よりも大きい格納数を選択する。メディアパケット長が長くなると、ＦＥＣ演算行列の行列サイズは縮小する（より正確には、ＦＥＣ演算行列の列数が縮小する）。また、ＦＥＣパケット生成部１２２は、変更済みの格納数をメディアパケット生成部１２１に通知する。
【００５２】
ステップＳ２０７において、ＦＥＣパケット生成部１２２は変更済みの行列サイズに従ってＦＥＣ演算行列を生成するために生成途中のＦＥＣ演算行列をリフレッシュし、処理はステップＳ２０８に進む。即ち、ステップＳ２０７の処理は、変更済みの行列サイズを遅滞なく適用し、パケット損失率の変化に素早く追従して誤り耐性を制御することを可能としている。尚、ステップＳ２０７の処理は一例である。例えば、ステップＳ２０７の処理に代えて、変更前の行列サイズに従って生成途中のＦＥＣ演算行列を生成し終えてから変更済みの行列サイズを適用するようにしてもよい。
【００５３】
ステップＳ２０８において、ＦＥＣパケット生成部１２２はＦＥＣパケット生成処理を継続し、ＦＥＣ演算行列サイズの変更処理は終了する。即ち、ＦＥＣパケット生成部１２２は現在の行列サイズに従ってメディアパケットを配置して、パリティ演算を行ってＦＥＣ符号を生成し、当該ＦＥＣ符号を格納したＦＥＣパケットを生成する。
【００５４】
以下、図９を用いて、誤り訂正部１２８によるＦＥＣ演算行列サイズの変更処理を説明する。  
まず、誤り訂正部１２８は、メディアパケット解析部１２６からメディアパケット長を取得する（ステップＳ３０１）。次に、誤り訂正部１２８は、ステップＳ３０１において取得したメディアパケット長及び直近に取得したメディアパケット長を比較し、増減の有無を確認する（ステップＳ３０２）。ステップＳ３０２において、メディアパケット長の増減があれば処理はステップＳ３０３に進み、そうでなければ処理はステップＳ３０７に進む。
【００５５】
ステップＳ３０３において、誤り訂正部１２８はメディアパケットバッファ１２７に蓄積されているＦＥＣ演算行列をリフレッシュし、処理はステップＳ３０４に進む。即ち、誤り訂正部１２８は、ステップＳ３０２においてＦＥＣ演算行列サイズの変更を検知しているので、新たなＦＥC演算行列サイズに従ってＦＥＣ演算行列を改めて生成できるように、生成途中のＦＥＣ演算行列をリフレッシュする。
【００５６】
ステップＳ３０４において、誤り訂正部１２８はステップＳ３０１において取得したメディアパケット長が直近に取得したメディアパケット長に比して減少しているか否かを確認する。ステップＳ３０４においてメディアパケット長が減少していれば処理はステップＳ３０５に進み、そうでなければ処理はステップＳ３０６に進む。
【００５７】
ステップＳ３０５において、誤り訂正部１２８は上記メディアパケット長の減少に応じてＦＥＣ演算行列の列数を拡大し、処理はステップＳ３０７に進む。また、ステップＳ３０６において、誤り訂正部１２８は上記メディアパケット長の増加に応じてＦＥＣ演算行列の列数を縮小し、処理はステップＳ３０７に進む。誤り訂正部１２８は、メディアパケットのパケット長に基づき当該メディアパケットの格納数を導出できるので、当該格納数に応じた列数をＦＥＣ演算行列に設定できる。
【００５８】
ステップＳ３０７において、誤り訂正部１２８は誤り訂正処理を継続する。即ち、誤り訂正部１２８は、ＦＥＣ演算行列の生成が完了していなければメディアパケットをメディアパケットバッファ１２７に蓄積してＦＥＣ演算行列の生成を継続し、ＦＥＣ演算行列の生成が完了していればＦＥＣパケットに格納されるＦＥＣ符号を用いてＦＥＣ演算行列の誤り訂正を行う。
【００５９】
以上説明したように本実施形態に係る通信装置は、受信側の通信装置からフィードバックされるパケット損失率に基づき、ＦＥＣ演算行列の行列サイズを変更するようにしている。従って、本実施形態に係る通信装置によれば、パケット損失率の揺らぎに応じてＦＥＣ符号の誤り耐性を動的に制御できる。例えば、本実施形態に係る通信装置は、パケット損失率が比較的高い場合にはＦＥＣ演算行列サイズを拡大し、メディアパケットをインタリーブ処理によってより時間的に広く分散させることにより、バースト誤りに対する誤り耐性を強化できる。
【００６０】
（第２の実施形態）  
本発明の第２の実施形態に係る通信装置は、前述した第１の実施形態に係る通信装置と比べて誤り耐性の制御手法が異なる。  
前述した第１の実施形態に係る通信装置は、パケット損失率が高いほどメディアパケットの格納数を減少させるようにしている。ＦＥＣ演算行列の列数は格納数に反比例させているので、格納数が減少することによりＦＥＣ演算行列の行列サイズは拡大し、誤り耐性が強化される。本実施形態に係る通信装置は、上記パケット損失率と格納数との間の関係は維持しつつ、伝送対象となるコンテンツデータのビットレートを更に考慮して誤り耐性を制御するようにしている。
【００６１】
本実施形態に係る通信装置内部のＦＥＣパケット生成部１２２は、例えば図１０に示すテーブルを参照してメディアパケットの格納数を決定する。図１０において、Ｘ，Ｙ及びＺはパケット損失率の段階を示し、Ｘ＞Ｙ＞Ｚである。また、図１０において、Ａ，Ｂ及びＣはビットレートの段階を示し、Ａ＞Ｂ＞Ｃである。尚、図１０においてパケット損失率及びビットレートは３段階に区分されているが、２段階に区分されもよいし４段階以上に区分されてもよい。図１０のテーブルは、ビットレートが同じ段階であればパケット損失率が高いほど小さい格納数が割り当てられ、パケット損失率が同じ段階であればビットレートが高いほど大きい格納数が割り当てられている。
【００６２】
図１０によれば、ＦＥＣパケット生成部１２２は、パケット損失率が最も高い（パケット損失率の段階＝Ｘ）伝送路を介してビットレートが最も低い（ビットレートの段階＝Ｃ）コンテンツデータを伝送する場合には、誤り耐性を最も高く（格納数＝１）設定している。また、ＦＥＣパケット生成部１２２は、パケット損失率が最も低い（パケット損失率の段階＝Ｚ）伝送路を介してビットレートが最も高い（ビットレートの段階＝Ａ）コンテンツデータを伝送する場合には、誤り耐性を最も低く（格納数＝７）設定している。
【００６３】
以上説明したように、本実施形態に係る通信装置は、パケット損失率に加えてビットレートにも基づいてＦＥＣ演算行列の行列サイズを変更するようにしている。従って、本実施形態に係る通信装置によれば、伝送路の品質だけでなく伝送対象となるコンテンツデータのビットレートに応じて誤り耐性を動的に制御できる。
【００６４】
（第３の実施形態）  
本発明の第３の実施形態に係る通信装置は、前述した第１の実施形態に係る通信装置と比べてＦＥＣ演算行列サイズの通知手法が異なる。  
前述した第１の実施形態に係る通信装置は、ＦＥＣ演算行列サイズの変更をメディアパケット長の増減を介して通知していた。本実施形態に係る通信装置は、ＦＥＣパケットのヘッダに上記ＦＥＣ演算行列サイズを示す情報を格納することにより、ＦＥＣ演算行列サイズを通知する。
【００６５】
例えば、Ｐｒｏ−ＭＰＥＧ拡張ＦＥＣヘッダとして、図１１に示す構成が規定されている。図１１において、“Ｘ”は将来のヘッダ拡張のための予約を示す１ビットの領域を表し、“Ｏｆｆｓｅｔ”はメディアパケットの周期（即ち、ＦＥＣ演算行列の列数）を示す８ビットの領域を表し、“ＮＡ”はＦＥＣパケットが保護しているメディアパケットの数（即ち、ＦＥＣ演算行列の行数）を示す８ビットの領域を表す。
【００６６】
本実施形態に係る通信装置内部のＦＥＣパケット生成部１２２が図１１に示すヘッダを付加してＦＥＣパケットを生成すれば、受信側の通信装置は受信したヘッダ中の“Ｏｆｆｓｅｔ”及び“ＮＡ”を参照することにより、ＦＥＣ演算行列サイズを検知することができる。また、ＦＥＣパケット生成部１２２が例えば図１１に示すヘッダを付加し、更に当該ヘッダ中の“Ｘ”に“１”を格納してＦＥＣパケットを生成すれば、受信側の通信装置は受信したヘッダ中の“Ｘ”を参照することにより、ＦＥＣ演算行列サイズの変更を検知することができる。
【００６７】
以上説明したように、本実施形態に係る通信装置は、ＦＥＣ演算行列サイズをＦＥＣパケットのヘッダを介して受信側の通信装置に通知するようにしている。従って、本実施形態に係る通信装置によってもＦＥＣ演算行列サイズは受信側の通信装置に正しく通知されるので、前述した第１の実施形態に係る通信装置と同様の効果が得られる。
【００６８】
（第４の実施形態）  
本発明の第４の実施形態に係る通信装置は、図１２に示すように、上記図１におけるパケット処理部１２０、信号処理部６０、無線部７０及びアンテナ８０で構成される信号処理系に相当する信号処理系を２つ有する点が異なる。具体的には、図１２の通信装置は、パケット処理部１２０−１、信号処理部６０−１、無線部７０−１及びアンテナ８０−１で構成される第１の信号処理系と、パケット処理部１２０−２、信号処理部６０−２、無線部７０−２、アンテナ８０−２で構成される第２の信号処理系とを有する。以下の説明では、図１２において図１と同一部分には同一符号を付して示し、異なる部分を中心に述べる。
【００６９】
図１２の通信装置は、２つの伝送路を介して受信側の通信装置と通信を行う。具体的には、図１２の通信装置は、第１の信号処理系を用いて第１の伝送路を介した通信を行い、第２の信号処理系を用いて第２の伝送路を介した通信を行う。尚、第１の伝送路及び第２の伝送路はいずれも無線区間を含む。
【００７０】
第１の信号処理系及び第２の信号処理系は、図１におけるパケット処理部１２０、信号処理部６０、無線部７０及びアンテナ８０で構成される信号処理系と同様の機能を有する。即ち、第１の信号処理系内部のパケット処理部１２０−１は第１の伝送路におけるパケット損失率の揺らぎに応じてＦＥＣ演算行列サイズを変更して誤り耐性を制御し、第２の信号処理系内部のパケット処理部１２０−２は第２の伝送路におけるパケット損失率の揺らぎに応じてＦＥＣ演算行列サイズを変更して誤り耐性を制御する。
【００７１】
以上説明したように、本実施形態に係る通信装置は複数の伝送路に対応する複数の信号処理系を有し、各伝送路のパケット損失率の揺らぎに応じて当該伝送路を介する通信に適用されるＦＥＣ演算行列サイズを変更するようにしている。従って、本実施形態に係る通信装置によれば、複数の伝送路間でパケット損失率にばらつきが生じても、個々の伝送路におけるパケット損失率の揺らぎに応じてＦＥＣ符号の誤り耐性を動的に制御できる。
【００７２】
尚、本発明は上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また上記各実施形態に開示されている複数の構成要素を適宜組み合わせることによって種々の発明を形成できる。また例えば、各実施形態に示される全構成要素からいくつかの構成要素を削除した構成も考えられる。さらに、異なる実施形態に記載した構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００７３】
【図１】第１の実施形態に係る通信装置を示すブロック図。
【図２】図１のマルチメディア処理部の内部を示すブロック図。
【図３】図１のパケット処理部の内部を示すブロック図。
【図４】図１のデータ通信装置が送信可能なメディアパケットの一例を示す図。
【図５】図４のメディアパケットに対応するＦＥＣ演算行列を示す図。
【図６】図４の別の例を示す図。
【図７】図６のメディアパケットに対応するＦＥＣ演算行列を示す図。
【図８】図３のＦＥＣパケット生成部によるＦＥＣ演算行列サイズの変更処理を示すフローチャート。
【図９】図３の誤り訂正部によるＦＥＣ演算行列サイズの変更処理を示すフローチャート。
【図１０】第２の実施形態に係る通信装置の選択可能なメディアパケットの格納数と、パケット損失率及びビットレートとの関係を示すテーブル。
【図１１】第３の実施形態に係る通信装置が送信するＦＥＣパケットのヘッダの構造例を示す図。
【図１２】第４の実施形態に係る通信装置を示すブロック図。
【符号の説明】
【００７４】
１０・・・カメラ
２０・・・マイクロホン
３０・・・ディスプレイ
４０・・・スピーカ
５０・・・メモリ
６０，６０−１，６０−２・・・信号処理部
７０，７０−１，７０−２・・・無線部
８０，８０−１，８０−２・・・アンテナ
１００・・・制御部
１１０・・・マルチメディア処理部
１１１・・・映像符号化部
１１２・・・音声符号化部
１１３・・・多重部
１１４・・・分離部
１１５・・・映像復号部
１１６・・・音声復号部
１２０，１２０−１，１２０−２・・・パケット処理部
１２１・・・メディアパケット生成部
１２２・・・ＦＥＣパケット生成部
１２３・・・パケット受信部
１２４・・・損失率解析部
１２５・・・パケット送信部
１２６・・・メディアパケット解析部
１２７・・・メディアパケットバッファ
１２８・・・誤り訂正部
１２９・・・ＦＥＣパケット解析部
１３０・・・損失率パケット生成部
【図１】
2010119021.tif 000003
【図２】
2010119021.tif 000004
【図３】
2010119021.tif 000005
【図４】
2010119021.tif 000006
【図５】
2010119021.tif 000007
【図６】
2010119021.tif 000008
【図７】
2010119021.tif 000009
【図８】
2010119021.tif 000010
【図９】
2010119021.tif 000011
【図１０】
2010119021.tif 000012
【図１１】
2010119021.tif 000013
【図１２】
2010119021.tif 000014