(57)【特許請求の範囲】
【請求項１】
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立することであって、前記マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、前記シンクデバイスから前記マルチキャストセッションへの参加の要求を受信することとを含む、確立することと、
前記ソースデバイスで、前記２つ以上のシンクデバイスの各々から、前記シンクデバイスの各々が前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能なポート番号を示す信号を受信することと、
前記ソースデバイスで、前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションの各々用の受信マルチキャストポート番号を選択することと、
前記シンクデバイスに、前記マルチキャストセッションの各々用の前記選択された受信マルチキャストポート番号を広告することと、
前記選択された受信マルチキャストポート番号を使用して、前記マルチキャストセッションの各々用の前記マルチキャストメディアデータの単一コピーを前記シンクデバイスに送ることと
を備える、方法。
【請求項２】
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立することであって、前記マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、前記シンクデバイスから前記マルチキャストセッションへの参加の要求を受信することとを含む、確立することと、
前記ソースデバイスで、前記マルチキャストセッションの各々用の受信マルチキャストポート番号を選択することと、
前記選択された受信マルチキャストポート番号を使用して、前記マルチキャストセッションの各々用の前記マルチキャストメディアデータの単一コピーを前記シンクデバイスに送ることと
を備え、
前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスの各々から前記ソースデバイスで、特定のシンクデバイスが前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を受信することをさらに備え、受信マルチキャストポート番号を選択することが、すべての前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択することを備える、方法。
【請求項３】
新しいシンクデバイスから、前記新しいシンクデバイスが前記マルチキャストメディアデータの受信に関心があることを示し、前記新しいシンクデバイスで利用可能であるポート番号を示す信号を受信することと、
前記マルチキャストセッションのうちの少なくとも１つ用の前記選択されたマルチキャストポート番号が前記新しいシンクデバイスで利用可能でないとき、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに参加することに関心があるかどうかにかかわらず、前記新しいシンクデバイスを含むすべての前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号を改訂することと
をさらに備える、請求項２に記載の方法。
【請求項４】
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立することであって、前記マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、前記シンクデバイスから前記マルチキャストセッションへの参加の要求を受信することとを含む、確立することと、
前記ソースデバイスで、前記マルチキャストセッションの各々用の受信マルチキャストポート番号を選択することと、
前記選択された受信マルチキャストポート番号を使用して、前記マルチキャストセッションの各々用の前記マルチキャストメディアデータの単一コピーを前記シンクデバイスに送ることと
を備え、
前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスの各々から前記ソースデバイスで、特定のシンクデバイスが１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を受信することをさらに備え、受信マルチキャストポート番号を選択することが、前記特定のマルチキャストセッションに関心がある前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択することを備える、方法。
【請求項５】
新しいシンクデバイスから、前記新しいシンクデバイスが前記１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記新しいシンクデバイスで利用可能であるポート番号を示す信号を受信することと、
前記マルチキャストセッションのうちの少なくとも１つ用の前記選択されたマルチキャストポート番号が前記新しいシンクデバイスで利用可能でなく、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに関心があるとき、前記新しいシンクデバイスを含む前記特定のマルチキャストセッションに関心がある前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号を改訂すること
をさらに備える、請求項４に記載の方法。
【請求項６】
前記マルチキャストセッションを確立することが、
マルチキャスト加入プロトコルについて前記ソースデバイスと前記シンクデバイスの各々との間で通信チャネルを確立することと、
前記通信チャネルを介して前記マルチキャスト加入プロトコルを使用して前記マルチキャストセッションを確立することと
を備える、請求項１に記載の方法。
【請求項７】
前記ＷＤシステム内で前記ソースデバイスと第１のシンクデバイスとの間でユニキャスト通信セッションを確立することと、
前記ソースデバイスと新しいシンクデバイスとの間でマルチキャスト通信セッションを確立することと、
前記ソースデバイスと前記第１のシンクデバイスとの間の前記ユニキャストセッションを前記マルチキャストセッションに変換することと
をさらに備える、請求項１に記載の方法。
【請求項８】
シンクデバイスで、ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立することであって、前記ソースデバイスから前記マルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、前記マルチキャストセッションのうちの１つまたは複数への参加の要求を前記ソースデバイスに送ることとを含む、確立することと、
前記シンクデバイスから前記ソースデバイスに、前記シンクデバイスの各々が前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能なポート番号を示す信号を送ることと、
前記ソースデバイスから前記マルチキャストセッションの各々用の選択された受信マルチキャストポート番号の広告を受信することと、ここにおいて前記ソースデバイスは、前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションの各々用の前記受信マルチキャストポート番号を選択する、
前記シンクデバイスで、前記シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの少なくとも１つ用の前記選択された受信マルチキャストポート番号上でバインドすることと、
前記シンクデバイスで、前記シンクデバイスがバインドされた前記選択された受信マルチキャストポート番号上の前記マルチキャストセッションのうちの前記１つ用の前記マルチキャストメディアデータのコピーを受信することと
を備える、方法。
【請求項９】
シンクデバイスで、ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立することであって、前記ソースデバイスから前記マルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、前記マルチキャストセッションのうちの１つまたは複数への参加の要求を前記ソースデバイスに送ることとを含む、確立することと、
前記シンクデバイスで、前記シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの１つ用の選択された受信マルチキャストポート番号上でバインドすることと、
前記シンクデバイスで、前記シンクデバイスがバインドされた前記選択された受信マルチキャストポート番号上の前記マルチキャストセッションのうちの前記１つ用の前記マルチキャストメディアデータのコピーを受信することと
を備え、
前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスが前記マルチキャストセッションのうちのいずれか用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を前記ソースデバイスに送ることをさらに備える、方法。
【請求項１０】
前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号が新しいシンクデバイスで利用可能でないとき、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに参加することに関心があるかどうかにかかわらず、前記新しいシンクデバイスを含むすべての前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションのうちの前記１つ用の改訂された選択されたマルチキャストポート番号の広告を受信すること
をさらに備える、請求項９に記載の方法。
【請求項１１】
シンクデバイスで、ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立することであって、前記ソースデバイスから前記マルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、前記マルチキャストセッションのうちの１つまたは複数への参加の要求を前記ソースデバイスに送ることとを含む、確立することと、
前記シンクデバイスで、前記シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの１つ用の選択された受信マルチキャストポート番号上でバインドすることと、
前記シンクデバイスで、前記シンクデバイスがバインドされた前記選択された受信マルチキャストポート番号上の前記マルチキャストセッションのうちの前記１つ用の前記マルチキャストメディアデータのコピーを受信することと
を備え、
前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスが１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を前記ソースデバイスに送ることをさらに備える、方法。
【請求項１２】
前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号が新しいシンクデバイスで利用可能でなく、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに参加することに関心があるとき、前記シンクデバイスと前記新しいシンクデバイスとを含む前記マルチキャストセッションのうちの前記１つに関心がある前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションのうちの前記１つ用の改訂された選択されたマルチキャストポート番号の広告を受信すること
をさらに備える、請求項１１に記載の方法。
【請求項１３】
前記マルチキャストセッションを確立することが、
マルチキャスト加入プロトコルについて前記ソースデバイスと前記シンクデバイスの各々との間で通信チャネルを確立することと、
前記通信チャネルを介して前記マルチキャスト加入プロトコルを使用して前記マルチキャストセッションを確立することと
を備える、請求項８に記載の方法。
【請求項１４】
前記ＷＤシステム内で前記ソースデバイスと前記シンクデバイスとの間でユニキャスト通信セッションを確立することと、
前記ＷＤシステム内で前記ソースデバイスと新しいシンクデバイスとの間で前記マルチキャストセッションが確立されると、前記ソースデバイスと前記シンクデバイスとの間の前記ユニキャストセッションをマルチキャスト通信セッションに変換することと
をさらに備える、請求項８に記載の方法。
【請求項１５】
メディアデータを記憶するメモリと、
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立することであって、前記マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、前記シンクデバイスから前記マルチキャストセッションへの参加の要求を受信することとを含む、確立することと、前記２つ以上のシンクデバイスの各々から、前記シンクデバイスの各々が前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能なポート番号を示す信号を受信することと、前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションの各々用の受信マルチキャストポート番号を選択することと、前記シンクデバイスに、前記マルチキャストセッションの各々用の前記選択された受信マルチキャストポート番号を広告することと、前記選択された受信マルチキャストポート番号を使用して前記マルチキャストセッションの各々用の前記マルチキャストメディアデータの単一コピーを前記シンクデバイスに送ることとを行うように構成されたプロセッサと
を備える、ソースデバイス。
【請求項１６】
メディアデータを記憶するメモリと、
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立することであって、前記マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、前記シンクデバイスから前記マルチキャストセッションへの参加の要求を受信することとを含む、確立することと、前記マルチキャストセッションの各々用の受信マルチキャストポート番号を選択することと、前記選択された受信マルチキャストポート番号を使用して前記マルチキャストセッションの各々用の前記マルチキャストメディアデータの単一コピーを前記シンクデバイスに送ることとを行うように構成されたプロセッサと
を備え、
前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記プロセッサが、
前記シンクデバイスの各々から前記ソースデバイスで、特定のシンクデバイスが前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を受信し、
すべての前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択する、ソースデバイス。
【請求項１７】
前記プロセッサが、
新しいシンクデバイスから、前記新しいシンクデバイスが前記マルチキャストメディアデータの受信に関心があることを示し、前記新しいシンクデバイスで利用可能であるポート番号を示す信号を受信し、
前記マルチキャストセッションのうちの少なくとも１つ用の前記選択されたマルチキャストポート番号が前記新しいシンクデバイスで利用可能でないとき、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに参加することに関心があるかどうかにかかわらず、前記新しいシンクデバイスを含むすべての前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号を改訂する、
請求項１６に記載のソースデバイス。
【請求項１８】
メディアデータを記憶するメモリと、
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立することであって、前記マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、前記シンクデバイスから前記マルチキャストセッションへの参加の要求を受信することとを含む、確立することと、前記マルチキャストセッションの各々用の受信マルチキャストポート番号を選択することと、前記選択された受信マルチキャストポート番号を使用して前記マルチキャストセッションの各々用の前記マルチキャストメディアデータの単一コピーを前記シンクデバイスに送ることとを行うように構成されたプロセッサと
を備え、
前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記プロセッサが、
前記シンクデバイスの各々から前記ソースデバイスで、特定のシンクデバイスが１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を受信し、
前記特定のマルチキャストセッションに関心がある前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択する、ソースデバイス。
【請求項１９】
前記プロセッサが、
新しいシンクデバイスから、前記新しいシンクデバイスが前記１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記新しいシンクデバイスで利用可能であるポート番号を示す信号を受信し、
前記マルチキャストセッションのうちの少なくとも１つ用の前記選択されたマルチキャストポート番号が前記新しいシンクデバイスで利用可能でなく、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに関心があるとき、前記新しいシンクデバイスを含む前記特定のマルチキャストセッションに関心がある前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号を改訂する、
請求項１８に記載のソースデバイス。
【請求項２０】
前記ＷＤシステム内の能力ネゴシエーションフェーズ中に、前記プロセッサが、
マルチキャスト加入プロトコルについて前記ソースデバイスと前記シンクデバイスの各々との間で通信チャネルを確立し、
前記通信チャネルを介して前記マルチキャスト加入プロトコルを使用して前記マルチキャストセッションを確立する、
請求項１５に記載のソースデバイス。
【請求項２１】
前記プロセッサが、
前記ＷＤシステム内で前記ソースデバイスと第１のシンクデバイスとの間でユニキャスト通信セッションを確立し、
前記ソースデバイスと新しいシンクデバイスとの間でマルチキャスト通信セッションを確立し、
前記ソースデバイスと前記第１のシンクデバイスとの間の前記ユニキャストセッションを前記マルチキャストセッションに変換する、
請求項１５に記載のソースデバイス。
【請求項２２】
メディアデータを記憶するメモリと、
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立することであって、前記ソースデバイスから前記マルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、前記マルチキャストセッションのうちの１つまたは複数への参加の要求を前記ソースデバイスに送ることとを含む、確立することと、前記ソースデバイスに、シンクデバイスの各々が前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能なポート番号を示す信号を送ることと、前記ソースデバイスから前記マルチキャストセッションの各々用の選択された受信マルチキャストポート番号の広告を受信することと、ここにおいて前記ソースデバイスは、前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションの各々用の前記受信マルチキャストポート番号を選択する、シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの少なくとも１つ用の前記選択された受信マルチキャストポート番号上でバインドすることと、前記シンクデバイスがバインドされた前記選択された受信マルチキャストポート番号上の前記マルチキャストセッションのうちの前記１つ用の前記マルチキャストメディアデータのコピーを受信することとを行うように構成されたプロセッサと
を備える、シンクデバイス。
【請求項２３】
メディアデータを記憶するメモリと、
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立することであって、前記ソースデバイスから前記マルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、前記マルチキャストセッションのうちの１つまたは複数への参加の要求を前記ソースデバイスに送ることとを含む、確立することと、シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの１つ用の選択された受信マルチキャストポート番号上でバインドすることと、前記シンクデバイスがバインドされた前記選択された受信マルチキャストポート番号上の前記マルチキャストセッションのうちの前記１つ用の前記マルチキャストメディアデータのコピーを受信することとを行うように構成されたプロセッサと
を備え、
前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記プロセッサが、前記シンクデバイスが前記マルチキャストセッションのうちのいずれか用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を前記ソースデバイスに送る、シンクデバイス。
【請求項２４】
前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号が新しいシンクデバイスで利用可能でないとき、前記プロセッサが、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに参加することに関心があるかどうかにかかわらず、前記新しいシンクデバイスを含むすべての前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションのうちの前記１つ用の改訂された選択されたマルチキャストポート番号の広告を受信する、
請求項２３に記載のシンクデバイス。
【請求項２５】
メディアデータを記憶するメモリと、
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立することであって、前記ソースデバイスから前記マルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、前記マルチキャストセッションのうちの１つまたは複数への参加の要求を前記ソースデバイスに送ることとを含む、確立することと、シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの１つ用の選択された受信マルチキャストポート番号上でバインドすることと、前記シンクデバイスがバインドされた前記選択された受信マルチキャストポート番号上の前記マルチキャストセッションのうちの前記１つ用の前記マルチキャストメディアデータのコピーを受信することとを行うように構成されたプロセッサと
を備え、
前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記プロセッサが、前記シンクデバイスが１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を前記ソースデバイスに送る、シンクデバイス。
【請求項２６】
前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号が新しいシンクデバイスで利用可能でなく、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに参加することに関心があるとき、前記プロセッサが、前記シンクデバイスと前記新しいシンクデバイスとを含む前記マルチキャストセッションのうちの前記１つに関心がある前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションのうちの前記１つ用の改訂された選択されたマルチキャストポート番号の広告を受信する、
請求項２５に記載のシンクデバイス。
【請求項２７】
前記プロセッサが、
マルチキャスト加入プロトコルについて前記ソースデバイスと前記シンクデバイスの各々との間で通信チャネルを確立し、
前記通信チャネルを介して前記マルチキャスト加入プロトコルを使用して前記マルチキャストセッションを確立する、
請求項２２に記載のシンクデバイス。
【請求項２８】
前記プロセッサが、
前記ＷＤシステム内で前記ソースデバイスと前記シンクデバイスとの間でユニキャスト通信セッションを確立し、
前記ＷＤシステム内で前記ソースデバイスと新しいシンクデバイスとの間で前記マルチキャストセッションが確立されると、前記ソースデバイスと前記シンクデバイスとの間の前記ユニキャストセッションをマルチキャスト通信セッションに変換する、
請求項２２に記載のシンクデバイス。
【請求項２９】
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立するための手段であって、前記マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、前記シンクデバイスから前記マルチキャストセッションへの参加の要求を受信することとを含む、確立するための手段と、
前記２つ以上のシンクデバイスの各々から、前記シンクデバイスの各々が前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能なポート番号を示す信号を受信するための手段と、
前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションの各々用の受信マルチキャストポート番号を選択するための手段と、
前記シンクデバイスに、前記マルチキャストセッションの各々用の前記選択された受信マルチキャストポート番号を広告するための手段と、
前記選択された受信マルチキャストポート番号を使用して、前記マルチキャストセッションの各々用の前記マルチキャストメディアデータの単一コピーを前記シンクデバイスに送るための手段と
を備える、ソースデバイス。
【請求項３０】
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立するための手段であって、前記マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、前記シンクデバイスから前記マルチキャストセッションへの参加の要求を受信することとを含む、確立するための手段と、
前記マルチキャストセッションの各々用の受信マルチキャストポート番号を選択するための手段と、
前記選択された受信マルチキャストポート番号を使用して、前記マルチキャストセッションの各々用の前記マルチキャストメディアデータの単一コピーを前記シンクデバイスに送るための手段と
を備え、
前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスの各々から前記ソースデバイスで、特定のシンクデバイスが前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を受信するための手段と、
すべての前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択するための手段と
をさらに備える、ソースデバイス。
【請求項３１】
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立するための手段であって、前記マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、前記シンクデバイスから前記マルチキャストセッションへの参加の要求を受信することとを含む、確立するための手段と、
前記マルチキャストセッションの各々用の受信マルチキャストポート番号を選択するための手段と、
前記選択された受信マルチキャストポート番号を使用して、前記マルチキャストセッションの各々用の前記マルチキャストメディアデータの単一コピーを前記シンクデバイスに送るための手段と
を備え、
前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスの各々から前記ソースデバイスで、特定のシンクデバイスが１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を受信するための手段と、
前記特定のマルチキャストセッションに関心がある前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択するための手段と
をさらに備える、ソースデバイス。
【請求項３２】
前記ＷＤシステム内で前記ソースデバイスと第１のシンクデバイスとの間でユニキャスト通信セッションを確立するための手段と、
前記ソースデバイスと新しいシンクデバイスとの間でマルチキャスト通信セッションを確立するための手段と、
前記ソースデバイスと前記第１のシンクデバイスとの間の前記ユニキャストセッションを前記マルチキャストセッションに変換するための手段と
をさらに備える、請求項２９に記載のソースデバイス。
【請求項３３】
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立するための手段であって、前記ソースデバイスから前記マルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、前記マルチキャストセッションのうちの１つまたは複数への参加の要求を前記ソースデバイスに送ることとを含む、確立するための手段と、
前記ソースデバイスに、シンクデバイスの各々が前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能なポート番号を示す信号を送るための手段と、
前記ソースデバイスから前記マルチキャストセッションの各々用の選択された受信マルチキャストポート番号の広告を受信するための手段と、ここにおいて前記ソースデバイスは、前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションの各々用の前記受信マルチキャストポート番号を選択する、
シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの少なくとも１つ用の前記選択された受信マルチキャストポート番号上でバインドするための手段と、
前記シンクデバイスがバインドされた前記選択された受信マルチキャストポート番号上の前記マルチキャストセッションのうちの前記１つ用の前記マルチキャストメディアデータのコピーを受信するための手段と
を備える、シンクデバイス。
【請求項３４】
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立するための手段であって、前記ソースデバイスから前記マルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、前記マルチキャストセッションのうちの１つまたは複数への参加の要求を前記ソースデバイスに送ることとを含む、確立するための手段と、
シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの１つ用の選択された受信マルチキャストポート番号上でバインドするための手段と、
前記シンクデバイスがバインドされた前記選択された受信マルチキャストポート番号上の前記マルチキャストセッションのうちの前記１つ用の前記マルチキャストメディアデータのコピーを受信するための手段と
を備え、
前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスが前記マルチキャストセッションのうちのいずれか用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を前記ソースデバイスに送るための手段をさらに備える、シンクデバイス。
【請求項３５】
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立するための手段であって、前記ソースデバイスから前記マルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、前記マルチキャストセッションのうちの１つまたは複数への参加の要求を前記ソースデバイスに送ることとを含む、確立するための手段と、
シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの１つ用の選択された受信マルチキャストポート番号上でバインドするための手段と、
前記シンクデバイスがバインドされた前記選択された受信マルチキャストポート番号上の前記マルチキャストセッションのうちの前記１つ用の前記マルチキャストメディアデータのコピーを受信するための手段と
を備え、
前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスが１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を前記ソースデバイスに送るための手段をさらに備える、シンクデバイス。
【請求項３６】
前記ＷＤシステム内で前記ソースデバイスと前記シンクデバイスとの間でユニキャスト通信セッションを確立するための手段と、
前記ＷＤシステム内で前記ソースデバイスと新しいシンクデバイスとの間で前記マルチキャストセッションが確立されると、前記ソースデバイスと前記シンクデバイスとの間の前記ユニキャストセッションをマルチキャスト通信セッションに変換するための手段と
をさらに備える、請求項３３に記載のシンクデバイス。
【請求項３７】
ソースデバイス内で実行されたとき、プログラマブルプロセッサに、
ワイヤレスディスプレイ（ＷＤ）システム内の前記ソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立することであって、前記マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、前記シンクデバイスから前記マルチキャストセッションへの参加の要求を受信することとを含む、確立することと、
前記ソースデバイスで、前記２つ以上のシンクデバイスの各々から、前記シンクデバイスの各々が前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能なポート番号を示す信号を受信することと、
前記ソースデバイスで、前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションの各々用の受信マルチキャストポート番号を選択することと、
前記シンクデバイスに、前記マルチキャストセッションの各々用の前記選択された受信マルチキャストポート番号を広告することと、
前記選択された受信マルチキャストポート番号を使用して、前記マルチキャストセッションの各々用の前記マルチキャストメディアデータの単一コピーを前記シンクデバイスに送ることと
を行わせる命令を記憶している、コンピュータ可読記憶媒体。
【請求項３８】
シンクデバイス内で実行されたとき、プログラマブルプロセッサに、
前記シンクデバイスで、ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立することであって、前記ソースデバイスから前記マルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、前記マルチキャストセッションのうちの１つまたは複数への参加の要求を前記ソースデバイスに送ることとを含む、確立することと、
前記シンクデバイスから前記ソースデバイスに、前記シンクデバイスの各々が前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能なポート番号を示す信号を送ることと、
前記ソースデバイスから前記マルチキャストセッションの各々用の選択された受信マルチキャストポート番号の広告を受信することと、ここにおいて前記ソースデバイスは、前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションの各々用の前記受信マルチキャストポート番号を選択する、
前記シンクデバイスで、前記シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの少なくとも１つ用の前記選択された受信マルチキャストポート番号上でバインドすることと、
前記シンクデバイスで、前記シンクデバイスがバインドされた前記選択された受信マルチキャストポート番号上の前記マルチキャストセッションのうちの前記１つ用の前記マルチキャストメディアデータのコピーを受信することと
を行わせる命令を記憶している、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、各々の全内容が参照により本明細書にすべて組み込まれている、２０１１年９月１４日に出願した米国仮出願第６１／５３４，７４２号、および２０１１年１０月１４日に出願した米国仮出願第６１／５４７，２４０号の利益を主張するものである。
【０００２】
本開示は、ワイヤレスソースデバイスとワイヤレスシンクデバイスとの間でデータを送信することに関する。
【背景技術】
【０００３】
ワイヤレスディスプレイ（ＷＤ）システムは、ソースデバイスと１つまたは複数のシンクデバイスとを含む。ソースデバイス、およびシンクデバイスの各々は、モバイルデバイス、またはワイヤレス通信機能を有する有線デバイスのいずれかであり得る。モバイルデバイスとして、たとえば、ソースデバイスおよびシンクデバイスのうちの１つまたは複数は、携帯電話、ワイヤレス通信カードを有するポータブルコンピュータ、携帯情報端末（ＰＤＡ）、ポータブルメディアプレーヤ、またはいわゆる「スマート」フォンおよび「スマート」パッドもしくはタブレットを含む、ワイヤレス通信機能を有する他のフラッシュメモリデバイス、あるいは他のタイプのワイヤレス通信デバイスを備えることができる。有線デバイスとして、たとえば、ソースデバイスおよびシンクデバイスのうちの１つまたは複数は、ワイヤレス通信機能を含むテレビジョン、デスクトップコンピュータ、モニタ、プロジェクタなどを備えることができる。
【０００４】
ソースデバイスは、特定の通信セッションに参加しているシンクデバイスのうちの１つまたは複数に、オーディオおよび／またはビデオデータなどのメディアデータを送る。メディアデータは、ソースデバイスのローカルディスプレイとシンクデバイスのディスプレイの各々の両方で再生することができる。より具体的には、参加しているシンクデバイスの各々は、受信されたメディアデータをそのディスプレイ機器とオーディオ機器とにレンダリングする。場合によっては、シンクデバイスのユーザは、タッチ入力および遠隔制御入力などのユーザ入力をシンクデバイスに加えることができる。ＷＤシステムでは、ユーザ入力はシンクデバイスからソースデバイスに送られる。ソースデバイスは、シンクデバイスから受信されたユーザ入力を処理し、シンクデバイスに送られる以後のメディアデータにユーザ入力の効果を加える。
【発明の概要】
【０００５】
一般に、本開示は、ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと複数のシンクデバイスとの間でマルチキャスト通信セッションを確立する技法に関する。いくつかの状況では、２つ以上のシンクデバイスが、ソースデバイスから同じメディアデータ、たとえばオーディオおよび／またはビデオ（Ａ／Ｖ）データの受信に関心がある場合がある。従来、ソースデバイスはシンクデバイスの各々とユニキャストセッションを確立し、特定のシンクデバイス用の受信ポート上で、関心があるシンクデバイスの各々に同じメディアデータの別のコピーを送る。本開示の技法によれば、ソースデバイスはＷＤシステム内のシンクデバイスとマルチキャストセッションを確立し、マルチキャストアドレスと受信マルチキャストポートとを使用して、マルチキャストセッション用のマルチキャストメディアデータの単一コピーを関心があるシンクデバイスに送る。
【０００６】
より具体的には、ＷＤシステム内でマルチキャストを提供するために、ソースデバイスは、マルチキャストセッションごとの宛先識別子として、マルチキャストインターネットプロトコル（ＩＰ）アドレスと受信マルチキャストポート番号とを選択する。所与のマルチキャストセッションのメディアデータの受信に関心があるシンクデバイスは、マルチキャストセッションに関連付けられたマルチキャストＩＰアドレスおよび受信マルチキャストポート上でバインドする。ソースデバイスは、マルチキャストグループのメディアデータを、ＷＤシステム内のすべてのシンクデバイスにブロードキャストする。マルチキャストセッションに関連付けられたマルチキャストＩＰアドレスおよび受信マルチキャストポート上でバインドされた関心があるシンクデバイスは、メディアデータを受信し処理する。本開示は、シンクデバイスの各々でマルチキャストアドレスおよび受信マルチキャストポート上の正確なバインドを保証する、いくつかの例示的なマルチキャスト加入手順を記載する。
【０００７】
一例では、方法は、ＷＤシステム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立することであって、マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、シンクデバイスからマルチキャストセッションへの参加の要求を受信することとを含む、確立することと、ソースデバイスでマルチキャストセッションの各々用の受信マルチキャストポート番号を選択することと、選択された受信マルチキャストポート番号を使用してマルチキャストセッションの各々用のマルチキャストメディアデータの単一コピーをシンクデバイスに送ることとを備える。
【０００８】
別の例では、方法は、シンクデバイスで、ＷＤシステム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立することであって、ソースデバイスからマルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、マルチキャストセッションのうちの１つまたは複数への参加の要求をソースデバイスに送ることとを含む、確立することと、シンクデバイスで、シンクデバイスが参加することに関心があるマルチキャストセッションのうちの１つ用の選択された受信マルチキャストポート番号上でバインドすることと、シンクデバイスで、シンクデバイスがバインドされた選択された受信マルチキャストポート番号上のマルチキャストセッションのうちの１つ用のマルチキャストメディアデータのコピーを受信することとを備える。
【０００９】
さらなる一例では、ソースデバイスは、メディアデータを記憶するメモリと、ＷＤシステム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立することであって、マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、シンクデバイスからマルチキャストセッションへの参加の要求を受信することとを含む、確立することと、マルチキャストセッションの各々用の受信マルチキャストポート番号を選択することと、選択された受信マルチキャストポート番号を使用してマルチキャストセッションの各々用のマルチキャストメディアデータの単一コピーをシンクデバイスに送ることとを行うように構成されたプロセッサとを備える。
【００１０】
別の例では、シンクデバイスは、メディアデータを記憶するメモリと、ＷＤシステム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立することであって、ソースデバイスからマルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、マルチキャストセッションのうちの１つまたは複数への参加の要求をソースデバイスに送ることとを含む、確立することと、シンクデバイスが参加することに関心があるマルチキャストセッションのうちの１つ用の選択された受信マルチキャストポート番号上でバインドすることと、シンクデバイスがバインドされた選択された受信マルチキャストポート番号上のマルチキャストセッションのうちの１つ用のマルチキャストメディアデータのコピーを受信することとを行うように構成されたプロセッサとを備える。
【００１１】
さらなる一例では、ソースデバイスは、ＷＤシステム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立するための手段であって、マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、シンクデバイスからマルチキャストセッションへの参加の要求を受信することとを含む、確立するための手段と、マルチキャストセッションの各々用の受信マルチキャストポート番号を選択するための手段と、選択された受信マルチキャストポート番号を使用してマルチキャストセッションの各々用のマルチキャストメディアデータの単一コピーをシンクデバイスに送るための手段とを備える。
【００１２】
さらなる一例では、シンクデバイスは、ＷＤシステム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立するための手段であって、ソースデバイスからマルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、マルチキャストセッションのうちの１つまたは複数への参加の要求をソースデバイスに送ることとを含む、確立するための手段と、シンクデバイスが参加することに関心があるマルチキャストセッションのうちの１つ用の選択された受信マルチキャストポート番号上でバインドするための手段と、シンクデバイスがバインドされた選択された受信マルチキャストポート番号上のマルチキャストセッションのうちの１つ用のマルチキャストメディアデータのコピーを受信するための手段とを備える。
【００１３】
別の例では、コンピュータ可読媒体は、ソースデバイス内で実行されたとき、ＷＤシステム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立することであって、マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、シンクデバイスからマルチキャストセッションへの参加の要求を受信することとを含む、確立することと、ソースデバイスで、マルチキャストセッションの各々用の受信マルチキャストポート番号を選択することと、選択された受信マルチキャストポート番号を使用してマルチキャストセッションの各々用のマルチキャストメディアデータの単一コピーをシンクデバイスに送ることとを、プログラマブルプロセッサに行わせる命令を備える。
【００１４】
さらなる一例では、コンピュータ可読媒体は、シンクデバイス内で実行されたとき、シンクデバイスで、ＷＤシステム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立することであって、ソースデバイスからマルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、マルチキャストセッションのうちの１つまたは複数への参加の要求をソースデバイスに送ることとを含む、確立することと、シンクデバイスで、シンクデバイスが参加することに関心があるマルチキャストセッションのうちの１つ用の選択された受信マルチキャストポート番号上でバインドすることと、シンクデバイスで、シンクデバイスがバインドされた選択された受信マルチキャストポート番号上のマルチキャストセッションのうちの１つ用のマルチキャストメディアデータのコピーを受信することとを、プログラマブルプロセッサに行わせる命令を備える。
【００１５】
本開示の１つまたは複数の例の詳細が、添付の図面および以下の説明に記載される。他の特徴、目的、および利点は、その説明および図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１６】
【図１Ａ】マルチキャスト通信セッションをサポートすることが可能なソースデバイスと複数のシンクデバイスとを含むワイヤレスディスプレイ（ＷＤ）システムの一例を示すブロック図。
【図１Ｂ】図１Ａからのソースデバイスとシンクデバイスのうちの１つとの一例をより詳細に示すブロック図。
【図２】本開示の技法を実装できるソースデバイスの一例を示すブロック図。
【図３】本開示の技法を実装できるシンクデバイスの一例を示すブロック図。
【図４】本開示の技法を実装できる送信機システムおよび受信機システムを示すブロック図。
【図５】静的マルチキャスト加入手順を使用して、ソースデバイスと２つのシンクデバイスとの間でマルチキャスト通信セッションを確立するための例示的なメッセージ転送シーケンスを示す概念図。
【図６】ブラインド型ポート改訂（ｂｌｉｎｄ  ｐｏｒｔ  ｒｅｖｉｓｉｏｎ）を伴う動的マルチキャスト加入手順を使用して、ソースデバイスと２つのシンクデバイスとの間でマルチキャスト通信セッションを確立するための例示的なメッセージ転送シーケンスを示す概念図。
【図７】インフォームドポート改訂（ｉｎｆｏｒｍｅｄ  ｐｏｒｔ  ｒｅｖｉｓｉｏｎ）を伴う動的マルチキャスト加入手順を使用して、ソースデバイスと２つのシンクデバイスとの間でマルチキャスト通信セッションを確立するための例示的なメッセージ転送シーケンスを示す概念図。
【図８】ソースデバイスと１つのシンクデバイスとの間のユニキャスト通信セッションを、ソースデバイスと２つのシンクデバイスとの間のマルチキャスト通信セッションに変換するための例示的なメッセージ転送シーケンスを示す概念図。
【図９】ＷＤシステム内のソースデバイスおよびシンクデバイスによる静的マルチキャスト加入手順の例示的な動作を示す流れ図。
【図１０】ＷＤシステム内のソースデバイスおよびシンクデバイスによる動的マルチキャスト加入手順の例示的な動作を示す流れ図。
【詳細な説明】
【００１７】
図１Ａは、マルチキャスト通信セッションをサポートすることが可能なソースデバイス１２０と複数のシンクデバイス１６０、１７０および１８０とを含むワイヤレスディスプレイ（ＷＤ）システム１００の一例を示すブロック図である。ＷＤシステム１００では、ソースデバイス１２０は、通信セッションに参加しているシンクデバイス１６０、１７０および１８０の各々に、オーディオおよび／またはビデオデータ（Ａ／Ｖデータ）などのメディアデータを送る。メディアデータは、ソースデバイス１２０のローカルディスプレイと、参加シンクデバイス１６０、１７０および１８０の各々のローカルディスプレイの両方で再生することができる。
【００１８】
場合によっては、シンクデバイス１６０、１７０および１８０は、ソースデバイス１２０からの同じメディアデータの受信に関心がある場合がある。従来、ソースデバイス１２０は、シンクデバイス１６０、１７０および１８０の各々とユニキャストセッションを確立する。ユニキャストセッションの場合、シンクデバイス１６０、１７０および１８０の各々は、そこにソースデバイス１２０がユニキャストセッション用のメディアデータを送ることができる、シンクデバイスで利用可能な受信ポートを識別する。次いで、ソースデバイス１２０は、同じメディアデータの別のコピーを、関心があるシンクデバイス１６０、１７０および１８０の識別された受信ポートに送る。
【００１９】
しかしながら、シンクデバイス１６０、１７０および１８０が同じメディアデータの受信に関心があるとき、すべての関心があるシンクデバイス１６０、１７０および１８０によって受信できるメディアデータの単一コピーを送る方がより効率的である。本開示の技法は、ＷＤシステム１００内でマルチキャストを可能にする。本技法によれば、ソースデバイス１２０は、シンクデバイス１６０、１７０および１８０のうちの２つ以上とマルチキャスト通信セッションを確立し、マルチキャストセッション用のメディアデータの単一コピーを、すべての関心があるシンクデバイス１６０、１７０および／または１８０で利用可能な単一の受信マルチキャストポートに送る。
【００２０】
図１Ａに示された例示的なＷＤシステム１００では、ソースデバイス１２０ならびにシンクデバイス１６０、１７０および１８０は、ソースデバイス１２０をグループオーナーとするＷｉ−Ｆｉポイントツーポイント（Ｐ２Ｐ）グループを形成することができる。このようにして、ソースデバイス１２０ならびにシンクデバイス１６０、１７０および１８０のすべては、同じサービスセット識別子（ＳＳＩＤ）を使用してＷｉ−Ｆｉグループを識別する。マルチキャストの場合、ソースデバイス１２０は、受信アドレスとして、よく知られているあらかじめ定義されたブロードキャスト媒体アクセス制御（ＭＡＣ）アドレスを使用して、マルチキャストメディアデータを送出する。ＷＤシステム１００内のシンクデバイス１６０、１７０および１８０のすべては、ソースデバイス１２０と同じＷｉ−Ｆｉグループに属するので、ＭＡＣレイヤでマルチキャストメディアデータを受信することができる。
【００２１】
ＷＤシステム１００内のすべての関心があるシンクデバイスに所与のマルチキャストセッション用のマルチキャストメディアデータの単一コピーのみを送るために、ソースデバイス１２０は、マルチキャストセッション用の宛先識別子としてマルチキャストインターネットプロトコル（ＩＰ）アドレスと受信マルチキャストポート番号とを選択する。次いで、所与のマルチキャストセッションに参加することに関心があるシンクデバイス１６０、１７０および／または１８０は、マルチキャストセッションに関連付けられたマルチキャストＩＰアドレスおよび受信マルチキャストポート番号上でバインドする。ソースデバイス１２０は、ブロードキャストＭＡＣアドレスを使用して、ＷＤシステム１００内のすべてのシンクデバイス１６０、１７０および１８０にマルチキャストセッション用のメディアデータをブロードキャストする。マルチキャストセッションに関連付けられたマルチキャストＩＰアドレスおよび受信マルチキャストポート上でバインドされた関心があるシンクデバイス１６０、１７０および／または１８０は、メディアデータを受信し、受信されたメディアデータを処理のためにより高いレベルに渡す。本開示は、シンクデバイス１６０、１７０および１８０の各々で、マルチキャストアドレスおよび受信マルチキャストポート上の正確なバインドを保証する、いくつかの例示的なマルチキャスト加入手順を記載する。
【００２２】
ソースデバイス１２０ならびにシンクデバイス１６０、１７０および１８０の各々は、モバイルデバイス、またはワイヤレス通信機能を有する有線デバイスのいずれかであり得る。モバイルデバイスとして、たとえば、ソースデバイス１２０ならびにシンクデバイス１６０、１７０および１８０のうちの１つまたは複数は、携帯電話、ワイヤレス通信カードを有するポータブルコンピュータ、携帯情報端末（ＰＤＡ）、ポータブルメディアプレーヤ、またはいわゆる「スマート」フォンおよび「スマート」パッドもしくはタブレットを含む、ワイヤレス通信機能を有する他のフラッシュメモリデバイス、あるいは他のタイプのワイヤレス通信デバイスを備えることができる。有線デバイスとして、たとえば、ソースデバイス１２０ならびにシンクデバイス１６０、１７０および１８０のうちの１つまたは複数は、ワイヤレス通信機能を含むテレビジョン、デスクトップコンピュータ、モニタ、プロジェクタなどを備えることができる。場合によっては、ソースデバイス１２０ならびにシンクデバイス１６０、１７０および１８０の各々は、たとえば、すべて別々だが相互動作可能なデバイスである、ディスプレイ、スピーカ、ユーザインターフェース（ＵＩ）デバイス、およびプロセッサを含むデバイスのシステムを備えることができる。
【００２３】
本開示では、ソースデバイスという用語は、概して、Ａ／Ｖデータを送信しているデバイスを指すために使用され、シンクデバイスという用語は、概して、ソースデバイスからＡ／Ｖデータを受信しているデバイスを指すために使用される。多くの場合、ソースデバイス１２０ならびにシンクデバイス１６０、１７０および１８０は、一方のデバイスがソースとして動作し、他方がシンクとして動作する、同様のまたは同一のデバイスであり得る。その上、これらの役割は異なる通信セッションでは逆になる場合がある。したがって、１つの通信セッションにおけるシンクデバイスが以後の通信セッションではソースデバイスになる場合があり、またはその逆も同様である。
【００２４】
図１Ｂは、図１Ａからのソースデバイス１２０とシンクデバイスのうちの１つ１６０との一例をより詳細に示すブロック図である。図１Ｂに示されたように、ソースデバイス１２０は、通信チャネル１５０を介してシンクデバイス１６０と通信する。
【００２５】
ソースデバイス１２０は、オーディオおよび／またはビデオ（Ａ／Ｖ）データ１２１を記憶するメモリと、ディスプレイ１２２と、スピーカ１２３と、（エンコーダ１２４とも呼ばれる）オーディオおよび／またはビデオ（Ａ／Ｖ）エンコーダ１２４と、オーディオおよび／またはビデオ（Ａ／Ｖ）制御モジュール１２５と、送信機／受信機（ＴＸ／ＲＸ）ユニット１２６とを含むことができる。シンクデバイス１６０は、ディスプレイ１６２と、スピーカ１６３と、（デコーダ１６４とも呼ばれる）オーディオおよび／またはビデオ（Ａ／Ｖ）デコーダ１６４と、送信機／受信機ユニット１６６と、ユーザ入力（ＵＩ）デバイス１６７と、ユーザ入力処理モジュール（ＵＩＰＭ）１６８とを含むことができる。図示された構成要素は、ＷＤシステム内のソースデバイスおよびシンクデバイス用の１つの例示的な構成をなすにすぎない。他の構成は、図示された構成要素よりも少ない構成要素を含む場合があるか、または図示された構成要素以外のさらなる構成要素を含む場合がある。
【００２６】
図１の例では、ソースデバイス１２０は、Ａ／Ｖデータ１２１のビデオ部分をディスプレイ１２２に表示することができ、Ａ／Ｖデータ１２１のオーディオ部分をスピーカ１２３に出力することができる。Ａ／Ｖデータ１２１は、ソースデバイス１２０にローカルに記憶されるか、ファイルサーバ、ハードドライブ、外部メモリ、ブルーレイ（登録商標）ディスク、ＤＶＤ、もしくは他の物理記憶媒体などの外部記憶媒体からアクセスされるか、またはインターネットなどのネットワーク接続を介してソースデバイス１２０にストリーミングすることができる。場合によっては、Ａ／Ｖデータ１２１は、ソースデバイス１２０のカメラとマイクロフォンとを介して、リアルタイムにキャプチャすることができる。Ａ／Ｖデータ１２１は、映画、テレビ番組、または音楽などのマルチメディアコンテンツを含むことができるが、ソースデバイス１２０によって生成されたリアルタイムコンテンツも含むことができる。そのようなリアルタイムコンテンツは、たとえば、ソースデバイス１２０で動作しているアプリケーションによって生成されるか、または、たとえば、ビデオテレフォニーセッションの一部としてキャプチャされたビデオデータであり得る。場合によっては、そのようなリアルタイムコンテンツは、ユーザが選択する場合に利用可能なユーザ入力オプションのビデオフレームを含むことができる。場合によっては、Ａ／Ｖデータ１２１は、ビデオのフレーム上にオーバーレイされたユーザ入力オプションを有する映画またはＴＶ番組のビデオフレームなどの、異なるタイプのコンテンツの組合せであるビデオフレームを含むことができる。
【００２７】
ディスプレイ１２２とスピーカ１２３とを介してローカルにＡ／Ｖデータ１２１をレンダリングすることに加えて、ソースデバイス１２０のＡ／Ｖエンコーダ１２４は、Ａ／Ｖデータ１２１を符号化することができ、送信機／受信機ユニット１２６は、通信チャネル１５０を介してシンクデバイス１６０に符号化されたデータを送信することができる。シンクデバイス１６０の送信機／受信機ユニット１６６は、符号化されたデータを受信し、Ａ／Ｖデコーダ１６４は、符号化されたデータを復号し、ディスプレイ１６２とスピーカ１６３とを介して復号されたデータを出力する。このようにして、ディスプレイ１２２およびスピーカ１２３によってレンダリングされているオーディオおよびビデオデータは、同時にディスプレイ１６２およびスピーカ１６３によってレンダリングすることができる。オーディオデータおよびビデオデータはフレームに構成することができ、オーディオフレームは、レンダリングされるときにビデオフレームと時刻同期することができる。
【００２８】
Ａ／Ｖエンコーダ１２４およびＡ／Ｖデコーダ１６４は、代替的にＭＰＥＧ−４，Ｐａｒｔ１０，Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）と呼ばれるＩＴＵ−Ｔ  Ｈ．２６４規格、または新興の高効率ビデオコーディング（ＨＥＶＣ）規格などの任意の数のオーディオおよびビデオ圧縮規格を実装することができる。多くの他のタイプのプロプライエタリな、または規格化
された圧縮技法も使用することができる。概して、Ａ／Ｖデコーダ１６４は、Ａ／Ｖエンコーダ１２４の逆のコーディング演算を実行するように構成される。図１には示されないが、いくつかの態様では、Ａ／Ｖエンコーダ１２４およびＡ／Ｖデコーダ１６４は、各々オーディオのエンコーダおよびデコーダと統合することができ、共通のデータストリームまたは別々のデータストリーム内のオーディオとビデオの両方の符号化を処理するために、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアとソフトウェアとを含むことができる。
【００２９】
Ａ／Ｖエンコーダ１２４は、上述のようなビデオ圧縮規格を実装することに加えて、他の符号化機能も実行することができる。たとえば、Ａ／Ｖエンコーダ１２４は、Ａ／Ｖデータ１２１がシンクデバイス１６０に送信されるより前に、Ａ／Ｖデータ１２１に様々なタイプのメタデータを追加することができる。場合によっては、Ａ／Ｖデータ１２１は、符号化された形態でソースデバイス１２０に記憶されるかまたはソースデバイス１２０で受信され、したがってＡ／Ｖエンコーダ１２４によるさらなる圧縮を必要としない場合がある。
【００３０】
図１は、オーディオペイロードデータとビデオペイロードデータとを別々に搬送する通信チャネル１５０を示すが、場合によっては、ビデオペイロードデータとオーディオペイロードデータは共通のデータストリームの一部であり得ることを理解されたい。適用可能な場合、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠することができる。Ａ／Ｖエンコーダ１２４およびＡ／Ｖデコーダ１６４は、各々１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組合せとして実装することができる。Ａ／Ｖエンコーダ１２４およびＡ／Ｖデコーダ１６４の各々は、１つまたは複数のエンコーダまたはデコーダに含まれ、それらのいずれかは、複合エンコーダ／デコーダ（コーデック）の一部として統合することができる。したがって、ソースデバイス１２０およびシンクデバイス１６０の各々は、本開示の技法のうちの１つまたは複数を実行するように構成された専用の機械を備えることができる。
【００３１】
ディスプレイ１２２およびディスプレイ１６２は、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、発光ダイオード（ＬＥＤ）ディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなどの様々なビデオ出力デバイスのうちのいずれも備えることができる。これらまたは他の例では、ディスプレイ１２２および１６２は、各々発光型ディスプレイまたは透過型ディスプレイであり得る。ディスプレイ１２２およびディスプレイ１６２はまた、それらが同時に入力デバイスとディスプレイデバイスの両方であるようなタッチディスプレイであり得る。そのようなタッチディスプレイは、ユーザがそれぞれのデバイスにユーザ入力を与えることを可能にする、静電容量式（capacitive）、抵抗式（resistive）、または他のタイプのタッチパネルであり得る。
【００３２】
スピーカ１２３およびスピーカ１６３は、ヘッドフォン、シングルスピーカシステム、マルチスピーカシステム、またはサラウンドサウンドシステムなどの様々なオーディオ出力デバイスのうちのいずれも備えることができる。加えて、ディスプレイ１２２およびスピーカ１２３はソースデバイス１２０の一部として示され、ディスプレイ１６２およびスピーカ１６３はシンクデバイス１６０の一部として示されているが、ソースデバイス１２０およびシンクデバイス１６０は、実際はそれらのデバイスのシステムであり得る。一例として、ディスプレイ１６２はテレビジョンであり得るし、スピーカ１６３はサラウンドサウンドシステムであり得るし、デコーダ１６４は有線またはワイヤレスのいずれかでディスプレイ１６２とスピーカ１６３とに接続された外部ボックスの一部であり得る。他の例では、シンクデバイス１６０は、タブレットコンピュータまたはスマートフォンなどの単一デバイスであり得る。さらに他の場合では、ソースデバイス１２０およびシンクデバイス１６０は、同様のデバイス、たとえば両方ともスマートフォン、タブレットコンピュータなどである。この場合、一方のデバイスがソースとして動作することができ、他方がシンクとして動作することができる。これらの役割は、以後の通信セッションでは反転される場合さえある。さらに他の場合、ソースデバイスは、スマートフォン、ラップトップコンピュータまたはタブレットコンピュータなどのモバイルデバイスを備えることができ、シンクデバイスは、（たとえば、ＡＣ電源コードを有する）より固定されたデバイスを備えることができ、その場合、ソースデバイスは、シンクデバイスを介して大群衆に提示用のオーディオおよびビデオデータを配信することができる。
【００３３】
送信機／受信機ユニット１２６および送信機／受信機ユニット１６６は、各々様々なミキサ、フィルタ、増幅器、および信号変調用に設計された他の構成要素、ならびに、１つまたは複数のアンテナ、およびデータを送受信するために設計された他の構成要素を含むことができる。通信チャネル１５０は、概して、ソースデバイス１２０からシンクデバイス１６０にビデオデータを送信するのに適した任意の通信媒体、または様々な通信媒体の集合を表す。通信チャネル１５０は、通常、Ｗｉ−Ｆｉ、Ｂｌｕｅｔｏｏｔｈ（登録商標）などと同様の比較的短距離の通信チャネルである。しかしながら、通信チャネル１５０は、この点において必ずしも限定されるとは限らず、無線周波数（ＲＦ）スペクトルまたは１つもしくは複数の物理伝送線路などの任意のワイヤレスまたは有線の通信媒体、あるいはワイヤレス媒体と有線媒体との任意の組合せを備えることができる。他の例では、通信チャネル１５０は、有線もしくはワイヤレスのローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなどの、パケットベースネットワークの一部を形成する場合さえある。加えて、通信チャネル１５０は、ピアツーピアリンクを作成するために、ソースデバイス１２０およびシンクデバイス１６０によって使用することができる。
【００３４】
ソースデバイス１２０およびシンクデバイス１６０は、たとえば、リアルタイムストリーミングプロトコル（ＲＴＳＰ）制御メッセージを使用して、能力ネゴシエーションに従って通信セッションを確立することができる。次いで、ソースデバイス１２０およびシンクデバイス１６０は、ＩＥＥＥ８０２．１１規格ファミリーからの規格などの通信プロトコルを使用して、通信チャネル１５０を介して通信することができる。ソースデバイス１２０およびシンクデバイス１６０が、ワイヤレスアクセスポイントまたはいわゆるホットスポットなどの仲介者（intermediary）を使用せずに互いと直接通信するように、ソースデバイス１２０およびシンクデバイス１６０は、たとえば、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ（ＷＦＤ）規格に従って通信することができる。ソースデバイス１２０およびシンクデバイス１６０はまた、Ｔｕｎｎｅｌｅｄ  Ｄｉｒｅｃｔ  Ｌｉｎｋ  Ｓｅｔｕｐ（ＴＬＤＳ）を確立して、ネットワーク輻輳（congestion）を回避または低減することができる。ＷＦＤおよびＴＤＬＳは、比較的短距離の通信セッションをセットアップすることを目的とする。この文脈では、比較的短距離は、たとえば、約７０メートル未満を指す場合があるが、雑音の多いまたは遮るもののある環境では、デバイス間の距離は、約３５メートル未満、または約２０メートル未満など、さらに短い場合がある。
【００３５】
本開示の技法は、時々ＷＦＤに関して記載される場合があるが、これらの技法の態様は他の通信プロトコルにも適合できると考えられる。限定ではなく例として、ソースデバイス１２０とシンクデバイスとの間のワイヤレス通信は、直交周波数分割多重化（ＯＦＤＭ）技法を利用することができる。限定はしないが、時分割多元接続（ＴＤＭＡ）、周波数分割多元接続（ＦＤＭＡ）、符号分割多元接続（ＣＤＭＡ）、またはＯＦＤＭ、ＦＤＭＡ、ＴＤＭＡおよび／もしくはＣＤＭＡの任意の組合せを含む、多種多様な他のワイヤレス通信技法も使用することができる。
【００３６】
ソースデバイス１２０から受信されたデータを復号しレンダリングすることに加えて、シンクデバイス１６０は、ユーザ入力デバイス１６７からユーザ入力を受信することもできる。ユーザ入力デバイス１６７は、たとえば、キーボード、マウス、トラックボールもしくはトラックパッド、タッチスクリーン、ボイスコマンド認識モジュール、または任意の他のそのようなユーザ入力デバイスであり得る。ＵＩＰＭ１６８は、ユーザ入力デバイス１６７によって受信されたユーザ入力コマンドを、ソースデバイス１２０が解釈することが可能なデータパケット構造にフォーマットする。そのようなデータパケットは、送信機／受信機１６６により、通信チャネル１５０を介してソースデバイス１２０に送信される。送信機／受信機ユニット１２６はデータパケットを受信し、Ａ／Ｖ制御モジュール１２５はデータパケットを解析して、ユーザ入力デバイス１６７によって受信されたユーザ入力コマンドを解釈する。データパケット内で受信されたコマンドに基づいて、Ａ／Ｖ制御モジュール１２５は、符号化され送信されているコンテンツを変更することができる。このようにして、シンクデバイス１６０のユーザは、リモートで、かつソースデバイス１２０と直接対話することなしに、ソースデバイス１２０によって送信されているオーディオペイロードデータとビデオペイロードデータとを制御することができる。
【００３７】
加えて、シンクデバイス１６０のユーザは、ソースデバイス１２０上のアプリケーションを起動し、制御することが可能である場合がある。たとえば、シンクデバイス１６０のユーザは、ソースデバイス１２０に記憶された写真編集アプリケーションを起動し、そのアプリケーションを使用して、ソースデバイス１２０にローカルに記憶された写真を編集することが可能である場合がある。シンクデバイス１６０は、その写真が実際はソースデバイス１２０上で編集されているが、その写真がシンクデバイス１６０上でローカルに編集されているように見え、感じる、ユーザエクスペリエンスをユーザにもたらすことができる。そのような構成を使用して、デバイスユーザは、いくつかのデバイスとともに使用するために１つのデバイスの能力を活用することが可能である場合がある。たとえば、ソースデバイス１２０は、大量のメモリとハイエンド（high-end）処理能力とを有するスマートフォンであり得る。しかしながら、映画を見るとき、ユーザは、より大きいディスプレイスクリーンを有するデバイス上で映画を見ることを望む場合があり、その場合、シンクデバイス１６０は、タブレットコンピュータまたはさらに大きいディスプレイデバイスもしくはテレビジョンであり得る。電子メールを送ることまたは電子メールに応答することを行いたいとき、ユーザは、物理キーボードを有するデバイスを使用することを望む場合があり、その場合、シンクデバイス１６０はラップトップであり得る。どちらの場合でも、ユーザはシンクデバイスと対話していても、処理の大半は依然としてソースデバイス１２０によって実行することができる。ソースデバイスおよびシンクデバイスは、任意の所与のセッションにおいて、デバイスの能力をネゴシエーションおよび／または識別することにより、双方向対話を容易にすることができる。
【００３８】
いくつかの構成では、Ａ／Ｖ制御モジュール１２５は、ソースデバイス１２０のオペレーティングシステムによって実行されているオペレーティングシステムプロセスであり得る。しかしながら、他の構成では、Ａ／Ｖ制御モジュール１２５は、ソースデバイス１２０上で動作しているアプリケーションのソフトウェアプロセスであり得る。そのような構成では、シンクデバイス１６０のユーザが、ソースデバイス１２０上で動作しているオペレーティングシステムとは対照的に、ソースデバイス１２０上で動作しているアプリケーションと直接対話しているように、ユーザ入力コマンドはソフトウェアプロセスによって解釈されることができる。オペレーティングシステムとは対照的にアプリケーションと直接対話することにより、シンクデバイス１６０のユーザは、ソースデバイス１２０のオペレーティングシステムに対してネイティブでないコマンドのライブラリにアクセスすることができる。加えて、アプリケーションと直接対話することにより、コマンドは、異なるプラットフォーム上で動作しているデバイスによってより容易に送信され、処理されることが可能になり得る。
【００３９】
シンクデバイス１６０で加えられたユーザ入力は、通信チャネル１５０を介してソースデバイス１２０に送り返すことができる。一例では、ユーザインターフェースバックチャネル（ＵＩＢＣ）とも呼ばれる逆方向チャネルアーキテクチャは、シンクデバイス１６０で加えられたユーザ入力を、シンクデバイス１６０がソースデバイス１２０に送信することを可能にするために実装することができる。逆方向チャネルアーキテクチャは、ユーザ入力をトランスポートするための上位レイヤメッセージと、シンクデバイス１６０およびソースデバイス１２０でユーザインターフェース能力をネゴシエーションするための下位レイヤフレームとを含むことができる。ＵＩＢＣは、シンクデバイス１６０とソースデバイス１２０との間のインターネットプロトコル（ＩＰ）トランスポートレイヤ上に常駐することができる。このようにして、ＵＩＢＣは、開放型システム間相互接続（ＯＳＩ）通信モデルにおいてトランスポートレイヤより上位であり得る。ユーザ入力データを含んでいるデータパケットの信頼できる送信と順次配信とを促進するために、ＵＩＢＣは、伝送制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）またはユーザデータグラムプロトコル（ＵＤＰ）などの他のパケットベース通信プロトコルの上で動作するように構成することができる。ＵＤＰおよびＴＣＰは、ＯＳＩレイヤアーキテクチャにおいて並列に動作することができる。ＴＣＰ／ＩＰにより、シンクデバイス１６０およびソースデバイス１２０は、パケットロスの場合の再送信技法を実装することが可能になり得る。
【００４０】
ＵＩＢＣは、クロスプラットフォームユーザ入力データを含む、様々なタイプのユーザ入力データをトランスポートするように設計することができる。たとえば、ソースデバイス１２０は、ｉＯＳ（登録商標）オペレーティングシステムを実行することができ、一方シンクデバイス１６０は、Ａｎｄｒｏｉｄ（登録商標）またはＷｉｎｄｏｗｓ（登録商標）などの別のオペレーティングシステムを実行する。プラットフォームにかかわらず、ＵＩＰＭ１６８は、受信されたユーザ入力を、Ａ／Ｖ制御モジュール１２５が理解できる形態にカプセル化することができる。ソースデバイスとシンクデバイスが異なるプラットフォーム上で動作するかどうかにかかわらず、多くの異なるタイプのソースデバイスおよびシンクデバイスがプロトコルを活用することが可能になるように、いくつかの異なるタイプのユーザ入力フォーマットがＵＩＢＣによってサポートされ得る。一般入力フォーマットが定義され得、プラットフォーム固有入力フォーマットが両方ともサポートされ得、したがって、ユーザ入力がＵＩＢＣによってソースデバイス１２０とシンクデバイス１６０との間で通信され得る方式でフレキシビリティが与えられる。
【００４１】
本開示の技法により、ソースデバイス１２０がシンクデバイス１６０およびＷＤシステム内の１つまたは複数のさらなるシンクデバイスとマルチキャスト通信セッションを確立することが可能になる。従来、２つ以上のシンクデバイスが同じメディアデータの受信に関心があるとき、ソースデバイスはシンクデバイスの各々とユニキャストセッションを確立し、特定のシンクデバイス用の受信ポート上で、関心があるシンクデバイスの各々に同じメディアデータの別のコピーを送る。しかしながら、本開示の技法によれば、ソースデバイス１２０はシンクデバイス１６０およびＷＤシステム内の１つまたは複数のさらなるシンクデバイスとマルチキャストセッションを確立し、マルチキャストアドレスと受信マルチキャストポートとを使用して、マルチキャストメディアデータの単一コピーを関心があるシンクデバイスに送る。
【００４２】
より具体的には、ＷＤシステム内でマルチキャストを提供するために、ソースデバイス１２０は、ソースデバイス１２０で利用可能なマルチキャストセッションごとの宛先識別子として、マルチキャストＩＰアドレスと受信マルチキャストポート番号とを選択する。所与のマルチキャストセッションのメディアデータの受信に関心がある場合、シンクデバイス１６０は、マルチキャストセッションに関連付けられたマルチキャストＩＰアドレスおよび受信マルチキャストポート上でバインドする。ソースデバイス１２０は、マルチキャストセッションのメディアデータをＷＤシステム内のすべてのシンクデバイスにブロードキャストする。シンクデバイス１６０、およびマルチキャストセッションに関連付けられたマルチキャストＩＰアドレスおよび受信マルチキャストポート上でバインドされた任意の他の関心があるシンクデバイスは、メディアデータを受信し処理する。シンクデバイスの各々でマルチキャストアドレスおよび受信マルチキャストポート上の正確なバインドを保証する、いくつかの例示的なマルチキャスト加入手順が、以下により詳細に記載される。
【００４３】
図２は、本開示の技法を実装できるソースデバイス２２０の一例を示すブロック図である。ソースデバイス２２０は、図１Ａおよび図１Ｂ内のソースデバイス１２０と同様のデバイスであり得るし、ソースデバイス１２０と同じ方式で動作することができる。ソースデバイス２２０は、ローカルディスプレイ２２２と、スピーカ２２３と、プロセッサ２３１と、ディスプレイプロセッサ２３５と、オーディオプロセッサ２３６と、メモリ２３２と、トランスポートユニット２３３と、ワイヤレスモデム２３４とを含む。図２で示されたように、ソースデバイス２２０は、トランスポート、記憶、および表示のためにＡ／Ｖデータを符号化および／または復号する１つまたは複数のプロセッサ（すなわち、プロセッサ２３１、ディスプレイプロセッサ２３５およびオーディオプロセッサ２３６）を含むことができる。メディアデータまたはＡ／Ｖデータは、たとえばメモリ２３２で記憶することができる。メモリ２３２は、Ａ／Ｖファイル全体を記憶することができるか、または、たとえば別のデバイスもしくはソースからストリームされたＡ／Ｖファイルの一部分を記憶するだけのより小さいバッファを備えることができる。
【００４４】
トランスポートユニット２３３は、符号化されたＡ／Ｖデータをネットワークトランスポート用に処理することができる。たとえば、符号化されたＡ／Ｖデータはプロセッサ２３１によって処理され、ネットワークにわたる通信用のネットワークアクセスレイヤ（ＮＡＬ）ユニットに、トランスポートユニット２３３によってカプセル化されることができる。ＮＡＬユニットは、ワイヤレスモデム２３４により、ネットワーク接続を介してワイヤレスシンクデバイスに送られることができる。ワイヤレスモデム２３４は、たとえば、ＩＥＥＥ８０２．１１規格ファミリーのうちの１つを実装するように構成されたＷｉ−Ｆｉモデムであり得る。ソースデバイス２２０はまた、Ａ／Ｖデータをローカルに処理し表示することができる。特に、ディスプレイプロセッサ２３５は、ローカルディスプレイ２２２で表示されるようにビデオデータを処理することができ、オーディオプロセッサ２３６は、スピーカ２２３での出力用にオーディオデータを処理することができる。
【００４５】
図１のソースデバイス１２０に関して上述されたように、ソースデバイス２２０は、シンクデバイスからユーザ入力コマンドを受信することができる。たとえば、ソースデバイス２２０のワイヤレスモデム２３４は、シンクデバイスからＮＡＬユニットなどのカプセル化されたユーザ入力データパケットを受信し、カプセル化されたデータユニットをカプセル化解除のためにトランスポートユニット２３３に送ることができる。トランスポートユニット２３３はＮＡＬユニットからユーザ入力データパケットを抽出することができ、プロセッサ２３１はデータパケットを解析して、ユーザ入力コマンドを抽出することができる。ユーザ入力コマンドに基づいて、プロセッサ２３１は、ソースデバイス２２０によって処理されているＡ／Ｖデータのタイプを修正する。他の例では、ソースデバイス２２０は、トランスポートユニット２３３からユーザ入力データパケットを受信し、データパケットを解析してユーザ入力コマンドを抽出し、ユーザ入力コマンドに基づいてソースデバイス２２０によって処理されているＡ／Ｖデータのタイプを修正するようにプロセッサ２３１に指示する、ユーザ入力ユニットまたはユーザ入力ドライバ（図２には示されず）を含むことができる。このようにして、図１のＡ／Ｖ制御モジュール１２５に関して上述された機能は、完全にまたは部分的にプロセッサ２３１によって実装されることができる。
【００４６】
図２のプロセッサ２３１は、一般に、限定はしないが、１つもしくは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、他の等価な集積回路もしくはディスクリート論理回路、またはそれらのいくつかの組合せを含む、多種多様なプロセッサのうちのいずれをも表す。図２のメモリ２３２は、限定はしないが、同期ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）などのランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、電気的消去可能プログラマブル読取り専用メモリ（ＥＥＰＲＯＭ）、フラッシュメモリなどを含む、多種多様な揮発性メモリまたは不揮発性メモリのいずれも備えることができる。メモリ２３２は、オーディオ／ビデオデータならびに他の種類のデータを記憶するためのコンピュータ可読記憶媒体を備えることができる。加えて、メモリ２３２は、本開示に記載される様々な技法を実行することの一部として、プロセッサ２３１によって実行される命令とプログラムコードとを記憶することができる。
【００４７】
本開示の技法によれば、ソースデバイス２２０は、ＷＤシステム内の複数のシンクデバイスとマルチキャスト通信セッションを確立することができる。次いで、ソースデバイス２２０は、マルチキャストセッションに関連付けられたマルチキャストアドレスと受信マルチキャストポートとを使用して、同じメディアデータの受信に関心があるシンクデバイスに、マルチキャストメディアデータの単一コピーを送ることができる。ソースデバイス２２０は、ソースデバイス２２０で利用可能なマルチキャストセッションごとの宛先識別子として、マルチキャストＩＰアドレスと受信マルチキャストポート番号とを選択する。所与のマルチキャストセッションのメディアデータの受信に関心があるシンクデバイスは、マルチキャストセッションに関連付けられたマルチキャストＩＰアドレスおよび受信マルチキャストポート上でバインドする。次いで、ソースデバイス２２０は、ＷＤシステム内のすべてのシンクデバイスにマルチキャストセッションのメディアデータをブロードキャストし、マルチキャストセッションに関連付けられたマルチキャストＩＰアドレスおよび受信マルチキャストポート上でバインドされたシンクデバイスは、メディアデータを受信し処理する。
【００４８】
本開示は、シンクデバイスの各々でマルチキャストアドレスおよび受信マルチキャストポート上の正確なバインドを保証する、いくつかの例示的なマルチキャスト加入手順を記載する。図２の例では、ソースデバイス２２０のプロセッサ２３１は、マルチキャスト加入手順のいずれも実行するように構成されることができる。他の例では、ソースデバイス２２０の別のプロセッサまたは機能モジュール（図２には示されず）は、本開示に記載されるマルチキャスト加入手順を実行するように構成されることができる。
【００４９】
第１の例示的なマルチキャスト加入手順では、ソースデバイス２２０は、よく知られているマルチキャスト加入プロトコル、たとえばインターネットグループ管理プロトコル（ＩＧＭＰ）を使用して、マルチキャストセッションを確立することができる。ソースデバイス２２０は、ＷＤシステム内のシンクデバイスとＲＴＳＰ（リアルタイムストリーミングプロトコル）ネゴシエーションを実行して、マルチキャスト加入プロトコルの通信用のポート番号を決定することができる。たとえば、ソースデバイス２２０は、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ交換を使用して、マルチキャスト加入プロトコル通信チャネル用のポート番号情報を、シンクデバイスの各々で取得することができる。
【００５０】
次いで、ソースデバイス２２０は、マルチキャスト加入プロトコルを使用してマルチキャストセッションを広告し、シンクデバイスのうちの１つまたは複数は、マルチキャスト加入プロトコルを使用してマルチキャストセッションに参加することを要求することができる。この場合、ＷＦＤ規格は、特定のマルチキャストアプリケーション用の固定されたマルチキャストポート番号を有する。ＷＦＤ規格は、固定されたマルチキャストポート番号をマルチキャストセッションに参加しているシンクデバイスに通知するために、固定されたマルチキャストポート番号をマルチキャスト加入プロトコルに提供する。
【００５１】
「静的」マルチキャスト加入手順と呼ばれる第２の例示的なマルチキャスト加入手順では、ソースデバイス２２０は、ＷＤ通信セッションセットアップのＲＴＳＰ能力ネゴシエーションフェーズを使用して、マルチキャスト通信セッションを確立する。この場合、ソースデバイス２２０は、よく知られているあらかじめ定義されたマルチキャストＩＰアドレスおよびポート上でマルチキャストメディアデータを送る。したがって、シンクデバイスのすべては、マルチキャストＩＰアドレスおよび受信マルチキャストポート上で区別なしに（blindly）バインドして、任意の可能なマルチキャストデータを受信することができる。
【００５２】
本技法は、受信マルチキャストポートのみで区別なしにバインドしているシンクデバイスが、求められていないマルチキャストメディアデータを落とすことを回避するために、加入手順を提供する。本技法により、ソースデバイス２２０が最初にマルチキャストセッション用のメディアデータの利用可能性を広告することが可能になり、シンクデバイスが関心をもったときにマルチキャストメディアデータを具体的に要求することが可能になる。ソースデバイス２２０は、ＲＴＳＰを使用して、たとえばＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ要求を使用して、シンクデバイスにメディアデータの利用可能性を広告する。シンクデバイスの各々は、たとえばＲＴＳＰ  ＳＥＴＵＰ要求を使用して、マルチキャストメディアデータまたはユニキャストメディアデータのいずれかを要求することができる。マルチキャストメディアデータの場合、ＷＦＤ規格はあらかじめ定義されたマルチキャストポート番号を提供する。ユニキャストメディアデータの場合、各要求シンクデバイスはユニキャストポート番号を提供する。静的マルチキャスト加入手順は、図５に関してより詳細に記載される。
【００５３】
「動的」マルチキャスト加入手順と呼ばれる第３の例示的なマルチキャスト加入手順では、ソースデバイス２２０は、ＷＤ通信セッションセットアップのＲＴＳＰ能力ネゴシエーションフェーズを使用して、マルチキャスト通信セッションを確立し、マルチキャストセッション用のマルチキャストポート番号を選択する。上述の第１および第２の例示的なマルチキャスト加入手順とは異なり、動的マルチキャスト加入手順により、関心があるシンクデバイスの利用可能なポート番号に基づいて、ソースデバイス２２０がマルチキャストセッション用のマルチキャストポート番号を選択することが可能になる。
【００５４】
ソースデバイス２２０は、最初に、たとえばＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ要求を使用して、各シンクデバイスにそのマルチキャストメディアデータにおける一般的な関心およびその利用可能なポートについて照会する。シンクデバイスの各々は、マルチキャストメディアデータの受信に関心があるかどうかを示して応答し、関心がある場合、利用可能なマルチキャストポート番号を提供する。次いで、ソースデバイス２２０は、特定のマルチキャストセッションごとに関心があるシンクデバイスのすべてで利用可能なマルチキャストポート番号を選択する。ソースデバイス２２０は、たとえばＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ交換を使用して、マルチキャストセッションの各々用のマルチキャストメディアデータの利用可能性と、マルチキャストセッション用の選択されたマルチキャストポート番号とをシンクデバイスに広告する。シンクデバイスの各々は、たとえばＲＴＳＰ  ＳＥＴＵＰ交換を使用して、特定のマルチキャストセッションのマルチキャストメディアデータ、またはユニキャストメディアデータを要求することができる。マルチキャストメディアデータの場合、各要求シンクデバイスは、最初の広告からマルチキャストセッション用の選択されたマルチキャストポート番号をすでに知っている。ユニキャストメディアデータの場合、各要求シンクデバイスは、ソースデバイス２２０にユニキャストポート番号を提供する。
【００５５】
新しいシンクデバイスがマルチキャストセッションの間に参加する場合、新しいシンクデバイスが利用可能な選択されたポートを有していないなら、選択されたマルチキャストポート番号は改訂される必要があり得る。一例では、ポート番号はブラインド型ポート改訂を使用して改訂されることができ、そこでは、新しいシンクデバイスがどのマルチキャストセッションに参加することに関心があるかにかかわらず、ソースデバイス２２０で利用可能なすべてのマルチキャストセッション用のポート番号が、すべてのシンクデバイスで利用可能になるように改訂される。マルチキャストポート番号が改訂されると、ソースデバイス２２０はすべてのシンクデバイスに新しいポート番号を通知する。加えて、ソースデバイス２２０は、所定の時間期間の間、古いポート番号と新しいポート番号の両方にマルチキャストメディアデータを送ることができる。ブラインド型ポート改訂を伴う動的マルチキャスト加入手順は、図６に関してより詳細に記載される。
【００５６】
別の例では、ポート番号はインフォームドポート改訂を使用して改訂されることができ、そこでは、ソースデバイス２２０は、新しいシンクデバイスがどのマルチキャストセッションに参加することに関心があるかを判定し、次いでそのマルチキャストセッション用のみのポート番号を改訂する。インフォームドポート改訂の場合、ソースデバイス２２０は、上述された一般的な照会を実行する代わりに、たとえばＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ要求を使用して、各シンクデバイスに特定のマルチキャストセッションにおけるその関心について照会する。インフォームドポート改訂手順は、マルチキャストデータの受信に一般的に関心があるすべてのシンクデバイスではなく、特定のマルチキャストセッションに属するシンクデバイスでマルチキャストセッションごとのポート番号のみが利用可能になる必要があるので、ポート番号のより効率的な使用を提供することができる。インフォームドポート改訂を伴う動的マルチキャスト加入手順は、図７に関してより詳細に記載される。
【００５７】
ユニキャストセッションに参加している単一のシンクデバイスのみを含むＷＤシステムに第２のシンクデバイスが加入する場合、ソースデバイス２２０は両方のシンクデバイスを有するマルチキャストセッションに遷移することができる。本技法によれば、ソースデバイス２２０は、第２のシンクデバイスと上述のマルチキャスト加入手順のうちの１つを実行する。第２のシンクデバイスがマルチキャストセッションに加入することを要求する場合、ソースデバイス２２０は、第１のシンクデバイスにユニキャストメディアデータを送り続けながら、第２のシンクデバイスにマルチキャストメディアデータを送る。次いで、ソースデバイス２２０は、第１のシンクデバイスとマルチキャスト加入手順を実行する。第１のシンクデバイスがマルチキャストセッションに加入すると、ソースデバイス２２０はユニキャストセッションを中止する。ユニキャスト通信セッションをマルチキャストセッションに変換するための手順は、図８に関してより詳細に記載される。
【００５８】
図３は、本開示の技法を実装できるシンクデバイスの一例を示すブロック図である。シンクデバイス３６０は、図１Ａおよび図１Ｂ内のシンクデバイス１６０と同様であり得る。シンクデバイス３６０は、プロセッサ３３１と、メモリ３３２と、トランスポートユニット３３３と、ワイヤレスモデム３３４と、ディスプレイプロセッサ３３５と、ローカルディスプレイ３６２と、オーディオプロセッサ３３６と、スピーカ３６３と、ユーザ入力インターフェース３７６とを含む。シンクデバイス３６０は、ソースデバイスから送られたカプセル化されたデータユニットをワイヤレスモデム３３４で受信する。ワイヤレスモデム３３４は、たとえば、ＩＥＥＥ８０２．１１規格ファミリーからのもう１つの規格を実装するように構成されたＷｉ−Ｆｉモデムであり得る。トランスポートユニット３３３は、カプセル化されたデータユニットをカプセル化解除することができる。たとえば、トランスポートユニット３３３は、カプセル化されたデータユニットから符号化されたビデオデータを抽出し、かつ復号され出力用にレンダリングされるべき符号化されたＡ／Ｖデータをプロセッサ３３１に送ることができる。ディスプレイプロセッサ３３５は、ローカルディスプレイ３６２に表示されるべき復号されたビデオデータを処理することができ、オーディオプロセッサ３３６は、スピーカ３６３に出力するために復号されたオーディオデータを処理することができる。
【００５９】
オーディオおよびビデオデータをレンダリングすることに加えて、ワイヤレスシンクデバイス３６０は、ユーザ入力インターフェース３７６を介してユーザ入力データも受信することができる。ユーザ入力インターフェース３７６は、限定はしないが、タッチディスプレイインターフェース、キーボード、マウス、ボイスコマンドモジュール、（たとえば、カメラベースの入力キャプチャ機能を有する）ジェスチャキャプチャデバイスを含む、いくつかのユーザ入力デバイスのいずれも、またはいくつかのユーザ入力デバイスの任意の他のユーザ入力デバイスも表すことができる。ユーザ入力インターフェース３７６を介して受信されたユーザ入力は、プロセッサ３３１によって処理されることができる。この処理は、受信されたユーザ入力コマンドを含むデータパケットを生成することを含むことができる。生成されると、トランスポートユニット３３３は、そのデータパケットを、ＵＩＢＣを介したソースデバイスへのネットワークトランスポート用に処理することができる。
【００６０】
図３のプロセッサ３３１は、１つもしくは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、他の等価な集積回路もしくはディスクリート論理回路などの広範囲のプロセッサのうちの１つまたは複数、あるいはそれらの何らかの組合せを備えることができる。図３のメモリ３３２は、限定はしないが、同期ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）などのランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、電気的消去可能プログラマブル読取り専用メモリ（ＥＥＰＲＯＭ）、フラッシュメモリなどを含む、多種多様な揮発性メモリまたは不揮発性メモリのいずれも備えることができる。メモリ２３２は、オーディオ／ビデオデータならびに他の種類のデータを記憶するためのコンピュータ可読記憶媒体を備えることができる。加えて、メモリ３３２は、本開示に記載される様々な技法を実行することの一部として、プロセッサ３３１によって実行される命令とプログラムコードとを記憶することができる。
【００６１】
本開示の技法によれば、シンクデバイス３６０は、ＷＤシステム内のソースデバイスおよび１つまたは複数の他のシンクデバイスとのマルチキャスト通信セッションに参加することができる。次いで、ソースデバイスは、マルチキャストセッション用のマルチキャストアドレスと受信マルチキャストポートとを使用して、シンクデバイス３６０および同じメディアデータの受信に関心がある任意の他のシンクデバイスに、マルチキャストメディアデータの単一コピーを送ることができる。ソースデバイスは、ソースデバイスで利用可能なマルチキャストセッションごとの宛先識別子として、マルチキャストＩＰアドレスと受信マルチキャストポート番号とを選択する。アドレスおよびポート番号はＷＦＤ規格によってあらかじめ定義されているか、またはソースデバイスによって広告されているかのいずれかであるので、シンクデバイス３６０は、マルチキャストセッションごとのマルチキャストＩＰアドレスと受信マルチキャストポート番号とを知っている。所与のマルチキャストセッションのメディアデータの受信に関心がある場合、シンクデバイス３６０は、マルチキャストセッションに関連付けられたマルチキャストＩＰアドレスおよび受信マルチキャストポート上でバインドする。次いで、ソースデバイスは、シンクデバイス３６０およびＷＤシステム内の他の参加しているシンクデバイスに、マルチキャストセッションのメディアデータをブロードキャストし、マルチキャストセッションに関連付けられたマルチキャストＩＰアドレスおよび受信マルチキャストポート上でバインドされたシンクデバイス３６０は、メディアデータを受信し処理する。
【００６２】
本開示は、シンクデバイスの各々でマルチキャストアドレスおよび受信マルチキャストポート上の正確なバインドを保証する、いくつかの例示的なマルチキャスト加入手順を記載する。図３の例では、シンクデバイス３６０のプロセッサ３３１は、マルチキャスト加入手順のいずれも実行するように構成することができる。他の例では、シンクデバイス３６０の別のプロセッサまたは機能モジュール（図３には示されず）は、本開示に記載されるマルチキャスト加入手順を実行するように構成されることができる。
【００６３】
第１の例示的なマルチキャスト加入手順では、シンクデバイス３６０は、よく知られているマルチキャスト加入プロトコル、たとえばＩＧＭＰを使用して、マルチキャストセッションに加入することができる。シンクデバイス３６０は、ソースデバイスとのＲＴＳＰネゴシエーションに参加して、マルチキャスト加入手順の通信用のシンクデバイス３６０でのポート番号をソースデバイスに知らせる。たとえば、シンクデバイス３６０は、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ交換を使用して、マルチキャスト加入プロトコル通信チャネル用のポート番号情報を、ソースデバイスに送ることができる。
【００６４】
次いで、ソースデバイスは、マルチキャスト加入プロトコルを使用してマルチキャストセッション用のマルチキャストメディアデータを広告し、シンクデバイス３６０は、マルチキャスト加入プロトコルを使用して、広告されたマルチキャストセッションに参加することを要求する。この場合、ＷＦＤ規格は、特定のマルチキャストアプリケーション用の固定されたマルチキャストポート番号を有する。ＷＦＤ規格は、固定されたマルチキャストポート番号をマルチキャストセッションに参加しているシンクデバイスに通知するために、固定されたマルチキャストポート番号をマルチキャスト加入プロトコルに提供する。
【００６５】
「静的」マルチキャスト加入手順と呼ばれる第２の例示的なマルチキャスト加入手順では、シンクデバイス３６０は、ＷＤ通信セッションセットアップのＲＴＳＰ能力ネゴシエーションフェーズを使用して、マルチキャストセッションに参加する。この場合、ソースデバイスは、よく知られているあらかじめ定義されたマルチキャストＩＰアドレスおよびポート上でマルチキャストメディアデータを送る。したがって、シンクデバイス３６０は、任意の他のシンクデバイスとともに、マルチキャストＩＰアドレスおよびポート上で区別なしにバインドして、任意の可能なマルチキャストデータを受信することができる。
【００６６】
本技法は、受信マルチキャストポートのみで区別なしにバインドしているシンクデバイス３６０が、求められていないマルチキャストメディアデータを落とすことを回避するために、加入手順を提供する。本技法により、ソースデバイスが最初にマルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することが可能になり、シンクデバイス３６０が関心をもったときにマルチキャストメディアデータを具体的に要求することが可能になる。ソースデバイスは、ＲＴＳＰを使用して、たとえばＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ要求を使用して、シンクデバイス３６０にメディアデータの利用可能性を広告する。応答して、シンクデバイス３６０は、たとえばＲＴＳＰ  ＳＥＴＵＰ要求を使用して、マルチキャストメディアデータまたはユニキャストメディアデータのいずれかを要求することができる。マルチキャストメディアデータの場合、ＷＦＤ規格はあらかじめ定義されたマルチキャストポート番号を提供する。ユニキャストメディアデータの場合、各要求シンクデバイスは、ソースデバイスにユニキャストポート番号を提供する。静的マルチキャスト加入手順は、図５に関してより詳細に記載される。
【００６７】
「動的」マルチキャスト加入手順と呼ばれる第３の例示的なマルチキャスト加入手順では、シンクデバイス３６０は、ＷＤ通信セッションセットアップのＲＴＳＰ能力ネゴシエーションフェーズを使用して、マルチキャストセッションに参加し、マルチキャストセッション用のマルチキャストポート番号の通知を受信する。上述の第１および第２の例示的なマルチキャスト加入手順とは異なり、動的マルチキャスト加入手順により、シンクデバイス３６０および他の関心があるシンクデバイスの利用可能なポート番号に基づいて、ソースデバイスがマルチキャストセッション用のマルチキャストポート番号を選択することが可能になる。
【００６８】
ソースデバイスは、最初に、たとえばＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ要求を使用して、各シンクデバイスにそのマルチキャストメディアデータにおける一般的な関心およびその利用可能なポートについて照会する。シンクデバイス３６０は、マルチキャストメディアデータの受信に関心があるかどうかを示して応答し、関心がある場合、その利用可能なマルチキャストポート番号を提供する。次いで、ソースデバイスは、そのソースデバイスで利用可能な特定のマルチキャストセッションごとに関心があるシンクデバイスのすべてで利用可能なマルチキャストポート番号を選択する。ソースデバイスは、たとえばＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ交換を使用して、マルチキャストセッションの各々用のマルチキャストメディアデータの利用可能性と、マルチキャストセッション用の選択されたマルチキャストポート番号とをシンクデバイス３６０および他の関心があるシンクデバイスに広告する。次いで、シンクデバイス３６０は、たとえばＲＴＳＰ  ＳＥＴＵＰ交換を使用して、特定のマルチキャストセッションのマルチキャストメディアデータ、またはユニキャストメディアデータを要求することができる。マルチキャストメディアデータの場合、各要求シンクデバイスは、最初の広告からマルチキャストセッション用の選択されたマルチキャストポート番号をすでに知っている。ユニキャストメディアデータの場合、各要求シンクデバイスは、ソースデバイスにユニキャストポート番号を提供する。動的マルチキャスト加入手順は、図６および図７に関してより詳細に記載される。
【００６９】
図４は、通信チャネル１５０を介して通信するために、図１の送信機／受信機１２６および送信機／受信機１６６によって使用され得る、例示的な送信機システム４１０と受信機システム４５０とを示すブロック図である。送信機システム４１０では、いくつかのデータストリームのトラフィックデータが、データソース４１２から送信（ＴＸ）データプロセッサ４１４に供給される。各データストリームは、それぞれの送信アンテナを介して送信されることができる。ＴＸデータプロセッサ４１４は、データストリームごとのトラフィックデータを、そのデータストリーム用に選択された特定の符号化方式に基づいてフォーマットし、コードし、インターリーブする。データストリームごとのコードデータは、直交周波数分割多重化（ＯＦＤＭ）技法を使用して、パイロットデータと多重化されることができる。限定はしないが、時分割多重アクセス（ＴＤＭＡ）、周波数分割多重アクセス（ＦＤＭＡ）、符号分割多重アクセス（ＣＤＭＡ）、またはＯＦＤＭ、ＦＤＭＡ、ＴＤＭＡ、および／もしくはＣＤＭＡの任意の組合せを含む、多種多様な他のワイヤレス通信技法も使用されることができる。
【００７０】
図４に従って、パイロットデータは、通常、知られている方式で処理される知られているデータパターンであり、チャネル応答を推定するために受信機システム４５０で使用されることができる。次いで、データストリームごとに多重化されたパイロットデータおよびコードデータは、変調シンボルを与えるために、そのデータストリーム用に選択された特定の変調方式（たとえば、２位相シフトキーイング（ＢＰＳＫ）、４位相シフトキーイング（ＱＰＳＫ）、Ｍ−ＰＳＫ、またはＭ−ＱＡＭ（直交振幅変調）、ここでＭは２のべき乗であり得る）に基づいて、変調（たとえば、シンボルマッピング）される。データストリームごとのデータレート、コーディング、および変調は、メモリ４３２と結合され得るプロセッサ４３０によって実行される命令によって決定されることができる。
【００７１】
次いで、データストリーム用の変調シンボルがＴＸ  ＭＩＭＯプロセッサ４２０に供給され、ＴＸ  ＭＩＭＯプロセッサ４２０はさらに（たとえば、ＯＦＤＭ用に）その変調シンボルを処理することができる。次いで、ＴＸ  ＭＩＭＯプロセッサ４２０は、ＮT個の変調シンボルストリームをＮT個の送信機（ＴＭＴＲ）４２２Ａ〜４２２Ｔ（「送信機４２２」）に供給することができる。いくつかの態様では、ＴＸ  ＭＩＭＯプロセッサ４２０は、データストリームのシンボルと、シンボルがそこから送信されているアンテナとにビームフォーミング重みを適用する。送信機４２２の各々は、それぞれのシンボルストリームを受信し処理して、１つまたは複数のアナログ信号を供給し、さらに、それらのアナログ信号を調整（たとえば、増幅、フィルタ処理、およびアップコンバート）して、ＭＩＭＯチャネルを介して送信するのに適した変調信号を供給することができる。次いで、送信機４２２からのＮT個の変調信号は、それぞれＮT個のアンテナ４２４Ａ〜４２４ｔ（「アンテナ４２４」）から送信される。
【００７２】
受信機システム４５０では、送信された変調信号はＮR個のアンテナ４５２Ａ〜４５２Ｒ（「アンテナ４５２」）によって受信され、アンテナ４５２の各々からの受信信号は、受信機（ＲＣＶＲ）４５４Ａ〜４５４Ｒ（「受信機４５４」）のうちのそれぞれに供給される。受信機４５４の各々は、それぞれの受信信号を調整（たとえば、フィルタ処理、増幅、およびダウンコンバート）し、調整された信号をデジタル化してサンプルを供給し、さらにそれらのサンプルを処理して、対応する「受信」シンボルストリームを供給する。次いで、受信（ＲＸ）データプロセッサ４６０は、ＮR個の受信機４５４からＮR個の受信シンボルストリームを受信し、特定の受信機処理技法に基づいて処理して、ＮT個の「検出」シンボルストリームを供給する。次いで、ＲＸデータプロセッサ４６０は、各検出シンボルストリームを復調し、デインターリーブし、復号して、データストリームのトラフィックデータを復元する。ＲＸデータプロセッサ４６０による処理は、送信機システム４１０でのＴＸ  ＭＩＭＯプロセッサ４２０およびＴＸデータプロセッサ４１４によって実行される処理と相補関係にある。
【００７３】
メモリ４７２と結合され得るプロセッサ４７０は、どのプリコーディング行列を使用すべきかを周期的に判定する。逆方向リンクメッセージは、通信リンクおよび／または受信データストリームに関する様々なタイプの情報を備えることができる。次いで、逆方向リンクメッセージは、データソース４３６からいくつかのデータストリームのトラフィックデータも受信するＴＸデータプロセッサ４３８によって処理され、変調器４８０によって変調され、送信機４５４によって調整され、送信機システム４１０に返送される。
【００７４】
送信機システム４１０では、受信機システム４５０からの変調信号は、アンテナ４２４によって受信され、受信機４２２によって調整され、復調器４４０によって復調され、受信機システム４５０によって送信された逆方向リンクメッセージを抽出するためにＲＸデータプロセッサ４４２によって処理される。次いで、プロセッサ４３０は、ビームフォーミング重みを決定するためにどのプリコーディング行列を使用すべきかを判定し、抽出されたメッセージを処理する。
【００７５】
図５は、静的マルチキャスト加入手順を使用して、ソースデバイス５１０と２つのシンクデバイス５１２、５１４との間でマルチキャスト通信セッションを確立するための例示的なメッセージ転送シーケンスを示す概念図である。ソースデバイス５１０は、概して、図１Ａおよび図１Ｂのソースデバイス１２０ならびに図２のソースデバイス２２０について上述されたのと同じ方式で動作することができる。シンクデバイス５１２および５１４は、概して、図１Ａおよび図１Ｂのシンクデバイス１６０ならびに図３のシンクデバイス３６０について上述されたのと同じ方式で動作することができる。
【００７６】
図５の示された例では、ソースデバイス５１０は、すでにシンクデバイス５１２とマルチキャストセッションを確立しており、セッションを介してシンクデバイス５１２にマルチキャストメディアデータを送信している。シンクデバイス５１４と通信するために、ソースデバイス５１０とシンクデバイス５１４は、Ｐ２Ｐデバイス発見およびペアリング５２２を実行する。場合によっては、ソースデバイス５１０、シンクデバイス５１２およびシンクデバイス５１４は、ソースデバイス５１０をグループオーナーとするＷｉ−Ｆｉ  Ｐ２Ｐグループを形成することができる。
【００７７】
ソースデバイス５１０とシンクデバイス５１４が接続性を確立した後、ソースデバイス５１０とシンクデバイス５１４は、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ交換５２４を使用して、能力ネゴシエーション交換の一部としてそれらの通信セッションのためのパラメータのセットと能力とを決定することができる。交換５２４に基づいて、ソースデバイス５１０は、通信セッションのために使用されるべきパラメータの最適セットを決定し、シンクデバイス５１４にＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ要求メッセージ５２６を送ることができる。要求メッセージ５２６は、ソースデバイス５１０とシンクデバイス５１４との間の通信セッション中に使用されるべきパラメータセットを含んでいる場合がある。
【００７８】
静的マルチキャスト加入手順によれば、ソースデバイス５１０は、マルチキャストセッション用のマルチキャストメディアデータおよびユニキャストセッション用のユニキャストメディアデータの利用可能性を、シンクデバイス５１４に広告する。たとえば、図５で示されたように、ソースデバイス５１０は、ＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ要求メッセージ５２６内のｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータを使用して、マルチキャストメディアデータの利用可能性をシンクデバイス５１４に広告する。ソースデバイス５１０はまた、同じ要求メッセージ５２６内のｕｎｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータを使用して、ユニキャストメディアデータの利用可能性を広告する。ｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータは、マルチキャストコンテンツとその送信モードとを、ｕｎｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌから区別するために使用される。要求メッセージ５２６を受信すると、シンクデバイス５１４は、要求メッセージ５２６内で指定されたパラメータを設定することに成功したかどうかを示すＲＴＳＰステータスコードを含む、ＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ応答メッセージ５２８で応答する。
【００７９】
次いで、シンクデバイス５１４は、ＲＴＳＰ  ＳＥＴＵＰ要求メッセージ５３０を使用して、マルチキャストメディアデータまたはユニキャストメディアデータのいずれかを受信することを要求することができる。図５の例では、シンクデバイス５１４は、ｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータを含む要求メッセージ５３０をソースデバイス５１０に送ることにより、マルチキャストセッションに参加することを要求する。
【００８０】
要求メッセージ５３０を受信すると、ソースデバイス５１０は、シンクデバイス５１４をマルチキャストセッションに追加することに成功したかどうかを示すＲＴＳＰステータスコードを含む、ＲＴＳＰ  ＳＥＴＵＰ応答メッセージ５３２で応答する。静的マルチキャスト加入手順では、ＷＦＤ規格は、マルチキャストセッション用のあらかじめ定義されたマルチキャストポート番号をシンクデバイス５１４に提供する。応答メッセージ５３２を受信すると、シンクデバイス５１４は、あらかじめ定義されたマルチキャストポート上でバインドして、広告されたマルチキャストメディアデータを受信する。次いで、ソースデバイス５１０は、あらかじめ定義されたマルチキャストポート番号を使用して、セッションを介して５１２と５１４の両方のシンクデバイスにマルチキャストセッション用のマルチキャストメディアデータの単一コピーを送る。この場合、ソースデバイス５１０からのマルチキャストメディアデータの送信を開始するために、シンクデバイス５１４からの再生コマンドは必要とされない。
【００８１】
図５の示された例では、ソースデバイス５１０はまた、シンクデバイス５１６とユニキャスト通信セッションを確立することができる。シンクデバイス５１６と通信するために、ソースデバイス５１０とシンクデバイス５１６は、Ｐ２Ｐデバイス発見およびペアリング５３６を実行する。ソースデバイス５１０とシンクデバイス５１６が接続性を確立した後、ソースデバイス５１０とシンクデバイス５１６は、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ交換５３８を使用して、能力ネゴシエーション交換の一部としてそれらの通信セッションのためのパラメータのセットと能力とを決定することができる。交換５３８に基づいて、ソースデバイス５１０は、通信セッションのために使用されるべきパラメータの最適セットを決定し、シンクデバイス５１６にＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ要求メッセージ５４０を送ることができる。要求メッセージ５４０は、ソースデバイス５１０とシンクデバイス５１６との間の通信セッション中に使用されるべきパラメータセットを含んでいる場合がある。
【００８２】
静的マルチキャスト加入手順によれば、ソースデバイス５１０は、マルチキャストセッション用のマルチキャストメディアデータおよびユニキャストセッション用のユニキャストメディアデータの利用可能性を、シンクデバイス５１６に広告する。たとえば、図５に示されたように、ソースデバイス５１０は、ＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ要求メッセージ５４０内で、ｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータを使用してマルチキャストメディアデータの利用可能性を広告し、ｕｎｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータを使用してユニキャストメディアデータの利用可能性を広告する。要求メッセージ５４０を受信すると、シンクデバイス５１６は、要求メッセージ５４０内で指定されたパラメータを設定することに成功したかどうかを示すＲＴＳＰステータスコードを含む、ＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ応答メッセージ５４２で応答する。
【００８３】
次いで、シンクデバイス５１６は、ＲＴＳＰ  ＳＥＴＵＰ要求メッセージ５４４を使用して、マルチキャストメディアデータまたはユニキャストメディアデータのいずれかを受信することを要求することができる。図５の例では、シンクデバイス５１６は、ｕｎｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータを含む要求メッセージ５４４をソースデバイス５１０に送ることにより、ユニキャストセッションに参加することを要求する。この場合、シンクデバイス５１６はまた、要求メッセージ５４４内のｒｅｃｅｉｖｉｎｇ＿ｐｏｒｔ＿ｕｎｉｃａｓｔパラメータを使用して、そこでユニキャストメディアデータを受信する利用可能な受信ユニキャストポート番号を、ソースデバイス５１０に提供する。
【００８４】
要求メッセージ５４４を受信すると、ソースデバイス５１０は、シンクデバイス５１６とのユニキャストセッションを確立することに成功したかどうかを示すＲＴＳＰステータスコードを含む、ＲＴＳＰ  ＳＥＴＵＰ応答メッセージ５４６で応答する。ユニキャストメディアデータを受信するために、シンクデバイス５１６は、ＲＴＳＰ  ＰＬＡＹコマンド５５０をソースデバイス５１０に送る。次いで、ソースデバイス５１０は、ユニキャストセッション用に以前に示された受信ユニキャストポート番号を使用して、ユニキャストメディアデータをシンクデバイス５１６に送る。
【００８５】
図６は、ブラインド型ポート改訂を伴う動的マルチキャスト加入手順を使用して、ソースデバイス６１０と２つのシンクデバイス６１２、６１４との間でマルチキャスト通信セッションを確立するための例示的なメッセージ転送シーケンスを示す概念図である。ソースデバイス６１０は、概して、図１Ａおよび図１Ｂのソースデバイス１２０ならびに図２のソースデバイス２２０について上述されたのと同じ方式で動作することができる。シンクデバイス６１２および６１４は、概して、図１Ａおよび図１Ｂのシンクデバイス１６０ならびに図３のシンクデバイス３６０について上述されたのと同じ方式で動作することができる。
【００８６】
図６の示された例では、シンクデバイス６１２と通信セッションを確立するために、ソースデバイス６１０は、最初にＰ２Ｐデバイス発見およびペアリング６２０と、シンクデバイス６１２とを実行する。ソースデバイス６１０とシンクデバイス６１２が接続性を確立した後、ソースデバイス６１０は、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ要求メッセージ６２２を使用して、能力ネゴシエーション交換の一部としてそれらの通信セッション中に使用するための、シンクデバイス６１２によってサポートされるパラメータのセットと能力とを決定することができる。動的マルチキャスト加入手順によれば、ソースデバイス６１０は、要求メッセージ６２２を使用して、シンクデバイス６１２にそのマルチキャストデータにおける一般的な関心およびその利用可能なポートについて照会する。たとえば、図６に示されたように、ソースデバイス６１０は、要求メッセージ６２２内で、ｍｕｌｔｉｃａｓｔ＿ｉｎｔｅｒｅｓｔｅｄパラメータを使用して、シンクデバイス６１２からマルチキャストメディアデータの受信に関心があることの指示を要求し、ｍｕｌｔｉｃａｓｔ＿ｐｏｒｔｓパラメータを使用して、シンクデバイス６１２から利用可能なポートを要求する。
【００８７】
シンクデバイス６１２は、マルチキャストデータの受信に一般に関心があるかどうかを示し、関心がある場合、利用可能なポート番号を供給する、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ応答メッセージ６２４で要求メッセージ６２２に応答する。たとえば、図６で示されたように、シンクデバイス６１２は、応答メッセージ６２４内で、「ｙｅｓ」に等しく設定されたｍｕｌｔｉｃａｓｔ＿ｉｎｔｅｒｅｓｔｅｄパラメータを使用してマルチキャストメディアデータの受信への関心を示し、ポート「６０００」とポートの範囲「６１００〜６２００」に等しく設定されたｍｕｌｔｉｃａｓｔ＿ｐｏｒｔｓパラメータを使用して利用可能なマルチキャストポートを示す。
【００８８】
メッセージ６２２、６２４のＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ交換に基づいて、ソースデバイス６１０は、通信セッションのために使用されるべきパラメータの最適セットを決定し、シンクデバイス６１２とＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ交換６２６を実行することができる。交換６２６は、ソースデバイス６１０とシンクデバイス６１２との間の通信セッション中に使用されるべきパラメータセットを含んでいる場合がある。動的マルチキャスト加入手順によれば、シンクデバイス６１２はマルチキャストメディアデータの受信に関心があるので、ソースデバイス６１０は、ソースデバイス６１０で利用可能なマルチキャストセッションごとにシンクデバイス６１２で利用可能な受信マルチキャストポート番号を選択する。ソースデバイス６１０が２つ以上のシンクデバイスと通信している場合、ソースデバイス６１０は、マルチキャストメディアデータの受信に関心があるすべてのシンクデバイスで利用可能なポートに基づいて、マルチキャストセッション用の受信マルチキャストポート番号を選択することができる。
【００８９】
次いで、ソースデバイス６１０は、ＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ交換６２６を使用して、マルチキャストセッションの各々用のマルチキャストメディアデータの利用可能性と、マルチキャストセッション用の選択されたマルチキャストポート番号とをシンクデバイス６１２に広告する。図６で示されたように、ソースデバイス６１０は、交換６２６内で、ｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ１パラメータを使用して第１のマルチキャストセッション用の、およびｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ２パラメータを使用して第２のマルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告する。図示された例では、ｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ１パラメータは、マルチキャストＩＰアドレス「ｉｐ１」と受信マルチキャストポート番号「６１２０」とを有する「ｕｒｌ１」上のマルチキャストメディアデータの利用可能性を広告する。加えて、ｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ２パラメータは、マルチキャストＩＰアドレス「ｉｐ２」と受信マルチキャストポート番号「６１５０」とを有する「ｕｒｌ２」上のマルチキャストメディアデータの利用可能性を広告する。
【００９０】
次いで、シンクデバイス６１２は、ＲＴＳＰ  ＳＥＴＵＰ交換６２８を使用して、第１のマルチキャストセッション用のマルチキャストメディアデータを受信することを要求することができる。図６の例では、シンクデバイス６１２は、ｕｒｌ１に等しく設定されたｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータを含む交換６２８をソースデバイス６１０と実行することにより、第１のマルチキャストセッションに参加することを要求する。シンクデバイス６１２は、第１のマルチキャストセッション用にソースデバイス６１０によって広告された、選択されたマルチキャストＩＰアドレス（たとえば、ｉｐ１）およびマルチキャストポート番号（たとえば、６１２０）上でバインドして、マルチキャストメディアデータを受信する。次いで、ソースデバイス６１０は、選択されたマルチキャストＩＰアドレスおよび受信マルチキャストポート番号を使用して、セッションを介してシンクデバイス６１２に第１のマルチキャストセッション用のマルチキャストメディアデータの単一コピーを送る。この場合、ソースデバイス６１０からのマルチキャストメディアデータの送信を開始するために、シンクデバイス６１２からの再生コマンドは必要とされない。
【００９１】
シンクデバイス６１２はまた、ＲＴＳＰ  ＳＥＴＵＰ交換６３０を使用して、第２のマルチキャストセッション用のマルチキャストメディアデータを受信することを要求することができる。図６の例では、シンクデバイス６１２は、ｕｒｌ２に等しく設定されたｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータを含む交換６３０をソースデバイス６１０と実行することにより、第２のマルチキャストセッションに参加することを要求する。シンクデバイス６１２は、第２のマルチキャストセッション用にソースデバイス６１０によって広告された、選択されたマルチキャストＩＰアドレス（たとえば、ｉｐ２）およびマルチキャストポート番号（たとえば、６１５０）上でバインドして、マルチキャストメディアデータを受信する。次いで、ソースデバイス６１０は、選択されたマルチキャストＩＰアドレスと受信マルチキャストポート番号とを使用して、セッションを介してシンクデバイス６１２に第２のマルチキャストセッション用のマルチキャストメディアデータの単一コピーを送る。この場合、ソースデバイス６１０からのマルチキャストメディアデータの送信を開始するために、シンクデバイス６１２からの再生コマンドは必要とされない。
【００９２】
図６の示された例では、マルチキャスト通信セッションがシンクデバイス６１２と確立された後、新しいシンクデバイス６１４はＷＤシステムに参加することができる。シンクデバイス６１４と通信セッションを確立するために、ソースデバイス６１０とシンクデバイス６１４は、最初にＰ２Ｐデバイス発見およびペアリング６３２を実行する。たとえば、ソースデバイス６１０、シンクデバイス６１２、およびシンクデバイス６１４は、ソースデバイス６１０をグループオーナーとするＷｉ−Ｆｉ  Ｐ２Ｐグループを形成することができる。
【００９３】
ソースデバイス６１０とシンクデバイス６１４が接続性を確立した後、ソースデバイス６１０は、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ要求メッセージ６３４を使用して、能力ネゴシエーション交換の一部としてそれらの通信セッション中に使用するための、シンクデバイス６１４によってサポートされるパラメータのセットと能力とを決定することができる。動的マルチキャスト加入手順によれば、ソースデバイス６１０は、要求メッセージ６３４を使用して、シンクデバイス６１４にそのマルチキャストデータにおける一般的な関心およびその利用可能なポートについて照会する。シンクデバイス６１４は、マルチキャストデータの受信に一般に関心があるかどうかを示し、関心がある場合、利用可能なポート番号を供給する、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ応答メッセージ６３６で要求メッセージ６３４に応答する。図６の例では、シンクデバイス６１４は、応答メッセージ６３６内で、「ｙｅｓ」に等しく設定されたｍｕｌｔｉｃａｓｔ＿ｉｎｔｅｒｅｓｔｅｄパラメータを使用してマルチキャストメディアデータの受信への関心を示し、ポート「６０００」とポートの範囲「６１５０〜６２００」に等しく設定されたｍｕｌｔｉｃａｓｔ＿ｐｏｒｔｓパラメータを使用して利用可能なマルチキャストポートを示す。
【００９４】
動的マルチキャスト加入手順によれば、新しいシンクデバイス６１４もマルチキャストメディアデータの受信に関心があるので、ソースデバイス６１０は、ソースデバイス６１０で利用可能なマルチキャストセッションごとにシンクデバイス６１２と６１４の両方で利用可能な受信マルチキャストポート番号を選択する。場合によっては、ソースデバイス６１０は、新しく加入したシンクデバイス６１４で利用可能なポートに基づいて、以前選択されたマルチキャストセッション用のマルチキャストポート番号を改訂する必要がある場合がある。たとえば、図６では、新しいシンクデバイス６１４は、利用可能な第１のマルチキャストセッション用の選択されたマルチキャストポート番号「６１２０」を有していない。したがって、ソースデバイス６１０は、マルチキャストメディアデータの受信に関心があるシンクデバイス６１２と６１４の両方で利用可能なポートに基づいて、第１のマルチキャストセッション用の選択されたポート番号を改訂する。
【００９５】
図６の示された例では、ソースデバイス６１０は、ブラインド型ポート改訂を使用して、第１のマルチキャストセッション用の受信マルチキャストポート番号を改訂する。この場合、ソースデバイス６１０は、新しいシンクデバイス６１４が第１のマルチキャストセッションに参加することに関心があるかどうかにかかわらず、マルチキャストメディアデータの受信に関心があるすべてのシンクデバイスで利用可能になるように、第１のマルチキャストセッション用の選択されたポート番号を改訂する。
【００９６】
受信マルチキャストポート番号が改訂されると、次いで、ソースデバイス６１０は、ＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ交換６３８を使用して、マルチキャストメディアデータと利用可能なマルチキャストセッション用の選択されたマルチキャストポート番号とを、シンクデバイス６１２に再広告する。図６で示されたように、ソースデバイス６１０は、交換６３８内の第１のマルチキャストセッション用に改訂された受信マルチキャストポート番号「６１６０」をシンクデバイス６１２に広告する。広告を受信すると、シンクデバイス６１２は、第１のマルチキャストセッション用のマルチキャストメディアデータを受信し続けるために、そこでシンクデバイス６１２がバインドされたポート番号を修正する必要がある。この例では、シンクデバイス６１２は、代わりに、第１のマルチキャストセッション用にソースデバイス６１０によって広告された、改訂されたマルチキャストポート番号（たとえば、６１６０）上でバインドして、マルチキャストメディアデータを受信する。場合によっては、ソースデバイス６１０は、所定の時間期間の間、古いポート番号（たとえば、６１２０）と新しいポート番号（たとえば、６１６０）の両方に、第１のマルチキャストセッション用のマルチキャストメディアデータを送ることができる。
【００９７】
ソースデバイス６１０はまた、ＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ交換６４０を使用して、マルチキャストセッション用のマルチキャストメディアデータと選択されたマルチキャストポート番号とをシンクデバイス６１４に広告する。シンクデバイス６１４はまた、ＲＴＳＰ  ＳＥＴＵＰ交換６４２を使用して、第２のマルチキャストセッション用のマルチキャストメディアデータを受信することを要求することができる。図６の例では、シンクデバイス６１４は、ｕｒｌ２に等しく設定されたｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータを含む交換６４２をソースデバイス６１０と実行することにより、第２のマルチキャストセッションに参加することを要求する。シンクデバイス６１４は、第２のマルチキャストセッション用にソースデバイス６１０によって広告された、選択されたマルチキャストＩＰアドレス（たとえば、ｉｐ２）およびマルチキャストポート番号（たとえば、６１５０）上でバインドして、マルチキャストメディアデータを受信する。
【００９８】
次いで、ソースデバイス６１０は、選択されたマルチキャストＩＰアドレスと受信マルチキャストポート番号とを使用して、セッションを介してシンクデバイス６１２とシンクデバイス６１４の両方に第２のマルチキャストセッション用のマルチキャストメディアデータの単一コピーを送る。この場合、ソースデバイス６１０からのマルチキャストメディアデータの送信を開始するために、シンクデバイス６１２またはシンクデバイス６１４からの再生コマンドは必要とされない。
【００９９】
図７は、インフォームドポート改訂を伴う動的マルチキャスト加入手順を使用して、ソースデバイス７１０と２つのシンクデバイス７１２、７１４との間でマルチキャスト通信セッションを確立するための例示的なメッセージ転送シーケンスを示す概念図である。ソースデバイス７１０は、概して、図１Ａおよび図１Ｂのソースデバイス１２０ならびに図２のソースデバイス２２０について上述されたのと同じ方式で動作することができる。シンクデバイス７１２および７１４は、概して、図１Ａおよび図１Ｂのシンクデバイス１６０ならびに図３のシンクデバイス３６０について上述されたのと同じ方式で動作することができる。
【０１００】
図７の示された例では、シンクデバイス７１２と通信セッションを確立するために、ソースデバイス７１０とシンクデバイス７１２は、最初にＰ２Ｐデバイス発見およびペアリング７２０を実行する。ソースデバイス７１０とシンクデバイス７１２が接続性を確立した後、ソースデバイス７１０は、シンクデバイス７１２との第１のＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ交換７２２内で、利用可能なマルチキャストセッションを識別するために使用されるべきパラメータを決定することができる。
【０１０１】
動的マルチキャスト加入手順によれば、ソースデバイス７１０は、交換７２２を使用して、第１のマルチキャストセッションおよび第２のマルチキャストセッション用のマルチキャストメディアデータの利用可能性を、シンクデバイス７１２に広告する。たとえば、図７で示されたように、ソースデバイス７１０は、交換７２２内の「ｕｒｌ１」に等しく設定されたｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌ１パラメータと、「ｕｒｌ２」に等しく設定されたｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌ２パラメータとを使用して、マルチキャストメディアデータの利用可能性をシンクデバイス７１２に広告する。
【０１０２】
次いで、ソースデバイス７１０は、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ要求メッセージ７２４を使用して、能力ネゴシエーション交換の一部としてそれらの通信セッション中に使用するための、シンクデバイス７１２によってサポートされるパラメータのセットと能力とを決定することができる。動的マルチキャスト加入手順によれば、ソースデバイス７１０は、要求メッセージ７２４を使用して、シンクデバイス７１２に以前広告したマルチキャストセッション用のマルチキャストデータにおける関心およびその利用可能なポートについて照会する。たとえば、図７で示されたように、ソースデバイス７１０は、要求メッセージ７２４内で、ｉｎｔｅｒｅｓｔｅｄ＿ｍｕｌｔｉｃａｓｔ＿ｕｒｌパラメータを使用して、シンクデバイス７１２から特定のマルチキャストセッション用のマルチキャストメディアデータの受信に関心があることの指示を要求し、ｍｕｌｔｉｃａｓｔ＿ｐｏｒｔｓパラメータを使用して、シンクデバイス７１２から利用可能なポートを要求する。
【０１０３】
シンクデバイス７１２は、そこからのマルチキャストメディアデータの受信に関心がある特定のマルチキャストセッションを示し、関心がある場合、利用可能なポート番号を供給する、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ応答メッセージ７２６で要求メッセージ７２４に応答する。たとえば、図７で示されたように、シンクデバイス７１２は、応答メッセージ７２６内で、「ｕｒｌ１」と「ｕｒｌ２」に等しく設定されたｉｎｔｅｒｅｓｔｅｄ＿ｍｕｌｔｉｃａｓｔ＿ｕｒｌパラメータを使用して第１と第２の両方のマルチキャストセッション用のマルチキャストメディアデータの受信への関心を示し、ポート「６０００」とポートの範囲「６１００〜６２００」に等しく設定されたｍｕｌｔｉｃａｓｔ＿ｐｏｒｔｓパラメータを使用して利用可能なマルチキャストポートを示す。
【０１０４】
メッセージ７２４、７２６のＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ交換に基づいて、ソースデバイス７１０は、通信セッションのために使用されるべきパラメータの最適セットを決定し、シンクデバイス７１２と第２のＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ交換７２８を実行することができる。交換７２８は、ソースデバイス７１０とシンクデバイス７１２との間の通信セッション中に使用されるべきパラメータセットを含んでいる場合がある。動的マルチキャスト加入手順によれば、シンクデバイス７１２は第１と第２のマルチキャストセッション用のマルチキャストメディアデータの受信に関心があるので、ソースデバイス７１０は、第１と第２の両方のマルチキャストセッション用にシンクデバイス７１２で利用可能な受信マルチキャストポート番号を選択する。ソースデバイス７１０が２つ以上のシンクデバイスと通信している場合、ソースデバイス７１０は、特定のマルチキャストセッション用のマルチキャストメディアデータの受信に関心があるすべてのシンクデバイスで利用可能なポートに基づいて、マルチキャストセッションの各々用の受信マルチキャストポート番号を選択することができる。
【０１０５】
次いで、ソースデバイス７１０は、ＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ交換７２８を使用して、シンクデバイス７１２が関心がある第１と第２のマルチキャストセッション用のマルチキャストメディアデータの利用可能性と、マルチキャストセッション用の選択されたマルチキャストポート番号とをシンクデバイス７１２に広告する。図７で示されたように、ソースデバイス７１０は、交換７２８内で、ｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ１パラメータを使用して第１のマルチキャストセッション用の、およびｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ２パラメータを使用して第２のマルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告する。図示された例では、ｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ１パラメータは、マルチキャストＩＰアドレス「ｉｐ１」と受信マルチキャストポート番号「６１２０」とを有する「ｕｒｌ１」上のマルチキャストメディアデータの利用可能性を広告する。加えて、ｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ２パラメータは、マルチキャストＩＰアドレス「ｉｐ２」と受信マルチキャストポート番号「６１５０」とを有する「ｕｒｌ２」上のマルチキャストメディアデータの利用可能性を広告する。
【０１０６】
次いで、シンクデバイス７１２は、ＲＴＳＰ  ＳＥＴＵＰ交換７３０を使用して、第１のマルチキャストセッション用のマルチキャストメディアデータを受信することを要求することができる。図７の例では、シンクデバイス７１２は、ｕｒｌ１に等しく設定されたｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータを含む交換７３０をソースデバイス７１０と実行することにより、第１のマルチキャストセッションに参加することを要求する。シンクデバイス７１２は、第１のマルチキャストセッション用にソースデバイス７１０によって広告された、選択されたマルチキャストＩＰアドレス（たとえば、ｉｐ１）およびマルチキャストポート番号（たとえば、６１２０）上でバインドして、マルチキャストメディアデータを受信する。次いで、ソースデバイス７１０は、選択されたマルチキャストＩＰアドレスと受信マルチキャストポート番号とを使用して、セッションを介してシンクデバイス７１２に第１のマルチキャストセッション用のマルチキャストメディアデータの単一コピーを送る。この場合、ソースデバイス７１０からのマルチキャストメディアデータの送信を開始するために、シンクデバイス７１２からの再生コマンドは必要とされない。
【０１０７】
シンクデバイス７１２はまた、ＲＴＳＰ  ＳＥＴＵＰ交換７３２を使用して、第２のマルチキャストセッション用のマルチキャストメディアデータを受信することを要求することができる。図７の例では、シンクデバイス７１２は、ｕｒｌ２に等しく設定されたｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータを含む交換７３２をソースデバイス７１０と実行することにより、第２のマルチキャストセッションに参加することを要求する。シンクデバイス７１２は、第２のマルチキャストセッション用にソースデバイス７１０によって広告された、選択されたマルチキャストＩＰアドレス（たとえば、ｉｐ２）およびマルチキャストポート番号（たとえば、６１５０）上でバインドして、マルチキャストメディアデータを受信する。次いで、ソースデバイス７１０は、選択されたマルチキャストＩＰアドレスと受信マルチキャストポート番号とを使用して、セッションを介してシンクデバイス７１２に第２のマルチキャストセッション用のマルチキャストメディアデータの単一コピーを送る。この場合、ソースデバイス７１０からのマルチキャストメディアデータの送信を開始するために、シンクデバイス７１２からの再生コマンドは必要とされない。
【０１０８】
図７の示された例では、マルチキャスト通信セッションがシンクデバイス７１２と確立された後、新しいシンクデバイス７１４はＷＤシステムに参加することができる。シンクデバイス７１４と通信セッションを確立するために、ソースデバイス７１０とシンクデバイス７１４は、最初にＰ２Ｐデバイス発見およびペアリング７３４を実行する。たとえば、ソースデバイス７１０、シンクデバイス７１２、およびシンクデバイス７１４は、ソースデバイス７１０をグループオーナーとするＷｉ−Ｆｉ  Ｐ２Ｐグループを形成することができる。
【０１０９】
ソースデバイス７１０とシンクデバイス７１４が接続性を確立した後、ソースデバイス７１０は、シンクデバイス７１４との第１のＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ交換７３６内で、利用可能なマルチキャストセッションを識別するために使用されるべきパラメータを決定することができる。動的マルチキャスト加入手順によれば、ソースデバイス７１０は、交換７３６を使用して、第１のマルチキャストセッションおよび第２のマルチキャストセッション用のマルチキャストメディアデータの利用可能性を、シンクデバイス７１４に広告する。次いで、ソースデバイス７１０は、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ要求メッセージ７３８を使用して、能力ネゴシエーション交換の一部としてそれらの通信セッション中に使用するための、シンクデバイス７１４によってサポートされるパラメータのセットと能力とを決定することができる。動的マルチキャスト加入手順によれば、ソースデバイス７１０は、要求メッセージ７３８を使用して、シンクデバイス７１４に以前広告されたマルチキャストセッション用のマルチキャストデータにおける関心およびその利用可能なポートについて照会する。
【０１１０】
シンクデバイス７１４は、そこからのマルチキャストメディアデータの受信に関心がある特定のマルチキャストセッションを示し、関心がある場合、利用可能なポート番号を供給する、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ応答メッセージ７４０で要求メッセージ７３８に応答する。たとえば、図７で示されたように、シンクデバイス７１４は、応答メッセージ７４０内で、「ｕｒｌ２」に等しく設定されたｉｎｔｅｒｅｓｔｅｄ＿ｍｕｌｔｉｃａｓｔ＿ｕｒｌパラメータを使用して第２のマルチキャストセッション用のマルチキャストメディアデータの受信への関心を示し、ポート「６０００」とポートの範囲「６１５０〜６２００」に等しく設定されたｍｕｌｔｉｃａｓｔ＿ｐｏｒｔｓパラメータを使用して利用可能なマルチキャストポートを示す。
【０１１１】
動的マルチキャスト加入手順によれば、新しいシンクデバイス７１４も第２のマルチキャストセッション用のマルチキャストメディアデータの受信に関心があるので、ソースデバイス７１０は、第２のマルチキャストセッション用にシンクデバイス７１２と７１４の両方で利用可能な受信マルチキャストポート番号を選択する。場合によっては、ソースデバイス７１０は、新しく加入したシンクデバイス７１４で利用可能なポートに基づいて、以前選択されたマルチキャストセッション用のマルチキャストポート番号を改訂する必要がある場合がある。たとえば、図７では、新しいシンクデバイス７１４は、利用可能な第１のマルチキャストセッション用の選択されたマルチキャストポート番号「６１２０」を有していない。しかしながら、新しいシンクデバイス７１４は、第１のマルチキャストセッションに参加することへの関心を示していない。したがって、ソースデバイス７１０は、第１のマルチキャストセッション用の選択されたポート番号を改訂する必要がない。
【０１１２】
ソースデバイス７１０は、ＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ交換７４２を使用して、シンクデバイス７１４が関心がある第２のマルチキャストセッション用のマルチキャストメディアデータの利用可能性と、第２のマルチキャストセッション用の選択されたマルチキャストポート番号とをシンクデバイス７１４に広告する。次いで、シンクデバイス７１４は、ＲＴＳＰ  ＳＥＴＵＰ交換７４４を使用して、第２のマルチキャストセッション用のマルチキャストメディアデータを受信することを要求することができる。図７の例では、シンクデバイス７１４は、ｕｒｌ２に等しく設定されたｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータを含む交換７４４をソースデバイス７１０と実行することにより、第２のマルチキャストセッションに参加することを要求する。シンクデバイス７１４は、第２のマルチキャストセッション用にソースデバイス７１０によって広告された、選択されたマルチキャストＩＰアドレス（たとえば、ｉｐ２）およびマルチキャストポート番号（たとえば、６１５０）上でバインドして、マルチキャストメディアデータを受信する。次いで、ソースデバイス７１０は、選択されたマルチキャストＩＰアドレスおよび受信マルチキャストポート番号を使用して、セッションを介してシンクデバイス７１２とシンクデバイス７１４の両方に第２のマルチキャストセッション用のマルチキャストメディアデータの単一コピーを送る。この場合、ソースデバイス７１０用のマルチキャストメディアデータの送信を開始するために、シンクデバイス７１２またはシンクデバイス７１４からの再生コマンドは必要とされない。
【０１１３】
図８は、ソースデバイス８１０と１つのシンクデバイス８１２との間のユニキャスト通信セッションを、ソースデバイス８１０と２つのシンクデバイス８１２、８１４との間のマルチキャスト通信セッションに変換するための例示的なメッセージ転送シーケンスを示す概念図である。ソースデバイス８１０は、概して、図１Ａおよび図１Ｂのソースデバイス１２０ならびに図２のソースデバイス２２０について上述されたのと同じ方式で動作することができる。シンクデバイス８１２および８１４は、概して、図１Ａおよび図１Ｂのシンクデバイス１６０ならびに図３のシンクデバイス３６０について上述されたのと同じ方式で動作することができる。
【０１１４】
図８の示された例では、ソースデバイス８１０は、すでにシンクデバイス８１２とユニキャストセッションを確立している。ユニキャストセッションがシンクデバイス８１２と確立された後、新しいシンクデバイス８１４はＷＤシステムに参加することができる。新しいシンクデバイス８１４と通信するために、ソースデバイス８１０とシンクデバイス８１４は、Ｐ２Ｐデバイス発見およびペアリング８２０を実行する。ソースデバイス８１０とシンクデバイス８１４が接続性を確立した後、ソースデバイス８１０とシンクデバイス８１４は、ＲＴＳＰ  Ｃａｐａｂｉｌｉｔｙ  Ｎｅｇｏｔｉａｔｉｏｎ  ｆｏｒ  Ｍｕｌｔｉｃａｓｔ交換８２２の一部として、マルチキャスト通信セッションのためのパラメータのセットと能力とを決定することができる。
【０１１５】
ソースデバイス８１０は、新しいシンクデバイス８１４と上述のマルチキャスト加入手順のうちの１つを実行することができる。マルチキャスト加入手順によれば、ソースデバイス８１０は、マルチキャストセッション用のマルチキャストメディアデータの利用可能性を、シンクデバイス８１４に広告する。次いで、シンクデバイス８１４は、ＲＴＳＰ  ＳＥＴＵＰ要求メッセージ８２４を使用して、広告されたマルチキャストメディアデータを受信することを要求することができる。図８の例では、シンクデバイス８１４は、ｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータを含む要求メッセージ８２４をソースデバイス８１０に送ることにより、マルチキャストセッションに参加することを要求する。
【０１１６】
要求メッセージ８２４を受信すると、ソースデバイス８１０は、シンクデバイス８１４をマルチキャストセッションに追加することに成功したかどうかを示すＲＴＳＰステータスコードを含む、ＲＴＳＰ  ＳＥＴＵＰ応答メッセージ８２６で応答する。静的マルチキャスト加入手順の場合、ＷＦＤ規格は、マルチキャストセッション用のあらかじめ定義されたマルチキャストポート番号をシンクデバイス８１４に提供する。動的マルチキャスト加入手順の場合、ソースデバイス８１０は、シンクデバイス８１４で利用可能なポート番号に基づいて、マルチキャストセッション用のマルチキャストポート番号を選択する。いずれの場合も、次いで、ソースデバイス８１０は、マルチキャストポート番号を使用して、セッションを介してシンクデバイス８１４にマルチキャストセッション用のマルチキャストメディアデータの単一コピーを送る。
【０１１７】
図８で示されたように、ソースデバイス８１０は、シンクデバイス８１２にユニキャストメディアデータを送り続けながら、シンクデバイス８１４にマルチキャストメディアデータを送る。本技法によれば、次いで、ソースデバイス８１０は、シンクデバイス８１２とマルチキャスト加入手順を実行する。たとえば、図８では、ソースデバイス８１０とシンクデバイス８１２は、ＲＴＳＰ  Ｃａｐａｂｉｌｉｔｙ  Ｎｅｇｏｔｉａｔｉｏｎ  ｆｏｒ  Ｍｕｌｔｉｃａｓｔ交換８２８の一部として、マルチキャスト通信セッションのためのパラメータのセットと能力とを決定することができる。
【０１１８】
ソースデバイス８１０は、シンクデバイス８１２とマルチキャスト加入手順を実行して、シンクデバイス８１２がマルチキャストメディアデータの受信に関心があるかどうかを判定することができる。次いで、シンクデバイス８１２は、ＲＴＳＰ  ＳＥＴＵＰ要求メッセージ８３０を使用して、広告されたマルチキャストメディアデータを受信することを要求することができる。図８の例では、シンクデバイス８１２は、ｍｕｌｔｉｃａｓｔ＿ｐｒｅｓｅｎｔａｔｉｏｎ＿ｕｒｌパラメータを含む要求メッセージ８３０をソースデバイス８１０に送ることにより、マルチキャストセッションに参加することを要求する。次いで、ソースデバイス８１０は、マルチキャストポート番号を使用して、セッションを介してシンクデバイス８１２とシンクデバイス８１４の両方に、マルチキャストセッション用のマルチキャストメディアデータの単一コピーを送る。シンクデバイス８１２がマルチキャストセッションに加入すると、ソースデバイス８１０はユニキャストセッションを中止する。
【０１１９】
図９は、ＷＤシステム内のソースデバイスおよびシンクデバイスによる静的マルチキャスト加入手順の例示的な動作を示す流れ図である。動作は、図２のソースデバイス２２０と図３のシンクデバイス３６０とに関して、本明細書に記載されている。他の例では、本開示に記載されたソースデバイスおよびシンクデバイスのうちのいずれも、例示的な動作を実行することができる。
【０１２０】
静的マルチキャスト加入手順によれば、ソースデバイス２２０は、ＷＤ通信セッションセットアップのＲＴＳＰ能力ネゴシエーションフェーズを使用して、シンクデバイス３６０およびＷＤシステム内の１つまたは複数のさらなるシンクデバイスとマルチキャスト通信セッションを確立する。より具体的には、ソースデバイス２２０は、マルチキャストセッション用のマルチキャストメディアデータの利用可能性をシンクデバイス３６０に広告する（９１０）。ソースデバイス２２０は、ＲＴＳＰを使用して、たとえばＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ要求を使用して、シンクデバイスにメディアデータの利用可能性を広告する。広告されたマルチキャストメディアデータの受信に関心がある場合、シンクデバイス３６０は、マルチキャストセッションに加入する要求をソースデバイス２２０に送ることができる（９１２）。シンクデバイス３６０は、たとえばＲＴＳＰ  ＳＥＴＵＰ要求を使用して、マルチキャストメディアデータを要求することができる。ソースデバイス２２０は、シンクデバイス３６０およびＷＤシステム内の任意の他の関心があるシンクデバイスからマルチキャストセッションに加入する要求を受信する（９１４）。
【０１２１】
ＷＦＤ規格は、よく知られているあらかじめ定義されたマルチキャストＩＰポートと受信マルチキャストポート番号とを提供する。したがって、ソースデバイス２２０とシンクデバイス３６０の両方は、ＷＤシステム内でマルチキャストメディアデータを受信するために使用されるべきあらかじめ定義されたマルチキャストポート番号を知っている。シンクデバイス３６０および広告されたマルチキャストメディアデータの受信に関心がある任意の他のシンクデバイスは、マルチキャストセッション用にあらかじめ定義されたマルチキャストポート番号上でバインドする（９１６）。加えて、ソースデバイス２２０は、マルチキャストセッション用にあらかじめ定義されたマルチキャストポート番号を選択する（９１８）。次いで、ソースデバイス２２０は、あらかじめ定義されたマルチキャストポート番号を使用して、シンクデバイス３６０および任意の他の関心があるシンクデバイスに、マルチキャストセッション用のマルチキャストメディアデータの単一コピーを送る（９２０）。シンクデバイス３６０は、シンクデバイス３６０がバインドされたあらかじめ定義されたマルチキャストポート上で、マルチキャストセッション用のマルチキャストメディアデータのコピーを受信する（９２２）。
【０１２２】
図１０は、ＷＤシステム内のソースデバイスおよびシンクデバイスによる動的マルチキャスト加入手順の例示的な動作を示す流れ図である。動作は、図２のソースデバイス２２０と図３のシンクデバイス３６０とに関して、本明細書に記載されている。他の例では、本開示に記載されたソースデバイスおよびシンクデバイスのうちのいずれも、例示的な動作を実行することができる。
【０１２３】
動的マルチキャスト加入手順によれば、ソースデバイス２２０は、ＷＤ通信セッションセットアップのＲＴＳＰ能力ネゴシエーションフェーズを使用して、シンクデバイス３６０およびＷＤシステム内の１つまたは複数のさらなるシンクデバイスとマルチキャスト通信セッションを確立し、マルチキャストセッション用のマルチキャストポート番号を選択する。上述の静的マルチキャスト加入手順とは異なり、動的マルチキャスト加入手順により、関心があるシンクデバイスの利用可能なポート番号に基づいて、ソースデバイス２２０がマルチキャストセッション用のマルチキャストポート番号を選択することが可能になる。
【０１２４】
ソースデバイス２２０は、シンクデバイス３６０がマルチキャストメディアデータに関心があるかどうかを要求し、シンクデバイス３６０で利用可能なポート番号を要求する（１０１０）。ソースデバイス２２０は、ＲＴＳＰを使用して、たとえばＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ要求を使用して、シンクデバイス３６０とＷＤシステム内の任意の他のシンクデバイスとに照会する。ブラインド型ポート改訂を伴う動的マルチキャスト加入手順の場合、ソースデバイス２２０は、マルチキャストメディアデータにおける一般的な関心およびポート番号について、シンクデバイスに照会する。インフォームドポート改訂を伴う動的マルチキャスト加入手順の場合、ソースデバイス２２０は、特定のマルチキャストセッション用のマルチキャストメディアデータにおける関心について、シンクデバイスに照会する。マルチキャストメディアデータの受信に関心がある場合、シンクデバイス３６０は、マルチキャストメディアデータの受信に関心があることを示し、その利用可能なマルチキャストポート番号を供給する応答をソースデバイス２２０に送る（１０１２）。
【０１２５】
ソースデバイス２２０は、シンクデバイス３６０およびＷＤシステム内の任意の他の関心があるシンクデバイスがマルチキャストメディアデータの受信に関心があることの指示と、シンクデバイスの各々で利用可能なポート番号とを受信する（１０１４）。次いで、ソースデバイス２２０は、関心があるシンクデバイスで利用可能なポート番号に基づいて、マルチキャストセッション用のマルチキャストポート番号を選択する（１０１６）。ブラインド型ポート改訂を伴う動的マルチキャスト加入手順の場合、ソースデバイス２２０は、マルチキャストメディアデータの受信に一般的に関心があるすべてのシンクデバイスで利用可能なポート番号に基づいて、マルチキャストセッションの各々用のマルチキャストポート番号を選択する。インフォームドポート改訂を伴う動的マルチキャスト加入手順の場合、ソースデバイス２２０は、特定のマルチキャストセッションに関心があるシンクデバイスで利用可能なポート番号に基づいて、マルチキャストセッションの各々用のマルチキャストポート番号を選択する。
【０１２６】
次いで、ソースデバイス２２０は、マルチキャストセッションの各々用のマルチキャストメディアデータの利用可能性と、マルチキャストセッション用の選択されたマルチキャストポート番号とをシンクデバイスに広告する（１０１８）。ソースデバイス２２０は、ＲＴＳＰを使用して、たとえばＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ要求を使用して、シンクデバイスにマルチキャストメディアデータとマルチキャストポート番号とを広告する。広告されたマルチキャストメディアデータの受信に関心がある場合、シンクデバイス３６０および広告されたマルチキャストメディアデータの受信に関心がある任意の他のシンクデバイスは、マルチキャストセッション用の選択されたマルチキャストポート番号上でバインドする（１０２０）。加えて、シンクデバイス３６０は、マルチキャストセッションに加入する要求をソースデバイス２２０に送る（１０２２）。シンクデバイス３６０は、たとえばＲＴＳＰ  ＳＥＴＵＰ要求を使用して、マルチキャストメディアデータを要求することができる。
【０１２７】
ソースデバイス２２０は、シンクデバイス３６０およびＷＤシステム内の任意の他の関心があるシンクデバイスから、マルチキャストセッションに加入する要求を受信する（１０２４）。次いで、ソースデバイス２２０は、あらかじめ定義されたマルチキャストポート番号を使用して、シンクデバイス３６０および任意の他の関心があるシンクデバイスに、マルチキャストセッション用のマルチキャストメディアデータの単一コピーを送る（１０２６）。シンクデバイス３６０は、シンクデバイス３６０がバインドされた選択されたマルチキャストポート上で、マルチキャストセッション用のマルチキャストメディアデータのコピーを受信する（１０２８）。
【０１２８】
１つまたは複数の例では、記載された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せに実装されることができる。ソフトウェアに実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信されることができる。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む、コンピュータデータ記憶媒体またはコンピュータデータ通信媒体を含むことができる。いくつかの例では、コンピュータ可読媒体は、非一時的コンピュータ可読媒体を備えることができる。データ記憶媒体は、本開示に記載された技法の実装のための命令、コードおよび／またはデータ構造を取り出すために、１つもしくは複数のコンピュータまたは１つもしくは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。
【０１２９】
限定ではなく例として、そのようなコンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、フラッシュメモリなどの非一時的媒体、または、命令もしくはデータ構造の形態の所望のプログラムコードを搬送もしくは記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、ソフトウェアが、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびブルーレイディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【０１３０】
コードは、１つもしくは複数のデジタル信号プロセッサ（ＤＳＰ）などの１つもしくは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、または他の等価な集積回路もしくはディスクリート論理回路によって実行されることができる。したがって、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書に記載された技法の実装に適した他の構造のいずれをも指す。加えて、いくつかの態様では、本明細書に記載された機能は、符号化および復号のために構成された専用のハードウェアおよび／もしくはソフトウェアモジュールの内部に提供され得るか、または複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素の中に完全に実装されることができる。
【０１３１】
本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置に実装されることができる。開示された技法を実行するように構成されたデバイスの機能的態様を強調するために、様々な構成要素、モジュール、またはユニットが本開示に記載されたが、それらの構成要素、モジュール、またはユニットは、必ずしも異なるハードウェアユニットによって実現する必要があるとは限らない。むしろ、上述されたように、様々なユニットは、適切なソフトウェアおよび／またはファームウェアとともに、上述された１つまたは複数のプロセッサを含む、コーデックハードウェアユニットにおいて組み合わされるか、または相互動作ハードウェアユニットの集合によって提供されることができる。
【０１３２】
本発明の様々な実施形態が記載された。これらおよび他の実施形態は、以下の特許請求の範囲内に入る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立することであって、前記マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、前記シンクデバイスから前記マルチキャストセッションへの参加の要求を受信することとを含む、確立することと、
前記ソースデバイスで、前記マルチキャストセッションの各々用の受信マルチキャストポート番号を選択することと、
前記選択された受信マルチキャストポート番号を使用して、前記マルチキャストセッションの各々用の前記マルチキャストメディアデータの単一コピーを前記シンクデバイスに送ることと
を備える、方法。
［Ｃ２］受信マルチキャストポート番号を選択することが、前記マルチキャストセッションのうちの１つまたは複数用にあらかじめ定義されたマルチキャストポート番号を選択することを備える、［Ｃ１］に記載の方法。
［Ｃ３］受信マルチキャストポート番号を選択することが、前記シンクデバイスで利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択することを備え、前記マルチキャストセッションの各々用の前記選択されたマルチキャストポート番号を前記シンクデバイスに広告することをさらに備える、［Ｃ１］に記載の方法。
［Ｃ４］前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスの各々から前記ソースデバイスで、特定のシンクデバイスが前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を受信することをさらに備え、受信マルチキャストポート番号を選択することが、すべての前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択することを備える、［Ｃ１］に記載の方法。
［Ｃ５］新しいシンクデバイスから、前記新しいシンクデバイスが前記マルチキャストメディアデータの受信に関心があることを示し、前記新しいシンクデバイスで利用可能であるポート番号を示す信号を受信することと、
前記マルチキャストセッションのうちの少なくとも１つ用の前記選択されたマルチキャストポート番号が前記新しいシンクデバイスで利用可能でないとき、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに参加することに関心があるかどうかにかかわらず、前記新しいシンクデバイスを含むすべての前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号を改訂することと
をさらに備える、［Ｃ４］に記載の方法。
［Ｃ６］前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスの各々から前記ソースデバイスで、特定のシンクデバイスが１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を受信することをさらに備え、受信マルチキャストポート番号を選択することが、前記特定のマルチキャストセッションに関心がある前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択することを備える、［Ｃ１］に記載の方法。
［Ｃ７］新しいシンクデバイスから、前記新しいシンクデバイスが前記１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記新しいシンクデバイスで利用可能であるポート番号を示す信号を受信することと、
前記マルチキャストセッションのうちの少なくとも１つ用の前記選択されたマルチキャストポート番号が前記新しいシンクデバイスで利用可能でなく、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに関心があるとき、前記新しいシンクデバイスを含む前記特定のマルチキャストセッションに関心がある前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号を改訂すること
をさらに備える、［Ｃ６］に記載の方法。
［Ｃ８］前記マルチキャストセッションを確立することが、
マルチキャスト加入プロトコルについて前記ソースデバイスと前記シンクデバイスの各々との間で通信チャネルを確立することと、
前記通信チャネルを介して前記マルチキャスト加入プロトコルを使用して前記マルチキャストセッションを確立することと
を備える、［Ｃ１］に記載の方法。
［Ｃ９］前記ＷＤシステム内で前記ソースデバイスと第１のシンクデバイスとの間でユニキャスト通信セッションを確立することと、
前記ソースデバイスと新しいシンクデバイスとの間でマルチキャスト通信セッションを確立することと、
前記ソースデバイスと前記第１のシンクデバイスとの間の前記ユニキャストセッションを前記マルチキャストセッションに切り替えることと
をさらに備える、［Ｃ１］に記載の方法。
［Ｃ１０］シンクデバイスで、ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立することであって、前記ソースデバイスから前記マルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、前記マルチキャストセッションのうちの１つまたは複数への参加の要求を前記ソースデバイスに送ることとを含む、確立することと、
前記シンクデバイスで、前記シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの１つ用の選択された受信マルチキャストポート番号上でバインドすることと、
前記シンクデバイスで、前記シンクデバイスがバインドされた前記選択された受信マルチキャストポート番号上の前記マルチキャストセッションのうちの前記１つ用の前記マルチキャストメディアデータのコピーを受信することと
を備える、方法。
［Ｃ１１］選択された受信マルチキャストポート番号上でバインドすることが、前記シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの１つまたは複数用にあらかじめ定義されたマルチキャストポート番号上でバインドすることを備える、［Ｃ１０］に記載の方法。
［Ｃ１２］前記ソースデバイスから前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号の広告を受信することをさらに備え、前記ソースデバイスが前記シンクデバイスで利用可能なポート番号に基づいて前記マルチキャストセッションの各々用の前記マルチキャストポート番号を選択し、選択された受信マルチキャストポート番号上でバインドすることが、前記シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの前記１つ用の前記広告された選択されたマルチキャストポート番号上でバインドすることを備える、［Ｃ１０］に記載の方法。
［Ｃ１３］前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスが前記マルチキャストセッションのうちのいずれか用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を前記ソースデバイスに送ることをさらに備える、［Ｃ１０］に記載の方法。
［Ｃ１４］前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号が新しいシンクデバイスで利用可能でないとき、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに参加することに関心があるかどうかにかかわらず、前記新しいシンクデバイスを含むすべての前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションのうちの前記１つ用の改訂された選択されたマルチキャストポート番号の広告を受信すること
をさらに備える、［Ｃ１３］に記載の方法。
［Ｃ１５］前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスが１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を前記ソースデバイスに送ることをさらに備える、［Ｃ１０］に記載の方法。
［Ｃ１６］前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号が新しいシンクデバイスで利用可能でなく、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに参加することに関心があるとき、前記シンクデバイスと前記新しいシンクデバイスとを含む前記マルチキャストセッションのうちの前記１つに関心がある前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションのうちの前記１つ用の改訂された選択されたマルチキャストポート番号の広告を受信すること
をさらに備える、［Ｃ１５］に記載の方法。
［Ｃ１７］前記マルチキャストセッションを確立することが、
マルチキャスト加入プロトコルについて前記ソースデバイスと前記シンクデバイスの各々との間で通信チャネルを確立することと、
前記通信チャネルを介して前記マルチキャスト加入プロトコルを使用して前記マルチキャストセッションを確立することと
を備える、［Ｃ１０］に記載の方法。
［Ｃ１８］前記ＷＤシステム内で前記ソースデバイスと前記シンクデバイスとの間でユニキャスト通信セッションを確立することと、
前記ＷＤシステム内で前記ソースデバイスと新しいシンクデバイスとの間で前記マルチキャストセッションが確立されると、前記ソースデバイスと前記シンクデバイスとの間の前記ユニキャストセッションをマルチキャスト通信セッションに切り替えることと
をさらに備える、［Ｃ１０］に記載の方法。
［Ｃ１９］メディアデータを記憶するメモリと、
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立することであって、前記マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、前記シンクデバイスから前記マルチキャストセッションへの参加の要求を受信することとを含む、確立することと、前記マルチキャストセッションの各々用の受信マルチキャストポート番号を選択することと、前記選択された受信マルチキャストポート番号を使用して前記マルチキャストセッションの各々用の前記マルチキャストメディアデータの単一コピーを前記シンクデバイスに送ることとを行うように構成されたプロセッサと
を備える、ソースデバイス。
［Ｃ２０］前記プロセッサが、前記マルチキャストセッションのうちの１つまたは複数用にあらかじめ定義されたマルチキャストポート番号を選択する、［Ｃ１９］に記載のソースデバイス。
［Ｃ２１］前記プロセッサが、前記シンクデバイスで利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択し、前記マルチキャストセッションの各々用の前記選択されたマルチキャストポート番号を前記シンクデバイスに広告する、［Ｃ１９］に記載のソースデバイス。
［Ｃ２２］前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記プロセッサが、
前記シンクデバイスの各々から前記ソースデバイスで、特定のシンクデバイスが前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を受信し、
すべての前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択する、
［Ｃ１９］に記載のソースデバイス。
［Ｃ２３］前記プロセッサが、
新しいシンクデバイスから、前記新しいシンクデバイスが前記マルチキャストメディアデータの受信に関心があることを示し、前記新しいシンクデバイスで利用可能であるポート番号を示す信号を受信し、
前記マルチキャストセッションのうちの少なくとも１つ用の前記選択されたマルチキャストポート番号が前記新しいシンクデバイスで利用可能でないとき、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに参加することに関心があるかどうかにかかわらず、前記新しいシンクデバイスを含むすべての前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号を改訂する、
［Ｃ２２］に記載のソースデバイス。
［Ｃ２４］前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記プロセッサが、
前記シンクデバイスの各々から前記ソースデバイスで、特定のシンクデバイスが１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を受信し、
前記特定のマルチキャストセッションに関心がある前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択する、
［Ｃ１９］に記載のソースデバイス。
［Ｃ２５］前記プロセッサが、
新しいシンクデバイスから、前記新しいシンクデバイスが前記１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記新しいシンクデバイスで利用可能であるポート番号を示す信号を受信し、
前記マルチキャストセッションのうちの少なくとも１つ用の前記選択されたマルチキャストポート番号が前記新しいシンクデバイスで利用可能でなく、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに関心があるとき、前記新しいシンクデバイスを含む前記特定のマルチキャストセッションに関心がある前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号を改訂する、
［Ｃ２４］に記載のソースデバイス。
［Ｃ２６］前記ＷＤシステム内の能力ネゴシエーションフェーズ中に、前記プロセッサが、
マルチキャスト加入プロトコルについて前記ソースデバイスと前記シンクデバイスの各々との間で通信チャネルを確立し、
前記通信チャネルを介して前記マルチキャスト加入プロトコルを使用して前記マルチキャストセッションを確立する、
［Ｃ１９］に記載のソースデバイス。
［Ｃ２７］前記プロセッサが、
前記ＷＤシステム内で前記ソースデバイスと第１のシンクデバイスとの間でユニキャスト通信セッションを確立し、
前記ソースデバイスと新しいシンクデバイスとの間でマルチキャスト通信セッションを確立し、
前記ソースデバイスと前記第１のシンクデバイスとの間の前記ユニキャストセッションを前記マルチキャストセッションに切り替える、
［Ｃ１９］に記載のソースデバイス。
［Ｃ２８］メディアデータを記憶するメモリと、
ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立することであって、前記ソースデバイスから前記マルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、前記マルチキャストセッションのうちの１つまたは複数への参加の要求を前記ソースデバイスに送ることとを含む、確立することと、シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの１つ用の選択された受信マルチキャストポート番号上でバインドすることと、前記シンクデバイスがバインドされた前記選択された受信マルチキャストポート番号上の前記マルチキャストセッションのうちの前記１つ用の前記マルチキャストメディアデータのコピーを受信することとを行うように構成されたプロセッサと
を備える、シンクデバイス。
［Ｃ２９］前記プロセッサが、前記シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの１つまたは複数用にあらかじめ定義されたマルチキャストポート番号上でバインドする、［Ｃ２８］に記載のシンクデバイス。
［Ｃ３０］前記プロセッサが、
前記ソースデバイスから前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号の広告を受信し、前記ソースデバイスが前記シンクデバイスで利用可能なポート番号に基づいて前記マルチキャストセッションの各々用の前記マルチキャストポート番号を選択し、
前記シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの前記１つ用の前記広告された選択されたマルチキャストポート番号上でバインドする、
［Ｃ２８］に記載のシンクデバイス。
［Ｃ３１］前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記プロセッサが、前記シンクデバイスが前記マルチキャストセッションのうちのいずれか用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を前記ソースデバイスに送る、［Ｃ２８］に記載のシンクデバイス。
［Ｃ３２］前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号が新しいシンクデバイスで利用可能でないとき、前記プロセッサが、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに参加することに関心があるかどうかにかかわらず、前記新しいシンクデバイスを含むすべての前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションのうちの前記１つ用の改訂された選択されたマルチキャストポート番号の広告を受信する、
［Ｃ３１］に記載のシンクデバイス。
［Ｃ３３］前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記プロセッサが、前記シンクデバイスが１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を前記ソースデバイスに送る、［Ｃ２８］に記載のシンクデバイス。
［Ｃ３４］前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号が新しいシンクデバイスで利用可能でなく、前記新しいシンクデバイスが前記マルチキャストセッションのうちの前記１つに参加することに関心があるとき、前記プロセッサが、前記シンクデバイスと前記新しいシンクデバイスとを含む前記マルチキャストセッションのうちの前記１つに関心がある前記シンクデバイスで前記利用可能なポート番号に基づいて、前記マルチキャストセッションのうちの前記１つ用の改訂された選択されたマルチキャストポート番号の広告を受信する、
［Ｃ３３］に記載のシンクデバイス。
［Ｃ３５］前記プロセッサが、
マルチキャスト加入プロトコルについて前記ソースデバイスと前記シンクデバイスの各々との間で通信チャネルを確立し、
前記通信チャネルを介して前記マルチキャスト加入プロトコルを使用して前記マルチキャストセッションを確立する、
［Ｃ２８］に記載のシンクデバイス。
［Ｃ３６］前記プロセッサが、
前記ＷＤシステム内で前記ソースデバイスと前記シンクデバイスとの間でユニキャスト通信セッションを確立し、
前記ＷＤシステム内で前記ソースデバイスと新しいシンクデバイスとの間で前記マルチキャストセッションが確立されると、前記ソースデバイスと前記シンクデバイスとの間の前記ユニキャストセッションをマルチキャスト通信セッションに切り替える、
［Ｃ２８］に記載のシンクデバイス。
［Ｃ３７］ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立するための手段であって、前記マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、前記シンクデバイスから前記マルチキャストセッションへの参加の要求を受信することとを含む、確立するための手段と、
前記マルチキャストセッションの各々用の受信マルチキャストポート番号を選択するための手段と、
前記選択された受信マルチキャストポート番号を使用して、前記マルチキャストセッションの各々用の前記マルチキャストメディアデータの単一コピーを前記シンクデバイスに送るための手段と
を備える、ソースデバイス。
［Ｃ３８］前記マルチキャストセッションのうちの１つまたは複数用にあらかじめ定義されたマルチキャストポート番号を選択するための手段をさらに備える、［Ｃ３７］に記載のソースデバイス。
［Ｃ３９］前記シンクデバイスで利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択するための手段と、
前記マルチキャストセッションの各々用の前記選択されたマルチキャストポート番号を前記シンクデバイスに広告するための手段と
をさらに備える、［Ｃ３７］に記載のソースデバイス。
［Ｃ４０］前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスの各々から前記ソースデバイスで、特定のシンクデバイスが前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を受信するための手段と、
すべての前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択するための手段と
をさらに備える、［Ｃ３７］に記載のソースデバイス。
［Ｃ４１］前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスの各々から前記ソースデバイスで、特定のシンクデバイスが１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を受信するための手段と、
前記特定のマルチキャストセッションに関心がある前記シンクデバイスで前記利用可能なポート番号に基づいて前記マルチキャストセッションの各々用のマルチキャストポート番号を選択するための手段と
をさらに備える、［Ｃ３７］に記載のソースデバイス。
［Ｃ４２］前記ＷＤシステム内で前記ソースデバイスと第１のシンクデバイスとの間でユニキャスト通信セッションを確立するための手段と、
前記ソースデバイスと新しいシンクデバイスとの間でマルチキャスト通信セッションを確立するための手段と、
前記ソースデバイスと前記第１のシンクデバイスとの間の前記ユニキャストセッションを前記マルチキャストセッションに切り替えるための手段と
をさらに備える、［Ｃ３７］に記載のソースデバイス。
［Ｃ４３］ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立するための手段であって、前記ソースデバイスから前記マルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、前記マルチキャストセッションのうちの１つまたは複数への参加の要求を前記ソースデバイスに送ることとを含む、確立するための手段と、
シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの１つ用の選択された受信マルチキャストポート番号上でバインドするための手段と、
前記シンクデバイスがバインドされた前記選択された受信マルチキャストポート番号上の前記マルチキャストセッションのうちの前記１つ用の前記マルチキャストメディアデータのコピーを受信するための手段と
を備える、シンクデバイス。
［Ｃ４４］前記シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの１つまたは複数用にあらかじめ定義されたマルチキャストポート番号上でバインドするための手段をさらに備える、［Ｃ４３］に記載のシンクデバイス。
［Ｃ４５］前記ソースデバイスから前記マルチキャストセッションのうちの前記１つ用の前記選択されたマルチキャストポート番号の広告を受信するための手段であって、前記ソースデバイスが前記シンクデバイスで利用可能なポート番号に基づいて前記マルチキャストセッションの各々用の前記マルチキャストポート番号を選択する、手段と、
前記シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの前記１つ用の前記広告された選択されたマルチキャストポート番号上でバインドするための手段と
をさらに備える、［Ｃ４３］に記載のシンクデバイス。
［Ｃ４６］前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスが前記マルチキャストセッションのうちのいずれか用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を前記ソースデバイスに送るための手段をさらに備える、［Ｃ４３］に記載のシンクデバイス。
［Ｃ４７］前記ＷＤシステム内の能力ネゴシエーションフェーズ中に前記ソースデバイスからの要求に応答して、前記シンクデバイスが１つまたは複数の特定のマルチキャストセッション用の前記マルチキャストメディアデータの受信に関心があることを示し、前記シンクデバイスで利用可能であるポート番号を示す信号を前記ソースデバイスに送るための手段をさらに備える、［Ｃ４３］に記載のシンクデバイス。
［Ｃ４８］前記ＷＤシステム内で前記ソースデバイスと前記シンクデバイスとの間でユニキャスト通信セッションを確立するための手段と、
前記ＷＤシステム内で前記ソースデバイスと新しいシンクデバイスとの間で前記マルチキャストセッションが確立されると、前記ソースデバイスと前記シンクデバイスとの間の前記ユニキャストセッションをマルチキャスト通信セッションに切り替えるための手段と
をさらに備える、［Ｃ４３］に記載のシンクデバイス。
［Ｃ４９］ソースデバイス内で実行されたとき、プログラマブルプロセッサに、
ワイヤレスディスプレイ（ＷＤ）システム内の前記ソースデバイスと２つ以上のシンクデバイスとの間で１つまたは複数のマルチキャスト通信セッションを確立することであって、前記マルチキャストセッション用のマルチキャストメディアデータの利用可能性を広告することと、前記シンクデバイスから前記マルチキャストセッションへの参加の要求を受信することとを含む、確立することと、
前記ソースデバイスで、前記マルチキャストセッションの各々用の受信マルチキャストポート番号を選択することと、
前記選択された受信マルチキャストポート番号を使用して、前記マルチキャストセッションの各々用の前記マルチキャストメディアデータの単一コピーを前記シンクデバイスに送ることと
行わせる命令を備える、コンピュータ可読媒体。
［Ｃ５０］シンクデバイス内で実行されたとき、プログラマブルプロセッサに、
前記シンクデバイスで、ワイヤレスディスプレイ（ＷＤ）システム内のソースデバイスと１つまたは複数のマルチキャスト通信セッションを確立することであって、前記ソースデバイスから前記マルチキャストセッション用のマルチキャストメディアデータの広告を受信することと、前記マルチキャストセッションのうちの１つまたは複数への参加の要求を前記ソースデバイスに送ることとを含む、確立することと、
前記シンクデバイスで、前記シンクデバイスが参加することに関心がある前記マルチキャストセッションのうちの１つ用に選択された受信マルチキャストポート番号上でバインドすることと、
前記シンクデバイスで、前記シンクデバイスがバインドされた前記選択された受信マルチキャストポート番号上の前記マルチキャストセッションのうちの前記１つ用の前記マルチキャストメディアデータのコピーを受信することと
行わせる命令を備える、コンピュータ可読媒体。
【図１Ａ】
0005774789.tif 000002
【図１Ｂ】
0005774789.tif 000003
【図２】
0005774789.tif 000004
【図３】
0005774789.tif 000005
【図４】
0005774789.tif 000006
【図５】
0005774789.tif 000007
【図６】
0005774789.tif 000008
【図７】
0005774789.tif 000009
【図８】
0005774789.tif 000010
【図９】
0005774789.tif 000011
【図１０】
0005774789.tif 000012