(57)【要約】【解決手段】データパケット送信方法を開示する。第１ペイロードを含む第１グループのデータパケットを第１ビットレートで送信する。第１グループのデータパケットの送信品質を確かめ、第１閾値より高い場合、第２グループのデータパケットを第１ビットレートより大きい第２ビットレートで送信する。第２グループのデータパケットは、ペイロードと、送信されるペイロードの整合性を受信側で確かめることができるようにする追加的な制御データ（Ｃ１）とを含む。【選択図】図２
2013544475.tif 000002
【特許請求の範囲】
【請求項１】
第１ペイロードを含む第１グループのデータパケットを第１ビットレートで送信する段階と、
前記第１グループのデータパケットの送信品質を確かめる段階と、
前記第１グループのデータパケットの前記送信品質が第１閾値より高い場合、第２ペイロードと、送信される前記第２ペイロードの整合性（ｃｏｎｓｉｓｔｅｎｃｙ）を受信側で確かめることができるようにする追加的な制御データとを含む第２グループのデータパケットを第２ビットレートで送信する段階とを
備え、
前記第２ビットレートは、前記第１ビットレートより大きい
データパケット送信方法。
【請求項２】
前記第２グループのデータパケットの送信品質を確かめる段階と、
前記第２グループのデータパケットの前記送信品質が第２閾値より高い場合、前記第２ペイロードよりもビットを多く含むペイロードを含む第３グループのデータパケットを前記第２ビットレートで送信する段階と
をさらに備える請求項１に記載のデータパケット送信方法。
【請求項３】
前記第２グループのデータパケットの送信品質を確かめる段階と、
前記第２グループのデータパケットの前記送信品質が第２閾値より低い場合、前記第１ペイロードと同数のビットを含むペイロードを含む第４グループのデータパケットを前記第１ビットレートで送信する段階と
をさらに備える請求項１または２に記載のデータパケット送信方法。
【請求項４】
前記第１グループのデータパケットの前記送信品質が第３閾値より低い場合、一グループのデータパケットを、前記第１ビットレートより小さい第３ビットレートで送信する段階をさらに備える請求項１から３のいずれか１項に記載のデータパケット送信方法。
【請求項５】
前記第１グループのデータパケットの前記送信品質が前記第１閾値と前記第３閾値との間で妥協される場合、一グループのデータパケットを前記第１ビットレートで送信する段階をさらに備える請求項４に記載のデータパケット送信方法。
【請求項６】
前記第１ペイロードおよび前記第２ペイロードは、同一数のビットを含む請求項１から５のいずれか１項に記載のデータパケット送信方法。
【請求項７】
前記追加的な制御データは、ＦＥＣスキームにしたがって生成される請求項１から６のいずれか１項に記載のデータパケット送信方法。
【請求項８】
前記追加的な制御データは、前記第２グループのデータパケットに含まれる各パケットのペイロードを符号化するべく使用され、前記受信側は、受信したパケットを復号することにより、送信された前記ペイロードの整合性を確かめることができる請求項１から６のいずれか１項に記載のデータパケット送信方法。
【請求項９】
前記第１ビットレートは、送信の開始前に前記受信側によって生成される情報に基づく請求項１から８のいずれか１項に記載のデータパケット送信方法。
【請求項１０】
前記第１グループのデータパケットは、多様な圧縮ビットレートで符号化された複数のデータパケットを含み、前記第１ビットレートは、前記第１グループのデータパケットの前記多様な圧縮ビットレートの平均値、または、前記第１グループのデータパケットの前記多様な圧縮ビットレートのうちの最大値である請求項１から８のいずれか１項に記載のデータパケット送信方法。
【請求項１１】
前記送信品質は、送信エラー数の逆数として測定される請求項１から１０のいずれか１項に記載のデータパケット送信方法。
【請求項１２】
データパケットは、優先順位スキームに基づいて分類され、
送信品質は、
【数１】
2013544475.tif 000004
として定義されるパケット損失率の逆数として測定され、
Ｒはパケット損失率であり、Ｐｌは優先順位が低いパケットであり、Ｐｈは優先順位が高いパケットであり、Ｐｌｌは低優先順位パケットの損失であり、Ｐｌｈは高優先順位パケットの損失であり、ａおよびｂは定数であり、ｂ＞ａである
請求項１から１０のいずれか１項に記載のデータパケット送信方法。
【請求項１３】
前記第１閾値は、データパケットを送信するビットレートに基づく請求項１から１２のいずれか１項に記載のデータパケット送信方法。
【請求項１４】
前記受信側は、ビットレートの増大を停止させるコマンドを生成することができ、
前記第１グループのデータパケットの前記送信品質が前記第１閾値より高く、前記受信側がビットレートの増大を停止させるコマンドを発行していない場合、前記第２グループのデータパケットを送信する
請求項１から１３のいずれか１項に記載のデータパケット送信方法。
【請求項１５】
クライアントコンピュータにデータパケットを送信し、前記クライアントコンピュータからデータを受信するコンピュータサーバであって、請求項１から１４のいずれか１項に記載のデータパケット送信方法を実行するコンピュータサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルデータを送信する方法およびシステムに関する。特に、本発明は、損失の多いプロトコルでのデータパケット送信のビットレートを制御する方法およびシステムに関する。
【背景技術】
【０００２】
デジタル送信では、ビットレートの異なるデータを送信することが可能であることが知られている。
【０００３】
たとえば、インターネットによって、ユーザはウェブサーバに格納された映像を見ることができる。多様なユーザが多様な方法（たとえば、無線接続、ケーブル接続、または、光ファイバー接続）でネットワークに接続するので、ウェブサーバは、サポートする映像の品質、つまりビットレートをユーザに選択させることができる。ビットレートが高いほど映像の品質は高いが、エラー送信の可能性が高くなる。
【０００４】
データがＴＣＰ（通信制御プロトコル）プロトコルで送信される場合、エラーが発生すると、データは再送され、ユーザは送信の遅延または不正確なストリーミングとして知覚するだけである。
【０００５】
データがＵＤＰ（ユーザデータグラムプロトコル）プロトコルで送信される場合、受信側はデータストリームを正確な順序で再構築できないので、エラー送信は危機的である。
【０００６】
今日、ビットレートの選択は、従来の試行錯誤的アプローチで行われており、ユーザは、第１のビットレートで通信のセットアップを試み、品質と送信エラーとの間の最良の妥協点が見つかるまで、ビットレートの増減を試みる。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の目的は、データ損失のリスクを低下させてビットレートを増大させるための試行が可能なデータパケット送信方法を提供することである。本発明のさらなる目的は、ビットレートの自動的選択が可能なデータパケット送信方法を提供することである。
【０００８】
これらの目的および他の目的は、本記載の不可欠の部分を構成する添付の特許請求の範囲に記載の特性を有するデータ送信システムおよびデータ送信方法により達成される。
【課題を解決するための手段】
【０００９】
本発明の一観点では、第１グループのデータパケットを第１ビットレートで送信する。この第１グループのデータパケットは、第１ペイロードを含む。第１グループのデータパケットの送信品質を確かめ、第１閾値より高い場合、第２グループのデータパケットを第１ビットレートより大きい第２ビットレートで送信する。第２グループのデータパケットは、第２ペイロードと、送信されるペイロードの整合性を受信側で確かめることが出来るようにする追加的な制御データとを含む。
【００１０】
したがって、この方法は、所定のビットレートでの送信が成功したことを確かめた後、より高いビットレートでデータを送信することによるビットレートの増大を試すことができ、したがって、送信するべき一グループのデータパケットに（ペイロードでなく）制御データを付加することによりビットレートを増大させる段階を備える。
【００１１】
このようにすると、増大させたビットレートでの送信が失敗した場合、付加された制御データを使用することでパケットのデータを修復することができ、増大させたビットレートでの送信が成功した場合、増大させたビットレートを維持し、情報コンテンツ、特に、次グループのデータパケットを増大させることができる。
【００１２】
したがって、この方法では、パケットを損失させることなくビットレートを増大させることができ、この点は、ＵＤＰプロトコル等の所定の送信プロトコルでは非常に重要である。
【００１３】
一つの好適な実施形態では、送信エラー数、または受信側が算出して好ましくは送信側に供給することができるパケット損失率等のその他のパラメータ等の客観的データに基づいて送信品質を評価することにより、自動的かつ動的にビットレートは選択される。このようにすると、チャネル品質が時間の経過により変化する場合、本方法によってビットレートを自動的に修正することができる。
【００１４】
一実施形態では、送信品質（または、それに関連付けられたパラメータ）をビットレートに基づく閾値に比較することにより、ビットレートを増大させる決定を行い、このようにすることで、ビットレートが増大するにつれ、より厳格な条件が品質に課されるようにすることができるようになる。
【図面の簡単な説明】
【００１５】
添付の図面を参照して非限定例として記載される本発明に係るデータパケット送信ビットレートを最適化する方法よびシステムの好適かつ非限定的な実施形態についての詳細な記載を読むことで、本発明のさらなる特性および利点がより明らかとなるであろう。
【００１６】
【図１】コンピュータサーバがクライアントサーバにデータを送信するシステムを示す。
【図２】図１のシステムに実装されるデータ送信方法のフロー図である。
【図３】図２の方法の書く段階で送信される各データパケットを示す。
【図４】図２の方法の書く段階で送信されるデータパケットの第２実施形態を示す。
【図５】図１のシステムに実装可能なデータ送信方法の第２実施形態のフロー図の詳細である。
【００１７】
これらの図面は、本発明の多様な観点および実施形態を示し、適切である場合には、各図面において同様の構造、コンポーネント、部材、および／または、要素は、同様の参照番号で示す。
【発明を実施するための形態】
【００１８】
図１は、コンピュータネットワーク４に接続された複数のクライアントコンピュータ２ａ〜２ｂおよびコンピュータサーバ３を備える通信システム１を示す。好適な実施形態では、コンピュータネットワーク４はインターネットであり、コンピュータサーバ３はクライアントコンピュータ２ａ〜２ｂにサービスを提供するウェブサーバであり、たとえば、ウェブサーバは、映像（たとえば、ＴＶ番組、映画等）をオンデマンドで配信する。
【００１９】
本発明の目的では、コンピュータはパーソナルコンピュータだけを意味するのではなく、ユーザにより操作可能でデータを処理することができるデバイスとして広い意味で理解されるべきであり、非限定例として、クライアントコンピュータは、データ接続（たとえば、インターネット接続）機能を有するラップトップコンピュータ、タブレットコンピュータ、パーム、ＶｏＩＰ（ボイス・オーバー・アイ・ピー）電話、スマートホン、ＴＶセット、またはセットトップボックスであってよい。
【００２０】
コンピュータネットワークの種類およびクライアントに提供されるサービスの種類は、本発明において限定されず、本発明は、２つのコンピュータがデータを交換する多様なネットワークに適用することができ、非限定例として、ネットワーク４は、ＬＡＮ（ローカルエリアネットワーク）、ＷＡＮ（ワイドエリアネットワーク）、ＭＡＮ（メトロポリタンエリアネットワーク）等のコンピュータネットワーク、または、ＵＭＴＳ（ユニバーサル・モバイル・テレコミュニケーション・システム）、ＬＴＥ（ロング・ターム・エボリューション）等の電話ネットワークであってよい。図１に戻ると、システム１は、図２を参照して記載される通信方法を実施する。
【００２１】
クライアントコンピュータ２ａは、インターネット４を介して、コンピュータサーバ３（この場合、ウェブサーバ）に、データのストリーミングを（特に、ＵＤＰプロトコルにしたがって）送信するよう要求する（段階２０１）。たとえば、クライアントコンピュータ２ａは、ウェブサーバ３に格納された映像コンテンツの閲覧を要求する。
【００２２】
好適な実施形態では、クライアントコンピュータ２ａの要求は、接続の種類および／またはクライアント接続の帯域幅要件に関する情報を含む。
【００２３】
コンピュータサーバは、送信のための第１ビットレートを選択する（段階２０２）が、このビットレートは、所定のビットレートであってよく、または、段階２０１でクライアントコンピュータ２ａから送信されたサービス要求と一緒に受信したクライアント接続に関する情報に基づいて選択されるビットレートであることが好ましい。
【００２４】
一実施形態では、送信されるデータは、所定の圧縮ビットレートで圧縮されており、したがって、パケット送信ビットレートは、当該接続がサポートする最大ビットレートと送信されるＺ個のパケットの最大圧縮ビットレートとの間の最大点として選択される。データが可変圧縮ビットレートを有する場合、たとえば、マルチメディアデータである場合、送信ビットレートは、平均または最大の圧縮ビットレートとして選択される。
【００２５】
コンピュータサーバは、サービスを要求したクライアントコンピュータに、Ｚ個（Ｚは整数）のデータパケットを含む第１グループのデータパケットを送信する（段階２０３）が、送信は、本方法の先の段階で決められたビットレートで実行される。好適な実施形態では、各データパケット（図３では参照番号３０１で示される）は、ペイロードＰと、少なくとも受信したペイロードが完全であり破損していないこと、つまり、送信エラーが発生したか否かを確認するべく受信側に使用される制御データＣとを含む。
【００２６】
より一般的には、Ｚ個のデータパケットは、ペイロード、および、同じデータパケットに統合することができる制御データ、または、別個のデータパケットとして送信することができる制御データを含む。本発明の目的では、ペイロードは、一つのコンピュータから別のコンピュータに送信される実際のデータを意味し、制御データおよびヘッダ情報は、ペイロードではない。
【００２７】
クライアントコンピュータは、この第１グループのデータパケットの送信中に何個のエラーが発生したかをカウントする、つまり、何個のデータパケットまたは何個のビットがクライアントコンピュータによって正確に受信されなかったかをカウントする（段階２０４）。
【００２８】
Ｚ個のデータパケットを受信すると、クライアントコンピュータ２ａは、コンピュータサーバ３に送信品質を通知する。たとえば、クライアントコンピュータ２ａは、送信品質に反比例する送信エラー数に関する情報を生成して、コンピュータサーバ３に送信する。コンピュータサーバ３は、この情報を受信し、送信エラーが所定の閾値ε以上であるかを確認する（段階２０５）。エラーがこの閾値より多い場合、本方法では、ビットレートを減少させて送信を継続するので、ビットレートを下げて（段階２０６）、段階２０３に戻る。
【００２９】
エラーが閾値εより少ない場合、本方法では、ビットレートを増大させることが可能であるかを評価する（段階２０７）が、ビットレートが既にチャネルがサポートする最大値である場合、本方法では、段階２０３に戻り、Ｚ個のデータパケットを含む次のグループのデータパケットを同じ最大ビットレートで送信し、最大値でない場合は、本方法では、ビットレートを増大させ、増大させたビットレートでの通信をクライアントコンピュータがサポートできるかを確認する。
【００３０】
一実施形態では、閾値εは、ビットレートに基づく。
【００３１】
一実施形態では、図３を参照して記載する方法によってビットレートを増大させる。
【００３２】
次に送信するデータパケットのそれぞれ（図３では参照番号３０２で示す）について、コンピュータサーバ３は、対応する送信データペイロードＰに付加する追加的な制御データＣ１を生成（段階２０８）し、したがって、新しいデータパケットは、以前に送信したデータパケットと同一量の情報コンテンツと、追加的な制御情報Ｃ１とを含む。
【００３３】
データパケット構造の変更を必要としない図４に示す別の実施形態では、追加的なデータパケット（図４の４０３）として制御情報Ｃ１を付加することによりビットレートを増大させる。どちらの場合にも、制御データＣ１のサイズは、所望のビットレートが得られるように決められる。
【００３４】
一実施形態において、本方法では、所定のビットレート値での送信を行い、したがって、ビットレートが増減されるたび、隣接する次に大きい値または次に小さい値が選択され、送信に使用される。
【００３５】
別の実施形態において、本方法では、クライアントコンピュータから受信したフィードバックに基づいてビットレートを選択し、所定のビットレートでの送信品質が特に良好であった場合、そのビットレートの次に大きいビットレートを選択し、たとえば、クライアントコンピュータが記録したエラーの数に基づいてビットレートを決定することができる。
【００３６】
さらなる実施形態では、ビットレートは、クライアントコンピュータから受信した送信品質に関するフィードバックに基づいて、毎回算出される。好適な実施形態では、追加的な制御データＣ１は、送信エラーにより損失したペイロードデータの修復に用いられるように、ＦＥＣ（順方向誤り訂正）法にしたがって生成される。ユーザが送信エラーを発見し、好ましくは、データエラーを修復するためにも使用することができるデータを生成することができるのであれば、制御データを生成するその他の方法を用いることができる。
【００３７】
本方法では、次に、図３の実施形態にしたがって、それぞれがペイロードＰと、制御データＣと、追加的な制御データＣ１とを含むＺ個のデータパケットからなる新しいグループのデータパケットを送信する（段階２０９）。
【００３８】
明らかに、図４を参照して上記したように追加的な制御データを追加パケットとして付加することによりビットレートを増大させた場合には、本方法では、段階２０９において、Ｚ１（Ｚ１＞Ｚ）個のデータパケットを含む新しいグループのデータパケットを送信する。したがって、この新しいグループは、段階２０３でＺ個のデータパケットを含む第１グループのデータパケットにより送信された量と同じ全体量のペイロードを搬送するが、追加的な制御パケットＣ１も搬送する。
【００３９】
次に、コンピュータサーバは、クライアントコンピュータから、発生した送信エラーの数に関する情報を含むフィードバックを受信するまで待機する（段階２１０）。
【００４０】
再び、コンピュータサーバは、エラーが所定の閾値εより多いか少ないか、つまり、品質が所定の閾値より高いかを確認する（段階２１１）。エラーが閾値εより少ない場合、本方法では、段階２０３に戻り、コンピュータサーバは、ビットレートを増大させ、しかし追加的な制御データＣ１なしで、第３グループのデータパケットを送信する。したがって、これらのデータパケットは、より多くのデータ、つまり、先ほど段階２０９で送信したパケットよりもより多くの情報コンテンツを搬送している。図３は、ビットレートを増大させてより多くのデータを搬送できる、ペイロードが増大したデータパケット３０３の例を示す。または、図４に示すように、追加的な制御データＣ１の代わりにペイロードを追加することによりペイロードを増大させることができ、第３グループのパケットは、追加されたデータパケット４０４を含むこととなる。この実施形態では、段階２１１から段階２０３に戻ると、ＺはＺ１に設定され、以降の段階２０３で送信されるデータパケットの数は、段階２０９で送信されるデータパケットの数と等しくなり、つまり、段階２０３でのビットレートは、段階２０９で試行されたビットレートになる。
【００４１】
段階２１１で確認されたエラーが閾値ε以上である場合、本方法は段階２０６に戻り、ビットレートを減少させる。
【００４２】
本方法は、クライアントコンピュータ２ａに送信するべき全データパケットが送信されるまで繰り返されるので、ビットレートの自動的かつ動的な制御が可能になる。
【００４３】
図３および図４は、上記の方法の各段階における各データパケットのコンテンツを理解できるようにしたものである。
【００４４】
図３では、データパケット３０１は、第１ビットレートで送信されるデータパケット、つまり、段階２０２から２０３でコンピュータサーバからクライアントコンピュータに送信される第１パケットである。図３の実施形態では、各データパケット３０１は、Ｐビット（Ｐは整数）のペイロード３０１０と、Ｃビット（Ｃは整数）の制御データ３０１１とを含む。
【００４５】
データパケット３０２は、種類３０１の第１グループのデータパケットが良好に受信されたためにビットレートを増大させると決定した後の段階２０９で送信されるデータパケットである。各データパケット３０２は、Ｐビット（Ｐは整数）のペイロード３０２０と、Ｃビット（Ｃは整数）の制御データ３０２１と、ビットレートを増大させるべく必要とされるＣ１ビット（Ｃ１は整数）の追加的な制御データ３０２２とを含む。したがって、第２グループのデータパケット３０２の送信ビットレートは、１パケット当たりのビット数が増えるようにパケットのフォーマットを変更することにより増大される。
【００４６】
データパケット３０３は、本方法が段階２１１から段階２０３に進んだ場合に、ビットレートを増大させて送信されるデータパケットである。各データパケット３０３は、Ｐ１ビット（Ｐ１はＰより大きい整数）のペイロード３０３０と、Ｃ０ビット（Ｃ０は整数）の制御データ３０３１とを含む。
【００４７】
矢印３１０は、段階２０３から段階２０９に進む場合、つまり本方法がビットレートを増大させて通信を試行する場合におけるデータパケットフォーマットの変更を示す。矢印３２０は、段階２１１から段階２０３に進む場合、つまり本方法が、パケット３０２が良好に送信されたことを確かめ、ビットレートを増大させて通信を継続すると決定し、したがってペイロードを増大させて追加的な制御データＣ１を削除した場合において、データパケットにより搬送される全ペイロードの変更を示す。
【００４８】
矢印３３０および３４０は、本方法が所定のビットレートでの送信に失敗し、したがって、ビットレートを減少させると決定した場合におけるデータパケットの変更を示す。特に、矢印３３０は、段階２１１から段階２０６を介して段階２０３に進む場合のデータパケットの変更を示す。矢印３４０は、段階２０５から段階２０６を介して段階２０３に進む場合のデータパケットの変更を示す。
【００４９】
図４において、パケット４０１および４０２は、第１ビットレートで送信されるパケット、つまり、段階２０２から段階２０３でコンピュータサーバからクライアントコンピュータに送信される第１パケットである。図４の実施形態では、パケット４０１は、ペイロード４０１０を含むデータパケットであり、パケット４０２は、制御データ４０１１を搬送する。パケット４０１および４０２は、両方とも、同一のフォーマットであり、同一数Ｍ（Ｍは整数）のビットを含む。
【００５０】
図４の実施形態では、図３を参照して記載したようにデータパケットのフォーマットを変更するのでなく、データパケットの数を増やすことにより、ビットレートを増大させる。そのため、第２グループのデータパケットは、種類４０１および４０２の第１グループのデータパケットが良好に受信されたためにビットレートを増大させると決定した後、段階２０９で送信されるデータパケットであるデータパケット４０１ａ、４０２ａ、および４０３を含む。データパケット４０１ａおよび４０２ａは、パケット４０１および４０２と同一種類であり、したがって記載を省略する。パケット４０３は、ビットレートを増大させるべく必要とされる追加的な制御データ４０２２を搬送する。データパケット４０１ａ、４０２ａ、および４０３は、全て同一のフォーマットであり、同一数Ｍのビットを服務。
【００５１】
本方法が段階２１１から段階２０３に進むと、図４の実施形態では、第３グループのデータパケット４０１ｂ、４０２ｂ、および４０４が送信される。パケット４０１ｂおよび４０４は、ペイロード４０１０およびペイロード４０４０をそれぞれ含むデータパケットであり、パケット４０２ｂは、制御データ４０１１を搬送する。パケット４０１ｂ、４０２ｂ、および４０４の全てが同一のフォーマットであり、同一数Ｍ（Ｍは整数）のビットを含む。
【００５２】
矢印４１０は、段階２０３から段階２０９に進む場合、つまり、本方法がビットレートを増大させて通信を試行する場合に送信されるデータパケットの変更を示す。
【００５３】
矢印４２０は、段階２１１から段階２０３に進む場合、つまり、本方法が、パケット３０２が良好に送信されたことを確かめ、ビットレートを増大させて通信を継続すると決定し、したがって、パケット４０４を付加し、追加的な制御データＣ１（図４のパケット４０３）を削除することにより、ペイロードを増大させる場合に送信されるデータパケットの変更を示す。
【００５４】
矢印４３０および４４０は、本方法が所定のビットレートでの送信に失敗し、したがってビットレートを減少させた場合に送信されるデータパケットの変更を示す。特に、矢印４３０は、段階２１１から段階２０６を介して段階２０３に進む場合のデータパケットの変更を示す。矢印４４０は、段階２０５から段階２０６を介して段階２０３に進む場合におけるデータパケットの変更を示す。
【００５５】
上記の記載は、本発明が意図された目的を達成し、特に、従来技術のいくつかの欠点を克服したことを示す。
【００５６】
本発明に係るデータ送信システムおよびデータ送信方法は、添付の特許請求の範囲に定義される発明の概念に含まれると考えられる数多くの変更および改変が可能である。あらゆる詳細は、本発明の範囲から逸脱することなく、技術的に均等な要素により代替可能である。
【００５７】
一つの変更例では、システマティックなＦＥＣデータ（たとえば、データＣ１）を所定のデータパケットに付加してビットレートを増大させる（図２の段階２０８）代わりに、受信側が配信されたパケットの整合性を検証して、最終的にデータを修復することができるようにしつつ、ビットレートを増大させる非システマティックなスキームを用いることができる。非システマティックなスキームを用いる一例では、本方法は、ペイロードおよび制御データＣを含むパケットを符号化して、符号化対象のパケットよりも多くのビットを含む長さが増大したデータパケットを取得する。別の実施形態では、データパケット３０２のデータ（ペイロードおよび制御）に置換される非システマティックなＦＥＣデータを用いることができる。
【００５８】
上記の実施形態では、ビットレートを増減させる決定はエラーの数εに基づいていたが、送信品質を表すその他のパラメータを考慮することができる。一実施形態では、ビットレートを増減させるかの決定（図２の段階２０５および段階２１１）は、損失したパケットの数と送信した全パケットの数との重み付け比として算出されたパケット損失に基づいており、パケットの優先順位の高低によって異なる重みを割り当てる。送信品質は、パケット損失率の逆数として測定される。たとえば、パケット損失率は以下のように算出される。
【００５９】
【数１】
2013544475.tif 000003
【００６０】
ここで、Ｒはパケット損失率であり、Ｐｌは優先順位が低いパケットであり、Ｐｈは優先順位が高いパケットであり、Ｐｌｌは低優先順位パケットの損失であり、Ｐｌｈは高優先順位パケットの損失であり、ａおよびｂは定数であり、ｂ＞ａである。
【００６１】
パケット損失率は、高優先順位パケットの損失を低優先順位パケットの損失よりも重大であると見なすので、サービス品質を考慮に入れることが可能である。一実施形態では、Ｒは、ビットレートに依存し、ビットレートが増大するほど、許容されるＲが低くなるようにして、ビットレートが高いコンテンツの知覚される品質が、ビットレートが低いものよりも良好になるように選択または算出されることが好ましい。
【００６２】
さらに、上記の方法は、測定された品質（たとえば、エラーの数またはパケット損失率）を単一の閾値（たとえば、図２の実施形態のε）と比較することによりビットレートを増減させるかを決定する。単一の閾値の使用は必須ではなく、好適な変更例では、本方法は、２つの異なる閾値、つまり、一つはビットレートを増大させるための（ε１）、もう一つはビットレートを減少させるための（ε２）を使用する。図２の段階２０５は、図５に示すように、評価段階のシーケンスを拡張することができ、送信エラーの数を測定し、ブロック２０５をブロック２０５＊に置き換える。エラーの数がε１より少ない場合、本方法は、図２を参照して説明したように段階２０７に進む。エラーの数がε１より多く、ε２より少ない場合、本方法は、次のグループのパケットを同一のビットレートで送信するので、本方法は、図２の段階２０３に進む。エラーの数がε２より多い場合、本方法は、ビットレートを減少させるので、本方法は段階２０６に進む。
【００６３】
この技術により、ビットレートの状態がより安定する。
【００６４】
上記の方法では完全に自動的なビットレート制御を示したが、本発明は、制御方法を混合する場合にも適用することができ、ユーザは、ビットレートの選択に関与する。
【００６５】
一実施形態では、本方法は、クライアントコンピュータがどの時点で品質が低下したかを判定し、サーバコンピュータにビットレートの増大を停止するよう通知するまで、ビットレートの増大を「継続」させる。増大を「継続」させるという文言は、漸進的に増大させることを意味すると理解されるべきであり、たとえば、ビットレートは、毎回、１〜１０ビット／秒（好ましくは、１〜３ビット／秒）だけ増大される。この技術は、クライアントコンピュータにおいて、その他のアプリケーションを実行するための資源の確保が望まれる場合に、有用である。
【００６６】
上記の方法の別の変更例では、クライアントコンピュータが、コンピュータサーバについて上記した通りにビットレートを増減させるかを決定するための全ての評価を実行する。この場合、クライアントコンピュータは、選択したビットレート（増大または減少されている）の情報をコンピュータサーバに直接的に送信し、コンピュータサーバは、選択されたビットレートでデータパケットを送信する。一実施形態では、クライアントコンピュータは、以下のことをコンピュータサーバに通知することができる。  −ビットレートは「仮」のものであり、追加的な制御データＣ１を含むデータパケット、たとえば、図３の実施形態におけるデータパケット３０２、または、図４の実施形態におけるパケット４０１ａ、４０２ａ、および４０３を送信して新しいビットレートを試す必要がある旨。  −ビットレートは「試行済み」であり、追加的な制御データを含まないデータパケット、たとえば、図３の実施形態におけるデータパケット３０３、または、図４の実施形態におけるパケット４０１ｂ、４０２ｂ、および４０４を送信する必要がある旨。
【００６７】
したがって、図２を参照して上記した方法の決定段階は、クライアントコンピュータまたはコンピュータサーバが実行することができる。
【００６８】
添付の図面を特に参照してシステムおよび方法を記載したが、記載および特許請求の範囲で言及される数値は、本発明のより良好な理解を促すべく使用しているのであり、特許請求の範囲をいかなる意味においても限定するものでないと理解されるべきである。
【図１】
2013544475.tif 000005
【図２】
2013544475.tif 000006
【図３】
2013544475.tif 000007
【図４】
2013544475.tif 000008
【図５】
2013544475.tif 000009
【国際調査報告】
2013544475.tif 000010
2013544475.tif 000011
2013544475.tif 000012