知られている通り、ワイヤレス通信システムは、無線周波数(RF)を割り当てられた1つ以上のチャネルを経由して、直接的(すなわち、ポイント・ツー・ポイント)であれ間接的(すなわち、ワイヤレス通信システム・インフラストラクチャを経由して)であれ、相互に通信する複数のワイヤレス通信デバイスを含む。ポイント・ツー・ポイント・ワイヤレス通信の場合、ワイヤレス通信デバイスは、ポイント・ツー・ポイント通信のために割り当てられたRFチャネルのリストの中からワイヤレス通信デバイスの1つによって選択されたRFチャネルを経由して直接通信する。間接的なワイヤレス通信の場合、ワイヤレス通信デバイスは、基地局(例えばセルラー・ワイヤレス通信システム、ディスパッチ方式のワイヤレス通信システムなどのための)および/またはアクセスポイント(ワイヤレス・ローカルエリアネットワークのための)を含むシステム・インフラストラクチャを経由して通信する。
知られている通り、基地局またはアクセスポイントは、自らのカバレージエリア内のワイヤレス通信デバイスからリクエストを受け取り、別のワイヤレス通信デバイスとの通信を確立する。リクエストを受け取ると、基地局またはアクセスポイントは、相手方のワイヤレス通信デバイスが自らのカバレージエリア内にあるか否か判定する。そうであれば、基地局またはアクセスポイントは、ワイヤレス通信デバイスにその通信に使用できる1つのRFチャネルを与える。そうでなく、相手方のワイヤレス通信デバイスが基地局またはアクセスポイントのカバレージエリア内にない場合、その基地局またはアクセスポイントは、リクエストをワイヤレス通信システムコントローラへ転送する。ワイヤレス通信システムコントローラは、相手方のワイヤレス通信デバイスが連携している基地局またはアクセスポイントを判定する。特定された基地局またはアクセスポイントは、相手方のワイヤレス通信デバイスのために1つのRFチャネルを割り当てる。コントローラによって基地局間またはアクセスポイント間に確立された通信パスを経由して、ワイヤレス通信デバイスは通信可能となる。
知られている通り、ワイヤレス通信デバイスは、セルラー電話、モバイルラジオ、ワイヤレスモデム搭載のパーソナルデジタルアシスタント、ワイヤレスモデム搭載のパーソナルコンピュータ、ワイヤレスモデム搭載のローカルエリアネットワークサーバ、ワイヤレスモデム搭載のコンピュータ、双方向テレビジョン、双方向ホームエンタテイメント機器等々であってよい。これも知られている通り、通信の内容は、ボイスデータ、テキストデータおよび/またはビデオデータであってよい。マルチメディア通信は3つ全部を含むのが代表的であり、ビデオとオーディオが通信の大部分を占めている。
図1は、ワイヤレス通信デバイス間のマルチメディアデータのワイヤレス通信を示す。この図では、ビデオ送信機が、コード化されたビデオデータのパケットをビデオ受信機へ送信する。ビデオ送信機は、ビデオエンコーダ、バッファ、ベースバンドプロセッサ、およびRFトランシーバを含む。ベースバンドプロセッサは、IEEE802仕様に準じたメディア固有のアクセス制御プロトコル(MAC)を実行し、RFトランシーバは、IEEE802仕様に準じた物理層(PHY)の機能を実行する。
ビデオエンコーダは、生のビデオデータおよび/またはオーディオデータを対応するコード化機能に基づいてコード化する。例えば、コード化は、モーションピクチャエキスパーツグループ(MPEG)規格に従ってなされてよい。結果得られるコード化データは、バッファに記憶される。コード化データは、バッファから取得され、ベースバンドプロセッサ経由で処理され、RFトランシーバにより、データパケットとしてワイヤレス通信チャネル経由でビデオ受信機へ転送される。ビデオ受信機は、RFトランシーバ、ベースバンドプロセッサ、バッファ、そしてビデオデコーダを含む。RFトランシーバとベースバンドプロセッサは、ビデオ送信機において対応するデバイスの逆の機能を実行する。取得されたデータは、バッファに記憶され、生データを再生(recapture)するために、必要に応じてビデオデコーダ経由で復号される。
述べた通り、コード化データは、ビデオ送信機により、データパケットとしてワイヤレス通信チャネル経由で転送される。ビデオ受信機のRFトランシーバによって首尾よく受信されたデータパケットごとに、確認通知がビデオ送信機のRFトランシーバへ返送される。確認通知が所与の時間フレーム内に受信されなかった場合、ベースバンドプロセッサ(MAC層)は、データパケットを再送し、確認通知が受信されるまで、または、チャネルがドロップさせられるまで、再送を続ける。典型的には、ビデオ受信機が確認通知を出さなかった場合、その原因は、受信機がパケットに含まれているデータを正確に再生できなかったことにあり、これは通常、パケットエラーと呼ばれている。
受信されるパケットが経由したワイヤレス通信チャネルの品質は、受信機がデータを正確に再生できるか否かに大いに影響する。知られている通り、ビデオ送信機とビデオ受信機の間のワイヤレス通信チャネルの品質が高ければ(すなわち、受信された信号が良い信号対ノイズ比を有するならば)、ビデオ受信機は、自ら受信するパケットのほとんど(全部でないとしても)のデータを正確に再生することができる。RFチャネルの品質が下がるにつれて、信号対ノイズ比は下がり、受信されたパケットからデータを再生する受信機の能力も下がり、それにつれて、パケットエラー率は上がることになる。
パケットエラー率が上がるにつれて、ベースバンドプロセッサ(MAC層)が再送するパケットの数はますます増える。これは、ベースバンドプロセッサがバッファから取得するコード化データの数が減ることを意味する。その結果、バッファに記憶されたデータ量が増加する。データ量がバッファの容量を消費し尽くすと、バッファは飽和(すなわち、オーバフロー)になり、その結果、データが失われ、送信されたビデオに劣化が生じることになる。逆に、パケットエラー率が極めて低いと、ベースバンドプロセッサがバッファから取得するコード化データの数は増える。バッファが空(すなわち、アンダフロー)になると、ビデオ送信は中断され、品質が低下する。
オーバフローまたはアンダフローを回避するため、バッファの目標フィルレート(fill rate)は、バッファを全容量の約50%に保つことである。バッファ・フィルが所定の量(例えば50%より10〜25%上まで)上がるとビデオエンコーダは、バッファ内のデータの量を減らす方向に自らのコード化率を変える。逆に、データフィルレートが50%から10〜25%下がると、ビデオエンコーダは、バッファ内の情報のデータ量を増やそうとする。
従って、バッファは、ビデオ送信機においてオーバフローまたはアンダフローの状態を回避できるサイズでなければならない。パケットエラー率検出がバッファ・フィルを変えるに至るまでに数百パケットを、もしくは数千パケットすら費やすために、バッファのサイズは大きくなっている。集積回路の中に大容量のメモリデバイスを持たせることが、集積回路のサイズを増大させ、集積回路の電力消費を増大させ、そして結局、集積回路のコストを増大させている。
それゆえ、ワイヤレス通信のデータレートをダイナミックに調整し、それによって、許容可能なデータ転送速度を維持するために必要なデータバッファリングの量を減少させるための方法および装置が必要である。
本発明は、図2〜9を参照してより完全に説明することができる。図2は、マルチメディアサーバ12、複数のクライアントモジュール14〜22、および複数のマルチメディアソースを含むワイヤレスマルチメディアシステム10を示す。マルチメディアソースは、ビデオカセットレコーダ(VCR)36、DVDプレーヤ38、デジタルオーディオストレージ40、DVDオーディオプレーヤ42、無線受信機44、CDプレーヤ46、マルチメディアソース24、加入電話回線48、および/または広域通信網接続線50の1つ以上を含む。マルチメディアソース24は、NTSC(合衆国テレビジョン標準化委員会)テレビジョン放送、高品位テレビジョン(HDTV)放送、走査線位相反転(PAL)放送などのための衛星接続、ケーブル接続、アンテナ接続であってよい。クライアントモジュール14〜22は各々、クライアント26〜34の1つに動作結合している。クライアント26〜34は、パーソナルデジタルアシスタント、パーソナルコンピュータ、モニタ(例えば液晶ディスプレイ(LCD)モニタ、フラットパネルモニタ、陰極線管(CRT)モニタなど)であってよく、スピーカ、テレビジョンセット、高品位テレビジョンセット、標準品位テレビジョン、ホームシアターシステムなど、および/または、ラップトップコンピュータを含んでよい。平均的当業者であれば見て分かる通り、クライアントモジュールは、その関連先のクライアントから分離したデバイスであっても、クライアントに内蔵されたデバイスであってもよい。加えて、平均的当業者であれば更に、クライアントモジュール14〜22は個別のコンポーネントおよび/または集積回路を使って実現し得ることも分かるであろう。
マルチメディアサーバ12は、ワイヤレストランスポートチャネル52経由で複数のクライアントモジュールと通信する。ワイヤレストランスポートチャネル52は、無線周波数(RF)通信パス、赤外線通信パス、デバイス間でデータをワイヤレスで運ぶ他の手段、および/または、その組み合わせであってよい。従って、マルチメディアサーバ12とクライアントモジュールの各々は、ワイヤレストランスポートチャネル52経由でデータを運ぶように動作結合した受信機および/または送信機を含む。例えば、ワイヤレストランスポートチャネルがRF通信パスである場合、マルチメディアサーバ12とクライアントモジュールの各々は、無線受信機と無線送信機を含む。
このシステム10において、クライアント26〜34は、マルチメディアソースのいずれか1つからの再生、および/または、いずれか1つへの接続を選択してよい。各クライアントからの選択リクエストは、その対応するクライアントモジュールに提供され、所望のマルチメディアソース、クライアント、所望のサービス、および、リクエストを処理する中でマルチメディアサーバ12を補助する他の何らかの情報を識別する。かくのごとく、1つのクライアントがインターネットにアクセスする一方、別のクライアントが衛星放送チャネルを監視し、更に別のクライアントがCD再生を聴き、そして、更に別のクライアントが電話で話していてよい。図2のワイヤレスマルチメディアシステムの詳細については、同時係属中の「マルチメディアシステムのための方法および装置」と題した特許願(出願日2001年5月24日、出願番号09/864,524)を参照されたい。
図3は、マルチメディアサーバ12およびクライアントモジュール22の概略図である。マルチメディアサーバ12は、処理モジュール60、メモリ62、チャネルミキサ64、これに含まれるバッファ65、送受信モジュール66、同調モジュール68、および制御モジュール70を含む。処理モジュール60は、単一の処理デバイスであっても複数の処理デバイスであってもよい。このような処理デバイスは、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、マイクロコンピュータ、中央処理装置、フィールドプログラマブルゲートアレイ、プログラマブル論理デバイス、ステートマシン、論理回路、アナログ回路、デジタル回路、および/または、動作命令に基づいて信号(アナログおよび/またはデジタル)を扱うどんなデバイスであってもよい。メモリ62は、単一のメモリデバイスであっても複数のメモリデバイスであってもよい。このようなメモリデバイスは、リードオンリーメモリ、ランダムアクセスメモリ、揮発性メモリ、不揮発性メモリ、スタティックメモリ、ダイナミックメモリ、フラッシュメモリ、および/または、デジタル情報を記憶するどんなデバイスであってもよい。注記するならば、処理モジュール60が、ステートマシン、アナログ回路、デジタル回路および/または論理回路を介して自らの機能の1つ以上を実行するとき、対応する動作命令を記憶するメモリには、ステートマシン、アナログ回路、デジタル回路および/または論理回路を包含する回路が埋め込まれる。メモリ62は、図3〜9に示したステップおよび/または機能の少なくとも幾つかに対応する動作命令を記憶し、処理モジュール60がそれを実行する。
動作時、マルチメディアサーバ12の送受信モジュール66は、複数のクライアントモジュール14〜22を経由してリクエストを受信する。このリクエストは、選択リクエスト80として制御モジュール70に提供される。制御モジュール70は、選択リクエスト80のオーセンティシティを検証し、対応するコマンド82を同調モジュール68に提供する。同調モジュール68は、コマンド82に基づき、複数のマルチメディアソースから適当な入力を選択する。選択されたチャネルは、1セットのチャネル84としてチャネルミキサ64に提供される。チャネルミキサ64は、チャネル84のセットを処理し、対応する処理データをバッファ65に記憶させる。チャネルミキサおよび/または同調モジュール68によって実行された処理の1つの形がビデオデータのコード化であってよく、この場合は、コード化されたビデオデータがバッファ65に記憶される。
送受信モジュール66は、バッファ65からの記憶データをチャネルデータ86のストリームとして取得する。送受信モジュール66は、チャネルデータ86のストリームをパケット化し、データパケット92として、データレート94で1つ以上のクライアントモジュールに提供する。
情報がバッファ65に記憶されていく速度は、処理モジュール60によって生じさせられるが、データレート88に左右される。処理モジュール60は、データレート調整フィードバック90に基づいてデータレート88を生じさせるべく、データレート調整プロセス98を実行する。以下、このプロセスを図4〜9に則して詳細に説明する。
ネットワークインタフェース78、クライアントインタフェース76、処理モジュール72およびメモリ74を含むクライアントモジュール22は、データレート調整フィードバック90をパケットレート96以下の速度で生成する。パケットレート96は、データパケット92がクライアントモジュール22に提供されるときの速度に相当する。データレート94は、データパケット92の各パケットに含まれているデータの特定データレートに相当する。例えば、送受信モジュール66内部で使用される変調スキームに応じて、データレート94は、IEEE802.11a規格に従って6メガビット毎秒から54メガビット毎秒まで変化してよく、また、他の種類のワイヤレス通信規格に従って他の速度範囲で変化してもよい。
クライアントモジュール22は、無線トランシーバを含むネットワークインタフェース78を経由してデータパケット92を受信する。クライアントインタフェース76は、特定クライアントにインタフェースを提供し、対応するプロトコルを特定クライアントと共にサポートする。処理モジュール72は、単一の処理デバイスであっても複数の処理デバイスであってもよい。このような処理デバイスは、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、マイクロコンピュータ、中央処理装置、フィールドプログラマブルゲートアレイ、プログラマブル論理デバイス、ステートマシン、論理回路、アナログ回路、デジタル回路、および/または、動作命令に基づいて信号(アナログおよび/またはデジタル)を扱うどんなデバイスであってもよい。メモリ74は、単一のメモリデバイスであっても複数のメモリデバイスであってもよい。このようなメモリデバイスは、リードオンリーメモリ、ランダムアクセスメモリ、揮発性メモリ、不揮発性メモリ、スタティックメモリ、ダイナミックメモリ、フラッシュメモリ、および/または、デジタル情報を記憶するどんなデバイスであってもよい。注記するならば、処理モジュール72が、ステートマシン、アナログ回路、デジタル回路および/または論理回路を介して自らの機能の1つ以上を実行するとき、対応する動作命令を記憶するメモリには、ステートマシン、アナログ回路、デジタル回路および/または論理回路を包含する回路が埋め込まれる。メモリ74は、図3〜9に示したステップおよび/または機能の少なくとも幾つかに対応する動作命令を記憶し、処理モジュール72がそれを実行する。
処理モジュール72は、受信した各パケットをベースにして、および/または、受信したパケッグループをベースにして、データレート調整フィードバック決定プロセス100を実行する。1つのパケットグループまたは個々のパケットを処理するごとに、処理モジュールは、データレート調整フィードバック決定プロセス100に従ってデータレート調整フィードバック90を生成する。以下、データレート調整フィードバック決定プロセス100の機能性を図4〜9を参照して詳細に説明する。
データレート調整フィードバック90は、受信されるデータパケット92が経由するワイヤレストランスポートチャネルの信号対ノイズ比を指示するもの、データレートを増分するリクエスト、データレートを減分するリクエスト、データレートを特定のデータレート値に上げるリクエスト、データレートを特定のデータレート値に下げるリクエスト、および/または、パケットエラー率のランニング平均であってよい。
クライアントモジュールは、データレート調整フィードバック90をパケットレート96以下の速度で(すなわち、パケット・バイ・パケットをベースにして、または、パケットグループ・バイ・パケットグループをベースにして)提供するので、データレート88は、ワイヤレストランスポートチャネルの品質の変化に適合するよう、より迅速に調整され得る。かくのごとく、バッファ65は、従来技術のシステムと比べてはるかに小さいサイズであってよい。バッファ65が小さいので、バッファ65を実現させるのに集積回路が必要とする面積は小さくて足り、その結果、マルチメディアサーバ12の1つ以上のコンポーネントを組み込む集積回路の電力消費は減少し、その全体のサイズは小さくなり、そして、そのコストは下がる。平均的当業者であれば見て分かる通り、クライアントモジュール22は、受信した信号の強度、受信したパケットを指示するもの、受信したパケットの信号対ノイズ比、パケットエラー率、および/または、ワイヤレストランスポートチャネルのクオリティを決定する他の何らかのメカニズムを監視してよい。
図4は、データレート対信号対ノイズ比(SNR)を表すグラフである。必ずしも全部でないとしても、ワイヤレス通信システムでは大抵、許容可能なエラーレベルが与えられる(例えば百万パケット当たり50エラー)。この許容可能なエラーレベルを、データレートおよびSNRを基準として許容可能なエラー率の曲線110として示す。示した通り、信号対ノイズ比が増すにつれて、エラーを許容可能なレベルに維持するデータレートも増加する。それでも、信号対ノイズ比が特定の値に達すると、データレートは、データを生成する回路の処理速度によって制限される。
示した通り、許容可能なエラー率の曲線110は、グラフを2つのセクションに分割する。すなわち、1つはエラーが多すぎるセクション、もう1つはエラーが少なすぎるセクションである。発生するエラーが多すぎるのは、現在の信号対ノイズ比の割にデータレートが大きすぎるときである。この場合、図3に則して言うならば、送受信モジュール66は多くのパケットを再送しなければならず、その結果、バッファ65のフィルレートは充填される。信号対ノイズ比が改善されない場合、または、データレートが下げられない場合、バッファ65はオーバフローになる。
図4に示したグラフの他方の領域は、発生するエラーが少なすぎるときのものである。この領域では、データレートが、所与の信号対ノイズ比にとって最適のレベルより低い。この場合は、チャネルミキサ64によって入力されるより多くのデータが送受信モジュール66によってバッファから取得される。この場合、データレートを上げることができる。平均的当業者であれば分かる通り、ワイヤレストランスポートチャネルを経由するどんなデータ送信でも、信号対ノイズ比は、パケット・バイ・パケットごとに、または同じパケットの送信の内部ですら、かなり変化し得る。この場合、図4に示したデータレート対信号対ノイズ比の曲線は頻繁に変化し、パケットからパケットへと劇的に変化する。
図5は、信号対ノイズ比と時間との関係およびデータレートと時間との関係を表すグラフである。信号対ノイズ比曲線112は、時間と共に変化する形で示してある。従来技術のシステムでは、オーバフローまたはアンダフローの状態を見分けるまでに数百パケットを、もしくは数千パケットを費やしたので、データレートは、信号対ノイズ比曲線112に対応する形で変化しなかった。示した通り、従来技術のデータレートは、信号対ノイズ比曲線112が下がるにつれて、より高いレベルからより低いレベルへと変化するが、曲線112が下がり始める時期について言えば、それはかなり後の方である。同様に、従来技術のデータレートが上がり出すのは、信号対ノイズ比曲線112が上がり始める時期に関して言えば、かなり後の方である。結果として、バッファ・フィルレートは、50%フィルレートからかなり変化する。
図5および6について同時に説明すると、図6は、従来技術ならびに本発明の実施例におけるバッファのフィルレートを50%レベルに関して示す。信号対ノイズ比曲線112が下がるにつれて(図5)、従来技術のデータレート調整は同じままであるが(図5)、バッファ・フィルは増大する。(図6)。従来技術のバッファ・フィルが所定の閾値に達すると(図6)、従来技術のデータレートは下方へ調整される(図5)。この時点で、信号対ノイズ比曲線112が安定するにつれて、バッファ・フィルは下がり始める。信号対ノイズ比曲線が上がるにつれて(図5)、バッファ・フィルは下がり(図6)、従来技術のデータレート調整は一定のままである。
従来技術のシステムにおいてバッファのフィルレートが50%より低い所定の閾値に達すると、従来技術のデータレートは上方へ調整される。このプロセスは、示した通り続き、そこでは、従来技術のバッファのフィルレートは、50%より高い閾値と50%より低い閾値の間を行き来し、対応するデータレートはそれに基づいて調整される。
本発明によれば、データレートは、より緊密に信号対ノイズ比曲線112に追従するように調整され得る。これは、パケットごとのデータレート調整112によって行われても、パケットグループごとの平均データレート調整114によって行われてもよい。パケットごとのデータレート調整112は、図5に、信号対ノイズ比曲線112を追跡する形で示してある。同時に図6について説明すると、バッファ65のフィルレートは、50%基準点に関してほぼ直線状に留まる。従って、バッファ65は、従来技術のバッファと比べてデータレートに関する偏りがはるかに小さいので、はるかに小さいサイズであってよい。例えば、バッファ65と従来技術のバッファの間のバッファ小型化は数%から80%までの範囲内であり得る。
平均データレート調整114は、パケットグループの信号対ノイズ比をベースにし、時間全体にわたって平均化したものである。かくのごとく、平均データレート調整114は信号対ノイズ比曲線112に追従し、パケットごとのデータレート調整112より偏りが捉えにくい。平均的当業者であれば見て分かる通り、図6に示した所望の影響を達成するためにパケットごと、またはパケットグループごとに求めた信号対ノイズ比をベースにしてデータレート調整を決定する他の方法を使用してもよい。
図7は、クライアントモジュール14〜22の概略ブロック図である。クライアントモジュール14〜22は、処理モジュール72、ネットワークインタフェース78、メモリ74、バッファ124、オーディオ/ビデオデコーダ126、およびクライアントインタフェース76を含む。ネットワークインタフェース78は、クライアントモジュールに対する物理層機能を実行するRFトランシーバ120を含む。処理モジュール72は、データレート調整決定モジュール128と、クライアントモジュール22に対するMAC層機能を実行するベースバンドプロセッサ122を提供するように構成されている。動作時、RFトランシーバ120は、関連先のアンテナを経由してデータパケットを受信する。RFトランシーバ120は、信号対ノイズ比モジュール、受信信号強度指示モジュール、および/または、信号強度、信号対ノイズ比および/または信号対妨害比を特定する他のどんな機構を含んでもよく、信号強度指示130を生成する。加えて、RFトランシーバ120は、RFデータパケットをベースバンドデータパケットに変換し、これをベースバンドプロセッサ122に提供する。データレート調整決定モジュール128は、図8または9に示したプロセスの一部を実現させてよく、信号強度指示130に基づいてデータレート調整フィードバック90を決定する。
その代わりに、ベースバンドプロセッサ122は、RFトランシーバ120から受信したベースバンド信号から信号強度を求めてよい。この代替のケースでは、ベースバンドプロセッサ122は、信号強度指示132をデータレート調整決定モジュール128に提供する。信号強度指示132を生成するベースバンドプロセッサ122は、信号対ノイズ比モジュール、受信信号強度指示モジュール、および/または、信号強度を信号対妨害比に関して特定する他のどんな機構を含んでもよい。
データレート調整決定モジュール128は、データレート調整フィードバック90をベースバンドプロセッサ122に提供する。ベースバンドプロセッサ122は、マルチメディア通信システムによって実現させられた特定のワイヤレス通信規格に従ってデータレート調整フィードバック90をコード化および/または変調する。例えば、ベースバンドプロセッサ122は、IEEE802規格の1つに従ってデータレート調整フィードバック90をコード化および/または変調する。ベースバンドプロセッサ122は、コード化および/または変調されたデータレート調整フィードバック90をRFトランシーバ120に提供する。RFトランシーバは、データレート調整フィードバック90のベースバンド表現をRF信号に変換し、これをアンテナ経由でマルチメディアサーバ12へ送信する。
受信されたデータパケットについては、ベースバンドプロセッサ122はこれを復号し、その復号された情報または生の情報をバッファ124に提供する。オーディオ/ビデオデコーダ126は、バッファ124から復号データを取得し、そこから生のビデオデータ134を再生する。生のビデオデータは、RGB情報、YUV情報などであってよい。クライアントインタフェース76は、生データ134を受信し、これをその関連先のクライアント26〜34に提供する。
図8は、ワイヤレスマルチメディアシステムにおいてワイヤレストランスポートチャネルのデータレートをダイナミックに調整する方法を表す論理図である。このプロセスはステップ140から始まり、ここでは、クライアントモジュールが、ワイヤレストランスポートチャネルのチャネル特性を受信パケットレート以下の速度で監視し、それで、チャネル特性の変化を判定する。チャネル特性は、信号対ノイズ比、受信信号強度指示、信号対妨害比、周波数応答、および/または、チャネルの品質に関する情報を提供する他の何らかの測度を含む。その判定は、パケットごとに、または、パケットグループごとに行ってよく、また、受信信号強度指示、スペクトル分析、信号対妨害比計算、受信パケットエラー率計算などを含む多様な方法で行ってよい。
プロセスは次にステップ142へ進み、ここでは、チャネル特性の変化が受信パケットに含まれたデータのデータレートに影響するか否かをクライアントモジュールが判定する。この場合、クライアントモジュールは、パケットまたはパケットグループの現在のチャネル特性を先行のパケットのチャネル特性と比較する。この比較から、チャネル特性の変化が明らかになる。例えば、信号速度がかなり下がれば、その変化はデータレートに影響し得る。逆に、信号対ノイズ比が劇的に上がれば、これもデータレートに影響し得る。信号対ノイズ比とデータレートとの関係が、図5にグラフで示してある。
プロセスは次にステップ144へ進み、ここでは、プロセスは、変化がデータレートに影響するか否かの判定の結果に基づいて分枝する。否であれば、クライアントモジュールは、受信するデータパケットが経由するトランスポートチャネルのチャネル特性を監視し続ける。逆に、変化がデータレートに影響する場合、プロセスはステップ146へ進む。ステップ146では、クライアントモジュールが、データレート調整フィードバックをワイヤレストランスポートチャネル経由でマルチメディアサーバに提供する。データレート調整フィードバックは、データレート増分をリクエストするメッセージであってよく、もしくは、データレート減分を指示するメッセージであってもよい。マルチメディアサーバによるデータレートの増分および/または減分の動作は、所定のステップにおいてマルチメディアサーバでプログラムされた通りに実行される。データレート調整フィードバックも、データレートを特定のデータレート値に上げることをリクエストするメッセージであってよく、もしくは、データレートを特定のデータレート値に下げることを指示するメッセージであってもよい。特定のデータレート値は、すでに信号対ノイズ比に対するデータレートの曲線から求めることができ、更に、実現している特定のワイヤレス通信規格に従って、また、実現している特定のビデオコード化規格に従って求めることができる。例えば、特定のデータレート調整では、54メガビット毎秒から48メガビット毎秒へのシフト、および/または、マルチメディアサーバによって実行されたビデオコード化を基準とするビデオ画質の切替えをリクエストしてよい。
プロセスは次にステップ148へ進み、ここでは、マルチメディアサーバが、ワイヤレストランスポートチャネル経由でクライアントモジュールに運ばれたパケットに含まれているデータのデータレートを調整する。この調整は、データレート調整フィードバックに基づいて実行される。例えば、マルチメディアサーバは、データレート調整フィードバックに含まれた増分値に基づいてデータレートを増分し、データレート調整フィードバックに含まれた減分値に基づいてデータレートを減分する等々を行ってよい。
図9は、ワイヤレスマルチメディアシステムにおいてワイヤレストランスポートチャネルのデータレートをダイナミックに調整する代替方法を示す。プロセスはステップ150から始まり、ここでは、クライアントモジュールが、ワイヤレストランスポートチャネルのチャネル特性を受信パケットレート以下の速度で判定し、それによって、チャネル特性を生成する。チャネル特性の特定は、信号対ノイズ比、周波数応答、および/または、チャネルの性能低下または性能向上を表し得る他の何らかのチャネル特性を特定するために行ってよい。このチャネル特性の特定は、パケットごとに、または、パケットグループごとに行ってよい。例えば、パケット単位の信号対ノイズ比が生成されてよく、もしくは、平均信号対ノイズ比が生成されてもよい。
プロセスは次にステップ152へ進み、ここでは、クライアントモジュールが、チャネル特性に基づいてデータレート調整フィードバックを生成する。データレート調整フィードバックの内容は、提供するチャネル特性(例えば信号対ノイズ比、周波数応答など)から、パケットエラー率、および/または、チャネル特性を指示するその解釈データに至るまで、変化し得る。プロセスは次にステップ154へ進み、ここで、クライアントモジュールはデータレート調整フィードバックをマルチメディアサーバに提供する。データレート調整フィードバックの送信は、パケットごとに、または、パケットグループごとに、所定の時間間隔で、または、任意の時間間隔で行ってよい。プロセスは次にステップ156へ進み、ここでは、マルチメディアサーバがデータレート調整フィードバックを解釈し、それで、ワイヤレストランスポートチャネル経由で運ばれたパケットに含まれているデータのデータレートを調整すべきか否か特定する。
プロセスは次にステップ158へ進み、ここでは、プロセスが、データレートを調整すべきか否かに基づいて分枝する。否であれば、プロセスはステップ150に戻る。逆に、データレートを調整すべきであれば、プロセスはステップ160へ進む。ステップ160において、マルチメディアサーバは、ワイヤレストランスポートチャネル経由で運ばれたパケットのデータレートをその解釈に基づいて調整する。ワイヤレストランスポートチャネルのクオリティに関するフィードバック情報を、パケットごとに、または、パケットグループごとに提供することにより、パケットに含まれているデータのデータレートを調整するループレスポンスは、従来技術の実施例よりはるかに迅速である。かくのごとく、本発明を実現させるときに必要とされるバッファのサイズははるかに小さい。必要とされるバッファの小型化により、その分、集積回路がサポートする必要のあるメモリスペースは小さくなり、その結果、集積回路のサイズは小さくなり、電力消費は減少し、そして、そのコストは下がる。更に、データを運ぶのにチャネルのキャパシティ100%全部を使用しなくてよく、それに応じて調整されたデータレートで足りる。平均的当業者であれば分かる通り、本発明の教示するところから他の実施例を、請求の範囲から逸脱することなく導き出すことができる。