(57)【特許請求の範囲】
【請求項１】
画像データを符号化し、符号化データを生成する符号化手段と、
前記符号化データを、前記符号化データに付加されたタイムスタンプに同期して復号して再生する同期再生が、前記符号化手段による前記画像データの符号化による遅延によって破たんしないようにするために最低限必要なバッファ時間である符号化時バッファ時間を、前記符号化データに符号化ヘッダ情報として付加する符号化時バッファ時間付加手段と、
前記同期再生が、前記画像データの符号化と前記符号化データの伝送との両方による遅延によって破たんしないようにするために最低限必要なバッファ時間である伝送時バッファ時間を、前記符号化データに、前記符号化ヘッダ情報と異なる伝送ヘッダ情報として付加する伝送時バッファ時間付加手段と、
前記符号化時バッファ時間付加手段により前記符号化時バッファ時間を含む前記符号化ヘッダ情報を付加され、さらに、前記伝送時バッファ時間付加手段により前記伝送時バッファ時間を含む前記伝送ヘッダ時情報を付加された前記符号化データを、ネットワークを介して、前記同期再生を行う他の装置に送信する送信手段と
を備える送信装置。
【請求項２】
前記ネットワークの通信に関する状況の情報であり、伝送レート、ネットワークジッタ、パケット損失率、および伝送遅延を少なくとも含むネットワーク状況情報を収集するネットワーク状況情報収集手段と、
前記ネットワーク状況情報収集手段により収集された前記ネットワーク状況情報を用いて、前記同期再生が、前記符号化データの伝送による遅延によって破たんしないようにするために最低限必要なバッファ時間であるネットワーク対応バッファ時間を算出するネットワーク対応バッファ時間算出手段と、
前記ネットワーク対応バッファ時間算出手段により算出された前記ネットワーク対応バッファ時間、および、前記符号化時バッファ時間を用いて、前記伝送時バッファ時間を算出する伝送時バッファ時間算出手段と
をさらに備える請求項１に記載の送信装置。
【請求項３】
前記伝送時バッファ時間算出手段は、前記符号化時バッファ時間と、前記ネットワーク対応バッファ時間とが互いに独立な場合、前記符号化時バッファ時間と前記ネットワーク対応バッファ時間との和を前記伝送時バッファ時間とする
請求項２に記載の送信装置。
【請求項４】
前記伝送時バッファ時間算出手段は、前記ネットワーク対応バッファ時間が前記符号化時バッファ時間を含んだ値を持つ場合、前記符号化時バッファ時間若しくは前記ネットワーク対応バッファ時間のうちの大きい方を選択する
請求項２に記載の送信装置。
【請求項５】
前記ネットワーク対応バッファ時間算出手段は、前記同期再生が、前記ネットワークの前記ネットワークジッタによる遅延の増大によって破たんしないようにするために最低限必要なバッファ時間であるネットワークジッタ対応バッファ時間を前記ネットワーク対応バッファ時間とする
請求項２に記載の送信装置。
【請求項６】
前記符号化時バッファ時間に、前記符号化手段による前記画像データの符号化の符号化レートと前記伝送レートとの比を反映させたレート比対応バッファ時間を算出するレート比対応バッファ時間算出手段をさらに備え、
前記ネットワーク対応バッファ時間算出手段は、前記レート比対応バッファ時間算出手段により算出された前記レート比対応バッファ時間を前記ネットワーク対応バッファ時間とする
請求項２に記載の送信装置。
【請求項７】
前記ネットワーク対応バッファ時間算出手段は、前記同期再生が、再送処理による遅延によって破たんしないようにするために最低限必要なバッファ時間である再送対応バッファ時間を前記ネットワーク対応バッファ時間とする
請求項２に記載の送信装置。
【請求項８】
前記ネットワーク対応バッファ時間算出手段は、前記同期再生が前記ネットワークの前記ネットワークジッタによる遅延の増大によって破たんしないようにするために最低限必要なバッファ時間であるネットワークジッタ対応バッファ時間、前記符号化時バッファ時間に、前記符号化手段による前記画像データの符号化の符号化レートと前記伝送レートとの比を反映させたレート比対応バッファ時間、および、前記同期再生が再送処理による遅延によって破たんしないようにするために最低限必要なバッファ時間である再送対応バッファ時間の総和を前記ネットワーク対応バッファ時間とする
請求項２に記載の送信装置。
【請求項９】
前記ネットワーク対応バッファ時間算出手段は、前記同期再生が前記ネットワークの前記ネットワークジッタによる遅延の増大によって破たんしないようにするために最低限必要なバッファ時間であるネットワークジッタ対応バッファ時間、若しくは、前記同期再生が再送処理による遅延によって破たんしないようにするために最低限必要なバッファ時間である再送対応バッファ時間のうちの大きい方と、前記符号化時バッファ時間に、前記符号化手段による前記画像データの符号化の符号化レートと前記伝送レートとの比を反映させたレート比対応バッファ時間との和を前記ネットワーク対応バッファ時間とする
請求項２に記載の送信装置。
【請求項１０】
前記ネットワーク対応バッファ時間算出手段は、前記同期再生が前記ネットワークの前記ネットワークジッタによる遅延の増大によって破たんしないようにするために最低限必要なバッファ時間であるネットワークジッタ対応バッファ時間、前記符号化時バッファ時間に、前記符号化手段による前記画像データの符号化の符号化レートと前記伝送レートとの比を反映させたレート比対応バッファ時間、および、前記同期再生が再送処理による遅延によって破たんしないようにするために最低限必要なバッファ時間である再送対応バッファ時間のうち、最も大きいものを前記ネットワーク対応バッファ時間とする
請求項２に記載の送信装置。
【請求項１１】
前記符号化時バッファ時間を算出する符号化時バッファ時間算出手段をさらに備え、
前記符号化時バッファ時間付加手段は、前記符号化時バッファ時間算出手段により算出された前記符号化時バッファ時間を、前記符号化データに前記符号化ヘッダ情報として付加する
請求項１に記載の送信装置。
【請求項１２】
前記符号化時バッファ時間算出手段は、前記画像データの符号化の符号化レートを、前記画像データの符号化に用いられるバッファサイズで除算した値を前記符号化時バッファ時間とする
請求項１１に記載の送信装置。
【請求項１３】
送信装置の符号化手段が、画像データを符号化し、符号化データを生成し、
前記送信装置の符号化時バッファ時間付加手段が、前記符号化データを、前記符号化データに付加されたタイムスタンプに同期して復号して再生する同期再生が、前記画像データの符号化による遅延によって破たんしないようにするために最低限必要なバッファ時間である符号化時バッファ時間を、前記符号化データに符号化ヘッダ情報として付加し、
前記送信装置の伝送時バッファ時間付加手段が、前記同期再生が、前記画像データの符号化と前記符号化データの伝送との両方による遅延によって破たんしないようにするために最低限必要なバッファ時間である伝送時バッファ時間を、前記符号化データに、前記符号化ヘッダ情報と異なる伝送ヘッダ情報として付加し、
前記送信装置の送信手段が、前記符号化時バッファ時間を含む前記符号化ヘッダ情報を付加し、さらに、前記伝送時バッファ時間を含む前記伝送ヘッダ時情報を付加された前記符号化データが、ネットワークを介して、前記同期再生を行う他の装置に送信する
送信方法。
【請求項１４】
他の装置において画像データが符号化されて生成され、ネットワークを介して伝送された符号化データを受信する受信手段と、
前記受信手段により受信された前記符号化データから、前記符号化データに付加されたタイムスタンプに同期して復号して再生する同期再生が、前記画像データの符号化による遅延によって破たんしないようにするために最低限必要なバッファ時間である符号化時バッファ時間を抽出し、取得する符号化時バッファ時間取得手段と、
前記受信手段により受信された前記符号化データから、前記符号化データの同期再生が、前記画像データの符号化と前記符号化データの伝送との両方による遅延によって破たんしないようにするために最低限必要なバッファ時間である伝送時バッファ時間を抽出し、取得する伝送時バッファ時間取得手段と、
前記符号化時バッファ時間取得手段により取得された前記符号化時バッファ時間、および、前記伝送時バッファ時間取得手段により取得された前記伝送時バッファ時間を用いて、前記同期再生が破たんしないようにするために必要なバッファ時間の初期値である初期バッファ遅延を算出する初期バッファ遅延算出手段と、
前記受信手段により受信された前記符号化データを格納する格納手段と、
前記格納手段により格納されている前記符号化データの読み出しタイミングを制御することにより、前記同期再生を制御する同期制御手段と、
前記同期制御手段による制御に従って前記格納手段より読みだされた前記符号化データを復号する復号手段と
を備える受信装置。
【請求項１５】
前記初期バッファ遅延算出手段は、前記符号化データに付加される前記伝送時バッファ時間が有効である場合、前記伝送時バッファ時間を前記初期バッファ遅延とし、前記伝送時バッファ時間が無効である場合、前記符号化データに付加される前記符号化時バッファ時間を前記初期バッファ遅延とする
請求項１４に記載の受信装置。
【請求項１６】
復号装置の受信手段が、他の装置において画像データが符号化されて生成され、ネットワークを介して伝送された符号化データを受信し、
前記復号装置の符号化時バッファ時間取得手段が、受信された前記符号化データから、前記符号化データに付加されたタイムスタンプに同期して復号して再生する同期再生が、前記画像データの符号化による遅延によって破たんしないようにするために最低限必要なバッファ時間である符号化時バッファ時間を抽出し、取得し、
前記復号装置の前記伝送時バッファ時間取得手段が、受信された前記符号化データから、前記符号化データの同期再生が、前記画像データの符号化と前記符号化データの伝送との両方による遅延によって破たんしないようにするために最低限必要なバッファ時間である伝送時バッファ時間を抽出し、取得し、
前記復号装置の前記初期バッファ遅延算出手段が、取得された前記符号化時バッファ時間、および、取得された前記伝送時バッファ時間を用いて、前記同期再生が破たんしないようにするために必要なバッファ時間の初期値である初期バッファ遅延を算出し、
前記復号装置の格納手段が、受信された前記符号化データを格納し、
前記復号装置の同期制御手段が、格納されている前記符号化データの読み出しタイミングを制御することにより、前記同期再生を制御し、
前記復号装置の復号手段が、前記制御に従って、読みだされた前記符号化データを復号する
受信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、送信装置および方法、並びに、受信装置および方法に関し、特に、不要な遅延時間を増大させない低遅延データ伝送を、ネットワーク状況に依らず、より安定的に行うことができるようにした送信装置および方法、並びに、受信装置および方法に関する。
【背景技術】
【０００２】
近年、インターネットもしくはその他の伝送路を経由してマルチメディアデータを低遅延に伝送するという需要が高まっている。例えば、手術室から動画像伝送される手術風景を見ながら、遠隔地でその手術室の手術器具を操作するといった所謂遠隔手術のアプリケーションがある。このようなアプリケーションにおいては、遠隔地における手術器具の操作性の低減を抑制するために、数フレーム間隔以下の遅延で動画像が伝送されることが求められる。
【０００３】
従来のストリーミングの場合、送信装置は、バッファリング時間、若しくは、これを計算するために必要なパラメータ値を、例えば伝送フォーマット中、若しくは、シグナリングメッセージに記載することにより、受信端末に通知し、受信端末は、取得したそれらの情報に基づいてバッファリング時間を設定する、といった方法が行われてきた。
【０００４】
また、仮想標準デコーダにおいて、エンコードレート、バッファパラメータを孔あきバケツモデルとして知られるものにより特徴付け、パラメータ組（Ｒ，Ｂ，Ｆ）により記述する方式が提案されている（例えば、非特許文献１参照）。ここで、Ｒは伝送レートを示し、Ｂはバッファサイズを示し、Ｆは初期デコーダバッファ蓄積量（Ｆ／Ｒは開始又は初期バッファ遅延）を示す。
【０００５】
初期バッファ遅延Ｆ／Ｒは、バッファリング時間と同等である。パラメータ組（Ｒ，Ｂ，Ｆ）を複数組記述することにより、送信装置がエンコードレートと異なる伝送レートにてデータレートを平滑化し伝送した場合、受信装置は、伝送レートに対応するバッファサイズを指定することにより、バッファ破たんなく安定的にデコード再生することができる。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Jordi Ribas-Corbera,Member,IEEE,Philip A． Chou, Senior Member,IEEE, and Shankar L. Regunathan, "A Generalized Hypothetical Reference Decoder for H.264/AVC" IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, VOL. 13,No.7,JULY 2003
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、この方法の場合、伝送路となるネットワーク状況が安定している場合は問題ないが、ネットワーク環境が不安定であり、伝送レートの変動、ネットワークジッタ、またはパケット損失等によりパケット毎の伝送遅延にばらつきが生じた場合、エンコード時に伝送フォーマットに記載されたバッファリング時間にあわせてバッファリングおよびデコード再生を行うと、再生時刻に必要データが揃わずバッファ破たんを起こしてしまう恐れがあった。
【０００８】
本発明は、このような状況に鑑みて提案されたものであり、映像等のストリームデータを伝送し、同期再生する場合において、バッファリング時間を伝送フォーマット中で符号化時バッファ時間と伝送時バッファ時間とに分けて記載して伝送することにより、CODEC部と伝送部の独立性を保ち、ネットワーク状況を考慮した最少のバッファ時間（遅延）で同期再生することができるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一側面は、画像データを符号化し、符号化データを生成する符号化手段と、前記符号化データを、前記符号化データに付加されたタイムスタンプに同期して復号して再生する同期再生が、前記符号化手段による前記画像データの符号化による遅延によって破たんしないようにするために最低限必要なバッファ時間である符号化時バッファ時間を、前記符号化データに符号化ヘッダ情報として付加する符号化時バッファ時間付加手段と、前記同期再生が、前記画像データの符号化と前記符号化データの伝送との両方による遅延によって破たんしないようにするために最低限必要なバッファ時間である伝送時バッファ時間を、前記符号化データに、前記符号化ヘッダ情報と異なる伝送ヘッダ情報として付加する伝送時バッファ時間付加手段と、前記符号化時バッファ時間付加手段により前記符号化時バッファ時間を含む前記符号化ヘッダ情報が付加され、さらに、前記伝送時バッファ時間付加手段により前記伝送時バッファ時間を含む前記伝送ヘッダ情報が付加された前記符号化データを、ネットワークを介して、前記同期再生を行う他の装置に送信する送信手段とを備える送信装置である。
【００１０】
前記ネットワークの通信に関する状況の情報であり、伝送レート、ネットワークジッタ、パケット損失率、および伝送遅延を少なくとも含むネットワーク状況情報を収集するネットワーク状況情報収集手段と、前記ネットワーク状況情報収集手段により収集された前記ネットワーク状況情報を用いて、前記同期再生が、前記符号化データの伝送による遅延によって破たんしないようにするために最低限必要なバッファ時間であるネットワーク対応バッファ時間を算出するネットワーク対応バッファ時間算出手段と、前記ネットワーク対応バッファ時間算出手段により算出された前記ネットワーク対応バッファ時間、および、前記符号化時バッファ時間を用いて、前記伝送時バッファ時間を算出する伝送時バッファ時間算出手段とをさらに備えることができる。
【００１１】
前記伝送時バッファ時間算出手段は、前記符号化時バッファ時間と、前記ネットワーク対応バッファ時間とが互いに独立な場合、前記符号化時バッファ時間と前記ネットワーク対応バッファ時間との和を前記伝送時バッファ時間とすることができる。
【００１２】
前記伝送時バッファ時間算出手段は、前記ネットワーク対応バッファ時間が前記符号化時バッファ時間を含んだ値を持つ場合、前記符号化時バッファ時間若しくは前記ネットワーク対応バッファ時間のうちの大きい方を選択することができる。
【００１３】
前記ネットワーク対応バッファ時間算出手段は、前記同期再生が、前記ネットワークの前記ネットワークジッタによる遅延の増大によって破たんしないようにするために最低限必要なバッファ時間であるネットワークジッタ対応バッファ時間を前記ネットワーク対応バッファ時間とすることができる。
【００１４】
前記符号化時バッファ時間に、前記符号化手段による前記画像データの符号化の符号化レートと前記伝送レートとの比を反映させたレート比対応バッファ時間を算出するレート比対応バッファ時間算出手段をさらに備え、前記ネットワーク対応バッファ時間算出手段は、前記レート比対応バッファ時間算出手段により算出された前記レート比対応バッファ時間を前記ネットワーク対応バッファ時間とすることができる。
【００１５】
前記ネットワーク対応バッファ時間算出手段は、前記同期再生が、再送処理による遅延によって破たんしないようにするために最低限必要なバッファ時間である再送対応バッファ時間を前記ネットワーク対応バッファ時間とすることができる。
【００１６】
前記ネットワーク対応バッファ時間算出手段は、前記同期再生が前記ネットワークの前記ネットワークジッタによる遅延の増大によって破たんしないようにするために最低限必要なバッファ時間であるネットワークジッタ対応バッファ時間、前記符号化時バッファ時間に、前記符号化手段による前記画像データの符号化の符号化レートと前記伝送レートとの比を反映させたレート比対応バッファ時間、および、前記同期再生が再送処理による遅延によって破たんしないようにするために最低限必要なバッファ時間である再送対応バッファ時間の総和を前記ネットワーク対応バッファ時間とすることができる。
【００１７】
前記ネットワーク対応バッファ時間算出手段は、前記同期再生が前記ネットワークの前記ネットワークジッタによる遅延の増大によって破たんしないようにするために最低限必要なバッファ時間であるネットワークジッタ対応バッファ時間、若しくは、前記同期再生が再送処理による遅延によって破たんしないようにするために最低限必要なバッファ時間である再送対応バッファ時間のうちの大きい方と、前記符号化時バッファ時間に、前記符号化手段による前記画像データの符号化の符号化レートと前記伝送レートとの比を反映させたレート比対応バッファ時間との和を前記ネットワーク対応バッファ時間とすることができる。
【００１８】
前記ネットワーク対応バッファ時間算出手段は、前記同期再生が前記ネットワークの前記ネットワークジッタによる遅延の増大によって破たんしないようにするために最低限必要なバッファ時間であるネットワークジッタ対応バッファ時間、前記符号化時バッファ時間に、前記符号化手段による前記画像データの符号化の符号化レートと前記伝送レートとの比を反映させたレート比対応バッファ時間、および、前記同期再生が再送処理による遅延によって破たんしないようにするために最低限必要なバッファ時間である再送対応バッファ時間のうち、最も大きいものを前記ネットワーク対応バッファ時間とすることができる。
【００１９】
前記符号化時バッファ時間を算出する符号化時バッファ時間算出手段をさらに備え、前記符号化時バッファ時間付加手段は、前記符号化時バッファ時間算出手段により算出された前記符号化時バッファ時間を、前記符号化データに前記符号化ヘッダ情報として付加することができる。
【００２０】
前記符号化時バッファ時間算出手段は、前記画像データの符号化の符号化レートを、前記画像データの符号化に用いられるバッファサイズで除算した値を前記符号化時バッファ時間とすることができる。
【００２１】
本発明の一側面は、また、送信装置の符号化手段が、画像データを符号化し、符号化データを生成し、前記送信装置の符号化時バッファ時間付加手段が、前記符号化データを、前記符号化データに付加されたタイムスタンプに同期して復号して再生する同期再生が、前記画像データの符号化による遅延によって破たんしないようにするために最低限必要なバッファ時間である符号化時バッファ時間を、前記符号化データに符号化ヘッダ情報として付加し、前記送信装置の伝送時バッファ時間付加手段が、前記同期再生が、前記画像データの符号化と前記符号化データの伝送との両方による遅延によって破たんしないようにするために最低限必要なバッファ時間である伝送時バッファ時間を、前記符号化データに、前記符号化ヘッダ情報と異なる伝送ヘッダ情報として付加し、前記送信装置の送信手段が、前記符号化時バッファ時間を含む前記符号化ヘッダ情報が付加され、さらに、前記伝送時バッファ時間を含む前記伝送ヘッダ情報が付加された前記符号化データを、ネットワークを介して、前記同期再生を行う他の装置に送信する送信方法である。
【００２２】
本発明の他の側面は、他の装置において画像データが符号化されて生成され、ネットワークを介して伝送された符号化データを受信する受信手段と、前記受信手段により受信された前記符号化データから、前記符号化データに付加されたタイムスタンプに同期して復号して再生する同期再生が、前記画像データの符号化による遅延によって破たんしないようにするために最低限必要なバッファ時間である符号化時バッファ時間を抽出し、取得する符号化時バッファ時間取得手段と、前記受信手段により受信された前記符号化データから、前記符号化データの同期再生が、前記画像データの符号化と前記符号化データの伝送との両方による遅延によって破たんしないようにするために最低限必要なバッファ時間である伝送時バッファ時間を抽出し、取得する伝送時バッファ時間取得手段と、前記符号化時バッファ時間取得手段により取得された前記符号化時バッファ時間、および、前記伝送時バッファ時間取得手段により取得された前記伝送時バッファ時間を用いて、前記同期再生が破たんしないようにするために必要なバッファ時間の初期値である初期バッファ遅延を算出する初期バッファ遅延算出手段と、前記受信手段により受信された前記符号化データを格納する格納手段と、前記格納手段により格納されている前記符号化データの読み出しタイミングを制御することにより、前記同期再生を制御する同期制御手段と、前記同期制御手段による制御に従って前記格納手段より読みだされた前記符号化データを復号する復号手段とを備える受信装置である。
【００２３】
前記初期バッファ遅延算出手段は、前記符号化データに付加される前記伝送時バッファ時間が有効である場合、前記伝送時バッファ時間を前記初期バッファ遅延とし、前記伝送時バッファ時間が無効である場合、前記符号化データに付加される前記符号化時バッファ時間を前記初期バッファ遅延とすることができる。
【００２４】
本発明の他の側面は、また、受信装置の受信手段が、他の装置において画像データが符号化されて生成され、ネットワークを介して伝送された符号化データを受信し、前記受信装置の符号化時バッファ時間取得手段が、受信された前記符号化データから、前記符号化データに付加されたタイムスタンプに同期して復号して再生する同期再生が、前記画像データの符号化による遅延によって破たんしないようにするために最低限必要なバッファ時間である符号化時バッファ時間を抽出し、取得し、前記受信装置の前記伝送時バッファ時間取得手段が、受信された前記符号化データから、前記符号化データの同期再生が、前記画像データの符号化と前記符号化データの伝送との両方による遅延によって破たんしないようにするために最低限必要なバッファ時間である伝送時バッファ時間を抽出し、取得し、前記受信装置の前記初期バッファ遅延算出手段が、取得された前記符号化時バッファ時間、および、取得された前記伝送時バッファ時間を用いて、前記同期再生が破たんしないようにするために必要なバッファ時間の初期値である初期バッファ遅延を算出し、前記受信装置の格納手段が、受信された前記符号化データを格納し、前記受信装置の同期制御手段が、格納されている前記符号化データの読み出しタイミングを制御することにより、前記同期再生を制御し、前記受信装置の復号手段が、前記制御に従って、読みだされた前記符号化データを復号する受信方法である。
【００２５】
本発明の一側面においては、画像データが符号化され、符号化データが生成され、符号化データを、符号化データに付加されたタイムスタンプに同期して復号して再生する同期再生が、画像データの符号化による遅延によって破たんしないようにするために最低限必要なバッファ時間である符号化時バッファ時間が、符号化データに符号化ヘッダ情報として付加され、同期再生が、画像データの符号化と符号化データの伝送との両方による遅延によって破たんしないようにするために最低限必要なバッファ時間である伝送時バッファ時間が、符号化データに、符号化ヘッダ情報と異なる伝送ヘッダ情報として付加され、符号化時バッファ時間を含む符号化ヘッダ情報が付加され、さらに、伝送時バッファ時間を含む伝送ヘッダ情報が付加された符号化データが、ネットワークを介して、同期再生を行う他の装置に送信される。
【００２６】
本発明の他の側面においては、他の装置において画像データが符号化されて生成され、ネットワークを介して伝送された符号化データが受信され、受信された前記符号化データから、前記符号化データに付加されたタイムスタンプに同期して復号して再生する同期再生が、前記画像データの符号化による遅延によって破たんしないようにするために最低限必要なバッファ時間である符号化時バッファ時間が抽出されて取得され、受信された前記符号化データから、前記符号化データの同期再生が、前記画像データの符号化と前記符号化データの伝送との両方による遅延によって破たんしないようにするために最低限必要なバッファ時間である伝送時バッファ時間が抽出されて取得され、取得された前記符号化時バッファ時間、および、取得された前記伝送時バッファ時間が用いられて、前記同期再生が破たんしないようにするために必要なバッファ時間の初期値である初期バッファ遅延が算出され、受信された前記符号化データが格納され、格納されている前記符号化データの読み出しタイミングを制御することにより、前記同期再生が制御され、前記制御に従って、読みだされた前記符号化データが復号される。
【発明の効果】
【００２７】
本発明によれば、データを伝送することができる。特に、不要な遅延時間を増大させない低遅延データ伝送を、ネットワーク状況に依らず、より安定的に行うことができる。
【図面の簡単な説明】
【００２８】
【図１】本発明を適用した送受信システムの主な構成例を示すブロック図である。
【図２】符号化部の詳細な構成例を示すブロック図である。
【図３】サブバンドの例を示す図である。
【図４】ラインブロックを説明する図である。
【図５】５×３フィルタの例を示す図である。
【図６】リフティング演算例を説明する図である。
【図７】定常状態における係数データの出力順を説明する図である。
【図８】係数並び替えの様子を説明する図である。
【図９】符号化時バッファ時間を説明する図である。
【図１０】フォーマット修正部の詳細な構成例を示すブロック図である。
【図１１】伝送データの構成例を説明する図である。
【図１２】伝送時バッファ時間を説明する図である。
【図１３】フォーマット解析部の詳細な構成例を示すブロック図である。
【図１４】復号部の詳細な構成例を示すブロック図である。
【図１５】送信処理の流れの例を説明するフローチャートである。
【図１６】符号化処理の流れの例を説明するフローチャートである。
【図１７】フォーマット修正処理の流れの例を説明するフローチャートである。
【図１８】受信処理の流れの例を説明するフローチャートである。
【図１９】同期制御設定処理の流れの例を説明するフローチャートである。
【図２０】復号処理の流れの例を説明するフローチャートである。
【図２１】本発明を適用した送受信システムの他の構成例を示すブロック図である。
【図２２】伝送時バッファ時間の他の例を説明する図である。
【図２３】送信処理の流れの他の例を説明するフローチャートである。
【図２４】本発明を適用した送受信システムの、さらに他の例を説明するフローチャートである。
【図２５】本発明を適用したコンピュータの主な構成例を示すブロック図である。
【発明を実施するための形態】
【００２９】
以下、発明を実施するための形態（以下実施の形態とする）について説明する。なお、説明は以下の順序で行う。
１．第１の実施の形態（第１の送受信システム）
２．第２の実施の形態（第２の送受信システム）
３．第３の実施の形態（第３の送受信システム）
４．第４の実施の形態（パーソナルコンピュータ）
【００３０】
＜１．第１の実施の形態＞
［デバイスの構成］
最初に、本発明を適用した送信装置および受信装置を用いる送受信システムの構成について説明する。図１は、本発明を適用した送受信システムの構成例を示すブロック図である。
【００３１】
図１に示されるように、送受信システム１００は、画像データを符号化して伝送するシステムであり、送信装置１０１および受信装置１０２を有する。送信装置１０１および受信装置１０２は、ネットワーク１０３を介して互いに接続され、通信を行う。
【００３２】
送信装置１０１においてキャプチャされたビデオデータは、符号化され、インターネット等により代表されるネットワーク１０３を介して受信装置１０２に伝送され、同期再生される。
【００３３】
送受信システム１００においては、例えば、IETF（Internet Engineering Task Force） RFC（Request for Comments）3550記載のRTP(Real time Transport Protocol)/RTCP(Real time Transport Control Protocol)を用いてデータの送受信やネットワーク状況情報の収集が行われる。
【００３４】
図１に示されるように、送信装置１０１は、キャプチャ部１１１、符号化部１１２、および伝送部１１３を有する。
【００３５】
キャプチャ部１１１は、入力画像（ビデオIN）をキャプチャし、画像データを取得または生成する。キャプチャ部１１１は、取得（生成）した画像データを符号化部１１２に供給する。符号化部１１２は、その画像データを符号化し、符号化データを生成する。符号化部１１２は、生成した符号化データを平滑化し、伝送部１１３に供給する。
【００３６】
伝送部１１３は、符号化データを、ネットワーク１０３を介して受信装置１０２に伝送する。
【００３７】
伝送部１１３は、伝送平滑化部１２１、フォーマット修正部１２２、RTP送信部１２３、および、RTCP部１２４を有する。
【００３８】
伝送平滑化部１２１は、符号化データを一時的に保持して出力タイミングを調整することにより、符号化データのビットレートを、符号化データを受信装置１０２に伝送する際の伝送レートに合わせるように平滑化する。
【００３９】
伝送平滑化部１２１は、出力した符号化データをフォーマット修正部１２２に供給する。
【００４０】
フォーマット修正部１２２は、データ伝送に起因する遅延時間である伝送時バッファ時間を、RTCP部１２４から取得したネットワーク１０３の状況に基づいて決定し、その値を伝送フォーマット内の指定フィールドへセットする。
【００４１】
フォーマット修正部１２２は、このようにフォーマットを必要に応じて修正すると、フォーマット修正後の符号化データをRTP送信部１２３に供給する。
【００４２】
RTP送信部１２３は、RTPに従って、符号化データをパケット化し、そのRTPパケットを、受信装置１０２宛てでネットワーク１０３に送信する。RTP送信部１２３から送信されたRTPパケットは、ネットワーク１０３を介して受信装置１０２に伝送される。
【００４３】
RTCP部１２４は、ネットワーク１０３を介して、受信装置１０２のRTCP部１３６とRTCPに従って通信を行い、送信装置１０１と受信装置１０２との間のデータ伝送路におけるジッタ、伝送可能レート、およびパケット損失率等を含むネットワーク１０３等の状況に関する情報であるネットワーク状況情報を収集する。
【００４４】
例えば、ネットワークジッタは、パケットの送受信を複数回行うことにより、計測する。なお、ネットワークによっては、ジッタの最大値が保証される場合もある。そのようなネットワークを伝送路として使用する場合、そのジッタの最大値を利用するようにしてもよい。
【００４５】
RTCP部１２４は、収集した情報をフォーマット修正部１２２に供給する。フォーマット修正部１２２は、上述したようにRTCP部１２４から供給される情報に基づいて、伝送時バッファ時間を算出する。
【００４６】
図１に示されるように、受信装置１０２は、RTP受信部１３１、フォーマット解析部１３２、同期制御部１３３、バッファ１３４、復号部１３５、およびRTCP部１３６を有する。
【００４７】
RTP受信部１３１は、ネットワーク１０３を介して送信装置１０１から伝送されるRTPパケットを受信する。RTP受信部１３１は、受信したRTPパケットから符号化データを抽出し、それをフォーマット解析部１３２に供給する。
【００４８】
フォーマット解析部１３２は、符号化データに付加された符号化時バッファ時間や伝送時バッファ時間を抽出し、それらを同期制御部１３３に供給する。また、フォーマット解析部１３２は、処理済みの符号化データをバッファ１３４に供給し、蓄積させる。
【００４９】
同期制御部１３３は、バッファ１３４のデータ出力タイミングを制御する。同期制御部１３３は、各符号化データに含まれるタイムスタンプ値、符号化時バッファ時間、および伝送時バッファ時間から適切なバッファ時間を求め、その情報に基づいて、バッファ１３４が符号化データを出力するタイミングを制御する。
【００５０】
バッファ１３４は、フォーマット解析部１３２から供給される符号化データを格納する。バッファ１３４は、同期制御部１３３に制御され、所定のタイミングで格納してい符号化データを復号部１３５に供給する。
【００５１】
復号部１３５は、バッファ１３４から供給される符号化データを復号し、得られた復号画像データを、同期再生することができるように出力する（ビデオOUT）。
【００５２】
次に、各装置の詳細について説明する。まず、送信装置１０１について説明する。
【００５３】
［符号化部］
図２は、図１の符号化部１１２の詳細な構成例を示すブロック図である。
【００５４】
図２において、符号化部１１２は、画像ライン入力部１５１、ラインバッファ部１５２、ウェーブレット変換部１５３、係数ライン並び替え部１５４、エントロピ符号化部１５５、符号化内平滑化部１５６、およびフォーマット化部１５７を有する。
【００５５】
画像ライン入力部１５１は、入力される画像データを、ライン毎にラインバッファ部１５２に供給し、蓄積させる。ラインバッファ部１５２は、画像ライン入力部１５１から供給される画像データや、ウェーブレット変換部１５３から供給される係数データを保持し、所定のタイミングにおいてその画像データや係数データをウェーブレット変換部１５３に供給する。
【００５６】
ウェーブレット変換部１５３は、ラインバッファ部１５２から供給される画像データや係数データに対してウェーブレット変換を行い、次の階層の低域成分と高域成分の係数データを生成する。
【００５７】
ウェーブレット変換部１５３は、生成した係数データの、垂直方向および水平方向に低域な成分をラインバッファ部１５２に供給して保持させ、その他の成分を係数ライン並び替え部１５４に供給する。なお、ウェーブレット変換部１５３は、生成した係数データが最上位層である場合、垂直方向および水平方向に低域な成分も係数ライン並び替え部１５４に供給する。
【００５８】
また、ウェーブレット変換部１５３は、上述したようにリフティング演算を行う場合、計算途中のデータを保持し、次回の分析フィルタリングに利用する。ウェーブレット変換部１５３は、予め定められた所定の分割レベル数までウェーブレット変換を実行する。
【００５９】
係数ライン並び替え部１５４には、ウェーブレット変換部１５３から係数データ（係数ライン）が供給される。係数ライン並び替え部１５４は、その係数データ（係数ライン）の順序を、ウェーブレット逆変換処理の順序に並び替える。
【００６０】
係数ライン並び替え部１５４は、ウェーブレット変換部１５３から供給される係数ラインを内蔵する記憶部に保持し、さらに、その保持された係数ラインを読み出す。このとき、係数ライン並び替え部１５４は、保持された係数ラインをウェーブレット逆変換処理の順序で読み出すことにより、並び替えを行う。この並び替えの詳細については後述する。
【００６１】
係数ライン並び替え部１５４は、順序を並び替えた係数データをエントロピ符号化部１５５に供給する。
【００６２】
エントロピ符号化部１５５は、係数ライン並び替え部１５４から供給される係数データを、例えばハフマン符号化や算術符号化といった所定のエントロピ符号化方式で符号化する。エントロピ符号化部１５５は、生成した符号化データを符号化内平滑化部１５６に供給する。
【００６３】
符号化内平滑化部１５６は、供給された符号化データのビットレートを、一時的に保持することにより、所定の符号化レートに合わせるように平滑化する。符号化内平滑化部１５６は、蓄積している符号化データを所定のタイミングで読み出すことにより、平滑化した符号化データをフォーマット化部１５７に供給する。
【００６４】
なお、このとき、符号化内平滑化部１５６は、符号化部１１２の符号化処理により発生する遅延時間である符号化時バッファ時間を算出し、その情報をフォーマット化部１５７に供給する。
【００６５】
フォーマット化部１５７は、符号化内平滑化部１５６から供給される符号化データに、符号化内平滑化部１５６から供給される符号化時バッファ時間を含む、符号化に関する情報を、ヘッダ情報（符号化ヘッダ情報）として付加する。これにより、符号化データのフォーマットは、伝送用のフォーマットに変換される。
【００６６】
符号化データのフォーマットを変換するとフォーマット化部１５７は、その符号化データを伝送部１１３の伝送平滑化部１２１（図１）に供給する。
【００６７】
［サブバンド］
次に、ウェーブレット変換について説明する。ウェーブレット変換は、画像データを空間周波数の高い成分（高域成分）と低い成分（低域成分）とに分割する分析フィルタリングを、生成した低域成分に対して再帰的に繰り返すことにより、画像データを、階層的に構成される周波数成分毎の係数データに変換する処理である。なお、以下において、分割レベルは、高域成分の階層ほど下位とし、低域成分の階層ほど上位とする。
【００６８】
１つの階層（分割レベル）において、分析フィルタリングは、水平方向と垂直方向の両方について行われる。これにより、１つの階層の係数データ（画像データ）は、１階層分の分析フィルタリングにより４種類の成分に分割される。４種類の成分とは、すなわち、水平方向および垂直方向の両方について高域な成分（ＨＨ）、水平方向に高域で垂直方向に低域な成分（ＨＬ）、水平方向に低域で垂直方向に高域な成分（ＬＨ）、および、水平方向および垂直方向の両方について低域な成分（ＬＬ）である。
【００６９】
各成分の集合を、それぞれサブバンド（ＬＬ、ＬＨ、ＨＬ、およびＨＨ）と称する。
【００７０】
そして、次の階層の分析フィルタリングは、生成された４つのサブバンドのうち、水平方向および垂直方向の両方について低域な成分（ＬＬ）に対して行われる。
【００７１】
このように分析フィルタリングが再帰的に繰り返されることにより、空間周波数の低い帯域の係数データは、より小さな領域（低域成分）に追い込まれる。したがって、このようにウェーブレット変換された係数データを符号化するようにすることにより、効率的な符号化が可能となる。
【００７２】
図３は、分析フィルタリングを４回繰り返すことにより、分割レベル４までの１３個のサブバンド（１ＬＨ，１ＨＬ，１ＨＨ，２ＬＨ，２ＨＬ，２ＨＨ，３ＬＨ，３ＨＬ，３ＨＨ，４ＬＬ，４ＬＨ，４ＨＬ，４ＨＨ）に分割された係数データの構成を示している。
【００７３】
［ラインブロック］
次に、ラインブロックについて説明する。図４は、ラインブロックを説明する図である。ウェーブレット変換における分析フィルタリングは、処理対象となる２ラインの画像データまたは係数データから、１階層上の４つのサブバンドの係数データを１ラインずつ生成する。
【００７４】
例えば、分割レベル数が４の場合、図４の斜線部分で示されるように、最上位階層である分割レベル４のサブバンドの係数データが１ラインずつ生成されるのに、サブバンド３ＬＬは２ライン必要であり、サブバンド２ＬＬは４ライン必要であり、サブバンド１ＬＬは８ライン必要である。つまり、１６ラインのベースバンドの画像データが必要になる。
【００７５】
この最低域成分のサブバンドの１ライン分の係数データを生成するために必要なライン数の画像データを、ラインブロック（またはプレシンクト）と称する。
【００７６】
例えば、分割レベル数がＮの場合、最低域成分のサブバンドの１ライン分の係数データを生成するためには、ベースバンドの画像データが２のＮ乗ライン必要になる。これがラインブロックのライン数である。
【００７７】
なお、ラインブロックは、その１ラインブロックの画像データをウェーブレット変換して得られる各サブバンドの係数データの集合のことも示す。
【００７８】
また、ラインとは、フレーム画像（ピクチャ）の１列分の水平方向の画素列や、サブバンドの１列分の水平方向の係数列のことを示す。この１ライン分の係数データを係数ラインとも称する。以下において、より詳細に区別して説明する必要がある場合、適宜表現を変える。
【００７９】
なお、１係数ライン（１ライン分の係数データ）が符号化された１ライン分の符号化データを符号ラインとも称する。
【００８０】
ウェーブレット変換部１５３によるウェーブレット変換処理においては、２ラインずつ画像データ（若しくは係数データ）に対して分析フィルタリングを行うが、このとき、できるだけ低遅延に処理を行うような順序で、その２ラインを選択する。
【００８１】
より具体的には、より上位の（より低域の）サブバンドの係数データをできるだけ優先的に生成するような順序で各画像データ（係数データ）を２ラインずつ選択し、それらを分析フィルタリングする。
【００８２】
［５×３フィルタ］
次に、分析フィルタリングについて説明する。
【００８３】
ウェーブレット変換処理は、通常、低域フィルタと高域フィルタとから構成されるフィルタバンクを用いて行われる。
【００８４】
このウェーブレット変換の具体的な例として、５×３フィルタを用いる方法について説明する。
【００８５】
５×３フィルタのインパルス応答（Ｚ変換表現）は、次の式（１）および式（２）に示すように、低域フィルタＨ０（ｚ）と、高域フィルタＨ１（ｚ）とから構成される。式（１）および式（２）から、低域フィルタＨ０（ｚ）は、５タップで、高域フィルタＨ１（ｚ）は、３タップであることが分かる。
【００８６】
Ｈ０（ｚ）＝（−１＋２ｚ−１＋６ｚ−２＋２ｚ−３−ｚ−４）/８    ・・・（１）
Ｈ１（ｚ）＝（−１＋２ｚ−１−ｚ−２）/２            ・・・（２）
【００８７】
これら式（１）および式（２）によれば、低域成分および高域成分の係数を、直接的に算出することができる。ここで、リフティング(Lifting)技術を用いることで、フィルタ処理の計算を減らすことができる。
【００８８】
図５は、５×３フィルタをリフティング表現した図である。図中、最上部の一列が入力信号列である。データ処理は画面上から下方向に流れ、以下の式（３）および式（４）により、高域成分の係数（高域係数）と、低域成分の係数（低域係数）とが出力される。
【００８９】
ｄｉ１＝ｄｉ０−１／２（ｓｉ０＋ｓｉ＋１０）  ・・・（３）
ｓｉ１＝ｓｉ０＋１／４（ｄｉ−１１＋ｄｉ１）  ・・・（４）
【００９０】
［リフティング演算］
次に、このリフティング演算について説明する。図６は、５×３分析フィルタを用いて、縦方向のラインに対して行われるフィルタリングをリフティング表現した図である。
【００９１】
横方向は、演算過程とそれによって生成される低域・高域係数を図示したものである。図５の場合と照らし合わせて見れば水平が垂直に変わっただけであり、演算の方法は全く同様であることがわかる。
【００９２】
画像の上端においては、矢印１６１に示されるように、Line-１から最上位ラインが点線の様に対称拡張され、１ラインが補填される。枠１６２で示されるように、これとLine-0、Line-１の合計３ラインを用いてリフティング演算が行われ、Step-1の演算で係数ａが生成される。これは高域係数（Ｈ０）である。
【００９３】
Line-1,Line-2,Line-3が入力されると、この３ラインを用いて、式（３）により次の高域係数ａが算出される。これは高域係数（Ｈ１）である。そして、上記の１番目の高域係数ａ（Ｈ０）と２番目高域係数ａ（Ｈ１）、及びLine-1の係数の合計３つの係数を用いて、式（４）に従い計算すると係数ｂが生成される。これは低域係数（Ｌ１）である。つまり、枠１６３で示されるように、Line-1,Line-2,Line-3の３ラインと、高域係数（Ｈ０）とを用いて、低域係数（Ｌ１）および高域係数（Ｈ１）が生成される。
【００９４】
その後、２ラインが入力される毎に、上記のリフティング演算が後続のラインに対しても同様に繰り返され、低域係数と高域係数とが出力される。そして、枠１６４に示されるように、低域係数（Ｌ（Ｎ−１））および高域係数（Ｈ（Ｎ−１））が生成されると、高域係数（Ｈ（Ｎ−１））が矢印１６５のように対称拡張され、枠１６６のように演算が行われ、低域成分（Ｌ（Ｎ））が生成される。
【００９５】
なお、図６は垂直方向のラインに対してフィルタリングを行った例であるが、水平方向のフィルタリングの場合でも全く同様に考えることができることは自明である。
【００９６】
以上のリフティング演算は、各階層について行われる。ただし、分析フィルタリングは、上述したように、より低域な成分をより優先的に生成するような順序で行われる。図６を参照して説明した順序は、分析フィルタリングされるデータ間の依存関係を示すものであり、実際の処理実行順とは異なる。
【００９７】
［１ラインブロックの処理］
次に、この分析フィルタリングの実行手順について説明する。
【００９８】
処理対象の画像データ（係数データ）は、ピクチャ（サブバンド）の上のラインから順に処理される。分析フィルタリングのリフティング演算は、処理対象の画像データ（係数データ）が２ライン準備される毎に（つまり、実行可能となり次第）実行される。ただし、より低域のサブバンドを優先的に処理対象とする。
【００９９】
以下に説明するように、分析フィルタリングは、ラインブロック毎に同じ手順で繰り返し実行される。そこで、２ライン準備される毎に分析フィルタリングが実行されるラインブロック（定常状態のラインブロック）における分析フィルタリングの手順を以下に説明する。
【０１００】
なお、初期状態となるピクチャやサブバンドの上端を含むラインブロック（初期状態のラインブロック）においては、分析フィルタリングに必要なライン数が他のラインブロック（定常状態のラインブロック）と異なる。しかしながら、この初期状態のラインブロックの場合も、分析フィルタリングの処理手順は、基本的には他のラインブロックと同様のであるので、その説明は省略する。
【０１０１】
図７は、定常状態における係数データの出力順を説明する図である。図７においては、ウェーブレット変換された係数データが、図中、上から下に向かう方向に時系列順に並べられている。
【０１０２】
定常状態のラインブロックにおいて、まず、ベースバンドの画像データの、そのラインブロック内において上から２ラインが分析フィルタリングされ、分割レベル１のラインＬ（上からＬ番目の係数ライン）が生成される。１ライン分の係数データでは分析フィルタリングできないので、その次のタイミングにおいて、ベースバンドの画像データの次の２ラインが分析フィルタリングされ、分割レベル１のライン（Ｌ＋１）（上から（Ｌ＋１）番目の係数ライン）が生成される。
【０１０３】
この時点で分割レベル１の係数データが２ライン分用意されたので、次に、その分割レベル１の係数データの２ラインに対して分割レベル１の分析フィルタリングが行われ、分割レベル２のラインＭ（上からＭ番目の係数ライン）が生成される。しかしながら、１ライン分なので分割レベル２の分析フィルタリングはまだ実行できない。また、このとき、分割レベル１の係数データが用意されていないので、分割レベル１の分析フィルタリングも実行できない。
【０１０４】
そこで、ベースバンドの画像データの次の２ラインが分析フィルタリングされ、分割レベル１のライン（Ｌ＋２）（上から（Ｌ＋２）番目の係数ライン）が生成される。１ライン分の係数データでは分析フィルタリングできないので、続いて、ベースバンドの画像データの次の２ラインが分析フィルタリングされ、分割レベル１のライン（Ｌ＋３）（上から（Ｌ＋３）番目の係数ライン）が生成される。
【０１０５】
分割レベル１の係数データが２ライン分用意されたので、次に、その分割レベル１の係数データの２ラインに対して分割レベル１の分析フィルタリングが行われ、分割レベル２のライン（Ｍ＋１）（上から（Ｍ＋１）番目の係数ライン）が生成される。
【０１０６】
すると、分割レベル２の係数データが２ライン分用意されたので、次に、その分割レベル２の係数データの２ラインに対して分割レベル２の分析フィルタリングが行われ、分割レベル３のラインＮ（上からＮ番目の係数ライン）が生成される。
【０１０７】
以下、同様にして、分割レベル１のライン（Ｌ＋４）（上から（Ｌ＋４）番目の係数ライン）およびライン（Ｌ＋５）（上から（Ｌ＋５）番目の係数ライン）、分割レベル２のライン（Ｍ＋２）（上から（Ｍ＋２）番目の係数ライン）、分割レベル１のライン（Ｌ＋６）（上から（Ｌ＋６）番目の係数ライン）およびライン（Ｌ＋７）（上から（Ｌ＋７）番目の係数ライン）、分割レベル２のライン（Ｍ＋３）（上から（Ｍ＋３）番目の係数ライン）、並びに、分割レベル３のライン（Ｎ＋１）（上から（Ｎ＋１）番目の係数ライン）が、順次、生成される。
【０１０８】
すると、分割レベル３の係数データが２ライン分用意されたので、次に、その分割レベル３の係数データの２ラインに対して分割レベル３の分析フィルタリングが行われ、分割レベル４のラインＰ（上からＰ番目の係数ライン）が生成される。
【０１０９】
以上のように１ラインブロック分の分析フィルタリングが行われる。つまり、ラインブロック毎に、以上のような手順が繰り返される。
【０１１０】
［係数並び替え］
次に、係数ライン並び替え部１５４による係数データの並び替えについて図８を参照して説明する。
【０１１１】
図８において、各係数ラインは、その処理順に並べられている。図中上から下に向かう向きに時系列が示されている。つまり、図８に示される各係数ラインは、図中上から順に処理される。
【０１１２】
係数データは、ウェーブレット変換部１５３から図８の左側に示されるような順序（ウェーブレット変換出力順）で出力される。
【０１１３】
係数ライン並び替え部１５４は、その係数データの並びを図８の右側に示されるように、低域成分から高域成分に向かう順に並び替える。
【０１１４】
より具体的には、係数ライン並び替え部１５４は、分割レベル４のラインＰの係数ラインを読み出し、分割レベル３のラインＮの係数ラインを読み出し、分割レベル２のラインＭの係数ラインを読み出し、分割レベル１のラインＬおよびライン（Ｌ＋１）の係数ラインを読み出し、読み出した各係数ラインを、その読み出し順にエントロピ符号化部１５５に供給する。
【０１１５】
また、係数ライン並び替え部１５４は、次に、分割レベル２のライン（Ｍ＋１）の係数ラインを読み出し、分割レベル１のライン（Ｌ＋２）およびライン（Ｌ＋３）の係数ラインを読み出し、読み出した各係数ラインを、その読み出し順にエントロピ符号化部１５５に供給する。
【０１１６】
さらに、係数ライン並び替え部１５４は、分割レベル３のライン（Ｎ＋１）の係数ラインを読み出し、分割レベル２のライン（Ｍ＋２）の係数ラインを読み出し、分割レベル１のライン（Ｌ＋４）およびライン（Ｌ＋５）の係数ラインを読み出し、読み出した各係数ラインを、その読み出し順にエントロピ符号化部１５５に供給する。
【０１１７】
また、係数ライン並び替え部１５４は、次に、分割レベル２のライン（Ｍ＋３）の係数ラインを読み出し、分割レベル１のライン（Ｌ＋６）およびライン（Ｌ＋７）の係数ラインを読み出し、読み出した各係数ラインを、その読み出し順にエントロピ符号化部１５５に供給する。
【０１１８】
エントロピ符号化部１５５は、各係数ラインを、供給された順に処理する。つまり、各係数ラインは、図８の右側に示されるように、ウェーブレット逆変換処理される順に、受信装置１０２に伝送される。
【０１１９】
受信装置１０２の復号部１３５は、後述するように、この順に各係数ラインを合成する。このようにすることにより、受信装置の復号部１３５は、不要な待機時間を増大させずに低遅延に、受信した符号化データを復号することができる。
【０１２０】
［符号化時バッファ時間］
送信装置１０１でのキャプチャ時のキャプチャ単位は、例えば、ビデオフレーム単位もしくはビデオフレームを複数に分割した単位等、キャプチャ時刻間隔と同一の間隔で、受信装置１０２にて再生される、所謂同期再生が想定されている。
【０１２１】
しかしながら、符号化処理において、一般にキャプチャ単位での符号化データサイズは不均一であり、これを一定の伝送レートに平滑化し伝送した場合、データサイズの不均一性のため、キャプチャ単位毎に平滑化処理により生じる遅延は異なる。
【０１２２】
このため，受信装置１０２は、ストリーム再生開始時に、最大遅延を初期バッファ遅延とし、その初期バッファ遅延に合わせてバッファリングを行ってから再生を開始する。このようにすることにより、受信装置１０２は、その後のデータも、バッファ１３４を枯渇させることなく、最初のデータ再生時刻から同期して再生を行うことができる（破綻することなく同期再生を行うことができる）。
【０１２３】
そこで、まず、符号化時バッファ時間について考える。図９は、符号化時バッファ時間を説明する図である。図９において、矢印に示されるように時系列は図中左から右に進む。
【０１２４】
エントロピ符号化部１５５からの符号生成出力（CODEC符号生成）は、図９の一番上の段に示されるように、キャプチャ時刻に同期したタイムスタンプが付加され出力される。キャプチャ単位毎の出力データサイズは不均一であり、RTPパケット化した場合のパケット数も不均一であるので、図９の上から２段目に示されるように、符号化内平滑化部１５６により平滑化処理が行われる（CODEC内平滑化出力）。
【０１２５】
受信装置１０２は、同期再生を破綻させないようにするためには、少なくとも、この符号化処理により生じる遅延時間に対応することができるように、符号化データのバッファリングを行う必要がある。
【０１２６】
つまり、受信装置１０２は、符号化部１１２による符号化処理により生じる遅延時間である符号化時バッファ時間を考慮して、同期再生に必要な初期バッファ遅延を決定する。
【０１２７】
エントロピ符号化部１５５は、例えば、ITU-T Y.1221記載のトークンバケットビヘビアにおける、バケツサイズをエンコーダ想定バッファサイズＢ(byte)とし、バケットレートＲ(bps)を符号化レートとして、バケットをあふれないように、符号化レートを制御する。また、符号化内平滑化部１５６は、当該トークンバケットビヘビアと同様の動作を行う。
【０１２８】
この場合、符号化時バッファ時間Bt_codec(sec)は、例えば、以下の式（５）のように求める事ができる。
【０１２９】
Bt_codec＝Ｂ×８／Ｒ  ・・・（５）
【０１３０】
つまり、符号化時バッファ時間は、バッファサイズを符号化レートで除算することにより求めることができる。
【０１３１】
［フォーマット修正部］
次に、図１のフォーマット修正部１２２について説明する。図１０は、フォーマット修正部１２２が有する機能を示す機能ブロック図である。
【０１３２】
図１０に示されるように、フォーマット修正部１２２は、機能ブロックとして、符号化時バッファ時間取得部２０１、ネットワーク状況情報取得部２０２、伝送時バッファ時間算出部２０３、および伝送時バッファ時間付加部２０４を有する。
【０１３３】
符号化時バッファ時間取得部２０１は、符号化データに付加されている符号化時バッファ時間を取得する。ネットワーク状況情報取得部２０２は、RTCP部１２４が収集したネットワーク状況情報を取得する。
【０１３４】
伝送時バッファ時間算出部２０３は、ネットワーク状況情報取得部２０２により取得されたネットワーク状況情報から伝送時バッファ時間を算出する。伝送時バッファ時間付加部２０４は、伝送時バッファ時間算出部２０３により算出された伝送時バッファ時間を含む情報を、符号化データのヘッダの指定フィールドへセットする。
【０１３５】
［伝送フォーマット］
図１１に伝送フォーマットの構成例を示す。図１１Ａに示されるように、送信装置１０１から受信装置１０２に伝送される符号化データは、本来のコードストリーム２１３に、符号化情報ヘッダ２１１と、伝送情報ヘッダ２１２とが付加されている。
【０１３６】
符号化情報ヘッダ２１１は、図１１Ｂに示されるように、符号化時バッファ時間２２１を含むヘッダ情報であり、符号化部１１２による符号化処理に関する情報が記述されている。
【０１３７】
この符号化情報ヘッダ２１１は、符号化部１１２のフォーマット化部１５７により生成され、コードストリーム２１３に付加される。
【０１３８】
伝送情報ヘッダ２１２は、図１１Ｃに示されるように、伝送時バッファ時間２２２を含むヘッダ情報であり、ネットワーク１０３等の伝送路に関するネットワークの状況に関する情報が記述されている。
【０１３９】
この伝送情報ヘッダ２１２は、フォーマット修正部１２２の伝送時バッファ時間付加部２０４により生成され、コードストリーム２１３に付加される。
【０１４０】
符号化情報ヘッダ２１１の符号化時バッファ時間フィールドには、画像データが符号化処理され、その符号化データが符号化レートに平滑化されて出力されることによる、受信装置１０２において必要と想定されるバッファ時間が記述される。
【０１４１】
また、伝送情報ヘッダ２１２の伝送時バッファ時間フィールドには、伝送レート（エンコードレートと異なる可能性あり）、ネットワークジッタ、およびパケット損失に対する再送処理遅延等による、受信装置１０２において必要と想定されるバッファ時間が記述される。
【０１４２】
図１１に示されるように、これらの情報は、互いに異なるヘッダ情報に分けて記録される（符号化時バッファ時間と伝送時バッファ時間とが、互いに異なるヘッダ情報としてコードストリーム２１３に付加される）。
【０１４３】
このようにすることにより、例えば、伝送される符号化データが、中継装置などにおいて一旦記憶され、その後、さらに、他の装置へ送信されるような場合（このようなプロセスが繰り返される場合）であっても、最後に符号化データを受信し、再生を行う受信装置１０２は、各遅延時間に応じた適切なバッファ時間を設定することができる。
【０１４４】
［伝送時バッファ時間］
送信装置１０１における伝送時バッファ時間Bt_trans(sec)は、伝送部１１３により決定される。伝送時バッファ時間は、符号化処理や伝送処理を通して行った場合に同期再生に必要な初期バッファ遅延を決定するものである。伝送時バッファ時間は、上述した符号化時バッファ時間に対して、ネットワーク１０３等の伝送路の状況に対応して同期再生を行うために必要なバッファ時間、所謂ネットワーク対応バッファ時間Bt_net(sec)を考慮したものとなる。
【０１４５】
例えば、図１２の上から３段目に示されるように、RTP送信部１２３が、所定の一定の送信レート（伝送レートの目標値）で符号化データのパケットを送信したとしても、ネットワーク１０３等の伝送路の状況によって実際の伝送レートは変化する。
【０１４６】
したがって、受信装置１０２がパケットを受信するときの符号化データの受信レートは、図１２の上から４段目に示されるように、ネットワークの状況によって変化し、不安定なものとなる。
【０１４７】
そこで、初期バッファ遅延は、符号化時バッファ時間だけでなく、このようなネットワーク状況の変化による伝送時バッファ時間も考慮して設定する必要がある。
【０１４８】
符号化時バッファ時間Bt_codecと、ネットワーク対応バッファ時間Bt_netとが互いに独立な場合、伝送時バッファ時間Bt_transは、次の式（６）のように求めることができる。
【０１４９】
Bt_trans＝Bt_codec＋Bt_net  ・・・（６）
【０１５０】
ネットワーク対応バッファ時間Bt_netが符号化時バッファ時間Bt_codecを含んだ値を持つ場合、伝送時バッファ時間Bt_transは、以下の式（７）により求めることができる。
【０１５１】
Bt_trans＝max（Bt_codec，Bt_net）  ・・・（７）
【０１５２】
ネットワーク対応バッファ時間Bt_net(sec)は、例えば、ネットワークジッタに対応することを考えた場合、ネットワークジッタ対応バッファ時間Bt_jitter(sec)を用いて、以下の式（８）のように求める事ができる。
【０１５３】
Bt_net＝Bt_jitter  ・・・（８）
【０１５４】
ネットワークジッタ対応バッファ時間Bt_jitterは、パケットに付加されたタイムスタンプ値と、そのパケットの到着時刻の一定時間内に届いたパケットの分散値により計算することができる。
【０１５５】
この分散値の一定時間の最大値や移動平均値をネットワークジッタ対応バッファ時間Bt_jitterとするようにしてもよい。ネットワークジッタは、例えば、RTCP Receiver Report パケットに含まれるジッタ値を用いるようにすることができる。この場合、ネットワークジッタ対応バッファ時間Bt_jitterには、符号化時バッファ時間Bt_codecが含まれるので、伝送時バッファ時間Bt_transは、上述した式（７）に従って計算される。
【０１５６】
このようにして求められた符号化時バッファ時間Bt_codecと伝送時バッファ時間Bt_transとは、例えば上述したように、伝送フォーマットにおけるストリームの先頭のストリーム情報として付加され伝送される。
【０１５７】
［同期制御部］
次に、受信装置１０２について説明する。受信装置１０２に受信された符号化データは、フォーマット解析部１３２により解析され、符号化情報ヘッダ２１１から符号化時バッファ時間２２１が抽出されたり、伝送情報ヘッダ２１２から伝送時バッファ時間２２２が抽出されたりする。それらの情報は、同期制御部１３３に供給される。
【０１５８】
図１３は、同期制御部１３３が有する機能を示す機能ブロック図である。
【０１５９】
図１３に示されるように、同期制御部１３３は、機能ブロックとして、符号化時バッファ時間取得部３０１、伝送時バッファ時間取得部３０２、初期バッファ遅延算出部３０３、再生時刻設定部３０４、および、同期処理部３０５を有する。
【０１６０】
符号化時バッファ時間取得部３０１は、フォーマット解析部１３２において抽出される符号化時バッファ時間を取得する。伝送時バッファ時間取得部３０２は、フォーマット解析部１３２において抽出される伝送時バッファ時間を取得する。
【０１６１】
初期バッファ遅延算出部３０３は、符号化時バッファ時間取得部３０１により取得された符号化時バッファ時間、および、伝送時バッファ時間取得部３０２により取得された伝送時バッファ時間に基づいて、同期再生に必要な初期バッファ遅延を算出する。
【０１６２】
再生時刻設定部３０４は、初期バッファ遅延算出部３０３により算出された初期バッファ遅延に基づいて、符号化データを復号し、得られた復号画像を再生する処理の開始時刻である再生時刻の設定を行う。
【０１６３】
同期処理部３０５は、バッファ１３４からの符号化データの読み出しタイミングを制御し、再生時刻設定部３０４により設定された再生時刻を基準とする同期再生を行う事ができるように、同期制御を行う。
【０１６４】
受信装置１０２では、送信装置１０１から伝送された符号化データ中の伝送フォーマット中に記載された符号化時バッファ時間Bt_codec、および、伝送時バッファ時間Bt_transを参照し、同期再生に必要な初期バッファ遅延Bt_initを決定する。
【０１６５】
初期バッファ遅延Bt_initは、例えば以下の式（９）および式（１０）のように求めることができる。すなわち、初期バッファ遅延算出部３０３は、伝送時バッファ時間Bt_transに無効値が設定されている場合、式（９）に示されるように、符号化時バッファ時間Bt_codec値を初期バッファ遅延Bt_initとして設定し、伝送時バッファ時間Bt_transに有効値が設定されている場合、式（１０）に示されるように、伝送時バッファ時間Bt_trans値を初期バッファ遅延Bt_initとして設定する。
【０１６６】
Bt_init＝Bt_codec（Bt_transが無効値の場合）  ・・・（９）
Bt_init＝Bt_trans（Bt_transが有効値の場合）  ・・・（１０）
【０１６７】
再生時刻設定部３０４は、例えば、ストリームの最初のパケットをタイミング規定パケットとし、その到着時刻から、初期バッファ遅延Bt_init時間遅れた時刻を最初のパケットに付加されたタイムスタンプ値に対する再生時刻として設定する。同期処理部３０５は、以降のパケットに関して、その再生時刻を基準とし、付加されたタイムスタンプに同期した時刻に再生を行うように制御する。
【０１６８】
以上のように同期再生を制御することにより、送受信システム１００（送信装置１０１および受信装置１０２）は、ネットワーク状況に応じた最低限の遅延で同期破たんをきたすことなく、低遅延伝送を行うことができる。
【０１６９】
［復号部］
次に、復号部１３５について説明する。図１４は、復号部１３５の構成例を示すブロック図である。
【０１７０】
図１４に示されるように、復号部１３５は、符号化部１１２に対応する処理部であり、符号化部１１２の符号化処理に対応する方法で、符号化部１１２により生成された符号化データを復号する。
【０１７１】
図１４に示されるように、復号部１３５は、エントロピ復号部３５１、係数バッファ部３５２、およびウェーブレット逆変換部３５３を有する。
【０１７２】
エントロピ復号部３５１は、同期制御部１３３により制御されてバッファ１３４から読み出された符号化データを、エントロピ符号化部１５５による符号化方法に対応する復号方法で復号し、係数データを得る。その係数データは、係数バッファ部３５２に供給されて格納される。
【０１７３】
ウェーブレット逆変換部３５３は、係数バッファ部３５２に格納された係数データを取得し、その係数データを用いて合成フィルタによる合成フィルタ処理を行い、合成フィルタ処理の結果を再び係数バッファ部３５２に供給して格納させる。
【０１７４】
ウェーブレット逆変換部３５３は、この処理を再帰的に繰り返し、復号された画像データ（出力画像データ）を得ると、それを外部に出力する。
【０１７５】
このように、復号部１３５は、低遅延に符号化データを復号することができる。
【０１７６】
［処理の流れ］
次に、以上において説明した各処理の流れについて説明する。
【０１７７】
最初に、送信装置１０１により実行される送信処理の流れの例について、図１５のフローチャートを参照して説明する。
【０１７８】
送信処理が開始されると、送信装置１０１のRTCP部１２４は、ステップＳ１０１において、ネットワーク１０３を介して、受信装置１０２のRTCP部１３６とRTCP通信を行い、ネットワーク状況情報を収集する。
【０１７９】
ステップＳ１０２において、キャプチャ部１１１は、入力画像をキャプチャし、画像データを取得する。
【０１８０】
ステップＳ１０３において、符号化部１１２は、ステップＳ１０２において取得された画像データを符号化する。この符号化処理の詳細については後述する。
【０１８１】
ステップＳ１０４において、伝送部１１３の伝送平滑化部１２１は、伝送レートに合わせて符号化データのビットレートを平滑化する。
【０１８２】
ステップＳ１０５において、フォーマット修正部１２２は、処理対象の符号化データが、コードストリームの先頭のヘッダ部であるか否かを判定する。コードストリームの先頭であると判定された場合、ステップＳ１０６に進む。
【０１８３】
ステップＳ１０６において、フォーマット修正部１２２は、符号化データに伝送情報ヘッダを付加し、そのフォーマットを修正する。このフォーマット修正処理の詳細については、後述する。ステップＳ１０６の処理が終了すると、ステップＳ１０７に進む。また、ステップＳ１０５において、コードストリームの先頭で無いと判定された場合、ステップＳ１０７に進む。
【０１８４】
ステップＳ１０７において、RTP送信部１２３は、符号化データをRTPパケット化し、そのRTPパケットを、受信装置１０２を送信先としてネットワーク１０３に送信する。
【０１８５】
ステップＳ１０８において、送信装置１０１は、送信処理を終了するか否かを判定する。例えば入力画像が全て処理されておらず、送信処理を終了しないと判定された場合、ステップＳ１０２に戻り、それ以降の処理を繰り返す。
【０１８６】
また、ステップＳ１０８において、送信処理を終了すると判定された場合、送信処理が終了される。
【０１８７】
次に、図１６のフローチャートを参照して、図１５のステップＳ１０３において実行される符号化処理の流れの例を説明する。
【０１８８】
符号化処理が開始されると、ステップＳ１２１において、画像ライン入力部１５１がライン入力しながら、ウェーブレット変換部１５３は、ラインバッファ部１５２を利用して、ウェーブレット変換を行う。
【０１８９】
ステップＳ１２２において、ウェーブレット変換部１５３は、１ラインブロック分の変換処理を行ったか否かを判定する。行っていないと判定された場合、ステップＳ１２１に戻り、それ以降の処理を繰り返す。
【０１９０】
また、ステップＳ１２２において、１ラインブロック分の変換処理を行ったと判定された場合、ステップＳ１２３に進む。
【０１９１】
ステップＳ１２３において、係数ライン並び替え部１５４は、ウェーブレット変換されて得られた係数データの順序を、ウェーブレット変換処理順からウェーブレット逆変換処理順に並び替える。
【０１９２】
ステップＳ１２４において、エントロピ符号化部１５５は、エントロピ符号化を行う。ステップＳ１２５において、符号化内平滑化部１５６は、符号化レートに合わせて平滑化を行う。ステップＳ１２６において、符号化内平滑化部１５６は、上述したように符号化時バッファ時間を算出する。
【０１９３】
ステップＳ１２７において、フォーマット化部１５７は、符号化時バッファ時間を符号化データに付加する。
【０１９４】
ステップＳ１２７の処理が終了すると、符号化処理が終了し、図１５のステップＳ１０３に戻り、ステップＳ１０４以降の処理を繰り返す。
【０１９５】
次に、図１７のフローチャートを参照して、図１５のステップＳ１０６において実行されるフォーマット修正処理の流れの例を説明する。
【０１９６】
フォーマット修正処理が開始されると、フォーマット修正部１２２の符号化時バッファ時間取得部２０１は、ステップＳ１４１において、符号化データに付加されている符号化時バッファ時間を参照し、取得する。
【０１９７】
ステップＳ１４２において、ネットワーク状況情報取得部２０２は、RTCP部１２４により収集されたネットワーク状況情報を取得する。
【０１９８】
ステップＳ１４３において、伝送時バッファ時間算出部２０３は、ステップＳ１４１において取得された符号化時バッファ時間や、ステップＳ１４２において取得されたネットワーク状況情報に基づいて、伝送時バッファ時間を算出する。
【０１９９】
ステップＳ１４４において、伝送時バッファ時間付加部２０４は、ステップＳ１４３において算出された伝送時バッファ時間を符号化データに付加する。
【０２００】
ステップＳ１４４の処理が終了すると、フォーマット修正処理が終了し、図１５のステップＳ１０６に戻り、ステップＳ１０７以降の処理を行う。
【０２０１】
以上のように各処理を実行することにより、送信装置１０１は、符号化時バッファ時間と伝送時バッファ時間を、それぞれ生成し、互いに異なるヘッダ情報に分けて、符号化データに付加し、受信装置１０２に提供することができる。
【０２０２】
このようにすることにより、送信装置１０１は、不要な遅延時間を増大させない低遅延データ伝送を、ネットワーク状況に依らず、より安定的に行うことができる。
【０２０３】
次に、図１８のフローチャートを参照して、受信装置１０２が実行する受信処理の流れの例を説明する。
【０２０４】
受信処理が開始されると、RTCP部１３６は、ステップＳ２０１において、送信装置１０１のRTCP部１２４と通信を行い、RTCP部１２４によるネットワーク状況情報の収集に協力する。また、必要に応じてRTCP部１３６がネットワーク状況情報の収集を行ってもよい。
【０２０５】
ステップＳ２０２において、RTP受信部１３１は、送信装置１０１から伝送されるRTPパケットを受信する。
【０２０６】
ステップＳ２０３において、フォーマット解析部１３２は、RTPパケットから抽出された符号化データにヘッダが存在するか否かを判定する。存在すると判定された場合、ステップＳ２０４に進む。
【０２０７】
ステップＳ２０４において、フォーマット解析部１３２は、符号化時バッファ時間および伝送時バッファ時間を符号化データから抽出する。ステップＳ２０５において、同期制御部１３３は、同期制御設定処理を行う。同期制御設定処理の詳細については後述する。
【０２０８】
ステップＳ２０５の処理が終了するとステップＳ２０６に進む。また、ステップＳ２０３においてヘッダが存在しないと判定された場合、ステップＳ２０６に進む。
【０２０９】
ステップＳ２０６において、バッファ１３４は、符号化データを保持する。
【０２１０】
ステップＳ２０７において、同期制御部１３３は、同期制御タイミングになったか否かを判定する。同期制御タイミングになっていないと判定された場合、ステップＳ２０２に戻り、それ以降の処理を繰り返す。
【０２１１】
また、ステップＳ２０７において、同期制御タイミングになったと判定された場合、ステップＳ２０８に進む。
【０２１２】
ステップＳ２０８において、同期制御部１３３は、バッファ１３４を制御し、同期制御タイミングに合わせて符号化データを読み出し、復号部１３５に供給させる。
【０２１３】
ステップＳ２０９において、復号部１３５は、符号化データを復号する。この復号処理の詳細については後述する。
【０２１４】
ステップＳ２１０において、復号部１３５は、生成した画像データを出力する。
【０２１５】
ステップＳ２１１において、受信装置１０２は、受信処理を終了するか否かを判定する。未処理の符号化データが存在し、受信処理を終了しないと判定された場合、ステップＳ２０２に戻り、ステップＳ２０３以降の処理を繰り返す。
【０２１６】
また、ステップＳ２１１において、受信処理を終了すると判定された場合、受信処理が終了される。
【０２１７】
次に、図１９のフローチャートを参照して、図１８のステップＳ２０５において同期制御部１３３により実行される同期制御設定処理の流れの例を説明する。
【０２１８】
同期制御設定処理が開始されると、同期制御部１３３の符号化時バッファ時間取得部３０１は、ステップＳ２３１において、フォーマット解析部１３２において抽出された符号化時バッファ時間を取得する。
【０２１９】
ステップＳ２３２において、同期制御部１３３の伝送時バッファ時間取得部３０２は、フォーマット解析部１３２において抽出された伝送時バッファ時間を取得する。
【０２２０】
ステップＳ２３３において、同期制御部１３３の初期バッファ遅延算出部３０３は、ステップＳ２３１において取得された符号化時バッファ時間と、ステップＳ２３２において取得された伝送時バッファ時間とに基づいて初期バッファ遅延を算出する。
【０２２１】
ステップＳ２３４において、同期制御部１３３の再生時刻設定部３０４は、ステップＳ２３３において算出された初期バッファ遅延に基づいて再生時刻を決定し、その再生時刻の設定を行う。
【０２２２】
ステップＳ２３４の処理が終了すると、図１８のステップＳ２０５に戻り、ステップＳ２０６以降の処理が実行される。
【０２２３】
次に、図２０のフローチャートを参照して、図１８のステップＳ２０９において復号部１３５により実行される復号処理の流れの例を説明する。
【０２２４】
復号処理が開始されると、ステップＳ２５１において、エントロピ復号部３５１は、符号化データをエントロピ復号する。
【０２２５】
ステップＳ２５２において、係数バッファ部３５２は、ステップＳ２５１の処理により符号化データがエントロピ復号されて生成された係数データを保持する。
【０２２６】
ステップＳ２５３において、ウェーブレット逆変換部３５３は、係数バッファ部３５２から係数データを適宜読み出し、ウェーブレット逆変換を行い、画像データを生成する。
【０２２７】
画像データが生成されると、復号処理が終了し、図１８のステップＳ２０９に戻り、それ以降の処理が行われる。
【０２２８】
以上のように各処理を実行することにより、受信装置１０２は、互いに異なるヘッダ情報に分けて符号化データに付加された、符号化時バッファ時間と伝送時バッファ時間を取得し、それらに基づいて初期バッファ遅延を算出することができる。
【０２２９】
このようにすることにより、受信装置１０２は、不要な遅延時間を増大させない低遅延データ伝送を、ネットワーク状況に依らず、より安定的に行うことができる。
【０２３０】
＜２．第２の実施の形態＞
［デバイスの構成］
第１の実施の形態においては、送信装置１０１において、画像データが符号化され、符号化データとして伝送されるように説明したが、この符号化処理における符号化レートと、伝送処理における伝送レートとが互いに異なっていてもよい。
【０２３１】
図２１は、本発明を適用した送受信システムの他の構成例を示すブロック図である。
【０２３２】
図２１に示される送受信システム４００は、基本的に図１の送受信システム１００と同様のシステムであり、同様の構成を有するが、送信装置１０１の代わりに送信装置４０１を有する。
【０２３３】
送信装置４０１は、基本的に図１の送信装置１０１と同様の装置であり、同様の構成を有するが、送信装置１０１の場合と異なり、符号化部１１２と伝送部１１３との間に記憶部４１１をさらに有する。それ以外の構成は、送信装置１０１の構成と同様である。
【０２３４】
送信装置４０１は、符号化部１１２による符号化処理における符号化レートと、伝送部１１３によるデータ伝送における伝送レートとが、互いに異なることが前提となっている。
【０２３５】
記憶部４１１は、その符号化レートと伝送レートとの差を解消するためのバッファである。記憶部４１１は、符号化部１１２より出力される符号化データを、符号化レートに応じたタイミング（レート）で順次格納する。
【０２３６】
また、記憶部４１１は、格納している符号化データを、伝送レートに応じたタイミング（レート）で順次読み出す。
【０２３７】
ここで、ネットワーク１０３は安定しているものとし、受信装置１０２での初期バッファ遅延Bt_initを、符号化時に指定された符号化時バッファ時間Bt_codecとする。この場合、例えば符号化レートに対して伝送レートがＮ倍（Ｎ＞１）であるとすると、ネットワーク対応バッファ時間Bt_netは、レート比対応バッファ時間Bt_rateを用いて、以下の式（１１）および式（１２）により求めることができる。
【０２３８】
Bt_rate＝Bt_codec／Ｎ  ・・・（１１）
Bt_net＝Bt_rate  ・・・（１２）
【０２３９】
なお、さらに、ネットワークジッタ対応バッファ時間Bt_jitterを反映させるようにしてもよい。その場合、ネットワーク対応バッファ時間Bt_netは、符号化時バッファ時間Bt_codecを伝送レートとエンコードレートとの比Ｎで除算した値に、ネットワークジッタ対応バッファ時間Bt_jitterを加算することにより求めることができる。
【０２４０】
［伝送時バッファ時間］
この場合、伝送時バッファ時間は、図２２の一番下の段に示されるようになる。すなわち、図２２の上から２段目や３段目に示されるように、伝送レートが符号化レートのＮ倍（図２２の例の場合、２倍）であるとすると、伝送時バッファ時間も１／Ｎ倍（図２２の例の場合、１／２倍）とすることができる。
【０２４１】
このように、伝送レートの符号化レートに対する比に応じて、伝送時バッファ時間を調整することにより、送信装置４０１は、不要な遅延時間を増大させない低遅延データ伝送を、ネットワーク状況に依らず、より安定的に行うことができる。
【０２４２】
［処理の流れ］
この送受信システム４００の場合も、各処理の流れは基本的に送受信システム１００の場合と同様であるが、送信装置４０１は、符号化処理により生成した符号化データを記憶部４１１に一旦保持させてから、データ伝送を行う。つまり、符号化処理は、送信処理を実行する以前に実行済みである。
【０２４３】
したがってこの場合の送信処理は、例えば図２３のフローチャートを参照して説明するような流れで処理される。
【０２４４】
すなわち、図１５のフローチャートにおける、画像データを取得するステップＳ１０２の処理や、画像データを符号化するステップＳ１０３の処理の代わりに、符号化データを記憶部４１１から取得するステップＳ３０２の処理が行われる。
【０２４５】
その他の処理は、図１５の場合と同様に行われる。
【０２４６】
以上のように処理を行うことにより、送信装置４０１および受信装置１０２は、符号化レートと伝送レートが互いに異なる場合でも、同期を破たんさせることなく、不要な遅延時間を増大させないように同期再生を実現することができる。
【０２４７】
＜３．第３の実施の形態＞
［デバイスの構成］
なお、送信装置がパケット損失回復機能を有するようにしてもよい。例えば、ARQ（Auto Repeat Request）機能により受信装置から送信装置にRTCPパケットにて損失パケットの再送要求を行うことができるようにしてもよい。
【０２４８】
図２４は、その場合の送受信システムの構成例を示すブロック図である。図２４に示される送受信システム５００は、ARQ機能を有する以外、基本的に送受信システム１００と同様のシステムであり、送受信システム１００と同様の構成を有する。
【０２４９】
送受信システム５００は、送信装置５０１と受信装置５０２を有する。
【０２５０】
送信装置５０１は、図１の送信装置１０１と基本的に同様の装置であり、同様の構成を有する。ただし、送信装置５０１は、送信装置１０１の構成に加え、さらに、ARQ部５２５を有する。
【０２５１】
受信装置５０２は、図１の受信装置１０２と基本的に同様の装置であり、同様の構成を有する。ただし、受信装置５０２は、受信装置１０２の構成に加え、さらに、ARQ部５３７を有する。
【０２５２】
受信装置５０２のARQ部５３７は、パケットの損失が発生した場合、RTCPパケットを利用して、送信装置５０１に対して再送要求を行う。
【０２５３】
送信装置５０１のARQ部５２５は、RTCP部１２４を介して、受信装置５０２からの再送要求を受けると、RTP送信部１２３を制御し、要求されたパケットの再送を実行させる。
【０２５４】
このようなシステムの場合、再送パケットの到着を待つためのバッファ時間であるARQ対応バッファ時間Bt_arqを初期バッファ遅延Bt_initに反映させる必要がある。より具体的には、例えば、ネットワーク対応バッファ時間Bt_netは、以下の式（１３）のように求めるようにすればよい。
【０２５５】
Bt_net＝Bt_arq  ・・・（１３）
【０２５６】
さらに、第１の実施の形態や第２の実施の形態で説明したような、ジッタや伝送レートと符号化レートとの比等も併せて初期バッファ遅延Bt_initに対応させるようにしてもよい。
【０２５７】
つまり、ネットワークジッタ対応バッファ時間Bt_jitter、レート比対応バッファ時間Bt_rate、および、ARQ対応バッファ時間Bt_arqとすると、ネットワーク対応バッファ時間Bt_netは、これらを組み合わせて、式（１４）により求めることができる。
【０２５８】
Bt_net＝Bt_jitter＋Bt_rate＋Bt_arq  ・・・（１４）
【０２５９】
また、ネットワーク対応バッファ時間Bt_netは、以下の式（１５）のように求めることもできる。
【０２６０】
Bt_net＝Bt_rate＋max（Bt_jitter，Bt_arq）  ・・・（１５）
【０２６１】
さらに、ネットワーク対応バッファ時間Bt_netは、以下の式（１６）のように求めることもできる。
【０２６２】
Bt_net＝max（Bt_jitter，Bt_rate，Bt_arq）  ・・・（１６）
【０２６３】
このようにすることにより、送信装置５０１および受信装置５０２は、ジッタ吸収機能やパケットロス回復機能等、ネットワーク１０３の状況に応じて、不要な遅延時間を増大させない低遅延データ伝送を、ネットワーク状況に依らず、より安定的に行うことができる。
【０２６４】
もちろん、上述した以外の、その他のネットワーク対応バッファ時間に関しても同様に初期バッファ遅延に反映させることができる。
【０２６５】
本発明では、映像等のストリームデータを伝送し、同期再生する場合において、その符号化データとともに、符号化時バッファ時間と伝送時バッファ時間とを互いに分けて記載し、伝送することにより、符号化部と伝送部の独立性を保ち、ネットワーク状況を考慮した最少のバッファ時間（遅延）で同期再生することができる。
【０２６６】
符号化時バッファ時間フィールドには、符号化処理時に符号化データ出力を符号化レートに平滑化して出力した場合に、受信装置１０２において必要と想定されるバッファ時間が記載され、伝送時バッファ時間フィールドには、伝送レート、ネットワークジッタ、パケット損失に対する再送処理遅延等を考慮したバッファ時間が記載される。
【０２６７】
さらに、符号化時バッファ時間と伝送時バッファ時間とが分けて記録されているため、受信装置１０２が取得したデータを一旦ファイルに保存し、他の装置へ送信するというプロセスを繰り返しても、最後の受信装置は、最適なバッファ時間を設定することができる。
【０２６８】
なお、以上においては、符号化時バッファ時間および伝送時バッファ時間を、送信装置が算出し、受信装置に供給するように説明したが、これに限らず、送信装置が、符号化に関する情報やネットワーク状況情報等を受信装置に伝送し、受信装置がそれらの情報に基づいて符号化時バッファ時間および伝送時バッファ時間を算出し、さらに初期バッファ遅延を求めるようにしてもよい。その場合、装置間において伝送される情報や、演算を行う装置が異なるだけで、システム全体において実行される処理は基本的に上述した他の場合と同様である。
【０２６９】
＜４．第４の実施の形態＞
［パーソナルコンピュータ］
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。この場合、例えば、図２５に示されるようなパーソナルコンピュータとして構成されるようにしてもよい。
【０２７０】
図２５において、パーソナルコンピュータ６００のCPU（Central Processing Unit）６０１は、ROM（Read Only Memory）６０２に記憶されているプログラム、または記憶部６１３からRAM（Random Access Memory）６０３にロードされたプログラムに従って各種の処理を実行する。RAM６０３にはまた、CPU６０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０２７１】
CPU６０１、ROM６０２、およびRAM６０３は、バス６０４を介して相互に接続されている。このバス６０４にはまた、入出力インタフェース６１０も接続されている。
【０２７２】
入出力インタフェース６１０には、キーボード、マウスなどよりなる入力部６１１、CRT（Cathode Ray Tube）やLCD（Liquid Crystal Display）などよりなるディスプレイ、並びにスピーカなどよりなる出力部６１２、ハードディスクなどより構成される記憶部６１３、モデムなどより構成される通信部６１４が接続されている。通信部６１４は、インターネットを含むネットワークを介しての通信処理を行う。
【０２７３】
入出力インタフェース６１０にはまた、必要に応じてドライブ６１５が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア６２１が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部６１３にインストールされる。
【０２７４】
上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
【０２７５】
この記録媒体は、例えば、図２５に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM（Compact Disc - Read Only Memory）,DVD（Digital Versatile Disc）を含む）、光磁気ディスク（MD（Mini Disc）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア６２１により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM６０２や、記憶部６１３に含まれるハードディスクなどで構成される。
【０２７６】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０２７７】
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０２７８】
また、本明細書において、システムとは、複数のデバイス（装置）により構成される装置全体を表すものである。
【０２７９】
また、以上において、１つの装置（または処理部）として説明した構成を分割し、複数の装置（または処理部）として構成するようにしてもよい。逆に、以上において複数の装置（または処理部）として説明した構成をまとめて１つの装置（または処理部）として構成されるようにしてもよい。また、各装置（または各処理部）の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置（または処理部）の構成の一部を他の装置（または他の処理部）の構成に含めるようにしてもよい。つまり、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０２８０】
１００  送受信システム，  １０１  送信装置，  １０２  受信装置，  １０３  ネットワーク，  １１１  キャプチャ部，  １１２  符号化部，  １１３  伝送部，  １２１  伝送平滑化部，  １２２  フォーマット修正部，  １２３  RTP送信部，  １２４  RTCP部，  １３１  RTP受信部，  １３２  フォーマット解析部，  １３３  同期制御部，  １３４  バッファ，  １３５  復号部，  １５６  符号化内平滑化部，  １５７  フォーマット化部，  ２０１  符号化時バッファ時間取得部，  ２０２  ネットワーク状況情報取得部，  ２０３  伝送時バッファ時間算出部，  ２０４  伝送時バッファ時間付加部，  ３０１  符号化時バッファ時間取得部，  ３０２  伝送時バッファ時間取得部，  ３０３  初期バッファ遅延算出部，  ３０４  再生時刻設定部，  ３０５  同期処理部，  ４００  送受信システム，  ４０１  送信装置，  ４１１  記憶部，  ５００  送受信システム，  ５０１  送信装置，  ５０２  受信装置，  ５２５  ARQ部，  ５３７  ARQ部
【図１】
0005482178.tif 000002
【図２】
0005482178.tif 000003
【図３】
0005482178.tif 000004
【図４】
0005482178.tif 000005
【図５】
0005482178.tif 000006
【図６】
0005482178.tif 000007
【図７】
0005482178.tif 000008
【図８】
0005482178.tif 000009
【図９】
0005482178.tif 000010
【図１０】
0005482178.tif 000011
【図１１】
0005482178.tif 000012
【図１２】
0005482178.tif 000013
【図１３】
0005482178.tif 000014
【図１４】
0005482178.tif 000015
【図１５】
0005482178.tif 000016
【図１６】
0005482178.tif 000017
【図１７】
0005482178.tif 000018
【図１８】
0005482178.tif 000019
【図１９】
0005482178.tif 000020
【図２０】
0005482178.tif 000021
【図２１】
0005482178.tif 000022
【図２２】
0005482178.tif 000023
【図２３】
0005482178.tif 000024
【図２４】
0005482178.tif 000025
【図２５】
0005482178.tif 000026