(57)【特許請求の範囲】
【請求項１】
サーバと、複数のクライアントと、からなるコンテンツデータ配信システムであって、
前記サーバは、時刻情報が含まれたテストデータを、各クライアントと送受信するサーバ側通信部と、
前記サーバ側通信部で送受信された各テストデータの時刻情報に基づいて該サーバと各クライアントの基準時間差を求める算出部と、
前記基準時間差を示す情報を各クライアントに配信する配信部と、
を備え、
前記配信部は、再生タイミングを示す情報が含まれたコンテンツデータを配信し、
各クライアントは、前記サーバから受信した前記基準時間差を示す情報で、前記コンテンツデータの再生タイミングを補正する補正部を備え、
前記サーバが送信するテストデータには、送信時刻情報が含まれ、
各クライアントが送信する返信テストデータには、前記テストデータの受信時刻情報と、当該返信テストデータの送信時刻情報と、が含まれ、
前記算出部は、前記テストデータの送信時刻と、前記返信テストデータの受信時刻と、の相加平均、および各クライアントにおける前記テストデータの受信時刻と、前記返信テストデータの送信時刻と、の相加平均、を算出し、
前記サーバの相加平均と各クライアントの相加平均との差を前記基準時間差として算出することを特徴とするコンテンツデータ配信システム。
【請求項２】
サーバと、複数のクライアントと、からなるコンテンツデータ配信システムであって、
前記サーバは、時刻情報が含まれたテストデータを、各クライアントと送受信するサーバ側通信部と、
前記サーバ側通信部で送受信された各テストデータの時刻情報に基づいて該サーバと各クライアントの基準時間差を求める算出部と、
再生タイミングを示す情報が含まれたコンテンツデータを配信する配信部と、
各クライアントとの基準時間差を示す情報で、各クライアントに配信するコンテンツデータの再生タイミングを補正する補正部と、を備え、
前記サーバが送信するテストデータには、送信時刻情報が含まれ、
各クライアントが送信する返信テストデータには、前記テストデータの受信時刻情報と、当該返信テストデータの送信時刻情報と、が含まれ、
前記算出部は、前記テストデータの送信時刻と、前記返信テストデータの受信時刻と、の相加平均、および各クライアントにおける前記テストデータの受信時刻と、前記返信テストデータの送信時刻と、の相加平均、を算出し、
前記サーバの相加平均と各クライアントの相加平均との差を前記基準時間差として算出することを特徴とするコンテンツデータ配信システム。
【請求項３】
前記テストデータの送受信は、複数回実行され、
前記算出部は、前記テストデータを送信してから受信するまでの時間差が最も小さい値を用いて、前記サーバと各クライアントの基準時間差を算出する請求項１または請求項２に記載のコンテンツデータ配信システム。
【請求項４】
前記時刻情報が含まれたデータの送受信は、前記コンテンツデータの配信中に行われ、
前記算出部は、最新のテストデータを用いて前記基準時間差を求める請求項１乃至請求項３のいずれか１項に記載のコンテンツデータ配信システム。
【請求項５】
前記サーバは、各クライアントへのコンテンツデータの配信に要する時間に対応した容量を有する一時記憶部を備えたことを特徴とする請求項１乃至請求項４のいずれか１項に記載のコンテンツデータ配信システム。
【請求項６】
前記サーバは、前記コンテンツデータを再生するサーバ側再生部と、
前記サーバ側再生部で再生されたコンテンツデータに係る信号に所定の処理を施すサーバ側信号処理部と、
を備え、
前記一時記憶部は、前記サーバ側信号処理部の処理時間に基づいて、容量が調整される
請求項５に記載のコンテンツデータ配信システム。
【請求項７】
各クライアントは、コンテンツデータを再生するクライアント側再生部と、
前記クライアント側再生部で再生されたコンテンツデータに係る信号に所定の処理を施すクライアント側信号処理部と、
前記クライアント側信号処理部の処理時間に基づいて、前記コンテンツデータの再生タイミングを調整する調整部と、
を備えた請求項１乃至請求項６のいずれか１項に記載のコンテンツデータ配信システム。
【請求項８】
各クライアントは、コンテンツデータを再生するクライアント側再生部と、
前記クライアント側再生部で再生されたコンテンツデータに係る信号に所定の処理を施すクライアント側信号処理部と、
前記クライアント側信号処理部の処理時間を示す情報を前記サーバに送信するクライアント側通信部と、
を備え、
前記一時記憶部は、前記サーバ側信号処理部の処理時間および前記クライアント側信号処理部の処理時間に基づいて、容量が調整される請求項６に記載のコンテンツデータ配信システム。
【請求項９】
サーバと、複数のクライアントと、により実行されるコンテンツデータ配信方法であって、
前記サーバは、時刻情報が含まれたテストデータを、各クライアントと送受信するサーバ側通信ステップと、
前記サーバ側通信ステップで送受信された各テストデータの時刻情報に基づいて該サーバと各クライアントの基準時間差を求める算出ステップと、
前記基準時間差を示す情報を各クライアントに配信する配信ステップと、
を実行し、
前記配信ステップは、再生タイミングを示す情報が含まれたコンテンツデータを配信し、
各クライアントは、前記サーバから受信した前記基準時間差を示す情報で、前記コンテンツデータの再生タイミングを補正する補正ステップを実行し、
前記サーバが送信するテストデータには、送信時刻情報が含まれ、
各クライアントが送信する返信テストデータには、前記テストデータの受信時刻情報と、当該返信テストデータの送信時刻情報と、が含まれ、
前記算出ステップは、前記テストデータの送信時刻と、前記返信テストデータの受信時刻と、の相加平均、および各クライアントにおける前記テストデータの受信時刻と、前記返信テストデータの送信時刻と、の相加平均、を算出し、
前記サーバの相加平均と各クライアントの相加平均との差を前記基準時間差として算出することを特徴とするコンテンツデータ配信方法。
【請求項１０】
サーバと、複数のクライアントと、により実行されるコンテンツデータ配信方法であって、
前記サーバは、時刻情報が含まれたテストデータを、各クライアントと送受信するサーバ側通信ステップと、
前記サーバ側通信ステップで送受信された各テストデータの時刻情報に基づいて該サーバと各クライアントの基準時間差を求める算出ステップと、
再生タイミングを示す情報が含まれたコンテンツデータを配信する配信ステップと、
各クライアントとの基準時間差を示す情報で、各クライアントに配信するコンテンツデータの再生タイミングを補正する補正ステップと、
を実行し、
前記サーバが送信するテストデータには、送信時刻情報が含まれ、
各クライアントが送信する返信テストデータには、前記テストデータの受信時刻情報と、当該返信テストデータの送信時刻情報と、が含まれ、
前記算出ステップは、前記テストデータの送信時刻と、前記返信テストデータの受信時刻と、の相加平均、および各クライアントにおける前記テストデータの受信時刻と、前記返信テストデータの送信時刻と、の相加平均、を算出し、
前記サーバの相加平均と各クライアントの相加平均との差を前記基準時間差として算出することを特徴とするコンテンツデータ配信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバからクライアントにコンテンツデータを配信するコンテンツデータ配信システムおよびコンテンツデータ配信方法に関する。
【背景技術】
【０００２】
従来、サーバから複数のクライアントにコンテンツデータをストリーミング配信し、各クライアントで当該コンテンツデータを再生するコンテンツ再生システムが知られている（例えば、特許文献１を参照）。
【０００３】
特許文献１の配信システムは、コンテンツデータとして、ＭＰ３等の圧縮オーディオデータをサーバから各クライアントにストリーミング配信する。これにより、ユーザは、家のどの部屋でもサーバのストレージに保持されているオーディオデータを聴くことができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１９５８３８
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１のコンテンツデータ配信システムは、各装置の再生タイミングが考慮されていないため、装置間での音ずれが問題となる。
【０００６】
また、仮に、各クライアントに対して再生タイミングを示す情報を配信し、各クライアントが当該再生タイミングを示す情報に基づいてコンテンツデータを再生したとしても、各装置は、クロックの絶対値およびクロックの進行速度が異なる。したがって、長い時間再生を続けていると、装置間での音のずれが問題となる。
【０００７】
そこで、この発明の目的は、装置間でクロックがずれていた場合でも、装置間での再生を同期させることができるコンテンツデータ配信システムおよびコンテンツデータ配信方法を提供することにある。
【課題を解決するための手段】
【０００８】
コンテンツデータ配信システムは、サーバと、複数のクライアントと、からなる。前記サーバは、時刻情報が含まれたテストデータを、各クライアントと送受信するサーバ側通信部と、前記サーバ側通信部で送受信された各テストデータの時刻情報に基づいて該サーバと各クライアントの基準時間差を求める算出部と、前記基準時間差を示す情報を各クライアントに配信する配信部と、を備え、前記配信部は、再生タイミングを示す情報が含まれたコンテンツデータを配信し、各クライアントは、前記サーバから受信した前記基準時間差を示す情報で、前記コンテンツデータの再生タイミングを補正する補正部を備えたことを特徴とする。
【０００９】
具体的には、サーバが送信するテストデータには、送信時刻情報が含まれ、各クライアントが送信する返信テストデータには、テストデータの受信時刻情報と、当該返信テストデータの送信時刻情報と、が含まれている。算出部は、テストデータの送信時刻と、返信テストデータの受信時刻と、の相加平均、および各クライアントにおけるテストデータの受信時刻と、返信テストデータの送信時刻と、の相加平均、を算出し、サーバの相加平均と各クライアントの相加平均との差を基準時間差として算出する。
【００１０】
このように、サーバは、サーバとクライアントとの間で、時刻情報が含まれたテストデータを送受信することにより、基準時間差（サーバとクライアントとのクロック差分）を算出する。算出された基準時間差は、コンテンツデータの再生タイミングの補正に利用される。
【００１１】
なお、基準時間差を示す情報は、各クライアントに配信され、各クライアントにおいて、受信した基準時間差を示す情報で、コンテンツデータの再生タイミングを補正する態様としてもよいし、サーバ側で、各クライアントに配信するコンテンツデータの再生タイミングを補正する態様としてもよい。
【００１２】
なお、時刻情報が含まれたデータの送受信は、複数回実行され、基準時間差の算出には、サーバがテストデータを送信してからテストデータに対する返信データが受信されるまでの時間差が最も小さい値を用いることが好ましい。
【００１３】
また、テストデータの送受信、および基準時間差の算出は、コンテンツデータの配信前に行ってもよいが、コンテンツデータの配信中に行われてもよい。配信中に行う場合、算出部は、最新のテストデータを用いて基準時間差を求める。
【発明の効果】
【００１４】
本発明によれば、装置間でクロックがずれていた場合でも、装置間での再生を同期させることができる。
【図面の簡単な説明】
【００１５】
【図１】コンテンツデータ配信システムの概要を示す図である。
【図２】コンテンツデータの配信時のデータの流れを示すブロック図である。
【図３】ＡＶレシーバの構成を示すブロック図である。
【図４】スピーカ装置の構成を示すブロック図である。
【図５】パケットデータの構造を示す図である。
【図６】テストデータの送受信を示す概念図である。
【図７】テストデータ送受信時の動作を示すフローチャートである。
【図８】配信時の動作を示すフローチャートである。
【図９】テストデータ送受信時の動作を示すフローチャートである。
【図１０】配信時の動作を示すフローチャートである。
【図１１】ＡＶレシーバの構成を示すブロック図である。
【図１２】スピーカ装置の構成を示すブロック図である。
【図１３】ＦＩＦＯ容量を調整する場合の動作を示すフローチャートである。
【発明を実施するための形態】
【００１６】
図１は、コンテンツデータ配信システム９００の概要を示す図である。図２（Ａ）は、各装置の接続関係を示すブロック図である。図２（Ｂ）は、コンテンツデータの配信時のデータの流れを示すブロック図である。
【００１７】
図１に示すように、コンテンツデータ配信システム９００は、無線ルータ１０、ＡＶレシーバ１００、スピーカ装置３０１、スピーカ装置３０２、およびスピーカ装置３０３を備えている。図２（Ａ）に示すように、ＡＶレシーバ１００、スピーカ装置３０１、スピーカ装置３０２、およびスピーカ装置３０３は、無線ルータ１０を介して互いにネットワーク接続されている。この例では、無線ルータ１０とＡＶレシーバ１００は、有線ＬＡＮで接続され、無線ルータ１０と各スピーカ装置は、無線ＬＡＮで接続されている。ただし、各装置の接続は、無線であっても有線であってもよいし、通信が可能な接続態様であれば、ネットワークを経由して接続される態様に限るものではない。
【００１８】
図２（Ｂ）に示すように、この例のコンテンツデータ配信システム９００では、ＡＶレシーバ１００がサーバとなり、クライアントであるスピーカ装置３０１、スピーカ装置３０２、およびスピーカ装置３０３に、コンテンツデータを配信する。ただし、無線ルータ１０がコンテンツデータを配信するサーバとなり、ＡＶレシーバ１００がクライアントとなる態様も可能である。また、無線ルータ１０がサーバとなり、ＡＶレシーバ１００、スピーカ装置３０１、スピーカ装置３０２、およびスピーカ装置３０３がクライアントとなる態様も可能である。また、スピーカ装置３０１がサーバとなり、スピーカ装置３０２およびスピーカ装置３０３がクライアントとなる態様も可能である。すなわち、コンテンツデータ配信システムでは、ネットワーク接続されている各機器のうち、所定の装置（例えばユーザから指定された装置）がサーバとなり、他の装置がクライアントとなる。
【００１９】
コンテンツデータ配信システム９００は、ＡＶレシーバ１００において再生しているコンテンツデータを、スピーカ装置３０１、スピーカ装置３０２、およびスピーカ装置３０３にストリーミング配信し、全ての装置において同期再生を実現する。これにより、ユーザは、例えばリビングにおいてＡＶレシーバ１００で再生されているオーディオを聴いていた後に他の部屋（例えば寝室）に移動した場合、当該寝室に設置されたスピーカ装置３０１でも当該オーディオを聴くことができる。
【００２０】
図３は、ＡＶレシーバ１００の主要構成を示すブロック図である。なお、この例では、ＡＶレシーバ１００がサーバとなるが、ＡＶレシーバ１００以外の他の装置がサーバとなる場合には、当該他の装置が図３に示す構成を備えるものとする。
【００２１】
ＡＶレシーバ１００は、入力Ｉ／Ｆ（インタフェース）１０１、制御部１０２、再生用ＦＩＦＯ１０３、再生部１０４、ＤＳＰ１０５、出力Ｉ／Ｆ１０６、配信用ＦＩＦＯ１０７、および通信Ｉ／Ｆ１０８を備えている。
【００２２】
入力Ｉ／Ｆ１０１は、例えばＨＤＭＩ（登録商標）端子、デジタルオーディオ入力端子、またはアナログオーディオ入力端子等からなり、外部からコンテンツデータ、デジタルオーディオ信号、またはアナログオーディオ信号を入力する。
【００２３】
コンテンツデータは、例えばＭＰ３等でエンコードされたオーディオデータである。入力Ｉ／Ｆ１０１は、入力されたオーディオデータを制御部１０２に出力する。また、入力Ｉ／Ｆ１０１は、アナログオーディオ信号が入力された場合には、デジタルオーディオ信号に変換してから、制御部１０２に出力する。
【００２４】
なお、コンテンツデータは、通信Ｉ／Ｆ１０８を介して他装置のストレージ（例えばＮＡＳ等）から入力される態様であってもよいし、インターネットを介して接続された外部サーバから入力される態様であってもよいし、ＨＤＤ等の内蔵ストレージから入力される態様であってもよい。
【００２５】
制御部１０２は、本発明の配信部および算出部に対応する。制御部１０２は、入力されたオーディオデータをそのまま、または所定のエンコード方式のオーディオデータに変換して、パケットデータとして、再生用ＦＩＦＯ１０３および配信用ＦＩＦＯ１０７に出力する。また、制御部１０２は、デジタルオーディオ信号を入力した場合にも、所定のエンコード方式のオーディオデータに変換して、パケットデータとして、再生用ＦＩＦＯ１０３および配信用ＦＩＦＯ１０７に出力する。
【００２６】
図５は、パケットデータの構造の一例を示す図である。図５に示すパケットデータは、ヘッダと、本体（オーディオデータ）と、からなる。ヘッダには、パケットのタイプを示す情報（Ｃｏｍｍａｎｄ）と、パケットの番号を示す情報（Ｓｅｑｕｅｎｃｅ）と、再生タイミングを示す情報（Ｃｌｏｃｋ）と、再送データであるか否かを示す各種情報（Ｒｅ＿ｔｒａｎｓ＿ｉｄ）と、が含まれている。
【００２７】
Ｃｏｍｍａｎｄは、オーディオデータのパケットであることを示す場合と、他のデータ（例えば後述のテストデータ）のパケットであることを示す場合と、がある。テストデータの場合には、本体がオーディオデータではなく、例えばテキストデータとなる。
【００２８】
Ｓｅｑｕｅｎｃｅは、クライアント側で正しい順序でパケットデータを受信しているか否かの判断に用いられる。クライアントは、当該Ｓｅｑｕｅｎｃｅに含まれた番号が非連続であった場合に、パケットの欠損があったと判断して、サーバに再送リクエストを行う。
【００２９】
Ｃｌｏｃｋは、オーディオデータの再生タイミング（再生時刻）を示す情報である。サーバおよびクライアントは、当該Ｃｌｏｃｋに示された再生時刻に基づいて、受信したオーディオデータの再生を行う。これにより、同期再生が実現される。ただし、クライアントは、後述のように、クロック差分を用いて再生時刻の補正を行う。
【００３０】
Ｒｅ＿ｔｒａｎｓ＿ｉｄは、上述の再送リクエストに対するパケットデータであるか否かを示す情報が含まれている。
【００３１】
制御部１０２は、図５に示すようなパケットデータを、再生用ＦＩＦＯ１０３および配信用ＦＩＦＯ１０７に出力する。
【００３２】
再生用ＦＩＦＯ１０３および配信用ＦＩＦＯ１０７は、パケットデータを所定時間分だけ保持し、当該パケットデータを、入力された順に出力する一時記憶部である。再生用ＦＩＦＯ１０３および配信用ＦＩＦＯ１０７は、後段の各種処理部の処理に必要な時間（処理遅延）を考慮した容量が設定される。例えば、再生用ＦＩＦＯ１０３は、再生部１０４の処理時間が０．１秒、ＤＳＰ１０５の処理時間が０．１秒、パケットデータの配信に要する時間が１．８秒として、約２秒分のオーディオデータに相当する容量が設定されている。配信用ＦＩＦＯ１０７は、配信に要する時間を除く約０．２秒分のオーディオデータに相当する容量が設定されている。
【００３３】
これにより、サーバであるＡＶレシーバ１００の再生タイミングと、クライアントである各スピーカ装置におけるオーディオデータの再生タイミングが一致する。そのため、コンテンツデータ配信システム９００は、同期再生を実現することができる。
【００３４】
再生用ＦＩＦＯ１０３に保持されたパケットデータは、再生部１０４に出力される。再生部１０４は、パケットデータに含まれた再生時刻に基づいて、当該パケットデータのオーディオデータを再生し、デジタルオーディオ信号を出力する。
【００３５】
再生部１０４で再生されたデジタルオーディオ信号は、サーバ側信号処理部であるＤＳＰ１０５で所定の信号処理（例えば擬似反射音を付与することにより音場効果を付与する処理）が施され、出力Ｉ／Ｆ１０６に出力される。
【００３６】
出力Ｉ／Ｆ１０６から出力されたデジタルオーディオ信号は、スピーカ２００Ｌおよびスピーカ２００Ｒに入力される。スピーカ２００Ｌおよびスピーカ２００Ｒは、入力されたデジタルオーディオ信号をアナログオーディオ信号に変換して増幅する。スピーカ２００Ｌおよびスピーカ２００Ｒは、増幅後のアナログオーディオ信号を自身のスピーカユニットに入力する。これにより、スピーカ２００Ｌおよびスピーカ２００Ｒは、オーディオデータに係る音を出力する。なお、出力Ｉ／Ｆ１０６と各スピーカは、スピーカケーブル（アナログオーディオ線）を介して接続されていてもよい。この場合、ＤＳＰ１０５と出力Ｉ／Ｆ１０６との間にＤＡＣおよび増幅部が配置される。
【００３７】
一方、配信用ＦＩＦＯ１０７から出力されるパケットデータは、サーバ側通信部である通信Ｉ／Ｆ１０８を介して、スピーカ装置３０１、スピーカ装置３０２、およびスピーカ装置３０３に配信される。
【００３８】
図４は、スピーカ装置３０１の主要構成を示すブロック図である。他のスピーカ装置３０２およびスピーカ装置３０３の主要構成も同様であるため、図４においては代表してスピーカ装置３０１の構成を示す。
【００３９】
スピーカ装置３０１は、通信Ｉ／Ｆ３１１、制御部３１２、補正部３１３、再生部３１４、ＤＳＰ３１５、およびＳＳ（サウンドシステム）３１６を備えている。
【００４０】
通信Ｉ／Ｆ３１１は、サーバであるＡＶレシーバ１００から配信されたパケットデータを受信し、制御部３１２に入力する。制御部３１２は、パケットデータが正しい順序で受信されているか否かを判断する。上述のように、パケットデータには、順序を示す情報（Ｓｅｑｕｅｎｃｅ）が含まれている。したがって、制御部３１２は、当該Ｓｅｑｕｅｎｃｅに含まれた番号が連続している場合に、受信したパケットデータを後段の補正部３１３に出力する。制御部３１２は、当該Ｓｅｑｕｅｎｃｅに含まれた番号が非連続であった場合に、パケットの欠損があったと判断して、ＡＶレシーバ１００に再送リクエストを行う。制御部３１２は、正しい順序のパケットデータが再送されるまで、受信した新たなパケットデータを、内蔵のバッファに保持する。
【００４１】
補正部３１３は、受信したパケットデータに含まれている再生時刻を補正する。上述のように、本実施形態のコンテンツデータ配信システム９００は、パケットデータに含まれる再生時刻を示す情報と、配信用ＦＩＦＯ１０７と、再生用ＦＩＦＯ１０３と、により、同期再生を実現することができる。しかし、各装置は、クロックの絶対値およびクロックの進行速度が異なるため、長い時間（例えば５分程度）再生を続けていると、装置間での音のずれが問題となる。そこで、コンテンツデータ配信システム９００は、サーバとクライアントとの間でテストデータを送受信し、クロック差分を算出する。補正部３１３は、当該クロック差分を用いて再生時刻の補正を行う。
【００４２】
図６は、テストデータの送受信を示す概念図である。図７は、テストデータ送受信時のコンテンツデータ配信システム９００の動作を示すフローチャートである。図６の縦方向は、時間方向を示し、下側に向かって時間が経過しているものとする。
【００４３】
まず、サーバであるＡＶレシーバ１００は、送信時刻Ｓ１が含まれたテストデータ（パケットデータ）をクライアントであるスピーカ装置３０１に送信する（Ｓ１１）。
【００４４】
スピーカ装置３０１は、ＡＶレシーバ１００から送信されたテストデータを受信し（Ｓ２１）、当該テストデータを受信した時刻Ｃ１をテストデータに追記する（Ｓ２３）。さらに、スピーカ装置３０１は、送信時刻Ｃ２をテストデータに追記し、返信テストデータとしてＡＶレシーバ１００に送信する（Ｓ２３）。
【００４５】
ＡＶレシーバ１００は、スピーカ装置３０１から返信テストデータを受信し（Ｓ１２）、返信テストデータを受信した時刻Ｓ２を記録する（Ｓ１３）。そして、ＡＶレシーバ１００は、テストデータの送受信の回数が所定回数に達したか否かを判断する（Ｓ１４）。
【００４６】
なお、時刻Ｓ１および時刻Ｓ２は、ＡＶレシーバ１００のクロックを基にした時刻であり、時刻Ｃ１および時刻Ｃ２は、スピーカ装置３０１のクロックを基にした時刻である。
【００４７】
テストデータの送受信は、１回だけであってもよいが、複数回であることが好ましい。テストデータが複数回送信される場合、ＡＶレシーバ１００は、テストデータの送信時刻Ｓ１と、返信テストデータの受信時刻Ｓ２と、の時間差が最も小さい値を採用し、最も信頼性の高い結果を用いる。
【００４８】
そして、ＡＶレシーバ１００は、ＡＶレシーバ１００のクロックと、スピーカ装置３０１のクロックの差分（サーバとクライアントの基準時間差）を求める（Ｓ１５）。クロック差分は、例えば以下の様にして求める。
【００４９】
ＡＶレシーバ１００は、テストデータの送信時刻Ｓ１と、返信テストデータの受信時刻Ｓ２と、の相加平均（Ｓ１＋Ｓ２）／２を算出する。また、ＡＶレシーバ１００は、スピーカ装置３０１におけるテストデータの受信時刻Ｃ１と、返信テストデータの送信時刻Ｃ２と、の相加平均（Ｃ１＋Ｃ２）／２を算出する。これら相加平均の値は、仮にＡＶレシーバ１００とスピーカ装置３０１のクロックの絶対値が同一であれば同じ値となる。したがって、ＡＶレシーバ１００は、ＡＶレシーバ側のクロックを基準とした場合のクロック差分（サーバとクライアントの基準時間差）を、相加平均の差（Ｓ１＋Ｓ２）／２−（Ｃ１＋Ｃ２）／２として算出する。
【００５０】
ＡＶレシーバ１００は、以上のテストデータの送受信を、各スピーカ装置に対して行い、スピーカ装置毎にクロック差分を求める。
【００５１】
算出されたクロック差分は、各スピーカ装置の補正部３１３に送信される（Ｓ１６）。スピーカ装置３０１は、ＡＶレシーバ１００で算出されたクロック差分を受信し（Ｓ２４）、補正部３１３の内蔵メモリ（不図示）に記録する（Ｓ２５）。補正部３１３は、ＡＶレシーバ１００から送信されたクロック差分を用いて、再生時刻の補正を行う。
【００５２】
図８のフローチャートを参照して、配信時の動作を説明する。図８のフローチャートに示すように、ＡＶレシーバ１００がオーディオデータを図５に示したパケットデータとしてストリーミング配信すると（Ｓ３１）、スピーカ装置３０１は、当該パケットデータを受信する（Ｓ４１）。スピーカ装置３０１の補正部３１３は、受信したパケットデータに含まれている再生時刻（図５に示したＣｌｏｃｋ）を読み出し、Ｓ２５の処理において記録したクロック差分を用いて、再生時刻の補正を行う（Ｓ４２）。クロック差分は、サーバ側のクロックからクライアント側のクロックを差し引いた値であり、配信されたパケットデータに含まれている再生時刻は、ＡＶレシーバ１００のクロックに基づいた時刻である。したがって補正部３１３は、配信されたパケットデータに含まれる再生時刻から、クロック差分の値を差し引くことで、再生時刻を変更する。補正部３１３は、再生時刻を補正した後のパケットデータを後段の再生部１０４に出力する。再生部１０４は、入力されたパケットデータの再生時刻に基づいて、当該パケットデータのオーディオデータを再生し、デジタルオーディオ信号を出力する（Ｓ４３）。
【００５３】
再生部１０４で再生されたデジタルオーディオ信号は、クライアント側信号処理部であるＤＳＰ３１５で所定の信号処理（例えば擬似反射音を付与することにより音場効果を付与する処理）が施され、ＳＳ３１６に出力される。ＳＳ３１６は、ＤＡＣ、増幅部、およびスピーカユニットを備えている。これにより、ＡＶレシーバ１００から配信されたオーディオデータに係る音がスピーカ装置３０１のスピーカユニットから出力され、同期再生が実現される。
【００５４】
なお、上述の例では、オーディオデータの配信前にテストデータの送受信を行う例を示したが、オーディオデータの配信中にもテストデータの送受信を行ってもよい。この場合、ＡＶレシーバ１００は、所定時間経過毎にテストデータの送受信を１回または複数回を行い、各スピーカ装置とのクロック差分を算出する。テストデータが複数回送信される場合、上述と同様に、テストデータの送信時刻Ｓ１と、返信テストデータの受信時刻Ｓ２と、の時間差が最も小さい値を採用する。ＡＶレシーバ１００は、算出したクロック差分を所定時間経過毎に各スピーカ装置に送信する。各スピーカ装置の補正部３１３は、ＡＶレシーバ１００から受信したクロック差分のうち、最新のクロック差分を用いて再生時刻の補正を行う。この場合、より高精度に同期再生を行うことができる。
【００５５】
次に、図９は、変形例１に係るテストデータ送受信時のコンテンツデータ配信システム９００の動作を示すフローチャートである。図１０は、変形例１に係る配信時の動作を示すフローチャートである。図９において、図７と共通する処理については同一の符号を付し、説明を省略する。また、図１０において、図８と共通する動作については同一の符号を付し、説明を省略する。
【００５６】
変形例１に係るコンテンツデータ配信システム９００では、ＡＶレシーバ１００は、算出したクロック差分を当該ＡＶレシーバ１００の内蔵メモリ（不図示）に記録する（Ｓ６１）。そして、ＡＶレシーバ１００の制御部１０２は、配信するパケットデータの再生時刻を、各スピーカ装置とのクロック差分を用いて補正する（Ｓ７１）。各スピーカ装置は、受信したパケットデータの再生時刻通りに再生を行う（Ｓ８１）。
【００５７】
したがって、この例では、各スピーカ装置において補正部３１３の構成は不要となり、各スピーカ装置に配信されるパケットデータは、それぞれ再生時刻が異なるものとなる。この場合も、同期再生を実現することができる。
【００５８】
次に、変形例２に係るコンテンツデータ配信システム９００について説明する。図１１に示すように、変形例２に係るコンテンツデータ配信システム９００では、ＡＶレシーバ１００の構成は、図３に示した例と同一である。ただし、変形例２においては、再生用ＦＩＦＯ１０３の容量は、ＤＳＰ１０５の処理時間に応じて設定される。
【００５９】
図３に示した例では、再生用ＦＩＦＯ１０３は、２秒分のオーディオデータに相当する容量が設定されている。すなわち、自装置のＤＳＰ１０５と、他のスピーカ装置のＤＳＰと、の処理時間を０．１秒であると想定して、再生用ＦＩＦＯ１０３の容量を設定している。しかし、ＤＳＰ１０５の処理時間は、その処理内容によって大きく変化する。例えば、ＤＳＰ１０５の信号処理の内容が簡易なものであれば（例えば音場効果を付与する処理を省く場合等）、処理時間が短くなる場合がある。
【００６０】
そこで、図１１に示す変形例２では、ＤＳＰ１０５の処理時間に応じて、再生用ＦＩＦＯ１０３の容量を設置する。例えば、ＤＳＰ１０５の処理時間が０．０５秒である場合に、再生用ＦＩＦＯ１０３は、１．９５秒分のオーディオデータに相当する容量が設定される。
【００６１】
次に、変形例３に係るコンテンツデータ配信システム９００について説明する。図１２に示すように、変形例３に係るコンテンツデータ配信システム９００では、スピーカ装置３０１の構成は、図４に示した例と同一である。ただし、変形例３においては、補正部３１３は、ＤＳＰ３１５の処理時間に応じて、再生タイミングを調整する。
【００６２】
すなわち、補正部３１３は、パケットデータの再生時刻をクロック差分で補正するが、さらに、ＤＳＰ３１５の処理時間分だけ、再生時刻を早める処理を行う。例えば、ＤＳＰ３１５の処理時間が０．０５秒である場合、補正部３１３は、パケットデータの再生時刻を０．０５秒早めた値に書き換える処理を行う。これにより、各装置でＤＳＰの処理時間が異なっていたとしても、各装置での放音タイミングが一致し、高精度な同期再生を実現することができる。
【００６３】
なお、この例では、補正部３１３が再生タイミングを調整する調整部として機能するが、再生部３１４が再生タイミングを調整する調整部として機能してもよいし、制御部３１２がパケットデータの再生時刻を変更して調整部として機能する態様であってもよい。
【００６４】
次に、変形例４に係るコンテンツデータ配信システム９００の動作について、図１３のフローチャートを参照して説明する。変形例４に係るコンテンツデータ配信システム９００は、最も処理時間の長いＤＳＰの処理時間に合わせて、再生用ＦＩＦＯ１０３および配信用ＦＩＦＯ１０７の容量を設定する。
【００６５】
各スピーカ装置は、ＡＶレシーバ１００に、自身のＤＳＰ３１５の処理時間を示す情報を送信する（Ｓ９１）。ＡＶレシーバ１００は、当該処理時間を示す情報を各スピーカ装置から受信し（Ｓ９５）、最も処理時間の長いＤＳＰを判断する（Ｓ９２）。そして、ＡＶレシーバ１００は、最も処理時間の長いＤＳＰに対応して、再生用ＦＩＦＯ１０３および配信用ＦＩＦＯ１０７の容量を設定する。
【００６６】
例えば、ＡＶレシーバ１００のＤＳＰ１０５の処理時間が０．０５秒であり、スピーカ装置３０１の処理時間が０．０２秒であり、スピーカ装置３０２の処理時間が０．０５秒であり、スピーカ装置３０３の処理時間が０．０８秒であり、配信に要する時間が１．８秒であり、各装置の再生部の処理時間が０．１秒である場合に、配信用ＦＩＦＯ１０７は、配信に要する時間を除く０．１８秒分のオーディオデータに相当する容量が設定される。再生用ＦＩＦＯ１０３は、配信に要する時間（１．８秒）を考慮した１．９８秒のオーディオデータに相当する容量が設定されるが、実際にはＤＳＰ１０５の処理時間である０．０５秒を考慮して、１．９３秒分のオーディオデータに相当する容量が設定される。
【００６７】
そして、各スピーカ装置では、それぞれのＤＳＰの処理時間分だけ再生時刻を早める処理を行う。例えば、スピーカ装置３０１では、ＤＳＰの処理時間が０．０２秒であるため、補正部３１３において、パケットデータの再生時刻を０．０２秒早める処理を行う。スピーカ装置３０２では、ＤＳＰの処理時間が０．０５秒であるため、補正部３１３において、パケットデータの再生時刻を０．０５秒早める処理を行う。スピーカ装置３０３では、ＤＳＰの処理時間が０．０８秒であるため、補正部３１３において、パケットデータの再生時刻を０．０８秒早める処理を行う。
【００６８】
これにより、再生用ＦＩＦＯ１０３および配信用ＦＩＦＯ１０７の容量は、各処理部の処理遅延を考慮した最適な値（最も小さい容量）に設定される。したがって、再生開始までの余分な遅延時間が最も少なくなる。
【符号の説明】
【００６９】
１０…無線ルータ
１００…ＡＶレシーバ
１０１…入力Ｉ／Ｆ
１０２…制御部
１０３…再生用ＦＩＦＯ
１０４…再生部
１０５…ＤＳＰ
１０６…Ｉ／Ｆ
１０７…配信用ＦＩＦＯ
１０８…通信Ｉ／Ｆ
２００Ｌ，２００Ｒ…スピーカ
３０１，３０２，３０３…スピーカ装置
３１１…通信Ｉ／Ｆ
３１２…制御部
３１３…補正部
３１４…再生部
３１５…ＤＳＰ
３１６…ＳＳ
９００…コンテンツデータ配信システム
【図１】
0006520556.tif 000002
【図２】
0006520556.tif 000003
【図３】
0006520556.tif 000004
【図４】
0006520556.tif 000005
【図５】
0006520556.tif 000006
【図６】
0006520556.tif 000007
【図７】
0006520556.tif 000008
【図８】
0006520556.tif 000009
【図９】
0006520556.tif 000010
【図１０】
0006520556.tif 000011
【図１１】
0006520556.tif 000012
【図１２】
0006520556.tif 000013
【図１３】
0006520556.tif 000014