(57)【要約】独立したクロッキング装置をもつ複数のデバイスの間で動作の同期を維持するためのシステムが記載される。前記システムは、同期グループにタスクを配送するタスク配送デバイスを含む。同期グループとは、前記タスク配送デバイスによって配送されたタスクを同期して実行するべき複数のデバイスを含むものである。タスク配送デバイスは各タスクをネットワークを通じて同期グループのメンバーに配送する。各タスクはタスク配送デバイスによって維持されるクロックに基づく時刻を示すタイムスタンプと関連付けられている。その時刻にその同期グループのメンバーが当該タスクを実行するのである。同期グループの各メンバーは、タスク配送デバイスからそのクロックによって示される現在時刻の標示を定期的に取得し、タスク配送デバイスのクロックと各自のクロックとの間の時間差を決定し、それから各自のクロックに基づいて前記タイムスタンプが各自がタスクを実行すべきであることを示す時刻を決定する。
2007512718.tif 000002
【特許請求の範囲】
【請求項１】
タスクソースデバイスとして動作する一つのデバイスと同期グループの一メンバーとして動作する少なくとも一つの他のデバイスとを含む複数のデバイスを有するシステムであって、
Ａ．前記タスクソースデバイスは前記同期グループに一連のタスクを配送するよう構成されており、各タスクは当該タスクソースデバイスによって維持されるクロックに基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は前記同期グループをなす諸デバイスがそれぞれのタスクを実行すべき時刻であり、
Ｂ．各メンバーデバイスが：
（ｉ）前記タスクソースデバイスから該タスクソースデバイスのクロックによって示される現在時刻の値の指示を定期的に取得し、
（ｉｉ）それぞれのタスクに関連付けられた前記タイムスタンプならびに、前記タスクソースデバイスのクロックによって示される現在時刻の値と各自のクロックによって示される現在時刻の値との間の時間差の値から、前記タスクを実行すべきである、各自のクロックに基づく時刻を決定する、
よう構成されている、
ことを特徴とするシステム。
【請求項２】
前記同期グループが複数のメンバーデバイスを有することを特徴とする、請求項１記載のシステム。
【請求項３】
前記同期グループのメンバーをなす各デバイスがさらに、前記タスクソースデバイスから受け取る各タスクを前記決定された時刻に実行し、それによりそれらのデバイスによる一連のタスクのそれぞれの実行が前記タスクソースデバイスのクロックによって示される時刻に基づくそれぞれのタイミング関係において行われることを助けるよう構成されていることを特徴とする、請求項２記載のシステム。
【請求項４】
前記メンバーデバイスがそれぞれのタスクを同期して実行するよう構成されていることを特徴とする、請求項３記載のシステム。
【請求項５】
前記メンバーデバイスの一つが当該同期グループのためのマスターデバイスとして動作し、他のすべてのメンバーデバイスはそれぞれスレーブデバイスをなし、前記マスターデバイスは当該同期グループをなすメンバーデバイスに関連した少なくとも一つの種類の同期グループ管理動作を実行するよう構成されていることを特徴とする、請求項２記載のシステム。
【請求項６】
当該システムが前記マスターデバイスによる前記少なくとも一つの種類の同期グループ管理動作の実行を制御するよう構成されているユーザーインターフェースモジュールをさらに含み、前記マスターデバイスがさらに当該同期グループの状態に関係する状態情報を前記ユーザーインターフェースモジュールに提供するよう構成されていることを特徴とする、請求項５記載のシステム。
【請求項７】
前記状態情報が当該同期グループをなすデバイスの識別情報を含むことを特徴とする、請求項６記載のシステム。
【請求項８】
前記状態情報が現在実行されているタスクの識別情報を含むことを特徴とする、請求項６記載のシステム。
【請求項９】
少なくとも一つの追加的デバイスを有する請求項５記載のシステムであって、ある種類の同期グループ管理動作において前記マスターデバイスが、前記少なくとも一つの追加的デバイスが当該同期グループにスレーブデバイスとして加われるようにするよう構成されていることを特徴とするシステム。
【請求項１０】
前記タスクソースデバイスが選択されたマルチキャスト送信手法を使って前記メンバーデバイスにタスクを配送するよう構成されており、前記メンバーデバイスがタスクが実行されるべき時まで該タスクをバッファリングしておくよう構成されており、さらに前記少なくとも一つの追加的デバイスが当該同期グループにスレーブデバイスとして加わったときに前記タスクソースデバイスが選択されたユニキャスト送信手法を使って前記スレーブデバイスに少なくとも一つの以前に配送済みのタスクを送信してやれるようになっていることを特徴とする、請求項９記載のシステム。
【請求項１１】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、前記タスクソースデバイスが当該同期グループにスレーブデバイスとして加われるようにするよう構成されており、前記タスクソースデバイスが当該同期グループのためにタスクソースデバイスとして動作し続けることを特徴とする、請求項５記載のシステム。
【請求項１２】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、あるスレーブデバイスが当該同期グループから離脱できるようにするよう構成されており、前記離脱したスレーブデバイスはその後当該グループのメンバーデバイスではなくなることを特徴とする、請求項５記載のシステム。
【請求項１３】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、前記タスクソースデバイスによって配送される一連のタスクを制御するよう構成されていることを特徴とする、請求項５記載のシステム。
【請求項１４】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、前記タスクソースデバイスによって配送されたタスクのメンバーデバイスによる実行を制御するようさらに構成されていることを特徴とする、請求項５記載のシステム。
【請求項１５】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、さらに少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、メンバーデバイスが現在実行されているタスクシーケンスの実行を打ち切れるようにするよう構成されていることを特徴とする、請求項１４記載のシステム。
【請求項１６】
メンバーデバイスが現在実行されているタスクシーケンスの実行を打ち切れるようにする前記同期グループ管理動作において、前記マスターデバイスが前記タスクソースデバイスをして、メンバーデバイスが前記タスクシーケンスの実行を打ち切れるようにするコマンドを配送できるようにし、前記メンバーデバイスは該コマンドの受領後前記タスクシーケンスの実行を打ち切るよう構成されていることを特徴とする、請求項１５記載のシステム。
【請求項１７】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、さらに少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、メンバーデバイスが以前に配送されているがまだ実行は開始されていないタスクシーケンスの実行を取り消せるようにするよう構成されていることを特徴とする、請求項１４記載のシステム。
【請求項１８】
メンバーデバイスが以前に配送されているがまだ実行は開始されていないタスクシーケンスの実行を取り消せるようにする前記同期グループ管理動作において、前記マスターデバイスが前記タスクソースデバイスをして、メンバーデバイスが前記タスクシーケンスの実行を取り消せるようにするコマンドを配送できるようにし、前記メンバーデバイスは該コマンドの受領後前記タスクシーケンスの実行を取り消すよう構成されていることを特徴とする、請求項１７記載のシステム。
【請求項１９】
少なくとも一つの種類の同期グループ管理動作において、マスターデバイスとして動作しているメンバーデバイスが、マスターデバイスが当該同期グループ内であるメンバーデバイスから別のメンバーデバイスに移行できるようにするよう構成されていることを特徴とする、請求項５記載のシステム。
【請求項２０】
少なくとも一つの種類の同期グループ管理動作において、前記マスターデバイスが、タスクソースデバイスが当該システム内であるデバイスから別のデバイスに移行できるようにするよう構成されていることを特徴とする、請求項５記載のシステム。
【請求項２１】
請求項２０記載のシステムであって、
Ａ．タスクソースデバイスとして動作しているデバイスが、タスクソースデバイスを前記別のデバイスに移行させられるようにされたのち、移行情報を前記別のデバイスに提供するよう構成されており、前記移行情報が配送されるべきタスクに関する情報のためのソース、タスクソースデバイスによって維持されているクロックに基づくタイミング情報およびメンバーデバイスの識別情報を含み、
Ｂ．前記別のデバイスは、前記移行情報の受領後は、
ｉ．当該同期グループに前記一連のタスクを配送し、各タスクはタスクソースデバイスとして動作している前記デバイスから受け取るタイミング情報に基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は当該同期グループをなす諸デバイスがそれぞれのタスクを実行すべき時刻であり、
ｉｉ．自らが以後はタスクソースデバイスとして動作することを当該同期グループのメンバーに通知する、
よう構成されていることを特徴とするシステム。
【請求項２２】
配送されるべきタスクに関する前記情報がストリーミング情報のソースであり、前記別のデバイスが、前記移行情報の受領後、該ストリーミング情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項２１記載のシステム。
【請求項２３】
配送されるべきタスクに関する前記情報が前記移行情報において同定されるファイル中にあり、前記別のデバイスが、前記同定されるファイルから情報を取得し、該情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項２１記載のシステム。
【請求項２４】
配送されるべきタスクに関する前記情報が、前記同定されるファイル内に前記移行情報で同定されるオフセットにて始まり、前記別のデバイスが、前記同定されるオフセットに対応する前記ファイル内の位置からの情報をまとめるよう構成されていることを特徴とする、請求項２３記載のシステム。
【請求項２５】
配送されるべきタスクに関する前記情報が前記移行情報において同定される一連のファイル中にあり、前記別のデバイスが、該一連のファイルから情報を取得し、該情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項２３記載のシステム。
【請求項２６】
前記タスクソースデバイスがさらに、前記タスクを選択されたマルチキャストメッセージ送信手法を使って配送するよう構成されていることを特徴とする、請求項１記載のシステム。
【請求項２７】
前記タスクソースデバイスが、少なくとも一つのタスクに関連付けられた形で、当該タスクソースデバイスによって維持されるクロックによって現在示される時刻よりも遅いタスク実行時刻を示すタイムスタンプを与えるよう構成されていることを特徴とする、請求項１記載のシステム。
【請求項２８】
前記タスクソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該タスクソースデバイスによって配送された前記少なくとも一つのタスクが前記タイムスタンプによって示される時刻にメンバーデバイスによって実行されうるようにするのに十分となるよう選択するよう構成されていることを特徴とする、請求項２７記載のシステム。
【請求項２９】
前記タスクソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該タスクソースデバイスによって配送された前記少なくとも一つのタスクが前記タイムスタンプによって示される時刻における実行のためにメンバーデバイスに配送されうるようにするのに十分となるよう選択するよう構成されていることを特徴とする、請求項２８記載のシステム。
【請求項３０】
タスクソースデバイスが前記タスクに関連付けられた情報を少なくとも二種類の情報ソースから取得するよう構成されており、当該タスクソースデバイスがさらに各タスクについて前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を選択するのを、それぞれのタスクに関連付けられた情報ソースの種類に基づいて行うよう構成されていることを特徴とする、請求項２７記載のシステム。
【請求項３１】
少なくとも一つのメンバーデバイスがさらに、そのクロックレートを前記タスクソースデバイスのクロックによって維持されているクロックレートの値との関係で調整するよう構成されていることを特徴とする、請求項１記載のシステム。
【請求項３２】
前記少なくとも一つのメンバーデバイスが、そのクロックレートを前記タスクソースデバイスから受け取るタスクのそれぞれに関連付けられたタイムスタンプとの関係で調整するよう構成されていることを特徴とする、請求項３１記載のシステム。
【請求項３３】
少なくとも一つの別のデバイスが、第二の同期グループにタスクを配送するよう構成されたタスクソースデバイスとして動作し、第一の同期グループのためのタスクソースデバイスとして動作するデバイスが第二の同期グループのメンバーデバイスとしても動作することを特徴とする、請求項１記載のシステム。
【請求項３４】
少なくとも一つのメンバーデバイスが：
Ａ．一連のタスクを受け取るよう構成されているタスク受領モジュールと、
Ｂ．タスクソースデバイスから該タスクソースのクロックによって示される現在時刻の値を取得するよう構成されている現在時刻取得モジュールと、
Ｃ．各タスクに関連付けられたタイムスタンプならびに、前記現在時刻取得モジュールによって取得された現在時刻の値と当該メンバーデバイスによって維持されているクロックによって示される現在時刻の値との間のずれを表す時間差の値から、そのタスクが実行されるべき、当該メンバーデバイス各自のクロックに基づく時刻を決定するよう構成されている実行時刻決定モジュールと、
Ｄ．前記実行時刻決定モジュールによって決定される時刻に各タスクを実行するよう構成されているタスク実行モジュール、
とを有することを特徴とする、請求項１記載のシステム。
【請求項３５】
インターフェースモジュールによって受領されたコマンドの実行を制御するための制御モジュールをさらに含むことを特徴とする、請求項３４記載のシステム。
【請求項３６】
前記少なくとも一つのメンバーデバイスがさらに、前記タスク受領モジュールが前記タスクソースデバイスから受け取るタスクを、実行されるべき時までバッファリングしておくよう構成されているバッファをさらに有し、前記タスク実行モジュールがそのバッファリングされたタスクを前記実行時刻決定モジュールによって決定される時刻に実行するよう構成されていることを特徴とする、請求項３５記載のシステム。
【請求項３７】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記インターフェースモジュールがさらにタスク実行を制御するためのタスク実行制御コマンドを受け取るよう構成されており、前記制御モジュールが、タスク実行を制御するための少なくとも一つのタスク実行制御コマンドの受領に反応して、前記タスク実行モジュールをして現在実行されているタスクシーケンスの実行を打ち切り、バッファリングされている当該タスクシーケンス中のその後のタスクを実行しないようにするよう構成されていることを特徴とする、請求項３６記載のシステム。
【請求項３８】
前記制御モジュールが、前記タスク実行モジュールをして、後続のタスクシーケンスに対応する少なくとも一つのタスクの実行を前記実行時刻決定モジュールによって決定された時刻に再開できるようにするよう構成されていることを特徴とする、請求項３７記載のシステム。
【請求項３９】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記インターフェースモジュールがさらにタスク実行を制御するためのタスク実行制御コマンドを受け取るよう構成されており、前記制御モジュールが、少なくとも一つのタスクがバッファリングされているがまだ実行は始まっていないタスクシーケンスの実行を取り消すための少なくとも一つのタスク実行制御コマンドの受領に反応して、前記タスク実行モジュールをして前記バッファリングされているタスクシーケンスのタスクを実行しないようにするよう構成されていることを特徴とする、請求項３６記載のシステム。
【請求項４０】
前記制御モジュールが、前記タスク実行モジュールをして、少なくとも一つのタスクがバッファリングされているがまだ実行は始まっていない前記タスクシーケンスの後続のタスクシーケンスに対応する少なくとも一つのタスクの実行を再開できるようにするよう構成されていることを特徴とする、請求項３９記載のシステム。
【請求項４１】
請求項３４記載のシステムであって、前記メンバーデバイスが：
Ａ．タスクソースデバイスから、配送されるべきタスクに関する情報のためのソース、タスクソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を受け取るよう構成されている移行情報受領モジュールと、
Ｂ．前記移行情報の受領後に、
ｉ．当該同期グループに前記一連のタスクを配送し、各タスクはタスクソースデバイスとして動作しているデバイスから受け取るタイミング情報に基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は当該同期グループをなす諸デバイスがそれぞれのタスクを実行すべき時刻であり、
ｉｉ．自らが以後はタスクソースデバイスとして動作することを当該同期グループのメンバーに通知する、
よう構成されている移行制御モジュール、
とを含むことを特徴とするシステム。
【請求項４２】
配送されるべきタスクに関する前記情報がストリーミング情報のソースであり、前記移行制御モジュールが、前記移行情報の受領後、該ストリーミング情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項４１記載のシステム。
【請求項４３】
配送されるべきタスクに関する前記情報が前記移行情報において同定されるファイル中にあり、前記移行制御モジュールが、前記同定されるファイルから情報を取得し、該情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項４１記載のシステム。
【請求項４４】
配送されるべきタスクに関する前記情報が、前記同定されるファイル内に前記移行情報で同定されるオフセットにて始まり、前記移行制御モジュールが、前記同定されるオフセットに対応する前記ファイル内の位置からの情報をまとめるよう構成されていることを特徴とする、請求項４３記載のシステム。
【請求項４５】
配送されるべきタスクに関する前記情報が前記移行情報において同定される一連のファイル中にあり、前記移行制御モジュールが、該一連のファイルから情報を取得し、該情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項４３記載のシステム。
【請求項４６】
前記メンバーデバイスがさらに、該メンバーデバイスのクロックレートを前記タスクソースデバイスのクロックによって維持されているクロックレートの値との関係で調整するよう構成されているクロックレート調整モジュールを含むことを特徴とする、請求項３４記載のシステム。
【請求項４７】
前記クロックレート調整モジュールが、前記クロックレートを前記タスクソースデバイスから受け取るタスクのそれぞれに関連付けられたタイムスタンプとの関係で調整するよう構成されていることを特徴とする、請求項４６記載のシステム。
【請求項４８】
前記タスクソースデバイスが：
Ａ．前記諸タスクのそれぞれを取得するよう構成されているタスク取得モジュールと、
Ｂ．各タスクが実行されるべき時刻を決定し、前記各タスクをその実行時刻を示すタイムスタンプに関連付けるよう構成されているタスク実行時刻決定モジュールと、
Ｃ．前記一連のタスクを前記少なくとも一つの別のデバイスに送信するよう構成されているタスク送信モジュールと、
Ｄ．所定のイベントに反応して、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスがそれに送信されたタスクの実行シーケンスを修正できるようにするコマンドを挿入できるようにするよう構成されている実行制御コマンド生成モジュール、
とを有することを特徴とする、請求項１記載のシステム。
【請求項４９】
前記タスク送信モジュールが選択されたマルチキャスト送信手法を利用するよう構成されていることを特徴とする、請求項４８記載のシステム。
【請求項５０】
前記所定のイベントが、オペレーターによって与えられる入力目印を有することを特徴とする、請求項４８記載のシステム。
【請求項５１】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが少なくとも一つのタスクの実行を前記所定のイベントが生起した時刻に関係して制御できるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項５０記載のシステム。
【請求項５２】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが現在実行中のタスクの実行を打ち切るか、および／または前記所定のイベントより後に実行されることになっている少なくとも一つのタスクを実行しないようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項５１記載のシステム。
【請求項５３】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記実行制御コマンド生成モジュールが、前記所定のイベントに反応して、
（ｉ）前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが現在実行中のタスクの実行を打ち切るか、および／または現在実行中のタスクを含むタスクシーケンス中に後続のタスクがあれば少なくともその一つを実行しないようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記タスク実行時刻決定モジュールをして、現在実行されているタスクシーケンスの後続のタスクシーケンスのタスクに関連付けられたタイムスタンプが現在実行されているタスクのタスクシーケンスからのタスクの前記の打ち切りおよび／または不実行を反映するようにさせ、
（ｂ）前記タスク送信モジュールをして、前記少なくとも一つの別のデバイスに前記後続のタスクシーケンスのタスクを送信させる、
よう構成されていることを特徴とする、請求項５１記載のシステム。
【請求項５４】
前記タスク送信モジュールが、前記少なくとも一つの別のデバイスに、前記打ち切られたおよび／または不実行とされたタスクの後続のタスクシーケンスのタスクをいっさい実行しないようにさせるコマンドを挿入するよう構成されていることを特徴とする、請求項５３記載のシステム。
【請求項５５】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して該タスクの実行を制御できるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項４８記載のシステム。
【請求項５６】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して該タスクの実行を取り消せるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項５５記載のシステム。
【請求項５７】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して以前に送信されたタスクの実行を取り消せるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項５５記載のシステム。
【請求項５８】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して以前に送信されたがまだ実行は開始されていないタスクの実行を取り消せるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項５７記載のシステム。
【請求項５９】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記実行制御コマンド生成モジュールが、前記所定のイベントに反応して、
（ｉ）前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスがまだ実行が開始されていないタスクシーケンスの実行を取り消せるようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記タスク実行時刻決定モジュールをして、実行が取り消されたタスクシーケンスの後続のタスクシーケンスのタスクに関連付けられたタイムスタンプが前記の取り消しを反映するようにさせ、
（ｂ）前記タスク送信モジュールをして、前記少なくとも一つの別のデバイスに前記後続のタスクシーケンスのタスクを送信させる、
よう構成されていることを特徴とする、請求項５５記載のシステム。
【請求項６０】
前記タスクソースデバイスが：
Ａ．前記諸タスクのそれぞれを取得するよう構成されているタスク取得モジュールと、
Ｂ．各タスクが実行されるべき時刻を決定し、前記各タスクをその実行時刻を示すタイムスタンプに関連付けるよう構成されているタスク実行時刻決定モジュールと、
Ｃ．前記一連のタスクを前記少なくとも一つの別のデバイスに送信するよう構成されているタスク送信モジュールと、
Ｄ．所定のイベントに反応して、配送されるべきタスクに関する情報のためのソース、タスクソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を別のデバイスに提供するよう構成されているタスクソースデバイス移行制御モジュール、
とを有することを特徴とする、請求項１記載のシステム。
【請求項６１】
前記タスクソースデバイスが、少なくとも一つのタスクに関連付けられた形で、当該タスクソースデバイスによって維持されるクロックによって現在示される時刻よりも遅いタスク実行時刻を示すタイムスタンプを与えるよう構成されていることを特徴とする、請求項６０記載のシステム。
【請求項６２】
前記タスクソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該タスクソースデバイスによって配送された前記少なくとも一つのタスクが前記タイムスタンプによって示される時刻にメンバーデバイスによって実行されうるようにするのに十分となるよう選択するよう構成されていることを特徴とする、請求項６１記載のシステム。
【請求項６３】
前記タスクソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該タスクソースデバイスによって配送された前記少なくとも一つのタスクが前記タイムスタンプによって示される時刻における実行のためにメンバーデバイスに配送されうるようにするのに十分となるよう選択するよう構成されていることを特徴とする、請求項６２記載のシステム。
【請求項６４】
タスクソースデバイスが前記タスクに関連付けられた情報を少なくとも二種類の情報ソースから取得するよう構成されており、当該タスクソースデバイスがさらに各タスクについて前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を選択するのを、それぞれのタスクに関連付けられた情報ソースの種類に基づいて行うよう構成されていることを特徴とする、請求項６２記載のシステム。
【請求項６５】
タスクソースによって、該タスクソースによって維持されているクロックに基づいて該タスクソースによって指定される時刻に与えられる一連のタスクを実行するためのデバイスであって、
Ａ．各タスクは前記タスクソースによって維持されるクロックに基づく時刻値を示すタイムスタンプに関連付けられており、前記時刻は当該デバイスがそれぞれのタスクを実行すべき時刻であるとして、前記一連のタスクを受け取るよう構成されたインターフェースモジュールと、
Ｂ．前記タスクソースから該タスクソースのクロックによって示される現在時刻の値を取得するよう構成されている現在時刻取得モジュールと、
Ｃ．各タスクに関連付けられたタイムスタンプならびに、前記現在時刻取得モジュールによって取得された現在時刻の値と当該メンバーデバイスによって維持されているクロックによって示される現在時刻の値との間のずれを表す時間差の値から、そのタスクが実行されるべき、当該メンバーデバイス各自のクロックに基づく時刻を決定するよう構成されている実行時刻決定モジュールと、
Ｄ．前記実行時刻決定モジュールによって決定される時刻に各タスクを実行するよう構成されているタスク実行モジュール、
とを有することを特徴とするデバイス。
【請求項６６】
インターフェースモジュールによって受領されたコマンドの実行を制御するための制御モジュールをさらに含むことを特徴とする、請求項６５記載のデバイス。
【請求項６７】
前記インターフェースモジュールが受け取ったタスクを実行されるべき時までバッファリングしておくよう構成されているバッファをさらに有し、前記タスク実行モジュールがそのバッファリングされたタスクを前記実行時刻決定モジュールによって決定される時刻に実行するよう構成されていることを特徴とする、請求項６５記載のデバイス。
【請求項６８】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記インターフェースモジュールがさらにタスク実行を制御するためのタスク実行制御コマンドを受け取るよう構成されており、前記制御モジュールが、タスク実行を制御するための少なくとも一つのタスク実行制御コマンドの受領に反応して、前記タスク実行モジュールをして現在実行されているタスクシーケンスの実行を打ち切り、バッファリングされている当該タスクシーケンス中のその後のタスクを実行しないようにするよう構成されていることを特徴とする、請求項６７記載のデバイス。
【請求項６９】
前記制御モジュールが、前記タスク実行モジュールをして、後続のタスクシーケンスに対応する少なくとも一つのタスクの実行を前記実行時刻決定モジュールによって決定された時刻に再開できるようにするよう構成されていることを特徴とする、請求項６８記載のデバイス。
【請求項７０】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記インターフェースモジュールがさらにタスク実行を制御するためのタスク実行制御コマンドを受け取るよう構成されており、前記制御モジュールが、少なくとも一つのタスクがバッファリングされているがまだ実行は始まっていないタスクシーケンスの実行を取り消すための少なくとも一つのタスク実行制御コマンドの受領に反応して、前記タスク実行モジュールをして前記バッファリングされているタスクシーケンスのタスクを実行しないようにするよう構成されていることを特徴とする、請求項６９記載のデバイス。
【請求項７１】
前記制御モジュールが、前記タスク実行モジュールをして、少なくとも一つのタスクがバッファリングされているがまだ実行は始まっていない前記タスクシーケンスの後続のタスクシーケンスに対応する少なくとも一つのタスクの実行を再開できるようにするよう構成されていることを特徴とする、請求項７０記載のデバイス。
【請求項７２】
前記制御モジュールが、ある同期グループのメンバーになるというコマンドの受領に反応して、前記インターフェースモジュールをして前記タスク実行モジュールによる実行のためのタスクを受け取れるようにするよう構成されていることを特徴とする、請求項６６記載のデバイス。
【請求項７３】
前記制御モジュールが、ある同期グループのメンバーになるというコマンドの受領に反応して、前記インターフェースモジュールをして、選択されたマルチキャスト送信手法を使って現在送信されているタスクを受け取り、さらに、選択されたユニキャスト送信手法を使って少なくとも一つの以前に配送済みのタスクを取得することができるようにするよう構成されていることを特徴とする、請求項７２記載のデバイス。
【請求項７４】
前記制御モジュールが、ある同期グループから離脱するというコマンドの受領に反応して、前記インターフェースモジュールをしてタスクの受け取りをできなくし、前記タスク実行モジュールをして以前に受け取ったタスクでまだ実行されていないタスクの実行をできなくするよう構成されていることを特徴とする、請求項６５記載のデバイス。
【請求項７５】
当該デバイスがさらに、ユーザーインターフェースモジュールから制御情報を受け取るよう構成されているユーザーインターフェースモジュールインターフェースモジュールを有しており、前記制御モジュールが前記制御情報に反応して選択された動作が実行されうるようにするよう構成されていることを特徴とする、請求項６５記載のデバイス。
【請求項７６】
別のデバイスが当該デバイスの同期グループのメンバーになれるようにするための制御情報に反応して、前記制御モジュールが前記インターフェースモジュールをして前記別のデバイスに、該別のデバイスが当該同期グループのメンバーになれるようにするコマンドを送信させることを特徴とする、請求項７５記載のデバイス。
【請求項７７】
当該デバイスの同期グループのメンバーである別のデバイスが当該同期グループから離脱できるようにするための制御情報に反応して、前記制御モジュールが前記インターフェースモジュールをして前記別のデバイスに、該別のデバイスが当該同期グループから離脱できるようにするコマンドを送信させることを特徴とする、請求項７５記載のデバイス。
【請求項７８】
前記タスクソースをして動作を開始できるようにする制御情報に反応して、前記制御モジュールが前記タスクソースに動作を開始させるための選択された動作を実行することを特徴とする、請求項７５記載のデバイス。
【請求項７９】
タスクソースとしても動作している請求項７８記載のデバイスであって、前記制御モジュールの制御のもとでタスクを生成するもとになる情報を取得して該タスクを生成するよう構成されたタスク生成モジュールを含むことを特徴とするデバイス。
【請求項８０】
前記インターフェースモジュールがさらに前記タスクを少なくとも一つの別のデバイスに送信するよう構成されていることを特徴とする、請求項７９記載のデバイス。
【請求項８１】
前記デバイスがタスクソースではなく、前記制御モジュールが前記インターフェースモジュールをして前記タスクソースが動作できるようにするコマンドを送信できるようにするよう構成されていることを特徴とする、請求項７９記載のデバイス。
【請求項８２】
タスクが一連のタスクシーケンスに分けられており、現在実行されているタスクシーケンスの実行を打ち切らせる制御情報の受領に反応して、前記制御モジュールが前記インターフェースモジュールをして、前記タスクソースが前記タスクシーケンスの実行の打ち切りを可能にする再同期コマンドを前記タスクシーケンスに関連付けられた一連のタスク中に挿入できるようにするコマンドを送信させるよう構成されていることを特徴とする、請求項８１記載のデバイス。
【請求項８３】
タスクが一連のタスクシーケンスに分けられており、少なくとも一部分は受け取られているが実行されてはいないタスクシーケンスの実行を有効にする制御情報の受領に反応して、前記制御モジュールが前記インターフェースモジュールをして、前記タスクソースが前記タスクシーケンスの実行を無効にする再同期コマンドを前記コマンド系列中に挿入できるようにするコマンドを送信させるよう構成されていることを特徴とする、請求項８１記載のデバイス。
【請求項８４】
前記制御モジュールが、前記ユーザーインターフェースモジュールインターフェースモジュールが前記ユーザーインターフェースモジュールに状態情報を送信できるようにするよう構成されていることを特徴とする、請求項７５記載のデバイス。
【請求項８５】
前記状態情報が少なくとも一つのタスクの実行状態を含むことを特徴とする、請求項８４記載のデバイス。
【請求項８６】
請求項６５記載のデバイスであって、さらに：
Ａ．タスクソースデバイスから、配送されるべきタスクに関する情報のためのソース、タスクソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を受け取るよう構成されている移行情報受領モジュールと、
Ｂ．前記移行情報の受領後に、
ｉ．当該同期グループに前記一連のタスクを配送し、各タスクはタスクソースデバイスとして動作しているデバイスから受け取るタイミング情報に基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は当該同期グループをなす諸デバイスがそれぞれのタスクを実行すべき時刻であり、
ｉｉ．自らが以後はタスクソースデバイスとして動作することを当該同期グループのメンバーに通知する、
よう構成されている移行制御モジュール、
とを含むことを特徴とするデバイス。
【請求項８７】
配送されるべきタスクに関する前記情報がストリーミング情報のソースであり、前記移行制御モジュールが、前記移行情報の受領後、該ストリーミング情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項８６記載のデバイス。
【請求項８８】
配送されるべきタスクに関する前記情報が前記移行情報において同定されるファイル中にあり、前記移行制御モジュールが、前記同定されるファイルから情報を取得し、該情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項８６記載のデバイス。
【請求項８９】
配送されるべきタスクに関する前記情報が、前記同定されるファイル内に前記移行情報で同定されるオフセットにて始まり、前記移行制御モジュールが、前記同定されるオフセットに対応する前記ファイル内の位置からの情報をまとめるよう構成されていることを特徴とする、請求項８８記載のデバイス。
【請求項９０】
配送されるべきタスクに関する前記情報が前記移行情報において同定される一連のファイル中にあり、前記移行制御モジュールが、該一連のファイルから情報を取得し、該情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項８９記載のデバイス。
【請求項９１】
前記メンバーデバイスのクロックレートを前記タスクソースデバイスのクロックによって維持されているクロックレートの値との関係で調整するよう構成されているクロックレート調整モジュールを含むことを特徴とする、請求項６５記載のデバイス。
【請求項９２】
それぞれの実行時刻における少なくとも一つの別のデバイスによる実行のために一連のタスクを配送するためのタスクソースデバイスであって：
Ａ．前記諸タスクのそれぞれを取得するよう構成されているタスク取得モジュールと、
Ｂ．各タスクが実行されるべき時刻を決定し、前記各タスクをその実行時刻を示すタイムスタンプに関連付けるよう構成されているタスク実行時刻決定モジュールと、
Ｃ．前記一連のタスクを前記少なくとも一つの別のデバイスに送信するよう構成されているタスク送信モジュールと、
Ｄ．所定のイベントに反応して、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスがそれに送信されたタスクの実行シーケンスを修正できるようにするコマンドを挿入できるようにするよう構成されている実行制御コマンド生成モジュール、
とを有することを特徴とするタスクソースデバイス。
【請求項９３】
前記タスク送信モジュールが選択されたマルチキャスト送信手法を利用するよう構成されていることを特徴とする、請求項９２記載のタスクソースデバイス。
【請求項９４】
前記所定のイベントが、オペレーターによって与えられる入力目印を有することを特徴とする、請求項９２記載のタスクソースデバイス。
【請求項９５】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが少なくとも一つのタスクの実行を前記所定のイベントが生起した時刻に関係して制御できるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項９４記載のタスクソースデバイス。
【請求項９６】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが現在実行中のタスクの実行を打ち切るか、および／または前記所定のイベントより後に実行されることになっている少なくとも一つのタスクを実行しないようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項９５記載のタスクソースデバイス。
【請求項９７】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記実行制御コマンド生成モジュールが、前記所定のイベントに反応して、
（ｉ）前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが現在実行中のタスクの実行を打ち切るか、および／または現在実行中のタスクを含むタスクシーケンス中に後続のタスクがあれば少なくともその一つを実行しないようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記タスク実行時刻決定モジュールをして、現在実行されているタスクシーケンスの後続のタスクシーケンスのタスクに関連付けられたタイムスタンプが現在実行されているタスクのタスクシーケンスからのタスクの前記の打ち切りおよび／または不実行を反映するようにさせ、
（ｂ）前記タスク送信モジュールをして、前記少なくとも一つの別のデバイスに前記後続のタスクシーケンスのタスクを送信させる、
よう構成されていることを特徴とする、請求項９５記載のタスクソースデバイス。
【請求項９８】
前記タスク送信モジュールが、前記少なくとも一つの別のデバイスに、前記打ち切られたおよび／または不実行とされたタスクの後続のタスクシーケンスのタスクをいっさい実行しないようにさせるコマンドを挿入するよう構成されていることを特徴とする、請求項９７記載のタスクソースデバイス。
【請求項９９】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して該タスクの実行を制御できるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項９２記載のタスクソースデバイス。
【請求項１００】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して該タスクの実行を取り消せるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項９９記載のタスクソースデバイス。
【請求項１０１】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して以前に送信されたタスクの実行を取り消せるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項９９記載のタスクソースデバイス。
【請求項１０２】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して以前に送信されたがまだ実行は開始されていないタスクの実行を取り消せるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項１０１記載のタスクソースデバイス。
【請求項１０３】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記実行制御コマンド生成モジュールが、前記所定のイベントに反応して、
（ｉ）前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスがまだ実行が開始されていないタスクシーケンスの実行を取り消せるようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記タスク実行時刻決定モジュールをして、実行が取り消されたタスクシーケンスの後続のタスクシーケンスのタスクに関連付けられたタイムスタンプが前記の取り消しを反映するようにさせ、
（ｂ）前記タスク送信モジュールをして、前記少なくとも一つの別のデバイスに前記後続のタスクシーケンスのタスクを送信させる、
よう構成されていることを特徴とする、請求項９９記載のタスクソースデバイス。
【請求項１０４】
それぞれの実行時刻における少なくとも一つの別のデバイスによる実行のために一連のタスクを配送するためのタスクソースデバイスであって：
Ａ．前記諸タスクのそれぞれを取得するよう構成されているタスク取得モジュールと、
Ｂ．各タスクが実行されるべき時刻を決定し、前記各タスクをその実行時刻を示すタイムスタンプに関連付けるよう構成されており、かつ少なくとも一つのタスクに関連付けられた形で、当該タスクソースデバイスによって維持されるクロックによって現在示される時刻よりも遅いタスク実行時刻を示すタイムスタンプを与えるよう構成されているタスク実行時刻決定モジュールと、
Ｃ．前記一連のタスクを前記少なくとも一つの別のデバイスに送信するよう構成されているタスク送信モジュール、
とを有することを特徴とするタスクソースデバイス。
【請求項１０５】
前記タスクソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該タスクソースデバイスによって配送された前記少なくとも一つのタスクが前記タイムスタンプによって示される時刻にメンバーデバイスによって実行されうるようにするのに十分となるよう選択するよう構成されていることを特徴とする、請求項１０４記載のシステム。
【請求項１０６】
前記タスクソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該タスクソースデバイスによって配送された前記少なくとも一つのタスクが前記タイムスタンプによって示される時刻における実行のためにメンバーデバイスに配送されうるようにするのに十分となるよう選択するよう構成されていることを特徴とする、請求項１０５記載のシステム。
【請求項１０７】
タスクソースデバイスが前記タスクに関連付けられた情報を少なくとも二種類の情報ソースから取得するよう構成されており、当該タスクソースデバイスがさらに各タスクについて前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を選択するのを、それぞれのタスクに関連付けられた情報ソースの種類に基づいて行うよう構成されていることを特徴とする、請求項１０４記載のシステム。
【請求項１０８】
少なくとも一つの別のデバイスによる実行のために一連のタスクを配送するためのタスクソースデバイスであって：
Ａ．前記諸タスクのそれぞれを取得するよう構成されているタスク取得モジュールと、
Ｂ．各タスクが実行されるべき時刻を決定し、前記各タスクをその実行時刻を示すタイムスタンプに関連付けるよう構成されているタスク実行時刻決定モジュールと、
Ｃ．前記一連のタスクを前記少なくとも一つの別のデバイスに送信するよう構成されているタスク送信モジュールと、
Ｄ．所定のイベントに反応して、配送されるべきタスクに関する情報のためのソース、タスクソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を別のデバイスに提供するよう構成されているタスクソースデバイス移行制御モジュール、
とを有することを特徴とするタスクソースデバイス。
【請求項１０９】
タスクソースデバイスとして動作する一つのデバイスと同期グループの一メンバーとして動作する少なくとも一つの他のデバイスとからなる複数のデバイスを有するシステムを動作させる方法であって、
Ａ．前記タスクソースデバイスは前記同期グループに一連のタスクを配送するよう構成されており、各タスクは当該タスクソースデバイスによって維持されるクロックに基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は前記同期グループをなす諸デバイスがそれぞれのタスクを実行すべき時刻であり、
Ｂ．各メンバーデバイスが：
（ｉ）前記タスクソースデバイスから該タスクソースデバイスのクロックによって示される現在時刻の値の指示を定期的に取得し、
（ｉｉ）それぞれのタスクに関連付けられた前記タイムスタンプならびに、前記タスクソースデバイスのクロックによって示される現在時刻の値と各自のクロックによって示される現在時刻の値との間の時間差の値から、前記タスクを実行すべきである、各自のクロックに基づく時刻を決定する、
よう構成されている、
ことを特徴とする方法。
【請求項１１０】
前記同期グループが複数のメンバーデバイスを有することを特徴とする、請求項１０９記載の方法。
【請求項１１１】
前記同期グループのメンバーをなす各デバイスがさらに、前記タスクソースデバイスから受け取る各タスクを前記決定された時刻に実行し、それによりそれらのデバイスによる一連のタスクのそれぞれの実行が前記タスクソースデバイスのクロックによって示される時刻に関してそれぞれのタイミング関係において行われることを助けるよう構成されていることを特徴とする、請求項１１０記載の方法。
【請求項１１２】
前記メンバーデバイスがそれぞれのタスクを同期して実行するよう構成されていることを特徴とする、請求項１１１記載の方法。
【請求項１１３】
前記メンバーデバイスの一つが当該同期グループのためのマスターデバイスとして動作し、他のすべてのメンバーデバイスはそれぞれスレーブデバイスをなし、前記マスターデバイスは当該同期グループをなすメンバーデバイスに関連した少なくとも一つの種類の同期グループ管理動作を実行するよう構成されていることを特徴とする、請求項１１０記載の方法。
【請求項１１４】
当該システムが前記マスターデバイスによる前記少なくとも一つの種類の同期グループ管理動作の実行を制御できるようにされているユーザーインターフェースモジュールをさらに含み、前記マスターデバイスがさらに当該同期グループの状態に関係する状態情報を前記ユーザーインターフェースモジュールに提供できるようにされていることを特徴とする、請求項１１３記載の方法。
【請求項１１５】
前記状態情報が当該同期グループをなすデバイスの識別情報を含むことを特徴とする、請求項１１４記載の方法。
【請求項１１６】
前記状態情報が現在実行されているタスクの識別情報を含むことを特徴とする、請求項１１４記載の方法。
【請求項１１７】
少なくとも一つの追加的デバイスを有する請求項１１３記載の方法であって、ある種類の同期グループ管理動作において前記マスターデバイスが、前記少なくとも一つの追加的デバイスが当該同期グループにスレーブデバイスとして加われるようにするよう構成されていることを特徴とする方法。
【請求項１１８】
前記タスクソースデバイスが選択されたマルチキャスト送信手法を使って前記メンバーデバイスにタスクを配送できるようにされており、前記メンバーデバイスがタスクが実行されるべき時まで該タスクをバッファリングしておけるようにされており、さらに前記少なくとも一つの追加的デバイスが当該同期グループにスレーブデバイスとして加わったときに前記タスクソースデバイスが選択されたユニキャスト送信手法を使って前記スレーブデバイスに少なくとも一つの以前に配送済みのタスクを送信してやれるようになっていることを特徴とする、請求項１１７記載の方法。
【請求項１１９】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、前記タスクソースデバイスが当該同期グループにスレーブデバイスとして加われるようにできるようにされており、前記タスクソースデバイスが当該同期グループのためにタスクソースデバイスとして動作し続けることを特徴とする、請求項１１３記載の方法。
【請求項１２０】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、あるスレーブデバイスが当該同期グループから離脱できるようにさせられるようにされており、前記離脱したスレーブデバイスはその後当該グループのメンバーデバイスではなくなることを特徴とする、請求項１１３記載の方法。
【請求項１２１】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、前記タスクソースデバイスによって配送される一連のタスクを制御できるようにされていることを特徴とする、請求項１１３記載の方法。
【請求項１２２】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスがさらに、前記タスクソースデバイスによって配送されたタスクのメンバーデバイスによる実行を制御できるようにされていることを特徴とする、請求項１１３記載の方法。
【請求項１２３】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、さらに少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、メンバーデバイスが現在実行されているタスクシーケンスの実行を打ち切れるようさせられるようにされていることを特徴とする、請求項１２２記載の方法。
【請求項１２４】
メンバーデバイスが現在実行されているタスクシーケンスの実行を打ち切れるようにする前記同期グループ管理動作において、前記マスターデバイスが前記タスクソースデバイスをして、メンバーデバイスが前記タスクシーケンスの実行を打ち切れるようにするコマンドを配送できるようにし、前記メンバーデバイスは該コマンドの受領後前記タスクシーケンスの実行を打ち切れるようになっていることを特徴とする、請求項１２３記載の方法。
【請求項１２５】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、さらに少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、メンバーデバイスが以前に配送されているがまだ実行は開始されていないタスクシーケンスの実行を取り消せるようにさせられるようにされていることを特徴とする、請求項１２２記載の方法。
【請求項１２６】
メンバーデバイスが以前に配送されているがまだ実行は開始されていないタスクシーケンスの実行を取り消せるようにする前記同期グループ管理動作において、前記マスターデバイスが前記タスクソースデバイスをして、メンバーデバイスが前記タスクシーケンスの実行を取り消せるようにするコマンドを配送できるようにし、前記メンバーデバイスは該コマンドの受領後前記タスクシーケンスの実行を取り消せるようになっていることを特徴とする、請求項１２５記載の方法。
【請求項１２７】
少なくとも一つの種類の同期グループ管理動作において、マスターデバイスとして動作しているメンバーデバイスが、マスターデバイスが当該同期グループ内であるメンバーデバイスから別のメンバーデバイスに移行できるようにさせられるようにされていることを特徴とする、請求項１１３記載の方法。
【請求項１２８】
少なくとも一つの種類の同期グループ管理動作において、前記マスターデバイスが、タスクソースデバイスが当該システム内であるデバイスから別のデバイスに移行できるようにさせられるようにされていることを特徴とする、請求項１１３記載の方法。
【請求項１２９】
請求項１２８記載のシステムであって、
Ａ．タスクソースデバイスとして動作しているデバイスが、タスクソースデバイスを前記別のデバイスに移行させられるようにされたのち、移行情報を前記別のデバイスに提供するステップを実行できるようにされており、前記移行情報が配送されるべきタスクに関する情報のためのソース、タスクソースデバイスによって維持されているクロックに基づくタイミング情報およびメンバーデバイスの識別情報を含み、
Ｂ．前記別のデバイスは、前記移行情報の受領後は、
ｉ．当該同期グループに前記一連のタスクを配送し、各タスクはタスクソースデバイスとして動作している前記デバイスから受け取るタイミング情報に基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は当該同期グループをなす諸デバイスがそれぞれのタスクを実行すべき時刻であり、
ｉｉ．自らが以後はタスクソースデバイスとして動作することを当該同期グループのメンバーに通知する、
ステップを実行できるようにされていることを特徴とする方法。
【請求項１３０】
配送されるべきタスクに関する前記情報がストリーミング情報のソースであり、前記別のデバイスが、前記移行情報の受領後、該ストリーミング情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるステップを実行できるようにされていることを特徴とする、請求項１２９記載の方法。
【請求項１３１】
配送されるべきタスクに関する前記情報が前記移行情報において同定されるファイル中にあり、前記別のデバイスが、前記同定されるファイルから情報を取得し、該情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるステップを実行できるようにされていることを特徴とする、請求項１２９記載の方法。
【請求項１３２】
配送されるべきタスクに関する前記情報が、前記同定されるファイル内に前記移行情報で同定されるオフセットにて始まり、前記別のデバイスが、前記同定されるオフセットに対応する前記ファイル内の位置からの情報をまとめるステップを実行できるようにされていることを特徴とする、請求項１３１記載の方法。
【請求項１３３】
配送されるべきタスクに関する前記情報が前記移行情報において同定される一連のファイル中にあり、前記別のデバイスが、該一連のファイルから情報を取得し、該情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるステップを実行できるようにされていることを特徴とする、請求項１３１記載の方法。
【請求項１３４】
前記タスクソースデバイスがさらに、前記タスクを選択されたマルチキャストメッセージ送信手法を使って配送するステップを実行できるようにされていることを特徴とする、請求項１０９記載の方法。
【請求項１３５】
前記タスクソースデバイスが、少なくとも一つのタスクに関連付けられた形で、当該タスクソースデバイスによって維持されるクロックによって現在示される時刻よりも遅いタスク実行時刻を示すタイムスタンプを与えるステップを実行できるようにされていることを特徴とする、請求項１０９記載の方法。
【請求項１３６】
前記タスクソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該タスクソースデバイスによって配送された前記少なくとも一つのタスクが前記タイムスタンプによって示される時刻にメンバーデバイスによって実行されうるようにするのに十分となるよう選択するステップを実行できるようにされていることを特徴とする、請求項１３５記載の方法。
【請求項１３７】
前記タスクソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該タスクソースデバイスによって配送された前記少なくとも一つのタスクが前記タイムスタンプによって示される時刻における実行のためにメンバーデバイスに配送されうるようにするのに十分となるよう選択するステップを実行できるようにされていることを特徴とする、請求項１３６記載の方法。
【請求項１３８】
タスクソースデバイスが前記タスクに関連付けられた情報を少なくとも二種類の情報ソースから取得するよう構成されており、当該タスクソースデバイスがさらに各タスクについて前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を選択するのを、それぞれのタスクに関連付けられた情報ソースの種類に基づいて行うステップを実行できるようにされていることを特徴とする、請求項１３５記載の方法。
【請求項１３９】
少なくとも一つのメンバーデバイスがさらに、そのクロックレートを前記タスクソースデバイスのクロックによって維持されているクロックレートの値との関係で調整するステップを実行できるようにされていることを特徴とする、請求項１０９記載の方法。
【請求項１４０】
前記少なくとも一つのメンバーデバイスが、そのクロックレートを前記タスクソースデバイスから受け取るタスクのそれぞれに関連付けられたタイムスタンプとの関係で調整するステップを実行できるようにされていることを特徴とする、請求項１３９記載の方法。
【請求項１４１】
少なくとも一つの別のデバイスが、第二の同期グループにタスクを配送できるようにされたタスクソースデバイスとして動作し、第一の同期グループのためのタスクソースデバイスとして動作するデバイスが第二の同期グループのメンバーデバイスとしても動作することを特徴とする、請求項１０９記載の方法。
【請求項１４２】
メンバーデバイス内における、
Ａ．一連のタスクを受け取るタスク受領ステップと、
Ｂ．タスクソースデバイスから該タスクソースのクロックによって示される現在時刻の値を取得する現在時刻取得ステップと、
Ｃ．各タスクに関連付けられたタイムスタンプならびに、前記現在時刻取得ステップの間に取得された現在時刻の値と当該メンバーデバイスによって維持されているクロックによって示される現在時刻の値との間のずれを表す時間差の値から、そのタスクが実行されるべき、当該メンバーデバイス各自のクロックに基づく時刻を決定する実行時刻決定ステップと、
Ｄ．前記実行時刻決定ステップによって決定される時刻に各タスクを実行するタスク実行ステップ、
とを含むことを特徴とする、請求項１０９記載の方法。
【請求項１４３】
前記タスク受領ステップの間に受領されたコマンドの実行を制御するための制御ステップをさらに含むことを特徴とする、請求項１４２記載の方法。
【請求項１４４】
前記少なくとも一つのメンバーデバイスがさらに、前記タスク受領ステップの間に前記タスクソースデバイスから受け取られるタスクを、実行されるべき時までバッファリングしておくよう構成されているバッファをさらに有し、前記タスク実行ステップがそのバッファリングされたタスクを前記実行時刻決定ステップの間に決定される時刻に実行するステップを含むことを特徴とする、請求項１４３記載の方法。
【請求項１４５】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記タスク受領ステップがさらにタスク実行を制御するためのタスク実行制御コマンドを受け取れるようにされており、前記制御ステップが、タスク実行を制御するための少なくとも一つのタスク実行制御コマンドの受領に反応して、前記タスク実行ステップをして現在実行されているタスクシーケンスの実行を打ち切り、さらにバッファリングされている当該タスクシーケンス中のその後のタスクを実行しないように制御するステップを含むことを特徴とする、請求項１４４記載の方法。
【請求項１４６】
前記制御ステップが、前記タスク実行ステップをして、後続のタスクシーケンスに対応する少なくとも一つのタスクの実行を前記実行時刻決定ステップの間に決定された時刻に再開できるようにするステップを含むことを特徴とする、請求項１４５記載の方法。
【請求項１４７】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記タスク受領ステップがさらにタスク実行を制御するためのタスク実行制御コマンドを受け取るステップを含み、前記制御ステップが、少なくとも一つのタスクがバッファリングされているがまだ実行は始まっていないタスクシーケンスの実行を取り消すための少なくとも一つのタスク実行制御コマンドの受領に反応して、前記バッファリングされているタスクシーケンスのタスクが実行されないようにするステップを含むことを特徴とする、請求項１４４記載の方法。
【請求項１４８】
前記制御ステップが、少なくとも一つのタスクがバッファリングされているがまだ実行は始まっていない前記タスクシーケンスの後続のタスクシーケンスに対応する少なくとも一つのタスクの実行が再開されうるようにするステップを含んでいることを特徴とする、請求項１４７記載の方法。
【請求項１４９】
請求項１４２記載の方法であって、前記メンバーデバイスが：
Ａ．タスクソースデバイスから、配送されるべきタスクに関する情報のためのソース、タスクソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を受け取る移行情報受領ステップと、
Ｂ．前記移行情報の受領後に、
ｉ．当該同期グループに前記一連のタスクを配送し、各タスクはタスクソースデバイスとして動作しているデバイスから受け取るタイミング情報に基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は当該同期グループをなす諸デバイスがそれぞれのタスクを実行すべき時刻であり、
ｉｉ．自らが以後はタスクソースデバイスとして動作することを当該同期グループのメンバーに通知する、
移行制御ステップ、
とを実行することを特徴とする方法。
【請求項１５０】
配送されるべきタスクに関する前記情報がストリーミング情報のソースであり、前記移行制御ステップが、前記移行情報の受領後、該ストリーミング情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるステップを含むことを特徴とする、請求項１４９記載の方法。
【請求項１５１】
配送されるべきタスクに関する前記情報が前記移行情報において同定されるファイル中にあり、前記移行制御ステップが、前記同定されるファイルから情報を取得し、該情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるステップを含むことを特徴とする、請求項１４９記載の方法。
【請求項１５２】
配送されるべきタスクに関する前記情報が、前記同定されるファイル内に前記移行情報で同定されるオフセットにて始まり、前記移行制御ステップが、前記同定されるオフセットに対応する前記ファイル内の位置からの情報をまとめるステップを含むことを特徴とする、請求項１５１記載の方法。
【請求項１５３】
配送されるべきタスクに関する前記情報が前記移行情報において同定される一連のファイル中にあり、前記移行制御ステップが、該一連のファイルから情報を取得し、該情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるステップを含むことを特徴とする、請求項１５１記載の方法。
【請求項１５４】
前記メンバーデバイスがさらに、該メンバーデバイスのクロックレートを前記タスクソースデバイスのクロックによって維持されているクロックレートの値との関係で調整するステップを含むクロックレート調整ステップを実行できるようにされていることを特徴とする、請求項１４２記載の方法。
【請求項１５５】
前記クロックレート調整ステップが、前記クロックレートを前記タスクソースデバイスから受け取るタスクのそれぞれに関連付けられたタイムスタンプとの関係で決定することを含むことを特徴とする、請求項１５４記載の方法。
【請求項１５６】
タスクソースデバイス内における、
Ａ．前記諸タスクのそれぞれを取得するタスク取得ステップと、
Ｂ．各タスクが実行されるべき時刻を決定し、前記各タスクをその実行時刻を示すタイムスタンプに関連付けるタスク実行時刻決定ステップと、
Ｃ．前記一連のタスクを前記少なくとも一つの別のデバイスに送信するタスク送信ステップと、
Ｄ．所定のイベントに反応して、前記タスク送信ステップの間に、タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスがそれに送信されたタスクの実行シーケンスを修正できるようにするコマンドを挿入する実行制御コマンド生成ステップ、
とを含むことを特徴とする、請求項１０９記載の方法。
【請求項１５７】
前記タスク送信ステップが選択されたマルチキャスト送信手法を利用するステップを含むことを特徴とする、請求項１５６記載の方法。
【請求項１５８】
前記所定のイベントが、オペレーターによって与えられる入力目印を受け取るステップを含むことを特徴とする、請求項１５６記載の方法。
【請求項１５９】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記タスク送信ステップの間に、一連のタスク中に、前記少なくとも一つの別のデバイスが少なくとも一つのタスクの実行を前記所定のイベントが生起した時刻に関係して制御できるようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項１５８記載の方法。
【請求項１６０】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記タスク送信ステップの間に、一連のタスク中に、前記少なくとも一つの別のデバイスが現在実行中のタスクの実行を打ち切るか、および／または前記所定のイベントより後に実行されることになっている少なくとも一つのタスクを実行しないようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項１５９記載の方法。
【請求項１６１】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、
（ｉ）前記タスク送信ステップの間に、前記一連のタスク中に、前記少なくとも一つの別のデバイスが現在実行中のタスクの実行を打ち切るか、および／または現在実行中のタスクを含むタスクシーケンス中に後続のタスクがあれば少なくともその一つを実行しないようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記タスク実行時刻決定ステップの間に、現在実行されているタスクシーケンスの後続のタスクシーケンスのタスクに関連付けられたタイムスタンプが現在実行されているタスクのタスクシーケンスからのタスクの前記の打ち切りおよび／または不実行を反映するようになり、
（ｂ）前記タスク送信ステップの間に、前記少なくとも一つの別のデバイスに前記後続のタスクシーケンスのタスクを送信する、
ことを可能にする、
ステップを含むことを特徴とする、請求項１５９記載の方法。
【請求項１６２】
前記タスク送信ステップが、前記少なくとも一つの別のデバイスに、前記打ち切られたおよび／または不実行とされたタスクの後続のタスクシーケンスのタスクをいっさい実行しないようにさせるコマンドを前記タスク系列中に挿入するステップを含むことを特徴とする、請求項１６１記載の方法。
【請求項１６３】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記タスク送信ステップの間に、前記一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して該タスクの実行を制御できるようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項１５９記載の方法。
【請求項１６４】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記タスク送信ステップの間に、前記一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して該タスクの実行を取り消せるようにするコマンドを挿入するようステップを含むことを特徴とする、請求項１６３記載の方法。
【請求項１６５】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記タスク送信ステップの間に、前記一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して以前に送信されたタスクの実行を取り消せるようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項１６３記載の方法。
【請求項１６６】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記タスク送信ステップの間に、前記一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して以前に送信されたがまだ実行は開始されていないタスクの実行を取り消せるようにするコマンドを挿入するステップを含むことを特徴とする、請求項１６５記載の方法。
【請求項１６７】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、
（ｉ）前記タスク送信ステップの間に、前記一連のタスク中に、前記少なくとも一つの別のデバイスがまだ実行が開始されていないタスクシーケンスの実行を取り消せるようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記タスク実行時刻決定ステップの間に、実行が取り消されたタスクシーケンスの後続のタスクシーケンスのタスクに関連付けられたタイムスタンプが前記の取り消しを反映するようになり、
（ｂ）前記タスク送信ステップの間に、前記少なくとも一つの別のデバイスに前記後続のタスクシーケンスのタスクを送信する、
ことを可能にする、
ステップを含むことを特徴とする、請求項１６３記載の方法。
【請求項１６８】
前記タスクソースデバイスが：
Ａ．前記諸タスクのそれぞれを取得するタスク取得ステップと、
Ｂ．各タスクが実行されるべき時刻を決定し、前記各タスクをその実行時刻を示すタイムスタンプに関連付けるタスク実行時刻決定ステップと、
Ｃ．前記一連のタスクを前記少なくとも一つの別のデバイスに送信するタスク送信ステップと、
Ｄ．所定のイベントに反応して、配送されるべきタスクに関する情報のためのソース、タスクソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を別のデバイスに提供するタスクソースデバイス移行制御ステップ、
とを実行できるようにされていることを特徴とする、請求項１０９記載の方法。
【請求項１６９】
前記タスクソースデバイスが、少なくとも一つのタスクに関連付けられた形で、当該タスクソースデバイスによって維持されるクロックによって現在示される時刻よりも遅いタスク実行時刻を示すタイムスタンプを与えるステップを実行できるようにされていることを特徴とする、請求項１０９記載の方法。
【請求項１７０】
前記タスクソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該タスクソースデバイスによって配送された前記少なくとも一つのタスクが前記タイムスタンプによって示される時刻にメンバーデバイスによって実行されうるようにするのに十分となるよう選択するステップを実行できるようにされていることを特徴とする、請求項１６９記載の方法。
【請求項１７１】
前記タスクソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該タスクソースデバイスによって配送された前記少なくとも一つのタスクが前記タイムスタンプによって示される時刻における実行のためにメンバーデバイスに配送されうるようにするのに十分となるよう選択するステップを実行できるようにされていることを特徴とする、請求項１７０記載の方法。
【請求項１７２】
タスクソースデバイスが前記タスクに関連付けられた情報を少なくとも二種類の情報ソースから取得し、各タスクについて前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を選択するのを、それぞれのタスクに関連付けられた情報ソースの種類に基づいて行うステップを実行できるようにされていることを特徴とする、請求項１６９記載の方法。
【請求項１７３】
タスクソースによって、該タスクソースによって維持されているクロックに基づいて該タスクソースによって指定される時刻に与えられる一連のタスクを実行するためのデバイスを動作させる方法であって、
Ａ．各タスクは前記タスクソースによって維持されるクロックに基づく時刻値を示すタイムスタンプに関連付けられており、前記時刻は当該デバイスがそれぞれのタスクを実行すべき時刻であるとして、前記一連のタスクを受け取るタスク受領ステップと、
Ｂ．前記タスクソースから該タスクソースのクロックによって示される現在時刻の値を取得する現在時刻取得ステップと、
Ｃ．各タスクに関連付けられたタイムスタンプならびに、前記現在時刻取得ステップの間に取得された現在時刻の値と当該デバイスによって維持されているクロックによって示される現在時刻の値との間のずれを表す時間差の値から、そのタスクが実行されるべき、当該デバイス各自のクロックに基づく時刻を決定する実行時刻決定ステップと、
Ｄ．前記実行時刻決定ステップの間に決定される時刻に各タスクを実行するタスク実行ステップ、
とを含むことを特徴とする方法。
【請求項１７４】
インターフェースモジュールによって受領されたコマンドの実行を制御するための制御ステップをさらに含むことを特徴とする、請求項１７３記載の方法。
【請求項１７５】
受け取られたタスクを実行されるべき時までバッファリングしておくよう構成されているバッファをさらに有し、前記タスク実行ステップがそのバッファリングされたタスクを前記実行時刻決定ステップの間に決定される時刻に実行するステップを含んでいることを特徴とする、請求項１７４記載の方法。
【請求項１７６】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記インターフェースモジュールがさらにタスク実行を制御するためのタスク実行制御コマンドを受け取れるようにされており、前記制御モジュールが、タスク実行を制御するための少なくとも一つのタスク実行制御コマンドの受領に反応して、前記タスク実行モジュールをして現在実行されているタスクシーケンスの実行を打ち切り、バッファリングされている当該タスクシーケンス中のその後のタスクを実行しないことができるようにされていることを特徴とする、請求項１７５記載の方法。
【請求項１７７】
前記制御ステップが、タスク実行をして、後続のタスクシーケンスに対応する少なくとも一つのタスクの実行を前記実行時刻決定ステップの間に決定された時刻に再開できるようにするステップを含むことを特徴とする、請求項１７６記載の方法。
【請求項１７８】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記タスク受領ステップがさらにタスク実行を制御するためのタスク実行制御コマンドを受け取るステップを含んでおり、前記制御ステップが、少なくとも一つのタスクがバッファリングされているがまだ実行は始まっていないタスクシーケンスの実行を取り消すための少なくとも一つのタスク実行制御コマンドの受領に反応して、前記タスク実行が前記バッファリングされているタスクシーケンスのタスクの実行を含まないようにするステップを含むことを特徴とする、請求項１７５記載の方法。
【請求項１７９】
前記制御ステップが、タスク実行をして、少なくとも一つのタスクがバッファリングされているがまだ実行は始まっていない前記タスクシーケンスの後続のタスクシーケンスに対応する少なくとも一つのタスクの実行を再開できるようにするステップを含むことを特徴とする、請求項１７８記載の方法。
【請求項１８０】
前記制御ステップが、ある同期グループのメンバーになるというコマンドの受領に反応して、前記タスク受領ステップの間に前記タスク実行ステップに際しての実行のためのタスクを受け取るステップを含むことを特徴とする、請求項１７３記載の方法。
【請求項１８１】
前記制御ステップが、ある同期グループのメンバーになるというコマンドの受領に反応して、前記タスク受領ステップをして、選択されたマルチキャスト送信手法を使って現在送信されているタスクを受け取るステップを含むことを可能にし、さらに、選択されたユニキャスト送信手法を使って少なくとも一つの以前に配送済みのタスクを取得するステップを含むことを可能にするステップを含むことを特徴とする、請求項１８０記載の方法。
【請求項１８２】
前記制御ステップが、ある同期グループから離脱するというコマンドの受領に反応して、タスクの受け取りおよび以前に受け取ったタスクでまだ実行されていないタスクの実行を無効にするよう構成されていることを特徴とする、請求項１７３記載の方法。
【請求項１８３】
ユーザーインターフェースモジュールから制御情報を受け取るユーザーインターフェースモジュール制御情報受領ステップをさらに有しており、前記制御ステップが前記制御情報に反応して選択された動作が実行されうるようにするステップを含むことを特徴とする、請求項１７３記載の方法。
【請求項１８４】
別のデバイスが当該デバイスの同期グループのメンバーになれるようにするための制御情報に反応して、前記制御ステップが前記別のデバイスに、該別のデバイスが当該同期グループのメンバーになれるようにするコマンドを送信するステップを含むことを特徴とする、請求項１８３記載の方法。
【請求項１８５】
当該デバイスの同期グループのメンバーである別のデバイスが当該同期グループから離脱できるようにするための制御情報に反応して、前記制御モジュールが前記インターフェースモジュールをして前記別のデバイスに、該別のデバイスが当該同期グループから離脱できるようにするコマンドを送信させることを特徴とする、請求項１８３記載の方法。
【請求項１８６】
前記タスクソースをして動作を開始できるようにする制御情報に反応して、前記制御ステップが前記タスクソースに動作を開始させるための選択された動作を実行するステップを含むことを特徴とする、請求項１８５記載の方法。
【請求項１８７】
当該デバイスがタスクソースとしても動作している請求項１８６記載のデバイスであって、前記制御ステップの制御のもとでタスクを生成するもとになる情報を取得して該タスクを生成するタスク生成ステップを含むことを特徴とする方法。
【請求項１８８】
さらに前記タスクを少なくとも一つの別のデバイスに送信するステップを含むことを特徴とする、請求項１８７記載の方法。
【請求項１８９】
前記デバイスがタスクソースではなく、前記制御ステップが前記タスクソースが動作できるようにするコマンドの送信を可能にするステップを含むことを特徴とする、請求項１８７記載の方法。
【請求項１９０】
タスクが一連のタスクシーケンスに分けられており、現在実行されているタスクシーケンスの実行を打ち切らせる制御情報の受領に反応して、前記制御ステップが前記タスクソースが前記タスクシーケンスの実行の打ち切りを可能にする再同期コマンドを前記タスクシーケンスに関連付けられた一連のタスク中に挿入できるようにするコマンドを送信するステップを含むことを特徴とする、請求項１８９記載の方法。
【請求項１９１】
タスクが一連のタスクシーケンスに分けられており、少なくとも一部分は受け取られているが実行されてはいないタスクシーケンスの実行を有効にする制御情報の受領に反応して、前記制御ステップが、前記タスクソースが前記タスクシーケンスの実行を無効にする再同期コマンドを前記コマンド系列中に挿入できるようにするコマンドを送信するステップを含むことを特徴とする、請求項１８９記載の方法。
【請求項１９２】
前記制御ステップが、前記ユーザーインターフェースモジュールに状態情報を送信するステップを含むことを特徴とする、請求項１７４記載の方法。
【請求項１９３】
前記状態情報が少なくとも一つのタスクの実行状態を含むことを特徴とする、請求項１９２記載の方法。
【請求項１９４】
請求項１７３記載の方法であって、当該メンバーデバイスが：
Ａ．タスクソースデバイスから、配送されるべきタスクに関する情報のためのソース、タスクソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を受け取る移行情報受領ステップと、
Ｂ．前記移行情報の受領後に、
ｉ．当該同期グループに前記一連のタスクを配送し、各タスクはタスクソースデバイスとして動作しているデバイスから受け取るタイミング情報に基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は当該同期グループをなす諸デバイスがそれぞれのタスクを実行すべき時刻であり、
ｉｉ．自らが以後はタスクソースデバイスとして動作することを当該同期グループのメンバーに通知する、
移行制御ステップ、
とを実行することを特徴とする方法。
【請求項１９５】
配送されるべきタスクに関する前記情報がストリーミング情報のソースであり、前記移行制御ステップが、前記移行情報の受領後、該ストリーミング情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるステップを含むことを特徴とする、請求項１９４記載の方法。
【請求項１９６】
配送されるべきタスクに関する前記情報が前記移行情報において同定されるファイル中にあり、前記移行制御ステップが、前記同定されるファイルから情報を取得し、該情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるステップを含むことを特徴とする、請求項１９４記載の方法。
【請求項１９７】
配送されるべきタスクに関する前記情報が、前記同定されるファイル内に前記移行情報で同定されるオフセットにて始まり、前記移行制御ステップが、前記同定されるオフセットに対応する前記ファイル内の位置からの情報をまとめるステップを含むことを特徴とする、請求項１９６記載の方法。
【請求項１９８】
配送されるべきタスクに関する前記情報が前記移行情報において同定される一連のファイル中にあり、前記移行制御ステップが、該一連のファイルから情報を取得し、該情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けるステップを含むことを特徴とする、請求項１９６記載の方法。
【請求項１９９】
前記メンバーデバイスがさらに、該メンバーデバイスのクロックレートを前記タスクソースデバイスのクロックによって維持されているクロックレートの値との関係で調整するステップを含むクロックレート調整ステップを実行できるようにされていることを特徴とする、請求項１７３記載の方法。
【請求項２００】
前記クロックレート調整ステップが、前記クロックレートを前記タスクソースデバイスから受け取るタスクのそれぞれに関連付けられたタイムスタンプとの関係で決定するステップを含むことを特徴とする、請求項１９９記載の方法。
【請求項２０１】
それぞれの実行時刻における少なくとも一つの別のデバイスによる実行のために一連のタスクを配送するためのデバイスを動作させる方法であって：
Ａ．前記諸タスクのそれぞれを取得するタスク取得ステップと、
Ｂ．各タスクが実行されるべき時刻を決定し、前記各タスクをその実行時刻を示すタイムスタンプに関連付けるタスク実行時刻決定ステップと、
Ｃ．前記一連のタスクを前記少なくとも一つの別のデバイスに送信するタスク送信ステップと、
Ｄ．所定のイベントに反応して、前記タスク送信ステップの間に、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスがそれに送信されたタスクの実行シーケンスを修正できるようにするコマンドを挿入する実行制御コマンド生成ステップ、
とを含むことを特徴とする方法。
【請求項２０２】
前記タスク送信ステップが選択されたマルチキャスト送信手法を利用するステップを含むことを特徴とする、請求項２０１記載の方法。
【請求項２０３】
前記所定のイベントが、オペレーターによって与えられる入力目印を受け取るステップを含むことを特徴とする、請求項２０１記載の方法。
【請求項２０４】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記タスク送信ステップの間に、前記一連のタスク中に、前記少なくとも一つの別のデバイスが少なくとも一つのタスクの実行を前記所定のイベントが生起した時刻に関係して制御できるようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項２０３記載の方法。
【請求項２０５】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記タスク送信ステップの間に、前記一連のタスク中に、前記少なくとも一つの別のデバイスが現在実行中のタスクの実行を打ち切るか、および／または前記所定のイベントより後に実行されることになっている少なくとも一つのタスクを実行しないようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項２０４記載の方法。
【請求項２０６】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、
（ｉ）前記タスク送信ステップの間に、前記一連のタスク中に、前記少なくとも一つの別のデバイスが現在実行中のタスクの実行を打ち切るか、および／または現在実行中のタスクを含むタスクシーケンス中に後続のタスクがあれば少なくともその一つを実行しないようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記タスク実行時刻決定ステップの間に、現在実行されているタスクシーケンスの後続のタスクシーケンスのタスクに関連付けられたタイムスタンプが現在実行されているタスクのタスクシーケンスからのタスクの前記の打ち切りおよび／または不実行を反映するようになり、
（ｂ）前記タスク送信ステップの間に、前記少なくとも一つの別のデバイスに前記後続のタスクシーケンスのタスクを送信すること、
を可能にする、
ステップを含むことを特徴とする、請求項２０３記載の方法。
【請求項２０７】
前記タスク送信ステップが、前記少なくとも一つの別のデバイスに、前記打ち切られたおよび／または不実行とされたタスクの後続のタスクシーケンスのタスクをいっさい実行しないようにさせるコマンドを挿入するステップを含むことを特徴とする、請求項２０６記載の方法。
【請求項２０８】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記タスク送信ステップの間に、前記一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して該タスクの実行を制御できるようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項２０１記載の方法。
【請求項２０９】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記タスク送信ステップの間に、前記一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して該タスクの実行を取り消せるようにするコマンドを挿入するステップを含むことを特徴とする、請求項２０８記載の方法。
【請求項２１０】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記タスク送信ステップの間に、前記一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して以前に送信されたタスクの実行を取り消せるようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項２０８記載の方法。
【請求項２１１】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記タスク送信ステップの間に、前記一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して以前に送信されたがまだ実行は開始されていないタスクの実行を取り消せるようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項２１０記載の方法。
【請求項２１２】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、
（ｉ）前記タスク送信ステップの間に、前記一連のタスク中に、前記少なくとも一つの別のデバイスがまだ実行が開始されていないタスクシーケンスの実行を取り消せるようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記タスク実行時刻決定ステップの間に、実行が取り消されたタスクシーケンスの後続のタスクシーケンスのタスクに関連付けられたタイムスタンプが前記の取り消しを反映するようになり、
（ｂ）前記タスク送信ステップの間に、前記少なくとも一つの別のデバイスに前記後続のタスクシーケンスのタスクを送信する、
ことを可能にする、
ステップを含むことを特徴とする、請求項２０８記載の方法。
【請求項２１３】
それぞれの実行時刻における少なくとも一つの別のデバイスによる実行のために一連のタスクを配送するためのデバイスを動作させる方法であって：
Ａ．前記諸タスクのそれぞれを取得するタスク取得ステップと、
Ｂ．各タスクが実行されるべき時刻を決定し、前記各タスクをその実行時刻を示すタイムスタンプに関連付け、かつ少なくとも一つのタスクに関連付けられた形で、当該タスクソースデバイスによって維持されるクロックによって現在示される時刻よりも遅いタスク実行時刻を示すタイムスタンプを与えるステップを含むタスク実行時刻決定ステップと、
Ｃ．前記一連のタスクを前記少なくとも一つの別のデバイスに送信するタスク送信ステップ、
とを有することを特徴とする方法。
【請求項２１４】
前記タスク実行時刻決定ステップが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該デバイスによって配送された前記少なくとも一つのタスクが前記タイムスタンプによって示される時刻に少なくとも一つの別のデバイスによって実行されうるようにするのに十分となるよう選択するステップを含むことを特徴とする、請求項２１３記載の方法。
【請求項２１５】
前記タスク実行時刻決定ステップが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該デバイスによって配送された前記少なくとも一つのタスクが前記タイムスタンプによって示される時刻における他の諸デバイスによる実行のためにネットワークを通じて前記他の諸デバイスに配送されうるようにするのに十分となるよう選択するステップを含むことを特徴とする、請求項２１４記載の方法。
【請求項２１６】
タスク取得ステップが前記タスクに関連付けられた情報を少なくとも二種類の情報ソースから取得するステップを含み、前記タスク実行時刻決定ステップが各タスクについて前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を選択するのを、それぞれのタスクに関連付けられた情報ソースの種類に基づいて行うステップを含むことを特徴とする、請求項２１３記載の方法。
【請求項２１７】
少なくとも一つの別のデバイスによる実行のために一連のタスクを配送するためのデバイスを動作させるための方法であって：
Ａ．前記諸タスクのそれぞれを取得するよう構成されているタスク取得モジュールと、
Ｂ．各タスクが実行されるべき時刻を決定し、前記各タスクをその実行時刻を示すタイムスタンプに関連付けるよう構成されているタスク実行時刻決定モジュールと、
Ｃ．前記一連のタスクを前記少なくとも一つの別のデバイスに送信するよう構成されているタスク送信モジュールと、
Ｄ．所定のイベントに反応して、配送されるべきタスクに関する情報のためのソース、タスクソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を別のデバイスに提供するよう構成されているタスクソースデバイス移行制御モジュール、
とを有することを特徴とする方法。
【請求項２１８】
コンピュータとともに使用し、デバイスをして、タスクソースによって与えられる一連のタスクを該タスクソースによって維持されるクロックに基づいて該タスクソースによって指定される時刻に実行できるようにするためのコンピュータプログラムプロダクトであって：
Ａ．各タスクは前記タスクソースによって維持されるクロックによって示される時刻に基づく時刻値を示すタイムスタンプに関連付けられており、前記時刻は当該デバイスがそれぞれのタスクを実行すべき時刻であるとして、前記コンピュータをして前記一連のタスクを受け取れるようにするよう構成されたインターフェースモジュールと、
Ｂ．前記コンピュータをして、前記タスクソースから該タスクソースのクロックによって示される現在時刻の値を取得できるようにするよう構成されている現在時刻取得モジュールと、
Ｃ．前記コンピュータをして、各タスクに関連付けられたタイムスタンプならびに、前記現在時刻取得モジュールによって取得された現在時刻の値と当該デバイスによって維持されているクロックによって示される現在時刻の値との間のずれを表す時間差の値から、そのタスクが実行されるべき、当該デバイス各自のクロックに基づく時刻を決定できるようにするよう構成されている実行時刻決定モジュールと、
Ｄ．前記コンピュータをして、前記実行時刻決定モジュールによって決定される時刻に各タスクを実行できるようにするよう構成されているタスク実行モジュール、
とがエンコードされたコンピュータ可読媒体を有することを特徴とするコンピュータプログラムプロダクト。
【請求項２１９】
前記コンピュータをして、インターフェースモジュールによって受領されたコマンドの実行を制御できるようにするための制御モジュールをさらに含むことを特徴とする、請求項２１８記載のコンピュータプログラムプロダクト。
【請求項２２０】
前記コンピュータをして、前記インターフェースモジュールが受け取ったタスクを実行されるべき時までバッファリングしておけるようにするよう構成されているバッファをさらに有し、前記タスク実行モジュールが前記コンピュータをしてそのバッファリングされたタスクを前記実行時刻決定モジュールによって決定される時刻に実行できるようにするよう構成されていることを特徴とする、請求項２１９記載のコンピュータプログラムプロダクト。
【請求項２２１】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記インターフェースモジュールがさらに前記コンピュータをして、タスク実行を制御するためのタスク実行制御コマンドを受け取れるようにするよう構成されており、前記制御モジュールが前記コンピュータをして、タスク実行を制御するための少なくとも一つのタスク実行制御コマンドの受領に反応して、前記タスク実行モジュールをして現在実行されているタスクシーケンスの実行を打ち切れるようにするよう構成されており、前記コンピュータをして、バッファリングされている当該タスクシーケンス中のその後のタスクを実行しないようにするよう構成されていることを特徴とする、請求項２２０記載のコンピュータプログラムプロダクト。
【請求項２２２】
前記制御モジュールが、前記コンピュータをして、前記タスク実行モジュールをして、後続のタスクシーケンスに対応する少なくとも一つのタスクの実行を前記実行時刻決定モジュールによって決定された時刻に再開できるようにすることができるようにするよう構成されていることを特徴とする、請求項２２０記載のコンピュータプログラムプロダクト。
【請求項２２３】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記インターフェースモジュールがさらに前記コンピュータをしてタスク実行を制御するためのタスク実行制御コマンドを受け取れるようにするよう構成されており、前記制御モジュールが前記コンピュータをして、少なくとも一つのタスクがバッファリングされているがまだ実行は始まっていないタスクシーケンスの実行を取り消すための少なくとも一つのタスク実行制御コマンドの受領に反応して、前記タスク実行モジュールをして前記バッファリングされているタスクシーケンスのタスクを実行しないようにさせられるようにするよう構成されていることを特徴とする、請求項２１９記載のコンピュータプログラムプロダクト。
【請求項２２４】
前記制御モジュールが、前記コンピュータをして、前記タスク実行モジュールをして、少なくとも一つのタスクがバッファリングされているがまだ実行は始まっていない前記タスクシーケンスの後続のタスクシーケンスに対応する少なくとも一つのタスクの実行を再開できるようにさせられるようにするよう構成されていることを特徴とする、請求項２２３載のコンピュータプログラムプロダクト。
【請求項２２５】
前記制御モジュールが、前記コンピュータをして、ある同期グループのメンバーになるというコマンドの受領に反応して、前記インターフェースモジュールをして前記タスク実行モジュールによる実行のためのタスクを受け取れるようにさせられるようにするよう構成されていることを特徴とする、請求項２１９記載のコンピュータプログラムプロダクト。
【請求項２２６】
前記制御モジュールが、前記コンピュータをして、ある同期グループのメンバーになるというコマンドの受領に反応して、前記インターフェースモジュールをして、選択されたマルチキャスト送信手法を使って現在送信されているタスクを受け取り、さらに、選択されたユニキャスト送信手法を使って少なくとも一つの以前に配送済みのタスクを取得できるようにさせられるようにするよう構成されていることを特徴とする、請求項２２５記載のコンピュータプログラムプロダクト。
【請求項２２７】
前記制御モジュールが、前記コンピュータをして、ある同期グループから離脱するというコマンドの受領に反応して、前記インターフェースモジュールをしてタスクの受け取りをできなくし、前記タスク実行モジュールをして以前に受け取ったタスクでまだ実行されていないタスクの実行をできなくさせられるようにするよう構成されていることを特徴とする、請求項２１９記載のコンピュータプログラムプロダクト。
【請求項２２８】
さらにユーザーインターフェースモジュールから制御情報を受け取るよう構成されているユーザーインターフェースモジュールインターフェースモジュールを有しており、前記制御モジュールが前記コンピュータをして前記制御情報に反応して選択された動作が実行されうるようにさせられるようにするよう構成されていることを特徴とする、請求項２１９記載のコンピュータプログラムプロダクト。
【請求項２２９】
別のデバイスが当該デバイスの同期グループのメンバーになれるようにするための制御情報に反応して、前記制御モジュールが前記インターフェースモジュールをして前記別のデバイスに、該別のデバイスが当該同期グループのメンバーになれるようにするコマンドを送信させることを特徴とする、請求項２２８記載のコンピュータプログラムプロダクト。
【請求項２３０】
当該デバイスの同期グループのメンバーである別のデバイスが当該同期グループから離脱できるようにするための制御情報に反応して、前記制御モジュールが前記インターフェースモジュールをして前記別のデバイスに、該別のデバイスが当該同期グループから離脱できるようにするコマンドを送信させることを特徴とする、請求項２２８記載のコンピュータプログラムプロダクト。
【請求項２３１】
前記タスクソースをして動作を開始できるようにする制御情報に反応して、前記制御モジュールが前記タスクソースに動作を開始させるための選択された動作を実行することを特徴とする、請求項２２８記載のコンピュータプログラムプロダクト。
【請求項２３２】
当該デバイスがタスクソースとしても動作しており、当該デバイスが前記コンピュータをして、前記制御モジュールの制御のもとでタスクを生成するもとになる情報を取得して該タスクを生成することができるようにするよう構成されたタスク生成モジュールを含むことを特徴とする、請求項２３１記載のコンピュータプログラムプロダクト。
【請求項２３３】
前記インターフェースモジュールがさらに、前記コンピュータをして、前記タスクを少なくとも一つの別のデバイスに送信できるようにするよう構成されていることを特徴とする、請求項２３２記載のコンピュータプログラムプロダクト。
【請求項２３４】
前記デバイスがタスクソースではなく、前記制御モジュールが前記コンピュータをして、前記インターフェースモジュールをして前記タスクソースが動作できるようにするコマンドを送信できるようにさせられるようにするよう構成されていることを特徴とする、請求項２３２記載のコンピュータプログラムプロダクト。
【請求項２３５】
タスクが一連のタスクシーケンスに分けられており、現在実行されているタスクシーケンスの実行を打ち切らせる制御情報の受領に反応して、前記制御モジュールが前記コンピュータをして、前記インターフェースモジュールをして、前記タスクソースが前記タスクシーケンスの実行の打ち切りを可能にする再同期コマンドを前記タスクシーケンスに関連付けられた一連のタスク中に挿入できるようにするコマンドを送信させられるようにするよう構成されていることを特徴とする、請求項２３４記載のコンピュータプログラムプロダクト。
【請求項２３６】
タスクが一連のタスクシーケンスに分けられており、少なくとも一部分は受け取られているが実行されてはいないタスクシーケンスの実行を有効にする制御情報の受領に反応して、前記制御モジュールが前記コンピュータをして、前記インターフェースモジュールをして、前記タスクソースが前記タスクシーケンスの実行を無効にする再同期コマンドを前記コマンド系列中に挿入できるようにするコマンドを送信させられるようにするよう構成されていることを特徴とする、請求項２３４記載のコンピュータプログラムプロダクト。
【請求項２３７】
前記制御モジュールが、前記コンピュータをして、前記ユーザーインターフェースモジュールインターフェースモジュールが前記ユーザーインターフェースモジュールに状態情報を送信できるようにさせられるようにするよう構成されていることを特徴とする、請求項２２８記載のコンピュータプログラムプロダクト。
【請求項２３８】
前記状態情報が少なくとも一つのタスクの実行状態を含むことを特徴とする、請求項２３７記載のコンピュータプログラムプロダクト。
【請求項２３９】
請求項２１８記載のコンピュータプログラムプロダクトであって、さらに：
Ａ．前記コンピュータをして、タスクソースデバイスから、配送されるべきタスクに関する情報のためのソース、タスクソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を受け取れるようにするよう構成されている移行情報受領モジュールと、
Ｂ．前記コンピュータをして、前記移行情報の受領後に、
ｉ．当該同期グループに前記一連のタスクを配送し、各タスクはタスクソースデバイスとして動作しているデバイスから受け取るタイミング情報に基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は当該同期グループをなす諸デバイスがそれぞれのタスクを実行すべき時刻であり、
ｉｉ．自らが以後はタスクソースデバイスとして動作することを当該同期グループのメンバーに通知する、
ことができるようにするよう構成されている移行制御モジュール、
とを含むことを特徴とするコンピュータプログラムプロダクト。
【請求項２４０】
配送されるべきタスクに関する前記情報がストリーミング情報のソースであり、前記移行制御モジュールが、前記コンピュータをして、前記移行情報の受領後、該ストリーミング情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けることができるようにするよう構成されていることを特徴とする、請求項２３９記載のコンピュータプログラムプロダクト。
【請求項２４１】
配送されるべきタスクに関する前記情報が前記移行情報において同定されるファイル中にあり、前記移行制御モジュールが、前記コンピュータをして、前記同定されるファイルから情報を取得し、該情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けることができるようにするよう構成されていることを特徴とする、請求項２３９記載のコンピュータプログラムプロダクト。
【請求項２４２】
配送されるべきタスクに関する前記情報が、前記同定されるファイル内に前記移行情報で同定されるオフセットにて始まり、前記移行制御モジュールが、前記コンピュータをして、前記同定されるオフセットに対応する前記ファイル内の位置からの情報をまとめることができるようにするよう構成されていることを特徴とする、請求項２４１記載のコンピュータプログラムプロダクト。
【請求項２４３】
配送されるべきタスクに関する前記情報が前記移行情報において同定される一連のファイル中にあり、前記移行制御モジュールが、前記コンピュータをして、該一連のファイルから情報を取得し、該情報をタスクにまとめ、各タスクを前記タイムスタンプに関連付けることができるようにするよう構成されていることを特徴とする、請求項２４１記載のコンピュータプログラムプロダクト。
【請求項２４４】
前記コンピュータをして、前記メンバーデバイスのクロックレートを前記タスクソースデバイスのクロックによって維持されているクロックレートの値との関係で調整することができるようにするよう構成されているクロックレート調整モジュールを含むことを特徴とする、請求項２１８記載のコンピュータプログラムプロダクト。
【請求項２４５】
前記クロックレート調整モジュールが、前記コンピュータをして、前記クロックレートを前記タスクソースデバイスから受け取るタスクのそれぞれに関連付けられたタイムスタンプとの関係で調整することができるようにするよう構成されていることを特徴とする、請求項２４４記載のコンピュータプログラムプロダクト。
【請求項２４６】
コンピュータとともに使用し、それぞれの実行時刻における少なくとも一つの別のデバイスによる実行のために一連のタスクを配送するためのタスクソースデバイスを提供するためのコンピュータプログラムプロダクトであって：
Ａ．前記コンピュータをして、前記諸タスクのそれぞれを取得できるようにするよう構成されているタスク取得モジュールと、
Ｂ．前記コンピュータをして、各タスクが実行されるべき時刻を決定し、前記各タスクをその実行時刻を示すタイムスタンプに関連付けることができるようにするよう構成されているタスク実行時刻決定モジュールと、
Ｃ．前記コンピュータをして、前記一連のタスクを前記少なくとも一つの別のデバイスに送信することができるようにするよう構成されているタスク送信モジュールと、
Ｄ．前記コンピュータをして、所定のイベントに反応して、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスがそれに送信されたタスクの実行シーケンスを修正できるようにするコマンドを挿入できるようにすることができるようにするよう構成されている実行制御コマンド生成モジュール、
とがエンコードされたコンピュータ可読媒体を有することを特徴とするコンピュータプログラムプロダクト。
【請求項２４７】
前記タスク送信モジュールが前記コンピュータをして、選択されたマルチキャスト送信手法を利用できるようにするよう構成されていることを特徴とする、請求項２４６記載のコンピュータプログラムプロダクト。
【請求項２４８】
前記所定のイベントが、オペレーターによって与えられる入力目印を有することを特徴とする、請求項２４６記載のコンピュータプログラムプロダクト。
【請求項２４９】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが少なくとも一つのタスクの実行を前記所定のイベントが生起した時刻に関係して制御できるようにするコマンドを挿入できるようにすることができるようにするよう構成されていることを特徴とする、請求項２４６記載のコンピュータプログラムプロダクト。
【請求項２５０】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが現在実行中のタスクの実行を打ち切るか、および／または前記所定のイベントより後に実行されることになっている少なくとも一つのタスクを実行しないようにするコマンドを挿入できるようにすることができるようにするよう構成されていることを特徴とする、請求項２４９記載のコンピュータプログラムプロダクト。
【請求項２５１】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記所定のイベントに反応して、
（ｉ）前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが現在実行中のタスクの実行を打ち切るか、および／または現在実行中のタスクを含むタスクシーケンス中に後続のタスクがあれば少なくともその一つを実行しないようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記タスク実行時刻決定モジュールをして、現在実行されているタスクシーケンスの後続のタスクシーケンスのタスクに関連付けられたタイムスタンプが現在実行されているタスクのタスクシーケンスからのタスクの前記の打ち切りおよび／または不実行を反映するようにさせ、
（ｂ）前記タスク送信モジュールをして、前記少なくとも一つの別のデバイスに前記後続のタスクシーケンスのタスクを送信させる、
ことができるようにするよう構成されていることを特徴とする、請求項２４９記載のコンピュータプログラムプロダクト。
【請求項２５２】
前記タスク送信モジュールが、前記コンピュータをして、前記少なくとも一つの別のデバイスに、前記打ち切られたおよび／または不実行とされたタスクの後続のタスクシーケンスのタスクをいっさい実行しないようにさせるコマンドを挿入することができるようにするよう構成されていることを特徴とする、請求項２５１記載のコンピュータプログラムプロダクト。
【請求項２５３】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して該タスクの実行を制御できるようにするコマンドを挿入できるようにすることができるようにするよう構成されていることを特徴とする、請求項２４６記載のコンピュータプログラムプロダクト。
【請求項２５４】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して該タスクの実行を取り消せるようにするコマンドを挿入できるようにすることができるようにするよう構成されていることを特徴とする、請求項２５３記載のコンピュータプログラムプロダクト。
【請求項２５５】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して以前に送信されたタスクの実行を取り消せるようにするコマンドを挿入できるようにすることができるようにするよう構成されていることを特徴とする、請求項２５４記載のコンピュータプログラムプロダクト。
【請求項２５６】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスが前記一連のタスク中でのタスクの位置に関係して以前に送信されたがまだ実行は開始されていないタスクの実行を取り消せるようにするコマンドを挿入できるようにすることができるようにするよう構成されていることを特徴とする、請求項２５５記載のコンピュータプログラムプロダクト。
【請求項２５７】
前記の一連のタスクが一連のタスクシーケンスを含んでおり、各タスクシーケンスが前記一連のタスクのサブセットを含んでおり、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記所定のイベントに反応して、
（ｉ）前記タスク送信モジュールをして、該タスク送信モジュールによって送信される一連のタスク中に、前記少なくとも一つの別のデバイスがまだ実行が開始されていないタスクシーケンスの実行を取り消せるようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記タスク実行時刻決定モジュールをして、実行が取り消されたタスクシーケンスの後続のタスクシーケンスのタスクに関連付けられたタイムスタンプが前記の取り消しを反映するようにさせ、
（ｂ）前記タスク送信モジュールをして、前記少なくとも一つの別のデバイスに前記後続のタスクシーケンスのタスクを送信させる、
ことができるようにするよう構成されていることを特徴とする、請求項２５３記載のコンピュータプログラムプロダクト。
【請求項２５８】
コンピュータとともに使用し、それぞれの実行時刻における少なくとも一つの別のデバイスによる実行のために一連のタスクを配送するためのタスクソースデバイスを提供するためのコンピュータプログラムプロダクトであって：
Ａ．前記コンピュータをして、前記諸タスクのそれぞれを取得することができるようにするよう構成されているタスク取得モジュールと、
Ｂ．前記コンピュータをして、各タスクが実行されるべき時刻を決定し、前記各タスクをその実行時刻を示すタイムスタンプに関連付けるよう構成されており、かつ少なくとも一つのタスクに関連付けられた形で、当該タスクソースデバイスによって維持されるクロックによって現在示される時刻よりも遅いタスク実行時刻を示すタイムスタンプを与えることができるようにするよう構成されているタスク実行時刻決定モジュールと、
Ｃ．前記コンピュータをして、前記一連のタスクを前記少なくとも一つの別のデバイスに送信することができるようにするよう構成されているタスク送信モジュール、
とがエンコードされたコンピュータ可読媒体を有することを特徴とするコンピュータプログラムプロダクト。
【請求項２５９】
前記タスク実行時刻決定モジュールが、前記コンピュータをして、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該タスクソースデバイスによって配送された前記少なくとも一つのタスクが前記タイムスタンプによって示される時刻にメンバーデバイスによって実行されうるようにするのに十分となるよう選択することができるようにするよう構成されていることを特徴とする、請求項２５８記載のコンピュータプログラムプロダクト。
【請求項２６０】
前記タスク実行時刻決定モジュールが、前記コンピュータをして、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該タスクソースデバイスによって配送された前記少なくとも一つのタスクが前記タイムスタンプによって示される時刻における実行のためにメンバーデバイスに配送されうるようにするのに十分となるよう選択することができるようにするよう構成されていることを特徴とする、請求項２５９記載のコンピュータプログラムプロダクト。
【請求項２６１】
タスク取得モジュールが前記コンピュータをして、前記タスクに関連付けられた情報を少なくとも二種類の情報ソースから取得できるようにするよう構成されており、前記タスク実行時刻決定モジュールが前記コンピュータをして、各タスクについて前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を選択するのを、それぞれのタスクに関連付けられた情報ソースの種類に基づいて行うことができるようにするよう構成されていることを特徴とする、請求項２５８記載のコンピュータプログラムプロダクト。
【請求項２６２】
コンピュータとともに使用し、少なくとも一つの別のデバイスによる実行のために一連のタスクを配送するためのタスクソースデバイスを提供するためのコンピュータプログラムプロダクトであって：
Ａ．前記コンピュータをして、前記諸タスクのそれぞれを取得できるようにするよう構成されているタスク取得モジュールと、
Ｂ．前記コンピュータをして、各タスクが実行されるべき時刻を決定し、前記各タスクをその実行時刻を示すタイムスタンプに関連付けることができるようにするよう構成されているタスク実行時刻決定モジュールと、
Ｃ．前記コンピュータをして、前記一連のタスクを前記少なくとも一つの別のデバイスに送信することができるようにするよう構成されているタスク送信モジュールと、
Ｄ．前記コンピュータをして、所定のイベントに反応して、配送されるべきタスクに関する情報のためのソース、タスクソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を別のデバイスに提供することができるようにするよう構成されているタスクソースデバイス移行制御モジュール、
とがエンコードされたコンピュータ可読媒体を有することを特徴とするコンピュータプログラムプロダクト。
【請求項２６３】
複数のデバイスを有するシステムであって、該複数のデバイスが：
Ａ．他のデバイスに一連のタスクを送信できるようにされており、各タスクが実行時刻情報と関連付けられているようなタスクソースデバイスとして動作できるようにされている一つのデバイスと、
Ｂ．ネットワークから一連のタスクを受け取ることができるようにされており、各タスクを該タスクに関連付けられたタイミング情報と関係する時刻に実行するタスク実行デバイスとして動作できるようにされている少なくとも一つのデバイスと、
Ｃ．前記タスクソースデバイスおよび前記タスク実行デバイスの動作を制御できるようにされている制御デバイスとして動作できるようにされている一つのデバイス、
とを含むことを特徴とするシステム。
【請求項２６４】
制御デバイスとして動作できるようにされた前記デバイスが、タスク実行デバイスとしても動作できるようにされていることを特徴とする、請求項２６３記載のシステム。
【請求項２６５】
制御デバイスとして動作できるようにされた前記デバイスが、タスクソースデバイスとしても動作できるようにされていることを特徴とする、請求項２６３記載のシステム。
【請求項２６６】
タスクソースデバイスとして動作できるようにされた前記デバイスが、タスク実行デバイスとしても動作できるようにされていることを特徴とする、請求項２６３記載のシステム。
【請求項２６７】
同期グループのメンバーとして該同期グループにデータを提供するデータソースデバイスによって維持されているクロックと同期的に動作しているデバイスによる前記データの処理を容易にするためのシステムであって、
Ａ．前記データソースデバイスは、前記データを当該同期グループへの配送のために一連のフレームに分けるよう構成されており、各フレームは、当該同期グループをなす諸デバイスがそのフレームを処理するべきである、前記データソースデバイスによって維持されているクロックに基づく時刻を示すタイムスタンプに関連付けられており、
Ｂ．当該同期グループ内の各メンバーデバイスは：
（ｉ）前記データソースデバイスから、該データソースデバイスのクロックによって示される現在時刻の値の指示を周期的に取得し、
（ｉｉ）前記データソースデバイスから前記一連のフレームを受け取り、
（ｉｉｉ）各フレームに関連付けられた前記タイムスタンプおよび、前記データソースデバイスのクロックによって示される現在時刻の値と当該メンバーデバイス各自のクロックによって示される現在時刻の値との間のずれを表す時間差の値から、当該メンバーデバイスがそのフレームを処理するべきである、当該メンバーデバイス自身のクロックに基づく時刻を決定し、
（ｉｖ）前記決定された時刻に当該フレームを処理する、
よう構成されている、
ことを特徴とするシステム。
【請求項２６８】
少なくとも一つのフレームがオーディオデータを有し、各メンバーデバイスが各フレームを処理するときに当該フレームによって表される音を発することを特徴とする、請求項２６７記載のシステム。
【請求項２６９】
複数のメンバーデバイスを有しており、該メンバーデバイスが前記データソースデバイスによって維持されているクロックとの関係で同期的に各フレームを処理し、そのため全メンバーデバイスが当該フレームによって表される音を同期的に発することを特徴とする、請求項２６７記載のシステム。
【請求項２７０】
前記データソースデバイスが少なくとも二つの相続くフレームにかけて、メンバーデバイスが該フレームをある選択された時間間隔をもって再生するようなタイムスタンプを提供するよう構成されていることを特徴とする、請求項２６９記載のシステム。
【請求項２７１】
前記時間間隔が０であることを特徴とする、請求項２７０記載のシステム。
【請求項２７２】
前記メンバーデバイスの一つが当該同期グループのためのマスターデバイスとして動作し、他のすべてのメンバーデバイスはそれぞれスレーブデバイスをなし、前記マスターデバイスは当該同期グループをなすメンバーデバイスに関連した少なくとも一つの種類の同期グループ管理動作を実行するよう構成されていることを特徴とする、請求項２６９記載のシステム。
【請求項２７３】
前記マスターデバイスがさらに当該同期グループの状態に関係する状態情報をユーザーインターフェースモジュールに提供するよう構成されていることを特徴とする、請求項２７２記載のシステム。
【請求項２７４】
前記状態情報が当該同期グループをなすデバイスの識別情報を含むことを特徴とする、請求項２７３記載のシステム。
【請求項２７５】
各フレームがフレームシーケンスに関連付けられており、各フレームシーケンスは少なくとも一つのフレームを有しており、各フレームシーケンスをなす単数または複数のフレームはあるオーディオトラックに関連付けられており、各オーディオトラックは識別子と関連付けられており、前記状態情報が現在再生されているオーディオトラックの識別情報を含むことを特徴とする、請求項２７３記載のシステム。
【請求項２７６】
少なくとも一つの追加的なデバイスを有しており、ある種類の同期グループ管理動作においてマスターデバイスは前記少なくとも一つの追加的デバイスが当該同期グループにスレーブデバイスとして加われるようにするよう構成されていることを特徴とする、請求項２７２記載のシステム。
【請求項２７７】
前記データソースデバイスが選択されたマルチキャスト送信手法を使って前記メンバーデバイスにフレームを配送するよう構成されており、前記メンバーデバイスがフレームが再生されるべき時まで該フレームをバッファリングしておくよう構成されており、さらに前記少なくとも一つの追加的デバイスが当該同期グループにスレーブデバイスとして加わったときに前記データソースデバイスが選択されたユニキャスト送信手法を使って前記スレーブデバイスに少なくとも一つの以前に配送済みのフレームを送信してやれるようになっていることを特徴とする、請求項２７６記載のシステム。
【請求項２７８】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、前記データソースデバイスが当該同期グループにスレーブデバイスとして加われるようにするよう構成されており、前記データソースデバイスが当該同期グループのためにデータソースデバイスとして動作し続けることを特徴とする、請求項２７２記載のシステム。
【請求項２７９】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、あるスレーブデバイスが当該同期グループから離脱できるようにするよう構成されており、前記離脱したスレーブデバイスはその後当該グループのメンバーデバイスではなくなり、前記データソースデバイスによって配送されるフレームを再生しなくなることを特徴とする、請求項２７２記載のシステム。
【請求項２８０】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、前記データソースデバイスによって配送される一連のフレームを制御するよう構成されていることを特徴とする、請求項２７２記載のシステム。
【請求項２８１】
各フレームがフレームシーケンスに関連付けられており、各フレームシーケンスは少なくとも一つのフレームを有しており、各フレームシーケンスをなす単数または複数のフレームはあるオーディオトラックに関連付けられており、前記マスターデバイスは前記データソースデバイスによって配送されるべきフレームをトラックごとに制御するよう構成されていることを特徴とする、請求項２８０記載のシステム。
【請求項２８２】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスが、前記データソースデバイスによって配送されたそれぞれのオーディオトラックに関連付けられたフレームの、メンバーデバイスによる再生を、ユーザーインターフェースモジュールからの制御情報に反応して制御するようさらに構成されていることを特徴とする、請求項２８１記載のシステム。
【請求項２８３】
ユーザーインターフェースモジュールからの制御情報に反応して、メンバーデバイスによる再生の制御を容易にするため、前記マスターデバイスがデータソースデバイスをしてメンバーデバイスに再生制御コマンドを配送させるよう構成されていることを特徴とする、請求項２８２記載のシステム。
【請求項２８４】
再生制御コマンドがメンバーデバイスをして現在再生されているトラックの再生を打ち切れるようにすることを特徴とする、請求項２８３記載のシステム。
【請求項２８５】
前記再生制御コマンドがメンバーデバイスをして現在再生されているフレームの後続のフレームをもってトラックの再生を打ち切れるようにすることを特徴とする、請求項２８４記載のシステム。
【請求項２８６】
前記再生制御コマンドがメンバーデバイスをして、少なくとも一つのフレームが以前に配送されたがまだ再生は始まっていないようなトラックの再生を取り消せるようにすることを特徴とする、請求項２８３記載のシステム。
【請求項２８７】
少なくとも一つの種類の同期グループ管理動作において、マスターデバイスとして動作しているメンバーデバイスが、マスターデバイスが当該同期グループ内で自分自身から別のメンバーデバイスに移行できるようにするよう構成されていることを特徴とする、請求項２７２記載のシステム。
【請求項２８８】
少なくとも一つの種類の同期グループ管理動作において、前記マスターデバイスが、データソースデバイスが当該システム内であるデバイスから別のデバイスに移行できるようにするよう構成されていることを特徴とする、請求項２７２記載のシステム。
【請求項２８９】
請求項２８８記載のシステムであって、
Ａ．データソースデバイスとして動作しているデバイスが、データソースデバイスを前記別のデバイスに移行させられるようにされたのち、移行情報を前記別のデバイスに提供するよう構成されており、前記移行情報が配送されるべきフレームに関する情報のためのソース、データソースデバイスによって維持されているクロックに基づくタイミング情報およびメンバーデバイスの識別情報を含み、
Ｂ．前記別のデバイスは、前記移行情報の受領後は、
ｉ．当該同期グループに前記一連のフレームを配送し、各フレームはデータソースデバイスとして動作している前記デバイスから受け取るタイミング情報に基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は当該同期グループをなす諸デバイスがそれぞれのフレームを実行すべき時刻であり、
ｉｉ．自らが以後はデータソースデバイスとして動作することを当該同期グループのメンバーに通知する、
よう構成されていることを特徴とするシステム。
【請求項２９０】
配送されるべきフレームに関する前記情報がストリーミング情報のソースであり、前記別のデバイスが、前記移行情報の受領後、該ストリーミング情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項２８９記載のシステム。
【請求項２９１】
配送されるべきフレームに関する前記情報が前記移行情報において同定されるファイル中にあり、前記別のデバイスが、前記同定されるファイルから情報を取得し、該情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項２８９記載のシステム。
【請求項２９２】
配送されるべきフレームに関する前記情報が、前記同定されるファイル内に前記移行情報で同定されるオフセットにて始まり、前記別のデバイスが、前記同定されるオフセットに対応する前記ファイル内の位置からの情報をまとめるよう構成されていることを特徴とする、請求項２９１記載のシステム。
【請求項２９３】
配送されるべきフレームに関する前記情報が前記移行情報において同定される一連のファイル中にあり、前記別のデバイスが、該一連のファイルから情報を取得し、該情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項２９１記載のシステム。
【請求項２９４】
前記データソースデバイスがさらに、前記フレームを選択されたマルチキャストメッセージ送信手法を使って配送するよう構成されていることを特徴とする、請求項２６７記載のシステム。
【請求項２９５】
前記データソースデバイスが、少なくとも一つのフレームに関連付けられた形で、当該データソースデバイスによって維持されるクロックによって現在示される時刻よりも遅いフレーム実行時刻を示すタイムスタンプを与えるよう構成されていることを特徴とする、請求項２６７記載のシステム。
【請求項２９６】
前記データソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該データソースデバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻にメンバーデバイスによって実行されうるようにするのに十分となるよう選択するよう構成されていることを特徴とする、請求項２９５記載のシステム。
【請求項２９７】
前記データソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該データソースデバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻における実行のためにメンバーデバイスに配送されうるようにするのに十分となるよう選択するよう構成されていることを特徴とする、請求項２９６記載のシステム。
【請求項２９８】
データソースデバイスが前記フレームに関連付けられた情報を少なくとも二種類の情報ソースから取得するよう構成されており、当該データソースデバイスがさらに各フレームについて前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を選択するのを、それぞれのフレームに関連付けられた情報ソースの種類に基づいて行うよう構成されていることを特徴とする、請求項２９５記載のシステム。
【請求項２９９】
少なくとも一つのメンバーデバイスがさらに、そのクロックレートを前記データソースデバイスのクロックによって維持されているクロックレートの値との関係で調整するよう構成されていることを特徴とする、請求項２６７記載のシステム。
【請求項３００】
前記少なくとも一つのメンバーデバイスが、そのクロックレートを前記データソースデバイスから受け取るフレームのそれぞれに関連付けられたタイムスタンプとの関係で調整するよう構成されていることを特徴とする、請求項２９９記載のシステム。
【請求項３０１】
少なくとも一つの別のデバイスが、第二の同期グループにフレームを配送するよう構成されたデータソースデバイスとして動作し、第一の同期グループのためのデータソースデバイスとして動作するデバイスが第二の同期グループのメンバーデバイスとしても動作することを特徴とする、請求項２６７記載のシステム。
【請求項３０２】
少なくとも一つのメンバーデバイスが：
Ａ．各フレームは前記データソースによって維持されるクロックによって示される時刻に基づく時刻値を示すタイムスタンプに関連付けられており、前記時刻は当該デバイスがそれぞれのフレームを実行すべき時刻であるとして、一連のフレームを受け取るよう構成されているインターフェースモジュールと、
Ｂ．データソースから該データソースのクロックによって示される現在時刻の値を取得するよう構成されている現在時刻取得モジュールと、
Ｃ．各フレームに関連付けられたタイムスタンプならびに、前記現在時刻取得モジュールによって取得された現在時刻の値と当該メンバーデバイスによって維持されているクロックによって示される現在時刻の値との間のずれを表す時間差の値から、そのフレームが処理されるべき、当該メンバーデバイス各自のクロックに基づく時刻を決定するよう構成されている処理時刻決定モジュールと、
Ｄ．前記処理時刻決定モジュールによって決定される時刻に各フレームを処理するよう構成されているフレーム処理モジュール、
とを有することを特徴とする、請求項２６７記載のシステム。
【請求項３０３】
前記少なくとも一つのフレームがオーディオデータを含んでおり、各メンバーデバイスが各フレームを処理するときに各フレームによって表される音を表す信号を生成することを特徴とする、請求項３０２記載のシステム。
【請求項３０４】
インターフェースモジュールによって受領されたコマンドの実行を制御するための制御モジュールをさらに含むことを特徴とする、請求項３０２記載のシステム。
【請求項３０５】
前記インターフェースモジュールが受け取ったフレームを処理されるべき時までバッファリングしておくよう構成されたバッファをさらに有し、前記フレーム処理モジュールがそのバッファリングされたフレームを前記処理時刻決定モジュールによって決定される時刻に処理するよう構成されていることを特徴とする、請求項３０４記載のシステム。
【請求項３０６】
各フレームがトラックに関連付けられており、各トラックが少なくとも一つのフレームを含んでおり、前記インターフェースモジュールがトラックの処理を制御するための再生制御コマンドを受け取るようさらに構成されており、前記制御モジュールがトラック処理を制御する少なくとも一つの再生制御コマンドを実行するよう構成されていることを特徴とする、請求項３０５記載のシステム。
【請求項３０７】
少なくとも一つの種類の再生制御コマンドが前記制御モジュールをして、それがさらに前記フレーム処理モジュールをして、現在再生されているトラックの再生を打ち切らせることを特徴とする、請求項３０６記載のシステム。
【請求項３０８】
前記再生制御コマンドが前記制御モジュールをして、現在再生されているフレームの後続のフレームをもってトラックの再生を打ち切らせることを特徴とする、請求項３０７記載のシステム。
【請求項３０９】
前記再生制御コマンドが前記制御モジュールをして、少なくとも一つのフレームが以前に配送されたがまだ再生は始まっていないようなトラックの再生を取り消せるようにすることを特徴とする、請求項３０６記載のシステム。
【請求項３１０】
前記制御モジュールが、前記フレーム処理モジュールをして、後続のトラックに対応する少なくとも一つのフレームの処理を前記処理時刻決定モジュールによって決定された時刻に再開できるようにするよう構成されていることを特徴とする、請求項３０６記載のシステム。
【請求項３１１】
請求項３０２記載のシステムであって、前記メンバーデバイスが：
Ａ．タスクソースデバイスから、配送されるべきタスクに関する情報のためのソース、タスクソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を受け取るよう構成されている移行情報受領モジュールと、
Ｂ．前記移行情報の受領後に、
ｉ．当該同期グループに前記一連のタスクを配送し、各タスクはタスクソースデバイスとして動作しているデバイスから受け取るタイミング情報に基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は当該同期グループをなす諸デバイスがそれぞれのタスクを実行すべき時刻であり、
ｉｉ．自らが以後はタスクソースデバイスとして動作することを当該同期グループのメンバーに通知する、
よう構成されている移行制御モジュール、
とを含むことを特徴とするシステム。
【請求項３１２】
配送されるべきフレームに関する前記情報がストリーミング情報のソースであり、前記移行制御モジュールが、前記移行情報の受領後、該ストリーミング情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項３１１記載のシステム。
【請求項３１３】
配送されるべきフレームに関する前記情報が前記移行情報において同定されるファイル中にあり、前記移行制御モジュールが、前記同定されるファイルから情報を取得し、該情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項３１１記載のシステム。
【請求項３１４】
配送されるべきフレームに関する前記情報が、前記同定されるファイル内に前記移行情報で同定されるオフセットにて始まり、前記移行制御モジュールが、前記同定されるオフセットに対応する前記ファイル内の位置からの情報をまとめるよう構成されていることを特徴とする、請求項３１３記載のシステム。
【請求項３１５】
配送されるべきフレームに関する前記情報が前記移行情報において同定される一連のファイル中にあり、前記移行制御モジュールが、該一連のファイルから情報を取得し、該情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項３１３記載のシステム。
【請求項３１６】
前記メンバーデバイスがさらに、該メンバーデバイスのクロックレートを前記データソースデバイスのクロックによって維持されているクロックレートの値との関係で調整するよう構成されているクロックレート調整モジュールを含むことを特徴とする、請求項３０２記載のシステム。
【請求項３１７】
前記クロックレート調整モジュールが、前記クロックレートを前記データソースデバイスから受け取るフレームのそれぞれに関連付けられたタイムスタンプとの関係で調整するよう構成されていることを特徴とする、請求項３１６記載のシステム。
【請求項３１８】
前記データソースデバイスが：
Ａ．前記諸フレームのそれぞれを取得するよう構成されているフレーム取得モジュールと、
Ｂ．各フレームが実行されるべき時刻を決定し、前記各フレームをその実行時刻を示すタイムスタンプに関連付けるよう構成されているフレーム実行時刻決定モジュールと、
Ｃ．前記一連のフレームを前記少なくとも一つの別のデバイスに送信するよう構成されているフレーム送信モジュールと、
Ｄ．所定のイベントに反応して、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスがそれに送信されたフレームの実行シーケンスを修正できるようにするコマンドを挿入できるようにするよう構成されている実行制御コマンド生成モジュール、
とを有することを特徴とする、請求項２６７記載のシステム。
【請求項３１９】
少なくとも一つのフレームがオーディオデータを有し、各メンバーデバイスが各フレームを処理するときに当該フレームによって表される音を表す信号を生成することを特徴とする、請求項３１８記載のシステム。
【請求項３２０】
前記フレーム送信モジュールが選択されたマルチキャスト送信手法を利用するよう構成されていることを特徴とする、請求項３１８記載のシステム。
【請求項３２１】
前記所定のイベントが、オペレーターによって与えられる入力目印を有することを特徴とする、請求項３１８記載のシステム。
【請求項３２２】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが少なくとも一つのフレームの実行を前記所定のイベントが生起した時刻に関係して制御できるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項３２１記載のシステム。
【請求項３２３】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが現在実行中のフレームの実行を打ち切るか、および／または前記所定のイベントより後に実行されることになっている少なくとも一つのフレームを実行しないようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項３２２記載のシステム。
【請求項３２４】
前記の一連のフレームが一連のフレームシーケンスを含んでおり、各フレームシーケンスが前記一連のフレームのサブセットを含んでおり、前記実行制御コマンド生成モジュールが、前記所定のイベントに反応して、
（ｉ）前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが現在実行中のフレームの実行を打ち切るか、および／または現在実行中のフレームを含むフレームシーケンス中に後続のフレームがあれば少なくともその一つを実行しないようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記フレーム実行時刻決定モジュールをして、現在実行されているフレームシーケンスの後続のフレームシーケンスのフレームに関連付けられたタイムスタンプが現在実行されているフレームのフレームシーケンスからのフレームの前記の打ち切りおよび／または不実行を反映するようにさせ、
（ｂ）前記フレーム送信モジュールをして、前記少なくとも一つの別のデバイスに前記後続のフレームシーケンスのフレームを送信させる、
よう構成されていることを特徴とする、請求項３２３記載のシステム。
【請求項３２５】
前記フレーム送信モジュールが、前記少なくとも一つの別のデバイスに、前記打ち切られたおよび／または不実行とされたフレームの後続のフレームシーケンスのフレームをいっさい実行しないようにさせるコマンドを挿入するよう構成されていることを特徴とする、請求項３２４記載のシステム。
【請求項３２６】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して該フレームの実行を制御できるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項２６７記載のシステム。
【請求項３２７】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して該フレームの実行を取り消せるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項３２６記載のシステム。
【請求項３２８】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して以前に送信されたフレームの実行を取り消せるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項３２６記載のシステム。
【請求項３２９】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して以前に送信されたがまだ実行は開始されていないフレームの実行を取り消せるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項３２８記載のシステム。
【請求項３３０】
前記の一連のフレームが一連のフレームシーケンスを含んでおり、各フレームシーケンスが前記一連のフレームのサブセットを含んでおり、前記実行制御コマンド生成モジュールが、前記所定のイベントに反応して、
（ｉ）前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスがまだ実行が開始されていないフレームシーケンスの実行を取り消せるようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記フレーム実行時刻決定モジュールをして、実行が取り消されたフレームシーケンスの後続のフレームシーケンスのフレームに関連付けられたタイムスタンプが前記の取り消しを反映するようにさせ、
（ｂ）前記フレーム送信モジュールをして、前記少なくとも一つの別のデバイスに前記後続のフレームシーケンスのフレームを送信させる、
よう構成されていることを特徴とする、請求項３２７記載のシステム。
【請求項３３１】
前記データソースデバイスが：
Ａ．前記諸フレームのそれぞれを取得するよう構成されているフレーム取得モジュールと、
Ｂ．各フレームが実行されるべき時刻を決定し、前記各フレームをその実行時刻を示すタイムスタンプに関連付けるよう構成されているフレーム実行時刻決定モジュールと、
Ｃ．前記一連のフレームを前記少なくとも一つの別のデバイスに送信するよう構成されているフレーム送信モジュールと、
Ｄ．所定のイベントに反応して、配送されるべきフレームに関する情報のためのソース、データソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を別のデバイスに提供するよう構成されているデータソースデバイス移行制御モジュール、
とを有することを特徴とする、請求項２６７記載のシステム。
【請求項３３２】
前記データソースデバイスが、少なくとも一つのフレームに関連付けられた形で、当該データソースデバイスによって維持されるクロックによって現在示される時刻よりも遅いフレーム実行時刻を示すタイムスタンプを与えるよう構成されていることを特徴とする、請求項３３１記載のシステム。
【請求項３３３】
前記データソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該データソースデバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻にメンバーデバイスによって実行されうるようにするのに十分となるよう選択するよう構成されていることを特徴とする、請求項３３２記載のシステム。
【請求項３３４】
前記データソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該データソースデバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻における実行のためにメンバーデバイスに配送されうるようにするのに十分となるよう選択するよう構成されていることを特徴とする、請求項３３３記載のシステム。
【請求項３３５】
データソースデバイスが前記フレームに関連付けられた情報を少なくとも二種類の情報ソースから取得するよう構成されており、当該データソースデバイスがさらに各フレームについて前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を選択するのを、それぞれのフレームに関連付けられた情報ソースの種類に基づいて行うよう構成されていることを特徴とする、請求項３３３記載のシステム。
【請求項３３６】
データソースによって、該データソースによって維持されているクロックに基づいて該データソースによって指定される時刻に与えられる一連のフレームデータを処理するためのデバイスであって、
Ａ．各フレームは前記データソースによって維持されるクロックに基づく時刻値を示すタイムスタンプに関連付けられており、前記時刻は当該デバイスがそれぞれのフレームを処理すべき時刻であるとして、前記一連のフレームを受け取るよう構成されたインターフェースモジュールと、
Ｂ．前記データソースから該データソースのクロックによって示される現在時刻の値を取得するよう構成されている現在時刻取得モジュールと、
Ｃ．各フレームに関連付けられたタイムスタンプならびに、前記現在時刻取得モジュールによって取得された現在時刻の値と当該メンバーデバイスによって維持されているクロックによって示される現在時刻の値との間のずれを表す時間差の値から、そのフレームが処理されるべき、当該メンバーデバイス各自のクロックに基づく時刻を決定するよう構成されている実行時刻決定モジュールと、
Ｄ．前記実行時刻決定モジュールによって決定される時刻に各フレームを処理するよう構成されているフレーム処理モジュール、
とを有することを特徴とするデバイス。
【請求項３３７】
前記フレームがオーディオデータを有し、各メンバーデバイスが各フレームを処理するときに当該フレームによって表される音を表す信号を生成することを特徴とする、請求項３３６記載のデバイス。
【請求項３３８】
インターフェースモジュールによって受領されたコマンドの実行を制御するための制御モジュールをさらに含むことを特徴とする、請求項３３６記載のデバイス。
【請求項３３９】
前記インターフェースモジュールが受け取ったフレームを実行されるべき時までバッファリングしておくよう構成されているバッファをさらに有し、前記フレーム処理モジュールがそのバッファリングされたフレームを前記処理時刻決定モジュールによって決定される時刻に実行するよう構成されていることを特徴とする、請求項３３６記載のデバイス。
【請求項３４０】
各フレームがトラックに関連付けられており、各トラックが少なくとも一つのフレームを含んでおり、前記インターフェースモジュールがトラックの処理を制御するための再生制御コマンドを受け取るようさらに構成されており、前記制御モジュールがトラック処理を制御する少なくとも一つの再生制御コマンドを実行するよう構成されていることを特徴とする、請求項３３９記載のデバイス。
【請求項３４１】
少なくとも一つの種類の再生制御コマンドが前記制御モジュールをして、それがさらに前記フレーム処理モジュールをして、現在再生されているトラックの再生を打ち切らせることを特徴とする、請求項３４０記載のデバイス。
【請求項３４２】
前記再生制御コマンドが前記制御モジュールをして、現在再生されているフレームの後続のフレームをもってトラックの再生を打ち切らせることを特徴とする、請求項３４１記載のデバイス。
【請求項３４３】
前記再生制御コマンドが前記制御モジュールをして、少なくとも一つのフレームが以前に配送されたがまだ再生は始まっていないようなトラックの再生を取り消せるようにすることを特徴とする、請求項３４０記載のデバイス。
【請求項３４４】
前記制御モジュールが、前記フレーム処理モジュールをして、後続のトラックに対応する少なくとも一つのフレームの処理を前記処理時刻決定モジュールによって決定された時刻に再開できるようにするよう構成されていることを特徴とする、請求項３４０記載のデバイス。
【請求項３４５】
前記制御モジュールが、ある同期グループのメンバーになるというコマンドの受領に反応して、前記インターフェースモジュールをして前記フレーム処理モジュールによる処理のためのフレームを受け取れるようにするよう構成されていることを特徴とする、請求項３３８記載のデバイス。
【請求項３４６】
前記制御モジュールが、ある同期グループのメンバーになるというコマンドの受領に反応して、前記インターフェースモジュールをして、選択されたマルチキャスト送信手法を使って現在送信されているフレームを受け取り、さらに、選択されたユニキャスト送信手法を使って少なくとも一つの以前に配送済みのフレームを取得することができるようにするよう構成されていることを特徴とする、請求項３４５記載のデバイス。
【請求項３４７】
前記制御モジュールが、ある同期グループから離脱するというコマンドの受領に反応して、前記インターフェースモジュールをしてフレームの受け取りをできなくし、前記フレーム処理モジュールをして以前に受け取ったフレームでまだ処理されていないフレームの処理をできなくするよう構成されていることを特徴とする、請求項３４６記載のデバイス。
【請求項３４８】
当該デバイスがさらに、ユーザーインターフェースモジュールから制御情報を受け取るよう構成されているユーザーインターフェースモジュールインターフェースモジュールを有しており、前記制御モジュールが前記制御情報に反応して選択された動作が実行されうるようにするよう構成されていることを特徴とする、請求項３３６記載のデバイス。
【請求項３４９】
別のデバイスが当該デバイスの同期グループのメンバーになれるようにするための制御情報に反応して、前記制御モジュールが前記インターフェースモジュールをして前記別のデバイスに、該別のデバイスが当該同期グループのメンバーになれるようにするコマンドを送信させることを特徴とする、請求項３４８記載のデバイス。
【請求項３５０】
当該デバイスの同期グループのメンバーである別のデバイスが当該同期グループから離脱できるようにするための制御情報に反応して、前記制御モジュールが前記インターフェースモジュールをして前記別のデバイスに、該別のデバイスが当該同期グループから離脱できるようにするコマンドを送信させることを特徴とする、請求項３４９記載のデバイス。
【請求項３５１】
前記データソースをして動作を開始できるようにする制御情報に反応して、前記制御モジュールが前記データソースに動作を開始させるための選択された動作を実行することを特徴とする、請求項３４８記載のデバイス。
【請求項３５２】
データソースとしても動作している請求項３５１記載のデバイスであって、前記制御モジュールの制御のもとでフレームを生成するもとになる情報を取得して該フレームを生成するよう構成されたフレーム生成モジュールを含むことを特徴とするデバイス。
【請求項３５３】
前記インターフェースモジュールがさらに前記フレームを少なくとも一つの別のデバイスに送信するよう構成されていることを特徴とする、請求項３４２記載のデバイス。
【請求項３５４】
前記デバイスがデータソースではなく、前記制御モジュールが前記インターフェースモジュールをして前記データソースが動作できるようにするコマンドを送信できるようにするよう構成されていることを特徴とする、請求項３４３記載のデバイス。
【請求項３５５】
各フレームがトラックに関連付けられており、各トラックが少なくとも一つのフレームを含んでおり、現在処理されているトラックの処理を打ち切らせる制御情報の受領に反応して、前記制御モジュールが前記インターフェースモジュールをして、前記データソースが前記トラックの処理の打ち切りを可能にする再同期コマンドを前記トラックに関連付けられた一連のフレーム中に挿入できるようにするコマンドを送信させるよう構成されていることを特徴とする、請求項３５４記載のデバイス。
【請求項３５６】
各フレームがトラックに関連付けられており、各トラックが少なくとも一つのフレームを含んでおり、少なくとも一部分は受け取られているが処理は開始されていないトラックの処理を有効にする制御情報の受領に反応して、前記制御モジュールが前記インターフェースモジュールをして、前記データソースが前記トラックの処理を無効にする再同期コマンドを前記コマンド系列中に挿入できるようにするコマンドを送信させるよう構成されていることを特徴とする、請求項３５４記載のデバイス。
【請求項３５７】
前記制御モジュールが、前記ユーザーインターフェースモジュールインターフェースモジュールが前記ユーザーインターフェースモジュールに状態情報を送信できるようにするよう構成されていることを特徴とする、請求項３４４記載のデバイス。
【請求項３５８】
前記状態情報が少なくとも一つのフレームの実行状態を含むことを特徴とする、請求項３５７記載のデバイス。
【請求項３５９】
請求項３３６記載のデバイスであって、さらに：
Ａ．データソースデバイスから、配送されるべきフレームに関する情報のためのソース、データソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を受け取るよう構成されている移行情報受領モジュールと、
Ｂ．前記移行情報の受領後に、
ｉ．当該同期グループに前記一連のフレームを配送し、各フレームはデータソースデバイスとして動作しているデバイスから受け取るタイミング情報に基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は当該同期グループをなす諸デバイスがそれぞれのフレームを実行すべき時刻であり、
ｉｉ．自らが以後はデータソースデバイスとして動作することを当該同期グループのメンバーに通知する、
よう構成されている移行制御モジュール、
とを含むことを特徴とするデバイス。
【請求項３６０】
配送されるべきフレームに関する前記情報がストリーミング情報のソースであり、前記移行制御モジュールが、前記移行情報の受領後、該ストリーミング情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項３５９記載のデバイス。
【請求項３６１】
配送されるべきフレームに関する前記情報が前記移行情報において同定されるファイル中にあり、前記移行制御モジュールが、前記同定されるファイルから情報を取得し、該情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項３５９記載のデバイス。
【請求項３６２】
配送されるべきフレームに関する前記情報が、前記同定されるファイル内に前記移行情報で同定されるオフセットにて始まり、前記移行制御モジュールが、前記同定されるオフセットに対応する前記ファイル内の位置からの情報をまとめるよう構成されていることを特徴とする、請求項３６１記載のデバイス。
【請求項３６３】
配送されるべきフレームに関する前記情報が前記移行情報において同定される一連のファイル中にあり、前記移行制御モジュールが、該一連のファイルから情報を取得し、該情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるよう構成されていることを特徴とする、請求項３６１記載のデバイス。
【請求項３６４】
前記メンバーデバイスのクロックレートを前記データソースデバイスのクロックによって維持されているクロックレートの値との関係で調整するよう構成されているクロックレート調整モジュールを含むことを特徴とする、請求項３３６記載のデバイス。
【請求項３６５】
それぞれの実行時刻における少なくとも一つの別のデバイスによる実行のために一連のフレームを配送するためのデータソースデバイスであって：
Ａ．前記諸フレームのそれぞれを取得するよう構成されているフレーム取得モジュールと、
Ｂ．各フレームが実行されるべき時刻を決定し、前記各フレームをその実行時刻を示すタイムスタンプに関連付けるよう構成されているフレーム実行時刻決定モジュールと、
Ｃ．前記一連のフレームを前記少なくとも一つの別のデバイスに送信するよう構成されているフレーム送信モジュールと、
Ｄ．所定のイベントに反応して、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスがそれに送信されたフレームの実行シーケンスを修正できるようにするコマンドを挿入できるようにするよう構成されている実行制御コマンド生成モジュール、
とを有することを特徴とするデータソースデバイス。
【請求項３６６】
前記フレーム送信モジュールが選択されたマルチキャスト送信手法を利用するよう構成されていることを特徴とする、請求項３６５記載のデータソースデバイス。
【請求項３６７】
前記所定のイベントが、オペレーターによって与えられる入力目印を有することを特徴とする、請求項３６５記載のデータソースデバイス。
【請求項３６８】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが少なくとも一つのフレームの実行を前記所定のイベントが生起した時刻に関係して制御できるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項３６７記載のデータソースデバイス。
【請求項３６９】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが現在実行中のフレームの実行を打ち切るか、および／または前記所定のイベントより後に実行されることになっている少なくとも一つのフレームを実行しないようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項３６８記載のデータソースデバイス。
【請求項３７０】
前記の一連のフレームが一連のフレームシーケンスを含んでおり、各フレームシーケンスが前記一連のフレームのサブセットを含んでおり、前記実行制御コマンド生成モジュールが、前記所定のイベントに反応して、
（ｉ）前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが現在実行中のフレームの実行を打ち切るか、および／または現在実行中のフレームを含むフレームシーケンス中に後続のフレームがあれば少なくともその一つを実行しないようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記フレーム実行時刻決定モジュールをして、現在実行されているフレームシーケンスの後続のフレームシーケンスのフレームに関連付けられたタイムスタンプが現在実行されているフレームのフレームシーケンスからのフレームの前記の打ち切りおよび／または不実行を反映するようにさせ、
（ｂ）前記フレーム送信モジュールをして、前記少なくとも一つの別のデバイスに前記後続のフレームシーケンスのフレームを送信させる、
よう構成されていることを特徴とする、請求項３６８記載のデータソースデバイス。
【請求項３７１】
前記フレーム送信モジュールが、前記少なくとも一つの別のデバイスに、前記打ち切られたおよび／または不実行とされたフレームの後続のフレームシーケンスのフレームをいっさい実行しないようにさせるコマンドを挿入するよう構成されていることを特徴とする、請求項３７０記載のデータソースデバイス。
【請求項３７２】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して該フレームの実行を制御できるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項３６２記載のデータソースデバイス。
【請求項３７３】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して該フレームの実行を取り消せるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項３７２記載のデータソースデバイス。
【請求項３７４】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して以前に送信されたフレームの実行を取り消せるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項３７１記載のデータソースデバイス。
【請求項３７５】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して以前に送信されたがまだ実行は開始されていないフレームの実行を取り消せるようにするコマンドを挿入できるようにするよう構成されていることを特徴とする、請求項３７４記載のデータソースデバイス。
【請求項３７６】
前記の一連のフレームが一連のフレームシーケンスを含んでおり、各フレームシーケンスが前記一連のフレームのサブセットを含んでおり、前記実行制御コマンド生成モジュールが、前記所定のイベントに反応して、
（ｉ）前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスがまだ実行が開始されていないフレームシーケンスの実行を取り消せるようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記フレーム実行時刻決定モジュールをして、実行が取り消されたフレームシーケンスの後続のフレームシーケンスのフレームに関連付けられたタイムスタンプが前記の取り消しを反映するようにさせ、
（ｂ）前記フレーム送信モジュールをして、前記少なくとも一つの別のデバイスに前記後続のフレームシーケンスのフレームを送信させる、
よう構成されていることを特徴とする、請求項３７１記載のデータソースデバイス。
【請求項３７７】
それぞれの実行時刻における少なくとも一つの別のデバイスによる実行のために一連のフレームを配送するためのデータソースデバイスであって：
Ａ．前記諸フレームのそれぞれを取得するよう構成されているフレーム取得モジュールと、
Ｂ．各フレームが実行されるべき時刻を決定し、前記各フレームをその実行時刻を示すタイムスタンプに関連付けるよう構成されており、かつ少なくとも一つのフレームに関連付けられた形で、当該データソースデバイスによって維持されるクロックによって現在示される時刻よりも遅いフレーム実行時刻を示すタイムスタンプを与えるよう構成されているフレーム実行時刻決定モジュールと、
Ｃ．前記一連のフレームを前記少なくとも一つの別のデバイスに送信するよう構成されているフレーム送信モジュール、
とを有することを特徴とするデータソースデバイス。
【請求項３７８】
前記データソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該データソースデバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻にメンバーデバイスによって実行されうるようにするのに十分となるよう選択するよう構成されていることを特徴とする、請求項３７７記載のシステム。
【請求項３７９】
前記データソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該データソースデバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻における実行のためにメンバーデバイスに配送されうるようにするのに十分となるよう選択するよう構成されていることを特徴とする、請求項３７８記載のシステム。
【請求項３８０】
データソースデバイスが前記フレームに関連付けられた情報を少なくとも二種類の情報ソースから取得するよう構成されており、当該データソースデバイスがさらに各フレームについて前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を選択するのを、それぞれのフレームに関連付けられた情報ソースの種類に基づいて行うよう構成されていることを特徴とする、請求項３７７記載のシステム。
【請求項３８１】
少なくとも一つの別のデバイスによる実行のために一連のフレームを配送するためのデータソースデバイスであって：
Ａ．前記諸フレームのそれぞれを取得するよう構成されているフレーム取得モジュールと、
Ｂ．各フレームが実行されるべき時刻を決定し、前記各フレームをその実行時刻を示すタイムスタンプに関連付けるよう構成されているフレーム実行時刻決定モジュールと、
Ｃ．前記一連のフレームを前記少なくとも一つの別のデバイスに送信するよう構成されているフレーム送信モジュールと、
Ｄ．所定のイベントに反応して、配送されるべきフレームに関する情報のためのソース、データソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を別のデバイスに提供するよう構成されているデータソースデバイス移行制御モジュール、
とを有することを特徴とするデータソースデバイス。
【請求項３８２】
同期グループのメンバーとして該同期グループにデータを提供するデータソースデバイスによって維持されているクロックと同期的に動作しているデバイスによる前記データの処理を容易にするためのシステムを動作させるための方法であって、
Ａ．前記データソースデバイスをして、前記データを当該同期グループへの配送のために一連のフレームに分けることができるようにし、各フレームは、当該同期グループをなす諸デバイスがそのフレームを処理するべきである、前記データソースデバイスによって維持されているクロックに基づく時刻を示すタイムスタンプに関連付けられており、
Ｂ．当該同期グループ内の各メンバーデバイスをして：
（ｉ）前記データソースデバイスから、該データソースデバイスのクロックによって示される現在時刻の値の指示を周期的に取得し、
（ｉｉ）前記データソースデバイスから前記一連のフレームを受け取り、
（ｉｉｉ）各フレームに関連付けられた前記タイムスタンプおよび、前記データソースデバイスのクロックによって示される現在時刻の値と当該メンバーデバイス各自のクロックによって示される現在時刻の値との間のずれを表す時間差の値から、当該メンバーデバイスがそのフレームを処理するべきである、当該メンバーデバイス自身のクロックに基づく時刻を決定し、
（ｉｖ）前記決定された時刻に当該フレームを処理する、
ことができるようにする、
ステップを含むことを特徴とする方法。
【請求項３８３】
少なくとも一つのフレームがオーディオデータを有し、各メンバーデバイスが各フレームを処理するときに当該フレームによって表される音を表す信号を生成できるようにされていることを特徴とする、請求項３８２記載の方法。
【請求項３８４】
当該システムが複数のメンバーデバイスを有しており、該メンバーデバイスが前記データソースデバイスによって維持されているクロックとの関係で同期的に各フレームを処理し、そのため全メンバーデバイスが当該フレームによって表される音を同期的に発することを特徴とする、請求項３８２記載の方法。
【請求項３８５】
前記データソースデバイスをして少なくとも二つの相続くフレームにかけて、メンバーデバイスが該フレームをある選択された時間間隔をもって再生するようなタイムスタンプを提供できるようにするステップを含むことを特徴とする、請求項３８４記載の方法。
【請求項３８６】
前記時間間隔が０であることを特徴とする、請求項３８５記載の方法。
【請求項３８７】
前記メンバーデバイスの一つが当該同期グループのためのマスターデバイスとして動作し、他のすべてのメンバーデバイスはそれぞれスレーブデバイスをなし、当該方法が前記マスターデバイスをして、当該同期グループをなすメンバーデバイスに関連した少なくとも一つの種類の同期グループ管理動作を実行できるようにするステップを含むことを特徴とする、請求項３８２記載の方法。
【請求項３８８】
前記マスターデバイスをして、ユーザーインターフェースモジュールによって与えられる制御情報に反応して少なくとも一つの種類の同期グループ管理動作を実行できるようにするステップを含むことを特徴とする、請求項３８７記載の方法。
【請求項３８９】
前記マスターデバイスをして、当該同期グループの状態に関係する状態情報を前記ユーザーインターフェースモジュールに提供できるようにするステップを含むことを特徴とする、請求項３８８記載の方法。
【請求項３９０】
前記状態情報が当該同期グループをなすデバイスの識別情報を含むことを特徴とする、請求項３８９記載の方法。
【請求項３９１】
各フレームがフレームシーケンスに関連付けられており、各フレームシーケンスは少なくとも一つのフレームを有しており、各フレームシーケンスをなす単数または複数のフレームはあるオーディオトラックに関連付けられており、各オーディオトラックは識別子と関連付けられており、前記状態情報が現在再生されているオーディオトラックの識別情報を含むことを特徴とする、請求項３８９記載の方法。
【請求項３９２】
当該方法が少なくとも一つの追加的なデバイスを有しており、ある種類の同期グループ管理動作においてマスターデバイスは前記少なくとも一つの追加的デバイスが当該同期グループにスレーブデバイスとして加われるようにするよう構成されていることを特徴とする、請求項３８８記載の方法。
【請求項３９３】
前記データソースデバイスが選択されたマルチキャスト送信手法を使って前記メンバーデバイスにフレームを配送するよう構成されており、前記メンバーデバイスがフレームが再生されるべき時まで該フレームをバッファリングしておくよう構成されており、当該方法は前記少なくとも一つの追加的デバイスが当該同期グループにスレーブデバイスとして加わったときに前記データソースデバイスをして選択されたユニキャスト送信手法を使って前記スレーブデバイスに少なくとも一つの以前に配送済みのフレームを送信してやれるようにするステップを含むことを特徴とする、請求項３９２記載の方法。
【請求項３９４】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスをして、前記データソースデバイスが当該同期グループにスレーブデバイスとして加われるようにし、前記データソースデバイスが当該同期グループのためにデータソースデバイスとして動作し続けるようにできるようにするステップを含むことを特徴とする、請求項３８７記載の方法。
【請求項３９５】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスをして、あるスレーブデバイスが当該同期グループから離脱できるようにし、前記離脱したスレーブデバイスがその後当該グループのメンバーデバイスではなくなり、前記データソースデバイスによって配送されるフレームを再生しなくなるようにできるようにするステップを含むことを特徴とする、請求項３８７記載の方法。
【請求項３９６】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスをして、前記データソースデバイスによって配送される一連のフレームを制御できるようにするステップを含むことを特徴とする、請求項３８７記載の方法。
【請求項３９７】
各フレームがフレームシーケンスに関連付けられており、各フレームシーケンスは少なくとも一つのフレームを有しており、各フレームシーケンスをなす単数または複数のフレームはあるオーディオトラックに関連付けられており、当該方法は前記マスターデバイスをして前記データソースデバイスによって配送されるべきフレームをトラックごとに制御できるようにするステップを含むことを特徴とする、請求項３８７記載の方法。
【請求項３９８】
少なくとも一つの種類の同期グループ管理動作において前記マスターデバイスをして、前記データソースデバイスによって配送されたそれぞれのオーディオトラックに関連付けられたフレームの、メンバーデバイスによる再生を、ユーザーインターフェースモジュールからの制御情報に反応して制御できるようにするステップを含むことを特徴とする、請求項３８７記載の方法。
【請求項３９９】
ユーザーインターフェースモジュールからの制御情報に反応して、メンバーデバイスによる再生の制御を容易にするため、前記マスターデバイスをしてデータソースデバイスをしてメンバーデバイスに再生制御コマンドを配送させることができるようにするステップを含むことを特徴とする、請求項３８７記載の方法。
【請求項４００】
再生制御コマンドがメンバーデバイスをして現在再生されているトラックの再生を打ち切れるようにすることを特徴とする、請求項３９９記載の方法。
【請求項４０１】
前記再生制御コマンドがメンバーデバイスをして現在再生されているフレームの後続のフレームをもってトラックの再生を打ち切れるようにすることを特徴とする、請求項３９９記載の方法。
【請求項４０２】
前記再生制御コマンドがメンバーデバイスをして、少なくとも一つのフレームが以前に配送されたがまだ再生は始まっていないようなトラックの再生を取り消せるようにすることを特徴とする、請求項３９９記載の方法。
【請求項４０３】
少なくとも一つの種類の同期グループ管理動作において、マスターデバイスとして動作しているメンバーデバイスをして、マスターデバイスが当該同期グループ内で自分自身から別のメンバーデバイスに移行できるようにすることができるようにするステップを含むことを特徴とする、請求項３８７記載の方法。
【請求項４０４】
少なくとも一つの種類の同期グループ管理動作において、前記マスターデバイスをして、データソースデバイスが当該システム内であるデバイスから別のデバイスに移行できるようにすることができるようにするステップを含むことを特徴とする、請求項４０３記載の方法。
【請求項４０５】
請求項４０４記載の方法であって、
Ａ．データソースデバイスとして動作しているデバイスが、データソースデバイスを前記別のデバイスに移行させられるようにされたのち、移行情報を前記別のデバイスに提供するステップを実行できるようになっており、前記移行情報が配送されるべきフレームに関する情報のためのソース、データソースデバイスによって維持されているクロックに基づくタイミング情報およびメンバーデバイスの識別情報を含み、
Ｂ．前記別のデバイスは、前記移行情報の受領後は、
ｉ．当該同期グループに前記一連のフレームを配送し、各フレームはデータソースデバイスとして動作している前記デバイスから受け取るタイミング情報に基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は当該同期グループをなす諸デバイスがそれぞれのフレームを実行すべき時刻であり、
ｉｉ．自らが以後はデータソースデバイスとして動作することを当該同期グループのメンバーに通知する、
ステップを実行できるようになっている、
ことを特徴とする方法。
【請求項４０６】
配送されるべきフレームに関する前記情報がストリーミング情報のソースであり、前記別のデバイスが、前記移行情報の受領後、該ストリーミング情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるステップを実行できるようにされていることを特徴とする、請求項４０５記載の方法。
【請求項４０７】
配送されるべきフレームに関する前記情報が前記移行情報において同定されるファイル中にあり、前記別のデバイスが、前記同定されるファイルから情報を取得し、該情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるステップを実行できるようにされていることを特徴とする、請求項４０５記載の方法。
【請求項４０８】
配送されるべきフレームに関する前記情報が、前記同定されるファイル内に前記移行情報で同定されるオフセットにて始まり、前記別のデバイスが、前記同定されるオフセットに対応する前記ファイル内の位置からの情報をまとめるステップを実行できるようにされていることを特徴とする、請求項４０７記載の方法。
【請求項４０９】
配送されるべきフレームに関する前記情報が前記移行情報において同定される一連のファイル中にあり、前記別のデバイスが、該一連のファイルから情報を取得し、該情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるステップを実行できるようにされていることを特徴とする、請求項４０７記載の方法。
【請求項４１０】
前記データソースがさらに、前記フレームを選択されたマルチキャストメッセージ送信手法を使って配送するよう構成されており、デバイスが前記選択されたマルチキャストメッセージ送信手法を使って前記フレームを受け取れるようにされているステップを含むことを特徴とする、請求項３８２記載の方法。
【請求項４１１】
前記データソースデバイスが、少なくとも一つのフレームに関連付けられた形で、当該データソースデバイスによって維持されるクロックによって現在示される時刻よりも遅いフレーム実行時刻を示すタイムスタンプを与えるステップを実行できるようにされていることを特徴とする、請求項３８２記載の方法。
【請求項４１２】
前記データソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該データソースデバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻にメンバーデバイスによって実行されうるようにするのに十分となるよう選択するステップを実行できるようにされていることを特徴とする、請求項４１１記載の方法。
【請求項４１３】
前記データソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該データソースデバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻における実行のためにメンバーデバイスに配送されうるようにするのに十分となるよう選択するするステップを実行できるようにされていることを特徴とする、請求項４１１記載の方法。
【請求項４１４】
データソースデバイスが前記フレームに関連付けられた情報を少なくとも二種類の情報ソースから取得し、各フレームについて前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を選択するのを、それぞれのフレームに関連付けられた情報ソースの種類に基づいて行うステップを実行できるようにされていることを特徴とする、請求項４１１記載の方法。
【請求項４１５】
少なくとも一つのメンバーデバイスがさらに、そのクロックレートを前記データソースデバイスのクロックによって維持されているクロックレートの値との関係で調整するステップを実行できるようにされていることを特徴とする、請求項３８２記載の方法。
【請求項４１６】
前記少なくとも一つのメンバーデバイスが、そのクロックレートを前記データソースデバイスから受け取るフレームのそれぞれに関連付けられたタイムスタンプとの関係で調整するするステップを実行できるようにされていることを特徴とする、請求項４１５記載の方法。
【請求項４１７】
少なくとも一つの別のデバイスが、第二の同期グループにフレームを配送するよう構成されたデータソースデバイスとして動作し、当該方法が、当該デバイスをして第一の同期グループのためのデータソースデバイスとして動作し、かつ第二の同期グループのメンバーデバイスとしても動作することができるようにするステップを含むことを特徴とする、請求項３８２記載の方法。
【請求項４１８】
請求項３８２記載の方法であって、メンバーデバイス内における、
Ａ．一連のフレームを受け取るフレーム受領ステップと、
Ｂ．前記データソースデバイスから該データソースのクロックによって示される現在時刻の値を取得する現在時刻取得ステップと、
Ｃ．各フレームに関連付けられたタイムスタンプならびに、前記現在時刻取得ステップの間に取得された現在時刻の値と当該デバイスによって維持されているクロックによって示される現在時刻の値との間のずれを表す時間差の値から、そのフレームが実行されるべき、当該メンバーデバイス各自のクロックに基づく時刻を決定する実行時刻決定ステップと、
Ｄ．前記実行時刻決定ステップの間に決定される時刻に各フレームを実行するフレーム実行ステップ、
とを含むことを特徴とする方法。
【請求項４１９】
前記フレーム受領ステップの間に受領されたコマンドの実行を制御するための制御ステップをさらに含むことを特徴とする、請求項４１８記載の方法。
【請求項４２０】
前記少なくとも一つのメンバーデバイスが、前記データソースデバイスから前記フレーム受領ステップの間に受け取られたフレームを実行されるべき時までバッファリングしておくよう構成されているバッファをさらに有しており、前記フレーム実行ステップがそのバッファリングされたフレームを前記実行時刻決定ステップの間に決定される時刻に実行するステップを含んでいることを特徴とする、請求項４１９記載の方法。
【請求項４２１】
前記の一連のフレームが一連のフレームシーケンスを含んでおり、各フレームシーケンスが前記一連のフレームのサブセットを含んでおり、前記フレーム受領ステップがさらにフレーム実行を制御するためのフレーム実行制御コマンドを受け取れるようにされており、前記制御ステップが、フレーム実行を制御するための少なくとも一つのフレーム実行制御コマンドの受領に反応して、フレーム実行ステップをして現在実行されているフレームシーケンスの実行を打ち切り、バッファリングされている当該フレームシーケンス中のその後のフレームを実行しないよう制御するステップを含むことを特徴とする、請求項４２０記載の方法。
【請求項４２２】
前記制御ステップが、前記フレーム実行ステップをして、後続のフレームシーケンスに対応する少なくとも一つのフレームの実行を前記実行時刻決定ステップの間に決定された時刻に再開できるようにするステップを含むことを特徴とする、請求項４２１記載の方法。
【請求項４２３】
前記の一連のフレームが一連のフレームシーケンスを含んでおり、各フレームシーケンスが前記一連のフレームのサブセットを含んでおり、前記フレーム受領ステップがフレーム実行を制御するためのフレーム実行制御コマンドを受け取るステップを含んでおり、前記制御ステップが、少なくとも一つのフレームがバッファリングされているがまだ実行は始まっていないフレームシーケンスの実行を取り消すための少なくとも一つのフレーム実行制御コマンドの受領に反応して、前記フレーム実行が前記バッファリングされているフレームシーケンスのフレームの実行を含まないようにするステップを含むことを特徴とする、請求項４２０記載の方法。
【請求項４２４】
前記制御ステップが、実行をして、少なくとも一つのフレームがバッファリングされているがまだ実行は始まっていない前記フレームシーケンスの後続のフレームシーケンスに対応する少なくとも一つのフレームについて再開できるようにするステップを含むことを特徴とする、請求項４２３記載の方法。
【請求項４２５】
請求項４１８記載の方法であって、前記メンバーデバイスが：
Ａ．データソースデバイスから、配送されるべきフレームに関する情報のためのソース、データソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を受け取る移行情報受領ステップと、
Ｂ．前記移行情報の受領後に、
ｉ．当該同期グループに前記一連のフレームを配送し、各フレームはデータソースデバイスとして動作しているデバイスから受け取るタイミング情報に基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は当該同期グループをなす諸デバイスがそれぞれのフレームを実行すべき時刻であり、
ｉｉ．自らが以後はデータソースデバイスとして動作することを当該同期グループのメンバーに通知する、
移行制御ステップ、
とを実行することを特徴とする方法。
【請求項４２６】
配送されるべきフレームに関する前記情報がストリーミング情報のソースであり、前記移行制御モジュールが、前記移行情報の受領後、該ストリーミング情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるステップを含むことを特徴とする、請求項４２５記載の方法。
【請求項４２７】
配送されるべきフレームに関する前記情報が前記移行情報において同定されるファイル中にあり、前記移行制御ステップが、前記同定されるファイルから情報を取得し、該情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるステップを含むことを特徴とする、請求項４２５記載の方法。
【請求項４２８】
配送されるべきフレームに関する前記情報が、前記同定されるファイル内に前記移行情報で同定されるオフセットにて始まり、前記移行制御ステップが、前記同定されるオフセットに対応する前記ファイル内の位置からの情報をまとめるステップを含むことを特徴とする、請求項４２７記載の方法。
【請求項４２９】
配送されるべきフレームに関する前記情報が前記移行情報において同定される一連のファイル中にあり、前記移行制御ステップが、該一連のファイルから情報を取得し、該情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるステップを含むことを特徴とする、請求項４２７記載の方法。
【請求項４３０】
前記メンバーデバイスがさらに、該メンバーデバイスのクロックレートを前記データソースデバイスのクロックによって維持されているクロックレートの値との関係で調整するステップを含むクロックレート調整ステップを実行できるようにされていることを特徴とする、請求項４１８記載の方法。
【請求項４３１】
前記クロックレート調整ステップが、前記クロックレートを前記データソースデバイスから受け取るフレームのそれぞれに関連付けられたタイムスタンプとの関係で決定するステップを含むことを特徴とする、請求項４３０記載の方法。
【請求項４３２】
それぞれの実行時刻における少なくとも一つの別のデバイスによる実行のために一連のフレームを配送するためのデバイスを動作させる請求項３８２記載の方法であって：
Ａ．前記諸フレームのそれぞれを取得するフレーム取得ステップと、
Ｂ．各フレームが実行されるべき時刻を決定し、前記各フレームをその実行時刻を示すタイムスタンプに関連付けるフレーム実行時刻決定ステップと、
Ｃ．前記一連のフレームを前記少なくとも一つの別のデバイスに送信するフレーム送信ステップと、
Ｄ．所定のイベントに反応して、前記フレーム送信ステップの間に、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスがそれに送信されたフレームの実行シーケンスを修正できるようにするコマンドを挿入する実行制御コマンド生成ステップ、
とを含むことを特徴とする方法。
【請求項４３３】
前記フレーム送信ステップが選択されたマルチキャスト送信手法を利用するステップを含むことを特徴とする、請求項４３２記載の方法。
【請求項４３４】
前記所定のイベントが、オペレーターによって与えられる入力目印を受け取るステップを含むことを特徴とする、請求項４３２記載の方法。
【請求項４３５】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記フレーム送信ステップの間に、前記一連のフレーム中に、前記少なくとも一つの別のデバイスが少なくとも一つのフレームの実行を前記所定のイベントが生起した時刻に関係して制御できるようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項４３４記載の方法。
【請求項４３６】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記フレーム送信ステップの間に、前記一連のフレーム中に、前記少なくとも一つの別のデバイスが現在実行中のフレームの実行を打ち切るか、および／または前記所定のイベントより後に実行されることになっている少なくとも一つのフレームを実行しないようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項４３５記載の方法。
【請求項４３７】
前記の一連のフレームが一連のフレームシーケンスを含んでおり、各フレームシーケンスが前記一連のフレームのサブセットを含んでおり、前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、
（ｉ）前記フレーム送信ステップの間に、前記一連のフレーム中に、前記少なくとも一つの別のデバイスが現在実行中のフレームの実行を打ち切るか、および／または現在実行中のフレームを含むフレームシーケンス中に後続のフレームがあれば少なくともその一つを実行しないようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記フレーム実行時刻決定ステップの間に、現在実行されているフレームシーケンスの後続のフレームシーケンスのフレームに関連付けられたタイムスタンプが現在実行されているフレームのフレームシーケンスからのフレームの前記の打ち切りおよび／または不実行を反映するようになり、
（ｂ）前記フレーム送信ステップの間に、前記少なくとも一つの別のデバイスに前記後続のフレームシーケンスのフレームを送信すること、
を可能にする、
ステップを含むことを特徴とする、請求項４３４記載の方法。
【請求項４３８】
前記フレーム送信ステップが、前記少なくとも一つの別のデバイスに、前記打ち切られたおよび／または不実行とされたフレームの後続のフレームシーケンスのフレームをいっさい実行しないようにさせるコマンドを挿入するステップを含むことを特徴とする、請求項４３７記載の方法。
【請求項４３９】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記フレーム送信ステップの間に、前記一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して該フレームの実行を制御できるようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項４３５記載の方法。
【請求項４４０】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記フレーム送信ステップの間に、前記一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して該フレームの実行を取り消せるようにするコマンドを挿入するステップを含むことを特徴とする、請求項４３９記載の方法。
【請求項４４１】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記フレーム送信ステップの間に、前記一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して以前に送信されたフレームの実行を取り消せるようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項４３９記載の方法。
【請求項４４２】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記フレーム送信ステップの間に、前記一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して以前に送信されたがまだ実行は開始されていないフレームの実行を取り消せるようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項４４１記載の方法。
【請求項４４３】
前記の一連のフレームが一連のフレームシーケンスを含んでおり、各フレームシーケンスが前記一連のフレームのサブセットを含んでおり、前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、
（ｉ）前記フレーム送信ステップの間に、前記一連のフレーム中に、前記少なくとも一つの別のデバイスがまだ実行が開始されていないフレームシーケンスの実行を取り消せるようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記フレーム実行時刻決定ステップの間に、実行が取り消されたフレームシーケンスの後続のフレームシーケンスのフレームに関連付けられたタイムスタンプが前記の取り消しを反映するようになり、
（ｂ）前記フレーム送信ステップの間に、前記少なくとも一つの別のデバイスに前記後続のフレームシーケンスのフレームを送信する、
ことを可能にする、
ステップを含むことを特徴とする、請求項４３９記載の方法。
【請求項４４４】
請求項３８２記載の方法であって、前記データソースデバイスが、
Ａ．前記諸フレームのそれぞれを取得するフレーム取得ステップと、
Ｂ．各フレームが実行されるべき時刻を決定し、前記各フレームをその実行時刻を示すタイムスタンプに関連付けるフレーム実行時刻決定ステップと、
Ｃ．前記一連のフレームを前記少なくとも一つの別のデバイスに送信するフレーム送信ステップと、
Ｄ．所定のイベントに反応して、配送されるべきフレームに関する情報のためのソース、データソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を別のデバイスに提供するデータソースデバイス移行制御ステップ、
とを実行できるようにされていることを特徴とする方法。
【請求項４４５】
前記データソースデバイスが、少なくとも一つのフレームに関連付けられた形で、当該データソースデバイスによって維持されるクロックによって現在示される時刻よりも遅いフレーム実行時刻を示すタイムスタンプを与えるステップを実行できるようにされていることを特徴とする、請求項３８２記載の方法。
【請求項４４６】
前記データソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該データソースデバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻にメンバーデバイスによって実行されうるようにするのに十分となるよう選択するステップを実行できるようにされていることを特徴とする、請求項４４５記載の方法。
【請求項４４７】
前記データソースデバイスが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該データソースデバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻における実行のためにメンバーデバイスに配送されうるようにするのに十分となるよう選択するステップを実行できるようにされていることを特徴とする、請求項４４６記載の方法。
【請求項４４８】
データソースデバイスが前記フレームに関連付けられた情報を少なくとも二種類の情報ソースから取得するよう構成されており、当該データソースデバイスがさらに各フレームについて前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を選択するのを、それぞれのフレームに関連付けられた情報ソースの種類に基づいて行うステップを実行できるようにされていることを特徴とする、請求項４４５記載の方法。
【請求項４４９】
デバイスをして、データソースによって提供されるデータの一連のフレームを前記データソースによって維持されているクロックに基づいて前記データソースによって指定される時刻に処理できるようにする方法であって、前記デバイスが、
Ａ．各フレームは前記データソースによって維持されるクロックによって示される時刻に基づく時刻値を示すタイムスタンプに関連付けられており、前記時刻は当該デバイスがそれぞれのフレームを実行すべき時刻であるとして、一連のフレームを受け取るインターフェースステップと、
Ｂ．データソースから該データソースのクロックによって示される現在時刻の値を取得する現在時刻取得ステップと、
Ｃ．各フレームに関連付けられたタイムスタンプならびに、前記現在時刻取得ステップの間に取得された現在時刻の値と当該メンバーデバイスによって維持されているクロックによって示される現在時刻の値との間のずれを表す時間差の値から、そのフレームが処理されるべき、当該メンバーデバイス各自のクロックに基づく時刻を決定する処理時刻決定ステップと、
Ｄ．前記処理時刻決定ステップの間に決定される時刻に各フレームを処理するよう構成されているフレーム処理ステップ、
とを有することを特徴とする方法。
【請求項４５０】
少なくとも一つのフレームがオーディオデータを含んでおり、各メンバーデバイスが前記少なくとも一つのフレームを処理するときに各フレームによって表される音を表す信号を生成することを特徴とする、請求項４４９記載の方法。
【請求項４５１】
前記によって受領されたコマンドの実行を制御するための制御ステップをさらに含むことを特徴とする、請求項４４９記載の方法。
【請求項４５２】
前記インターフェースモジュールが受け取ったフレームを処理されるべき時までバッファリングしておくよう構成されたバッファをさらに有し、前記フレーム処理ステップがそのバッファリングされたフレームを前記処理時刻決定の間に決定される時刻に処理するステップを含むことを特徴とする、請求項４５１記載の方法。
【請求項４５３】
各フレームがトラックに関連付けられており、各トラックが少なくとも一つのフレームを含んでおり、前記インターフェースモジュールがトラックの処理を制御するための再生制御コマンドを受け取るようさらに構成されており、当該方法が、前記制御モジュールがトラック処理を制御する少なくとも一つの再生制御コマンドを実行できるようにするステップを含むことを特徴とする、請求項４５１記載の方法。
【請求項４５４】
少なくとも一つの種類の再生制御コマンドに反応して前記制御モジュールをして、それがさらに前記フレーム処理モジュールをして、現在再生されているトラックの再生を打ち切らせるステップを含むことを特徴とする、請求項４５３記載の方法。
【請求項４５５】
前記再生制御コマンドに反応して前記制御モジュールをして、現在再生されているフレームの後続のフレームをもってトラックの再生を打ち切らせるステップを含むことを特徴とする、請求項４５４記載の方法。
【請求項４５６】
前記再生制御コマンドに反応して前記制御モジュールをして、少なくとも一つのフレームが以前に配送されたがまだ再生は始まっていないようなトラックの再生を取り消せるようにするステップを含むことを特徴とする、請求項４５２記載の方法。
【請求項４５７】
前記制御モジュールをして、前記フレーム処理モジュールをして、後続のトラックに対応する少なくとも一つのフレームの処理を前記処理時刻決定モジュールによって決定された時刻に再開できるようにすることができるようにするステップを含むことを特徴とする、請求項４５３記載の方法。
【請求項４５８】
前記制御モジュールをして、ある同期グループのメンバーになるというコマンドの受領に反応して、前記インターフェースモジュールが前記フレーム処理モジュールによる処理のためのフレームを受け取れるようにすることができるようにするステップを含むことを特徴とする、請求項４４９記載の方法。
【請求項４５９】
前記制御モジュールをして、ある同期グループのメンバーになるというコマンドの受領に反応して、前記インターフェースモジュールをして、選択されたマルチキャスト送信手法を使って現在送信されているフレームを受け取り、さらに、選択されたユニキャスト送信手法を使って少なくとも一つの以前に配送済みのフレームを取得できるようにすることができるようにするステップを含むことを特徴とする、請求項４５８記載の方法。
【請求項４６０】
前記制御モジュールをして、ある同期グループから離脱するというコマンドの受領に反応して、前記インターフェースモジュールをしてフレームの受け取りをできなくし、前記フレーム処理モジュールをして以前に受け取ったフレームでまだ処理されていないフレームの処理をできなくすることができるようにするステップを含むことを特徴とする、請求項４４９記載の方法。
【請求項４６１】
ユーザーインターフェースモジュールから制御情報を受け取り、前記制御モジュールをして前記制御情報に反応して選択された動作が実行されうるようにすることができるようにするステップをさらに含むことを特徴とする、請求項４４９記載の方法。
【請求項４６２】
別のデバイスが当該デバイスの同期グループのメンバーになれるようにするための制御情報に反応して、前記制御モジュールをして前記インターフェースモジュールをして前記別のデバイスに該別のデバイスが当該同期グループのメンバーになれるようにするコマンドを送信させることができるようにするステップを含むことを特徴とする、請求項４６１記載の方法。
【請求項４６３】
当該デバイスの同期グループのメンバーである別のデバイスが当該同期グループから離脱できるようにするための制御情報に反応して、前記制御モジュールをして前記インターフェースモジュールが前記別のデバイスに、該別のデバイスが当該同期グループから離脱できるようにするコマンドの送信を可能にすることができるようにするステップを含むことを特徴とする、請求項４６１記載の方法。
【請求項４６４】
前記データソースをして動作を開始できるようにする制御情報に反応して、前記制御モジュールをして前記データソースに動作を開始させるための選択された動作を実行できるようにするステップを含むことを特徴とする、請求項４６１記載の方法。
【請求項４６５】
当該デバイスがデータソースとしても動作しており、前記制御モジュールの制御のもとでフレームを生成するもとになる情報を取得して該フレームを生成するフレーム生成ステップを含むことを特徴とする、請求項４６４記載の方法。
【請求項４６６】
前記フレームを少なくとも一つの別のデバイスに送信するステップをさらに含むことを特徴とする、請求項４６５記載の方法。
【請求項４６７】
前記デバイスがデータソースではなく、当該方法が前記制御モジュールをして前記データソースが動作できるようにするコマンドの送信を可能にすることができるようにするステップを含むことを特徴とする、請求項４６５記載の方法。
【請求項４６８】
各フレームがトラックに関連付けられており、各トラックが少なくとも一つのフレームを含んでおり、当該方法が、現在処理されているトラックの処理を打ち切らせる制御情報の受領に反応して、前記制御モジュールをして、前記データソースが前記トラックの処理の打ち切りを可能にする再同期コマンドを前記トラックに関連付けられた一連のフレーム中に挿入できるようにするコマンドの送信を可能にすることができるようにするステップを含むことを特徴とする、請求項４６７記載の方法。
【請求項４６９】
各フレームがトラックに関連付けられており、各トラックが少なくとも一つのフレームを含んでおり、当該方法が、少なくとも一部分は受け取られているが処理は開始されていないトラックの処理を有効にする制御情報の受領に反応して、前記制御モジュールをして、前記データソースが前記トラックの処理を無効にする再同期コマンドを前記コマンド系列中に挿入できるようにするコマンドの送信を可能にすることができるようにするステップを含むことを特徴とする、請求項４６７記載の方法。
【請求項４７０】
前記制御モジュールをして、前記ユーザーインターフェースモジュールインターフェースモジュールが前記ユーザーインターフェースモジュールに状態情報を送信できるようにすることができるようにするステップをさらに含むことを特徴とする、請求項４５１記載の方法。
【請求項４７１】
前記状態情報が少なくとも一つのフレームの処理状態を含むことを特徴とする、請求項４７０記載の方法。
【請求項４７２】
請求項４６９記載の方法であって、メンバーデバイスが：
Ａ．データソースデバイスから、配送されるべきフレームに関する情報のためのソース、データソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を受け取る移行情報受領ステップと、
Ｂ．前記移行情報の受領後に、
ｉ．当該同期グループに前記一連のフレームを配送し、各フレームはデータソースデバイスとして動作しているデバイスから受け取るタイミング情報に基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は当該同期グループをなす諸デバイスがそれぞれのフレームを実行すべき時刻であり、
ｉｉ．自らが以後はデータソースデバイスとして動作することを当該同期グループのメンバーに通知する、
移行制御ステップ、
とを実行することを特徴とする方法。
【請求項４７３】
配送されるべきフレームに関する前記情報がストリーミング情報のソースであり、前記移行制御ステップが、前記移行情報の受領後、該ストリーミング情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるステップを含むことを特徴とする、請求項４７２記載の方法。
【請求項４７４】
配送されるべきフレームに関する前記情報が前記移行情報において同定されるファイル中にあり、前記移行制御ステップが、前記同定されるファイルから情報を取得し、該情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるステップを含むことを特徴とする、請求項４７２記載の方法。
【請求項４７５】
配送されるべきフレームに関する前記情報が、前記同定されるファイル内に前記移行情報で同定されるオフセットにて始まり、前記移行制御ステップが、前記同定されるオフセットに対応する前記ファイル内の位置からの情報をまとめるステップを含むことを特徴とする、請求項４７４記載の方法。
【請求項４７６】
配送されるべきフレームに関する前記情報が前記移行情報において同定される一連のファイル中にあり、前記移行制御ステップが、該一連のファイルから情報を取得し、該情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けるステップを含むことを特徴とする、請求項４７４記載の方法。
【請求項４７７】
前記メンバーデバイスが、前記メンバーデバイスのクロックレートを前記データソースデバイスのクロックによって維持されているクロックレートの値との関係で調整するステップを含むクロックレート調整ステップを実行できるようにされていることを特徴とする、請求項４４９記載の方法。
【請求項４７８】
前記クロックレート調整ステップが、前記データソースデバイスから受け取ったフレームのそれぞれに関連付けられたタイムスタンプとの関係で前記クロックレートを決定するステップを含んでいることを特徴とする、請求項４７７記載の方法。
【請求項４７９】
それぞれの実行時刻における少なくとも一つの別のデバイスによる実行のために一連のフレームを配送するためのデバイスを動作させる方法であって：
Ａ．前記諸フレームのそれぞれを取得するフレーム取得ステップと、
Ｂ．各フレームが実行されるべき時刻を決定し、前記各フレームをその実行時刻を示すタイムスタンプに関連付けるフレーム実行時刻決定ステップと、
Ｃ．前記一連のフレームを前記少なくとも一つの別のデバイスに送信するフレーム送信ステップと、
Ｄ．所定のイベントに反応して、前記フレーム送信ステップの間に、フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスがそれに送信されたフレームの実行シーケンスを修正できるようにするコマンドを挿入する実行制御コマンド生成ステップ、
とを有することを特徴とする方法。
【請求項４８０】
少なくとも一つのフレームがオーディオデータを含むことを特徴とする、請求項４７９記載の方法。
【請求項４８１】
前記フレーム送信ステップが選択されたマルチキャスト送信手法を利用するステップを含むことを特徴とする、請求項４７９記載の方法。
【請求項４８２】
前記所定のイベントが、オペレーターによって与えられる入力目印を受け取るステップを含むことを特徴とする、請求項４７９記載の方法。
【請求項４８３】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記フレーム送信ステップの間に、一連のフレーム中に、前記少なくとも一つの別のデバイスが少なくとも一つのフレームの実行を前記所定のイベントが生起した時刻に関係して制御できるようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項４８２記載の方法。
【請求項４８４】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記フレーム送信ステップの間に、一連のフレーム中に、前記少なくとも一つの別のデバイスが現在実行中のフレームの実行を打ち切るか、および／または前記所定のイベントより後に実行されることになっている少なくとも一つのフレームを実行しないようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項４８３記載の方法。
【請求項４８５】
前記の一連のフレームが一連のフレームシーケンスを含んでおり、各フレームシーケンスが前記一連のフレームのサブセットを含んでおり、前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、
（ｉ）前記フレーム送信ステップの間に、前記一連のフレーム中に、前記少なくとも一つの別のデバイスが現在実行中のフレームの実行を打ち切るか、および／または現在実行中のフレームを含むフレームシーケンス中に後続のフレームがあれば少なくともその一つを実行しないようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記フレーム実行時刻決定ステップの間に、現在実行されているフレームシーケンスの後続のフレームシーケンスのフレームに関連付けられたタイムスタンプが現在実行されているフレームのフレームシーケンスからのフレームの前記の打ち切りおよび／または不実行を反映するようになり、
（ｂ）前記フレーム送信ステップの間に、前記少なくとも一つの別のデバイスに前記後続のフレームシーケンスのフレームを送信する、
ことを可能にする、
ステップを含むことを特徴とする、請求項４８２記載の方法。
【請求項４８６】
前記フレーム送信ステップが、前記少なくとも一つの別のデバイスに、前記打ち切られたおよび／または不実行とされたフレームの後続のフレームシーケンスのフレームをいっさい実行しないようにさせるコマンドを前記フレーム系列中に挿入するステップを含むことを特徴とする、請求項４８５記載の方法。
【請求項４８７】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記フレーム送信ステップの間に、前記一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して該フレームの実行を制御できるようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項４７９記載の方法。
【請求項４８８】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記フレーム送信ステップの間に、前記一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して該フレームの実行を取り消せるようにするコマンドを挿入するようステップを含むことを特徴とする、請求項４８７記載の方法。
【請求項４８９】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記フレーム送信ステップの間に、前記一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して以前に送信されたフレームの実行を取り消せるようにするコマンドを挿入できるようにするステップを含むことを特徴とする、請求項４８７記載の方法。
【請求項４９０】
前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、前記フレーム送信ステップの間に、前記一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して以前に送信されたがまだ実行は開始されていないフレームの実行を取り消せるようにするコマンドを挿入するステップを含むことを特徴とする、請求項４８９記載の方法。
【請求項４９１】
前記の一連のフレームが一連のフレームシーケンスを含んでおり、各フレームシーケンスが前記一連のフレームのサブセットを含んでおり、前記実行制御コマンド生成ステップが、前記所定のイベントに反応して、
（ｉ）前記フレーム送信ステップの間に、前記一連のフレーム中に、前記少なくとも一つの別のデバイスがまだ実行が開始されていないフレームシーケンスの実行を取り消せるようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記フレーム実行時刻決定ステップの間に、実行が取り消されたフレームシーケンスの後続のフレームシーケンスのフレームに関連付けられたタイムスタンプが前記の取り消しを反映するようになり、
（ｂ）前記フレーム送信ステップの間に、前記少なくとも一つの別のデバイスに前記後続のフレームシーケンスのフレームを送信する、
ことを可能にする、
ステップを含むことを特徴とする、請求項４８８記載の方法。
【請求項４９２】
それぞれの実行時刻における少なくとも一つの別のデバイスによる実行のために一連のフレームを配送するためのデバイスを動作させる方法であって：
Ａ．前記諸フレームのそれぞれを取得するフレーム取得ステップと、
Ｂ．各フレームが実行されるべき時刻を決定し、前記各フレームをその実行時刻を示すタイムスタンプに関連付け、かつ少なくとも一つのフレームに関連付けられた形で、当該データソースデバイスによって維持されるクロックによって現在示される時刻よりも遅いフレーム実行時刻を示すタイムスタンプを与えるステップを含むフレーム実行時刻決定ステップと、
Ｃ．前記一連のフレームを前記少なくとも一つの別のデバイスに送信するフレーム送信ステップ、
とを有することを特徴とする方法。
【請求項４９３】
少なくとも一つのフレームがオーディオデータを含むことを特徴とする、請求項４９２記載の方法。
【請求項４９４】
前記フレーム実行時刻決定ステップが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該デバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻に少なくとも一つの別のデバイスによって実行されうるようにするのに十分となるよう選択するステップを含むことを特徴とする、請求項４９２記載の方法。
【請求項４９５】
前記フレーム実行時刻決定ステップが、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該デバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻における他の諸デバイスによる実行のためにネットワークを通じて前記他の諸デバイスに配送されうるようにするのに十分となるよう選択するステップを含むことを特徴とする、請求項４９４記載の方法。
【請求項４９６】
フレーム取得ステップが前記フレームに関連付けられた情報を少なくとも二種類の情報ソースから取得するステップを含み、前記フレーム実行時刻決定ステップが各フレームについて前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を選択するのを、それぞれのフレームに関連付けられた情報ソースの種類に基づいて行うステップを含むことを特徴とする、請求項４９２記載の方法。
【請求項４９７】
少なくとも一つの別のデバイスによる実行のために一連のフレームを配送するためのデバイスを動作させるための方法であって：
Ａ．前記諸フレームのそれぞれを取得するよう構成されているフレーム取得モジュールと、
Ｂ．各フレームが実行されるべき時刻を決定し、前記各フレームをその実行時刻を示すタイムスタンプに関連付けるよう構成されているフレーム実行時刻決定モジュールと、
Ｃ．前記一連のフレームを前記少なくとも一つの別のデバイスに送信するよう構成されているフレーム送信モジュールと、
Ｄ．所定のイベントに反応して、配送されるべきフレームに関する情報のためのソース、データソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を別のデバイスに提供するよう構成されているデータソースデバイス移行制御モジュール、
とを有することを特徴とする方法。
【請求項４９８】
少なくとも一つのフレームがオーディオデータを含むことを特徴とする、請求項４９７記載の方法。
【請求項４９９】
コンピュータとともに使用し、デバイスをして、データソースによって与えられるデータの一連のフレームを該データソースによって維持されるクロックに基づいて該データソースによって指定される時刻に実行できるようにするためのコンピュータプログラムプロダクトであって：
Ａ．各フレームは前記データソースによって維持されるクロックによって示される時刻に基づく時刻値を示すタイムスタンプに関連付けられており、前記時刻は当該デバイスがそれぞれのフレームを処理すべき時刻であるとして、前記コンピュータをして前記一連のフレームを受け取れるようにするよう構成されたインターフェースモジュールと、
Ｂ．前記コンピュータをして、前記データソースから該データソースのクロックによって示される現在時刻の値を取得できるようにするよう構成されている現在時刻取得モジュールと、
Ｃ．前記コンピュータをして、各フレームに関連付けられたタイムスタンプならびに、前記現在時刻取得モジュールによって取得された現在時刻の値と当該デバイスによって維持されているクロックによって示される現在時刻の値との間のずれを表す時間差の値から、そのフレームが処理されるべき、当該デバイス各自のクロックに基づく時刻を決定できるようにするよう構成されている処理時刻決定モジュールと、
Ｄ．前記コンピュータをして、前記処理時刻決定モジュールによって決定される時刻に各フレームを処理できるようにするよう構成されているフレーム処理モジュール、
とがエンコードされたコンピュータ可読媒体を有することを特徴とするコンピュータプログラムプロダクト。
【請求項５００】
少なくとも一つのフレームがオーディオデータを有し、当該コンピュータが前記フレームを処理するときに当該フレームによって表される音を表す信号を生成することを特徴とする、請求項４９９記載のコンピュータプログラムプロダクト。
【請求項５０１】
前記コンピュータをして、インターフェースモジュールによって受領されたコマンドの実行を制御できるようにするための制御モジュールをさらに含むことを特徴とする、請求項４９９記載のコンピュータプログラムプロダクト。
【請求項５０２】
前記コンピュータをして、前記インターフェースモジュールが受け取ったフレームを処理されるべき時までバッファリングしておけるようにするよう構成されているバッファをさらに有し、前記フレーム処理モジュールが前記コンピュータをしてそのバッファリングされたフレームを前記処理時刻決定モジュールによって決定される時刻に処理できるようにするよう構成されていることを特徴とする、請求項５０１記載のコンピュータプログラムプロダクト。
【請求項５０３】
各フレームがトラックに関連付けられており、各トラックが少なくとも一つのフレームを含んでおり、前記インターフェースモジュールが当該コンピュータをしてトラックの処理を制御するための再生制御コマンドを受け取れるようにするようさらに構成されており、前記制御モジュールが当該コンピュータをしてトラック処理を制御する少なくとも一つの再生制御コマンドを実行できるようにするよう構成されていることを特徴とする、請求項５０２記載のコンピュータプログラムプロダクト。
【請求項５０４】
少なくとも一つの種類の再生制御コマンドが前記制御モジュールをして、それがさらに前記フレーム処理モジュールをして、現在再生されているトラックの再生を打ち切らせることを特徴とする、請求項５０３記載のコンピュータプログラムプロダクト。
【請求項５０５】
前記再生制御コマンドが前記制御モジュールをして、現在再生されているフレームの後続のフレームをもってトラックの再生を打ち切らせることを特徴とする、請求項５０４記載のコンピュータプログラムプロダクト。
【請求項５０６】
前記再生制御コマンドが前記制御モジュールをして、少なくとも一つのフレームが以前に配送されたがまだ再生は始まっていないようなトラックの再生を取り消せるようにすることを特徴とする、請求項５０３記載のコンピュータプログラムプロダクト。
【請求項５０７】
前記制御モジュールが、当該コンピュータをして、前記フレーム処理モジュールをして、後続のトラックに対応する少なくとも一つのフレームの処理を前記処理時刻決定モジュールによって決定された時刻に再開できるようにすることができるようにするよう構成されていることを特徴とする、請求項５０３記載のコンピュータプログラムプロダクト。
【請求項５０８】
前記制御モジュールが、前記コンピュータをして、ある同期グループのメンバーになるというコマンドの受領に反応して、前記インターフェースモジュールをして前記フレーム処理モジュールによる実行のためのフレームを受け取れるようにさせられるようにするよう構成されていることを特徴とする、請求項５０１記載のコンピュータプログラムプロダクト。
【請求項５０９】
前記制御モジュールが、前記コンピュータをして、ある同期グループのメンバーになるというコマンドの受領に反応して、前記インターフェースモジュールをして、選択されたマルチキャスト送信手法を使って現在送信されているフレームを受け取り、さらに、選択されたユニキャスト送信手法を使って少なくとも一つの以前に配送済みのフレームを取得できるようにさせられるようにするよう構成されていることを特徴とする、請求項５０８記載のコンピュータプログラムプロダクト。
【請求項５１０】
前記制御モジュールが、前記コンピュータをして、ある同期グループから離脱するというコマンドの受領に反応して、前記インターフェースモジュールをしてフレームの受け取りをできなくし、前記フレーム処理モジュールをして以前に受け取ったフレームでまだ処理されていないフレームの処理をできなくさせられるようにするよう構成されていることを特徴とする、請求項５０１記載のコンピュータプログラムプロダクト。
【請求項５１１】
さらにユーザーインターフェースモジュールから制御情報を受け取るよう構成されているユーザーインターフェースモジュールインターフェースモジュールを有しており、前記制御モジュールが前記コンピュータをして前記制御情報に反応して選択された動作が実行されうるようにさせられるようにするよう構成されていることを特徴とする、請求項５０１記載のコンピュータプログラムプロダクト。
【請求項５１２】
別のデバイスが当該デバイスの同期グループのメンバーになれるようにするための制御情報に反応して、前記制御モジュールが前記インターフェースモジュールをして前記別のデバイスに、該別のデバイスが当該同期グループのメンバーになれるようにするコマンドを送信させることを特徴とする、請求項５１１記載のコンピュータプログラムプロダクト。
【請求項５１３】
当該デバイスの同期グループのメンバーである別のデバイスが当該同期グループから離脱できるようにするための制御情報に反応して、前記制御モジュールが前記インターフェースモジュールをして前記別のデバイスに、該別のデバイスが当該同期グループから離脱できるようにするコマンドを送信させることを特徴とする、請求項５１１記載のコンピュータプログラムプロダクト。
【請求項５１４】
前記データソースをして動作を開始できるようにする制御情報に反応して、前記制御モジュールが前記データソースに動作を開始させるための選択された動作を実行することを特徴とする、請求項５１１記載のコンピュータプログラムプロダクト。
【請求項５１５】
当該デバイスがデータソースとしても動作しており、当該デバイスが前記コンピュータをして、前記制御モジュールの制御のもとでフレームを生成するもとになる情報を取得して該フレームを生成することができるようにするよう構成されたフレーム生成モジュールを含むことを特徴とする、請求項５１４記載のコンピュータプログラムプロダクト。
【請求項５１６】
前記インターフェースモジュールがさらに、前記コンピュータをして、前記フレームを少なくとも一つの別のデバイスに送信できるようにするよう構成されていることを特徴とする、請求項５１５記載のコンピュータプログラムプロダクト。
【請求項５１７】
前記デバイスがデータソースではなく、前記制御モジュールが前記コンピュータをして、前記インターフェースモジュールをして前記データソースが動作できるようにするコマンドを送信できるようにさせられるようにするよう構成されていることを特徴とする、請求項５１５記載のコンピュータプログラムプロダクト。
【請求項５１８】
各フレームがトラックに関連付けられており、各トラックが少なくとも一つのフレームを含んでおり、現在処理されているトラックの処理を打ち切らせる制御情報の受領に反応して、前記制御モジュールが前記コンピュータをして、前記インターフェースモジュールをして、前記データソースが前記トラックの実行の打ち切りを可能にする再同期コマンドを前記トラックに関連付けられた一連のフレーム中に挿入できるようにするコマンドを送信させられるようにするよう構成されていることを特徴とする、請求項５１７記載のコンピュータプログラムプロダクト。
【請求項５１９】
各フレームがトラックに関連付けられており、各トラックが少なくとも一つのフレームを含んでおり、少なくとも一部分は受け取られているが処理は始まっていないトラックの処理を有効にする制御情報の受領に反応して、前記制御モジュールが前記コンピュータをして、前記インターフェースモジュールをして、前記データソースが前記トラックの実行を無効にする再同期コマンドを前記コマンド系列中に挿入できるようにするコマンドを送信させられるようにするよう構成されていることを特徴とする、請求項５１７記載のコンピュータプログラムプロダクト。
【請求項５２０】
前記制御モジュールが、前記コンピュータをして、前記ユーザーインターフェースモジュールインターフェースモジュールが前記ユーザーインターフェースモジュールに状態情報を送信できるようにさせられるようにするよう構成されていることを特徴とする、請求項５１７記載のコンピュータプログラムプロダクト。
【請求項５２１】
前記状態情報が少なくとも一つのフレームの処理状態を含むことを特徴とする、請求項５２０記載のコンピュータプログラムプロダクト。
【請求項５２２】
請求項４９９記載のコンピュータプログラムプロダクトであって、さらに：
Ａ．前記コンピュータをして、データソースデバイスから、配送されるべきフレームに関する情報のためのソース、データソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を受け取れるようにするよう構成されている移行情報受領モジュールと、
Ｂ．前記コンピュータをして、前記移行情報の受領後に、
ｉ．当該同期グループに前記一連のフレームを配送し、各フレームはデータソースデバイスとして動作しているデバイスから受け取るタイミング情報に基づく時刻を示すタイムスタンプに関連付けられており、前記時刻は当該同期グループをなす諸デバイスがそれぞれのフレームを実行すべき時刻であり、
ｉｉ．自らが以後はデータソースデバイスとして動作することを当該同期グループのメンバーに通知する、
ことができるようにするよう構成されている移行制御モジュール、
とを含むことを特徴とするコンピュータプログラムプロダクト。
【請求項５２３】
配送されるべきフレームに関する前記情報がストリーミング情報のソースであり、前記移行制御モジュールが、前記コンピュータをして、前記移行情報の受領後、該ストリーミング情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けることができるようにするよう構成されていることを特徴とする、請求項５２２記載のコンピュータプログラムプロダクト。
【請求項５２４】
配送されるべきフレームに関する前記情報が前記移行情報において同定されるファイル中にあり、前記移行制御モジュールが、前記コンピュータをして、前記同定されるファイルから情報を取得し、該情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けることができるようにするよう構成されていることを特徴とする、請求項５２２記載のコンピュータプログラムプロダクト。
【請求項５２５】
配送されるべきフレームに関する前記情報が、前記同定されるファイル内に前記移行情報で同定されるオフセットにて始まり、前記移行制御モジュールが、前記コンピュータをして、前記同定されるオフセットに対応する前記ファイル内の位置からの情報をまとめることができるようにするよう構成されていることを特徴とする、請求項５２４記載のコンピュータプログラムプロダクト。
【請求項５２６】
配送されるべきフレームに関する前記情報が前記移行情報において同定される一連のファイル中にあり、前記移行制御モジュールが、前記コンピュータをして、該一連のファイルから情報を取得し、該情報をフレームにまとめ、各フレームを前記タイムスタンプに関連付けることができるようにするよう構成されていることを特徴とする、請求項５２４記載のコンピュータプログラムプロダクト。
【請求項５２７】
前記コンピュータをして、前記メンバーデバイスのクロックレートを前記データソースデバイスのクロックによって維持されているクロックレートの値との関係で調整することができるようにするよう構成されているクロックレート調整モジュールを含むことを特徴とする、請求項４９９記載のコンピュータプログラムプロダクト。
【請求項５２８】
前記クロックレート調整モジュールが、前記コンピュータをして、前記クロックレートを前記データソースデバイスから受け取るフレームのそれぞれに関連付けられたタイムスタンプとの関係で調整することができるようにするよう構成されていることを特徴とする、請求項５２７記載のコンピュータプログラムプロダクト。
【請求項５２９】
コンピュータとともに使用し、それぞれの実行時刻における少なくとも一つの別のデバイスによる実行のために一連のフレームを配送するためのデータソースデバイスを提供するためのコンピュータプログラムプロダクトであって：
Ａ．前記コンピュータをして、前記諸フレームのそれぞれを取得できるようにするよう構成されているフレーム取得モジュールと、
Ｂ．前記コンピュータをして、各フレームが実行されるべき時刻を決定し、前記各フレームをその実行時刻を示すタイムスタンプに関連付けることができるようにするよう構成されているフレーム実行時刻決定モジュールと、
Ｃ．前記コンピュータをして、前記一連のフレームを前記少なくとも一つの別のデバイスに送信することができるようにするよう構成されているフレーム送信モジュールと、
Ｄ．前記コンピュータをして、所定のイベントに反応して、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスがそれに送信されたフレームの実行シーケンスを修正できるようにするコマンドを挿入できるようにすることができるようにするよう構成されている実行制御コマンド生成モジュール、
とがエンコードされたコンピュータ可読媒体を有することを特徴とするコンピュータプログラムプロダクト。
【請求項５３０】
少なくとも一つのフレームがオーディオデータを含むことを特徴とする、請求項５２９記載のコンピュータプログラムプロダクト。
【請求項５３１】
前記フレーム送信モジュールが前記コンピュータをして、選択されたマルチキャスト送信手法を利用できるようにするよう構成されていることを特徴とする、請求項５２９記載のコンピュータプログラムプロダクト。
【請求項５３２】
前記所定のイベントが、オペレーターによって与えられる入力目印を有することを特徴とする、請求項５２９記載のコンピュータプログラムプロダクト。
【請求項５３３】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが少なくとも一つのフレームの実行を前記所定のイベントが生起した時刻に関係して制御できるようにするコマンドを挿入できるようにすることができるようにするよう構成されていることを特徴とする、請求項５２９記載のコンピュータプログラムプロダクト。
【請求項５３４】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが現在実行中のフレームの実行を打ち切るか、および／または前記所定のイベントより後に実行されることになっている少なくとも一つのフレームを実行しないようにするコマンドを挿入できるようにすることができるようにするよう構成されていることを特徴とする、請求項５３３記載のコンピュータプログラムプロダクト。
【請求項５３５】
前記の一連のフレームが一連のフレームシーケンスを含んでおり、各フレームシーケンスが前記一連のフレームのサブセットを含んでおり、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記所定のイベントに反応して、
（ｉ）前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが現在実行中のフレームの実行を打ち切るか、および／または現在実行中のフレームを含むフレームシーケンス中に後続のフレームがあれば少なくともその一つを実行しないようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記フレーム実行時刻決定モジュールをして、現在実行されているフレームシーケンスの後続のフレームシーケンスのフレームに関連付けられたタイムスタンプが現在実行されているフレームのフレームシーケンスからのフレームの前記の打ち切りおよび／または不実行を反映するようにさせ、
（ｂ）前記フレーム送信モジュールをして、前記少なくとも一つの別のデバイスに前記後続のフレームシーケンスのフレームを送信させる、
ことができるようにするよう構成されていることを特徴とする、請求項５３３記載のコンピュータプログラムプロダクト。
【請求項５３６】
前記フレーム送信モジュールが、前記コンピュータをして、前記少なくとも一つの別のデバイスに、前記打ち切られたおよび／または不実行とされたフレームの後続のフレームシーケンスのフレームをいっさい実行しないようにさせるコマンドを挿入することができるようにするよう構成されていることを特徴とする、請求項５３５記載のコンピュータプログラムプロダクト。
【請求項５３７】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して該フレームの実行を制御できるようにするコマンドを挿入できるようにすることができるようにするよう構成されていることを特徴とする、請求項５２９記載のコンピュータプログラムプロダクト。
【請求項５３８】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して該フレームの実行を取り消せるようにするコマンドを挿入できるようにすることができるようにするよう構成されていることを特徴とする、請求項５３７記載のコンピュータプログラムプロダクト。
【請求項５３９】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して以前に送信されたフレームの実行を取り消せるようにするコマンドを挿入できるようにすることができるようにするよう構成されていることを特徴とする、請求項５３７記載のコンピュータプログラムプロダクト。
【請求項５４０】
前記所定のイベントに反応して、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスが前記一連のフレーム中でのフレームの位置に関係して以前に送信されたがまだ実行は開始されていないフレームの実行を取り消せるようにするコマンドを挿入できるようにすることができるようにするよう構成されていることを特徴とする、請求項５３９記載のコンピュータプログラムプロダクト。
【請求項５４１】
前記の一連のフレームが一連のフレームシーケンスを含んでおり、各フレームシーケンスが前記一連のフレームのサブセットを含んでおり、前記実行制御コマンド生成モジュールが、前記コンピュータをして、前記所定のイベントに反応して、
（ｉ）前記フレーム送信モジュールをして、該フレーム送信モジュールによって送信される一連のフレーム中に、前記少なくとも一つの別のデバイスがまだ実行が開始されていないフレームシーケンスの実行を取り消せるようにするコマンドを挿入できるようにし、
（ｉｉ）
（ａ）前記フレーム実行時刻決定モジュールをして、実行が取り消されたフレームシーケンスの後続のフレームシーケンスのフレームに関連付けられたタイムスタンプが前記の取り消しを反映するようにさせ、
（ｂ）前記フレーム送信モジュールをして、前記少なくとも一つの別のデバイスに前記後続のフレームシーケンスのフレームを送信させる、
ことができるようにするよう構成されていることを特徴とする、請求項５３７記載のコンピュータプログラムプロダクト。
【請求項５４２】
コンピュータとともに使用し、それぞれの実行時刻における少なくとも一つの別のデバイスによる実行のために一連のフレームを配送するためのデータソースデバイスを提供するためのコンピュータプログラムプロダクトであって：
Ａ．前記コンピュータをして、前記諸フレームのそれぞれを取得することができるようにするよう構成されているフレーム取得モジュールと、
Ｂ．前記コンピュータをして、各フレームが実行されるべき時刻を決定し、前記各フレームをその実行時刻を示すタイムスタンプに関連付けるよう構成されており、かつ少なくとも一つのフレームに関連付けられた形で、当該データソースデバイスによって維持されるクロックによって現在示される時刻よりも遅いフレーム実行時刻を示すタイムスタンプを与えることができるようにするよう構成されているフレーム実行時刻決定モジュールと、
Ｃ．前記コンピュータをして、前記一連のフレームを前記少なくとも一つの別のデバイスに送信することができるようにするよう構成されているフレーム送信モジュール、
とがエンコードされたコンピュータ可読媒体を有することを特徴とするコンピュータプログラムプロダクト。
【請求項５４３】
前記フレーム実行時刻決定モジュールが、前記コンピュータをして、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該データソースデバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻にメンバーデバイスによって実行されうるようにするのに十分となるよう選択することができるようにするよう構成されていることを特徴とする、請求項５４２記載のコンピュータプログラムプロダクト。
【請求項５４４】
前記フレーム実行時刻決定モジュールが、前記コンピュータをして、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該データソースデバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻における実行のためにメンバーデバイスに配送されうるようにするのに十分となるよう選択することができるようにするよう構成されていることを特徴とする、請求項５４２記載のコンピュータプログラムプロダクト。
【請求項５４５】
前記フレーム実行時刻決定モジュールが、前記コンピュータをして、前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を、当該データソースデバイスによって配送された前記少なくとも一つのフレームが前記タイムスタンプによって示される時刻における実行のためにメンバーデバイスに配送されうるようにするのに十分となるよう選択することができるようにするよう構成されていることを特徴とする、請求項５４４記載のコンピュータプログラムプロダクト。
【請求項５４６】
フレーム取得モジュールが前記コンピュータをして、前記フレームに関連付けられた情報を少なくとも二種類の情報ソースから取得できるようにするよう構成されており、前記フレーム実行時刻決定モジュールが前記コンピュータをして、各フレームについて前記タイムスタンプによって示される時刻と前記現在の時刻との間の遅延間隔を選択するのを、それぞれのフレームに関連付けられた情報ソースの種類に基づいて行うことができるようにするよう構成されていることを特徴とする、請求項５４２記載のコンピュータプログラムプロダクト。
【請求項５４７】
コンピュータとともに使用し、少なくとも一つの別のデバイスによる実行のために一連のフレームを配送するためのデータソースデバイスを提供するためのコンピュータプログラムプロダクトであって：
Ａ．前記コンピュータをして、前記諸フレームのそれぞれを取得できるようにするよう構成されているフレーム取得モジュールと、
Ｂ．前記コンピュータをして、各フレームが実行されるべき時刻を決定し、前記各フレームをその実行時刻を示すタイムスタンプに関連付けることができるようにするよう構成されているフレーム実行時刻決定モジュールと、
Ｃ．前記コンピュータをして、前記一連のフレームを前記少なくとも一つの別のデバイスに送信することができるようにするよう構成されているフレーム送信モジュールと、
Ｄ．前記コンピュータをして、所定のイベントに反応して、配送されるべきフレームに関する情報のためのソース、データソースデバイスによって維持されているクロックに基づくタイミング情報および当該同期グループのメンバーデバイスの識別情報を含む移行情報を別のデバイスに提供することができるようにするよう構成されているデータソースデバイス移行制御モジュール、
とがエンコードされたコンピュータ可読媒体を有することを特徴とするコンピュータプログラムプロダクト。
【請求項５４８】
前記データがオーディオデータであることを特徴とする、請求項５４７記載のコンピュータプログラムプロダクト。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般にはデジタルデータプロセシングデバイスの分野に、より詳細には独立してクロックされる複数のデジタルデータプロセシングデバイスの間で動作を同期させるためのシステムおよび方法に関する。本発明は、複数のデバイスの間で、共通のソースによって与えられる情報に基づいて動作を同期させるためのシステムにおいて具現される。本発明のある実施形態は、共通の情報ソースまたはチャネルからオーディオ情報を受け取る二つ以上のオーディオ再生デバイスの間などでのオーディオ再生の同期を可能にする。
【０００２】
より一般には、本発明は、いくつかの出力生成器によって生成される出力を同期させる構成装置の分野に関する。出力としては、オーディオ出力、ビデオ出力、オーディオおよびビデオの組み合わせならびに当業者が認識するであろう共通チャネルによって与えられるその他の種類の出力が含まれうる。一般に、本発明は独立してクロックされるデバイスの間での同期が望ましいいかなる種類の情報との関連においても用途を見出すものである。
【背景技術】
【０００３】
独立してクロックされる複数のデジタルデータプロセシングデバイスの間で、たとえば共通ソースによって与えられる情報に基づいて動作の同期を維持することが望ましい状況はいくつもある。たとえば、一つのオーディオ情報ソースがいくつかのオーディオ再生デバイスに再生のためにデジタル形式でのオーディオ情報を配送できるシステムが開発されつつある。オーディオ再生デバイスはそのデジタル情報を受け取り、それを再生のためにアナログ形式に変換する。オーディオ再生デバイスは同一の室内に位置していてもよいし、あるいは家やアパートといった住居内の異なる部屋に、オフィスビルの異なるオフィスに、など分散していてもよい。たとえば、住居内に設置されるシステムでは、一つのオーディオ再生デバイスがリビングに位置していて、別のオーディオ再生デバイスがキッチンに位置していて、さらに別のオーディオ再生デバイスが家のさまざまな寝室に位置しているということがありうる。そのような配置においては、さまざまなオーディオ再生デバイスに配送されるオーディオ情報は同じオーディオ番組に関係していてもよいし、あるいは前記情報は異なるオーディオ番組に関係していてもよい。オーディオ情報ソースが同一のオーディオ番組に関係するオーディオ情報を二つ以上のオーディオ再生デバイスに同時に提供する場合、該オーディオ再生デバイスは一般に同一の番組を同時的に再生する。たとえば、前記オーディオ情報ソースが家のリビングおよびキッチンに位置するオーディオ再生デバイスに同時にオーディオ情報を提供する場合、一般には同一の番組を同時的に再生する。
【０００４】
生起しうる一つの問題は、二つ以上のオーディオ再生デバイスが同一のオーディオ番組を同時的に再生しようと試みている場合にそれを同期的に行うことを保証することである。オーディオ再生デバイスの開始時刻および／または再生速度のわずかなずれでも聞き手にとってはエコー効果として知覚されることがあり、大きなずれになると非常にわずらわしいものになりうる。ずれが生じうる理由は、ネットワーク上でのオーディオ情報転送の際の遅延を含めていろいろある。そのような遅延がさまざまなオーディオ再生デバイスの間で異なりうる理由もいろいろあり、ネットワークに接続されている位置、メッセージトラフィックその他の理由などが含まれるが、当業者には明らかであろう。
【０００５】
次のように別の問題を生ずる事情もある。オーディオ再生デバイスがデジタルオーディオ情報をデジタルからアナログ形式に変換するとき、タイミング情報を提供するクロックを使って行う。一般に、現在開発されているオーディオ再生デバイスは独立したクロックを有しており、精密に同一のレートのクロックでなければさまざまなデバイスによって提供されるオーディオ再生は同期から外れうる。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、独立したクロッキングデバイスによって制御されているいくつかのデジタルデータプロセシングデバイスの間で動作を同期させるための改良されたシステムおよび方法を提供する。一般に、本発明は、ネットワークに接続されているデバイスの間で同期が望ましいいかなる種類の情報との関連においても用途を見出すものである。本発明は、同期して再生されるべきデジタルオーディオ情報を受け取る複数のオーディオ再生デバイスとの関連で記述されるが、本発明が、独立したクロッキングデバイスをもつデバイスの間での協調が用途を見出すいかなる種類の情報との関連でも有用性を見出すことができることは認識されることであろう。
【課題を解決するための手段】
【０００７】
簡潔にまとめると、本発明は、ある側面では、独立したクロッキング装置をもつ複数のデバイスの間で動作の同期を維持するためのシステムを提供する。前記システムは、同期グループにタスクを配送するタスク配送デバイスを含む。同期グループとは、前記タスク配送デバイスによって配送されたタスクを同期して実行するべき複数のデバイスを含むものである。タスク配送デバイスは各タスクをネットワークを通じて同期グループのメンバーに配送する。各タスクはタスク配送デバイスによって維持されるクロックに基づく時刻を示すタイムスタンプと関連付けられている。その時刻にその同期グループのメンバーが当該タスクを実行するのである。同期グループの各メンバーは、タスク配送デバイスからそのクロックによって示される現在時刻の標示を定期的に取得し、タスク配送デバイスのクロックと各自のクロックとの間の時間差を決定し、それから各自のクロックに基づいて前記タイムスタンプが各自がタスクを実行すべきであることを示す時刻を決定する。
【０００８】
ある実施形態では、配送されるタスクは、当該同期グループをなす全デバイスによって同期的に再生されるべきオーディオトラックのためのオーディオ情報を含む。そのオーディオトラックは一連のフレームに分割され、各フレームは、オーディオ情報チャネルデバイスによって維持されるクロックに基づいた、同期グループのメンバーが各フレームを再生すべき時刻を示すタイムスタンプに関連付けられている。このオーディオ情報チャネルデバイスがこの実施形態では前記タスク配送デバイスの役を果たす。同期グループの各メンバーは、非常に精密なプロトコルを使って、オーディオ情報チャネルデバイスによって示される時刻を定期的に取得し、各自のローカルクロックと前記オーディオ情報チャネルデバイスのクロックとによって示される時刻の間のずれを決定する。各メンバーはそのずれと前記タイムスタンプによって示される時刻とを使って、各フレームを再生すべき、各自のローカルクロックに基づいた時刻を決定する。同期グループのメンバーはこれを全フレームについて行い、従って該フレームを同期して再生することができる。
【０００９】
本発明は付属の請求項において具体性をもって明示される。本発明の上記の、そしてさらなる利点は、以下の記述を付属の図面との関連で参照することによってよりよく理解されうる。
【発明を実施するための最良の形態】
【００１０】
図１は本発明に基づいて構築された例示的なネットワークオーディオシステム１０を描いている。図１を参照すると、ネットワークオーディオシステム１０は、ローカルネットワークによって相互接続された複数のゾーンプレーヤー１１（１）から１１（Ｎ）を含んでいる（一般に参照符号１１（ｎ）によって同定される）。これらはすべて、一般に参照符号１３によって同定される一つまたは複数のユーザーインターフェースモジュールの制御のもとで動作する。一つまたは複数のゾーンプレーヤー１１（ｎ）はまた、ここでは一般に参照符号１４（ｎ）（ｓ）によって同定される一つまたは複数のオーディオ情報ソースおよび／または一般に参照符号１５（ｎ）（ｒ）によって同定される一つまたは複数のオーディオ再生デバイスに接続されていてもよい。参照符号１４（ｎ）（ｓ）の添え字「ｎ」は当該オーディオ情報ソースが接続されているゾーンプレーヤー１１（ｎ）の添え字「ｎ」を表しており、添え字「ｓ」（ｓ＝１，．．．，Ｓｎ）はその「ｎ番目」のゾーンプレーヤー１１（ｎ）に接続された「ｓ番目」のオーディオ情報ソースを表している。よって、たとえばゾーンプレーヤー１１（ｎ）が４つのオーディオ情報ソース１４（ｎ）（１）から１４（ｎ）（４）に接続されているとすると、そのオーディオ情報ソースは一般に参照符号１４（ｎ）（ｓ）によって同定されることができ、Ｓｎ＝４となる。オーディオ情報ソースの数Ｓｎはさまざまなゾーンプレーヤー１１（ｎ）の間で変動がありえ、接続されたオーディオ情報ソースを全くもたないゾーンプレーヤーがあってもよいことは理解されることであろう。同様に、参照符号１５（ｎ）（ｒ）の添え字「ｎ」は当該オーディオ再生デバイスが接続されているゾーンプレーヤー１１（ｎ）の添え字「ｎ」を表しており、添え字「ｒ」（ｒ＝１，．．．，Ｒｎ）はその「ｎ番目」のゾーンプレーヤー１１（ｎ）に接続された「ｒ番目」のオーディオ情報ソースを表している。オーディオ情報ソース１４（ｎ）（ｓ）に加え、ネットワークオーディオシステム１０は、ローカルネットワーク１２に適切なネットワークインターフェースデバイス（別個の要素として図示してはいない）を通じて接続された、一つまたは複数のオーディオ情報ソース１６（１）から１６（Ｍ）を含みうる。さらに、ローカルネットワークは、一つまたは複数のネットワークインターフェースデバイス（これも別個の要素として図示してはいない）を含みうる。該ネットワークインターフェースデバイスは、当該ローカルネットワーク１２を、インターネットのような広域ネットワーク、公衆電話交換網（ＰＳＴＮ）または当業者には明らかであろうその他のネットワークを含む他のネットワークに接続するよう構成されており、そうしたネットワークを通じてオーディオ情報ソースへの接続が確立されうる。
【００１１】
システム１０に付随するゾーンプレーヤー１１（ｎ）は、住居、オフィスビル、ホテル、会議ホール、大講堂もしくは公会堂または当業者には明らかであろうその他の種類の施設等といった施設じゅうに分散していてもよい。たとえば、ゾーンプレーヤー１１（ｎ）ならびにその関連付けられたオーディオ情報ソースおよび／またはオーディオ再生デバイスは住居じゅうに分散しており、一つ、たとえばゾーンプレーヤー１１（１）ならびにその関連付けられたオーディオ情報ソースおよびオーディオ再生デバイスはリビングに位置しており、もう一つがキッチンに位置しており、もう一つがダイニングルームに位置しており、さらに他のものが各寝室に位置していて、それらの部屋において選択的にエンターテインメントを提供することができる。他方、ゾーンプレーヤー１１（ｎ）ならびにその関連付けられたオーディオ情報ソースおよび／またはオーディオ再生デバイスがオフィスビルじゅうに分散している場合には、たとえば各オフィスに一つが備えられて、各オフィスの従業員に選択的にエンターテインメントを提供することができる。同様に、ゾーンプレーヤー１１（ｎ）ならびに関連付けられたオーディオ情報ソースおよび／またはオーディオ再生デバイスがホテルで使われる場合には、各部屋に分散されて客にエンターテインメントを提供することができる。大講堂または公会堂で使われるゾーンプレーヤー１１（ｎ）ならびに関連付けられたオーディオ情報ソースおよび／またはオーディオ再生デバイスについても同様の配置を利用することができる。他の種類の環境におけるその他の配置は当業者には明らかであろう。各場合において、ゾーンプレーヤー１１（ｎ）は、それぞれの位置においてエンターテインメントを選択的に提供するために使用されうる。それについて以下に述べる。
【００１２】
オーディオ情報ソース１４（ｎ）（ｓ）および１６（ｍ）はいろいろある従来式オーディオ情報ソースのうちのいかなる種類のものでもよく、たとえばコンパクトディスク（「ＣＤ」）プレーヤー、ＡＭおよび／またはＦＭラジオ受信機、アナログまたはデジタルテープカセットプレーヤー、アナログレコードターンテーブルなどがある。さらに、オーディオ情報ソース１４（ｎ）（ｓ）および１６（ｍ）は、たとえばパソコン（ＰＣ）、携帯情報端末（ＰＤＡ）または揮発性もしくは不揮発性の形でデジタル情報を保存できる同様のデバイスにローカルに保存されたデジタルオーディオファイルをなしていてよい。上述したように、ローカルネットワーク１２はまた広域ネットワークへのインターフェース（図示せず）を有していて、その広域ネットワークを通じてネットワークオーディオシステム１０がオーディオ情報を取得できるようになっていてもよい。さらに、オーディオ情報ソース１４（ｎ）（ｓ）のうちの一つまたは複数はインターネット、公衆電話交換網（ＰＳＴＮ）またはその他任意のオーディオ情報のソースのような広域ネットワークへのインターフェースを有していてもよい。さらに、オーディオ情報ソース１４（ｎ）（ｓ）および１６（ｍ）のうちの一つまたは複数は、衛星などを通じて届けられるラジオサービスへのインターフェースを有していてもよい。広域ネットワークを通じて取得されるオーディオ情報はたとえば、インターネットラジオ、サーバー上に保存されたデジタルオーディオファイルならびに当業者には認識されるであろうその他の種類のオーディオ情報およびソースといったストリーミングデジタルオーディオ情報を有していてもよい。その他の構成およびその他の種類のオーディオ情報ソースは当業者には明らかであろう。
【００１３】
一般に、オーディオ情報ソース１４（ｎ）（ｓ）および１６（ｍ）は、オーディオ番組と関連付けられたオーディオ情報をゾーンプレーヤーに再生のために提供する。接続されているオーディオ情報ソース１４（ｎ）（ｓ）からオーディオ情報を受け取るゾーンプレーヤーは、再生を行うこともできるし、および／または再生のために他のゾーンプレーヤーに当該オーディオ情報を再生タイミング情報とともにローカルネットワーク１２を通じて転送することもできる。同様に、ゾーンプレーヤーに直接接続されていない各オーディオ情報ソース１６（ｍ）は、オーディオ情報をネットワーク１２を通じて任意のゾーンプレーヤー１１（ｎ）に再生のために送信することができる。さらに、以下で詳細に説明されるように、各ゾーンプレーヤー１１（ｎ）は、接続されているオーディオ情報ソース１４（ｎ）（ｓ）から、あるいはオーディオ情報ソース１６（ｍ）から受け取るオーディオ情報を、他のゾーンプレーヤー１１（ｎ′）、１１（ｎ″）…（ｎはｎ′、ｎ″…に等しくない）のうちの選択されたものに、それらのゾーンプレーヤーによる再生のために送信できる。ゾーンプレーヤーが再生のためのオーディオ情報を送信する前記他のゾーンプレーヤー１１（ｎ′）、１１（ｎ″）…は、ユーザーがユーザーインターフェースモジュール１３を使って選択してもよい。その動作の際、ゾーンプレーヤー１１（ｎ）は前記オーディオ情報を前記選択されたゾーンプレーヤー１１（ｎ′）、１１（ｎ″）…にネットワーク１２を介して送信する。下記でより詳細に述べるように、ゾーンプレーヤー１１（ｎ）、１１（ｎ′）、１１（ｎ″）…は、ゾーンプレーヤー１１（ｎ′）、１１（ｎ″）…がオーディオ番組の再生をゾーンプレーヤー１１（ｎ）による再生と同期させ、ゾーンプレーヤー１１（ｎ）、１１（ｎ′）、１１（ｎ″）…が同じオーディオ番組を同時に提供するような形で動作する。
【００１４】
ユーザーインターフェースモジュール１３を使うユーザーはまた、ゾーンプレーヤーの異なる複数のグループ分けまたは集合を有効にして、異なる複数のオーディオ番組のオーディオ再生を同期的に提供することもできる。たとえば、ユーザーインターフェースモジュール１３を使うユーザーは、ゾーンプレーヤー１１（１）および１１（２）があるオーディオ番組を再生できるようにしうる。そのオーディオ番組のためのオーディオ情報はたとえばあるオーディオ情報ソース１４（１）（１）によって与えられうる。その同じユーザーまたは異なるユーザーが、同じまたは異なるユーザーインターフェースモジュール１３を使って、ゾーンプレーヤー１１（４）および１１（５）が別のオーディオ番組を同時的に再生できるようにしうる。そのオーディオ番組のためのオーディオ情報はオーディオ情報ソース１４（５）（２）のようなある第二のオーディオ情報ソースによって与えられうる。さらに、ユーザーは、ゾーンプレーヤー１１（３）がさらに別のオーディオ番組を同時的に再生できるようにしうる。そのオーディオ番組のためのオーディオ情報はオーディオ情報ソース１６（１）のようなさらに別のオーディオ情報ソースによって与えられうる。さらにもう一つの可能性としては、ユーザーは同時的に、ゾーンプレーヤー１１（１）が、それに接続されているオーディオ情報ソース１４（１）（２）のようなオーディオ情報ソースからのオーディオ情報をゾーンプレーヤー１１（６）のような別のゾーンプレーヤーに再生のために提供できるようにしてもよい。
【００１５】
以下では、「同期グループ」の用語は、同一のオーディオ番組を同期的に再生すべき一つまたは複数のゾーンプレーヤーの集合を指すものとして使われる。たとえば上例では、ゾーンプレーヤー１１（１）および１１（２）は一つの同期グループをなし、ゾーンプレーヤー１１（３）は第二の同期グループをなし、ゾーンプレーヤー１１（４）および１１（５）は第三の同期グループをなし、ゾーンプレーヤー１１（６）はさらに第四の同期グループをなす。ここでは、ゾーンプレーヤー１１（１）および１１（２）が同一のオーディオ番組を再生する間、両者は該オーディオ番組を同期的に再生する。同様に、ゾーンプレーヤー１１（４）および１１（５）が同一のオーディオ番組を再生する間、両者は該オーディオ番組を同期的に再生する。他方、異なるオーディオ番組を再生しているゾーンプレーヤーは無関係なタイミングで再生してもよい。すなわち、たとえばゾーンプレーヤー１１（１）および１１（２）がそのオーディオ番組を再生するタイミングは、ゾーンプレーヤー１１（３）、ゾーンプレーヤー１１（４）および１１（５）ならびにゾーンプレーヤー１１（６）がそのオーディオ番組を再生するタイミングとは何の関係もなくてもよい。「同期グループ」は同一のオーディオ番組を同期的に再生しているゾーンプレーヤーの集合を指すのに使われるので、たとえゾーンプレーヤー１１（１）が前記オーディオ番組のためのオーディオ情報をゾーンプレーヤー１１（６）に提供していたとしても、ゾーンプレーヤー１１（１）はゾーンプレーヤー１１（６）の同期グループの一部にはならないことは理解されるであろう。
【００１６】
ネットワークオーディオシステム１０において、同期グループは固定ではない。ユーザーは同期グループの確立を有効にしたり、修正したりすることを動的に行える。上の例を続けると、ユーザーは、ゾーンプレーヤー１１（１）がオーディオ情報ソース１４（１）（１）によって提供されたオーディオ番組の再生の実施を開始できるようにし、その後ゾーンプレーヤー１１（２）がその同期グループに加われるようにしてもよい。同様に、ユーザーはゾーンプレーヤー１１（５）がオーディオ情報ソース１４（５）（２）によって提供されたオーディオ番組の再生の実施を開始できるようにし、その後ゾーンプレーヤー１１（４）がその同期グループに加われるようにしてもよい。さらに、ユーザーはゾーンプレーヤーが同期グループを離脱して別の同期グループに加われるようにしてもよい。たとえば、ユーザーはゾーンプレーヤー１１（２）がゾーンプレーヤー１１（１）との同期グループを離脱して、ゾーンプレーヤー１１（６）との同期グループに加われるようにすることができる。別の可能性としては、そのユーザーはゾーンプレーヤー１１（１）がゾーンプレーヤー１１（２）との同期グループを離脱して、ゾーンプレーヤー１１（６）との同期グループに加われるようにすることができる。この最後の可能性に関連して、ゾーンプレーヤー１１（１）は、オーディオ情報ソース１４（１）（１）からのオーディオ情報をゾーンプレーヤー１１（２）による再生のために該ゾーンプレーヤー１１（２）に提供し続けることもできる。
【００１７】
ユーザーインターフェースモジュール１３を使うユーザーは、現在同期グループのメンバーではないゾーンプレーヤー１１（ｎ）が同期グループに加われるようにできる。そうしたのち、前記ゾーンプレーヤーはその同期グループによって現在再生されているオーディオ番組を再生できるようになる。同様に、やはりユーザーインターフェースモジュール１３を使うユーザーは、現在ある同期グループのメンバーであるゾーンプレーヤー１１（ｎ）がその同期グループから離脱して別の同期グループに加われるようにできる。そうしたのち、前記ゾーンプレーヤーは前記他の同期グループに関連付けられているオーディオ番組を再生することになる。たとえば、ゾーンプレーヤー１１（６）が現在どの同期グループのメンバーでもない場合、それはユーザーインターフェースモジュール１３の制御のもとに、ある同期グループのメンバーとなることができる。そののちはその同期グループの他のメンバーによって再生されているオーディオ番組を、該同期グループの他のメンバーと同期して再生することになる。その同期グループのメンバーとなるにあたって、ゾーンプレーヤー１１（６）はその同期グループのマスターデバイスであるゾーンプレーヤーに対してその同期グループのメンバーになりたいことを通知することができる。そののち、マスターゾーンプレーヤーは、そのオーディオ番組に関連付けられているオーディオ情報をタイミング情報とともにゾーンプレーヤー１１（６）にも送信することになる。ゾーンプレーヤー１１（６）は、マスターデバイスからオーディオ情報およびタイミング情報を受信するので、オーディオ情報をタイミング情報によって示されるタイミングで再生する。これによりゾーンプレーヤー１１（６）はオーディオ番組をその同期グループの他のゾーンプレーヤーと同期して再生できるようになるのである。
【００１８】
同様に、ユーザーインターフェースモジュール１３を使うユーザーが、ある同期グループに関連付けられているゾーンプレーヤー１１（ｎ）がその同期グループから離脱できるようにする場合、かつそのゾーンプレーヤー１１（ｎ）がその同期グループのマスターデバイスではない場合、そのゾーンプレーヤー１１（ｎ）はマスターデバイスに通知することができ、そののちに前記マスターデバイスはオーディオ情報およびタイミング情報のそのゾーンプレーヤー１１（ｎ）への送信を終了させることができる。ユーザーがさらに、そのゾーンプレーヤー１１（ｎ）が接続されたオーディオ情報ソース１４（ｎ）（ｓ）からのオーディオ情報を使って別のオーディオ番組の再生を開始できるようにする場合、そのゾーンプレーヤー１１（ｎ）はオーディオ情報ソース１４（ｎ）（ｓ）からのオーディオ情報を取得してその再生を開始することになる。ユーザーがゾーンプレーヤー１１（ｎ）と関連付けられた同期グループに別のゾーンプレーヤー１１（ｎ′）が加われるようにする場合、それに関連した動作はすぐ上で述べたようにして進行できる。
【００１９】
さらなる別の可能性としては、ユーザーインターフェースモジュール１３を使うユーザーが、ある同期グループと関連付けられたゾーンプレーヤー１１（ｎ）がその同期グループから離脱して別の同期グループに加われるようにする場合、かつ前記ゾーンプレーヤーが離脱しようとしている同期グループのマスターデバイスではない場合、ゾーンプレーヤー１１（ｎ）は離脱しようとしている同期グループのマスターデバイスに通知することができる。そののち、そのマスターゾーンプレーヤーは離脱しようとしているゾーンプレーヤー１１（ｎ）へのオーディオ情報およびタイミング情報の送信を終了させる。同時的に、ゾーンプレーヤー１１（ｎ）は加わろうとしている同期グループのマスターデバイスに通知することができ、そののち、そのマスターデバイスはオーディオ情報およびタイミング情報をそのゾーンプレーヤー１１（ｎ）にも送信を開始できる。ゾーンプレーヤー１１（ｎ）はその後、前記オーディオ情報によって定義されるオーディオ番組の再生を前記タイミング情報に従って開始することができ、その結果、ゾーンプレーヤー１１（ｎ）は前記オーディオ番組を前記マスターデバイスと同期して再生することになる。
【００２０】
さらなる別の可能性としては、ユーザーインターフェースモジュール１３を使うユーザーは、同期グループと関連付けられていないゾーンプレーヤー１１（ｎ）がそれに接続されたオーディオ情報ソース１４（ｎ）（ｓ）によって与えられるオーディオ情報を使ってオーディオ番組の再生を開始できるようにしてもよい。その場合、やはりユーザーインターフェースモジュール１３または前記オーディオ情報ソース１４（ｎ）（ｓ）固有のユーザーインターフェースデバイスを使っているユーザーは、前記オーディオ情報ソース１４（ｎ）（ｓ）が前記オーディオ情報をゾーンプレーヤー１１（ｎ）に提供できるようにすることができる。ゾーンプレーヤー１１（ｎ）が再生を開始したのち、あるいはそれと同時的に、ユーザーインターフェースモジュール１３を使う前記ユーザーは、他のゾーンプレーヤー１１（ｎ′）、１１（ｎ″）…がゾーンプレーヤー１１（ｎ）の同期グループに加わることができるようにし、前記他のゾーンプレーヤー１１（ｎ′）、１１（ｎ″）…によるオーディオ番組の同期的再生を容易にするよう、前記ゾーンプレーヤー１１（ｎ）がそれらにオーディオ情報およびタイミング情報を上述したように送信することができるようにすることができる。
【００２１】
ユーザーはユーザーインターフェースモジュール１３を使って当該ネットワークオーディオシステム１０の他の側面を制御することもできる。そうした側面には、これに限るものではないが、ある特定のゾーンプレーヤー１１（ｎ）が利用すべきオーディオ情報ソース１４（ｎ）（ｓ）、オーディオ再生のボリュームなどの選択が含まれる。さらに、ユーザーは前記ユーザーインターフェースモジュール１３を使ってオーディオ情報ソース１４（ｎ）（ｓ）をオンにしたりオフにしたりし、オーディオ情報をそれぞれのゾーンプレーヤー１１（ｎ）に提供できるようにしてもよい。
【００２２】
同期グループに関連付けられたさまざまなデバイスによって実行される動作について、図２との関連で述べる。図２は、図１との関連で上述したネットワークオーディオシステム内の同期グループの機能ブロック図を概略的に描いたものである。図２を参照すると、同期グループ２０はマスターデバイス２１およびゼロ個またはそれ以上のスレーブデバイス２２（１）から２２（Ｇ）を含んでいる（一般に参照符号２２（ｇ）によって同定される）。スレーブデバイスのすべてはオーディオ情報チャネルデバイス２３によって提供されるオーディオ番組を同期的に再生する。マスターデバイス２１、スレーブデバイス２２（ｇ）およびオーディオ情報チャネルデバイス２３のそれぞれは図１に描かれているゾーンプレーヤー１１（ｎ）を利用する。ただし、ゾーンプレーヤーが同期グループ２０のためのオーディオ情報チャネルデバイス２３のため、および同期グループ２０のマスターデバイス２１またはスレーブデバイス２２（ｇ）のための両方に利用されうることは下記の記述から明らかであろう。下記でより詳細に述べるように、オーディオ情報チャネルデバイス２３はオーディオ番組のためのオーディオ情報をオーディオ情報ソースから取得し、再生タイミング情報を加え、組み合わされたオーディオおよび再生タイミング情報を再生のためにネットワーク１２を通じてマスターデバイス２１およびスレーブデバイス２２（ｇ）に送信する。オーディオ情報と一緒に提供される再生タイミング情報は、オーディオ情報チャネルデバイス２３によって以下に述べるようにさまざまなデバイス２１および２２（ｇ）に提供されるクロックタイミング情報とともに、同期グループ２０のマスターデバイス２１およびスレーブデバイス２２（ｇ）がオーディオ情報を同時に再生できるようにする。
【００２３】
マスターデバイス２１およびスレーブデバイス２２（ｇ）は、前記オーディオ情報チャネルデバイス２３によって提供される前記オーディオおよび再生タイミング情報ならびに前記クロックタイミング情報を受け取り、前記オーディオ情報によって定義されたオーディオ番組を再生する。マスターデバイス２１はまた、ユーザーインターフェースモジュール１３と通信し、同期グループ２０におけるスレーブデバイス２２（ｇ）の動作を制御する、同期グループ２０のメンバーでもある。さらに、マスターデバイス２１は、同期グループ２０のためのオーディオおよび再生タイミング情報を提供するオーディオ情報チャネルデバイス２３の動作を制御する。一般に、同期グループの当初のマスターデバイス２１は、ユーザーがオーディオ番組を再生したいと思う最初のゾーンプレーヤー１１（ｎ）となる。しかし、下記で述べるように、マスターデバイス２１として動作するゾーンプレーヤー１１（ｎ）は、あるゾーンプレーヤー１１（ｎ）から別のゾーンプレーヤー１１（ｎ′）に移行されることもできる。移行先のゾーンプレーヤー１１（ｎ′）は好ましくは当該同期グループにおいて現在スレーブデバイス２２（ｇ）として動作しているゾーンプレーヤーであろう。
【００２４】
さらに、ある種の状況においては、下記で述べるように、オーディオ情報チャネルデバイス２３として動作するゾーンプレーヤー１１（ｎ）があるゾーンプレーヤーから別のゾーンプレーヤーに移行されることもできる。移行先のゾーンプレーヤーはやはり好ましくは当該同期グループにおいてメンバーとして現在動作しているゾーンプレーヤーであろう。マスターデバイス２１として動作するゾーンプレーヤーの別のゾーンプレーヤーへの移行は、オーディオ情報チャネルデバイス２３の移行と独立して行えることは理解されるであろう。たとえば、あるゾーンプレーヤー１１（ｎ）がある同期グループ２０のマスターデバイス２１およびオーディオ情報チャネルデバイス２３の両方として動作している場合、マスターデバイス２１は別のゾーンプレーヤー１１（ｎ′）に移行され、一方でゾーンプレーヤー１１（ｎ）は引き続きオーディオ情報チャネルデバイス２３として動作していることも可能である。同様に、あるゾーンプレーヤー１１（ｎ）がある同期グループ２０のマスターデバイス２１およびオーディオ情報チャネルデバイス２３の両方として動作している場合、オーディオ情報チャネルデバイス２３は別のゾーンプレーヤー１１（ｎ′）に移行され、一方でゾーンプレーヤー１１（ｎ）は引き続きマスターデバイス２１として動作していることも可能である。さらに、あるゾーンプレーヤー１１（ｎ）がある同期グループ２０のマスターデバイス２１およびオーディオ情報チャネルデバイス２３の両方として動作している場合、マスターデバイス２１が別のゾーンプレーヤー１１（ｎ′）に移行され、オーディオ情報チャネルデバイス２３が第三のゾーンプレーヤー１１（ｎ″）に移行されるということも可能である。
【００２５】
マスターデバイス２１はユーザーインターフェースモジュール１３から同期グループ２０を制御するための制御情報を受け取り、当該同期グループの動作状態を示す状態情報をユーザーインターフェースモジュール１３に提供する。一般に、ユーザーインターフェースモジュール１３からの制御情報は、マスターデバイス２１が今度はオーディオ情報チャネルデバイス２３がオーディオおよび再生タイミング情報を当該同期グループに提供できるようにして、それによって当該同期グループ２０のメンバーであるデバイス２１および２２（ｇ）がオーディオ番組を同期的に再生できるようにする。さらに、ユーザーインターフェースモジュール１３からの制御情報は、マスターデバイス２１が今度は他のゾーンプレーヤーが当該同期グループにスレーブデバイス２２（ｇ）として加入できるようにし、またスレーブデバイス２２（ｇ）が当該同期グループから離脱できるようにする。ユーザーインターフェースモジュール１３からの制御情報はまた、現在マスターデバイス２１として動作しているゾーンプレーヤー１１（ｎ）が当該同期グループから離脱することを可能にすることができる。ただしそうする前に、そのゾーンプレーヤーはマスターデバイス２１がそのゾーンプレーヤー１１（ｎ）から別のゾーンプレーヤー１１（ｎ′）、好ましくは同期グループ２０における現在もスレーブデバイス２２（ｇ）であるゾーンプレーヤー１１（ｎ′）に移転することを可能にすることになる。ユーザーインターフェースモジュール１３からの制御情報はまた、マスターデバイス２１が再生ボリュームを調整することを可能にしたり、さまざまなスレーブデバイス２２（ｇ）の個々のものがその再生ボリュームを調整することを可能にしたりすることができる。さらに、ユーザーインターフェースモジュール１３からの制御情報は同期グループ２０が、オーディオ番組の現在のトラックの再生を打ち切って次のトラックに飛んだり、同期グループ２０によって再生されるべきオーディオ番組を定義するトラックの再生リストにおいてトラックを並べ替えたりすることができるようにすることができる。
【００２６】
マスターデバイス２１がユーザーインターフェースモジュール１３に提供しうる状態情報としては、現在再生されているオーディオ作品のトラックについての名前またはその他の識別子、現在マスターデバイス２１として動作しているゾーンプレーヤー１１（ｎ）の識別子および現在スレーブデバイス２２（ｇ）として動作しているゾーンプレーヤーの識別子のような情報が含まれうる。ある実施形態では、ユーザーインターフェースモジュール１３は、前記状態情報をユーザーに表示できるディスプレイ（別個の要素として図示してはいない）を含む。
【００２７】
ある同期グループについてのオーディオ情報チャネルデバイス２３として動作しているゾーンプレーヤー１１（ｎ）が別の同期グループにおいてマスターデバイス２１またはスレーブデバイス２２（ｇ）のいずれかをなしていてもよいことは理解されるであろう。これは、たとえばある同期グループによって再生されるべきオーディオ情報を提供するべきオーディオ情報ソースが、前記他の同期グループのためのマスターデバイスまたはスレーブデバイスとしても利用されているゾーンプレーヤーに接続されている場合に起こりうる。これは図２Ａとの関連でのちに概略的に例示する。上述したように同期グループ２０のためのオーディオ情報チャネルデバイス２３として動作しているゾーンプレーヤー１１（ｎ）は別の同期グループのためのマスターデバイス２１またはスレーブデバイス２２（ｇ）としても動作していることがありうるので、それはまた一つまたは複数のオーディオ再生デバイス１５（ｎ）（ｒ）にも接続されていることができる。ただし、そのことは図２には示されていない。マスターデバイス２１およびスレーブデバイス２２（ｇ）はみなオーディオ番組の再生を提供することになっているから、それらはそれぞれのオーディオ再生デバイ１５（ｎ）（ｒ）に接続されることになる。さらに、同期グループ２０においてマスターデバイス２１またはスレーブデバイス２２（ｇ）として動作するゾーンプレーヤー１１（ｎ）の一つまたは複数がその同期グループのため、あるいは別の同期グループのためのオーディオ情報チャネルデバイスとしても動作しうるものであり、よってそれらは一つまたは複数のオーディオ情報ソース１４（ｎ）（ｓ）に接続されうることは理解されるであろう。ただし、このことも図２には示していない。さらに、ゾーンプレーヤー１１（ｎ）が複数の同期グループのためのオーディオ情報チャネルデバイス２３として動作することもできることは理解されるであろう。
【００２８】
オーディオ情報チャネルデバイス２３がマスターデバイス２１と同じゾーンプレーヤーを利用しているのでない場合、マスターデバイス２１は、ネットワーク１２を通じてオーディオ情報チャネルデバイス２３と制御情報を交換することによって該オーディオ情報チャネルデバイス２３を制御する。制御情報は図２ではＣＨＡＮ＿ＤＥＶ＿ＣＴＲＬ＿ＩＮＦＯと記された矢印によって表されている。マスターデバイス２１がオーディオ情報チャネルデバイス２３に提供する制御情報は一般には、再生されるべきオーディオ番組のためのオーディオ情報を提供すべきオーディオ情報ソースの性質と当該制御情報によって可能にされるべき動作とに依存することになる。たとえば、オーディオ情報ソースがゾーンプレーヤー１１（ｎ）に接続されている従来式のコンパクトディスク、テープまたはレコードプレーヤー、放送ラジオ受信機などである場合、マスターデバイス２１は単に、オーディオ情報チャネルデバイス２３の役割をしているゾーンプレーヤーが前記オーディオ情報ソースから番組のためのオーディオ情報を受信できるようにするだけでよい。オーディオ情報がデジタル形式でなかったらオーディオ情報チャネルデバイス２３がそれをデジタル形式に変形し、デジタル化されたオーディオ情報を再生タイミング情報とともにマスターデバイス２１およびスレーブデバイス２２（ｇ）に提供することになることは理解されるであろう。
【００２９】
他方、前記オーディオ情報源がたとえばパソコンまたは同様の装置などのデジタルデータ記憶装置である場合には、マスターデバイス２１は、オーディオ番組のためのオーディオ情報を含んでいる一つまたは複数のファイルを同定する再生リストをオーディオ情報チャネルデバイス２３に提供することができる。その場合、オーディオ情報チャネルデバイス２３はファイルを前記デジタルデータ記憶装置から取得し、それを再生タイミング情報とともにマスターデバイス２１およびスレーブデバイス２２（ｇ）に提供することができる。この場合、オーディオ情報ソースはオーディオ情報ソース１４（ｎ）（ｓ）などのようにオーディオ情報チャネルデバイス２３に直接接続されていてもよいし、あるいはネットワーク１２に接続されたオーディオ情報ソース１６（ｍ）であってもよいことは理解されるであろう。さらなる代替として、オーディオ情報ソースが広域ネットワークを通じて利用可能なソースである場合、マスターデバイス２１は再生されるべきオーディオ番組のためのオーディオ情報を含むファイルを同定するウェブアドレスのリストを含む再生リストを提供することができ、この関連ではオーディオ情報チャネルデバイス２３は広域ネットワークを通じて前記ファイルの取得を開始できる。さらにもう一つの代替としては、オーディオ情報ソースが広域ネットワークを通じて受信されるストリーミングオーディオのソースである場合、マスターデバイス２１は該ストリーミングオーディオを受信できるネットワークアドレスを提供することができる。マスターデバイス２１がオーディオ情報チャネルデバイス２３を制御できるその他の構成は当業者には明らかであろう。
【００３０】
マスターデバイス２１はまた、あるゾーンプレーヤー１１（ｎ）から別のゾーンプレーヤー１１（ｎ′）への移行を可能にするために当該同期グループのオーディオ情報チャネルデバイス２３に制御情報を提供することもできる。これはたとえば、オーディオ情報ソースがオーディオ情報ソース１６のうちの一つまたはネットワーク１２経由で広域ネットワークを通じて利用可能なソースである場合に起こりうる。マスターデバイス２１がオーディオ情報チャネルデバイス２３の移行を可能にすることができるのにはいくつかの理由がある。たとえば、ネットワーク１２におけるメッセージ送信の遅延を改善するためにゾーンプレーヤー１１（ｎ）の負荷を軽減することもその一つであるが、その他の理由は当業者には理解されることであろう。
【００３１】
上述したように、オーディオ情報チャネルデバイス２３は、マスターデバイス２１およびスレーブデバイス２２（ｇ）がオーディオ番組を同期的に再生できるようにするために同期グループのためのオーディオおよび再生タイミング情報を提供する。オーディオおよび再生タイミング情報の詳細については図３および図４との関連でのちに詳細に述べるが、簡潔に言うと、オーディオ情報チャネルデバイス２３は前記オーディオおよび再生タイミング情報をメッセージの形でネットワーク１２を通じて、マルチキャストメッセージ送信手法を使って送信する。その手法では、オーディオ情報チャネルデバイス２３は前記オーディオおよび再生タイミング情報を一連のメッセージの形で送信することになり、各メッセージは同期グループ２０をなす全ゾーンプレーヤー１１（ｎ）によって、すなわち、マスターデバイス２１およびスレーブデバイス２２（ｇ）によって受信される。各メッセージはマルチキャストアドレスを含んでいる。マスターデバイス２１およびスレーブデバイス２２（ｇ）はこのマルチキャストアドレスを監視していて、当該アドレスをもつメッセージを検出したら該メッセージの内容を受信して使用することになるのである。オーディオおよび再生タイミング情報は図２においてＡＵＤ＋ＰＢＴＩＭＥ＿ＩＮＦＯと記された矢印によって表されている。これは根本は一つでオーディオ情報チャネルデバイス２３にある情報ソースを表しており、当該情報の行き先を表す先端は複数あって、先端の一つはマスターデバイス２１に伸び、他の先端は同期グループ２０内のスレーブデバイス２２（ｇ）のそれぞれまで伸びている。オーディオ情報チャネルデバイス２３がオーディオおよび再生タイミング情報を同期グループ２０に送信する際においては、いかなる好適なマルチキャストメッセージ送信手法を利用してもよい。のちに図４との関連で詳細に述べるが、オーディオおよび再生タイミング情報は一連のフレームの形をしており、各フレームがタイムスタンプを有している。タイムスタンプは、当該フレームが再生されるべき時刻を、オーディオ情報チャネルデバイス２３によって維持されているクロックによって示される時間に関して示す。選択したマルチキャストメッセージ送信手法において使用されるメッセージの一通りまたは複数のサイズおよびフレームの一通りまたは複数のサイズに依存して、メッセージは単一のフレームのみ含むこともあれば、複数のフレームを含むこともあり、あるいは一つのフレームがいくつかのメッセージにまたがることもある。
【００３２】
オーディオ情報チャネルデバイス２３はまた、クロック時間情報をマスターデバイス２１およびスレーブデバイス２２（ｇ）のそれぞれにネットワーク１２を通じて個別に、高度に精密なクロック時間情報送信手法を使って提供する。クロック時間情報の配送は図２ではＡＩＣＤ＿ＣＬＫ＿ＩＮＦ（Ｍ）（マスターデバイス２１に提供されるクロック時間情報の場合）およびＡＩＣＤ＿ＣＬＫ＿ＩＮＦ（Ｓ１）からＡＩＣＤ＿ＣＬＫ＿ＩＮＦ（ＳＧ）（スレーブデバイス２２（ｇ）に提供されるオーディオ情報チャネルデバイス・クロック情報の場合）と記された矢印によって表されている。ある実施形態では、マスターデバイス２１およびスレーブデバイス２２（ｇ）は、オーディオ情報チャネルデバイス２３から現在のクロック時計情報を取得するためによく知られたＳＮＴＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｔｉｍｅ  Ｐｒｏｔｏｃｏｌ）を利用する。ＳＮＴＰはユニキャストメッセージ転送手法を利用するが、これはオーディオ情報チャネルデバイス２３のような一つのデバイスがマスターデバイス２１またはスレーブデバイス２２（ｇ）のような特定の他のデバイスに対して該他のデバイスのネットワークアドレスまたはユニキャストアドレスを使ってクロック時間情報を提供するものである。マスターデバイス２１およびスレーブデバイス２２（ｇ）のそれぞれは、オーディオ情報チャネルデバイス２３からクロック時間情報を取得するために、オーディオ情報チャネルデバイス２３と定期的にＳＮＴＰトランザクションを開始する。のちにより詳細に述べるように、マスタークロックおよび各スレーブデバイス２２（ｇ）は、クロック時間情報を利用して、オーディオ情報チャネルデバイスのクロックによって示される時刻と各自のクロックによって示される時刻との間の時間差を決定し、その時間差の値をオーディオ情報と関連付けられた再生時刻情報および各デバイスのクロックによって示される各デバイスのローカル時間とともに利用して、さまざまなフレームが再生されるべき時刻を決定することができる。これにより同期グループ２０におけるマスターデバイス２１およびスレーブデバイス２２（ｇ）が各フレームを同時に再生することが可能になる。
【００３３】
上述したように、ユーザーがユーザーインターフェースモジュール１３を通じてマスターデバイス２１に与える制御情報はまた、マスターデバイス２１が今度は別のゾーンプレーヤー１１（ｎ′）が新たなスレーブデバイス２２（ｇ）として当該同期グループに加われるようにすることを可能にすることができる。その動作において、ユーザーインターフェースモジュール１３は、同期グループに加わるべきゾーンプレーヤー１１（ｎ′）の識別情報を含む制御情報をマスターデバイス２１に提供する。マスターデバイス２１は、当該同期グループに加わるべきゾーンプレーヤー１１（ｎ′）の識別情報を受け取ったのち、図２ではＳＬＶ＿ＤＥＶ＿ＣＴＲＬ＿ＩＮＦ（Ｓ１）からＳＬＶ＿ＤＥＶ＿ＣＴＲＬ＿ＩＮＦ（ＳＧ）と記された矢印によって表されている制御情報すなわちグループスレーブ制御情報をネットワーク１２を通じてユーザーインターフェースモジュール１３からの制御情報で同定されているゾーンプレーヤー１１（ｎ′）と交換する。マスターデバイス２１が新たなゾーンプレーヤー１１（ｎ′）に提供する制御情報は、当該同期グループのためのオーディオ情報チャネルデバイス２３として動作しているゾーンプレーヤー１１（ｎ）のネットワークアドレスならびに該オーディオ情報チャネルデバイス２３がオーディオおよび再生タイミング情報をネットワークを通じてブロードキャストするのに使っているマルチキャストアドレスを含む。新たなスレーブデバイス２２（ｇ′）として動作することになっているゾーンプレーヤーは、前記マルチキャストアドレスを使って、当該同期グループによって再生されているオーディオ番組のためのオーディオ情報を含むマルチキャストメッセージの受信を開始する。
【００３４】
当該同期グループのためのマスターデバイス２１として動作しているゾーンプレーヤー１１（ｎ）がまたオーディオ情報チャネルデバイス２３としても動作している場合、そして当該同期グループ２０内にスレーブデバイス２２（ｇ）がない場合、オーディオ情報チャネルデバイス２３はネットワークを通じてオーディオおよび再生タイミング情報を送信していなくてもよい。その場合、もし前記新たなスレーブデバイス２２（ｇ′）がその同期グループにおける最初のスレーブデバイスである場合、マスターデバイス２１およびオーディオ情報チャネルデバイス２３の両方として動作しているゾーンプレーヤー１１（ｎ）は、そのスレーブデバイス２２（ｇ′）が同期グループ２０に追加されたときにネットワーク１２を通じてオーディオおよび再生タイミング情報の送信を開始すればよい。ゾーンプレーヤー１１（ｎ）は同期グループ２０にスレーブデバイス２２（ｇ）が加わったり離脱したりする都度スレーブデバイス２２（ｇ）の数を追跡することができ、その数が０にまで下がったらネットワーク１２上のメッセージトラフィック軽減のためネットワーク１２を通じてオーディオおよび再生タイミング情報を送信するのを停止することができる。
【００３５】
同期グループ２０に追加された前記新たなスレーブデバイス２２（ｇ′）はオーディオ情報チャネルデバイス２３のネットワークアドレスをいくつかの目的のために利用する。具体的には、前記新たなスレーブデバイス２２（ｇ′）は、マスターデバイス２１と同様（マスターデバイス２１として動作しているゾーンプレーヤー１１（ｎ）がオーディオ情報チャネルデバイス２３を兼ねてはいないとして）、オーディオ情報チャネルデバイス２３とのＳＮＴＰトランザクションにも携わってオーディオ情報チャネルデバイス２３からクロックタイミング情報を取得することになる。さらに、新たなスレーブデバイス２２（ｇ′）はオーディオ情報チャネルデバイス２３に対して自分が同期グループ２０の新たなスレーブデバイス２２（ｇ′）であることを通知し、オーディオ情報チャネルデバイス２３に自分のネットワークアドレスを与える。のちに述べるように、ある実施形態では、特に再生レートより速いレートでオーディオ情報を提供できるデジタルデータ記憶装置のようなソースから得られるオーディオ情報との関連では、オーディオ情報チャネルデバイス２３はオーディオおよび再生タイミング情報をバッファリングして、それをソースによって提供されるのと概略同じレートで、ネットワーク１２を通じて同期グループ２０にブロードキャストすることになる。したがって、新たなスレーブデバイス２２（ｇ′）が同期グループ２０に加わるとき、再生タイミング情報が示す、マルチキャスト手法を使ってオーディオ情報チャネルデバイス２３によって現在ブロードキャストされているオーディオ情報が再生されるべき時間が将来のいつかであることもある。新たなスレーブデバイス２２（ｇ′）が再生を開始するまでの遅延を減らすため、オーディオ情報チャネルデバイス２３はまた、バッファリングしておいた以前に送信されたオーディオおよび再生タイミング情報を、新たなスレーブデバイス２２（ｇ′）に対して該スレーブデバイス２２（ｇ′）のユニキャストネットワークアドレスを使って再送信することもできる。
【００３６】
マスターデバイス２１はまた、スレーブデバイス２２（ｇ）との間で交換されたスレーブデバイス制御情報を他の目的のために使うこともできる。たとえば、マスターデバイス２１は、スレーブデバイス制御情報を、ゾーンプレーヤー１１（ｎ）から別のゾーンプレーヤー１１（ｎ′）へのマスターの移行を開始するために使うことができる。これが行われる理由はいくつかあるが、そのいずれのためであってもよい。たとえば、マスターデバイス２１が自身によるオーディオプログラムの再生を打ち切って同期グループ２０を離脱しようとしていて同期グループ内の他のデバイスのうちの一つまたは複数がそのオーディオ番組の再生を継続することになっているというような場合が含まれる。マスターデバイス２１はまた、負荷が過剰である場合に移行を開始したくなることもある。これはたとえば、その同期グループのマスターデバイス２１であるゾーンプレーヤー１１（ｎ）が別の同期グループのオーディオ情報チャネルデバイス２３としても動作している場合に起こりうる。
【００３７】
ユーザーは、ユーザーインターフェースモジュール１３を使って、当該同期グループをなす個々のゾーンプレーヤー１１（ｎ）による再生ボリュームを調整することもできる。その動作においては、ユーザーインターフェースモジュール１３は、ボリュームを調整すべき特定のデバイスを同定する情報と、設定されるべきボリュームのレベルとをマスターデバイス２１に提供する。ボリュームを調整すべきデバイスがマスターデバイス２１である場合、マスターデバイス２１はユーザーインターフェースモジュール１３から受け取る情報に従ってそのボリュームを調整できる。他方、ボリュームを調整すべきデバイスがスレーブデバイス２２（ｇ′）である場合、マスターデバイス２１は各スレーブデバイス２２（ｇ′）にグループスレーブ制御情報を提供することによって、各スレーブデバイス２２（ｇ′）が自らのボリュームを調整できるようにすることができる。
【００３８】
ユーザーは、ユーザーインターフェースモジュール１３を使って、同期グループ２０がオーディオ番組中の現在再生されているトラックの再生を中止して次のトラックにすぐ進めるようにすることもできる。これはたとえば、前記番組のためのトラックが一連のデジタルオーディオ情報ファイルの形であり、ユーザーがファイルの一つによって定義されるトラックの再生を中止したい場合に起こりうる。その場合、マスターデバイス２１は、現在のトラックの再生を中止するコマンドを受け取ると、オーディオ情報チャネルデバイス２３に対してその旨を示すチャネルデバイス制御情報を与える。それに反応して、オーディオ情報チャネルデバイス２３はオーディオおよび再生タイミング情報に制御情報を挿入する。この制御情報は「再同期」コマンドと呼ぶことにする。さらに、オーディオ情報チャネルデバイス２３は次のトラックのオーディオ情報をタイミング情報とともに送信することを開始し、それにより前記トラックがすぐ再生できるようにする。前記再同期コマンドはまた、トラックの再生を再生前に取り消すこともできる。これらの動作の詳細についてはのちに述べる。
【００３９】
上述したように、ネットワークオーディオシステム１０内には複数の同期グループがあることもあり、さらに、一つのゾーンプレーヤー１１（ｎ）が、たとえば、ある同期グループにおいてマスターデバイス２１またはスレーブデバイス２２（ｇ）として動作するのと同時に、別の同期グループのためにオーディオおよび再生タイミング情報ならびにクロックタイミング情報を提供するオーディオ情報チャネルデバイス２３としても動作するということがありうる。この例示的な構成を図２Ａとの関連で述べる。図２Ａを参照すると、これは参照符号２０（１）および２０（２）によって同定される二つの同期グループの要素を描いている。明確のため、図２Ａはいくつかの要素は示していないが、それらの存在は上で記載した図１および図２から明らかであろう。たとえば、図２Ａでは、図１および図２に描かれていた、同期グループのためにオーディオ情報が取得されるもとになるオーディオ情報ソースや、マスターデバイスおよびスレーブデバイスのために音を生成するのに使われるオーディオ再生デバイスは描かれていない。さらに、図２Ａでは、図２に描かれていた、それぞれのマスターデバイスからそれぞれの同期グループ内のスレーブデバイスに、あるいはそれぞれの同期グループのためのオーディオおよび再生タイミング情報を与えるオーディオ情報チャネルデバイスに与えられる制御情報を表す矢印は描かれていない。さらに、図２Ａは、やはり図２に描かれていた、それぞれの同期グループのそれぞれのメンバーにオーディオ情報チャネルデバイスによって与えられるクロックタイミング情報を表す矢印も描かれていない。その一方、下記で述べるように、図２Ａでは、それぞれの同期グループ２０（１）、２０（２）のためのそれぞれのオーディオ情報チャネルデバイスによってそれぞれの同期グループ２０（１）、２０（２）をなすマスターおよびスレーブデバイスに与えられるオーディオおよび再生タイミング情報を表す矢印は描かれている。
【００４０】
各同期グループ２０（１）、２０（２）はいくつかのゾーンプレーヤーの要素を有している。ゾーンプレーヤーの機能ブロック図はのちに図３との関連で記載する。同期グループ２０（１）はマスターデバイス２１（１）および「Ｋ」個のスレーブデバイス２２（１）（１）から２２（Ｋ）（１）を含んでおり（参照符号２１（１）の添え字「１」および参照符号２２（１）（１）から２２（Ｋ）（１）の最後の添え字はそれらが帰属する同期グループ２０（１）の添え字に対応している）、これらはそれぞれゾーンプレーヤー１１（１）から１１（Ｋ＋１）を利用する。同様に、同期グループ２０（２）はマスターデバイス２１（２）および「Ｌ」個のスレーブデバイス２２（１）（２）から２２（Ｌ）（２）を含んでおり、これらはゾーンプレーヤー１１（Ｋ＋２）から１１（Ｋ＋Ｌ＋２）を利用する。図２Ａに示した例示的な構成では、両同期グループ２０（１）および２０（２）はユーザーインターフェースモジュール１３によって制御される。このユーザーインターフェースモジュール１３がマスターデバイス２１（１）および２１（２）の両者に独立に制御情報を与え、両者から状態情報を受け取ることができる。それぞれのマスターデバイス２１（１）、２１（２）に制御情報を与え、それぞれから状態情報を受け取るために別個のユーザーインターフェースモジュールを設けてもよいことは理解されるであろう。
【００４１】
上述したように、ゾーンプレーヤー１１（Ｋ＋３）は同期グループ２０（２）のスレーブデバイス２２（１）（２）が利用している。図２Ａに示した例示的な構成では、ゾーンプレーヤー１１（Ｋ＋３）を利用するものとしては、同期グループ２０（１）のマスターおよびスレーブデバイス２１（１）、２２（１）（１）、…、２２（Ｋ）（１）にオーディオおよび再生タイミング情報を提供するオーディオ情報チャネルデバイス２３（１）もある。上述したように、このことは、たとえば、同期グループ２０（１）によって再生されるべきオーディオ情報を提供すべきオーディオ情報ソースがゾーンプレーヤー１１（Ｋ＋３）に接続されているときに起こりうる。よって、同期グループ２０（１）のマスターデバイス２１（１）がオーディオ情報チャネルデバイス２３（１）とチャネルデバイス制御情報を交換するとき、実際上はゾーンプレーヤー１１（Ｋ＋３）とチャネルデバイス制御情報を交換しているのである。同様に、同期グループ２０（１）のマスターおよびスレーブデバイス２１（１）、２２（１）（１）、…、２２（Ｋ）（１）がオーディオ情報チャネルデバイス２３（１）からオーディオおよび再生タイミング情報をクロックタイミング情報と並んで受け取るとき、実際上はそれらはゾーンプレーヤー１１（Ｋ＋３）から情報を受け取っているのである。図２Ａは、オーディオ情報チャネルデバイス２３（１）としてのゾーンプレーヤー１１（Ｋ＋３）によって同期グループ２０（１）をなすマスターおよびスレーブデバイス２１（１）、２２（１）（１）、…２２（Ｋ）（１）に送信されるオーディオおよび再生タイミング情報を表す多先端矢印を示している。
【００４２】
他方、図２Ａに示されている例示的な構成において、同期グループ２０（２）はゾーンプレーヤー１１（Ｋ＋Ｌ＋３）をそのオーディオ情報チャネルデバイス２３（２）として利用している。同期グループ２０（１）の場合と同様、同期グループ２０（２）のマスターデバイス２１（２）がチャネルデバイス制御情報をオーディオ情報チャネルデバイス２３（２）と交換するとき、実際上はゾーンプレーヤー１１（Ｋ＋Ｌ＋３）とチャネルデバイス制御情報を交換している。同様に、同期グループ２０（２）のマスターおよびスレーブデバイス２１（２）、２２（１）（２）、…、２２（Ｌ）（２）がオーディオ情報チャネルデバイス２３（２）からオーディオおよび再生タイミング情報をクロックタイミング情報と並んで受け取るとき、実際上はその情報をゾーンプレーヤー１１（Ｋ＋Ｌ＋３）から受け取っている。図２Ａは、オーディオ情報チャネルデバイス２３（２）としてのゾーンプレーヤー１１（Ｋ＋Ｌ＋３）によって同期グループ２０（２）をなすマスターおよびスレーブデバイス２１（２）、２２（１）（２）、…２２（Ｌ）（２）に送信されるオーディオおよび再生タイミング情報を表す多先端矢印を示している。
【００４３】
図２Ａに示されている例示的な構成において、同期グループ２０（２）のためのオーディオ情報チャネルデバイス２３（２）であるゾーンプレーヤー１１（Ｋ＋Ｌ＋３）は、別の同期グループのマスターデバイスやスレーブデバイスとしては示されていない。しかし、ゾーンプレーヤー１１（Ｋ＋Ｌ＋３）が別の同期グループのためのマスターデバイスまたはスレーブデバイスとしても利用されてよいことは理解されるであろう。実際、同期グループ２０（２）のためのオーディオ情報チャネルデバイスとして利用されるゾーンプレーヤーは、同期グループ２０（１）においてマスターデバイス２１（１）またはスレーブデバイス２２（１）（１）、…、２２（Ｋ）（１）として利用されるゾーンプレーヤーであってもよいことは理解されることであろう。
【００４４】
ある同期グループのメンバーとして利用されるゾーンプレーヤー１１（ｎ）は、別の同期グループのためのオーディオ情報チャネルデバイスとしても利用されうる。これは、前記別の同期グループによって再生されるべきオーディオ情報を供給するべきオーディオ情報ソースがそのゾーンプレーヤー１１（ｎ）に接続されている場合である。ゾーンプレーヤー１１（ｎ）が前記別の同期グループのためのオーディオ情報チャネルデバイスとしても利用されうるのはまた、たとえば、前記オーディオ情報ソースがネットワーク１２に接続されたオーディオ情報ソース１６（ｍ）（図１）またはインターネットのような広域ネットワークを通じて利用可能なオーディオ情報ソースである場合などである。この後者はたとえば、ゾーンプレーヤー１１（ｎ）がオーディオ情報チャネルデバイスとして動作するために十分な処理能力があり、前記別の同期グループ（当該ゾーンプレーヤー１１（ｎ）がオーディオ情報チャネルデバイスとして動作している同期グループ）のメンバーにオーディオおよび再生タイミング情報を提供するために前記別の同期グループをなすゾーンプレーヤーに比べてネットワーク１２内で最適な位置にある場合に起こりうる。ある同期グループのメンバーとして利用されているゾーンプレーヤー１１（ｎ）が別の同期グループのためのオーディオ情報チャネルデバイスとしても利用されうるようなその他の状況は当業者には明らかであろう。
【００４５】
上述したように、同期グループ２０のためのマスターデバイス２１はあるゾーンプレーヤー１１（ｎ）から別のゾーンプレーヤー１１（ｎ′）に移行されうる。さらに上述したように、ある同期グループ２０のためのオーディオ情報チャネルデバイス２３はあるゾーンプレーヤー１１（ｎ）から別のゾーンプレーヤー１１（ｎ′）に移行されうる。この後者は、たとえば、前記同期グループのためのオーディオ番組を提供するオーディオ情報ソースがオーディオ情報チャネルデバイス２３として動作しているゾーンプレーヤー１１（ｎ）には接続されていないが、その代わりにネットワーク１２に接続されたオーディオ情報ソース１６（ｍ）のうちの一つまたはインターネットのような広域ネットワークを通じて利用可能なソースであるような場合に起こりうることは理解されるであろう。あるゾーンプレーヤー１１（ｎ）から別のゾーンプレーヤー１１（ｎ′）へのオーディオ情報チャネルデバイス２３の移行の間に実行される動作は、一般に、該オーディオ情報チャネルデバイス２３によって伝えられているオーディオ情報の性質に依存することになる。たとえば、オーディオ情報ソースがストリーミングオーディオを提供する場合、現在同期グループ２０のためのオーディオ情報チャネルデバイス２３として動作しているゾーンプレーヤー１１（ｎ）は、その同期グループ２０のためのオーディオ情報チャネルデバイス２３になろうとしている前記別のゾーンプレーヤー１１（ｎ′）に以下の情報を提供することができる：
（ａ）ストリーミングオーディオ情報のソースの識別情報、
（ｂ）ゾーンプレーヤー１１（ｎ）が現在形成しつつあるフレームに関連付けられたタイムスタンプ、
（ｃ）同期グループ２０をなすマスターデバイス２１およびスレーブデバイス２２（ｇ）として動作するゾーンプレーヤーの識別情報。
ゾーンプレーヤー１１（ｎ′）は、ゾーンプレーヤー１１（ｎ）から前記情報を受け取ったのち、ゾーンプレーヤー１１（ｎ）によって同定されたストリーミングオーディオ情報ソースからストリーミングオーディオの受信を開始し、該ストリーミングオーディオ情報をフレームに構成し、各フレームをタイムスタンプに関連付け、結果として得られるオーディオおよび再生タイミング情報をネットワーク１２を通じて送信する。ゾーンプレーヤー１１（ｎ′）は上述したのと同じ仕方でこれらの動作を実行することになる。ただし、フレームのためのタイムスタンプを生成する際に、そのデジタル‐アナログコンバータクロック３４によって示される時刻を直接使うのではなく、初期タイムスタンプはゾーンプレーヤー１１（ｎ）によって提供されるタイムスタンプの値（上の項目（ｂ）参照）に関係付けられ、タイムスタンプがインクリメントされるレートはその（すなわち、ゾーンプレーヤー１１（ｎ′）の）クロックがインクリメントされるレートに対応する。さらに、ゾーンプレーヤー１１（ｎ′）は、同期グループ２０のマスターデバイス２１およびスレーブデバイス２２（ｇ）として動作しているゾーンプレーヤーに対して、自らがその同期グループ２０のための新しいオーディオ情報チャネルデバイス２３であると通知し、オーディオおよび再生タイミング情報をマルチキャストするために使用することになるマルチキャストアドレスを、ユニキャストネットワークアドレスとともに提供する。同期グループ２０のメンバーは、ゾーンプレーヤー１１（ｎ′）からそれがその同期グループ２０のための新しいオーディオ情報チャネルデバイス２３であることを示す通知を受け取ったのちには、ゾーンプレーヤー１１（ｎ）ではなくゾーンプレーヤー１１（ｎ′）から、ゾーンプレーヤー１１（ｎ′）によって提供されたマルチキャストアドレスを使ってオーディオおよび再生タイミング情報を受け取ることになる。さらに、そのゾーンプレーヤー１１（ｎ′）のユニキャストネットワークアドレスを使って現在の時刻情報をそこから取得することもできる。ゾーンプレーヤー１１（ｎ′）がその現在時刻を決定するのが、ゾーンプレーヤー１１（ｎ）によって与えられるタイムスタンプ（上の項目（ｂ）参照）に対して、あるいは先述したようなＳＮＴＰプロトコルを使ってゾーンプレーヤー１１（ｎ）から受信した現在時刻情報に対してとなることは理解されるであろう。
【００４６】
一般に、オーディオ情報チャネルデバイス２３をあるゾーンプレーヤー１１（ｎ）から別のゾーンプレーヤー１１（ｎ′）に移行させることに関連して、オーディオ情報が一つまたは複数のオーディオ情報ファイルからのものである場合においても同様の動作を実行できる。そのような場合とは、前記オーディオ情報がネットワーク１２に接続されたソース１６（ｍ）のようなソースから利用可能であるか、あるいはインターネットのような広域ネットワークを通じて利用可能なソース由来であるかする、ＭＰ３ファイルまたはＷＡＶファイルである場合などである。ただし、オーディオ情報がファイルであるという事実を受け入れるための相違はある。この場合、同期グループ２０のためのオーディオ情報チャネルデバイス２３として現在動作しているゾーンプレーヤー１１（ｎ）はその同期グループ２０のためのオーディオ情報チャネルデバイス２３となろうとしているゾーンプレーヤー１１（ｎ′）に対して以下の情報を提供することができる：
（ｄ）再生されるべきオーディオ情報を含んでいるオーディオ情報ファイルのリスト、
（ｅ）ゾーンプレーヤー１１（ｎ）が現在オーディオおよび再生タイミング情報を提供しているファイルの識別情報ならびにオーディオおよび再生タイミング情報の現在の項目が生成されている当該ファイル中でのオフセットならびにゾーンプレーヤー１１（ｎ）がそのフレームと関連付けているタイムスタンプ、
（ｆ）その同期グループ２０をなすマスターデバイス２１およびスレーブデバイス２２（ｇ）として動作しているゾーンプレーヤーの識別情報。
ゾーンプレーヤー１１（ｎ′）は、ゾーンプレーヤー１１（ｎ）から前記情報を受け取ったのち、項目（ｅ）で同定されたファイルから、同定されたオフセット位置から出発してオーディオ情報の取得を開始する。さらに、ゾーンプレーヤー１１（ｎ′）は取得されたオーディオ情報をフレームに構成し、各フレームをタイムスタンプに関連付け、結果として得られるオーディオおよび再生タイミング情報をネットワーク１２を通じて送信する。ゾーンプレーヤー１１（ｎ′）は上述したのと同じ仕方でこれらの動作を実行する。ただし、フレームのためのタイムスタンプを生成する際に、そのデジタル‐アナログコンバータクロック３４によって示される時刻を直接使うのではなく、初期タイムスタンプの値はゾーンプレーヤー１１（ｎ）によって提供されるタイムスタンプ（上の項目（ｅ）参照）に関係付けられ、タイムスタンプがインクリメントされるレートはその（すなわち、ゾーンプレーヤー１１（ｎ′）の）クロックがインクリメントされるレートに一致する。さらに、ゾーンプレーヤー１１（ｎ′）は、同期グループ２０のマスターデバイス２１およびスレーブデバイス２２（ｇ）として動作しているゾーンプレーヤーに対して、自らがその同期グループ２０のための新しいオーディオ情報チャネルデバイス２３であると通知し、オーディオおよび再生タイミング情報をマルチキャストするために使用することになるマルチキャストアドレスを、ユニキャストネットワークアドレスとともに提供する。同期グループ２０のメンバーは、ゾーンプレーヤー１１（ｎ′）からそれが当該同期グループ２０のための新しいオーディオ情報チャネルデバイス２３であることを示す通知を受け取ったのちには、ゾーンプレーヤー１１（ｎ）ではなくゾーンプレーヤー１１（ｎ′）から、ゾーンプレーヤー１１（ｎ′）によって提供されたマルチキャストアドレスを使ってオーディオおよび再生タイミング情報を受け取ることになる。さらに、そのゾーンプレーヤー１１（ｎ′）のユニキャストネットワークアドレスを使って現在の時刻情報をそこから取得することもできる。ゾーンプレーヤー１１（ｎ′）がその現在時刻を決定するのが、ゾーンプレーヤー１１（ｎ）によって与えられるタイムスタンプ（上の項目（ｂ）参照）に対して、あるいは先述したようなＳＮＴＰプロトコルを使ってゾーンプレーヤー１１（ｎ）から受信した現在時刻情報に対してとなることは理解されるであろう。ゾーンプレーヤー１１（ｎ′）はゾーンプレーヤー１１（ｎ）から受け取ったリスト（項目（ｄ）参照）にある一連のオーディオ情報ファイルを処理する。
【００４７】
オーディオ情報チャネルデバイス２３の移行に関連して、上記以外の種類のオーディオ情報の場合についてゾーンプレーヤー１１（ｎ）および１１（ｎ′）によって実行される動作は当業者には明らかであろう。いずれにせよ、ゾーンプレーヤー１１（ｎ）は、ゾーンプレーヤー１１（ｎ′）に当該同期グループのためのオーディオ情報チャネルデバイスとなるべきであることを通知したのち少なくとも短時間は当該同期グループ２０のためのオーディオ情報チャネルデバイス２３として動作し続けることが好ましい。それによりゾーンプレーヤー１１（ｎ′）は当該同期グループ２０内のゾーンプレーヤーに自分がその同期グループ２０のための新しいオーディオ情報チャネルデバイス２３であることを通知する時間がもてるのである。
【００４８】
ネットワークオーディオシステム１０によって実行される動作の記述をさらに進める前に、本発明に基づいて構築されるゾーンプレーヤー１１（ｎ）の詳細な記述を与えておくことが有用であろう。図３は、本発明に基づいて構築されたゾーンプレーヤー１１（ｎ）の機能ブロック図を示している。ネットワークオーディオシステム１０内のゾーンプレーヤーのすべては同様の構成を有しうる。図３を参照すると、ゾーンプレーヤー１１（ｎ）はオーディオ情報ソースインターフェース３０、オーディオ情報バッファ３１、再生スケジューラ３２、デジタル‐アナログコンバータ３３、オーディオ増幅器３５、オーディオ再生デバイスインターフェース３６、ネットワーク通信マネージャ４０およびネットワークインターフェース４１を含んでおり、これらはみな制御モジュール４２の制御のもとで動作する。ゾーンプレーヤー１１（ｎ）はまた、ゾーンプレーヤー１１（ｎ）の全般的な動作を制御するタイミング信号を提供するデバイスクロック４３を有している。さらに、ゾーンプレーヤー１１（ｎ）は、ゾーンプレーヤー１１（ｎ）の動作を制御するためのユーザーインターフェースモジュール１３（図１および２）から制御信号を受け取り、ユーザーインターフェースモジュール１３に状態情報を提供することのできるユーザーインターフェースモジュールインターフェース４４をも含んでいる。
【００４９】
一般に、オーディオ情報バッファ３１はオーディオ情報をデジタル形式で、再生タイミング情報とともにバッファリングする。ゾーンプレーヤー１１（ｎ）が同期グループ２０のためのオーディオ情報チャネルデバイス２３（図２）として動作している場合は、オーディオ情報バッファ３１にバッファリングされる情報は、同期グループ２０内のデバイス２１および２２（ｇ）に提供されることになるオーディオおよび再生タイミング情報を含む。ゾーンプレーヤー１１（ｎ）が同期グループ２０のためのマスターデバイス２１またはスレーブデバイス２２（ｇ）として動作している場合には、オーディオ情報バッファ３１にバッファリングされる情報は、ゾーンプレーヤー１１（ｎ）が再生すべきオーディオおよび再生タイミング情報を含むことになる。
【００５０】
オーディオ情報バッファ３１はオーディオおよび再生タイミング情報を二つのソースから受け取ることができる。オーディオ情報ソースインターフェース３０およびネットワーク通信マネージャ４０である。具体的には、ゾーンプレーヤー１１（ｎ）が同期グループ２０のためのオーディオ情報チャネルデバイス２３として動作していて、かつオーディオ情報ソースがゾーンプレーヤー１１（ｎ）に接続されたソース１４（ｎ）（ｓ）である場合、オーディオ情報バッファ３１はオーディオ情報ソースインターフェース３０からオーディオおよび再生タイミング情報を受け取ってバッファリングする。他方、ゾーンプレーヤー１１（ｎ）が同期グループ２０のためのオーディオ情報チャネルデバイス２３として動作していて、かつオーディオ情報ソースがネットワーク１２に接続されたソース１６（ｍ）であるか、または広域ネットワークを通じて利用可能なソースである場合、オーディオ情報バッファ３１はネットワーク通信マネージャ４０からオーディオおよび再生タイミング情報を受け取ってバッファリングする。ゾーンプレーヤー１１（ｎ）がこの同期グループのメンバーでない場合には当該ゾーンプレーヤー１１（ｎ）はこのバッファリングされたオーディオおよび再生タイミング情報を再生しないことは理解されるであろう。
【００５１】
さらに他方で、ゾーンプレーヤー１１（ｎ）が同期グループ２０内のマスターデバイス２１またはスレーブデバイス２２（ｇ）として動作していて、かつゾーンプレーヤー１１（ｎ）が同期グループ２０のためのオーディオおよび再生タイミング情報を提供するオーディオ情報チャネルデバイス２３を兼ねてはいない場合、オーディオ情報バッファ３１はネットワーク通信マネージャ４０からオーディオおよび再生タイミング情報を受け取ってバッファリングする。
【００５２】
オーディオ情報ソースインターフェース３０は、ゾーンプレーヤー１１（ｎ）に付随するオーディオ情報ソース１４（ｎ）（ｓ）に接続される。ゾーンプレーヤー１１（ｎ）が同期グループ２０のためのオーディオ情報チャネルデバイス２３として動作している間、オーディオ情報がゾーンプレーヤー１１（ｎ）に接続されたソース１４（ｎ）（ｓ）によって提供されるべきである場合、オーディオ情報ソースインターフェース３０は、当該ゾーンプレーヤーが接続されているオーディオ情報ソース１４（ｎ）（ｓ）の一つからオーディオ情報を選択的に受け取り、そのオーディオ情報をオーディオ情報バッファ３１に保存する。選択されたオーディオ情報ソース１４（ｎ）（ｓ）からのオーディオ情報がアナログ形式であったらオーディオ情報ソースインターフェース３０がそれをデジタル形式に変換する。オーディオ情報ソースインターフェース３０がオーディオ情報を受け取るオーディオ情報ソース１４（ｎ）（ｓ）の選択は制御モジュール４２の制御下にあり、該制御モジュール４２は今度は制御情報をユーザーインターフェースモジュールからユーザーインターフェースモジュールインターフェース４４を通じて受け取る。オーディオ情報ソースインターフェース３０はデジタルオーディオ情報に再生タイミング情報を加えて、組み合わされたオーディオおよび再生タイミング情報をオーディオ情報バッファ３１内にバッファリングする。
【００５３】
より詳細には、上述したように、オーディオ情報ソースインターフェース３０はオーディオ情報をオーディオ情報ソース１４（ｎ）（ｓ）から受け取り、それを必要ならデジタル形式に変換し、再生タイミング情報とともにオーディオ情報バッファ３１にバッファリングする。さらに、オーディオ情報ソースインターフェース３０はまた、前記選択されたオーディオ情報ソース１４（ｎ）（ｓ）から受け取った形であろうとアナログのオーディオ情報ソースから変換された形であろうとデジタルオーディオ情報のためのフォーマットおよびスケジュール情報をも提供する。のちに明らかにされるように、フォーマットおよびスケジュール情報はゾーンプレーヤー１１（ｎ）自身による再生を制御するのみならず、ゾーンプレーヤー１１（ｎ）がマスターデバイスである同期グループ内にあるかもしれない他のゾーンプレーヤー１１（ｎ′）、１１（ｎ″）…が、ゾーンプレーヤー１１（ｎ）と同期して当該オーディオ情報に関連付けられたオーディオ番組を再生することをも可能にする。
【００５４】
ある特定の実施形態では、オーディオ情報ソースインターフェース３０は、あるオーディオ作品に対応するオーディオ情報を一連のフレームに分割して各フレームが所定の時間期間についてのデジタルオーディオ情報をなすようにする。ここでの用法では、オーディオトラックとは、中断なく再生されるべきオーディオ情報の任意の単位を含んでいることができる。他方、オーディオ番組とは、逐次的に再生されるべき一つまたは複数のオーディオトラックの系列を含んでいることができる。オーディオ番組をなす諸トラックはやはり中断なく再生されてもよいし、あるいはまたトラックとトラックとの間で再生が所定の時間間隔だけ中断されてもよい。図４は、オーディオ作品をなすデジタルオーディオストリームのための、本発明のある実施形態との関連で用いられる例示的なフレーム構成方針を概略的に示している。より詳細には、図４に示すフレーム化されたデジタルオーディオストリーム５０はフレーム５１（１）から５１（Ｆ）の系列を含んでいる（一般に参照符号５１（ｆ）で同定される）。各フレーム５１（ｆ）は今度は、当該オーディオトラックの一連のオーディオ標本値５２（ｆ）（１）から５２（ｆ）（Ｓ）を含んでいる（一般に参照符号５２（ｆ）（ｓ）で同定される）。好ましくは、全フレームが同じ「Ｓ」個のオーディオ標本値をもつが、これが主として便宜上のものであることは以下の記述から理解されるであろう。他方、オーディオ標本値の数が「Ｓ」とは異なることもあることは理解されるであろう。特に、フレーム５１（ｆ）がある特定のオーディオ作品のデジタルオーディオストリームのための最後のオーディオ標本値を含んでいる場合にそうなることがある。その場合、最終フレーム５１（Ｆ）は、ｘをＳより小さいとして、好ましくは標本値５２（Ｆ）（１）から５２（Ｆ）（ｘ）を含んでいる。一般に、標本値の数は全フレーム５１（ｆ）の間で一貫していることが望ましく、その場合、最終フレーム５１（Ｆ）には再生されないパディングを追加することができる。
【００５５】
各フレーム５１（ｆ）にはヘッダ５５（ｆ）が関連付けられており、ヘッダ５５（ｆ）には各フレーム５１（ｆ）内のオーディオ標本値の再生を制御する際に有用なその他の情報を保存するためのいくつかのフィールドが含まれる。具体的には、フレーム５１（ｆ）に付随するヘッダ５５（ｆ）はフレームシーケンス番号フィールド５６、エンコード種別フィールド５７、サンプリングレート情報フィールド５８、タイムスタンプフィールド６０、トラック終了フラグ６１および長さフラグフィールド６２が含まれる。ヘッダ５５（ｆ）はまた再生を制御する際に有用なその他の情報を保存するためのフィールド（図示せず）を含んでいてもよい。一般に、フレームシーケンス番号フィールド５６には、デジタルオーディイオストリーム５０を含むフレームシーケンス５１（１）…５１（ｆ）…５１（Ｆ）内での当該フレーム５１（ｆ）の相対位置を同定するシーケンス番号「ｆ」がはいる。エンコード種別フィールド５７は当該デジタルオーディオストリームを生成する際に使われたエンコードおよび／または圧縮の種別を同定する値がはいる。通常のエンコードまたは圧縮方式としては、たとえばよく知られたＭＰ３およびＷＡＶエンコードおよび／または圧縮方式が含まれるが、他の方式を備えてもよいことは理解されるであろう。サンプリングレート情報フィールド５８には、オーディオ標本値５２（ｆ）（ｓ）のサンプリングレートを示すサンプリングレート情報がはいる。当業者には明らかであろうように、サンプリングレートはゾーンプレーヤー１１（ｎ）がフレーム内のオーディオ標本値５２（ｆ）（ｓ）を再生すべきレートを決定し、またのちに述べるように、デジタル‐アナログコンバータクロック３４の周期を決定する。
【００５６】
作品終了フラグ６１の状態は、フレーム５１（ｆ）が、フレーム化されたデジタルオーディオ作品５０に対応するオーディオトラックの最後のデジタルオーディオ標本値を含んでいるかどうかを示す。フレーム５１（ｆ）が当該オーディオ作品のためのデジタルオーディオストリーム５０の最後に対応するオーディオ標本値を含んでいなければ、作品終了フラグは空である。他方、フレーム５１（ｆ）が当該オーディオ作品のためのデジタルオーディオストリーム５０の最後に対応するオーディオ標本値を含んでいる場合には、作品終了フラグ６１はセットされている。さらに、最終フレーム５１（Ｆ）内の有効なオーディオ標本値５２（Ｆ）（ｓ）、つまりパディングでない標本値の数は、フレーム５１（ｆ）内のオーディオ標本値のデフォルト数である「Ｓ」よりも小さいこともあるので、長さフラグフィールド６２が、当該オーディオ作品５０の最終フレーム５１（Ｆ）内のオーディオ標本値５２（Ｆ）（ｓ）の数を同定する値を含むことになる。上述したようにフレームが一貫してＳ個の標本値をもつ場合、標本値５２（Ｆ）（ｘ＋１）から５２（Ｆ）（Ｓ）は再生されないパディング情報を含むことになる。
【００５７】
タイムスタンプフィールド６０は、ゾーンプレーヤー１１（ｎ）が各フレームを再生すべき時刻を同定するタイムスタンプを保存する。より詳細には、オーディオ情報バッファ３１内でバッファリングされているフレーム化されたデジタルオーディオストリーム５０の各フレームについて、オーディオ情報ソースインターフェース３０は、デジタル‐アナログコンバータクロック３４からのタイミング情報を使って、当該ゾーンプレーヤー１１（ｎ）が前記各フレームを再生すべき時刻を決定し、再生時刻を同定するタイムスタンプをタイムスタンプフィールド６０に保存する。各フレームに関連付けられたタイムスタンプはのちに、デジタルオーディオストリームのうち当該フレーム内に保存されている部分をいつデジタル‐アナログコンバータ３３に転送して再生を開始するべきかを決定するために、再生スケジューラ３２によって使われる。逐次的なフレーム５１（１）、５１（２）、…、５１（Ｆ）内の諸フレームに関連付けられているタイムスタンプは、前記諸フレームが順序立って、デジタルオーディオストリーム５０をなす相続くフレームの間の中断なしに再生されるような値になっていることは理解されるであろう。さらに、デジタルオーディオストリーム５０の最初のフレームについての、フレーム５１（１）に保存されているタイムスタンプが決定されたのちは、オーディオ情報ソースインターフェース３０が、後続のフレーム５１（２）、５１（３）、…、５１（Ｆ）についてのタイムスタンプを、各フレーム内の標本値の数Ｓとサンプリングレートとの関係で決定できることは理解されるであろう。タイムスタンプはまた、諸フレームがオーディオ情報バッファ３１内にバッファリングされたのち、何がしかのわずかな時間遅延ののちに再生されるような値となることが好ましい。この時間遅延の目的はのちに明らかにされる。
【００５８】
図３に戻ると、デジタルオーディオ情報をフレームに分割することに加えて、オーディオ情報ソースインターフェース３０はまた、フレーム５１（ｆ）をまとめたりおよび／または必要に応じてネットワークを通じた送信のためのメッセージに収まる長さのパケットに分けたりし、各パケットにパケットシーケンス番号を割り当てる。たとえば、あるパケットが複数のフレーム５１（ｆ）、５１（ｆ＋１）、…、５１（ｆ＋ｙ−１）を収容する場合、オーディオ情報ソースインターフェース３０はそれらのフレームをまとめてパケットにし、それらにパケット番号、たとえばｐ（ｘ）を割り当てる。フレーム５１（ｆ）から５１（ｆ＋ｙ−１）が半端なしにパケットｐ（ｘ）に収容された場合（ｘはパケットシーケンス番号）――パケットのサイズがちょうどフレームサイズの整数倍の場合にそうなる――、次のパケットｐ（ｘ＋１）はフレーム５１（ｆ＋ｙ）で始まり、フレーム５１（ｆ＋ｙ）、…、５１（ｆ＋２ｙ−１）を含むことになる。他方、パケット長がフレームサイズのちょうど整数倍とならない場合には、パケット中の最後のフレームは次のパケットの先頭に続けられる。
【００５９】
オーディオ情報ソースインターフェース３０がトラック境界を認識する場合――トラックがファイルに分けられている場合にそのようなことがある――、パケットはトラック境界を反映する、すなわち、一つのパケットには二つのトラックからのフレームは含まれない。よって、あるトラックの最後の部分のフレームが一つのパケットを埋めるのに十分でない場合、そのパケットは、前記トラックの最終フレームからそのパケットの終わりまでパディングを含むことになり、次のパケットは次のトラックの最初のフレームから始まることになる。
【００６０】
ある実施例では、オーディオ情報ソースインターフェース３０はリングバッファ内のオーディオ情報バッファ３１内にパケットを保存する。通常行われているように、リングバッファはバッファ内に一連の記憶位置を含む。各エントリーは１パケットを保存するのに十分である。リングバッファに関連しては４つのポインタが使用される。リングバッファの先頭を指す第一のポインタ、リングバッファの末尾を指す第二のポインタ、パケットが書き込まれることになるエントリーを指す第三の「書き込み」ポインタ、そして再生における使用のためにパケットが読み出されるエントリーを指す第四の「読み出し」ポインタである。リングバッファから再生のためのパケットが読み出されるとき、そのパケットは読み出しポインタによって指されるエントリーから読み出される。パケットが読み出されたのち、読み出しポインタは進められる。読み出しポインタが指すのが末尾ポインタによって示されるリングバッファの末尾を超える場合には、リセットされて先頭ポインタによって指されるエントリーを指すようになる。この動作は繰り返されることができる。
【００６１】
他方、オーディオ情報ソースインターフェース３０がリングバッファ内にパケットを保存するときには、まず、書き込みポインタによって指されているエントリーが読み出しポインタによって指されているエントリーと同じエントリーであるかどうかを判別する。書き込みポインタが読み出しポインタによって指されているのと同じエントリーを指している場合、そのエントリーは再生のためにまだ読み出されていないパケットの少なくとも一部分を含んでおり、オーディオ情報ソースインターフェース３０はそのパケット全体が読み出されて読み出しポインタが進められるまでパケットの保存を遅らせる。読み出しポインタが進められたのち、オーディオ情報ソースインターフェース３０は当該パケットを書き込みポインタによって指されているエントリー内に保存できる。当該パケットが保存されたのち、オーディオ情報ソースインターフェース３０は書き込みポインタを進める。書き込みポインタが指すのが末尾ポインタによって示されるリングバッファの末尾を超える場合には、リセットされて先頭ポインタによって指されるエントリーを指すようになる。この動作は繰り返されることができる。
【００６２】
上述したように、ゾーンプレーヤー１１（ｎ）は、所属している当該同期グループ２０のオーディオ情報チャネルデバイス２３および一メンバーの両方として動作することができる。その場合、オーディオ情報バッファ３１は一つのリングバッファを含めばよい。他方、ゾーンプレーヤー１１（ｎ）はある同期グループ２０（１）（図２Ａ）のためのオーディオ情報チャネルデバイス２３および別の同期グループ２０（２）の一メンバーとして動作することもできる。その場合、オーディオ情報バッファ３１は二つのリングバッファを維持することになる。一つは同期グループ２０（１）に関連付けられたオーディオおよび再生タイミング情報のためのもの、もう一つは同期グループ２０（２）に関連付けられたオーディオおよび再生タイミング情報のためのものである。後者の場合、ゾーンプレーヤー１１（ｎ）が再生のために使うオーディオおよび再生タイミング情報は同期グループ２０（２）に関連付けられたものだけであることは理解されるであろう。
【００６３】
再生スケジューラ３２は、ゾーンプレーヤー１１（ｎ）によって再生されるべき、オーディオ情報バッファ３１にバッファリングされているオーディオ情報の再生をスケジュールする。したがって、再生スケジューラ３２の制御のもとで、ゾーンプレーヤー１１（ｎ）によって再生されるべき、オーディオ情報バッファ３１にバッファリングされているデジタルオーディオ情報は、再生のためにデジタル‐アナログコンバータ３３に転送される。上述したように、ゾーンプレーヤー１１（ｎ）が自分がメンバーでない同期グループ２０のためのオーディオ情報チャネルデバイス２３として動作している場合、再生スケジューラ３２はその同期グループ２０によって再生されるべきデジタルオーディオ情報については再生のためのスケジュールをしない。再生スケジューラ３２がデジタルオーディオ情報のスケジュールをするとしたら、それは該デジタルオーディオ情報が、当該ゾーンプレーヤー１１（ｎ）がマスターデバイス２１であろうとスレーブデバイス２２（ｇ）であろうとメンバーである同期グループに関連付けられたオーディオ情報バッファ３１にバッファリングされている場合のみである。
【００６４】
本質的に、再生スケジューラ３２は、ゾーンプレーヤー１１（ｎ）によって再生されるべきオーディオおよび再生タイミング情報を含む循環バッファに付随する読み出しポインタを利用する。再生スケジューラ３２は読み出しポインタによって指されるリングバッファのエントリーからパケット情報を取得し、次いで上述したように読み出しポインタを進める。再生スケジューラ３２はパケット中のフレームの境界を判別し、各フレーム５１（ｆ）に付随するタイムスタンプフィールド６０内のタイムスタンプを、ゾーンプレーヤー１１（ｎ）のデジタル‐アナログコンバータクロック３４によって与えられるタイミング情報とともに使用して、各フレームがいつデジタル‐アナログコンバータ３３に転送されるべきかを決定する。概して、バッファリングされたデジタルオーディオ情報フレームに関連付けられたタイムスタンプがデジタル‐アナログコンバータクロック３４によって示される現在時刻に一致したときに、再生スケジューラ３２は当該フレームがデジタル‐アナログコンバータ３３に転送されるようにする。
【００６５】
やはりデジタル‐アナログコンバータクロック３４の制御下にあるデジタル‐アナログコンバータ３３は、バッファリングされているデジタルオーディオ情報をアナログ形式に変換し、そのアナログオーディオ情報をオーディオ増幅器３５に増幅のために提供する。増幅されたアナログ情報は今度はオーディオ再生デバイスインターフェース３６を通じてオーディオ再生デバイス１５（ｎ）（ｒ）に与えられる。オーディオ再生デバイス１５（ｎ）（ｒ）はアナログオーディオ情報信号を音に変換し、それによりオーディオ番組を聴取者に提供する。オーディオ増幅器３５がアナログ信号を増幅する程度は、制御モジュール４２によって、ユーザーインターフェースモジュール１３を通じてユーザーが与えたボリューム制御情報に従って制御される。
【００６６】
ネットワーク通信マネージャ４０はネットワーク１２を通じたネットワーク通信を制御し、ネットワークインターフェース４１はネットワーク１２を通じてメッセージパケットを送受信する。ネットワーク通信マネージャ４０は図２との関連で上記したさまざまな種類の情報の転送を助けるためのメッセージを送受信する。そうした情報には、チャネルデバイス制御情報、スレーブデバイス制御情報、オーディオおよび再生タイミング情報ならびにオーディオ情報チャネルデバイスのクロックタイミング情報が含まれる。チャネルデバイス制御情報およびスレーブデバイス制御情報に関連しては、ネットワーク通信マネージャ４０は、制御モジュール４２からの制御情報に反応してネットワーク１２上で転送するためのメッセージを生成する。同様に、ネットワーク通信マネージャ４０がチャネルデバイス制御情報およびスレーブデバイス制御情報を受け取ったときには、ネットワーク通信マネージャ４０は処理のために制御モジュール４２にその情報を提供する。
【００６７】
オーディオ情報チャネルデバイスのクロックタイミング情報に関しては、上述したように、同期グループ２０のマスターデバイス２１およびスレーブデバイス２２（ｇ）はよく知られたＳＮＴＰを使ってオーディオ情報チャネルデバイス２３からクロックタイミング情報を取得する。ゾーンプレーヤー１１（ｎ）は、ある同期グループのためのオーディオ情報チャネルデバイス２３として動作している場合、ＳＮＴＰ動作の間、その現在時刻、特にデジタル‐アナログコンバータクロック３４によって示される現在時刻を提供する。他方、ゾーンプレーヤー１１（ｎ）が同期グループ２０のマスターデバイス２１またはスレーブデバイス２２（ｇ）として動作している場合には、オーディオ情報チャネルデバイス２３からクロックタイミング情報を受け取ることになる。各デバイス２１、２２（ｇ）は、オーディオ情報チャネルデバイスのクロックタイミング情報を取得したのち、自分のデジタル‐アナログコンバータクロック３４によって示される時刻Ｔとオーディオ情報チャネルデバイス２３からの現在時刻情報とのずれを表す時間差の値ΔＴを生成する。この時間差の値を使って、オーディオ情報チャネルデバイスから受け取ったデジタルオーディオストリーム５０（図４）の諸フレームのためのタイムスタンプが更新される。
【００６８】
オーディオおよび再生タイミング情報に関し、ネットワーク通信マネージャ４０が実行する動作は：
（ｉ）オーディオおよび再生タイミング情報が、オーディオ情報チャネルデバイス２３としてネットワーク１２を通じての同期グループのマスターデバイス２１および／またはスレーブデバイス２２（ｇ）への送信のためにオーディオ情報バッファ３１にバッファリングされていたか、あるいは、
（ｉｉ）オーディオおよび再生タイミング情報が、同期グループのためのマスターデバイス２１かまたは同期グループ内のスレーブデバイスのいずれかとしてのゾーンプレーヤー１１（ｎ）によって再生されるべくネットワーク１２から受け取られたものか、
に依存する。ゾーンプレーヤー１１（ｎ）は自分がメンバーでない同期グループ２０（１）（図２Ａ参照）のためのオーディオ情報チャネルデバイス２３（１）と、別のゾーンプレーヤー１１（ｎ′）がオーディオ情報チャネルデバイス２３（１）である別の同期グループ２０（２）の一メンバーとの両方として動作しうるので、ネットワーク通信マネージャ４０が（ｉ）および（ｉｉ）の両方に同時的に携わりうることは理解されるであろう。上記の項（ｉ）を参照すると、送信されるべきパケットが各リングバッファにバッファリングされたのち、ネットワーク通信マネージャ４０はそのパケットを取得し、それをメッセージに詰め込み、ネットワークインターフェース４１をして該メッセージをネットワーク１２を通じて送信できるようにする。制御モジュール４２がユーザーインターフェースモジュール１３から（マスターデバイス２１が同期グループ２０のためのオーディオ情報チャネルデバイス２３でもある場合）、あるいはマスターデバイスから（マスターデバイス２１が当該同期グループ２０のためのオーディオ情報チャネルデバイス２３でない場合）上述したような「再同期」コマンドの送信を求める制御情報を取得した場合、オーディオ情報チャネルデバイス２３の制御モジュール４２によってネットワーク通信マネージャ４０は前記コマンドをオーディオおよび再生タイミング情報を含んでいるメッセージ中に挿入できるようになる。「再同期」コマンドに関連して実行される動作の詳細はのちに述べる。上述したように、「再同期」コマンドが使われるのは、ユーザーが同期グループに、現在再生されているトラックの再生を打ち切らせるか、あるいはまだ再生が始まっていないトラックの再生を取り消させる場合がある。
【００６９】
他方、上の項（ｉｉ）を参照すると、ネットワークインターフェース４１が、ゾーンプレーヤー１１（ｎ）が同期グループ２０のためのマスターデバイス２１またはスレーブデバイスとして再生するべきオーディオおよび再生タイミング情報の諸フレームを含んでいるパケットを含んでいるメッセージを受信した場合、ネットワークインターフェース４１は前記オーディオおよび再生タイミング情報をネットワーク通信マネージャ４０に提供する。ネットワーク通信マネージャ４０は当該パケットが再同期コマンドを含んでいるかどうかを判別し、含んでいれば制御モジュール４２に通知し、該制御モジュール４２がのちに述べる諸動作を実行させる。いずれの場合でも、ネットワーク通信マネージャ４０は通常、オーディオおよび再生タイミング情報を有するさまざまなフレームをオーディオ情報バッファ３１にバッファリングし、その動作においては一般に、オーディオ情報ソースインターフェース３０との関連で上述したように動作する。しかし、フレームをバッファリングする前に、ネットワーク通信マネージャ４０は上記した時間差の値を使ってそれらのタイムスタンプを更新する。ネットワーク通信マネージャ４０が、パケットを含むメッセージが上述したようなマルチキャストメッセージであろうとユニキャストメッセージであろうと同様の動作を実行することは理解されるであろう。
【００７０】
同期グループ２０内のマスターデバイス２１およびスレーブデバイス２２（ｇ）によるタイムスタンプの更新によって、それらのデバイスがみなオーディオ情報を同期的に再生することが保証される。具体的には、ネットワーク通信マネージャ４０は、ネットワークインターフェース４１からフレーム５１（ｆ）を受け取ったのち、デジタル‐アナログコンバータクロック３４からゾーンプレーヤー１１（ｎ）のデジタル‐アナログコンバータクロック３４によって示される現在時刻をも取得する。ネットワーク通信マネージャ４０はスレーブデバイスのデジタル‐アナログコンバータクロック３４によって示される該スレーブデバイスの現在クロック時刻と、オーディオ情報チャネルデバイス２３のクロックタイミング情報によって示されるオーディオ情報チャネルデバイス２３の時刻との間のずれである時間差の値を決定する。したがって、マスターまたはスレーブデバイスの現在時刻が値ＴＳであり、前記クロックタイミング情報によって示されるオーディオ情報チャネルデバイスの現在時刻が値ＴＣであれば、時間差の値はΔＴ＝ＴＳ−ＴＣとなる。同期グループ２０内のマスターまたはスレーブデバイスのデジタル‐アナログコンバータクロック３４によって示される現在時刻がＳＮＴＰ動作の間に受け取られたクロックタイミング情報によって示されるオーディオ情報チャネルデバイスのクロック時刻より進んでいる場合、時間差の値は正になる。他方、マスターまたはスレーブデバイスの現在時刻がオーディオ情報チャネルデバイスのクロック時刻より遅れている場合には、時間差の値ΔＴは負になる。ゾーンプレーヤー１１（ｎ）が同期グループ２０のメンバーである間、定期的にオーディオ情報チャネルデバイス２３からクロックタイミング情報を取得する場合、ネットワーク通信マネージャ４０は、オーディオ情報チャネルデバイス２３からクロックタイミング情報を受け取ったときに時間差の値ΔＴの更新値を生成することができ、その後はその更新された時間差の値を使う。
【００７１】
ネットワーク通信マネージャ４０は、オーディオ情報チャネルデバイスのタイミング情報とゾーンプレーヤー１１（ｎ）の現在時刻とから生成するこの時間差の値ΔＴを使って、ゾーンプレーヤー１１（ｎ）がオーディオ情報チャネルデバイスから受け取るデジタルオーディオ情報フレームに関連付けられたタイムスタンプを更新する。オーディオ情報チャネルデバイスから受け取られる各デジタルオーディオ情報フレームについて、フレームに関連付けられたタイムスタンプをメッセージの形で受け取られた通りにオーディオ情報バッファ２１内に保存するのではなく、ネットワーク通信マネージャ４０は更新されたタイムスタンプをデジタルオーディオ情報フレームとともに保存する。更新タイムスタンプは、ゾーンプレーヤー１１（ｎ）が同期グループのメンバーとしてそのデジタルオーディオ情報フレームを再生する際に当該同期グループ内の他のデバイスと同期して行うことになるような仕方で生成されている。
【００７２】
より詳細には、ゾーンプレーヤー１１（ｎ）のネットワークインターフェース４１は、一つまたは複数のフレーム５１（ｆ）を含むパケットを含むメッセージを受け取ったのち、そのパケットをネットワーク通信マネージャ４０に渡す。ネットワークインターフェース４１がネットワーク通信マネージャ４０から受け取るパケット中の各フレーム５１（ｆ）について、ネットワーク通信マネージャ４０は時間差の値ΔＴをそのフレームのタイムスタンプに加えてフレーム５１（ｆ）についての更新タイムスタンプを生成し、フレーム５１（ｆ）を、更新タイムスタンプをもつヘッダ５５（ｆ）とともにオーディオ情報バッファ３１内に保存する。よってたとえば、フレームのタイムスタンプが時刻値ＴＦをもつとすると、ネットワーク通信マネージャ４０は時刻値ＴＵＦ＝ＴＦ＋ΔＴをもつ更新された（ｕｐｄａｔｅｄ）タイムスタンプＴＵＦを生成する。スレーブデバイスのデジタル‐アナログコンバータクロック３４に基づく時刻値ＴＵＦはオーディオ情報チャネルデバイスのデジタル‐アナログコンバータクロック３４に基づく時刻の値ＴＦと同時であるため、ゾーンプレーヤー１１（ｎ）デバイスは、オーディオ情報チャネルデバイス２３によって決定された時刻にデジタルオーディオ情報フレームを再生することになる。同期グループ２０の全メンバーは同じ動作を実行して各自の時間差の値に関係して更新されたタイムスタンプＴＵＦをさまざまなフレーム５１（ｆ）について生成するので、同期グループ２０内のゾーンプレーヤー１１（ｎ）はすべてフレームを同期的に再生することになる。ネットワーク通信マネージャ４０はパケット内のタイムスタンプ６０のすべてについて更新タイムスタンプＴＵＦを生成し、それからパケットをオーディオ情報バッファ３１内に保存する。
【００７３】
オーディオ情報バッファ３１内にパケットを保存する前に、ネットワーク通信マネージャ４０はパケット内の諸フレームに関連付けられた更新タイムスタンプＴＵＦを、デジタル‐アナログコンバータクロック３４によって示されるスレーブデバイスの現在時刻と比較することができる。ネットワーク通信マネージャ４０は、パケット内のフレーム５１（ｆ）の更新タイムスタンプによって示される時刻がゾーンプレーヤーの現在時刻よりも早いと判別すれば、ゾーンバッファ１１（ｎ）がそれを再生することはないのであるから、そのパケットをオーディオ情報バッファ３１内に保存せずに棄てることができる。すなわち、更新タイムスタンプの時刻値ＴＵＦが同定する時刻が、ゾーンプレーヤーのデジタル‐アナログコンバータクロック３４によって示されるゾーンプレーヤーの現在時刻ＴＳよりも早い場合には、ネットワーク通信マネージャ４０はそのパケットを棄てることができるのである。
【００７４】
ゾーンプレーヤー１１（ｎ）が同期グループ２０のマスターデバイス２１として動作している場合、ユーザーがユーザーインターフェースモジュール１３を通じてゾーンプレーヤー１１（ｎ）に別のゾーンプレーヤー１１（ｎ′）がスレーブデバイス２２（ｇ）としてその同期グループ２０に加わろうとしていることを通知したとき、ゾーンプレーヤー１１（ｎ）の制御モジュール４２はネットワーク通信マネージャ４０をして、図２との関連で上記したメッセージの交換を行い、前記別のゾーンプレーヤー１１（ｎ′）がスレーブデバイスとして当該同期グループ２０に加われるようにさせる。上述したように、メッセージ交換の間、ゾーンプレーヤー１１（ｎ）のネットワーク通信マネージャ４０によって生成されるメッセージは、当該同期グループ２０に加わろうとしているゾーンプレーヤー１１（ｎ′）のネットワーク通信マネージャに対して、当該同期グループ２０にオーディオ番組を提供しているオーディオ情報チャネルデバイス２３によって使用されているマルチキャストアドレスおよび前記オーディオ情報チャネルデバイス２３のためのユニキャストアドレスといった情報を提供することになる。その情報を受け取ったのち、当該同期グループ２０に加わろうとしているゾーンプレーヤー１１（ｎ′）のネットワーク通信マネージャおよびネットワークインターフェースは、その同期グループのためのオーディオ番組を含むマルチキャストメッセージの受信を開始し、その同期グループの現在時刻を取得するためにオーディオ情報チャネルデバイス２３とＳＮＴＰトランザクションを行い、また前記オーディオ情報チャネルデバイス２３に以前にブロードキャスト済みのフレーム５１（ｆ）を上記したようなユニキャストメッセージ送信手法を使って当該ゾーンプレーヤー１１（ｎ′）に送ってもらうこともできる。
【００７５】
他方、ゾーンプレーヤー１１（ｎ）のネットワーク通信マネージャ４０およびネットワークインターフェース４１がネットワーク１２を通じて、当該ゾーンプレーヤー１１（ｎ）が別のゾーンプレーヤー１１（ｎ′）がマスターデバイスをしているある同期グループのスレーブデバイス２２（ｇ）になろうとしていることを示すメッセージを受け取った場合、ゾーンプレーヤー１１（ｎ）のネットワーク通信マネージャ４０はゾーンプレーヤー１１（ｎ）の制御モジュール４２に通知を提供する。その後、ゾーンプレーヤー１１（ｎ）の制御モジュール４２はゾーンプレーヤー１１（ｎ）のネットワーク通信マネージャ４０をして上記した動作を実行させ、それによりゾーンプレーヤー１１（ｎ）が同期グループ２０に加われるようにする。
【００７６】
上述したように、ユーザーはユーザーインターフェースモジュール１３を使って同期グループに、現在再生されているオーディオ番組のトラックの再生を打ち切らせることができる。現在再生されているトラックの再生が打ち切られたのち、再生は通常の仕方で、オーディオ情報バッファ３１内にバッファリングされている次のトラックに関して継続されることになる。それがもとの再生リストにある次のトラックまたは前のトラックでありうることは理解されるであろう。さらに、ユーザーは同期グループ２０に、まだ再生は始まっていないが同期グループ２０内でパケットのバッファリングはすでに始まっているトラックの再生を取り消させることもできる。これら両方の動作は、同期グループ２０のマスターデバイス２１がオーディオ情報チャネルデバイス２３に当該同期グループ２０に送信するマルチキャストメッセージストリーム中に含めさせることのできる「再同期」コマンドを利用する。一般に、前記再同期コマンドを受け取るのに反応して、同期グループ２０の諸メンバーはこれから再生するパケットを含んでいるリングバッファをフラッシュする。加えて、同期グループの諸メンバーが各自のデジタル‐アナログコンバータ３３のために別個のバッファを具備している場合には、諸メンバーはそれらのバッファも同じようにフラッシュする。オーディオ情報チャネルデバイスが再同期コマンドを含むパケットを送信したのちには：
（ｉ）現在再生されているトラックの再生を打ち切る再同期コマンドの使用の場合は、オーディオ情報チャネルデバイス２３はすぐ再生を始めるよう次のトラックのためのパケットのマルチキャストを開始し、上記した仕方で再生リストを継続し、
（ｉｉ）バッファリングは始まっているが再生はこれからであるトラックの再生を取り消す再同期コマンドの使用の場合は、オーディオ情報チャネルデバイス２３は、取り消されたトラックの再生が始まることになっていた時刻から再生が始められるよう、取り消されたトラックのあとのトラックのためのパケットのマルチキャストを開始し、上記した仕方で再生リストを継続する。
【００７７】
（ａ）第一の場合（すぐ上の項（ｉ））には、再同期コマンドは読み出しポインタを、巡回バッファ中で、次のトラックの最初のパケットが書き込まれるエントリーを指すようセットさせ、そのエントリーは書き込みポインタが指しているエントリーに対応することになるが、
（ｂ）第二の場合（すぐ上の項（ｉｉ））には、再同期コマンドは巡回バッファの書き込みポインタを、再生が取り消されるトラックの最初のパケットを含むエントリーを指すようセットさせる、
ことは理解されるであろう。さらに、バッファリングが始まっていないトラックが取り消される場合には、再同期コマンドは一般に必要ない。同期グループ２０のためのオーディオ情報チャネルデバイス２３は再生リストからそのトラックを消去するだけでよいからである。
【００７８】
現在再生されているトラックの再生を取り消すための再同期コマンドの使用に関連して実行される諸動作について、下記のパケットシーケンスＡとの関連で説明し、まだ再生が始まっていないがバッファリングは始まっているトラックの再生を取り消すための再同期コマンドの使用に関連して実行される諸動作について、下記のパケットシーケンスＢとの関連で説明する。
パケットシーケンスＡ
（Ａ１．０）［パケット５７］
（Ａ１．１）    ［フレーム９９の続き］
（Ａ１．２）    ［フレーム１００、時刻＝０：００：０１、種別＝ｍｐ３オーディオ］
（Ａ１．３）    ［フレーム１０１、時刻＝０：００：０２、種別＝ｍｐ３オーディオ］
（Ａ１．４）    ［フレーム１０２、時刻＝０：００：０３、種別＝ｍｐ３オーディオ］
（Ａ２．０）［パケット５８］
（Ａ２．１）    ［フレーム１０２の続き］
（Ａ２．２）    ［フレーム１０３、時刻＝０：００：０４、種別＝ｍｐ３オーディオ］
（Ａ２．３）    ［フレーム１０４、時刻＝０：００：０５、種別＝ｍｐ３オーディオ］
（Ａ２．４）    ［フレーム１０５、時刻＝０：００：０６、種別＝ｍｐ３オーディオ］
（Ａ３．０）［パケット５９］
（Ａ３．１）    ［フレーム１０５の続き］
（Ａ３．２）    ［フレーム１０６、時刻＝０：００：０７、種別＝ｍｐ３オーディオ］
（Ａ３．３）    ［フレーム１０７、時刻＝０：００：０８、種別＝ｍｐ３オーディオ］
（Ａ３．４）    ［フレーム１０８、時刻＝０：００：０９、種別＝ｍｐ３オーディオ］
（Ａ４．０）［パケット６０］
（Ａ４．１）    ［フレーム１０８の続き］
（Ａ４．２）    ［フレーム１０９、時刻＝０：００：１０、種別＝ｍｐ３オーディオ］
（Ａ４．３）    ［再同期コマンド］
（Ａ４．４）    ［必要ならパディング］
（Ａ５．０）［パケット６１］
（Ａ５．１）    ［フレーム１、時刻＝０：００：０７、種別＝ｍｐ３オーディオ］
（Ａ５．２）    ［フレーム２、時刻＝０：００：０８、種別＝ｍｐ３オーディオ］
（Ａ５．３）    ［フレーム３、時刻＝０：００：０９、種別＝ｍｐ３オーディオ］
（Ａ５．４）    ［フレーム４、時刻＝０：００：１０、種別＝ｍｐ３オーディオ］
（Ａ６．０）［パケット６２］
（Ａ６．１）    ［フレーム４の続き］
（Ａ６．２）    ［フレーム５、時刻＝０：００：１１、種別＝ｍｐ３オーディオ］
（Ａ６．３）    ［フレーム６、時刻＝０：００：１２、種別＝ｍｐ３オーディオ］
（Ａ６．４）    ［フレーム７、時刻＝０：００：１３、種別＝ｍｐ３オーディオ］
パケットシーケンスＡは、パケット５７からパケット６２によって同定される６つのパケットのシーケンスで、オーディオ情報チャネルデバイス２３がそれぞれのメッセージの形で同期グループ２０のメンバーにマルチキャストするものである。オーディオ情報チャネルデバイス２３が同期グループ２０にマルチキャストしうる一連のメッセージにはパケット５７より前のメッセージも含まれうるし、またパケット６２よりあとのメッセージも含まれうることは理解されるであろう。各パケットはパケットヘッダを有しており、それはパケットシーケンスＡでは行（Ａ１．０）、（Ａ２．０）、…（Ａ６．０）によって表されている。各パケットはまた一般には、フレームの少なくとも一部分に対応する情報を含む。パケットシーケンスＡ内で示されているパケットでは、各パケットは複数のフレームに対応する情報を含んでいる。パケットの長さに依存して、各パケットはフレームの一部分、一フレーム全体または複数フレームに対応する情報を含みうる。パケットシーケンスＡによって示されている例示では、各パケットは複数フレームに対応する情報を含みうるものとしている。さらに、パケットは必ずしも整数個のフレームに対応する情報を含むとは限らないものとしている。その場合、あるフレームの一部分に対応する情報がパケットに含まれることがあり、フレームの残りに対応する情報は次のパケットに含まれることになる。
【００７９】
さまざまなパケットに含まれるフレームおよび付随するヘッダ再生タイミング情報とはパケットシーケンスＡの行（Ａ１．１）、（Ａ１．２）、…、（Ａ１．４）、（Ａ２．１）、…（Ａ６．４）によって表されている。たとえば、パケット５７の行（Ａ１．２）は、パケット５７を含むパケットシーケンスにおいて送信されているオーディオ情報のトラックの１００番目のフレーム、すなわちフレーム５１（１００）を表す（図４参照）。フレーム５１（１００）は、オーディオ情報チャネルデバイスのデジタル‐アナログコンバータクロックに基づくある例示的な時刻「時刻＝０：００：０１」に再生されることになっており、よく知られたＭＰ３エンコード・圧縮手法がフレームのエンコードおよび／または圧縮に使われる。この場合、説明「時刻＝０：００：０１」がタイムスタンプを表しており、これが、当該同期グループのためのオーディオ情報チャネルデバイス２３によってマルチキャストされるフレーム５０（１００）に付随するヘッダのフィールド６０（図４）に含まれる。再生時刻およびエンコード／圧縮手法が、フレーム５１（１００）に付随するヘッダ５５（１００）内に参照されることは理解されるであろう。また、ヘッダが上記した追加情報をも含みうることも理解されるであろう。
【００８０】
同様に、パケット５７の行（Ａ１．３）は、パケット５７を含むパケットシーケンスにおいて送信されているオーディオ情報のトラックの１０１番目のフレーム、すなわちフレーム５１（１０１）を表す。フレーム５１（１００）は、オーディオ情報チャネルデバイスのデジタル‐アナログコンバータクロックに基づくある例示的な時刻「時刻＝０：００：０２」に再生されることになっており、やはりＭＰ３エンコード・圧縮手法がフレームのエンコードおよび／または圧縮に使われる。パケット５７の行（Ａ１．４）は同様の情報を表している。ただし、パケット５７の長さに依存して、行がフレーム５１（１０２）および／またはその付随するヘッダの全体の情報を表さないこともあることは理解されるであろう。パケット５７の長さがフレーム５１（１０２）および／またはその付随するヘッダの全体の情報を収容するのに十分でない場合、その情報はパケット５８に続く。そのことはパケットシーケンスＡでは行（Ａ２．１）によって示されている。同様に、パケット５６の長さがフレーム５１（１００）に先行するフレーム５１（９９）の全体の情報を含むのに十分でなかった場合には、パケット５７（行（Ａ１．０）から（Ａ１．４））は、パケット５６にはいりきらなかったフレーム５１（９９）の情報を含みうる。
【００８１】
上述したように、同期グループ２０内のマスターデバイス２１またはスレーブデバイス２２（ｇ）がパケット５７を受け取るとき、それぞれのネットワーク通信マネージャ４０は、さまざまなフレームをそれぞれのオーディオ情報バッファ３１内にバッファリングする前に上記したように各フレーム５１（ｆ）に関連付けられたタイムスタンプを更新する。
【００８２】
パケット５８および５９はパケット５７との関連で上記した行に沿った形で編成されている。
【００８３】
パケット６０も、行（Ａ４．１）および（Ａ４．２）によって示されるところでは、パケット５７から５９との関連で上記した行（Ａｘ．１）および（Ａｘ．２）（ｘは整数）によって示される情報の行に沿った形で編成された情報を含んでいる。一方、パケット６０は行（Ａ４．３）で表される再同期コマンドを含んでいる。パケット６０はまた、再同期コマンドに続いて、行４．４によって表されるようなパディングも含みうる。上述したように、同期グループ２０のマスターデバイス２１は、ユーザーが現在再生されているトラックの再生の取り消しを希望しているという通知をユーザーインターフェースモジュール１３から受け取ったときに、当該同期グループ２０にオーディオ情報を提供しているオーディオ情報チャネルデバイス２３をして再同期コマンドを含むメッセージをマルチキャストさせる。パケットシーケンスＡに示された例では、のちに述べるように、オーディオ情報チャネルデバイス２３は、マスターデバイス２１からユーザーがトラックの再生の取り消しを希望しているという通知を、自分のデジタル‐アナログコンバータクロック３４に基づいた「時刻＝０：００：０７」に対応する時刻に受け取り、パケット６０の行（Ａ４．３）において再同期コマンドを提供する。必要ならそのあとにパディングを続ける。
【００８４】
パケット５９の行（Ａ３．１）から（Ａ３．４）およびパケット６０の行（Ａ４．１）および（Ａ４．２）を調べれば明らかとなろうように、オーディオ情報チャネルデバイス２３は、同期グループのマスターデバイス２１から再同期コマンドをマルチキャストするための通知を、自分のデジタル‐アナログコンバータクロック３４によって示されるクロック時間に基づいた「時刻＝０：００：０７」に対応する時刻に受け取ったものの、それ（すなわち、オーディオ情報チャネルデバイス２３）はすでにその時刻およびその後に再生されるべきフレームを含むメッセージを送信してしまっている。すなわち、オーディオ情報チャネルデバイス２３は、パケット５９においてタイムスタンプ「時刻＝０：００：０７」「時刻＝０：００：０８」「時刻＝０：００：０９」をそれぞれ含むフレーム５１（１０６）から５１（１０８）を、パケット６０においてフレーム５１（１０８）の続きに加えてタイムスタンプ「時刻＝０：００：１０」を含むフレーム５１（１０９）をマルチキャストしてしまっている。（例示的なタイムスタンプによって示されている時刻は単に説明のためであり、実際の実施例においてはタイムスタンプの値やずれが異なる場合があることは理解されるであろう。）
上述したように、オーディオ情報チャネルデバイス２３は、マスターデバイス２１からしかるべき通知を受け取ったときに、再同期コマンドを含むパケットを含むメッセージをマルチキャストする。パケットシーケンスＡに示した例では、前記パケットは、オーディオ情報チャネルデバイスのデジタル‐アナログコンバータクロック時刻が「０：００：０７」に対応するときにマルチキャストされる。その後、二つのことが起こる。一方では、マスターデバイス２１およびスレーブデバイス２２（ｇ）は、前記再同期コマンドを含むパケットを受け取ったときに再生中のオーディオ番組の再生を停止する。
【００８５】
さらに、オーディオ情報チャネルデバイス２３は次のトラックのためのオーディオ情報を含むフレームを、前記再同期コマンドを含むパケットが送信されたデジタル‐アナログコンバータクロック時刻のすぐあとのタイムスタンプとともに送信することを開始する。したがって、さらにパケットシーケンスＡを参照すると、オーディオ情報チャネルデバイス２３はパケット６１を含むメッセージをマルチキャストしている。上に示したように、パケット６１は、行（Ａ５．１）から（Ａ５．３）に示されるように、フレーム５１（１）から５１（３）を含んでいるが、これは再生されるべきオーディオ番組の次のトラックの最初の３フレームである。これもＭＰ３エンコード・圧縮方式を使って圧縮・エンコードされ、タイムスタンプ「時刻＝０：００：０７」「時刻＝０：００：０８」「時刻＝０：００：１０」を伴っている。上述したように、「時刻＝０：００：０７」のタイムスタンプはオーディオ情報チャネルデバイス２３が再同期コマンドをマルチキャストするクロック時刻に対応しており、これらのフレームを受け取ったマスターデバイス２１およびスレーブデバイス２２（ｇ）は、それらのフレームの再生を、再同期コマンドを含むパケットを含むメッセージをオーディオ情報チャネルデバイス２３がマルチキャストしたあとすぐではないまでも非常に短時間で開始するものと期待されることになる。パケット６１はまた、そのトラックについての次のフレーム、すなわちフレーム５１（４）の少なくとも一部分も含んでいる。加えて、上に示したパケットシーケンスＡはさらに、フレーム５１（４）に関して必要な続きいっさいおよび３つのその後のフレームを含む後続のパケットすなわちパケット６２を含んでいる。そのトラックについて、また後続のトラックについて、何らかの追加的パケットが必要とされれば、それらも同様の仕方でマルチキャストされうる。
【００８６】
さらに上述したように、再同期コマンドはまた、すでに再生が始まっている一つまたは複数のトラックの再生を取り消すためにも使われうる。これについてパケットシーケンスＢとの関連で例示する。
パケットシーケンスＢ
（Ｂ１．０）［パケット１５７］
（Ｂ１．１）    ［フレーム９９の続き］
（Ｂ１．２）    ［フレーム１００、時刻＝０：００：０１、種別＝ｍｐ３オーディオ］
（Ｂ１．３）    ［フレーム１０１、時刻＝０：００：０２、種別＝ｍｐ３オーディオ］
（Ｂ１．４）    ［フレーム１０２、時刻＝０：００：０３、種別＝ｍｐ３オーディオ］
（Ｂ２．０）［パケット１５８］
（Ｂ２．１）    ［フレーム１０２の続き］
（Ｂ２．２）    ［フレーム１０３、時刻＝０：００：０４、種別＝ｍｐ３オーディオ］
（Ｂ２．３）    ［フレーム１０４、時刻＝０：００：０５、種別＝ｍｐ３オーディオ］
（Ｂ２．４）    ［フレーム１０５、時刻＝０：００：０６、種別＝ｍｐ３オーディオ］
（Ｂ３．０）［パケット１５９］
（Ｂ３．１）    ［フレーム１０５の続き］
（Ｂ３．２）    ［フレーム１０６、時刻＝０：００：０７、種別＝ｍｐ３オーディオ］
（Ｂ３．３）    ［トラック境界通知］
（Ｂ３．４）    ［必要ならパディング］
（Ｂ４．０）［パケット１６０］
（Ｂ４．１）    ［フレーム１、時刻＝０：００：０８、種別＝ｍｐ３オーディオ］
（Ｂ４．２）    ［フレーム２、時刻＝０：００：０９、種別＝ｍｐ３オーディオ］
（Ｂ４．３）    ［フレーム３、時刻＝０：００：１０、種別＝ｍｐ３オーディオ］
（Ｂ５．０）［パケット１６１］
（Ｂ５．１）    ［フレーム３の続き］
（Ｂ５．２）    ［フレーム４、時刻＝０：００：１１、種別＝ｍｐ３オーディオ］
（Ｂ５．３）    ［再同期、パケット１５９後］
（Ｂ５．４）    ［必要ならパディング］
（Ｂ６．０）［パケット１６２］
（Ｂ６．１）    ［フレーム１、時刻＝０：００：０８、種別＝ｍｐ３オーディオ］
（Ｂ６．２）    ［フレーム２、時刻＝０：００：０９、種別＝ｍｐ３オーディオ］
（Ｂ６．３）    ［フレーム３、時刻＝０：００：１０、種別＝ｍｐ３オーディオ］
（Ｂ６．４）    ［フレーム４、時刻＝０：００：１１、種別＝ｍｐ３オーディオ］
（Ｂ７．０）［パケット１６３］
（Ｂ７．１）    ［フレーム４の続き］
（Ｂ７．２）    ［フレーム５、時刻＝０：００：１２、種別＝ｍｐ３オーディオ］
（Ｂ７．３）    ［フレーム６、時刻＝０：００：１３、種別＝ｍｐ３オーディオ］
（Ｂ７．４）    ［フレーム７、時刻＝０：００：１４、種別＝ｍｐ３オーディオ］
パケットシーケンスＢは、パケット１５７からパケット１６３によって同定される７つのパケットのシーケンスで、オーディオ情報チャネルデバイス２３が同期グループ２０のメンバーにマルチキャストするものである。パケットシーケンスＡの場合と同様、オーディオ情報チャネルデバイス２３が同期グループ２０にマルチキャストしうる一連のパケットにはパケット１５７より前のパケットも含まれうるし、またパケット１６２よりあとのパケットも含まれうることは理解されるであろう。各パケットはパケットヘッダを有しており、それはパケットシーケンスＢでは行（Ｂ１．０）、（Ｂ２．０）、…（Ａ７．０）によって表されている。パケットシーケンスＡの場合と同様、各パケットはまた一般には、付随するヘッダ５５（ｆ）とともにフレーム５１（ｆ）の少なくとも一部分に対応する情報を含む。パケットシーケンスＡ内で示されているパケットと同様に、各パケットは複数のフレームに対応する情報を含んでいる。パケットの長さに依存して、各パケットはフレームの一部分、一フレーム全体または複数フレームに対応する情報を含みうる。さらに、パケットシーケンスＡの場合と同様、各パケットは複数フレームに対応する情報を含みうるものとしている。さらに、パケットは必ずしも整数個のフレームに対応する情報を含むとは限らないものとしている。その場合、あるフレームの一部分に対応する情報がパケットに含まれることがあり、フレームの残りに対応する情報は次のパケットに含まれることになる。
【００８７】
パケットシーケンスＢによって示されているパケットの構造はパケットシーケンスＡとの関連で上記したものと同様であり、ここで繰り返しはしない。一般に、パケットシーケンスＢは、例示的に、たとえばある再生リストから選択されたものでありうる３つのトラックの少なくとも一部分を表すパケットのシーケンスを含んでいる。具体的には、パケット１５７から１５９は一つのトラックの一部分からのフレームを表し、パケット１６０および１６１は第二のトラックからのフレームを表し、パケット１６２および１６３は第三のトラックからのフレームを表す。再生リストは、第一、第二、第三のトラックがその順に再生されるべきであったことを示していた。特にパケットシーケンスＢを参照すると、行（Ｂ３．３）によって、パケット１５９が当該トラックの最終フレームを含んでいるという指示が該パケット１５９に含まれていることが示されており、行（Ｂ３．４）によってそのパケットの末尾までのパディングを行わせていることがわかるであろう。次のトラックの最初のフレームはパケット１６０において始まる。
【００８８】
トラックの再生を取り消すための再同期コマンドの使用に関連して、前記トラックの少なくとも一部分はオーディオ情報チャネルデバイス２３が同期グループのメンバーにマルチキャストしてしまっているとすると、パケット１６１は行（Ｂ５．３）において、再同期がパケット１５９のあとに、すなわちパケットシーケンスＢ内のパケットによって表される３つのトラックの第一のものの最終フレームを含むパケットのあとすぐに生起することになることを示す再同期コマンドを表している。ここで、再同期コマンドはパケット１６１にあるが、再同期が生起するのはパケット１６０であることを注意しておく。つまり、当該同期グループはパケット１６０から始まるトラックを再生せず、代わりに次のパケット、すなわちパケット１６２で始まるトラックのフレームの再生を開始することになるのである。パケットシーケンスＡの場合と同様、パケットシーケンスＢにおいても、オーディオ情報チャネルデバイス２３はパケット１６２および１６３において、タイムスタンプからパケット１６０および１６１においてマルチキャストされたフレームが再生されるはずだったときに再生されるべきであることが示されるフレームがマルチキャストされる。再同期コマンドを使い、このようにしてパケットを特定することにより、オーディオ情報チャネルデバイスはまだ再生が始まっていないトラックの再生を取り消すことができる。
【００８９】
オーディオ情報チャネルデバイス２３が同期グループ２０へのマルチキャストを始めていないトラックの再生を取り消すためには，一般に再同期コマンドは必要ないことは理解されるであろう。オーディオ情報チャネルデバイス２３が再生リストを整理し直すことで自分でその取り消しに対応できるからである。
【００９０】
本発明は数多くの利点を提供する。具体的には、本発明は、ネットワークを通じて該ネットワークに接続されているさまざまなゾーンプレーヤーに送信されるデジタルオーディオ情報を含みうるパケットが異なる遅延を有するかもしれず、前記ゾーンプレーヤーが独立したクロックで動作するという事実にもかかわらず、いくつかのデバイスが情報を共有するネットワークオーディオシステムがオーディオ情報を同期的に再生できるようにする。さらに、本発明はオーディオ情報との関連で述べられてきたものの、本発明がデバイスの間の同期が望ましいいかなる種類の同時情報との関連でも用途を見出すであろうことは理解されるであろう。当該システムは、同期グループが動的に生成され、破棄されるようになっており、またマスターデバイスとしての専用デバイスの必要を回避するような仕方になっている。
【００９１】
上記したネットワークオーディオシステム１０には数多くの変更および修正を施しうることは理解されるであろう。たとえば、本発明は、オーディオ情報チャネルデバイス２３が特定の種類のエンコード・圧縮手法を使ってエンコードされたデジタルオーディオ情報を同期グループ２０のメンバーに提供できるようにするものとして記載してきたが、オーディオ情報チャネルデバイス２３はさまざまな種類のエンコード・圧縮手法を使ってエンコード・圧縮され、さらにさまざまなサンプリングレートが使用されたデジタルオーディオ情報を同期グループ２０のさまざまなメンバーに提供できることは理解されるであろう。たとえば、オーディオ情報チャネルデバイス２３はマスターデバイス２１およびスレーブデバイス２２（１）から２２（ｇ１）にはＭＰ３手法を使ってある指定されたサンプリングレートでデジタルオーディオ情報を提供し、同じ番組のデジタルオーディオ情報をスレーブデバイス２２（ｇ１＋１）から２２（ｇ２）にはＷＡＶ手法を使ってある指定されたサンプリングレートで、スレーブデバイス２２（ｇ２＋１）から２２（Ｇ）にはＷＡＶ手法を使って別の指定されたサンプリングレートで提供してもよい。その場合、オーディオ情報チャネルデバイス２３は使用されたその特定のエンコード・圧縮手法を各フレームに関連付けられるエンコード種別フィールド５７に、サンプリングレートをサンプリングレートフィールド５８に指定することができる。さらに、エンコード・圧縮種別およびサンプリングレートは各フレームについて指定されるため、エンコード・圧縮種別およびサンプリングレートはフレームごとに変えることできる。オーディオ情報チャネルデバイス２３は異なるエンコード・圧縮種別およびサンプリングレートに対しては異なるマルチキャストアドレスを使ってもよいが、それが必須でないことは理解されるであろう。
【００９２】
エンコード・圧縮手法およびサンプリングレートをトラックごとなどではなくフレームごとに与えるようにすることの利点が、それにより、スレーブデバイスが同期グループ２０に加わるのが容易になり、マスターデバイス２１またはオーディオ情報チャネルデバイス２３にエンコード・圧縮手法やサンプリングレートを通知してもらう必要もなくなることであることは理解されるであろう。
【００９３】
もう一つの修正は、同期グループ２０のメンバーのネットワーク通信マネージャ４０がデジタルオーディオ情報フレームについての更新タイムスタンプＴＵＦを生成するのに時間差の値ΔＴをフレームに関連付けられたタイムスタンプＴＦに足すのではなく、ネットワーク通信マネージャ４０は代わりに更新タイムスタンプＴＵＦの生成を、時間差の値ΔＴを、そのデジタルオーディオ情報を受け取った時点で当該メンバーのデジタル‐アナログコンバータクロック３４が示す当該メンバーの現在時刻ＴＳから引くことによって行ってもよい。しかし、スレーブデバイスのネットワーク通信マネージャ４０によるメッセージの処理における時間遅延は多様でありうるので、時間差の値ΔＴの生成はオーディオ情報チャネルデバイス２３によって提供されるタイムスタンプＴＦを使って行うことが好ましい場合があることは理解されるであろう。
【００９４】
さらに、同期グループのメンバーのネットワーク通信マネージャ４０が当該メンバーのデジタル‐アナログコンバータクロックとオーディオ情報チャネルデバイスのデジタル‐アナログコンバータクロックとの間のずれを反映するために更新タイムスタンプを生成するのではなく、ネットワーク通信マネージャ４０は時間差の値ΔＴを生成してそれを当該メンバーの再生スケジューラ３２に提供することもできる。その場合、当該メンバーのネットワーク通信マネージャ４０は各デジタルオーディオ情報フレームを、マスターデバイスから受け取られたタイムスタンプＴＦとともにオーディオ情報バッファ３１内に保存することができる。再生スケジューラ３２は、時間差の値ΔＴおよび当該デジタルオーディオ情報フレームに関連付けられたタイムスタンプＴＦを利用して、各デジタルオーディオ情報フレームがいつ再生されるべきかを決定できる。あるデジタルオーディオ情報フレームがいつ再生されるべきかを決定する際には、再生スケジューラが時間差の値をそのデジタルオーディオ情報フレームに関連付けられたタイムスタンプＴＦに足して、その和によって示される時刻が当該スレーブデバイスのデジタル‐アナログコンバータクロック３４によって示される現在時刻に一致したときに当該デジタルオーディオ情報フレームがデジタル‐アナログコンバータ３３に転送されるようにすることができる。あるいはまた、当該メンバーのデジタル‐アナログコンバータクロック３４がその現在時刻ＴＳを更新するときに、再生スケジューラは、時間差の値ΔＴを現在時刻ＴＳから引いて更新された現在時刻ＴＳ′を生成し、その更新された現在時刻ＴＳ′を使ってデジタルオーディオ情報フレームをいつ再生すべきかを決定することができる。
【００９５】
上記したように、同期グループ２０のメンバーは定期的にオーディオ情報チャネルデバイスの現在時刻の値を取得し、オーディオ情報チャネルデバイスから受け取るその現在時刻の値を使って定期的に、さまざまなフレームに関連付けられたタイムスタンプの更新に使う時間差の値ΔＴを更新する。同期グループ２０のメンバーに付随するデジタル‐アナログコンバータクロックが当該デジタル‐アナログコンバータクロックと同じレートをもつことが保証されるとすれば、メンバーに必要なのは、再生の開始の時点で一度オーディオ情報チャネルデバイスから現在時刻の値を取得することだけであることは理解されるであろう。
【００９６】
もう一つの代替として、各ゾーンプレーヤーが、ネットワーク通信マネージャ４０のような要素によって時刻とレートを設定できるデジタル‐アナログコンバータクロック３４を具備している場合、あるゾーンプレーヤー１１（ｎ）が同期グループ２０のメンバーとして動作しているとき、そのネットワーク通信マネージャ４０はオーディオ情報チャネルデバイス２３から受け取るさまざまな種類のタイミング情報を、該同期グループのメンバーが再生のために使うデジタル‐アナログコンバータクロックの時刻の値および／またはクロックレートを調整するために使うことができる。そうしたタイミング情報には、現在時刻情報と、さまざまなフレーム５１（ｆ）に関連付けられたタイムスタンプによって示される、受け取ったオーディオおよび再生タイミング情報をなす再生タイミング情報とが含まれる。調整されるのがクロックの時刻値である場合、同期グループ２０のメンバーのネットワーク通信マネージャ４０が最初に現在時刻情報をその同期グループ２０のためのオーディオ情報チャネルデバイス２３から受け取るときに、ネットワーク通信マネージャ４０はその同期グループのメンバーのデジタル‐アナログコンバータクロック３４を、オーディオ情報チャネルデバイスの現在時刻情報によって示される現在時刻の値に設定することができる。ネットワーク通信マネージャ４０が前記クロック３４をオーディオ情報チャネルデバイスの現在時刻情報によって示される現在時刻の値に設定するのは、一度だけ行うことも、あるいは現在時刻情報を受け取る際に定期的に行うこともできる。
【００９７】
代替的に、あるいは追加的に、同期グループのメンバーのネットワーク通信マネージャ４０は再生のために使う前記クロック３４のクロックレートを調整するために、現在時刻情報および／またはそれぞれのフレーム５１（ｆ）に関連付けられたタイムスタンプ中の再生タイミング情報の一方または両方を使うことができる。たとえば、同期グループのメンバーのネットワーク通信マネージャ４０は、時刻値Ｔｆｘをもつタイムスタンプをもつフレーム５１（ｆｘ）を受け取るとき、上記したように更新時刻値ＴＵｆｘ＝Ｔｆｘ＋ΔＴを生成し、更新時刻値をもつタイムスタンプをもつそのフレームをオーディオ情報バッファ３１に保存することができる。さらに、１フレーム中の標本値の数およびサンプリングレート（このレートがそのフレームが再生されるレートを決める）は両方ともネットワーク通信マネージャ４０には既知であるので、ネットワーク通信マネージャ４０はその情報をフレーム５１（ｆｘ）について使われるべき前記更新時刻値ＴＵｆｘとともに使って、期待される（ｅｘｐｅｃｔｅｄ）更新時刻値ＴＥｆｘ＋１＝を生成することができる。これは、次のフレーム５１（ｆｘ＋１）の更新タイムスタンプとして期待されるものである。同期グループのメンバーのネットワーク通信マネージャ４０は、次のフレーム５１（ｆｘ＋１）を受け取ったのち、更新時刻値ＴＵｆｘ＋１を生成してその値を期待される更新時刻値ＴＥｆｘ＋１と比較することができる。二つの時刻値が一致しなければ、あるいは両者の差がある所定の閾値レベルより大きければ、タイムスタンプを生成するためにオーディオ情報チャネルデバイス２３によって使われたクロックの進むレートは当該同期グループのメンバーのデジタル‐アナログコンバータクロック３４とは異なっており、よってネットワーク通信マネージャ４０は当該デジタル‐アナログコンバータクロック３４のレートをオーディオ情報チャネルデバイス２３によって使われるクロックのレートに近づくよう調整して、時間差の値ΔＴが一定になるようにすることができる。他方、前記二つの時刻の値が一致していれば、あるいは差がある閾値レベルよりも小さければ、時間差の値ΔＴは一定であり、ネットワーク通信マネージャ４０はデジタル‐アナログコンバータクロック３４のクロックレートを変える必要はない。クロックレートが調整される場合、レートの調整は固定でもよいし、たとえば更新時刻値ＴＵｆｘ＋１と期待される更新時刻値ＴＥｆｘ＋１との間の差に基づいて変わるようにしてもよい。
【００９８】
また、あるフレーム５１（ｆｘ＋１）についてレート調整が実行されない場合、同期グループのメンバーのネットワーク通信マネージャ４０は、次のフレーム５１（ｆｘ＋２）の更新タイムスタンプについて期待される、期待される更新時刻値ＴＥｆｘ＋２を、フレーム５１（ｆｘ）について決定された更新された時刻の値ＴＵｆｘを１フレーム中の標本値の数およびサンプリングレートとともに使って生成し、その期待される更新時刻値ＴＥｆｘ＋２をフレーム５１（ｆｘ＋２）を受け取ったときに自らが生成する更新時刻値ＴＵｆｘ＋２と比較することができる。ネットワーク通信マネージャ４０は、その時点において二つの時刻の値が一致しないと判定する場合、あるいは両者の差がある所定の閾値レベルより大きい場合、当該デジタル‐アナログコンバータクロック３４のレートを調整することができる。一連のいくつかのフレーム５１（ｆｘ＋１）、５１（ｆｘ＋２）…についてレート調整が実行されなかった場合にも同様の処理を実行することができる。これにより、前記クロック３４とオーディオ情報チャネルデバイス２３によってタイムスタンプの生成に使われているクロックとの間のレートが二つ以上の一連のフレームのタイムスタンプを使っても検出できないほど小さい量だけずれている可能性に対応できる。
【００９９】
上記したようにクロックレートを調整する代わりに、あるいはそれに加えて、同期グループのメンバーのネットワーク通信マネージャ４０は同様の処理を、オーディオ情報チャネルデバイス２３から受け取る現在時刻情報との関連でクロックレートを調整することに関連して実行することもできる。
【０１００】
さらに、当該ネットワークオーディオシステム１０は、同期グループ２０のマスターデバイス２１がユーザーからユーザーインターフェースモジュール１３を通じて与えられる制御情報に反応して、あるゾーンプレーヤー１１（ｎ）に対して該ゾーンプレーヤー１１（ｎ）がスレーブデバイス２２（ｇ）として当該同期グループ２０のメンバーになることになっているという通知を与えることができるような形で述べられてきたが、ユーザーインターフェースモジュール１３がその通知を直接に、当該同期グループ２０のメンバーになることになっているゾーンプレーヤー１１（ｎ）に与えることもできることは理解されるであろう。その場合、ゾーンプレーヤー１１（ｎ）はマスターデバイス２１に、自分がその同期グループ２０におけるスレーブデバイス２２（ｇ）になることになっていることを通知することができ、そののちにマスターデバイス２１は、オーディオ情報チャネルデバイスのマルチキャストアドレスおよびユニキャストアドレスならびに上記したようなその他の情報を含む、当該同期グループ２０に関する情報を提供することができる。
【０１０１】
同様に、当該ネットワークオーディオシステム１０は、同期グループ２０のマスターデバイス２１が、ユーザーからユーザーインターフェースモジュール１３を通じて与えられる制御情報に反応して、スレーブデバイス２２（ｇ）に対して該スレーブデバイス２２（ｇ）にそのボリュームを調整させるコマンドを与えることができるような形で述べられてきたが、ユーザーインターフェースモジュール１３がその制御情報を直接にそのスレーブデバイス２２（ｇ）に与え、該スレーブデバイス２２（ｇ）にそのボリュームを調節させることもできることは理解されるであろう。
【０１０２】
さらに、ネットワークオーディオシステム１０は、各フレーム５１（ｆ）にフレームシーケンス番号が割り当てられている（図４のフィールド５６参照）ように述べられてきたが、上でパケットシーケンスＡおよびパケットシーケンスＢとの関連で述べたパケットにパケットシーケンス番号が与えられていれば、フレームシーケンス番号を与える必要はないことも理解されるであろう。フレームの順序関係を定義するためにはパケットシーケンス番号で十分だからである。
【０１０３】
さらに、ネットワークオーディオシステム１０は、ゾーンプレーヤー１１（ｎ）がそれぞれのデジタル‐アナログコンバータ３３によって与えられるアナログ信号を増幅するためのオーディオ増幅器３５を具備するように述べられてきたが、それ自身ではオーディオ増幅器を含まないゾーンプレーヤーを設けてもよいことは理解されるであろう。その場合、アナログ信号はオーディオ再生デバイス１５（ｎ）（ｒ）に与えられる前に必要に応じて増幅のために外部増幅器に結合されうる。単一のゾーンプレーヤー１１（ｎ）に対して、複数のオーディオ増幅器およびオーディオ再生デバイスならびに必要なら複数のデジタル‐アナログコンバータ３３を、対応する数の同期グループにオーディオ番組を提供するために具備してもよいことは理解されるであろう。
【０１０４】
同様に、ゾーンプレーヤー１１（ｎ）は、一つまたは複数のオーディオ情報ソースに接続されうるように述べられてきたが、オーディオ情報ソースがゾーンプレーヤー１１（ｎ）の部分をなしてそれに統合されていてもよいことは理解されるであろう。たとえば、ゾーンプレーヤーは、その内部に統合されているコンパクトディスクプレーヤー、カセットテーププレーヤー、放送ラジオ受信機などを含みうる。さらに、上述したように、個々のゾーンプレーヤー１１（ｎ）が複数のオーディオ情報ソースに接続されていてもよく、また複数の同期グループのためのオーディオ情報チャネルデバイス２３として同時的に動作してもよい。
【０１０５】
さらに、図１はネットワークオーディオシステム１０をユーザーインターフェースモジュール１３を一つ含むものとして示しているが、システム１０が複数のユーザーインターフェースモジュールを含んでいてもよいことは理解されるであろう。各ユーザーインターフェースモジュールが上記したようなゾーンプレーヤーのすべての制御に有用であってもよいし、あるいはまたユーザーインターフェースモジュールの一つまたは複数がゾーンプレーヤーの所定のサブセットの制御に有用であってもよい。
【０１０６】
その上、本発明はオーディオ情報との関連で述べられてきたが、本発明がネットワークに接続されているデバイスの間での同期が望ましいいかなる種類の情報との関連でも用途を見出すことが理解されるであろうことは理解されるであろう。
【０１０７】
上述したように、ゾーンプレーヤー１１（ｎ）がある同期グループ２０のためのオーディオ情報チャネルデバイス２３として動作している間に、そのゾーンプレーヤー１１（ｎ）のオーディオ情報ソースインターフェース３０またはネットワーク通信マネージャ４０がオーディオ情報ソース１４（ｎ）（ｓ）からのオーディオ情報に基づくデジタルオーディオ情報フレームをオーディオ情報バッファ３１内に保存するとき、各フレームについて、オーディオ情報バッファ３１内にバッファリングされたのち若干の時間遅延後の再生のためにスケジュールするためにタイムスタンプが提供される。遅延が設けられるのは、同期グループのメンバーとして動作している他のゾーンプレーヤー１１（ｎ′）、１１（ｎ″）…のために、該他のゾーンプレーヤー１１（ｎ′）、１１（ｎ″）…にネットワーク１２を通じてオーディオおよび再生タイミング情報が転送されるのに十分な時間があるようにして、前記情報が上記した適切な時刻に処理され、再生されうるようにするためである。前記時間遅延として選択される時間期間は固定でも可変でもよく、いずれの場合であってもいくつかの因子に基づきうる。前記時間遅延について選ばれる時間期間が固定の場合、それはたとえば、ネットワーク１２における最大遅延の推定、ゾーンプレーヤー１１（ｎ）をなすさまざまなコンポーネントの推定最大負荷および当業者が理解するであろうその他の推定といった因子に基づきうる。
【０１０８】
前記時間遅延はあらゆる種類のオーディオ情報ソースからのオーディオ情報について同一であってもよいし、同期グループ２０がオーディオ作品を再生している全期間にわたって一定であってもよい。あるいはまた、さまざまな基準に基づいて異なる時間遅延が利用されてもよい。たとえば、オーディオ情報が他の種類のメディアに関連した情報とは独立に再生される場合には、時間遅延は、１秒のかなりの部分またはそれ以上のオーダーなど、比較的長く設定してもよい。他方、オーディオ情報がたとえば、ビデオディスク、ビデオテープカセット、ケーブル、衛星または放送テレビなどによって供給されうるビデオ情報と同時的に再生される場合、そのようなビデオ情報はバッファリングするわけにいかなかったり、あるいはネットワークオーディオシステム１０とは独立に表示される可能性があったりするので、前記のような長い遅延を設けることは望ましくないことがありうる。当該オーディオ再生の時間遅延は前記ビデオ表示との関係で感知しうるかもしれないからである。その場合、ゾーンプレーヤー１１（ｎ）はずっと短い時間遅延を与えることができる。ある実施形態では、ビデオ情報と同時並行して再生されるオーディオ情報のために設けられる時間遅延は、一般に５０ミリ秒のオーダーに選ばれる。これはビデオの視聴者に対して感知できるとしてもかろうじてといったところである。その他の種類のソースからの情報についての望ましい時間遅延は当業者には明らかであろう。
【０１０９】
さらにいま一つの可能性として、ゾーンプレーヤー１１（ｎ）は、同期グループ２０についてのオーディオ情報チャネルデバイス２３として動作しているとき、ネットワークオーディオシステム１０内のいくつかの条件に基づいて動的に前記時間遅延を決定することができる。その条件にはたとえば、ネットワーク１２内でのメッセージ転送遅延、さまざまなゾーンプレーヤー１１（ｎ′）、１１（ｎ″）…において使われているマイクロプロセッサまたはその他のコンポーネントの負荷ならびにその他の因子といったものが含まれる。たとえば、オーディオ情報チャネルデバイス２３が、ネットワーク１２内の遅延が選択した閾値を超えたと判定した場合、オーディオ情報チャネルデバイス２３は前記時間遅延を調整して同期グループ２０のメンバーが適切な時刻に再生できるようにパケットを受信してフレームを処理できる可能性を増すようにする。同様に、オーディオ情報チャネルデバイス２３が、オーディオ情報を提供してやっている同期グループ２０のあるメンバーが送信してやっているフレームを受信して処理するのに追加的な時間を必要としていると通知された場合、オーディオ情報チャネルデバイス２３は前記時間遅延をしかるべく調整することができる。同期グループのメンバーによるオーディオ再生に生じうる飛びを軽減または最小化するため、オーディオ情報チャネルデバイス２３は、ある特定のオーディオトラックの期間中の時間遅延を調整するのではなく、トラックとトラックとの間の、あるトラックの無音期間の、あるいは当業者が理解するであろうその他の場合の時間遅延を調整することもできることは理解されるであろう。さらに、オーディオ情報チャネルデバイス２３は、追加的な時間遅延を提供する過程にある間に、通常のオーディオ圧縮手法を使ってオーディオトラックの再生の加速および／または減速を助けることもできる。一般に、同期グループ２０のメンバーは、追加的な時間遅延が必要であると判定すれば、オーディオ情報チャネルデバイス２３に通知を提供することができ、オーディオ情報チャネルデバイス２３は同期グループ２０のメンバーからの通知に基づいて時間遅延を調整することができる。
【０１１０】
本発明に基づくシステムが、全体的または部分的に、専用目的ハードウェアもしくは汎用コンピュータシステムまたはその任意の組み合わせによって構築することができ、そのいかなる部分も好適なプログラムによって制御されうることは理解されるであろう。任意のプログラムは全体的または部分的に、従来の仕方でシステムの部分をなしていたりシステムに保存されたりしていてもよいし、あるいは全体的または部分的に従来の仕方で情報を転送するためのネットワークまたはその他の機構を通じてシステムに提供されてもよい。さらに、当該システムは、該システムに直接接続されていてもよいし当該システムに従来の仕方で情報を転送するためのネットワークまたはその他の機構を通じて情報を転送してもよいオペレーター入力要素（図示せず）を使ってオペレーターによって与えられる情報によって操作および／またはその他の仕方で制御されてもよいことは理解されるであろう。
【０１１１】
これまでの記述は、本発明の特定の実施形態に限定されてきた。しかし、本発明にさまざまな変形および修正を施して本発明の利点の一部または全部を実現しうることは明らかであろう。付属の請求項は、本発明の真の精神および範囲内にはいる上述した、およびそのような他の変形および修正をカバーすることを目的としている。
【図面の簡単な説明】
【０１１２】
【図１】本発明に基づいて構築された例示的なネットワーク化オーディオシステムを概略的に描いた図である。
【図２】図１に描かれたネットワーク化オーディオシステム内に形成される複数のゾーンプレーヤーを利用した同期グループの機能ブロック図を概略的に描いた図である。
【図２Ａ】二つの同期グループを概略的に描いており、ある同期グループのメンバーが別の同期グループのメンバーにオーディオ情報を提供できる様子を例示する図である。
【図３】図１に描かれたネットワーク化オーディオシステムにおける使用のためのゾーンプレーヤーの機能ブロック図を描いた図である。
【図４】図１に描かれたネットワークオーディオシステムにおいて有用なデジタルオーディオ情報フレーム構成の仕方を理解するのに有用な図である。
【図１】
2007512718.tif 000003
【図２】
2007512718.tif 000004
【図２Ａ】
2007512718.tif 000005
【図３】
2007512718.tif 000006
【図４】
2007512718.tif 000007