(57)【要約】【課題】チューナ機器とディスプレー機器間の無線帯域に変動による映像停止及び画質劣化を防ぐ。【解決手段】ディスプレー機器１２１のバッファ監視部１２６は、映像データを蓄積するバッファ１２４の使用状況を監視し、チューナ機器１０５に送信する。バッファ残時間推定部１０６は、バッファの使用状況情報に基づき、バッファ１２４内の映像データの残時間を推定する。無線帯域推定部１０４は、チューナ機器１０５とディスプレー機器１２１間の無線帯域を推定する。コンテンツビットレート制御部１０９は、推定された映像データの残時間と無線帯域とに基づき、ディスプレー機器１２１へ送信する映像データのコンテンツビットレートを制御し、コンテンツビットレート変換部１１０は映像データのコンテンツビットレートを変換して、該映像データをチューナ機器１０５からディスプレー機器１２１に送信する。【選択図】図１
2011009904.tif 000002
【特許請求の範囲】
【請求項１】
所定のコンテンツビットレートの映像データを、無線帯域が変動する無線通信で送信する無線映像配信装置と、
前記無線映像配信装置から受信される映像データを蓄積し、該映像データを読み出して表示する無線映像受信装置と
を備え、
前記無線映像受信装置は、
映像データを蓄積するバッファと、
該バッファの使用状況を監視し、使用状況情報を含むフィードバック情報を前記無線映像配信装置に送信するバッファ監視部と
を有し、
前記無線映像配信装置は、
前記無線映像受信装置からの前記バッファの使用状況情報に基づき、前記バッファ内の映像データの残時間を推定するバッファ残時間推定部と、
前記無線映像配信装置と前記無線映像受信装置間の無線帯域を推定する無線帯域推定部と、
推定された映像データの残時間と無線帯域とに基づき、前記無線映像受信装置へ送信する映像データのコンテンツビットレートを制御するコンテンツビットレート制御部と、
前記無線映像受信装置へ送信する映像データのコンテンツビットレートを、前記コンテンツビットレート制御部で制御されるコンテンツビットレートに変換するコンテンツビットレート変換部と
を有する無線映像配信システム。
【請求項２】
前記バッファの使用状況情報は、前記バッファ内にある映像フレーム数であり、
前記バッファ残時間推定部は、映像フレーム数と、フレーム１枚当たりの時間とに基づき、残時間前記バッファ内の映像データの残時間を推定する請求項１に記載の無線映像配信システム。
【請求項３】
前記コンテンツビットレート制御部は、
推定された無線帯域が、コンテンツビットレートより小さく、かつ、推定された映像データの残時間が予め定められた閾値以上の場合、コンテンツビットレートを変更せず、
推定された無線帯域が、コンテンツビットレートより小さく、かつ、推定された映像データの残時間が前記閾値より小さい場合、該コンテンツビットレートを減少する請求項１に記載の無線映像配信システム。
【請求項４】
前記コンテンツビットレート制御部は、
推定された無線帯域が、コンテンツビットレート以上であり、かつ、推定された映像データの残時間が前記閾値以上の場合、該コンテンツビットレートを初期値まで戻す請求項３に記載の無線映像配信システム。
【請求項５】
前記コンテンツビットレート制御部は、
推定された無線帯域が、コンテンツビットレート以上であり、かつ、推定された映像データの残時間が前記閾値より小さい場合は、コンテンツビットレートを変更しない請求項３に記載の無線映像配信システム。
【請求項６】
前記コンテンツビットレート制御部は、
推定された無線帯域が、コンテンツビットレートより小さく、かつ、推定された映像データの残時間が予め定められた閾値以上の場合、コンテンツビットレートを変更せず、
推定された無線帯域が、コンテンツビットレートより小さく、かつ、推定された映像データの残時間が前記閾値より小さい場合、該コンテンツビットレートを減少し、
推定された無線帯域が、コンテンツビットレート以上であり、かつ、推定された映像データの残時間が前記閾値以上の場合、該コンテンツビットレートを初期値まで戻し、又は、コンテンツビットレートを変更せず、
推定された無線帯域が、コンテンツビットレート以上であり、かつ、推定された映像データの残時間が前記閾値より小さい場合は、コンテンツビットレートを変更しない請求項１に記載の無線映像配信システム。
【請求項７】
前記コンテンツビットレート制御部は、
推定された映像データの残時間が、前記バッファに記憶できる映像データの上限時間を超える場合、映像データの送信を停止する請求項１に記載の無線映像配信システム。
【請求項８】
前記バッファ残時間推定部は、
推定された映像データの残時間と、予め定められた前記バッファの容量と、現時点のコンテンツビットレートで映像データを送信した場合に蓄積されるデータ量とに基づき、前記バッファの上限時間を求める請求項７に記載の無線映像配信システム。
【請求項９】
前記バッファ残時間推定部は、次式により前記バッファの上限時間Ｕ（Ｃ）を求める請求項６に記載の無線映像配信システム。
Ｕ（Ｃ）＝Ｌ＋（Ａ−Ｒ）／Ｃ
ここで、Ｌ：バッファの残時間（秒）、Ａ：バッファの容量（バイト）、Ｒ：残データ量（バイト）、Ｃ：現時点のコンテンツビットレート（バイト／秒）。
【請求項１０】
前記無線映像配信装置は、
前記バッファ残時間推定部が推定した映像データの残時間を時刻に対応して記憶した蓄積データに基づき、所定時間後の前記バッファ内の映像データの残時間を推定するバッファ残時間予測部
をさらに有する請求項１に記載の無線映像配信システム。
【請求項１１】
前記無線帯域推定部は、
前記無線映像受信装置が前記無線映像配信装置から受信するパケットのパケット間隔に基づき、無線帯域を推定する請求項１に記載の無線映像配信システム。
【請求項１２】
前記無線帯域推定部は、
推定された無線帯域を時刻に対応して記憶した第２の蓄積データに基づき、所定時間後の無線帯域を予測する請求項１に記載の無線映像配信システム。
【請求項１３】
前記無線映像配信装置は、
放送される前記映像データをアンテナを介して受信するためのチューナ部
をさらに有する請求項１に記載の無線映像配信システム。
【請求項１４】
所定のコンテンツビットレートの映像データを、無線帯域が変動する無線通信で送信する無線映像配信装置と、無線映像配信装置から受信される映像データを蓄積し、該映像データを読み出して表示する無線映像受信装置とを備えた無線映像配信システムにおけるコンテンツビットレート制御方法であって、
映像データを蓄積する無線映像受信装置のバッファの使用状況を監視し、使用状況情報を含むフィードバック情報を無線映像配信装置に送信するステップと、
無線映像受信装置からのバッファの使用状況情報に基づき、バッファ内の映像データの残時間を推定するステップと、
無線映像配信装置と無線映像受信装置間の無線帯域を推定するステップと、
推定された映像データの残時間と無線帯域とに基づき、無線映像受信装置へ送信する映像データのコンテンツビットレートを制御するステップと、
映像データのコンテンツビットレートを、前記コンテンツビットレートを制御するステップで制御されるコンテンツビットレートに変換して、該映像データを無線映像配信装置から無線映像受信装置に送信するステップと
を含む前記コンテンツビットレート制御方法。
【請求項１５】
第１のコンピュータから、受信される映像データを蓄積し該映像データを読み出して表示する第２のコンピュータへ、所定のコンテンツビットレートの映像データを、無線帯域が変動する無線通信で送信するステップと、
第２のコンピュータから受信される、第２のコンピュータのバッファの使用状況情報に基づき、該バッファ内の映像データの残時間を推定するステップと、
前記無線通信の無線帯域を推定するステップと、
推定された映像データの残時間と無線帯域とに基づき、第２のコンピュータへ送信する映像データのコンテンツビットレートを制御するステップと、
映像データのコンテンツビットレートを、前記コンテンツビットレートを制御するステップで制御されるコンテンツビットレートに変換して、該映像データを第２のコンピュータに送信するステップと
を前記第１のコンピュータに実行させるためのコンテンツビットレート制御プログラムを記憶したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線映像配信システム、コンテンツビットレート制御方法及びコンテンツビットレート制御プログラムを記憶したコンピュータ読み取り可能な記録媒体に係り、特に、チューナ機器とディスプレー機器が分離された無線映像配信システム、該システムにおけるコンテンツビットレート制御方法及びコンテンツビットレート制御プログラムを記憶したコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
テレビ受信機において、チューナ機器とディスプレー機器が分離され、チューナ機器からディスプレー機器へ映像データを無線で送信することが知られている。
また、映像バッファが空になるまでに要する時間を算出することが開示されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２００６−５２１０３５号公報
【特許文献２】特開２００６−０６０８０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
図１７に、課題を説明する模式図を示す。
チューナ機器は、所定のコンテンツビットレート１７０１で映像データをディスプレー機器に無線で送信する。ここで、コンテンツビットレート１７０１はコンテンツ自体のビットレートである。なお、実際には映像フレームごとにコンテンツ自体のビットレートが異なるが、ここでは簡単のため、全てのフレームで同じビットレートとして描いた。無線帯域変動１７０２は、チューナ機器とディスプレー機器間の無線ＬＡＮ環境の帯域変動であり、例えば、ノイズや他の無線ＬＡＮからの干渉、人の横切りやドアの開け閉め、電子レンジの使用などによる無線ＬＡＮ帯域の変動を示す。映像バッファ残時間１７０３は、ディスプレー機器の映像バッファに蓄えられたデータの時間換算の量を示す。単位は、Ｂｙｔｅ（バイト）ではなくＳｅｃ（秒又は時間）や映像フレーム数などである。例えば、３０ｆｐｓ（ｆｒａｍｅ  ｐｅｒ  ｓｅｃ）なら１５枚で０．５秒に相当する。
例えば、チューナ機器とディスプレー機器間の無線区間の帯域が減ることにより遅れが発生する（１７０４）。例えば、コンテンツ送信に映像再生時間以上の送信時間がかかる場合がある。一方、映像バッファからの映像出力は一定であるため、上記遅れによりディスプレー機器の映像バッファ内のデータは少なくなり、やがて映像バッファがバッファアンダーフロー１７０６となりデータがなくなって再生できなくなる場合がある（１７０５）。
なお、本明細書では特に、受信バッファのうち映像専用について注目し、映像バッファと呼ぶこともある。なお、音声や字幕など他のバッファでも同様のことが言える。
【０００５】
図１８に、従来技術及びその課題を説明する模式図を示す。
無線帯域幅の急激な低下が複数回発生する場合に、映像バッファのデータが枯渇することを防ぐために、無線帯域変動に合わせて、コンテンツのビットレートを調整することが知られている。
例えば、無線帯域変動１７０２に合わせてコンテンツビットレート１７０１を制御する（１８０１）。この技術では上述の遅れは解消されるが、帯域にあわせてコンテンツの単位時間あたりのデータ量（ビットレート）を減らしたため、急激な帯域変動に合わせて画質が劣化する（１８０２）。これは、見ている映像の画質が劣化するのがユーザに感知されてしまうこともある。
また、特許文献１の技術では、Ｂ、Ｐフレームを除外したり、１つおきのＩフレームを除外することにより、フレーム落ちによるカクカク表示が生ずる場合がある。
本発明は、以上の点に鑑み、チューナ機器とディスプレー機器間の無線帯域に変動による映像停止及び画質劣化を防ぐ無線映像配信システム、コンテンツビットレート制御方法及びコンテンツビットレート制御プログラムを記憶したコンピュータ読み取り可能な記録媒体を提供することを目的とする。また、本発明は、例えば、部屋間の壁超え配信など無線ＬＡＮの帯域幅に余裕がない状況において、無線帯域幅の急激な低下が複数回発生する場合にも、映像が停止したり、画像が大幅に劣化することを防ぐことを目的のひとつとする。
【課題を解決するための手段】
【０００６】
本発明は、クライアント（ディスプレー機器）の映像バッファ量および無線帯域の変動を監視し、映像バッファのデータ量を予測して、バッファアンダーフローおよび急激で大幅な画質劣化が発生しないように、コンテンツのビットレートを制御する。
本発明は、例えば、チューナ機器とディスプレー機器に分離されたテレビ受信機の機器間を無線ＬＡＮで映像データ（ＭＰＥＧ２またはＨ．２６４のＴＳデータ）を送付するテレビ受信機において、
無線帯域を監視する手段と、
ディスプレー機器の映像バッファ量の受信手段と、
無線帯域の急激な低減の発生頻度および大きさと、映像バッファのデータ残量から換算される残時間を用いてコンテンツのビットレートの減少量を計算する手段と、
ビットレートを制御する手段と、
ビットレートを変換する手段と
を備えることを特徴とする。
上述のテレビ受信機において、ＯＳＤ画像データを映像とは別に送付するテレビ受信機において、ＯＳＤ画像のデータ量と頻度を監視する手段を備えてもよい。
【０００７】
本発明の第１の解決手段によると、
所定のコンテンツビットレートの映像データを、無線帯域が変動する無線通信で送信する無線映像配信装置と、
前記無線映像配信装置から受信される映像データを蓄積し、該映像データを読み出して表示する無線映像受信装置と
を備え、
前記無線映像受信装置は、
映像データを蓄積するバッファと、
該バッファの使用状況を監視し、使用状況情報を含むフィードバック情報を前記無線映像配信装置に送信するバッファ監視部と
を有し、
前記無線映像配信装置は、
前記無線映像受信装置からの前記バッファの使用状況情報に基づき、前記バッファ内の映像データの残時間を推定するバッファ残時間推定部と、
前記無線映像配信装置と前記無線映像受信装置間の無線帯域を推定する無線帯域推定部と、
推定された映像データの残時間と無線帯域とに基づき、前記無線映像受信装置へ送信する映像データのコンテンツビットレートを制御するコンテンツビットレート制御部と、
前記無線映像受信装置へ送信する映像データのコンテンツビットレートを、前記コンテンツビットレート制御部で制御されるコンテンツビットレートに変換するコンテンツビットレート変換部と
を有する無線映像配信システムが提供される。
【０００８】
本発明の第２の解決手段によると、
所定のコンテンツビットレートの映像データを、無線帯域が変動する無線通信で送信する無線映像配信装置と、無線映像配信装置から受信される映像データを蓄積し、該映像データを読み出して表示する無線映像受信装置とを備えた無線映像配信システムにおけるコンテンツビットレート制御方法であって、
映像データを蓄積する無線映像受信装置のバッファの使用状況を監視し、使用状況情報を含むフィードバック情報を無線映像配信装置に送信するステップと、
無線映像受信装置からのバッファの使用状況情報に基づき、バッファ内の映像データの残時間を推定するステップと、
無線映像配信装置と無線映像受信装置間の無線帯域を推定するステップと、
推定された映像データの残時間と無線帯域とに基づき、無線映像受信装置へ送信する映像データのコンテンツビットレートを制御するステップと、
映像データのコンテンツビットレートを、前記コンテンツビットレートを制御するステップで制御されるコンテンツビットレートに変換して、該映像データを無線映像配信装置から無線映像受信装置に送信するステップと
を含む前記コンテンツビットレート制御方法が提供される。
【０００９】
本発明の第３の解決手段によると、
第１のコンピュータから、受信される映像データを蓄積し該映像データを読み出して表示する第２のコンピュータへ、所定のコンテンツビットレートの映像データを、無線帯域が変動する無線通信で送信するステップと、
第２のコンピュータから受信される、第２のコンピュータのバッファの使用状況情報に基づき、該バッファ内の映像データの残時間を推定するステップと、
前記無線通信の無線帯域を推定するステップと、
推定された映像データの残時間と無線帯域とに基づき、第２のコンピュータへ送信する映像データのコンテンツビットレートを制御するステップと、
映像データのコンテンツビットレートを、前記コンテンツビットレートを制御するステップで制御されるコンテンツビットレートに変換して、該映像データを第２のコンピュータに送信するステップと
を前記第１のコンピュータに実行させるためのコンテンツビットレート制御プログラムを記憶したコンピュータ読み取り可能な記録媒体が提供される。
【発明の効果】
【００１０】
本発明によると、チューナ機器とディスプレー機器間の無線帯域に変動による映像停止及び画質劣化を防ぐ無線映像配信システム、コンテンツビットレート制御方法及びコンテンツビットレート制御プログラムを記憶したコンピュータ読み取り可能な記録媒体を提供することができる。また、本発明によると、例えば、部屋間の壁超え配信など無線ＬＡＮの帯域幅に余裕がない状況において、無線帯域幅の急激な低下が複数回発生する場合にも、映像が停止したり、画像が大幅に劣化することを防ぐことができる。
【図面の簡単な説明】
【００１１】
【図１】無線映像配信装置と無線映像受信装置を示した機能モジュール構成図（ブロック図）。
【図２】サーバシステムの構成図。
【図３】クライアントシステムの構成図。
【図４】推定された映像バッファ残時間と無線帯域の状態に応じたコンテンツビットレート制御方法の一例の説明図。
【図５】サーバのフィードバック情報の処理手順を示すフローチャート。
【図６】クライアントのフィードバック手順を示すフローチャート。
【図７】サーバによる無線帯域推定手順を示すフローチャート。
【図８】クライアントによる無線帯域監視手順を示すフローチャート。
【図９】サーバによる映像バッファ残時間の推定手順を示すフローチャート。
【図１０】クライアントによる映像バッファ監視手順を示すフローチャート。
【図１１】サーバによるコンテンツビットレート制御手順を示すフローチャート。
【図１２】フィードバック情報のデータ構造の説明図。
【図１３】帯域推定用ワークテーブルの説明図。
【図１４】推定帯域幅データテーブルの説明図。
【図１５】残時間データテーブルの説明図。
【図１６】コンテンツビットレート履歴テーブルの説明図。
【図１７】課題を説明する模式図。
【図１８】従来技術及びその課題を説明する模式図。
【図１９】本発明の効果を説明する模式図。
【発明を実施するための形態】
【００１２】
１．第１の実施の形態
図１に、無線映像配信装置と無線映像受信装置を示した無線映像配信システム機能モジュール構成図（ブロック図）を示す。
無線映像配信システムは、無線映像配信装置（チューナ＆ストレージ、映像配信部、サーバ）１０５と、無線映像受信装置（パネル、映像表示部、クライアント）１２１とを備える。無線映像配信装置１０５は、放送受信アンテナ１０１と、チューナ１０２と、映像バッファ残時間予測部１０３と、無線帯域推定部１０４と、映像バッファ残時間監視部（バッファ残時間推定部）１０６と、無線ＬＡＮアンテナ１０７と、無線ＬＡＮモジュール１０８と、コンテンツビットレート制御部１０９と、コンテンツビットレート変換部１１０と、録画再生部１１１と、ＨＤＤ（録画データ保存部）１１２とを有する。無線映像受信装置１２１は、無線帯域監視部１２０と、映像表示パネル（ディスプレー）１２２と、デコーダ１２３と、映像バッファ１２４と、Ｄｅｍｕｘ部１２５と、映像バッファ監視部１２６と、無線ＬＡＮモジュール１２７とを有する。
放送受信アンテナ１０１は、地デジやＢＳデジタルなどのアンテナである。チューナ１０２は、地デジやＢＳデジタルなどのチューナである。映像バッファ残時間予測部１０３は、映像バッファ残時間監視部１０６で得たパネル側の映像バッファ１２４の、所定時間経過後の残時間を予測する。例えば、データ送信後の時刻の映像フレーム数を予測する。無線帯域推定部１０４は、無線帯域監視部１２０と連携して、実際に送信できたデータ量から無線映像配信装置１０５と無線映像受信装置１２１間の無線帯域を監視する。映像バッファ残時間監視部１０６は、映像バッファ１２４の残時間を監視する。例えば、映像バッファ残時間監視部１０６は、映像バッファ１２４の残時間を求めるための情報（映像フレーム数等）を受信する。無線ＬＡＮアンテナ１０７は、無線映像受信装置１２１に映像データを配信し、及び、無線映像受信装置１２１からフィードバック情報を受信するためのアンテナである。図のようにアドホック通信（直接通信）でもよいし、無線ＬＡＮルータを介してもよい。無線ＬＡＮモジュール１０８は、無線ＬＡＮアンテナ１０７を介してデータを送受信するためのモジュールである。コンテンツレート制御部１０９は、コンテンツビットレートを指示してコンテンツレート変換１１０を制御する。コンテンツレート変換部１１０は、指示されたレートに従って、コンテンツのビットレートを変換する。録画再生部１１１は、録画時はチューナ１０２からコンテンツレート変換１１０を介したデータをＨＤＤ１１０へ保存する。また、録画再生部１１１は、再生時はＨＤＤ１１０のデータを読み出してコンテンツレート変換１１０へデータを送信する。ＨＤＤ１１２は、録画データを保存する。
【００１３】
無線帯域監視部１２０は、無線帯域に影響するパケット間隔を監視して、無線帯域推定部１０４へフィードバックする。映像表示パネル１２２は、受信した映像データを表示するディスプレーである。デコーダ１２３は、映像・音声・字幕等のデータをデコードし映像データを映像表示パネル１２２に出力する。映像バッファ１２４は、データを蓄積するバッファである。なお、説明の簡単のため、映像ＥＳ（Ｅｌｅｍｅｎｔａｌ  Ｓｔｒｅａｍ）データのバッファのみを示す。実際には全てのＥＳのバッファがあってもよい。Ｄｅｍｕｘ部１２５は、ＴＳ（Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ）データの分離部であり、ＴＳから映像、音声、字幕等のＥＳを分離する。映像バッファ監視部１２６は、映像バッファ１２４を監視して映像バッファ残時間監視部１０６に情報を送付する。無線ＬＡＮモジュール１２７は、無線ＬＡＮアンテナ１０７を介してデータを送受信するためのモジュールである。
図５は、サーバ１０５のフィードバック情報の処理手順を示すフローチャートである。図６は、クライアント１２１のフィードバック手順を示すフローチャートである。
サーバ１０５は、ステップ５０２、５０３、５０４を映像配信が終了するまで繰り返す（ステップ５０１）。ステップ５０２では、サーバ１０５は、映像データのデータパケットをクライアント１２１に送信する。本実施の形態では、一例として、データパケットを帯域推定用に流用する方法で記載している。例えば、データパケットに、無線帯域推定用であることを示すデータ（識別情報）とそのシーケンシャル番号を付加して送信する。これらの情報はクライアント１２１で抽出したあと取り除けるようにする。また、連続するパケットの送出間隔は後述する「無線帯域推定」（ステップ５０８）の指示に従う。初期値は予め定めておくことができる。サーバ１０５は、指示された帯域に応じたパケット間隔でデータを送出する。例えば、帯域が高ければパケット間隔を短くし、帯域が低ければ長くする。そのため単位時間の送信データ量が調整される。なお、データパケットを流用せずに帯域推定用の通常試験用パケットを送出してもよい。この場合には、通常のデータパケットとは別のパケットを生成して送信する。
【００１４】
ここで、図６を参照し、クライアント１２１の処理について説明する。
クライアント１２１は、以下の各処理を映像配信が終了するまで繰り返す（ステップ６０１）。まず、クライアント１２１は、無線ＬＡＮモジュール１２７でサーバ１０５からのパケットを受信する（ステップ６０２）。クライアント１２１（例えば、無線帯域監視部１２０）は、無線帯域監視を実行する（ステップ６０３）。例えば、クライアント１２１は、パケットのヘッダーの取り除き、映像バッファ１２４に格納する際に映像フレームの区切りを検出しフレームごとのデータ量を測定して無線帯域監視をする。ステップ６０３の詳細処理については図８を参照して後に詳細に説明する。
クライアント１２１（例えば、Ｄｅｍｕｘ部１２５）は、パケットのペイロードをＤｅｍｕｘ処理する（ステップ６０４）。パケットのペイロードに格納されているデータはＴＳ（Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ）のデータである。これを各ＥＳ（Ｅｌｅｍｅｎｔａｌ  Ｓｔｒｅａｍ、映像、音声、字幕、データ放送など）に分離するのがＤｅｍｕｘ処理である。クライアント１２１は、Ｄｅｍｕｘ出力を各ＥＳのバッファへ振り分ける（ステップ６０５）。例えば、Ｄｅｍｕｘ処理の結果をＥＳごとに用意されたバッファに格納する。なお、各バッファはリングバッファになっており、空きがあれば格納するが、空きがない場合にはバッファオーバーフローのエラーを発生させて異常処理を行う。例えば、データを捨てて通常動作に戻るなどの処理を行う。本実施の形態はこのエラーを極力発生させないための仕組みを提供する。
クライアント１２１は、映像バッファ１２４を監視する（ステップ６０６）。例えば、映像バッファ１２４内の映像フレーム数、残データ量などのバッファの使用状況情報を求める。ステップ６０６の詳細処理については図１０を参照して後に詳細に説明する。クライアント１２１は、フィードバック情報のデータ構造にシーケンシャル番号および監視時刻を格納する（ステップ６０７）。
【００１５】
図１２に、フィードバック情報のデータ構造の説明図を示す。
フィードバック情報は、クライアント１２１からサーバ１０５へ送られる。図１２は、通信データのペイロード部分のみを示す。フラグ１２０１は、例えば、番号、監視時刻、パケット間隔、バッファ残時間、バッファ残データ量のフィールドの有無を示すフラグである。例えば、フィールドの数に対応したビット数を備え、この例では５ビット分である。存在するデータにビットフィールドは１、存在しないデータのビットフィールドは０とする。番号１２０２は、クライアント１２１の帯域監視で発行されたシーケンシャル番号である。監視時刻１２０３は、クライアント１２１の帯域監視で発行された監視時刻である。パケット間隔１２０４は、測定されたパケット間隔時間である。映像フレーム数１２０５は、バッファ内に存在する映像フレーム数、枚数である。バッファ残データ量１２０６は、バッファ内に存在するデータのデータ量であり、単位はＢｙｔｅあるいはＫＢｙｔｅなどである。
図６の説明に戻り、クライアント１２１は、フィードバック情報をサーバ１０５に送信する（ステップ６０８）。フィードバック情報は、例えば、シーケンシャル番号１２０２、監視時刻１２０３、パケット間隔時間１２０４、バッファ内映像フレーム数１２０５、バッファ残データ量１２０６等を含むことができる。観測できなかったデータは含めないでもよい。
図５に戻り、サーバ１０５における処理の説明に戻る。ステップ５０３では、サーバ１０５は、クライアント１２１からのフィードック情報を受信する。また、ステップ５０４では、サーバ１０５は、受信したフィードバック情報が異常かどうか判定する。例えば、フィードバック情報がデータ構造として壊れている場合や、シーケンシャル番号、監視時刻データが格納されていない場合に、サーバ１０５は異常と判定する。フィードバック情報が異常でない場合（ステップ５０４、Ｎｏ）、無線帯域推定処理（ステップ５０５）、フィードバック情報内に映像フレーム数・残データ量情報が存在するかの確認（ステップ５０６）、コンテンツビットレート制御（ステップ５０７）を実行する。また、フィードバック情報内に映像フレーム数と残データ量の情報が格納されている場合（ステップ５０６、Ｙｅs）、映像バッファ残時間推定を実行する（ステップ５０８）。
【００１６】
無線帯域処理（ステップ５０５）では、例えば、フィードバック情報に含まれるパケット間隔情報に基づきサーバ１０１とクライアント１２１間の無線帯域を推定する。映像バッファ残時間推定（ステップ５０８）では、例えば、映像バッファ１２４の映像データの残時間を推定する。無線帯域推定処理（ステップ５０５）の手順を図７に、映像バッファ残時間推定（ステップ５０８）の手順を図９に示す。各処理は後に詳細に説明する。
図４に、推定された映像バッファ残時間と無線帯域の状態に応じたコンテンツビットレート制御方法の一例の説明図を示す。図１１は、サーバによるコンテンツビットレート制御手順を示すフローチャートである。図４及び図１１を参照して、ステップ５０７のコンテンツビットレート制御を詳細に説明する。
コンテンツレート制御部１０９は、図４の状態マトリックスにしたがって、コンテンツビットレート変換部１１０にビットレートの指示を出す。無線帯域Ｗは、上述の無線帯域推定（ステップ５０５）、より詳細には図７の帯域予測（ステップ７１３）で得られる。映像バッファ内の残時間Ｔ、映像バッファの上限時間Ｕ（Ｃ）は上述のステップ５０８（より詳細には、後述する図９の処理）で得られる。映像バッファの閾値時間Ｌはあらかじめ設定されることができる。
図４の状態マトリクスは、縦方向に推定された無線帯域Ｗの状態を示し、横方向に推定された映像バッファ残時間Ｔの状態を示す。無線帯域の状態は、コンテンツビットレートＣが無線帯域Ｗ以下の場合（４０１）と、コンテンツビットレートＣが無線帯域Ｗより大きい場合（４０２）とでわかれる。例えば、コンテンツビットレートＣが無線帯域Ｗ以下の場合（４０１）は、無線帯域に余裕がある状態であり、一方、コンテンツビットレートＣが無線帯域Ｗより大きい場合（４０２）は、そのコンテンツビットレートＣのデータを遅延なしに送信することができない状態である。
推定された映像バッファ残時間Ｔの状態は、推定された映像バッファ残時間Ｔが映像バッファの閾値時間Ｌより小さい場合（４０３）と、推定された映像バッファ残時間Ｔが映像バッファの閾値時間Ｌ以上でかつ映像バッファの上限時間Ｕ（Ｃ）より小さい場合（４０４）と、推定された映像バッファ残時間Ｔが映像バッファの上限時間Ｕ（Ｃ）以上の場合（４０５）とでわかれる。無線帯域の状態と、推定された映像バッファ残時間の状態との組み合わせにより定まる状態を４０６〜４１１で示す。
【００１７】
コンテンツレート制御部１０９は、まず、無線帯域の状態を判定する（ステップ１１０１）。例えば、図４の状態４０１か状態４０２かを判定する。なお、コンテンツビットレートＣの初期値は変更前のコンテンツのビットレートとする。また、コンテンツレート制御部１０９は、映像バッファの状態を判定する（ステップ１１０２）。例えば、図４の状態４０３、４０４、４０５のいずれであるか判定する。なお、ステップ１１０１と１１０２の順序は逆でもよい。
コンテンツレート制御部１０９は、ステップ１１０１と１１０２の判定結果から、図４の４０６〜４１１の状態を判定する（ステップ１１０３）。各状態では、コンテンツビットレートを以下のように制御する。
状態４０６：ビットレートＣはそのままで送信（ステップ１１０５）。
状態４０７：ビットレートＣをオリジナルまで戻しながら送信（ステップ１１０８）。例えば、ビットレートＣは元のレート（例えば初期値）に戻ったか判定し、コンテンツビットレートＣを元のレートに戻るまで徐々に増大させ、戻ったらそのまま維持する（ステップ１１０８、１１１１、１１１２）。
状態４０８：送信停止（ステップ１１０７）。例えば、バッファーオーバーフローエラーを発行して送信を停止する。
状態４０９：ビットレートＣを減らして送信（Ｔの減少が止まるまでＣを徐々に減らす）（ステップ１１０６）。
状態４１０：ビットレートＣをオリジナルのままで送信（ステップ１１０９）。
状態４１１：送信停止（ステップ１１１０）。例えば、バッファーオーバーフローエラーを発行して送信を停止する。
【００１８】
コンテンツレート制御部１０９は、コンテンツビットレート変換部１１０へ、状態に応じたコンテンツビットレートを指示する（ステップ１１０４）。
状態遷移の例を説明すると、通常の状態は、例えば状態４０７である。このとき、コンテンツビットレートはオリジナルのままである。ここで、サーバ１０５とクライアント１２１間の無線帯域の状態が悪化すると状態４１０に遷移する。状態４１０では、コンテンツビットレートＣは変えず、オリジナルのままで送信する。状態４１０では無線帯域が小さいため、データ送信の遅延がおき、映像バッファ残時間は減っていく。映像バッファ残時間Ｔが閾値時間Ｌを下回ると、状態４０９に遷移し、ビットレートＣを映像バッファ残時間Ｔの減少が止まるまで徐々に減らして、映像データを送信する。
無線帯域が回復すると、状態４０６に遷移する。状態４０６では、減らしたビットレートＣはそのままで送信する。ここではコンテンツビットレートを減らして送信しているので、映像バッファ１２４から出力され表示される単位時間あたりのフレーム数に比べて、映像バッファ１２４に書き込む単位時間あたりのフレーム数が増えるので、映像バッファ残時間は増えていく。映像バッファ残時間が閾値時間Ｌ以上になると、状態４０７に遷移し、ビットレートＣをオリジナルまで徐々に戻しながら、映像データを送信する。
【００１９】
（無線帯域推定）
図１３に、帯域推定用ワークテーブルの説明図を示す。
帯域推定用ワークテーブルは、例えば、無線帯域推定部１０４に記憶される。無線帯域推定部１０４は、フィードバック情報から各情報を抽出して本テーブルに格納する。帯域推定用ワークテーブルは、シーケンシャル番号１３０１と、監視時刻１３０２と、パケット間隔１３０３とが対応して記憶される。
番号１３０１は、クライアント１２１の無線帯域監視部１２０が発行したシーケンシャル番号であり、フィードバック情報から抽出される。順序乱れや抜けが検出できる。監視時刻１３０２は、クライアント１２１の無線帯域監視部１２０が発行した監視時刻であり、フィードバック情報から抽出される。フィードバック情報の伝送遅延の測定ができる。パケット間隔１３０３は、クライアント１２１の無線帯域監視部１２０が観測したパケット間隔時間であり、フィードバック情報から抽出される。間隔の変化が検出できる。帯域推定用ワークテーブルは、受信したフィードバック情報を蓄積する（１３０４）。なお、帯域幅が推定できると古いデータから破棄する。
図１４に、推定帯域幅データテーブルの説明図を示す。
推定帯域幅データテーブルは、例えば、無線帯域推定部１０４に記憶される。無線帯域推定部１０４は、帯域推定用ワークテーブルを用いて推定した帯域幅を本テーブルに格納して、サーバ側に蓄積する。推定帯域幅データテーブルは、推定時刻１４０１と、推定帯域幅１４０２とが対応して記憶される。
推定時刻１４０１は、帯域推定が完了した時刻を示す。推定帯域幅１４０２は、例えばＰａｔｈＬｏａｄ法などで推定した帯域を格納する。帯域の変化や帯域減衰の頻度・減衰間隔からデータ送信タイミングでの帯域が推定される。推定帯域幅データテーブルは、推定した帯域幅を蓄積する（１４０３）。なお、帯域変化や帯域減衰・減衰間隔の算出に用いない古いデータから適宜破棄する。
【００２０】
図７は、サーバによる無線帯域推定手順を示すフローチャートである。図７は、図５の無線帯域推定（ステップ５０８）の詳細フローである。
まず、図７のフローを説明する。本手順は繰り返し呼ばれる度に内部状態を少しずつ遷移させることで処理を進める。状態遷移は「推定休止（初期状態）」→「推定開始」→「推定中」→「推定休止」であり、これを一定間隔や必要に応じて繰り返す。帯域推定は以下の公知の手法（Ｐａｔｈｌｏａｄ、ＰａｔｈＣｈｉｒｐ、ＩＧＩ等）を用いることができる。
・「Ｐａｔｈｌｏａｄ」−Ｍａｎｉｓｈ  Ｊａｉｎ、Ｃｏｎｓｔａｎｔｉｎｏｓ  Ｄｏｖｒｏｌｉｓ−２００２
・「ＰａｔｈＣｈｉｒｐ」−Ｖｉｎａｙ  Ｒｉｂｅｉｒｏ、Ｒｕｄｏｌｆ  Ｒｉｅｄｉ、Ｒｉｃｈａｒｄ  Ｂａｒａｎｉｕｋ、Ｊｉｒｉ  Ｎａｖｒａｔｉｌ、Ｌｅｓ  Ｃｏｔｔｒｅｌｌ−２００３
・「ＩＧＩ（Ｉｎｉｔｉａｌ  Ｇａｐ  Ｉｎｃｒｅａｓｉｎｇ）」−Ｎｉｎｇｎｉｎｇ  Ｈｕ、Ｐｅｔｅｒ  Ｓｔｅｅｎｋｉｓｔｅ−２００３
なお、これに限らず適宜の帯域推定の手法を用いてもよい。
【００２１】
本手順はこのうち、Ｐａｔｈｌｏａｄを例にして手順を示す。下記手法では通常試験用パケットを送信して帯域推定を行うが、実際に送信するデータを用いて推定することで、推定処理を行いながらデータ送信も行うことができる。
まず、無線帯域推定部１０４が、無線帯域推定の状態を判断する（ステップ７０１、７０２）。状態が推定休止であれば（ステップ７０１、Ｙｅｓ）、本フローの処理を終了する（ステップ７０５）。また、状態が推定開始であれば（ステップ７０２、Ｙｅｓ）、ステップ７０６及び７０７を実行する。なお、推定休止から推定開始への状態遷移は本手順の外部でなされる。例えば、タイマーで１秒ごとに、あるいは、映像配信開始直後の場合に、状態をチェックして推定休止であれば推定開始に変更する処理がなされるものとする。
ステップ７０６では、無線帯域推定部１０４は、帯域推定の上限と下限を設定する。なお、推定開始時は、上限は無線モジュール１０８の物理的な上限限界、下限は０に設定する。また、ステップ７０７で、無線帯域推定部１０４は、状態を「推定中」へ遷移する。なお、状態は適宜の記憶部に記憶されることができる。
無線帯域推定部１０４は、設定された上限と下限の中間値をデータパケット送信部（無線ＬＡＮモジュール１０８）へ指示する。例えば、無線帯域推定部１０４は、帯域推定の上限と下限の中間値を算出し、図５の「データパケットの送信」（ステップ５０２）で用いるための推定候補の帯域として指示する。無線ＬＡＮモジュール１０８は上述のステップ５０２において、指示された帯域に応じたパケット間隔でデータを送出する。すなわち、帯域が高ければパケット間隔は短くなり、低ければ長くなる。そのため単位時間の送信データ量が調整される。
無線帯域推定部１０４は、クライアント１２１からのフィードバック情報にパケット間隔情報が存在するか判断する（ステップ７０４）。フィードバック情報のパケット間隔情報１２０４のフィールドにデータが存在する場合（ステップ７０４、Ｙｅｓ）、以下の処理を実行する。
【００２２】
無線帯域推定部１０４は、受信したフィードバック情報のパケット間隔情報（１２０４）と監視時刻情報（１２０３）とシーケンシャル番号（１２０２）を、図１３に示す帯域推定用ワークテーブルに蓄積する（ステップ７０８）。無線帯域推定部１０４は、パケット間隔の判定を行う（ステップ７０９）。例えば、無線帯域推定部１０４は、パケット間隔が前回のデータ（シーケンシャル番号がひとつ前のデータ）に比べて減少しているか、増大しているか、指定された許容誤差範囲内で一致しているか（差が許容誤差範囲内か）を判定する。無線帯域推定部１０４は、パケット間隔が減少していれば、無線帯域に余裕があることを示すため、ステップ７０３で採用した中間値を新たな下限として設定する（ステップ７１０）。一方、無線帯域推定部１０４は、パケット間隔が増大していれば、無線帯域が不足していることを示すため、ステップ７０３で採用した中間値を新たな上限として設定する（ステップ７１１）。
無線帯域推定部１０４は、パケット間隔が許容誤差範囲内で一致したとき（ステップ７０９）、単位時間の送信データ量を推定された帯域とし、推定帯域幅データテーブル（図１４）に推定された帯域（推定帯域幅）１４０２と現時点の時刻（推定時刻）１４０１を格納する（ステップ７１２）。この際、帯域推定用ワークテーブル（図１３）の古いデータは適宜破棄してもよい。無線帯域推定部１０４は、推定帯域幅データテーブル（図１４）に蓄積されたデータを用いて、時刻の未来方向へ外挿してパケットがクライアント１２１に送信される時点での無線帯域を予測する（ステップ７１３）。なお、予測の手法は適宜の手法を用いることができる。これにより図４の「制御方法」における、推定された無線帯域Ｗが得られる。なお、ステップ７１３の処理を省略して、ステップ７１２で推定された帯域を無線帯域Ｗとしてもよい。無線帯域推定部１０４は、推定が完了したため、状態を「推定休止」へ遷移する（ステップ７１４）。
【００２３】
図８は、クライアント１２１による無線帯域監視手順を示すフローチャートである。サーバ１０５とクライアント１２１の無線帯域推定手順は連携する。図８は、図６の無線帯域監視（ステップ６０３）の詳細フローである。
無線帯域監視部１２０は、無線帯域監視用に送付されたパケットを受信すると、パケットのシーケンシャル番号、受信時刻を記録する（ステップ８０１）。無線帯域監視部１２０は、連続する前回のパケットが存在するか判定する（ステップ８０２）。連続するパケットの判定は例えば、受信したパケット内のシーケンシャル番号と、格納しておいたシーケンシャル番号が連続することで判定できる。パケット順序の入れ替えが発生した場合は正常の順序で扱い、一定時間にパケットが到着しなかった場合には無線帯域監視用パケットの欠落として扱う。連続する前回のパケットがなければ、本処理を終了する。
無線帯域監視部１２０は、パケット間隔時間の算出する（ステップ８０３）。例えば、連続する２つのパケットにおいて、前回のパケット受信時刻と今回のパケット受信時刻の差を算出し、パケット間隔時間とする。無線帯域監視部１２０は、フィードバック情報のデータ構造にパケット間隔時間を格納する。例えば、図１２のデータ構造のパケット間隔フィールド１２０４にデータを格納し、フラグ１２０１の該当ビットを立てる。なお、フィードバック情報は、クライアント１２１からサーバ１０５へ送信される（例えば、上述のステップ６０８）。
【００２４】
（映像バッファの残時間推定）
図１５に、残時間データテーブルの説明図を示す。
残時間データテーブルは、サーバ１０５側で蓄積される。例えば、映像バッファ残時間監視部１０６や映像バッファ残時間予測部１０３に記憶されることができる。各情報は、クライアント１２１からのフィードバック情報から抽出して本テーブルに格納される。必ずしもフィードバック情報に含まれているとは限らないので、存在するときだけ格納する。
番号１５０１は、クライアント１２１の無線帯域監視部１２０が発行したシーケンシャル番号である。順序乱れや抜けが検出できる。監視時刻１５０２は、クライアント１２１の無線帯域監視部１２０が発行した監視時刻である。フィードバック情報から抽出される。バッファ残時間１５０３は、フィードバック情報から抽出されたバッファ内映像フレーム数×１フレームあたりの時間（例えば１／３０）で求められる。バッファ残データ量１５０４は、映像バッファ１２４内に存在するデータ量であり、フィードバック情報から抽出される。なお、残時間データの蓄積１５０５は、古いデータから破棄され、リングバッファになっている。
図１０は、クライアント１２１による映像バッファ監視手順を示すフローチャートである。
図６の映像バッファ監視処理（ステップ６０６）の詳細フローである。例えば、映像バッファ監視部１２６が、映像バッファ１２４内の映像フレーム数とバッファ残データ量を求め、フィードバック情報に格納するフローチャートである。
まず、映像バッファ監視部１２６は、初期設定する（ステップ１００１）。例えば、映像フレーム数を０に設定する。映像バッファ監視部１２６は、映像バッファ１２４をスキャンし、映像バッファ１２４内の映像データをサーチする（ステップ１００２）。例えば、映像ＥＳ用のバッファ１２４をスキャンする。バッファを全て処理するまで繰り返す。スキャン中に映像バッファ監視部１２６は、映像フレーム（Ｉ、Ｐ、Ｂフレーム）を検出する。映像フレーム（Ｉ、Ｐ、Ｂフレーム）を検出すると、フレームごとの詳細な監視ができる。あるいは、シーケンスヘッダ（Ｉフレームのみ）を検出すると、ＧＯＰ（Ｇｒｏｕｐ  ｏｆ  Ｐｉｃｔｕｒｅｓ、１５フレームの映像単位、０．５秒分）ごとの比較的大雑把な監視ができる。何を検出するかは予め定めておくことができる。映像バッファ監視部１２６は、映像フレームが検出されるたびにカウントアップして映像フレーム数を計数する（ステップ１００６）。
【００２５】
なお、映像フレーム数を計数する別の方法として、上述のようにスキャンする以外にも映像フレーム検出を、ステップ６０５のＤｅｍｕｘから各ＥＳへ振り分ける際に行うことで、メモリアクセスを減らして高速化することが可能である。
また、映像バッファ監視部１２６は、映像データ量を計数する（ステップ１００３）。本実施の形態のように、映像ＥＳ専用のリングバッファの場合、データの先頭ポインタと最後尾ポインタの位置からデータ量が算出できる。映像バッファ監視部１２６は、フィードバック情報に、映像フレーム数１２０５と映像データ量（バッファ残データ量）１２０６を格納する（ステップ１００４）。なお、フィードバック情報は、クライアント１２１からサーバ１０５へ送信される（例えば、上述のステップ６０８）。
図９は、サーバ１０５による映像バッファ残時間の推定手順を示すフローチャートである。図５の映像バッファ残時間推定処理（ステップ５０８）の詳細フローである。
映像バッファ残時間監視部１０６は、フィードバック情報の映像フレーム数および残データ量を読出す（ステップ９０１）。例えば、フィードバック情報を受信した際にパケットから抽出してもよいし、フィードバック情報を記憶しておき、適宜のタイミングで読み出してもよい。映像バッファ残時間監視部１０６は、映像フレーム数から映像再生の残時間を算出する（ステップ９０２）。例えば、「残時間（秒）＝映像フレーム数／一秒当たりのフレーム数」で算出する。映像バッファ残時間監視部１０６は、残時間および残データ量を残時間データテーブルに蓄積する（ステップ９０３）。例えば、残時間データテーブル（図１５）に、フィードバック情報から抽出したシーケンシャル番号１５０１、監視時刻１５０２とともに、バッファ残時間１５０３およびバッファ残データ量１５０４を格納する。なお、残時間データテーブルはリングバッファになっており、古いデータは破棄（上書き）される。
【００２６】
映像バッファ残時間予測部１０３は、残時間（Ｔ）および残データ量を予測する（ステップ９０４）。例えば、受信されるフィードバック情報は受信した時点で過去のデータとなっており、現時点およびデータ送信するまでに時間がかかる場合には未来の時点の残時間および残データ量を予測する必要がある。この予測のために、図１５の残時間データテーブルに蓄積されたデータを用い、監視時刻１５０２から未来に対して外挿することで予測を行う。また、フィードバック情報の実データと以前の予測データにずれがあった場合には、今回の予測の際にそのずれを加味することで予測性能を高めることも可能である。なお、複数のデータから未来の時点の予測値を求めるには、適宜の手法を用いてもよい。
映像バッファ残時間予測部１０３は、映像バッファの上限時間Ｕ（Ｃ）を算出する（ステップ９０５）。上限時間Ｕ（Ｃ）は、既に映像バッファに蓄積されたデータと、これからコンテンツビットレートＣで送信され蓄積されるデータとの兼ね合いで、以下の（式１）に従って決定される。
Ｕ（Ｃ）＝Ｌ＋（Ａ−Ｒ）／Ｃ      （式１）
ここで、Ｌ：残時間（ｓ）、Ａ：バッファ全容量（ＭＢｙｔｅ）、Ｒ：残データ量（ＭＢｙｔｅ）、Ｃ：現時点のコンテンツビットレート（ＭＢｙｔｅ／ｓ）である。
映像バッファ残時間予測部１０３、映像バッファ残時間監視部１０６は、求められた各データを適宜の記憶部に記憶する。
なお、２画面表示など、複数画面を同時にパネル１２２に表示する場合には、例えば、バッファ１２４は、表示される各映像データ毎の領域を有し、映像データごとに残時間を求めてもよい。また、求められた映像データごとの残時間のうち、最小のものを用いるようにしてもよいし、最大のものを用いるようにしてもよい。最小のものを用いる場合は、２画面表示の停止・画質劣化を防ぐことができ、最大のものを用いる場合は、２画面表示の継続はできなくても少なくともひとつの映像を再生し、その映像の画質劣化を防ぐことができる。
【００２７】
（コンテンツビットレートの記憶）
図１６に、コンテンツビットレート履歴テーブルの説明図を示す。
コンテンツビットレート履歴テーブルは、例えば、コンテンツレート制御部１０９又はコンテンツレート変換部１１０に記憶される。コンテンツビットレート履歴テーブルは、変換時刻１６０１と、ビットレート１６０２が格納される。変換時刻１６０１は、コンテンツビットレートを変換した時刻である。ビットレート１６０２は、コンテンツレート制御部１０９で決定されたコンテンツビットレートの値、又は、コンテンツレート変換部１１０で変換したコンテンツビットレートの値（例えば、Ｍｂｐｓなど）である。コンテンツビットレートデータの蓄積１６０３は、古いデータから破棄され、リングバッファになっている。
【００２８】
（効果の例）
図１９に、本実施の形態の効果を説明する模式図を示す。
上述の通り、サーバ１０５は、コンテンツビットレート１７０１を、無線帯域の状態と映像バッファ量からバッファアンダーフロー抑制するビットレートに制御する（１９０１）。従って、画質の劣化は少ない（１９０２）。無線帯域変動１７０２に直接合わせるのではなく、映像バッファの残時間に余裕がある間は少しだけビットレートを減らして画質劣化を抑える。ビットレート減少をする前に発生した遅れは、ビットレート制御してから徐々に緩和（復活）してゆく（１９０３）。これに伴い、映像バッファ残時間１７０３も徐々に回復する（１９０４）。
【００２９】
２．第２の実施の形態
第１の実施の形態におけるサーバ１０５及びクライアント１２１は、セットトップボックス（ＳＴＢ）やＰＣなどで構成されることもできる。サーバ１０５及びクライアント１２１での各処理は、上述の第１の実施の形態と同様である。これらの各処理はプロセッサ（処理部）２０８、３０７が実行する。また、プロセッサにより実行されるためのプログラム及び上述の各テーブルが、例えば内部記憶部２１１、３１０などの記憶部に記憶される。このプログラムは、記録媒体、ネットワークなどからインストール／アップデートされることができる。
図２に、サーバシステムの構成図を示す。
サーバ２０１は、例えば、ファームウェアアップデート可能なＳＴＢ、あるいはＰＣを用いることができる。また、このようなサーバ２０１に、上述の第１の実施の形態の処理を行うためのソフトウェア、プログラムをインストールし、プロセッサがソフトウェアを実行することで第１の実施の形態の機能を実現する。ソフトウェアのインストール／アップデート方法は、例えば次の３つがある。
（１）記録メディア経由
（２）インターネット／イントラネット経由によるダウンロード
（３）放送ダウンロード（通常のＴＶも対象）
サーバ２０１は、例えば、デジタル放送受信チューナ搭載ＰＣ、あるいはファームウェアアップデート可能なデジタル放送受信機器である。
サーバ２０１は、例えば、プロセッサ２０８と、記憶部２１１と、デジタル放送受信モジュール２１２と、無線ＬＡＮアンテナ２０５と、ＭＡＣ／ＲＦ２０６と、内部バス２０４を有する、また、サーバ２０１は、ビデオ・サウンドモジュール２０２と、ディスプレーとスピーカ２０３と、通信インタフェース２０７と、メディア制御部２０９と、揮発性メモリ２１０とをさらに有してもよい。
【００３０】
ビデオ・サウンドモジュール２０２は、例えば、映像および音声の出力（ＨＤＭＩ等）機能を備える。ディスプレーとスピーカ２０３は、受信した映像データ、音声データを出力する。内部バス２０４は、例えばＰＣの場合、ＰＣＩ−Ｅｘｐｒｅｓｓ等である。無線ＬＡＮアンテナ２０５は、無線ＬＡＮ経由でデータを送受信するためのアンテナである。なお、無線ＬＡＮアンテナ２０５は、例えばＩＥＥＥ８０２．１１ｎ方式の場合、アンテナが３本以上となる場合がある。ＭＡＣ／ＲＦ２０６は、無線ＬＡＮモジュールである。ＭＡＣ／ＲＦ２０６は、入手したファームウェアを無線ＬＡＮ経由でクライアントへ送付してもよい。通信インタフェース２０７は、例えばＥｔｈｅｒｎｅｔカード等であり、Ｗｅｂサイトからファームウェアを入手してインストール／アップデートが可能である。プロセッサ２０８は、例えば、ＰＣの場合のＣＰＵや、ＳＴＢの場合のマイコンである。メディア制御部２０９は、例えば、インタフェースとしてはＵＳＢやＳＡＴＡ等であり、ドライブとしてはＣＤ、ＤＶＤ、ＢＤ、ＳＤカード等である。メディア制御部２０９がメディアにインストール／アップデート用のファームウェアを保存して、そこから読み込むことによってもプログラムの導入／更新が可能である。
揮発性メモリ２１０は、例えばＲＡＭである。内蔵記憶部２１１は、例えば、ＰＣの場合のＨＤＤや、ＳＴＢの場合のＦｌａｓｈＲＯＭなどの不揮発メモリである。デジタル放送受信モジュール２１２は、図示の例では、サーバ２０１に内蔵した構成として記したが、ＵＳＢによる外付けの構成でもよい。デジタル放送受信モジュール２１２は、放送ダウンロードとしてファームウェアを取得し、インストール／アップデートすることが可能である。デジタル放送受信アンテナ２１３は、例えば同軸ケーブルを経由して、デジタル放送受信モジュール２１２と接続される。
【００３１】
図３に、クライアントシステムの構成図を示す。
クライアント３０１では、例えば、ファームウェアアップデート可能なＳＴＢ、あるいはＰＣを用いることができる。また、ソフトウェアのインストール／アップデート方法は、上述と同様に例えば次の３つがある。
（１）記録メディア経由
（２）インターネット／イントラネット経由によるダウンロード
（３）放送ダウンロード（通常のＴＶも対象）
クライアント３０１は、例えば、ＰＣ、あるいはファームウェアアップデート可能なインターネット端末あるいはＤＬＮＡプレーヤである。
クライアント３０１は、例えばプロセッサ３０７と、記憶部３１０と、無線ＬＡＮアンテナ３０４と、ＭＡＣ／ＲＦ３０５と、ビデオ・サウンドモジュール３１１と、ディスプレーとスピーカ３０２と、内部バス３０３を有する、また、クライアント３０１は、通信インタフェース３０６と、メディア制御部３０８と、揮発性メモリ３０９とをさらに有してもよい。
ディスプレーとスピーカ３０２は、受信した映像データ、音声データを出力する。内部バス３０３は、例えばＰＣの場合、ＰＣＩ−Ｅｘｐｒｅｓｓ等である。無線ＬＡＮアンテナ３０４は、無線ＬＡＮ経由でデータを送受信するためのアンテナである。なお、無線ＬＡＮアンテナ３０４は、例えばＩＥＥＥ８０２．１１ｎ方式の場合、アンテナが３本以上となる場合がある。ＭＡＣ／ＲＦ３０５は、無線ＬＡＮモジュールである。ＭＡＣ／ＲＦ３０５は、ファームウェアを無線ＬＡＮ経由でサーバ２０１から入手してもよい。通信インタフェース３０６は、例えばＥｔｈｅｒｎｅｔカード等（Ｅｔｈｅｒｎｅｔは登録商標）である。プロセッサ３０７は、例えば、ＰＣの場合のＣＰＵや、ＳＴＢの場合のマイコンである。メディア制御３０８は、例えば、インタフェースとしてはＵＳＢやＳＡＴＡ等であり、ドライブとしてはＣＤ、ＤＶＤ、ＢＤ、ＳＤカード等である。揮発性メモリ３０９は、例えばＲＡＭである。内蔵記憶部３１０は、例えばＰＣの場合のＨＤＤや、ＳＴＢの場合のＦｌａｓｈＲＯＭなどの不揮発メモリである。ビデオ・サウンドモジュール３１１は、映像および音声の出力（ＨＤＭＩ等）機能を備える。
【００３２】
例えば、サーバ（第１のコンピュータ）２０１から、受信される映像データを蓄積し該映像データを読み出して表示するクライアント（第２のコンピュータ）３０１へ、所定のコンテンツビットレートの映像データを、無線帯域が変動する無線通信で送信するステップと、
クライアント３０１から受信される、クライアント３０１のバッファ（例えば、内部記憶部３１０の映像データを蓄積する領域）の使用状況情報に基づき、該バッファ内の映像データの残時間を推定するステップと、
前記無線通信の無線帯域を推定するステップと、
推定された映像データの残時間と無線帯域とに基づき、クライアント３０１へ送信する映像データのコンテンツビットレートを制御するステップと、
映像データのコンテンツビットレートを、前記コンテンツビットレートを制御するステップで制御されるコンテンツビットレートに変換して、該映像データをクライアント３０１に送信するステップと
を前記サーバ２０１に実行させるためのコンテンツビットレート制御プログラムを記憶したコンピュータ読み取り可能な記録媒体により、上記コンテンツビットレート制御プログラムがサーバ２０１にインストールされることができる。
【００３３】
３．付記
本発明のコンテンツビットレート制御方法は、その各手順をコンピュータに実行させるためのコンテンツビットレート制御プログラム、コンテンツビットレート制御プログラムを記録したコンピュータ読み取り可能な記録媒体、そのプログラムを含みコンピュータの内部メモリにロード可能なプログラム製品、そのプログラムを含むサーバ等のコンピュータ、等により提供されることができる。
【産業上の利用可能性】
【００３４】
本発明は、例えば、チューナ機器とディスプレー機器で無線を介して映像データを送付するテレビ受像機などに利用可能である。
【符号の説明】
【００３５】
１０１  放送受信アンテナ
１０２  チューナ
１０３  映像バッファ残時間予測部
１０４  無線帯域推定部
１０５  チューナ＆ストレージ（映像配信部、サーバ）
１０６  映像バッファ残時間監視部
１０７  無線ＬＡＮアンテナ
１０８  無線ＬＡＮモジュール
１０９  コンテンツレート制御部
１１０  コンテンツレート変換部
１１１  録画再生部
１１２  ＨＤＤ（録画データ保存部）
１２０  無線帯域監視部
１２１  パネル（映像表示部、クライアント）
１２２  映像表示パネル（ディスプレー）
１２３  デコーダ
１２４  映像バッファ
１２５  Ｄｅｍｕｘ（ＴＳデータ（Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ）の分離部
１２６  映像バッファ監視
１２７  無線ＬＡＮモジュール
２０１  サーバ
２０２  ビデオ・サウンドモジュール
２０３  ディスプレー・スピーカ
２０４  内部バス
２０５  無線ＬＡＮアンテナ
２０６  ＭＡＣ／ＲＦ
２０７  通信インタフェース
２０８  プロセッサ
２０９  メディア制御部
２１０  揮発性メモリ
２１１  記憶部
２１２  デジタル放送受信モジュール
３０１  クライアント
３０２  ディスプレー・スピーカ
３０３  内部バス
３０４  無線ＬＡＮアンテナ
３０５  ＭＡＣ／ＲＦ
３０６  通信インタフェース
３０７  プロセッサ
３０８  メディア制御部
３０９  揮発性メモリ
３１０  記憶部
３１１  ビデオ・サウンドモジュール
【図１】
2011009904.tif 000003
【図２】
2011009904.tif 000004
【図３】
2011009904.tif 000005
【図４】
2011009904.tif 000006
【図５】
2011009904.tif 000007
【図６】
2011009904.tif 000008
【図７】
2011009904.tif 000009
【図８】
2011009904.tif 000010
【図９】
2011009904.tif 000011
【図１０】
2011009904.tif 000012
【図１１】
2011009904.tif 000013
【図１２】
2011009904.tif 000014
【図１３】
2011009904.tif 000015
【図１４】
2011009904.tif 000016
【図１５】
2011009904.tif 000017
【図１６】
2011009904.tif 000018
【図１７】
2011009904.tif 000019
【図１８】
2011009904.tif 000020
【図１９】
2011009904.tif 000021