(57)【特許請求の範囲】
【請求項１】
受信側のメディア・デバイスが、受信側レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値をプロビジョニングサーバから受信することと、ここにおいて、前記プロビジョニングサーバは、ネットワークの状態を監視し、前記受信側レート適応アルゴリズムは、前記複数の制御パラメータに基づいて送信側のメディア・デバイスにフィードバックを行うことにより、前記送信側のメディア・デバイスのメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、前記ネットワークの状態に対する前記レート適応アルゴリズムの応答を制御する値を指定し、前記第１の制御パラメータは、
メディアパケット到着とそれの適切にスケジュールされたプレイアウト時間との間の最小許容時間を指定する最小ターゲットプレイアウトマージンと、
メディアパケット到着とそれの適切にスケジュールされたプレイアウト時間との間の時間の上側しきい値を指定する最大ターゲットプレイアウトマージンと、
プレイアウトマージンを測定するためのパーセンタイルを指定するパケット到着時間分布に関するパーセンタイルポイント値と、
前記レート適応アルゴリズムが観察するスライドウィンドウの継続時間を指定し、メディアパケット到着と前記最小ターゲットプレイアウトマージンに関するプレイアウトとの間のマージンを計算する第１のターゲットプレイアウトウィンドウと、
前記レート適応アルゴリズムが観察するスライドウィンドウの継続時間を指定し、メディアパケット到着と前記最大ターゲットプレイアウトマージンに関するプレイアウトとの間のマージンを計算する第２のターゲットプレイアウトウィンドウと、
のうちの１つである、
前記第１の制御パラメータを前記受信された値に設定することと、
を具備する方法。
【請求項２】
受信側レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値をプロビジョニングサーバから受信する受信側レート適応モジュールと、ここにおいて、前記プロビジョニングサーバは、ネットワークの状態を監視し、前記受信側レート適応アルゴリズムは、前記複数の制御パラメータに基づいて送信側のメディア・デバイスにフィードバックを行うことにより、前記送信側のメディア・デバイスのメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、前記ネットワークの状態に対する前記レート適応アルゴリズムの応答を制御する値を指定し、前記第１の制御パラメータは、
メディアパケット到着とそれの適切にスケジュールされたプレイアウト時間との間の最小許容時間を指定する最小ターゲットプレイアウトマージンと、
メディアパケット到着とそれの適切にスケジュールされたプレイアウト時間との間の時間の上側しきい値を指定する最大ターゲットプレイアウトマージンと、
プレイアウトマージンを測定するためのパーセンタイルを指定するパケット到着時間分布に関するパーセンタイルポイント値と、
前記レート適応アルゴリズムが観察するスライドウィンドウの継続時間を指定し、メディアパケット到着と前記最小ターゲットプレイアウトマージンに関するプレイアウトとの間のマージンを計算する第１のターゲットプレイアウトウィンドウと、
前記レート適応アルゴリズムが観察するスライドウィンドウの継続時間を指定し、メディアパケット到着と前記最大ターゲットプレイアウトマージンに関するプレイアウトとの間のマージンを計算する第２のターゲットプレイアウトウィンドウと、
のうちの１つである、
前記複数の制御パラメータのうちの第１の制御パラメータの値を受信し、前記第１の制御パラメータを前記受信された値に設定するクライアントと、
を具備する装置。
【請求項３】
受信側のメディア・デバイスが、受信側レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値をプロビジョニングサーバから受信する手段と、ここにおいて、前記プロビジョニングサーバは、ネットワークの状態を監視し、前記受信側レート適応アルゴリズムは、前記複数の制御パラメータに基づいて送信側のメディア・デバイスにフィードバックを行うことにより、前記送信側のメディア・デバイスのメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、前記ネットワークの状態に対する前記レート適応アルゴリズムの応答を制御する値を指定し、前記第１の制御パラメータは、
メディアパケット到着とそれの適切にスケジュールされたプレイアウト時間との間の最小許容時間を指定する最小ターゲットプレイアウトマージンと、
メディアパケット到着とそれの適切にスケジュールされたプレイアウト時間との間の時間の上側しきい値を指定する最大ターゲットプレイアウトマージンと、
プレイアウトマージンを測定するためのパーセンタイルを指定するパケット到着時間分布に関するパーセンタイルポイント値と、
前記レート適応アルゴリズムが観察するスライドウィンドウの継続時間を指定し、メディアパケット到着と前記最小ターゲットプレイアウトマージンに関するプレイアウトとの間のマージンを計算する第１のターゲットプレイアウトウィンドウと、
前記レート適応アルゴリズムが観察するスライドウィンドウの継続時間を指定し、メディアパケット到着と前記最大ターゲットプレイアウトマージンに関するプレイアウトとの間のマージンを計算する第２のターゲットプレイアウトウィンドウと、
のうちの１つである、
前記第１の制御パラメータを前記受信された値に設定する手段と、
を具備するデバイス。
【請求項４】
実行されると１つまたは複数のプログラマブルプロセッサに、
受信側のメディア・デバイスによって、受信側レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値をプロビジョニングサーバから受信させ、ここにおいて、前記プロビジョニングサーバは、ネットワークの状態を監視し、前記受信側レート適応アルゴリズムは、前記複数の制御パラメータに基づいて送信側のメディア・デバイスにフィードバックを行うことにより、前記送信側のメディア・デバイスのメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、前記ネットワークの状態に対する前記レート適応アルゴリズムの応答を制御する値を指定し、前記第１の制御パラメータは、
メディアパケット到着とそれの適切にスケジュールされたプレイアウト時間との間の最小許容時間を指定する最小ターゲットプレイアウトマージンと、
メディアパケット到着とそれの適切にスケジュールされたプレイアウト時間との間の時間の上側しきい値を指定する最大ターゲットプレイアウトマージンと、
プレイアウトマージンを測定するためのパーセンタイルを指定するパケット到着時間分布に関するパーセンタイルポイント値と、
前記レート適応アルゴリズムが観察するスライドウィンドウの継続時間を指定し、メディアパケット到着と前記最小ターゲットプレイアウトマージンに関するプレイアウトとの間のマージンを計算する第１のターゲットプレイアウトウィンドウと、
前記レート適応アルゴリズムが観察するスライドウィンドウの継続時間を指定し、メディアパケット到着と前記最大ターゲットプレイアウトマージンに関するプレイアウトとの間のマージンを計算する第２のターゲットプレイアウトウィンドウと、
のうちの１つである、
前記第１の制御パラメータを前記受信された値に設定させる、
命令を記憶した非一時的コンピュータ読取可能記録媒体。
【請求項５】
受信側のメディア・デバイスが、受信側レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値をプロビジョニングサーバから受信することと、ここにおいて、前記プロビジョニングサーバは、ネットワークの状態を監視し、前記受信側レート適応アルゴリズムは、前記複数の制御パラメータに基づいて送信側のメディア・デバイスにフィードバックを行うことにより、前記送信側のメディア・デバイスのメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、前記ネットワークの状態に対する前記レート適応アルゴリズムの応答を制御する値を指定し、前記第１の制御パラメータは、輻輳緩和値と輻輳緩和時間値とのうちの１つである、
前記第１の制御パラメータを前記受信された値に設定することと、
を具備する方法。
【請求項６】
受信側レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値をプロビジョニングサーバから受信する受信側レート適応モジュールと、ここにおいて、前記プロビジョニングサーバは、ネットワークの状態を監視し、前記受信側レート適応アルゴリズムは、前記複数の制御パラメータに基づいて送信側のメディア・デバイスにフィードバックを行うことにより、前記送信側のメディア・デバイスのメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、前記ネットワークの状態に対する前記レート適応アルゴリズムの応答を制御するしきい値またはタイミング値を指定し、前記第１の制御パラメータは、輻輳緩和値と輻輳緩和時間値とのうちの１つである、
前記複数の制御パラメータのうちの第１の制御パラメータの値を受信し、前記第１の制御パラメータを前記受信された値に設定するクライアントと、
を具備する装置。
【請求項７】
受信側のメディア・デバイスが、受信側レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値をプロビジョニングサーバから受信する手段と、ここにおいて、前記受信側レート適応アルゴリズムは、前記複数の制御パラメータに基づいて送信側のメディア・デバイスにフィードバックを行うことにより、前記送信側のメディア・デバイスのメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、ネットワーク状態に対する前記レート適応アルゴリズムの応答を制御するしきい値またはタイミング値を指定し、前記第１の制御パラメータは、輻輳緩和値と輻輳緩和時間値とのうちの１つである、
前記第１の制御パラメータを前記受信された値に設定する手段と、
を具備する装置。
【請求項８】
実行されると、１つまたは複数のプログラマブルプロセッサに、
受信側のメディア・デバイスによって、受信側レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値をプロビジョニングサーバから受信させ、ここにおいて、前記受信側レート適応アルゴリズムは、前記複数の制御パラメータに基づいて送信側のメディア・デバイスにフィードバックを行うことにより、前記送信側のメディア・デバイスのメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、ネットワーク状態に対する前記レート適応アルゴリズムの応答を制御する値を指定し、前記第１の制御パラメータは、輻輳緩和値と輻輳緩和時間値とのうちの１つである、
前記第１の制御パラメータを前記受信された値に設定させる、
命令を記憶した非一時的コンピュータ読取可能記録媒体。
【請求項９】
送信側のメディア・デバイスが、送信側レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値をプロビジョニングサーバから受信することと、ここにおいて、前記プロビジョニングサーバは、ネットワークの状態を監視し、前記送信側レート適応アルゴリズムは、受信側のメディア・デバイスからのフィードバックと、前記複数の制御パラメータとに基づいてメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、前記ネットワークの状態に対する前記レート適応アルゴリズムの応答を制御する値を指定し、前記第１の制御パラメータは、
前記レート適応アルゴリズムがターゲット符号化レートをより高いレート限界まで増加させるべきレートを指定するランプアップレートと、
前記レート適応アルゴリズムが前記ターゲット符号化レートをより低いレート限界まで減少させるべきレートを指定するランプダウンレートと、
のうちの１つである、
前記第１の制御パラメータを前記受信された値に設定することと、
を具備する方法。
【請求項１０】
送信側レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値をプロビジョニングサーバから受信する送信側レート適応モジュールと、ここにおいて、前記プロビジョニングサーバは、ネットワークの状態を監視し、前記送信側レート適応アルゴリズムは、受信側のメディア・デバイスからのフィードバックと、前記複数の制御パラメータとに基づいてメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、前記ネットワークの状態に対する前記レート適応アルゴリズムの応答を制御する値を指定し、前記第１の制御パラメータは、
前記レート適応アルゴリズムがターゲット符号化レートをより高いレート限界まで増加させるべきレートを指定するランプアップレートと、
前記レート適応アルゴリズムが前記ターゲット符号化レートをより低いレート限界まで減少させるべきレートを指定するランプダウンレートと、
のうちの１つである、
前記複数の制御パラメータのうちの第１の制御パラメータの値を受信し、前記第１の制御パラメータを前記受信された値に設定するクライアントと、
を具備する装置。
【請求項１１】
送信側のメディア・デバイスが、送信側レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値をプロビジョニングサーバから受信する手段と、ここにおいて、前記プロビジョニングサーバは、ネットワークの状態を監視し、前記送信側レート適応アルゴリズムは、受信側のメディア・デバイスからのフィードバックと、前記複数の制御パラメータとに基づいてメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、前記ネットワークの状態に対する前記レート適応アルゴリズムの応答を制御する値を指定し、前記第１の制御パラメータは、
前記レート適応アルゴリズムがターゲット符号化レートをより高いレート限界まで増加させるべきレートを指定するランプアップレートと、
前記レート適応アルゴリズムが前記ターゲット符号化レートをより低いレート限界まで減少させるべきレートを指定するランプダウンレートと、
のうちの１つである、
前記第１の制御パラメータを前記受信された値に設定する手段と、
を具備する装置。
【請求項１２】
実行されると、１つまたは複数のプログラマブルプロセッサに、
送信側のメディア・デバイスによって、送信側レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値をプロビジョニングサーバから受信させ、ここにおいて、前記プロビジョニングサーバは、ネットワークの状態を監視し、前記送信側レート適応アルゴリズムは、受信側のメディア・デバイスからのフィードバックと、前記複数の制御パラメータとに基づいてメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、前記ネットワークの状態に対する前記レート適応アルゴリズムの応答を制御する値を指定し、前記第１の制御パラメータは、
前記レート適応アルゴリズムがターゲット符号化レートをより高いレート限界まで増加させるべきレートを指定するランプアップレートと、
前記レート適応アルゴリズムが前記ターゲット符号化レートをより低いレート限界まで減少させるべきレートを指定するランプダウンレートと、
のうちの１つである、
前記第１の制御パラメータを前記受信された値に設定させる、
命令を記憶した非一時的コンピュータ読取可能記録媒体。
【請求項１３】
請求項１、５、および９のうちの１つに従う方法をコンピュータに実行させるプログラム。
【請求項１４】
請求項１、５、および９のうちの１つに従う方法をコンピュータに実行させるためのプログラムが記録されたコンピュータ読取可能記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、その各々の内容全体が参照により本明細書に組み込まれる、２００９年６月１６日に出願された米国仮出願第６１／１８７，３９６号の利益を主張し、２００９年８月１０日に出願された米国仮出願第６１／２３２，５６２号の利益をも主張する。
【０００２】
本開示は、デジタル・ビデオ・コーディングに関し、より詳細には、ビデオ・コーディング・レートを制御するための技法に関する。
【背景技術】
【０００３】
デジタル・ビデオ機能は、デジタル・テレビジョン、デジタル・ダイレクト・ブロードキャスト・システム、ワイヤレス通信デバイス、携帯情報端末（ＰＤＡ）、ラップトップ・コンピュータ、デスクトップ・コンピュータ、ビデオ・ゲーム機、デジタル・カメラ、デジタル記録デバイス、セルラーまたは衛星無線電話などを含む、広範囲にわたるデバイスに組み込まれ得る。デジタル・ビデオ・デバイスは、ビデオ・シーケンスを処理することおよび送信することにおいて従来のアナログビデオシステムに勝る著しい改善を与えることができる。
【０００４】
デジタル・ビデオ・シーケンスを符号化するための様々なビデオ符号化規格が確立されている。たとえば、Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＭＰＥＧ）は、ＭＰＥＧ−１、ＭＰＥＧ−２およびＭＰＥＧ−４を含むいくつかの規格を開発した。他の例には、Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｕｎｉｏｎ（ＩＴＵ）−Ｔ  Ｈ．２６３規格、ならびに新生のＩＴＵ−Ｔ  Ｈ．２６４規格およびその相対物、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４、Ｐａｒｔ１０、すなわち、Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）がある。これらのビデオ符号化規格は、圧縮された形でデータを符号化することによって、ビデオ・シーケンスの改善された伝送効率をサポートする。
【０００５】
ビデオ・ストリームに割り振られるコーディング・ビットの数、すなわち、コーディング・レートを調整するために、動的レート適応技法が使用される。コーディング・レートは、符号化ビデオ・シーケンスが、品質要件に準拠すること、および／または、変動するネットワーク状態によって生じる利用可能な帯域幅に合わせて変化することを保証するように調整され得る。いくつかのレート制御技法は、一定のコーディング・レートを生じるように設計され、他のレート制御技法は、一定の品質を生じるように設計される。動的レート適応技法は、コーディング・レートと品質レベルとのバランスをとり、ネットワーク輻輳状態とビデオ・フレーム・コンテンツとに応答し得る。
【発明の概要】
【０００６】
本開示は、動的レート適応アルゴリズム実装形態を管理するための技法について説明する。一般に、使用される特定の動的レート適応アルゴリズムは、デバイス製造業者によって提供される実装形態に従ってデバイスごとに異なり得る。しかしながら、デバイスは、そのデバイス上で動作している実装形態固有の動的レート適応アルゴリズムのパフォーマンスに影響を及ぼす変動する特性を有する任意の数の異なるネットワークのサービスを使用することができる。本明細書で説明する技法によれば、動的レート適応アルゴリズムは、ネットワーク事業者が動的レート適応アルゴリズムの動作を変更するために使用し得るパラメータのセットをエクスポーズする。
【０００７】
一態様では、方法は、メディア・デバイスが、レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値を受信することであって、レート適応アルゴリズムが、ネットワークの状態を監視し、ネットワーク状態と複数の制御パラメータとに基づいてメディア・エンコーダのコーディング・レートを調整し、複数の制御パラメータの各々が、ネットワーク状態に対する前記レート適応アルゴリズムの応答を制御するしきい値またはタイミング値を指定する、受信することを備える。本方法は、第１の制御パラメータを上記値に設定することをさらに備える。
【０００８】
別の態様では、装置は、複数の制御パラメータを備え、ネットワークの状態を監視し、ネットワーク状態と複数の制御パラメータとに基づいてメディア・エンコーダのコーディング・レートを調整するレート適応モジュールであって、複数の制御パラメータの各々が、ネットワーク状態に対するレート適応モジュールの応答を制御するしきい値またはタイミング値を指定する、レート適応モジュールを備える。本装置は、複数の制御パラメータのうちの第１の制御パラメータの値を受信し、第１の制御パラメータをその値に設定するクライアントを備える。
【０００９】
別の態様では、デバイスは、メディア・デバイスが、レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値を受信するための手段であって、レート適応アルゴリズムが、ネットワークの状態を監視し、ネットワーク状態と複数の制御パラメータとに基づいてメディア・エンコーダのコーディング・レートを調整し、複数の制御パラメータの各々が、ネットワーク状態に対する前記レート適応アルゴリズムの応答を制御するしきい値またはタイミング値を指定する、受信するための手段を備える。本デバイスは、第１の制御パラメータを上記値に設定するための手段をさらに含む。
【００１０】
別の態様では、コンピュータ可読記憶媒体は、メディア・デバイスが、レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値を受信することであって、レート適応アルゴリズムが、ネットワークの状態を監視し、ネットワーク状態と複数の制御パラメータとに基づいてメディア・エンコーダのコーディング・レートを調整し、複数の制御パラメータの各々が、ネットワーク状態に対する前記レート適応アルゴリズムの応答を制御するしきい値またはタイミング値を指定する、受信することを１つまたは複数のプログラマブルプロセッサに行わせる命令を備える。命令は、さらに、１つまたは複数のプログラマブルプロセッサに、第１の制御パラメータを上記値に設定させる。
【００１１】
本開示で説明する技法は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せでデジタル・ビデオ装置中に実装され得る。ソフトウェアで実装した場合、ソフトウェアは、プロセッサなどの機械中で実行され得る。ソフトウェアは、本開示によれば、初めに命令として機械可読記憶媒体に記憶され、ビデオ・コーディング・レート適応をサポートするために機械によって実行され得る。
【００１２】
これらの技法の１つまたは複数の例の詳細を添付の図面および以下の説明に記載する。他の特徴、目的、および利点は、説明および図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１３】
【図１】説明する技法に従って動作する例示的なネットワークを示すブロック図。
【図２】本明細書で説明する技法による、例示的なプロビジョニング・サーバを使用して変更可能であるレート適応アルゴリズムを有する例示的なビデオ・サーバおよびビデオ端末を示すブロック図。
【図３】レート適応アルゴリズムを制御するために、説明する技法に従って使用され得る例示的なパラメータのテーブルを示すブロック図。
【図４】説明する技法に従って使用されるプレイアウト・マージンを示す注釈付きグラフ。
【図５】本開示の技法による例示的な輻輳緩和（decongestion）プロセスを示す注釈付きグラフ。
【図６】本開示の技法による、プロビジョニング・サーバおよびメディア端末の例示的な動作を示すフローチャート。
【図７】本開示の技法による、ＵＭＴＳネットワーク中で動作するプロビジョニング・サーバおよびビデオ・サーバの例示的な動作を示すフローチャート。
【図８】本開示の技法による、ＵＭＴＳネットワーク中で動作するＭＴＳＩクライアントの例示的な動作を示すフローチャート。
【発明を実施するための形態】
【００１４】
図１は、例示的なネットワーク２を示すブロック図である。いくつかの例では、ネットワーク２は、３ｒｄ  Ｇｅｎｅｒａｔｉｏｎ  Ｐａｒｔｎｅｒｓｈｉｐ  Ｐｒｏｊｅｃｔ（３ＧＰＰ）規格と本明細書で説明する技法とに従って動作するＵｎｉｖｅｒｓａｌ  Ｍｏｂｉｌｅ  Ｔｅｌｅｐｈｏｎｙ  Ｓｅｒｖｉｃｅ（ＵＭＴＳ）ネットワークを備える。単に例示のために、本明細書の技法についてＵＭＴＳネットワークに関して説明する。しかしながら、本技法は、他の例では他の通信ネットワーク・タイプに適用可能である。
【００１５】
ＵＭＴＳネットワーク２は、通信インターフェース２０を介して通信可能に結合されたコア・ネットワーク４とＵＭＴＳ  Ｔｅｒｒｅｓｔｒｉａｌ  Ｒａｄｉｏ  Ａｃｃｅｓｓ  Ｎｅｔｗｏｒｋ（ＵＴＲＡＮ）５とを含む。コア・ネットワーク４は、パケット交換（ＰＳ）サービスを与え、いくつかの態様では回線交換（ＣＳ）サービスをさらに与え得る。ＰＳおよびＣＳサービスは、認証やローミングなどのモビリティ・サービス、ならびに呼処理サービス、コア・ネットワークシグナリング、課金、コア・ネットワーク４と外部ネットワーク（図示せず）との間のインターネット・ワーキング、および他のサービスを含むことができる。コア・ネットワーク４は、インターネット、統合サービスデジタルネットワーク（ＩＳＤＮ）、および公衆交換電話網（ＰＳＴＮ）（図示せず）など、１つまたは複数のバックボーンネットワークに接続され得る。
【００１６】
通信インターフェース２０は、ＵＴＲＡＮ５にコア・ネットワーク４のサービスへのアクセスを与える。通信インターフェース２０は、Ｉｕ−ｐｓインターフェースを可能にし、いくつかの態様ではＩｕ−ｃｓインターフェースをさらに備え得る。概して、Ｉｕ−ｐｓインターフェースは、パケット交換ネットワークとの通信を可能にするプロトコルを与え、無線ネットワークコントローラ６（「ＲＮＣ６」）をコア・ネットワーク４中のサービングＧＰＲＳサポートノード（ＳＧＳＮ）（図示せず）にリンクし得る。概して、Ｉｕ−ｃｓインターフェースは、回線交換ネットワークとの通信を可能にするプロトコルを与え、ＲＮＣ６をコア・ネットワーク４中の移動交換センター（ＭＳＣ）（図示せず）にリンクし得る。
【００１７】
ＵＴＲＡＮ５は、ワイヤレス通信サービスを与え、図１の例では、通信リンク２２Ａ〜２２Ｂを介してＲＮＣ６に接続される２つの基地局であるノードＢ８ＡおよびノードＢ８Ｂ（「ノードＢ８」）を含む。ノードＢ８は、ワイヤレス・デバイスと通信するためにエア・インターフェースを使用する送受信基地局である。ノードＢ８の各々は、それの構成に従っていくつかのセル（または「セクタ」）をサービスし得る。以下で、ノードＢ８のうちの１つによってサービスされる地理的領域をセルと呼ぶ。いくつかの態様では、ノードＢ８の各々は、サイト・コントローラ、アクセス・ポイント、または他のタイプのワイヤレス・トランシーバ局であり得る。
【００１８】
ＵＴＲＡＮ５において、ノードＢ８は、無線リンク２４Ａ〜２４Ｂを使用してワイヤレスユーザ機器（ＵＥ）１２Ａ〜１２Ｂ（「ＵＥ１２」）に通信可能に結合される。詳細には、ＵＥ１２Ａは、ノードＢ８Ａのセル中にあり、したがって、無線リンク２４Ａを介してデータおよび制御情報をノードＢ８Ａと交換する。同様に、ＵＥ１２Ｂは、ノードＢ８Ｂのセル中にあり、したがって、無線リンク２４Ｂを介してデータおよび制御情報をノードＢ８Ｂと交換する。ＵＥ１２の各々は、ワイヤレス通信デバイスであり、たとえば、携帯電話、たとえば３Ｇワイヤレスカードを有するラップトップまたはデスクトップ・コンピュータ、ワイヤレス対応ネットブック、ビデオ・ゲーム・デバイス、ページャ、個人情報端末（ＰＤＡ）、テレビジョン、またはビデオカメラを備え得る。ＵＥ１２の各々は、特にモバイル呼、ビデオ・ゲーム、ビデオ会議、および電子メールなど、１つまたは複数のアプリケーションを実行する。ＵＥ１２からノード８のうちの１つへの通信はアップリンクとして知られており、ノードＢ８のうちの１つからＵＥ１２への通信はダウンリンクとして知られている。ＲＮＣ６は、ノードＢ８を管理し、ノードＢ８へ／からデータをルーティングし、通信インターフェース２０を介してＵＴＲＡＮ５をコア・ネットワーク４にインターフェースする。いくつかの態様では、ＵＴＲＡＮ５は、様々な構成で配置される追加のＲＮＣとノードＢとを備え得る。
【００１９】
ＵＭＴＳネットワーク２は、パケット交換ネットワークを備え得、その結果、リソースの需要が変化するにつれて異なるユーザ間およびアプリケーション間でリンク・リソースを迅速に再割り当てすることができる。ＵＭＴＳネットワーク２はダウンリンク・パケット・データ・サービスを与える。たとえば、ＵＭＴＳネットワーク２は高速ダウンリンク・パケット・アクセス（ＨＳＤＰＡ）サービスを与え得る。ＨＳＤＰＡサービスは周波数分割複信（ＦＤＤ）モードまたは時分割複信（ＴＤＤ）モードのいずれかで動作し得る。
【００２０】
ＨＳＤＰＡは、無線リンク２４が、以下で共有ダウンリンクと呼ぶ高速ダウンリンク共有チャネル（ＨＳ−ＤＳＣＨ）を備えることを指定する。すなわち、ノードＢ８のうちの１つのセル中のＵＥ１２は、ノードＢによって与えられ、無線リンク２４を介して通信されるＨＳ−ＤＳＣＨを共有する。ノードＢ８は、いずれかの接続されたＵＥ１２が受ける現在の無線状態ならびにその接続されたＵＥ１２のデータ要求に基づいて、対応する共有ダウンリンクをスケジュールする。たとえば、ＵＥ１２ＡがノードＢ８Ａのセルを動き回るにつれて、ジオメトリ、気象、干渉、および他の状態の変化により無線リンク２４Ａの特性は変化する。一例として、セルのエッジにより近いＵＥは、概して、ノードＢ８Ａの送信機に近いＵＥに比較して著しく不十分なリンク状態を有する。システム容量を最適化するために、ノードＢ８Ａのスケジューラは、共有ダウンリンク（すなわち、ＨＳ−ＤＳＣＨ）上で最も高速な送信レートを可能にするので、最良のリンク状態のＵＥをサービスすることを選択する。このチャネル敏感スケジューリングは、より高いレートで共有ダウンリンクからデータを受信することができる端末のほうを選ぶことによって、セルスループットを改善するために複数ＵＥダイバーシティを活用する。
【００２１】
ＵＭＴＳネットワーク２のサービスは、１）会話型（たとえば、ボイス・オーバＩＰ（ＶｏＩＰ）、ビデオ・テレフォニー、ビデオ・ゲーム）、２）ストリーミング（たとえば、マルチメディア、ビデオ・オンデマンド、ウェブ・キャスト）、３）対話型（ウェブ・ブラウジング、ネットワーク・ゲーム、データベース・アクセス）、および４）バックグラウンド（電子メール、ＳＭＳ、ダウンロード）の４つのトラフィック・タイプのためのサービス品質（ＱｏＳ）クラスを指定し得る。ＵＴＲＡＮ５は、ＵＥ１２上で動作しているアプリケーションに必要に応じてＱｏＳレベルを許可する。ノードＢ８は、セル中のすべてのＵＥ１２に公平性を与える必要とＵＥ１２上で動作しているアプリケーションの特定のＱｏＳ要件を満たす必要とによって、システム・スループットおよび容量を最大にする目的を調整する。これらの目的はしばしば競合する。
【００２２】
ノードＢ８のうちの１つに対する共有ダウンリンク負荷は、たとえば、セル中のＵＥ１２のうちの１つが、ＱｏＳ要件を有する新しいマルチメディアまたはデータ・セッションを開始するときに増加し得る。場合によっては、追加のメディアまたはデータ・セッションは、ビデオＲＴＰトラフィックをプリエンプトし得るＶｏＩＰなどのより優先度の高いトラフィックを搬送し得る。別の例として、ＵＥ１２のうちの１つがセルにハンドオフされるとき、および共有ダウンリンク上でＱｏＳを必要とするＵＥ１２のうちの１つがセルのエッジに向かうときに負荷は増加し得る。無線リンクの品質が低下すると、共有ダウンリンクが、セルのエッジに向かうＵＥ１２への送信をサポートすることに、よりコストがかかるようになる。たとえば、ノードＢ８のうちの１つのセルのエッジ上のＵＥ１２に共有ダウンリンク上で高レート低レイテンシＱｏＳを与えなければならないので、ノードＢは、より遅いリンク速度を補償するためにより長い期間の間その特定のＵＥ１２に共有ダウンリンクを割り当てる必要がある。これは、共有ダウンリンクに負荷をかけ、セル中のＵＥ１２のうちの他のＵＥ１２をサービスするための共有ダウンリンクの容量を低減する。
【００２３】
共有ダウンリンクの共有性質により、セル中のＵＥ１２の各々の要件は、セル中のすべてのＵＥ１２のパフォーマンスに影響を及ぼす。これは、セル中のＵＥ１２の一部または全部に与えられるＱｏＳの変動を生じ得る。うまく設計されたＨＳＤＰＡ  ＱｏＳスケジューラは、ＱｏＳと公平性とを与える必要とシステム・スループットを最大にする目的とのバランスをとるが、上記で説明したファクタは、セッション中に端末に許可される実際のＱｏＳの変動に寄与する。ＵＴＲＡＮ５がＵＥ１２のうちの１つのためのアプリケーションに特定のＱｏＳレベル（たとえば、４８ｋｂｐｓデータレート）を許可しているときでも、ＵＴＲＡＮ５は、あらゆる瞬間にそのＵＥ１２にそのＱｏＳレベルを与えることが可能でないことがある。そのような場合、ＵＥ１２は、モビリティによるセル中の他のＵＥ１２に対するそれの相対ロケーションの変化と、他のＵＥ１２によって生じたセル負荷／輻輳とに基づいて、与えられたＱｏＳレベルの変動を経験することになる。
【００２４】
ＨＳＤＰＡは様々なエンド・ツー・エンド・マルチメディア・サービスのサポートを与える。たとえば、リアルタイム・パケット交換サービスでは、ＵＭＴＳネットワーク２は、３ＧＰＰ定義パケット交換会話型（ＰＳＣ）サービス、パケット交換ストリーミング（ＰＳＳ）サービス、およびマルチメディア・ブロードキャスト／マルチメディア・サービス（ＭＢＭＳ）サービスを実装し得る。
【００２５】
さらに、例示的なＵＭＴＳネットワーク２は、インターネット・プロトコル・マルチメディア・システムのためのマルチメディア電話サービス（ＭＴＳＩ）を与え得る。ＭＴＳＩは、http://www.3gpp.org/ftp/Specs/archive/26_series/26.114/26114-7a0.zipにおいて入手可能な「3GPP TS 26.114 V7.10.0」、3rd Generation Partnership Project、Technical Specification Group Services and System Aspects、２００９年において定義されている。以下で詳細に説明するように、ＵＥ１２は、ＭＴＳＩクライアントを備え、したがって、リアルタイム・トランスポート・プロトコル（ＲＴＰ）によってトランスポートされる音声、ビデオおよび／またはテキストをサポートする。
【００２６】
ＵＥ１２Ａは、ビデオ・セッション２８の態様として、ＵＭＴＳネットワーク２を介して、ビデオ・データを含んでいるＲＴＰパケットを、ＭＴＳＩを使用するＵＥ１２Ｂに送り得る。ビデオ・セッション２８は、ビデオ呼、テレビ会議、ストリーミング・ムービー、またはビデオ送信を必要とする他のマルチメディア・セッションであり得る。ＵＥ１２は、ビデオを含むサポートされたメディア・タイプの各々のためのメディア・コーデックを指定する。ＵＥ１２Ａは、様々なビデオ・コーディング規格のいずれかに従って、ライブまたはアーカイブ・ビデオ・フィードであり得るビデオ・ソースから取得されたビデオを符号化するビデオ・エンコーダを含む。本技法は、ＭＰＥＧ−１、ＭＰＥＧ−２、またはＭＰＥＧ−４規格、ＩＴＵ  Ｈ．２６３またはＨ．２６４規格、あるいはＩＳＯ／ＩＥＣ  ＭＰＥＧ−４、Ｐａｒｔ１０規格、すなわち、実質的にＨ．２６４規格と同一であるＡｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）など、様々なビデオ符号化規格のいずれかとともに使用され得る。さらに、ＵＥ１２Ａは、ビデオ・セグメント内でフレームを符号化するためにビデオコーダによって適用されるコーディング・レートを制御する（「ＴＸ側レート適応モジュール１４Ａ」として図示する）送信側レート適応モジュール１４Ａを含む。コーディング・レートは、ビデオ・セグメント中のフレームに割り振られるコーディング・ビットの数を指定する。
【００２７】
送信側レート制御モジュール１４Ａは、ＵＥ１２Ａのビデオ・エンコーダが、変化するネットワーク状態に応答することを可能にする動的レート適応アルゴリズムを採用する。たとえば、送信側レート適応モジュール１４Ａは、符号化されたメディアに割り当てられる帯域幅の低減に応答して、符号化されたメディアのビットレートを減少させるためにビデオ・エンコーダによって使用される量子化パラメータ（ＱＰ）を増加させ得る。符号化されたメディアに割り当てられる帯域幅は、たとえば、ＵＥ１２のうちの受信ＵＥ１２が受ける与えられたＱｏＳレベルの変動により変化し得る。
【００２８】
ＵＥ１２Ｂは、ＵＥ１２Ａからビデオ・セッション２８中に受信されるＲＴＰパケットを受信し、処理し得る。ＵＥ１２Ｂは、共有ダウンリンク上でパケット到着統計を測定する受信機側レート適応モジュール１４Ｂを備える。測定値に基づいて、受信機側レート適応モジュール１４Ｂは、共有ダウンリンク上でのＵＥ１２Ｂのための帯域幅プロビジョンをより密接に適合させるために、送信側レート適応モジュール１４Ａに、それの符号化レート、したがって、それのメディア送信レートをスケールダウンまたはスケールアップするように指示するフィードバック３０を与える。
【００２９】
概して、ユーザ機器ベンダは、ユーザ機器デバイスに固有の最良の適応方法を可能にするために送信側レート適応モジュール１４Ａと受信機側レート適応モジュール１４Ｂとを実装する。その結果、様々な態様におけるＵＴＲＡＮ５は、レート適応モジュール１４の異なるプロプライエタリ実装形態を有するＵＥ１２を含み得る。
【００３０】
本明細書で説明する技法によれば、送信側レート適応モジュール１４Ａは、ＵＥ１２Ａのためのレート適応および符号化アルゴリズムに影響を及ぼす制御パラメータのセットをエクスポーズする。さらに、受信機側レート適応モジュール１４Ｂは、ＵＥ１２Ｂのためのレート適応および符号化アルゴリズムに影響を及ぼす制御パラメータの異なるセットをエクスポーズする。
【００３１】
説明する技法によれば、ＵＴＲＡＮ５は、通信リンク２４Ｃを介してＲＮＣ６に通信可能に結合されたプロビジョニング・サーバ１０をさらに備える。いくつかの態様では、プロビジョニング・サーバ１０は、ブルートゥース、ＩｒＤＡなどの他のワイヤレス・インターフェース、またはユニバーサル・シリアルバス（ＵＳＢ）、ファイアワイヤ、およびＲＳ−２３２などのワイヤード・インターフェースを使用してＵＥ１２をプロビジョニングする。プロビジョニング・サーバ１０は、一般にＵＭＴＳネットワーク２中のコンピュータサーバである。いくつかの態様では、プロビジョニング・サーバ１０は、ＵＥ１２のうちの１つまたは複数とのワイヤード接続をもつラップトップである。いくつかの態様では、プロビジョニング・サーバ１０は、３ＧＰＰ名称によるユーザ機器であり、たとえば、携帯電話、たとえば３Ｇワイヤレスカードを有するラップトップまたはデスクトップ・コンピュータ、ワイヤレス対応ネットブック、個人情報端末（ＰＤＡ）などを備え得る。
【００３２】
プロビジョニング・サーバ１０は、本開示で説明するように、送信側レート適応モジュール１４Ａと受信機側レート適応モジュール１４Ｂとによってエクスポーズされた制御パラメータを変更するために、別々にまたは組合せでＵＥ１２Ａ〜１２Ｂとのプロビジョニング・セッション２６Ａ〜２６Ｂを確立し、それにより、ＵＴＲＡＮ５内で動作するレート適応および符号化アルゴリズムを改変する。このようにして、ＵＥ１２のレート適応および符号化アルゴリズムはプロプライエタリであるが、それにもかかわらず、プロビジョニング・サーバ１０は、ＵＴＲＡＮ５に関する効率、ＱｏＳ、スループット、または他の目的を可能にするために、これらのアルゴリズムの動作を制御する。一例として、プロビジョニング・サーバ１０は、パケット輻輳を検出したことに応答して、プロビジョニング・セッション２６Ａを介して、ビデオ・セッション２８の送信レートを低減するためにビデオ符号化レートを低減するように送信側レート適応モジュール１４Ａに指示し、それにより、ＵＥ１２Ｂが使用する（無線リンク２４Ｂが備える）共有ダウンリンク上のビデオ・セッション２８の負担を低減し得る。この低減は、たとえば、共有ダウンリンクを利用する他のユーザ機器（図示せず）がより一貫したまたはより良いＱｏＳを有することを可能にし得る。
【００３３】
図２は、本明細書で説明する技法による、例示的なプロビジョニング・サーバ１０を使用して変更可能であるレート適応アルゴリズムを有する例示的なビデオ・サーバ４０およびビデオ端末６０を示すブロック図である。
【００３４】
ビデオ・サーバ４０は、図１のＵＥ１２Ａに対応し得る。ビデオ・サーバ４０は、ビデオ・ソース４２と送信クライアント４４とを備える。図２の図示の例示的な態様では、送信クライアント４４はＭＴＳＩクライアントである。送信クライアント４４を以下では送信ＭＴＳＩクライアント４４と呼ぶ。ビデオ・ソース４２は、ビデオカメラなどのビデオキャプチャ・デバイス、または前にキャプチャされたデジタル・ビデオを記憶するビデオアーカイブであり得る。ビデオ・ソース４２はまた、ライブまたはアーカイブ・ビデオ・フィードへのインターフェースであり得る。
【００３５】
送信ＭＴＳＩクライアント４４は、ＭＴＳＩへのビデオ・サーバ４０のインターフェースをサポートし、場合によっては提供し、ビデオ・サーバ４０が会話型音声、テキスト、およびビデオを送信することを可能にする。送信ＭＴＳＩクライアント４４は、他のＭＴＳＩクライアントとのメディアセッションのためのセッション・セットアップおよび制御を処理し、さらに、メディア制御と、メディア符号化／復号と、メディア・データおよび制御データ・トランスポートとを処理する。
【００３６】
送信ＭＴＳＩクライアント４４は、ビデオ・エンコーダ４６と、ビデオ・パケッタイザ４８と、送信側レート適応モジュール５０（「ＴＸ側レート適応モジュール５０」）とを備える。送信ＭＴＳＩクライアント４４は、一般化されたＭＴＳＩクライアントの簡略化された例示的態様である。他の態様では、送信ＭＴＳＩクライアント４４は、ビデオ・デコーダ、テキストおよび音声コーデック、セッション・セットアップおよび制御モジュール、活動化モジュール、またはＭＴＳＩを可能にする他の機能的態様をさらに備え得る。
【００３７】
ビデオ・エンコーダ４６は、上述のように、Ｈ．２６４などの様々なビデオ・コーディング規格のいずれかに従ってビデオ・ソース４２からのビデオを符号化する。ビデオ・パケッタイザ４８は、ビデオ・エンコーダ４６から符号化されたビデオ・セグメントを受信し、送信のために符号化されたビデオ・セグメントを一連のパケットに分割するパケット・ベース・インターフェースである。得られたパケットは、多重化、追加のパケット化、および他の動作など、さらなる処理のために、アプリケーション・レイヤからトランスポート・レイヤや物理レイヤなどの他のレイヤに受け渡され得る。
【００３８】
送信側レート適応モジュール５０は、ビデオ・セグメント内のフレームを符号化するためにビデオ・エンコーダ４６によって適用されるコーディング・レートを制御する。コーディング・レートは、ビデオ・セグメント中のフレームに割り振られるコーディング・ビットの数を指定する。送信側レート適応モジュール５０は、図１の送信側レート適応モジュール１４Ａに対応し得る。
【００３９】
送信側レート適応モジュール５０は、受信クライアント６４などの受信クライアントからフィードバック３１を受信し、コーディング・レートを適宜に増加または減少させることによって応答する。フィードバック３１は、コーディング・レート、受信されたパケットに関する統計、あるいは送信側レート適応モジュール５０がコーディング・レートまたは送信レートを調整するために使用することができる他の情報を変更するためのアクションをとるように送信側レート適応モジュール５０に指示する命令を備え得る。たとえば、送信側レート適応モジュール５０は、コーデック制御メッセージ（ＣＣＭ）の一時的最大メディア・ビット・レート要求（ＴＭＭＢＲ）メッセージと一時的最大メディア・ビット・レート通知（ＴＭＭＢＮ）メッセージとをサポートし得る。
【００４０】
この例示的な態様では、送信側レート適応モジュール５０は、ＭＴＳＩ仕様に従って、送信側レート適応モジュール５０が、受信ビデオ端末が受ける受信状態のＲＴＣＰフィードバックを処理するために使用する拡張されたＲＴＰ制御プロトコル（ＲＴＣＰ）フィードバック受信機構を実装する。ＰＳＳを実装するＵＭＴＳネットワーク２の態様では、送信側レート適応モジュール５０は、受信されたメディア・データについてのビデオ受信機上のバッファ・レベルに関するフィードバック情報を与えるＲＴＣＰネクスト・アプリケーション・データ・ユニット（ＮＡＤＵ）アプリケーション固有機能（ＡＰＰ）パケットをサポートする。
【００４１】
図２において、送信クライアント４４は、ＭＴＳＩビデオ・セッション２９を介してパケット化されたビデオ・データをビデオ端末６０に送る。ビデオ端末６０は、図１のＵＥ１２Ｂに対応し得、受信クライアント６４とビューア６２とを備える。ビューア６２は、ビデオ端末６０のユーザが、ビデオ端末６０によって受信されたビデオを閲覧することを可能にする。ビューア６２は、液晶ディスプレイ（ＬＣＤ）、プロジェクタ、コンピュータモニタ、または他の閲覧構成要素などのスクリーンを備え得る。
【００４２】
受信クライアント６４は、ＭＴＳＩへのビデオ端末６０のインターフェースをサポートし得、場合によっては提供し、ビデオ端末６０が会話型音声、テキスト、およびビデオを受信することを可能にする。図２の図示の例示的な態様では、受信クライアント６４はＭＴＳＩクライアントである。受信クライアント６４を以下では受信ＭＴＳＩクライアント６４と呼ぶ。受信ＭＴＳＩクライアント６４は、他のＭＴＳＩクライアントとのメディアセッションのためのセッション・セットアップおよび制御を処理し、さらに、メディア制御と、メディア符号化／復号と、メディア・データおよび制御データ・トランスポートとを処理する。
【００４３】
受信ＭＴＳＩクライアント６４は、ビデオ・エンコーダ６８と、ビデオ抽出器６６と、受信機側レート適応モジュール７０とを備える。受信ＭＴＳＩクライアント６４は、一般化されたＭＴＳＩクライアントの簡略化された例示的態様である。他の態様では、受信ＭＴＳＩクライアント６４は、ビデオ・エンコーダ、テキストおよび音声コーデック、セッション・セットアップおよび制御モジュール、活動化モジュール、またはＭＴＳＩを可能にする他の機能的態様をさらに備え得る。
【００４４】
ビデオ抽出器６６は、受信ＭＴＳＩクライアント６４が受信したビデオ・パケットからビデオを抽出し、パケット化されたビデオ・ストリームを復元するパケット・ベース・インターフェースである。ビデオ抽出器は、符号化されたビデオ・ストリームをビデオ・デコーダ６８に受け渡し、ビデオ・デコーダ６８は、Ｈ．２６４など、ストリームのための適切なビデオ・コーディング規格に従って符号化されたビデオ・ストリームを復号し、閲覧のために復号されたビデオ・ストリームをビューア６２に送る。
【００４５】
受信機側レート適応モジュール７０は、受信ＭＴＳＩクライアント６４のメディア・パケット受信統計を監視する。受信機側レート適応モジュール７０によって監視される統計は、パケット・ロス率と、パケット・ジッタと、パケット・レイテンシ／遅延とを含み得る。監視されたパケット統計に基づいて、受信機側レート適応モジュール７０は、ビデオ・エンコーダ４６に、ビデオ・サーバ４０のコーディング・レートと、付随して送信レートとを増加または減少させるためにフィードバック３１を生成し、それをビデオ・サーバ４０の送信側レート適応モジュール５０に与える。受信機側レート適応モジュール７０は、コーディング・レート、パケット統計、あるいは送信側レート適応モジュール５０がコーディング・レートまたは送信レートを調整するために使用することができる他の情報を変更するためのアクションをとるように送信側レート適応モジュール５０に指示する命令を備えるフィードバック３１を生成し得る。たとえば、受信機側レート適応モジュール７０はＴＭＭＢＲメッセージとＴＭＭＢＮメッセージとをサポートする。この例示的な態様では、受信機側レート適応モジュール７０は、ＭＴＳＩ仕様に従って、フィードバック３１中で受信状態を送信側レート適応モジュール５０に報告するための拡張されたＲＴＰ制御プロトコル（ＲＴＣＰ）フィードバック機構を実装する。
【００４６】
ＰＳＳを実装するＵＭＴＳネットワーク２の態様では、受信機側レート適応モジュール７０は、受信された符号化されたメディア・データについてのバッファ・レベルに関するフィードバック情報を送信側レート適応モジュール５０に与えるＲＴＣＰネクスト・アプリケーション・データ・ユニット（ＮＡＤＵ）アプリケーション固有機能（ＡＰＰ）パケットを使用し得る。そのような態様では、送信側レート適応モジュール５０は、それの符号化レートを適宜にスケーリング・アップ／ダウンすることによって応答する。
【００４７】
本開示の技法によれば、送信側レート適応モジュール５０はメディア送信者制御パラメータ５１のセットをエクスポーズする。メディア送信者制御パラメータは、たとえば、画質に関係する境界条件を変化させること、タイミング・パラメータを変化させること、およびビデオ・エンコーダ４６のコーディング・レートを決定するために送信側レート適応モジュール５０が使用するスケーリングレートを変更することによって、送信側レート適応モジュール５０の動作に影響を及ぼす。いくつかの態様では、送信側レート適応モジュール５０によってエクスポーズされるメディア送信者制御パラメータ５１は、それらのパラメータの現在値を判断するために読み取られ得る。
【００４８】
同様に、本開示の技法によれば、受信機側レート適応モジュール７０はメディア受信機制御パラメータ７１のセットをエクスポーズする。メディア受信機制御パラメータは、たとえば、パケット・ロス率の計算に関係する境界条件とタイミング条件とを変化させること、タイミング・パラメータを変化させること、ならびに送信側レート適応モジュール５０に与えられるフィードバック３１の性質および範囲を決定するために受信機側レート適応モジュール７０が使用する他の値を変更することによって受信機側レート適応モジュール７０の動作に影響を及ぼす。いくつかの態様では、送信側レート適応モジュール５０によってエクスポーズされるメディア送信者制御パラメータ５１は、それらのパラメータの現在値を判断するために読み取られ得る。
【００４９】
ＭＴＳＩクライアントのための内部符号化およびレート適応アルゴリズムは、しばしばプロプライエタリであり、および／または入手できないことがある。したがって、ビデオ・エンコーダ４６、送信側レート適応モジュール５０、および受信機側レート適応モジュール７０は、従来の方法を使用するネットワーク事業者が制御することができない「ブラック・ボックス」を備え得る。しかしながら、本開示の技法を使用してメディア送信者制御パラメータ５１および／またはメディア受信機制御パラメータ７１のうちの１つまたは複数を変更することによって、ネットワーク事業者は、それぞれ送信側レート適応モジュール５０および／または受信機側レート適応モジュール７０の動作を変更し、したがってビデオ・エンコーダ４６の符号化レートを効果的に変化させることができる。この点において、ネットワーク事業者は、ビデオ・サーバ４０とビデオ端末６０とを含むネットワークのための様々な目的を可能にするために、制御パラメータを「制御ノブ」として使用して「ブラック・ボックス」の動作を変更することができる。したがって、メディア受信機制御パラメータ７１およびメディア送信者制御パラメータ５１は、それぞれビデオ端末６０およびビデオ・サーバ４０が、変化するネットワーク状態に反応するプロセスを構成し、制御する。いくつかの態様では、メディア受信機制御パラメータ７１およびメディア送信者制御パラメータ５１は、ネットワーク事業者によって明示的に改変された場合のみ変化する。そのような態様では、それらのパラメータは、変化するネットワーク状態に応答して変動しない。
【００５０】
プロビジョニング・サーバ１０は、ネットワーク事業者５８（「事業者５８」）が、それぞれメディア送信者制御パラメータ５１およびメディア受信機制御パラメータ７１を変更するために、ビデオ・サーバ４０およびビデオ端末６０とのプロビジョニング・セッション２６Ａ〜２６Ｂを確立することを可能にするユーザ機器である。プロビジョニング・サーバ１０は、事業者５８が、プロビジョニング・サーバ１０に、メディア送信者制御パラメータ５１および／またはメディア受信機制御パラメータ７１を、事業者５８が選択する値に変更させるために対話することができるインターフェース５４を含む。プロビジョニング・サーバ１０は、ビデオ・サーバ４０とビデオ端末６０とを含むネットワーク、たとえば、図１のＵＭＴＳネットワーク２についてのネットワーク統計を収集し、分析するネットワーク・アナライザ５６をさらに含む。いくつかの態様では、ネットワーク・アナライザ５６は、ビデオ・サーバ４０からのメディア送信者制御パラメータ値５１を読み取るためにプロビジョニング・セッション２６Ａを使用し、および／または、ビデオ端末６０からのメディア受信機制御パラメータ値７１を読み取るためにプロビジョニング・セッション２６Ｂを使用する。ネットワーク・アナライザ５６は、それらのパラメータ値を使用して、ビデオ・サーバ４０および／またはビデオ端末６０の現在の構成に照らしてネットワーク状態を分析し、インターフェース５４を介してその分析を事業者５８に与え得る。そのような態様におけるネットワーク・アナライザ５６はまた、インターフェース５４を介してそれらのパラメータ値を事業者５８に与え得る。
【００５１】
メディア送信者制御パラメータ５１とメディア受信機制御パラメータ７１とを変更するためにプロビジョニング・サーバ１０を使用することによって、事業者５８は、帯域幅エクイティ（equity）、最大スループット、または他のそのような目的など、いくつかのネットワーク目的を可能にするために、ビデオ・エンコーダ４６、送信側レート適応モジュール５０、および受信機側レート適応モジュール７０の「ブラック・ボックス」のビヘイビアを変化させることができる。いくつかの態様では、プロビジョニング・サーバ１０は、少なくとも部分的に自律であり、それぞれビデオ・サーバ４０およびビデオ端末６０に異なるメディア送信者制御パラメータ５１およびメディア受信機制御パラメータ７１をプロビジョニングすることによって、変化したネットワーク状態に自動的に応答することができる。
【００５２】
図３は、メディア受信機パラメータ・テーブル８０とメディア送信者パラメータ・テーブル８２とを含む。メディア受信機パラメータ・テーブル８０は、例示的なメディア受信機パラメータ８１Ａ〜８１Ｐ（「メディア受信機パラメータ８１」）を記載する。本開示の技法によれば、例示的な受信機側レート適応モジュール７０は、ネットワーク事業者が、受信機側レート適応モジュール７０の動作、したがってビデオ端末６０とビデオ・サーバ４０との動作に影響を及ぼすことを可能にするために、メディア受信機パラメータ８１のうちの１つまたは複数をエクスポーズする。受信機側レート適応モジュール７０のメディア受信機制御パラメータ７１は、メディア受信機パラメータ８１のうちの１つまたは複数を表し得る。いくつかの態様では、ビデオ端末６０は、ビデオ端末６０を含むネットワークによって与えられる異なるサービス・レベルに対応するメディア受信機パラメータ８１の複数のサブセットを与え得る（メディア受信機パラメータ８１のサービス固有サブセットは互いに交差、すなわち重複し得る）。
【００５３】
このようにして、ネットワーク事業者は、メディア受信機パラメータ８１の他のサービス固有サブセットに影響を及ぼすことなしにメディア受信機パラメータ８１のサービス固有サブセットを改変し得る。たとえば、ビデオ端末６０は、ゴールド・レベル・サービスと、シルバー・レベル・サービスと、ブロンズ・レベル・サービスとを与え得る。ネットワーク事業者は、ビデオ端末６０がブロンズ・サービス・レベルで動作しているとき、ビデオ端末６０のためのネットワークのサービス品質に影響を及ぼすために、ブロンズ・サービス・レベルに対応するメディア受信機パラメータ８１のサブセットを改変し得る。以下の段落では、メディア受信機パラメータ８１の各々について説明する。いくつかの態様では、メディア受信機パラメータ８１のうちの時間に関係するパラメータはミリ秒で表される。
【００５４】
ＰＬＲ＿ＭＡＸ８１Ａは、ビデオ端末６０によって受信されないパケットの割合の統計的測定値であるパケット・ロス率（ＰＬＲ）の上側しきい値を指定する。ＰＬＲは、ＲＴＰパケットに関して測定され得る。いくつかの態様では、ＰＬＲは、ＲＴＰパケットの適切にスケジュールされたプレイアウトに間に合うように到着しないＲＴＰパケットを（損失として）含む。ＰＬＲがＰＬＲ＿ＭＡＸ８１Ａを上回るとき、受信機側レート適応モジュール７０は、パケット・ロス率を低減するように送信側レート適応モジュール５０に指示する。
【００５５】
ＰＬＲ＿ＬＯＷ８１Ｂは、ＰＬＲの下側しきい値を指定する。ＰＬＲがＰＬＲ＿ＬＯＷ８１Ｂを下回るとき、受信機側レート適応モジュール７０は、メディア送信レートを増加させるように送信側レート適応モジュール５０に指示する。
【００５６】
ＰＬＲ＿Ｍ＿ＷＩＮＤＯＷ＿ＭＡＸ８１Ｃは、受信機側レート適応モジュール７０が、ＰＬＲ＿ＭＡＸ８１Ａと比較する目的でＰＬＲを観測し、計算するスライディング・ウィンドウの継続時間を指定する。
【００５７】
ＰＬＲ＿Ｍ＿ＷＩＮＤＯＷ＿ＬＯＷ８１Ｄは、受信機側レート適応モジュール７０が、ＰＬＲ＿ＭＩＮ８１Ｂと比較する目的で観測し、計算するスライディング・ウィンドウの継続時間を指定する。過剰なパケット・ロスは、受信機側レート適応モジュール７０による迅速な応答を必要とし得る緊急状態であるので、ＰＬＲ＿Ｍ＿ＷＩＮＤＯＷ＿ＭＡＸ８１Ｃは、ＰＬＲ＿Ｍ＿ＷＩＮＤＯＷ＿ＬＯＷ８１Ｄとは別に指定される。その結果、ネットワーク事業者は、ＰＬＲ＿Ｍ＿ＷＩＮＤＯＷ＿ＭＡＸ８１Ｃのより短い観測ウィンドウ値を所望し得る。低いパケット・ロス率は必ずしも緊急状態ではなく、ネットワーク事業者は、ネットワーク状態が、メディア送信レートを増加させることを試みるのに十分に安定していることを確実にするために、ＰＬＲ＿Ｍ＿ＷＩＮＤＯＷ＿ＬＯＷ８１Ｄのより長い観測ウィンドウ値を使用し得る。
【００５８】
ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＭＩＮ８１Ｅは、メディア・パケット到着とそれの適切にスケジュールされたプレイアウト時間との間の最小許容時間を指定する。その時間は、パケット到着分布の（以下で説明するＸ＿ＰＥＲＣＥＮＴＩＬＥ８１Ｇによって指定される）Ｘパーセンタイル点に対するプレイアウト時間から測定される。ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＭＩＮ８１Ｅが満たされないとき、受信機側レート適応モジュール７０は、メディア・パケットのよりタイムリーな到着を可能にするためにメディア送信レートを低減するように送信側レート適応モジュール５０に指示し得る。ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＭＩＮ８１Ｅについては、図４に関して以下でさらに詳細に説明する。
【００５９】
ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＨＩ８１Ｆは、メディア・パケット到着とそれの適切にスケジュールされたプレイアウト時間との間の時間の上側（最大）しきい値を指定する。その時間は、パケット到着分布の（以下で説明するＸ＿ＰＥＲＣＥＮＴＩＬＥ８１Ｇによって指定される）Ｘパーセンタイル点に対するプレイアウト時間から測定される。ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＨＩ８１Ｆを上回るとき、受信機側レート適応モジュール７０は、メディア品質、たとえば、ビデオ画質を改善するためにメディア送信レートを増加させるように送信側レート適応モジュール５０に指示し得る。ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＨＩ８１Ｆについては、図４に関して以下でさらに詳細に説明する。
【００６０】
Ｘ＿ＰＥＲＣＥＮＴＩＬＥ８１Ｇは、ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＭＩＮ８１ＥとＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＨＩ８１Ｆとともに使用されるパケット到着分布のＸパーセンタイル点を指定する。
【００６１】
ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿Ｍ＿ＷＩＮＤＯＷ＿ＭＩＮ８１Ｈは、受信機側レート適応モジュール７０がメディア・パケット到着とプレイアウトとの間のマージンを観測し、計算するスライディング・ウィンドウの継続時間を指定する。受信機側レート適応モジュール７０は、ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿Ｍ＿ＷＩＮＤＯＷ＿ＭＩＮ８１Ｈの計算されたマージンをＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＭＩＮ８１Ｅと比較する。
【００６２】
ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿Ｍ＿ＷＩＮＤＯＷ＿ＨＩ８１Ｉは、受信機側レート適応モジュール７０がメディア・パケット到着とプレイアウトとの間のマージンを観測し、計算するスライディング・ウィンドウの継続時間を指定する。受信機側レート適応モジュール７０は、ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿Ｍ＿ＷＩＮＤＯＷ＿ＨＩ８１Ｉの計算されたマージンをＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＨＩ８１Ｆと比較する。
【００６３】
ＰＬ＿ＢＵＲＳＴ８１Ｊは、パケット・ロスの上側（最大）しきい値数を指定する。パケット・ロスが、ＰＬ＿ＢＵＲＳＴ＿ＷＩＮＤＯＷ８１Ｋによって指定される継続時間にわたってＰＬ＿ＢＵＲＳＴ８１Ｊを上回るとき、受信機側レート適応モジュール７０は、バースト的パケット・ロス状態に適応するためにメディア送信レートを低減するように送信側レート適応モジュール５０に指示する。
【００６４】
ＰＬ＿ＢＵＲＳＴ＿ＷＩＮＤＯＷ８１Ｋは、受信機側レート適応モジュール７０が、バースト的パケット損失状態を判断するために、ＰＬ＿ＢＵＲＳＴ８１Ｊとの比較のためにパケット・ロスを観測し、計算するウィンドウを指定する。
【００６５】
ＭＡＸ＿ＲＴＰ＿ＧＡＰ８１Ｌは、受信機側レート適応モジュール７０が、バースト的パケット・ロス／厳しい輻輳状態を宣言し、バースト的パケット・ロス状態に適応するように送信側レート適応モジュール５０に指示する前に、メディア・パケットを受信することなしに経過し得るしきい値時間量の係数である。パケット・ロスが厳しい場合、受信機側レート適応モジュール７０が、前のパケットが事実上失われたと判断するために、後続のパケットが受信されなければならないので、受信されたメディア・パケット中のギャップ（パケット・ロス・ギャップ）が、失われたパケットの従来の観測を妨げ得る。ＭＡＸ＿ＲＴＰ＿ＧＡＰ８１Ｌと本明細書で説明する技法とを使用することにより、受信機側レート適応モジュール７０は、介在するパケット・ロスの後のメディア・パケットを観測する必要なしに輻輳を判断することが可能になる。
【００６６】
受信機側レート適応モジュール７０は、場合によっては、前のビデオ・フレームの受信と前のビデオ・フレームのタイム・スタンプとに基づいてフレーム周期の実行推定値（running estimate）（たとえば、移動平均）Ｔ＿ＦＲＡＭＥ＿ＥＳＴを保持することによって、パケット・ロス・ギャップがあるときを判断するためのしきい値時間量を計算し得る。受信されたメディア（たとえば、ＲＴＰ）のタイム・スタンプは、受信機側レート適応モジュール７０が最近受信されたビデオ・フレームに基づいてフレーム周期を推定することを可能にする。受信機側レート適応モジュール７０が、ＭＡＸ＿ＲＴＰ＿ＧＡＰ８１ＬとＴ＿ＦＲＡＭＥ＿ＥＳＴとの積の値の継続時間の間にメディア・パケットを受信することができない場合、受信機側レート適応モジュール７０は、バースト的パケット・ロス／厳しい輻輳状態を宣言し、適応するためにメディア送信レートを低減するように送信側レート適応モジュール５０に指示し得る。
【００６７】
メディア・パケットは一定の間隔では生成されないことがあり、共有ダウンリンク・スケジューリング・アルゴリズムはパケット配信時間のジッタを生じ得るので、パケット・ロス・ギャップを推定することは難しいことがある。したがって、いくつかの態様では、ＭＡＸ＿ＲＴＰ＿ＧＡＰ８１Ｌは控えめに設定される。
【００６８】
エンコーダが符号化フレーム・レートを急激に変化させることはあまりなく、したがって、推定値は、ビデオ・フレームのトランスポート中のギャップを検出するためのかなり信頼できる基礎として役立ち得るので、例示的な受信機側レート適応モジュール７０はＴ＿ＦＲＡＭＥ＿ＥＳＴを使用する。いくつかの態様では、フレーム周期を推定するための他の方法が使用され得る。
【００６９】
ＩＮＣ＿ＦＢＡＣＫ＿ＭＩＮ＿ＩＮＴＥＲＶＡＬ８１Ｍは、受信機側レート適応モジュール７０が、最大レート限界を増加させる後続のフィードバック３１メッセージ、たとえば、ＴＭＭＢＲメッセージを送信側レート適応モジュール５０に送る前に待つべき最小間隔を指定する。ＩＮＣ＿ＦＢＡＣＫ＿ＭＩＮ＿ＩＮＴＥＲＶＡＬ８１Ｍは、動的レート適応が行われるレートならびにシグナリング過剰（signaling over）（間隔が小さくなるとフィードバック・メッセージの数が多くなる）に影響を及ぼす。
【００７０】
ＤＥＣ＿ＦＢＡＣＫ＿ＭＩＮ＿ＩＮＴＥＲＶＡＬ８１Ｎは、受信機側レート適応モジュール７０が、最大レート限界を減少させる後続のフィードバック３１のメッセージ、たとえば、ＴＭＭＢＲメッセージを送信側レート適応モジュール５０に送る前に待つべき最小間隔を指定する。ＤＥＣ＿ＦＢＡＣＫ＿ＭＩＮ＿ＩＮＴＥＲＶＡＬ８１Ｎは、動的レート適応が行われるレートならびにシグナリング過剰に影響を及ぼす。輻輳はしばしば緊急適応を必要とするが、送信レートを増加させることはそれほど必要ではなく、したがって、ＤＥＣ＿ＦＢＡＣＫ＿ＭＩＮ＿ＩＮＴＥＲＶＡＬ８１Ｎは、ＩＮＣ＿ＦＢＡＣＫ＿ＭＩＮ＿ＩＮＴＥＲＶＡＬ８１Ｍとは別個のパラメータであり、通常ＩＮＣ＿ＦＢＡＣＫ＿ＭＩＮ＿ＩＮＴＥＲＶＡＬ８１Ｍよりも小さい。
【００７１】
ＤＥＣＯＮＧＥＳＴ８１Ｏは、輻輳緩和アクションの強度レベルを指定する。受信機側レート適応モジュール７０が、たとえば、メディア受信機パラメータ８１のうちの他のパラメータに関係する観測および計算に基づいて輻輳状態を検出したとき、受信機側レート適応モジュール７０は、ビデオ・サーバ４０に、送信経路の持続可能スループット・レートでメディアを送信させるより前に共有ダウンリンクの輻輳を緩和するように送信側レート適応モジュール５０に指示するためのアクションをとる。いくつかの態様では、ＤＥＣＯＮＧＥＳＴ８１Ｏは、０〜１０にわたるパラメータ値を指定し、０は、輻輳緩和が実行されるべきではないことを示し、増加する値は、受信機側レート適応モジュール７０がますますアグレッシブな輻輳緩和アクションをとるべきであることを示す。
【００７２】
ＤＥＣＯＮＧＥＳＴ＿ＴＩＭＥ８１Ｐは、受信機側レート適応モジュール７０が輻輳を緩和すべき時間量を指定する。値０は、受信機側レート適応モジュール７０が輻輳緩和アクションを試みるべきではないことを示す。ＤＥＣＯＮＧＥＳＴ＿ＴＩＭＥ８１Ｐについては、図５に関して以下でさらに詳細に説明する。
【００７３】
メディア送信者パラメータ・テーブル８２は、例示的なメディア送信者パラメータ８３Ａ〜８３Ｈ（「メディア送信者パラメータ８３」）を記載する。本開示の技法によれば、例示的な送信側レート適応モジュール５０は、ネットワーク事業者が、送信側レート適応モジュール５０の動作、したがってビデオ・サーバ４０の動作に影響を及ぼすことを可能にするために、メディア送信者パラメータ８１のうちの１つまたは複数をエクスポーズする。送信側レート適応モジュール５０のメディア送信者制御パラメータ５１は、メディア送信者パラメータ８３のうちの１つまたは複数を表し得る。いくつかの態様では、ビデオ・サーバ４０は、ビデオ・サーバ４０を含むネットワークによって与えられる異なるサービス・レベルに対応するメディア送信者パラメータ８３の複数のサブセットを与え得る（メディア送信者パラメータ８３のサービス固有サブセットは互いに交差、すなわち重複し得る）。このようにして、ネットワーク事業者は、メディア送信者パラメータ８３の他のサービス固有サブセットに影響を及ぼすことなしにメディア送信者パラメータ８３のサービス固有サブセットを改変し得る。たとえば、ビデオ・サーバ４０は、ゴールドレベルサービスと、シルバーレベルサービスと、ブロンズレベルサービスとを与え得る。ネットワーク事業者は、ビデオ・サーバ４０がブロンズ・サービス・レベルで動作しているとき、ビデオ・サーバ４０のためのネットワークのサービス品質に影響を及ぼすために、ブロンズ・サービス・レベルに対応するメディア送信者パラメータ８３のサブセットを改変し得る。以下の段落では、メディア送信者パラメータ８３の各々について説明する。いくつかの態様では、メディア送信者パラメータ８３のうちの時間に関係するパラメータはミリ秒で表される。
【００７４】
ＭＩＮ＿ＢＩＴ＿ＲＡＴＥ８３Ａは、ビデオ・エンコーダ、たとえば、ビデオ・エンコーダ４６の最小許容ビットレートを指定する。ＭＩＮ＿ＢＩＴ＿ＲＡＴＥ８３Ａは、（現在のサービス・レベルに従って）ビデオ・セッションのためにサポートされる最大ビットレートの割合として表され得る。したがって、ネットワーク事業者は、複数のサービスセット中に複数のＭＩＮ＿ＢＩＴ＿ＲＡＴＥ８３Ａを設定する必要はない。送信ＭＴＳＩクライアント４４がＭＩＮ＿ＢＩＴ＿ＲＡＴＥ８３Ａの値をサポートすることができない場合、送信ＭＴＳＩクライアント４４は、（以下で説明する）ＤＲＯＰ＿ＨＯＬＤ＿ＶＩＤＥＯ８３Ｇの値に基づいて、ビデオ・ストリームをホールドするかまたはビデオ・ストリームをドロップする。
【００７５】
ＭＩＮ＿ＦＲＡＭＥ＿ＲＡＴＥ８３Ｂは、ビデオ・エンコーダ、たとえば、ビデオ・エンコーダ４６の最小許容フレーム・レートを指定する。ＭＩＮ＿ＦＲＡＭＥ＿ＲＡＴＥ８３Ｂは、（現在のサービス・レベルに従って）ビデオ・セッションのためにサポートされる最大フレーム・レートの割合として表される。したがって、ネットワーク事業者は、複数のサービスセット中に複数のＭＩＮ＿ＢＩＴ＿ＲＡＴＥ８３Ａを設定する必要はない。送信ＭＴＳＩクライアント４４がＭＩＮ＿ＦＲＡＭＥ＿ＲＡＴＥ８３Ｂの値をサポートすることができない場合、送信ＭＴＳＩクライアント４４は、（以下で説明する）ＤＲＯＰ＿ＨＯＬＤ＿ＶＩＤＥＯ８３Ｇの値に基づいて、ビデオ・ストリームをホールドするかまたはビデオ・ストリームをドロップする。
【００７６】
ＭＩＮ＿ＩＭＡＧＥ＿ＱＵＡＬＩＴＹ８３Ｃは、ビデオ・エンコーダ、たとえば、ビデオ・エンコーダ４６の最小許容画質を指定する。ＭＩＮ＿ＩＭＡＧＥ＿ＱＵＡＬＩＴＹ８３Ｃは、ピーク信号対雑音比（ＰＳＮＲ）としてデシベル（ｄＢ）で表され得る。送信ＭＴＳＩクライアント４４がＭＩＮ＿ＩＭＡＧＥ＿ＱＵＡＬＩＴＹ８３Ｃの値をサポートすることができない場合、送信ＭＴＳＩクライアント４４は、（以下で説明する）ＤＲＯＰ＿ＨＯＬＤ＿ＶＩＤＥＯ８３Ｇの値に基づいて、ビデオ・ストリームをホールドするかまたはビデオ・ストリームをドロップする。
【００７７】
ＲＡＭＰ＿ＵＰ＿ＲＡＴＥ８３Ｄは、ビデオ・エンコーダ、たとえば、ビデオ・エンコーダ４６がターゲット符号化レートをより高いレート限界まで増加させるべきレートを指定する。ＲＡＭＰ＿ＵＰ＿ＲＡＴＥ８３Ｄは、ｋｂｐｓの単位で表され得る。いくつかの態様では、ＴＭＢＢＲメッセージを含み得る受信機側レート適応モジュール７０からのフィードバック３１に従って、送信側レート適応モジュール５０がそのより高いレート限界を設定する。
【００７８】
ＲＡＭＰ＿ＤＯＷＮ＿ＲＡＴＥ８３Ｅは、ビデオ・エンコーダ、たとえば、ビデオ・エンコーダ４６がターゲット符号化レートをより低いレート限界まで減少させるべきレートを指定する。ＲＡＭＰ＿ＤＯＷＮ＿ＲＡＴＥ８３Ｅは、ｋｂｐｓの単位で表され得る。いくつかの態様では、受信機側レート適応モジュール７０からのフィードバック３１に従って、送信側レート適応モジュール５０がそのより低いレート限界を設定する。ランプダウンはしばしば、輻輳を軽減するための必要な技法であるが、ランプアップは、送信経路上の突然の輻輳のために望ましくないことがある。したがって、ＲＡＭＰ＿ＤＯＷＮ＿ＲＡＴＥ８３Ｅは、ＲＡＭＰ＿ＵＰ＿ＲＡＴＥ８３Ｄとは別個のパラメータである。
【００７９】
ＵＰＬＩＮＫ＿ＲＡ８３Ｆは、エンコーダレートを適応させ、メディア・パケット輻輳を回避するために、アップリンク・スループットに関する下位レイヤ情報を使用することに関与するアップリンク・レート適応を送信ＭＴＳＩクライアント４４が使用するかどうかを指定するブールパラメータである。
【００８０】
ＤＲＯＰ＿ＨＯＬＤ＿ＶＩＤＥＯ８３Ｇは、ＭＩＮ＿ＢＩＴ＿ＲＡＴＥ８３Ａ、ＭＩＮ＿ＦＲＡＭＥ＿ＲＡＴＥ８３Ｂ、またはＭＩＮ＿ＩＭＡＧＥ＿ＱＵＡＬＩＴＹ８３Ｃについて設定された最小要件をビデオ品質が満たすことができない場合、受信機側レート適応モジュール７０がビデオ・ストリームをホールドするかビデオ・ストリームをドロップするかを指定するブールパラメータである。したがって、ＤＲＯＰ＿ＨＯＬＤ＿ＶＩＤＥＯ８３Ｇはドロップまたはホールドパラメータである。受信機側レート適応モジュール７０がビデオ・ストリームをホールドする場合、受信機側レート適応モジュール７０はＱｏＳ確保を維持し得る。他の場合、受信機側レート適応モジュール７０は、ビデオ・ストリーム自体とともにビデオ・ストリームのためのＱｏＳ確保をドロップする。いくつかの実施形態では、ビデオ・ストリームをホールドする受信機側レート適応モジュール７０は、送信ＭＴＳＩクライアント４４がオーディオなどの他のメディアを送信し続けることを可能にし得る。
【００８１】
ＩＮＩＴＩＡＬ＿ＣＯＤＥＣ＿ＲＡＴＥ８３Ｈは、エンコーダ、たとえば、ビデオ・エンコーダ２６が送信すべき初期レートを指定する。いくつかの態様では、ＩＮＩＴＩＡＬ＿ＣＯＤＥＣ＿ＲＡＴＥ８３Ｈは、オーディオ・エンコーダ、ビデオ・エンコーダ、および／またはテスト・エンコーダに適用される。
【００８２】
図４は、本明細書で説明する技法に従って使用されるプレイアウト・マージンを示す注釈付きグラフ８４である。図示のように、パケットのプレイアウト・マージンは、メディア受信機、たとえば、ビデオ端末６０におけるメディア・パケットの到着とそのメディア・パケットの適切にスケジュールされたプレイアウト時間との間の時間量である。パケットの到着時間のジッタを考慮するために、プレイアウト・マージンは、タイム・ウィンドウについての全体的なパケット到着分布中のＸパーセンタイル点に関して測定される。
【００８３】
ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＭＩＮ８１ＥおよびＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＨＩ８１Ｆは、受信機側レート適応モジュール７０のためのプレイアウトのターゲット範囲を定義し、Ｘ＿ＰＥＲＣＥＮＴＩＬＥ８１Ｇは、プレイアウト・マージンを測定するために使用されるべきパケット到着分布のパーセンタイルを指定する。ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＭＩＮ８１Ｅは、パケットプレイアウトの下側しきい値を指定する。メディア受信機、たとえば、ビデオ端末６０のプレイアウト・マージンがＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＭＩＮ８１Ｅよりも小さいとき、受信機側レート適応モジュール７０は、共有ダウンリンクの輻輳を緩和するように送信側レート適応モジュール５０に指示し得る。ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＨＩ８１Ｆは、パケット・プレイアウトの上側（最大）しきい値を指定する。メディア受信機、たとえば、ビデオ端末６０のプレイアウト・マージンがＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＨＩ８１Ｆよりも大きいとき、受信機側レート適応モジュール７０は、たとえば、コーディング・レートを増加させることによってメディア品質を改善するように送信側レート適応モジュール５０に指示し得る。ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿Ｍ＿ＷＩＮＤＯＷ＿ＭＩＮ８１ＨおよびＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿Ｍ＿ＷＩＮＤＯＷ＿ＨＩ８１Ｉは、受信機側レート適応モジュール７０がパケット到着とプレイアウト時間とを観測する異なるスライディング時間ウィンドウを定義する。それぞれＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＭＩＮ８１ＥおよびＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿ＭＡＲＧＩＮ＿ＨＩ８１Ｆとの比較のために、ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿Ｍ＿ＷＩＮＤＯＷ＿ＭＩＮ８１ＨおよびＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿Ｍ＿ＷＩＮＤＯＷ＿ＨＩ８１Ｉを使用して最小および最大プレイアウト・マージンが計算される。
【００８４】
いくつかの態様では、ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿Ｍ＿ＷＩＮＤＯＷ＿ＭＩＮ８１ＨおよびＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿Ｍ＿ＷＩＮＤＯＷ＿ＨＩ８１Ｉは、ネットワーク事業者が、輻輳を軽減することおよびメディア品質を改善することに対して設定する異なる優先度を考慮するための異なる値である。プレイアウト・マージンがあまりに小さくなるネットワーク状態は、受信機側レート適応モジュール７０と送信側レート適応モジュール５０とによる即時の適応を強制し得る。その結果、ＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿Ｍ＿ＷＩＮＤＯＷ＿ＭＩＮ８１Ｈは、受信機側レート適応モジュール７０がより大きいプレイアウト・マージンを検出するために使用するＴＡＲＧＥＴ＿ＰＬＡＹＯＵＴ＿Ｍ＿ＷＩＮＤＯＷ＿ＨＩ８１Ｉよりも小さく設定され得る。
【００８５】
図５は、本開示の技法による、例示的な受信機側レート適応モジュール７０と送信側レート適応モジュール５０とによって実行される例示的な輻輳緩和プロセスを示す注釈付きグラフ８６である。受信機側レート適応モジュール７０は、１つまたは複数のメディア受信機パラメータ８１に従って共有ダウンリンク上の輻輳を検出し、フィードバック３１を送信側レート適応モジュール５０に送る。例示的なグラフ８６において、フィードバック３１は、送信経路の推定された持続可能レートより下に送信レートを低下させるように送信側レート適応モジュール５０に指示するＴＭＭＢＲメッセージを含む。ＴＭＭＢＲメッセージは、下側送信レートを指定するＴＭＭＢＲ値９８を含む。送信側レート適応モジュール５０は、（ＲＡＭＰ＿ＤＯＷＮ＿ＲＡＴＥ８３Ｅによって指定される）ランプダウンレート９２においてそれの送信レートを低減する。メディア送信者、たとえば、ビデオ・サーバ４０が送信レートを低減することは、メディア送信者を含むネットワークが、輻輳したパケットのバックログを低減することを可能にする。
【００８６】
受信機側レート適応モジュール７０は、次いで、ＤＥＣＯＮＧＥＳＴ＿ＴＩＭＥ８１Ｐによって指定される時間の間待ってから、送信レートを第２のＴＭＭＢＲ値９９まで増加させるように送信側レート適応モジュール５０に指示する第２のＴＭＭＢＲメッセージの形態で追加のフィードバック３１を送る。例示的な注釈付きグラフ８６において、新しい送信レートは、送信経路の推定された持続可能レートを近似する。送信側レート適応モジュール５０は、（ＲＡＭＰ＿ＵＰ＿ＲＡＴＥ８３Ｄによって指定される）ランプアップレート９４においてそれの送信レートを増加させる。
【００８７】
概して、ＤＥＣＯＮＧＥＳＴ＿ＴＩＭＥ８１Ｐの小さい値は、受信機側レート適応モジュール７０が、アグレッシブな輻輳緩和を実行し、送信経路の最高持続可能レートをかなり下回る（輻輳緩和のための送信レートを指定する）ＴＭＭＢＲ値９８を設定すべきであることを示す。反対に、ＤＥＣＯＮＧＥＳＴ＿ＴＩＭＥ８１Ｐの大きい値は、受信機側レート適応モジュール７０が、控えめな輻輳緩和を実行し、送信経路の最高持続可能レートを下回るが、より近いＴＭＭＢＲ値９８を設定すべきであることを示す。ＤＥＣＯＮＧＥＳＴ＿ＴＩＭＥ８１Ｐの値０は、受信機側レート適応モジュール７０が、輻輳緩和を実行するように送信側レート適応モジュール５０に指示すべきでないことを示す。いくつかの態様では、ネットワーク事業者は、輻輳緩和強度レベルを制御するためにＤＥＣＯＮＧＥＳＴ８１Ｏの値を指定する。
【００８８】
図６は、本開示の技法による、ＵＭＴＳネットワーク２中で動作するプロビジョニング・サーバ１０およびビデオ端末６０の例示的な動作を示すフローチャートである。初めに、ネットワーク事業者は、ＵＭＴＳネットワーク２中のネットワーク状態（１００）とＵＥにおけるエクスペリエンス品質とを監視する。ネットワーク状態と測定されたエクスペリエンス品質とに基づいて、ネットワーク事業者は、プロビジョニング・サーバ１０を使用して、ビデオ端末６０の受信ＭＴＳＩクライアント６４中の受信機側レート適応モジュール７０のメディア受信機制御パラメータ７１のうちの１つまたは複数を変更する（１０２）。受信機側レート適応モジュール７０は、フィードバック３１を生成し、それをビデオ・サーバ４０に送ることによって、ビデオ端末６０が受ける送信レートを適応させる（１０４）ために、変更されたメディア受信機制御パラメータ７１に従って動作する。
【００８９】
図７は、本開示の技法による、ＵＭＴＳネットワーク２中で動作するプロビジョニング・サーバ１０およびビデオ・サーバ４０の例示的な動作を示すフローチャートである。初めに、ネットワーク事業者は、ＵＭＴＳネットワーク２中のネットワーク状態（１１０）とＵＥにおけるエクスペリエンス品質とを監視する。ネットワーク状態と測定されたエクスペリエンス品質とに基づいて、ネットワーク事業者は、プロビジョニング・サーバ１０を使用して、ビデオ・サーバ４０の送信ＭＴＳＩクライアント４４中の送信側レート適応モジュール５０のメディア送信者制御パラメータ５１のうちの１つまたは複数を変更する（１１２）。送信側レート適応モジュール５０は、ビデオ・サーバ４０の送信レートを適応させる（１１４）ために、変更されたメディア送信者制御パラメータ５１に従って動作する。ビデオ・サーバ４０は、ビデオ・ストリームの符号化レートを改変することによって送信レートを適応させ得る。
【００９０】
図８は、本開示の技法による、ＵＭＴＳネットワーク２中で動作するＭＴＳＩクライアントの例示的な動作を示すフローチャートである。ＭＴＳＩクライアントは、メディア・エンコーダのレートをネットワーク状態に適応させるためにＭＴＳＩクライアントが動作させるレート適応アルゴリズムの制御パラメータの値を受信する（１２０）。一例として、ＭＴＳＩクライアントは、上記で説明したプロビジョニング・サーバ１０などのプロビジョニング・サーバから制御パラメータの値を受信し得る。それに応答して、ＭＴＳＩクライアントは制御パラメータを受信した値に設定する（１２２）。さらに、ＭＴＳＩクライアントは、新たに設定された制御パラメータに従ってメディア・エンコーダの送信レートをネットワーク状態に適応させる（１２４）ためにレート適応を動作させることを開始する。
【００９１】
本開示で説明した技法は、汎用マイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールド・プログラマブル・ゲートアレイ（ＦＰＧＡ）、プログラマブル論理デバイス（ＰＬＤ）、または他の同等の論理デバイスのうちの１つまたは複数の内に実装され得る。したがって、本明細書で使用する「プロセッサ」または「コントローラ」という用語は、上記の構造、または本明細書で説明した技法の実装に好適な他の構造のうちのいずれか１つまたは複数を指すことがある。
【００９２】
本明細書で説明した様々な構成要素は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の適切な組合せによって実現され得る。図では、様々な構成要素は、別々のユニットまたはモジュールとして示される。しかしながら、これらの図を参照しながら説明した様々な構成要素のすべてまたはいくつかは、共通ハードウェア、ファームウェア、および／またはソフトウェア内の組合せユニットまたはモジュールに統合され得る。したがって、構成要素、ユニット、またはモジュールとしての特徴の表現は、説明しやすいように特定の機能的特徴を強調するものであり、別々のハードウェア、ファームウェア、またはソフトウェア構成要素によるそのような特徴の実現を必ずしも必要としない。場合によっては、様々なユニットは、１つまたは複数のプロセッサによって実行されるプログラマブルプロセスとして実装され得る。
【００９３】
モジュール、デバイス、または構成要素として本明細書で説明した機能は、集積論理デバイスに一緒に、または個別であるが相互運用可能な論理デバイスとして別々に実装され得る。様々な態様では、そのような構成要素は、少なくとも部分的に、集積回路チップまたはチップセットなど、まとめて集積回路デバイスと呼ばれることがある１つまたは複数の集積回路デバイスとして形成され得る。そのような回路は、単一の集積回路チップデバイス中、または複数の相互運用可能な集積回路チップデバイス中に設けられ得、様々な画像、ディスプレイ、音声、または他のマルチメディア・アプリケーションおよびデバイスのいずれかにおいて使用され得る。いくつかの態様では、たとえば、そのような構成要素は、ワイヤレス通信デバイス・ハンドセット（たとえば、モバイル電話ハンドセット）などのモバイルデバイスの一部を形成し得る。
【００９４】
ソフトウェアで実装した場合、これらの技法は、１つまたは複数のプロセッサによって実行されたとき、上記で説明した方法のうちの１つまたは複数を実行する命令をもつコードを備えるコンピュータ可読データ記憶媒体によって少なくとも部分的に実現され得る。コンピュータ可読記憶媒体は、パッケージング材料を含むことがあるコンピュータ・プログラム製品の一部を形成し得る。コンピュータ可読記憶媒体は、シンクロナス・ダイナミック・ランダム・アクセス・メモリ（ＳＤＲＡＭ）などのランダム・アクセス・メモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、不揮発性ランダム・アクセス・メモリ（ＮＶＲＡＭ）、電気消去可能プログラマブル読取り専用メモリ（ＥＥＰＲＯＭ）、埋込みダイナミックランダム・アクセス・メモリ（ｅＤＲＡＭ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）、フラッシュ・メモリ、磁気または光学データ記憶媒体を備え得る。利用される任意のソフトウェアは、１つまたは複数のＤＳＰ、汎用マイクロプロセッサ、ＡＳＩＣ、ＦＰＧＡ、または他の同等の集積またはディスクリート論理回路など、１つまたは複数のプロセッサによって実行され得る。
【００９５】
様々な態様について本開示で説明した。これらおよび他の態様は以下の特許請求の範囲内に入る。
以下に本件出願当初の特許請求の範囲に記載された発明を付記する。
［１］  メディア・デバイスが、レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値を受信することであって、前記レート適応アルゴリズムが、ネットワークの状態を監視し、前記ネットワーク状態と前記複数の制御パラメータとに基づいてメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、前記ネットワーク状態に対する前記レート適応アルゴリズムの応答を制御するしきい値またはタイミング値を指定する、受信することと、
前記第１の制御パラメータを前記値に設定することと、
を備える方法。
［２］  前記メディア・デバイスが、前記レート適応アルゴリズムを備えるインターネットプロトコルマルチメディアシステムのためのマルチメディア電話サービス（ＭＴＳＩ）クライアントを備える［１］に記載の方法。
［３］  前記複数の制御パラメータは、各々が複数のサービス・レベルのうちの１つに関連する、サービス固有制御パラメータの複数のサブセットを含み、前記複数のサービス・レベルの各々がユーザのための異なるサービス品質を定義し、前記方法が、
前記複数のサービス・レベルのうちの第１のサービス・レベルに従って前記メディア・デバイスを動作させることであって、前記レート適応アルゴリズムが、前記ネットワーク状態と前記第１のサービス・レベルに関連するサービス固有制御パラメータのサブセットとに基づいて前記メディア・エンコーダの前記コーディング・レートを調整する、動作させることをさらに備える［１］に記載の方法。
［４］  前記メディア・デバイスがメディア受信機であり、
前記レート適応アルゴリズムが、受信機側レート適応アルゴリズムを備え、前記メディア・エンコーダを含むメディア送信機にフィードバックを送ることによって前記メディア・エンコーダの前記コーディング・レートを調整し、前記フィードバックが、前記メディア・エンコーダの前記コーディング・レートを調整するように前記メディア送信機に指示する［１］に記載の方法。
［５］  前記メディア・デバイスが、前記メディア・エンコーダを含むメディア送信機であり、
前記レート適応アルゴリズムが送信機側レート適応アルゴリズムを備える［１］に記載の方法。
［６］  前記メディア・エンコーダがビデオ・エンコーダである［１］に記載の方法。
［７］  前記第１の制御パラメータが、
下側パケット・ロス率しきい値と、
上側パケット・ロス率しきい値と、
前記レート適応アルゴリズムが前記下側パケット・ロス率しきい値を測定するスライディング・ウィンドウの継続時間を指定する第１のパケット・ロス率測定ウィンドウと、
前記レート適応アルゴリズムが前記上側パケット・ロス率しきい値を測定するスライディング・ウィンドウの継続時間を指定する第２のパケット・ロス率測定ウィンドウと、
からなるグループから選択される［１］に記載の方法。
［８］  前記第１の制御パラメータが、
メディア・パケット到着とそれの適切にスケジュールされたプレイアウト時間との間の最小許容時間を指定する最小ターゲットプレイアウト・マージンと、
メディア・パケット到着とそれの適切にスケジュールされたプレイアウト時間との間の時間の上側しきい値を指定する最大ターゲットプレイアウト・マージンと、
プレイアウト・マージンを測定するためのパーセンタイルを指定するパケット到着時間分布のパーセンタイル点値と、
前記レート適応アルゴリズムが前記最小ターゲットプレイアウト・マージンに対するメディア・パケット到着とプレイアウトとの間のマージンを観測し、計算するスライディング・ウィンドウの継続時間を指定する第１のターゲットプレイアウトウィンドウと、
前記レート適応アルゴリズムが前記最大ターゲットプレイアウト・マージンに対するメディア・パケット到着とプレイアウトとの間のマージンを観測し、計算するスライディング・ウィンドウの継続時間を指定する第２のターゲットプレイアウトウィンドウと、
からなるグループから選択される［１］に記載の方法。
［９］  前記第１の制御パラメータが、
上側パケット・ロス数しきい値と、
前記レート適応アルゴリズムが前記上側パケット・ロス数しきい値との比較のためにパケット・ロスを観測し、計算するスライディング・ウィンドウの継続時間を指定するパケット・ロス数測定ウィンドウと、
前記レート適応アルゴリズムがバースト状態を宣言する前に、メディア・パケットを受信することなしに経過し得る継続時間の係数である最大リアルタイム伝送プロトコル（ＲＴＰ）ギャップ値と
からなるグループから選択される［１］に記載の方法。
［１０］  前記第１の制御パラメータが、最大レート限界を減少させるための第１の最小フィードバック間隔値と、最大レート限界を増加させるための第２の最小フィードバック間隔値とからなるグループから選択される［１］に記載の方法。
［１１］  前記第１の制御パラメータが、輻輳緩和値と輻輳緩和時間値とからなるグループから選択される［１］に記載の方法。
［１２］  前記第１の制御パラメータが、最小ビットレートと、最小フレーム・レートと、最小画質とからなるグループから選択される［１］に記載の方法。
［１３］  前記第１の制御パラメータが、
前記レート適応アルゴリズムがターゲット符号化レートをより高いレート限界まで増加させるべきレートを指定するランプアップレートと、
前記レート適応アルゴリズムが前記ターゲット符号化レートをより低いレート限界まで減少させるべきレートを指定するランプダウンレートと、
からなるグループから選択される［１］に記載の方法。
［１４］  前記第１の制御パラメータが、アップリンク・レート適応パラメータと、ドロップまたはホールドパラメータと、初期コーデックレートとからなるグループから選択される［１］に記載の方法。
［１５］  複数の制御パラメータを備え、ネットワークの状態を監視し、前記ネットワーク状態と前記複数の制御パラメータとに基づいてメディア・エンコーダのコーディング・レートを調整するレート適応モジュールであって、前記複数の制御パラメータの各々が、前記ネットワーク状態に対する前記レート適応モジュールの応答を制御するしきい値またはタイミング値を指定する、レート適応モジュールと、
前記複数の制御パラメータのうちの第１の制御パラメータの値を受信し、前記第１の制御パラメータを前記値に設定するクライアントと、
を備える装置。
［１６］  前記クライアントが、前記レート適応モジュールを備えるインターネットプロトコルマルチメディアシステムのためのマルチメディア電話サービス（ＭＴＳＩ）クライアントを備える［１５］に記載の装置。
［１７］  前記複数の制御パラメータは、各々が複数のサービス・レベルのうちの１つに関連する、サービス固有制御パラメータの複数のサブセットを含み、前記複数のサービス・レベルの各々がユーザのための異なるサービス品質を定義し、
前記レート適応モジュールが、前記ネットワーク状態と前記複数のサービス・レベルのうちの第１のサービス・レベルに関連するサービス固有制御パラメータのサブセットとに基づいて前記メディア・エンコーダの前記コーディング・レートを調整する［１５］に記載の装置。
［１８］  前記装置がメディア受信機であり、
前記レート適応モジュールが、受信機側レート適応モジュールを備え、前記メディア・エンコーダを含むメディア送信機にフィードバックを送ることによって前記メディア・エンコーダの前記コーディング・レートを調整し、前記フィードバックが、前記メディア・エンコーダの前記コーディング・レートを調整するように前記メディア送信機に指示する［１５］に記載の装置。
［１９］  前記メディア・エンコーダをさらに備え、
前記装置がメディア送信機であり、
前記レート適応モジュールが送信機側レート適応モジュールを備える［１５］に記載の装置。
［２０］  前記メディア・エンコーダがビデオ・エンコーダである［１５］に記載の装置。
［２１］  前記第１の制御パラメータが、
下側パケット・ロス率しきい値と、
上側パケット・ロス率しきい値と、
前記レート適応モジュールが前記下側パケット・ロス率しきい値を測定するスライディング・ウィンドウの継続時間を指定する第１のパケット・ロス率測定ウィンドウと、
前記レート適応モジュールが前記上側パケット・ロス率しきい値を測定するスライディング・ウィンドウの継続時間を指定する第２のパケット・ロス率測定ウィンドウと、
からなるグループから選択される［１５］に記載の装置。
［２２］  前記第１の制御パラメータが、
メディア・パケット到着とそれの適切にスケジュールされたプレイアウト時間との間の最小許容時間を指定する最小ターゲットプレイアウト・マージンと、
メディア・パケット到着とそれの適切にスケジュールされたプレイアウト時間との間の時間の上側しきい値を指定する最大ターゲットプレイアウト・マージンと、
プレイアウト・マージンを測定するためのパーセンタイルを指定するパケット到着時間分布のパーセンタイル点値と、
前記レート適応モジュールが前記最小ターゲットプレイアウト・マージンに対するメディア・パケット到着とプレイアウトとの間のマージンを観測し、計算するスライディング・ウィンドウの継続時間を指定する第１のターゲットプレイアウトウィンドウと、
前記レート適応モジュールが前記最大ターゲットプレイアウト・マージンに対するメディア・パケット到着とプレイアウトとの間のマージンを観測し、計算するスライディング・ウィンドウの継続時間を指定する第２のターゲットプレイアウトウィンドウと、
からなるグループから選択される［１５］に記載の装置。
［２３］  前記第１の制御パラメータが、
上側パケット・ロス数しきい値と、
前記レート適応モジュールが前記上側パケット・ロス数しきい値との比較のためにパケット・ロスを観測し、計算するスライディング・ウィンドウの継続時間を指定するパケット・ロス数測定ウィンドウと、
前記レート適応モジュールがバースト状態を宣言する前に、メディア・パケットを受信することなしに経過し得る継続時間の係数である最大リアルタイム伝送プロトコル（ＲＴＰ）ギャップ値と、
からなるグループから選択される［１５］に記載の装置。
［２４］  前記第１の制御パラメータが、最大レート限界を減少させるための第１の最小フィードバック間隔値と、最大レート限界を増加させるための第２の最小フィードバック間隔値とからなるグループから選択される［１５］に記載の装置。
［２５］  前記第１の制御パラメータが、輻輳緩和値と輻輳緩和時間値とからなるグループから選択される［１５］に記載の装置。
［２６］  前記第１の制御パラメータが、最小ビットレートと、最小フレーム・レートと、最小画質とからなるグループから選択される［１５］に記載の装置。
［２７］  前記第１の制御パラメータが、
前記レート適応モジュールがターゲット符号化レートをより高いレート限界まで増加させるべきレートを指定するランプアップレートと、
前記レート適応モジュールが前記ターゲット符号化レートをより低いレート限界まで減少させるべきレートを指定するランプダウンレートと、
からなるグループから選択される［１５］に記載の装置。
［２８］  前記第１の制御パラメータが、アップリンク・レート適応パラメータと、ドロップまたはホールドパラメータと、初期コーデックレートとからなるグループから選択される［１５］に記載の装置。
［２９］  前記装置がワイヤレス通信デバイス・ハンドセットを備える［１３］に記載の装置。
［３０］  前記装置が、１つまたは複数の集積回路デバイスを備える［１３］に記載の装置。
［３１］  メディア・デバイスが、レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値を受信するための手段であって、前記レート適応アルゴリズムが、ネットワークの状態を監視し、前記ネットワーク状態と前記複数の制御パラメータとに基づいてメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、前記ネットワーク状態に対する前記レート適応アルゴリズムの応答を制御するしきい値またはタイミング値を指定する、受信するための手段と、
前記第１の制御パラメータを前記値に設定するための手段と、
を備えるデバイス。
［３２］  前記デバイスが、インターネットプロトコルマルチメディアシステムのためのマルチメディア電話サービス（ＭＴＳＩ）クライアントを備える［３１］に記載のデバイス。
［３３］  前記複数の制御パラメータは、各々が複数のサービス・レベルのうちの１つに関連する、サービス固有制御パラメータの複数のサブセットを含み、前記複数のサービス・レベルの各々がユーザのための異なるサービス品質を定義し、前記デバイスが、
前記複数のサービス・レベルのうちの第１のサービス・レベルに従って前記デバイスを動作させるための手段であって、前記レート適応アルゴリズムが、前記ネットワーク状態と前記第１のサービス・レベルに関連するサービス固有制御パラメータのサブセットとに基づいて前記メディア・エンコーダの前記コーディング・レートを調整する、動作させるための手段をさらに備える［３１］に記載のデバイス。
［３４］  前記デバイスがメディア受信機であり、
前記レート適応アルゴリズムが、受信機側レート適応アルゴリズムを備え、前記メディア・エンコーダを含むメディア送信機にフィードバックを送ることによって前記メディア・エンコーダの前記コーディング・レートを調整し、前記フィードバックが、前記メディア・エンコーダの前記コーディング・レートを調整するように前記メディア送信機に指示する［３１］に記載のデバイス。
［３５］  前記デバイスが、前記メディア・エンコーダを含むメディア送信機であり、
前記レート適応アルゴリズムが送信機側レート適応アルゴリズムを備える［３１］に記載のデバイス。
［３６］  前記メディア・エンコーダがビデオ・エンコーダである［３１］に記載のデバイス。
［３７］  メディア・デバイスが、レート適応アルゴリズムの複数の制御パラメータのうちの第１の制御パラメータの値を受信することであって、前記レート適応アルゴリズムが、ネットワークの状態を監視し、前記ネットワーク状態と前記複数の制御パラメータとに基づいてメディア・エンコーダのコーディング・レートを調整し、前記複数の制御パラメータの各々が、前記ネットワーク状態に対する前記レート適応アルゴリズムの応答を制御するしきい値またはタイミング値を指定する、受信することと、
前記第１の制御パラメータを前記値に設定することと、
をプログラマブルプロセッサに行わせるための命令を備えるコンピュータ可読記憶媒体。
［３８］  前記メディア・デバイスが、前記レート適応アルゴリズムを備えるインターネットプロトコルマルチメディアシステムのためのマルチメディア電話サービス（ＭＴＳＩ）クライアントを備える［３７］に記載のコンピュータ可読記憶媒体。
［３９］  前記複数の制御パラメータは、各々が複数のサービス・レベルのうちの１つに関連する、サービス固有制御パラメータの複数のサブセットを含み、前記複数のサービス・レベルの各々がユーザのための異なるサービス品質を定義し、プログラマブルプロセッサに、
前記複数のサービス・レベルのうちの第１のサービス・レベルに従って前記メディア・デバイスを動作させることであって、前記レート適応アルゴリズムが、前記ネットワーク状態と前記第１のサービス・レベルに関連するサービス固有制御パラメータのサブセットとに基づいて前記メディア・エンコーダの前記コーディング・レートを調整する、動作させることを行わせるための命令をさらに備える［３７］に記載のコンピュータ可読記憶媒体。
［４０］  前記メディア・デバイスがメディア受信機であり、
前記レート適応アルゴリズムが、受信機側レート適応アルゴリズムを備え、前記メディア・エンコーダを含むメディア送信機にフィードバックを送ることによって前記メディア・エンコーダの前記コーディング・レートを調整し、前記フィードバックが、前記メディア・エンコーダの前記コーディング・レートを調整するように前記メディア送信機に指示する［３７］に記載のコンピュータ可読記憶媒体。
［４１］  前記メディア・デバイスが、前記メディア・エンコーダを含むメディア送信機であり、
前記レート適応アルゴリズムが送信機側レート適応アルゴリズムを備える［３７］に記載のコンピュータ可読記憶媒体。
［４２］  前記メディア・エンコーダがビデオ・エンコーダである［３７］に記載のコンピュータ可読媒体。
［４３］  前記第１の制御パラメータが、
下側パケット・ロス率しきい値と、
上側パケット・ロス率しきい値と、
前記レート適応アルゴリズムが前記下側パケット・ロス率しきい値を測定するスライディング・ウィンドウの継続時間を指定する第１のパケット・ロス率測定ウィンドウと、
前記レート適応アルゴリズムが前記上側パケット・ロス率しきい値を測定するスライディング・ウィンドウの継続時間を指定する第２のパケット・ロス率測定ウィンドウと
からなるグループから選択される［３７］に記載のコンピュータ可読媒体。
［４４］  前記第１の制御パラメータが、
メディア・パケット到着とそれの適切にスケジュールされたプレイアウト時間との間の最小許容時間を指定する最小ターゲットプレイアウト・マージンと、
メディア・パケット到着とそれの適切にスケジュールされたプレイアウト時間との間の時間の上側しきい値を指定する最大ターゲットプレイアウト・マージンと、
プレイアウト・マージンを測定するためのパーセンタイルを指定するパケット到着時間分布のパーセンタイル点値と、
前記レート適応アルゴリズムが前記最小ターゲットプレイアウト・マージンに対するメディア・パケット到着とプレイアウトとの間のマージンを観測し、計算するスライディング・ウィンドウの継続時間を指定する第１のターゲットプレイアウトウィンドウと、
前記レート適応アルゴリズムが前記最大ターゲットプレイアウト・マージンに対するメディア・パケット到着とプレイアウトとの間のマージンを観測し、計算するスライディング・ウィンドウの継続時間を指定する第２のターゲットプレイアウトウィンドウと、
からなるグループから選択される［３７］に記載のコンピュータ可読媒体。
［４５］  前記第１の制御パラメータが、
上側パケット・ロス数しきい値と、
前記レート適応アルゴリズムが前記上側パケット・ロス数しきい値との比較のためにパケット・ロスを観測し、計算するスライディング・ウィンドウの継続時間を指定するパケット・ロス数測定ウィンドウと、
前記レート適応アルゴリズムがバースト状態を宣言する前に、メディア・パケットを受信することなしに経過し得る継続時間の係数である最大リアルタイム伝送プロトコル（ＲＴＰ）ギャップ値と、
からなるグループから選択される［３７］に記載のコンピュータ可読媒体。
［４６］  前記第１の制御パラメータが、最大レート限界を減少させるための第１の最小フィードバック間隔値と、最大レート限界を増加させるための第２の最小フィードバック間隔値とからなるグループから選択される［３７］に記載のコンピュータ可読媒体。
［４７］  前記第１の制御パラメータが、輻輳緩和値と輻輳緩和時間値とからなるグループから選択される［３７］に記載のコンピュータ可読媒体。
［４８］  前記第１の制御パラメータが、最小ビットレートと、最小フレーム・レートと、最小画質とからなるグループから選択される［３７］に記載のコンピュータ可読媒体。
［４９］  前記第１の制御パラメータが、
前記レート適応アルゴリズムがターゲット符号化レートをより高いレート限界まで増加させるべきレートを指定するランプアップレートと、
前記レート適応アルゴリズムが前記ターゲット符号化レートをより低いレート限界まで減少させるべきレートを指定するランプダウンレートと、
からなるグループから選択される［３７］に記載のコンピュータ可読媒体。
［５０］  前記第１の制御パラメータが、アップリンク・レート適応パラメータと、ドロップまたはホールドパラメータと、初期コーデックレートとからなるグループから選択される［３７］に記載のコンピュータ可読媒体。
【図１】
0005832997.tif 000002
【図２】
0005832997.tif 000003
【図３】
0005832997.tif 000004
【図４】
0005832997.tif 000005
【図５】
0005832997.tif 000006
【図６】
0005832997.tif 000007
【図７】
0005832997.tif 000008
【図８】
0005832997.tif 000009