(57)【要約】【課題】パケット損失に由来するマルチメディア処理の遅延を抑える。【解決手段】リアルタイム・マルチメディア・ストリーミング２３０、２２８のための資源を配分するために、ストリーム情報に基づいて構築され、未来のマルチメディア・ストリームの要件を含んだバッファ規約テーブル（ＢＣＴ）２０２、２２０が用いられる。ＢＣＴ２０２が、送信機器２００により作成され、受信機器２１０へ送られる。受信機器２１０は、送られたＢＣＴ２２０を用いることにより、要求される資源を算出し、資源の配分を行う。その後に、送信機器２００から受信機器２１０へ、ＡＶコンテンツがストリーミングされる。またＢＣＴは、ＡＶコンテンツ全体を構成する複数のＡＶカプセルについての詳細な情報を含んでいる。【選択図】図１
2008306569.tif 000002
【特許請求の範囲】
【請求項１】
マルチメディア・ストリームの情報を含み、バッファの配分及び管理のために、送信機器から受信機器又は中間機器へストリーミングされることを要するバッファ規約テーブル（ＢＣＴ）と、
バッファ規約テーブルの構成要素として、マルチメディア・ストリーム・カプセルの情報を含むカプセルＩＤと、
マルチメディア・ストリーミング、セッション移譲及びセッション共有のために、前記バッファ規約テーブルを構築しかつ使用する制御部及びストリーミング部と、を備え、
バッファ規約テーブルの形式で未来のマルチメディア・ストリームの要件が、前記送信機器から前記受信機器又は前記中間機器へのストリーミングのために構築され、
前記未来のマルチメディア・ストリームの要件が、前記受信機器又は前記中間機器によって、資源の配分及び管理のために使用され、
前記セッション移譲は前記バッファ規約テーブルを使用し、
前記セッション共有は前記バッファ規約テーブルを使用する、マルチメディア・ストリーミング装置。
【請求項２】
前記バッファ規約テーブルは、
マルチメディア・ストリームの情報を含み、前記送信機器によってストリーミング・セッションに一意的に付与されたＩＤを有するストリームＩＤフィールドと、
前記送信機器の通信ポート番号と、ＩＰアドレス又は機器を一意的に特定する他の任意のＩＤと、の情報を含むストリーム送信元フィールドと、
前記受信機器の通信ポート番号と、ＩＰアドレス又は機器を一意的に特定する他の任意のＩＤと、の情報を含むストリーム送信先フィールドと、
カプセルのコンテンツについての特定の情報であるカプセル情報を含むカプセルＩＤフィールドと、をさらに含んでいる、請求項１記載のマルチメディア・ストリーミング装置。
【請求項３】
前記カプセルＩＤは、
各カプセルに一意的なＩＤを含むカプセルＩＤフィールドと、
特定のカプセルのコンテンツのサイズをバイト単位で表示するカプセル・サイズ・フィールドと、
バッファ規約テーブルに準拠した順序において前カプセルのカプセルＩＤを含む前カプセルＩＤフィールドと、
バッファ規約テーブルに準拠した順序において次カプセルのカプセルＩＤを含む次カプセルＩＤフィールドと、
ミリ秒単位の時間で表したＡＶコンテンツの長さを含むカプセル長フィールドと、
前記カプセル内のＡＶコンテンツの種別に関する情報を含むコンテンツ種別フィールドと、をさらに含む請求項１記載のマルチメディア・ストリーミング装置。
【請求項４】
前記マルチメディア・ストリーム・カプセルは、
カプセルＩＤフィールドと、ＧＯＰフィールドと、パディング・フィールドとによって形成されるカプセルをさらに含み、
前記カプセルは、特定のカプセル・サイズを有する単一又は複数のＧＯＰを含んでおり、
前記パディング・フィールドは、カプセルが特定のサイズとなるようにするために、任意に付加される意味のないデータを含んでいる、請求項１記載のマルチメディア・ストリーミング装置。
【請求項５】
前記バッファ規約テーブルは、送信機器から受信機器又は中間機器へストリーミングされ、それによって、
前記送信、受信及び中間機器は、直接に接続されるか、又はＩＰパケット交換系ネットワークを介して間接的に接続されており、
前記送信、受信及び中間機器の各々は、少なくとも、それぞれの場所にあるバッファ又はメモリを有しており、
前記ストリーミング・セッションは、単一又は複数の送信機器から、単一又は複数の受信機器へ、単一又は複数の中間機器を介して、バッファ規約テーブルを含むマルチメディア・ストリームの移送を行うことを可能にし、
中間セッションは、一つの機器から別の機器へ他のストリーミング機器なしで、バッファ規約テーブルを含むマルチメディア・ストリームの移送を可能にする、請求項１記載のマルチメディア・ストリーミング装置。
【請求項６】
バッファ規約テーブルの形式の前記未来のマルチメディア・ストリームの要件は、送信機器から受信機器又は中間機器へのストリーミングのために構築されるものであり、それにより、
前記バッファ規約テーブルは、前記マルチメディア・ストリーム又はＡＶコンテンツが、送信機器から受信機器または中間機器へストリーミングされるより前に構築され、
前記バッファ規約テーブルは、前記受信機器又は前記中間機器に存在するマルチメディア情報に基づいて構築され、
前記バッファ規約テーブルは、単一又は複数のカプセルを、その一意的なカプセルＩＤとともに含んでおり、
前記バッファ規約テーブルは、全体的又は部分的に利用可能なものとして存在するマルチメディア・ストリーム情報に基づいて構築され、
前記バッファ規約テーブルは、全てのストリーミング・セッション及び全ての中間セッションのために構築され、
前記バッファ規約テーブルは、カプセルＩＤ、カプセル・サイズ、前カプセルＩＤ及び次カプセルＩＤのフィールドを含んでおり、かつ、これらのフィールドは必須フィールドであり、
前記バッファ規約テーブルは、カプセル長及びコンテンツ種別のフィールドを含んでおり、かつ、これらのフィールドは任意フィールドであり、
１つのバッファ規約テーブルが、１つの中間セッションのために、２つの異なる機器によって共通に使用され、
バッファ規約テーブルは、異なる中間セッションの間では異なっており、
ＡＶコンテンツ情報が存在しない場合には、評価に基づくバッファ規約テーブルの必須フィールドが作成され、その場合に、評価されたカプセル・サイズを得るために、パディング・フィールドが使用され、
複数のＡＶカプセルと各ＡＶカプセルの開始又は終了とを区別するための表示ビットとして、ＡＶカプセルの任意フィールドであるカプセルＩＤが用いられる、請求項１記載のマルチメディア・ストリーミング装置。
【請求項７】
前記マルチメディア・ストリーム又はＡＶコンテンツが、ＧＯＰの形式で構成される音声、映像、テキスト又は画像のコンテンツを含んでいる、請求項４記載のマルチメディア・ストリーミング装置。
【請求項８】
前記バッファ規約テーブルストリーミングは、前記受信機器又は前記中間機器による特定のマルチメディア・ストリーミングの要求に基づいて行われるものであり、それによって、
前記バッファ規約テーブルストリーミングの要求は、既存の信頼性ある制御プロトコルを用いて行われ、
前記バッファ規約テーブルは、既存の信頼性ある転送プロトコルを用いてストリーミングされ、
前記バッファ規約テーブルは、特定の要求通知を受信すると、要求を行った前記機器へストリーミングされ、
受信された前記バッファ規約テーブルは、要求を行った前記機器による参照に供するために、前記機器のある場所のバッファに格納され、
バッファ規約テーブルが受信され、かつ中間機器又は受信機器による資源配分がなされると、マルチメディア・コンテンツが送信機器から受信機器又は中間機器へストリーミングされる、請求項５記載のマルチメディア・ストリーミング装置。
【請求項９】
前記送信機器、受信機器及び中間機器の各々は、
前記バッファ規約テーブルを構築する送信機器及び／又は中間機器と、
前記中間セッションのために前記バッファ規約テーブルを使用する中間機器及び／又は受信機器とを含み、
前記バッファ規約テーブルは、前記送信機器から前記受信機器へ、ネットワークを通じて直接的に又は前記中間機器を介して間接的にストリーミングされ、
１つのストリーミング・セッションにおける前記送信、受信又は中間機器の数は、単一又は複数であり、
前記中間機器は、制御部とともに、２つの異なるストリーミング部を含んでおり、当該２つのストリーミング部は、独立したストリーミング・バッファとＡＶコンテンツ・バッファとＡＶ処理バッファとを有する、請求項６記載のマルチメディア・ストリーミング装置。
【請求項１０】
ＡＶコンテンツ・バッファとストリーミング・バッファとを、前記送信機器に有するストリーミング部と、
ＡＶ処理バッファとストリーミング・バッファとを、前記受信機器に有するストリーミング部と、
ＡＶコンテンツ・バッファとＡＶ処理バッファとストリーミング・バッファとを、前記中間機器に有するストリーミング部と、をさらに備える、請求項１記載のマルチメディア・ストリーミング装置。
【請求項１１】
前記制御部は、
バッファ規約テーブルの構築を指示し、
１つの機器から別の機器へのバッファ規約テーブルのストリーミング及び受信を制御し、
ＡＶコンテンツ・バッファとストリーミング・バッファとの間、及びストリーミング・バッファとＡＶ処理バッファとの間でのＡＶコンテンツの移送を制御し、
前記制御部のある場所のバッファ規約テーブルに基づくバッファの配分と配分解除とを含むバッファ管理を行い、
特定の全体的又は部分的に失われたカプセルの再送の要求及び当該要求への応答を行い、カプセル送信状態を報告し、かつ送信機器と受信機器又は中間機器との間でのポート番号ネゴシエーションを行う、請求項１記載のマルチメディア・ストリーミング装置。
【請求項１２】
前記ストリーミング部は、
通信リンクを通じて同一機器内のストリーミング・バッファへ、ＡＶコンテンツ・バッファのコンテンツの移送を行い、
ストリーミング・バッファのパケット化を行い、別個のデータ・ストリーミング・リンクを介してストリーミング部の送信先ストリーミング・バッファへパケットをストリーミングし、
送信先の機器の前記ストリーミング部は、パケット化されたＡＶコンテンツを受信し、パケット開封してその場所にあるストリーミング・バッファに格納し、
送信先の機器の前記ストリーミング部は、前記ストリーミング・バッファから前記ＡＶ処理バッファへストリーミング・バッファのコンテンツを移送する、請求項１０記載のマルチメディア・ストリーミング装置。
【請求項１３】
あらゆる機器の前記バッファ又は他の資源の配分が制御部によって行われ、それにより、
メモリ又はバッファ、ＣＰＵ処理資源、要求されたＡＶストリーミングというアプリケーションのサービス時間、電力使用量、及び記憶容量を含む資源の配分及び確保のために、バッファ規約テーブルが参照され、
ＡＶ処理バッファ及びストリーミング・バッファを含む全バッファ容量が、配分のために制御部によって制御され、
全バッファ容量が、固定容量のバッファとして静的に配分され、
全バッファ容量が、非固定容量のバッファとして動的に配分され、
配分された全バッファ容量は、マルチメディア・ストリームを格納するために利用できるバッファの上限に該当し、
静的に配分された全バッファは、配分された全バッファ容量による制限内で、使用するバッファ容量を静的又は動的に変えることにより、ストリーミング・バッファ、ＡＶ処理バッファ及びＡＶコンテンツ・バッファの間で共有され、
動的に配分された全バッファは、配分された全バッファ容量による制限内で、使用するバッファ容量を動的に変えることにより、ストリーミング・バッファ、ＡＶコンテンツ・バッファ及びＡＶ処理バッファの間で共有され、
単一の装置の異なるストリーム・セッションのためのアップストリーム及びダウンストリームが、同一に配分された全バッファ又は異なるように配分された全バッファから出ており、
アップストリーム及びダウンストリームは、同一又は異なるバッファのプールを共有する、請求項１２記載のマルチメディア・ストリーミング装置。
【請求項１４】
バッファ規約テーブルの形式の未来のマルチメディア・ストリームの要件が、前記ストリーミング・セッションの発生点としての送信機器又は中間機器によって、資源の配分及び管理のために使用され、それにより、
送信又は中間機器は、ＡＶコンテンツ・バッファとストリーミング・バッファとの双方に対して、カプセルのサイズを有するバッファ規約テーブルに基づいてバッファ又は資源を配分し、
ＡＶコンテンツ・バッファのコンテンツは、バッファ規約テーブルを参照して、事前配分されたストリーミング・バッファへ、カプセル毎に順序よく連続的に移送され、
ストリーミング・バッファは、パケット化処理により、送信機器から受信機器又は中間機器のバッファ規約テーブルに基づいて事前配分されたバッファへ、前記カプセルを移送し、
カプセルの処理が、マルチメディア機器内のＡＶ処理バッファからＡＶコンテンツ・バッファへの移送の間に行われ、
カプセルが、中間機器内で、バッファ規約テーブルに基づいてマルチメディア・コンテンツの順序を維持することによって移送され、
中間機器が介在する場合には、バッファがストリーミング・バッファとＡＶ処理バッファとに配分される、請求項１記載のマルチメディア・ストリーミング装置。
【請求項１５】
バッファ規約テーブルの形式の未来のマルチメディア・ストリームの要件が、前記ストリーミング・セッションの終点としての中間機器又は受信機器によって、資源の配分及び管理のために使用され、それにより、
中間又は受信機器は、ＡＶ処理バッファとストリーミング・バッファとの双方に対して、カプセルのサイズを有するバッファ規約テーブルに基づいてバッファ又は資源を事前配分し、
パケット化されたマルチメディア・コンテンツが、出発点の機器から受信され、パケット開封され、事前配分されたストリーミング・バッファに、バッファ規約テーブルを参照して格納され、
ストリーミング・バッファのカプセルは、事前配分されたＡＶ処理バッファへ、連続的に移送され、
中間機器が介在する場合には、バッファ規約テーブルを参照して、バッファがストリーミング・バッファとＡＶコンテンツ・バッファとに配分される、請求項１記載のマルチメディア・ストリーミング装置。
【請求項１６】
バッファ規約テーブルを用いたセッション移譲が、
確立されている有効なストリーミング及び制御のセッションが与えられているときに、受信機器が送信機器にセッションの停止を、停止制御通知を介して通知し、
送信機器が、セッション移譲のために、代わりとなる適切な受信機器を探索して見出し、
送信機器が、代わりとなる受信機器と制御セッションを確立し、
現在の受信機器に送信されていたものと同一に複製されたバッファ規約テーブルが、代わりとなる受信機器に、送信機器によって送られ、
送信機器、現在の受信機器、及び代わりの受信機器が、現在の受信機器から代わりの受信機器へのセッションの移譲点として、バッファ規約テーブルに基づいて正確なカプセルＩＤについて、ネゴシエーションを行い、
セッション移譲が中断なく行われることを保証するために、前記正確なカプセルＩＤのネゴシエーションは、バッファ遅延、マルチメディア処理遅延、及びネットワーク遅延を含む起こり得る遅延を隠蔽することによって行われ、
カプセルＩＤが特定されると、受信及び送信機器を含めた全ての機器が、前記正確なカプセルＩＤについて通知を受け、
送信機器と代わりの受信機器との間で新たなストリーミング・セッションが確立され、マルチメディア・ストリーミングが開始され、
代わりの受信機器は、前記正確なカプセルＩＤを検知すると、前記マルチメディア・コンテンツの処理を開始し、
現在の受信機器は、前記正確なカプセルＩＤを検知すると、前記マルチメディア・コンテンツの処理を停止し、
送信機器は、現在の受信機器へのカプセルのストリーミングを停止し、停止確認通知を現在の受信機器へ送信することを含む、請求項１記載のマルチメディア・ストリーミング装置。
【請求項１７】
バッファ規約テーブルを用いたセッション共有が、
確立されている有効なストリーミング及び制御のセッションが与えられているときに、新たな受信機器が送信機器に、現在有効なストリーミング及び制御のセッションを共有する意思を、共有要求制御通知を介して通知し、
送信機器が、新たな受信機器と、制御セッションを確立し、
現在の受信機器に送信されていたものと同一に複製されたバッファ規約テーブルが、新たな受信機器に、送信機器によって送られ、
送信機器、現在の受信機器、及び新たな受信機器が、現在の受信機器と新たな受信機器との間のセッションの共有点として、バッファ規約テーブルに基づいて正確なカプセルＩＤについて、ネゴシエーションを行い、
セッション共有が中断なく行われることを保証するために、前記正確なカプセルＩＤのネゴシエーションは、バッファ遅延、マルチメディア処理遅延、及びネットワーク遅延を含む起こり得る遅延を隠蔽することによって行われ、
カプセルＩＤが特定されると、受信及び送信機器を含めた全ての機器が、前記正確なカプセルＩＤについて通知を受け、
送信機器と新たな受信機器との間で新たなストリーミング・セッションが確立され、マルチメディア・ストリーミングが開始され、
新たな受信機器は、前記正確なカプセルＩＤを検知すると、前記マルチメディア・コンテンツの処理を開始することを含む、請求項１記載のマルチメディア・ストリーミング装置。
【請求項１８】
ネゴシエーションは、前記機器の間で、既存の任意の機構又はプロトコルを用いて行われる、請求項１１、１６及び１７の何れかに記載のマルチメディア・ストリーミング装置。
【請求項１９】
カプセルの処理は、カプセル・コンテンツについての再生、トランスコーディング、トランスレーティングを含む任意の使用又は変更を含む、請求項１４記載のマルチメディア・ストリーミング装置。
【請求項２０】
マルチメディア・ストリームの情報を含み、バッファの配分及び管理のために、送信機器から受信機器又は中間機器へストリーミングされることを要するバッファ規約テーブル（バッファ規約テーブル）と、
前記バッファ規約テーブルの構成要素として、マルチメディア・ストリーム・カプセルの情報を含むカプセルＩＤと、
マルチメディア・ストリーミング、セッション移譲及びセッション共有のために、前記バッファ規約テーブルを構築しかつ使用する制御部及びストリーミング部と、を備えたマルチメディア・ストリーミング装置で用いられるマルチメディア・ストリーミング方法であって、
当該方法は、
前記送信機器から前記受信機器又は前記中間機器へのストリーミングのために、前記バッファ規約テーブルを構築する工程と、
資源の配分及び管理のために、前記受信機器又は前記中間機器によって前記バッファ規約テーブルを使用する工程と、
前記マルチメディア・ストリーミング・セッションの移譲のために、前記バッファ規約テーブルを使用する工程と、
前記マルチメディア・ストリーミング・セッションの共有のために、前記バッファ規約テーブルを使用する工程と、を備えるマルチメディア・ストリーミング方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、広くは資源の配分と管理とに関し、特定的には、パケット交換系ネットワークを介したマルチメディア・コンテンツ・ストリーミングのためのバッファに関する。特に、本発明は、パケット損失によるマルチメディア処理の遅延を低減するための未来マルチメディア・ストリーミングの要件を有する、リアルタイム・マルチメディア・ストリーミングに関するストリーミング情報に基づく資源配分のための装置と、それに関連する方法とを提供する。
【背景技術】
【０００２】
遠隔トランスコードや分散処理や協調処理などのマルチメディア・コンテンツ処理、あるいは再生を含む様々な理由により、機器の間で交換されるマルチメディア・コンテンツのストリーミングは、今日では広く知られた技術となっている。ネットワーク技術における近年の進歩は、以前のようにコンピュータ同士のみならず、様々な機器による通信を可能にしている。デジタルコンテンツを取り扱い可能な家電（ＣＥ）機器は、分散型コンテンツ処理にも適合した通信特性を有するようになってきている。例えば８０２．１１系のような有線及び無線通信によって、ＡＶ（音声映像）コンテンツは、ＣＥ機器間、及び、他の既存のネットワーク機器との間で、容易に移動することが可能となっている。これらの機器の間でのデータの移動において、それが直接的なコンテンツ転送であれ、送信側（ｓｏｕｒｃｅ）と受信側（ｓｉｎｋ）の機器の間に介在する中間機器（ｉｎｔｅｒｍｅｄｉａｔｅ  ｄｅｖｉｃｅ）を介したものであれ、通信ネットワークが中心的な役割を果たしている。
【０００３】
通信ネットワークは、パケット損失により、ストリーミング機器の間で伝送遅延を引き起こす。この伝送遅延には、送信機器での遅延、ネットワーク遅延、及び受信機器での遅延が含まれる。これらの遅延は、順に、ストリーミングされるマルチメディア・コンテンツに対するＡＶ処理全体の遅延を増大させることになる。本発明は、特に、ネットワーク遅延を除いた送信機器、受信機器、及び中間機器による遅延の問題を解決することを主眼としている。ネットワーク遅延は、トラフィック条件によって引き起こされる。すなわち、通信機器の混雑、ネットワーク衝突、及び他の偶発的なパケット損失などである。これらの要因に対して、ストリーミング機器は制御不可能である。送信機器、受信機器、及び中間機器で発生する遅延は、大きくは、バッファ管理方式が低劣であることに由来している（非特許文献６を参照）。
【０００４】
音声映像（ＡＶ）コンテンツは、一般にＭＰＥＧやＩＴＵ標準に基づきＩ、Ｐ、及びＢフレームから成るＧＯＰ（Ｇｒｏｕｐ  ｏｆ  Ｐｉｃｔｕｒｅ）と称されるピクチャー群へと符号化される。どのようなＧＯＰであっても、Ｉフレームは、最も重要なフレームである。なぜなら、Ｉフレームは、（直接的であれ間接的であれ、）当該ＧＯＰ内の他の全てのフレームの予測符号化のために用いられるからである。Ｉフレームの次にＰフレームが重要であり、Ｂフレームが重要性において最も劣る。ＧＯＰ系のＡＶコンテンツは、様々なフォーマット又は標準に従って伝送される。例えば、メディア・ストリーミングのための、プログラム・エレメンタリー・ストリーム（Ｐｒｏｇｒａｍ  Ｅｌｅｍｅｎｔａｒｙ  Ｓｔｒｅａｍ）、エレメンタリー・ストリーム（  Ｅｌｅｍｅｎｔａｒｙ  Ｓｔｒｅａｍ）、プログラム・ストリーム（Ｐｒｏｇｒａｍ  Ｓｔｒｅａｍ）、トランスポート・ストリーム（Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ）などである。ＧＯＰ系のパケット化のためのこれらのフォーマット要件では、ＡＶカプセルと一般に称される各パケットあるいはセル内にあるＧＯＰの数が異なっている。ＡＶカプセルと称されるＧＯＰ又は一群のＧＯＰは、パケット交換系ネットワークを通じて伝送される。様々なＡＶ符号化装置及び復号化装置は、様々な符号化レベル、フォーマット、ストリーム、サイズ等で、これらのＡＶカプセルを生成しかつ利用する。しかしながら、一般にＡＶコンテンツは、ＧＯＰ又は一群のＧＯＰ（ＡＶカプセル）の形式で、バッファに格納され、かつパケット交換系ネットワークに伝送される。
【０００５】
ＡＶカプセルは、送信側の機器のバッファに格納され、その後にパケット化処理によりネットワークに転送され、そして受信側の機器に受信される。その後にＡＶカプセルは、パケット開封（ｄｅ−ｐａｃｋｅｔｉｚａｔｉｏｎ；パケット化の逆処理）処理を介して、受信側のバッファに格納される。両側におけるバッファ管理方式が貧弱なものであることから、パケット損失が生じる可能性がある。このパケット損失によって、複数のＧＯＰ、単一のＧＯＰ、あるいはＧＯＰの一部が失われ、その結果、ＡＶデータ処理全体の品質の劣化がもたらされる。送信及び受信機器はいずれも、ＡＶカプセルの送信と受信とを協調させなければならず、さもなければ、両側ともパケット損失が発生することとなる。この協調動作は、通常はバッファ制御方式によって為されるものである。以下に列挙するものは、本発明に関連する文献である。
【特許文献１】米国公開特許第２００３／００７２５６３Ａ１号
【特許文献２】米国公開特許第２００２／０１０５９５１Ａ１号
【特許文献３】米国公開特許第２００４／００４６７９０Ａ１号
【特許文献４】国際出願公開第ＷＯ２００４／０３０２８６Ａ１号
【特許文献５】米国特許第６９４７３７８Ｂ２号
【非特許文献１】Ｎ．  Ｆｅａｍｓｔｅｒ，  Ｄ．  Ｂａｎｓａｌ，  ａｎｄ  Ｈ．  Ｂａｌａｋｒｉｓｈｎａｎ  ”Ｏｎ  ｔｈｅ  ｉｎｔｅｒａｃｔｉｏｎｓ  ｂｅｔｗｅｅｎ  ｌａｙｅｒｅｄ  ｑｕａｌｉｔｙ  ａｄａｐｔａｔｉｏｎ  ａｎｄ  ｃｏｎｇｅｓｔｉｏｎ  ｃｏｎｔｒｏｌ  ｆｏｒ  ｓｔｒｅａｍｉｎｇ  ｖｉｄｅｏ，”  １１ｔｈ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｐａｃｋｅｔ  Ｖｉｄｅｏ  Ｗｏｒｋｓｈｏｐ  （ＰＶ２００１），  Ａｐｒｉｌ  ２００１．
【発明の開示】
【発明が解決しようとする課題】
【０００６】
一般に用いられる静的バッファ配分方式では、予測不可能でかつ変化するネットワークのトラフィック条件のために、バッファが有効利用されないという問題が生じる。殆どの場合には、バッファは過剰に割り当てられている。それによって、限られた資源であるバッファが、過少にしか利用されない結果となっている。静的方式が持つバッファの有効利用上の問題を克服するものとして、動的バッファ配分方式が導入されている。動的方式では、現在流れているＡＶストリームの一部が解剖され、そのコンテンツが知得される。それによって、未来のトラフィックが予測され、十分なバッファを配分することが可能となる。過去のトラフィックの統計的観察もまた、将来のトラフィックの予測に利用され、それにより、その場その場で即席に対応するバッファ配分方式が採られている。未来のバッファ需要を、より適切に予測するために、双方の技術が用いられる場合もある。
【０００７】
しかしながら、これらの技術は、全ての問題を解決するものとはなっていなかった。その理由は以下の通りである。
（１）予測の不正確さ（ネットワークのトラフィック条件とユーザの挙動とが変動することにより、次に来る変換後のストリームを含めた後続のＡＶストリーミングを正確に予測することができない。例えば、特殊再生操作があると、別の所にあるＡＶコンテンツがストリーミングされ、それによって予測可能なトラフィック・パターンが壊される。）。
（２）フレームの空間的な複雑さと動きベクトルとを検出する処理などといった要因によって、予測に遅延が生じること。
（３）トラフィック予測を実行するためにＣＰＵ資源が浪費されること（アルゴリズムが複雑であるために、資源が浪費される）。資源が貧弱な機器では、手順を実行するのに過大な資源を要することとなる。
（４）部分的に処理されたＡＶコンテンツのための中間機器が存在することにより、ＡＶコンテンツが変換され（例えば、ＡＶトランスコードされ）、それによって、予測を可能にしている機構が壊れてしまう。
【０００８】
上に述べた理由によって、バッファの配分と管理とが、送信側と受信側との双方において貧弱なものとなっている。このことは、再生、トランスコード等を含むＡＶ処理全体の品質に影響を与える。特に、中間機器を介してストリーミングされたデータは、受信機器で再生可能とされる前に、安定で予測可能なバッファ管理方式を要する。一方、未来のマルチメディア・ストリームの要件が存在しないために、ＡＶ処理（例えば、遠隔トランスコーディングなど）のための他の資源の配分ができない、という問題が生じる。例えば、トランスコーディングのサービスタイムは、サービスに関与する時間に予測することはできず、ＣＰＵ資源の利用時間は、精度良く評価することができない（例えば、ＴＳ−ＰＳ変換時間の評価など）。そして、消費電力に敏感な機器については、資源の利用度についての評価は重要であり、サービスがなされている時間には、微細レベルでの評価を行うことはできない。
【０００９】
このように、送信側と受信側の双方におけるパケット損失に由来するＡＶ処理の遅延を、バッファの配分及び管理の方式を即席で作り上げることによって低減させるための機構が求められている。それゆえ、本発明は、バッファ及び資源の有効な配分及び管理のためのＡＶカプセルのレベルでの未来ストリームの情報を、正確に知得する装置及び方法を提供することを目的とする。これにより、パケット損失を低減することができ、その結果、マルチメディア処理の遅延を最小化することができる。
【課題を解決するための手段】
【００１０】
本発明は、広くは資源の配分と管理とに関し、特定的には、パケット交換系ネットワークを介したマルチメディア・コンテンツ・ストリーミングのためのバッファに関する。特に、本発明は、パケット損失によるマルチメディア処理の遅延を低減するための未来マルチメディア・ストリーミングの要件を有する、リアルタイム・マルチメディア・ストリーミングに関するストリーミング情報に基づく資源配分のための装置と、それに関連する方法とを提供する。本発明はまた、不連続部分のないストリーミング・セッションの移譲及び共有の方法をも提供する。
【００１１】
本発明は、バッファ規約テーブル（ＢＣＴ）を用いて、要求される資源を早期に算出する。その後に、送信機器から受信機器へのＡＶコンテンツ・ストリーミングが行われる。このときに、中間装置が存在する場合もあれば、しない場合もある。ＡＶコンテンツは、単数又は複数のＧＯＰからなる単数又は複数のＡＶカプセルの形式で送信される。ＢＣＴには、ＡＶコンテンツ全体を構成する単数又は複数のＡＶカプセルについての詳細な情報が含まれている。ＢＣＴは、既に存在しているＡＶコンテンツ情報に基づいて構築することができる。資源は、主としてバッファとその他のもの、例えば要求されたＡＶストリーミングというアプリケーションのサービス時間、及び要求されたＡＶコンテンツ・ストリーミングに関するＣＰＵ資源、電力使用量、及び記憶容量であり、これらは、現実のストリーミングが行われるより前に確保される。一旦、資源が確保されると、ＡＶコンテンツが送信機器から受信機器へストリーミングされる。未来のマルチメディア・ストリームの要件を有するＢＣＴによって、全ての機器が、バッファを含めた十分な資源を、マルチメディア・ストリームの前に配分することが可能となり、さらに、失われたパケットの再要求を系統的に行うことが可能となる。このように適切に管理されたバッファが、送信、受信及び中間機器に存在することによって、バッファ輻輳、アンダーフロー、オーバーフロー、過少な配分、過剰な配分などに由来するパケット損失を防ぐことができる。それに加えて、ＢＣＴはまた、シームレス・マルチメディア・ストリームのセッション移譲及びセッション共有を実現するのに用いられる。
【００１２】
中間機器が介在する場合には、まずＡＶコンテンツは送信機器から中間機器へ送信する必要があり、それによってＡＶ処理がなされる。その後に、ＡＶコンテンツは、最終的な受信機器へストリーミングされる。この場合に本発明は、現在の直接ストリーミング法から間接ストリーミング法へと拡張することができる。ＡＶストリーム情報が存在しない場合（例えば、ライブ・ストリーミングの場合）には、必須フィールド（ｃｏｍｐｕｌｓｏｒｙ  ｆｉｅｌｄｓ）を有する評価に基づくＢＣＴが構築される。
【発明の効果】
【００１３】
本発明により、パケット損失によるマルチメディア処理遅延を抑えることができる。
【発明を実施するための最良の形態】
【００１４】
本発明は、広くは資源の配分と管理とに関し、特定的には、パケット交換系ネットワークを介したマルチメディア・コンテンツ・ストリーミングのためのバッファに関する。以下において、パケット損失によるマルチメディア処理の遅延を低減するための未来マルチメディア・ストリーミングの要件を有する、リアルタイム・マルチメディア・ストリーミングに関するストリーミング情報に基づく資源配分のための装置と、それに関連する方法とについて述べる。
【００１５】
図１は、送信機器（ｓｏｕｒｃｅ  ｄｅｖｉｃｅ；コンテンツを送信する側の機器）１０４と中間機器１１２と受信機器（ｓｉｎｋ  ｄｅｖｉｃｅ；コンテンツを受信する側の機器）１０８とを示している。送信機器１０４は、ＡＶコンテンツ１０６を保有しており、ＡＶコンテンツ１１０を格納する受信機器１０８に、中間機器１１２を介して接続されている。これらの機器１０４、１１２、１０８は、ネットワーク１０２を介して互いに接続されている。ネットワーク１０２は、直接に接続することが可能であり、またこれら３つの機器の間の間接的な接続を実現するための他のネットワーク機器を介して間接的に接続することも可能である。送信及び受信機器の間に、複数の中間機器を介在させることも可能である。ＡＶコンテンツ１０６は、格納１１０又は再生の何れの目的のためにも、送信機器１０４から受信機器１０８へストリーミングする必要がある。直接ストリーミング及び再生以外にも、ＡＶコンテンツはまた、ＡＶコンテンツを再構成するための処理、例えば、トランスコーディング、拡大縮小、アップコンバージョン、ダウンコンパージョン等のために、中間機器１１２へストリーミングされ、その後に受信機器１０８にストリーミングされる。中間機器１１２は、ＡＶコンテンツ１１４を格納する能力を有している。中間機器は、格納する能力を有することなく、中間装置内にバッファのみを有する場合がある。この中間処理では、受信機器１１０への高品質なＡＶ配信を確保するために、ＡＶストリーミングが送信機器１０４から中断できない状態で連続して行われることを要する。送信機器１０４と受信機器１０８との間に、複数の中間機器が介在していても良い。上流側にある処理機器に、処理の遅延やパケット損失があれば、受信機器に大きな影響を及ぼすこととなる。
【００１６】
ストリーミング・セッションによって、単一又は複数の送信機器１０４から単一又は複数の受信機器１０８へ、単一又は複数の中間機器１１２を介して、マルチメディア・ストリームが移動することが可能となる。中間セッションによって、一つの機器１０４から別の機器１１２へ、他のストリーミング機器なしで、マルチメディア・ストリームが移動することが可能となる。
【００１７】
送信機器２００と受信機器２１０との間で行われる直接的なＡＶコンテンツ・ストリーミングのための単純な構成を図２に例示する。この構成は、本発明の装置及び方法を基本構造として実施した形態を示している。受信機器２１０は、特定のＡＶコンテンツを要求２１２する。この要求２１２は、ＲＴＰ、  ＲＴＣＰ、ＴＣＰなど、どのようなプロトコルを用いても行うことができる。要求を受信すると、送信機器２００は、それに応えて、ＡＶメディア記憶装置２０４に格納されているコンテンツのうちの要求されたＡＶコンテンツに基づいて、バッファ規約テーブル（Ｂｕｆｆｅｒ  Ｃｏｎｔｒａｃｔ  Ｔａｂｌｅ；ＢＣＴ）２０２を構築する。次に、ＢＣＴが受信機器２１０へストリーミング２１４することができる。この場合、ＢＣＴはＡＶコンテンツ・ストリーミングに先立って構築される。ＢＣＴは、ＴＣＰのような信頼性のある伝送プロトコルを用いてストリーミング２１４される。受信されたＢＣＴ２２０は、その場所にあるＡＶメディア記憶装置２２２に格納される。次のステップとして、送信機器２００と受信機器２１０の双方が、それぞれの場所にあるバッファ（メモリ）、ＣＰＵ処理時間などを含む資源２０６、２２４を、ＢＣＴ２０２、２２０に基づいてストリーミング・セッションのために確保する。受信機器２１０は、資源が確保されることを要求したＡＶコンテンツ・ストリーミングを要求２１６する。送信機器２００は、これに応えて、そのＡＶコンテンツを受信機器２１０へストリーミング２１８する。このＡＶコンテンツは、送信機器のＡＶメディア記憶装置２０８から、ＴＣＰ、ＵＤＰ、ＲＴＰ等の伝送プロトコルを用いて、ＡＶストリーム２３０を形成して配信２１８することができる。受信機器２１０は、ＡＶストリーム２２８を受信し、ＡＶメディア記憶装置２２６に格納するか、あるいは他のＡＶデータ処理の目的のために利用する。図２は、送信機器と受信機器との間のＡＶコンテンツ・ストリーミングの全体的な処理の流れを例示している。本発明の中心的な構成要素であるＢＣＴは、現実のＡＶコンテンツ・ストリーミングが行われるより以前に、ＡＶコンテンツ情報２０４に基づいて構築され、受信機器２１０へ送られることを要する。ＡＶコンテンツ２０４の例として、ＡＶカプセル形式のＡＶデータを有するＭＰＥＧ  ＰＳ、ＭＰＥＧ  ＴＳ、Ｈ．２６４等のフォーマット内容に従ったコンテンツが挙げられる。ＡＶストリーム情報が存在しない場合（例えば、ライブ・ストリーミングの場合）には、評価に基づく必須フィールドを有するＢＣＴが構築される。ＢＣＴについては、後の段落にて図５を参照しつつ詳細に説明する。
【００１８】
図３に示すように、送信機器３２２の制御部３２０は、ＢＣＴの構築を指示し、ＢＣＴのストリーミングを制御し、ＡＶコンテンツ・バッファ３０４とストリーミング・バッファ３０６との間のＡＶコンテンツの移送を制御し、ＢＣＴに基づくバッファの配分及び配分解除を含むバッファ管理を行い、全体的又は部分的に失われた特定のＡＶカプセルの再送信の処理要求を行い、ＡＶカプセルの送信状態を報告する処理を行い、二者間制御通信リンク３２６を介し、制御命令を用いて、送信機器３２２と受信機器３３２との間でのポート番号のネゴシエーションを行うタスクを実行する。制御部３２０とストリーミング部３０２との間の制御命令は、制御信号３２４によって伝えられる。送信機器３２２のストリーミング部３０２は、ＡＶコンテンツ・バッファ３０４からコンテンツを読み出し、ストリーミング・バッファ３０６に移送し、その後にパケット化し、送り先である受信機器３３２のストリーミング部３１２のストリーミング・バッファ３１８に、ストリーミングする役割を果たすものである。ＡＶコンテンツ・バッファ３０４からストリーミング・バッファ３０６へのコンテンツの移送は、通信リンク３０８を介して行われる。受信機器３３２のストリーミング部３１２は、パケット化されたＡＶコンテンツを送信機器３２２から受信し、パケット開封し、ストリーミング・バッファ３１８へ送る役割を果たすものである。ストリーミング・バッファ３１８は、その後、自身のコンテンツをＡＶ処理バッファ３１４へ移送する。送信機器３２２と受信機器３３２との間のストリーミングは、分離データ・ストリーミング・リンク３１０を介して行われる。
【００１９】
受信機器３３２の制御部３３０は、ＢＣＴを受信し、ストリーミング・バッファ３１８とＡＶデータ処理バッファ３１４との間のＡＶコンテンツの移送を制御し、ＢＣＴに基づくバッファの配分と配分解除とを含むバッファ管理処理を行い、全体又は一部が失われた特定のＡＶカプセルの再送を要求し、構築され送信されたＡＶカプセルの送信状態を報告し、二者間制御通信リンク３２６を介し、制御命令を用いて、送信機器３２２と受信機器３３２との間でのポート番号のネゴシエーションを行うタスクを実行する。受信機器３３２のストリーミング部３１２は、対応するストリーミング・バッファ３０６からＡＶコンテンツ・ストリームを受信し、データリンク３１６を介してＡＶ処理バッファ３１４へ、バッファ・コンテンツを移送する役割を果たすものである。
【００２０】
送信、受信、中間の全ての機器に対するバッファ容量の全体的な配分は、ストリーミング・バッファ３０６、ＡＶコンテンツ・バッファ３０４、及びＡＶ処理バッファ３１４を含む特定の機器の制御部３２０によって制御される。ストリーミング・バッファ３０６、ＡＶコンテンツ・バッファ３０４、及びＡＶ処理バッファ３１４を含む固定容量のバッファの全容量が、静的又は動的に配分可能である。
【００２１】
全てのバッファ容量が静的に配分される場合には、ストリーミング・バッファ３０６、ＡＶコンテンツ・バッファ３０４、及びＡＶ処理バッファ３１４のバッファ容量は、静的に配分することができ、あるいは３つのバッファ３０４、３０６及び３１４の間で動的に変化することができるが、ストリーミング部３２０によって全配分容量の範囲内に限られる。
【００２２】
全てのバッファ容量が制御部３２０によって動的に配分される場合には、ストリーミング・バッファ３０６、ＡＶコンテンツ・バッファ３０４及びＡＶ処理バッファ３１４のためのバッファ容量は、３つのバッファ３０４、３０６及び３１４の間で動的に変化することができ、かつ特定の全配分容量に制限される。
【００２３】
アップストリーム・バッファ（送信機器３２２と受信機器３３２との間のストリーム接続部）と、ダウンストリーム・バッファ（受信機器３３２と送信機器３２２との間のストリーム接続部）とは、同じバッファのプール又は異なるバッファのプールによってもたらされる。アップストリーム用のストリーム部は、ダウンストリーム用のストリーム部と、同一のバッファのプールを共有しても良いし、共有しなくても良い。
【００２４】
図４に示すように、記憶媒体２０４のＡＶコンテンツは、移送されて、送信機器４４６のＡＶコンテンツ・バッファ４０２に格納される。その際に、異なるバッファ・ブロック４０６に、１、２、．．、Ｎの順に連続して格納される。それによりＡＶコンテンツは、ストリーミング・バッファ４２４がＡＶコンテンツ・バッファ４０２にアクセスすることにより、利用することが可能となる。制御部４３６から指示信号４３２を受信すると、ＡＶコンテンツ・バッファ４０２のＡＶコンテンツは、ＢＣＴに基づいてストリーミング・バッファ部４２４内に事前配分されたバッファ位置４３０へ、ＡＶカプセルの形式で移送される。ＡＶカプセル４３０は、制御部４３６からの指示信号４３４とともにＢＣＴに基づいて形成される。ＡＶコンテンツ・バッファ４０６のコンテンツの移送の方向は、最も早く利用可能となっていたバッファから最も遅く利用可能となったバッファ１、２、．．、Ｎ（４０４）の方向であり、これらはＡ１からＡＮ４２６の順序でＡＶカプセル・バッファ４３０へ移送される。この移送は、ＡＶコンテンツ・バッファ４０２とストリーミング・バッファ４２４の間で、データリンク４０８を介して行われる。
【００２５】
ＡＶカプセル４３０は、制御部４３６から送り先である受信機器４４８のストリーミング部４５０内のストリーミング・バッファ４２０への指示４３４が受け取られると、データリンク４２８を介して、送信機器４４６から受信機器４４８へストリーミングされる。送信側のＡＶカプセル４３０は、制御部４３８の指示４４２に基づいて、パケット交換系ネットワークを介して伝送された後に同一となるように、送り先のバッファ部４１８に書き込まれる（制御部４３８の制御の下でＢＣＴに基づいて事前配分される）。送り先のＡＶカプセル４１８は、図４に示すように、昇順４２２に書き込まれる。制御部４３８は、次に、ストリーミング・バッファ４２０からＡＶ処理バッファ４１０への制御信号４４４を介したコンテンツの移送を指示する。バッファ・コンテンツ４１８は、リンク４１６を介して、特定の順序４１４でＡＶ処理バッファ４１０へ移送され、格納される。ＡＶ処理バッファ４１０は、さらなる処理のためにＢＣＴに基づいて事前配分されているＡＶカプセル。バッファ４１２と同一容量である。
【００２６】
ＢＣＴ５０２は、図５に示すように、ストリームＩＤ５０４、ストリーム送信元（ｓｔｒｅａｍ  ｓｏｕｒｃｅ）５０６、ストリーム送信先５０８の各フィールド、及びこれに続くフィールド１、２、．．、Ｎ（各々５１０、５１２、５１４、５１６）のＡＶカプセルを含んでいる。ストリームＩＤ５０４のフィールドには、送信元４４６と送信先４４８の間で伝えられる特定のＡＶコンテンツ・ストリームの情報が含まれている。ストリームＩＤは、送信機器がＡＶコンテンツ・ストリームに一意的に付与したＩＤ（識別符号）である。ストリーム送信元５０６のフィールドには、送信機器４４６の通信ポート番号と、ＩＰアドレス又は送信機器を一意的に特定する何らかのＩＤとが含まれている。ストリーム送信先５０８のフィールドには、受信機器４４８の通信ポート番号と、ＩＰアドレス又は受信機器を一意的に特定する何らかのＩＤとが含まれている。カプセル１、カプセル２、カプセル．．、カプセルＮ（各々５１０、５１２、５１４及び５１６）までのフィールドには、図６に示すように、各ＡＶカプセルに関するカプセルＩＤ情報が含まれている。カプセルＩＤ情報は、ＢＣＴ５０２の一部であり、カプセルＩＤ６０４、カプセル・サイズ６０６、前カプセルＩＤ６０８、次カプセルＩＤ６１０、カプセル長６１２、及びコンテンツ種別（ｃｏｎｔｅｎｔ  ｔｙｐｅ）６１４の各フィールドを含んでいる。最後の２フィールド６１２、６１４は、ＢＣＴ構築の際に含めるか否かは任意である。各ＢＣＴには、それぞれのカプセルＩＤ情報６０２を有する単数あるいは複数で異なるカプセルＩＤ５１０を含めても良い。
【００２７】
カプセルＩＤ６０４のフィールドには、各ＡＶカプセルに一意的なＩＤが含まれており、カプセル・サイズ６０６のフィールドには、特定のＡＶカプセルのデータサイズが、バイト単位で記述されている。前カプセルＩＤ６０８のフィールドには、前カプセルＩＤの情報が含まれており、続いて次カプセルＩＤ６１０のフィールドには、次カプセルＩＤの情報が含まれている。カプセル長６１２のフィールドには、ミリ秒単位で時間が記述されている。最後に、ＡＶカプセル・コンテンツ種別６１４のフィールドには、ＡＶカプセル・コンテンツの種別に関する情報が含まれており、それには、音声、映像、テキスト、画像（ｉｍａｇｅ）等が含まれる。送信機器４４６によって構築された各ＢＣＴは、ＡＶコンテンツがストリームされて関連する受信機器４４８へ送られるより前に、各ストリームについて上述した詳細な情報を有している。
【００２８】
図７を参照しつつ説明すると、ＡＶカプセル７０４は、バイト単位で特定のＡＶカプセル・サイズ７０８を有しており、単一又は複数のＧＯＰ７０２から成っている。特定のＡＶカプセル・サイズを有するＡＶカプセルの形を整えるために、意味のないデータであるパッディング７０６が挿入される場合があっても良い。ＡＶコンテンツ情報が存在しない場合（例えば、ライブ・ストリーミングの場合）には、評価に基づくＢＣＴの必須のフィールドが作成される。この場合には、パッディング７０６のためには、評価されたＡＶカプセル・サイズを得ることを要する。ＡＶカプセルＩＤ７１０は、各ＡＶカプセルを一意的に表示するために、ＡＶカプセルのヘッダとして、任意に挿入される。これは、複数のＡＶカプセルと各ＡＶカプセルの開始／終了とを、区別するための表示ビットとして用いられるものである。これは、応用上の設計に左右される任意のフィールドである。
【００２９】
図８を参照しつつ説明すると、単数又は複数の中間機器８２２が存在する場合には、ＡＶコンテンツは、最終的な送り先である受信機器８３４へストリーミングするより前にＡＶ処理を行うために、送信機器８１０から中間機器へ送信することが必要である。このように本発明は、現行の直接ストリーミング法から拡張することが可能となる。送信機器８１０の制御部８０６は、隣接する中間機器８２２の制御部８３０に、制御通信リンク８２８を介して接続される。同様に、送信機器８１０のストリーミング・バッファ８０８は、データ・ストリーム・リンク８１２を介して中間機器８２２内のピアリング（ｐｅｅｒｉｎｇ；相手側）・ストリーム・バッファ８２４に接続される。中間機器８２２の制御部８３０は、ストリーミング部８１８との通信を、制御通信リンク８４０によって直接に制御する。ストリーミング・バッファ８２４は、自身のピア８０８からストリームを受信して、その場所に格納し、その後に、当該ストリームをデータ通信リンク８１４を介してＡＶ処理バッファ８１６に移送させる。ストリーミング・バッファ８２４は、一旦、ＡＶカプセルがデータ通信リンク８０２を介して取得可能になれば、ＡＶコンテンツ・バッファ８０４から当該ＡＶカプセルを受信する役割をも果たすものである。ＡＶカプセルは、その後に、ストリーミング接続８２６を介して、近接する受信機器８３４のストリーミング・バッファ８３２に転送される。中間機器の制御部８３０は、制御命令通信を行うために、制御通信リンク８３８を介して受信機器８３４の制御部８３６に接続される。複数の中間機器が介在する場合には、中間機器８２２のストリーミング・バッファ８２４と制御部８３０とは、近接する中間機器に縦列接続されて、ネットワーク連鎖を形成する。
【００３０】
中間機器９４２の詳細を図９に示している。次のＡＶカプセル・ストリーム９４６は、ストリーミング部９３８内のストリーム・バッファ９２０にバッファリングされる。ＡＶカプセル９１８のバッファリングの順序９２２とサイズは、ＢＣＴ情報に基づいて、隣接する機器８１０からの送信元ＡＶカプセルにより維持されている。ＡＶカプセル・バッファＢ１、Ｂ２、．．、ＢＮは、送信器８１０から先に受信しているＢＣＴに基づいて配分される。これらのバッファリング処理は、特定の制御通信９３２を用いて制御部９５０によって制御される。ＡＶカプセル９１８は、制御部の指示９３２及び９３６に基づいて、データ通信リンク９１６を介して、事前配分されたＡＶ処理バッファ９１０へ、図示の方向９１４に移送される。ストリーミング・バッファ９２０とＡＶ処理バッファ９１０との間で、ＡＶカプセル９１８の移送の順序は維持され、送信先ＡＶカプセル・バッファ９１２は送信元ＡＶカプセル・バッファ９１８と同一サイズとなっている。
【００３１】
ストリーミング部９２８のＡＶストリーミング・バッファ９２４とＡＶコンテンツ・バッファ９０２とは、図４に示したストリーミング部４５０と同様の構成である。しかし中間機器９４２では、ＡＶカプセル（Ｄ１、Ｄ２、．．、ＤＮ）９０６は読み出され、データ通信リンク９０８を介してストリーミング・バッファＡＶカプセル９３０へ、符号９０４で示すように異なる方向に移送される。移送されたＡＶカプセル９０６は、図示の順序９２６で、送信先ＡＶカプセル・バッファ９３０であるＥ１、Ｅ２、．．、ＥＮに格納される。バッファ・コンテンツ９０８の移送と、隣接する機器へのストリーミングは、制御部９５０の制御通信９４０及び９３４の制御に基づいて行われる。ＡＶカプセルは、データ通信リンク９４８を介して、次の隣接する装置部へストリーミングされる。ＡＶ処理バッファ９１０内のＡＶカプセル９１２は、カプセル・サイズ６０６に関して、ＡＶコンテンツ・バッファ９０２のＡＶカプセル９０６には対応していない。これは、各所にある中間機器によって、ＡＶカプセル・コンテンツを修正され、それによってサイズが変更される場合があるからである。従って、中間機器の制御部９５０によって構築されたＢＣＴは、受信機器８３４に送信されるものであり、前回の隣接する送信機器８１０の制御部８０６から受信したＢＣＴと比較して、異なったものとなる。このようにＢＣＴは、送信機器８１０と中間機器８２２、中間機器８２２と別の中間機器、中間機器８２２と受信機器８３４など、互いに接続されている機器の間で、異なったものとなり得る。ＢＣＴは、ＡＶコンテンツ・ストリーミングについてのアップストリームおよびダウンストリームの接続の間でも、異なったものとなり得る。ストリーム８１２及び８２６は、各ストリーム８１２及び８２６について異なるＢＣＴを有する単一の送信、中間及び受信機器による上流方向のＡＶコンテンツのストリーミングの例に該当する。
【００３２】
ＢＣＴに基づく資源配分と、リアルタイム・マルチメディア／ＡＶストリーミング工程の概略を図１１に示している。送信機器は、最初に制御部の信号を通じて、受信機器から送られる特定のＡＶストリーミングの要求を受信する（１１０２）。送信機器は、その場所にある制御部に従って、要求されたＡＶストリーミングのためのＢＣＴを、ＡＶストリーム情報を用いて構築する（１１０４）。ＡＶストリーム情報が存在しない場合（例えば、ライブ・ストリーミングの場合）には、評価に基づくＢＣＴの必須フィールドが作成される。必須フィールドには、ストリームＩＤ５０４、ストリーム送信元５０６、ストリーム送信先５０８、ＡＶカプセルＩＤ５１０、カプセルＩＤ６０４、カプセル・サイズ６０６、前カプセルＩＤ６０８、及び次カプセルＩＤ６１０が含まれる。必要であれば、評価されたＡＶカプセル・サイズにするために、パッディング７０６がなされる。送信機器は、ＢＣＴを受信機器または近接する中間機器にストリーミングする（１１０６）。次に、送信機器は、受信機器または中間機器の制御部からのストリーミング開始要求を待つ（１１０８）。この要求を受信すると、送信機器は、全てのＡＶカプセルについて、受信機器または中間機器へのＡＶコンテンツのストリーミングを開始する（１１１０）。中間機器８２２が、受信機器８３４へＡＶコンテンツのストリーミングを送信する送信機器となる場合には、同様の工程１１０２〜１１１０が適用される。
【００３３】
図１２は、送信機器内の資源配分に関する特定の工程を、詳細に示している。送信機器４４６は、ＡＶカプセル・バッファ４３０、４０６又はその他の資源を、送信機器４４６で生成されたＢＣＴに基づいて配分する（１２０２）。次に、送信機器は、ＡＶコンテンツをＡＶコンテンツ・バッファ４０２から読み出す（１２０４）。ＡＶコンテンツは、ＢＣＴに基づいて特定の順序でＡＶカプセル・バッファ４３０に書き込まれる（１２０６）。要求された全てのＡＶカプセルが、パケット化伝送プロトコルに従って、近接するストリーミング部にストリーミングされる（１２０８）。受信機器から要求があれば、送信機器は、ＡＶカプセルの一部または全部を再送する（１２１０）。中間機器８２２が、受信機器８３４へＡＶコンテンツのストリーミングを送信する送信機器となる場合には、同様の工程１２０２〜１２１０が適用される。
【００３４】
一方、受信機器は、図１３に示すように、送信機器によるストリーミングの開始を要求するのに先だって、受信したＢＣＴに基づいて、バッファ４１２、４１８を配分する（１３０２）。次に、受信機器は、ＡＶストリーミングを要求し、ストリーミングされたＡＶカプセルを受信する（１３０４）。受信したＡＶカプセルは、ＢＣＴ情報に基づいて構築される（１３０６）。ＡＶカプセルの一部ないし全部が失われた場合には、受信機器は、ＢＣＴ情報に基づいて再送を要求する（１３０８）。この工程の後に、ストリーミング・バッファ４２０においてＡＶカプセルが生成され（１３１０）、その後に、ＡＶカプセル４１８がＡＶ処理バッファ４１２へ移送される（１３１２）。ＡＶカプセルの移送は、制御部４３８によって制御され、それは、バッファを有効に利用するための連続的な手順によって為される。
【００３５】
本発明には、図１０に示すように、シームレスＡＶサービスの提供と、送信機器１１０２と２つの受信機器１００８及び１０２８との間でのセッションの共有と、を容易なものとするためのＢＣＴの利用も含まれている。図３と同様に、送信機器１００２及び受信機器１００８、１０２８は、それぞれストリーミング部１００４、１０１０、１０２２、制御部１００６、１０１８、１０２６、及び各ＢＣＴ１０３４、１０３６、１０３８を有している。各制御部１００６、１０１８、１０２６は、制御通信リンク１０１６、１０１２および１０２４を介して、ストリーミング部を制御する。機器間のストリーミング１０１４と制御通信リンク１０２０とは、送信機器１００２及び受信機器１００８の間で、現在、有効となっている。図１０では、サービス提供とセッション共有のための機器間の新たなストリーミング１０３０と制御通信リンク１０３２とを、点線１０３０及び１０３２で示している。
【００３６】
図１４は、第１受信機器１００８から第２受信機器１０２８へセッションの移譲に要する工程を、詳細に示している。ＡＶストリーミングは、ストリーミング・リンク１０１４を介して、送信機器１００２と第１受信機器１００８との間で、既に行われつつある（１４０２）。次に、現在の第１受信機器１００８は、制御リンク１０２０を介して送信機器１００２に、現在のセッションを中止したい旨の意思を通知する（１４０４）。この要求は、既存の信頼性あるプロトコル通信を用いて伝えることができる。要求を知得することにより、送信機器は、適当な機器発見用プロトコルを用いて、第１受信機器１００８の代わりとなる適切な第２受信機器１０２８を見出す。第２受信機器が確認されると、新たなストリーム１０３０及び制御１０３２が確立され、送信機器１００２からの同一のＢＣＴが、第２受信機器１０２８へストリーミングされる。第１受信機器１００８と第２受信機器１０２８とは、双方ともに、同一に複製されたＢＣＴを有している（１４０６）。これに続いて、それぞれの場所にあるＢＣＴから（移譲のタイミングとして）正確なＡＶカプセルＩＤのネゴシエーションが行われる。このＡＶカプセルＩＤは、第１受信機器と第２受信機器との間でなされるセッションの移譲点として用いることができる。このネゴシエーションは、既存の通信又はネゴシエーション用のプロトコルを用いて行うことができる（１４０８）。ネゴシエーションの間に、送信機器１００２は、移譲の待ち時間を隠蔽するために、後の方のＡＶカプセルＩＤが選択されることを保証する必要がある。この待ち時間には、ネットワーク、バッファリング等の遅延時間が含まれる。この判断は、送信機器の制御部１００６によってなされる。
【００３７】
移譲のための正確なＡＶカプセルＩＤについて合意と確認とが成立すると、双方の受信機器は、ＢＣＴを参照することにより、ＡＶカプセルＩＤの詳細について、通知を受ける（１４１０）。送信機器は、移譲の待ち時間を隠蔽するために、早い時期のＡＶカプセルＩＤについて、受信機器へのＡＶカプセルのストリーミングを開始する（１４１２）。この時、双方の受信機器は、ストリーミング・リンク１０１４及び１０３０を介して、同一のＡＶカプセルを受信することとなる。第２受信機器１０２８は、ＡＶカプセルの受信を開始し、合意されている通りに正確なＡＶカプセルＩＤまたはそれ以前について、カプセルの処理を行う（１４１４）。正確なＡＶカプセルＩＤの検出は、ＡＶカプセルＩＤ７１０のフィールドを用いることによって行うことができる。この処理には、再生、ＡＶ変換、ＡＶ再構成などが含まれる。次に、送信機器１００２は、合意された正確なＡＶカプセルＩＤまたはそれ以後から開始されたＡＶカプセルの第１受信機器１００８への送信を停止する（１４１６）。これにより、セッションの移譲が行われ、このとき、双方の受信機器による処理活動は、合意された正確なＡＶカプセルＩＤによって同期が取られている。最後に、第１受信機器１００８は、合意された正確なＡＶカプセルＩＤ以後の最も早いＡＶカプセルＩＤにおいて、ストリームと制御との双方のリンク１０１４、１０２０を閉じることにより、処理を停止する（１４１８）。中間機器８２２が、受信機器１００８及び１０２８へＡＶコンテンツのストリーミングを送信する送信機器となる場合には、同様の工程１４０２〜１４１８が、中間機器に適用される。
【００３８】
ＢＣＴの別の利用法として、送信機器１００２からの現在のストリームのセッションを、別の受信機器である第２受信機器１０２８と共有するための使用がある。図１０は、後から参加した第２受信機器１０２８を示しており、この受信機器は、ＡＶストリーミング１０３０と制御１０３２の通信セッションを、ＡＶストリーミング１０１４と制御１０２０の通信セッションを継続中の第１受信機器と共有する。セッションの移譲とセッションの共有との間の相違は以下の通りである。セッションの移譲では、移譲が期待通りに行われると、送信機器１００２と第１受信機器１００８との間で、コネクション１０１４及び１０２０が切断される。送信機器１００２と第２受信機器１０２８との間で移譲が期待通りに行われると、新たなコネクション１０３０及び１０３２が有効となる。これに対して、セッション共有では、コネクション１０１４及び１０２０と、コネクション１０３０及び１０３２との双方が同時に有効となり、それにより、送信機器１００２と、第１受信機器１００８及び第２受信機器１０２８との間で、ＡＶコンテンツ・ストリーミングが行われる。
【００３９】
図１５は、ＢＣＴを用いてセッション共有を達成するための詳細な工程を示している。ＡＶストリーミングは、ストリーミング・リンク１０１４を介して、送信機器１００２と第１受信機器１００８との間で、既に存在するＢＣＴに基づいてストリーミング・リンク１０１４を介して、既に行われつつある（１５０２）。第２受信機器１０２８は、送信機器１００２に、既に形成されているＡＶコンテンツ・ストリーミング・セッション１４１４を制御通信セッション１０２０とともに、共有したい旨の意思を通知する（１５０４）。既存の発見用プロトコルは、継続中のストリーミング及び制御の通信セッションについて、サービス発見機能を果たすことが可能である。要求を受信すると、送信機器は、自身のＢＣＴ１０３４を、第２受信機器１０２８へ送信する（１５０６）。次に、送信機器は、第２受信機器１０２８とセッション共有を開始するのに用いられる正確なＡＶカプセルＩＤについて、双方の受信機器１００８及び１０２８とネゴシエーションをする（１５０８）。一旦、正確なＡＶカプセルＩＤが確認されると、ＡＶカプセルＩＤ情報が、双方の受信機器に伝えられる（１５１０）。図１４と同様に、これらの機器により、セッション共有の待ち時間を隠蔽するために、ＢＣＴに基づいて、より早いＡＶカプセルＩＤが選択される。送信機器は、合意がなされたＡＶカプセルＩＤよりも早く、第２受信機器との間で、ストリーミングと制御の通信リンク１０３０及び１０３２の確立を開始する（１５１２）。合意がなされたＡＶカプセルＩＤが、ＡＶ処理バッファに検知されると直ちに、第２受信機器１０２８は、その処理を開始する（１５１４）。この検知は、ＡＶカプセルＩＤ７１０を用いることによって行うことが可能である。これにより、第２受信機器による第１受信機器とのセッション共有が完了する。中間機器８２２が、受信機器１００８及び１０２８へＡＶコンテンツのストリーミングを送信する送信機器となる場合には、同様の工程１５０２〜１５１４が、中間機器に適用される。
【００４０】
図１６は、セッション移譲とセッション共有との双方の場合について、送信機器１６０２と第１受信機器１６０４及び第２受信機器１６０６との間で行われる制御通信による通知工程を例示している。通知１６１０、１６１４、１６２８及び１６３０が、セッション移譲の場合のみ存在し、通知１６１２がセッション共有の場合のみ存在することをのぞいて、残りの制御通知１６０８、１６１６〜１６２６は、順を追った制御通信工程において、セッション移譲とセッション共有との双方に適用可能である。これらの制御通知は、ＲＴＣＰ、ＵＤＰ、ＴＣＰ、ＳＩＰ等のような既存の通信プロトコルを用いて生成可能である。
【００４１】
セッション移譲について述べると、最初に送信機器１６０２が、有効な制御及びストリーミングの通信セッション１６０８を、第１受信機器１６０４との間で形成している。次に、第１受信機器１６０４は、停止通知１６０８を送信することにより、送信機器１６０２に、現在のサービス・セッションを終了したい旨の意思を通知する。送信機器１６０２は、これに応えて、探索通知１６１４を用いて、同一のサービスを受け得る代わりの機器を探索する。第２受信機器１６０６は、その代わりの機器となり得る。一旦、第２受信機器１６０６が見出されると、制御通信セッション１６１６が、送信機器１６０２と第２受信機器１６０６との間で確立される。次に、送信機器１６０２は、ＢＣＴを第２受信機器１６０６へ送信する（１６１８）。共通に受け入れ可能なＡＶカプセルＩＤについてのネゴシエーション通知１６２０が、全３つの機器１６０２、１６０４及び１６０６によってネゴシエーションされる。特定のＡＶカプセルＩＤについての確認通知１６２２が、送信機器１６０２によって双方の受信機器１６０４及び１６０６を相手として行われる。これに続いて、ストリーム通信セッション１６２４が、送信機器１６０２と第２受信機器１６０６との間に確立され、さらに続いて、ＡＶストリーミングステップ１６２６が実行される。送信機器１６０２は、その後、第１受信機器１６０４へのＡＶコンテンツのストリーミングを停止し（１６２８）、第２受信機器による停止確認要求１６３０を承認する（１６３０）。
【００４２】
セッション共有については、第１受信機器１６０４による停止要求通知１６１０の代わりに、共有要求通知１６１２が、第２受信機器１６０６によって送信機器１６０２に送信される。その後の３つの制御通知１６１４、１６２８及び１６３０は、セッション共有では求められない。これら２つの相違点を除いた他の全ての制御通信については、セッション移譲と同じである。中間機器が存在する場合には、同一の制御通知の手順が、送信機器１６０２とそれに直接つながる中間機器との間に適用可能であり、同一の通知が、直接つながる中間機器と受信機器１６０４及び１６０６との間においても交換される。
【００４３】
ＢＣＴ内のカプセル・サイズ６０６、カプセル長６１２及びコンテンツ種別６１４を知得することにより、各所にあるその他の資源を配分することができる。ＢＣＴはＡＶストリーミングが開始されるより前に受信されるので、このことが可能となっている。要求されたＡＶストリーミングというアプリケーションのサービス時間、ＣＰＵ資源、電力使用量、及び記憶容量などの資源を確保可能である。これらの確保状態を中断するには、セッション移譲又はセッション共有の機構を用いた取り扱いが可能である。
【図面の簡単な説明】
【００４４】
【図１】ＡＶコンテンツを保有し、かつ中間機器を介して接続される送信及び受信機器を有する単純な異機種ネットワークを示すブロック図である。
【図２】送信及び受信機器の間で行われるバッファ規約テーブル、ＡＶコンテンツ転送、及び資源確保のシーケンスを示すシーケンス図である。
【図３】２つのストリーミング機器のストリーミング部及び制御部を示すブロック図である。
【図４】２つのストリーミング機器のストリーミング部及び制御部の詳細を示すブロック図である。
【図５】バッファ規約テーブルの内容を示すデータ構造図である。
【図６】ＡＶカプセルＩＤの情報を示すデータ構造図である。
【図７】ＡＶカプセルの一例を示すデータ構造図である。
【図８】中間において別の機器に接続された送信機器及び受信機器のストリーミング部の詳細を示すブロック図である。
【図９】中間機器のストリーミング部及び制御部の詳細を示すブロック図である。
【図１０】送信機器と２つの受信機器との間におけるセッション移譲とセッション共有を行うためのストリーミング及び制御の接続性を例示するブロック図である。
【図１１】ＡＶストリーミングにおいて送信機器が行う概略的な工程を示すフローチャートである。
【図１２】ＡＶコンテンツ・ストリーミングのために、送信機器がバッファ規約テーブルを使用する工程を示すフローチャートである。
【図１３】ＡＶコンテンツ・ストリーミングにおいて、受信機器が行う工程を示すフローチャートである。
【図１４】ストリーミングのセッション移譲のために行われる工程を示すフローチャートである。
【図１５】ストリーミングのセッション共有のために行われる工程を示すフローチャートである。
【図１６】送信機器と受信機器の間で、セッション共有とセッション移譲のためになされる制御通信のシーケンスを示すシーケンス図である。
【図１】
2008306569.tif 000003
【図２】
2008306569.tif 000004
【図３】
2008306569.tif 000005
【図４】
2008306569.tif 000006
【図５】
2008306569.tif 000007
【図６】
2008306569.tif 000008
【図７】
2008306569.tif 000009
【図８】
2008306569.tif 000010
【図９】
2008306569.tif 000011
【図１０】
2008306569.tif 000012
【図１１】
2008306569.tif 000013
【図１２】
2008306569.tif 000014
【図１３】
2008306569.tif 000015
【図１４】
2008306569.tif 000016
【図１５】
2008306569.tif 000017
【図１６】
2008306569.tif 000018
【外国語明細書】
2008306569.tif 000019
2008306569.tif 000020
2008306569.tif 000021
2008306569.tif 000022
2008306569.tif 000023
2008306569.tif 000024
2008306569.tif 000025
2008306569.tif 000026
2008306569.tif 000027
2008306569.tif 000028
2008306569.tif 000029
2008306569.tif 000030
2008306569.tif 000031
2008306569.tif 000032
2008306569.tif 000033
2008306569.tif 000034
2008306569.tif 000035
2008306569.tif 000036
2008306569.tif 000037
2008306569.tif 000038
2008306569.tif 000039
2008306569.tif 000040
2008306569.tif 000041
2008306569.tif 000042
2008306569.tif 000043
2008306569.tif 000044
2008306569.tif 000045
2008306569.tif 000046
2008306569.tif 000047
2008306569.tif 000048
2008306569.tif 000049
2008306569.tif 000050
2008306569.tif 000051
2008306569.tif 000052
2008306569.tif 000053
2008306569.tif 000054
2008306569.tif 000055
2008306569.tif 000056
2008306569.tif 000057
2008306569.tif 000058
2008306569.tif 000059
2008306569.tif 000060
2008306569.tif 000061
2008306569.tif 000062
2008306569.tif 000063
2008306569.tif 000064
2008306569.tif 000065
2008306569.tif 000066
2008306569.tif 000067
2008306569.tif 000068
2008306569.tif 000069
2008306569.tif 000070
2008306569.tif 000071
2008306569.tif 000072