(57)【要約】  伝送路の状態（帯域やデータ損失、誤り特性）が異なるネットワーク間を介して、映像を伴うテレビ電話やテレビ会議等のリアルタイム通信を行う際において、伝送路の状態の違いによる受信側での表示映像の乱れを最小限とすることを可能とする。伝送路の状態が異なるネットワーク間を介した通信を中継する中継装置において、伝送路の状態と受信した映像ストリームの特性とを考慮した映像バッファ制御を行う。そのようにすることにより、受信側で表示される映像の乱れを緩和する。中継装置１０１の映像バッファ制御部２０７は、命令受信部２０３が受信した制御命令、閾値設定部２０４が設定した閾値、及びタイミング生成部２０５が設定したタイミングに従って、映像バッファ２０８を制御する。また、映像バッファ制御部２０７は、セグメント解釈部２０６の解析結果に従って、セグメント単位に映像バッファ２０８を制御する。
2007105618.tif 000002
【特許請求の範囲】
【請求項１】
送信端末からの映像ストリームを受信端末に中継する中継装置が備えるバッファを制御するバッファ制御方法であって、
前記送信端末から受信した映像ストリームを、前記中継装置のバッファに格納する格納ステップと、
前記中継装置のバッファが格納する映像ストリームのデータ量をセグメント単位に制御するバッファ制御ステップと、
を含むことを特徴とするバッファ制御方法。
【請求項２】
前記中継装置が受信した映像ストリームを蓄積する前記中継装置のバッファのデータ量の制御として、
前記中継装置が受信した映像ストリームに関するセグメントを解釈した結果と他の設定との組み合わせに基づき、前記中継装置のバッファ内の映像ストリームのデータ量をセグメント単位に制御し、
前記他の設定は、
前記中継装置のバッファのデータ量の制御に関して設定された閾値、
前記中継装置のバッファのデータ量の制御に関して設定された所定のタイミング、
前記中継装置に接続する外部装置から前記中継装置に入力された制御命令、
のうちの１つ又は複数を含み、
前記中継装置は、前記中継装置のバッファに蓄積された映像ストリームを取り出して、受信端末に送信する、
ことを特徴とする請求項１記載のバッファ制御方法。
【請求項３】
前記中継装置が受信した映像ストリームを蓄積する前記中継装置のバッファのデータ量の制御として、
（Ｓ１）前記映像ストリームに含まれるフレームのフレームタイプを判断するフレームタイプ判断ステップを含み、前記バッファ制御ステップにおいて、前記フレームタイプ判断ステップで判断したフレームタイプを用いて、前記中継装置のバッファが格納する映像ストリームのデータ量を制御する、
（Ｓ２）前記映像ストリームに含まれるスライスのスライスタイプを判断するスライスタイプ判断ステップを含み、前記バッファ制御ステップにおいて、前記スライスタイプ判断ステップで判断されたスライスタイプを用いて、前記中継装置のバッファが格納する映像ストリームのデータ量を制御する、
（Ｓ３）前記映像ストリーム中に含まれるＮＡＬ（Ｎｅｔｗｏｒｋ  Ａｂｓｔｒａｃｔｉｏｎ  Ｌａｙｅｒ）ユニットの種別を判断する種別判断ステップを含み、前記バッファ制御ステップにおいて、前記種別判断ステップで判断されたＮＡＬユニットの種別を用いて、前記中継装置のバッファが格納する映像ストリームのデータ量を制御する、
（Ｓ４）前記映像ストリームに含まれるマクロブロックのマクロブロックタイプを判断するマクロブロックタイプ判断ステップを含み、前記バッファ制御ステップにおいて、前記マクロブロックタイプ判断ステップで判断されたマクロブロックタイプを用いて、前記中継装置のバッファが格納する映像ストリームのデータ量を制御する、
のうちのいずれかをさらに含む、
ことを特徴とする請求項１記載のバッファ制御方法。
【請求項４】
映像ストリームの通信を中継する中継装置であって、
映像ストリームを格納するためのバッファと、
送信端末から受信した映像ストリームを、前記バッファに格納する格納制御手段と、
前記バッファが格納する映像ストリームのデータ量をセグメント単位に制御するバッファ制御手段と、
を備えたことを特徴とする中継装置。
【請求項５】
前記送信端末から送信された映像ストリームを受信する受信手段を備え、
前記格納制御手段は、前記受信手段が受信した映像ストリームを、前記バッファに格納し、
前記バッファから映像ストリームを抽出する抽出手段と、
前記抽出手段が抽出した映像ストリームを、宛先の受信端末に送信する送信手段と、
を備えたことを特徴とする請求項４記載の中継装置。
【請求項６】
前記バッファ制御手段は、
前記バッファが格納する映像ストリームの所定のデータ量を間引く処理、
前記バッファが格納する映像ストリームを廃棄する処理、
前記バッファへの映像ストリームの入力を停止する処理、
前記バッファから出力する映像ストリームの出力レートを高くする処理、
のうちの少なくとも１つを行うことで、前記バッファが格納する映像ストリームのデータ量を制御する、
請求項４記載の中継装置。
【請求項７】
前記バッファ制御手段は、
フレーム、
ビデオパケット、
ＧＯＢ（Ｇｒｏｕｐ  Ｏｆ  Ｂｌｏｃｋｓ）、
スライス、
ＮＡＬ（Ｎｅｔｗｏｒｋ  Ａｂｓｔｒａｃｔｉｏｎ  Ｌａｙｅｒ）ユニット、
のうちの少なくとも１つを前記セグメント単位として用いて、前記バッファが格納する映像ストリームのデータ量を制御する、
請求項４記載の中継装置。
【請求項８】
所定の方法で閾値を設定する閾値設定手段を備え、
前記バッファ制御手段は、前記閾値設定手段が設定した閾値に基づいて、前記バッファが格納する映像ストリームのデータ量を制御する、
請求項４記載の中継装置。
【請求項９】
前記バッファ制御手段は、
（Ａ）前記映像ストリームのデータ量の上限値を閾値として設定し、前記バッファ内に蓄積された映像ストリームにデータ量が前記上限値以上となったことを条件として、前記バッファへの入力を停止するか、前記バッファ内の映像ストリームの少なくとも一部を廃棄するか、又は、前記バッファからの映像ビットストリームの出力ビットレートを高くする制御、
（Ｂ）前記映像ストリームのデータ量の上限値と下限値を閾値として設定し、前記バッファ内に蓄積された映像ストリームにデータ量が前記上限値以上となったことを条件として前記バッファの映像ストリームのデータ量が下限値に達するまで、前記バッファへの入力を停止するか、前記バッファからの映像ビットストリームの出力ビットレートを高くする制御を行う制御、
（Ｃ）前記映像ストリームのデータ量を間引くための間引き閾値を閾値として設定し、前記バッファの映像ストリームのデータ量が間引き閾値に達したことを条件として、前記バッファへの所定のデータ量のデータの入力を行わない制御、
のうちの少なくとも１つの制御を用いて、前記バッファが格納する映像ストリームのデータ量を制御する、
請求項８記載の中継装置。
【請求項１０】
前記バッファ制御手段は、所定のタイミングに基づいて、前記バッファが格納する映像ストリームのデータ量を制御し、
前記所定のタイミングとして、
一定時間毎のタイミング、
受信パケット数が一定量に達したタイミング、
受信映像ストリームのデータ量が一定量に達したタイミング、
前記バッファに入力したデータ量が一定量に達したタイミング、
受信映像ストリームのセグメント数が一定量に達したタイミング、
のうちの少なくとも１つを含む、
請求項９記載の中継装置。
【請求項１１】
前記バッファ制御手段は、外部装置から受信した制御命令に従って、前記バッファが格納する映像ストリームのデータ量を制御する、
請求項４記載の中継装置。
【請求項１２】
前記映像ストリームに含まれるフレームのフレームタイプを判断するフレームタイプ判断手段、
前記映像ストリームに含まれるスライスのスライスタイプを判断するスライスタイプ判断手段、
前記映像ストリーム中に含まれるＮＡＬユニットの種別を判断する種別判断手段、
前記映像ストリームに含まれるマクロブロックのマクロブロックタイプを判断するマクロブロックタイプ判断手段、
のうちの少なくとも１つの判断手段を備え、
前記バッファ制御手段は、
前記判断手段で判断された、
フレームタイプと、
スライスタイプと、
ＮＡＬユニットの種別と、
マクロブロックタイプ、
のうちの少なくとも１つを用いて、前記バッファが格納する映像ストリームのデータ量を制御する、
請求項４記載の中継装置。
【請求項１３】
前記映像ストリームに含まれるフレームのフレームタイプを判断するフレームタイプ判断手段と、
前記フレームタイプに基づいて他のフレームから参照されている被参照フレームであるか否かを判断する被参照有無判断手段を備え、
前記バッファ制御手段は、前記フレームタイプを用いたバッファ制御として、前記フレームが被参照フレームであるか否かに関する前記被参照有無判断手段での判断結果を用いて、前記バッファが格納する映像ストリームのデータ量を制御する、
請求項４記載の中継装置。
【請求項１４】
前記被参照フレームからの距離に従いフレームの優先度を設定する優先度設定手段を備え、
前記バッファ制御手段は、前記フレームタイプを用いたバッファ制御として、前記フレームの優先度を用いて、前記中継装置の前記バッファが格納する映像ストリームのデータ量を制御する、
請求項１３記載の中継装置。
【請求項１５】
前記映像ストリーム中に含まれるＮＡＬユニットの種別を判断する種別判断手段と、
前記映像ストリームに含まれるＮＡＬユニットが、前記映像ストリームに含まれる他のＮＡＬユニットによって参照されている被参照ユニットであるか否かを判断する被参照有無判断手段を備え、
前記バッファ制御手段は、前記被参照有無判断手段によるＮＡＬユニットが被参照ユニットであるか否かの判断結果を用いて、前記バッファが格納する映像ストリームのデータ量を制御する、
請求項４記載の中継装置。
【請求項１６】
送信端末からの映像ストリームを中継装置で中継して受信端末に送信する通信システムであって、
前記中継装置は、
前記送信端末から受信した映像ストリームを格納するバッファと、
前記バッファに格納される映像ストリームのデータ量をセグメント単位に制御するバッファ制御手段と、
前記バッファに蓄積された映像ストリームを取り出して前記受信端末に送信する手段と、
を含むことを特徴とする通信システム。
【請求項１７】
前記中継装置は、
前記映像ストリームに関するセグメントを解釈するセグメント解釈手段を備え、
さらに、
前記バッファのデータ量の制御に関して閾値を設定する閾値設定手段、
前記バッファのデータ量を制御する所定のタイミングを生成するタイミング生成手段、
前記中継装置に接続する外部装置から前記中継装置に入力された制御命令を受信する命令受信手段、
のうちの１つ又は複数の手段を備え、
前記バッファ制御手段は、
（Ａ）前記セグメントの解釈結果と、
（Ｂ）前記セグメントの解釈結果及び他の設定の組み合わせと、
のいずれかに基づき、前記バッファ内の映像ストリームのデータ量をセグメント単位に制御し、
前記（Ｂ）の前記他の設定は、
前記閾値、
前記所定のタイミング、
前記制御命令、
のうちの１つ又は複数を含む、
ことを特徴とする請求項１６記載の通信システム。
【請求項１８】
前記中継装置は、
前記映像ストリームのセグメント解釈を行うとともに、前記映像ストリームからセグメント情報を抽出するストリーム解釈手段を備え、
前記中継装置では、
（Ｓ１）前記ストリーム解釈手段が、前記映像ストリームに含まれるフレームのフレームタイプを判断し、前記バッファ制御手段は、前記判断されたフレームタイプを用いて前記バッファが格納する映像ストリームのデータ量を制御する、
（Ｓ２）前記ストリーム解釈手段が、前記映像ストリームに含まれるスライスのスライスタイプを判断し、前記バッファ制御手段は、前記判断されたスライスタイプを用いて、前記バッファが格納する映像ストリームのデータ量を制御する、
（Ｓ３）前記ストリーム解釈手段が、前記映像ストリーム中に含まれるＮＡＬ（Ｎｅｔｗｏｒｋ  Ａｂｓｔｒａｃｔｉｏｎ  Ｌａｙｅｒ）ユニットの種別を判断し、前記バッファ制御手段は、前記判断されたＮＡＬユニットの種別を用いて、前記バッファが格納する映像ストリームのデータ量を制御する、
（Ｓ４）前記ストリーム解釈手段が、前記映像ストリームに含まれるマクロブロックのマクロブロックタイプを判断し、前記バッファ制御手段は、前記判断されたマクロブロックタイプを用いて、前記バッファが格納する映像ストリームのデータ量を制御する、
のうちのいずれかの制御が行われる、ことを特徴とする請求項１６記載の通信システム。
【請求項１９】
前記中継装置では、
前記（Ｓ１）の制御として、前記ストリーム解釈手段が、前記映像ストリームに含まれるフレームタイプに基づいて他のフレームから参照されている被参照フレームであるか否かを判断し、前記バッファ制御手段は、前記フレームタイプを用いたバッファ制御として、前記フレームが被参照フレームであるか否かに関する前記被参照有無判断手段での判断結果を用いて、前記バッファが格納する映像ストリームのデータ量を制御し、
前記（Ｓ３）の制御として、前記ストリーム解釈手段が、前記映像ストリームに含まれるＮＡＬユニットが、前記映像ストリームに含まれる他のＮＡＬユニットによって参照されている被参照ユニットであるか否かを判断し、前記バッファ制御手段は、前記被参照有無判断手段によるＮＡＬユニットが被参照ユニットであるか否かの判断結果を用いて、前記バッファが格納する映像ストリームのデータ量を制御する、
ことを特徴とする請求項１８記載の通信システム。
【請求項２０】
前記中継装置では、
前記（Ｓ１）の制御として、前記ストリーム解釈手段が、前記被参照フレームからの距離に従いフレームの優先度を設定する手段を備え、前記バッファ制御手段は、前記フレームタイプを用いたバッファ制御として、前記フレームの優先度を用いて、前記中継装置の前記バッファが格納する映像ストリームのデータ量を制御する、ことを特徴とする請求項１８記載の通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、中継装置が備えるバッファを制御するバッファ制御方法に関し、特に、伝送路の状態（帯域やデータ損失、誤り特性）が異なるネットワーク間を介して、映像を伴うテレビ電話やテレビ会議等の通信を行う際において、伝送路の状態の影響による受信側で表示される映像の乱れを最小限とすることを可能とする映像バッファ制御方法に関する。また、本発明は、バッファ制御方法を適用した中継装置及び通信システムに関する。
【背景技術】
【０００２】
近年、ＡＤＳＬや光通信技術を用いること等によるネットワークの高速化に伴い、ネットワークを経由して、パケットを用いて、画像や音声の符号化データを通信することが行われている。例えば、いわゆるＶｏＩＰ（Voice over IP ）やＴＶｏＩＰ（TV over IP）と呼ばれる双方向通信システム及び会議システムが急速に普及してきている。【０００３】
このような画像や音声の符号化データの通信に用いられる符号化方式には、いくつかの種類がある。例えば動画像の符号化方式として、フレーム間予測に基づいた高能率圧縮によって符号化した符号化データを伝送する方法が多く用いられている。これらのフレーム間予測に基づいた符号化方式では、時間的に前後に位置するフレームから符号化画像を予測する。そして、符号化画像を予測して得られた予測パラメータと予測残差画像データとを符号化することで、時間方向の相関が高い動画像データの情報量を削減する。さらに、予測残差画像データを変換符号化したり量子化したりすることにより、高能率に圧縮符号化することで、少ない伝送帯域での通信を可能としている。【０００４】
また、第三世代携帯電話では、回線交換（ＣＳ）方式でのＴＶ電話サービスの提供をサポートしている携帯電話端末がある。また、これらのＴＶ電話サービスの利用が可能な携帯電話端末と、ＩＰネットワークに接続するＴＶｏＩＰクライアントとを接続するゲートウェイも存在している。そして、これらの携帯電話端末やゲートウェイを用いて、ＣＳ網（回線交換網）とＰＳ網（パケット交換網）とに跨ったリアルタイム通信を行うことが既になされている。【０００５】
上記のように伝送路の状態（帯域やデータ損失、誤り特性）が異なるネットワーク間でリアルタイム通信を行う場合、双方のネットワークを結ぶ（中継）するために中継装置が用いられる。この場合、中継装置は、ネットワーク上でのジッタを吸収するジッタバッファを備えたり、ジッタを吸収する際の伝送遅延を削減する遅延削減処理を行ったりする。【０００６】
また、符号化データを中継する中継装置として、例えば、特許文献１には、符号化ストリームから取得した符号化情報を符号化ストリームに挿入する符号化ストリーム中継装置が記載されている。【０００７】
【特許文献１】特開２００６−１３５８３号公報（段落００２９−００４２、図６）
【非特許文献１】H. Schulzrinne, S. Casner, R. Frederick, V. Jacobson，”RTP: A Transport Protocol for Real-Time Applications”，RFC 3550，July 2003 ，インターネット<URL: http://www.ietf.org/rfc/rfc3550.txt>
【非特許文献２】TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU ，”ITU-T Recommendation H.223”，03/1996
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、映像ストリームに対し遅延削減処理を施す場合において、現在広く利用されている予測符号化を利用して映像ストリームの符号化を行うと、映像ストリームにおける任意のデータの削減処理を行うことによって、受信側にて再生される映像ストリームの画質が大きく劣化してしまう。且つ、予測符号化を利用して映像ストリームの符号化を行うと、映像が劣化した状態がしばらく継続して画像が再生されてしまうという問題がある。【０００９】
また、異なるネットワーク間の帯域の違いを吸収するために、符号化データをトランスコードする方法が考えられる。しかし、符号化データをトランスコードするための処理量の増加が著しく、同一装置で多くのストリームを処理しなければなならい場合には適さない。【００１０】
また、特許文献１に記載された符号化ストリーム中継装置によれば、符号化情報の伝達の仕方にかかわらず、受信端末で受信した符号化ストリームを正常にデコードすることができる。しかし、異なるネットワーク間の伝送路の状態の影響によって受信側で映像の乱れが発生することを防止することはできない。【００１１】
そこで、本発明は、映像を伴う通信を行う場合に、受信側で表示される映像が伝送路の状態の影響によって劣化することを低減できるバッファ制御方法、中継装置、通信システムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係るバッファ制御方法は、中継装置（例えば、中継装置１０１，４０１）が備えるバッファ（例えば、映像バッファ２０８）を制御するバッファ制御方法であって、送信端末（例えば、送信端末１０２）から受信した映像ストリームを、中継装置のバッファに格納する格納ステップと、中継装置のバッファが格納する映像ストリームのデータ量をセグメント（一部のセグメントがロス又はエラーによりデコードできない場合であっても他のセグメントで独立にデコードできる単位、例えば、フレームやビデオパケット、ＧＯＢ、スライス、ＮＡＬユニット）単位に制御するバッファ制御ステップとを含むことを特徴とする。【００１３】
また、本発明に係るバッファ制御方法は、中継装置が備えるバッファを制御するバッファ制御方法であって、送信端末から映像ストリームを受信する受信ステップと、受信した映像ストリームを、中継装置のバッファに格納する格納ステップと、中継装置のバッファが格納する映像ストリームのデータ量を制御するバッファ制御ステップと、中継装置のバッファから映像ストリームを取り出して、宛先の受信端末（例えば、受信端末１０３）に送信する送信ステップとを含むものであってもよい。【００１４】
また、本発明に係るバッファ制御方法は、中継装置が備えるバッファを制御するバッファ制御方法であって、送信端末から映像ストリームを受信する受信ステップと、受信した映像ストリームを、中継装置のバッファに格納する格納ステップと、中継装置のバッファが格納する映像ストリームのデータ量を制御するバッファ制御ステップと、中継装置のバッファから映像ストリームを取り出して、宛先の受信端末に送信する送信ステップとを含み、バッファ制御ステップで、中継装置のバッファが格納する映像ストリームの所定のデータ量を間引く間引き処理を実行するものであってもよい。【００１５】
また、本発明に係るバッファ制御方法は、バッファ制御ステップで、中継装置のバッファが格納する映像ストリームを破棄し、中継装置のバッファへの映像ストリームの入力を停止し、又は中継装置のバッファから出力する映像ストリームの出力レートを高くすることによって、中継装置のバッファが格納する映像ストリームのデータ量をセグメント単位に制御するものであってもよい。【００１６】
また、本発明に係るバッファ制御方法は、バッファ制御ステップで、フレーム、ビデオパケット、ＧＯＢ、スライス又はＮＡＬユニットのうちの少なくとも１つを所定の単位として用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００１７】
また、本発明に係るバッファ制御方法は、所定の方法で閾値を設定する閾値設定ステップを含み、バッファ制御ステップで、設定した閾値に基づいて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００１８】
また、本発明に係るバッファ制御方法は、バッファ制御ステップで、閾値に基づくバッファ制御として、
（A）前記映像ストリームのデータ量の上限値を閾値として設定し、前記中継装置のバッファ内に蓄積された映像ストリームにデータ量が前記上限値以上となったことを条件として、前記中継装置のバッファへの入力を停止するか、前記中継装置のバッファ内の映像ストリームの少なくとも一部を廃棄するか、又は、前記中継装置のバッファからの映像ビットストリームの出力ビットレートを高くする制御；
（B）前記映像ストリームのデータ量の上限値と下限値を閾値として設定し、前記中継装置のバッファ内に蓄積された映像ストリームにデータ量が前記上限値以上となったことを条件として前記中継装置のバッファの映像ストリームのデータ量が下限値に達するまで前記中継装置のバッファへの入力を停止するか、前記中継装置のバッファからの映像ビットストリームの出力ビットレートを高くする制御を行う制御；
（C）前記映像ストリームのデータ量を間引くための間引き閾値を閾値として設定し、前記中継装置のバッファの映像ストリームのデータ量が間引き閾値に達したことを条件として、前記中継装置のバッファへの所定のデータ量のデータの入力を行わない制御；
のうちの少なくとも１つの制御を用いて、前記中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００１９】
また、本発明に係るバッファ制御方法は、バッファ制御ステップで、所定のタイミングに基づいて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００２０】
また、本発明に係るバッファ制御方法は、バッファ制御ステップで、所定のタイミングとして、一定時間毎のタイミング、受信パケット数が一定量に達したタイミング、受信映像ストリームのデータ量が一定量に達したタイミング、映像バッファに入力したデータ量が一定量に達したタイミング、又は受信セグメント数が一定量に達したタイミングの少なくとも１つのタイミングに基づいて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００２１】
また、本発明に係るバッファ制御方法は、バッファ制御ステップで、外部装置（例えば、外部装置１０４）から受信した制御命令に従って、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００２２】
また、本発明に係るバッファ制御方法は、映像ストリームに含まれるフレームのフレームタイプを判断するフレームタイプ判断ステップを含み、バッファ制御ステップで、判断したフレームタイプを用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００２３】
また、本発明に係るバッファ制御方法は、フレームタイプに基づいて他のフレームから参照されている被参照フレームであるか否かを判断する被参照有無判断ステップを含み、バッファ制御ステップで、フレームタイプを用いたバッファ制御として、フレームが被参照フレームであるか否かの判断結果を用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００２４】
また、本発明に係るバッファ制御方法は、被参照フレームからの距離に従いフレームの優先度を設定するステップを含み、バッファ制御ステップで、フレームタイプを用いたバッファ制御として、フレームの優先度を用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００２５】
また、本発明に係るバッファ制御方法は、映像ストリームに含まれるスライスのスライスタイプを判断するスライスタイプ判断ステップを含み、バッファ制御ステップで、判断したスライスタイプを用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００２６】
また、本発明に係るバッファ制御方法は、映像ストリーム中に含まれるＮＡＬユニットの種別を判断する種別判断ステップを含み、バッファ制御ステップで、判断したＮＡＬユニットの種別を用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００２７】
また、本発明に係るバッファ制御方法は、映像ストリームに含まれるＮＡＬユニットが、映像ストリームに含まれる他のＮＡＬユニットによって参照されている被参照ユニットであるか否かを判断する被参照有無判断ステップを含み、バッファ制御ステップで、ＮＡＬユニットが被参照ユニットであるか否かの判断結果を用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００２８】
また、本発明に係るバッファ制御方法は、映像ストリームに含まれるマクロブロックのマクロブロックタイプを判断するマクロブロックタイプ判断ステップを含み、バッファ制御ステップで、判断したマクロブロックタイプを用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００２９】
本発明に係る中継装置は、映像ストリームの通信を中継する中継装置であって、送信端末から受信した映像ストリームを、当該中継装置のバッファ（例えば、映像バッファ２０８）に格納させる格納制御手段（例えば、受信データ分離部２０２によって実現される）と、当該中継装置のバッファが格納する映像ストリームのデータ量をセグメント単位に制御するバッファ制御手段（例えば、映像バッファ制御部２０７，４０７によって実現される）とを備えたことを特徴とする。【００３０】
また、本発明に係る中継装置は、映像ストリームの通信を中継する中継装置であって、送信端末から映像ストリームを受信する受信手段（例えば、受信部２０１によって実現される）と、受信手段が受信した映像ストリームを、当該中継装置のバッファ（例えば、映像バッファ２０８）に格納させる格納制御手段（例えば、受信データ分離部２０２によって実現される）と、当該中継装置のバッファが格納する映像ストリームのデータ量を制御するバッファ制御手段（例えば、映像バッファ制御部２０７，４０７によって実現される）と、当該中継装置のバッファから映像ストリームを抽出する抽出手段（例えば、送信データ作成部２０９によって実現される）と、抽出手段が抽出した映像ストリームを宛先の受信端末に送信する送信手段（例えば、送信部２１０によって実現される）とを備えたものであってもよい。【００３１】
また、本発明に係る中継装置は、映像ストリームの通信を中継する中継装置であって、送信端末から映像ストリームを受信する受信手段と、受信手段が受信した映像ストリームを、当該中継装置のバッファに格納させる格納制御手段と、当該中継装置のバッファが格納する映像ストリームのデータ量を制御するバッファ制御手段と、当該中継装置のバッファから映像ストリームを抽出する抽出手段と、抽出手段が抽出した映像ストリームを宛先の受信端末に送信する送信手段とを備え、バッファ制御手段は、中継装置のバッファが格納する映像ストリームの所定のデータ量を間引く間引き処理を実行する間引き手段（例えば、映像バッファ制御部２０７，４０７によって実現される）を含むものであってもよい。【００３２】
また、本発明に係る中継装置において、バッファ制御手段は、中継装置のバッファが格納する映像ストリームを廃棄し、中継装置のバッファへの映像ストリームの入力を停止し、又は中継装置のバッファから出力する映像ストリームの出力レートを高くすることによって、中継装置のバッファが格納する映像ストリームのデータ量をセグメント単位に制御するものであってもよい。【００３３】
また、本発明に係る中継装置において、バッファ制御手段は、フレーム、ビデオパケット、ＧＯＢ、スライス又はＮＡＬユニットのうちの少なくとも１つを所定の単位として用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００３４】
また、本発明に係る中継装置は、所定の方法で閾値を設定する閾値設定手段（例えば、閾値設定部２０４によって実現される）を備え、バッファ制御手段は、閾値設定手段が設定した閾値に基づいて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００３５】
また、本発明に係る中継装置において、バッファ制御手段は、閾値に基づくバッファ制御として、
（A）前記映像ストリームのデータ量の上限値を閾値として設定し、前記中継装置のバッファ内に蓄積された映像ストリームにデータ量が前記上限値以上となったことを条件として、前記中継装置のバッファへの入力を停止するか、前記中継装置のバッファ内の映像ストリームの少なくとも一部を廃棄するか、又は、前記中継装置のバッファからの映像ビットストリームの出力ビットレートを高くする制御；
（B）前記映像ストリームのデータ量の上限値と下限値を閾値として設定し、前記中継装置のバッファ内に蓄積された映像ストリームにデータ量が前記上限値以上となったことを条件として前記中継装置のバッファの映像ストリームのデータ量が下限値に達するまで前記中継装置のバッファへの入力を停止するか、前記中継装置のバッファからの映像ビットストリームの出力ビットレートを高くする制御を行う制御；
（C）前記映像ストリームのデータ量を間引くための間引き閾値を閾値として設定し、前記中継装置のバッファの映像ストリームのデータ量が間引き閾値に達したことを条件として、前記中継装置のバッファへの所定のデータ量のデータの入力を行わない制御；
のうちの少なくとも１つの制御を用いて、前記中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００３６】
また、本発明に係る中継装置において、バッファ制御手段は、所定のタイミングに基づいて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００３７】
また、本発明に係る中継装置において、バッファ制御手段は、所定のタイミングとして、一定時間毎のタイミング、受信パケット数が一定量に達したタイミング、受信映像ストリームのデータ量が一定量に達したタイミング、映像バッファへ入力したデータ量が一定量に達したタイミング、又は受信セグメント数が一定量に達したタイミングの少なくとも１つのタイミングに基づいて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００３８】
また、本発明に係る中継装置において、バッファ制御手段は、外部装置から受信した制御命令に従って、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００３９】
また、本発明に係る中継装置は、映像ストリームに含まれるフレームのフレームタイプを判断するフレームタイプ判断手段（例えば、セグメント解釈部２０６によって実現される）を備え、バッファ制御手段は、フレームタイプ判断手段が判断したフレームタイプを用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００４０】
また、本発明に係る中継装置は、フレームタイプに基づいて他のフレームから参照されている被参照フレームであるか否かを判断する被参照有無判断手段（例えば、ストリーム解釈部４０６によって実現される）を備え、バッファ制御手段は、フレームタイプを用いたバッファ制御として、フレームが被参照フレームであるか否かの判断結果を用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００４１】
また、本発明に係る中継装置は、被参照フレームからの距離に従いフレームの優先度を設定する優先度設定手段（例えば、ストリーム解釈部４０６によって実現される）を備え、バッファ制御手段は、フレームタイプを用いたバッファ制御として、フレームの優先度を用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００４２】
また、本発明に係る中継装置は、映像ストリームに含まれるスライスのスライスタイプを判断するスライスタイプ判断手段（例えば、セグメント解釈部２０６によって実現される）を備え、バッファ制御手段は、スライスタイプ判断手段が判断したスライスタイプを用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００４３】
また、本発明に係る中継装置は、映像ストリーム中に含まれるＮＡＬユニットの種別を判断する種別判断手段（例えば、セグメント解釈部２０６によって実現される）を備え、バッファ制御手段は、種別判断手段が判断したＮＡＬユニットの種別を用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００４４】
また、本発明に係る中継装置は、映像ストリームに含まれるＮＡＬユニットが、映像ストリームに含まれる他のＮＡＬユニットによって参照されている被参照ユニットであるか否かを判断する被参照有無判断手段（例えば、セグメント解釈部２０６によって実現される）を備え、バッファ制御手段は、被参照有無判断手段によるＮＡＬユニットが被参照ユニットであるか否かの判断結果を用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００４５】
また、本発明に係る中継装置は、映像ストリームに含まれるマクロブロックのマクロブロックタイプを判断するマクロブロックタイプ判断手段（例えば、セグメント解釈部２０６によって実現される）を備え、バッファ制御手段は、マクロブロックタイプ判断手段が判断したマクロブロックタイプを用いて、中継装置のバッファが格納する映像ストリームのデータ量を制御するものであってもよい。【００４６】
本発明に係る通信システムは、映像ストリームの通信を行う通信システムであって、映像ストリームの通信を中継する中継装置を備え、中継装置は、送信端末から受信した映像ストリームを、当該中継装置のバッファに格納させる格納制御手段と、当該中継装置のバッファが格納する映像ストリームのデータ量をセグメント単位に制御するバッファ制御手段とを含むことを特徴とする。【００４７】
また、本発明に係る通信システムは、映像ストリームの通信を行う通信システムであって、映像ストリームの通信を中継する中継装置を備え、中継装置は、送信端末から映像ストリームを受信する受信手段と、受信手段が受信した映像ストリームを、当該中継装置のバッファに格納させる格納制御手段と、当該中継装置のバッファが格納する映像ストリームのデータ量を制御するバッファ制御手段と、当該中継装置のバッファから映像ストリームを抽出する抽出手段と、抽出手段が抽出した映像ストリームを宛先の受信端末に送信する送信手段とを含むものであってもよい。【００４８】
本発明に係るバッファ制御プログラムは、中継装置が備えるバッファを制御するためのバッファ制御プログラムであって、コンピュータに、送信端末から受信した映像ストリームを、中継装置のバッファに格納する処理と、中継装置のバッファが格納する映像ストリームのデータ量をセグメント単位に制御する処理とを実行させるためのものである。【００４９】
また、本発明に係るバッファ制御プログラムは、中継装置が備えるバッファを制御するためのバッファ制御プログラムであって、コンピュータに、送信端末から映像ストリームを受信する処理と、受信した映像ストリームを、中継装置のバッファに格納する処理と、中継装置のバッファが格納する映像ストリームのデータ量を制御する処理と、中継装置のバッファから映像ストリームを取り出して、宛先の受信端末に送信する処理とを実行させるためのものであってもよい。
【発明の効果】
【００５０】
本発明によれば、送信端末から受信した映像ストリームを、中継装置のバッファに格納する。また、中継装置のバッファが格納する映像ストリームのデータ量をセグメント単位に制御する。バッファ制御をセグメント単位で行うので、中継装置が本来送信すべき映像ストリームの一部を破棄（削減）した場合に、受信端末が受信した映像ストリームに基づいて映像を再生する際の画質の劣化を緩和することができる。従って、映像を伴う通信を行う場合に、受信側で表示される映像が伝送路の状態の影響によって劣化することを低減できる。【００５１】
また、本発明によれば、バッファ制御をセグメント単位で行うので、伝送路の状態が異なるネットワークを介した映像ストリームの通信を行う場合であっても、符号化データをトランスコードすることなく、受信側で表示される映像が伝送路の状態の影響によって劣化することを低減できる。
【図面の簡単な説明】
【００５２】
【図１】バッファ制御方法を用いた通信システムの構成の一例を示すブロック図である。
【図２】中継装置の構成の一例を示すブロック図である。
【図３】中継装置が中継する映像ストリームのフォーマットの例を示す説明図である。
【図４】中継装置が映像バッファを制御するバッファ制御処理の一例を示す流れ図である。
【図５】中継装置の構成の他の例を示すブロック図である。
【図６】ストリーム解釈部の構成の一例を示すブロック図である。
【図７】フレームタイプに基づいてデータの優先度を決定する処理の一例を示す流れ図である。
【図８】参照ピクチャであるか否かに基づいてデータの優先度を決定する処理の一例を示す流れ図である。
【図９】ＩｎｔｒａＭＢであるか否かに基づいてデータの優先度を決定する処理の一例を示す流れ図である。
【符号の説明】
【００５３】
１０１  中継装置
１０２  送信端末
１０３  受信端末
１０４  外部装置
１０５，１０６，１０７  伝送路
２０１  受信部
２０２  受信データ分離部
２０３  命令受信部
２０４  閾値設定部
２０５  タイミング生成部
２０６  セグメント解釈部
２０７  映像バッファ制御部
２０８  映像バッファ
２０９  送信データ作成部
２１０  送信部
【発明を実施するための最良の形態】
【００５４】
実施の形態１．
以下、本発明の第１の実施の形態について図面を参照して説明する。本発明による映像バッファ制御方法（バッファ制御方法）は、端末から送信される映像ストリームを中継する中継装置に適用される。また、バッファ制御方法は、異なるネットワークを介した通信を中継装置を用いて中継する通信システムに適用される。【００５５】
また、本実施の形態において、端末から送信される映像ストリームを中継する中継装置は、端末から送信される映像ストリームを受信する手段と、受信した映像ストリームを映像バッファに格納する手段と、バッファ内のデータ量を制御する手段とを備える。【００５６】
また、中継装置は、所定の単位でバッファ内のデータ量を制御する手段を備えてもよい。この場合、中継装置は、所定の単位として、（１） フレーム、（２） ビデオパケット、（３） ＧＯＢ（Group Of Blocks ）、（４） スライス、又は（５） ＮＡＬ（Network Abstraction Layer ）ユニット等の映像ストリーム固有のセグメントのうちの少なくとも１つを用いる手段を備えてもよい。【００５７】
また、中継装置は、所定の方法で閾値を設定する手段と、設定した閾値に基づいてバッファ内のデータ量を制御する手段とを備えてもよい。また、中継装置は、所定のタイミングに基づいてバッファ内のデータ量を制御する手段を備えてもよい。また、中継装置は、外部装置からの命令に従ってバッファ内のデータ量を制御する手段を備えてもよく、映像バッファから映像ストリームを取り出して中継先の端末に送信する。【００５８】
まず、バッファ制御方法を用いた通信システムの構成を図面を参照して説明する。図１は、バッファ制御方法を用いた通信システムの構成の一例を示すブロック図である。図１に示すように、通信システムは、中継装置１０１と、映像ストリームを送信する送信端末１０２と、送信端末１０２から送信された映像ストリームを受信する受信端末１０３と、映像キュー制御命令を送信する外部装置１０４とを含む。【００５９】
また、図１に示すように、中継装置１０１と送信端末１０２とは、伝送路１０５を介して接続される。また、中継装置１０１と受信端末１０３とは、伝送路１０６を介して接続される。また、中継装置１０１と外部装置１０４とは、伝送路１０７を介して接続される。なお、伝送路１０５〜１０７は、有線又は無線によるＩＰ（Internet Protocol ）を用いたネットワーク、又は回線交換網によって実現される。【００６０】
なお、本実施の形態では、送信端末１０２と受信端末１０３とは、それぞれ伝送路の状態（帯域やデータ損失、誤り特性）が異なるネットワークに接続されている。例えば、図１に示す例では、伝送路１０５と伝送路１０６とは、帯域やデータ損失、誤り特性が異なる。【００６１】
また、図１では、送信端末１０２が１台である場合を示しているが、通信システムは、複数台の送信端末１０２を含んでもよい。また、図１では、受信端末１０３が１台である場合を示しているが、通信システムは、複数台の受信端末１０３を含んでもよい。また、送信端末１０２は、映像ストリームを送信するだけでなく、映像ストリームを受信する機能を備えてもよい。また、受信端末１０３は、映像ストリームを受信するだけでなく、映像ストリームを送信する機能を備えてもよい。さらに、外部装置１０４は、送信端末１０２又は受信端末１０３と同じ装置によって実現されてもよい。【００６２】
送信端末１０２は、具体的には、携帯電話機やＰＤＡ等の情報処理端末によって実現される。また、送信端末１０２は、例えば、パーソナルコンピュータ等の端末であってもよい。送信端末１０２は、伝送路１０５を介して映像ストリームを送信する機能を備える。例えば、送信端末１０２は、テレビ電話やテレビ会議を行う際に、ユーザの操作に従って、伝送路１０５を介して、映像ストリームを含むデータを送信する。【００６３】
受信端末１０３は、具体的には、携帯電話機やＰＤＡ等の情報処理端末によって実現される。また、受信端末１０３は、例えば、パーソナルコンピュータ等の端末であってもよい。受信端末１０３は、伝送路１０６を介して映像ストリームを受信する機能を備える。また、受信端末１０３は、受信した映像ストリームに基づいて、液晶表示部等の表示部に映像を表示する機能を備える。例えば、受信端末１０３は、テレビ電話やテレビ会議を行う際に、ユーザの操作に従って、伝送路１０６を介して、映像ストリームを含むデータを受信し、液晶表示部において映像を再生する。【００６４】
外部装置１０４は、具体的には、ワークステーションやパーソナルコンピュータ等の情報処理装置によって実現される。外部装置１０４は、例えば、中継装置１０１を管理する通信キャリアやプロバイダによって運営される。外部装置１０４は、中継装置１０１が備えるバッファを制御するための制御命令を、伝送路１０７を介して中継装置１０１に送信する機能を備える。なお、外部装置１０４は、送信端末１０２又は受信端末１０３と同じ装置（例えば、ユーザ端末）によって実現される場合には、携帯電話機やＰＤＡ等の端末であってもよい。【００６５】
中継装置１０１は、具体的には、ゲートウェイ等の通信制御装置によって実現される。また、中継装置１０１は、通信を中継するための通信中継プログラムに従って処理を実行するワークステーションやパーソナルコンピュータ等の情報処理装置であってもよい。図２は、中継装置の構成の一例を示すブロック図である。中継装置１０１は、図２に示すように、受信部２０１、受信データ分離部２０２、命令受信部２０３、閾値設定部２０４、タイミング生成部２０５、セグメント解釈部２０６、映像バッファ制御部２０７、映像バッファ２０８、送信データ作成部２０９及び送信部２１０を含む。【００６６】
受信部２０１は、送信端末１０２から、伝送路１０５を介して、映像ストリームを含むデータを受信する機能を備える。受信データ分離部２０２は、受信データから映像ストリームを分離して、映像ストリームを抽出する機能を備える。また、受信データ分離部２０２は、分離した映像ストリームを映像バッファ２０８に格納させる機能を備える。【００６７】
命令受信部２０３は、伝送路１０７を介して、外部装置１０４からの命令を受信する機能を備える。閾値設定部２０４は、バッファ制御に用いる閾値を設定する機能を備える。タイミング生成部２０５は、バッファ制御をするタイミングを設定し、タイミング情報を生成する機能を備える。セグメント解釈部２０６は、受信データ分離部２０２から映像ストリームを受け取り、映像ストリーム内のセグメントを解釈（解析）する機能を備える。【００６８】
映像バッファ制御部２０７は、映像バッファ２０８の制御を行う機能を備える。本実施の形態では、映像バッファ制御部２０７は、映像バッファ２０８が格納する映像ストリームを削除する等の処理を行うことによって、映像バッファ２０８の制御を行う。この場合、映像バッファ制御部２０７は、命令受信部２０３が外部装置１０４から受信した制御命令に基づいて、映像バッファ２０８の制御を行う。また、映像バッファ制御部２０７は、閾値設定部２０４が設定した閾値に基づいて、映像バッファ２０８の制御を行う。また、映像バッファ制御部２０７は、タイミング生成部２０５が設定したタイミングに基づいて、映像バッファ２０８の制御を行う。また、映像バッファ制御部２０７は、セグメント解釈部２０６の解析結果に基づいて、映像バッファ２０８の制御を行う。【００６９】
映像バッファ２０８は、受信データ分離部２０２が分離して得られた映像ストリームを格納する機能を備える。送信データ作成部２０９は、映像バッファ２０８内の映像ストリームに基づいて、伝送路１０６を用いて通信可能な形式の送信データを作成する機能を備える。送信部２１０は、送信データ作成部２０９が作成した送信データを、伝送路１０６を介して受信端末１０３に送信する機能を備える。【００７０】
なお、受信部２０１で受信するデータのフォーマットは、伝送路１０５で用いられる通信プロトコルに依存した伝送フォーマットとする。また、送信部２１０で送信するデータのフォーマットは、伝送路１０６で用いられる通信プロトコルに依存した伝送フォーマットとする。ここでいう伝送フォーマットとは、例えば、ＩＰ網におけるＲＴＰフォーマットや、回線交換網におけるＨ．２２３フォーマット等の映像ストリームを伝送する際に用いられるフォーマットのことである。【００７１】
なお、上記に示したＲＴＰフォーマットは、例えば、非特許文献１「H. Schulzrinne, S. Casner, R. Frederick, V. Jacobson，”RTP: A Transport Protocol for Real-Time Applications”，RFC 3550，July 2003 ，インターネット<URL: http://www.ietf.org/rfc/rfc3550.txt>」に記載されている。また、上記に示したＨ．２２３フォーマットは、例えば、非特許文献２「TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU ，”ITU-T Recommendation H.223”，03/1996 」に記載されている。【００７２】
また、中継装置１０１が情報処理装置によって実現される場合、中継装置１０１の記憶装置は、異なるネットワークを介した映像ストリームの通信を中継するための各種プログラムを記憶している。例えば、中継装置１０１の記憶装置は、コンピュータに、送信端末から受信した映像ストリームを、中継装置のバッファに格納する処理と、中継装置のバッファが格納する映像ストリームのデータ量をセグメント単位に制御する処理とを実行させるためのバッファ制御プログラムを記憶している。【００７３】
次に、中継装置１０１で中継される映像ストリームのフォーマットを説明する。図３は、中継装置１０１が中継する映像ストリームのフォーマットの例を示す説明図である。図３に示すように、映像ストリームは、複数のフレーム３０−１〜３０−ｎで構成されるものとする。図３において、ＶＰは、ＭＰＥＧ４におけるビデオパケットを示す。図３に示すように、フレーム３０−１は、複数のＶＰ３１−１〜３１−ｍで構成される。なお、フレーム３０−１は、複数のＶＰ３１−１〜３１−ｍで構成されるものに限られず、ＶＰ単位で区切られていないものであってもよい。また、フレーム３０−２〜３０−ｎもフレーム３０−１と同様に、複数のＶＰで構成されていてもよく、ＶＰ単位で区切られていないものであってもよい。【００７４】
なお、本実施の形態では、ＭＰＥＧ４方式で符号化した映像ストリームを通信する場合を説明するが、バッファ制御方法は、特定の符号化方式に限定されるものではなく、例えば、ＭＰＥＧ１やＭＰＥＧ２等の方式を用いて符号化した映像ストリームの通信を行う通信システムに適用されてもよい。また、映像ストリームに含まれるフレームは、ＶＰ単位に区分される場合に限らず、例えば、Ｈ．２６３におけるＧＯＢやスライス等の映像符号化方式固有の単位で区分されてもよい。また、例えば、フレームは、Ｈ．２６４におけるＮＡＬユニットやスライス等の映像符号化方式固有の単位で区分されてもよい。【００７５】
次に、動作について説明する。図４は、中継装置１０１が映像バッファ２０８を制御するバッファ制御処理の一例を示す流れ図である。送信端末１０２のユーザは、受信端末１０３のユーザとテレビ電話やテレビ会議を行う場合、送信端末１０２を操作して映像ストリームの送信の指示操作を行う。送信端末１０２は、ユーザの操作に従って、伝送路１０５を介して、映像ストリームを含むデータを中継装置１０１に送信する。【００７６】
まず、中継装置１０１が映像ストリームを受信して映像バッファ２０８に格納するまでの動作を説明する。中継装置１０１の受信部２０１は、送信端末１０２から、伝送路１０５を介して、少なくとも映像ストリームを含む受信データを受信する（ステップＳ１１）。すると、受信データ分離部２０２は、伝送路１０５で用いられる伝送フォーマットに基づいて、受信データから映像ストリームを分離して、映像ストリームを抽出する（ステップＳ１２）。また、受信データ分離部２０２は、分離した映像ストリームを映像バッファ２０８に格納させる（ステップＳ１３）。以上の処理に従って、中継装置１０１の映像バッファ２０８に映像ストリームが順次格納される。【００７７】
次に、中継装置１０１が映像バッファ２０８を制御する動作を説明する。中継装置１０１の命令受信部２０３は、所定のタイミングで、外部装置１０４から、伝送路１０７を介して制御命令を受信する（ステップＳ１４）。そして、映像バッファ制御部２０７は、命令受信部２０３が受信した制御命令に従って、映像バッファ２０８が格納する映像ストリームを破棄（削除）する（ステップＳ１５）。【００７８】
また、本実施の形態では、中継装置１０１の閾値設定部２０４は、予め所定の閾値を設定している。この場合、映像バッファ制御部２０７は、ステップＳ１５において、閾値設定部２０４が設定した閾値に従って、映像バッファ２０８が格納する映像ストリームを破棄（削除）する。【００７９】
また、本実施の形態では、中継装置１０１のタイミング生成部２０５は、予め所定のタイミングを設定している。この場合、映像バッファ制御部２０７は、ステップＳ１５において、タイミング生成部２０５が設定したタイミングに従って、映像バッファ２０８が格納する映像ストリームを破棄（削除）する。【００８０】
また、本実施の形態では、中継装置１０１のセグメント解釈部２０６は、映像ストリームを受信した際に、映像ストリームに含まれるセグメントを解析している。この場合、映像バッファ制御部２０７は、ステップＳ１５において、セグメント解釈部２０６が解析したセグメントに従って、映像バッファ２０８内の映像ストリームをセグメント単位に破棄（削除）する。【００８１】
なお、映像バッファ制御部２０７は、外部装置１０４からの制御命令、閾値、タイミング、及びセグメントの解析結果の全てに従って映像バッファ２０８を制御するのでなく、外部装置１０４からの制御命令、閾値、タイミング、及びセグメントの解析結果のうちのいずれか１つ又は複数に従って、映像バッファ２０８を制御してもよい。この場合、例えば、中継装置１０１は、命令受信部２０３を含まず、通信システムは、制御命令を送信する外部装置１０４を含まなくてもよい。また、例えば、中継装置１０１は、閾値設定部２０４を含まなくてもよい。また、例えば、中継装置１０１は、タイミング生成部２０５を含まなくてもよい。【００８２】
また、映像バッファ制御部２０７は、映像バッファ２０８が格納する映像ストリームのうちの一部のストリームを破棄してもよく、全ての映像ストリームを破棄してもよい。【００８３】
次に、中継装置１０１が映像バッファ２０８に格納する映像ストリームを送信する動作を説明する。中継装置１０１の送信データ作成部２０９は、映像バッファ２０８が格納する映像ストリーム（ステップＳ１５で破棄されずに映像バッファ２０８に残った映像ストリーム）を、伝送路１０６で用いられる伝送フォーマットに加工し、送信データを作成する（ステップＳ１６）。そして、送信部２１０は、送信データ作成部２０９が作成した送信データを、伝送路１０６を介して受信端末１０３に送信する（ステップＳ１７）。また、受信端末１０３は、中継装置１０１から受信したデータに含まれる映像ストリームに基づいて、表示部に映像を表示する。【００８４】
なお、映像バッファ２０８に映像ストリームを格納したり、映像バッファ２０８内のデータを破棄したりする処理は、具体的には、映像バッファ２０８への入力を停止したり、映像バッファ２０８からデータを出力する出力ビットレートを高くしたりすることで実現することができる。【００８５】
次に、外部装置１０４から送信される制御命令について説明する。外部装置１０４から送信される制御命令は、中継装置１０１内の映像バッファ２０８を外部から操作したい時に、外部装置１０４から中継装置１０１に送信される。そして、命令受信部２０３を介して、中継装置１０１内の閾値設定部２０４、タイミング生成部２０５、セグメント解釈部２０６及び映像バッファ制御部２０７の各々のモジュールに転送される。【００８６】
例えば、送信端末１０２が通信システム内の他の送信端末に切替られた時に、切替前の過去の送信端末１０２の映像ストリームが送信されないように、映像バッファ２０８からバッファ内をクリアする（映像ストリームを削除する）ための制御命令が、外部装置１０４から送信される。そして、命令受信部２０３を介して映像バッファ制御部２０７に渡される。また、例えば、転送により受信端末１０３が通信システム内の他の受信端末に変更された時に、映像バッファ２０８から映像ストリームを削除するための制御命令が、外部装置１０４から送信される。【００８７】
また、送信端末１０２から送信される映像ストリームのビットレートやフレームレートが急激な変化をする場合、又は既に変化した場合に、そのビットレートやフレームレートの変化に合わせて、映像バッファサイズを増減させる制御命令が、外部装置１０４から送信されてもよい。そして、命令受信部２０３を介して制御命令が映像バッファ制御部２０７に渡されてもよい。また、そのビットレートやフレームレートの変化に合わせた閾値に変更する制御命令が、閾値設定部２０４に渡されてもよい。また、そのビットレートやフレームレートの変化に合わせたバッファ制御タイミングに変更する制御命令が、タイミング生成部２０５に渡されてもよい。また、そのビットレートやフレームレートの変化に合わせたセグメントに制御変更する命令が、セグメント解釈部２０６に渡されてもよい。また、これら４つの制御命令は独立に単独で送信されてもよく、複数の制御命令が同時に発行されてもよい。【００８８】
また、送信端末１０２から送信される映像ストリームがＭＰＥＧ４で符号化されたストリームからＨ．２６３で符号化されたストリームに変わった時に、映像バッファ２０８内の映像ストリームをクリア（削除）する制御命令を映像バッファ制御部２０７に渡してもよい。そして、変更する映像ストリームに合わせたセグメントを解釈（解析）するようにセグメント解釈部２０６に制御命令が転送されてもよい。なお、ＭＰＥＧ４及びＨ．２６３以外の方式で符号化されたストリームに変更する場合も同様である。【００８９】
次に、閾値設定部２０４が設定する閾値について説明する。閾値設定部２０４は、予めメモリ等の記憶装置に記憶する設定ファイルの設定内容に従って、閾値を設定してもよい。また、閾値設定部２０４は、中継装置１０１に接続された所定の設定端末（例えば、パーソナルコンピュータ等の端末）から入力される設定情報に従って、閾値を設定してもよい。【００９０】
閾値設定部２０４は、例えば、映像バッファ２０８内に溜まる（蓄積可能な）映像ストリームのデータ量の上限値を閾値として設定する。この場合、上限値以上の映像ストリームがバッファ２０８内に溜まったと判断すると、映像バッファ制御部２０７は、映像バッファ２０８内の映像ストリームの一部又は全てを破棄（削除）させる。又は、映像バッファ制御部２０７は、映像バッファ２０８への入力を停止したり、映像バッファ２０８からの出力ビットレートを高くしたりする。【００９１】
また、閾値設定部２０４は、例えば、映像バッファ２０８内に溜まる映像ストリームのデータ量の上限値及び下限値の２値を閾値として設定してもよい。この場合、上限値以上の映像ストリームがバッファ２０８内に溜まったと判断すると、映像バッファ制御部２０７は、映像バッファ２０８への映像ストリームの入力を、映像バッファ２０８が蓄積する映像ストリームのデータ量が下限値に達するまで行わないように制御する。又は、映像バッファ制御部２０７は、映像バッファ２０８からの映像ストリームの出力ビットレートを、映像バッファ２０８が蓄積する映像ストリームのデータ量が下限値に達するまで高くなるように制御してもよい。【００９２】
また、閾値設定部２０４は、映像ストリームの入力ビットレートやフレームレートを独自に計算したり、命令受信部２０３を介して外部装置１０４から受け取ることにより、入力ビットレートやフレームレートを取得してもよい。この場合、閾値設定部２０４は、取得したビットレートやフレームレートが瞬間的に高い時には、一旦映像バッファ２０８が蓄積する映像ストリームのデータ量の上限値を大きくしてもよい。【００９３】
さらに、閾値設定部２０４は、映像バッファ２０８に映像ストリームが入力される際に、所定の時間（例えば、分、秒、ミリ秒等）に入力される映像ストリームのデータ量、又はデータ量の微分値を計算してもよい。そして、閾値設定部２０４は、その求めたデータ量や微分値と比較するための値を閾値に設定してもよい。この場合、例えば、入力ビットレートの微分値が大きい場合、閾値設定部２０４は、映像バッファ２０８の上限値を大きくしてもよい。又は、映像バッファ２０８からデータが溢れてしまうことを防止するために、バッファ量が上限値に達する前に映像ストリームの入力を停止する等の制御を行ってもよい。【００９４】
例えば、映像バッファ２０８内のデータを間引くための間引き閾値を設け、バッファ量が間引き閾値に達した時に所定のデータ量をバッファ制御（例えば、映像バッファ２０８への所定のデータ量のデータの入力を行わない）してもよい。すなわち、映像バッファ制御部２０７は、映像バッファ２０８が格納する映像ストリームの所定のデータ量を間引く間引き処理を実行するようにしてもよい。また、この間引き閾値を複数設けてもよく、例えば、バッファ量の３分の１の地点で（第１の間引き閾値に達した時に）１フレーム分のデータ量をバッファ制御し、バッファ量の３分の２の地点で（第２の間引き閾値に達した時に）２フレーム分のデータ量をバッファ制御してもよい。【００９５】
次に、タイミング生成部２０５が所定のタイミング（以下、バッファ制御タイミングともいう）を設定し、タイミング情報を生成する動作について説明する。「バッファ制御タイミング」は、映像バッファ制御部２０７が、映像バッファ２０８の内部を見に行き（映像バッファ２０８が記憶する映像ストリームを確認し）、バッファ制御を行うためのタイミングである。【００９６】
タイミング生成部２０５は、予めメモリ等の記憶装置に記憶する設定ファイルの設定内容に従って、バッファ制御タイミングを設定してもよい。また、タイミング生成部２０５は、中継装置１０１に接続された所定の設定端末から入力される設定情報に従って、ある一定のタイミングをバッファ制御タイミングとして設定してもよい。【００９７】
また、タイミング生成部２０５は、受信部２０１がデータ受信したタイミングを、バッファ制御タイミングとしてもよい。また、タイミング生成部２０５は、命令受信部２０３から制御命令を受信したタイミングを、バッファ制御タイミングとしてもよい。【００９８】
また、タイミング生成部２０５は、映像バッファ２０８が蓄積するデータ量に比べ、受信データ分離部２０２からの映像ストリームのデータ量が少ない時や、映像ストリームの受信頻度が低い時に、バッファ制御タイミングを遅らせるように設定してもよい。また、タイミング生成部２０５は、逆に受信データ分離部２０２からの映像ストリームのデータ量が多い時や、映像ストリームの受信頻度が高い時に、バッファ制御タイミングを早めるように設定してもよい。ここでのタイミングとは、例えば一定時間毎といった時間情報によるタイミングでもよく、受信パケット数が一定量に達したタイミングや、受信映像ストリームのデータ量が一定量に達したタイミング、映像バッファに入力したデータ量が一定量に達したタイミングでもよい。また、次に示すセグメント解釈部２０６と連動し、受信フレーム数が一定量に達したタイミングや受信映像符号化方式固有のセグメント数が一定量に達したタイミング等でもよい。【００９９】
次に、セグメント解釈部２０６が行うセグメント解釈（映像ストリームに含まれるセグメントの解析処理）について説明する。本実施の形態では、解析対象のセグメントとして、フレームと、フレームをさらに分割した映像符号化方式固有の単位（例えば、ビデオパケットやＧＯＢ、スライス、ＮＡＬユニット）との２種類を想定する。この場合、セグメント解釈部２０６は、例えば、セグメントの解析処理を行うことによって、映像ストリームをフレーム単位に区切ることができるか、映像ストリームを映像符号化方式固有の単位で区切ることができるかを特定する。【０１００】
本実施の形態では、セグメントとしての映像符号化方式固有の単位は、フレームを分割したものであって、映像ストリーム中の一部のセグメントがパケットロスやビットエラーによりデコードできない場合であっても、映像ストリーム中の他のセグメントが独立にデコードできる単位である。【０１０１】
セグメント解釈部２０６は、セグメント解釈の方法として、例えば、映像ストリーム中からセグメント区切りを示すスタートコードを探す方法を用いて、映像ストリーム中のセグメントを特定する。また、セグメント解釈部２０６は、例えば、伝送フォーマットからセグメント区切りを判別する方法を用いて、映像ストリーム中のセグメントを特定してもよい。また、セグメント解釈部２０６は、例えば、映像ストリーム固有のセグメント解釈方法を用いて、映像ストリーム中のセグメントを特定してもよい。【０１０２】
以下、セグメントの単位としてＭＰＥＧ４におけるビデオパケット（ＶＰ）を用いる場合を説明する。なお、セグメントとして他の映像符号化方式固有の単位（例えば、ＧＯＢやスライス、ＮＡＬユニット）を用いる場合も同様である。【０１０３】
まず、セグメント解釈部２０６は、予め設定された初期値、又は命令受信部２０３から受信した制御命令に従って、いずれのセグメント（フレーム又はビデオパケット）を解釈するかを決定する。中継装置１０１は、ここでセグメント解釈部２０６が解釈したセグメントを、映像バッファ２０８への映像ストリームの入力や、映像バッファ２０８内の映像ストリームの破棄を行う際の単位として用いる。【０１０４】
フレーム単位でバッファ制御を行うと、受信端末１０３で受信する映像のフレーム数が減少し、フレームレートが低下する。例えば、図３に示すフレーム３０−３がフレーム間予測を行って送信端末１０２から送信された場合、１つ前のフレーム３０−２がバッファ制御により破棄され受信端末１０３に送信されないと、参照フレームにずれが生じてしまう。そのため、フレーム３０−３のデコードの際に参照されるフレームが、２つ前のフレーム３０−１になり、受信端末１０３で再生される画像の画質劣化につながる。しかし、動きの少ない映像（フレーム間の変化が少ない映像）の場合には、参照フレームのずれによる画質劣化は少ない。そのため、動きが少ない映像の場合には、セグメントとしてフレーム単位でバッファ制御を行うことによって、受信端末１０３で再生される画像の画質劣化を低減することができる。【０１０５】
一方、ＶＰ単位でバッファ制御を行うと、受信端末１０３で受信する映像のフレームレートは変わらず、受信できたＶＰは正常にデコードできる。例えば、図３に示すＶＰ３１−２がバッファ制御により破棄され受信端末１０３に送信されなかった場合であっても、フレーム３０−１を構成する他のＶＰ３１−１，３１−３〜３１−ｍは正常にデコードされる。この場合、フレーム中のＶＰ３１−２部分のデコード処理は、受信端末１０３のデコーダの精度に依存する。そのため、受信端末１０３のデコーダの精度により、セグメントとしてビデオパケット単位でバッファ制御を行うことによって、受信端末１０３で再生される画像の画質劣化を低減することができる。【０１０６】
次に、セグメント単位ではなく、ある一定のバイト量の単位でバッファ制御を行う場合を考える。例えば、バッファ制御によりフレーム３０−１の末尾付近とフレーム３０−２の先頭付近とを破棄したとする。この場合、受信端末１０３は、フレーム３０−１については、先頭部分から破棄される寸前の部分までの内容を正常にデコードできる。一方、受信端末１０３は、フレーム３０−２については、先頭部分が破棄されてしまっているので（例えば、ヘッダ部分が破棄されてしまっているので）、次のＶＰ又はフレームの部分まで正常にデコードすることができない。【０１０７】
同様に、バッファ制御によりＶＰ３１−５の末尾付近とＶＰ３１−６の先頭付近を破棄したときも、受信端末１０３は、次のＶＰ又はフレームの部分まで正常にデコードすることができない。このように、セグメント単位でなく一定のバイト量単位でバッファ制御を行うと、受信しても正常にデコードできないデータを大量に受信端末Ｂ１０３に送信することになり、受信端末１０３で再生される画像の画質劣化を引き起こす原因となる。本実施の形態では、映像バッファ制御をセグメント単位で行うことにより、受信端末１０３で再生される画像の画質劣化を緩和することができる。【０１０８】
映像バッファ制御部２０７は、命令受信部２０３、閾値設定部２０４、タイミング生成部２０５、及びセグメント解釈部２０６からの情報を受けて、映像バッファ２０８内の映像ストリームを制御する。【０１０９】
以上のように、本実施の形態によれば、中継装置１０１は、送信端末１０２から受信した受信データから分離した映像ストリームを、映像バッファ２０８に格納する。また、中継装置１０１は、映像ストリームに含まれるセグメントを解析し、セグメントの解析結果に基づいて、映像バッファ２０８が格納する映像ストリームのデータ量をセグメント単位に制御する。バッファ制御をセグメント単位で行うので、中継装置１０１が本来送信すべき映像ストリームの一部を破棄（削減）した場合に、受信端末１０３が受信した映像ストリームに基づいて映像を再生する際の画質の劣化を緩和することができる。従って、映像を伴う通信を行う場合に、受信側で表示される映像が伝送路の状態の影響によって劣化することを低減できる。【０１１０】
また、本実施の形態によれば、バッファ制御をセグメント単位で行うので、伝送路の状態が異なるネットワークを介した映像ストリームの通信を行う場合であっても、符号化データをトランスコードすることなく、受信側で表示される映像が伝送路の状態の影響によって劣化することを低減できる。【０１１１】
実施の形態２．
次に、本発明の第２の実施の形態を図面を参照して説明する。本実施の形態では、映像バッファ制御方法（バッファ制御方法）を用いた中継装置は、第１の実施の形態で示した構成要素に加えて、映像ストリーム中に含まれる映像ストリーム情報を特定する手段を備える。【０１１２】
また、中継装置は、映像ストリーム情報として、（１）フレームタイプ、（２）スライスタイプ、（３）ＮＡＬユニットの種別、（４）ＮＡＬユニットの被参照の有無、又は（５）マクロブロックタイプのうちの少なくとも１つを用いる手段を備える。また、中継装置は、特定した映像ストリーム情報を用いてデータ量を制御する手段を備え、映像バッファから映像ストリームを取り出して中継先の端末に送信する。【０１１３】
まず、バッファ制御方法を用いた通信システムの構成を図面を参照して説明する。本実施の形態において、通信システムの基本的構成は、第１の実施の形態で示した構成（図１参照）と同様である。本実施の形態では、中継装置４０１の機能が、第１の実施の形態で示した中継装置１０１の機能と異なる。【０１１４】
図５は、中継装置の構成の他の例を示すブロック図である。図５に示すように、本実施の形態では、中継装置４０１は、図２で示した中継装置１０１のセグメント解釈部２０６に代えてストリーム解釈部４０６を含む点で、第１の実施の形態と異なる。また、本実施の形態では、映像バッファ制御部４０７の機能が、図２で示した映像バッファ制御部２０７の機能と異なる。【０１１５】
本実施の形態において、中継装置４０１は、第１の実施の形態で示した中継装置１０１に、映像ストリーム情報を用いてバッファ制御する手段（ストリーム解釈部４０６及び映像バッファ制御部４０７）を追加したものに相当する。なお、受信部２０１、受信データ分離部２０２、命令受信部２０３、閾値設定部２０４、タイミング生成部２０５、映像バッファ２０８、送信データ作成部２０９及び送信部２１０の機能は、第１の実施の形態で示したそれらの機能と同様である。【０１１６】
ストリーム解釈部４０６は、セグメント解釈（セグメントの解析）を行うとともに、映像ストリームからセグメント情報を取得（抽出）する機能を備える。【０１１７】
映像バッファ制御部４０７は、映像バッファ２０８の制御を行う機能を備える。この場合、映像バッファ制御部４０７は、第１の実施の形態で示した映像バッファ制御部２０７と同様に、命令受信部２０３が外部装置１０４から受信した制御命令に基づいて、映像バッファ２０８の制御を行う。また、映像バッファ制御部４０７は、第１の実施の形態で示した映像バッファ制御部２０７と同様に、閾値設定部２０４が設定した閾値に基づいて、映像バッファ２０８の制御を行う。また、映像バッファ制御部４０７は、第１の実施の形態で示した映像バッファ制御部２０７と同様に、タイミング生成部２０５が設定したタイミングに基づいて、映像バッファ２０８の制御を行う。また、映像バッファ制御部４０７は、第１の実施の形態で示した映像バッファ制御部２０７の機能に加えて、ストリーム解釈部４０６が解析したセグメントと、ストリーム解釈部４０６が抽出したセグメント情報とを受け取り、映像バッファ制御部２０７のバッファ制御を行う。【０１１８】
図６は、ストリーム解釈部４０６の構成の一例を示すブロック図である。ストリーム解釈部４０６は、図６に示すように、セグメント解釈部２０６及びセグメント情報取得部５０１を含む。セグメント解釈部２０６は、第１の実施の形態で示した中継装置１０１が含むセグメント解釈部２０６と同様に、映像ストリーム内のセグメントを解釈（解析）する機能を備える。セグメント情報取得部５０１は、セグメント解釈部２０６が解釈したセグメント（映像ストリームに含まれるセグメント）から、セグメント固有の情報（セグメント情報）を取得（抽出）する機能を備える。【０１１９】
次に、動作について説明する。本実施の形態において、中継装置４０１は、図４に示したバッファ制御処理と同様の処理に従って、送信端末１０２から映像ストリームを受信して映像バッファ２０８に格納し、映像バッファ２０８を制御し、映像バッファ２０８に格納する映像ストリームを受信端末１０３に送信する。【０１２０】
また、ストリーム解釈部４０６のセグメント解釈部２０６は、映像ストリームを受信した際に、受信データ分離部２０２から映像ストリームを入力すると、第１の実施の形態で示したセグメント解釈部２０６と同様に、フレーム単位、又はフレームを分割した映像符号化方式固有の単位に、セグメントを解釈する。また、セグメント解釈部２０６は、解釈したセグメントを、セグメント情報取得部５０１に送る（出力する）。【０１２１】
セグメント情報取得部５０１は、セグメント解釈部２０６からのセグメントの解析結果に基づいて、セグメント情報を取得（抽出）する。また、セグメント情報取得部５０１は、得られたセグメント情報を映像バッファ制御部４０７に出力する。そして、映像バッファ制御部４０７は、ストリーム解釈部４０６から入力したセグメント情報を、バッファ制御に用いる。【０１２２】
まず、フレーム単位でセグメントを解釈した場合を考える。この場合、セグメント情報取得部５０１は、ストリームの先頭のヘッダ部分を解析したり、伝送フォーマットを解析したりすること等により、セグメント情報としてフレームタイプを得る（抽出する）。また、映像バッファ制御部４０７は、セグメント情報取得部５０１が判断したフレームタイプを用いて、映像バッファ２０８を制御する。そのため、フレームタイプを判断するために増加する処理量を、小さく抑えることができる。【０１２３】
また、フレーム単位でセグメントを解析した場合、ストリーム解釈部４０６は、抽出したフレームタイプによりバッファ制御におけるデータの優先度を定める。そして、映像バッファ制御部４０７は、ストリーム解釈部４０６が定めた優先度に従って映像バッファ２０８を制御する。例えば、映像バッファ制御部４０７は、優先度が低い順に、映像バッファ２０８が格納する映像ストリームをセグメント単位に破棄するように制御する。【０１２４】
図７は、フレームタイプに基づいてデータの優先度を決定する処理の一例を示す流れ図である。図７に示すように、ストリーム解釈部４０６は、セグメント情報取得部５０１が抽出したフレームタイプに基づいて、まず、フレームタイプがＩフレームであるか否かを判定する（ステップＳ６０１）。Ｉフレームであると判断した場合、ストリーム解釈部４０６は、画面間予測により単体でデコードできるデータであるので、そのフレームの優先度を上昇させる（ステップＳ６０２）。すなわち、ストリーム解釈部４０６は、Ｉフレームの優先度が高くなるように設定する。【０１２５】
ステップＳ６０１でＩフレーム以外のフレーム（例えば、Ｂフレーム）であると判断した場合、ストリーム解釈部４０６は、画面間予測において他のフレームの状況によってデコード映像品質が依存するので、そのフレームの優先度を低下させる（ステップＳ６０３）。すなわち、ストリーム解釈部４０６は、Ｉフレーム以外のフレームの優先度が低くなるように設定する。【０１２６】
例えば、ＭＰＥＧ４のＳｉｍｐｌｅＰｒｏｆｉｌｅなど、ＩフレームとＰフレームのみ存在する映像ストリームにおいて、Ｉフレーム直前のＰフレームはどのピクチャからも参照されていない。そのため、Ｉフレーム直前のＰフレームを破棄しても、ビットレートやフレームレートは低下するものの、出力する映像ストリームに乱れは生じない。また、Ｉフレーム直前のＰフレームを破棄した際、この破棄したＰフレームの直前のＰフレームもどのピクチャからも参照されなくなる。そのため、破棄したＰフレームの直前のＰフレームを破棄しても、出力する映像ストリームに乱れは生じない。つまり、被参照フレームから一番遠いフレーム（Ｉフレーム直前のＰフレーム）の優先度を一番低く設定し、被参照フレームに近づくにつれて徐々に優先度を高くするように設定することが考えられる。また、このＩフレーム直前のＰフレームの場合に限られず、他のフレームから参照されていないフレームがあれば、同様に優先度を大幅に低く設定するようにしてもよい。例えば、Ｂフレームは他のフレームから参照されておらず、Ｂフレームを破棄しても、出力する映像ストリームに乱れは生じない。そのためＢフレームの優先度を大幅に低く設定することが考えられる。【０１２７】
上記の処理が実行されることによって、ストリーム解釈部４０６は、フレームタイプに基づいて、他のフレームから参照されている被参照フレームであるか否かを判断する。そして、映像バッファ制御部４０７は、その判断結果を用いて、映像バッファ２０８が格納する映像ストリームのデータ量を制御する。また、ストリーム解釈部４０６は、被参照フレームからの距離に従いフレームの優先度を設定する。そして、映像バッファ制御部４０７は、設定したフレームの優先度を用いて、映像バッファ２０８が格納する映像ストリームのデータ量を制御する。【０１２８】
なお、Ｈ．２６４におけるスライス単位のセグメントと解釈した場合、図７において、フレームをスライスと読み替えてもよい。この場合、セグメント情報取得部５０１は、セグメント情報として、映像ストリームに含まれるスライスのスライスタイプを判断して抽出する。そして、映像バッファ制御部４０７は、セグメント情報取得部５０１が判断したスライスタイプを用いて、映像バッファ２０８を制御する。【０１２９】
また、セグメント情報取得部５０１は、セグメント情報として、映像ストリームに含まれるマクロブロックのマクロブロックタイプを判断して抽出してもよい。そして、映像バッファ制御部４０７は、セグメント情報取得部５０１が判断したマクロブロックタイプを用いて、映像バッファ２０８を制御してもよい。【０１３０】
次に、ＮＡＬユニット単位でセグメントを解釈した場合を考える。この場合、セグメント情報取得部５０１は、映像ストリームに含まれるＮＡＬユニットが、映像ストリームに含まれる他のＮＡＬユニットによって参照されている被参照ユニット（参照ピクチャ）であるか否かを判断する。そして、映像バッファ制御部４０７は、ＮＡＬユニットが参照ピクチャであるか否かの判断結果を用いて、映像バッファ２０８を制御する。【０１３１】
ＮＡＬユニットは、一般に、ＮＡＬヘッダと呼ばれる参照ピクチャであるか否かを示すフラグと、ＮＡＬユニット種別を示す識別子とを含むヘッダをもつ。この場合、ストリーム解釈部４０６は、ＮＡＬユニットに含まれる参照ピクチャであるか否かを示すフラグにより、セグメント（ＮＡＬユニット）が参照ピクチャであるか否かを判断し、バッファ制御におけるデータの優先度を定める。【０１３２】
図８は、参照ピクチャであるか否かに基づいてデータの優先度を決定する処理の一例を示す流れ図である。図８に示すように、ストリーム解釈部４０６は、まず、セグメントが参照ピクチャであるか否かを判定する（ステップＳ７０１）。参照ピクチャであると判断した場合、ストリーム解釈部４０６は、そのセグメントが他のピクチャに参照されているデータであるので、そのセグメントの優先度を上昇させる（ステップＳ７０２）。すなわち、ストリーム解釈部４０６は、参照ピクチャの優先度が高くなるように設定する。【０１３３】
ステップＳ７０１で参照ピクチャでないと判断した場合、ストリーム解釈部４０６は、そのセグメントのピクチャが損失（破棄）しても他のピクチャに影響がないことが分かるので、そのセグメントの優先度を低下させる（ステップＳ７０３）。すなわち、ストリーム解釈部４０６は、参照ピクチャ以外のピクチャの優先度が低くなるように設定する。参照ピクチャ以外のピクチャのみを破棄した場合には、ビットレートやフレームレートは低下するものの、出力される映像ストリームに全く乱れのない映像となる。【０１３４】
同様に、ＮＡＬユニット種別を用いても、バッファ制御に用いられる優先度を設定することができる。この場合、セグメント情報取得部５０１は、映像ストリーム中に含まれるＮＡＬユニットの種別を判断する。そして、映像バッファ制御部４０７は、セグメント情報取得部５０１が判断したＮＡＬユニットの種別を用いて、映像バッファ２０８を制御する。【０１３５】
例えば、ストリーム解釈部４０６は、ＮＡＬユニット種別がシーケンス・パラメータ・セット（ＳＰＳ）やピクチャ・パラメータ・セット（ＰＰＳ）を示している場合、これらの情報は以後の映像ストリームのデコードの際に必要なパラメータとなるので、優先度を１番目に高く設定する。また、ストリーム解釈部４０６は、ＮＡＬユニット種別がＡＵデリミタを示している場合、フレームの境目を示す重要な値であるので、優先度を２番目に高く設定する。また、ストリーム解釈部４０６は、ＮＡＬユニット種別がＩＤＲピクチャのスライスを示している場合、ビット・ストリームを複合するために必要な全ての状態がリセットされることを示しており以後のデコードに高い影響を与えるので、優先度を３番目に高く設定する。そして、ストリーム解釈部４０６は、上記に示した種別以外のＮＡＬユニット種別である場合には、優先度を低く設定する。【０１３６】
また、ストリーム解釈部４０６は、ＮＡＬユニットではないが、例えば、ＭＰＥＧ４のＤｅｃｏｄｅｒＣｏｎｆｉｇＩｎｆｏ（ＤＣＩ）情報も、同様に映像ストリームのデコード際に必要なパラメータとなるので、優先度を高く設定することもできる。また、ストリーム解釈部４０６は、伝送路１０６が信頼性のあるエラーフリー伝送路である場合、前回のＳＰＳやＰＰＳ、ＤＣＩと同一のパラメータを受信した際に、その受信データの優先度を低く設定することも考えられる。【０１３７】
次に、ＶＰ（ビデオパケット）単位でセグメントを解釈し、かつ、１ＶＰが１マクロブロック（ＭＢ）で構成されている場合を考える。この場合、ストリーム解釈部４０６は、ＭＢの先頭部分を解析することにより、ＩｎｔｒａＭＢか否かを判別でき、バッファ制御におけるデータの優先度を定める。また、ＭＢの先頭部分のみを解析すればよいので、処理量の増加を最低限に抑えることができる。【０１３８】
図９は、ＩｎｔｒａＭＢであるか否かに基づいてデータの優先度を決定する処理の一例を示す流れ図である。図９に示すように、ストリーム解釈部４０６は、まず、セグメントがＩフレームであるか否かを判定する（ステップＳ８０１）。セグメントがＩフレームであると判断した場合、ストリーム解釈部４０６は、ＭＢタイプが全てＩｎｔｒａＭＢでありセグメント間に差異がないので、そのセグメントの優先度を変化させずに、そのまま処理を終了する。【０１３９】
セグメントがＩフレームでないと判断した場合、ストリーム解釈部４０６は、セグメントがＩｎｔｒａＭＢであるか否かを判定する（ステップＳ８０２）。セグメントがＩｎｔｒａＭＢであると判断した場合、ストリーム解釈部４０６は、Ｉフレーム以外のフレームでフレーム間予測を行わない映像符号化方式を採用している場合にそのＭＢ単体でデコードできるので、そのセグメントの優先度を上昇させる（ステップＳ８０３）。すなわち、ストリーム解釈部４０６は、ＩｎｔｒａＭＢのセグメントの優先度が高くなるように設定する。【０１４０】
ステップＳ８０２でＩｎｔｒａＭＢ以外のＭＢであると判断した場合、ストリーム解釈部４０６は、他のデータに基づく予測を用いてデコードする可能性があるので、そのセグメントの優先度を低下させる（ステップＳ８０４）。すなわち、ストリーム解釈部４０６は、ＩｎｔｒａＭＢ以外のＭＢのセグメントの優先度が低くなるように設定する。【０１４１】
なお、図９において、ＶＰをＧＯＢやスライス、ＮＡＬユニット等の他の映像符号化方式固有のセグメント単位に読み替えてもよい。【０１４２】
また、図７〜図９で示した優先度の与え方（優先度の設定方法）は一例であり、例えば、使用者の設定ポリシにより変更しても、同様の効果を得ることができる。【０１４３】
映像バッファ制御部４０７は、バッファ制御において、映像バッファ２０８内のデータのうち、優先度が低いデータ（映像ストリーム）をセグメント単位に破棄したり、又は優先度が低いデータの映像バッファ２０８への入力を停止する。【０１４４】
なお、中継装置４０１は、受信端末１０３が多少の到着順序を吸収できるバッファを備える場合、意図的に優先度の高いデータの送信順序を入れ替えて送信してもよい。また、中継装置４０１は、Ｈ．２６４を用いる場合のように、スライス・ヘッダ内のＰＰＳに基づいてデータがどのシーケンスに属しているかを判断でき、到着順序に依らずデコードできる映像符号化方式等を用いる場合には、意図的に優先度の高いデータの送信順序を入れ替えて送信してもよい。
【産業上の利用可能性】
【０１４５】
本発明は、異なるネットワークを介した映像ストリームの通信を中継する中継装置に適用できる。また、異なるネットワーク間の通信を中継する中継装置を含む通信システムに適用できる。
【図１】
2007105618.tif 000003
【図２】
2007105618.tif 000004
【図３】
2007105618.tif 000005
【図４】
2007105618.tif 000006
【図５】
2007105618.tif 000007
【図６】
2007105618.tif 000008
【図７】
2007105618.tif 000009
【図８】
2007105618.tif 000010
【図９】
2007105618.tif 000011
【国際調査報告】
2007105618.tif 000012
2007105618.tif 000013
2007105618.tif 000014