(57)【特許請求の範囲】
【請求項１】
１つのフレームが複数の分割データに分割された動画像データの送信方法であって、
前記分割データに含まれ所定個数の画素データで構成されるマクロブロックが他のフレームのデータを用いて符号化されているか否かを示す前記複数の分割データのそれぞれの特性に基づいて、前記複数の分割データのそれぞれに優先度を設定する設定工程と、
フレームの先頭に対応する分割データが前記複数の分割データを含む送信ブロック内の所定の送信順序となるように決定し、フレームの先頭に対応する分割データ以外の前記複数の分割データが前記設定工程によって設定された優先度に応じた順序で送信されるように前記複数の分割データの送信順序を決定するとともに、連続するフレームにおいて同じ位置に表示されるデータの送信順序が同一にならないように、前記設定工程によって同じ優先度が設定された前記複数の分割データの送信順序を決定する決定工程と、
前記決定工程で決定された送信順序に基づいて前記複数の分割データを含む前記送信ブロックを複数送信する送信工程とを有し、
前記送信工程において、第１の送信ブロックに含まれる複数の分割データの送信間隔が、前記第１の送信ブロックと第２の送信ブロックの送信間隔よりも小さくなるようにして前記複数の分割データを送信することを特徴とする動画像データの送信方法。
【請求項２】
前記決定工程は、前記動画像データを構成するフレームにおいて、フレームの先頭以外にデータの再生位置を示す同期情報が含まれていない場合、前記複数の分割データのうち、各フレームの先頭に対応する分割データが所定の順序で送られるように送信順序を決定することを特徴とする請求項１記載の動画像データの送信方法。
【請求項３】
１つのフレームが複数の分割データに分割された動画像データを送信する通信装置であって、
前記分割データに含まれ所定個数の画素データで構成されるマクロブロックが他のフレームのデータを用いて符号化されているか否かを示す前記複数の分割データの特性に基づいて、前記複数の分割データのそれぞれに優先度を設定する設定手段と、
フレームの先頭に対応する分割データが前記複数の分割データを含む送信ブロック内の所定の送信順序となるように決定し、フレームの先頭に対応する分割データ以外の前記複数の分割データが前記設定手段によって設定された優先度に応じた順序で送信されるように前記複数の分割データの送信順序を決定するとともに、連続するフレームにおいて同じ位置に表示される分割データの送信順序が同一にならないように、前記設定手段によって同じ優先度が設定された前記複数の分割データの送信順序を決定する決定手段と、
前記決定手段で決定された送信順序に基づいて前記複数の分割データを含む送信ブロックを複数送信する送信手段とを有し、
前記送信手段は、第１の送信ブロックに含まれる複数のデータの送信間隔が、前記第１の送信ブロックと第２の送信ブロックの送信間隔よりも小さくなるようにして前記複数の分割データを送信することを特徴とする通信装置。
【請求項４】
前記決定手段は、前記動画像データを構成するフレームにおいて、フレームの先頭以外にデータの再生位置を示す同期情報が含まれていない場合、前記複数のデータのうち、各フレームの先頭に対応する分割データが所定の順序で送られるように送信順序を決定することを特徴とする請求項３記載の通信装置。
【請求項５】
１つのフレームが複数の分割データに分割された動画像データを送信するコンピュータに、
前記分割データに含まれ所定個数の画素データで構成されるマクロブロックが他のフレームのデータを用いて符号化されているか否かに基づいて、前記複数の分割データのそれぞれに優先度を設定する設定手順と、
フレームの先頭に対応する分割データが前記複数の分割データを含む送信ブロック内の所定の送信順序となるように決定し、フレームの先頭に対応する分割データ以外の前記複数の分割データが前記設定手順によって設定された優先度に応じた順序で送信されるように前記複数の分割データの送信順序を決定するとともに、連続するフレームにおいて同じ位置に表示されるデータの送信順序が同一にならないように、前記設定手順によって同じ優先度が設定された前記複数の分割データの送信順序を決定する決定手順と、
前記決定手順で決定された送信順序に基づいて前記複数の分割データを含む送信ブロックを複数送信する送信手順とを実行させ、
前記送信手順において、第１の送信ブロックに含まれる複数のデータの送信間隔が、前記第１の送信ブロックと第２の送信ブロックの送信間隔よりも小さくなるようにして前記複数の分割データを送信させる処理を前記コンピュータに実行させるためのプログラム。
【請求項６】
前記決定手順において、前記動画像データを構成するフレームにおいて、フレームの先頭以外にデータの再生位置を示す同期情報が含まれていない場合、前記複数の分割データのうち、各フレームの先頭に対応する分割データが所定の順序で送られるように送信順序を決定する処理を前記コンピュータに実行させることを特徴とする請求項５に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、有線あるいは無線のネットワークにおいて動画像データを分割して伝送する技術に関する。
【背景技術】
【０００２】
近年、通信システムの発達により、インターネットなどの通信回線を利用して、動画像を視聴することが一般に行なわれるようになってきている。
【０００３】
このような動画像データの通信、特にライブ映像などのリアルタイム性を必要とする動画像データの通信には、ＲＴＰ（Ａ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ  ｆｏｒ  Ｒｅａｌ−Ｔｉｍｅ  Ａｐｐｌｉｃａｔｉｏｎｓ）と呼ばれる形式が一般的に用いられる。ＲＴＰは、ＩＥＴＦによりＲＦＣ１８８９及びＲＦＣ１８９０として定義された、音声や動画像などのデータをリアルタイムで転送するためのプロトコルである。
【０００４】
ここで、ＲＴＰのプロトコルは、必ずしもデータの信頼性が高いとは言えないが、比較的高い通信速度が期待出来るＵＤＰ／ＩＰなどの低層プロトコルが利用されている。このような、ＵＤＰ／ＩＰなどのプロトコルを用いた場合、リアルタイム性や通信帯域の使用効率には優れているものの、その性質上、パケットロスなどのエラーが発生しやすいという問題がある。
【０００５】
このような問題に対して、エラーの発生を抑制する技術が、これまでに考え出されている。例えば、パケットの送信間隔を平均化することで、ネットワーク経路のルーターなどにおけるバッファあふれによるデータ損失を低減する技術が提案されている。あるいはまた、通信の側面からは、より信頼性の高い通信回線が提案されている。
【０００６】
しかし、それらの技術を用いても、実際にネットワークの輻輳などが発生した場合には、パケットロスの発生率をゼロにすることは困難である。このため、動画像データのフレーム毎に、フレーム内の位置情報から重要度を判断し、重要度が高い部分から先にデータ送信を行なうことで、重要度が高い部分のパケットロスを抑制する技術が提案されている。（例えば特許文献１）。
【特許文献１】特開平１１−３３１８３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記従来の技術のようなフレーム内での重要度の判断は、動画像データの符号化方法やパケットの送信タイミングの制御の方法によっては、必ずしも良い結果となるとは限らない。
【０００８】
即ち、ネットワークにおけるデータ伝送では、パケット送信タイミング制御の処理シーケンスに依存して、特定の送信タイミングや、特定の送信位置のパケットがロスし易いという特徴がある。したがって、動画像データの伝送において、フレーム内の位置情報から重要度を判断し、重要度が高い部分から先にデータ送信を行なう場合、フレーム内の同じ位置のデータが連続して正しく再生されないため、エラー箇所が目立ち易くなるという問題が生じる。本発明は、上記の問題に鑑みてなされたものであり、その目的は、パケットロス等の伝送エラーが、再生画像に与える影響を考慮した動画像データの送信方法を提供することである。
【課題を解決するための手段】
【０００９】
本発明の目的を達成するために、本発明の動画像データ送信方法は以下の構成を有する。すなわち、本発明のデータ送信方法は、１つのフレームが複数の分割データに分割された動画像データの送信方法であって、前記分割データに含まれ所定個数の画素データで構成されるマクロブロックが他のフレームのデータを用いて符号化されているか否かを示す前記複数の分割データのそれぞれの特性に基づいて、前記複数の分割データのそれぞれに優先度を設定する設定工程と、フレームの先頭に対応する分割データが前記複数の分割データを含む送信ブロック内の所定の送信順序となるように決定し、フレームの先頭に対応する分割データ以外の前記複数の分割データが前記設定工程によって設定された優先度に応じた順序で送信されるように前記複数の分割データの送信順序を決定するとともに、連続するフレームにおいて同じ位置に表示されるデータの送信順序が同一にならないように、前記設定工程によって同じ優先度が設定された前記複数の分割データの送信順序を決定する決定工程と、前記決定工程で決定された送信順序に基づいて前記複数の分割データを含む前記送信ブロックを複数送信する送信工程とを有し、前記送信工程において、第１の送信ブロックに含まれる複数の分割データの送信間隔が、前記第１の送信ブロックと第２の送信ブロックの送信間隔よりも小さくなるようにして前記複数の分割データを送信する。
【００１２】
また、本発明の通信装置は、１つのフレームが複数の分割データに分割された動画像データを送信する通信装置であって、前記分割データに含まれ所定個数の画素データで構成されるマクロブロックが他のフレームのデータを用いて符号化されているか否かを示す前記複数の分割データの特性に基づいて、前記複数の分割データのそれぞれに優先度を設定する設定手段と、フレームの先頭に対応する分割データが前記複数の分割データを含む送信ブロック内の所定の送信順序となるように決定し、フレームの先頭に対応する分割データ以外の前記複数の分割データが前記設定手段によって設定された優先度に応じた順序で送信されるように前記複数の分割データの送信順序を決定するとともに、連続するフレームにおいて同じ位置に表示される分割データの送信順序が同一にならないように、前記設定手段によって同じ優先度が設定された前記複数の分割データの送信順序を決定する決定手段と、前記決定手段で決定された送信順序に基づいて前記複数の分割データを含む送信ブロックを複数送信する送信手段とを有し、前記送信手段は、第１の送信ブロックに含まれる複数のデータの送信間隔が、前記第１の送信ブロックと第２の送信ブロックの送信間隔よりも小さくなるようにして前記複数の分割データを送信する。
【発明の効果】
【００１５】
本発明によれば、パケットロス等の伝送エラーが再生画像に与える影響を考慮した動画像データの送信ができる。
【００１６】
また、本発明によれば、パケットロスによるエラー箇所を分散させることができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の動画像データ送信方法を、通信機能を備えた動画像データ送信装置に適用した好適な実施形態について、図面を参照しながら説明する。
【００１８】
＜実施形態１＞
図１は、本発明の実施に好適な動画像データ送信装置の基本構成を示すブロック図である。
【００１９】
図１に示すように、動画像データ送信装置１００は、動画像符号化部１０１、特性抽出部１０２、優先度設定部１０３、スケジューリング部１０４、パケット生成部１０５、パケット送信部１０６から構成されている。動画像データ送信装置１００は、１つのフレームが複数のデータに分割された動画像データを送信する通信装置である。
【００２０】
動画像符号化部１０１は、ビデオカメラやネットワークカメラなどの動画像入力部１０７から入力された動画像データを、例えばＭＰＥＧ−４方式により符号化することでデータ量を圧縮する。尚、動画像データの符号化方式は、ＭＰＥＧ−４に限らずＭＰＥＧ−２やＨ．２６４などを用いても良い。
【００２１】
特性抽出部１０２は、動画像符号化部１０１で符号化された動画像データの分割単位ごとに特性を抽出する。尚、本実施形態における分割単位は、スライスである。また、抽出される特性には、分割単位（スライス）毎のサイズ、及び、分割単位毎の符号化データの構成情報などがある。
【００２２】
符号化データの構成情報は、例えば、特定のマクロブロックの符号化タイプを用いているマクロブロックの数を示した情報である。尚、本実施形態におけるマクロブロックは、１６個×１６個の画素データから構成されるデータの単位である。マクロブロックの符号化タイプとして、例えば、イントラ・マクロブロックやインター・マクロブロックがある。分割単位毎の特性を抽出した特性抽出部１０２は、当該特性を示す特性情報１０９を生成し、優先度設定部１０３へ送る。
【００２３】
優先度設定部１０３は、複数のデータのそれぞれの特性に基づいて当該複数のデータ毎に優先度を設定する。優先度の設定方法は後述する。
【００２４】
スケジューリング部１０４は、少なくとも１フレーム分のデータを格納可能なバッファを備えており、優先度設定部１０３で設定された優先度に基づいて分割単位毎の送信順序を決定し、送信順序情報を生成する。パケット生成部１０５は、特性情報１０９と送信順序情報に基づいて、符号化された動画像データをパケット化する。そして、パケット送信部１０６は、パケット生成部１０５でパケット化されたデータを送信順序情報に従って伝送路１０８に送信する。伝送路１０８は、各種有線、無線ネットワークに代表される伝送路である。
【００２５】
次に、優先度設定部１０３における分割単位毎の優先度の設定方法、及びスケジューリング部１０４における送信順序の決定方法について説明する。
【００２６】
尚、本実施形態では、動画像データをスライス単位で分割して優先度の設定、及び送信順序の決定を行う。
【００２７】
図２において、動画像データを構成する１つのフレーム（ピクチャ）２００がスライス１（２０１）からスライス５（２０５）までの５つのスライスで構成されている。この時、各々のスライスのサイズが、それぞれ１つのパケットに格納可能なサイズである場合、特性抽出部１０２で生成される分割サイズ情報は、スライスのサイズと同じサイズを示すものとなる。一方、スライスのサイズが、１つのパケットに格納できない場合、特性抽出部１０２は、スライスを複数のパケットに分割することを意味する特性情報１０９を生成する。
【００２８】
ここではまず、各々のスライスがそれぞれ１つのパケットに格納可能なサイズである場合の優先度の設定、及び送信順序の決定方法を、図２を用いて説明する。
【００２９】
同図において、スライス１（２０１）からスライス５（２０５）までの５つのスライスがそれぞれ２０６から２１０のようなマクロブロック構成であるとする。ここで、斜線で示されているマクロブロックが、イントラ・マクロブロックである。この場合、各スライスに含まれているイントラ・マクロブロックの数は、スライス１：０個、スライス２：２個、スライス３：３個、スライス４：４個、スライス５：１個、となる。尚、実際の動画像データでは、１つのピクチャにイントラ・マクロブロックが含まれないスライスが複数存在することも多い。
【００３０】
本実施形態の優先度設定部１０３は、個々の分割単位（スライス）に含まれるイントラ・マクロブロックの数が多いものほど高い優先度を設定する。従って、優先度の順位付けは図２に示すように優先度が高い順に、スライス４、スライス３、スライス２、スライス５、スライス１、となる。ここで、イントラ・マクロブロックは、フレーム内符号化を行うマクロブロックのことを示している。つまり、優先度設定部１０３は、分割した動画像データを構成するマクロブロックが、他のフレームのデータを用いて符号化されているか否かに基づいて優先度を設定する。
【００３１】
ここで、イントラ・マクロブロックの数が多いものほど高い優先度を設定する理由を説明する。イントラ・マクロブロックが配置されるケースとして、例えば、予測符号化で参照される画像には無い、新たなオブジェクトが動画像内に出現した場合がある。この場合、他のフレームを参照して符号化するよりも、参照せずに符号化したほうが符号量が小さくなることがあるため、予測誤差がある基準値よりも大きくなるときに、イントラ・マクロブロックが配置される。
【００３２】
そして、イントラ・マクロブロックが予測符号化の参照ブロックとなる場合、一般に、参照階層が低いうちは予測誤差が小さい為、他のマクロブロックと比較すると、そのマクロブロックの参照系列に、新たにイントラ・マクロブロックが配置される可能性は低くなる。
【００３３】
つまり、もしイントラ・マクロブロックが伝送エラーにより受信側に届かないと、そのイントラ・マクロブロックを参照しているマクロブロックも復号処理でエラーとなる為、エラーの伝播が他のマクロブロックよりも大きくなりやすい。
【００３４】
よって、分割単位（スライス）に含まれるイントラ・マクロブロックの数が多いものほど高い優先度を設定する。尚、優先度を設定する方法として、イントラ・マクロブロックの数を用いたが、分割単位（スライス）毎のイントラ・マクロブロックの割合を用いるようにしても良い。このとき、各分割単位に含まれるイントラ・マクロブロックの割合（例えば、３０％以上、１０％以下など）と、その割合に対して設定する優先度を予め決めておくことも可能である。このようにすることで、各分割単位（例えばビデオパケット）のマクロブロック数が異なる動画像データに対して、優先度の設定を効率良く行うことができる。
【００３５】
また、イントラ・マクロブロックは他のマクロブロックと比較してデータサイズが大きいことから、スライスに格納されているマクロブロックの平均サイズが大きいものに高い優先度を設定するようにしても良い。すなわち、優先度設定部１０３による優先度の設定は、分割したデータのデータサイズに基づいて行っても良い。このようにすることで、マクロブロックのタイプを参照することなく優先度を設定できるようになり、処理の簡略化を図ることができる。
【００３６】
また、スケジューリング部１０４は、優先度が高いスライスから順に送信するように送信順序を決定するが、優先度が同じスライスについては、それらのスライスがラスター順とは異なる順序で送信されるように送信順序を決定する。即ち、スケジューリング部１０４は、連続するフレームにおいて同じ位置に表示されるデータの送信順序が同一にならないように、優先度設定部１０３によって同じ優先度が設定された複数のデータの送信順序を決定する。
【００３７】
これは下記の理由による。即ち、ネットワークの輻輳などによりパケットロスが発生する状況では、パケット送信タイミング制御の処理シーケンスに依存して、特定の送信タイミングや、特定の送信位置のパケットがロスし易いという問題がある。
【００３８】
通常の動画像データの送信装置では、動画像データを分割して送信する場合、例えばラスター順など、決まった順序で送信することが多い。このため、複数の連続するフレームにおいて、フレーム中の同じような箇所のデータがパケットロスにより欠落する危険がある。そこで、本実施形態のスケジューリング部１０４は、同じ優先度が設定されたスライスの送信順序を、例えばランダムに割り当てることによってラスター順とは異なる送信順序となるように決定する。このようにすることで、パケットロスによるエラー箇所を分散させることができる。
【００３９】
次に、１つのスライスが１つのパケットに格納できない場合の優先度の設定、及び送信順序の決定方法について図３を用いて説明する。図３は、１つのフレーム（ピクチャ）がスライス１（３０１）からスライス５（３０５）で構成されており、パケット化の際には分割位置３０６、及び各スライスの区切りで分けられることを示している。この場合、１つのスライスのデータが複数に分けられる。
【００４０】
ここで、図３に示すように各スライスが複数に分かれても、優先度はスライス単位で設定する。また、送信順序についても、１つのスライスのデータは１つの固まりとして連続して送信されるように送信順序を決定する。
【００４１】
これは、複数のパケットが連続して欠落する場合に、１つのスライスのデータを分散して送信すると、データの一部が欠落したスライスが多くなってしまうことにより、復号の際にエラーとなるスライスが増加することを防ぐためである。尚、上記のスライスの単位は、ＭＰＥＧ−４の場合、再同期マーカーで分割されたビデオパケットに相当する。即ち、パケットのサイズに関わらず、ある分割単位で生じたパケットロスが、他の分割単位の再生に影響を与えない単位（スライス、ビデオパケット）で、優先度の設定や送信順序の決定を行う。
【００４２】
尚、符号化方式がＭＰＥＧ−４で、再同期マーカー（データの再生位置を示す同期情報）が含まれない場合がある。その場合、優先度設定部１０３は、各フレームの先頭のスライス、即ちＶＯＰ（Ｖｉｓｕａｌ  Ｏｂｊｅｃｔ  Ｐｌａｎｅ）のヘッダを含む分割データの優先度を最も高く設定する。そして、スケジューリング部１０４は、フレームの先頭以外にデータの再生位置を示す同期情報が含まれていない場合、フレームの先頭に対応するデータが所定の順序で送信されるように送信順序を決定する。
【００４３】
これは、再同期マーカーが含まれないデータにおいては、ＶＯＰのヘッダに当該フレームの復号に必要な情報が含まれているためである。
【００４４】
次に、本実施形態における優先度設定部１０３による優先度の設定、及びスケジューリング部１０４による送信順序の決定処理について図８のフローチャートを用いて説明する。
【００４５】
まず、Ｓ８０１（設定手順）において、優先度設定部１０３は、前述した特性抽出部１０２で生成された分割単位（スライス）毎のサイズ情報及び符号化データの構成情報に基づき、スライスごとに優先度を設定し、Ｓ８０２に進む。すなわち、Ｓ８０１では、優先度設定部１０３が、１つのフレームを分割した複数のデータのそれぞれに優先度を設定する。
【００４６】
そしてＳ８０２において、スケジューリング部１０４は、優先度設定部１０３によって同一フレーム内に同じ優先度が設定されているスライスがあるか否かを判定する。Ｓ８０２において、同じ優先度が設定されているスライスがあると判定された場合はＳ８０３へ、ないと判定された場合はＳ８０４へ進む。
【００４７】
Ｓ８０３では、スケジューリング部１０４が、同じ優先度が設定されたスライスが、ラスター順とは異なる順序で送信されるように、例えばランダムに送信順序を割り当てる。ただし、Ｓ８０３における送信順序の割り当て方は、ランダムに限らず何らかの規則を用いても良い。
【００４８】
そして、Ｓ８０４（決定手順）では、スケジューリング部１０４が、Ｓ８０１で設定された優先度と、Ｓ８０３で割り当てられた送信順序に基づき、全てのパケットの送信順序を決定し、送信順序情報を生成する。つまり、スケジューリング部１０４は、Ｓ８０３、及びＳ８０４によって以下の処理を行う。即ち、Ｓ８０１で設定された優先度に応じた順序で送信されるように複数のデータの送信順序を決定すると共に、連続するフレームにおいて同じ位置に表示されるデータの送信順序が同一にならないよう、同じ優先度が設定された複数のデータの送信順序を決定する。
【００４９】
そして、Ｓ８０５（送信手順）では、パケット生成部１０５が、生成された送信順序情報に基づいてパケットを生成し、そのパケットをパケット送信部１０６が伝送路１０８へ送信する。すなわち、パケット送信部１０６は、Ｓ８０５において、スケジューリング部１０４で決定された送信順序に基づいて、動画像データを伝送路１０８へ送信する。
【００５０】
以上説明したように、本実施形態では、１つのフレームが複数のデータ（スライス）に分割された動画像データを送信する際に、分割単位（スライス）ごとに設定した優先度に応じた順序で送信されるように、分割単位毎の送信順序を決定する。また、連続するフレームにおいて同じ位置に表示されるデータの送信順序が同一にならないように、同じ優先度が設定された分割単位の送信順序を決定する。このようにすることで、パケットの欠落による影響が大きいパケットのロスを低減できる。また、パケットロスによるエラー箇所を分散させることができる。
【００５１】
＜実施形態２＞
次に、優先度とパケットの送信タイミングの制御を組み合わせて送信順序を決定する実施形態について説明する。
【００５２】
図４は、パケットの送信タイミングの制御方法のパターンを示す図である。
【００５３】
図４において、（Ａ）送信制御なしは、特に送信タイミングの制御を行なわず、１フレーム分のパケットを連続してネットワークに送信する場合のパケットの送信間隔を示している。
【００５４】
また（Ｂ）送信制御１は、パケットを送信していない時間を利用して、パケットの送信間隔を均等に広げることで、ネットワーク経路のルーターなどにおけるバッファあふれによるデータ損失を少なくする制御方法を示している。
【００５５】
続いて（Ｃ）送信制御２は、１つのクロック・タイミングで複数のパケットをバースト送信することで、パケットの送信間隔を平均化する制御方法を示している。
【００５６】
優先度の情報と図４の各送信制御方法を組み合わせる場合、（Ａ）送信制御なし、及び（Ｂ）送信制御１の場合は、実施形態１で述べたような方法が適している。それはすなわち、基本的に優先度が高いスライスから順に送信し、優先度が同じものについては、連続するフレームにおいて同じ位置に表示されるデータの送信順序が同一にならないように送信順序を決定する方法である。
【００５７】
そこで、（Ｃ）送信制御２の送信制御方法と優先度を組み合わせた方法について以下に説明する。
【００５８】
図５では、１つのフレーム（ピクチャ）５００がスライス１〜スライス１５で構成されている。
【００５９】
そして、ブロック１（５０２）、ブロック２（５０３）、ブロック３（５０４）の各ブロックは、１回のクロック・タイミングで送信するデータを示している。このとき、同一ブロック内のスライス（例えば、スライス１０とスライス６）の間隔は、異なるブロックのスライス（例えば、スライス７とスライス５）の間隔よりも小さくなる。
【００６０】
また、図５における優先度５０１のレベル数は、各ブロック内のスライス数に依存する。即ち、まず、送信制御の基本となるクロック・タイミングと動画像データのビットレートやフレームレート、１フレーム当たりのパケット数、１フレームのスライス数などから、各クロック・タイミングで送信するスライス数を決定する。そして、決定された、各クロック・タイミングで送信するスライス数によって優先度のレベル数を決定し、優先度の判定を行う。
【００６１】
本実施形態の場合、図５に示すように、１回のクロック・タイミングで送信されるスライスの数は５つなので、優先度を５つのレベルに分けて設定する。そして、同図の優先度５０１は、各スライスをＡ〜Ｅの５つのレベルで優先度の設定をしていることを示している。尚、本実施形態では、優先度が最も高いものをＡとして、Ａ＞Ｂ＞Ｃ＞Ｄ＞Ｅのように優先度を設定している。
【００６２】
本実施形態は、高い優先度が設定されたスライスのデータが、各ブロックの先頭から順に送信されるように送信順序を決定する。
【００６３】
詳細には、まず、優先度がＡに設定されたスライス５、スライス１０、スライス１５が、各ブロック（５０２、５０３、５０４）の先頭になるように送信順序を決定する。そして、優先度Ｂに設定されたスライス３、スライス６、スライス８が、各ブロックの２番目となるように送信順序を決定する。以下同様に、優先度の高いスライスほど、各ブロックの先頭の近くとなるように送信順序を決定していく。尚、同じ優先度に設定された複数のスライスの送信順序が、ラスター順とは異なる順序で送信されるように、例えばランダムに割り当てることは実施形態１と同様である。
【００６４】
次に、図５における優先度、及び送信順序を決定する処理フローを図９を用いて説明する。尚、実施形態２の処理は、図１に示したような動画像データ送信装置によって行われる。
【００６５】
まず、Ｓ９０１において、特性抽出部１０２は、フレームやフレームを構成するスライスのサイズなどの情報から、１フレームを送信する際のパケット数、及び１フレームのスライス数を算出する。また、特性抽出部１０２は、Ｓ９０１において、前述の特性情報１０９を生成する。
【００６６】
Ｓ９０２において、特性抽出部１０２は、Ｓ９０１で算出した情報に基づき、クロック・タイミング毎に送信するスライス数、及びブロックの送信間隔（クロック・タイミングの整数倍）を決定する。さらに、特性抽出部１０２は、決定したクロック・タイミング毎に送信するスライス数に基づいて、優先度のレベル数を決定する。本実施形態では、優先度のレベル数を１ブロック内のスライス数と同じ数になるように決定する。
【００６７】
Ｓ９０３（設定手順）では、優先度設定部１０３が、Ｓ９０２で決定された優先度のレベル数と、特性抽出部１０２が生成した特性情報１０９に基づき、各スライスの優先度を設定し、Ｓ９０４へ進む。即ち、優先度設定部１０３は、１つのフレームが複数に分割されたデータのそれぞれに優先度を設定する。
【００６８】
Ｓ９０４では、スケジューリング部１０４が、同じ優先度に設定された複数のスライスの送信順序を、ラスター順とは異なる順序で送信されるように決定する。本実施形態のＳ９０４では、同じ優先度に設定された各スライスを、どのブロックで送信するかを決定している。例えば図５において、優先度がＡに設定されたスライス（５、１０、１５）は、ラスター順に送信順序を決めると、スライス５がブロック１、スライス１０がブロック２、スライス１５がブロック３の順序で送信される。しかし、本実施形態では、ラスター順とは異なる順序で、すなわち、ここでは、スライス１０がブロック１、スライス５がブロック２、スライス１５がブロック３という順序で送信されるように送信順序を決定している。
【００６９】
そしてＳ９０５（決定手順）では、スケジューリング部１０４が、設定した優先度とＳ９０４にて割り当てた送信順序に基づいて全てのスライスの送信順序を決定する。さらにＳ９０５では、スケジューリング部１０４が、スライスの送信順序とパケットの送信タイミングの情報から、スライスをパケット化した時のパケットの送信順序、及び送信タイミングを決定し、送信順序情報を生成する。そして、スケジューリング部１０４は、生成した送信順序情報、及び符号化データをパケット生成部１０５へ送る。つまり、スケジューリング部１０４は、Ｓ９０４、及びＳ９０５によって以下の処理を行う。即ち、Ｓ９０３で設定された優先度に応じた順序で送信されるように複数のデータの送信順序を決定すると共に、連続するフレームにおいて同じ位置に表示されるデータの送信順序が同一にならないよう、同じ優先度が設定された複数のデータの送信順序を決定する。さらにＳ９０６（送信手順）では、パケット生成部１０５が、送信順序情報と符号化データに基づいてパケットを生成し、そのパケットをパケット送信部１０６が伝送路１０８へ送信する。すなわち、パケット送信部１０６は、Ｓ９０６で、スケジューリング部１０４が決定した送信順序に基づいて、複数のブロックをブロック間に間隔をあけて伝送路１０８に送信する。
【００７０】
尚、本実施形態では、特性抽出部１０２が、優先度のレベル数を決定してから優先度設定部１０３が優先度を設定したが、この方法に限らない。すなわち、例えば、先にレベル数を制限せずに優先度を設定し、その後に決定された優先度のレベル数に基づいて、設定された優先度を調整しても良い。
【００７１】
次に、優先度の設定と送信順序の決定方法が、上記図５とは異なるもう１つの例について図６を参照しながら説明する。
【００７２】
図６において、１つのフレーム（ピクチャ）６００は、図５と同様に１５個のスライスから構成されているが、各スライスの優先度６０１は、レベル数を制限することなく設定する。
【００７３】
この時、各スライスの送信順序は、優先度順位６０５に示すように、優先度の高いスライスが、各ブロックの先頭から順に送信されるように決定する。
【００７４】
詳細には、先頭のブロックの先頭のスライスが、フレーム内で最も優先度が高いスライス（スライス１０）であり、次に優先度が高いスライス（スライス５）は２つ目のブロックの先頭のスライスとなる。以下同様にして、各ブロックの先頭のスライスが全て決まったら、次に優先度が高いスライス（スライス６）は先頭ブロックの２番目に送信するスライスというように、優先度順位６０５に示すように優先度毎の送信順序を決定する。
【００７５】
尚、本実施形態においてフレームを構成するスライスの単位は、実施形態１と同様に、ＭＰＥＧ−２のスライス、又はＭＰＥＧ−４の場合、再同期マーカーで分割されたビデオパケットに相当する。
【００７６】
更に、スライス又はビデオパケットをパケット化の際に分割する／しないに関わらず、本実施形態における優先度と送信順序情報は、スライス又はビデオパケット単位で設定する点も実施形態１と同様である。
【００７７】
次に、図６における優先度、及び送信順序を決定する処理フローを図７を用いて説明する。
【００７８】
まず、Ｓ７０１（設定手順）において、優先度設定部１０３が、特性抽出部１０２で生成された分割サイズ情報及び符号化データの構成情報に基づき、スライス毎に優先度の設定を行なう。尚、優先度の設定は、実施形態１と同様に、各スライスに含まれるイントラ・マクロブロックの数に基づいて行う。ただし、イントラ・マクロブロックの割合や、マクロブロックの平均サイズをもとに行なっても良い。すなわち、優先度設定部１０３はＳ７０１において、動画像データを構成する１つのフレームを分割した、複数のデータのそれぞれに対して優先度を設定する。このとき、優先度は、複数のデータのそれぞれの特性に基づいて設定される。
【００７９】
Ｓ７０２において、スケジューリング部１０４は、Ｓ７０１で設定された優先度について、同じ優先度が設定されたスライスがあるか否かを判定する。優先度が同じスライスがある場合はＳ７０３に進み、優先度が同じスライスがない場合はＳ７０６に進む。Ｓ７０３では、スケジューリング部１０４が、同じ優先度が設定されたスライスがラスター順とは異なる送信順序で送信されるように、例えばランダムに割り当てる。ただし、同じ優先度のスライスがラスター順に基づく順序で送信されないようにすることができれば、ランダム以外の方法で送信順序を割り当てても良い。
【００８０】
一方、スライスの優先度設定と平行してＳ７０４では、特性抽出部１０２が、フレームやフレームを構成するスライスのサイズなどの情報から、１フレームを送信する際のパケット数、及び１フレーム当たりのスライス数を算出する。そして、Ｓ７０５では、特性抽出部１０２が、Ｓ７０４で算出された情報に基づき、クロック・タイミング毎に送信するスライス数及び、ブロックの送信間隔（クロック・タイミングの整数倍）を決定する。
【００８１】
Ｓ７０６（決定手順）では、スケジューリング部１０４が、スライスの送信順序とパケットの送信タイミングの情報からスライスをパケット化した時の、パケットの送信順序、及び送信タイミングを決定し、送信順序情報を生成する。
【００８２】
そして、Ｓ７０６で、スケジューリング部１０４は、送信順序情報、及び符号化データをパケット生成部１０５へ送る。つまり、スケジューリング部１０４は、Ｓ７０３、及びＳ７０６によって以下の処理を行う。即ち、Ｓ７０１で設定された優先度に応じた順序で送信されるように複数のデータの送信順序を決定すると共に、連続するフレームにおいて同じ位置に表示されるデータの送信順序が同一にならないよう、同じ優先度が設定された複数のデータの送信順序を決定する。
【００８３】
そして、Ｓ７０７（送信手順）では、パケット生成部１０５が、Ｓ７０６で決定された送信順序に基づいてパケットを生成し、そのパケットをパケット送信部１０６が伝送路１０８へ送信する。すなわち、パケット送信部１０６は、スケジューリング部１０４で決定された送信順序に基づいて、複数のブロックをブロック間に間隔をあけて伝送路１０８へ送信する。
【００８４】
尚、本実施形態において、１つのブロックに複数のフレームのデータが含まれる場合もあり得る。そして、その場合で、かつ、ブロックに含まれる複数のデータに、フレームの先頭に対応するデータがある場合、スケジューリング部１０４は、Ｓ７０６において、以下のように処理を行う。即ち、前記フレームの先頭に対応するデータがブロックの先頭に配置されるように、前記フレームの先頭に対応するデータの送信順序を、フレームの先頭以外に対応するデータと入れ替える。つまり、１つのブロックに複数のフレームのデータが含まれ、かつ、１つのブロックに含まれる複数のデータのうちの少なくとも１つが、フレームの先頭に対応するデータである場合、以下のようにデータの入れ替えを行う。即ち、フレームの先頭に対応するデータがブロックの所定の送信順序となるように、フレームの先頭に対応するデータの送信順序をフレームの先頭以外に対応するデータと入れ替える。
【００８５】
＜その他の実施形態＞
本実施形態における優先度の設定では、イントラ・マクロブロックの数、割合や、マクロブロックの平均サイズ等を、各フレームの分割単位ごとに比較することで行ったが、この方法に限らなくとも良い。すなわち、例えば、分割単位に含まれるイントラ・マクロブロックの数と、それに対応する優先度の関係を予め設定しておき、優先度設定部１０３は、イントラ・マクロブロックの数と予め設定された優先度の情報に基づいて、優先度を設定するようにしても良い。また、これらの組み合わせによって優先度を設定するようにしても良い。
【００８６】
また、本実施形態では、１つのスライス（ビデオパケット）単位で優先度の設定、及び送信順序の決定を行ったが、これに限らなくとも良い。すなわち、例えば複数のスライス（ビデオパケット）単位で優先度の設定、及び送信順序の決定を行うようにしても良い。
【００８７】
また、本実施形態では、符号化方式がＭＰＥＧ−４で、再同期マーカーが含まれない場合、スケジューリング部１０４は、先頭のスライスを含む分割データが、ブロック内の所定の位置に配置されるように、フレームの先頭以外に対応するデータと入替える。尚、本実施形態では、先頭のスライスを含む分割データが、ブロックの先頭に配置されるように、フレームの先頭以外に対応するデータと入替えている。このようにすることで、フレームの復号に必要な情報を持つＶＯＰヘッダがロスする可能性を少なくすることができる。
【００８８】
また、本発明の目的は、次の形態によっても達成される。すなわち、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵまたはＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行する形態である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００８９】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【００９０】
また、本発明は、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現される形態には限られない。すなわち、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００９１】
さらに、本発明には、以下の形態も含まれる。すなわち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される形態である。
【図面の簡単な説明】
【００９２】
【図１】動画像データ送信装置１００の基本構成を示すブロック図である
【図２】優先度の設定方法を示す図である
【図３】スライスが複数のパケットに分かれる際の優先度の設定方法を示す図である
【図４】パケット送信タイミング制御の方法を示す図である
【図５】優先度と送信タイミング制御の組み合わせを示す図（１）である
【図６】優先度と送信タイミング制御の組み合わせを示す図（２）である
【図７】優先度を無制限に設定する場合の動画像データ送信方法の処理を示すフロー図である
【図８】優先度の設定に基づくパケット送信の処理を示すフロー図である
【図９】優先度と送信タイミング制御を組み合わせた場合の動画像データ送信方法の処理を示すフロー図である
【符号の説明】
【００９３】
１００  動画像データ送信装置
１０１  動画像符号化部
１０２  特性抽出部
１０３  優先度設定部
１０４  スケジューリング部
１０５  パケット生成部
１０６  パケット送信部
【図１】
0005100311.tif 000002
【図２】
0005100311.tif 000003
【図３】
0005100311.tif 000004
【図４】
0005100311.tif 000005
【図５】
0005100311.tif 000006
【図６】
0005100311.tif 000007
【図７】
0005100311.tif 000008
【図８】
0005100311.tif 000009
【図９】
0005100311.tif 000010