(57)【特許請求の範囲】
【請求項１】
参照メディアクロックストリームを、複数のメディアクロックネゴシエーション広告パケットの受信に基づいて選出するシステムであって、
該システムは、
クロック識別期間中に該メディアクロックネゴシエーション広告パケットを受信するように構成されているネットワークインターフェースコントローラーと、
該メディアクロックネゴシエーション広告パケットにおいて広告された各広告されたメディアクロックストリームに対して、該広告されたメディアクロックストリームが一組のメディアクロック条件を満たすことを決定するように構成されている資格付与モジュールと、
該広告されたメディアクロックストリームが該一組のメディアクロック条件を満たすという決定に応答して、該広告されたメディアクロックストリームを一組の資格付与されたストリームに加えるように構成されているストリーム管理モジュールと、
資格付与されたストリームを該一組の資格付与されたストリームから該参照メディアクロックストリームとして選択するように構成されているクロック生成モジュールであって、該参照メディアクロックストリームは、第一のメディアクロックに従いサンプリングされたリアルタイムクロックの値に基づくタイムスタンプを含み、第二のメディアクロックが該第一のメディアクロックと同期されるように、該第二のメディアクロックは、該参照メディアクロックストリームから生成される、クロック生成モジュールと
を含む、システム。
【請求項２】
広告モジュールをさらに含み、該広告モジュールは、前記クロック識別期間の期限切れの後に、ローカルメディアクロックストリームが、前記一組の資格付与されたストリームに含まれるストリームよりも高い優先度を有しているという決定に応答して、該ローカルメディアクロックストリームを広告するように構成されている、請求項１に記載のシステム。
【請求項３】
前記一組の資格付与されたストリームは、一定の数のストリームを含み、前記広告モジュールは、前記クロック識別期間の期限切れの後に、前記ローカルメディアクロックが該一組の資格付与されたストリームに含まれるという決定に応答して、該ローカルメディアクロックストリームを広告するようにさらに構成されている、請求項２に記載のシステム。
【請求項４】
前記一組のメディアクロック条件は、目標周波数を含み、前記資格付与モジュールは、前記広告されたメディアクロックストリームに対応するメディアクロックの周波数への該目標周波数の適合に応答して、該広告されたメディアクロックストリームが該一組のメディアクロック条件を満たすことを決定するように構成されている、請求項１〜３のうちのいずれかに記載のシステム。
【請求項５】
リアルタイムクロックをさらに含み、前記一組のメディアクロック条件は、該リアルタイムクロックのクロックドメイン識別子を含み、前記資格付与モジュールは、該リアルタイムクロックのクロックドメイン識別子への前記広告されたメディアクロックストリームのクロックドメイン識別子の適合に応答して、該広告されたメディアクロックストリームが該一組のメディアクロック条件を満たすことを決定するようにさらに構成されている、請求項１〜４のうちのいずれかに記載のシステム。
【請求項６】
送信器をさらに含み、該送信器は、メディアクロック回復モジュールおよびリアルタイムクロックを含み、前記クロック生成モジュールは、該メディアクロック回復モジュールが回復されたメディアクロックを前記参照メディアクロックストリームから生成するように命令するようにさらに構成されており、該送信器は、タイムスタンプパケットでカプセル化されたメディアストリームを送信するように構成されており、該タイムスタンプパケットは、該回復されたメディアクロックに従いサンプリングされた該リアルタイムクロックのサンプルを含む、請求項１〜５のうちのいずれかに記載のシステム。
【請求項７】
前記メディアクロックネゴシエーション広告パケットは、複数のメディアクロックストリームを広告し、該メディアクロックストリームのうちの少なくとも１つは、他のメディアクロックストリームとは異なる周波数を有している、請求項１〜５のうちのいずれかに記載のシステム。
【請求項８】
ローカルメディアクロックに対応するローカルメディアクロックストリームを広告するコンピュータ実行可能命令によって符号化されたコンピュータ読み取り可能格納媒体であって、該コンピュータ実行可能命令は、プロセッサによって実行可能であり、
該コンピュータ読み取り可能格納媒体は、
クロック識別期間中に複数のメディアクロックネゴシエーション広告パケットを受信するように実行可能である命令と、
該メディアクロックネゴシエーション広告パケットで広告された各広告されたメディアクロックストリームに対して、該広告されたメディアクロックストリームが一組のメディアクロック条件を満たすことを決定するように実行可能な命令と、
該広告されたメディアクロックストリームが該一組のメディアクロック条件を満たすという決定に応答して、該広告されたメディアクロックストリームを一組の資格付与されたストリームに加えるように実行可能な命令と、
該ローカルメディアクロックストリームの優先度と、該メディアクロックネゴシエーション広告パケットで広告された少なくとも１つのメディアクロックストリームの優先度との比較に基づき、該ローカルメディアクロックストリームを該一組の資格付与されたストリームに含むように実行可能な命令と、
該ローカルメディアクロックストリームが該一組の資格付与されたストリームに含まれるという決定に応答して、該ローカルメディアクロックストリームを広告するように実行可能な命令であって、該ローカルメディアクロックストリームは、該ローカルメディアクロックに従いサンプリングされたリアルタイムクロックの値に基づくタイムスタンプを含み、遠隔メディアクロックが該ローカルメディアクロックに同期されるように、該遠隔メディアクロックは、該参照メディアクロックストリームから回復可能である、命令と
を含む、コンピュータ読み取り可能格納媒体。
【請求項９】
前記ローカルメディアクロックストリームが前記一組の資格付与されたストリームに含まれないという決定のみに応答して、該ローカルメディアクロックストリームを広告するように実行可能である命令をさらに含む、請求項８に記載のコンピュータ読み取り可能格納媒体。
【請求項１０】
前記メディアクロック条件は、目標周波数を含む、請求項８に記載のコンピュータ読み取り可能格納媒体。
【請求項１１】
前記メディアクロック条件は、グランドマスターノード識別子を含み、該グランドマスターノード識別子は、リアルタイムクロックのグランドマスタークロックを識別する、請求項８に記載のコンピュータ読み取り可能格納媒体。
【請求項１２】
前記ローカルメディアクロックストリームを少なくとも１つのメディアクロックネゴシエーション広告パケットの周期的な送信を介して広告するように実行可能な命令をさらに含む、請求項８に記載のコンピュータ読み取り可能格納媒体。
【請求項１３】
タイムアウト期間中に資格付与されたストリームを広告するメディアクロックネゴシエーション広告パケットの受信失敗に応答して、該資格付与されたストリームを前記一組の資格付与されたストリームから削除するように実行可能である命令をさらに含む、請求項８に記載のコンピュータ読み取り可能格納媒体。
【請求項１４】
参照メディアクロックストリームとして選択される前記一組の資格付与されたストリームの第一の資格付与されたストリームのタイムアウトを検出するように実行可能である命令と、該第一の資格付与されたストリームのタイムアウトの検出に応答して、第二の資格付与されたストリームを該一組の資格付与されたストリームから該参照メディアクロックストリームとして選択するように実行可能である命令とをさらに含む、請求項８に記載のコンピュータ読み取り可能格納媒体。
【請求項１５】
複数のメディアクロックネゴシエーション広告パケットの受信に基づき、参照メディアクロックストリームを選出する方法であって、
該方法は、
クロック識別期間中に、該メディアクロックネゴシエーション広告パケットをプロセッサによって受信することと、
該メディアクロックネゴシエーション広告パケットで広告された各広告されたメディアクロックストリームに対して、該広告されたメディアクロックストリームが一組のメディアクロック条件を満たすことを該プロセッサによって決定することと、
該広告されたメディアクロックストリームが該一組のメディアクロック条件を満たす場合は、該広告されたメディアクロックストリームを一組の資格付与されたストリームに該プロセッサによって加えることと、
資格付与されたストリームを該一組の資格付与されたストリームから該参照メディアクロックストリームとして該プロセッサによって選択することであって、該参照メディアクロックストリームは、第一のメディアクロックに従いサンプリングされたリアルタイムクロックの値に基づくタイムスタンプを含み、第二のメディアクロックが該第一のメディアクロックに同期されるように、該第二のメディアクロックは、該参照メディアクロックストリームから生成される、ことと
を含む、方法。
【請求項１６】
前記広告されたメディアクロックストリームが前記一組のメディアクロック条件を満たすことを決定することは、該広告されたメディアクロックストリームの優先度が前記一組の資格付与されたストリームのいずれの資格付与されたストリームの優先度よりも高いことを決定することを含む、請求項１５に記載の方法。
【請求項１７】
前記資格付与されたストリームがタイムアウトするのに応答して、代替の資格付与されたストリームを前記一組の資格付与されたストリームから前記参照メディアクロックストリームとして選択することをさらに含む、請求項１５に記載の方法。
【請求項１８】
前記クロック識別期間が経った後に、ローカルメディアクロックストリームが、前記一組の資格付与されたストリームの少なくとも１つの資格付与されたストリームよりも高い優先度を有していることを決定することをさらに含む、請求項１５に記載の方法。
【請求項１９】
前記ローカルメディアクロックストリームが、より高い優先度を有している場合は、該ローカルメディアクロックストリームをメディアクロックネゴシエーション広告パケットで広告することと、該ローカルメディアクロックストリームが、より低い優先度を有している場合は、該ローカルメディアクロックストリームを広告しないこととをさらに含む、請求項１８に記載の方法。
【請求項２０】
前記ローカルメディアクロックストリームが、より高い優先度を有しているという決定に応答して、該ローカルメディアクロックストリームを前記一組の資格付与されたストリームに加えることをさらに含む、請求項１８に記載の方法。
【請求項２１】
メディアクロックをメディアストリームの送信器において同期するシステムであって、
該システムは、
第一の送信器と、
第二の送信器と
を含み、
該第一の送信器は、
第一のメディアクロックを生成するように構成されている参照メディアクロック生成器デバイスと、
広告モジュールであって、該広告モジュールは、該第一のメディアクロックに対応するローカルメディアクロックストリームを複数のメディアクロックネゴシエーション広告パケットのうちの少なくとも１つで広告するように構成されており、該第一の送信器は、第一のメディアストリームを受信器に該第一のメディアクロックに基づき、送信するように構成されている、広告モジュールと
を含み、
該第二の送信器は、
資格付与モジュールであって、該資格付与モジュールは、クロック識別期間中に該メディアクロックネゴシエーション広告パケットを受信することと、該メディアクロックネゴシエーション広告パケットで広告された各広告されたメディアクロックストリームに対して、該広告されたメディアクロックストリームが一組のメディアクロック条件を満たすことを決定することであって、該広告されたメディアクロックストリームは、該ローカルメディアクロックストリームを含む、こととを行うように構成されている、資格付与モジュールと、
ストリーム管理モジュールであって、該ストリーム管理モジュールは、該広告されたメディアクロックストリームが該一組のメディアクロック条件を満たすという決定に応答して、該広告されたメディアクロックストリームを一組の資格付与されたストリームに加えるように構成されている、ストリーム管理モジュールと、
クロック生成モジュールであって、該クロック生成モジュールは、資格付与されたストリームを該一組の資格付与されたストリームから該参照メディアクロックストリームとして選択するように構成されており、第二のメディアクロックが該第一のメディアクロックに同期されるように該第二のメディアクロックは、該参照メディアクロックストリームから生成され、該第二の送信器は、第二のメディアストリームを該受信器に該第二のメディアクロックに基づき、送信するように構成されている、クロック生成モジュールと
を含む、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
（発明の背景）
（１．技術分野）
本願は、メディアストリームに関し、特に、メディアストリームをサンプリングするメディアクロックに関する。
【背景技術】
【０００２】
（２．関連技術）
オーディオ／ビデオメディアストリームは、送信器から受信器に送信され得る。送信器は、メディアストリームのサンプルをパケットでカプセル化し得、パケットを受信器に送信し得る。パケットは、等時性パケットであり得る。
【発明の概要】
【課題を解決するための手段】
【０００３】
（概要）
メディアクロックネゴシエーション（ＭＣＮ）プロトコルに従って、ＭＣＮ広告パケットがネットワークを介して受信され得、オーディオ／ビデオブリッジング伝送プロトコル（ＡＶＢＴＰ）ストリームのような１つ以上のメディアクロックストリームを広告する。各メディアクロックストリームは、メディアクロックストリームのソースに配置されたリアルタイムクロックの値に基づくタイムスタンプを含み得る。リアルタイムクロックは、メディアクロックストリームのソースに配置された第一のメディアクロックに従いサンプリングされる。第二のメディアクロックが第一のメディアクロックに同期されるように、第二のメディアクロックは、メディアクロックストリームから回復可能であり得る。１つ以上の送信器は、クロック識別期間中にＭＣＮ広告パケットを受信し得る。各送信器は、各広告されたメディアクロックストリームが、目標周波数および目標クロックドメイン識別子のような一組のメディアクロック条件を満たすか否かを決定し得る。広告されたメディアクロックストリームが一組のメディアクロック条件を満たす場合は、送信器は、広告されたメディアクロックストリームを一組の資格付与されたストリームに加え得る。各送信器は、参照メディアクロックストリームを一組の資格付与されたストリームから選択し得る。２つ以上の送信器が同じ組のメディアクロック条件を用いる場合は、送信器は、同じ参照メディアクロックストリームを選択し得るか、または送信器のうちの１つが参照メディアクロックストリームを送信器のうちの別の１つから受信し得る。結果として、２つ以上の送信器におけるメディアクロックが同期され得る。続いて送信器によって送信され得るオーディオ／ビデオストリームのようなメディアストリームは、互いに同期される送信器におけるメディアクロックに起因して、調整され得る。
【０００４】
１つの興味深い局面は、クロック識別期間の期限切れの後に、メディアクロックストリームが一組の資格付与されたストリームに含まれるいずれのストリームよりも高い優先度を有している場合に、ローカルメディアクロックに対応するメディアクロックストリームは、ＭＣＮ広告パケットで広告され得ることである。あるいは、クロック識別期間の期限切れの後に、メディアクロックストリームが一組の資格付与されたストリームに含まれるいずれのストリームよりも高い優先度を有していない場合は、ローカルメディアクロックに対応するメディアクロックストリームは、広告されない場合がある。
【０００５】
さらに興味深い局面は、資格付与されたストリームのうちの１つがタイムアウトする場合に、タイムアウトされない一組の資格付与されたストリームの資格付与されたストリームが参照メディアクロックストリームとして選択され得ることである。さらに、資格付与されたストリームのうちの１つ以上がタイムアウトし、ローカルメディアクロックに対応するメディアクロックストリームが一組の資格付与されたストリームにない場合は、ローカルメディアクロックに対応するメディアクロックストリームは、適宜、一組の資格付与されたストリームに加えられ得る。
【０００６】
他のシステム、方法、特徴および利点は、以下の図および詳細な説明を精査すると、当業者に明らかになる。そのような追加のシステム、方法、特徴および利点の全ては、この記載内に含まれ、発明の範囲内であり、以下の特許請求の範囲によって保護されることが意図される。
【０００７】
例えば、本発明は以下の項目を提供する。
（項目１）
参照メディアクロックストリームを、複数のメディアクロックネゴシエーション広告パケットの受信に基づいて選出するシステムであって、
該システムは、
クロック識別期間中に該メディアクロックネゴシエーション広告パケットを受信するように構成されているネットワークインターフェースコントローラーと、
該メディアクロックネゴシエーション広告パケットにおいて広告された各広告されたメディアクロックストリームに対して、該広告されたメディアクロックストリームが一組のメディアクロック条件を満たすことを決定するように構成されている資格付与モジュールと、
該広告されたメディアクロックストリームが該一組のメディアクロック条件を満たすという決定に応答して、該広告されたメディアクロックストリームを一組の資格付与されたストリームに加えるように構成されているストリーム管理モジュールと、
資格付与されたストリームを該一組の資格付与されたストリームから該参照メディアクロックストリームとして選択するように構成されているクロック生成モジュールであって、該参照メディアクロックストリームは、第一のメディアクロックに従いサンプリングされたリアルタイムクロックの値に基づくタイムスタンプを含み、該第二のメディアクロックが該第一のメディアクロックと同期されるように、第二のメディアクロックは、該参照メディアクロックストリームから生成される、クロック生成モジュールと
を含む、システム。
（項目２）
広告モジュールをさらに含み、該広告モジュールは、上記クロック識別期間の期限切れの後に、ローカルメディアクロックストリームが、上記一組の資格付与されたストリームに含まれるストリームよりも高い優先度を有しているという決定に応答して、該ローカルメディアクロックストリームを広告するように構成されている、上記項目のいずれかに記載のシステム。
（項目３）
上記一組の資格付与されたストリームは、一定の数のストリームを含み、上記広告モジュールは、上記クロック識別期間の期限切れの後に、上記ローカルメディアクロックが該一組の資格付与されたストリームに含まれるという決定に応答して、該ローカルメディアクロックを広告するようにさらに構成されている、上記項目のいずれかに記載のシステム。
（項目４）
上記一組のメディアクロック条件は、目標周波数を含み、上記資格付与モジュールは、上記広告されたメディアクロックストリームに対応するメディアクロックの周波数への該目標周波数の適合に応答して、該広告されたメディアクロックストリームが該一組のメディアクロック条件を満たすことを決定するように構成されている、上記項目のいずれかに記載のシステム。
（項目５）
リアルタイムクロックをさらに含み、上記一組のメディアクロック条件は、該リアルタイムクロックのクロックドメイン識別子を含み、上記資格付与モジュールは、該リアルタイムクロックのクロックドメイン識別子への上記広告されたメディアクロックストリームのクロックドメイン識別子の適合に応答して、該広告されたメディアクロックストリームが該一組のメディアクロック条件を満たすことを決定するようにさらに構成されている、上記項目のいずれかに記載のシステム。
（項目６）
送信器をさらに含み、該送信器は、メディアクロック回復モジュールおよびリアルタイムクロックを含み、上記クロック生成モジュールは、該メディアクロック回復モジュールが回復されたメディアクロックを上記参照メディアクロックストリームから生成するように命令するようにさらに構成されており、該送信器は、タイムスタンプパケットでカプセル化されたメディアストリームを送信するように構成されており、該タイムスタンプパケットは、該回復されたメディアクロックに従いサンプリングされた該リアルタイムクロックのサンプルを含む、上記項目のいずれかに記載のシステム。
（項目７）
上記メディアクロックネゴシエーション広告パケットは、複数のメディアクロックストリームを広告し、該メディアクロックストリームのうちの少なくとも１つは、他のメディアクロックストリームとは異なる周波数を有している、上記項目のいずれかに記載のシステム。
（項目８）
ローカルメディアクロックに対応するローカルメディアクロックストリームを広告するコンピュータ実行可能命令によって符号化された有形非一時的コンピュータ読み取り可能媒体であって、該コンピュータ実行可能命令は、プロセッサによって実行可能であり、
該有形非一時的コンピュータ読み取り可能媒体は、
クロック識別期間中に複数のメディアクロックネゴシエーション広告パケットを受信するように実行可能である命令と、
該メディアクロックネゴシエーション広告パケットで広告された各広告されたメディアクロックストリームに対して、該広告されたメディアクロックストリームが一組のメディアクロック条件を満たすことを決定するように実行可能な命令と、
該広告されたメディアクロックストリームが該一組のメディアクロック条件を満たすという決定に応答して、該広告されたメディアクロックストリームを一組の資格付与されたストリームに加えるように実行可能な命令と、
該ローカルメディアクロックストリームの優先度と、該メディアクロックネゴシエーション広告パケットで広告された少なくとも１つのメディアクロックストリームの優先度との比較に基づき、該ローカルメディアクロックストリームを該一組の資格付与されたストリームに含むように実行可能な命令と、
該ローカルメディアクロックストリームが該一組の資格付与されたストリームに含まれるという決定に応答して、該ローカルメディアクロックストリームを広告するように実行可能な命令であって、該ローカルメディアクロックストリームは、該ローカルメディアクロックに従いサンプリングされたリアルタイムクロックの値に基づくタイムスタンプを含み、遠隔メディアクロックが該ローカルメディアクロックに同期されるように、該遠隔メディアクロックは、該参照メディアクロックストリームから回復可能である、命令と
を含む、有形非一時的コンピュータ読み取り可能媒体。
（項目９）
上記ローカルメディアクロックストリームが上記一組の資格付与されたストリームに含まれないという決定のみに応答して、該ローカルメディアクロックストリームを広告するように実行可能である命令をさらに含む、上記項目のいずれかに記載のコンピュータ読み取り可能媒体。
（項目１０）
上記メディアクロック条件は、目標周波数を含む、上記項目のいずれかに記載のコンピュータ読み取り可能媒体。
（項目１１）
上記メディアクロック条件は、グランドマスターノード識別子を含み、該グランドマスターノード識別子は、リアルタイムクロックのグランドマスタークロックを識別する、上記項目のいずれかに記載のコンピュータ読み取り可能媒体。
（項目１２）
上記ローカルメディアクロックストリームを少なくとも１つのメディアクロックネゴシエーション広告パケットの周期的な送信を介して広告するように実行可能な命令をさらに含む、上記項目のいずれかに記載のコンピュータ読み取り可能媒体。
（項目１３）
タイムアウト期間中に資格付与されたストリームを広告するメディアクロックネゴシエーション広告パケットの受信失敗に応答して、該資格付与されたストリームを上記一組の資格付与されたストリームから削除するように実行可能である命令をさらに含む、上記項目のいずれかに記載のコンピュータ読み取り可能媒体。
（項目１４）
参照メディアクロックストリームとして選択される上記一組の資格付与されたストリームの第一の資格付与されたストリームのタイムアウトを検出するように実行可能である命令と、該第一の資格付与されたストリームのタイムアウトの検出に応答して、第二の資格付与されたストリームを該一組の資格付与されたストリームから該参照メディアクロックストリームとして選択するように実行可能である命令とをさらに含む、上記項目のいずれかに記載のコンピュータ読み取り可能媒体。
（項目１５）
複数のメディアクロックネゴシエーション広告パケットの受信に基づき、参照メディアクロックストリームを選出する方法であって、
該方法は、
クロック識別期間中に、該メディアクロックネゴシエーション広告パケットをプロセッサによって受信することと、
該メディアクロックネゴシエーション広告パケットで広告された各広告されたメディアクロックストリームに対して、該広告されたメディアクロックストリームが一組のメディアクロック条件を満たすことを該プロセッサによって決定することと、
該広告されたメディアクロックストリームが該一組のメディアクロック条件を満たす場合は、該広告されたメディアクロックストリームを一組の資格付与されたストリームに該プロセッサによって加えることと、
資格付与されたストリームを該一組の資格付与されたストリームから該参照メディアクロックストリームとして該プロセッサによって選択することであって、該参照メディアクロックストリームは、第一のメディアクロックに従いサンプリングされたリアルタイムクロックの値に基づくタイムスタンプを含み、第二のメディアクロックが該第一のメディアクロックに同期されるように、該第二のメディアクロックは、該参照メディアクロックストリームから生成される、ことと
を含む、方法。
（項目１６）
上記広告されたメディアクロックストリームが上記一組のメディアクロック条件を満たすことを決定することは、該広告されたメディアクロックストリームの優先度が上記一組の資格付与されたストリームのいずれの資格付与されたストリームの優先度よりも高いことを決定することを含む、上記項目のいずれかに記載の方法。
（項目１７）
上記資格付与されたストリームがタイムアウトするのに応答して、代替の資格付与されたストリームを上記一組の資格付与されたストリームから上記参照メディアクロックストリームとして選択することをさらに含む、上記項目のいずれかに記載の方法。
（項目１８）
上記クロック識別期間が経った後に、ローカルメディアクロックストリームが、上記一組の資格付与されたストリームの少なくとも１つの資格付与されたストリームよりも高い優先度を有していることを決定することをさらに含む、上記項目のいずれかに記載の方法。
（項目１９）
上記ローカルメディアクロックストリームが、より高い優先度を有している場合は、該ローカルメディアクロックストリームをメディアクロックネゴシエーション広告パケットで広告することと、該ローカルメディアクロックストリームが、より低い優先度を有している場合は、該ローカルメディアクロックストリームを広告しないこととをさらに含む、上記項目のいずれかに記載の方法。
（項目２０）
上記ローカルメディアクロックストリームが、より高い優先度を有しているという決定に応答して、該ローカルメディアクロックストリームを上記一組の資格付与されたストリームに加えることをさらに含む、上記項目のいずれかに記載の方法。
（項目２１）
メディアクロックをメディアストリームの送信器において同期するシステムであって、
該システムは、
第一の送信器と、
第二の送信器と
を含み、
該第一の送信器は、
第一のメディアクロックを生成するように構成されている参照メディアクロック生成器デバイスと、
広告モジュールであって、該広告モジュールは、該第一のメディアクロックに対応するローカルメディアクロックストリームを複数のメディアクロックネゴシエーション広告パケットのうちの少なくとも１つで広告するように構成されており、該第一の送信器は、第一のメディアストリームを受信器に該第一のメディアクロックに基づき、送信するように構成されている、広告モジュールと
を含み、
該第二の送信器は、
資格付与モジュールであって、該資格付与モジュールは、クロック識別期間中に該メディアクロックネゴシエーション広告パケットを受信することと、該メディアクロックネゴシエーション広告パケットで広告された各広告されたメディアクロックストリームに対して、該広告されたメディアクロックストリームが一組のメディアクロック条件を満たすことを決定することであって、該広告されたメディアクロックストリームは、該ローカルメディアクロックストリームを含む、こととを行うように構成されている、資格付与モジュールと、
ストリーム管理モジュールであって、該ストリーム管理モジュールは、該広告されたメディアクロックストリームが該一組のメディアクロック条件を満たすという決定に応答して、該広告されたメディアクロックストリームを一組の資格付与されたストリームに加えるように構成されている、ストリーム管理モジュールと、
クロック生成モジュールであって、該クロック生成モジュールは、資格付与されたストリームを該一組の資格付与されたストリームから該参照メディアクロックストリームとして選択するように構成されており、第二のメディアクロックが該第一のメディアクロックに同期されるように該第二のメディアクロックは、該参照メディアクロックストリームから生成され、該第二の送信器は、第二のメディアストリームを該受信器に該第二のメディアクロックに基づき、送信するように構成されている、クロック生成モジュールと
を含む、システム。
【０００８】
（摘要）
メディアクロックネゴシエーション（ＭＣＮ）広告パケットは、１つ以上のメディアクロックストリームを広告し得る。各メディアクロックストリームは、第一のメディアクロックに従いサンプリングされたリアルタイムクロックの値を含み得る。第二のメディアクロックが第一のメディアクロックに同期されるように、第二のメディアクロックは、メディアクロックストリームから回復可能であり得る。パケットを受信する１つ以上の送信器は、広告されたメディアクロックストリームが一組のメディアクロック条件を満たすか否かを決定し得る。広告されたメディアクロックストリームが一組のメディアクロック条件を満たす場合には、送信器は、広告されたメディアクロックストリームを一組の資格付与されたストリームに加え得る。各送信器は、参照メディアクロックストリームを一組の資格付与されたストリームから選択し得る。同じ参照メディアクロックストリームを選択することによって、２つ以上の送信器におけるメディアクロックが同期され得る。
【０００９】
システムは、以下の図面および記載を参照することによって、より理解され得る。図のコンポーネントは、必ずしも一定縮小比ではなく、代わりに、発明の原理を例示することが強調される。さらに、図において、類似の参照数字は、異なる図に一貫して、対応する部分を指す。
【図面の簡単な説明】
【００１０】
【図１】図１は、送信器が、メディアクロックネゴシエーションプロトコルに基づき、同期されるメディアクロックを生成するシステムの例を例示する。
【図２】図２は、メディアクロックネゴシエーション広告パケットを生成および受信する送信器の例の図である。
【図３】図３は、メディアクロックネゴシエーション広告パケットの例示的パケットフォーマットを例示する。
【図４】図４は、参照メディアクロックストリームをメディアクロックネゴシエーション広告パケットから選出する論理の例示的フローチャートを例示する。
【図５】図５は、ローカルメディアクロックストリームを広告するか否かを決定する論理の例示的フローチャートを例示する。
【発明を実施するための形態】
【００１１】
（詳細な説明）
メディアクロックネゴシエーション（ＭＣＮ）プロトコルに従って、ＭＣＮ広告パケットがネットワークに送信され得、オーディオ／ビデオブリッジング伝送プロトコル（ＡＶＢＴＰ）ストリームのような１つ以上のメディアクロックストリームを広告する。メディアクロックは、メディアクロックストリームから生成され得る。１つ以上の送信器は、クロック識別期間中にＭＣＮ広告パケットを受信し得る。各送信器は、各広告されたメディアクロックストリームが一組のメディアクロック条件を満たすか否かを決定し得る。例えば、一組のメディアクロック条件は、目標周波数および目標クロックドメイン識別子を含み得る。広告されたメディアクロックストリームが一組のメディアクロック条件を満たす場合には、送信器は、広告されたメディアクロックストリームを一組の資格付与されたストリームに加え得る。クロック識別期間の終わりには、各送信器は、参照メディアクロックストリームを一組の資格付与されたストリームから選択し得る。例えば、同じ組のメディアクロック条件を用いる２つ以上の送信器は、同じ参照メディアクロックストリームを選択し得る。送信器の各々は、メディアクロックを選択された参照メディアクロックストリームから生成し得る。結果として、２つ以上の送信器におけるメディアクロックは、同期され得る。
【００１２】
加えて、送信器は、メディアストリームを受信器にネットワークを介して送信し得る。ネットワークでは、生成されたメディアクロックに従って、メディアストリームがサンプリングされる。結果として、送信器によって送信され、受信器によって受信されたメディアストリームは互いに同期され得る。メディアクロックを複数の送信器にわたり同期させる能力は、受信器がメディアストリームを送信器から受信した場合に、サンプルレート変換の必要性をなくし得る。加えて、送信器を含むシステムは、さまざまな周波数、クロックスピード、クロックドメインおよび質または優先度のメディアクロックをサポートし得る。
【００１３】
メディアクロックストリームをローカルメディアクロックから生成するように構成されている各送信器または他のデバイスは、メディアクロックストリームが、クロック識別期間が経過した後に、一組の資格付与されたストリームのいずれのストリームよりも高い優先度を有しているか否かを決定し得る。メディアクロックストリームが組のいずれのストリームよりも高い優先度を有している場合には、送信器がメディアクロックネゴシエーション広告パケットでメディアクロックストリームを広告し得る。対照的に、メディアクロックストリームが一組の資格付与されたストリームのいずれのストリームよりも低い優先度を有している場合は、送信器は、メディアクロックストリームを広告しない場合がある。
【００１４】
図１は、システム１００の例を例示している。システム１００では、送信器１１０（それぞれ、個別に送信器１および送信器２として指定されている）がメディアクロック１２０（それぞれ、個別にメディアクロック１およびメディアクロック２として指定されている）を生成する。メディアクロック１２０は、ＭＣＮプロトコルに基づき、同期される。２つのクロックの周波数が同じ周波数であり、２つのクロックが互いに同位相である場合に、２つのクロックは同期されていると考えられ得る。対応する値が、互いの許容可能な余地のエラー内である場合に、周波数が同じであると考えられ、クロックは同位相であると考えられる。
【００１５】
システム１００は、送信器１１０および受信器１３０を含み得る。システム１００は、追加の送信器１１０および追加の受信器を含み得る。送信器１１０および受信器１３０は、互いにネットワーク１４０を介して通信し得る。
【００１６】
ネットワーク１４０は、任意の通信ネットワークであり得る。例えば、ネットワーク１４０は、ローカルエリアネットワーク（ＬＡＮ）、ワイヤレスローカルエリアネットワーク（ＷＬＡＮ）、パーソナルエリアネットワーク（ＰＡＮ）、広域ネットワーク（ＷＡＮ）、インターネット、またはそれらの組み合わせのようなパケット交換ネットワークを含み得る。ネットワーク１４０は、タイムスタンプパケット１４２、１４４および１４６、ＭＣＮ広告パケット、クロック同期プロトコルによって用いられるパケット、またはいずれか他のタイプのパケットのようなパケットを通信する通信プロトコルをサポートし得る。
【００１７】
送信器１１０の各々は、タイムスタンプパケット１４２および１４４にカプセル化された１つ以上のメディアストリーム１６５を、図１における受信器１３０のような１つ以上の受信器に送信するコンポーネントを含み得る。図１に例示される例において、送信器１は、メディアストリーム１６５（メディアストリーム１として指定されている）のうちの１つを受信器１３０に送信し、送信器２は、メディアストリーム１６５（メディアストリーム２として指定されている）のうちの１つを受信器１３０に送信する。送信器１は、アプリケーションモジュール１４８（アプリケーションモジュール１として指定されている）、リアルタイムクロック１５０（ＲＴＣ１として指定されている）、および参照メディアクロック生成器１５５を含む。送信器２は、アプリケーションモジュール１４８（アプリケーションモジュール２として指定されている）、リアルタイムクロック１５０（ＲＴＣ２として指定されている）、およびメディアクロック回復モジュール１６０を含む。
【００１８】
受信器１３０は、タイムスタンプパケット１４２および１４４を送信器１１０から受信するコンポーネントを含み得る。受信器１３０は、ＲＴＣ１５０（ＲＴＣ３として指定されている）およびメディアクロック回復モジュール１６０を含み得る。
【００１９】
送信器１における参照メディアクロック生成器１５５は、メディアクロック１２０を送信器１に生成するコンポーネントを含む。メディアクロック生成器１５５の例は、位相ロックループ、周波数シンセサイザ、ＤＤＳ（ダイレクトデジタルシンセサイザ）、ダイレクトアナログ同期、整数Ｎシンセサイザおよび分数ＮシンセサイザのようなデジタルＰＬＬ（位相ロックループ）シンセサイザ、または固定周波数参照クロックを生成した、いずれか他のデバイスを含む。
【００２０】
メディアクロック１２０は、任意の周期信号であり得る。周期信号は、メディアストリーム１６５のうちの１つ以上におけるデータのサンプリングレート、ＲＴＣ１５０のサンプリングレート、またはそれらの組み合わせを示す。例えば、メディアクロック１２０は、矩形波、パルス波、正弦波、または任意の他の適切な周期波形であり得る。メディアクロック１２０の周波数は、サンプリングレート周波数であり得る。メディアクロック１２０の周波数は、サンプリングレートの倍数または分数であり得る。１つの例において、メディアクロック１２０の周波数は、メディアストリーム１６５におけるデータのサンプリングレートの２倍に対応し得る。第二の例において、メディアクロック１２０の周波数は、サンプリングレートの８分の１であり得る。第三の例において、メディアストリーム１２０がＮＴＳＮ（全米テレビジョン放送方式標準化委員会）ビデオを含む場合には、サンプリングレートは、２７ＭＨｚのピクセルクロックレートであり得、メディアクロック１２０の周波数は１５．７３４ｋＨｚであり得、これは、ビデオラインレートと呼ばれることがある。
【００２１】
メディアクロック回復モジュール１６０（例えば、送信器２および受信器１３０におけるメディアクロック回復モジュール１６０）は、タイムスタンプパケット１４２、１４４および１４６のうちの１つ以上からメディアクロック１２０を生成するコンポーネントを含む。メディアクロック回復モジュール１６０の例は、２０１０年９月２日に出願された米国出願第１２／８７４，８３６号、「ＭＥＤＩＡ  ＣＬＯＣＫ  ＲＥＣＯＶＥＲＹ」に記載されている。タイムスタンプパケット１４２、１４４および１４６を生成するために用いられるメディアクロック１２０にメディアクロック１２０が同期されるように、メディアクロック回復モジュール１６０は、メディアクロック１２０を生成する。
【００２２】
送信器１１０および受信器１３０におけるリアルタイムクロック（ＲＴＣ）１５０は、送信器１１０および受信器１３０の各々におけるＲＴＣクロックのようなクロックによって決定されたレートで、増加または減少するカウンターを含み得る。例えば、ＲＴＣ１、ＲＴＣ２およびＲＴＣ３のようなＲＴＣ１５０は、蓄積レジスタ、デジタルカウンター、リアルタイムクロックＩＣ（集積回路）、またはいずれか他の適切なデバイスとして実装され得る。デジタルカウンターは、デジタルイベントが生じた回数を数える任意の半導体デバイスであり得る。デジタルイベントは、例えば、ＲＴＣクロックの立ち上がりまたは立ち下がりエッジであり得る。ＲＴＣ１、ＲＴＣ２およびＲＴＣ３は、任意のクロック同期プロトコルを用いて同期され得る。
【００２３】
クロック同期プロトコルは、送信器１のような１つのノードにおけるＲＴＣを受信器１３０のような第二のノードにおけるＲＴＣに同期するために、メッセージをノード間で交換するためのプロトコルを含み得る。クロック同期プロトコルの例は、ＩＥＥＥ（Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ）１５８８：２００２  Ｓｔａｎｄａｒｄ  ｆｏｒ  ａ  Ｐｒｅｃｉｓｉｏｎ  Ｃｌｏｃｋ  Ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ  ｆｏｒ  Ｎｅｔｗｏｒｋｅｄ  Ｍｅａｓｕｒｅｍｅｎｔ  ａｎｄ  Ｃｏｎｔｒｏｌ  ＳｙｓｔｅｍｓおよびＩＥＥＥ  ８０２．１ＡＳ  Ｐｒｅｃｉｓｉｏｎ  Ｔｉｍｅ  Ｐｒｏｔｏｃｏｌ（ＰＴＰ）  ｉｎ  ＩＥＥＥ  ８０２．１ＡＳ  Ｓｔａｎｄａｒｄ  ｆｏｒ  Ｌｏｃａｌ  ａｎｄ  Ｍｅｔｒｏｐｏｌｉｔａｎ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ−Ｔｉｍｉｎｇ  ａｎｄ  Ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ  ｆｏｒ  Ｔｉｍｅ−Ｓｅｎｓｉｔｉｖｅ  Ａｐｐｌｉｃａｔｉｏｎｓ  ｉｎ  Ｂｒｉｄｇｅｄ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓを含む。例えば、ＰＴＰノードは、Ｅｔｈｅｒｎｅｔ（登録商標）メッセージをネットワーク１４０を介して交換し得る。ネットワーク１４０は、クロックマスター選択およびネゴシエーション機構、リンク遅延測定および補償、ならびにクロックレート適合および調節機構を提供することによって、ＰＴＰノードを共通時間基準に同期させる。ＰＴＰは、ベストマスタークロックアルゴリズム（ＢＭＣＡ）を提供する。ベストマスタークロックアルゴリズムは、ＰＴＰノードにおける、どのクロックがマスタークロックになるかをネゴシエーションするためのアルゴリズムである。特に、ＢＭＣＡは、ネゴシエーションおよび信号通知機構を記載する。信号通知機構は、グランドマスターノードを識別する。グランドマスターノードが選択されると、同期がグランドマスターノードと、スレーブノードとして知られる他のＰＴＰノードとの間で自動的に始まり得る。グランドマスターノード、スレーブノード、または両方から送信されたＰＴＰメッセージは、送信器１におけるＲＴＣ１またはある他のデバイスにおけるＲＴＣ１５０のようなＲＴＣ１５０から取られたタイムスタンプ値を含み得る。スレーブノードの各々は、送信器２におけるＲＴＣ２および受信器１３０におけるＲＴＣ３のような、それぞれのスレーブノードにおけるＲＴＣ１５０の値を、送信器１におけるＲＴＣ１のようなグランドマスターノードにおけるＲＴＣ１５０の値と比較し得る。リンク遅延測定および補償技術を用いることによって、スレーブノードは、スレーブノードの各々におけるＲＴＣ１５０をグランドマスターノードにおけるＲＴＣ１５０に同期させ得る。ＲＴＣが互いに同期されると、周期メッセージは、ＰＴＰレート適合調節アルゴリズムを可能にする情報を提供し得る。結果として、ＰＴＰノードの各々におけるＲＴＣ１５０は、共通時間に同期されたままであり得る。
【００２４】
グランドマスターノードと、グランドマスターノードのスレーブノードとは、共通クロックドメインにあるといわれている。そのため、システム１００におけるクロックドメインの数は、クロック同期プロトコルによって選択されたシステム１００におけるグランドマスターノードの数に対応し得る。クロックドメイン識別子がクロックドメインを識別する。クロックドメイン識別子は、例えば、グランドマスターノードの識別子を含み得る。
【００２５】
システム１００の動作中に、送信器１１０の各々がメディアストリーム１６５のうちの１つ以上を受信器１３０に送信し得る。例えば、送信器１は、タイムスタンプパケット１４２のメディアストリーム１を受信器１３０に送信し得る。送信器２は、タイムスタンプパケット１４４のメディアストリーム２を受信器１３０に送信し得る。
【００２６】
タイムスタンプパケット１４２および１４４は、オーディオ、ビデオ、または両方の組み合わせを含むメディアストリームサンプルを含み得る。メディアストリームサンプルは、メディアストリーム１６５のうちの１つ以上のサンプルを含み得る。メディアストリームサンプルは、送信器１１０の各々に設けられたメディアクロック１２０によって決定されたレートでサンプリングされ得る。
【００２７】
加えて、タイムスタンプパケット１４２および１４４は、タイムスタンプを含み得る。タイムスタンプは、送信器１１０のリアルタイムクロック１５０の値に基づいた表示時間であり得る。例えば、タイムスタンプの各々は、送信器１１０のうちの対応する送信器においてサンプリングされたＲＴＣ１５０の値を含み得る。表示時間は、例えば、ＲＴＣ１５０に推定した伝搬遅延を加えた値であり得る。
【００２８】
受信器１３０は、メディアストリーム１６５を、送信器１１０から受信されたタイムスタンプパケット１４２および１４４から、受信器１３０におけるＲＴＣ（ＲＴＣ３）１５０およびメディアクロック１２０（メディアクロック３として指定されている）に基づき、生成し得る。例えば、受信器１３０は、メディアストリーム１およびメディアストリーム２を生成し得る。受信器１３０におけるメディアクロック回復モジュール１６０は、メディアクロック３をタイムスタンプパケット１４２および１４４から生成し得る。タイムスタンプパケット１４２および１４４でカプセル化されたメディアストリームを受信器に送信し、受信器のメディアストリームおよびメディアクロックを抽出する機構の例は、２０１１年２月９日に出願された、米国出願第１３／０２４，０１６号、「ＭＥＤＩＡ  ＥＸＴＲＡＣＴＯＲ」に記載されている。
【００２９】
受信器１３０におけるメディアクロック回復モジュール１６０は、メディアクロック３を、メディアストリーム１のタイムスタンプパケット１４２か、またはメディアストリーム２のタイムスタンプパケット１４４のどちらか一方から生成し得る。受信器１３０において生成されたメディアクロック３は、共通クロックドメインにある受信器１３０によって生成された、メディアストリーム１およびメディアストリーム２のような、メディアストリーム１６５のうちのいずれかと共に出力され得る。メディアクロック３がメディアクロック１またはメディアクロック２に同期されるか、もしくは、メディアクロック１およびメディアクロック２が同期された場合には、メディアクロック３がメディアクロック１とメディアクロック２との両方に同期されるように、受信器１３０におけるメディアクロック回復モジュール１６０はメディアクロック１２０を生成し得る。
【００３０】
上に記載されたように、参照メディアクロック生成器１５５は、メディアクロック１２０を送信器１に生成し得る。これも上に記載されているが、送信器１は、メディアストリーム１のタイムスタンプパケット１４２を、メディアクロック１に従ってサンプリングされたＲＴＣ１に基づき、生成し得る。送信器１は、また、メディアクロックストリームのタイムスタンプパケット１４６も生成し得る。メディアクロックストリームは、メディアクロック１２０、メディアクロック１に従ってサンプリングされた、ＲＴＣ１のようなリアルタイムクロック１５０の値に基づいたタイムスタンプを含む任意のデータストリームであり得る。例えば、メディアクロックストリームのタイムスタンプパケット１４６は、タイムスタンプ１４２を含み得る。タイムスタンプ１４２は、メディアストリーム１のタイムスタンプパケットにあるが、メディアストリーム１のメディアストリームサンプルを含まない。あるいは、または加えて、メディアクロックストリームのタイムスタンプパケット１４６は、メディアストリーム１６５のうちの１つ以上のタイムスタンプとメディアストリームサンプルとの両方を含み得る。あるいは、または加えて、メディアクロックストリームのタイムスタンプパケット１４６は、ＲＴＣ１５０に基づいたタイムスタンプを含み得る。ＲＴＣ１５０は、メディアストリーム１６５のタイムスタンプパケット１４２および１４４のうちのいずれかにおけるタイムスタンプとは独立して生成される。
【００３１】
送信器２は、メディアクロックストリームのタイムスタンプパケット１４６を送信器１から受信し得る。送信器２のメディアクロック回復モジュール１６０は、送信器１からのメディアクロックストリームのＲＴＣ２およびタイムスタンプパケット１４６に基づき、送信器２にメディアクロック１２０を生成し得る。したがって、送信器２におけるメディアクロック回復モジュール１６０は、受信器１３０におけるメディアクロック回復モジュール１６０がメディアクロック１２０を生成するために用いるのと同じ機構のうちの１つ以上を用いて、メディアクロック１２０を生成し得る。そのため、送信器１１０におけるメディアクロック１およびメディアクロック２は、互いに同期され得る。
【００３２】
送信器２は、メディアクロックストリームのタイムスタンプパケット１４６を任意の数の方法によって送信器１から受信し得る。例えば、送信器２は、メディアクロックストリームを識別するストリーム識別子を用いて、メディアクロックストリームを購読するように構成され得る。あるいは、または加えて、送信器１は、メディアクロックストリームを、送信器２のような１つ以上のデバイスの組に送信するように構成され得る。あるいは、または加えて、送信器１は、ＭＣＮ広告パケットを用いて、メディアクロックストリームの利用可能性を広告し得、それに応答して、送信器２は、下でより詳細に記載されるＭＣＮプロトコルに従って、メディアクロックストリームを受信するように選出得る。
【００３３】
アプリケーションモジュール１のようなアプリケーションモジュール１４８は、制御を提供するために、メディアクロックストリームに優先度、クロックドメイン識別子、またはそれらの任意の組み合わせを割り当て得る。この制御を超えて、広告されたメディアクロックストリームは選ばれる。優先度をメディアクロックストリームに割り当てることは、異なるメディアクロックストリームを異なる使用に専用化させることも容易にし得る。
【００３４】
例えば、優先度は、メディアクロックストリームを生成するデバイスのタイプに基づき、割り当てられ得る。１つの例において、製品は非常に正確なメディアクロックを生成することに専用化されたデバイスとして、市場取引および販売され得る。デバイスは、高い優先度を有しているものとして、デバイスによって生成された任意のメディアクロックストリームを広告し得、その結果、メディアクロックストリームは、参照メディアクロックストリームとして選択されやすくなる。
【００３５】
第二の例において、優先度がメディアクロックストリームを生成するデバイスの臨界に基づき、割り当てられ得る。例えば、ライブパフォーマンス（例えば、コンサート、演奏、または他のパフォーマンス）において、ミキシングデスクは、重要なコンポーネントであり得る。なぜなら、ミキシングデスクは、パフォーマンス中に動作することが要求され得るからである。そのため、ミキシングデスクは、高い優先度を有しているものとして、ミキシングデスクによって生成された任意のメディアストリームを広告し得、その結果、メディアクロックストリームは、参照メディアクロックストリームとして選択されやすくなる。ミキシングデスクが故障した場合には、メディアクロックを再割り当てすることが最大の問題ではなくなる。対照的に、機器の目立たない一部によって生成されたメディアクロックストリームが選択され、機器の目立たない一部が故障した場合には、メディアクロックは、パフォーマンス中に再割り当てされる必要があり得る。
【００３６】
第三の例において、優先度は、メディアクロックストリームを生成するデバイスの安定性に基づき、割り当てられ得る。システム１００において最も安定しているデバイスに最も高い優先度メディアクロックストリームが割り当てられ得る。デバイスの安定性に基づき、優先度を割り当てることは、ライブパフォーマンスおよびホームネットワークに適用可能であり得る。例えば、ホームネットワークにおいて、スマートホンおよびモバイルメディアデバイスのようなモバイルデバイスがオーディオ／ビデオをオーディオ／ビデオシステムに供給し得る。オーディオ／ビデオシステムは、自宅に取り付けられるか、そうでない場合は、固定されている。インストールされたシステムは、物理的により安定し得るので、インストールされたシステムは、モバイルデバイスよりも、自宅の部屋を離れにくくあり得る。そのため、インストールされたオーディオ／ビデオシステムは、インストールされたシステムによって、生成された任意のメディアクロックストリームを高い優先度を有しているものとして広告し得、その結果、インストールされたオーディオ／ビデオシステムによって生成された任意のメディアクロックストリームは、モバイルデバイスによって生成されたメディアクロックストリームよりも、参照メディアクロックストリームとして選択されやすくなる。
【００３７】
各広告されたメディアクロックストリームは、メディアクロックストリームに関連したメディアクロック１２０の周波数またはベースクロックレートを含み得る。送信器１１０の各々は、例えば、ベースクロックレートに基づき、広告されたメディアクロックストリームの中から参照メディアクロックストリームを選択し得る。ベースクロックレートは、送信器によって送信されたメディアストリームと共に用いられるクロックレートと互換性を有している。
【００３８】
各広告されたメディアクロックストリームは、ｇＰＴＰグランドマスター識別子（ｇｍ＿ｉｄ）または他のグランドマスター識別子のようなクロックドメイン識別子を含み得る。他のグランドマスター識別子は、ＩＥＥＥ  ８０２．１ＡＳ−２０１１で規定されるｇＰＴＰドメインのような同じクロックドメインにストリームがあるか否かを決定するのを助けるために、ネットワーク１４０上のグランドマスタークロックを識別する。クロックドメイン識別子は、クロックドメインまたはメディアクロックドメインを識別し得る。メディアクロックドメインは、共通メディアクロックを共有し得るデバイスの論理群を表示し得る。送信器２におけるＲＴＣ２が、広告されたメディアクロックストリームを生成するために用いられるＲＴＣ１５０と同じグランドマスタークロックを共有している場合には、広告されたメディアクロックストリームは、送信器２と同じクロックドメインにあり得る。あるいは、または加えて、クロックドメイン識別子は、メディアクロックネゴシエーション（ＭＣＮ）ドメインのようなグランドマスター識別子以外の識別子を含み得る。ＭＣＮドメインは、メディアクロックドメインを識別し得る。１つの例において、グランドマスター識別子は、ｇＰＴＰドメインまたはクロックドメインを識別し得るが、ＭＣＮドメインは、メディアクロックドメインを識別し得る。例えば、単一のｇＰＴＰドメインが複数のＭＣＮドメインを含み得、ＭＣＮドメインの各々は、全体が単一のｇＰＴＰドメインに含まれる。例として、複数のレコーディングルームを有しているレコーディングスタジオを考えられたい。レコーディングスタジオ全体は、単一のｇＰＴＰドメインの中にあり得るが、レコーディングルームの各々１つには、他のレコーディングルームとは異なるＭＣＮドメインを割り当てられ得る。メディアクロックドメインとしてのＭＣＮドメインの割り当てのため、各レコーディングルームにおけるメディアクロックは、他のレコーディングルームにあるメディアクロックとは独立して制御され得る。例えば、ＭＣＮ広告パケットを受信する送信器１１０は、送信器１１０と同じメディアクロックドメインにない任意の広告されたメディアクロックストリームが、参照メディアクロックストリームとして送信器１１０に対して資格付与されないことを決定し得る。そのため、メディアクロックドメインは、クロックドメイン識別子によって識別され得る。クロックドメイン識別子は、グランドマスター識別子、ＭＣＮドメイン、またはそれらの任意の組み合わせを含み得る。
【００３９】
図１において例示されるシステム１００は、追加のコンポーネント、より少ないコンポーネント、または異なるコンポーネントを含み得る。例えば、システム１００は、メディアクロックストリームのタイムスタンプパケット１４６を生成することに専用化されたデバイスを含み得る。そのため、専用化されたデバイスは、参照メディアクロック生成器１５５を含み得る。専用化されたデバイスは、メディアストリーム１６５のいずれかのタイムスタンプパケット１４２および１４４を生成しない場合がある。あるいは、または加えて、システム１００は、追加の送信器１１０および受信器１３０を含み得る。
【００４０】
送信器１１０および受信器１３０は、追加のコンポーネント、より少ないコンポーネント、または異なるコンポーネントを含み得る。例えば、送信器１および送信器２のような送信器１１０の各々は、メディアクロック回復モジュール１６０は含み得るが、参照メディアクロック生成器１５５を含まない場合がある。あるいは、送信器１１０の各々がメディアクロック回復モジュール１６０と参照メディアクロック生成器１５５との両方を含み得る。あるいは、または加えて、送信器１１０の各々は、複数のメディアクロック回復モジュール、複数の参照メディアクロック生成器、またはその組み合わせを含み得る。いくつかの場合において、送信器１１０に通信するデバイスは、アプリケーションモジュール１４８、参照メディアクロックモジュール１５５、およびメディアクロック回復モジュール１６０を送信器１１０の代わりに含み得る。
【００４１】
図１に例示される例において、送信器１１０の各々は、メディアストリーム１６５のうちの１つを送信する。しかし、いくつかの例において、送信器１１０のうちのいずれかがメディアストリーム１６５のうちの２つ以上を送信し得る。
【００４２】
送信器２のようなメディアクロック回復モジュール１６０を含むデバイスが回復されたメディアクロック、メディアクロック２に対応するメディアクロックストリームを生成および広告し得る。そのため、デバイスは、メディアクロック回復モジュール１６０によって生成されたメディアクロック２のようなメディアクロックに基づき、メディアクロックストリームを送信し得る。
【００４３】
図２は、ＭＣＮ広告パケット２０２を生成および受信する送信器２０１の例の図である。送信器２０１は、メモリ２０４、プロセッサ２０６、参照メディアクロック生成器１５５、メディアクロック回復モジュール１６０、クロックセレクター２０８、ＲＴＣ１５０、およびネットワークインターフェースコントローラー（ＮＩＣ）２１０を含み得る。
【００４４】
クロックセレクター２０８は、２つ以上の入力から選択し、選択された入力を出力するコンポーネントを含み得る。例えば、クロックセレクター２０８は、参照メディアクロック生成器１５５によって生成されたローカルメディアクロック２１２を第一の入力として、および回復されたメディアクロック２１４を第二の入力として、メディアクロック回復モジュール１６０から受信し得る。したがって、クロックセレクター２０８は、第一の入力または第二の入力のどちらかを参照メディアクロック２１６として出力するように命令され得る。クロックセレクター２０８の例は、多重器および任意の他の多入力、単一出力スイッチを含む。
【００４５】
ネットワークインターフェースコントローラー（ＮＩＣ）２１０は、ハードウェアまたはハードウェアとソフトウェアとの組み合わせを含み得る。ハードウェアとソフトウェアとの組み合わせは、ネットワーク１４０を介した通信を可能にする。ＮＩＣ２１０は、ネットワーク１４０への物理的なアクセスを提供し得、例えば、メディアアクセス制御（ＭＡＣ）アドレスの使用によって、低レベルなアドレス指定方式を提供し得る。ＮＩＣ２１０は、コンピュータまたは他のデバイスの中にインストールされたネットワークカードを含み得る。あるいは、または加えて、ＮＩＣ２１０は、埋込みコンポーネントを回路ボード、コンピュータマザーボード、ルーター、拡張カード、プリンターインターフェース、ＵＳＢ（ユニバーサルシリアルバス）デバイスの一部、または任意の他のハードウェアの一部として含み得る。１つの例において、送信器２０１は、ネットワークインターフェースコントローラー２１０を含む送信器２０１の代わりに、ネットワークインターフェースコントローラー２１０に含まれ得る。
【００４６】
メモリ２０４は、任意のデータ格納デバイスまたはデータ格納デバイスの組み合わせであり得る。メモリ２０４は、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、消去化能プログラマブルリードオンリーメモリ（ＥＰＲＯＭ）、またはフラッシュメモリのような不揮発性および／または揮発性メモリを含み得る。あるいは、または加えて、メモリ２０４は、光学、磁気（ハードドライブ）またはデータ格納デバイスの任意の他の形態を含み得る。
【００４７】
プロセッサ２０６は、メモリ２０４、ネットワークインターフェースコントローラー２１０、ＲＴＣ１５０、メディアクロック回復モジュール１６０、およびクロックセレクター２０８と通信し得る。プロセッサは、ディスプレイのような追加のコンポーネントとも通信し得る。プロセッサ２０６は、一般的なプロセッサ、コンピューティングデバイスの中央処理装置、サーバーデバイス、特定用途向け集積回路（ＡＳＩＣ）、デジタルシグナルプロセッサ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ＣＰＬＤ（複雑プログラマブルロジックデバイス）、デジタル回路、アナログ回路、マイクロコントローラー、またはそれらの組み合わせを含み得る。プロセッサ２０６は、メモリ２０４、またはシステム１００の特徴を行う他のメモリに埋め込まれたコンピュータ実行可能命令またはコンピュータコードを実行するように動作可能な１つ以上の素子を含み得る。
【００４８】
コンピュータコードは、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）、Ｐａｓｃａｌ、Ｖｉｓｕａｌ  Ｂａｓｉｃ、Ｐｅｒｌ、ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ（ＨＴＭＬ）、Ｊａｖａ（登録商標）Ｓｃｒｉｐｔ、アセンブリ言語のような任意のコンピュータ言語、任意の他のコンピュータ言語、またはそれらの任意の組み合わせで書かれ得る。例えば、コンピュータコードは、アプリケーションモジュール１４８を含み得る。コンピュータコードは、資格付与モジュール２１８、ストリーム管理モジュール２２０、クロック生成モジュール２２２、および広告モジュール２２４のようなさまざまなモジュールを含み得る。
【００４９】
コンピュータコードに加えて、メモリ２０４は、メディアクロックストリーム識別子２２６、一組のメディアクロック条件２２８のようなデータ構造と、一組の資格付与されたストリーム２３０に関する情報とを含み得る。あるいは、または加えて、メモリ２０４は、追加のデータ構造、より少ないデータ構造、または異なるデータ構造を含み得る。
【００５０】
メディアクロックストリーム識別子２２６は、送信器２０１が広告するメディアクロックストリームを識別し得る。１つの例において、メディアクロックストリーム識別子２２６は、ＩＥＥＥ  ８０２．１Ｑａｔ規格で記載されたストリーム識別子を含み得、ストリーム識別子はメディアストリームを識別する。第二の例において、メディアクロックストリーム識別子２２６は、ＩＥＥＥ  ８０２．１Ｑａｔ規格で記載されたストリーム識別子を含み得、ストリーム識別子は、メディアストリームとは異なるか、または一組のメディアストリームであるストリームのタイプを識別する。第三の例において、メディアクロックストリーム識別子２２６は、ＩＥＥＥ  ８０２．１Ｑａｔ規格以外の規格によって記載されたストリーム識別子を含み得る。
【００５１】
一組のメディアクロック条件２２８は、アプリケーションモジュール１４８による使用に適切な潜在的なメディアクロックストリームとして資格付与するために、メディアクロックストリームが満たす条件を含み得る。１つの例において、一組のメディアクロック条件２２８は、目標周波数２３２およびクロックドメイン識別子２３４を含み得る。一組のメディアクロック条件２２８は、追加の条件、より少ない条件、または異なる条件を含み得る。例えば、一組のメディアクロック条件２２８は、目標優先度２３６を含み得る。
【００５２】
一組の資格付与されたストリーム２３０は、メディアクロック条件２２８に基づき、資格付与されたストリームとして決定されたメディアクロックストリームに関する情報を含み得る。一組の資格付与されたストリーム２３０に関する情報は、一定の数のメディアクロックストリームに関する情報を含み得る。例えば、一組の資格付与されたストリーム２３０に関する情報は、一次的なメディアクロックストリーム２３８および二次的なメディアクロックストリーム２４０を識別し得る。そのため、一組の資格付与されたストリーム２３０に関する情報は、ストリーム識別子、優先度、ソースアドレス、および／または資格付与されたストリームの各々１つの他の特性を含み得る。例えば、一組の資格付与されたストリーム２３０に関する情報は、ｍｃｎ＿ｐｒｉｍａｒｙ＿ｓｔｒｅａｍ＿ｉｄ、ｍｃｎ＿ｐｒｉｍａｒｙ＿ｐｒｉｏｒｉｔｙ、およびｍｃｎ＿ｐｒｉｍａｒｙ＿ｓｏｕｒｃｅ＿ａｄｄｒｅｓｓを一次的なメディアクロックストリーム２３８に対して含み得、ｍｃｎ＿ｓｅｃｏｎｄａｒｙ＿ｓｔｒｅａｍ＿ｉｄ、ｍｃｎ＿ｓｅｃｏｎｄａｒｙ＿ｐｒｉｏｒｉｔｙ、およびｍｃｎ＿ｓｅｃｏｎｄａｒｙ＿ｓｏｕｒｃｅ＿ａｄｄｒｅｓｓを二次的なメディアクロックストリーム２４０に対して含み得る。
【００５３】
後に下でより詳細に記載されるが、送信器２０１は、システム１００の動作中にＭＣＮ広告パケット２０２を受信し得る。受信されたＭＣＮ広告パケット２０２のうちの１つ以上は、メディアクロックストリーム２６０のような１つ以上のメディアクロックストリームを広告し得る。メディアクロック回復モジュール１６０は、回復されたメディアクロック２１４をメディアクロックストリーム２６０から生成する。あるいは、または加えて、送信器２０１は、システム１００の動作中にＭＣＮ広告パケット２０２のうちの１つ以上を送信し得る。下により詳細に記載されるが、送信器２０１は、ＭＣＮ広告パケット２０２のうちの１つ以上を送信し得ることによって、ローカルメディアクロック２１２に対応するメディアクロックストリーム２５０を広告する。
【００５４】
加えて、メディアクロックストリーム２５０が送信器１１０のうちの別の１つによって選出された場合には、送信器２０１は、ローカルメディアクロック２１２に対応するメディアクロックストリーム２５０を送信し得る。あるいは、または加えて、送信器２０１は、メディアクロックストリーム２６０を受信し得る。メディアクロック回復モジュール１６０は、回復されたメディアクロック２１４をメディアクロックストリーム２６０から生成し得る。
【００５５】
（１．ＭＣＮプロトコルメッセージフォーマット）
ＭＣＮ広告パケット２０２は、任意の数の方法によってフォーマットされ得る。１つの例において、ＭＣＮプロトコルは、メディアクロックストリーム２５０および２６０のタイムスタンプパケット１４６のフォーマット以外のメッセージに対する単一のパケットフォーマットを用い得る。第二の例において、ＭＣＮプロトコルは、複数のタイプのメッセージを用い得る。メッセージのタイプの各々は、互いに異なるそれぞれのフォーマットを有している。メディアストリーム１６５のタイムスタンプパケット１４２および１４４のフォーマットは、いくつかの例において、ＭＣＮプロトコル以外の規格によって記載され得る。
【００５６】
図３は、ＭＣＮ広告パケット３００の例示的パケットフォーマットを例示する。ＭＣＮ広告パケット３００は、例えば、ＭＣＮプロトコルで用いられる単一のパケットフォーマットであり得る。図３に例示される例において、ＭＣＮ広告パケット３００は、ＡＶＢＴＰ共通制御パケットヘッダー３１０を含み、それにＭＣＮデータ３２０を含むペイロードが続く。
【００５７】
ＡＶＢＴＰ共通制御パケットヘッダー３１０は、追加のフィールドを加えて、ＡＶＢＴＰ共通制御パケットヘッダーの標準フィールドを含み得る。例えば、ＡＶＢＴＰ共通制御パケットヘッダー３１０は、ＣＤフィールド３３０、サブタイプフィールド３３５、ＳＶ（Ｓｔｒｅａｍ  ＩＤ  Ｖａｌｉｄ）フィールド３４０、バージョンフィールド３４５、ｍｅｓｓａｇｅ＿ｔｙｐｅフィールド３５０、ｍｃｎ＿ｖｅｒｓｉｏｎフィールド３５５、ｍｃｎ＿ｄａｔａ＿ｌｅｎｇｔｈフィールド３６０、およびｓｔｒｅａｍ＿ｉｄフィールド３６５を含み得る。
【００５８】
ＭＣＮデータ３２０は、ＭＣＮ広告パケット３００で広告されたメディアクロックストリーム２５０または２６０に関する情報を提供するフィールドを含み得る。ＭＣＮデータ３２０は、例えば、ｇｍ＿ｉｄフィールド３７０、クロック周波数フィールド３７５、ｄｏｍａｉｎ＿ｉｄフィールド３８０、および優先度フィールド３８５を含み得る。
【００５９】
ＣＤフィールド３３０は、ＭＣＮ広告パケット３００が制御またはデータ情報を含んでいるか否かを示し得る。１つの例において、ＣＤフィールド３３０は、ＩＥＥＥ  １７７２−２０１１で記載されたＣＤフィールドであり得る。ＣＤフィールド３３０は、１に設定され得、例えば、ＭＣＮ広告パケット３００が制御情報を含むことを示す。サブタイプフィールド３３５は、例えば、ＩＥＥＥ  １７７２−２０１１で記載されたサブタイプフィールドであり得る。サブタイプフィールド３３５は、ＭＣＮ広告パケット３００を、ＩＥＥＥ  １７７２によって規定されるパケットのある他のタイプとは反対のＭＣＮパケットとして識別し得る。サブタイプフィールド３３５は、０ｘ７ｄの１６進法の値またはある他の適切な値に設定され得る。ＳＶ（ＳｔｒｅａｍＩＤ  ｖａｌｉｄ）フィールド３４０は、広告されたストリームが有効または利用可能であるかを示し得る。例えば、ＳＶフィールド３４０は、値１に設定され得、広告されたメディアクロックストリームが有効であることを示す。バージョンフィールド３４５は、ＡＶＢＴＰ規格のバージョンを識別し得る。ＭＣＮパケットは、ＡＶＢＴＰ規格に従う。ｍｅｓｓａｇｅ＿ｔｙｐｅフィールド３５０は、パケット３００のタイプを示し得る。例えば、ｍｅｓｓａｇｅ＿ｔｙｐｅフィールド３５０は、下の表１に列挙するように、特定のＭＣＮメッセージタイプを含み得る。例えば、ｍｅｓｓａｇｅ＿ｔｙｐｅフィールド３５０は、ＭＣＮ＿ＡＤＶＥＲＴＩＳＥを含み得る。ＭＣＮ＿ＡＤＶＥＲＴＩＳＥは、ＭＣＮメッセージタイプが、メディアクロックストリーム２５０または２６０を広告するパケットであることを示す値である。ＭＣＮ＿ＡＤＶＥＲＴＩＳＥ以外の値は、パケットがＭＣＮ広告パケット３００とは異なるタイプのパケットであることを示し得る。値は、ＭＣＮプロトコルによる将来の使用のために保存され得る。送信器２０１が、保存された値に設定されたｍｅｓｓａｇｅ＿ｔｙｐｅフィールド３５０を有しているＭＣＮ広告パケット３００を受信する場合には、送信器２０１は、ＭＣＮ広告パケット３００を無視し得る。
【００６０】
【表１】
0005554363.tif 000002
ｍｃｎ＿ｖｅｒｓｉｏｎフィールド３５５は、ＭＣＮ広告パケット３００が従うＭＣＮプロトコルのバージョンを識別し得る。例えば、ＭＣＮプロトコルのバージョンは、１またはある他の値であり得る。ＭＣＮパケット３００がｍｃｎ＿ｖｅｒｓｉｏｎフィールド３５５の未知の値で受信された場合には、パケットは無視され得る。
【００６１】
ｓｔｒｅａｍ＿ｉｄフィールド３６５は、ＭＣＮ広告パケット３００において広告されたメディアクロックストリーム２５０または２６０のストリーム識別子を含み得る。例えば、ストリーム識別子は、ＭＣＮ広告パケット３００の受信者が、メディアクロックストリーム２５０または２６０を購読し得るために用いる識別子を含み得る。
【００６２】
ｍｃｎ＿ｄａｔａ＿ｌｅｎｇｔｈフィールド３６０は、ＭＣＮデータ３２０の長さを含み得る。例えば、ｍｃｎ＿ｄａｔａ＿ｌｅｎｇｔｈフィールド３６０は、１６バイトに設定され得る。
【００６３】
ＭＣＮデータ３２０において、ｇｍ＿ｉｄフィールド３７０は、ＭＣＮ広告パケット３００において広告されるメディアクロックストリーム２５０または２６０に関連するグランドマスターノードまたはクロックの識別子を含み得る。例えば、ｇｍ＿ｉｄフィールド３７０は、広告されたメディアクロックストリーム２５０または２６０が基づくＲＴＣ１５０のｇＰＴＰグランドマスター識別子を含み得る。
【００６４】
クロック周波数フィールド３７５は、ＭＣＮ広告パケット３００において広告された、メディアクロックストリーム２５０または２６０に関連するメディアクロック１６５の周波数を示す値を含み得る。例えば、ｃｌｏｃｋ＿ｆｒｅｑｕｅｎｃｙフィールド３７５は、メディアクロック１６５の周波数をヘルツで識別し得る。あるいは、または加えて、ｃｌｏｃｋ＿ｆｒｅｑｕｅｎｃｙフィールド３７５は、広告されたメディアクロックストリーム２５０または２６０が基づくメディアクロック１６５の周期を含み得る。周期は、周波数の乗法的逆元であり得る。
【００６５】
ｄｏｍａｉｎ＿ｉｄフィールド３８０は、広告されたメディアクロックストリーム２５０または２６０のクロックドメイン識別子を含み得る。単一のクロックドメインのみが使用されている場合に、ｄｏｍａｉｎ＿ｉｄフィールド３８０は、０またはある他の所定の値に設定され得る。
【００６６】
優先度フィールド３８５は、広告されたメディアクロックストリーム２５０または２６０の優先度を含み得る。優先度フィールドに対するデフォルト値は、２４８またはある他の値であり得る。より低い値は、より高い優先度メディアクロックストリームを示し得る。あるいは、より低い値は、より低い優先度メディアクロックストリームを示し得る。
【００６７】
ＭＣＮ広告パケット３００は、任意の数の方法によって広告され得る。例えば、ＭＣＮ広告パケット３００は、所定のＭＣＮプロトコルマルチキャストアドレスに設定されたマルチキャスト目的地ＭＡＣアドレスによって放送され得る。あるいは、ＭＣＮ広告パケット３００は、１つ以上の目的地ネットワークアドレスにユニキャストされ得る。
【００６８】
ＭＣＮ広告パケット３００のソースＭＡＣアドレス（示されていない）は、ＭＣＮ広告パケット３００の送信者のＭＡＣアドレスに設定され得る。あるいは、または加えて、ＭＣＮ広告パケット３００の送信者および／または目的地は、ＩＰ（インターネットプロトコル）アドレスのような任意の他のタイプのネットワークアドレスによって示され得る。ＭＣＮ広告パケット３００のＥｔｈｅｒｔｙｐｅフィールド（示されていない）は、ＡＶＢＴＰ  Ｅｔｈｅｒｔｐｙｅに設定され得る。
【００６９】
ＭＣＮプロトコルは、（１）ＭＣＮ広告パケット２０２を傾聴することと、（２）ＭＣＮ広告パケット２０２を広告することとを含み得る。ＭＣＮ広告パケット２０２を傾聴することは、ＭＣＮ広告パケット２０２を受信することと、一組の資格付与されたストリーム２３０に関する情報を維持することとを含み得る。ＭＣＮ広告パケット２０２を広告することは、メディアクロックストリーム２５０が、一組の資格付与されたストリーム２３０におけるストリームのうちの１つとして、資格付与された場合に、ローカルメディアクロック２１２に対するメディアクロックストリーム２５０のような、ローカルに供給されたメディアクロックストリームを広告することを含み得る。
【００７０】
（２．ＭＣＮ選出）
図２を参照すると、アプリケーションモジュール１４８がＭＣＮプロトコルを用い得ることによって、一組の資格付与されたストリーム２３０を、ＭＣＮ選出の間にＭＣＮ広告パケット２０２から決定する。アプリケーションモジュール１４８は、資格付与されたメディアクロックストリームを一組の資格付与されたストリーム２３０からさらに選択し得、選択されて、資格付与されたメディアクロックストリームから参照メディアクロック２１６を生成し得る。
【００７１】
例えば、アプリケーションモジュール１４８の資格付与モジュール２１８は、一組の資格付与されたストリーム２３０をＭＣＮ広告パケット２０２から決定し得る。資格付与モジュール２１８は、ＭＣＮ広告パケット２０２のうちの１つ以上をＮＩＣ２１０を介して受信し得る。ＭＣＮ広告パケット２０２で広告された各メディアクロックストリーム２６０に対して、資格付与モジュール２１８は、広告されたメディアクロックストリーム２６０がメディアクロック条件２２８を満たすか否かを決定し得る。メディアクロック条件２２８は、まず、ローカルメディアクロック２１２の対応する値、またはローカルメディアクロック２１２に対するメディアクロックストリーム２５０の対応する値に設定され得る。あるいは、または加えて、メディアクロック条件２２８は、所定の値またはユーザー特定の値に設定され得る。例えば、送信器２０１によって送信されたメディアストリーム１６５がビデオストリームの場合は、目標周波数２３２は、１５．７３４ｋＨｚのようなビデオに適切な周波数に設定され得る。別の例において、クロックドメイン識別子２３４は、送信器２０１におけるＲＴＣ１５０のクロックドメイン識別子に設定され得る。
【００７２】
資格付与モジュール２１８は、グランドマスター識別子、クロックドメイン識別子ならびにＭＣＮ広告パケット３００のフィールド３７０、３７５、３８０および３８５において識別された周波数のような広告されたメディアクロックストリームの特性を、目標周波数２３２およびクロックドメイン識別子２３４のようなメディアクロック条件２２８の対応する値に比較し得る。グランドマスター識別子、クロックドメイン識別子、またはＭＣＮ広告パケット３００で識別された周波数のような特性がメディアクロック条件２２８の対応する値とは異なる場合には、資格付与モジュール２１８は、広告されたメディアクロックストリームが資格付与されたストリームでないことを決定し得る。あるいは、広告されたメディアストリームの特性がメディアクロック条件２２８に適合する場合は、資格付与モジュール２１８は、広告されたメディアクロックストリームが資格付与されたストリームであることを決定し得る。広告されたメディアクロックストリームが資格付与されたストリームでない場合は、資格付与モジュール２１８は、ＭＣＮ広告パケット３００を破棄し得る。
【００７３】
広告されたメディアクロックストリーム２６０がメディアクロック条件２２８を満たす場合に、ストリーム管理モジュール２２０は、広告されたメディアクロックストリーム２６０を一組の資格付与されたストリーム２３０に加え得る。いくつかの例において、広告されたメディアクロックストリーム２６０が資格付与されたストリームの場合には、ストリーム管理モジュール２２０は、必ずしも広告されたメディアクロックストリーム２６０を一組の資格付与されたストリーム２３０には加えない場合がある。代わりに、広告されたメディアクロックストリーム２６０の優先度が、既に一組の資格付与されたストリーム２３０にあるストリームの優先度を超えた場合には、ストリーム管理モジュール２２０は、広告されたメディアクロックストリーム２６０を一組の資格付与されたストリーム２３０に加え得る。例えば、一組の資格付与されたストリーム２３０は、固定されたサイズであり得る。一組の資格付与されたストリーム２３０は、一次的なメディアクロックストリーム２３８と、二次的なメディアクロックストリーム２４０との２つのストリームに関する情報を含む。そのため、ストリーム管理モジュール２２０は、一次的なメディアクロックストリーム２３８と、二次的なメディアクロックストリーム２４０が、利用可能な２つの最も高い優先度の資格付与されたストリームであるように、一組の資格付与されたストリーム２３０を維持し得る。
【００７４】
１つの例において、優先度を表す値が低くなれば、優先度は高くなる。優先度を表す値は、例えば、ＭＣＮ広告パケット３００の優先度フィールド３８５における値を含み得る。そのため、広告されたメディアクロックストリームの優先度を表す値が、一組の資格付与されたストリーム２３０において現時で識別された一次的なメディアクロックストリーム２３８の優先度の値よりも低い場合には、ストリーム管理モジュール２２０は、広告されたメディアクロックストリームが、一次的なメディアクロックストリーム２３８の優先度よりも高い優先度であることを決定し得る。広告されたメディアクロックストリームが、一組の資格付与されたストリーム２３０において現時で識別された一次的なメディアクロックストリーム２３８よりも高い優先度であるという決定に応答して、ストリーム管理モジュール２２０は、二次的なメディアクロックストリーム２４０を一次的なメディアクロックストリーム２３８に設定し得、一次的なメディアクロックストリーム２３８を広告されたメディアクロックストリームに設定し得る。
【００７５】
例えば、（１）ＭＣＮ広告パケット３００の優先度フィールド３８５における値が一次的なメディアクロックストリーム２３８のｍｃｎ＿ｐｒｉｍａｒｙ＿ｐｒｉｏｒｉｔｙよりも低い場合、または（２）優先度フィールド３８５における値がｍｃｎ＿ｐｒｉｍａｒｙ＿ｐｒｉｏｒｉｔｙに等しく、ＭＣＮ広告パケット３００のＭＡＣソースアドレスがｍｃｎ＿ｐｒｉｍａｒｙ＿ｓｏｕｒｃｅ＿ａｄｄｒｅｓｓ（またはある他の結合分解機構）よりも低い場合に、ストリーム管理モジュール２２０は、（１）ｍｃｎ＿ｓｅｃｏｎｄａｒｙ＿ｓｔｒｅａｍ＿ｉｄをｍｃｎ＿ｐｒｉｍａｒｙ＿ｓｔｒｅａｍ＿ｉｄに設定し得る；（２）ｍｃｎ＿ｓｅｃｏｎｄａｒｙ＿ｐｒｉｏｒｉｔｙをｍｃｎ＿ｐｒｉｍａｒｙ＿ｐｒｉｏｒｉｔｙに設定し得る；（３）ｍｃｎ＿ｓｅｃｏｎｄａｙ＿ｓｏｕｒｃｅ＿ａｄｄｒｅｓｓをｍｃｎ＿ｐｒｉｍａｒｙ＿ｓｏｕｒｃｅ＿ａｄｄｒｅｓｓに設定し得る；（４）ｍｃｎ＿ｐｒｉｍａｒｙ＿ｓｔｒｅａｍ＿ｉｄをＭＣＮ広告パケット３００のｓｔｒｅａｍ＿ｉｄフィールド３６５における値に設定し得る；（５）ｍｃｎ＿ｐｒｉｍａｒｙ＿ｐｒｉｏｒｉｔｙをＭＣＮ広告パケット３００の優先度フィールド３８５における値に設定し得る；および（６）ｍｃｎ＿ｐｒｉｍａｒｙ＿ｓｏｕｒｃｅ＿ａｄｄｒｅｓｓをＭＣＮ広告パケット３００のＭＡＣソースアドレスに設定し得る。
【００７６】
あるいは、ＭＣＮ広告パケット３００の優先度フィールド３８５における値が、一次的なメディアクロックストリーム２３８のｍｃｎ＿ｐｒｉｍａｒｙ＿ｐｒｉｏｒｉｔｙよりも大きい場合には、ストリーム管理モジュール２２０は、広告されたメディアクロックストリームが、二次的なメディアクロックストリーム２４０のような他の資格付与されたストリームよりも高い優先度を有しているか否かをチェックし得る。例えば、ＭＣＮ広告パケット３００の優先度フィールド３８５における値がｍｃｎ＿ｓｅｃｏｎｄａｒｙ＿ｐｒｉｏｒｉｔｙよりも低いか、または優先度フィールド３８５における値がｍｃｎ＿ｓｅｃｏｎｄａｒｙ＿ｐｒｉｏｒｉｔｙと等しく、ＭＣＮ広告パケット３００のＭＡＣソースアドレスがｍｃｎ＿ｓｅｃｏｎｄａｒｙ＿ｓｏｕｒｃｅ＿ａｄｄｒｅｓｓ（またはある他の結合分解機構）よりも小さい場合に、ストリーム管理モジュール２２０は、（１）ｍｃｎ＿ｓｅｃｏｎｄａｒｙ＿ｓｔｒｅａｍ＿ｉｄをＭＣＮ広告パケット３００のｓｔｒｅａｍ＿ｉｄフィールド３６５における値に設定し得る；（２）ｍｃｎ＿ｓｅｃｏｎｄａｒｙ＿ｐｒｉｏｒｉｔｙをＭＣＮ広告パケット３００の優先度フィールド３８５における値に設定し得る；（３）ｍｃｎ＿ｓｅｃｏｎｄａｒｙ＿ｓｏｕｒｃｅ＿ａｄｄｒｅｓｓをＭＣＮ広告パケット３００のＭＡＣソースアドレスに設定し得る。
【００７７】
そのため、資格付与モジュール２１８およびストリーム管理モジュール２２０は、一組の資格付与されたストリーム２３０を決定し得る。例えば、資格付与モジュール２１８およびストリーム管理モジュール２２０は、一次的なメディアクロックストリーム２３８を決定し得、第二の資格付与されたストリームが利用可能な場合には、二次的なメディアクロックストリーム２４０を決定し得る。
【００７８】
参照メディアクロックストリームが、一組の資格付与されたストリーム２３０において、最も高い優先度のストリームを有している場合に、クロック生成モジュール２２２は、参照メディアクロックストリームを一組の資格付与されたストリーム２３０から選択し得る。あるいは、クロック生成モジュール２２２は、資格付与されたストリームの優先度以外または優先度に加えて、資格付与されたストリームの特性に基づき、参照メディアクロックストリームを一組の資格付与されたストリーム２３０から選択し得る。例えば、選択された参照メディアクロックストリームは、回復されたメディアクロック２１４に対するメディアクロックストリーム２６０であり得る。クロック生成モジュール２２２は、メディアクロックストリーム２６０のストリーム識別を購読し得る。応答して、送信器２０１は、メディアクロックストリーム２６０を受信し得る。メディアクロック回復モジュール１６０は、回復されたメディアクロック２１４をメディアクロックストリーム２６０から生成し得る。１つの例において、クロック生成モジュール２２２は、クロックセレクター２０８に、回復されたメディアクロック２１４を参照メディアクロック２１６として選択するように命令し得る。そのため、送信器２０１は、メディアストリーム１６５のタイムスタンプパケット１４２または１４４を、参照メディアクロック２１６およびＲＴＣ１５０に基づき、生成し得る。
【００７９】
１つの例において、クロック生成モジュール２２２は、資格付与されたストリームのうちの１つを参照メディアクロックストリームとして選択するのを、資格付与モジュール２１８およびストリーム管理モジュール２２０が、クロック識別期間中にＭＣＮ広告パケット２０２を受信および処理する後まで待機し得る。クロック識別期間は、例えば、ＭＣＮ＿ＡＤＶＥＲＴＩＳＥ＿ＴＩＭＥＯＵＴ＊ＭＣＮ＿ＡＤＶＥＲＴＩＳＥ＿ＩＮＴＥＲＶＡＬに等しくあり得る。ＭＣＮ＿ＡＤＶＥＲＴＩＳＥ＿ＩＮＴＥＲＶＡＬは、例えば１秒のタイムインターバルであり得る。ＭＣＮ広告パケット３００は１秒で周期的に送信される。ＭＣＮ＿ＡＤＶＥＲＴＩＳＥ＿ＴＩＭＥＯＵＴは、ＭＣＮ広告パケット３００で識別されたメディアクロックストリーム２６０が、利用不可能または資格付与されていないと考えられ得る前に経過し得るタイムインターバル（ＭＣＮ＿ＡＤＶＥＲＴＩＳＥ＿ＩＮＴＥＲＶＡＬ）の数であり得る。あるいは、クロック識別期間は、任意の構成可能、または所定の長さの時間であり得る。
【００８０】
ストリーム管理モジュール２２０は、資格付与されたストリームのうちのいずれかがタイムアウトしたか否かを決定するために、一組の資格付与されたストリーム２３０の資格付与されたストリームを監視し得る。ストリーム管理モジュール２２０は、クロック識別期間中、クロック識別期間の後、またはその両方で資格付与されたストリームを監視し得る。資格付与されたストリームのうちの１つがタイムアウトした場合には、ストリーム管理モジュール２２０は、タイムアウトしたストリームを一組の資格付与されたストリーム２３０から取り除き得る。参照メディアクロックストリームとして選択された資格付与されたストリームがタイムアウトした場合には、クロック生成モジュール２２２は、一組の資格付与されたストリーム２３０の異なるメディアクロックストリームを参照メディアクロックストリームとして選択し得る。例えば、クロック生成モジュール２２２は、より低い優先度のストリームを参照メディアクロックストリームとして選択し得る。
【００８１】
例えば、ストリーム管理モジュール２２０が現時の一次的なメディアクロックストリーム２３８に対してＭＣＮ広告パケット３００を受信することなく、ＭＣＮ＿ＡＤＶＥＲＴＩＳＥ＿ＴＩＭＥＯＵＴ＊ＭＣＮ＿ＡＤＶＥＲＴＩＳＥ＿ＩＮＴＥＲＶＡＬのようなタイムアウト期間が経過した場合には、ストリーム管理モジュール２２０は、一次的なメディアクロックストリーム２３８に関する情報を一組の資格付与されたストリーム２３０から削除し得、現時の二次的なメディアクロックストリーム２４０を一組の資格付与されたストリーム２３０の一次的なメディアクロックストリーム２３８として識別し得る。同様に、ストリーム管理モジュール２２０が現時の二次的なメディアクロックストリーム２４０に対してＭＣＮ広告パケット３００を受信することなく、タイムアウト期間が経過した場合には、ストリーム管理モジュール２２０は、二次的なメディアクロックストリーム２４０に関する情報を一組の資格付与されたストリーム２３０から削除し得る。
【００８２】
（３．メディアクロックストリームの広告）
広告モジュール２２４は、ローカルメディアクロック２１２に対応するメディアクロックストリーム２５０を広告し得る。１つの例において、メディアクロックストリームが、クロック識別期間の後に、一組の資格付与されたストリーム２３０に含まれた場合には、広告モジュール２２４は、ローカルメディアクロック２１２に対応するメディアクロックストリーム２５０を広告し得るが、そうでない場合には、メディアクロックストリーム２５０を広告しない場合がある。クロック識別期間が経過した後まで待機することによって、システム１００の他の利用可能なメディアクロックストリームを考慮して、メディアクロックストリーム２５０が一組の資格付与されたストリーム２３０に含まれない場合には、広告モジュール２２４は、ローカルメディアクロック２１２に対してメディアクロックストリーム２５０を広告することを避け得る。クロック識別期間は、例えば、アプリケーションモジュール１４８を起動すると、開始し得る。クロック識別期間は、一組の資格付与されたストリーム２３０の設定が変更された場合などのような、ある他のときにも開始し得る。
【００８３】
クロック識別期間が過ぎた後に、ストリーム管理モジュール２２０は、ローカルメディアクロック２１２に対するメディアクロックストリーム２５０（ローカルメディアクロックストリーム２５０とも呼ばれる）の優先度を、ＭＣＮ広告パケット２０２を処理することによって、事前に占有されている一組の資格付与されたストリーム２３０の資格付与されたストリームの優先度と比較し得る。いくつかの例において、ストリーム管理モジュール２２０は、ローカルメディアクロックストリーム２５０の優先度が一組の資格付与されたストリーム２３０の資格付与されたストリームの優先度と同じ場合に結合を分解するために、送信器２０１のＭＡＣアドレスを資格付与されたストリームに関連するＭＡＣソースアドレスと比較し得る。ローカルメディアクロックストリーム２５０が一組の資格付与されたストリーム２３０に加えられるように資格付与し、十分に高い優先度である場合に、ストリーム管理モジュール２２０は、ローカルメディアクロックストリーム２５０に関する情報を一組の資格付与されたストリーム２３０に加え得る。例えば、ストリーム管理モジュール２２０は、一次的または二次的なメディアクロックストリーム２３８および２４０に関する情報を、ローカルメディアクロックストリーム２５０のストリーム識別子２２６、ローカルメディアクロックストリーム２５０の優先度、および送信器２０１のＭＡＣソースアドレスで置き換え得る。
【００８４】
一組の資格付与されたストリーム２３０がローカルメディアクロックストリーム２５０を含む場合に、広告モジュール２２４は、ローカルメディアクロックストリーム２５０を広告し得る。例えば、広告モジュール２２４は、適切な値によってフィールドを占有することによって、ＭＣＮ広告パケット３００をフォーマットし得る。広告モジュール２２４は、ＭＣＮ＿ＡＤＶＥＲＴＩＳＥ＿ＩＮＴＥＲＶＡＬの後に無効となるタイマーを開始し得る。タイマーの期限切れに応答して、広告モジュール２２４は、ＭＣＮ広告パケット３００を送信し得、タイマーをＭＣＮ＿ＡＤＶＥＲＴＩＳＥ＿ＩＮＴＥＲＶＡＬに再設定し得る。あるいは、ローカルメディアクロック２１２に対するメディアクロックストリーム２５０が一組の資格付与されたストリーム２３０にない場合は、広告モジュール２２４は、メディアクロックストリーム２５０を広告しない場合がある。
【００８５】
上に記載されたように、資格付与されたストリームのうちの１つがタイムアウトした場合に、ストリーム管理モジュール２２０は、タイムアウトしたストリームを一組の資格付与されたストリーム２３０から取り除き得る。一組の資格付与されたストリーム２３０の資格付与するストリームがローカルメディアクロック２１２に対するメディアクロックストリーム２５０でない場合は、ストリーム管理モジュール２２０は、ローカルメディアクロック２１２に対するメディアクロックストリーム２５０を、タイムアウトしたメディアクロックストリームの取り除きに応答して、一組の資格付与されたストリーム２３０に加え得る。
【００８６】
例えば、ローカルメディアクロック２１２に対するメディアクロックストリーム２５０が、最初に一組の資格付与されたストリーム２３０に含まれず、タイムアウト期間が、一次的または二次的なメディアクロックストリーム２３８および２４０のどちらかに対してＭＣＮ広告パケット３００を受信することなく経った場合に、タイムアウトしたストリームに関する情報は、一組の資格付与されたストリーム２３０に関する情報から削除され得る。一次的なメディアクロックストリーム２３８が無効となり、削除された場合には、二次的なメディアクロックストリーム２４０が、一次的なメディアクロックストリーム２３８に置き換わり得、ローカルメディアクロックストリーム２５０が二次的なメディアクロックストリーム２４０になり得る。あるいは、二次的なメディアクロックストリーム２４０が無効となり、削除された場合には、ローカルメディアクロックストリーム２５０が二次的なメディアクロックストリーム２４０に置き換わり得る。ローカルメディアクロックストリーム２５０が参照メディアクロックストリームに対して選択された場合には、クロック生成モジュール２２２は、クロック選択器２０８にローカルメディアクロック２１２を参照メディアクロック２１６として選択するように命令し得る。
【００８７】
送信器２０１は、追加のコンポーネント、より少ないコンポーネント、または異なるコンポーネントを含み得る。例えば、送信器２０１は、ＮＩＣ２１０、ＲＴＣ１５０を含み得るが、送信器２０１とは別個の物理的に別なデバイスは、メモリ２０４、プロセッサ２０６、参照メディアクロック生成器１５５、メディアクロック回復モジュール１６０、およびクロックセレクター２０８得る。別のデバイスは、参照メディアクロック２１６を送信器２０１に提供し得る。
【００８８】
送信器２０１のコンポーネントは、追加のコンポーネント、より少ないコンポーネント、または異なるコンポーネントを含み得る。１つの例において、単一のストリーム選出モジュールは、資格付与モジュール２１８とストリーム管理モジュール２２０との両方の特徴を置き換え得、行い得る。第二の例において、メモリ２０４は、以前に一組の資格付与されたストリーム２３０にあったが、続いて、一組の資格付与されたストリーム２３０から取り除かれた資格付与されたストリームの履歴のような追加のデータ構造を含み得る。
【００８９】
上に記載された例において、ストリーム管理モジュール２２０は、ローカルメディアクロック２１２に対するメディアクロックストリーム２５０の優先度を、一組の資格付与されたストリーム２３０における各資格付与されたストリーム優先度に、クロック識別期間が経った後に比較し得る。あるいは、または加えて、資格付与モジュール２１８は、まず、ＭＣＮ広告パケット２０２を処理する前に、一組の資格付与されたストリーム２３０を、ローカルメディアクロック２１２に対応するメディアクロックストリーム２５０によって占有し得る。各広告されたメディアクロックストリームは、ＭＣＮ広告パケット２０２をクロック識別期間中に処理している間に、一組の資格付与されたストリーム２３０におけるローカルメディアクロック２１２に対するメディアクロックストリーム２５０と比較される。結果として、クロック識別期間が経った後に、ストリーム管理モジュール２２０は、ローカルメディアクロック２１２に対するメディアクロックストリーム２５０の優先度を、一組の資格付与されたストリーム２３０の各資格付与されたストリームの優先度と比較することをスキップし得る。
【００９０】
いくつかの例において、一組の資格付与されたストリーム２３０は、さまざまな数の資格付与されたストリームを含み得る。ストリーム管理モジュール２２０は、任意の広告されたメディアクロックストリームを一組の資格付与されたストリーム２３０に加え得る。資格付与モジュール２１８は、一組の資格付与されたストリーム２３０が資格付与されたことを示す。一組の資格付与されたストリーム２３０は、優先度、ならびにソースＭＡＣアドレスのようなストリームのある他の属性、またはそれらの組み合わせに基づき順序付けられた、順序付けリストであり得る。クロック生成モジュール２２２は、順序付けリストの中の第一の資格付与されたストリームを選出し得、例えば、一組の資格付与されたストリーム２３０の中のストリームの残りを無視し得る。広告モジュール２２４は、メディアクロックストリーム２５０が、資格付与されたストリームの順序付けリストの最上部からの所定の数のストリームのうちの１つであるという決定に応答して、メディアクロックストリーム２５０をローカルメディアクロックに対して広告し得る。
【００９１】
メディアクロックストリーム２５０および２６０は、代替のタイプの広告機構を用いて、広告され得る。例えば、送信器２０１は、ストリーム要求メッセージをネットワーク１４０を介して放送し得、任意の利用可能なメディアクロックストリームの通知を要求する。ストリーム要求メッセージは、送信器２０１のネットワークアドレスを含み得る。メディアクロックストリーム２５０または２６０を生成する能力を有しているネットワーク１４０上の任意のデバイスは、ＭＣＮ広告パケット３００を送信器２０１のネットワークアドレスに送信することによって、応答し得る。送信器２０１は、クロック識別期間にわたり、ＭＣＮ広告パケット２０２のうちの１つ以上を受信および処理し、適切に資格付与されたストリームを一組の資格付与されたストリーム２３０から選出する。送信器２０１は、選出されたメディアクロックストリーム２５０または２６０を購読し得る。１つの例において、ストリーム要求メッセージは、メディアクロック条件２２８を含み得る。その結果、ＭＣＮ広告パケット２０２を送信するデバイスは、広告されたメディアクロックストリーム２５０または２６０がメディアクロック条件２２８を満たすという決定に応答して、ＭＣＮ広告パケット２０２を送信し得る。
【００９２】
特に、送信器２０１を含むシステム１００は、多くの異なる方法によって実装され得る。例えば、コンピュータ読み取り可能メモリ２０４に格納されたいくつかのフィーチャ（例えば、実装された論理として、コンピュータ実行可能な命令として、またはメモリにおけるデータ構造として）がコンピュータ読み取り可能メモリ２０４に格納されて示されるが、システム１００の全て、または一部は、メモリ２０４またはある他の機械読み取り可能な媒体上に格納され得るか、メモリ２０４またはある他の機械読み取り可能な媒体にわたり分散し得るか、もしくはメモリ２０４またはある他の機械読み取り可能な媒体から読み取られ得る。コンピュータ読み取り可能媒体は、ＲＡＭ、光学格納デバイス、磁気格納デバイス、ハードディスク、フロッピ（登録商標）ディスク、ＣＤ−ＲＯＭ、ソリッドステートメモリデバイス、または有形格納デバイスの任意の他の形態を含み得る。あるいは、または加えて、送信器２０１の全て、または一部は、１つ以上の回路またはＦＰＧＡに実装され得る。
【００９３】
システム１００および送信器２０１の処理能力は、例えば、任意で複数の分散処理システムを含む複数のプロセッサおよびメモリのような、実体またはノード間に分散され得る。パラメータ、データベース、および他のデータ構造は、別個に格納および管理され得、単一のメモリまたはデータベースに組み込まれ得、多くの異なる方法によって論理的および物理的に組織化され得、連鎖リスト、ハッシュテーブル、または暗黙格納機構のような異なるタイプのデータ構造によって実装され得る。プログラムまたは回路のような論理は、複数のプログラム間で結合または分割され得、複数のメモリおよびプロセッサにわたり分散され得、共有ライブラリ（例えば、ダイナミックリンクライブラリ（ＤＬＬ））のようなライブラリに実装され得る。例えば、ＤＬＬは、アプリケーションモジュール１４８のフィーチャを実装し得る。
【００９４】
「モジュール」という用語は、１つ以上の実行可能なモジュールを指し得る。本明細書において記載された場合には、モジュールは、ソフトウェア、ハードウェア、またはプロセッサ２０６によって実行可能なそれらのいくつかの組み合わせを含み得る。ソフトウェアモジュールは、メモリ２０４、または他のメモリデバイスに格納された命令を含み得る。命令は、プロセッサ２０６または他のプロセッサによって実行可能である。ハードウェアモジュールは、さまざまなデバイス、コンポーネント、回路、ゲート、回路ボードなどを含み得、それらは、パフォーマンスのために、プロセッサ２０６によって実行可能であり、命令され、および／または制御される。
【００９５】
図４は、参照メディアクロックストリームをメディアクロックネゴシエーション広告パケット２０２から選出する論理の例示的フローチャートを例示する。動作は、図４に例示されたものとは異なる順序で実行され得るか、もしくは類似の機能性を例示する追加またはより少ないブロックを含むように記載され得る。
【００９６】
論理は、クロック識別期間（４１０）中に受信されるＭＣＮ広告パケット２０２によって始められ得る。ＭＣＮ広告パケット２０２のうちの１つの受信に応答して、ＭＣＮ広告パケット３００で識別された広告されたメディアクロックストリームが一組のメディアクロック条件２２８を満たすか否かの決定がなされ得る（４２０）。広告されたメディアクロックストリーム２６０が一組のメディアクロック条件２２８を満たさない場合には、論理は、受信されるＭＣＮ広告パケット２０２の動作に戻り得る（４１０）。
【００９７】
あるいは、広告されたメディアクロックストリーム２６０が一組のメディアクロック条件２２８を満たす場合には、広告されたメディアクロックストリーム２６０が、一組の資格付与されたストリーム２３０のいずれのストリームよりも高い優先度を有しているか否かの決定がなされ得る（４３０）。広告されたメディアクロックストリーム２６０が、一組の資格付与されたストリーム２３０のいずれのストリームよりも高い優先度を有していない場合には、論理は、受信されるＭＣＮ広告パケット２０２の動作に戻り得る（４１０）。
【００９８】
あるいは、広告されたメディアクロックストリーム２６０が、一組の資格付与されたストリーム２３０のいずれのストリームよりも高い優先度を有している場合には、広告されたメディアクロックストリーム２６０は、一組の資格付与されたストリーム２３０に加えられ得る（４４０）。加えて、クロック識別期間が経過したか否かの決定がなされ得る（４５０）。クロック識別期間が経過していない場合は、論理は、受信されるＭＣＮ広告パケット２０２の動作に戻り得る（４１０）。
【００９９】
あるいは、クロック識別期間が経過した場合には、一組の資格付与されたストリーム２３０からの資格付与されたストリームが参照メディアクロックストリーム（４６０）として選択され得る。加えて、一組の資格付与されたストリーム２３０のいずれかのストリームがタイムアウトしたか否かの決定がなされ得る（４７０）。一組の資格付与されたストリーム２３０のうちのストリームがタイムアウトしない場合は、例えば、一組の資格付与されたストリーム２３０のいずれかのストリームがタイムアウトするか否かの決定がなされた（４７０）動作に戻ることによって、論理が終了し得る。
【０１００】
あるいは、一組の資格付与されたストリーム２３０の一次的なメディアクロックストリーム２３８がタイムアウトする場合には、代替の資格付与されたストリームが一組の資格付与されたストリーム２３０から選択され得る（４８０）。代替の資格付与されたストリームが選択された後で、例えば、ＭＣＮ広告パケット２０２が受信される（４１０）動作に戻ることによって、論理が終了し得る。
【０１０１】
論理は、追加の動作、異なる動作、または図４に例示されたものよりも少ない動作を含み得る。１つの例において、論理は、一組の資格付与されたストリーム２３０から選択されたストリームが購読および受信され、回復されたメディアクロック２１４が選択されたストリームから生成される動作を含み得る。第二の例において、論理は、広告されたメディアクロックストリーム２６０が、一組の資格付与されたストリーム２３０のいずれのストリームよりも高い優先度を有しているか否かの決定がなされた（４３０）動作を含まない場合がある。
【０１０２】
図５は、ローカルメディアクロックストリーム２５０を広告するか否かを決定する論理の例示的フローチャートを例示する。動作は、図５に例示されるものとは異なる順序で実行され得るか、または類似する機能性を例示する追加またはより少ないブロックを含むように記載され得る。
【０１０３】
クロック識別期間中にＭＣＮ広告パケット２０２から決定される一組の資格付与されたストリーム２３０によって論理は始められ得る（５１０）。次に、ローカルメディアクロックストリーム２５０が一組の資格付与されたストリーム２３０のいずれのストリームよりも高い優先度を有しているか否かの決定がなされ得る（５２０）。
【０１０４】
ローカルメディアクロックストリーム２５０が、一組の資格付与されたストリーム２３０のいずれのストリームよりも高い優先度を有している場合には、ローカルメディアクロックストリーム２５０は、一組の資格付与されたストリーム２３０に加えられ得る（５３０）。加えて、ローカルメディアクロックストリーム２５０が広告され得る（５４０）。例えば、ＭＣＮ広告パケット２０２は、ネットワーク１４０を介して周期的に送信され得、ローカルメディアクロックストリーム２５０を利用可能なものとして識別する。
【０１０５】
あるいは、ローカルメディアクロックストリーム２５０が、一組の資格付与されたストリーム２３０のいずれのストリームよりも低い優先度を有している場合には、ローカルメディアクロックストリーム２５０が広告されない場合がある（５５０）。さらに、一組の資格付与されたストリーム２３０の単数または複数のストリームが監視され得、一組の資格付与されたストリーム２３０のいずれかのストリームがタイムアウトするか否かの決定がなされ得る（５６０）。
【０１０６】
タイムアウトがない場合、例えば、一組の資格付与されたストリーム２３０のいずれかのストリームのタイムアウトをチェックし続けることによって、論理が終了し得る。あるいは、一組の資格付与されたストリーム２３０のいずれかのストリームがタイムアウトする場合は、タイムアウトする資格付与されたストリームが一組の資格付与されたストリーム２３０から取り除かれ得る（５７０）。ローカルメディアクロックストリーム２５０が、一組の資格付与されたストリーム２３０のいずれかの残りの資格付与されたストリームよりも高い優先度を有しているか否かの決定がなされ得る（５８０）。
【０１０７】
ローカルメディアクロックストリーム２５０が、一組の資格付与されたストリーム２３０のいずれかの残りの資格付与されたストリームよりも高い優先度を有している場合には、ローカルメディアクロックストリームが一組の資格付与されたストリームに加えられ（５３０）、ローカルメディアクロックストリーム２５０が広告される（５４０）動作に論理が続き得る。
【０１０８】
あるいは、ローカルメディアクロックストリーム２５０が、一組の資格付与されたストリーム２３０のいずれかの残りの資格付与されたストリームよりも低い優先度を有している場合には、論理が終了し得る。例えば、一組の資格付与されたストリーム２３０のいずれかのストリームのタイムアウトをチェックし続けることによって、例えば、論理が終了し得る。
【０１０９】
論理は、追加の動作、異なる動作、または図５に例示されたものよりも少ない動作を含み得る。例えば、論理は、一組の資格付与されたストリーム２３０から選択されたストリームが購読、受信され、回復されたメディアクロック２１４が選択されたストリームから生成される動作を含み得る。
【０１１０】
革新的な特定のコンポーネントが記載されたが、革新に矛盾しない方法、システム、および製造項目は、追加または異なるコンポーネントを含み得る。例えば、メモリは、ＤＲＡＭ、ＳＲＡＭ、フラッシュまたは任意の他のタイプのメモリであり得る。フラグ、データ、テーブル、実体、および他のデータ構造は、別個に格納および管理され得、単一のメモリまたはデータベースに組み込まれ得、分散され得、または多くの異なる方法によって、論理的および物理的に組織化され得る。コンポーネントは、コンピュータ読み取り可能命令によって符号化された非一時的コンピュータ読み取り可能媒体上に含まれ得る。コンポーネントは、独立して動作し得るか、または同じプログラムの一部であり得る。コンポーネントは、別個のリムーバル回路ボードのような別個のハードウェアに常駐し得るか、または同じメモリならびにメモリからの命令を実装するプロセッサのような共通のハードウェアを共有し得る。プログラムは、単一のプログラム、別個のプログラムの一部であり得るか、または複数のメモリおよびプロセッサにわたり分散され得る。
【０１１１】
上で述べられた処理、方法および／または技術を実装するそれぞれの論理、ソフトウェアまたは命令は、キャッシュ、バッファ、ＲＡＭ、リムーバル媒体、ハードドライブ、他のコンピュータ読み取り可能格納媒体、または任意の他の有形媒体または任意のそれらの組み合わせのようなコンピュータ読み取り可能媒体またはメモリまたは他の有形媒体上に提供され得る。非一時的コンピュータ読み取り可能媒体は、ＲＡＭ、フラッシュドライブ、ＣＤ−ＲＯＭ、または他の格納媒体のようなさまざまなタイプの揮発性および不揮発性格納媒体を含み得る。図において例示されるか、または上に記載された機能、動作またはタスクは、コンピュータ読み取り可能媒体上に格納された１組以上の論理または命令に応答して実行され得る。機能、動作またはタスクは、特定のタイプの命令のセット、格納媒体、プロセッサまたは処理戦略から独立しており、ソフトウェア、ハードウェア、集積回路、ファームウェア、マイクロコードなどによって行われ得、単独または組み合わせて動作する。同様に、処理戦略は、多重処理、多重タスク、並行処理などを含み得る。１つの例において、命令は、ローカルまたは遠隔システムによって読み取られるために、リムーバブル媒体デバイス上に格納される。他の例において、論理または命令は、コンピュータネットワークまたは電話線を介しての転送のために遠隔地に格納される。さらに他の例において、論理または命令は、所与のコンピュータ、中央処理装置（「ＣＰＵ」）、グラフィックスプロセシングユニット（「ＧＰＵ」）またはシステム内に格納される。
【０１１２】
「オーディオ／ビデオ」という用語は、オーディオ、ビデオ、または両方を意味し得る。したがって、１つの例において、「オーディオ／ビデオ」は、オーディオのみを意味し得る。第二の例において、「オーディオ／ビデオ」は、ビデオのみを意味し得る。第三の例において、「オーディオ／ビデオ」は、オーディオとビデオとの組み合わせを意味し得る。
【０１１３】
発明のさまざまな例が記載されたが、より多くの例および実装が発明の範囲内で可能であることが当業者には明らかである。そのため、発明は、添付の特許請求の範囲およびその均等物に照らす以外で制限されるべきではない。
【符号の説明】
【０１１４】
１００  システム
１１０  送信器
１２０  メディアクロック
１３０  受信器
１４０  ネットワーク
１４２、１４４、１４６  タイムスタンプパケット
１４８  アプリケーションモジュール
１５０  リアルタイムクロック
１５５  参照メディアクロック生成器
１６０  メディアクロック回復モジュール
１６５  メディアストリーム
【図１】
0005554363.tif 000003
【図２】
0005554363.tif 000004
【図３】
0005554363.tif 000005
【図４】
0005554363.tif 000006
【図５】
0005554363.tif 000007