(57)【特許請求の範囲】
【請求項１】
トランスミッタおよびレシーバを含む可変遅延ネットワークにおいて、前記トランスミッタに関連付けられたトランスミッタ・アプリケーションは、マルチメディア・パケットのストリームを、トランスミッタ・リンク・レイヤ・コントローラによって送信し、可変遅延ネットワークを介して、レシーバ・リンク・レイヤ・コントローラによって前記レシーバに関連付けられたレシーバ・アプリケーションへ送信するようにシステム構成され、前記トランスミッタ・リンク・レイヤ・コントローラは前記トランスミッタ・アプリケーションとの可変遅延インターフェースを有し、前記トランスミッタ・リンク・レイヤ・コントローラおよび前記レシーバ・リンク・レイヤ・コントローラは共通ネットワーク・タイムベースに従って同期化されており、前記トランスミッタ・リンク・レイヤ・コントローラが、前記可変遅延インターフェースにもかかわらず前記可変遅延ネットワークを介して一定遅延ネットワークをエミュレートする方法であって、
第１のマルチメディア・パケットを前記トランスミッタ・アプリケーションから受信するステップであって、前記第１のマルチメディア・パケットは、前記第１のマルチメディア・パケットの情報がトランスミッタ・アプリケーション・タイムベースに従って、前記レシーバ・アプリケーションによってレンダリングされるべきである相対的時間を表す第１のトランスミッタ・アプリケーション・タイム・スタンプを含む、受信ステップと、
前記第１のマルチメディア・パケットに、前記第１のマルチメディア・パケットの前記情報が前記共通ネットワーク・タイムベースに従って、前記レシーバ・アプリケーションによってレンダリングされるべきである前記相対的時間を表す第１のネットワーク・タイム・スタンプを含めるステップと、
前記トランスミッタ・アプリケーション・タイムベースの周波数を表すデータを前記トランスミッタ・アプリケーションから受信するステップと、
第２のマルチメディア・パケットを前記トランスミッタ・アプリケーションから受信するステップであって、前記第２のマルチメディア・パケットは、前記第２のマルチメディア・パケットの情報が前記トランスミッタ・アプリケーション・タイムベースに従って、前記レシーバ・アプリケーションによってレンダリングされるべきである前記相対的時間を表す第２のトランスミッタ・アプリケーション・タイム・スタンプを含む、受信ステップと、
前記第２のマルチメディア・パケット内の前記情報が前記共通ネットワーク・タイムベースに従って前記レシーバ・アプリケーションによってレンダリングされるべきである前記相対的時間を表す、第２のネットワーク・タイム・スタンプを計算するステップであって、前記計算は、前記第２のトランスミッタ・アプリケーション・タイム・スタンプと前記第１のトランスミッタ・アプリケーション・タイム・スタンプとの差分に、前記トランスミッタ・アプリケーション・タイムベースの受信された周波数を乗算して、前記第１のネットワーク・タイム・スタンプに加えた合計を生成することを含む、計算ステップと、
前記第２のネットワーク・タイム・スタンプを前記第２のマルチメディア・パケットに含めるステップと、
前記第２のマルチメディア・パケットを前記レシーバ・アプリケーションにディスパッチするステップと
を備えることを特徴とする方法。
【請求項２】
請求項１に記載の方法であって、前記可変遅延ネットワークはＩＥＥＥ１３９４準拠ネットワークであり、前記トランスミッタ・リンク・レイヤ・コントローラはＯＨＣＩリンク・レイヤ・コントローラを含み、前記可変遅延インターフェースはＰＣＩインターフェースを含むことを特徴とする方法。
【請求項３】
請求項１に記載の方法であって、前記第２のネットワーク・タイム・スタンプを前記第２のマルチメディア・パケットに含めるステップは、ＩＥＣ６１８８３−ｘプロトコルに従って実行されることを特徴とする方法。
【請求項４】
トランスミッタおよびレシーバを含む可変遅延ネットワークにおいて、前記トランスミッタに関連付けられたトランスミッタ・アプリケーションは、マルチメディア・パケットのストリームを、トランスミッタ・リンク・レイヤ・コントローラによって送信し、可変遅延ネットワークを介して、レシーバ・リンク・レイヤ・コントローラによって前記レシーバに関連付けられたレシーバ・アプリケーションへ送信するようにシステム構成され、前記トランスミッタ・リンク・レイヤ・コントローラは前記トランスミッタ・アプリケーションとの可変遅延インターフェースを有し、前記トランスミッタ・リンク・レイヤ・コントローラおよび前記レシーバ・リンク・レイヤ・コントローラは共通ネットワーク・タイムベースに従って同期化されており、前記トランスミッタ・リンク・レイヤ・コントローラが、前記可変遅延インターフェースにもかかわらず前記可変遅延ネットワークを介して一定遅延ネットワークをエミュレートする方法を実施するコンピュータ・プログラムであって、前記コンピュータ・プログラムは、１つまたは複数のプロセッサによって実行されたとき、前記トランスミッタ・リンク・レイヤ・コントローラに、
第１のトランスミッタ・アプリケーション・タイム・スタンプを含む第１のマルチメディア・パケットであって、前記第１のトランスミッタ・アプリケーション・タイム・スタンプは、前記第１のマルチメディア・パケット内の情報がトランスミッタ・アプリケーション・タイムベースに従って前記レシーバ・アプリケーションによってレンダリングされるべきである前記相対的時間を表す第１のトランスミッタ・アプリケーション・タイム・スタンプを含む第１のマルチメディア・パケットの前記トランスミッタ・アプリケーションからの前記受信を検出するステップと、
第１のネットワーク・タイム・スタンプであって、前記第１のマルチメディア・パケット内の情報が前記レシーバ・アプリケーションによって前記共通ネットワーク・タイムベースに従ってレンダリングされるべきである前記相対的時間を表す第１のネットワーク・タイム・スタンプを前記第１のマルチメディア・パケットに含めるステップと、
前記トランスミッタ・アプリケーション・タイムベースの周波数を表すデータの前記トランスミッタ・アプリケーションからの受信を検出するステップと、
第２のトランスミッタ・アプリケーション・タイム・スタンプを含む第２のマルチメディア・パケットであって、第２のトランスミッタ・アプリケーション・タイム・スタンプは、前記第２のマルチメディア・パケットにおける前記情報が前記レシーバ・アプリケーションによって前記トランスミッタ・アプリケーション・タイムベースに従ってレンダリングされるべきである前記相対的時間を表す第２のトランスミッタ・アプリケーション・タイム・スタンプを含む第２のマルチメディア・パケットの前記トランスミッタ・アプリケーションからの受信を検出するステップと、
前記第２のマルチメディア・パケット内の情報が前記レシーバ・アプリケーションによって前記共通ネットワーク・タイムベースに従ってレンダリングされるべきである前記相対的時間を表す、第２のネットワーク・タイム・スタンプを計算するステップであって、前記計算は、前記計算は、前記第２のトランスミッタ・アプリケーション・タイム・スタンプと前記第１のトランスミッタ・アプリケーション・タイム・スタンプとの差分に、前記トランスミッタ・アプリケーション・タイムベースの受信された周波数を乗算して、前記第１のネットワーク・タイム・スタンプに加えた合計を生成することを含む、計算ステップと、
前記第２のネットワーク・タイム・スタンプを前記第２のマルチメディア・パケットに含めるステップと、
前記第２のマルチメディア・パケットを前記レシーバ・アプリケーションにディスパッチさせるステップと
を実行させることを特徴とするコンピュータ・プログラム。
【請求項５】
請求項４に記載のコンピュータ・プログラムであって、前記可変遅延ネットワークがＩＥＥＥ１３９４準拠ネットワークであり、前記トランスミッタ・リンク・レイヤ・コントローラがＯＨＣＩリンク・レイヤ・コントローラを備え、前記可変遅延インターフェースがＰＣＩインターフェースを含むことを特徴とするコンピュータ・プログラム。
【請求項６】
請求項４に記載のコンピュータ・プログラムであって、前記第２のネットワーク・タイム・スタンプを前記第２のマルチメディア・パケットに含めるステップは、前記ＩＥＣ６１８８３−ｘプロトコルに従って実行されることを特徴とするコンピュータ・プログラム。
【請求項７】
請求項４、５または６に記載のコンピュータ・プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワーク通信の分野に関する。具体的には、本発明は、異種ネットワーク（heterogeneous network）を介したマルチメディア情報のリアルタイム通信に関する。
【０００２】
【従来の技術】
マルチメディア情報は、人の五感の１つまたは複数によって、しかし大抵は人の視覚および聴覚の感覚によって効率的に解釈可能である情報を含む。たとえば、ビデオ情報は視覚および聴覚によって解釈される。オーディオ情報は聴覚によって解釈される。ブライユ・ディスプレイ（Braille displays）など、いくつかのユーザー・インターフェースは、触覚による解釈のための情報を提示する。しかし、適切なユーザー・インターフェースの発達により、マルチメディア情報は、味およびにおいの情報も含む可能性がある。
【０００３】
しばしば、マルチメディア情報は時間に敏感であり、情報がいくつかの最小ジッタ耐性内でサンプリングされるものと同じ速度でレンダリングされるべきである。このタイプのマルチメディア・プレゼンテーションはしばしば本明細書で「リアルタイム」と呼ばれる。マルチメディア・データの効率的なリアルタイム配信のために、マルチメディア・ソースとマルチメディア・シンク（sink）の間のネットワークを抽象化し、ネットワークが全体として一定遅延ネットワーク（a constant delay network）としての機能を果たすようにするべきである。
【０００４】
図１は、マルチメディア・データをリアルタイムで配信するための従来のネットワーク１００を例示する。マルチメディア・ソース１０１はマルチメディア・パケット１０４を、一定遅延ネットワーク１０３を介してマルチメディア・シンク１０２へ送信する。もちろん、常に、遅延においてある変動はあるが、これは小さく、どのようなネットワークによってももたらされるものである。しかし、「一定遅延」ネットワークは、ネットワークによってもたらされた遅延変動が、マルチメディア・データのリアルタイム・プレゼンテーションをサポートするために必要とされた最小ジッタ耐性を下回るネットワークである。
【０００５】
図１に例示したように、一定遅延ネットワーク１０３は、いくつかの異なるネットワーク・タイプを含めることができ、これらは異なる規格に従うものである。それにもかかわらず、リアルタイム・マルチメディア・データ配信をサポートするために、各コンポーネント・ネットワークは、全体としてそれぞれのネットワークを一定遅延ネットワークへ抽象化することをサポートしなければならない。一般に、融合された一定遅延ネットワークへのこの種類の抽象化をサポートするネットワークには、２つの分類がある。
【０００６】
このような分類の１つは、一定遅延ネットワークである。したがって、たとえば、図１の一定遅延ネットワーク１０３は、コンポーネント一定遅延ネットワーク１０５を含む。一定遅延ネットワークはマルチメディア・データをネットワーク上のある点からある受信速度で受信し、このマルチメディア・データをネットワーク上の別の点へ同じ速度で配信し、相対的に一定遅延があるようにする。第２のこのような分類は可変遅延ネットワーク（variable delay network）であり、これは時間についての共通概念（common notion of time）を有する。
【０００７】
このような可変遅延ネットワークにおいても、ネットワークが時間についての共通概念をネットワークに渡ってサポートする場合、一定遅延ネットワークをエミュレートすることが可能である。たとえば、ＩＥＥＥ１３９４シリアル・バスは本質的に一定遅延ネットワークではない。しかし、ＩＥＥＥ１３９４シリアル・バスは時間についての共通概念をサポートする。ＩＥＣ６１８８３−ｘ規格は、ＩＥＥＥ１３９４シリアル・バスにおいて存在する時間についての共通概念を使用して、ＩＥＥＥ１３９４シリアル・バスを、ＭＰＥＧ−２規格下で必要とされるジッタ許容内へまでの一定遅延ネットワークにエミュレートさせる。
【０００８】
図１を参照すると、一定遅延ネットワーク１０３は可変遅延ネットワーク１０６も含むことができる。一連の１つまたは複数の連続可変遅延ネットワークが、マルチメディア・ソース１０１とマルチメディア・シンク１０２の間に介在させられた場合、一連の可変遅延ネットワークは、可変遅延ネットワークの文字列が時間についての共通概念または計算（common notion or reckoning of time）を共有する場合、一定遅延ネットワークをエミュレートすることができる。
【０００９】
したがって、従来の方法は、一定遅延ネットワークおよび時間についての共通概念を有する可変遅延ネットワークを含むネットワークを介した、マルチメディア・データのリアルタイム配信を可能にする。しかし、第３の分類のネットワークがあり、これは、従来の規格下で融合された一定遅延ネットワークにおけるコンポーネント・ネットワークとなるものとは互換性を有していないものである。この第３の分類は、時間についての共通概念を有していない可変遅延ネットワークである。
【００１０】
従来の技術の下で、マルチメディア・データのリアルタイム通信は、トラバース（traverse）されなければならない１つまたは複数のネットワークが、時間の共通概念を有していない可変遅延ネットワークであった場合、可能ではない。したがって、従来のインフラストラクチャのうち、異種ネットワークを介してリアルタイムでマルチメディアをシームレスに通信するためのものはなく、これは、これらの異種ネットワークが、ネットワークに渡って共通の時間参照（common time reference）を含んでいない１つまたは複数の可変遅延ネットワークを含む可能性があるからである。マルチメディア・ソースとマルチメディア・シンクの間に介在するネットワークの異種特性にかかわらず、このようなインフラストラクチャを秩序立てる（establishing such an infrastructure）ことにより、マルチメディア・コンテンツへのよりよいアクセスが可能となる。
【００１１】
【発明が解決しようとする課題】
本発明は、一定遅延ネットワーク、時間の共通計算（common reckoning of time）を有する可変遅延ネットワーク、および時間の共通計算を有していない可変遅延ネットワークを含めることができる異種ネットワークを介したマルチメディア・データのリアルタイム通信に及ぶ。現在、マルチメディア・データのリアルタイム通信は、特定のネットワークを介してポイント・トゥ・ポイントで実施することができる。しかし、従来の方法のうち、このようなデータをリアルタイムで、時間の共通計算を有していない可変遅延ネットワークを含む異種ネットワークを介して通信する方法は存在しない。
【００１２】
【課題を解決するための手段】
異種ネットワークにおいて、時間の共通計算のないいくつかの可変遅延ネットワークがあった場合、これらの各ネットワークにおいて時間の共通計算が確立される。この場合、各可変遅延ネットワークにおいて存在する特定の共通時間計算を使用して、それらの可変遅延ネットワークが、１つまたは複数の一定遅延ネットワークとしてエミュレートされる。要するに、本発明の原理は、異種ネットワークを介したマルチメディア情報のリアルタイム通信を可能にする。そのように行うことによって、ユーザーは、各自の場所（location）如何にかかわらず、より柔軟にマルチメディア・データにリアルタイムで、アクセスすることができる。
【００１３】
本発明の一態様では、トランスミッタが可変遅延インターフェースを介してリンク・レイヤ・デバイス・ドライバとインターフェースをとるトランスミッタ・アプリケーションを含むという事実にもかかわらず、一定遅延ネットワークが可変遅延ネットワークを介してエミュレートされる。トランスミッタ・アプリケーションは、可変遅延ネットワークを介した送信のためのマルチメディア・パケットを提供する。加えて、トランスミッタ・アプリケーションは、マルチメディア・パケットにタイム・スタンプを提供し、これはトランスミッタ・アプリケーションの計算による時間を表す。トランスミッタ・リンク・レイヤ・デバイスがマルチメディア・パケットを受信したとき、それは、ネットワーク・タイムベースに従った新しいタイム・スタンプであり、トランスミッタ・アプリケーションによって提供されたタイム・スタンプに基づく新しいタイム・スタンプを計算する。次いで、レシーバ・リンク・レイヤ・コントローラがこの新しいタイム・スタンプを使用して、パケット内の対応する情報のレンダリング時間を評価する。
【００１４】
本発明の別の態様は、本質的にタイムベースを有していない可変遅延ネットワークを介した通信を許容する。その代わりとして、トランスミッタ・アプリケーションは現在時間をネットワーク上の様々なレシーバ・デバイスへ、ネットワーク上のデバイスを同期化するために周期的に送信する。ここで、トランスミッタは、マルチメディア・パケット内の情報が適切な時間に提示されることを可能にするために、同期化された時間に従うタイム・スタンプを含めている。
【００１５】
本発明の追加の特徴および利点は、以下に続く説明において述べられ、部分的にはこの説明から明らかとなり、あるいは、本発明の実施によって学習することができる。本発明の特徴および利点は、特許請求の範囲において特に示された手段および組み合わせによって実現かつ得ることができる。本発明のこれらおよび他の特徴は、以下の説明および特許請求の範囲から十分に明らかになり、あるいは、以下で述べられるような本発明の実施によって学習することができる。
【００１６】
上で列挙された態様、かつ得られる本発明についての他の利点および特徴に相応しく、上で簡単に記載された本発明のより詳細な説明を、その特定の実施形態を参照することによって示し、これらを付属の図面において例示する。これらの図面が本発明の典型的な実施形態のみを示し、したがってその範囲を限定するものとして見なされるべきでないという理解において、本発明を追加の特異性および詳細と共に、添付の図面の使用を通じて記載し、説明する。
【００１７】
【発明の実施の形態】
本発明は、一定遅延ネットワーク、時間についての共通計算を有する可変遅延ネットワーク、および時間の共通計算を有していない可変遅延ネットワーク、を含めることができる異種ネットワークを介したマルチメディア・データのリアルタイム通信に及ぶ。時間の共通計算のない可変遅延ネットワークがあった場合、時間の共通計算が、これらの各ネットワークにおいて確立される。この場合で、時間の共通計算を使用して、可変遅延ネットワークを１つまたは複数の一定遅延ネットワークとしてエミュレートすることができる。
【００１８】
本発明の実施形態は、専用または汎用処理デバイスまたはコンピュータを含むことができ、これは様々なコンピュータ・ハードウェア・コンポーネントを含み、これらを以下でより詳細に論ずる。実施形態はさらに、ネットワーク環境においてリンクされた多数のコンピュータを含むことができる。従来のテレビの機能を向上させるセットトップ・ボックスは、専用コンピュータの一実施例である。
【００１９】
本発明の範囲内の実施形態は、コンピュータ実行可能命令またはデータ構造を搬送あるいはその上に格納するためのコンピュータ可読媒体も含む。このようなコンピュータ可読媒体を、汎用または専用コンピュータによってアクセスすることができるいかなる使用可能な媒体にすることもできる。例として、それだけに限定されるものではないが、このようなコンピュータ可読媒体は物理記憶媒体を含むことができ、これらはＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたは他の光ディスク記憶装置、磁気ディスク記憶装置または他の磁気記憶デバイス、または、所望のプログラムコード手段をコンピュータ実行可能命令またはデータ構造の形式において搬送あるいは格納するために使用することができ、かつ汎用または専用コンピュータによってアクセスすることができる他の媒体などである。
【００２０】
情報が、ネットワークまたは別の通信接続（ハード・ワイヤード、ワイヤレス、または、ハード・ワイヤードまたはワイヤレスの組み合わせのいずれか）を介してコンピュータに転送あるいは提供されたとき、コンピュータは適切にこの接続をコンピュータ可読媒体と見なす。したがって、このような接続も適宜、コンピュータ可読媒体と称する。上記の組み合わせも、コンピュータ可読媒体の範囲内に含まれるべきである。コンピュータ実行可能命令は、たとえば、汎用コンピュータ、専用コンピュータまたは専用処理デバイスに、ある機能または機能のグループを実行させる命令およびデータを含む。
【００２１】
本発明を一般に、プログラム・モジュールなど、コンピュータ実行可能命令に関連して記載し、これらはセットトップ・ボックスまたは他のコンピュータによって実行される。一般に、プログラム・モジュールには、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれ、これらは特定のタスクを実行するか、あるいは特定の抽象データ・タイプを実施する。特定のデータ構造またはプログラム・モジュールにおいて実施された命令のシーケンスは、本明細書に記載された機能またはステップを実施するための対応する動作の実施例を表す。
【００２２】
図２および対応する考察は、本発明を実施することができる適切な環境の全般的な説明を提供することを意図するものである。この考察では、プログラミングの表示および／または記録のために使用することができるホーム・エンターテインメント・システムとして、リファレンスが用意されている。この説明のため、かつ特許請求の範囲において、「ホーム・エンターテインメント・システム」を、テレビ画面などの表示ユニットにすることができ、これは本明細書で開示されたデータ処理動作およびステップを実行するための処理デバイスに結合され、あるいは、いかなる数の相互接続された家電デバイスを含むこともでき、これらのうち１つは、本明細書で開示されたデータ処理を実行するための処理デバイスを有する。
【００２３】
このような家電デバイスの例には、ビデオ・カセット・レコーダ（「ＶＣＲ」）、ビデオ・ゲーム・システム、ステレオ・システム、データ処理機能を有するテレビまたはモニタ、ケーブル・テレビ・ボックス、デジタル衛星システム受信機（「ＤＳＳ」）、デジタル・ビデオ放送システム（「ＤＶＢ」）、デジタル多用途ディスク・システム（「ＤＶＤ」）、コンパクト・ディスク読み取り専用メモリ・システム（「ＣＤ−ＲＯＭ」）、インターネット端末としての機能を果たすセットトップ・ボックス、および本明細書に記載したようなデータを処理することができる他のいかなるデバイスもが含まれる。さらに、「ホーム・エンターテインメント・システム」という用語は、それが視聴者の家庭に位置するか、ビジネスの場に位置するか、公の場に位置するか、あるいは他のいかなる場所に位置するかにもかかわらず、テレビ視聴または音楽を聴く環境を幅広く記載する用語として理解されるべきである。また、この説明のため、かつ特許請求の範囲において、「プログラミング」という用語は、動画データおよび／またはその関連付けられたサウンド・データの視聴可能および視聴不可能な部分を含む。
【００２４】
一実施形態では、本発明は、従来のテレビ画面または他の表示ユニットを使用して情報を表示し、かつＷｅｂＴＶ（登録商標）セットトップ・ボックスまたは類似のインターネット端末を含むシステムにおいて実施され、これらは、電子メールの作成、送信および受信、Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ（「Ｗｅｂ」）のブラウジング、インターネットの他のセグメントへのアクセス、およびそうでない場合は情報の表示を含むオペレーションを実行するように適合されている。インターネット端末は、標準の電話回線、総合サービス・デジタル通信網（ＩＳＤＮ）回線、ケーブル・テレビ・サービスに関連付けられたケーブル回線などを使用して、インターネットまたは他の広域ネットワークに接続することができる。
【００２５】
図２は、ホーム・エンターテインメント・システム２１０を例示し、これは管理システム２１２、ディスプレイ・デバイス２１４およびオーディオ・デバイス２１６を含む。管理システム２１２をセットトップ・ボックスまたはインターネット端末にすることができ、これは本明細書で開示されたオペレーションを実行するように適合されている。管理システム２１２は、表示デバイス２１４と共に一体的に、あるいはこれから分離して配置させることができ、これを高品位テレビ・ディスプレイ、標準のテレビ・ディスプレイ、フラットパネル・ディスプレイ、投影デバイス、直接神経刺激を含むインターフェース、コンピュータ・モニタ、または、視聴可能なビデオ・イメージ・データを表示することができる他のいかなるデバイスにもすることができる。オーディオ・システム２１６を、スピーカ、ステレオ・システム、またはサウンド・データを発することができるいかなるデバイスにすることもでき、同様に、表示デバイス２１４と共に一体的に、あるいはこれから分離して配置させることができる。
【００２６】
管理システム２１２は信号入力部２１８を含み、これがプログラミングを信号ソース２２０から受信する。プログラミングは信号ソース２２０から信号入力部２１８へ、プログラミング入力ライン２２２を介して送信され、これを光接続、地上アンテナ・システム、衛星システム、または、プログラミングをホーム管理システム２１２へ送信することができるいかなるデバイスまたはシステムにもすることができる。
【００２７】
信号ソース２２０を、シングル・チャネル信号ソースまたはマルチ・チャネル信号ソースのいずれかにすることができる。シングル・チャネル信号ソースはプログラミングを、ビデオ・カセット、コンパクト・ディスクなど、記録された媒体から提供する。シングル・チャネル信号ソースの例には、ＶＣＲ、ＤＶＤなどが含まれる。あるいはまた、マルチ・チャネル信号ソースには、衛星受信機、ケーブルまたは光接続、地上アンテナなどによって受信することができる信号を送信することができる、いかなるシステムまたはデバイスもが含まれる。マルチ・チャネル信号ソースの例には、ＤＳＳ／ＤＶＢ、ケーブル・ボックス、地域放送プログラミング（すなわち、ＵＨＦまたはＶＨＦを使用して放送されたプログラミング）などが含まれる。
【００２８】
図２は、ホーム・エンターテインメント・システム２１０を、単一のプログラミング入力ライン２２２および単一の信号ソース２２０を有するものとして例示するが、複数の信号ソースからのプログラミングを伝える複数のプログラミング入力ラインが存在することもできる。このような実施形態では、ホーム・エンターテインメント・システムがプログラミングを１つの信号ソースから、あるいは複数の信号ソースから一度に受信することができる。
【００２９】
管理システム２１２はユーザー入力インターフェース２２４も含み、これは入力を、リモコン、外部の専用または汎用処理デバイスまたはコンピュータ、キー・ボード、マイクロフォン、マウス、または管理システム２１２に対して電子的命令を生成することができる他のデバイスなどのような、入力デバイス２２６から入力を受信する。入力デバイス２２６は、このようなコントロールが使用可能となるように、管理システム２１２へ入力リンク２２８を介して通信的に結合されている。入力デバイス２２６は電子的命令を、事前にプログラムされたデータに応答して、あるいは視聴者が入力デバイス２２６上のボタンを押すことに応答して、入力リンク２２８を介して生成する。入力デバイス２２６は管理システム２１２内のＷｅｂブラウザ・ソフトウェアもコントロールすることができ、これは、管理システム２１２が、本明細書で開示されたオペレーションを実行するように適合されているセットトップ・ボックスまたはインターネット端末であるときである。たとえば、入力デバイス２２６を、ホーム・エンターテインメント・システム２１０の電源をオンにするように、かつ管理システム２１２をチャンネルに同調させるようにプログラムすることができる。
【００３０】
図２は信号レコーダ２３０を例示し、これはビデオおよび／またはオーディオ・データを受信し、かつデータを記録媒体上に記録することができる。ビデオ信号が表示デバイス２１４および／または信号レコーダ２３０へ、ビデオ・イメージ・リンク２３２ａおよび２３２ｂによってそれぞれ送信され、この例には、無線周波数（「ＲＦ」）リンク、Ｓ−ｖｉｄｅｏリンク、複合リンク、または他のビデオ・イメージ・リンクに相当する形式が含まれる。同様に、オーディオ・リンク２３４ａおよび２３４ｂはオーディオ・データを管理システム２１２からオーディオ・システム２１６および／または信号レコーダ２３０へ送信する。
【００３１】
管理システム２１２のオペレーションは、中央処理装置（「ＣＰＵ」）によってコントロールされ、これは処理装置２３６として例示され、特定用途向け集積回路（「ＡＳＩＣ」）２３８へ、システム・バス２４０を介して結合され、ソフトウェアおよび／またはハード・ワイヤード論理回路において実施されたコンピュータ実行可能命令を使用する。処理装置２３６およびＡＳＩＣ２３８はシステム・バス２４０を介して様々な他のシステム・コンポーネントにも結合され、これらにはシステム・メモリ２４２、大容量記憶インターフェース２４４、ユーザー・インターフェース２２４および信号入力部２１８が含まれる。処理装置２３６は、本発明の特徴を含む管理システム２１２の特徴を実施するように設計されたソフトウェアを実行することができる。
【００３２】
ＡＳＩＣ２３８は、管理システム２１２のある機能を実施するために使用される回路を含む。処理装置２３６のオペレーションに必要な、かつＡＳＩＣ２３８のオペレーションに必要な命令、データ、および他のプログラム・モジュールを、大容量記憶デバイス２５０および／またはシステム・メモリ２４２に格納することができ、これは読み取り専用メモリ（「ＲＯＭ」）２４６およびランダム・アクセス・メモリ（「ＲＡＭ」）２４８を含む。システム・メモリ２４２はシステム・バス２４０に結合され、大容量記憶デバイス２５０は大容量記憶インターフェース２４４に結合され、これもシステム・バス２４０に結合される。したがって、ＲＯＭ２４６、ＲＡＭ２４８および大容量記憶デバイス２５０は通信的にＡＳＩＣ２３８に結合されて、ＡＳＩＣ２３８によって可読となるようにされ、データをＡＳＩＣ２３８からＲＡＭ２４８および大容量記憶デバイス２５０へ書き込むことができるようにされる。大容量記憶デバイス２５０を磁気ハード・ディスク２５２にすることができるが、上で参照した他のコンピュータ可読媒体のいずれにすることもできる。
【００３３】
アプリケーション・プログラム２５４、他のプログラム・モジュール２５６および電子プログラミング・ガイド（「ＥＰＧ」）２５８を含む、番組の放送時間およびチャンネルを指定するいかなる所望のコンピュータ可読命令またはデータも、大容量記憶デバイス２５０に格納することができる。
【００３４】
大容量記憶デバイス２５０は、ビデオ・データ２５３を記録するために使用することもでき、この場合、管理システム２１２がデジタル・ビデオ・レコーダの機能を実行する。デジタル・ビデオ・データは、ホーム・エンターテインメント・システム２１０によって様々なソースから受信することができ、これには信号ソース２２０、リモート・コンピュータ２６０、ビデオ・ゲーム２６８、入力デバイス２２６およびインターネットが含まれる。
【００３５】
ＥＰＧデータを、様々な方法において得ることができる。たとえば、ＥＰＧデータを管理システム２１２へ、サーバなどのリモート・コンピュータ２６０によって、あるいはインターネット上のデバイスから供給し、大容量記憶デバイス２５０上に格納することができる。ＥＰＧデータを周期的に供給して、継続的に現在のプログラミングのスケジュールを管理システム２１２で維持することができる。別法として、ＥＰＧをホーム・エンターテインメント・システム２１０へ、標準の電話回線を介したダイレクト・ダイヤル通信を使用することによって、あるいはケーブル・テレビ・インフラストラクチャ、衛星ネットワーク、無線放送または、先に述べたものを含む他の使用可能な媒体を介したデータ伝送を使用することによって配信することができる。
【００３６】
管理システム２１２がインターネットに関連付けられている実施形態では、管理システム２１２がリモート・コンピュータ２６０と、広域ネットワーク（「ＷＡＮ」）２６２を介して通信することができ、これは、シリアル・ポート・インターフェース２６４をシステム・バス２４０とモデム２６６の間に介在させること、ワイヤレス・リンクを使用すること、または管理システム２１２の内外に存在し得るＷＡＮを介して通信を確立するための他の手段を含む、様々な技術を使用して行われる。管理システム２１２は、標準の電話回線を介したダイレクト・ダイヤル通信によって、あるいは他の使用可能な通信媒体を使用することによって、インターネットを介して情報を伝送することもできる。
【００３７】
シリアル・ポート・インターフェース２６４を利用して、モデム２６６を、ＷＡＮを介した通信のために接続することができるが、シリアル・ポート・インターフェースを利用して、ビデオ・ゲーム２６８などの他の家電デバイス、および／または、キー・ボード（図示せず）またはジョイスティック（図示せず）などの様々な入力デバイスを管理システム２１２に接続することもできる。
【００３８】
このとき信号入力部２１８を参照すると、プログラミング入力ライン２２２上の信号が多数のチャンネルを含んでいる場合、信号入力部２１８に含まれたチューナ２７０が、信号中の選択されたチャンネルに同調する。多数のチューナ２７０を使用して、機能が強化された視聴機能を提供することができ、これはピクチャ・イン・ピクチャ、別のチャンネルを視聴中にあるチャンネルを記録すること、および複数のチャンネルを同時に記録することなどである。ＡＳＩＣ２３８およびチューナ２７０が異なるフォーマットを使用する場合、信号復号器（signal decoder）２７２は、ビデオ・データをアナログ・フォーマットからデジタル・フォーマットへ、デジタル・フォーマットからアナログ・フォーマットへ変換することができ、あるいは様々なデジタル・フォーマットの間で変換することができる。ビデオ復号器２７２はまたビデオ・データを、圧縮されたビデオ・フォーマット（たとえば、ＭＰＥＧ）から復号することもできる。管理システム２１２が多数のチューナ２７０を含む実施形態では、管理システム２１２は多数の信号復号器２７２を含み、本明細書で開示されたオペレーションを実行することもできる。
【００３９】
管理システム２１２はビデオ出力２７４も含むことができ、これは、ビデオ・データを、ビデオ・リンク２３２ａおよび２３２ｂを介して提供するとき、必要であればアナログおよびデジタル・フォーマットの間で切り換えるビデオ変換器を含むことができる。類似の方法で、オーディオ出力２７６はオーディオ変換器を含んで、オーディオ・リンク２３４ａおよび２３４ｂを介してアナログおよびデジタル・フォーマットの間で必要な切り換えを提供することができる。
【００４０】
図２および上の対応する考察は、本発明を実施することができる適切な環境の全般的な説明を提供するが、本明細書で開示された本発明の特徴を、様々な異なるシステム構成に関連して実施できることを理解されたい。
【００４１】
図３はネットワーク３００を例示し、ここではマルチメディア・ソース３０１が複数のマルチメディア・パケット３０４を、異種ネットワーク３０３を介してマルチメディア・シンク３０２に伝達する。図２を参照して上述した広域ネットワーク２６２は異種ネットワークの一実施例であり、マルチメディア・ソース３０１がリモート・コンピュータ２６０であり、マルチメディア・シンク３０２がホーム・エンターテインメント・システム２１０である。しかし、マルチメディア・シンク３０２を携帯情報端末（personal digital assistant）、ラップトップ・コンピュータ、デスクトップ・コンピュータ、電話、または、マルチメディア・パケットを受信し、かつリアルタイムで、関連付けられたマルチメディア情報をレンダリングすることができる他のいかなるデバイスとすることができる。
【００４２】
異種ネットワーク３０３は、以下のような３つの分類のネットワークを含めることができる。
１）一定遅延ネットワーク（たとえば、一定遅延ネットワーク３１１）、
２）共通タイムベースを有する可変遅延ネットワーク（たとえば、共通タイムベース３２２を有する可変遅延ネットワーク３１２）、および
３）共通タイムベースを有していない可変遅延ネットワーク（たとえば、共通タイムベースを有していない可変遅延ネットワーク３１３）。
【００４３】
異種ネットワーク３０３を、ネットワークの各分類について１つのみを有するものとして例示するが、本発明の原理を、ネットワークの各分類のうちゼロまたは１つまたは複数を有する異種ネットワークに適用することができる。異種ネットワークは、マルチメディア・パケット３０４が順番に、一定遅延ネットワーク、共通タイムベースを有する可変遅延ネットワーク、および共通タイムベースを有していない可変遅延ネットワークをトラバースするように例示される。この構成は例示のためにのみ提供される。本発明の原理は、マルチメディア・パケットのルーティング・パス内の各ネットワークの特定の順序にかかわらず、適用される。
【００４４】
マルチメディア・パケットをあるネットワークから次のネットワークへ移行（transition）するため、ゲートウェイが異種ネットワークにおける各ネットワークの間に設けられる。たとえば、ゲートウェイ３３１はマルチメディア・パケットを一定遅延ネットワーク３１１から受信し、本明細書で記載されるように、適切な機能をこれらのパケットに実行し、これらのパケットを、可変遅延ネットワーク３１２を介して提供する。加えて、ゲートウェイ３３２はマルチメディア・パケットを可変遅延ネットワーク３１２から受信し、適切な機能をこれらのパケットにおいて、本明細書で記載されるように実行し、これらのパケットを、可変遅延ネットワーク３１３を介して提供する。ゲートウェイはマルチメディア・パケットを以前のネットワークから受信し、必要な場合にマルチメディア・パケットを、次のネットワークの規格に準拠するように再構成し、次いで、再構成されているかも知れないマルチメディア・パケットを次のネットワーク上へ送信する。
【００４５】
図４は、本発明による、マルチメディア・パケットのストリームの一定遅延通信を、異種ネットワークを介して実行する方法４００を例示する。図３は、図４の方法が開始する前の、異種ネットワークの最初の状態を例示する。図５ないし図６は、図４の方法の実行の結果である異種ネットワークの継続的な状態を示す。したがって、図４の方法を、図３、図５および図６において例示されたネットワーク状態を頻繁に参照して記載する。
【００４６】
最初に、異種ネットワークにおいて、共通ネットワーク・タイムベースをそれまでに有していないこれらの可変遅延ネットワークにおいて、共通時間計算が確立される（動作４０１）。図５は、動作４０１が完了した後の異種ネットワークのネットワーク状態を例示する。図３の異種ネットワーク３０３の修正された形式が、図５において異種ネットワーク５０３として例示される。図３の可変遅延ネットワーク３１３の修正された形式が、図５において可変遅延ネットワーク５１３として例示される。可変遅延ネットワーク５１３が共通タイムベース５２３を有するのに対し、可変遅延ネットワーク３１３は有していないことに留意されたい。この段階で、異種ネットワーク５０３内の各ネットワークは、一定遅延ネットワーク、または、共通ネットワーク・タイムベースを有する可変遅延ネットワーク、のいずれかであるべきである。
【００４７】
図４の方法４００に戻ると、可変遅延ネットワークは、１つまたは複数の一定遅延ネットワークとして、各可変遅延ネットワークが従う共通時間計算を使用してエミュレートされる（動作４０２）。これは、ゲートウェイにおけるリンク・レイヤ、アプリケーション・レイヤまたは別のレイヤが、タイム・スタンプをマルチメディア・パケットに含めることによって実施することができ、このタイム・スタンプは、次の可変遅延ネットワークの共通時間計算に従う時間を表す。タイム・スタンプを、パケットがレンダリングされるべき時間に関係付けることができ、また、たとえば、パケットが送信される時間とすることもできる。次いで、受信するデバイスがタイム・スタンプを使用して、いつパケットが表示されるべきであるかを決定することができる。また、いつマルチメディア・パケットが後続のゲートウェイによって送信されるべきであるか、あるいは場合によっては、将来のタイム・スタンプが後続のネットワークについて指示するべきときはいつであるかを、タイム・スタンプを使用して決定するために使用することもできる。図５を参照すると、可変遅延ネットワーク３１２の共通タイムベース３２２が使用されて、可変遅延ネットワーク３１２が一定遅延ネットワークとしてエミュレートされる。加えて、可変遅延ネットワーク５１３の共通タイムベース５２３を使用して、可変遅延ネットワーク５１３を一定遅延ネットワークとしてエミュレートすることができる。
【００４８】
図６は、動作４０２が完了した後の異種ネットワークのネットワーク状態を例示する。図５の異種ネットワーク５０３の変更された形式（modified form）が、図６において異種ネットワーク６０３として例示される。一定遅延にエミュレートされたネットワーク６１２が、その一定遅延エミュレーションを強調するために、可変遅延ネットワーク３１２に取って代わっている。加えて、一定遅延にエミュレートされたネットワーク６１３が、その一定遅延エミュレーションを強調するために、可変遅延ネットワーク５１３に取って代わっている。このとき、ネットワークは、マルチメディア・パケットをマルチメディア・ソースおよびマルチメディア・シンクからリアルタイムで送信する（動作４０３）ための準備が十分にできている。
【００４９】
マルチメディア・パケットが異種ネットワークにおいて、あるネットワークから次のネットワークへ移行するとき、ゲートウェイがマルチメディア・パケットを、必要な場合に次のネットワークの要件に準拠するように再フォーマットあるいは再構成することができる。いくつかの場合では、これが、次のネットワークのフォーマットに準拠し、かつ次のネットワークの時間計算に従った正確な時間を表すタイム・スタンプを含めることを要件とすることができる。しかし、以前のネットワークおよび次のネットワークが同じ時間計算を認識する場合、あるいは、次のネットワークが一定遅延ネットワークである場合、このような時間変換（time translation）が行われる必要はない。
【００５０】
一定遅延ネットワークから一定遅延ネットワークへの移行中であるとき、ゲートウェイは、パケットが次のネットワーク上へ相対的に一定の時間期間で、パケットが以前のネットワークから受信された後に送信されることを保証するべきである。この移行を、パケットについてのタイム・スタンプの解釈、操作または作成を行うことなく実施することができる。
【００５１】
一定遅延ネットワークから可変遅延ネットワークへの移行中であるとき、ゲートウェイはパケットを所与の受信時間に一定遅延ネットワークから受信する。次いで、ゲートウェイは、可変遅延ネットワークの共通時間計算に従った時間を表すタイム・スタンプを生成する。この時間は、パケットが一定遅延ネットワークから受信された時間に等しいかあるいはその時間からの相対的な定数オフセットを有した時間に等しく、これは可変遅延ネットワークの共通時間計算を使用して測定されたものである。
【００５２】
可変遅延ネットワークから一定遅延ネットワークへの移行中であるとき、ゲートウェイはパケットを受信し、タイム・スタンプを、可変遅延ネットワークの時間計算に従って解釈して、パケットが一定遅延ネットワーク上に送信されるべきである時間を決定する（ゲートウェイの時間計算による）。次いで、ゲートウェイがパケットを一定遅延ネットワーク上へ、所与の送信時間に送信する。
【００５３】
可変遅延ネットワークから別の可変遅延ネットワークへの移行中であるとき、ゲートウェイは、両方の可変遅延ネットワークが同じ時間計算およびパケット・フォーマットに従う場合、マルチメディア・パケット内にタイム・スタンプを残す。そうでない場合、ゲートウェイはタイム・スタンプを、それが第２の可変遅延ネットワークの共通時間計算に従った時間を表すように変換する（translate）。
【００５４】
いくつかの可変遅延ネットワークでは、リンク・レイヤ・コントローラが時間の共通計算を、ネットワーク上の他のデバイスと共に維持するための備えがない。したがって、アプリケーション・レイヤ自体が共通時間計算をデバイス全体で維持し、適切なタイム・スタンプを計算し、かつ／またはタイム・スタンプをマルチメディア・パケットに含めることができる。これらのタスクのうちどれをアプリケーション・レイヤが実行するかについては、アプリケーション・レイヤがマルチメディア・パケットを、ゲートウェイを通じて転送するために使用する、リンク・レイヤの能力（capability）に依存する。
【００５５】
この方法では、異種ネットワークでさえ、マルチメディア・パケットのリアルタイム通信を可能とする一定遅延ネットワークをエミュレートすることができる。したがって、本発明の原理は、マルチメディア・ソースとマルチメディア・シンクの間に介在するネットワークの異種の特性にもかかわらず、異種ネットワークのいくつかが、それら自体で時間の共通概念をサポートしない可変遅延ネットワークを含む場合でさえも、マルチメディア・パケットの配信を提供する。したがって、マルチメディア・データのストリーミングを、ユーザーの場所にかかわらず使用可能とすることができる。したがって、本発明の原理は、最新技術を超える著しい改善（a significant improvement over the state of the art）を提示する。
【００５６】
ここで、一定遅延ネットワークを可変遅延ネットワークからエミュレートする方法について、様々な実施例を提供する。特に、図７はネットワーク構成７００を例示し、これはトランスミッタ７２０およびレシーバ７２１、および、トランスミッタ７２０とレシーバ７２１の間に介在する可変遅延ネットワーク７０４を含む。
【００５７】
トランスミッタ７２０はトランスミッタ・アプリケーション７０１を含み、これは複数のマルチメディア・パケットをメモリ７０７に格納する。たとえば、メモリ７０７は、２つのマルチメディア・パケット、すなわち第１のマルチメディア・パケット７０８および第２のマルチメディア・パケット７０９を格納する。トランスミッタ７２０はトランスミッタ・リンク・レイヤ・コントローラ７０３も含み、これが実際に、可変遅延ネットワーク７０４を介して送信するマルチメディア・パケットを取り出す。可変遅延インターフェース７０２は、トランスミッタ・アプリケーション７０１とトランスミッタ・リンク・レイヤ・コントローラ７０３の間に介在する。レシーバ７２１はリンク・レイヤ・コントローラ７０５を含み、これがマルチメディア・パケットを可変遅延ネットワーク７０４から受信し、これらのパケットをレシーバ・アプリケーション７０６に提供する。
【００５８】
可変遅延ネットワーク７０４を、たとえば、ＩＥＥＥ１３９４シリアル・バス・ネットワークにすることができる。従来のＩＥＣ６１８８３−ｘ技術は、ＩＥＥＥ１３９４シリアル・バス・ネットワークの一定遅延ネットワーク・エミュレーションを、ＩＥＣ６１８８３−ｘのサポートを提供するＡＶリンク・レイヤ・コントローラを使用して可能にすることに留意されたい。しかし、この従来の一定遅延エミュレーションは、マルチメディア・パケットをディスパッチ（dispatch；急送）するトランスミッタ・アプリケーションと、マルチメディア・パケットを受信するトランスミッタ・リンク・レイヤ・コントローラの間の一定遅延に依拠する。しかし、図７において例示したように、可変遅延インターフェース７０２が、トランスミッタ・アプリケーション７０１とリンク・レイヤ・コントローラ７０３の間にある。したがって、ＩＥＣ６１８８３−ｘサポートを提供するＡＶリンク・レイヤ・コントローラを使用した従来の一定遅延エミュレーション方法が、図７において例示したネットワーク構成において有効に機能すると考えるための根拠がない。
【００５９】
可変遅延インターフェース７０２は、たとえば、非専用ＰＣＩインターフェースにすることができる。この場合、トランスミッタ・リンク・レイヤ・コントローラ７０３を、たとえば、ＯＨＣＩリンク・レイヤ・コントローラにすることができる。ＰＣＩインターフェースには、単にトランスミッタ・リンク・レイヤ・コントローラ７０３だけではなく、様々なデバイスの間で共有することができる利点がある。したがって、ＰＣＩインターフェースは汎用コンピュータ・システムに十分に適する。しかし、従来の技術は、可変遅延ネットワークのトランスミッタが可変遅延インターフェースをトランスミッタ・アプリケーションとトランスミッタ・リンク・レイヤ・コントローラの間に含んでいるとき、可変遅延ネットワークの一定遅延ネットワーク・エミュレーションを提供していない。しかし、本発明の原理は、ＰＣＩインターフェースをＯＨＣＩリンク・レイヤ・コントローラと共にトランスミッタにおいて使用できるようにし、なお一定遅延ネットワークをエミュレートすることを可能とする。
【００６０】
図８は、本発明による、非専用可変遅延インターフェースにもかかわらず、トランスミッタ・リンク・レイヤ・コントローラが可変遅延ネットワークを介して一定遅延ネットワークをエミュレートする方法８００を例示する。図８の方法８００を、図７のネットワーク構成７００に関して記載する。
【００６１】
トランスミッタ・リンク・レイヤ・コントローラ７０３が、第１のマルチメディア・パケット７０８をトランスミッタ・アプリケーション７０１から受信する（動作８０１）。トランスミッタ・アプリケーション７０１が第１のトランスミッタ・アプリケーション・タイム・スタンプ７１０をパケットに含める。ここで、タイム・スタンプ７１０は、第１のマルチメディア・パケット７０８内の情報がレシーバ・アプリケーション７０６によって、レンダリングされるべきである相対的時間を表し、トランスミッタ・アプリケーション７０１が従うタイムベースにおいて表現されている。次いで、トランスミッタ・リンク・レイヤ・コントローラ７０３が、別のタイム・スタンプ７１４を第１のマルチメディア・パケット７０８に含める（動作８０２）。新しいタイム・スタンプは、対応する情報がネットワーク・タイムベースを参照してレンダリングされるべき時間を表す。
【００６２】
トランスミッタ・リンク・レイヤ・コントローラ７０３は、トランスミッタ・アプリケーション７０１からの情報も受信し、これからトランスミッタ・リンク・レイヤ・コントローラ７０３が、トランスミッタ・アプリケーションによって使用されたタイムベースの周波数を、可変遅延ネットワーク７０４上のデバイスを介して認識された共通タイムベース（すなわち、ネットワーク・タイムベース）を参照して導出することができる（動作８０３）。トランスミッタ・リンク・レイヤ・コントローラ７０３がこの情報を周波数７１２として格納し、また現在時間７１３をも、可変遅延ネットワーク７０４を介して認識された共通タイムベースに従って格納する。
【００６３】
トランスミッタ・リンク・レイヤ・コントローラは、マルチメディア・パケット７０９など、第２のマルチメディア・パケットも、トランスミッタ・アプリケーション７０１から、可変遅延インターフェース７０２を介して受信する（動作８０４）。トランスミッタ・アプリケーション７０１がトランスミッタ・アプリケーション・タイム・スタンプ７１１をパケットに含める。ここで、タイム・スタンプ７１１は、第２のマルチメディア・パケット７０９内の情報がレシーバ・アプリケーション７０６によってレンダリングされるべきである相対的時間を表し、トランスミッタ・アプリケーション７０１が従うタイムベースにおいて表現されている。
【００６４】
次いで、トランスミッタ・リンク・レイヤ・コントローラ７０３がネットワーク・タイム・スタンプ７１５を計算し、これは、第２のマルチメディア・パケット内の情報がレシーバ・アプリケーション７０６によって、共通ネットワーク・タイムベースに従ってレンダリングされるべきである相対的時間を表す（動作８０５）。この計算は、第１のトランスミッタ・アプリケーション・タイム・スタンプ７１０、第２のトランスミッタ・アプリケーション・タイム・スタンプ７１１、周波数７１２および第１のネットワーク・タイム・スタンプ７１４に基づいている。具体的には、この計算を、以下の公式に従って行うことができる。
【００６５】
新ネットワーク時間＝旧ネットワーク時間＋（新ＳＴＢ時間−旧ＳＴＢ時間）＊周波数
ここで、
旧ネットワーク時間＝最後のパケットにおいてタイム・スタンプされたタイム・スタンプの格納値、
旧ＳＴＢ時間＝最後のパケットにおいて提供されたソフトウェア・タイムベースの格納値、
新ＳＴＢ時間＝現在のパケットから読み取られたソフトウェア・タイムベースの値、および
周波数＝格納されたソフトウェア・タイムベース周波数、である。
【００６６】
実際の実施では、ＩＥＣ６１８８３−ｘなど、いずれかの適用可能な仕様に準拠するように、固定されたオフセットをネットワーク・タイム・スタンプに追加することができる。
【００６７】
次いで、トランスミッタ・リンク・レイヤ・コントローラ７０３が、計算されたネットワーク・タイム・スタンプ７１５を第２のマルチメディア・パケット７０９に含め（動作８０６）、次いで、第２のマルチメディア・パケット７０９を、可変遅延ネットワーク７０４を介してディスパッチする（動作８０７）。計算されたネットワーク・タイム・スタンプ７１５をマルチメディア・パケットに、ＩＥＣ６１８８３−ｘプロトコルに従って含めることができる。次いで、レシーバ・リンク・レイヤ・コントローラ７０５がマルチメディア・パケットを受信し、ＩＥＣ６１８８３−ｘプロトコルを使用してタイム・スタンプを解釈することができる。次いで、リンク・レイヤ・コントローラ７０５がパケットをレシーバ・アプリケーション７０６へ転送することができ、これが次いで、対応する情報のレンダリングを調時（time）することができる。
【００６８】
図９は、トランスミッタ・アプリケーション９０１が、可変遅延ネットワーク９０３を横切るタイムベースをコントロールする、ネットワーク構成９００を例示する。トランスミッタ・アプリケーション９０１が、タイムベース９１３を格納するトランスミッタ・リンク・レイヤ・コントローラ９０２に関連付けられる。レシーバ・アプリケーション９０５が、タイムベース９１４を格納するレシーバ・リンク・レイヤ・コントローラ９０４に関連付けられ、タイムベース９１４は相対的にタイムベース９１３と同期化される。
【００６９】
図１０は、可変遅延ネットワークを介して一定遅延ネットワークをエミュレートするための方法１０００を例示し、これを図９に関して記載する。トランスミッタ・リンク・レイヤ・コントローラ９０２が、トランスミッタ・アプリケーション９０１から受信されたトランスミッタ・アプリケーション・タイムベース９１３を格納する（動作１００１）。
【００７０】
トランスミッタ・リンク・レイヤ・コントローラはトランスミッタ・アプリケーション・タイムベースを、レシーバ・リンク・レイヤ・コントローラ９０４を含む１つまたは複数のデバイスへ、可変遅延ネットワーク９０３を介して周期的に送信する（動作１００２）。データを非同期的にマルチメディア・パケットへ提供するソフトウェアが、同期化のタスクを実行することができる。この方法において、トランスミッタおよびレシーバのリンク・レイヤ・コントローラでのクロック・レジスタ（すなわち、タイムベース９１３およびタイムベース９１４）を、同期化された状態に保つことができる。
【００７１】
トランスミッタ・リンク・レイヤ・コントローラ９０２がトランスミッタ・アプリケーション・タイムベースを、可変遅延ネットワークを介して送信されるべきである各パケットに含め（動作１００３）、次いでパケットを、ネットワークを介してディスパッチする（動作１００４）。次いで、レシーバ・アプリケーション９０５がトランスミッタ・アプリケーション・タイムベースを、マルチメディア・パケット内の対応する情報のレンダリングを調時するために、使用することができる。図１０の方法１０００を実施することができる可変遅延ネットワークの一実施例は、ＩＥＣ８０２．１１ワイヤレス・ネットワークである。
【００７２】
したがって、本発明の原理は、一定遅延ネットワークを、時間の共通概念を本質的にサポートしない可変遅延ネットワークを含む異種ネットワークのグループを介しても、エミュレートする手段を提供する。また、本発明の原理は、可変遅延インターフェースがトランスミッタ・アプリケーションとトランスミッタ・リンク・レイヤ・コントローラの間にある可変遅延ネットワーク上に、かつ、固有の共通ネットワーク・タイムベースを有していない可変遅延ネットワーク内に、一定遅延ネットワークのエミュレーションを可能にする。
【００７３】
本発明を、他の特定の形式において、その精神または本質的特性から逸脱することなく実施することができる。記載した実施形態は、すべての点で、限定的ではなく例示的としてのみ見なされるべきである。したがって、本発明の範囲は、前述の記載によってではなく、特許請求の範囲によって示される。特許請求の範囲と同等の意味および範囲内に入るすべての変更は、これらの範囲内に包含されるべきである。
【００７４】
【発明の効果】
以上説明したように本発明によれば、異種ネットワークにおいて、時間の共通計算のないいくつかの可変遅延ネットワークがあった場合、これらの各ネットワークにおいて時間の共通計算が確立されるので、それらの可変遅延ネットワークが、１つまたは複数の一定遅延ネットワークとしてエミュレートされ、マルチメディア情報のリアルタイム通信を可能にする。
【００７５】
また、本質的にタイムベースを有していない可変遅延ネットワークを介した通信を許容するために、トランスミッタ・アプリケーションは現在時間をネットワーク上の様々なレシーバ・デバイスへ、ネットワーク上のデバイスを同期化するために周期的に送信する。ここで、トランスミッタは、同期化された時間に従うタイム・スタンプを含めていているので、マルチメディア・パケット内の情報が適切な時間に提示されることを可能とする。
【図面の簡単な説明】
【図１】従来技術による、リアルタイム・マルチメディア通信をサポートする一定遅延ネットワークを概略的に例示する図である。
【図２】本発明のために適切な動作環境を提供する例示的システムを例示する図である。
【図３】一定遅延ネットワーク、共通ネットワーク・タイムベースを有する可変遅延ネットワーク、および共通ネットワーク・タイムベースを有していない可変遅延ネットワークを含めることができる異種ネットワークを介したマルチメディア通信を概略的に例示する図である。
【図４】マルチメディア・パケットの一定遅延通信を、異種ネットワークを介して実行する方法のフローチャートを例示する図である。
【図５】共通ネットワーク・タイムベースを有していなかった可変遅延ネットワークに共通ネットワーク・タイムベースが提供される、図３の異種ネットワークを例示する図である。
【図６】可変遅延ネットワークが一定遅延ネットワークを、共通ネットワーク・タイムベースを使用してエミュレートする、図５の異種ネットワークを例示する図である。
【図７】可変遅延インターフェースがＰＣＩインターフェースであるとき、非専用可変遅延インターフェースがトランスミッタ・アプリケーションとトランスミッタ・リンク・レイヤ・コントローラの間にある、可変遅延ネットワークを例示する図である。
【図８】可変遅延インターフェースがトランスミッタ・アプリケーションとトランスミッタ・リンク・レイヤ・コントローラの間にある場合でも、一定遅延ネットワークを可変遅延ネットワークにおいてエミュレートするための方法を例示する図である。
【図９】共通タイムベースが確立される可変遅延ネットワークを例示する図である。
【図１０】従来は共通ネットワーク・タイムベースが装備されていない可変遅延ネットワークを使用して、一定遅延ネットワークをエミュレートする方法を例示する図である。
【符号の説明】
１００、３００、５００、６００、７００、９００    ネットワーク
１０１、３０１    マルチメディア・ソース
１０２、３０２    マルチメディア・シンク
１０３、３１１    一定遅延ネットワーク
１０４、３０４、７０８、７０９    マルチメディア・パケット
１０６、３１２、３１３、５１３、７０４、９０３    可変遅延ネットワーク
３０３、５０３、６０３    異種ネットワーク
３２２、５２３    共通タイムベース
６１２、６１３    エミュレートされた一定遅延ネットワーク
７０１、９０１    トランスミッタ・アプリケーション
７０２    可変遅延インターフェース
７０３、９０２    トランスミッタ・リンク・レイヤ・コントローラ
７０５、９０４    レシーバ・リンク・レイヤ・コントローラ
７０６、９０５    レシーバ・アプリケーション
７１０、７１１    トランスミッタ・アプリケーション・タイム・スタンプ
７１２    周波数
７１３、９１３、９１４    タイムベース
７１４、７１５    ネットワーク・タイム・スタンプ
７２０    トランスミッタ
７２１    レシーバ
【図１】
0003834257.tif 000002
【図２】
0003834257.tif 000003
【図３】
0003834257.tif 000004
【図４】
0003834257.tif 000005
【図５】
0003834257.tif 000006
【図６】
0003834257.tif 000007
【図７】
0003834257.tif 000008
【図８】
0003834257.tif 000009
【図９】
0003834257.tif 000010
【図１０】
0003834257.tif 000011