(57)【要約】      （修正有）【課題】サーバにおいてマルチビットレートストリーミングメディアをアダプティブに提供するための方法及び装置を提供する。【解決手段】マルチビットレートストリーミングメディアをアダプティブに提供する方法は、ネットワーク品質情報を取得し、ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定した場合に、すべてのキューから１つのキューを送信キューとして選択する。ここで、異なるキューには、同じメディアコンテンツに対する異なるビットレートのマルチメディアデータフレームが記憶されている。そして、送信キューからマルチメディアデータフレームを読み出して配布し、ほかのキューにおける、配布したマルチメディアデータフレームと同じメディアコンテンツを有するマルチメディアデータフレームを削除する。【選択図】図１
2020043583.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク品質情報を取得するステップと、
前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定した場
合に、すべてのキューから１つのキューを送信キューとして選択するステップと、
前記送信キューからマルチメディアデータフレームを読み出して配布し、ほかのキュー
における、配布したマルチメディアデータフレームのメディアコンテンツと同じメディア
コンテンツを有するマルチメディアデータフレームのいずれもを削除するステップと、を
含んでおり、
ここで、異なるキューにおいて、同じメディアコンテンツに対する異なるビットレート
のマルチメディアデータフレームが記憶された
ことを特徴とするサーバにおいてマルチビットレートストリーミングメディアをアダプ
ティブに提供するための方法。
【請求項２】
前記ネットワーク品質情報はキューのデータ充填率を含む
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記のネットワーク品質情報を取得するステップにおいては、送信キューのデータ充填
率を取得するステップを含む
ことを特徴とする請求項２に記載の方法。
【請求項４】
前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定するス
テップにおいては、
前記データ充填率が第１閾値よりも大きい場合に、低ビットレートへの切り替えを必要
とすると決定するステップと、
前記データ充填率が第２閾値よりも小さい場合に、高ビットレートへの切り替えを必要
とすると決定するステップと、を含んでおり、
ここで、前記第１閾値は前記第２閾値よりも大きい
ことを特徴とする請求項２に記載の方法。
【請求項５】
前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定するス
テップにおいては、
前記データ充填率が第１閾値よりも大きく、且つ現在の時点と前回のビットレート切り
替え時点との間隔が所定時間を超える場合に、低ビットレートへの切り替えを必要とする
と決定するステップと、
前記データ充填率が第２閾値よりも小さく、且つ現在の時点と前回のビットレート切り
替え時点との間隔が所定時間を超える場合に、高ビットレートへの切り替えを必要とする
と決定するステップと、を含む
ことを特徴とする請求項２に記載の方法。
【請求項６】
前記の前記送信キューからマルチメディアデータフレームを読み出して配布するステッ
プにおいては、
切り替えの前の送信キューからマルチメディアデータフレームにおけるキーフレームを
読み出して配布する必要がある場合に、前記切り替えの後の送信キューからマルチメディ
アデータフレームを読み出して配布するステップを含む
ことを特徴とする請求項１〜５のいずれか１項に記載の方法。
【請求項７】
異なるキューに記憶されたマルチメディアデータフレームは同一のグループオブピクチ
ャＧＯＰ構造を有する
ことを特徴とする請求項１〜５のいずれか１項に記載の方法。
【請求項８】
各種のビットレートは１つのＧＯＰキャッシュに対応し、
符号化処理済みのマルチメディアデータフレームを異なるビットレートのマルチメディ
アデータフレームにトランスコードするステップと、
トランスコード済みの異なるビットレートのマルチメディアデータフレームを対応する
ＧＯＰキャッシュにそれぞれ記憶するステップと、
各ＧＯＰキャッシュからマルチメディアデータフレームを同期読み出して、読み出した
マルチメディアデータを対応するキューにそれぞれ記憶するステップと、をさらに含む
ことを特徴とする請求項７に記載の方法。
【請求項９】
各キューの記憶空間に格納可能なマルチメディアデータフレームの数は同一であり、各
キューの記憶空間はいずれも２つのマルチメディアデータフレームが占有する記憶空間以
上である
ことを特徴とする請求項１〜５のいずれか１項に記載の方法。
【請求項１０】
ネットワーク品質情報を取得するための装置と、
前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定した場
合に、すべてのキューから１つのキューを送信キューとして選択するための装置と、
前記送信キューからマルチメディアデータフレームを読み出して配布し、ほかのキュー
における、配布したマルチメディアデータフレームのメディアコンテンツと同じメディア
コンテンツを有するマルチメディアデータフレームのいずれもを削除するための装置と、
を備えており、
ここで、異なるキューにおいて、同じメディアコンテンツに対する異なるビットレート
のマルチメディアデータフレームが記憶された
ことを特徴とするサーバにおいてマルチビットレートストリーミングメディアをアダプ
ティブに提供するための装置。
【請求項１１】
前記ネットワーク品質情報はキューのデータ充填率を含む
ことを特徴とする請求項１０に記載の装置。
【請求項１２】
前記ネットワーク品質情報を取得するための装置は、送信キューのデータ充填率を取得
するための装置を備える
ことを特徴とする請求項１１に記載の装置。
【請求項１３】
前記の前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定
した場合に、すべてのキューから１つのキューを送信キューとして選択するための装置は
具体的には、
前記データ充填率が第１閾値よりも大きい場合に、低ビットレートへの切り替えを必要
とすると決定し、
前記データ充填率が第２閾値よりも小さい場合に、高ビットレートへの切り替えを必要
とすると決定することに用いられており、
ここで、前記第１閾値は前記第２閾値よりも大きい
ことを特徴とする請求項１１に記載の装置。
【請求項１４】
前記の前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定
した場合に、すべてのキューから１つのキューを送信キューとして選択するための装置は
具体的には、
前記データ充填率が第１閾値よりも大きく、且つ現在の時点と前回のビットレート切り
替え時点との間隔が所定時間を超える場合に、低ビットレートへの切り替えを必要とする
と決定し、
前記データ充填率が第２閾値よりも小さく、且つ現在の時点と前回のビットレート切り
替え時点との間隔が所定時間を超える場合に、高ビットレートへの切り替えを必要とする
と決定することに用いられており、
ここで、前記第１閾値は前記第２閾値よりも大きい
ことを特徴とする請求項１１に記載の装置。
【請求項１５】
前記の前記送信キューからマルチメディアデータフレームを読み出して配布し、ほかの
キューにおける、配布したマルチメディアデータフレームのメディアコンテンツと同じメ
ディアコンテンツを有するマルチメディアデータフレームのいずれもを削除するための装
置は具体的には、
切り替えの前の送信キューからマルチメディアデータフレームにおけるキーフレームを
読み出して配布する必要がある場合に、前記切り替えの後の送信キューからマルチメディ
アデータフレームを読み出して配布することに用いられる
ことを特徴とする請求項１０〜１４のいずれか１項に記載の装置。
【請求項１６】
異なるキューに記憶されたマルチメディアデータフレームは同一のグループオブピクチ
ャＧＯＰ構造を有する
ことを特徴とする請求項１０〜１４のいずれか１項に記載の装置。
【請求項１７】
各種のビットレートは１つのＧＯＰキャッシュに対応し、
符号化処理済みのマルチメディアデータフレームを異なるビットレートのマルチメディ
アデータフレームにトランスコードするための装置と、
トランスコード済みの異なるビットレートのマルチメディアデータフレームを対応する
ＧＯＰキャッシュにそれぞれ記憶するための装置と、
各ＧＯＰキャッシュからマルチメディアデータフレームを同期読み出して、読み出した
マルチメディアデータを対応するキューにそれぞれ記憶するための装置と、をさらに備え
る
ことを特徴とする請求項１６に記載の装置。
【請求項１８】
各キューの記憶空間に格納可能なマルチメディアデータフレームの数は同一であり、各
キューの記憶空間はいずれも２つのマルチメディアデータフレームが占有する記憶空間以
上である
ことを特徴とする請求項１０〜１４のいずれか１項に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク技術に関し、特にサーバにおいてマルチビットレートストリー
ミングメディアをアダプティブに提供するための方法及びサーバにおいてマルチビットレ
ートストリーミングメディアをアダプティブに提供するための装置に関する。
【背景技術】
【０００２】
ストリーミングメディア技術を用いてネットワークにおいてストリーミングの方式でオ
ーディオやビデオ等のメディアコンテンツを伝送することできる。ストリーミングメディ
ア技術はリアルタイム性が高いという特徴を有するため、ビデオオンデマンド、ビデオ会
議、遠隔教育、遠隔医療及びライブオンライン等のシステムに幅広く適用されている。
【０００３】
ストリーミングメディアサーバがユーザーにマルチビットレートストリーミングメディ
アサービスを提供する方式は、通常、以下の２種類を含む。
【０００４】
方式１、ユーザーはネットワークの状況に応じて「スムーズ」、「クリア」又は「ＨＤ
」等の再生オプションを選択し、サーバはユーザーの選択した再生オプションに応じたビ
ットレートのメディアストリームを当該ユーザーに提供する。
【０００５】
方式２、ＨＬＳ（ＨＴＴＰ  Ｌｉｖｅ  Ｓｔｒｅａｍｉｎｇ、ＨＴＴＰライブストリー
ミング）を用いてユーザーにマルチビットレートストリーミングメディアをアダプティブ
に提供し、具体的には、ストリーミングメディアサーバによってユーザーに配布されるメ
ディアストリームはビデオクリップからなり、各ビデオクリップは１０秒のメディアコン
テンツを再生できるマルチメディアデータを含み、ストリーミングメディアサーバはネッ
トワークの品質に応じて異なるビットレートのメディアストリームをユーザーにアダプテ
ィブに提供することができる。
【０００６】
発明者は、本発明を実現する過程で、上記方式１ではユーザーが選択した再生オプショ
ンに応じたビットレートのメディアストリームをユーザーにプッシュするため、ユーザー
にマルチビットレートストリーミングメディアをアダプティブに提供することができず、
知能レベルが不足しており、また、ユーザーは一般的に再生がカクカクしたりモザイクが
生じたりする等の再生異常が発生する場合に再生オプションを変更するため、上記方式１
ではユーザーエクスペリエンスを損なうことがある。上記方式２では方式１の技術的課題
を解決できるが、ビデオクリップの再生時間によってビットレート切り替えに大きな遅延
を生じさせる。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、サーバにおいてマルチビットレートストリーミングメディアをアダプティブ
に提供するための方法及び装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一態様によれば、サーバにおいてマルチビットレートストリーミングメディア
をアダプティブに提供するための方法を提供し、この方法は、前記ネットワーク品質情報
に基づいてビットレート切り替えを必要とすると決定した場合に、すべてのキューから１
つのキューを送信キューとして選択するステップと、前記送信キューからマルチメディア
データフレームを読み出して配布し、ほかのキューにおける、配布したマルチメディアデ
ータフレームのメディアコンテンツと同じメディアコンテンツを有するマルチメディアデ
ータフレームのいずれもを削除するステップと、を含んでおり、ここで、異なるキューに
おいて、同じメディアコンテンツに対する異なるビットレートのマルチメディアデータフ
レームが記憶された。
【０００９】
本発明の別の態様によれば、サーバにおいてマルチビットレートストリーミングメディ
アをアダプティブに提供するための装置を提供し、この装置は、ネットワーク品質情報を
取得するための装置と、前記ネットワーク品質情報に基づいてビットレート切り替えを必
要とすると決定した場合に、すべてのキューから１つのキューを送信キューとして選択す
るための装置と、前記送信キューからマルチメディアデータフレームを読み出して配布し
、ほかのキューにおける、配布したマルチメディアデータフレームのメディアコンテンツ
と同じメディアコンテンツを有するマルチメディアデータフレームのいずれもを削除する
ための装置と、を備えており、ここで、異なるキューにおいて、同じメディアコンテンツ
に対する異なるビットレートのマルチメディアデータフレームが記憶された。
【００１０】
従来技術に比べて、本発明は以下の利点を有する。本発明は、複数のキューを設定し、
各キューに対応するビットレートを異ならせることで、同じメディアコンテンツの、ビッ
トレートが異なるマルチメディアデータフレームを異なるキューにそれぞれ設定すること
ができ、それにより、ネットワーク品質情報に基づいてビットレート切り替えを必要とす
ると決定した場合に、本発明はすべてのキューから現在のネットワーク品質により適合す
るビットレートに対応する１つのキューを選択し、当該選択したキューからマルチメディ
アデータフレームを読み出して配布し、ビットレート切り替えを迅速に実現することがで
きる。本発明は、現在配布しているマルチメディアデータフレームに対して、各キューに
おける対応するマルチメディアデータフレームを削除して、各キューの先頭のマルチメデ
ィアデータフレームのいずれもを同じメディアコンテンツ対する異なるビットレートのマ
ルチメディアデータフレームにすることにより、いつビットレート切り替えを必要とする
と決定しても、ビットレート切り替え動作によるメディアコンテンツの連続性を損なうこ
となく、ビットレート切り替えを迅速に実現できる。上記からわかるように、本発明に係
る技術案はアダプティブビットレート切り替えを実現するとともに、ビットレート切り替
えの遅延を低減させ、迅速かつシームレスなアダプティブビットレート切り替えを実現で
きる。
【００１１】
次に、以下の図面を参照しながら非限定的な実施例を詳細に説明することにより、本発
明の他の特徴、目的および利点はより明らかになる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施例１に係るサーバにおいてマルチビットレートストリーミングメディアをアダプティブに提供するための方法のフローチャートである。
【図２】本発明の実施例２に係るライブビデオの応用場面において、ストリーミングメディアサーバがユーザーにマルチビットレートストリーミングメディアをアダプティブに提供する方法の概略図である。
【図３】本発明の実施例４に係るサーバにおいてマルチビットレートストリーミングメディアをアダプティブに提供するための装置の構成概略図である。
【発明を実施するための形態】
【００１３】
図面において、同じ又は類似する符号は同じ又は類似する部品を示す。
【００１４】
例示的な実施例をさらに詳しく検討する前に、いくつかの例示的な実施例がフローチャ
ートとして記述される処理又は方法として説明されることを理解すべきである。フローチ
ャートは各操作を順序に従う処理として示すが、多くの操作は並行して、付随して又は同
時に実行可能である。また、各操作の順序は再配置可能である。操作が完成した際に前記
処理を終止できるが、図面に含まれない追加ステップをさらに含んでもよい。前記処理は
、方法、関数、ルーチン、サブルーチン、サブプログラムなどに対応可能である。
【００１５】
文脈に言及される「コンピュータ機器」は「コンピュータ」とも言われ、所定のプログ
ラム又は命令を実行することによって数値計算及び／又は論理計算などの所定処理過程を
実行できるインテリジェント電子機器であり、プロセッサやメモリを含んでもよく、所定
処理過程が、プロセッサがメモリに予め記憶された命令を実行することによって実行され
るか、ＡＳＩＣ、ＦＰＧＡ、ＤＳＰなどのハードウェアによって実行されるか、又は、上
記両方の組み合わせによって実現される。コンピュータ機器はサーバ、パソコン、ノート
パソコンなどを含むが、これらに限らない。
【００１６】
前記コンピュータ機器はユーザ機器とネットワーク機器を含む。前記ユーザ機器はコン
ピュータ、スマートフォン、ＰＤＡなどを含むが、これらに限らず、前記ネットワーク機
器は単一のネットワークサーバ、複数のネットワークサーバで構成されるサーバグループ
、或いはクラウドコンピューティング（Ｃｌｏｕｄ  Ｃｏｍｐｕｔｉｎｇ）に基づいて大
量のコンピュータ又はネットワークサーバで構成されるクラウドを含むが、これらに限ら
ず、ここで、クラウドコンピューティングは分散型コンピューティングの一種であり、疎
結合される複数のコンピュータセットで構成されるスーパーバーチャルコンピュータであ
る。前記コンピュータ機器は、単独に動作することによって本発明を実現してもよく、ネ
ットワークにアクセスしてネットワークにおける他のコンピュータ機器とのインタラクテ
ィブ操作によって本発明を実現してもよい。前記コンピュータ機器の位置するネットワー
クはインターネット、広域ネットワーク、メトロポリタンエリアネットワーク、ローカル
エリアネットワーク、ＶＰＮネットワークなどを含むが、これらに限らない。
【００１７】
なお、前記ユーザ機器、ネットワーク機器及びネットワークなどは例示的なものに過ぎ
ず、別の従来又は今後の出現可能なコンピュータ機器やネットワークは本発明に適用でき
る限り、本発明の保護範囲にも包含されるべきであり、援用によって本発明に組み込まれ
る。
【００１８】
以下に検討する方法（一部はフローチャートとして示される）はハードウェア、ソフト
ウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語又はそ
れらの任意の組み合わせによって実現可能である。ソフトウェア、ファームウェア、ミド
ルウェア又はマイクロコードによって実施する場合に、必要なタスクを実施するためのプ
ログラムコード又はコードスニペットはデバイス又はコンピュータ読み取り可能な媒体（
例えば記憶媒体）に記憶されてもよい。（１つ又は複数の）プロセッサは必要なタスクを
実行できる。
【００１９】
ここで開示する具体的な構造や機能の詳細はただ代表的なものに過ぎず、且つ本発明の
例示的な実施例を説明することを目的とする。本発明は、多くの代替形態によって具体的
に実現されてもよく、ここで説明する実施例のみに制限されると解釈されない。
【００２０】
なお、各ユニットを説明する時に専門用語「第１」、「第２」などを使用するが、これ
らのユニットはこれらの専門用語に制限されないことを理解すべきである。１つのユニッ
トと別のユニットを区別するために、これらの専門用語が使用される。例えば、例示的な
実施例の範囲を脱逸せずに、第１ユニットは第２ユニットと称されてもよく、同様に、第
２ユニットは第１ユニットと称されてもよい。ここで使用する専門用語「及び／又は」は
１つ又は複数の列記した関連項目の任意の組み合わせと全ての組み合わせを含む。
【００２１】
なお、１つのユニットが別のユニットに「接続」又は「結合」されるように説明する際
に、前記別のユニットに直接接続又は結合されてもよく、又は中間ユニットが存在しても
よい。これに対して、１つのユニットが別のユニットに「直接接続」又は「直接結合」さ
れるように説明する際に、中間ユニットが存在しない。類似して、ユニット同士の関係を
説明するための他の用語（例えば「…の間に位置する」と「…の間に直接位置する」、「
…と隣接する」と「…と直接隣接する」）の意味も同様である。
【００２２】
ここで使用する専門用語は具体的な実施例を説明するに過ぎず、例示的な実施例を制限
することを意図しない。文脈に断らない限り、使用する単数形式の「１つ」、「１項」は
複数を含むことも意図する。さらに、ここで使用する専門用語 「含む」及び／又は「包
含」は記述する特徴、整数、ステップ、操作、ユニット及び／又は部品の存在を示し、１
つ又は複数の他の特徴、整数、ステップ、操作、ユニット、部品及び／又はその組み合せ
の存在や追加を排除しないことを理解すべきである。
【００２３】
さらに、いくつかの置換実施形態では、言及した機能／動作は図面に示される順序と異
なる順序で発生してもよい。例えば、かかる機能／動作によって、相次いで示す２枚の図
については、実際に大体同時に実行されてもよく、時々逆の順序で実行されてもよい。
【００２４】
以下、図面を参照して本発明をより詳細に説明する。
【実施例】
【００２５】
［実施例１：サーバにおいてマルチビットレートストリーミングメディアをアダプティブ
に提供するための方法］
本実施例では、ビットレートと同数のキューを用いてユーザーにマルチビットレートス
トリーミングメディアサービスをアダプティブに提供する。本実施例の方法はストリーミ
ングメディアサーバにより実行される。本実施例では、キューとは、論理上で複数のマル
チメディアデータフレームを順に記憶できる記憶空間であり、例えば、本実施例に記載の
キューはリンクリスト又はＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎｐｕｔ  Ｆｉｒｓｔ  Ｏｕｔｐｕ
ｔ、先入れ先出し）キュー等によって実現される。
【００２６】
本実施例に係るサーバにおいてマルチビットレートストリーミングメディアをアダプテ
ィブに提供するための方法のプロセスは図１に示される。図１では、本実施例の方法は主
にステップＳ１００、Ｓ１１０及びＳ１２０を含む。
【００２７】
Ｓ１００：ネットワーク品質情報を取得する。
【００２８】
例として、本実施例に係るネットワーク品質情報は、ネットワーク伝送遅延、パケット
ロス率及びネットワークジッタ情報等を含む。好ましくは、本実施例に係るネットワーク
品質情報は、キューにおけるデータの記憶状況を示す情報であるキューのデータ充填情報
で表されてもよい。
【００２９】
例として、本実施例におけるキューのデータ充填情報は具体的には、キューに記憶され
たマルチメディアデータフレームが占有する記憶容量とキューの総記憶容量との比（比率
又は百分率等とも呼ばれ、且つキューのデータ充填率と総称される）であってもよく、キ
ューのデータ充填情報は具体的にはキューに記憶されたマルチメディアデータフレームが
占有する記憶容量又はキューにおける未使用記憶容量などネットワーク品質を反映できる
キューパラメータであってもよい。
【００３０】
例として、本実施例は定時（例えば、１秒又は１秒未満等）にすべてのキューのうちの
、いずれかのキューのデータ充填情報を取得して、当該キューのデータ充填情報に基づい
て現在のネットワーク状態をただちに取得することができる。上記いずれかのキューはラ
ンダムに決定した１つのキューであってもよく、予め決定された１つの一定のキューであ
ってもよく、すなわち、本実施例はあるキューのデータ充填情報をランダムに取得しても
よく、あるキュー（例えば、１番目のキュー又は２番目のキュー）のデータ充填情報を固
定して取得してもよい。好ましくは、本実施例はキューのうち送信キューのデータ充填情
報（例えば、キューのデータ充填率）を定時に取得して、送信キューのデータ充填情報に
基づいて、現在のネットワーク状態をただちに取得することができる。本実施例における
送信キューとは、現在端末装置に送信されているマルチメディアデータフレームが属する
キューであり、つまり、本実施例は異なるビットレートのマルチメディアデータフレーム
に対して対応するキューをそれぞれ設定し、各キューにおいて対応するビットレートのマ
ルチメディアデータフレームが記憶されるが、任意の時点に対して、１つのキューに記憶
されるマルチメディアデータフレームのみが端末装置に送信されており、当該キューは送
信キューである。
【００３１】
Ｓ１１０：ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定
した場合に、すべてのキューから１つのキューを送信キューとして選択する。
【００３２】
例として、本実施例では、それぞれ１種類のビットレートに対応する複数のキューが設
定され、異なるキューが異なるビットレートに対応する。各キューにマルチメディアデー
タフレームが記憶され、すべてのキューにおける先頭のマルチメディアデータフレームに
対応するメディアコンテンツが完全に同一である。好ましくは、すべてのキューに記憶さ
れたマルチメディアデータフレームのメディアコンテンツは完全に同一であり、すなわち
、メディアコンテンツの点から見れば、すべてのキューに記憶されたマルチメディアデー
タフレームは同期であり、つまり、同じメディアコンテンツについては、異なるビットレ
ートのマルチメディアデータフレームが異なるキューに設定される。本実施例では、メデ
ィアコンテンツはビデオ画面であってもよく、同じメディアコンテンツは同一ビデオ画面
である。
【００３３】
例として、本実施例では、通常、すべてのキューの記憶容量は異なるが、すべてのキュ
ーの記憶空間に記憶可能なマルチメディアデータフレームの数は通常同じである。本実施
例では、すべてのキューの記憶空間に記憶可能なマルチメディアデータフレームの数が同
じである場合に、異なるキューに異なるビットレートのマルチメディアデータフレームが
記憶され、異なるビットレートのマルチメディアデータフレームが占有する記憶空間が異
なるため、本実施例ではすべてのキューの記憶容量が異なり、且つ高ビットレートに対応
するキューの記憶容量が低ビットレートに対応するキューの記憶容量より高い。勿論、本
実施例ではすべてのキューは同一の記憶空間を有してもよい。各キューの記憶容量は必要
に応じて設定してもよいが、各キューの記憶容量は２つのマルチメディアデータフレーム
が占有する記憶空間以上であり、すなわち、各キューは少なくとも２つのマルチメディア
データフレームを記憶することができる。本実施例では、マルチメディアデータフレーム
はキーフレーム及び当該キーフレームに対応するすべての非キーフレームを含む。
【００３４】
例として、本実施例では、各キューに記憶されたマルチメディアデータフレームはＧＯ
Ｐ（Ｇｒｏｕｐ  ｏｆ  Ｐｉｃｔｕｒｅｓ、グループオブピクチャ）構造であってもよく
、本実施例のマルチメディアデータフレームはＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ
Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ、動画専門家集団）符号化方式に基づくマルチメディアデ
ータフレームを用いる場合に、１つのＩフレーム（Intra-coded Frame）（すなわち、内
部符号化フレームであり、キーフレームとも呼ばれる）、複数のＰフレーム（Predicted 
Frame）（すなわち、順方向予測フレーム）及び複数のＢフレーム（Bi-directional Pred
icted Frame）（すなわち、双方向補間フレーム）から１つのＧＯＰを形成し、１つのＧ
ＯＰが１つのマルチメディアデータフレームである。本実施例では、マルチメディアデー
タフレームのキーフレーム（例えば、Ｉフレーム）は通常１つの完全な画面であり、ほか
のフレーム（例えば、Ｐフレーム及びＢフレーム）は主としてキーフレームに対する変化
を記録するためのものであり、キーフレームがない場合に、Ｐフレーム及びＢフレームが
復号化できない。
【００３５】
例として、本実施例の異なるキューに記憶されたすべてのマルチメディアデータフレー
ムは同一の符号化方式を有し、例えば、異なるキューに記憶されたすべてのマルチメディ
アデータフレームは同一のＧＯＰ構造を有する。また、通常、異なるキューに記憶された
マルチメディアデータフレームは同期更新され、例えば、同じメディアコンテンツに対す
るマルチメディアデータフレームを同時削除し、また、各キューにおける、同じメディア
コンテンツに対するマルチメディアデータフレームを同時削除するとともに、各キューに
同じメディアコンテンツに対するマルチメディアデータフレームを同期追加する。勿論、
本実施例では、非同期方式で各キューに同じメディアコンテンツに対するマルチメディア
データフレームを追加してもよいが、すべてのキューにおける先頭のマルチメディアデー
タフレームに対応するメディアコンテンツが完全に同一であることを確保するように、同
じメディアコンテンツに対するマルチメディアデータフレームを同時削除しなければなら
ない。
【００３６】
例として、本実施例の各キューに同じメディアコンテンツに対するマルチメディアデー
タフレームを同期追加する具体例は、本実施例では、ビットレートごとに１つのキャッシ
ュを設定し、例えばマルチメディアデータフレームがＧＯＰ構造である場合に、本実施例
はビットレートごとに１つのＧＯＰキャッシュをそれぞれ設定する。まず、符号化処理済
みの各マルチメディアデータフレーム（例えば、ＭＰＥＧ符号化処理済みの各マルチメデ
ィアデータフレーム）をトランスコード処理して、複数の異なるビットレートのマルチメ
ディアデータフレームを取得し、次に、異なるビットレートのマルチメディアデータフレ
ームを対応するＧＯＰキャッシュに同時に書き込み、例えば、各ＧＯＰキャッシュが空（
ＧＯＰキャッシュにおけるマルチメディアデータフレームがキューに充填されてＧＯＰキ
ャッシュが空の状態になってもよく、クリア操作によってＧＯＰキャッシュを空の状態に
させてもよい）の状態である場合に、トランスコード処理済みの異なるビットレートのマ
ルチメディアデータフレームを対応するＧＯＰキャッシュに同時に書き込み、その後、各
ＧＯＰキャッシュから同数のマルチメディアデータフレームを同時に読み出し、読み出し
た同数のマルチメディアデータフレームを対応するキューにそれぞれ記憶し、それにより
各キューに同じメディアコンテンツに対するマルチメディアデータフレームを同期追加さ
せる。
【００３７】
例として、本実施例では、ネットワーク品質情報はキューのデータ充填率を含み、すべ
てのキューのそれぞれの記憶空間に記憶可能なマルチメディアデータフレームの数が同一
である場合に、ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決
定する過程は、すべてのキューに対して２つの統一された閾値、すなわち、第１閾値及び
第２閾値を予め設定し、予め保守された情報から各キューの総記憶容量を取得し、すべて
のキューのうちのいずれかのキューに現在記憶されているすべてのマルチメディアデータ
フレームが占有する総記憶容量を定時に取得し（例えば、送信キューに現在記憶されてい
るすべてのマルチメディアデータフレームが占有する総記憶容量を定時に取得する）、次
に、上記取得したキューに現在記憶されているすべてのマルチメディアデータフレームが
占有する総記憶容量と当該キューの総記憶容量に基づいて当該キューのデータ充填率を計
算し、当該キューのデータ充填率が第１閾値よりも大きいと判定した場合に、低ビットレ
ートへの切り替えを必要とすると決定し、当該キューのデータ充填率が第２閾値よりも小
さい判定した場合に、高ビットレートへの切り替えを必要とすると決定する。上記第１閾
値は通常、第２閾値よりも遥かに大きく、例えば、第１閾値が８０％であり、第２閾値が
２０％である。
【００３８】
例として、本実施例では、ネットワーク品質情報はキューのデータ充填率を含み、すべ
てのキューのそれぞれの記憶空間に記憶可能なマルチメディアデータフレームの数が異な
る場合に、ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定す
る過程は、予め各キューに２つの閾値をそれぞれ設定し、すなわち、各キューがそれぞれ
の第１閾値と第２閾値とに対応し、通常、異なるキューのそれぞれに対応する第１閾値は
異なり、同様に、通常、異なるキューのそれぞれに対応する第２閾値も異なる。予め保守
された情報から各キューの総記憶容量及び各キュー自体に対応する第１閾値と第２閾値を
取得し、すべてのキューのうちのいずれかのキューに現在記憶されているすべてのマルチ
メディアデータフレームが占有する総記憶容量を定時に取得し（例えば、送信キューに現
在記憶されているすべてのマルチメディアデータフレームが占有する総記憶容量を定時に
取得する）、上記取得したキューに現在記憶されているすべてのマルチメディアデータが
占有する総記憶容量と当該キューの総記憶容量とに基づいて当該キューのデータ充填率を
計算し、当該キューのデータ充填率が当該キューに対応する第１閾値よりも大きいと判定
した場合に、低ビットレートへの切り替えを必要とすると決定し、当該キューのデータ充
填率が当該キューに対応する第２閾値よりも小さいと判定した場合に、高ビットレートへ
の切り替えを必要とすると決定する。上記第１閾値は通常、第２閾値よりも遥かに大きく
、例えば、第１閾値が８０％であり、第２閾値が２０％である。
【００３９】
例として、本実施例では、ネットワーク品質情報はキューに現在記憶されているすべて
のマルチメディアデータフレームが占有する総記憶容量を含む場合に、ネットワーク品質
情報に基づいてビットレート切り替えを必要とすると決定する過程は具体的には、すべて
のキューのそれぞれの記憶空間に記憶可能なマルチメディアデータフレームの数が同一で
あるか否かにかかわらず、予め各キューに２つの閾値をそれぞれ設定し、すなわち、各キ
ューがそれぞれの第３閾値及び第４閾値に対応し、且つ、通常、異なるキューに対応する
第３閾値は異なり、同様に、通常、異なるキューに対応する第４閾値も異なる。予め保守
された情報から各キューにそれぞれ対応する第３閾値及び第４閾値を取得し、すべてのキ
ューのうちのいずれかのキューに現在記憶されているすべてのマルチメディアデータフレ
ームが占有する総記憶容量を定時に取得し（例えば、送信キューに現在記憶されているす
べてのマルチメディアデータフレームが占有する総記憶容量を定時に取得する）、上記取
得したキューに現在記憶されているすべてのマルチメディアデータフレームが占有する総
記憶容量と、当該キューに対応する第３閾値及び第４閾値とを比較し、比較結果として、
上記取得したキューに現在記憶されているすべてのマルチメディアデータフレームが占有
する総記憶容量が当該キューに対応する第３閾値よりも大きい場合に、低ビットレートへ
の切り替えを必要とすると決定し、比較結果として、上記取得したキューに現在記憶され
ているすべてのマルチメディアデータフレームが占有する総記憶容量が当該キューに対応
する第４閾値よりも小さい場合に、高ビットレートへの切り替えを必要とすると決定する
。上記第３閾値は通常、第４閾値よりも遥かに大きい。
【００４０】
例として、本実施例では、ネットワーク品質情報はキューの現在の未使用記憶容量を含
む場合に、ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定す
る過程は、すべてのキューのそれぞれの記憶空間に記憶可能なマルチメディアデータフレ
ームの数が同一であるか否かにかかわらず、予め各キューに２つの閾値をそれぞれ設定し
、すなわち、各キューがそれぞれの第５閾値及び第６閾値に対応し、且つ、通常、異なる
キューにそれぞれ対応する第５閾値は異なり、同様に、通常、異なるキューにそれぞれ対
応する第６閾値も異なる。予め保守された情報から各キューにそれぞれ対応する第５閾値
及び第６閾値を取得し、すべてのキューのうちのいずれかのキューの現在の未使用記憶容
量を定時に取得し（例えば、送信キューの現在の未使用記憶容量を定時に取得する）、上
記取得したキューの現在の未使用記憶容量と当該キューに対応する第５閾値及び第６閾値
とを比較し、比較結果として、上記取得したキューの現在の未使用記憶容量が上記取得し
た第５閾値よりも大きい場合に、高ビットレートへの切り替えを必要とすると決定し、比
較結果として、上記取得したキューの現在の未使用記憶容量が第６閾値よりも小さい場合
に、低ビットレートへの切り替えを必要とすると決定する。上記第５閾値は通常、第６閾
値よりも遥かに小さい。
【００４１】
例として、ネットワークジッタ等に起因する頻繁なビットレート切り替えの現象を回避
するために、本実施例では、ビットレート切り替えを必要とするか否かを判定する過程で
、頻繁なビットレート切り替えを抑える制限条件を追加し、つまり、本実施例は、ネット
ワーク品質情報及び予め設定されたビットレート切り替えの時間制限条件に基づいてビッ
トレート切り替えを必要とすると決定することができる。上記予め設定されたビットレー
ト切り替えの時間制限条件は具体的には、現在の時点と前回のビットレート切り替え時点
との間隔が所定時間を超えることであってもよい。
【００４２】
例として、本実施例では、ネットワーク品質情報及び予め設定されたビットレート切り
替えの時間制限条件に基づいてビットレート切り替えを必要とすると決定する具体例１に
ついて、すべてのキューのそれぞれの記憶空間に記憶可能なマルチメディアデータフレー
ムの数が同一である場合に、すべてのキューに対して２つの統一された閾値、すなわち、
第１閾値及び第２閾値を予め設定し、予め保守された情報からキューの総記憶容量、所定
時間及び前回のビットレート切り替え時点を取得し、すべてのキューのうちのいずれかの
キューに現在記憶されているすべてのマルチメディアデータフレームが占有する総記憶容
量を定時に取得し、次に、上記取得したいずれかのキューに現在記憶されているすべての
マルチメディアデータフレームが占有する総記憶容量と当該キューの総記憶容量とに基づ
いてキューのデータ充填率を計算し、当該データ充填率が第１閾値よりも大きく且つ現在
の時点と前回のビットレート切り替え時点との差が所定時間を超えると判定した場合に、
低ビットレートへの切り替えを必要とすると決定し、当該データ充填率が第２閾値よりも
小さく且つ現在の時点と前回のビットレート切り替え時点との差が所定時間を超えると判
定した場合に、高ビットレートへの切り替えを必要とすると決定する。
【００４３】
例として、本実施例では、ネットワーク品質情報及び予め設定されたビットレート切り
替えの時間制限条件に基づいてビットレート切り替えを必要とすると決定する具体例２に
ついて、すべてのキューのそれぞれの記憶空間に記憶可能なマルチメディアデータフレー
ムの数が異なる場合に、予め各キューに対して２つの閾値をそれぞれ設定し、すなわち、
各キューがそれぞれの第１閾値及び第２閾値に対応し、通常、異なるキューのそれぞれに
対応する第１閾値は異なり、同様に、通常、異なるキューのそれぞれに対応する第２閾値
も異なる。予め保守された情報から各キューの総記憶容量、各キューにそれぞれ対応する
第１閾値及び第２閾値、所定時間及び前回のビットレート切り替え時点を取得し、すべて
のキューのうちのいずれかのキューに現在記憶されているすべてのマルチメディアデータ
フレームが占有する総記憶容量を定時に取得し（好ましくは、送信キューに現在記憶され
ているすべてのマルチメディアデータフレームが占有する総記憶容量を定時に取得する）
、上記取得したキューに現在記憶されているすべてのマルチメディアデータが占有する総
記憶容量と当該キューの総記憶容量とに基づいてキューのデータ充填率を計算し、当該デ
ータ充填率が当該キューに対応する第１閾値よりも大きく且つ現在の時点と前回のビット
レート切り替え時点との差が所定時間を超えると判定した場合に、低ビットレートへの切
り替えを必要とすると決定し、当該データ充填率が当該キューに対応する第２閾値よりも
小さく且つ現在の時点と前回のビットレート切り替え時点との差が所定時間を超えると判
定する場合に、高ビットレートへの切り替えを必要とすると決定する。上記第１閾値は通
常、第２閾値よりも遥かに大きく、例えば、第１閾値が８０％、第２閾値が２０％である
。
【００４４】
例として、本実施例では、ネットワーク品質情報及び予め設定されたビットレート切り
替えの時間制限条件に基づいてビットレート切り替えを必要とすると決定する具体例３に
ついて、予め各キューに対して２つの閾値をそれぞれ設定し、すなわち、各キューがそれ
ぞれの第３閾値及び第４閾値に対応し、通常、異なるキューに対応する第３閾値は異なり
、同様に、通常、異なるキューに対応する第４閾値も異なる。予め保守された情報から各
キューにそれぞれ対応する第３閾値及び第４閾値、所定時間及び前回のビットレート切り
替え時点を取得し、すべてのキューのうちのいずれかのキューに現在記憶されているすべ
てのマルチメディアデータフレームが占有する総記憶容量を定時に取得し（好ましくは、
送信キューに現在記憶されているすべてのマルチメディアデータフレームが占有する総記
憶容量を定時に取得する）、上記取得したキューに現在記憶されているすべてのマルチメ
ディアデータフレームが占有する総記憶容量と、当該キューに対応する第３閾値及び第４
閾値とを比較し、比較結果として、上記取得したキューに現在記憶されているすべてのマ
ルチメディアデータフレームが占有する総記憶容量が当該キューに対応する第３閾値より
も大きく且つ現在の時点と前回のビットレート切り替え時点との差が所定時間を超える場
合に、低ビットレートへの切り替えを必要とすると決定し、比較結果として上記取得した
キューに現在記憶されているすべてのマルチメディアデータフレームが占有する総記憶容
量が当該キューに対応する第４閾値よりも小さく且つ現在の時点と前回のビットレート切
り替え時点との差が所定時間を超える場合に、高ビットレートへの切り替えを必要とする
と決定する。上記第３閾値は通常、第４閾値よりも遥かに大きい。
【００４５】
例として、本実施例では、ネットワーク品質情報及び予め設定されたビットレート切り
替えの時間制限条件に基づいてビットレート切り替えを必要とすると決定する具体例４に
ついて、予め各キューに対して２つの閾値をそれぞれ設定し、すなわち、各キューがそれ
ぞれの第５閾値及び第６閾値に対応し、通常、異なるキューにそれぞれ対応する第５閾値
は異なり、同様に、通常、異なるキューにそれぞれ対応する第６閾値も異なる。予め保守
された情報から各キューにそれぞれ対応する第５閾値及び第６閾値、所定時間及び前回の
ビットレート切り替え時点を取得し、すべてのキューのうちのいずれかのキューの現在の
未使用記憶容量を定時に取得し（好ましくは、送信キューの現在の未使用記憶容量を定時
に取得する）、上記取得したキューの現在の未使用記憶容量と当該キューに対応する第５
閾値及び第６閾値とを比較し、比較結果として、上記取得したキューの現在の未使用記憶
容量が上記取得した第５閾値よりも大きく且つ現在の時点と前回のビットレート切り替え
時点との差が所定時間を超える場合に、高ビットレートへの切り替えを必要とすると決定
し、比較結果として、上記取得したキューの現在の未使用記憶容量が第６閾値よりも小さ
いく且つ現在の時点と前回のビットレート切り替え時点との差が所定時間を超える場合に
、低ビットレートへの切り替えを必要とすると決定する。上記第５閾値は通常、第６閾値
よりも遥かに小さい。
【００４６】
なお、本実施例では、低ビットレートへの切り替えを必要とすると決定した場合に、切
り替え前の送信キューのビットレートが既にすべてのキューのビットレートのうちの最低
ビットレートであれば、切り替え後の新たな送信キューが依然として切り替え前の送信キ
ューであり、切り替え前の送信キューのビットレートがすべてのキューのビットレートの
うちの最低ビットレートでなければ、ビットレートが切り替え前の送信キューのビットレ
ートより低いすべてのキューから１つのキューを送信キューとして選択し、例えばビット
レートが切り替え前の送信キューのビットレートよりも低いすべてのキューにおいてビッ
トレートが最も低いキューを送信キューとして選択する。本実施例では、高ビットレート
への切り替えを必要とすると決定した場合に、切り替え前の送信キューのビットレートが
既にすべてのキューのビットレートのうちの最高ビットレートであれば、切り替え後の新
たな送信キューが依然として切り替え前の送信キューであり、切り替え前の送信キューの
ビットレートがすべてのキューのビットレートのうちの最高ビットレートでなければ、ビ
ットレートが切り替え前の送信キューのビットレートよりも高いすべてのキューから１つ
のキューを送信キューとして選択し、例えばビットレートが切り替え前の送信キューのビ
ットレートよりも高いすべてのキューにおいてビットレートが最も高いキューを送信キュ
ーとして選択する。
【００４７】
Ｓ１２０：送信キューからマルチメディアデータフレームを読み出して配布し、ほかの
キューにおける、配布したマルチメディアデータフレームのメディアコンテンツと同じメ
ディアコンテンツを有するマルチメディアデータフレームのいずれもを削除する。
【００４８】
例として、ビットレート切り替えを必要としない場合に、本実施例では、常に送信キュ
ーからマルチメディアデータフレームを読み出して配布し、送信キューから読み出して配
布したマルチメディアデータフレームを送信キューから削除し、ビットレート切り替えを
必要とすると決定した場合に、本実施例では、切り替え後の新たな送信キューからマルチ
メディアデータフレームを読み出して配布すべきである。
【００４９】
例として、マルチメディアデータフレームが送信キューから読み出されて配布される時
に、本実施例では、すべてのキューにおける先頭のマルチメディアデータフレームが常に
同じメディアコンテンツに対応することを確保するように、ほかのキュー（すなわち、す
べてのキューにおける送信キュー以外のキュー）中の対応するマルチメディアデータフレ
ームを同期削除すべきである。
【００５０】
例として、ビットレート切り替えを必要とすると決定した場合に、本実施例では、切り
替え後の新たな送信キューからマルチメディアデータフレームを読み出して配布するタイ
ミングに注意する必要があり、具体的には、ビットレート切り替えを必要とすると決定し
た場合に、本実施例では、切り替え前の送信キューからキーフレーム（例えば、Ｉフレー
ム）を読み出す必要がある時に、切り替え前の送信キューからマルチメディアデータフレ
ームを読み出して配布することを停止し、切り替え後の送信キューからマルチメディアデ
ータフレームを読み出して配布する。１つの具体例として、ビットレート切り替えを必要
とすると決定した場合に、現在切り替え前の送信キューから非キーフレーム（例えば、Ｐ
フレーム又はＢフレーム等）を読み出して配布している場合に、切り替え前の送信キュー
から配布済みのキーフレーム（例えば、Ｉフレーム）に対応するすべての非キーフレーム
を読み出すことが完了するまで待機する。また、切り替え前の送信キューから次のキーフ
レームを読み出して配布する必要があり、且つ切り替え前の送信キュー以外のすべてのキ
ューから対応する非キーフレームが削除された場合に、切り替え前の送信キューからキー
フレームを読み出すことを停止し、次回のビットレート切り替えまで、ビットレート切り
替え後の新たな送信キューからマルチメディアデータフレームを読み出して配布する。
【００５１】
［実施例２：ビデオライブの応用場面では、ストリーミングメディアサーバがユーザーに
マルチビットレートストリーミングメディアをアダプティブに提供する方法］
ビデオライブの応用場面では、ストリーミングメディアサーバがネットワークにおける
ｎ（ｎ＞２）個のユーザー（すなわち、ユーザー１、ユーザー２、……及びユーザーｎ）
にそれぞれ３種類のビットレートのストリーミングメディアサービスをアダプティブに提
供するを設定すれば、ストリーミングメディアサーバがマルチビットレートストリーミン
グメディアをアダプティブに提供する実施形態は図２に示される。
【００５２】
図２では、ストリーミングメディアサーバは３種類のビットレートに対して３つのＧＯ
Ｐキャッシュ（すなわち、第１ＧＯＰキャッシュ、第２ＧＯＰキャッシュ、第３ＧＯＰキ
ャッシュ）を設定し、１つのユーザーにそれぞれ３つのキュー（すなわち、第１キュー、
第２キュー及び第３キュー）を設定し、第１ＧＯＰキャッシュと第１キューは第１種類の
ビットレートに対応し、第２ＧＯＰキャッシュと第２キューは第２種類のビットレートに
対応し、第３ＧＯＰキャッシュと第３キューは第３種類のビットレートに対応し、また、
第１ビットレートは第２ビットレートよりも高く、第２ビットレートは第３ビットレート
よりも高い。
【００５３】
本実施例では、３つのＧＯＰキャッシュは記憶空間が異なるが、記憶可能なビデオフレ
ームの数が同一である。３つのキューは記憶空間が異なるが、記憶可能なビデオフレーム
の数が同一である。
【００５４】
ストリーミングメディアサーバは、現在リアルタイムに生成される符号化処理済みの、
ＧＯＰ構造を有するビデオフレーム（すなわち、ＧＯＰ構造を有するマルチメディアデー
タフレーム）をトランスコード処理して、符号化処理済みのビデオフレームに対して、第
１ビットレートに基づくビデオフレーム、第２ビットレートに基づくビデオフレーム及び
第３ビットレートに基づくビデオフレームを生成する。
【００５５】
例として、ストリーミングメディアサーバは異なるビットレートのビデオフレームを対
応するＧＯＰキャッシュに同期格納し、すなわち、第１ビットレートに基づくビデオフレ
ームを第１ＧＯＰキャッシュにキャッシュし、第２ビットレートに基づくビデオフレーム
を第２ＧＯＰキャッシュにキャッシュし、第３ビットレートに基づくビデオフレームを第
３ＧＯＰキャッシュにキャッシュする。ストリーミングメディアサーバは３つのＧＯＰキ
ャッシュにおけるビデオフレームの数が同じ、３つのＧＯＰキャッシュにおけるビデオフ
レームに対応するメディアコンテンツが全く同じになるように制御することができる。
【００５６】
ネットワークにおけるいずれかのユーザーに対して、ストリーミングメディアサーバは
同期に第１ＧＯＰキャッシュにおけるビデオフレームを読み出して第１キューに格納し、
第２ＧＯＰキャッシュにおけるビデオフレームを読み出して第２キューに格納し、第３Ｇ
ＯＰキャッシュにおけるビデオフレームを読み出して第３キューに格納する。ストリーミ
ングメディアサーバは３つのキューに同期格納されたビデオフレームに対応するメディア
コンテンツが全く同じになるように制御することができる。
【００５７】
ネットワークにおけるいずれかのユーザーに対して、当該ユーザーに今回のライブのメ
ディアストリームを提供し始める場合に、ストリーミングメディアサーバは、まず当該ユ
ーザーに対応する３つのキューのうちの１つのキューを送信キューとし、例えばストリー
ミングメディアサーバはデフォルト設定に基づいて対応するキューを送信キューとし、ま
た、ストリーミングメディアサーバはユーザーが選択するビットレートに基づいて当該ビ
ットレートに対応するキューを送信キューとし、またストリーミングメディアサーバは現
在のネットワーク伝送速度に基づいて対応するビットレートのキューを送信キューとする
。ストリーミングメディアサーバは送信キュー（例えば、２番目のキュー）からビデオフ
レームを読み出して当該ユーザーに送信し、１つのビデオフレームを配布するたびに、当
該ビデオフレームを送信キューから削除し、ストリーミングメディアサーバはさらに１番
目のキューと３番目のキューにおける、当該ビデオフレームに対応する、当該ビデオフレ
ームのビットレートと異なるビットレートを有するビデオフレームを削除する。ストリー
ミングメディアサーバは送信キューからビデオフレームを連続的に読み出して配布する過
程において、送信キューのデータ充填率（すなわち、送信キューに現在記憶されているビ
デオフレームが占有する記憶空間と送信キューの総記憶容量との比）を監視し、ストリー
ミングメディアサーバは送信キューのデータ充填率が第１充填率よりも大きく、且つ前回
のビットレート切り替え時点との間隔が所定時間に達することを監視した場合に、低ビッ
トレートへの切り替えを必要とすると決定し、ストリーミングメディアサーバは３番目の
キューを新たな送信キューとし、２番目のキューからＩフレームを読み出すべき時に、新
たな送信キュー（すなわち、３番目のキュー）からビデオフレームを読み出して配布し、
同様に、読み出したビデオフレームを送信キューから削除し、ストリーミングメディアサ
ーバはさらに１番目のキューと２番目のキューにおける且つ３番目のキューから読み出し
たビデオフレームに対応する、ビットレートとは異なるビデオフレームを削除する。スト
リーミングメディアサーバは送信キューのデータ充填率が第２充填率よりも大きく、且つ
前回のビットレート切り替え時点との間隔が所定時間に達することを監視した場合に、高
ビットレートへの切り替えを必要とすると決定し、ストリーミングメディアサーバは２番
目のキューを新たな送信キューとし、３番目のキューからＩフレームを読み出すべき時に
、新たな送信キュー（すなわち、２番目のキュー）からビデオフレームを読み出して配布
し、同様に、読み出したビデオフレームを送信キューから削除し、ストリーミングメディ
アサーバはさらに１番目のキューと３番目のキューにおける、２番目のキューから読み出
したビデオフレームに対応する、当該読み出したビデオフレームのビットレートと異なる
ビットレートのビデオフレームを削除する。
【００５８】
［実施例３：テレビ会議(video teleconference)の応用場面では、ストリーミングメディ
アサーバがユーザーにマルチビットレートストリーミングメディアをアダプティブに提供
する方法］
テレビ会議の応用場面では、ストリーミングメディアサーバはテレビ会議に参加する各
参加者に３種類のビットレートのストリーミングメディアサービスをアダプティブに提供
でき、ストリーミングメディアサーバは３つのＧＯＰキャッシュ（すなわち、第１ＧＯＰ
キャッシュ、第２ＧＯＰキャッシュ及び第３ＧＯＰキャッシュ）を設定し、第１ＧＯＰキ
ャッシュは第１種類のビットレートに対応し、第２ＧＯＰキャッシュは第２種類のビット
レートに対応し、第３ＧＯＰキャッシュは第３種類のビットレートに対応し、第１ビット
レートは第２ビットレートよりも高く、第２ビットレートは第３ビットレートよりも高い
。
【００５９】
１つのユーザーがテレビ会議に参加することを申し込む際に、ストリーミングメディア
サーバは当該ユーザーに対応する情報を設定し、例えば当該ユーザーに３つのキュー（す
なわち、第１キュー、第２キュー及び第３キュー）を動的に設定し、第１キューは第１種
類のビットレートに対応し、第２キューは第２種類のビットレートに対応し、第３キュー
は第３種類のビットレートに対応する。本実施例では、３つのＧＯＰキャッシュは記憶空
間が異なるが、記憶可能なビデオフレームの数が同一である。３つのキューは記憶空間が
異なるが、記憶可能なビデオフレームの数が同一である。
【００６０】
ストリーミングメディアサーバは当該ユーザーに対応する情報を設定した後に、当該ユ
ーザーが今回のビデオ会議の参加者になる。ストリーミングメディアサーバは現在リアル
タイムに生成される符号化処理済みの、ＧＯＰ構造を有するビデオフレームをトランスコ
ード処理し、符号化処理済みのビデオフレームに対して、第１ビットレートに基づくビデ
オフレーム、第２ビットレートに基づくビデオフレーム及び第３ビットレートに基づくビ
デオフレームを生成する。
【００６１】
ストリーミングメディアサーバは異なるビットレートのビデオフレームを３つのＧＯＰ
キャッシュに同時格納し、すなわち、第１ビットレート基づくビデオフレームを第１ＧＯ
Ｐキャッシュにキャッシュし、第２ビットレートに基づくビデオフレームを第２ＧＯＰキ
ャッシュにキャッシュし、第３ビットレートに基づくビデオフレームを第３ＧＯＰキャッ
シュにキャッシュする。ストリーミングメディアサーバは３つのＧＯＰキャッシュにおけ
るビデオフレームの数が同じ、３つのＧＯＰキャッシュにおけるビデオフレームに対応す
るメディアコンテンツがまったく同じになるように制御する。
【００６２】
ストリーミングメディアサーバは同期に当該参加者の第１ＧＯＰキャッシュにおけるビ
デオフレームを読み出して第１キューに格納し、第２ＧＯＰキャッシュにおけるビデオフ
レームを読み出して第２キューに格納し、第３ＧＯＰキャッシュ中のビデオフレームを読
み出して第３キューに格納する。ストリーミングメディアサーバは３つのキューに同期格
納されるビデオフレームに対応するメディアコンテンツがまったく同じになるように制御
する。
【００６３】
当該参加者にビデオ会議のメディアストリームを提供し始めると、ストリーミングメデ
ィアサーバは、まず当該参加者が選択するビットレートに基づいて当該ビットレートに対
応するキューを送信キューとし、送信キュー（例えば、３番目のキュー）からビデオフレ
ームを読み出して当該参加者に送信し、１つのビデオフレームを配布するたびに、当該ビ
デオフレームを送信キューから削除し、ストリーミングメディアサーバはさらに１番目の
キューと２番目のキューにおける、当該ビデオフレームに対応する、当該ビデオフレーム
のビットレートと異なるビットレートを有するビデオフレームを削除する。ストリーミン
グメディアサーバは送信キューからビデオフレームを連続的に読み出して配布する過程に
おいて、送信キューのデータ充填率を監視し、ストリーミングメディアサーバは送信キュ
ーのデータ充填率が第１充填率よりも大きく、且つ前回のビットレート切り替え時点との
間隔が所定時間に達することを監視した場合に、低ビットレートへの切り替えを必要とす
ると決定し、３番目のキューのビットレートが既に最低ビットレートであるため、ストリ
ーミングメディアサーバは３番目のキューを依然として送信キューとし、３番目のキュー
からビデオフレームを継続的に読み出して配布し、ストリーミングメディアサーバは送信
キューのデータ充填率が第２充填率よりも大きく、且つ前回のビットレート切り替え時点
との間隔が所定時間に達することを監視した場合に、高ビットレートへの切り替えを必要
とすると決定し、ストリーミングメディアサーバは２番目のキューを新たな送信キューと
し、３番目のキューからＩフレームを読み出すべき時に、新たな送信キュー（すなわち、
２番目のキュー）からビデオフレームを読み出して配布し、同様に、読み出したビデオフ
レームを送信キューから削除し、ストリーミングメディアサーバはさらに１番目のキュー
と３番目のキューにおける、２番目のキューから読み出したビデオフレームに対応する、
当該読み出したビデオフレームのビットレートと異なるビットレートのビデオフレームを
削除する。
【００６４】
［実施例４：サーバにおいてマルチビットレートストリーミングメディアをアダプティブ
に提供するための装置］
本実施例では、サーバはストリーミングメディアサーバであり、マルチビットレートス
トリーミングメディアをアダプティブに提供するための装置は通常、ストリーミングメデ
ィアサーバであるコンピュータ装置内に設定され、例えば、本実施例に記載されているマ
ルチビットレートストリーミングメディアをアダプティブに提供するための装置はストリ
ーミングメディアサーバであるデスクトップコンピュータ、サーバ及びほかのネットワー
ク装置内に設置されてもよい。本実施例に係るマルチビットレートストリーミングメディ
アをアダプティブに提供するための装置の主要構造は図３に示される。
【００６５】
以下、具体的な実施例を参照して、サーバにおいてマルチビットレートストリーミング
メディアをアダプティブに提供するための装置を説明する。
【００６６】
図３に示すように、本実施例に係るマルチビットレートストリーミングメディアをアダ
プティブに提供するための装置は、ネットワーク品質情報を取得するための装置（以下、
「ネットワーク品質取得装置３００」と略称される）、ネットワーク品質情報に基づいて
ビットレート切り替えを必要とすると決定した場合に、すべてのキューから１つのキュー
を送信キューとして選択するための装置（以下、「ビットレート切り替え制御装置３１０
」と略称される）と、送信キューからマルチメディアデータフレームを読み出して配布し
、ほかのキューにおける、配布したマルチメディアデータフレームのメディアコンテンツ
と同じメディアコンテンツを有するマルチメディアデータフレームのいずれもを削除する
ための装置（以下、「データフレーム配布装置３２０」と略称される）と、を備え、ここ
で、ネットワーク品質取得装置は、送信キューのデータ充填情報を取得するための装置（
以下、「充填情報取得装置３０１」と略称される）を備えてもよい。また、本実施例に係
るマルチビットレートストリーミングメディアをアダプティブに提供するための装置は、
符号化処理済みのマルチメディアデータフレームを異なるビットレートのマルチメディア
データフレームにトランスコードするための装置（以下、「トランスコード装置３３０」
と略称される）と、トランスコード済みの異なるビットレートのマルチメディアデータフ
レームを対応するＧＯＰキャッシュにそれぞれ記憶するための装置（以下、「第１記憶制
御装置３４０」と略称される）と、各ＧＯＰキャッシュからマルチメディアデータフレー
ムを同期読み出し、読み出したマルチメディアデータを対応するキューにそれぞれ記憶す
るための装置（以下、「第２記憶制御装置３５０」と略称される）と、をさらに備えても
よい。
【００６７】
ネットワーク品質取得装置３００は主にネットワーク品質情報を取得する。
【００６８】
例として、ネットワーク品質取得装置３００に取得されるネットワーク品質情報はネッ
トワーク伝送遅延、パケットロス率及びネットワークジッタ情報等を含む。好ましくは、
本実施例に係るネットワーク品質情報は、充填情報取得装置３０１に取得されるキューの
データ充填情報で表されてもよい。
【００６９】
例として、充填情報取得装置３０１に取得されるキューのデータ充填情報は、具体的に
は、キューに記憶されたマルチメディアデータフレームが占有する記憶容量とキューの総
記憶容量との比（すなわち、データ充填率）であってもよく、キューに記憶されたマルチ
メディアデータフレームが占有する記憶容量又はキューの未使用記憶容量などの、ネット
ワーク品質を反映できるキューパラメータであってもよい。
【００７０】
例として、充填情報取得装置３０１は定時（例えば、１秒又は１秒未満等）にすべての
キューのうちのいずれかのキューのデータ充填情報を取得して、当該キューのデータ充填
情報に基づいて現在のネットワーク状態をただちに取得できる。上記いずれかのキューは
ランダムに決定した１つのキューであってもよく、予め決定された１つの一定のキューで
あってもよく、すなわち、充填情報取得装置３０１はランダムにあるキューのデータ充填
情報を取得してもよく、あるキューのデータ充填情報を固定して取得してもよい。好まし
くは、充填情報取得装置３０１はキューにおける送信キューのデータ充填情報を定時に取
得して、送信キューのデータ充填情報に基づいて現在のネットワーク状態をただちに取得
できる。本実施例における送信キューとは、現在端末装置に送信されているマルチメディ
アデータフレームが属するキューであり、つまり、本実施例は異なるビットレートのマル
チメディアデータフレームに対して対応するキューをそれぞれ設定し、各キューにおいて
対応するビットレートのマルチメディアデータフレームが記憶されるが、任意の時点に対
して、１つのキューに記憶されるマルチメディアデータフレームのみが端末装置に送信さ
れており、当該キューは送信キューである。
【００７１】
ビットレート切り替え制御装置３１０は、主にネットワーク品質情報に基づいてビット
レート切り替えを必要とすると決定した場合に、すべてのキューから１つのキューを送信
キューとして選択する。
【００７２】
例として、本実施例では、異なるキューに記憶されたすべてのマルチメディアデータフ
レームは同一の符号化方式を有し、例えば、異なるキューに記憶されたすべてのマルチメ
ディアデータフレームは同一のＧＯＰ構造を有する。また、通常、異なるキューに記憶さ
れたマルチメディアデータフレームは同期更新され、例えば、マルチメディアデータフレ
ームがＧＯＰ構造である場合に、本実施例は、ビットレートごとに１つのＧＯＰキャッシ
ュをそれぞれ設定する。まず、トランスコード装置３３０は符号化処理済みの各マルチメ
ディアデータフレームをトランスコード処理して、複数の異なるビットレートのマルチメ
ディアデータフレームを取得し、次に、第１記憶制御装置３４０は異なるビットレートの
マルチメディアデータフレームを対応するＧＯＰキャッシュに同時に書き込み、例えば、
各ＧＯＰキャッシュが空（ＧＯＰキャッシュにおけるマルチメディアデータフレームがキ
ューに充填されてＧＯＰキャッシュが空になってもよく、クリア操作によってＧＯＰキャ
ッシュが空にさせてもよい）の場合に、第１記憶制御装置３４０はトランスコード処理済
みの異なるビットレートのマルチメディアデータフレームを対応するＧＯＰキャッシュに
同時に書き込み、その後、第２記憶制御装置３５０は各ＧＯＰキャッシュから同数のマル
チメディアデータフレームを同時に読み出し、読み出した同数のマルチメディアデータフ
レームを対応するキューにそれぞれ記憶し、それにより各キューに同じメディアコンテン
ツに対するマルチメディアデータフレームを同期追加させる。
【００７３】
例として、ネットワーク品質取得装置３００により取得されたキューのデータ充填情報
がキューのデータ充填率を含み、すべてのキューのそれぞれの記憶空間に記憶可能なマル
チメディアデータフレームの数が同一である場合に、ビットレート切り替え制御装置３１
０がネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定する過程
は具体的には、すべてのキューに対して２つの統一された閾値、すなわち、第１閾値及び
第２閾値を予め設定し、ビットレート切り替え制御装置３１０は予め保守された情報から
各キューの総記憶容量を取得し、すべてのキューのうちのいずれかのキューに現在記憶さ
れているすべてのマルチメディアデータフレームが占有する総記憶容量を定時に取得し（
例えば、ビットレート切り替え制御装置３１０は送信キューに現在記憶されているすべて
のマルチメディアデータフレームが占有する総記憶容量を定時に取得する）、次に、ビッ
トレート切り替え制御装置３１０は上記取得したキューに現在記憶されているすべてのマ
ルチメディアデータフレームが占有する総記憶容量と当該キューの総記憶容量に基づいて
キューのデータ充填率を計算し、当該データ充填率が第１閾値よりも大きいと判定した場
合に、低ビットレートへの切り替えを必要とすると決定し、当該データ充填率が第２閾値
よりも小さいと判定した場合に、高ビットレートへの切り替えを必要とすると決定する。
上記第１閾値は通常、第２閾値よりも遥かに大きく、例えば、第１閾値が８０％、第２閾
値が２０％である。
【００７４】
例として、ネットワーク品質取得装置３００により取得されたキューのデータ充填情報
がキューのデータ充填率を含み、すべてのキューのそれぞれの記憶空間に記憶可能なマル
チメディアデータフレームの数が異なる場合に、ビットレート切り替え制御装置３１０が
ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定する過程は、
予め各キューに２つの閾値をそれぞれ設定し、すなわち、各キューがそれぞれの第１閾値
と第２閾値とに対応し、通常、異なるキューのそれぞれに対応する第１閾値は異なり、同
様に、通常、異なるキューのそれぞれに対応する第２閾値も異なる。ビットレート切り替
え制御装置３１０は予め保守された情報から各キューの総記憶容量及び各キュー自体に対
応する第１閾値と第２閾値を取得し、ビットレート切り替え制御装置３１０はすべてのキ
ューのうちのいずれかのキューに現在記憶されているすべてのマルチメディアデータフレ
ームが占有する総記憶容量を定時に取得し（例えば、ビットレート切り替え制御装置３１
０は送信キューに現在記憶されているすべてのマルチメディアデータフレームが占有する
総記憶容量を定時に取得する）、上記取得したキューに現在記憶されているすべてのマル
チメディアデータが占有する総記憶容量と当該キューの総記憶容量とに基づいてキューの
データ充填率を計算し、ビットレート切り替え制御装置３１０は当該データ充填率が当該
キューに対応する第１閾値よりも大きいと判定した場合に、低ビットレートへの切り替え
を必要とすると決定し、ビットレート切り替え制御装置３１０は当該データ充填率が当該
キューに対応する第２閾値よりも小さいと判定した場合に、高ビットレートへの切り替え
を必要とすると決定する。
【００７５】
例として、本実施例では、ネットワーク品質情報はキューに現在記憶されているすべて
のマルチメディアデータフレームが占有する総記憶容量を含む場合に、ビットレート切り
替え制御装置３１０がネットワーク品質情報に基づいてビットレート切り替えを必要とす
ると決定する過程は具体的には、すべてのキューのそれぞれの記憶空間に記憶可能なマル
チメディアデータフレームの数が同一であるか否かにかかわらず、予め各キューに２つの
閾値をそれぞれ設定し、すなわち、各キューがそれぞれの第３閾値及び第４閾値に対応し
、通常、異なるキューに対応する第３閾値は異なり、同様に、通常、異なるキューに対応
する第４閾値も異なる。ビットレート切り替え制御装置３１０は予め保守された情報から
各キューにそれぞれ対応する第３閾値及び第４閾値を取得し、ビットレート切り替え制御
装置３１０はすべてのキューのうちのいずれかのキューに現在記憶されているすべてのマ
ルチメディアデータフレームが占有する総記憶容量を定時に取得し（例えば、送信キュー
に現在記憶されているすべてのマルチメディアデータフレームが占有する総記憶容量を定
時に取得する）、上記取得したキューに現在記憶されているすべてのマルチメディアデー
タフレームが占有する総記憶容量と、当該キューに対応する第３閾値及び第４閾値とを比
較し、比較結果として、上記取得したキューに現在記憶されているすべてのマルチメディ
アデータフレームが占有する総記憶容量が当該キューに対応する第３閾値よりも大きい場
合に、ビットレート切り替え制御装置３１０は低ビットレートへの切り替えを必要とする
と決定し、比較結果として、上記取得したキューに現在記憶されているすべてのマルチメ
ディアデータフレームが占有する総記憶容量が当該キューに対応する第４閾値よりも小さ
い場合に、ビットレート切り替え制御装置３１０は高ビットレートへの切り替えを必要と
すると決定する。上記第３閾値は通常、第４閾値よりも遥かに大きい。
【００７６】
例として、本実施例では、ネットワーク品質情報はキューの現在の未使用記憶容量を含
む場合に、ビットレート切り替え制御装置３１０がネットワーク品質情報に基づいてビッ
トレート切り替えを必要とすると決定する過程は具体的には、すべてのキューのそれぞれ
の記憶空間に記憶可能なマルチメディアデータフレームの数が同一であるか否かにかかわ
らず、予め各キューに２つの閾値をそれぞれ設定し、すなわち、各キューがそれぞれの第
５閾値及び第６閾値に対応し、通常、異なるキューにそれぞれ対応する第５閾値は異なり
、同様に、通常、異なるキューにそれぞれ対応する第６閾値も異なる。ビットレート切り
替え制御装置３１０は予め保守された情報から各キューにそれぞれ対応する第５閾値及び
第６閾値を取得し、ビットレート切り替え制御装置３１０はすべてのキューのうちのいず
れかのキューの現在の未使用記憶容量を定時に取得し（例えば、送信キューの現在の未使
用記憶容量を定時に取得する）、上記取得したキューの現在の未使用記憶容量と当該キュ
ーに対応する第５閾値及び第６閾値とを比較し、比較結果として、上記取得したキューの
現在の未使用記憶容量が上記取得した第５閾値よりも大きい場合に、ビットレート切り替
え制御装置３１０は高ビットレートへの切り替えを必要とすると決定し、比較結果として
、上記取得したキューの現在の未使用記憶容量が第６閾値よりも小さい場合に、ビットレ
ート切り替え制御装置３１０は低ビットレートへの切り替えを必要とすると決定する。上
記第５閾値は通常、第６閾値よりも遥かに小さい。
【００７７】
例として、ネットワークジッタ等に起因する頻繁なビットレート切り替えの現象を回避
するために、ビットレート切り替え制御装置３１０はビットレート切り替えを必要とする
か否かを判定する過程で、頻繁なビットレート切り替えを抑える制限条件を追加し、つま
り、ビットレート切り替え制御装置３１０はネットワーク品質情報及び予め設定されたビ
ットレート切り替えの時間制限条件に基づいてビットレート切り替えを必要とすると決定
することができる。上記予め設定されたビットレート切り替えの時間制限条件は具体的に
は、現在の時点と前回のビットレート切り替え時点との間隔が所定時間を超えることであ
ってもよい。
【００７８】
例として、ビットレート切り替え制御装置３１０がネットワーク品質情報及び予め設定
されたビットレート切り替えの時間制限条件に基づいてビットレート切り替えを必要とす
ると決定する具体例１について、すべてのキューのそれぞれの記憶空間に記憶可能なマル
チメディアデータフレームの数が同一である場合に、すべてのキューに対して２つの統一
された閾値、すなわち第１閾値及び第２閾値を予め設定し、ビットレート切り替え制御装
置３１０は予め保守された情報からキューの総記憶容量、所定時間及び前回のビットレー
ト切り替え時点を取得し、すべてのキューのうちのいずれかのキューに現在記憶されてい
るすべてのマルチメディアデータフレームが占有する総記憶容量を定時に取得し、次に、
ビットレート切り替え制御装置３１０は上記取得したいずれかのキューに現在記憶されて
いるすべてのマルチメディアデータフレームが占有する総記憶容量と当該キューの総記憶
容量に基づいてキューのデータ充填率を計算し、当該キューのデータ充填率が第１閾値よ
りも大きく且つ現在の時点と前回のビットレート切り替え時点との差が所定時間を超える
と判定した場合に、ビットレート切り替え制御装置３１０は低ビットレートへの切り替え
を必要とすると決定し、当該キューのデータ充填率が第２閾値よりも小さく且つ現在の時
点と前回のビットレート切り替え時点との差が所定時間を超えると判定した場合に、ビッ
トレート切り替え制御装置３１０は高ビットレートへの切り替えを必要とすると決定する
。
【００７９】
例として、ビットレート切り替え制御装置３１０がネットワーク品質情報及び予め設定
されたビットレート切り替えの時間制限条件に基づいてビットレート切り替えを必要とす
ると決定する具体例２について、すべてのキューのそれぞれの記憶空間に記憶可能なマル
チメディアデータフレームの数が異なる場合に、予め各キューに対して２つの閾値をそれ
ぞれ設定し、すなわち、各キューがそれぞれの第１閾値及び第２閾値に対応し、通常、異
なるキューのそれぞれに対応する第１閾値は異なり、同様に、通常、異なるキューのそれ
ぞれに対応する第２閾値も異なる。ビットレート切り替え制御装置３１０は予め保守され
た情報から各キューの総記憶容量、各キューにそれぞれ対応する第１閾値及び第２閾値、
所定時間及び前回のビットレート切り替え時点を取得し、ビットレート切り替え制御装置
３１０はすべてのキューのうちのいずれかのキューに現在記憶されているすべてのマルチ
メディアデータフレームが占有する総記憶容量を定時に取得し（例えば、送信キューに現
在記憶されているすべてのマルチメディアデータフレームが占有する総記憶容量を定時に
取得する）、上記取得したキューに現在記憶されているすべてのマルチメディアデータが
占有する総記憶容量と当該キューの総記憶容量とに基づいてキューのデータ充填率を計算
し、ビットレート切り替え制御装置３１０は当該データ充填率が当該キューに対応する第
１閾値よりも大きく且つ現在の時点と前回のビットレート切り替え時点との差が所定時間
を超えると判定した場合に、低ビットレートへの切り替えを必要とすると決定し、ビット
レート切り替え制御装置３１０は当該データ充填率が当該キューに対応する第２閾値より
も小さく且つ現在の時点と前回のビットレート切り替え時点との差が所定時間を超えると
判定した場合に、高ビットレートへの切り替えを必要とすると決定する。上記第１閾値は
通常、第２閾値よりも遥かに大きく、例えば、第１閾値が８０％、第２閾値が２０％であ
る。
【００８０】
例として、ビットレート切り替え制御装置３１０がネットワーク品質情報及び予め設定
されたビットレート切り替えの時間制限条件に基づいてビットレート切り替えを必要とす
ると決定する具体例３について、予め各キューに対して２つの閾値をそれぞれ設定し、す
なわち、各キューがそれぞれの第３閾値及び第４閾値に対応し、通常、異なるキューに対
応する第３閾値は異なり、同様に、通常、異なるキューに対応する第４閾値も異なる。ビ
ットレート切り替え制御装置３１０は予め保守された情報から各キューにそれぞれ対応す
る第３閾値及び第４閾値、所定時間及び前回のビットレート切り替え時点を取得し、ビッ
トレート切り替え制御装置３１０はすべてのキューのうちのいずれかのキューに現在記憶
されているすべてのマルチメディアデータフレームが占有する総記憶容量を定時に取得し
（例えば、送信キューに現在記憶されているすべてのマルチメディアデータフレームが占
有する総記憶容量を定時に取得する）、上記取得したキューに現在記憶されているすべて
のマルチメディアデータフレームが占有する総記憶容量と、当該キューに対応する第３閾
値及び第４閾値とを比較し、比較結果として、上記取得したキューに現在記憶されている
すべてのマルチメディアデータフレームが占有する総記憶容量が当該キューに対応する第
３閾値よりも大きく且つ現在の時点と前回のビットレート切り替え時点との差が所定時間
を超える場合に、ビットレート切り替え制御装置３１０は低ビットレートへの切り替えを
必要とすると決定し、比較結果として上記取得したキューに現在記憶されているすべての
マルチメディアデータフレームが占有する総記憶容量が当該キューに対応する第４閾値よ
りも小さく且つ現在の時点と前回のビットレート切り替え時点との差が所定時間を超える
場合に、ビットレート切り替え制御装置３１０は高ビットレートへの切り替えを必要とす
ると決定する。上記第３閾値は通常、第４閾値よりも遥かに大きい。
【００８１】
例として、ビットレート切り替え制御装置３１０がネットワーク品質情報及び予め設定
されたビットレート切り替えの時間制限条件に基づいてビットレート切り替えを必要とす
ると決定する具体例４について、予め各キューに対して２つの閾値をそれぞれ設定し、す
なわち、各キューがそれぞれの第５閾値及び第６閾値に対応し、通常、異なるキューにそ
れぞれ対応する第５閾値は異なり、同様に、通常、異なるキューにそれぞれ対応する第６
閾値も異なる。ビットレート切り替え制御装置３１０は予め保守された情報から各キュー
にそれぞれ対応する第５閾値及び第６閾値、所定時間及び前回のビットレート切り替え時
点を取得し、ビットレート切り替え制御装置３１０はすべてのキューのうちのいずれかの
キューの現在の未使用記憶容量を定時に取得し（例えば、送信キューの現在の未使用記憶
容量を定時に取得する）、上記取得したキューの現在の未使用記憶容量と当該キューに対
応する第５閾値及び第６閾値とを比較し、比較結果として、上記取得したキューの現在の
未使用記憶容量が上記取得した第５閾値よりも大きく且つ現在の時点と前回のビットレー
ト切り替え時点との差が所定時間を超える場合に、ビットレート切り替え制御装置３１０
は高ビットレートへの切り替えを必要とすると決定し、比較結果として、上記取得したキ
ューの現在の未使用記憶容量が第６閾値よりも小さいく且つ現在の時点と前回のビットレ
ート切り替え時点との差が所定時間を超える場合に、ビットレート切り替え制御装置３１
０は低ビットレートへの切り替えを必要とすると決定する。上記第５閾値は通常、第６閾
値よりも遥かに小さい。
【００８２】
データフレーム配布装置３２０は、主に送信キューからマルチメディアデータフレーム
を読み出して配布し、ほかのキューにおける、配布したマルチメディアデータフレームの
メディアコンテンツと同じメディアコンテンツを有するマルチメディアデータフレームの
いずれもを削除する。
【００８３】
例として、データフレーム配布装置３２０は常に送信キューからマルチメディアデータ
フレームを読み出して配布すべきであり、データフレーム配布装置３２０は送信キューか
ら読み出して配布したマルチメディアデータフレームを送信キューから削除し、ビットレ
ート切り替え制御装置３１０はビットレート切り替えを必要とすると決定した場合に、デ
ータフレーム配布装置３２０は切り替え後の新たな送信キューからマルチメディアデータ
フレームを読み出して配布すべきである。
【００８４】
例として、マルチメディアデータフレームが送信キューからデータフレーム配布装置３
２０によって読み出されて配布される時に、すべてのキューにおける先頭のマルチメディ
アデータフレームが常に同じメディアコンテンツに対応することを確保するように、デー
タフレーム配布装置３２０はさらにほかのキュー（すなわち、すべてのキューにおける送
信キュー以外のキュー）中の対応するマルチメディアデータフレームを同期削除すべきで
ある。
【００８５】
例として、ビットレート切り替え制御装置３１０はビットレート切り替えを必要とする
と決定した場合に、データフレーム配布装置３２０は切り替え後の新たな送信キューから
マルチメディアデータフレームを読み出して配布するタイミングに注意する必要があり、
具体的には、ビットレート切り替え制御装置３１０がビットレート切り替えを必要とする
と決定した場合に、データフレーム配布装置３２０は切り替え前の送信キューからキーフ
レーム（例えば、Ｉフレーム）を読み出す必要がある場合に、切り替え前の送信キューか
らマルチメディアデータフレームを読み出して配布することを停止し、切り替え後の送信
キューからマルチメディアデータフレームを読み出して配布する。１つの具体例として、
ビットレート切り替え制御装置３１０がビットレート切り替えを必要とすると決定する場
合に、現在切り替え前の送信キューから非キーフレーム（例えば、Ｐフレーム又はＢフレ
ーム等）を読み出して配布している場合に、データフレーム配布装置３２０が切り替え前
の送信キューから配布済みのキーフレーム（例えば、Ｉフレーム）に対応するすべての非
キーフレームを読み出することが完了するまで待機する。切り替え前の送信キューから次
のキーフレームを読み出して配布する必要があり、且つ切り替え前の送信キュー以外のす
べてのキューから対応する非キーフレームが削除された場合に、データフレーム配布装置
３２０は切り替え前の送信キューからキーフレームを読み出すことを停止し、次回のビッ
トレート切り替えまで、ビットレート切り替え後の新たな送信キューからマルチメディア
データフレームを読み出して配布する。
【００８６】
なお、ビットレート切り替え制御装置３１０が低ビットレートへの切り替えを必要とす
ると決定した合に、切り替え前の送信キューのビットレートが既にすべてのキューのビッ
トレートのうちの最低ビットレートである場合に、切り替え後の新たな送信キューは依然
として切り替え前の送信キューであり、切り替え前の送信キューのビットレートがすべて
のキューのビットレートのうちの最低ビットレートでなければ、ビットレート切り替え制
御装置３１０はビットレートが切り替え前の送信キューのビットレートよりも低いすべて
のキューから１つのキューを送信キューとして選択し、例えばビットレート切り替え制御
装置３１０はビットレートが切り替え前の送信キューのビットレートよりも低いすべての
キューにおいてビットレートが最も低いキューを送信キューとして選択する。ビットレー
ト切り替え制御装置３１０が高ビットレートへの切り替えを必要とすると決定した場合に
、切り替え前の送信キューのビットレートがすべてのキューのビットレートのうちの最高
ビットレートである場合に、切り替え後の新たな送信キューが依然として切り替え前の送
信キューであり、切り替え前の送信キューのビットレートがすべてのキューのビットレー
トのうちの最高ビットレートでなければ、ビットレート切り替え制御装置３１０はビット
レートが切り替え前の送信キューのビットレートよりも高いすべてのキューから１つのキ
ューを送信キューとして選択し、例えばビットレート切り替え制御装置３１０はビットレ
ートが切り替え前の送信キューのビットレートよりも高いすべてのキューにおいてビット
レートが最も高いキューを送信キューとして選択する。
【００８７】
［実施例５：ビデオライブの応用場面では、ストリーミングメディアサーバがユーザーに
マルチビットレートストリーミングメディアをアダプティブに提供する実施形態］
ビデオライブの応用場面では、ストリーミングメディアサーバはネットワークにおける
ｎ（ｎ＞２）個のユーザーにそれぞれ３種類のビットレートのストリーミングメディアサ
ービスをアダプティブに提供するとする。ストリーミングメディアサーバは３種類のビッ
トレートに対して３つのＧＯＰキャッシュ（すなわち、第１ＧＯＰキャッシュ、第２ＧＯ
Ｐキャッシュ、第３ＧＯＰキャッシュ）を設定し、各ユーザーにそれぞれ３つのキュー（
すなわち、第１キュー、第２キュー及び第３キュー）を設定し、第１ＧＯＰキャッシュと
第１キューは第１種類のビットレートに対応し、第２ＧＯＰキャッシュと第２キューは第
２種類のビットレートに対応し、第３ＧＯＰキャッシュと第３キューは第３種類のビット
レートに対応し、第１ビットレートは第２ビットレートよりも高く、第２ビットレートは
第３ビットレートよりも高い。３つのＧＯＰキャッシュは記憶空間が異なるが、記憶可能
なビデオフレームの数が同一である。３つのキューは記憶空間が異なるが、記憶可能なビ
デオフレームの数が同一である。
【００８８】
トランスコード装置３３０は現在リアルタイムに生成される符号化処理済みの、ＧＯＰ
構造を有するビデオフレーム（すなわち、ＧＯＰ構造を有するマルチメディアデータフレ
ーム）をトランスコード処理して、符号化処理済みのビデオフレームに対して、第１ビッ
トレートに基づくビデオフレーム、第２ビットレートに基づくビデオフレーム及び第３ビ
ットレートに基づくビデオフレームを生成する。
【００８９】
第１記憶制御装置３４０は異なるビットレートのビデオフレームを対応するＧＯＰキャ
ッシュに同期格納し、すなわち、第１ビットレートに基づくビデオフレームを第１ＧＯＰ
キャッシュにキャッシュし、第２ビットレートに基づくビデオフレームを第２ＧＯＰキャ
ッシュにキャッシュし、第３ビットレートに基づくビデオフレームを第３ＧＯＰキャッシ
ュにキャッシュする。ストリーミングメディアサーバは３つのＧＯＰキャッシュにおける
ビデオフレームの数が同じ、３つのＧＯＰキャッシュにおけるビデオフレームに対応する
メディアコンテンツが全く同じになるように制御することができる。
【００９０】
ネットワークにおけるいずれかのユーザーに対して、第２記憶制御装置３５０は同期に
第１ＧＯＰキャッシュにおけるビデオフレームを読み出して第１キューに格納し、第２Ｇ
ＯＰキャッシュにおけるビデオフレームを読み出して第２キューに格納し、第３ＧＯＰキ
ャッシュにおけるビデオフレームを読み出して第３キューに格納する。第２記憶制御装置
３５０は３つのキューに同期格納されたビデオフレームに対応するメディアコンテンツが
全く同じになるように制御することができる。
【００９１】
ネットワークにおけるいずれかのユーザーに対して、当該ユーザーに今回のライブのメ
ディアストリームを提供し始める場合に、データフレーム配布装置３２０は、まず当該ユ
ーザーに対応する３つのキューのうちの１つのキューを送信キューとし、例えばデフォル
ト設定に基づいて対応するキューを送信キューとし、また、ユーザーが選択するビットレ
ートに基づいて当該ビットレートに対応するキューを送信キューとし、また現在のネット
ワーク伝送速度に基づいて対応するビットレートのキューを送信キューとする。データフ
レーム配布装置３２０は送信キュー（例えば、２番目のキュー）からビデオフレームを読
み出して当該ユーザーに送信し、１つのビデオフレームを配布するたびに、当該ビデオフ
レームを送信キューから削除し、データフレーム配布装置３２０はさらに１番目のキュー
と３番目のキューにおける、当該ビデオフレームに対応する、当該ビデオフレームのビッ
トレートと異なるビットレートを有するビデオフレームを削除する。データフレーム配布
装置３２０は送信キューからビデオフレームを連続的に読み出して配布する過程において
、ビットレート切り替え制御装置３１０はネットワーク品質取得装置３００により取得さ
れる送信キューのデータ充填率（すなわち、送信キューに現在記憶されているビデオフレ
ームが占有する記憶空間と送信キューの総記憶容量との比）を監視し、ビットレート切り
替え制御装置３１０は送信キューのデータ充填率が第１充填率よりも大きく、且つ前回の
ビットレート切り替え時点との間隔が所定時間に達することを監視した場合に、低ビット
レートへの切り替えを必要とすると決定し、ビットレート切り替え制御装置３１０は３番
目のキューを新たな送信キューとし、データフレーム配布装置３２０は２番目のキューか
らＩフレームを読み出すべき時に、新たな送信キュー（すなわち、３番目のキュー）から
ビデオフレームを読み出して配布し、同様に、データフレーム配布装置３２０が読み出し
たビデオフレームを送信キューから削除し、データフレーム配布装置３２０はさらに１番
目のキューと２番目のキューにおける、３番目のキューから読み出したビデオフレームに
対応する、当該読み出したビデオフレームのビットレートと異なるビットレートのビデオ
フレームを削除し、ビットレート切り替え制御装置３１０は送信キューのデータ充填率が
第２充填率よりも大きく、且つ前回のビットレート切り替え時点との間隔が所定時間に達
することを監視した場合に、高ビットレートへの切り替えを必要とすると決定し、データ
フレーム配布装置３２０は２番目のキューを新たな送信キューとし、３番目のキューから
Ｉフレームを読み出すべき時に、新たな送信キュー（すなわち、２番目のキュー）からビ
デオフレームを読み出して配布し、同様に、データフレーム配布装置３２０が読み出した
ビデオフレームを送信キューから削除し、データフレーム配布装置３２０はさらに１番目
のキューと３番目のキューにおける、２番目のキューから読み出したビデオフレームに対
応する、当該読み出したビデオフレームのビットレートと異なるビットレートのビデオフ
レームを削除する。
【００９２】
［実施例６：ビデオ会議の応用場面では、ストリーミングメディアサーバがユーザーにマ
ルチビットレートストリーミングメディアをアダプティブに提供する実施形態］
ビデオ会議の応用場面では、ストリーミングメディアサーバはビデオ会議に参加する各
参加者に３種類のビットレートのストリーミングメディアサービスをアダプティブに提供
でき、ストリーミングメディアサーバは３つのＧＯＰキャッシュ（すなわち、第１ＧＯＰ
キャッシュ、第２ＧＯＰキャッシュ及び第３ＧＯＰキャッシュ）を設定し、第１ＧＯＰキ
ャッシュは第１種類のビットレートに対応し、第２ＧＯＰキャッシュは第２種類のビット
レートに対応し、第３ＧＯＰキャッシュは第３種類のビットレートに対応し、第１ビット
レートは第２ビットレートよりも高く、第２ビットレートは第３ビットレートよりも高い
。
【００９３】
１つのユーザーがビデオ会議に参加することを申し込む際に、ストリーミングメディア
サーバは当該ユーザーに対応する情報を設定し、例えば当該ユーザーに３つのキュー（す
なわち、第１キュー、第２キュー及び第３キュー）を動的に設定し、第１キューは第１種
類のビットレートに対応し、第２キューは第２種類のビットレートに対応し、第３キュー
は第３種類のビットレートに対応する。本実施例では、３つのＧＯＰキャッシュは記憶空
間が異なるが、記憶可能なビデオフレームの数が同一である。３つのキューは記憶空間が
異なるが、記憶可能なビデオフレームの数が同一である。
【００９４】
ストリーミングメディアサーバは当該ユーザーに対応する情報を設定した後に、当該ユ
ーザーが今回のビデオ会議の参加者になる。トランスコード装置３３０は現在リアルタイ
ムに生成される符号化処理済みの、ＧＯＰ構造を有するビデオフレームをトランスコード
処理して、符号化処理済みのビデオフレームに対して、第１ビットレートに基づくビデオ
フレーム、第２ビットレートに基づくビデオフレーム及び第３ビットレートに基づくビデ
オフレームを生成する。
【００９５】
第１記憶制御装置３４０は異なるビットレートのビデオフレームを３つのＧＯＰキャッ
シュに同時格納し、すなわち、第１ビットレートに基づくビデオフレームを第１ＧＯＰキ
ャッシュにキャッシュし、第２ビットレートに基づくビデオフレームを第２ＧＯＰキャッ
シュにキャッシュし、第３ビットレートに基づくビデオフレームを第３ＧＯＰキャッシュ
にキャッシュする。第１記憶制御装置３４０は３つのＧＯＰキャッシュにおけるビデオフ
レームの数が同じ、３つのＧＯＰキャッシュにおけるビデオフレームに対応するメディア
コンテンツがまったく同じになるように制御する。
【００９６】
第２記憶制御装置３５０は同時に当該参加者の第１ＧＯＰキャッシュにおけるビデオフ
レームを読み出して第１キューに格納し、第２ＧＯＰキャッシュにおけるビデオフレーム
を読み出して第２キューに格納し、第３ＧＯＰキャッシュにおけるビデオフレームを読み
出して第３キューに格納する。第２記憶制御装置３５０は３つのキューに同期格納される
ビデオフレームに対応するメディアコンテンツがまったく同じになるように制御する。
【００９７】
当該参加者にビデオ会議のメディアストリームを提供し始めると、データフレーム配布
装置３２０は、まず当該参加者が選択するビットレートに基づいて当該ビットレートに対
応するキューを送信キューとし、送信キュー（例えば、３番目のキュー）からビデオフレ
ームを読み出して当該参加者に送信し、１つのビデオフレームを配布するたびに、当該ビ
デオフレームを送信キューから削除し、データフレーム配布装置３２０はさらに１番目の
キューと２番目のキューにおける、当該ビデオフレームに対応する、当該ビデオフレーム
のビットレートと異なるビットレートを有するビデオフレームを削除する。データフレー
ム配布装置３２０は送信キューからビデオフレームを連続的に読み出して配布する過程に
おいて、ビットレート切り替え制御装置３１０はネットワーク品質取得装置３００により
取得される送信キューのデータ充填率を監視し、ビットレート切り替え制御装置３１０は
送信キューのデータ充填率が第１充填率よりも大きく、且つ前回のビットレート切り替え
時点との間隔が所定時間に達することを監視した場合に、低ビットレートへの切り替えを
必要とすると決定し、３番目のキューのビットレートが既に最低ビットレートであるため
、ビットレート切り替え制御装置３１０は３番目のキューを依然として送信キューとし、
データフレーム配布装置３２０は３番目のキューからビデオフレームを継続的に読み出し
て配布し、ビットレート切り替え制御装置３１０は送信キューのデータ充填率が第２充填
率よりも大きく、且つ前回のビットレート切り替え時点との間隔が所定時間に達すると監
視した場合に、高ビットレートへの切り替えを必要とすると決定し、ビットレート切り替
え制御装置３１０は２番目のキューを新たな送信キューとし、データフレーム配布装置３
２０は３番目のキューからＩフレームを読み出すべき時に、新たな送信キュー（すなわち
、２番目のキュー）からビデオフレームを読み出して配布し、同様に、データフレーム配
布装置３２０は読み出したビデオフレームを送信キューから削除し、さらに１番目のキュ
ーと３番目のキューにおける、２番目のキューから読み出したビデオフレームに対応する
、当該読み出したビデオフレームのビットレートと異なるビットレートのビデオフレーム
を削除する。
【００９８】
なお、本発明はソフトウェア及び／又はソフトウェアとハードウェアの組み合せにおい
て実施されてもよく、例えば、本発明の各装置は、専用集積回路（ＡＳＩＣ）又は類似す
る何れかの他のハードウェア設備によって実現されてもよいことを注意すべきである。一
実施例では、本発明のソフトウェアプログラムは、プロセッサによって実行されて前記ス
テップ又は機能を実現することができる。同様に、本発明のソフトウェアプログラム（関
連するデータ構造を含む）はコンピュータ読み取り可能な記録媒体、例えば、ＲＡＭメモ
リ、磁気又は光学ドライブ又はフロッピーディスク及び類似する設備に記憶されてもよい
。また、本発明の一部のステップ又は機能は、ハードウェア（例えば、プロセッサと協力
して各ステップ又は機能を実行する回路）によって実現されてもよい。
【００９９】
当業者にとっては、本発明は上記例示的な実施例の詳細に制限されず、本発明の主旨や
基本特徴を逸脱せずに、他の具体的な形態で実施してもよい。そのため、いずれにしても
、本実施例は例示的なものに過ぎず、非限定的なものであり、本発明の範囲は上記の説明
ではなく、添付している請求項によって制限され、従って、請求項の同等要件を満たす意
味及び範囲内に入る全ての変化を、本発明に包含すべきである。請求項の符号はかかる請
求項を制限するものと考えるべきではない。さらに、「含む」という用語は他のユニット
又はステップを排除することではなく、単数は複数を排除することではない。請求項に述
べる複数のユニット又は装置は、１つのユニット又は装置によってソフトウェア又はハー
ドウェアで実現されてもよい。第１、第２などの用語は名称を示すものに過ぎず、特定の
順序を示すものではない。
【０１００】
以上、例示的な実施例を例示して説明したが、当業者は、特許請求の範囲の趣旨及び範
囲を逸脱せずに、形態や詳細を変更することができる。ここで保護しようとする範囲は添
付している特許請求の範囲に準じる。
【図１】
2020043583.tif 000003
【図２】
2020043583.tif 000004
【図３】
2020043583.tif 000005
【手続補正書】
【提出日】令和1年11月20日(2019.11.20)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
キューのデータ充填率とネットワークジッタ情報を含むネットワーク品質情報を取得するステップと、
前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定するステップであって、
前記データ充填率が第１閾値よりも大きく、且つ現在の時点と前回のビットレート切り替え時点との間隔が、ネットワークジッタに起因する所定の頻度を超えるビットレート切り替えを抑えるような所定時間を超える場合に、低ビットレートへの切り替えを必要とすると決定することと、
前記データ充填率が第２閾値よりも小さく、且つ現在の時点と前回のビットレート切り替え時点との間隔が、ネットワークジッタに起因する所定の頻度を超えるビットレート切り替えを抑えるような所定時間を超える場合に、高ビットレートへの切り替えを必要とすると決定することと、を含むステップと、
前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定した場合に、すべてのキューから１つのキューを送信キューとして選択するステップであって、異なるキューにおいて、同じメディアコンテンツに対する異なるビットレートのマルチメディアデータフレームが記憶されるステップと、
前記送信キューからマルチメディアデータフレームを読み出して配布し、ほかのキューにおける、配布したマルチメディアデータフレームのメディアコンテンツと同じメディアコンテンツを有するマルチメディアデータフレームのいずれをも削除するステップと、を含んでおり、
ここで、前記第１閾値は前記第２閾値よりも大きい
ことを特徴とするサーバにおいてマルチビットレートストリーミングメディアをアダプティブに提供するための方法。
【請求項２】
前記のネットワーク品質情報を取得するステップにおいては、送信キューのデータ充填率を取得するステップを含む
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記の前記送信キューからマルチメディアデータフレームを読み出して配布するステップにおいては、
切り替えの前の送信キューからマルチメディアデータフレームにおけるキーフレームを読み出して配布する必要がある場合に、前記切り替えの後の送信キューからマルチメディアデータフレームを読み出して配布するステップを含む
ことを特徴とする請求項１又は２に記載の方法。
【請求項４】
異なるキューに記憶されたマルチメディアデータフレームは同一のグループオブピクチャＧＯＰ構造を有する
ことを特徴とする請求項１又は２に記載の方法。
【請求項５】
各種のビットレートは１つのＧＯＰキャッシュに対応し、
符号化処理済みのマルチメディアデータフレームを異なるビットレートのマルチメディアデータフレームにトランスコードするステップと、
トランスコード済みの異なるビットレートのマルチメディアデータフレームを対応するＧＯＰキャッシュにそれぞれ記憶するステップと、
各ＧＯＰキャッシュからマルチメディアデータフレームを同期読み出して、読み出したマルチメディアデータを対応するキューにそれぞれ記憶するステップと、をさらに含む
ことを特徴とする請求項４に記載の方法。
【請求項６】
各キューの記憶空間に格納可能なマルチメディアデータフレームの数は同一であり、各キューの記憶空間はいずれも２つのマルチメディアデータフレームが占有する記憶空間以上である
ことを特徴とする請求項１又は２に記載の方法。
【請求項７】
キューのデータ充填率とネットワークジッタ情報を含むネットワーク品質情報を取得するための装置と、
前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定するための装置であって、
前記データ充填率が第１閾値よりも大きく、且つ現在の時点と前回のビットレート切り替え時点との間隔が、ネットワークジッタに起因する所定の頻度を超えるビットレート切り替えを抑えるような所定時間を超える場合に、低ビットレートへの切り替えを必要とすると決定し、
前記データ充填率が第２閾値よりも小さく、且つ現在の時点と前回のビットレート切り替え時点との間隔が、ネットワークジッタに起因する所定の頻度を超えるビットレート切り替えを抑えるような所定時間を超える場合に、高ビットレートへの切り替えを必要とすると決定することに用いられる装置と、
前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定した場合に、すべてのキューから１つのキューを送信キューとして選択するための装置であって、異なるキューにおいて、同じメディアコンテンツに対する異なるビットレートのマルチメディアデータフレームが記憶される装置と、
前記送信キューからマルチメディアデータフレームを読み出して配布し、ほかのキューにおける、配布したマルチメディアデータフレームのメディアコンテンツと同じメディアコンテンツを有するマルチメディアデータフレームのいずれをも削除するための装置と、を備えており、
ここで、前記第１閾値は前記第２閾値よりも大きい
ことを特徴とするサーバにおいてマルチビットレートストリーミングメディアをアダプティブに提供するための装置。
【請求項８】
前記ネットワーク品質情報を取得するための装置は、送信キューのデータ充填率を取得するための装置を備える
ことを特徴とする請求項７に記載の装置。
【請求項９】
前記の前記送信キューからマルチメディアデータフレームを読み出して配布し、ほかのキューにおける、配布したマルチメディアデータフレームのメディアコンテンツと同じメディアコンテンツを有するマルチメディアデータフレームのいずれをも削除するための装置は具体的には、
切り替えの前の送信キューからマルチメディアデータフレームにおけるキーフレームを読み出して配布する必要がある場合に、前記切り替えの後の送信キューからマルチメディアデータフレームを読み出して配布することに用いられる
ことを特徴とする請求項７又は８に記載の装置。
【請求項１０】
異なるキューに記憶されたマルチメディアデータフレームは同一のグループオブピクチャＧＯＰ構造を有する
ことを特徴とする請求項７又は８に記載の装置。
【請求項１１】
各種のビットレートは１つのＧＯＰキャッシュに対応し、
符号化処理済みのマルチメディアデータフレームを異なるビットレートのマルチメディアデータフレームにトランスコードするための装置と、
トランスコード済みの異なるビットレートのマルチメディアデータフレームを対応するＧＯＰキャッシュにそれぞれ記憶するための装置と、
各ＧＯＰキャッシュからマルチメディアデータフレームを同期読み出して、読み出したマルチメディアデータを対応するキューにそれぞれ記憶するための装置と、をさらに備える
ことを特徴とする請求項１０に記載の装置。
【請求項１２】
各キューの記憶空間に格納可能なマルチメディアデータフレームの数は同一であり、各キューの記憶空間はいずれも２つのマルチメディアデータフレームが占有する記憶空間以上である
ことを特徴とする請求項７又は８に記載の装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０１００
【補正方法】変更
【補正の内容】
【０１００】
以上、例示的な実施例を例示して説明したが、当業者は、特許請求の範囲の趣旨及び範囲を逸脱せずに、形態や詳細を変更することができる。ここで保護しようとする範囲は添付している特許請求の範囲に準じる。
なお、出願当初の特許請求の範囲の記載は以下の通りである。
請求項１：
ネットワーク品質情報を取得するステップと、
前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定した場合に、すべてのキューから１つのキューを送信キューとして選択するステップと、
前記送信キューからマルチメディアデータフレームを読み出して配布し、ほかのキューにおける、配布したマルチメディアデータフレームのメディアコンテンツと同じメディアコンテンツを有するマルチメディアデータフレームのいずれもを削除するステップと、を含んでおり、
ここで、異なるキューにおいて、同じメディアコンテンツに対する異なるビットレートのマルチメディアデータフレームが記憶された
ことを特徴とするサーバにおいてマルチビットレートストリーミングメディアをアダプティブに提供するための方法。
請求項２：
前記ネットワーク品質情報はキューのデータ充填率を含む
ことを特徴とする請求項１に記載の方法。
請求項３：
前記のネットワーク品質情報を取得するステップにおいては、送信キューのデータ充填率を取得するステップを含む
ことを特徴とする請求項２に記載の方法。
請求項４：
前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定するステップにおいては、
前記データ充填率が第１閾値よりも大きい場合に、低ビットレートへの切り替えを必要とすると決定するステップと、
前記データ充填率が第２閾値よりも小さい場合に、高ビットレートへの切り替えを必要とすると決定するステップと、を含んでおり、
ここで、前記第１閾値は前記第２閾値よりも大きい
ことを特徴とする請求項２に記載の方法。
請求項５：
前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定するステップにおいては、
前記データ充填率が第１閾値よりも大きく、且つ現在の時点と前回のビットレート切り替え時点との間隔が所定時間を超える場合に、低ビットレートへの切り替えを必要とすると決定するステップと、
前記データ充填率が第２閾値よりも小さく、且つ現在の時点と前回のビットレート切り替え時点との間隔が所定時間を超える場合に、高ビットレートへの切り替えを必要とすると決定するステップと、を含む
ことを特徴とする請求項２に記載の方法。
請求項６：
前記の前記送信キューからマルチメディアデータフレームを読み出して配布するステップにおいては、
切り替えの前の送信キューからマルチメディアデータフレームにおけるキーフレームを読み出して配布する必要がある場合に、前記切り替えの後の送信キューからマルチメディアデータフレームを読み出して配布するステップを含む
ことを特徴とする請求項１〜５のいずれか１項に記載の方法。
請求項７：
異なるキューに記憶されたマルチメディアデータフレームは同一のグループオブピクチャＧＯＰ構造を有する
ことを特徴とする請求項１〜５のいずれか１項に記載の方法。
請求項８：
各種のビットレートは１つのＧＯＰキャッシュに対応し、
符号化処理済みのマルチメディアデータフレームを異なるビットレートのマルチメディアデータフレームにトランスコードするステップと、
トランスコード済みの異なるビットレートのマルチメディアデータフレームを対応するＧＯＰキャッシュにそれぞれ記憶するステップと、
各ＧＯＰキャッシュからマルチメディアデータフレームを同期読み出して、読み出したマルチメディアデータを対応するキューにそれぞれ記憶するステップと、をさらに含む
ことを特徴とする請求項７に記載の方法。
請求項９：
各キューの記憶空間に格納可能なマルチメディアデータフレームの数は同一であり、各キューの記憶空間はいずれも２つのマルチメディアデータフレームが占有する記憶空間以上である
ことを特徴とする請求項１〜５のいずれか１項に記載の方法。
請求項１０：
ネットワーク品質情報を取得するための装置と、
前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定した場合に、すべてのキューから１つのキューを送信キューとして選択するための装置と、
前記送信キューからマルチメディアデータフレームを読み出して配布し、ほかのキューにおける、配布したマルチメディアデータフレームのメディアコンテンツと同じメディアコンテンツを有するマルチメディアデータフレームのいずれもを削除するための装置と、を備えており、
ここで、異なるキューにおいて、同じメディアコンテンツに対する異なるビットレートのマルチメディアデータフレームが記憶された
ことを特徴とするサーバにおいてマルチビットレートストリーミングメディアをアダプティブに提供するための装置。
請求項１１：
前記ネットワーク品質情報はキューのデータ充填率を含む
ことを特徴とする請求項１０に記載の装置。
請求項１２：
前記ネットワーク品質情報を取得するための装置は、送信キューのデータ充填率を取得するための装置を備える
ことを特徴とする請求項１１に記載の装置。
請求項１３：
前記の前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定した場合に、すべてのキューから１つのキューを送信キューとして選択するための装置は具体的には、
前記データ充填率が第１閾値よりも大きい場合に、低ビットレートへの切り替えを必要とすると決定し、
前記データ充填率が第２閾値よりも小さい場合に、高ビットレートへの切り替えを必要とすると決定することに用いられており、
ここで、前記第１閾値は前記第２閾値よりも大きい
ことを特徴とする請求項１１に記載の装置。
請求項１４：
前記の前記ネットワーク品質情報に基づいてビットレート切り替えを必要とすると決定した場合に、すべてのキューから１つのキューを送信キューとして選択するための装置は具体的には、
前記データ充填率が第１閾値よりも大きく、且つ現在の時点と前回のビットレート切り替え時点との間隔が所定時間を超える場合に、低ビットレートへの切り替えを必要とすると決定し、
前記データ充填率が第２閾値よりも小さく、且つ現在の時点と前回のビットレート切り替え時点との間隔が所定時間を超える場合に、高ビットレートへの切り替えを必要とすると決定することに用いられており、
ここで、前記第１閾値は前記第２閾値よりも大きい
ことを特徴とする請求項１１に記載の装置。
請求項１５：
前記の前記送信キューからマルチメディアデータフレームを読み出して配布し、ほかのキューにおける、配布したマルチメディアデータフレームのメディアコンテンツと同じメディアコンテンツを有するマルチメディアデータフレームのいずれもを削除するための装置は具体的には、
切り替えの前の送信キューからマルチメディアデータフレームにおけるキーフレームを読み出して配布する必要がある場合に、前記切り替えの後の送信キューからマルチメディアデータフレームを読み出して配布することに用いられる
ことを特徴とする請求項１０〜１４のいずれか１項に記載の装置。
請求項１６：
異なるキューに記憶されたマルチメディアデータフレームは同一のグループオブピクチャＧＯＰ構造を有する
ことを特徴とする請求項１０〜１４のいずれか１項に記載の装置。
請求項１７：
各種のビットレートは１つのＧＯＰキャッシュに対応し、
符号化処理済みのマルチメディアデータフレームを異なるビットレートのマルチメディアデータフレームにトランスコードするための装置と、
トランスコード済みの異なるビットレートのマルチメディアデータフレームを対応するＧＯＰキャッシュにそれぞれ記憶するための装置と、
各ＧＯＰキャッシュからマルチメディアデータフレームを同期読み出して、読み出したマルチメディアデータを対応するキューにそれぞれ記憶するための装置と、をさらに備える
ことを特徴とする請求項１６に記載の装置。
請求項１８：
各キューの記憶空間に格納可能なマルチメディアデータフレームの数は同一であり、各キューの記憶空間はいずれも２つのマルチメディアデータフレームが占有する記憶空間以上である
ことを特徴とする請求項１０〜１４のいずれか１項に記載の装置。