(57)【特許請求の範囲】
【請求項１】
イーサネット（登録商標）オーディオ・ビデオブリッジング（「ＡＶＢ」）ネットワークと共に使用するためのリスナシステムであって、前記リスナシステムは、
上位層アプリケーションと、
前記上位層アプリケーションと通信するストリーム予約プロトコルスタックであって、前記イーサネット（登録商標）ＡＶＢネットワーク上でストリーム広告を受信するように構成され、スパースモードおよびフルモードで動作するように構成される、ストリーム予約プロトコルスタックと
を備え、
前記ストリーム予約プロトコルスタックは、前記スパースモードにおける動作中は、前記受信されたストリーム広告の第１のサブセットを前記上位層アプリケーションに送信するとともに、前記受信されたストリーム広告の第２のサブセットを前記上位層アプリケーションに送信しないようにさらに構成され、
前記ストリーム予約プロトコルスタックは、前記フルモードでの動作中に、前記受信されたストリーム広告のすべてを前記上位層アプリケーションに送信するようにさらに構成される、リスナシステム。
【請求項２】
前記上位層アプリケーションは、クエリを生成し、前記ストリーム予約プロトコルスタックに送信するように構成され、前記クエリは前記リスナシステムに関連のあるデータストリームを特定する、請求項１に記載のリスナシステム。
【請求項３】
前記受信されたストリーム広告の前記第１のサブセット内の各ストリーム広告は、前記リスナに関連のある前記特定されたデータストリームのうちの１つに一致する、請求項２に記載のリスナシステム。
【請求項４】
受信されたストリーム広告の前記第２のサブセット内のストリーム広告は、前記リスナに関連のある前記特定されたデータストリームのいずれとも一致しない、請求項２または３に記載のリスナシステム。
【請求項５】
前記クエリはトーカ属性のリストを含み、前記トーカ属性のそれぞれは前記イーサネット（登録商標）ＡＶＢネットワークと通信するトーカに対応する、請求項２〜４のいずれか一項に記載のリスナシステム。
【請求項６】
前記トーカ属性のそれぞれは、一意のストリーム識別子を含む、請求項５に記載のリスナシステム。
【請求項７】
前記上位層アプリケーションは、前記クエリの生成および前記ストリーム予約プロトコルスタックへの送信の前に、前記イーサネット（登録商標）ＡＶＢネットワークと通信するコントローラから信号を受信するように構成され、前記信号は、前記リスナに関連のある前記データストリームを指定し、前記上位層アプリケーションによって前記ストリーム予約プロトコルスタックに送信される前記クエリは前記コントローラからの前記信号において指定される前記データストリームのためのストリーム識別子から成る、請求項２〜６のいずれか一項に記載のリスナシステム。
【請求項８】
前記受信されたストリーム広告は、前記受信されたストリーム広告の前記第１のサブセットおよび前記受信されたストリーム広告の前記第２のサブセット内のストリーム広告から成る、請求項１〜７のいずれか一項に記載のリスナシステム。
【請求項９】
前記上位層アプリケーションは、モード切り替え信号を前記ストリーム予約プロトコルスタックに送信するようにさらに構成され、前記ストリーム予約プロトコルスタックは、前記モード切り替え信号に応答して、前記ストリーム予約プロトコルスタックの動作を前記フルモードと前記スパースモードとの間で切り替えるようにさらに動作可能である、請求項１〜８のいずれか一項に記載のリスナシステム。
【請求項１０】
前記上位層アプリケーションは、前記ストリーム予約プロトコルスタック内に含まれるスパースモードエンジンにストリーム識別子を送信するように構成され、前記ストリーム識別子は、前記リスナに関連のあるデータストリームを特定する、請求項１〜５のいずれか一項に記載のリスナシステム。
【請求項１１】
前記スパースモードエンジンは、前記リスナに関連のある前記特定されたデータストリームを、前記受信されたストリーム広告と比較するように構成される、請求項１０に記載のリスナシステム。
【請求項１２】
前記スパースモードエンジンは、前記リスナに関連のある前記特定されたデータストリームに一致する、前記受信されたストリーム広告のうちの１つを送信し、前記リスナに関連のある前記特定されたデータストリームに一致しない、前記受信されたストリーム広告を無視する、請求項１１に記載のリスナシステム。
【請求項１３】
イーサネット（登録商標）オーディオ・ビデオブリッジング（「ＡＶＢ」）ネットワークに接続されるリスナシステムのストリーム予約プロトコルスタックを操作するコンピュータ実施の方法であって、前記方法は、
少なくとも１つのプロセッサの使用を通じて、前記リスナシステム内に含まれるストリーム予約プロトコルスタックを用いて、前記イーサネット（登録商標）ＡＶＢネットワークから複数のストリーム広告を受信することと、
前記少なくとも１つのプロセッサの使用を通じて、前記リスナシステムがフルモードで機能しているとき、前記複数のストリーム広告のすべてを、前記リスナシステム内に含まれる上位層アプリケーションに送信することと、
前記少なくとも１つのプロセッサの使用を通じて、前記リスナシステムがスパースモードで動作しているとき、前記受信されたストリーム広告の第１のサブセットを前記上位層アプリケーションに送信するとともに、前記受信されたストリーム広告の第２のサブセットは前記上位層アプリケーションに送信しないことと
を含む、方法。
【請求項１４】
前記上位層アプリケーションからモード切り替え信号を受信することをさらに含み、前記モード切り替え信号は、前記ストリーム予約プロトコルスタックの動作モードを、前記フルモードと前記スパースモードとの間で切り替える、請求項１３に記載の方法。
【請求項１５】
前記上位層アプリケーションから、前記リスナシステムにとって関心があるデータストリームのための少なくとも１つのストリーム識別子を特定するクエリを受信することをさらに含む、請求項１３または１４に記載の方法。
【請求項１６】
前記関心があるデータストリームは、前記リスナが処理するとともに、前記処理されたデータストリームの結果として出力を生成するように構成されているデータストリームを含む、請求項１５に記載の方法。
【請求項１７】
前記スパースモードで動作しているとき、前記複数のストリーム広告を前記少なくとも１つのストリーム識別子と比較することと、
前記比較に基づいて、前記少なくとも１つのストリーム識別子のうちの少なくとも１つに一致する前記複数のストリーム広告のうちの各ストリーム広告を、前記受信されたストリーム広告の前記第１のサブセットに追加することと、
前記比較に基づいて、前記少なくとも１つのストリーム識別子のうちの少なくとも１つに一致しない前記複数のストリーム広告のうちのすべてのストリーム広告を、前記受信されたストリーム広告の前記第２のサブセットに追加することと
をさらに含む、請求項１５または１６に記載の方法。
【請求項１８】
前記比較は、前記少なくとも１つのストリーム識別子を、複数のストリーム識別子と比較することを含み、前記複数のストリーム識別子のそれぞれは、それぞれ、前記複数のストリーム広告のそれぞれに関連付けられる、請求項１７に記載の方法。
【請求項１９】
プログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記プログラムは、コンピュータに、イーサネット（登録商標）オーディオ・ビデオブリッジング（「ＡＶＢ」）ネットワークに接続されるリスナシステムのストリーム予約プロトコルスタックを操作させ、前記プログラムは、
前記リスナシステム内に含まれるストリーム予約プロトコルスタックを用いて前記イーサネット（登録商標）ＡＶＢネットワークから複数のストリーム広告を受信するためのコードと、
前記リスナシステムがフルモードで機能しているとき、前記複数のストリーム広告のすべてを、前記リスナシステム内に含まれる上位層アプリケーションに送信するためのコードと、
前記リスナシステムがスパースモードで動作しているとき、前記受信されたストリーム広告の第１のサブセットを前記上位層アプリケーションに送信するとともに、前記受信されたストリーム広告の第２のサブセットを前記上位層アプリケーションに送信しないためのコードと
を含む、コンピュータ読み取り可能な記録媒体。
【請求項２０】
前記プログラムは、
前記上位層アプリケーションからモード切り替え信号を受信するためのコードであって、前記モード切り替え信号は、前記ストリーム予約プロトコルスタックの動作モードを、前記フルモードと前記スパースモードとの間で切り替える、コード
をさらに含む、請求項１９に記載のコンピュータ読み取り可能な記録媒体。
【請求項２１】
前記プログラムは、
前記上位層アプリケーションから、前記リスナシステムにとって関心があるデータストリームを特定するクエリを受信するためのコード
をさらに含む、請求項１９または２０に記載のコンピュータ読み取り可能な記録媒体。
【請求項２２】
前記関心があるデータストリームは、前記リスナが処理するとともに、前記処理されたデータストリームの結果として出力を生成するように構成されているデータストリームを含む、請求項２１に記載のコンピュータ読み取り可能な記録媒体。
【請求項２３】
前記プログラムは、
前記スパースモードで動作しているとき、前記複数のストリーム広告を、前記関心があるデータストリームのためのストリーム識別子と比較するためのコードと、
前記比較に基づいて、前記ストリーム識別子に一致する前記複数のストリーム広告のうちの各ストリーム広告を、前記受信されたストリーム広告の前記第１のサブセットに追加するためのコードと、
前記比較に基づいて、前記ストリーム識別子に一致しない前記複数のストリーム広告のうちのすべてのストリーム広告を、前記受信されたストリーム広告の前記第２のサブセットに追加するためのコードと
をさらに含む、請求項２１または２２に記載のコンピュータ読み取り可能な記録媒体。
【請求項２４】
前記比較は、前記ストリーム識別子を、複数のストリーム識別子と比較することを含み、前記複数のストリーム識別子のそれぞれは、それぞれ、前記複数のストリーム広告のそれぞれに関連付けられる、請求項２３に記載のコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、イーサネット（登録商標）オーディオ・ビデオブリッジング（「ＡＶＢ」）ネットワークと共に使用するためのリスナシステム、イーサネット（登録商標）オーディオ・ビデオブリッジング（「ＡＶＢ」）ネットワークに接続されるリスナのストリーム予約プロトコルスタックを動作させる方法、及びネットワーク通信システムに関する。
【背景技術】
【０００２】
継続的な技術的発展により、ますます多くの数のデバイスが様々なネットワークを通じて互いに対話および通信し得るようになっている。互いに通信および対話するデバイスの数が増えるほど、ネットワークを通じて、また接続された各デバイスにわたされ得るデータの量も増える。従って、資源の量が制限されている場合があるデバイスのような、ネットワーク内の１つまたは複数のデバイスの効率および資源を増大させ、かつ／または最大化するデバイスおよび／またはシステムに対する需要が存在する。
【発明の概要】
【課題を解決するための手段】
【０００３】
リスナシステム、またはリスナは、イーサネット（登録商標）オーディオ・ビデオブリッジング（「ＡＶＢ」）ネットワークと共に使用されることができる。リスナは、上位層アプリケーションおよびストリーム予約プロトコルスタックのような、さまざまな構成要素を含むことができる。上位層アプリケーションおよびストリーム予約プロトコルスタックは、互いに通信することができる。ストリーム予約プロトコルスタックは、イーサネット（登録商標）ＡＶＢネットワーク上で、または当該ネットワークを介してストリーム広告を受信することができる。ストリーム予約プロトコルスタックは、スパースモードで動作することができるとともに、フルモードで動作することができる。スパースモードで動作しているときは、ストリーム予約プロトコルスタックは、受信されたストリーム広告の１つのサブセットを上位層アプリケーションに送信することができ、受信されたストリーム広告の別のサブセットを上位層アプリケーションに送信しなくともよい。
【０００４】
リスナのストリーム予約プロトコルスタックは、イーサネット（登録商標）ＡＶＢネットワークに接続することができる。リスナは、上位層アプリケーションおよびストリーム予約プロトコルスタックを含むことができる。ストリーム予約プロトコルスタックは、さまざまな方法に従って操作されることができる。１つの方法において、ストリーム予約プロトコルスタックは、イーサネット（登録商標）ＡＶＢネットワークから複数のストリーム広告を受信することができる。ストリーム予約プロトコルスタックは、フルモードで機能しているときは、複数のストリーム広告を上位層アプリケーションに送信することができる。スパースモードで動作しているときは、ストリーム予約プロトコルスタックは、受信されたストリーム広告の第１のサブセットを上位層アプリケーションに送信することができ、受信されたストリーム広告の第２のサブセットを上位層アプリケーションに送信しなくともよい。
【０００５】
ネットワーク通信システムは、イーサネット（登録商標）ＡＶＢネットワーク、トーカ、および多数のリスナを含むことができる。トーカおよびリスナはすべて、イーサネット（登録商標）ＡＶＢネットワークに接続することができる。トーカは、ストリーム広告を用いてイーサネット（登録商標）ＡＶＢネットワーク上でデータストリームを広告することができる。リスナは、スパースモードおよびフルモードで動作するように構成されることができる。スパースモードにおいて、リスナは、ストリーム広告を、リスナにとって関心がある１つまたは複数のデータストリームに関連付けられる１つまたは複数のストリーム識別子と比較することができる。
【０００６】
コンピュータプログラム製品は、イーサネット（登録商標）オーディオ・ビデオブリッジング（「ＡＶＢ」）ネットワークに接続されるリスナシステムのストリーム予約プロトコルスタックを動作させるためのコンピュータ実行可能コードを有形に具現化するコンピュータ可読媒体を有することができる。この製品は、リスナシステム内に含まれるストリーム予約プロトコルスタックを用いてイーサネット（登録商標）ＡＶＢネットワークから多数のストリーム広告を受信するためのコードを含むことができる。この製品は、リスナシステムがフルモードで機能しているときに、多数のストリーム広告を、リスナシステム内に含まれる上位層アプリケーションに送信するためのコードをも含むことができる。加えて、この製品は、リスナシステムがスパースモードで動作しているときは、受信されたストリーム広告の第１のサブセットを上位層アプリケーションに送信し、受信されたストリーム広告の第２のサブセットを上位層アプリケーションに送信しないためのコードを含むことができる。
【０００７】
他のシステム、方法、機構および利点は、以下の図面および詳細な説明を検討することによって、当業者に明らかであるか、または明らかとなろう。すべてのこのような追加のシステム、方法、機構および利点が本明細書内に含まれ、本発明の範囲内に含まれるとともに、添付の特許請求の範囲によって保護されることが意図されている。
【０００８】
システムは以下の図面および説明を参照すると、よりよく理解されることができる。図面内の構成要素は、必ずしも原寸に比例してはおらず、むしろ本発明の原理を説明していることが強調されるものである。その上、図面において、同様の参照符号は、異なる複数の図全体を通じて対応する部分を指定している。
例えば、本発明は以下の項目を提供する。
（項目１）
イーサネット（登録商標）オーディオ・ビデオブリッジング（「ＡＶＢ」）ネットワークと共に使用するためのリスナシステムであって、上記リスナシステムは、
上位層アプリケーションと、
上記上位層アプリケーションと通信するストリーム予約プロトコルスタックであって、上記イーサネット（登録商標）ＡＶＢネットワーク上でストリーム広告を受信するように構成され、スパースモードおよびフルモードで動作するように構成される、ストリーム予約プロトコルスタックと
を備え、
上記ストリーム予約プロトコルスタックは、上記スパースモードにおける動作中は、受信された上記ストリーム広告の第１のサブセットを上記上位層アプリケーションに送信するとともに、受信された上記ストリーム広告の第２のサブセットを上記上位層アプリケーションに送信しないようにさらに構成される、リスナシステム。
（項目２）
上記上位層アプリケーションは、クエリを生成し、上記ストリーム予約プロトコルスタックに送信するように構成され、上記クエリは上記リスナシステムに関連のあるデータストリームを特定する、上記項目のいずれかに記載のリスナシステム。
（項目３）
上記受信されたストリーム広告の上記第１のサブセット内の各ストリーム広告は、上記リスナに関連のある上記特定されたデータストリームのうちの１つに一致する、上記項目のいずれかに記載のリスナシステム。
（項目４）
受信されたストリーム広告の上記第２のサブセット内のストリーム広告は、上記リスナに関連のある上記特定されたデータストリームのいずれとも一致しない、上記項目のいずれかに記載のリスナシステム。
（項目５）
上記クエリはトーカ属性のリストを含み、上記トーカ属性のそれぞれは上記イーサネット（登録商標）ＡＶＢネットワークと通信するトーカに対応する、上記項目のいずれかに記載のリスナシステム。
（項目６）
上記トーカ属性のそれぞれは、一意のストリーム識別子を含む、上記項目のいずれかに記載のリスナシステム。
（項目７）
上記上位層アプリケーションは、上記クエリの生成および上記ストリーム予約プロトコルスタックへの送信の前に、上記イーサネット（登録商標）ＡＶＢネットワークと通信するコントローラから信号を受信するように構成され、上記信号は、上記リスナに関連のある上記データストリームを指定し、上記上位層アプリケーションによって上記ストリーム予約プロトコルスタックに送信される上記クエリは上記コントローラからの上記信号において指定される上記データストリームのためのストリーム識別子から成る、上記項目のいずれかに記載のリスナシステム。
（項目８）
上記受信されたストリーム広告は、上記受信されたストリーム広告の上記第１のサブセットおよび上記受信されたストリーム広告の上記第２のサブセット内のストリーム広告から成る、上記項目のいずれかに記載のリスナシステム。
（項目９）
上記ストリーム予約プロトコルスタックは、上記フルモードでの動作中に、上記受信されたストリーム広告のすべてを上記上位層アプリケーションに送信するようにさらに構成される、上記項目のいずれかに記載のリスナシステム。
（項目１０）
上記上位層アプリケーションは、モード切り替え信号を上記ストリーム予約プロトコルスタックに送信するようにさらに構成され、上記ストリーム予約プロトコルスタックは、上記モード切り替え信号に応答して、上記ストリーム予約プロトコルスタックの動作を上記フルモードと上記スパースモードとの間で切り替えるようにさらに動作可能である、上記項目のいずれかに記載のリスナシステム。
（項目１１）
上記上位層アプリケーションは、上記ストリーム予約プロトコルスタック内に含まれるスパースモードエンジンにストリーム識別子を送信するように構成され、上記ストリーム識別子は、上記リスナに関連のあるデータストリームを特定する、上記項目のいずれかに記載のリスナシステム。
（項目１２）
上記スパースモードエンジンは、上記リスナに関連のある上記特定されたデータストリームを、上記受信されたストリーム広告と比較するように構成される、上記項目のいずれかに記載のリスナシステム。
（項目１３）
上記スパースモードエンジンは、上記リスナに関連のある上記特定されたデータストリームに一致する、上記受信されたストリーム広告のうちの１つを送信し、上記リスナに関連のある上記特定されたデータストリームに一致しない、上記受信されたストリーム広告を無視する、上記項目のいずれかに記載のリスナシステム。
（項目１４）
イーサネット（登録商標）オーディオ・ビデオブリッジング（「ＡＶＢ」）ネットワークに接続されるリスナシステムのストリーム予約プロトコルスタックを操作するコンピュータ実施の方法であって、上記方法は、
少なくとも１つのプロセッサの使用を通じて、上記リスナシステム内に含まれるストリーム予約プロトコルスタックを用いて、上記イーサネット（登録商標）ＡＶＢネットワークから複数のストリーム広告を受信することと、
上記少なくとも１つのプロセッサの使用を通じて、上記リスナシステムがフルモードで機能しているとき、上記複数のストリーム広告を、上記リスナシステム内に含まれる上位層アプリケーションに送信することと、
上記少なくとも１つのプロセッサの使用を通じて、上記リスナシステムがスパースモードで動作しているとき、上記受信されたストリーム広告の第１のサブセットを上記上位層アプリケーションに送信するとともに、上記受信されたストリーム広告の第２のサブセットは上記上位層アプリケーションに送信しないことと
を含む、方法。
（項目１５）
上記上位層アプリケーションからモード切り替え信号を受信することをさらに含み、上記モード切り替え信号は、上記ストリーム予約プロトコルスタックの動作モードを、上記フルモードと上記スパースモードとの間で切り替える、上記項目のいずれかに記載の方法。
（項目１６）
上記上位層アプリケーションから、上記リスナシステムにとって関心があるデータストリームのための少なくとも１つのストリーム識別子を特定するクエリを受信すること
をさらに含む、上記項目のいずれかに記載の方法。
（項目１７）
上記関心があるデータストリームは、上記リスナが処理するとともに、上記処理されたデータストリームの結果として出力を生成するデータストリームを含む、上記項目のいずれかに記載の方法。
（項目１８）
上記スパースモードで動作しているとき、上記複数のストリーム広告を上記少なくとも１つのストリーム識別子と比較することと、
上記比較に基づいて、上記少なくとも１つのストリーム識別子のうちの少なくとも１つに一致する上記複数のストリーム広告のうちの各ストリーム広告を、上記受信されたストリーム広告の上記第１のサブセットに追加することと、
上記比較に基づいて、上記少なくとも１つのストリーム識別子のうちの少なくとも１つに一致しない上記複数のストリーム広告のうちのすべてのストリーム広告を、上記受信されたストリーム広告の上記第２のサブセットに追加することと
をさらに含む、上記項目のいずれかに記載の方法。
（項目１９）
上記比較は、上記少なくとも１つのストリーム識別子を、複数のストリーム識別子と比較することを含み、上記複数のストリーム識別子のそれぞれは、それぞれ、上記複数のストリーム広告のそれぞれに関連付けられる、上記項目のいずれかに記載の方法。
（項目２０）
ネットワーク通信システムであって、
イーサネット（登録商標）オーディオ・ビデオブリッジング（「ＡＶＢ」）ネットワークと、
上記イーサネット（登録商標）ＡＶＢネットワークと通信し、ストリーム広告を用いて、上記イーサネット（登録商標）ＡＶＢネットワーク上でデータストリームを広告するように構成されるトーカと、
上記イーサネット（登録商標）ＡＶＢネットワークと通信し、スパースモードおよびフルモードで動作するように構成される複数のリスナと
を備え、
上記スパースモードで動作しているとき、上記複数のリスナは、上記ストリーム広告を、上記リスナにとって関心がある１つまたは複数のデータストリームに関連付けられる１つまたは複数のストリーム識別子と比較するようにさらに構成される、ネットワーク通信システム。
（項目２１）
上記イーサネット（登録商標）ＡＶＢネットワーク、上記トーカ、および上記複数のリスナと通信するコントローラをさらに備え、
上記コントローラは、上記トーカに関連付けられるトーカストリーム識別子を特定し、上記広告されるデータストリームに関心がある上記複数のリスナのサブセットを判断するとともに、上記トーカストリーム識別子を、上記複数のリスナの上記サブセットに送信するように構成される、上記項目のいずれかに記載のネットワーク通信システム。
（項目２２）
上記複数のリスナの上記サブセットは、上記広告されるデータストリームを処理するように構成されるリスナを含む、上記項目のいずれかに記載のシステム。
（項目２３）
上記複数のリスナのそれぞれは、上記コントローラから上記トーカストリーム識別子を受信するとともに、上記トーカストリーム識別子を上記ストリーム広告と比較するように構成される、上記項目のいずれかに記載のシステム。
（項目２４）
イーサネット（登録商標）オーディオ・ビデオブリッジング（「ＡＶＢ」）ネットワークに接続されるリスナシステムのストリーム予約プロトコルスタックを操作するためのコンピュータ実行可能コードを有形に具現化するコンピュータ可読媒体を有するコンピュータプログラム製品であって、上記製品は、
上記リスナシステム内に含まれるストリーム予約プロトコルスタックを用いて上記イーサネット（登録商標）ＡＶＢネットワークから複数のストリーム広告を受信するためのコードと、
上記リスナシステムがフルモードで機能しているとき、上記複数のストリーム広告を、上記リスナシステム内に含まれる上位層アプリケーションに送信するためのコードと、
上記リスナシステムがスパースモードで動作しているとき、上記受信されたストリーム広告の第１のサブセットを上記上位層アプリケーションに送信するとともに、上記受信されたストリーム広告の第２のサブセットを上記上位層アプリケーションに送信しないためのコードと
を含む、コンピュータプログラム製品。
（項目２５）
上記上位層アプリケーションからモード切り替え信号を受信するためのコードであって、上記モード切り替え信号は、上記ストリーム予約プロトコルスタックの動作モードを、上記フルモードと上記スパースモードとの間で切り替える、コード
をさらに含む、上記項目のいずれかに記載の製品。
（項目２６）
上記上位層アプリケーションから、上記リスナシステムにとって関心があるデータストリームを特定するクエリを受信するためのコード
をさらに含む、上記項目のいずれかに記載の製品。
（項目２７）
上記関心があるデータストリームは、上記リスナが処理するとともに、上記処理されたデータストリームの結果として出力を生成するデータストリームを含む、上記項目のいずれかに記載の製品。
（項目２８）
上記スパースモードで動作しているとき、上記複数のストリーム広告を、上記関心があるデータストリームのためのストリーム識別子と比較するためのコードと、
上記比較に基づいて、上記ストリーム識別子に一致する上記複数のストリーム広告のうちの各ストリーム広告を、上記受信されたストリーム広告の上記第１のサブセットに追加するためのコードと、
上記比較に基づいて、上記ストリーム識別子に一致しない上記複数のストリーム広告のうちのすべてのストリーム広告を、上記受信されたストリーム広告の上記第２のサブセットに追加するためのコードと
をさらに含む、上記項目のいずれかに記載の製品。
（項目２９）
上記比較は、上記ストリーム識別子を、複数のストリーム識別子と比較することを含み、上記複数のストリーム識別子のそれぞれは、それぞれ、上記複数のストリーム広告のそれぞれに関連付けられる、上記項目のいずれかに記載の製品。
摘要
リスナシステム、またはリスナは、イーサネット（登録商標）オーディオ・ビデオブリッジング（「ＡＶＢ」）ネットワークと共に使用されることができる。リスナは、上位層アプリケーションおよびストリーム予約プロトコルスタックのような、さまざまな構成要素を含むことができる。上位層アプリケーションおよびストリーム予約プロトコルスタックは、互いに通信することができる。ストリーム予約プロトコルスタックは、イーサネット（登録商標）ＡＶＢネットワーク上で、または当該ネットワークを介してストリーム広告を受信することができる。ストリーム予約プロトコルスタックは、スパースモードで動作することができるとともに、フルモードで動作することができる。スパースモードで動作しているときは、ストリーム予約プロトコルスタックは、受信されたストリーム広告の１つのサブセットを上位層アプリケーションに送信することができ、受信されたストリーム広告の別のサブセットを上位層アプリケーションに送信しなくともよい。
【図面の簡単な説明】
【０００９】
【図１】例示のネットワーク通信システムのブロック図である。
【図２】ネットワーク通信システム内の例示のリスナのブロック図である。
【図３】フルモードで動作している、ネットワーク通信システム内の例示のリスナのブロック図である。
【図４】スパースモードで動作している、ネットワーク通信システム内の例示のリスナのブロック図である。
【図５】ネットワーク通信システム内のリスナの動作の例示の方法の流れ図である。
【図６】ネットワーク通信システム内のリスナの動作の例示の方法の流れ図である。
【図７】ネットワーク通信システム内のコントローラの動作の例示の方法の流れ図である。
【図８】例示のネットワーク通信システムのブロック図である。
【図９】例示のネットワーク通信システムのブロック図である。
【図１０】ネットワーク通信システム内の１つまたは複数の構成要素と共に使用するための処理システムの例の図である。
【発明を実施するための形態】
【００１０】
複数のネットワークデバイス間の接続を求める需要が急速に増大し続けている。多くのシステムにおいて、ネットワーク接続および／または通信の機能を有する、ますます多くのデバイスが製造されるようになっている。例えば、いくつかの自動車においては、以前は接続性を考慮されていなかった構成要素が接続機能を有して製造されるようになってきている。ブレーキ、スロットル、および／またはさまざまな他の部品のような部品が、イーサネット（登録商標）ＡＶＢネットワークを通じて通信することができる、イーサネット（登録商標）オーディオ・ビデオブリッジング（「イーサネット（登録商標）ＡＶＢ」）使用可能デバイスとして製造される場合がある。いくつかのシステムにおいて、イーサネット（登録商標）ネットワークは、１つまたは複数のデバイスを、無線でかつ／またはイーサネット（登録商標）ケーブルのような有線接続で、送信されているオーディオおよび／またはビデオデータストリームに接続するのに使用される場合がある。
【００１１】
ますます多くのデバイスがネットワーク通信機能を有して製造され、成長を続けるネットワーク内に含まれるようになってきていることにより、より多くの量のデータ、ストリーム広告、および／またはデータストリームが、ネットワークを通じて送信、伝送、受信、かつ／または他の様態で通信されるようになってきている。例えば、イーサネット（登録商標）ＡＶＢネットワークのようないくつかのネットワークにおいて、数百または数千ストリームのデータがネットワーク上で利用可能であり得る。これらのネットワークシステムの多くにおいて、ネットワークに接続されている各デバイスは、ネットワークを通じて送信されるデータまたはデータストリームのすべてに関する情報および／またはデータを受信および記憶している場合がある。これらのストリームのすべてを追跡するには、メモリ資源および処理能力が必要であり得る。デバイスにとって関心がないデータ、ストリーム広告、および／またはデータストリームを受信している場合などには、これは、メモリ、処理能力、および／またはデバイスの他の資源の効率的な使用でない場合がある。いくつかのデバイスでは、デバイスの上位層に関連のあるデータまたはストリーム広告を転送するフィルタとしての役割を果たすことができる構成要素または機能を有することが望ましい場合がある。
【００１２】
これらの課題に対処するのに有用であり得る多数のシステムおよび方法（一般的に「システム」と称される）が説明される。これらのシステムは、ストリーム予約プロトコルスパースモードを組み込むことができる。スパースモードにおいて、デバイスはそのストリーム予約プロトコルリスナを、デバイスにとって関心があるストリームのみを処理するように構成することができる。スパースモードによって指定されるストリームと一致しないストリームおよび／またはストリームのためのストリーム広告は、関心がないものとみなされ、単純に無視される場合がある。
【００１３】
図１は、スパースモード動作のためのシステムおよび方法を組み込み、含み、かつ／または使用することができるネットワーク通信システムの例を示す。システムは、１つもしくは複数のネットワーク１１０、１つもしくは複数のトーカ１３０、１３１、および１３２、１つもしくは複数のリスナ１４０、１４１、および１４２、１つもしくは複数のトーカ／リスナ１５０、ならびに／または１つもしくは複数のコントローラ１９０を含むことができる。トーカ１３０、１３１、および１３２は、ネットワーク１１０を介して情報および／またはデータを送信するように構成されることができる。リスナ１４０、１４１、および１４２は、ネットワーク１１０を介して情報および／またはデータを受信するように構成されることができる。トーカ／リスナ１５０は、ネットワークを介して情報および／またはデータを送受信するように構成されることができる。コントローラ１９０は、ネットワーク１１０、トーカ１３０、１３１、および１３２、リスナ１４０、１４１、および１４２、ならびに／またはトーカ／リスナ１５０の１つまたは複数の態様を制御するように構成されることができる。トーカ１３０、１３１、および１３２、リスナ１４０、１４１、および１４２、トーカ／リスナ１５０、ならびに／またはコントローラ１９０のうちの１つまたは複数は、後述するシステムの機能性の一部またはすべてを実施するハードウェア、ソフトウェア、および／またはハードウェアとソフトウェアとの組み合わせであることができるか、またはそれらを含むことができる。他の例においては、より多くのまたはより少ない構成要素が含まれてもよい。
【００１４】
トーカ１３０、１３１、および１３２、リスナ１４０、１４１、および１４２、トーカ／リスナ１５０、ならびに／またはコントローラ１９０のうちの１つまたは複数は、ネットワーク１１０を通じて、または使用して、互いに接続されることができる。代替的にまたは付加的に、トーカ１３０、１３１、および１３２、リスナ１４０、１４１、および１４２、トーカ／リスナ１５０、ならびに／またはコントローラ１９０のうちの１つまたは複数は、直接互いに接続されることができる。例えば、トーカ１３０、１３１、および１３２、リスナ１４０、１４１、および１４２、トーカ／リスナ１５０、ならびに／またはコントローラ１９０のうちの１つまたは複数は、イーサネット（登録商標）ケーブルのような有線接続および／または無線ネットワークを使用して、互いに接続されることができる。さまざまな他の接続が可能である。
【００１５】
ネットワーク１１０は、イーサネット（登録商標）ＡＶＢネットワークであることができ、それを含むことができ、かつ／またはそれを通じてもしくは用いて通信することができる。ネットワーク１１０は、ネットワークを通じて通信しかつ／またはネットワークに接続される１つまたは複数のデバイスと通信することができる１つまたは複数のブリッジを含むことができる。１つまたは複数のブリッジは、ＩＥＥＥによって指定されるイーサネット（登録商標）ＡＶＢプロトコルのようなさまざまなプロトコルを通じて、またはそれを使用して、ネットワーク１１０、および／またはネットワークに接続されるデバイスと通信することができる。例えば、１つまたは複数のブリッジは、ネットワークタイミングおよび同期のためのＩＥＥＥ８０２．１ＡＳ−２００１（ｇＰＴＰ）、ストリーミングデータを待ち行列に入れて転送するためのＩＥＥＥ８０２．１Ｑａｖ−２００９、ネットワーク内のデータストリーム帯域幅を予約するためのＩＥＥＥ８０２．１Ｑａｔ−２０１０（ＳＲＰ）、および／または可能なデータストリーミングフォーマットに関連するＩＥＥＥ１７２２−２０１１のような、イーサネット（登録商標）ＡＶＢプロトコルを通じて、またはそれらを使用して、ネットワーク１１０、および／またはネットワークに接続されるデバイスと通信することができる。さまざまな他のプロトコルが使用されてもよい。代替的にまたは付加的に、ネットワーク１１０は、インターネットのような広域ネットワーク（ＷＡＮ）、ローカルエリアネットワーク（ＬＡＮ）、キャンパスエリアネットワーク、都市規模ネットワーク、または、データ通信を可能にすることができる任意の他の無線および／もしくは有線接続ネットワークとすることができ、それらを含むことができ、かつ／またはそれらを通じて、もしくはそれらを使用して通信することができる。ネットワーク１１０は、複数のサブネットワークに分割されることができる。サブネットワークは、ネットワーク１１０に接続される構成要素のすべてへのアクセスを可能にすることができるか、またはサブネットワークは、ネットワーク１１０に接続される構成要素間のアクセスを制限することができる。ネットワーク１１０は、公衆または私的ネットワークとみなされることができ、例えば、仮想プライベートネットワーク、暗号化、または公衆インターネット上で採用される任意の他のセキュリティ機構などを含むことができる。さまざまな他のタイプのネットワーク１１０が可能である。
【００１６】
トーカ１３０、１３１、および１３２、リスナ１４０、１４１、および１４２、ならびに／またはトーカ／リスナ１５０のうちの１つまたは複数は、データ転送をサポートする任意の構成でネットワーク１１０に接続されることができる。これは、有線接続されるかまたは無線であり得るネットワーク１１０へのデータ接続を含むことができる。トーカ１３０、１３１、および１３２、リスナ１４０、１４１、および１４２、ならびに／またはトーカ／リスナ１５０のうちの１つまたは複数は、ケーブルまたはイーサネット（登録商標）ＡＶＢネットワークへの無線接続を使用するなどして、イーサネット（登録商標）接続を通じて、またはそれを用いて、イーサネット（登録商標）ＡＶＢネットワークに、かつ／または互いに接続されることができる。さまざまな他の接続が可能であり得る。
【００１７】
システムは、１つまたは複数のトーカシステム、またはトーカ１３０、１３１、および１３２を含むことができる。小規模の通信ネットワークでは、システムは２０以下のような少数のトーカのみを有する場合がある。他のより大きな通信システムでは、システムは数百、数千または可能性としては数百万のトーカを含む場合がある。さまざまな数のトーカが可能である。
【００１８】
トーカ１３０、１３１、および１３２は、図１０に示し後述するコンピュータシステム１０００のようなコンピュータシステムの機構の一部またはすべてであるかもしくはそれらを含む場合もあり、またはそれらでないかもしくはそれらを含まない場合もある。トーカ１３０、１３１、および１３２は、イーサネット（登録商標）ＡＶＢ使用可能かつ／または準拠とすることができる。トーカ１３０、１３１、および１３２は、１つまたは複数の標準規格またはプロトコルに従って、それらを通じて、かつ／またはそれらを使用するなどして、イーサネット（登録商標）ＡＶＢネットワークを通じて、かつ／またはそれを用いて通信するように構成され、適合され、動作可能であり、かつ／またはイネーブルされることができる。トーカ１３０とネットワーク１１０との間の通信に関連付けられるプロトコルの例は、ＩＥＥＥ８０２．１Ｑａｔ−２０１０において指定されるストリーム予約プロトコルであり得る。代替的にまたは付加的に、マルチＭＡＣレジストレーションプロトコル（「ＭＭＲＰ」）、ＩＥＥＥ  ８０２．１ＡＳ−２０１１（ｇＰＴＰ）、ＩＥＥＥ  ８０２．１Ｑａｖ−２００９、および／またはＩＥＥＥ  １７２２−２０１１のような、さまざまな他のプロトコルが使用されることができる。
【００１９】
トーカ１３０、１３１、および１３２は、ネットワーク１１０を通じて情報および／またはデータを送信するように構成され、適合され、動作可能であり、かつ／またはイネーブルされることができる。例えば、トーカ１３０、１３１、および１３２は、イーサネット（登録商標）ＡＶＢネットワークを通じて、使用して、または介して、データ、コマンド、および／またはコマンド信号を含む情報のストリームを送信するように構成および／または適合されることができる。イーサネット（登録商標）ＡＶＢネットワークを通じてなど、ネットワーク１１０を通じてトーカ１３０、１３１、および１３２によって送信される情報および／またはデータは、リスナ１４０、１４１、および１４２ならびに／またはトーカ／リスナ１５０のような、ネットワーク１１０に接続される他のデバイスによって受信されることができる。
【００２０】
トーカ１３０、１３１、および１３２は、さまざまな機能を実行し、かつ／またはさまざまな構成要素に接続されるか、もしくはそれらを含むことができる。例えば、トーカ１３０は、ネットワーク１１０、および、楽器またはマイクのような入力デバイスに接続されることができる。情報および／またはデータは、トーカ１３０またはトーカ１３０に接続されるデバイスに送信され、それらによって受信され、かつ／または他の様態で入力されることができる。例えば、ユーザは、トーカ１３０に接続されるマイクに向かって楽器を演奏するかまたは歌うことができ、楽器、歌、および／または音声に関する情報および／またはデータがトーカ１３０によって受信されることができる。
【００２１】
ネットワーク通信システム内のトーカ１３０、１３１、および１３２は、それ自体が（マイクのような）物理的デバイスである場合があるか、またはそのように記載されている場合があるが、いくつかのシステムにおいては、トーカは、図１０に示し後述するコンピュータシステム１０００の機構のいくつかまたはすべてのような、（マイクのような）トーカを制御するために使用され、かつ／またはそのために動作することができる、コンピュータまたは他の電子制御デバイスであることができるか、またはそれらを含むことができることが理解されるべきである。これらのシステムでは、コンピュータまたは他の電子制御デバイスは、ＡＶＢ使用可能であり、かつ／またはネットワーク１１０と直接通信することができる。加えて、コンピュータまたは他の電子制御デバイスは、有線または無線接続を用いるなどして、物理的デバイスまたは他のデバイスとさまざまな方法で通信することができる。さまざまな他の代替形態が可能である。
【００２２】
トーカ１３０は、さまざまな方法で受信された情報および／またはデータを処理することができる。例えば、トーカ１３０は、音楽信号のような受信された任意の信号を、アナログ信号からデジタル信号に変換することができる。他のシステムでは、コンピュータデバイスが受信された情報および／またはデータの処理を実行することができるとともに、処理された情報および／またはデータをトーカ１３０に送信することができる。さまざまな他の処理機能が、トーカ１３０および／またはトーカ１３０と通信するデバイスによって実行されることができる。
【００２３】
トーカ１３０は、データストリームおよび／またはイーサネット（登録商標）ＡＶＢ信号内で、それらを用いて、かつ／またはそれらを使用して、（「広告」）処理済み情報および／またはデータをネットワーク１１０に伝送、送信、出力、および／または広告することができる。そのような信号は例えば、ストリーム広告と称される場合がある。例えば、トーカ１３０は、トーカ１３０に接続されるデバイスにおいてユーザによって演奏された音楽に関連するデータを包含するデータストリームをイーサネット（登録商標）ＡＶＢネットワーク上に広告することができるストリーム広告を生成することができる。ストリーム広告内でネットワーク１１０上のトーカ１３０によって広告される情報および／またはデータは、さまざまなリスナ１４０、１４１、および１４２ならびに／またはトーカ／リスナ１５０のような、他のデバイスによって受信されることができる。さまざまな他の処理機能が、トーカ１３０によって実行されることができる。
【００２４】
各トーカ１３０、１３１、および１３２は、１つまたは複数のトーカ属性を有することができる。トーカ属性は、トーカ１３０および／またはトーカ１３０によって広告されるデータストリームに関する特性を指定し、含み、かつ／または他の様態で識別することができる。例えば、トーカ属性は、トーカ１３０がネットワーク１１０を介してマルチキャストすることになる、オーディオ、ビデオ、および／またはコマンドデータストリームのようなデータストリームを記述することができる。トーカ属性は、ネットワーク１１０を介してデバイスによって受信されるために、トーカ１３０によって広告されるデータストリームがどれだけの帯域幅を必要とし得るかを指定することができる。トーカ属性は、トーカ１３０から送信される情報および／またはデータがリスナ１４０に到達するのにどれだけの時間がかかり得るかを指定することができ、これはレイテンシまたはレイテンシ期間と称される場合がある。トーカ属性は、各リスナに関連する一意の識別番号または特性のセットによって、またはそれらを使用するなどして、トーカ１３０によって広告される情報および／またはデータ内でリスナが何に関心があり得るかを指定することができる。トーカ属性は、トーカ１３０および／またはトーカ１３０によって広告されるストリームのための一意のストリーム識別子（「ＩＤ」）を指定することができる。トーカ属性は、さまざまな他の情報および／またはデータを指定し、含み、かつ／または識別することができる。１つのトーカ属性は、ダウンロードのために必要とされる帯域幅に関する情報、およびトーカの一意のストリームＩＤのような複数の情報および／またはデータを含むことができる。いくつかのシステムでは、各トーカ属性は、ただ１つの情報および／またはデータに関連することができ、各トーカ１３０、１３１、および１３２は複数のトーカ属性を有することができる。他のシステムでは、各トーカ１３０、１３１、および１３２は、トーカに関する複数の情報および／またはデータを指定するただ１つのトーカ属性を有する。さまざまな組み合わせが可能である。
【００２５】
上記のように、トーカ属性は、トーカ１３０のためのストリームＩＤを指定することができる。トーカ１３０のストリームＩＤは、１つのトーカ１３０のみに割り当てられることができる、一意の文字列および／または数字の列とすることができる。いくつかのシステムにおいては、どの２つのトーカも同じストリームＩＤを有し得ない。その後、トーカ１３０の一意のストリームＩＤの識別は、情報および／またはデータのソースを確実に識別するために、デバイスおよび／またはネットワークによって使用されることができる。例えば、デバイスは、イーサネット（登録商標）ＡＶＢネットワークを介して一意のストリームＩＤを含むデータストリームのためのストリーム広告を受信することができ、一意のストリームＩＤの識別に基づいて、データストリームを広告したトーカを判断することができる。ストリームＩＤのさまざまな他の用途が可能である。一意のストリームＩＤは６４ビットストリームＩＤとすることができるか、またはさまざまな他のストリームＩＤが使用されることができる。トーカ１３０は、製造者などによってトーカ１３０が製造されるときに、トーカ１３０自体によって生成されることなどによって製造後に、コントローラ１９０などによってトーカ１３０がネットワーク１１０に接続されるときに、かつ／またはさまざまな他の時点において一意のストリームＩＤを割り当てられることができる。
【００２６】
１つまたは複数のトーカ属性が、トーカ１３０、１３１、および１３２、リスナ１４０、１４１、および１４２、トーカ／リスナ１５０、ならびに／またはコントローラ１９０のうちの１つまたは複数に記憶されることができる。例えば、トーカ１３０の一意のストリームＩＤはコントローラ１９０に送信され、かつ／またはコントローラ１９０によって受信されることができ、コントローラ１９０は、トーカ１３０の一意のストリームＩＤを記録および／もしくは記憶し、かつ／またはトーカ１３０の一意のストリームＩＤを、非ＳＲＰプロトコルを通じて、用いて、または使用するなどして、１つまたは複数のリスナ１４０、１４１、および１４２に転送することができる。
【００２７】
ストリーム広告は、ネットワーク１１０を通じてわたされることができるトーカ１３０、１３１、または１３２からの信号および／または他の伝達とすることができる。トーカ１３０によって送信されるストリーム広告は、トーカ１３０が、当該トーカがネットワーク１１０を介して送信、マルチキャスト、および／または他の様態で伝送することができ、かつ／またはそうすることになるデータストリームを有することを指示することができる。ストリーム広告は、トーカ１３０によって広告および／または出力されるストリーム広告とともに送信され、かつ／またはその中に含まれることができる１つまたは複数のトーカ属性のような、データストリームに関する詳細を含むことができる。例えば、ストリーム広告は、ストリーム広告を使用してトーカ１３０によって広告されているデータストリームの一意のストリームＩＤを含むことができる。トーカ１３０によって送信されるストリーム広告は、ネットワーク１１０と通信している１つまたは複数のデバイスにネットワーク１１０を介して伝送され、かつ／または当該デバイスによって受信されることができる。いくつかのシステムにおいて、ストリーム広告は、ネットワーク１１０上のすべてのデバイスに送信される。
【００２８】
１つまたは複数のリスナ１４０、１４１、および１４２、ならびに／またはトーカ／リスナ１５０は、トーカからストリーム広告を受信することができる。リスナがストリーム広告によって広告されているデータストリームを受信することを望む場合、リスナは「リスナ待機（Ｌｉｓｔｅｎｅｒ  Ｒｅａｄｙ）」信号をブリッジ、ネットワーク１１０および／またはトーカに送信することができる。信号は、ストリーム広告内に含まれるストリームＩＤによってデータストリームにアタッチするための要求であることができる。イーサネット（登録商標）ＡＶＢブリッジは、「リスナ待機」信号をリスナから受信し、ブリッジはそれをトーカ広告とマッチングすることになり、ストリーム広告によって参照されるデータストリームが要求しているリスナに送信されることを許可する。１つまたは２つ以上のリスナが、１つのストリームＩＤを介して同じデータストリームを要求および／またはアタッチする場合がある。１つのリスナが２つ以上のデータストリームを、要求される各データストリームのストリームＩＤによって要求および／またはアタッチする場合がある。他の変形形態が可能である。
【００２９】
１つまたは複数のストリーム広告が、ネットワーク１１０を用いて、通じて、かつ／または使用して個別にかつ／または単独で送信および／またはアクセスされる場合がある。１つまたは複数のストリーム広告が、リスナ１４０、１４１、および１４２、トーカ／リスナ１５０、ならびに／またはコントローラ１９０のような、ネットワーク１１０上の１つまたは複数の受信デバイスに送信され、それらによってアクセスされ、かつ／または受信されることができる。ストリーム広告および／またはトーカ属性のさまざまな他の用途および機能が可能である。
【００３０】
システムは、１つまたは複数のリスナシステム、またはリスナ１４０、１４１、および１４２を含むことができる。小規模のネットワークでは、システムは２０以下のような少数のリスナのみを有する場合がある。他のより大きな通信システムでは、システムは数百、数千または可能性としては数百万のリスナを含む場合がある。さまざまな数のリスナが可能である。
【００３１】
リスナ１４０、１４１、および１４２は、図１０に示し後述するコンピュータシステム１０００のようなコンピュータシステムの機構の一部またはすべてであるかもしくはそれらを含む場合もあり、またはそれらでないかもしくはそれらを含まない場合もある。リスナ１４０、１４１、および１４２は、イーサネット（登録商標）ＡＶＢ使用可能かつ／または準拠とすることができる。リスナ１４０、１４１、および１４２は、例えば、ＩＥＥＥ８０２．１ＡＳ−２０１１（ｇＰＴＰ）、ＩＥＥＥ８０２．１Ｑａｖ−２００９、ＩＥＥＥ８０２．１Ｑａｔ−２０１０（ＳＲＰ）、および／またはＩＥＥＥ１７２２−２０１１において確認されるストリーム予約プロトコルのような、１つまたは複数の標準規格またはプロトコルに従って、それらを通じて、かつ／またはそれらを使用するなどして、イーサネット（登録商標）ＡＶＢネットワークを通じて、かつ／またはそれを用いて通信するように構成され、適合され、動作可能であり、かつ／またはイネーブルされることができる。代替的に、ＭＭＲＰのようなさまざまな他のプロトコルが使用されてもよい。
【００３２】
リスナ１４０、１４１、および１４２は、ネットワーク１１０を介して、それを通じて、かつ／またはそれを使用してデータを含む情報を受信するように構成され、適合され、かつ／または動作可能であることができる。例えば、リスナ１４０は、イーサネット（登録商標）ＡＶＢネットワークのようなネットワーク１１０を通過するストリーム広告および／またはデータストリームを受信するように構成および／または適合されることができる。リスナ１４０、１４１、および１４２によって受信される情報および／またはデータは、例えば、トーカ１３０、１３１、および１３２によって送信される情報および／もしくはデータ、コントローラ１９０によって送信される情報および／もしくはデータ、ならびに／またはネットワーク１１０を通じてかつ／またはそれを使用して送信されるさまざまな他の情報および／もしくはデータとすることができる。いくつかのシステムにおいては、リスナ１４０、１４１、および１４２は、データストリームを広告する１つまたは複数のストリーム広告をトーカ１３０から受信することができる。リスナ１４０、１４１、および／または１４２は、トーカ１３０からのストリーム広告によって広告されているデータストリームに登録し、かつ／または当該データストリームを受信することができる。データストリームへの登録および／または受信は、保証された帯域幅でリスナ１４０、１４１、および１４２で受信される場合もあるし、またはされない場合もある。さまざまな他の可能性が存在する。
【００３３】
リスナ１４０、１４１、および１４２は、さまざまな機能を実行し、かつ／またはさまざまな構成要素を含むか、もしくはそれに接続されることができる。例えば、リスナ１４０は、ネットワーク１１０、および、スピーカまたはテレビ受像機モニタのような出力デバイスに接続されることができる。情報および／またはデータは、ネットワーク１１０を通じてリスナ１４０によって収集および／または他の様態で受信されることができる。例えば、楽器によって演奏された音符に関する情報および／またはデータがトーカ１３０によってネットワーク１１０を通じて送信されることができるとともに、リスナ１４０によって受信されることができる。リスナ１４０は、ネットワーク１１０を通じて受信された情報および／またはデータを処理することができる。リスナ１４０は、処理された情報および／またはデータをスピーカに出力することができる。例えば、リスナ１４０は、イーサネット（登録商標）ＡＶＢネットワークを通じて受信された信号に関連する情報および／またはデータをスピーカに出力することができる。
【００３４】
ネットワーク通信システム内のリスナ１４０、１４１、および１４２は、それ自体が（スピーカのような）物理的デバイスである場合があり、そのように記載されている場合があるが、いくつかのシステムにおいては、リスナは、図１０に示し後述するコンピュータシステム１０００の機構のいくつかまたはすべてのような、（スピーカのような）リスナを制御するために使用され、かつ／またはそのために動作することができる、コンピュータまたは他の電子制御デバイスであることができるか、またはそれらを含むことができることが理解されるべきである。これらのシステムでは、コンピュータまたは他の電子制御デバイスは、ＡＶＢ使用可能であり、かつ／またはネットワーク１１０と直接通信することができる。これらのシステムでは、コンピュータまたは他の電子制御デバイスは、標準的な有線または無線接続を用いるなどして、物理的デバイスまたは他のデバイスとさまざまな方法で通信することができる。さまざまな他の代替形態が可能である。
【００３５】
各リスナ１４０、１４１、および１４２は、１つまたは複数のリスナ属性を有することができる。リスナ属性は、例えば、リスナ待機、リスナ要求失敗（Ｌｉｓｔｅｎｅｒ  Ａｓｋｉｎｇ  Ｆａｉｌｅｄ）、および／またはリスナ待機失敗（Ｌｉｓｔｅｎｅｒ  Ｒｅａｄｙ  Ｆａｉｌｅｄ）の属性であることができる。これらの属性は、リスナがアタッチすることを望むストリームＩＤのような単一の情報を含有する場合もあるし、またはしない場合もある。
【００３６】
１つまたは複数のリスナ属性が、ネットワーク１１０を用いて、通じて、かつ／または使用して送信されることができる。１つまたは複数のリスナ属性が、トーカ１３０、１３１、および１３２、トーカ／リスナ１５０、ならびに／またはコントローラ１９０のような、ネットワーク１１０上の１つまたは複数の受信デバイスに送信され、それらによってアクセスされ、かつ／または受信されることができる。１つまたは複数のリスナ属性が、トーカ１３０、１３１、および１３２、リスナ１４０、１４１、および１４２、トーカ／リスナ１５０、ならびに／またはコントローラ１９０のうちの１つまたは複数に記憶されることができる。１つまたは複数のリスナ属性が、リスナをデータストリームおよび／またはトーカに接続するのに使用されることができる。リスナ属性のさまざまな他の用途および機能が可能である。
【００３７】
各リスナ１４０、１４１、および１４２は、付加的にまたは代替的に、リスナ１４０に関する特性を指定し、含み、かつ／または他の様態で識別することができる１つまたは複数のリスナ特性を有することができる。リスナ特性は、例えば、ストリーム予約プロトコルスタック２３０の外側に存在しかつ／もしくはそこで使用されることができ、かつ／またはネットワーク上のデバイスに、リスナの特性および／もしくは機能について通知するのに使用されることができる。例えば、リスナ特性は、トーカリスナ１４０が何に関心があり得るかを指定することができる。リスナ特性は、リスナ１４０のための一意のリスナＩＤを指定することができ、リスナＩＤは例えば、リスナ１４０をネットワーク１１０上の他のデバイスに対して一意に識別することができる。リスナ特性は、リスナ１４０が利用可能であり得る帯域幅、リスナ１４０が関心がありかつ／もしくは処理が可能であり得るデータストリームのタイプ、および／またはリスナ１４０のさまざまな他の機能のような、リスナ１４０の１つまたは複数の機能を識別することができる。リスナ特性は、付加的にまたは代替的に、リスナ１４０に関するさまざまな他の情報および／またはデータを指定することができる。１つのリスナ特性が、複数の情報および／またはデータを含むことができる。いくつかのシステムでは、各リスナ特性は、ただ１つの情報および／またはデータに関連することができ、各リスナ１４０、１４１、および１４２は複数のリスナ特性を有することができる。他のシステムでは、各リスナ１４０、１４１、および１４２は、リスナに関する複数の情報および／またはデータを指定するただ１つのリスナ特性を有する。さまざまな組み合わせが可能である。
【００３８】
トーカ／リスナ１５０は、ネットワーク１１０を通じて情報および／またはデータを送受信するように構成され、適合され、動作可能であり、かつ／またはイネーブルされることができる。従って、トーカ／リスナ１５０は、トーカ１３０およびリスナ１４０の能力および機能を含むことができる。いくつかのシステムにおいて、ネットワーク１１０に接続されるすべてのデバイスが、トーカ／リスナ１５０であってもよい。他のシステムにおいて、ネットワーク１１０に接続されるいくつかのデバイスが、トーカ／リスナ１５０であってもよく、またはいずれもがトーカ／リスナ１５０でなくてもよい。以下の論述においてはトーカ１３０およびリスナ１４０のみに対してのみ個別に言及するが、いくつかのシステムにおいては、論述されるトーカ１３０、１３１、および１３２ならびに／またはリスナ１４０、１４１、および１４２の機能および属性は、トーカ／リスナ１５０によって達成されてもよいことが理解されるべきである。さまざまな組み合わせが可能である。
【００３９】
システムは１つまたは複数のコントローラ１９０を含むことができる。コントローラ１９０は、図１０に示し後述するコンピュータシステム１０００のようなコンピュータシステムの機構の一部またはすべてであるかもしくはそれらを含む場合もあり、またはそれらでないかもしくはそれらを含まない場合もある。コントローラ１９０は、イーサネット（登録商標）ＡＶＢ使用可能かつ／または準拠であることができる。コントローラ１９０は、例えば、ＩＥＥＥ８０２．１ＡＳ−２０１１（ｇＰＴＰ）、ＩＥＥＥ８０２．１Ｑａｖ−２００９、ＩＥＥＥ８０２．１Ｑａｔ−２０１０（ＳＲＰ）、および／またはＩＥＥＥ１７２２−２０１１において概説されるストリーム予約プロトコルのような、１つまたは複数の標準規格またはプロトコルに従って、それらを通じて、かつ／またはそれらを用いるなどして、イーサネット（登録商標）ＡＶＢネットワークを用いて、かつ／またはそれを通じて通信するように構成され、適合され、動作可能であり、かつ／またはイネーブルされることができる。代替的に、ＭＭＲＰのようなさまざまな他のプロトコルが使用されてもよい。
【００４０】
コントローラ１９０は、イーサネット（登録商標）ＡＶＢネットワーク内のかつ／またはイーサネット（登録商標）ＡＶＢネットワークを使用して通信するトーカおよびリスナのような、ネットワーク１１０内のかつ／またはネットワーク１１０を使用して通信するトーカ１３０、１３１、および１３２、ならびにリスナ１４０、１４１、および１４２を識別することができる。コントローラ１９０は、トーカ１３０、１３１、および１３２、ならびにリスナ１４０、１４１、および１４２と直接的にまたは間接的に通信することができる。コントローラ１９０は、トーカ１３０、１３１、および１３２、ならびにリスナ１４０、１４１、および１４２に、それらから、またはそれらの間で情報を受信および通信することができる。例えば、コントローラ１９０は、一意のストリームＩＤまたは他のトーカ属性をトーカ１３０に読みだすかまたは割り当てることができ、かつ／またはトーカの一意のストリームＩＤおよび／または他のトーカ属性をリスナ１４０にわたすことができる。トーカ１３０、１３１、および１３２、ならびにリスナ１４０、１４１、および１４２とさまざまな他の通信および対話が可能である。
【００４１】
図２は、例示のリスナ２１０のブロック図であり、リスナ２１０は、図１におけるリスナ１４０、１４１、および１４２のうちの１つまたは複数と同様でありかつ／またはそれらと類似している場合がある。リスナ２１０内の機構はリスナ１４０、１４１、および１４２のうちの１つまたは複数の中に見出される場合があり、逆も同様である。
【００４２】
リスナ２１０は、プロセッサ、フィールドプログラマブルゲートアレイ（「ＦＰＧＡ」）、ハードウェアモジュール、ソフトウェアモジュール、ハードウェアモジュールとソフトウェアモジュールとの組み合わせ、メモリ、スタック、レイヤ、ならびに／または他のさまざまな他の構成要素および／もしくは機構を含むことができる。リスナ２１０は、上位層アプリケーション２２０、ストリーム予約プロトコルモジュール、もしくはストリーム予約プロトコルスタック２３０、ネットワークインタフェース２４０、ならびに／またはメモリ２７０のうちの１つまたは複数を含むことができる。ストリーム予約プロトコルスタック２３０は、マルチストリームレジストレーションプロトコル（「ＭＳＲＰ」）属性データベース２５０および／またはスパースモードエンジン２６０をさらに含むことができる。リスナ２１０は、開放型システム間相互接続モデル（ＯＳＩモデル）の機構に倣ってモデリングされる場合があるか、もしくはモデリングされない場合もあり、かつ／またはそれを含む場合があるかもしくはそれらを含まない場合もある。別の例では、リスナ２１０は２つ以上のデバイスを含むことができ、それによって、リスナ２１０のモジュールまたは構成要素のうちの１つまたは複数が異なる複数のデバイス内に配置されることができる。例えば、１つのデバイスがスパースモードエンジン２６０を含むことができ、一方で第２のデバイスがリスナ２１０の上位層アプリケーション２２０を含むことができる。他の変形形態が可能である。
【００４３】
上位層アプリケーション２２０は、上位層モジュール、上位層アプリケーションモジュール、上位層、および／またはスタックである場合があり、それらを含む場合があり、かつ／またはそれらとして参照される場合がある。上位層アプリケーション２２０は、プロセッサによって実行可能なソフトウェア、ハードウェア、またはそれらの何らかの組み合わせを含むことができる。リスナ２１０の上位層アプリケーション２２０は、リスナ２１０のための１つまたは複数の管理タスクを実行することができ、かつ／またはリスナ２１０の１つまたは複数の構成要素を統合および／もしくは組織化してリスナ２１０がリスナ２１０のために実施され得るタスクを実行することを確実にすることができる。上位層アプリケーション２２０は、例えば、ネットワーク１１０を介して広告および／または伝送され得るデータストリームを識別し、受信し、取得し、かつ／またはそれに関して学習することができる。
【００４４】
上位層アプリケーション２２０は、上位層アプリケーション２２０によってストリーム予約プロトコルスタック２３０から受信されるすべてのストリーム広告および／またはデータストリームに関する情報を記憶することができ、かつ／またはリスナ２１０に関連し得るデータストリームをリスナ２１０に接続される構成要素に送信することができる。例えば、上位層アプリケーション２２０は、メモリおよび／またはデータベースと通信しかつ／またはそれらを含むことができ、上位層アプリケーションはそれらを使用して、受信されるすべてのストリーム広告および／またはデータストリームに関連する情報を記憶することができる。上位層アプリケーション２２０によってアクセス可能でありかつ利用されるメモリおよび／またはデータベースは、上位層アプリケーション２２０の一部とすることができるか、または後述するメモリ２７０のような、リスナ２１０の別個の構成要素であることができる。メモリ２７０は、上位層アプリケーション２２０によって実行されるべき動作および／または機能に関する命令を含みかつ／または記憶することができる。さまざまな他の例が可能である。
【００４５】
上位層アプリケーション２２０は、リスナ２１０に送信されるデータストリームが、リスナ２１０に取り付けられている他の構成要素に通信されることができることを確実にすることができる。例えば、リスナ２１０がスピーカに接続されるかまたはスピーカを表す場合、上位層アプリケーション２２０は、ストリーム予約プロトコルスタック２３０から受信されるすべてのデータストリームから、スピーカによって出力されるべきオーディオ信号に関する情報および／またはデータを含むデータストリームを特定することができるとともに、この情報を処理しかつ／またはブロードキャストおよび／もしくは音声通信のためにスピーカに伝送することができる。さまざまな他の例が可能である。
【００４６】
上位層アプリケーション２２０は、付加的にまたは代替的に、リスナ２１０内のまたはリスナ２１０に接続されるプロセッサを構成することが可能であり得る。例えば、リスナ２１０が増幅器である場合、リスナ２１０の上位層アプリケーション２２０は、リスナ２１０のデジタル信号プロセッサを、バランス、音量、低音部、および／または高音部用に構成することができる。上位層アプリケーション２２０は、ネットワーク通信システム内のコントローラ１９０と通信することができる。例えば、コントローラ１９０は、リスナ２１０が取得するのに関心があり得るデータストリームを広告し得るトーカの１つまたは複数の一意のストリームＩＤのリストを送信することができる。コントローラ１９０は、リスナ２１０によって送信される可能性に基づいて、１つまたは複数のデータストリームに関してどの可能性をリスナが有し得るかを判断することができ、またリスナ２１０が登録するためにデータストリームのストリームＩＤを送信することができる。上位層アプリケーション２２０は、付加的にまたは代替的に、トーカからの対応するストリーム広告が受信されたときに「リスナ待機」アタッチ要求を起動するのに使用することができる。特定のリスナデバイスが、特定のストリームＩＤに対するアタッチメント要求を、ストリーム広告を受信しているか否かにかかわらず常に起動するように「ハードコード」されている場合があるシステムのような他のシステムでは、これは含まれていない場合がある。上位層アプリケーションののさまざまな他の機能が可能である。
【００４７】
リスナ２１０は、ストリーム予約プロトコルスタック２３０を含むことができる。ストリーム予約プロトコルスタック２３０は、リスナ２１０のためのプロトコルを識別し、指定し、表し、かつ／または含むことができる。例えば、ストリーム予約プロトコルスタック２３０は、ＩＥＥＥ  ８０２．１Ｑ−２０１１  ｃｌａｕｓｅ  ３５のようなＩＥＥＥ  ８０２．１Ｑにおいて確認され記載されているストリーム予約プロトコルであるか、もしくはそれを表すことができ、かつ／またはイーサネット（登録商標）ＡＶＢプロトコルの一部とすることができる。ストリーム広告のような、ネットワークインタフェース２４０を通じて受信される情報および／またはデータは、ストリーム予約プロトコルスタック２３０にわたされることができ、ストリーム予約プロトコルスタック２３０はこの情報および／またはデータを処理することができる。ストリーム予約プロトコルスタック２３０は、処理され、実施され、かつ／または伝送されるべき、受信されたストリーム広告のような、ネットワーク１１０から受信される情報および／またはデータのうちのいくらかまたはすべてを上位層アプリケーション２２０に伝送し、出力し、送信し、かつ／またはわたすことができる。いくつかのシステムでは、ストリーム予約プロトコルスタック２３０は、ストリーム広告を処理し、分析し、かつ／またはそれに関与するのみである場合がある。
【００４８】
いくつかのシステムでは、ストリーム予約プロトコルスタック２３０は、トーカデバイスがクラッシュするかまたはデータのストリーミングを停止するときに発生し得る、トーカからのストリーム広告の廃棄を伝送し、取り扱い、かつ／または処理することができる。いくつかのシステムでは、ストリーム予約プロトコルスタック２３０は、ＭＶＲＰならびにＭＳＲＰを使用することができる。ＭＶＲＰは、リスナ１４０がトーカ１３０と同じＶＬＡＮにアタッチすることを可能にすることができる。ストリーム予約プロトコルスタック２３０の他の機能が可能である。
【００４９】
ストリーム予約プロトコルスタック２３０は、ストリーム予約プロトコルモジュール、ストリーム予約プロトコルレイヤモジュール、ストリーム予約プロトコル、ストリーム予約プロトコルアプリケーション、および／またはストリーム予約プロトコルレイヤである場合があり、それらを含む場合があり、かつ／またはそれらとして参照される場合がある。ストリーム予約プロトコルスタック２３０は、プロセッサによって実行可能なソフトウェア、ハードウェア、またはそれらの何らかの組み合わせを含むことができる。ストリーム予約プロトコルスタック２３０は、メモリおよび／またはデータベースと通信しかつ／またはそれらを含むことができ、ストリーム予約プロトコルスタック２３０はそれらを使用して、受信されるストリーム広告に関する情報のような、情報および／またはデータを記憶することができる。ストリーム予約プロトコルスタック２３０によってアクセス可能でありかつ利用されるメモリおよび／またはデータベースは、ストリーム予約プロトコルスタック２３０の一部とすることができるか、または後述するメモリ２７０のような、リスナ２１０の別個の構成要素とすることができる。メモリ２７０は、ストリーム予約プロトコルスタック２３０によって実行されるべき動作および／または機能に関する命令を含みかつ／または記憶することができる。さまざまな他の例が可能である。
【００５０】
リスナ２１０は、ネットワークインタフェース２４０を含むことができる。ネットワークインタフェース２４０は、リスナ２１０の１つまたは複数の構成要素および／または機構とネットワーク１１０との間のインタフェースであることができる。ネットワークインタフェース２４０は、ネットワーク１１０から情報および／またはデータを受信することができ、かつ／または受信された情報および／またはデータをリスナ２１０のストリーム予約プロトコルスタック２３０にわたすことができる。いくつかのシステムでは、ネットワークインタフェース２４０は、リスナ２１０のストリーム予約プロトコルスタック２３０からの情報をネットワーク１１０に送信することができる。
【００５１】
リスナ２１０は、メモリ２７０を含むことができる。メモリ２７０は、ランダムアクセスメモリ、読み出し専用メモリ、プログラム可能読み出し専用メモリ、電気的プログラム可能読み出し専用メモリ、電気的消去可能読み出し専用メモリ、フラッシュメモリ、磁気テープまたはディスク、光媒体などを含むがこれらには限定されない、さまざまなタイプの揮発性および不揮発性記憶媒体のような、コンピュータ可読記憶媒体を含むことができるが、これには限定されない。１つの例では、メモリ２７０は、後述するコンピュータシステム１０００のプロセッサ１００２のようなプロセッサのためのキャッシュまたはランダムアクセスメモリを含むことができる。代替的な例では、メモリ２７０は、プロセッサのキャッシュメモリ、システムメモリ、または他のメモリのように、プロセッサから独立している。メモリ２７０は、データを記憶するための外部記憶デバイスまたはデータベースであることができる。例は、ハードドライブ、コンパクトディスク（「ＣＤ」）、デジタルビデオディスク（「ＤＶＤ」）、メモリカード、メモリスティック、フロッピー（登録商標）ディスク、ユニバーサルシリアルバス（「ＵＳＢ」）メモリデバイス、またはデータを記憶するように動作する任意の他のデバイスを含む。メモリ２７０は、プロセッサによって実行可能な命令を記憶するように動作可能であることができる。図面において例示されているかまたは説明されている機能、役割またはタスクは、メモリ２７０内に記憶されている命令を実行するプログラムされたプロセッサによって実行されることができる。機能、役割またはタスクは特定のタイプの命令セット、記憶媒体、プロセッサまたは処理ストラテジとは無関係であり、独立してまたは組み合わせにおいて動作しているソフトウェア、ハードウェア、集積回路、ファームウェア、マイクロコードなどによって実行されることができる。同様に、処理ストラテジは、マルチ処理、マルチタスキング、並列処理などを含むことができる。メモリ２７０は、上位層アプリケーション２２０、ストリーム予約プロトコルスタック２３０、ＭＳＲＰ属性データベース２５０、および／またはスパースモードエンジン２６０のような、リスナ２１０の１つまたは複数のモジュールによってアクセス可能であり、かつ／またはそれらと通信することができる。付加的にまたは代替的に、上位層アプリケーション２２０、ストリーム予約プロトコルスタック２３０、ＭＳＲＰ属性データベース２５０、および／またはスパースモードエンジン２６０のような、リスナ２１０のモジュールのうちの１つまたは複数は、内部メモリおよび／またはモジュールに特有のメモリを有することができ、これはメモリ２７０と類似または同様であり得る。
【００５２】
リスナ２１０のストリーム予約プロトコルスタック２３０は、ＭＳＲＰ属性データベース２５０を含み、それに接続され、かつ／またはそれと通信することができる。ＭＳＲＰ属性データベース２５０は、メモリを表すことができ、これはメモリ２７０、データ記憶バンク、および／またはさまざまな他の構成要素と類似かつ／または同様であり得る。ＭＳＲＰ属性データベース２５０は、図１０に示し後述するコンピュータシステム１０００のようなコンピュータシステムの１つまたは複数の機構であるかもしくはそれらを含む場合があり、またはそれらでないかもしくはそれらを含まない場合もある。ＭＳＲＰ属性データベース２５０は、トーカ属性および／またはトーカストリームＩＤのような新たな属性がネットワーク１１０上で登録されかつ／またはストリーム予約プロトコルスタック２３０によって受信されると、いつでも上位層アプリケーションに通知するように設計されることができるアプリケーションプログラミングインタフェース（「ＡＰＩ」）を有することができる。
【００５３】
上記のように、トーカ１３０、１３１、および１３２のうちの１つまたは複数はトーカ属性を有することができ、かつ／またはリスナ１４０、１４１、および１４２のうちの１つまたは複数はリスナ属性を有することができる。ＭＳＲＰ属性データベース２５０は、ネットワーク１１０上で、トーカ１３０、１３１、および１３２、ならびに／またはリスナ１４０、１４１、および１４２のための１つまたは複数のトーカ属性および／またはリスナ属性を含みかつ／または記憶するデータベースを表すことができる。例えば、ＭＳＲＰ属性データベース２５０は、イーサネット（登録商標）ＡＶＢネットワークのようなネットワーク１１０上の、または当該ネットワークに接続されるすべてのトーカ１３０、１３１、および１３２、ならびに／またはリスナ１４０、１４１、および１４２のための属性を含むことができる。ＭＳＲＰ属性データベース２５０において追跡されるかまたはその中に含まれる各トーカおよび／またはリスナについて、ＭＳＲＰ属性データベース２５０は、トーカおよび／もしくはリスナがどこにあるか、トーカからのデータストリームがどれだけの帯域幅を必要とし得るか、リスナにとってどれだけの帯域幅が利用可能であり得るか、トーカおよび／もしくはリスナのための一意のストリームＩＤ、ならびに／または種々の他の情報および／もしくはデータを記憶または識別することができる。ＭＳＲＰ属性データベース２５０は、例えば、第１の一意のストリームＩＤを有するトーカ１３０がイーサネット（登録商標）ＡＶＢネットワークに接続されていることを指示し、トーカ１３０からデータストリームを取得しかつ／またはそれに登録するためにどの情報および／またはデータをネットワーク１１０および／またはコントローラ１９０から要求するか、ならびに、リスナ１４０がトーカ１３０からデータストリームに登録しており、かつ／またはその受信を開始する場合にどの程度の割合のイーサネット（登録商標）接続が使用されることになるかを特定する情報および／またはデータを記憶することができる。ネットワーク１１０からの１つまたは複数のストリーム広告のような、ＭＳＲＰ属性データベース２５０によって受信される情報および／またはデータは、ストリーム予約プロトコルスタック２３０から上位層アプリケーション２２０に伝送され、出力され、送信され、かつ／またはわたされることができる。
【００５４】
いくつかのシステムでは、各トーカ１３０、１３１、および１３２、ならびに／またはリスナ１４０、１４１、および１４２内のＭＳＲＰ属性データベース２５０が、別個のかつ／または集合的なＭＳＲＰ属性データベースから作成および／または更新されることができる。この別個のかつ／または集合的なＭＳＲＰ属性データベースは、ネットワーク１１０上の複数のまたはすべてのトーカ１３０、１３１、および１３２、ならびに／またはリスナ１４０、１４１、および１４２のための１つのデータベースを表すことができる。例えば、別個のかつ／または集合的なＭＳＲＰ属性データベースは、ネットワーク１１０にアタッチされかつ／もしくはネットワーク１１０と通信することができ、かつ／または１つまたは複数のトーカ１３０、１３１、および１３２、ならびに／またはリスナ１４０、１４１、および１４２に関する情報および／またはデータを記憶することができる。各トーカ１３０、１３１、および１３２、ならびに／またはリスナ１４０、１４１、および１４２は、ＭＳＲＰ属性データベース２５０を含むことができ、かつ／または別個のかつ／または集合的なＭＳＲＰ属性データベースにアクセスすることが可能であり得る。
【００５５】
各トーカ１３０、１３１、および１３２、ならびに／またはリスナ１４０、１４１、および１４２のＭＳＲＰ属性データベース２５０は、別個のかつ／または集合的なＭＳＲＰ属性データベースの複製であることができ、かつ／または当該ＭＳＲＰ属性データベースからの情報を含むことができる。このようなシステムでは、別個のかつ／または集合的なＭＳＲＰ属性データベースは、連続的に更新されるか、またはさまざまな他の間隔をおいて更新されることができる。いくつかのシステムにおいては、別個のかつ／または集合的なＭＳＲＰ属性データベースは、トーカ１３０、１３１、および１３２、ならびに／またはリスナ１４０、１４１、および１４２のそれぞれのＭＳＲＰ属性データベース２５０のそれぞれにおいて受信および／または記憶されているストリーム広告および／またはデータストリームに関する情報および／またはデータに基づいて情報を収集および／または更新することができる。更新は、別個のかつ／または集合的なＭＳＲＰ属性データベースによって、各個々のトーカ１３０、１３１、および１３２、ならびに／またはリスナ１４０、１４１、および１４２のＭＳＲＰ属性データベース２５０に、１０〜１５秒ごとなどのようなさまざまな間隔をおいて送信されることができる。これらのシステムでは、トーカ１３０、１３１、および１３２、ならびに／またはリスナ１４０、１４１、および１４２のそれぞれのＭＳＲＰ属性データベース２５０は同じであることができる。
【００５６】
代替的な例では、ＭＳＲＰ属性データベース２５０は、トーカ１３０、１３１、および１３２、ならびに／またはリスナ１４０、１４１、および１４２のいずれの上にも全くない場合があるが、別個に存在しかつ／または当該トーカおよびリスナのうちの１つまたは複数と通信することができる。別の代替的な例では、別個のかつ／または集合的なＭＳＲＰ属性データベースの部分は、トーカまたはリスナが電源投入されると外部データベースから抽出され、トーカ１３０、１３１、および１３２、またはリスナ１４０、１４１、および１４２内の揮発性メモリ内に記憶されることができる。ＭＳＲＰ属性データベース２５０のさまざまな他の例、機能および／または機構が可能である。
【００５７】
ストリーム予約プロトコルスタック２３０は、スパースモードエンジン２６０をも含むことができる。スパースモードエンジン２６０は、スパースモードまたはフルモードにあるリスナ２１０の動作中に構成され、適合され、動作可能であり、かつ／または使用されることができる。スパースモードエンジン２６０は、上位層アプリケーション２２０、ＭＳＲＰ属性データベース２５０、および／またはネットワークインタフェース２４０と通信し、それらに接続し、かつ／または他の様態でそれらにデータを送信しかつ／もしくはそれらからデータを受信するようにイネーブルされることができる。スパースモードエンジンは、リスナシステムまたはリスナ２１０の追加のおよび／もしくは変更されたハードウェア構成要素であることができ、ソフトウェア内に符号化されかつ／もしくはリスナ２１０のメモリ内に記憶されることができ、かつ／またはハードウェアおよび／もしくはソフトウェアの組み合わせとすることができる。さまざまな他の組み合わせが可能である。
【００５８】
スパースモードエンジン２６０は、スパースモードモジュール、スパースモードレイヤ、スパースモードアプリケーション、および／またはスパースモードスタックである場合があり、それらを含む場合があり、かつ／またはそれらとして参照される場合がある。スパースモードエンジン２６０は、プロセッサ、プロセッサによって実行可能なソフトウェア、ハードウェア、またはそれらの何らかの組み合わせを含むことができる。スパースモードエンジン２６０は、メモリおよび／またはデータベースと通信しかつ／またはそれらを含むことができる。スパースモードエンジン２６０によってアクセス可能でありかつ利用されるメモリおよび／またはデータベースは、スパースモードエンジン２６０の一部とすることができるか、または後述するメモリ２７０のような、リスナ２１０の別個の構成要素とすることができる。メモリ２７０は、スパースモードエンジン２６０によって実行されるべき動作および／または機能に関する命令を含みかつ／または記憶することができる。さまざまな他の例が可能である。
【００５９】
スパースモードエンジン２６０は、さまざまな機能を実行することができる。スパースモードエンジン２６０は、ネットワーク１１０を介して広告および／または送信される１つまたは複数のストリーム広告を受信することができる。いくつかのシステムにおいては、スパースモードエンジン２６０は、ネットワーク１１０を介して広告および／または送信されるデータストリームに登録することができる。ストリーム広告はネットワーク１１０から直接、ネットワークインタフェース２４０から、かつ／またはさまざまな他の方法で受信されることができる。スパースモードエンジン２６０は、上位層アプリケーション２２０および／またはリスナ２１０にとって関心があるか、または他の様態でそれらによって要求され得る１つまたは複数のストリーム広告を受信、特定、および／または記憶することができる。スパースモードエンジン２６０は、ネットワーク１１０から１つまたは複数の受信されたストリーム広告を、リスナ２１０のＭＳＲＰ属性データベース２５０および／または上位層アプリケーション２２０に伝送し、出力し、送信し、かつ／またはわたすことができる。例えば、リスナ２１０がフルモードで動作しているとき、スパースモードエンジン２６０は、受信されたストリーム広告のほとんどまたはすべてを、ＭＳＲＰ属性データベース２５０および／または上位層アプリケーション２２０にわたすことができる。フルモードでは、スパースモードエンジン２６０は、ディセーブルされる場合があり、かつ／もしくは通過部として機能する場合があり、かつ／または比較および／またはフィルタリング機能のような他の機能を実行しない場合がある。
【００６０】
リスナ２１０がスパースモードで動作しているときのような別のモードでは、スパースモードエンジン２６０は、リスナ２１０にとって関心があり得る１つまたは複数のストリーム広告を特定するように構成され、適合され、そうすることが可能であり、かつ／またはそのように動作可能であることができる。スパースモードエンジン２６０は、１つまたは複数の指定されたストリームＩＤを上位層アプリケーション２２０から受信することができ、上位層アプリケーション２２０は、ネットワーク２１０を通じてまたは介して広告することができる１つまたは複数のデータストリームまたはトーカを特定しかつ／またはそれらに関連し得る。これらの指定されたストリームＩＤは、リスナ２１０が関心があるデータストリームを表すことができる。上位層アプリケーション２２０は、リスナ２１０および／または上位層アプリケーション２２０にとって関心があるデータまたはデータストリームに関する情報および／またはデータを、クエリ、信号、リストおよび／またはストリームＩＤクエリを通じて送信することができる。
【００６１】
スパースモードでは、スパースモードエンジン２６０は、スパースモードエンジン２６０がネットワーク１１０から受信することができるストリーム広告のそれぞれからの１つまたは複数のストリームＩＤを受信、特定、および／または決定することができる。例えば、上記のように、各トーカ１３０のストリームＩＤは、トーカ１３０によってネットワーク１１０を介して広告されるストリーム広告に直接アタッチされることができ、スパースモードエンジン２６０は、受信されたストリーム広告からストリームＩＤおよび／または他の情報を抽出するように構成されることができる。ストリームＩＤを特定するさまざまな他の方法が可能である。
【００６２】
スパースモードでは、スパースモードエンジン２６０は、１つまたは複数の広告されたデータストリームおよび／またはリスナ２１０によって受信されたストリーム広告のストリームＩＤを、上位層アプリケーション２２０および／またはリスナ２１０によって指定される１つまたは複数のストリームＩＤと比較するように構成され、適合され、そのように動作可能であり、かつ／またはそのために使用されることができる。スパースモードで動作しているとき、スパースモードエンジン２６０は、上位層アプリケーション２２０から受信されたストリームＩＤおよび／またはリスナ２１０もしくは上位層アプリケーション２２０にとって関心があるストリームＩＤのうちの少なくとも１つに一致するストリームＩＤを有するストリーム広告のみを、ＭＳＲＰ属性データベース２５０および／または上位層アプリケーション２２０に伝送し、出力し、送信し、かつ／またはわたすことができる。スパースモードエンジン２６０は、さまざまな他の機構を実行することができる。
【００６３】
ストリーム予約プロトコルスタック２３０および／またはリスナ２１０は、少なくとも２つのモードで動作することができる。例えば、図３は、フルモードで動作しているストリーム予約プロトコルスタック２３０および／またはリスナ２１０の例を示す。フルモードでは、ストリーム広告３１０、３１１、３１２、および３１３は、イーサネット（登録商標）ＡＶＢネットワークのようなネットワーク１１０に沿ってまたは当該ネットワークを通じて広告され、伝送され、送信され、通過し、かつ／または他の様態で通信されることができる。リスナ２１０のような１つまたは複数のリスナは、広告されたストリーム広告３１０、３１１、３１２、および３１３のそれぞれを受信および／または特定することができる。例えば、リスナ２１０は、ネットワーク１１０に追加されるかまたは当該ネットワークから除去されるすべてのストリーム広告３１０、３１１、３１２、および３１３のためのストリーム登録指示／ストリーム登録解除指示（ＲＥＧＩＳＴＥＲ＿ＳＴＲＥＡＭ．Ｉｎｄｉｃａｔｉｏｎ／ＤＥＲＥＧＩＳＴＥＲ＿ＳＴＲＥＡＭ．Ｉｎｄｉｃａｔｉｏｎ）を受信することができる。
【００６４】
ストリーム広告３１０、３１１、３１２、および３１３は、リスナ２１０によって直接、かつ／またはイーサネット（登録商標）ＡＶＢインタフェースのようなネットワークインタフェース２４０を通じてまたは使用して受信されることができる。ネットワーク１１０上で広告されるストリーム広告３１０、３１１、３１２、および３１３は、ストリーム広告３１０、３１１、３１２、および３１３を広告していたかつ／または伝送していた可能性のあるトーカ１３０、１３１、および１３２に関するトーカ属性を含む場合がある。例えば、各ストリーム広告３１０、３１１、３１２、および３１３は、そのストリーム広告を広告したトーカ１３０の一意のストリームＩＤを含み、かつ／またはそれに関連する場合がある。ストリーム広告３１０は「ａ」のストリームＩＤに関連しかつ／もしくはそれを有することができ、ストリーム広告３１１は「ｂ」のストリームＩＤに関連しかつ／もしくはそれを有することができ、ストリーム広告３１２は「ｃ」のストリームＩＤに関連しかつ／もしくはそれを有することができ、かつ／またはストリーム広告３１３は「ｄ」のストリームＩＤに関連しかつ／もしくはそれを有することができる。さまざまな他の構成が可能である。
【００６５】
ストリーム広告３１０、３１１、３１２、および３１３は、スパースモードエンジン２６０を通じて伝送され、出力され、送信され、かつ／またはわたされることができ、スパースモードエンジン２６０はディセーブルされる場合があり、かつ／またはストリーム広告３１０、３１１、３１２、および３１３に影響を及ぼさず、改変せず、処理せず、かつ／もしくは他の様態においても変更しない場合がある。ストリーム広告３１０、３１１、３１２、および３１３は、ＭＳＲＰ属性データベース２５０に伝送され、出力され、送信され、かつ／または他の様態でわたされることができる。ＭＳＲＰ属性データベース２５０は、ストリーム広告３１０、３１１、３１２、および３１３の受信を記録する場合もあるし、または記録しない場合もある。ＭＳＲＰ属性データベース２５０は、ストリーム広告３１０、３１１、３１２、および３１３を処理もしくは改変する場合もあるし、またはしない場合もある。ＭＳＲＰ属性データベース２５０は、ストリーム予約プロトコルスタック２３０によって受信されたストリーム広告３１０、３１１、３１２、および３１３のすべてを、アプリケーションプログラミングインタフェースを通じてまたは使用するなどして、上位層アプリケーション２２０に通知しかつ／またはわたすことができる。
【００６６】
フルモードでは、リスナ２１０によって受信されたすべてのストリーム広告３１０、３１１、３１２、および３１３は、最終的には上位層アプリケーション２２０に送信され得る。ストリーム予約プロトコルスタック２３０は、ネットワーク１１０に追加されるかまたは当該ネットワークから除去されるすべてのストリーム広告３１０、３１１、３１２、および３１３のためのストリーム登録指示／ストリーム登録解除指示（ＲＥＧＩＳＴＥＲ＿ＳＴＲＥＡＭ．Ｉｎｄｉｃａｔｉｏｎ／ＤＥＲＥＧＩＳＴＥＲ＿ＳＴＲＥＡＭ．Ｉｎｄｉｃａｔｉｏｎ）を、上位層アプリケーション２２０に送信することができる。いくつかのシステムでは、これによって、多くのメッセージがストリーム予約プロトコルスタック２３０と上位層アプリケーション２２０との間でやり取りされる結果になり得る。
【００６７】
上位層アプリケーション２２０は、ＭＳＲＰ属性データベース２５０から受信されるストリーム広告３１０、３１１、３１２、および３１３のすべてに関する情報を記憶することができる。いくつかのシステムにおいては、上位層アプリケーション２２０は、ストリーム広告３１０、３１１、３１２、および３１３のすべてよりも少ないもののみに関心があり得る。上位層アプリケーション２２０が関心がなく、受信することを望まず、考慮せず、処理することが可能でないかまたは専ら処理しない場合があり、かつ／または他の様態で上位層アプリケーション２２０にとって価値のないものであり得る１つまたは複数のデータストリームに関連するストリーム広告３１０、３１１、３１２、および３１３があり得る。上位層アプリケーション２２０は、受信されるストリーム広告３１０、３１１、３１２、および３１３のすべてに関する情報を記憶することができるが、いくつかのシステムにおいては、リスナ２１０が処理するようにプログラムされていないデータストリームに関連し得る機能および／またはストリーム広告３１０、３１１、３１２、および３１３を無視しながら、機能を実行し、操作を行い、かつ／またはストリーム広告３１０、３１１、３１２、および３１３のいくつかを処理することのみできる。上位層アプリケーション２２０は、ストリーム広告３１０、３１１、３１２、および３１３をすべて解析して、残りのストリーム広告３１０、３１１、３１２、および３１３から、関心がありかつ／または上位層アプリケーション２２０によって処理されることが可能であるとともに、そのように意図されるストリーム広告および／または広告されるデータストリームを判断することができる。上位層アプリケーション２２０は、上位層アプリケーション２２０にとって関心がないストリーム広告３１０、３１１、３１２、および３１３に対してそれ以上の操作を行わない場合がある。このように、いくつかのシステムにおいては、リスナ２１０の上位層アプリケーション２２０は、リスナ２１０が記憶することを必要としない場合があるストリーム広告に関する情報および／またはデータを受信および記憶する場合がある。
【００６８】
図４は、スパースモードで動作しているストリーム予約プロトコルスタック２３０および／またはリスナ２１０の例を示す。スパースモードは、トーカが新たなストリームをネットワーク上に登録すると発生し得る、ＩＥＥＥ  ８０２．１Ｑａｔ  ｃｌａｕｓｅ  ３５．２．３．１．２において詳述されている指示のような、ストリーム登録指示（ＲＥＧＩＳＴＥＲ＿ＳＴＲＥＡＭ．Ｉｎｄｉｃａｔｉｏｎ）に直接影響を及ぼすことができる。スパースモードは、加えてまたは代替的に、トーカがストリーム登録を削除すると発生し得る、ＩＥＥＥ  ８０２．１Ｑａｔ  ｃｌａｕｓｅ  ３５．２．３．１．４において詳述されている指示のような、ストリーム登録解除指示（ＤＥＲＥＧＩＳＴＥＲ＿ＳＴＲＥＡＭ．Ｉｎｄｉｃａｔｉｏｎ）に直接影響を及ぼすことができる。他の変形形態が可能である。
【００６９】
ストリーム予約プロトコルスタック２３０および／またはリスナ２１０は、フルモードまたはスパースモードのいずれかで動作するように設定されることができる。ストリーム予約プロトコルスタック２３０および／またはリスナ２１０は、さまざまな方法で、フルモードとスパースモードとの間で切り替わるか、または交互に動作することができる。例えば、リスナ２１０の上位層アプリケーション２２０は、モード切り替え信号４１０をストリーム予約プロトコルスタック２３０に送信することができる。リスナ２１０がフルモードで動作している状況では、モード切り替え信号４１０は例えば、「モード＝スパース（Ｍｏｄｅ＝Ｓｐａｒｓｅ）」であり得る。ストリーム予約プロトコルスタック２３０および／またはリスナ２１０がスパースモードで動作している状況では、モード切り替え信号４１０は例えば、「モード＝フル（Ｍｏｄｅ＝Ｆｕｌｌ）」であり得る。リスナ２１０が異なるモードにおいて構成され、適合され、動作可能であり、かつ／または使用され得る場合など、さまざまな他のモード切り替え信号４１０が可能であり得る。
【００７０】
ストリーム予約プロトコルスタック２３０によって受信されるモード切り替え信号４１０は、ストリーム予約プロトコルスタック２３０を、モード切り替え信号４１０によって指定されるモードにおいて作動するようにトリガおよび／または構成することができる。例えば、「モード＝スパース」を指定するモード切り替え信号４１０が受信される場合、ストリーム予約プロトコルスタック２３０はスパースモードで動作することができる。代替的に、「モード＝フル」を指定するモード切り替え信号４１０が受信される場合、ストリーム予約プロトコルスタック２３０はフルモードで動作することができる。さまざまな他の構成が可能である。
【００７１】
モード切り替え信号４１０を介してなどでスパース動作モードが望ましくかつ／または指定される場合、上位層アプリケーション２２０は付加的にまたは代替的に、１つまたは複数のストリームＩＤを、ストリーム予約プロトコルスタック２３０および／またはスペアモードエンジン２６０に送信することができる。例えば、上位層アプリケーション２２０は、リスナ２１０および／または上位層アプリケーション２２０にとって関心があり得る１つまたは複数のストリームＩＤを特定するストリームＩＤクエリ４２０をスパースモードエンジン２６０に送信することができる。例えば、上位層アプリケーション２２０は、「ＳＩＤ＝ｃ」を指示するストリームＩＤクエリ４２０をスパースモードエンジンに送信することができる。この「ＳＩＤ＝ｃ」のストリームＩＤクエリ４２０は、もし「ｃ」のストリームＩＤを有するデータストリームがネットワーク１１０を通じてまたは介して送信されているものとして特定されるときは、リスナ２１０が「ｃ」のストリームＩＤを有するデータストリームを受信することに関心があることを指示することができる。ストリームＩＤクエリ４２０は、加えてまたは代替的に、上位層アプリケーション２２０および／またはリスナ２１０がもはや関心がないものであり得るストリームＩＤを特定する場合がある。
【００７２】
ストリームＩＤクエリ４２０は、クエリ登録（ＲＥＧＩＳＴＥＲ＿ＱＵＥＲＹ）クエリの形態である場合があるか、もしくはそうでない場合もあり、かつ／またはストリームＩＤがネットワークに追加されるかまたはネットワークから削除されるときはいつでも、ストリーム予約プロトコルスタック２３０に、ストリーム登録指示（ＲＥＧＩＳＴＥＲ＿ＳＴＲＥＡＭ．Ｉｎｄｉｃａｔｉｏｎ）指示を介してなどで、上位層アプリケーション２２０が特定のストリームＩＤに関心があるとともに通知されることを望んでいることを通知するために使用することができる。ストリームＩＤクエリ４２０の例は以下のものであり得る：
ｉｎｔ  クエリ登録  （ストリームＩＤ＿ｔ  ＊ストリームＩＤ）（ｉｎｔ  ＲＥＧＩＳＴＥＲ＿ＱＵＥＲＹ  （ｓｔｒｅａｍＩＤ＿ｔ  ＊ｓｔｒｅａｍＩＤ））
この関数は、リスナ２１０がスパースモードにあるときに、リスナの関心リストからストリームを登録するために呼び出されることができる。「ストリームＩＤ（ｓｔｒｅａｍＩＤ）」はストリームを特定するためのストリームＩＤ＿ｔ（ｓｔｒｅａｍＩＤ＿ｔ）構造に対するポインタであり得る。成功した場合「０」が返されることができ、失敗した場合「−１」が返されることができる。
【００７３】
ストリームＩＤクエリ４２０は、クエリ登録解除（ＤＥＲＥＧＩＳＴＥＲ＿ＱＵＥＲＹ）クエリであり得るか、またはその形態であり得、かつ／またはストリーム予約プロトコルスタック２３０に、上位層アプリケーション２２０が特定のストリームＩＤにもはや関心がないとともに、将来においてストリームについて通知されることを望んでいないことを通知するために使用することができる。ストリームＩＤクエリ４２０の例は以下のものであり得る：
ｉｎｔ  クエリ登録解除  （ストリームＩＤ＿ｔ  ＊ストリームＩＤ）（ｉｎｔ  ＤＥＲＥＧＩＳＴＥＲ＿ＱＵＥＲＹ  （ｓｔｒｅａｍＩＤ＿ｔ  ＊ｓｔｒｅａｍＩＤ））
この関数は、リスナ２１０がスパースモードにあるときに、リスナの関心リストからストリームを登録解除するために呼び出されることができる。「ストリームＩＤ（ｓｔｒｅａｍＩＤ）」はストリームを特定するためのストリームＩＤ＿ｔ（ｓｔｒｅａｍＩＤ＿ｔ）構造に対するポインタであり得る。成功した場合「０」が返されることができ、失敗した場合「−１」が返されることができる。
【００７４】
ストリームＩＤクエリ４２０は、２つ以上のストリームＩＤを含むことができ、かつ／または２つ以上のデータストリームを特定することができる。例えば、ストリームＩＤクエリ４２０は、もしデータストリーム「Ｔ」、「Ｕ」、および「Ｖ」のそれぞれがネットワーク１１０を通じて広告されているときは、リスナ２１０がこれらのデータストリームのそれぞれを受信することに関心があることを指示する、「ＳＩＤ＝Ｔ、Ｕ、Ｖ」を指示することができる。上位層アプリケーション２２０は、所与のストリームＩＤクエリ４２０において２つ以上のストリームＩＤを特定することができる。上位層アプリケーション２２０は、２つ以上のストリームＩＤクエリ４２０をストリーム予約プロトコルスタック２３０および／またはスパースモードエンジン２６０に送信することができる。さまざまな他の組み合わせが可能である。
【００７５】
ストリームＩＤクエリ４２０は、上位層アプリケーション２２０および／またはリスナ２１０が受信することを望みかつ／または受信するために登録することに関心がありかつ／またはそうしたい場合がある１つまたは複数のデータストリームのストリームＩＤを特定および／または指定することができる。リスナ２１０は、さまざまな理由でさまざまなデータストリームに関心がある場合がある。例えば、リスナ２１０は、リスナ２１０が処理および／またはさらに伝送することが可能であり、そのように指定されており、かつ／または他の様態でそうすることを要求されているデータストリームに関心がある場合がある。リスナ２１０は、付加的にまたは代替的に、コントローラ１９０が登録するようにリスナ２１０に指示したデータストリームに関心がある場合がある。例えば、リスナ２１０が左側スピーカである場合、リスナ２１０は、左側オーディオ信号に関連する情報および／またはデータに関心がある場合がある。スピーカは、左側オーディオデータストリームを出力するように構成されかつ／またはそのように動作可能であることができ、従ってネットワーク１１０を通じて送信される１つまたは複数の左側オーディオデータストリームに登録するように望み、そのように構成され、かつ／または適合されることができる。この例では、上位層アプリケーション２２０は、ストリームＩＤクエリ４２０を、マイクトーカおよび／またはギタートーカのような１つまたは複数のトーカから送信される１つまたは複数の左側オーディオデータストリームのためのストリームＩＤを指定するストリーム予約プロトコルスタック２３０および／またはスパースモードエンジン２６０に送信することができる。一方で、ビデオまたはコマンドデータストリームのような他のデータストリームは、通過させられるかまたはネットワーク１１０上にあることができ、リスナ２１０は、これらのビデオまたはコマンドデータストリームを処理することが可能でない場合がある。上位層アプリケーション２２０は、ビデオまたはコマンドデータストリームに関連するストリームＩＤを送信しない場合があり、従って、スピーカリスナ２１０によってビデオまたはコマンドストリーム広告および／またはデータストリームに関連する情報および／またはデータを受信および記憶することは、スピーカリスナ２１０にとってメモリおよび／または資源の無駄であり得る。
【００７６】
ストリーム予約プロトコルスタック２３０および／またはスパースモードエンジン２６０は、リスナ２１０が関心がある１つまたは複数のトーカまたはデータストリームのストリームＩＤを特定するストリームＩＤクエリ４２０を受信することができる。ストリーム予約プロトコルスタック２３０は、ストリームＩＤクエリ４２０において特定されたストリームＩＤおよび／または上位層アプリケーション２２０によって登録解除されたストリームＩＤの記憶を保持しかつ／またはそれらを追跡することができる。スパースモードエンジン２６０は、ネットワーク１１０を介して受信されたストリーム広告３１０、３１１、３１２、および３１３のそれぞれを、ストリームＩＤクエリ４２０において特定されたストリームＩＤおよび／またはストリーム予約プロトコルスタック２３０によって記憶されたストリームＩＤと比較することができる。スパースモードで動作しているときは、スパースモードエンジン２６０はストリームＩＤクエリ４２０において指定されたストリームＩＤを含まないかまたはそれに一致しないいかなるストリーム広告も、ＭＳＲＰ属性データベース２５０または上位層アプリケーション２２０に送信しない場合がある。スパースモードエンジン２６０は、ストリームＩＤクエリ４２０において特定されたストリームＩＤに一致するストリームＩＤであるかまたは当該ストリームＩＤを含むストリーム広告を送信、転送、または通過を許可するのみであり得る。スパースモードエンジン２６０は、リスナ２１０が関心がなく、処理することができず、かつ／またはさらに使用もしくは解釈することが可能でないデータストリームに関連するすべてのストリーム広告をフィルタリング除去することができる。さまざまな代替形態が可能である。
【００７７】
モード切り替え信号４１０とストリームＩＤクエリ４２０とは異なる信号であることができ、モード切り替え信号４１０がストリームＩＤクエリ４２０に先行して送信される。複数のストリームＩＤクエリ４２０がさまざまな時点において送信されることができる。他のシステムにおいては、モード切り替え信号４１０とストリームＩＤクエリ４２０とは同じ信号であることができ、かつ／またはストリーム予約プロトコルスタック２３０および／またはスパースモードエンジン２６０に同時に送信することができる。さまざまな組み合わせが可能である。
【００７８】
ストリーム広告３１２のようなストリーム広告は、ストリームＩＤクエリ４２０と共に送信されたストリームＩＤの１つまたは複数と一致し得るストリームＩＤを有し得る。例えば、ストリームＩＤクエリ４２０がストリームＩＤ「ｃ」を有するデータストリームを指定する場合、ストリームＩＤ「ｃ」を有するかまたは含むストリーム広告３１２がストリームＩＤクエリ４２０において指定されるストリームＩＤと一致することができる。スパースモードエンジン２６０は、ストリーム広告３１２がストリームＩＤクエリ４２０と共に送信されたストリームＩＤのうちの１つと一致するストリームＩＤを有することを特定および／または判断することができる。例えば、スパースモードエンジン２６０は、ストリーム広告３１０、３１１、３１２、および３１３からトーカ属性を特定、決定、および／または抽出することができる。トーカ属性は、ストリーム広告３１０、３１１、３１２、および３１３を広告したトーカのストリームＩＤを含み得る。スパースモードエンジン２６０は、抽出されたストリームＩＤを、ストリームＩＤクエリ４２０において特定されるストリームＩＤと比較することができ、かつ／またはストリームＩＤクエリ４２０からのストリームＩＤのうちの１つまたは複数と一致し得るストリーム広告３１２を確定することができる。
【００７９】
一致するストリーム広告３１２は、スパースモードエンジン２６０から、ＭＳＲＰ属性データベース２５０および／または上位層アプリケーション２２０に伝送され、出力され、送信され、かつ／またはわたされることができる。リスナ２１０がスパースモードで動作しているときのスパースモードエンジン２６０の動作は、リスナ２１０がフルモードで動作しているときのスパースモードエンジン２６０の動作と、ストリームＩＤクエリ４２０からのストリームＩＤを有しないかまたはそれと一致しないストリーム広告の残り３１０、３１１、および３１３が、スパースモードエンジン２６０からＭＳＲＰ属性データベース２５０に伝送されず、出力されず、送信されず、かつ／またはわたされない場合があるという点で異なっている場合がある。
【００８０】
ＭＳＲＰ属性データベース２５０は、一致するストリーム広告３１２の受信を記録する場合もあるし、または記録しない場合もある。ＭＳＲＰ属性データベース２５０は、ストリーム広告３１２を処理もしくは改変する場合もあるし、またはしない場合もある。いくつかのシステムにおいては、ＭＳＲＰ属性データベース２５０は、ストリームＩＤクエリ４２０に一致するストリーム広告のためのエントリのみを含む場合があり、かつ／またはストリーム広告３１０、３１１、３１２、および３１３のすべてのためのエントリを含まない場合がある。ＭＳＲＰ属性データベース２５０は、ストリーム広告３１２を上位層アプリケーション２２０にわたすことができる。
【００８１】
上位層アプリケーション２２０は、ＭＳＲＰ属性データベース２５０から受信されるストリーム広告３１２に関する情報を記憶することができる。上位層アプリケーション２２０は、受信されたストリーム広告３１２を処理および／または伝送することができる。他の機能が可能である。
【００８２】
ストリーム予約プロトコルスタック２３０および／またはリスナ２１０は、モード切り替え信号４１０を通じてもしくは使用して、かつ／またはコントローラ１９０の指示を受けてなどのさまざまな方法で、フルモード動作とスパースモード動作との間で交互に切り替わることができる。フルモードとスパースモードとの間、または様々な他のモード間での切り替えは、指示されたものでありかつ／または上位層アプリケーション２２０および／またはリスナ２１０によって受信される信号の結果としてのものであり得る。例えば、上位層アプリケーション２２０は、ネットワーク上のコントローラ１９０から信号を受信することができ、コントローラは、リスナ２１０がモード切り替え信号４１０を送信すべきでありかつ／または動作をスパースモードもしくはフルモードに切り替えるべきであることを指示することができる。他のシステムまたは状況においては、上位層アプリケーション２２０は、コントローラ１９０からのまたはネットワークを介しての信号の指示も受信もなしにモード切り替え信号４１０を送信することができる。例えば、上位層アプリケーション２２０は、一定量のメモリ、資源、および／または処理能力がリスナ２１０によって使用されたかまたは使用されていることを特定、判断、および／または認識することができる。上位層アプリケーション２２０は、この判断に基づいて、動作をフルモードからスパースモードに切り替えることができる。この例では、上位層アプリケーション２２０は、例えば、コントローラ１９０および／またはネットワーク１１０に、リスナ２１０にとって関心がありかつ／またはリスナ２１０によって処理されるトーカ属性および／またはストリームＩＤを問い合わせることができるか、または、これらのトーカ属性および／またはストリームＩＤを別の方法で特定することができる。上位層アプリケーション２２０は、その後、トーカ属性および／またはストリームＩＤをストリーム予約プロトコルスタックおよび／またはスパースモードエンジン２６０に転送することができる。さまざまな他の構成および方法が可能である。
【００８３】
ネットワーク通信システムは、イーサネット（登録商標）ＡＶＢ使用可能であり得るとともにスパースモードで動作することが可能であり得る１つまたは複数のデバイスを含むことができる。ネットワーク通信システムは、スパースモードを使用しないデバイスを含むことができる。このことは、ネットワーク通信システムがスパースモード動作に対応するために完全に刷新および／または変更されることを必要としない場合があるという点で有利であり得る。そうではなく、スパースモードで動作することが可能であるデバイスが非スパースモード使用可能デバイスに追加されかつ／または当該デバイスと混在されることができる。
【００８４】
図５は、リスナ２１０のストリーム予約プロトコルスタック２３０および／またはスパースモードエンジン２６０の動作の例を示す。図５の方法は、ブロック５０２において、フルモードで動作しているリスナによって開始することができる。方法はブロック５０４に進むことができ、ここで、ストリーム予約プロトコルスタック２３０は、ネットワーク１１０からすべてのストリーム広告３１０、３１１、３１２、および３１３を受信することができる。ブロック５０４において、受信されたストリーム広告３１０、３１１、３１２、および３１３のすべては、リスナ２１０の上位層アプリケーション２２０に伝送され、出力され、送信され、転送され、かつ／またはわたされることができる。
【００８５】
方法はブロック５０６に進むことができ、ここで、スパースモード信号が受信されたか否かが判断される。例えば、ブロック５０６において、「モード＝スパース（Ｍｏｄｅ＝Ｓｐａｒｓｅ）」を指定するモード切り替え信号４１０が上位層アプリケーション２２０からストリーム予約プロトコルスタック２３０によって受信されたか否かが判断され得る。ブロック５０６においてスパースモード信号が受信されていない場合、方法はブロック５０４に戻ることができる。いくつかの方法においては、ストリーム予約プロトコルスタック２３０は、すべてのストリーム広告をネットワーク１１０から連続的に受信することができるとともに、スパースモードを指定するモード切り替え信号４１０のようなスパースモード信号がストリーム予約プロトコルスタック２３０によって受信されるに至るまで、かつそのときまで、すべての受信されたストリーム広告を上位層アプリケーション２２０に転送することができ、その時点において方法はブロック５０６および５０８に進むことができる。
【００８６】
例えば、ブロック５０６において「モード＝スパース（Ｍｏｄｅ＝Ｓｐａｒｓｅ）」のようなモード切り替え信号４１０がストリーム予約プロトコルスタック２３０によって受信される場合、方法はブロック５０８に進むことができ、ここで、リスナ２１０はこの時点でスパースモードで動作する。ブロック５１０において、ストリーム予約プロトコルスタック２３０は、上位層アプリケーション２２０から、ストリームＩＤクエリ４２０内などで、関心があるデータストリームのＩＤを受信することができる。いくつかの方法では、ストリームＩＤクエリ４２０は、モード切り替え信号４１０の一部でありかつ／またはモード切り替え信号４１０と同時に受信されることができる。ストリームＩＤクエリ４２０において特定される、受信されたストリームＩＤは、例えば、スパースモードエンジン２６０内に記憶されることができる。ストリームＩＤクエリ４２０は、リスナ２１０がスパースモードで動作しているときはさまざまな時点において受信されることができる。
【００８７】
上位層アプリケーション２２０からリスナ２１０にとって関心があるストリームＩＤが受信または他の様態で特定もしくは確定された後、方法はブロック５１２に進むことができ、ここで、ストリーム予約プロトコルスタック２３０はネットワークからすべてのストリーム広告を受信する。ブロック５１２において、ストリーム予約プロトコルスタック２３０は、ストリームＩＤクエリ４２０内などで、上位層アプリケーション２２０によって特定されるストリームＩＤに一致するストリームＩＤを有するストリーム広告を転送するのみであり得る。例えば、スパースモードエンジン２６０は、ネットワーク１１０からまたはネットワーク１１０を介して受信されたストリーム広告のストリームＩＤを、ストリームＩＤクエリ４２０において特定されたストリームＩＤと比較することができ、また一致するストリームＩＤを有するストリーム広告のみを転送しかつ／またはその通過を許可し得る。
【００８８】
方法はブロック５１４に進むことができ、ここで、フルモード信号が受信されたか否かが判断される。例えば、ブロック５１４において、「モード＝フル（Ｍｏｄｅ＝Ｆｕｌｌ）」を指定するモード切り替え信号４１０が上位層アプリケーション２２０からストリーム予約プロトコルスタック２３０によって受信されたか否かが判断され得る。ブロック５１４においてフルモード信号が受信されていない場合、方法はブロック５１２に戻ることができる。いくつかの方法においては、ストリーム予約プロトコルスタック２３０は、すべてのストリーム広告をネットワーク１１０から連続的に受信することができ、また、フルモードを指定するモード切り替え信号４１０のようなフルモード信号がストリーム予約プロトコルスタック２３０によって受信されるに至るまで、かつそのときまで、一致するストリームＩＤを有するストリーム広告のみを転送することができ、その時点において方法はブロック５１４および５０２に進むことができる。
【００８９】
ブロック５１４において「モード＝フル（Ｍｏｄｅ＝Ｆｕｌｌ）」のようなモード切り替え信号４１０がストリーム予約プロトコルスタック２３０によって受信される場合、方法はブロック５０２に戻ることができ、ここで、リスナ２１０はこの時点でフルモードで動作する。フルモード信号が受信されなかった場合、方法はブロック５１２に戻ることができる。いくつかの他のシステムにおいて、フルモード信号が受信されていない場合、方法はブロック５１０に戻ることができる。他のシステムにおいて、方法はブロック５１２に戻ることができるが、スパースモードにおける動作の間のいずれの時点においても、上位層アプリケーション２２０によって特定される任意の新たなストリームＩＤを受け入れて追加することができる。
【００９０】
方法はリスナ２１０が動作している時に上述のように連続的に進むことができる。方法は、ブロック５０２においてフルモードで動作しているリスナ２１０によって開始するものとして示されているが、他の状況では、方法は、ブロック５０８においてスパースモードで動作しているリスナによって開始してもよい。いくつかのシステムにおいては、ブロック５１０などにおいてストリームＩＤが最初に特定および／または指定されると、このステップは後続の方法サイクルの間、かつ／またはリスナ２１０が動作モードをフルモードに切り替えて次いでスパースモードに戻った後はスキップすることができる。さまざまな他の代替形態および／または構成が可能である。
【００９１】
図６は、ネットワークからストリーム広告を受信したリスナ２１０の動作の方法を示す。方法は、ブロック６０２において開始することができる。ブロック６０４において、ストリーム予約プロトコルスタック２３０は、ネットワーク１１０から、ネットワーク１１０を介して、かつ／またはネットワーク１１０を通じてストリーム広告を受信することができる。ブロック６０６において、リスナ２１０がフルモードまたはスパースモードのいずれで動作しているかが判断され得る。ブロック６０６はネットワーク１１０からのストリーム広告の受信の後に発生する決定ブロックとして示される場合があるが、いくつかのシステムにおいては、ストリーム広告の受信の前に、どのモードでリスナ２１０が動作し得ているかが決定されかつ／または明らかである場合がある。
【００９２】
リスナ２１０がフルモードで動作している場合、方法はブロック６０８に進むことができ、ここで、ストリーム予約プロトコルスタック２３０は、受信されたストリーム広告を上位層アプリケーション２２０に転送することができる。このことは、例えば、ストリーム広告および／またはストリーム広告内に含まれる内容もしくは情報をどのトーカが広告したかにかかわらず、行われ得る。このブロック６０８において、スパースモードエンジン２６０は、例えば、すべてのストリームをＭＳＲＰ属性データベース２５０にそのまま転送することができ、ＭＳＲＰ属性データベース２５０は、その後、ストリーム広告を上位層アプリケーション２２０にそのままわたすことができる。代替的に、リスナ２１０がスパースモードで動作している場合、方法はブロック６１０に進むことができる。ブロック６１０において、スパースモードエンジン２６０は、ネットワーク１１０からの受信されたストリーム広告を、ストリームＩＤクエリ４２０において特定されるストリームＩＤのような、リスナ２１０および／または上位層アプリケーション２２０によってリスナ２１０にとって関心があるものとして特定される任意のストリームと比較することができる。ネットワーク１１０から受信されたストリーム広告が、ストリームＩＤクエリ４２０において指定されるストリームＩＤのいずれかのような、関心があるストリームの１つまたは複数と一致する場合、方法はブロック６１２に進むことができ、ここで、一致するストリーム広告はスパースモードエンジン２６０によって、ＭＳＲＰ属性データベース２５０に、および上位層アプリケーション２２０上に送信される。ブロック６１０において、受信されたストリーム広告が、ストリームＩＤクエリ４２０においてなどの、特定されるストリームと一致しない場合、方法はブロック６１４に進むことができ、いずれのストリーム広告も、ストリーム予約プロトコルスタック２３０によって上位層アプリケーション２２０に送信されない場合がある。この方法は、例えば、ストリーム広告がストリーム予約プロトコルスタック２３０によってネットワーク１１０から受信されるたびに繰り返されることができる。
【００９３】
コントローラ１９０は、いくつかのシステムにおいては、スパースモードで動作しているネットワーク通信システム、ならびに／またはさまざまなトーカ１３０、１３１、および１３２、ならびに／またはリスナ１４０、１４１、および１４２の動作に対して編成、組織化、および／または寄与することができる。例えば、コントローラ１９０は、ネットワーク１１０に接続されている場合がある１つまたは複数のトーカ１３０、１３１、および１３２を特定しかつ／または当該トーカと通信することができる。コントローラ１９０は、トーカ１３０、１３１、および１３２のそれぞれのための一意のストリームＩＤを特定し、指定し、割り当て、かつ／または他の様態で決定することができる。例えば、コントローラ１９０は、各トーカ１３０、１３１、および１３２のための指定されたストリームＩＤを記録および／または記憶することができる。代替的に、コントローラ１９０は、トーカ１３０、１３１、および１３２のそれぞれに、一意のストリームＩＤを割り当てることができ、割り当てられたストリームＩＤに関する情報および／またはデータを記録および／または記憶することができる。トーカ１３０、１３１、および１３２のそれぞれのためのストリームＩＤは互いに異なることができ、それによって、ストリームＩＤの識別によってストリームのソースであるトーカを特定することもできる。コントローラ１９０は、トーカ１３０、１３１、および１３２のいくつかまたはすべてのためのストリームＩＤの完全なリストを記憶しかつ／またはそれにアクセスすることができる。いくつかのシステムにおいては、コントローラ１９０は、トーカ１３０、１３１、および１３２のそれぞれに関する情報を有する別個のかつ／または集合的なＭＳＲＰ属性データベースにアクセスし、当該データベースを制御し、操作し、かつ／もしくは更新することができ、かつ／または更新を、トーカ１３０、１３１、および１３２、ならびに／またはリスナ１４０、１４１、および１４２のうちの１つまたは複数のＭＳＲＰ属性データベース２５０に通信することができる。
【００９４】
コントローラ１９０は、リスナ１４０、１４１、および１４２のうちの１つまたは複数を識別しかつ／または当該リスナと通信することができる。コントローラ１９０は、トーカ１３０、１３１、および１３２のいずれが、リスナ１４０、１４１、および１４２にとって重要であり、関連があり、かつ／または当該リスナによって使用されると期待されるかを特定および／または判断することができる。例えば、リスナ１４０、１４１、および１４２のそれぞれはコントローラ１９０によって受信および／または特定されることができるリスナ特性を含むことができる。リスナ特性は、リスナ１４０が要求し、必要とし、かつ／または関心があり得る特定のトーカおよび／またはデータタイプを特定することができる。例えば、スピーカであるリスナ１４０は、リスナ１４０が左側オーディオ信号に関連するデータストリームに関心があることを指示するリスナ特性を有する場合がある。コントローラ１９０は、スピーカと通信することができ、かつ／またはリスナ特性に基づいて、スピーカが左側オーディオ信号と関連するデータストリームのみに応答しかつ／もしくは要求することになることを判断することができる。他のシステムにおいては、ユーザは、コントローラ１９０に対して、どのトーカ１３０、１３１、および１３２ならびに／またはデータストリームに対してリスナ１４０、１４１、および１４２のうちの１つまたは複数が関心があり得るかを指定することができる。コントローラ１９０を用いた、リスナ１４０が要求するかまたは関心があり得るデータストリームを判断するさまざまな他の方法が可能である。
【００９５】
コントローラ１９０は、リスナ１４０、１４１、および１４２のうちの１つまたは複数に信号を送信しかつ／または他の様態で当該リスナと通信することができる。コントローラ１９０は、リスナ１４０、１４１、および１４２に、当該リスナ１４０、１４１、および１４２が関心があり得るストリームＩＤを通知および／または警告することができる。例えば、コントローラ１９０は、リスナ１４０の上位層アプリケーション２２０と通信し、上位層アプリケーション２２０に、リスナ１４０が関心があり得る１つまたは複数のストリームＩＤのリストを送信することができる。このコントローラ１９０からリスナ１４０への通信は、例えば、非ＳＲＰプロトコルを使用してかつ／またはストリーム予約プロトコルスタック２３０を使用することなく行われることができる。コントローラ１９０は、リスナ１４０に、ネットワーク１１０にわたってストリーム広告をリスンおよび／またはモニタするように指示するとともに、リスナ１４０が、ストリーム広告を用いて広告されているデータストリームのための特定のおよび／または指定されたストリームＩＤを見つけると、そのデータストリームを受信するために登録するように指示することができる。いくつかのシステムにおいては、リスナ１４０がその後スパースモードに入ると、コントローラ１９０からリスナ１４０に送信される１つまたは複数のストリームＩＤのリストは、上位層アプリケーション２２０からスパースモードエンジン２６０にストリームＩＤクエリ４２０として転送されることができ、システムは上述のように動作することができる。これらの方法で、例えば、コントローラ１９０はスパースモードで動作しているリスナ１４０を補助することができる。他の動作方法が可能である。
【００９６】
図７は、コントローラ１９０が、１つまたは複数のトーカ１３０、１３１、および１３２、ならびに／または１つまたは複数のリスナ１４０、１４１、および１４２を有するネットワーク通信システムにおいてスパースモードで機能し得る１つの方法を示す。方法はブロック７０２において開始することができ、ここで、コントローラ１９０は、一意のストリームＩＤを、ネットワーク１１０に接続している各トーカ１３０、１３１、および１３２に対して特定しかつ／または割り当てることができる。いくつかのシステムにおいては、コントローラ１９０は、各トーカ１３０、１３１、および１３２に対してすでに存在する、事前に割り当てられておりかつ／または指定されている一意のストリームＩＤを特定および／または決定するのみであり得る。他のシステムにおいては、コントローラ１９０は、一意のストリームＩＤを各トーカ１３０、１３１、および１３２に割り当てることができる。
【００９７】
ブロック７０４において、コントローラ１９０は、ネットワーク１１０に接続されておりコントローラ１９０によって以前に特定されていないリスナ１４０を特定することができる。ブロック７０６において、コントローラ１９０は、第１の特定されたトーカ１３０を特定されたリスナ１４０と比較することができる。コントローラ１９０は、トーカ属性、リスナ属性、リスナ特性の比較を通じて、かつ／またはコントローラ１９０において実施されるルールおよび／もしくはロジックを通じてなどで、第１の特定されたトーカ１３０からのストリーム広告および／またはデータストリームが特定されたリスナ１４０に関連しかつ／または当該リスナにとって関心があり得るか否かを判断することができる。マイクトーカとマイクスピーカリスナとの場合など、ストリーム広告および／またはデータストリームが関連し得る場合、方法はブロック７０８に移動することができる。ブロック７０８において、コントローラ１９０は、第１の特定されたトーカ１３０の一意のストリームＩＤを、特定されたリスナ１４０のための関連ストリームＩＤのリストの中に含めることができる。他方、ストリーム広告および／またはデータストリームが特定されたリスナ１４０に関連しない場合、方法はブロック７１０に進むことができ、コントローラ１９０は特定されたトーカ１３０の一意のストリームＩＤを無視しかつ／または追加しなくともよい。
【００９８】
ブロック７０８または７１０の後、方法はブロック７１２に進むことができ、ここで、まだ特定されたリスナ１４０と比較されていないトーカが存在するか否かが判断される。トーカ１３１〜１３２のような、トーカ１３１〜１３２からのストリーム広告および／またはデータストリームが特定されたリスナと関連し得るかを判断するためにまだリスナ１４０と比較されていないトーカが存在する場合、方法はブロック７０６に戻ることができ、トーカ１３１のような、以前に特定されていない別のトーカが比較されることができる。このプロセスは、すべてのトーカ１３０、１３１、および１３２がリスナ１４０と比較され、リスナ１４０に対するすべての可能なストリーム広告および／またはデータストリームの関連が考慮されるまで継続することができる。
【００９９】
ブロック７１２において特定されたリスナと比較されるべきトーカが残っていない場合、方法はブロック７１４に進むことができる。ブロック７１４において、コントローラ１９０は、ブロック７０６〜７１０において確定されたような、関連ストリームＩＤの完全なリストを、特定されたリスナ１４０に送信することができる。いくつかの状況においては、関連ストリームＩＤのリストは、一片の情報および／またはデータとして共に送信されることができる。他の状況においては、関連ストリームＩＤは、ブロック７０８の直後など、コントローラ１９０がストリームＩＤが関連し得ると判断するとすぐにリスナ１４０に送信されることができる。さまざまな他の構成が可能である。
【０１００】
ブロック７１４の後、方法はブロック７１６に進むことができ、ここで、リスナ１４１〜１４２のように、任意のリスナがコントローラ１９０によってまだ特定されていないかどうかが判断される。コントローラ１９０によって特定されていないリスナが存在する場合、方法はブロック７０４に戻ることができ、コントローラはリスナ１４１のような別のリスナを特定し、上述されたようにブロック７０６〜７１４を通じて進むことができる。この方法は、関連ストリームＩＤのリストがすべてのリスナ１４０、１４１、および１４２に送信されるまで継続することができる。ブロック７１６において、コントローラ１９０によってまだ特定されるべきであるリスナがない場合、方法はブロック７１８において終了することができる。他のシステムにおいては、コントローラ１９０は、ネットワーク上のすべてのトーカ１３０、１３１、および１３２、ならびに／またはリスナ１４０、１４１、および１４２を定期的にかつ／または連続的に検索し特定することができ、かつ／またはリスナ１４０、１４１、および１４２に送信される関連ストリームＩＤのリストを更新することができる。さまざまな他の方法が可能である。
【０１０１】
図８は、多数のトーカおよびリスナならびにコントローラを接続するネットワーク８１０を含むことができるオーディオビデオネットワークシステムの例を示す。ネットワーク８１０は、ネットワーク１１０であるかまたはそれに類似することができる。ネットワーク１１０は、例えば、イーサネット（登録商標）ＡＶＢネットワークであることができる。他の変形形態が可能である。
【０１０２】
オーディオビデオネットワークシステムは、正面ビデオカメラ８６０、側面ビデオカメラ８６５、およびマイク８７０のような、１つまたは複数のトーカを含むことができる。正面ビデオカメラ８６０、側面ビデオカメラ８６５、およびマイク８７０のうちの１つまたは複数は、イーサネット（登録商標）ＡＶＢ使用可能デバイスとすることができる。いくつかのシステムにおいて、オーディオビデオネットワークシステムは、より多くのトーカを含んでもよいし、またはより少ないトーカを含んでもよい。例えば、オーディオビデオネットワークは、ステージ上で１０の異なる位置においてビデオを記録する１０個の異なるビデオカメラ、１０の異なる音源から音響を記録する１０個の異なるマイク、および／またはさまざまな他のトーカを含むことができる。さまざまな数および組み合わせのトーカが、ネットワーク内に含まれることができる。オーディオビデオネットワークシステム内のトーカは、ビデオカメラまたはマイクのように、それ自体が実際のデバイスである場合があるか、またはそのように記載されている場合があるが、いくつかのシステムにおいては、トーカは、図１０に示し後述するコンピュータシステム１０００の機構のいくつかまたはすべてのような、ビデオカメラまたはマイクを制御するために使用され、かつ／またはそのために動作することができる、コンピュータまたは他の電子制御デバイスであることができるか、またはそれらを含むことができることが理解されるべきである。
【０１０３】
正面ビデオカメラ８６０は、例えば、ステージの正面に向けられるビデオカメラであることができる。側面ビデオカメラ８６５はステージの側面に向けられるビデオカメラであることができ、それ以外は正面ビデオカメラ８６０と同様に機能することができる。正面ビデオカメラ８６０および／または側面ビデオカメラ８６５は、正面ビデオカメラ８６０および／または側面ビデオカメラ８６５によって記録されたビデオに関連する情報およびデータを記録、受信、処理、および／または配信することができる。正面ビデオカメラ８６０および／または側面ビデオカメラ８６５は、正面ビデオカメラ８６０がイーサネット（登録商標）ＡＶＢネットワーク８１０を介して、データストリームまたは他のデータ信号を用いてまたは使用するなどして流すことを望む記録されたビデオに関連する情報および／またはデータを正面ビデオカメラ８６０が有していることを、ストリーム広告を通じてなどで、広告、出力、および／または通信することができる。このストリーム広告は、イーサネット（登録商標）ＡＶＢネットワーク８１０に接続されている他のトーカおよびリスナのうちの１つまたは複数によって受信されることができ、当該トーカまたはリスナは、そのストリームに関心がある場合は、その広告されているデータストリームに登録しかつ／または当該ストリームを受信することができる。正面ビデオカメラ８６０および側面ビデオカメラ８６５のうちの一方または両方は、同時のストリーム広告を用いるなどして、イーサネット（登録商標）ＡＶＢネットワーク８１０を介して同時に情報および／またはデータストリームを広告することができる。
【０１０４】
マイク８７０は、例えば、ステージ上に配置されるマイクであることができる。マイクは、マイク８７０によって記録される音響に関連する情報およびデータを記録、受信、処理、および／または配信することができる。マイク８７０は、マイク８７０がイーサネット（登録商標）ＡＶＢネットワーク８１０を介して、データストリームまたは他のデータ信号を用いてまたは使用するなどして、記録された音響に関連する情報および／またはデータを流すことを望んでいることを、ストリーム広告を通じてなどで、広告、出力、および／または通信することができる。このストリーム広告は、イーサネット（登録商標）ＡＶＢネットワーク８１０に接続されている他のトーカおよびリスナのうちの１つまたは複数によって受信されることができ、当該トーカまたはリスナは、そのストリームに関心がある場合は、その広告されているデータストリームに登録しかつ／または当該ストリームを受信することができる。情報は、同時のストリーム広告を用いるなどして、マイク８７０および１つまたは複数の他のトーカによって同時に広告されることができる。いくつかのシステムにおいては、データストリームに対する登録が受信されていない場合、マイク８７０のようなトーカによってデータは送信されない。
【０１０５】
オーディオビデオネットワークシステムは、左側照明８４０、右側照明８４５、左側スピーカ８５０、右側スピーカ８５５、側面モニタ８３５、および／または正面モニタ８４０のような、１つまたは複数のリスナを含むことができる。左側照明８４０、右側照明８４５、左側スピーカ８５０、右側スピーカ８５５、側面モニタ８３５、および／または正面モニタ８４０のうちの１つまたは複数は、イーサネット（登録商標）ＡＶＢ使用可能デバイスであることができる。いくつかのシステムにおいて、オーディオビデオネットワークシステムは、より多くのリスナを含んでもよいし、またはより少ないリスナを含んでもよい。例えば、オーディオビデオネットワークは、ステージ上で聴衆に向く１０の異なる位置にある１０個の異なるスピーカ、１０の異なるソースから１０の異なるビデオを見せる１０個の異なるテレビ受像機モニタ、および／またはさまざまな他のリスナを含むことができる。さまざまな数および組み合わせのリスナが、ネットワーク内に含まれることができる。オーディオビデオネットワークシステム内のリスナは、左側照明または正面モニタのように、それ自体が実際のデバイスである場合があるか、またはそのように記載されている場合があるが、いくつかのシステムにおいては、リスナは、図１０に示し後述するコンピュータシステム１０００の機構のいくつかまたはすべてのような、左側照明または正面モニタを制御するために使用され、かつ／またはそのために動作することができる、コンピュータまたは他の電子制御デバイスであることができるか、またはそれらを含むことができることが理解されるべきである。
【０１０６】
左側照明８４０および右側照明８４５は、例えば、照明、または当該照明に接続される照明制御電子機器であることができる。左側照明８４０および／または右側照明８４５は、ネットワーク８１０を介して受信される信号に基づいて動作することができる。例えば、音響調整卓８９０などからネットワークを介して「左側照明＝オン（ｌｅｆｔ  ｌｉｇｈｔｓ＝ＯＮ）」信号が受信されると、左側照明８４０は作動することができる。例えば、音響調整卓８９０などからネットワークを介して「右側照明＝オン（ｒｉｇｈｔ  ｌｉｇｈｔｓ＝ＯＮ）」信号が受信されると、右側照明８４５は作動することができる。左側照明８４０および／または右側照明８４５は、マイク８７０によって広告されるオーディオ信号のような他のコマンドまたは信号を処理しないかまたはそれらに対して何ら反応を示さない場合がある。左側照明８４０および／または右側照明８４５は、受信されたストリーム広告および／またはデータストリームに関する情報を受信および記憶する場合があるが、そうではなく、このようなコマンドまたは信号を無視する場合がある。
【０１０７】
左側スピーカ８５０および右側スピーカ８５５は、オーディオスピーカ、または左側および／または右側スピーカに接続されるオーディオスピーカ制御電子機器であることができる。左側スピーカ８５０および／または右側スピーカ８５５は、例えば、ネットワーク８１０を介して受信されるオーディオデータストリームまたは信号に応答しかつ／または当該ストリームまたは信号に基づいて動作することができる。例えば、左側スピーカ８５０は、音響調整卓８９０および／またはマイク８７０からの左側オーディオデータストリームのような、ネットワーク上の左側オーディオデータストリームまたは信号を処理および／または出力することができる。例えば、右側スピーカ８５５は、音響調整卓８９０および／またはマイク８７０からの右側オーディオデータストリームのような、ネットワーク上の右側オーディオデータストリームまたは信号を処理および／または出力することができる。左側スピーカ８５０および／または右側スピーカ８５５は、音響調整卓によって広告される照明制御信号、または正面ビデオカメラ８６０もしくは側面ビデオカメラ８６５によって広告されるビデオデータストリームもしくは信号のような、他のコマンドまたは信号を処理せずそれらに対して何ら反応を示さない場合がある。左側スピーカ８５０および／または右側スピーカ８５５は、受信されたストリーム広告および／またはデータストリームに関する情報を受信および記憶する場合があるが、そうではなく、このようなコマンドまたは信号を無視する場合がある。
【０１０８】
側面モニタ８３５および正面モニタ８３０は、テレビ受像機モニタのようなビデオモニタ、またはビデオモニタに接続されるビデオモニタ制御電子機器であることができる。側面モニタ８３５および／または正面モニタ８３０は、例えば、側面ビデオカメラ８６５および／または正面ビデオカメラ８６０によって広告および／または送信されるデータストリームのような、ネットワークを介して受信される受信ビデオデータストリームまたは信号に応答しかつ／または当該ストリームまたは信号に基づいて動作することができる。例えば、側面モニタ８３５は、側面ビデオカメラ８６５または音響調整卓８９０からの側面ビデオデータストリームのような、ネットワーク８１０を介して広告される側面ビデオデータストリームまたは信号を処理および／または出力することができる。正面モニタ８３０は、正面ビデオカメラ８６０または音響調整卓８９０からの正面ビデオデータストリームのような、ネットワーク８１０を介して広告される正面ビデオデータストリームまたは信号を処理および／または出力することができる。側面モニタ８３５および正面モニタ８３０は、音響調整卓８９０によって広告される照明制御信号、またはマイク８７０によって広告されるオーディオデータストリームもしくは信号のような、他のコマンドまたは信号を処理しないかまたはそれらに対して何ら反応を示さない場合がある。側面モニタ８３５および正面モニタ８３０は、受信されたストリーム広告および／またはデータストリームに関する情報を受信および記憶する場合があるが、そうではなく、このようなコマンドまたは信号を無視する場合がある。
【０１０９】
当該システムの音響調整卓８９０は、多数の機能を実行することができる。いくつかのシステムにおいて、トーカおよび／またはリスナのうちの１つまたはすべてが音響調整卓８９０に接続されることができる。音響調整卓８９０は、ネットワーク８１０を介してトーカによって送信されるストリーム広告、データストリームおよび／または信号のすべてに対するハブとして機能することができる。いくつかのシステムにおいては、音響調整卓８９０は、ネットワーク８１０を介してトーカによって送信され得るデータストリームを調整および／または処理することができる。他のシステムにおいては、１つまたは複数のトーカおよび／またはリスナが直接接続されることができ、かつ／あるいはトーカからのデータストリームがネットワーク８１０をわたって通過することができ、かつ／または音響調整卓８９０によって受信および／またはモニタもしくは制御されない場合がある。音響調整卓８９０は、ユーザが、ステージ上の演奏などの全体を通じてなどで、トーカおよびリスナの負担を事前調整、作成および／または編集することを可能にすることができるアプリケーションおよび／またはコンピュータプログラムであるかまたはそれらを含むことができる。
【０１１０】
音響調整卓８９０は、正面ビデオカメラ８６０、側面ビデオカメラ８６５、および／またはマイク８７０のような、トーカのそれぞれに関する情報を識別、指定、および／または記憶することができる。音響調整卓８９０は、特定のかつ／または一意のストリームＩＤを、トーカ８６０、８６５、および／または８７０のそれぞれに対して特定することができ、または場合によっては割り当てることができる。
【０１１１】
リスナ８３０、８３５、８４０、８４５、８５０、および／または８５５のうちのいずれかは、スパースモードまたはフルモードのような１つまたは複数のモードで動作することができる。いくつかのシステムにおいては、音響調整卓８９０は、リスナ８３０、８３５、８４０、８４５、８５０、および／または８５５のうちの１つまたは複数からの情報を識別および／または受信することができる。音響調整卓８９０は、リスナ８３０、８３５、８４０、８４５、８５０、および／または８５５のそれぞれにとって関心がありかつ／または当該リスナによって使用され得る、トーカ８６０、８６５、および／もしくは８７０、ストリーム広告、ストリームＩＤ、ならびに／またはトーカ８６０、８６５、および／もしくは８７０から送信されるデータストリームを特定および／または判断することができる。
【０１１２】
音響調整卓８９０は、リスナにとって関心がありかつ／または有用である、トーカ８６０、８６５、および／または８７０からのデータストリームの特定のかつ／または一意のストリームＩＤを、リスナ８３０、８３５、８４０、８４５、８５０、および／または８５５のそれぞれに通信することができる。音響調整卓８９０によって送信されるストリームＩＤは、スパースモードで操作され、操作されるべきであり、かつ／または操作されるように構成されもしくは動作可能である各リスナ内のスパースモードエンジン２６０に送信されることができる。各リスナ８３０、８３５、８４０、８４５、８５０、および／または８５５のスパースモードエンジン２６０は、次いで、音響調整卓８９０によって送信されるストリームＩＤと一致するストリームＩＤを有するストリーム広告のみを、スパースモードで動作しているリスナの上位層アプリケーション２２０上にわたすことができる。いくつかのシステムにおいては、音響調整卓８９０は、リスナにとって関心があるトーカの特定のかつ／または一意のストリームＩＤを、リスナがスパースモードで動作しているか、スパースモードで動作することが可能であるときにのみ、通信することができる。他のシステムにおいては、音響調整卓８９０は、リスナにとって関心があるトーカの特定のかつ／または一意のストリームＩＤを、すべてのリスナ８３０、８３５、８４０、８４５、８５０、および／または８５５に通信することができる。さまざまな他の組み合わせが可能である。スパースモードおよび／またはフルモードの両方で動作することが可能なリスナ８３０、８３５、８４０、８４５、８５０、および／または８５５のそれぞれは、上述のようなリスナ１４０、１４１、および１４２ならびに／またはリスナ２１０と同様にいずれかのモードで構成されかつ／または動作することができる。さまざまな他の構成が可能である。
【０１１３】
いくつかのシステムにおいては、コントローラ１９０は必要でもなく、含まれもしない場合がある。例えば、いくつかのシステムにおいては、１つまたは複数のリスナ１４０、１４１、および１４２は、リスナ１４０、１４１、および１４２が関心があり得る１つまたは複数のトーカ１３０、１３１、および１３２を知っているようにプログラムされることができる。これらのシステムでは、リスナ１４０、１４１、および１４２のスパースモードエンジン２６０は、リスナが関心があり得るストリームＩＤを特定するストリームＩＤクエリ４２０を上位層アプリケーション２２０から依然として受信することができるか、またはスパースモードエンジン２６０は、リスナが関心があるストリームＩＤを知るようにすでにプログラムされていることができる。これらのシステムでは、スパースモードエンジン２６０は、リスナ２１０にとって関連がないかまたは関心がないストリーム広告をフィルタリング除去するように動作することができる。
【０１１４】
例えば、トーカまたはリスナを長期間にわたって変更または追加する可能性が少ないシステムにおいては、コントローラ１９０が必要とされない場合がある状況が存在し得る。このようなシステムの一例は、図９に示す自動車通信システムであり得る。図９における自動車通信システムは、前部スピーカ９１０、後部スピーカ９１５、ＣＤプレイヤ９２０、ラジオ９３０、後部座席用表示モニタ９４０、ＤＶＤプレイヤ９５０、および／またはヘッドユニット９９０のうちの１つまたは複数を含むことができる。
【０１１５】
前部スピーカ９１０は、ＣＤプレイヤ９２０および／またはラジオ９３０によって広告されるオーディオデータストリームおよび／または信号から音響を認識および再生するようにプログラムされることができる。前部スピーカ９１０は、ＣＤプレイヤ９２０およびラジオ９３０の両方からオーディオデータストリームが受信されるときに、いずれのオーディオデータストリームおよび／または信号を再生するかを判断するためのルールおよび／またはロジックを含むことができる。
【０１１６】
前部スピーカ９１０は、リスナ１４０、１４１、および１４２ならびに／またはリスナ２１０のいずれかと同様でありかつ／または当該リスナに類似している場合がある。前部スピーカ９１０は、物理的なスピーカの動作を制御することができる上位層アプリケーション２２０と、スパースモードエンジン２６０を含むことができるストリーム予約プロトコルスタック２３０とを有することができる。上位層アプリケーション２２０および／またはスパースモードエンジン２６０は、前部スピーカ９１０にとって重要であるストリーム広告および／またはデータストリームのみが、トーカＣＤプレイヤ９２０およびトーカラジオ９３０からのストリーム広告および／またはデータストリームであり得るようにプログラムされかつ／またはそのことを認識していることができる。上位層アプリケーション２２０がプログラムされている場合、上位層アプリケーションは、フルモード動作およびスパースモード動作を開始しかつ／またはそれらの間で切り替えるためのモード切り替え信号４１０をスパースモードエンジン２６０に送信することができる。他のシステムにおいては、スパースモードエンジン２６０は、ストリームＩＤをすでに知っている場合がある。これらのシステムでは、スパースモードエンジン２６０は、連続的にスパースモードで永久的に駆動されかつ／もしくは動作することができ、または代替的に、上位層アプリケーション２２０からのモード切り替え信号４１０によって指示および／もしくは制御されることができる。いずれの場合においても、スパースモードでは、スパースモードエンジン２６０は、リスナ２１０において上述したように動作することができ、ＣＤプレイヤ９２０および／またはトーカラジオ９３０のストリームＩＤに一致するストリームＩＤを有するストリーム広告を伝送、出力、送信、転送、および／またはわたすのみであり得る。
【０１１７】
後部スピーカ９１５は、リスナ１４０、１４１、および１４２ならびに／またはリスナ２１０のいずれかと同様でありかつ／もしくは類似しており、かつ／または動作において前部スピーカ９１０に類似している場合がある。後部スピーカ９１５の上位層アプリケーション２２０および／またはスパースモードエンジン２６０は、後部スピーカ９１５にとって重要であるストリーム広告および／またはデータストリームのみが、トーカＣＤプレイヤ９２０、トーカラジオ９３０、および／またはＤＶＤプレイヤ９５０からのストリーム広告および／またはデータストリームであり得るようにプログラムされかつ／またはそのことを認識していることができる。後部スピーカ９１５は、ＣＤプレイヤ９２０、ラジオ９３０、および／またはＤＶＤプレイヤ９５０の２つ以上からオーディオデータストリームが受信されるときに、いずれのオーディオデータストリームおよび／または信号を再生するかを判断するためのルールおよび／またはロジックを含むことができる。上位層アプリケーション２２０がプログラムされている場合、上位層アプリケーションは、フルモード動作およびスパースモード動作を開始しかつ／またはそれらの間で切り替えるためのモード切り替え信号４１０をスパースモードエンジン２６０に送信することができる。他のシステムにおいては、スパースモードエンジン２６０は、ストリームＩＤをすでに知っている場合がある。これらのシステムでは、スパースモードエンジン２６０は、連続的にスパースモードで永久的に駆動されかつ／もしくは動作することができ、または代替的に、上位層アプリケーション２２０からのモード切り替え信号４１０によって指示および／もしくは制御されることができる。スパースモードでは、後部スピーカ９１５のスパースモードエンジン２６０は、リスナ２１０において上述したように動作することができ、ＣＤプレイヤ９２０、トーカラジオ９３０、および／またはＤＶＤプレイヤ９５０のストリームＩＤに一致するストリームＩＤを有するストリーム広告を伝送、出力、送信、転送、および／またはわたすのみであり得る。
【０１１８】
後部座席用表示モニタ９４０は、リスナ１４０、１４１、および１４２ならびに／またはリスナ２１０のいずれかと同様でありかつ／もしくは類似している場合があり、かつ／または動作において前部スピーカ９１０または後部スピーカ９１５に類似している場合がある。後部座席用表示モニタ９４０の上位層アプリケーション２２０および／またはスパースモードエンジン２６０は、後部座席用表示モニタ９４０にとって重要であるストリーム広告および／またはデータストリームのみが、ＤＶＤプレイヤ９５０からのストリーム広告および／またはデータストリームであり得るようにプログラムされかつ／またはそのことを認識していることができる。上位層アプリケーション２２０がプログラムされている場合、上位層アプリケーションは、フルモード動作およびスパースモード動作を開始しかつ／またはそれらの間で切り替えるためのモード切り替え信号４１０をスパースモードエンジン２６０に送信することができる。他のシステムにおいては、スパースモードエンジン２６０は、ストリームＩＤをすでに知っている場合がある。これらのシステムでは、スパースモードエンジン２６０は、連続的にスパースモードで永久的に駆動されかつ／もしくは動作することができ、または代替的に、上位層アプリケーション２２０からのモード切り替え信号４１０によって指示および／もしくは制御されることができる。スパースモードでは、後部座席用表示モニタ９４０のスパースモードエンジン２６０は、リスナ２１０において上述したように動作することができ、ＤＶＤプレイヤ９５０のストリームＩＤに一致するストリームＩＤを有するストリーム広告を伝送、出力、送信、転送、および／またはわたすのみであり得る。
【０１１９】
システムは、ヘッドユニット９９０をも含むことができる。いくつかの他のシステムにおいて、ヘッドユニット９９０はコントローラ１９０として機能することができるが、これは必須ではない。ヘッドユニット９９０は、状況によっては、ＣＤプレイヤ９２０、ラジオ９３０、および／またはＤＶＤプレイヤ９５０のようなトーカのうちの１つまたは複数を操作および／または制御することができる。いくつかのシステムにおいては、ヘッドユニット９９０は、リスナのうちの１つまたは複数によってどのデータストリームが処理および／または再生されるべきかを特定することができるルールまたはロジックを実行および／または決定することができるが、これは必須ではない。
【０１２０】
さまざまな他のシステムが、記載されているスパースモード機構および構成要素を使用しかつ／または組み込むことができる。例えば、ホームシアターシステムは、ＤＶＤプレイヤ、ＨＤＭＩデバイス、ｍｐ３プレイヤ、ケーブルテレビ用チューナ、衛星放送受信機、およびさまざまな他のトーカのような多数のトーカ、ならびに、スピーカ、テレビ受像機画面、およびさまざまな他のリスナのような多数のリスナを有することができる。いくつかのホームシアターシステムにおいて、オーディビデオ受信機または他の受信機のようなトーカ／リスナは、イーサネット（登録商標）ＡＶＢネットワークを介するなどして、トーカおよびリスナのうちの１つまたは複数にアタッチおよび／または接続されることができる。ホームシアターネットワークのトーカ、リスナ、および／またはトーカ／リスナは、トーカ１３０、１３１、および１３２、リスナ１４０、１４１、および１４２、ならびに／またはトーカ／リスナ１５０を操作しかつ／またはそれらに類似している場合がある。別の例では、スパースモードエンジンおよび／またはスパースモード機能は、マトリックスコントローラのような、多数の他のデバイスに追加されることができる。記載されているシステムおよび方法は多くの場合ＭＳＲＰ属性に関連して説明され得るが、これらの技法はマルチＭＡＣレジストレーションプロトコル（「ＭＭＲＰ」）属性にも同様に適用されることができることは理解されるべきである。他の変形形態が可能である。
【０１２１】
トーカ１３０、１３１、および１３２、リスナ１４０、１４１、および１４２、トーカ／リスナ１５０、ならびに／またはコントローラ１９０のうちの１つまたは複数は、図１０におけるコンピュータデバイスのような、さまざまな種類の１つまたは複数のコンピュータデバイスの一部またはすべてであることができ、かつ／またはそれらを含むことができる。図１０は、１０００との符号が付された汎用コンピュータシステムの一例を例示する。上位層アプリケーション２２０、ストリーム予約プロトコルスタック２３０、ＭＳＲＰ属性データベース２５０、および／またはスパースモードエンジン２６０のような、リスナ２１０由来の構成要素のいずれかは、コンピュータシステム１０００の一部またはすべてを含むことができる。コンピュータシステム１０００は、コンピュータシステム１０００に、開示される方法またはコンピュータベースの機能のうちのいずれか１つまたは複数を実行させるために実施されることが可能である命令のセットを含むことが可能である。コンピュータシステム１０００は、スタンドアロンデバイスとして動作することができるか、または、例えば、ネットワークを使用して、他のコンピュータシステムまたは周辺デバイスに接続されることができる。
【０１２２】
ネットワーク化された配備において、コンピュータシステム１０００は、サーバ−クライアントユーザネットワーク環境におけるサーバの容量内でもしくはクライアントユーザコンピュータとして、またはピアツーピア（もしくは分散型）ネットワーク環境におけるピアコンピュータシステムとして動作することができる。コンピュータシステム１０００はパーソナルコンピュータ（ＰＣ）、タブレットＰＣ、セットトップボックス（ＳＴＢ）、携帯情報端末（ＰＤＡ）、モバイルデバイス、パームトップコンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、通信デバイス、無線電話機、固定電話機、制御システム、カメラ、スキャナ、ファクシミリ装置、プリンタ、ポケットベル、個人信託装置、ウェブアプライアンス、ネットワークルータ、スイッチもしくはブリッジ、または、その装置によって為されるべき操作を指定する（順次またはそれ以外の）命令のセットを実行することが可能な任意の他の装置のようなさまざまなデバイスとして実施されるかまたはその中に組み込むことも可能である。特定の例では、コンピュータシステム１０００は、音声、音響、ビデオまたはデータ通信を提供する電子デバイスを使用して実施されることが可能である。さらに、単一のコンピュータシステム１０００が例示されているが、「システム」という用語は、１つまたは複数のコンピュータ機能を実行するための命令のセット、または複数のセットを個別にまたは連帯して実行するシステムまたはサブシステムの任意の集合を含むようにも解釈されるべきである。
【０１２３】
図１０に例示されるように、コンピュータシステム１０００は、プロセッサ１００２、例えば、中央処理装置（ＣＰＵ）、グラフィックス処理装置（ＧＰＵ）、またはその両方を含むことができる。プロセッサ１００２は、さまざまなシステム内の構成要素であることができる。例えば、プロセッサ１００２は、標準的なパーソナルコンピュータまたはワークステーションの一部であることができる。プロセッサ１００２は、１つまたは複数の汎用プロセッサ、デジタル信号プロセッサ、特定用途向け集積回路、フィールドプログラマブルゲートアレイ、サーバ、ネットワーク、デジタル回路、アナログ回路、それらの組み合わせ、またはデータを分析および処理するための、他の現在既知のもしくは将来開発されるデバイスであることができる。プロセッサ１００２は、手作業で生成される（すなわち、プログラムされる）コードのようなソフトウェアプログラムを実施することができる。
【０１２４】
「モジュール」という用語は、複数の実行可能モジュールを含むように定義され得る。本明細書に記載される場合、モジュールは、プロセッサ１００２のようなプロセッサによって実行可能なソフトウェア、ハードウェア、またはそれらの何らかの組み合わせを含むように定義される。ソフトウェアモジュールは、メモリ１００４のようなメモリ、または別のメモリデバイス内に記憶される、プロセッサ１００２または他のプロセッサによって実行可能である命令を含むことができる。ハードウェアモジュールは、プロセッサ１００２による実行のために実行可能であり、指示され、かつ／または制御されるさまざまなデバイス、構成要素、回路、ゲート、回路基板などを含むことができる。
【０１２５】
コンピュータシステム１０００は、バス１００８を介して通信することが可能であるメモリ１００４のようなメモリ１００４を含むことができる。メモリ１００４は、主記憶装置、静的記憶装置、または動的記憶装置であることができる。メモリ１００４は、ランダムアクセスメモリ、読み出し専用メモリ、プログラム可能読み出し専用メモリ、電気的プログラム可能読み出し専用メモリ、電気的消去可能読み出し専用メモリ、フラッシュメモリ、磁気テープまたはディスク、光ディスクなどを含むがこれらには限定されない、さまざまなタイプの揮発性および不揮発性記憶媒体のような、コンピュータ可読記憶媒体を含むことができるが、これには限定されない。１つの例では、メモリ１００４は、プロセッサ１００２のためのキャッシュまたはランダムアクセスメモリを含む。代替的な例では、メモリ１００４は、プロセッサのキャッシュメモリ、システムメモリ、または他のメモリのように、プロセッサ１００２から独立している。メモリ１００４は、データを記憶するための外部記憶デバイスまたはデータベースとすることができる。例は、ハードドライブ、コンパクトディスク（「ＣＤ」）、デジタルビデオディスク（「ＤＶＤ」）、メモリカード、メモリスティック、フロッピー（登録商標）ディスク、ユニバーサルシリアルバス（「ＵＳＢ」）メモリデバイス、またはデータを記憶するように動作する任意の他のデバイスを含む。メモリ１００４は、プロセッサ１００２によって実行可能な命令を記憶するように動作可能である。図面において例示されているかまたは説明される機能、役割またはタスクは、メモリ１００４内に記憶されている命令を実行するプログラムされたプロセッサ１００２によって実行されることができる。機能、役割またはタスクは特定のタイプの命令セット、記憶媒体、プロセッサまたは処理ストラテジとは無関係であり、独立してまたは組み合わせにおいて動作するソフトウェア、ハードウェア、集積回路、ファームウェア、マイクロコードなどによって実行されることができる。同様に、処理ストラテジは、マルチ処理、マルチタスキング、並列処理などを含むことができる。
【０１２６】
図示されるように、コンピュータシステム１０００は、液晶ディスプレイ（ＬＣＤ）、有機発光ダイオード（ＯＬＥＤ）、フラットパネルディスプレイ、ソリッドステートディスプレイ、陰極線管（ＣＲＴ）、プロジェクタ、プリンタ、または、確定された情報を出力するための他の現在既知のもしくは将来開発される表示デバイスのような表示装置１０１０をさらに含んでもよいし、含まなくてもよい。ディスプレイ１０１０は、ユーザが、プロセッサ１００２の機能を見るためのインタフェースとして、または具体的には、メモリ１００４もしくはドライブユニット１０１６内に記憶されているソフトウェアとのインタフェースとして機能することができる。
【０１２７】
付加的に、コンピュータシステム１０００は、ユーザがシステム１０００の構成要素のいずれかと対話することを可能にするように構成される入力デバイス１０１２を含むことができる。入力デバイス１０１２は、数字キーパッド、キーボード、もしくは、マウスのようなカーソル制御デバイス、またはジョイスティック、タッチスクリーンディスプレイ、遠隔制御装置、またはコンピュータシステム１０００と対話するように動作する任意の他のデバイスであることができる。
【０１２８】
図１０において図示されるような特定の例では、コンピュータシステム１０００は、ディスクまたは光学式ドライブユニット１０１６をも含むことができる。ディスクドライブユニット１０１６は、命令１０２４の１つまたは複数のセット、例えば、ソフトウェアが埋め込まれることができるコンピュータ可読媒体１０２２を含むことができる。さらに、命令１０２４は、記載されているような方法またはロジックのうちの１つまたは複数を具現化することができる。特定の例において、命令１０２４は、コンピュータシステム１０００による実行中にメモリ１００４内にかつ／またはプロセッサ１００２内に完全にまたは少なくとも部分的に存在することができる。メモリ１００４およびプロセッサ１００２は、上述のようなコンピュータ可読媒体をも含むことができる。
【０１２９】
本開示は、命令１０２４を含むかまたは伝播信号に応答して命令１０２４を受信および実行するコンピュータ可読媒体を企図しており、それによって、ネットワーク１０２６に接続されるデバイスがネットワーク１０２６を介して音声、ビデオ、音響、画像または任意の他のデータを通信することが可能である。さらに、命令１０２４は、通信ポートもしくはインタフェース１０２０を介して、かつ／またはバス１００８を使用してネットワーク１０２６を介して送信または受信されることができる。通信ポートまたはインタフェース１０２０は、プロセッサ１００２の一部であることができるか、または別個の構成要素であることができる。通信ポート１０２０は、ソフトウェアにおいて作成されることができるか、またはハードウェア内の物理接続であることができる。通信ポート１０２０は、ネットワーク１０２６、外部媒体、ディスプレイ１０１０、もしくはシステム１０００内の任意の他の構成要素、またはそれらの組み合わせに接続するように構成されることができる。ネットワーク１０２６との接続は有線イーサネット（登録商標）接続のような物理接続であることができるか、または、後述するように無線で確立されることができる。同様に、システム１０００の他の構成要素との追加の接続は、物理接続であることができるか、または、無線で確立されることができる。ネットワーク１０２６は、代替的に、バス１００８に直接接続されることができる。
【０１３０】
ネットワーク１０２６は、有線ネットワーク、無線ネットワーク、イーサネット（登録商標）ＡＶＢネットワーク、またはそれらの組み合わせを含むことができる。無線ネットワークは、携帯電話ネットワーク、８０２．１１、８０２．１６、８０２．２０、８０２．１ＱまたはＷｉＭａｘネットワークであることができる。さらに、ネットワーク１０２６は、インターネットのような公衆ネットワーク、イントラネットのような私的ネットワーク、またはそれらの組み合わせであることができ、ＴＣＰ／ＩＰベースのネットワークプロトコルを含むがそれには限定されない、現在利用可能であるかまたは将来開発されるさまざまなネットワークプロトコルを利用することができる。
【０１３１】
コンピュータ可読媒体は単一の媒体であるように示されているが、「コンピュータ可読媒体」という用語は、集中型もしくは分散型データベース、ならびに／または命令の１つもしくは複数のセットを記憶する、関連付けられるキャッシュおよびサーバのような、単一の媒体または複数の媒体を含むことができる。「コンピュータ可読媒体」という用語は、プロセッサによる実行のために命令のセットを記憶、符号化または搬送することが可能であるか、またはコンピュータシステムに、開示される方法または動作のうちのいずれか１つまたは複数を実行させる任意の媒体をも含むことができる。「コンピュータ可読媒体」は持続性であることができ、有形であることができる。
【０１３２】
一例では、コンピュータ可読媒体は、メモリカードまたは１つもしくは複数の不揮発性読み出し専用メモリを収容する他のパッケージのようなソリッドステートメモリを含むことが可能である。さらに、コンピュータ可読媒体は、ランダムアクセスメモリまたは他の揮発性書き換え可能メモリであることが可能である。付加的に、コンピュータ可読媒体は、ディスクもしくはテープのような磁気光または光媒体、または伝送媒体を介して通信される信号のような搬送波信号を捕捉するための他のストレージデバイスを含むことが可能である。電子メールに対するデジタルファイル添付または他の内蔵型の情報アーカイブもしくはアーカイブのセットは、有形記憶媒体である配布媒体とみなすことができる。従って、本開示は、コンピュータ可読媒体または配布媒体ならびに他の均等物および後続の媒体のうちのいずれか１つまたは複数を含むと考えられ、その中にデータまたは命令が記憶されることができる。
【０１３３】
代替的な例では、特定用途向け集積回路、プログラマブルロジックアレイおよび他のハードウェアデバイスのような専用ハードウェアの実施態様が、システムのさまざまな部分を実施するために構築されることが可能である。装置およびシステムを含むことができるアプリケーションは、さまざまな電子システムおよびコンピュータシステムを広範に含むことが可能である。記載されている１つまたは複数の例は、２つ以上の特定の相互接続されるハードウェアモジュールまたはデバイスを、当該モジュールの間でかつそれらを通じて通信されることが可能である関連する制御信号およびデータ信号を用いて使用して、または特定用途向け集積回路の部分として機能を実施することができる。従って、本発明のシステムはソフトウェア、ファームウェア、およびハードウェアの実施態様を包含する。
【０１３４】
記載されているシステムは、コンピュータシステムによって実行可能なソフトウェアプログラムによって実施されることができる。さらに、非限定的な例において、実施態様は、分散型処理、コンポーネント／オブジェクト分散型処理、および並列処理を含むことが可能である。代替的に、仮想コンピュータシステム処理が、システムのさまざまな部分を実施するために構築されることができる。
【０１３５】
システムは、いかなる特定の標準規格およびプロトコルを用いた動作にも限定されない。例えば、インターネットおよび他のパケット交換ネットワーク伝送のための標準規格（例えば、ＴＣＰ／ＩＰ、ＵＤＰ／ＩＰ、ＨＴＭＬ、ＨＴＴＰ）が使用されることができる。このような標準規格は、基本的に同じ機能を有する、より高速またはより効率的な均等物によって定期的に取って代わられる。従って、開示されているもののような同じまたは同様の機能を有する、置き換えられる標準規格およびプロトコルがそれらの均等物と考えられる。
【０１３６】
リスナ２１０のスパースモードにおける動作は、多くの理由でリスナ２１０にとって有利であり得る。ネットワーク１１０に接続されるリスナ１４０、１４１、および１４２は、上位層アプリケーション２２０においてリスナ１４０、１４１、および１４２にとって関心があるストリーム広告および／またはデータストリームを受信および記憶するように構成されかつ／または動作可能であることができる。このことによって、リスナ１４０、１４１、および１４２のメモリ、処理能力、および／または他の資源を解放することができ、これによって、それらは他の機能に専用とされかつ／またはそれらのために使用されることができる。スパースモードおよび／またはスパースモードエンジンは、イーサネット（登録商標）ＡＶＢエンドステーションおよび／またはデバイスが、当該デバイスが関心があるストリームＩＤに関連する情報のみを報告及び記憶することを可能にすることができる。リスナ２１０の上位層アプリケーション２２０は、リスナ２１０が関心がなくかつ／またはさらに処理しない場合があるストリーム広告および／またはデータストリームに関連する情報を受信しない場合があり、通して解析しなくてよい場合があり、かつ／または記憶しない場合がある。例えば、スピーカである場合があるリスナ２１０は、正面カメラからのビデオデータストリームを理解せず、処理せず、かつ／または考慮しない場合がある。リスナ２１０は、低電力の制限されたメモリデバイスである場合がある。しかしながら、フルモードでは、リスナ２１０は依然として、少なくとも正面カメラからのストリーム広告を受信することができ、ビデオデータストリームに関連する情報を考慮および／または記憶するように要求される場合がある。スパースモードでは、上位層アプリケーション２２０は、上位層アプリケーション２２０が関心がないストリーム広告を受信しない場合があり、ビデオデータストリームに対しては一切資源またはメモリを充てる必要がない場合がある。このように、上位層アプリケーション２２０および／またはリスナ２１０は、資源および／またはメモリを、上位層アプリケーション２２０に関連がない場合があるストリーム広告および／またはデータストリーム専用に使用しない場合がある。このことによって、上位層アプリケーション２２０および／またはリスナ２１０のための資源を解放することができ、当該資源は上位層アプリケーション２２０および／またはリスナ２１０にとってより関心がある他の処理に充てられることが可能である。
【０１３７】
スパースモードおよび／またはスパースモードエンジンは、ＡＶＢ使用可能デバイスにおけるＣＰＵオーバヘッドおよびメモリ記憶要件を低減することができ、これはより多くのデータストリームがネットワーク１１０に追加されるにつれて、ますます重要かつ効果的になり得る。このことによって、低電力かつ／または接地面積の小さいＡＶＢ使用可能デバイスが、ストリームの多いネットワークと共存することが可能となり得る。加えて、より強力なデバイスがスパースモードを利用して、より多くのシステム資源を、ユーザに対するより反応のよい「印象」を含むが、これには限定されない他の目的のために利用可能にすることができる。
【０１３８】
加えて、リスナ１４０、１４１、および１４２を、スパースモードで動作可能であるように構成することによって、スパースモードエンジン２６０の追加のような、必要な調整を最小限にすることができる。さらに、フルモードとスパースモードとの間の動作の切り替えは、スパースモードエンジン２６０に送信されるモード切り替え信号４１０のような信号または他の通知しか必要としない場合があり、リスナ１４０、１４１、および１４２のすべての他の構成要素は変更されずかつ／もしくは影響を受けないままであり、かつ／または継続してかつ／もしくは変更されないモードで動作する。メモリ２１０のいずれの構成要素も、スパースモードエンジン２６０を除いて、フルモードとスパースモードとの間で再構成および／または改変されることを必要としない場合がある。別の利点は、スパースモードで動作することができるデバイスが、ネットワークの再構成が必要とされることなくネットワーク内で非スパースモードデバイスと混在されることができることであり得る。
【０１３９】
別の利点として、いくつかのシステムにおいては、リスナ２１０の上位層アプリケーション２２０は、ファームウェア更新によるソフトウェア再起動を経験する場合がある。これが起こると、リスナ２１０は、再起動によって影響を受けなかったストリーム予約プロトコルスタック２３０を再起動することができるか、または、ストリーム予約プロトコルスタック２３０に、特別なストリームＩＤクエリを用いて問い合わせることができる。特別なストリームＩＤクエリは、スパースモードエンジン２６０がすでに知っているすべてのストリームに関する情報を要求することができる。通常ならば、ファームウェア更新および再起動は、Ａ／Ｖストリーミングに一時的な中断をもたらすことになる。上位層アプリケーション２２０がリセットされている間にハードウェアがＡ／Ｖストリームを再生し続けることを可能にすることによって、スパースモードは、このリセットを、音響を聴いているか、またはビデオストリームを見ている者に対してトランスペアレントにすることができる。上記のシステムのさまざまな他の利点が可能である。
【０１４０】
本発明のさまざまな実施形態が記載されてきたが、さらに多くの実施形態および実施態様が本発明の範囲内で可能であることは、当業者には明らかであろう。従って、本発明は添付の特許請求の範囲およびその均等物を考慮する以外では限定されるべきではない。
【図１】
0005526186.tif 000002
【図２】
0005526186.tif 000003
【図３】
0005526186.tif 000004
【図４】
0005526186.tif 000005
【図５】
0005526186.tif 000006
【図６】
0005526186.tif 000007
【図７】
0005526186.tif 000008
【図８】
0005526186.tif 000009
【図９】
0005526186.tif 000010
【図１０】
0005526186.tif 000011