(57)【要約】  ネットワーク内のデコーダをサーバに同期させる方法であって、一連のタイムスタンプ及びローカルクロック信号をビーコン割り込み信号の受信後に受信し、一連のタイムスタンプ及びローカルクロック信号内のタイムスタンプ及びローカルクロックの値からタイムスタンプの差異の値及びローカルクロックの差異の値をそれぞれ計算し、タイムスタンプの差異の値に対してローカルクロックの差異の値が予決定された関係を有するかどうかを判定し、そして前記関係を有しないと判定した場合にはクロック速度調整命令信号を送信する方法が開示される。クロック速度調整命令信号は、タイムスタンプの差異の値に対してローカルクロックの差異の値が予決定された関係を有するように前記ローカルシステム時間クロックを調整し、それによりデコーダは実質的に同期され、復号化の遅延を人間に知覚されない程度に維持することができる。【選択図】図３
2008537409.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク内のデコーダをサーバに同期させる方法であって：
一連のタイムスタンプ信号を受信するステップであって、前記一連のタイムスタンプ信号内の各タイムスタンプ信号はネットワークサーバから送信されタイムスタンプを付されたビーコンに対応する値を有することと、前記ネットワークサーバはネットワーク上に符号化データを配信するように適合されていることを特徴とするステップと；
一連のローカルクロック信号を受信するステップであって、前記一連のローカルクロック信号内の各ローカルクロック信号はネットワーククライアントのデコーダに関連付けられたローカルシステム時間クロックによって生成された値を有し、デコーダは前記符号化データを復号化するように適合されるステップと；
前記一連のタイムスタンプ信号内のタイムスタンプ信号の値に基づいてタイムスタンプの差異の値を計算するステップと；
前記一連のローカルクロック信号内のローカルクロック信号の値に基づいてローカルクロックの差異の値を計算するステップと；
前記タイムスタンプの差異の値に対して前記ローカルクロックの差異の値が予決定された関係を有するかどうかを判定するステップと；
前記タイムスタンプの差異の値に対して前記予決定された関係を前記ローカルクロックの差異の値が有しないと判定された場合に前記デコーダにクロック速度調整命令信号を送信するステップであって、前記クロック速度調整命令信号は前記ローカルシステム時間クロックを後続のローカルクロックの差異の値が前記タイムスタンプの差異の値に対して前記予決定された関係を有するように調整するよう適合されていることを特徴とするステップと；
を備える方法。
【請求項２】
さらに：
前記ネットワーククライアントに関連付けられたネットワークインタフェースからビーコン割り込み信号を受信するステップであって、前記ビーコン割り込み信号は前記ネットワークサーバから送信されたビーコンの受信後にネットワークインタフェースによって生成されることを特徴とするステップを備え、
前記一連のタイムスタンプ信号内の各タイムスタンプ信号はネットワークインタフェースから受信されビーコン割り込み信号に対応する値を有することを特徴とする、
請求項１に記載の方法。
【請求項３】
さらに：
前記ネットワーククライアントに関連付けられたネットワークインタフェースからビーコン割り込み信号を受信するステップであって、前記ビーコン割り込み信号は前記ネットワークサーバから送信されたビーコンの受信後にネットワークインタフェースによって生成されることを特徴とするステップを備え、
前記一連のローカルクロック信号内の各ローカルクロック信号は前記ローカルシステム時間クロックから受信されビーコン割り込み信号に対応する値を有することを特徴とする、
請求項１に記載の方法。
【請求項４】
さらに：
前記ネットワークサーバから出力される予決定された数のビーコンを受信する期間内に前記一連のタイムスタンプ信号及び前記一連のローカルクロック信号を受信するステップと；
前記期間に続いてビーコンが出力される前に前記クロック速度調整命令信号を前記デコーダへ送信するステップと；
を備える、請求項１に記載の方法。
【請求項５】
前記クロック速度調整命令信号は、前記ローカルクロックの差異の値が前記タイムスタンプの差異の値よりも小さい場合に前記ローカルシステム時間クロックの前記周波数を増加させるように適合されることを特徴とする、請求項１に記載の方法。
【請求項６】
前記クロック速度調整命令信号は、前記ローカルクロックの差異の値が前記タイムスタンプの差異の値よりも大きい場合に前記ローカルシステム時間クロックの前記周波数を減少させるように適合されることを特徴とする、請求項１に記載の方法。
【請求項７】
さらに：
システム時間クロック予設定命令信号を受信するステップと；
前記システム時間クロック予設定命令信号をローカルシステム時間クロックに送信するステップであって、前記システム時間クロック予設定命令信号は前記ネットワークサーバからのビーコンの送信後に前記ローカルシステム時間クロックを所定の予設定値に設定するよう適合されていることを特徴とするステップと；
を備える、請求項１に記載の方法。
【請求項８】
さらに：
前記クロック速度調整命令信号の送信後に復号化開始信号を受信するステップと；
前記復号化開始信号を前記デコーダに送信するステップであって、前記復号化開始信号は前記ネットワークサーバからのビーコンの送信後に前記デコーダに符号化データを復号化させるよう適合されていることを特徴とするステップと；
を備える、請求項１に記載の方法。
【請求項９】
さらに：
前記デコーダがローカルバッファ内で符号化データを復号化する際に、前記デコーダの前記ローカルバッファのバッファ占有率がバッファ領域全体に対して予決定された範囲内にあるかどうかを判定するステップと；
前記バッファ占有率が前記予決定された範囲外にあると判定された場合にデータストリーム制御命令信号を前記ネットワークサーバに送信するステップであって、前記データストリーム制御命令信号は前記ネットワークサーバの当該時点のデータ配信特性を変えるよう適合されていることを特徴とするステップと；
を備える、請求項１に記載の方法。
【請求項１０】
前記データストリーム制御命令信号は、前記バッファ占有率が前記予決定された範囲の上限値を超えた場合に、前記ネットワークサーバにデータ配信を停止させるよう適合されることを特徴とする、請求項９に記載の方法。
【請求項１１】
前記データストリーム制御命令信号は、前記バッファ占有率が前記予決定された範囲の下限値を下回った場合に、前記ネットワークサーバにデータ配信を再開させるよう適合されることを特徴とする、請求項９に記載の方法。
【請求項１２】
さらに：
前記デコーダがローカルバッファ内で符号化データを復号化する際に、前記デコーダの前記ローカルバッファのバッファ占有率がバッファ領域全体に対して予決定された範囲内にあるかどうかを判定するステップと；
前記バッファ占有率が前記予決定された範囲外にあると判定された場合にクロック速度制御命令信号を前記ネットワークサーバに送信するステップと；
前記クロック速度制御命令信号に対応するクロック比調整信号を受信するステップであって、前記クロック比調整信号はクロック調整比を含むことを特徴とするステップと；
前記クロック調整比に基づいて前記クロック速度調整命令信号を計算するステップと；
前記デコーダに前記計算されたクロック速度調整命令信号を送信して後続のローカルクロックの差異の値が前記バッファ領域全体に対して前記予決定された範囲内となるように前記ローカルシステム時間クロックを調整するステップと；
を備える、請求項１に記載の方法。
【請求項１３】
前記クロック速度調整命令信号は、前記バッファ占有率が前記予決定された範囲の上限値を超えた場合に前記ローカルシステム時間クロックの前記周波数を増加させるよう適合されることを特徴とする、請求項１２に記載の方法。
【請求項１４】
前記クロック速度調整命令信号は、前記バッファ占有率が前記予決定された範囲の下限値を下回った場合に前記ローカルシステム時間クロックの前記周波数を減少させるよう適合されることを特徴とする、請求項１２に記載の方法。
【請求項１５】
ネットワーク装置であって：
ネットワーク上に送信される符号化データを受信するよう適合されるネットワークインタフェースと；
前記ネットワークインタフェースに接続され前記受信した符号化データを復号化するよう適合されるデコーダと；
前記ネットワークインタフェース及び前記デコーダに接続されるプロセッサと、前記プロセッサは：
前記ネットワークインタフェースを介して一連のタイムスタンプ信号を受信し、前記一連のタイムスタンプ信号内の各タイムスタンプ信号はネットワークサーバから送信されタイムスタンプを付されたビーコンに対応する値を有し；
一連のローカルクロック信号を受信し、前記一連のローカルクロック信号内の各ローカルクロック信号は前記デコーダに関連付けられたローカルシステム時間クロックによって生成された値を有し；
前記一連のタイムスタンプ信号内のタイムスタンプ信号の値に基づいてタイムスタンプの差異の値を計算し；
前記一連のローカルクロック信号内のローカルクロック信号の値に基づいてローカルクロックの差異の値を計算し；
前記タイムスタンプの差異の値に対して前記ローカルクロックの差異の値が予決定された関係を有するかどうかを判定し；
前記タイムスタンプの差異の値に対して前記予決定された関係を前記ローカルクロックの差異の値が有しないと判定された場合に前記デコーダにクロック速度調整命令信号を送信し、前記クロック速度調整命令信号は前記ローカルシステム時間クロックを後続のローカルクロックの差異の値が前記タイムスタンプの差異の値に対して前記予決定された関係を有するように調整する；
ように適合されることと；
を備えるネットワーク装置。
【請求項１６】
前記クロック速度調整命令信号は、前記ローカルクロックの差異の値が前記タイムスタンプの差異の値を下回った場合に前記ローカルシステム時間クロックの前記周波数を増加させ、前記ローカルクロックの差異の値が前記タイムスタンプの差異の値を上回った場合に前記ローカルシステム時間クロックの前記周波数を減少させるよう適合されることを特徴とする、請求項１５に記載のネットワーク装置。
【請求項１７】
前記デコーダは符号化データを保存するよう適合されるローカルバッファを含むことと；
前記デコーダは前記ローカルバッファ内に保存された前記符号化データを復号化するよう適合されることと；
前記プロセッサはさらに：
前記ローカルバッファのバッファ占有率がバッファ領域全体に対して予決定された範囲内にあるかどうかを判定し；
前記ネットワークサーバの当該時点のデータ配信特性を変えるよう適合されるデータストリーム制御命令信号を、前記バッファ占有率が前記予決定された範囲外にあると判定された場合に前記ネットワークサーバに送信する；
ように適合される回路を含むことと；
を特徴とする、請求項１５に記載のネットワーク装置。
【請求項１８】
前記デコーダは符号化データを保存するよう適合されるローカルバッファを含むことと；
前記デコーダは前記ローカルバッファ内に保存された前記符号化データを復号化するよう適合されることと；
前記プロセッサはさらに：
前記ローカルバッファのバッファ占有率がバッファ領域全体に対して予決定された範囲内にあるかどうかを判定し；
前記バッファ占有率が前記予決定された範囲外にあると判定された場合に前記ネットワークサーバにクロック速度制御命令信号を送信し；
前記クロック速度制御命令信号に対応するクロック速度調整信号を受信し、前記クロック速度調整信号はクロック調整比を含み；
前記クロック速度調整命令信号を前記クロック調整比に基づいて計算し；
前記デコーダに前記計算されたクロック速度調整命令信号を送信して後続のローカルクロックの差異の値が前記バッファ領域全体に対して前記予決定された範囲内となるように前記ローカルシステム時間クロックを調整する；
ように適合される回路を含むことと；
を特徴とする、請求項１５に記載のネットワーク装置。
【発明の詳細な説明】
【関連する出願の参照】
【０００１】
本願は、２００５年４月１３日付提出の米国仮特許出願第６０／６７１，２２３号の利益を主張し、その全ての内容はここに参照により取り入れられる。
【技術分野】
【０００２】
本明細書にて説明する実施形態は、一般的にネットワーク機器用の同期的音声／映像復号化に関する。
【背景技術】
【０００３】
メディアネットワーク内において通信用リンクに沿ってメディア情報（例えば映像データ、音声データなど）を配信するために、様々な仕組みが提案されてきた。メディアネットワークの１つの形態は、通信媒体として基本的に家庭の交流電源の配線（即ち電力線）を用いる電力線ネットワークである。従って、電力線ネットワーク内では、ネットワークサーバが、メディア情報（即ち１つ以上の符号化されたデータストリーム）を、交流電源のコンセントに接続（“ｐｌｕｇｇｅｄ  ｉｎ”）された１つ以上のネットワーククライアントに送信することができる。ネットワーククライアントは、符号化されたデータストリームを受信して復号化し、復号化後のデータストリームを音声及び／または映像の形式で出力する。
【０００４】
従来の電力線ネットワークの１つの欠点は、ネットワーククライアントが同期の仕組みを全く有していないことである。よって、２つのネットワーククライアントが符号化されたデータストリームの復号化を同時に開始する際でさえも、それぞれのデコーダ内のクロックの発振子が独立して動作するため、両者間の遅延は時間の経過と共に徐々に大きくなる。音声の遅延が３０ｍｓｅｃを超えると、好ましくないエコー効果（即ちハース効果）が発生し、利用者に２つの音調が聞こえる結果となる。そうしたエコー効果は、音声復号化サラウンドシステムによって再生される音楽を聴く利用者の楽しさを損ねてしまう。デコーダのクロック内の典型的な発振子の精度は、１０ｐｐｍよりも大きい。１時間は３６００秒である。よって、１０ｐｐｍは３６ｍｓｅｃに相当する。従って、従来の電力線ネットワークでは、映像データを復号化すると、１時間以内に好ましくないハース効果が現れる。
【０００５】
従って、ネットワーク内での復号化を同期的に処理するように適合された方法及びシステムが提供されることが好ましい。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本明細書で開示されている複数の実施形態は、ネットワーク機器用の音声／映像を同期的に復号化する方法を提供し、及びシステムを実現することによって、前述の要求及び他の要求に効果的に対処している。
【課題を解決するための手段】
【０００７】
本明細書で例として説明する１つの実施形態において提供される、ネットワーク内でデコーダをサーバに同期させる方法は、ネットワークサーバから送信されたビーコンの受信後に一連のタイムスタンプ信号を受信し、ネットワークサーバから送信されたビーコンの受信後に一連のローカルクロック信号を受信し、一連のタイムスタンプ信号内のタイムスタンプ信号の値に基づいてタイムスタンプの差異を計算し、一連のローカルクロック信号内のローカルクロック信号の値に基づいてローカルクロックの差異を計算し、タイムスタンプの差異の値に対してローカルクロックの差異の値が予決定された関係を有するかどうかを判定し、及びタイムスタンプの差異の値について予決定された関係をローカルクロックの差異の値が有しないと判定された場合にデコーダにクロック速度調整命令信号を送信し、さらにクロック速度調整命令信号はローカルシステム時間のクロックを後続のローカルクロックの差異の値がタイムスタンプの差異の値について予決定された関係を有するように調整するよう適合される。一連のタイムスタンプ信号内の各タイムスタンプ信号は、ネットワークサーバから送信されてタイムスタンプを付されたビーコンに、対応する値を有する。一連のローカルクロック信号内の各ローカルクロック信号は、ネットワーククライアントのデコーダに関連付けられたローカルシステム時間クロックによって生成された値を有する。ネットワークサーバは、ネットワーク上に符号化データを流すように適合され、デコーダは、前記符号化データを復号化するように適合される。
【０００８】
本明細書で例として説明する他の実施形態において提供されるネットワーク装置は、ネットワーク上を送信される符号化データを受信するように適合されたネットワットワークインタフェースと、受信した符号化データを復号化するためにネットワットワークインタフェースに接続されるデコーダと、ネットワークインタフェース及びデコーダに接続されるプロセッサとを含む。プロセッサは、ネットワークサーバから送信されたビーコンの受信後に一連のタイムスタンプ信号をネットワークインタフェースを介して受信し、ネットワークサーバから送信されたビーコンの受信後に一連のローカルクロック信号を受信し、一連のタイムスタンプ信号内のタイムスタンプ信号の値に基づいてタイムスタンプの差異を計算し、一連のローカルクロック信号内のローカルクロック信号の値に基づいてローカルクロックの差異を計算し、タイムスタンプの差異の値に対してローカルクロックの差異の値が予決定された関係を有するかどうかを判定し、及びタイムスタンプの差異の値について予決定された関係をローカルクロックの差異の値が有しないと判定された場合にデコーダにクロック速度調整命令信号を送信するよう適合される。一連のタイムスタンプ信号内の各タイムスタンプ信号は、ネットワークサーバから送信されてタイムスタンプを付されたビーコンに、対応する値を有する。一連のローカルクロック信号内の各ローカルクロック信号は、デコーダに関連付けられたローカルシステム時間クロックによって生成された値を有する。クロック速度調整命令信号は、後続のローカルクロックの差異の値とタイムスタンプの差異の値とが予決定された関係を有するようにローカルシステム時間クロックを調整するよう適合される。
【０００９】
本明細書で説明している複数の実施形態が有する、前述の、及び他の観点、特徴、並びに利点は、添付図面と併せて以下のより詳細なそれらの説明からさらに明らかとなる。
【００１０】
対応する符号は複数の図面を通して対応するコンポーネントを示している。いわゆる当業者であれば、図中の要素は簡潔さと明確さをもって描かれているのであって、必ずしも縮尺どおりに描かれているわけではないことを理解するであろう。例えば、図中のいくつかの要素の次元は、本明細書で説明している様々な実施形態のよりよい理解を助けるために、他の要素と比較して強調されている。また、商業的に実現可能な実施形態において有用または必須の一般的でよく知られた要素は、ここで説明される様々な実施形態を参照することを妨げないために、多くの場合省略されている。
【発明を実施するための最良の形態】
【００１１】
以下の説明は、限定的な意味で理解すべきものではなく、例としての実施形態の一般的な原理を説明する目的でのみ記載されている。本発明の技術的範囲は、特許請求の範囲を参照することでのみ決定されるべきである。
【００１２】
本明細書では、多くの実施形態によって、ネットワーク内でデコーダがネットワーク内の他のデコーダと同期しながらデータを復号化することを可能にする。それに応じて、多くの実施形態において、ネットワークサーバから出力されるタイムスタンプに基づいてデコーダのシステム時間クロック（即ち、ローカルＳＴＣ：ｌｏｃａｌ  ｓｙｓｔｅｍ  ｔｉｍｅ  ｃｌｏｃｋ）を調整することで、実質的な同期処理を行うことが可能となる。また、他の実施形態において、デコーダのバッファ占有状況（ｏｃｃｕｐａｎｃｙ  ｌｅｖｅｌ）を調整することで、実質的な同期処理を行うことが可能となる。ネットワーク内のデコーダのＳＴＣ及び／またはバッファ占有状況を調整することで、デコーダは、符号化データを実質的に同期して復号化することができる。本明細書で開示した方法をネットワーク内の各デコーダに対して実施する際にはそれらデコーダは実質的に同期され、デコーダ間の復号化中の遅延は、人間に知覚され得る程度を下回る値に維持される。
【００１３】
図１は、本明細書に開示する多くの実施形態を実装可能なネットワーク１００を例として示している。図１に示されているのは、テレビジョン１０２、音声増幅器１０４、ステレオ１０６、交流電力線１０８、ケーブル入力線１１０、ネットワーク入力線１１２（例えばケーブル誘導線、またはＡＤＳＬ電話線など）、モデム１１４（例えばケーブルモデム、ＡＤＳＬ電話線モデム、または同等のもの）、遠隔制御器１１６、ディスプレイ１１８、及びスピーカ１２０、１２２、１２４、１２６、１２８、１３０である。
【００１４】
テレビジョン１０２、音声増幅器１０４、及びステレオ１０６は、それぞれ交流電力線１０８に接続されている。テレビジョン１０２はケーブル入力線１１０に接続され、さらにモデム１１４を介してネットワーク入力線１１２に接続される。スピーカ１２０、１２２、１２４、及び１２６はテレビジョン１０２に接続され、スピーカ１２８及び１３０は音声増幅器１０４に接続される。図１に例示された実施形態において、スピーカ１２０、１２２、１２４、１２６、１２８、及び１３０は音声サラウンドシステムを構成し、スピーカ１２０は前部低音スピーカ、スピーカ１２２、１２４、及び１２６は前部スピーカ（例えばそれぞれ左側、中央、右側スピーカなど）、そしてスピーカ１２８及び１３０は後部スピーカ（例えばそれぞれ左側、右側スピーカなど）となる。
【００１５】
一般的に、また多くの実施形態に従えば、テレビジョン１０２は音声及び／または映像信号を、ケーブル入力線１１０から、及び／またはモデム１１４を介してネットワーク入力線１１２から受信するように適合される。さらにテレビジョン１０２は、受信した映像信を処理してディスプレイ１１８上に映像を生成し、受信した音声信号を処理してスピーカ１２０、１２２、１２４、及び１２６上に音声を生成し、さらに受信した信号を電力線１０８上に送信（即ち配信（ｓｔｒｅａｍ））するように適合される。
【００１６】
一般的に、また多くの実施形態に従えば、音声増幅器１０４は、電力線１０８上に送信される符号化された音声信号を受信し、受信した音声信号を復号化し、そして復号化済みの音声信号をスピーカ１２８及び１３０に出力するように適合される。同様に、ステレオ１０６は、テレビジョン１０２からの符号化された音声信号を電力線１０８を介して受信し、受信した音声信号を復号化し、そして復号化済みの音声信号を内蔵するスピーカに出力するように適合される。ステレオ１０６を、テレビジョン１０２に向けてプレイバック命令（例えば、再生、停止、一時停止など）を電力線１０８を介して送信するように適合してもよい。
【００１７】
ここで述べられているように、ネットワーク１００は電力線ネットワーク（即ち、家庭の電力線を音声及び映像データの送信用媒体として用いるネットワーク）である。従って、テレビジョン１０２をネットワーク１００のネットワークサーバとして活用し、音声増幅器１０４及びステレオ１０６をネットワーク１００のネットワーククライアントとして活用してもよい。一般的なネットワークサーバの役割には、電力線１０８上へのビーコンのブロードキャスト、符号化された音声／映像データのネットワーククライアントへの送信（即ち配信）、ネットワーククライアントへの命令（例えば、符号化データの復号化の開始、符号化データの復号化の停止など）の送信、及び他のネットワーククライアントを協調させる処理が含まれる。１つの実施形態において、ネットワーククライアント及びネットワークサーバの処理は、ブロードキャストされるビーコンに基づいて調整される。ここで電力線通信に関連して実施形態が検討されているが、ネットワーク１００は、ビーコンを用いて動作する他の如何なる有線又は無線のネットワークを含んでもよいことは理解されるであろう。
【００１８】
図２は、ネットワークアクセスのタイミング図を例として示している。図２に示しているように、ネットワークサーバの役割を果たすテレビジョン１０２は、ビーコン２０２ａ、２０２ｂ、２０２ｃ等をブロードキャストしている。１つの実施形態において、テレビジョン１０２は、定期的にビーコンをブロードキャストする（例えば４０ｍｓｅｃごと）。従って、各ビーコン周期の長さは４０ｍｓｅｃとなる。しかしながら、後述するクロック調整処理が行われるために十分な時間が存在する限り、ビーコンの送信が定期的に行われる必要はないことは理解されるであろう。１つの実施形態において、各ビーコンは、電力線１０８の交流周期（例えば５０Ｈｚまたは６０Ｈｚ）と同期してブロードキャストされる。１つの実施形態において、各ビーコンと共に（例えばビーコンに含んでもよい）、タイムスタンプが送信される。ビーコンのタイムスタンプは、テレビジョン１０２のシステムクロックに基づいて付加される。他の実施形態としては、タイムスタンプは各ビーコンとは別に送信される。
【００１９】
各ビーコン周期は、無競合期間（ｃｏｎｔｅｎｔｉｏｎ−ｆｒｅｅ  ｐｅｒｉｏｄ）と競合期間（ｃｏｎｔｅｎｔｉｏｎ  ｐｅｒｉｏｄ）とに分割される。各ビーコン周期の中でタイムスロット２０４ａ、２０４ｂなどとして予約される無競合期間においては、等時間間隔での送信が行われ、その期間内では他の送信は認められない。符号化された音声／映像データは、テレビジョン１０２によって、等時間間隔での送信を利用して配信される。非同期送信（例えば２０６における送信）は、符号分割多元接続（ＣＤＭＡ：Ｃａｒｒｉｅｒ  Ｓｅｎｓｅ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ）が認められる競合期間において行われる。典型的には、ネットワーク１００のサーバとクライアントとの間の命令やファイルの送信が、非同期送信を利用して行われる。
【００２０】
図３は、図１に示したテレビジョン１０２のブロック図を描いている。図３には、前述のケーブル入力線１１０、遠隔制御器１１５及びスピーカ１２０、１２２、１２４、及び１２６、さらにチューナ３０２、映像ＡＤ（ａｎａｌｏｇ−ｔｏ−ｄｉｇｉｔａｌ）変換器３０４、音声ＡＤ変換器３０６、ＭＰＥＧエンコーダ３０８、デマルチプレクサ（ＤＭＸ）３１０、クロック生成器３５０、ハードディスクドライブ（ＨＤＤ）３１２、映像デコーダ３１４、グラフィックスエンジン３１６、ミキサ３１８、ディスプレイ１１８、映像ＤＡ（ｄｉｇｉｔａｌ−ｔｏ−ａｎａｌｏｇ）変換器３２０、ディスプレイドライバ３２２、音声デコーダ３２４、４チャネルＤＡ変換器３２６、４チャネル増幅器（Ａｍｐ）３２８、電力線通信（ＰＬＣ）インタフェース３３０、割り込み線３３２、内部バス３３４、プロセッサ３３６（例えば１つ以上の中央演算装置（ＣＰＵ））、記憶装置３３８、キーパッド３４０、イーサネット（登録商標）インタフェース３４２、イーサネットポート３４４、及び赤外線（ＩＲ：Ｉｎｆｒａ−ｒｅｄ）インタフェース３４６が示されている。また、図示はされていないものの、映像デコーダ３１４及び音声デコーダ３２４は両方とも、ローカルバッファ及びＳＴＣを含む。１つの実施形態として、映像デコーダ３１４及び音声デコーダ３２４、並びに／またはデマルチプレクサ３１０は、単一のチップに統合することもできる。
【００２１】
チューナ３０２は、ケーブル入力線１１０に接続され、映像ＡＤ変換器３０４及び音声ＡＤ変換器３０６はそれぞれチューナ３０２に接続され、ＭＰＥＧエンコーダ３０８は映像ＡＤ変換器３０４及び音声ＡＤ変換器３０６に接続され、デマルチプレクサ３１０はＭＰＥＧエンコーダ３０８に接続される。ＨＤＤ３１２、映像デコーダ３１４、音声デコーダ３２４、及びＰＬＣインタフェース３３０はデマルチプレクサ３１０に接続される。ミキサ３１８は映像デコーダ３１４及びグラフィックスエンジン３１６に接続され、映像ＤＡ変換器３２０はミキサ３１８に接続され、ディスプレイドライバ３２２は映像ＤＡ変換器３２０に接続され、ディスプレイ１１８はディスプレイドライバ３２２に接続される。４チャネル音声ＤＡ変換器３２６は音声デコーダ３２４に接続され、４チャネル増幅器３２８は４チャネル音声ＤＡ変換器３２６に接続され、そしてスピーカ１２０、１２２、１２４、及び１２６は４チャネル増幅器３２８に接続される。ＰＬＣインタフェース３３０は電力線１０８に接続される。割り込み線３３２は、ＰＬＣインタフェース３３０、映像デコーダ３１４及び音声デコーダ３２４とプロセッサ３３６とを接続する。前述の各コンポーネントは、内部バス３３４と接続してもよい。なお、図示する上での明確さのために、デマルチプレクサ３１０、映像デコーダ３１４、音声デコーダ３２４、ＰＬＣインタフェース３３０、プロセッサ３３６、記憶装置３３８、キーパッド３４０、イーサネットインタフェース３４２、及び赤外線インタフェース３４６のみが内部バス３３４に接続しているように示されている。チューナ３０２は、ケーブル入力線１１０からのアナログケーブル信号に周波数を合わせて復調を行う。チューナ３０２のアナログ映像出力は、映像ＡＤ変換器３０４によって受信され、デジタル映像信号に変換される。同様に、チューナ３０２のアナログ音声出力は音声ＡＤ変換器３０６によって受信され、デジタル音声信号に変換される。音声及び映像信号出力はその後、ＭＰＥＧエンコーダ３０８によって受信され、ＭＰＥＧ形式を用いて符号化され、デマルチプレクサ３１０に符号化データストリームとして出力される。
【００２２】
クロック生成器３５０は、前述のシステムクロックを生成する。システムクロックの速度は、例えば２７ＭＨｚである。システムクロックは、映像ＡＤ変換器３０４及び音声ＡＤ変換器３０６により生成されるデジタルまたはＮＳＴＣタイミング信号に同期される。システムクロックは、ＭＰＥＧエンコーダ３０８、デマルチプレクサ３１０、及びＰＬＣインタフェース３３０に配信される。
【００２３】
さらにＭＰＥＧエンコーダ３０８は、デマルチプレクサ３１０への符号化データ出力内に、１００ｍｓｅｃから７００ｍｓｅｃの間隔を持つ参照クロック（例えば、参照システムクロック（ＳＣＲ）または参照プログラムクロック（ＰＣＲ））を組み込む。システムクロックはＳＣＲまたはＰＣＲに同期される。従来の方式では、ＳＣＲ／ＰＣＲはデコーダのＳＴＣを同期させるために用いられる。ここで開示するシステムにおいては、ＳＣＲ／ＰＣＲを用いる２つ以上のデコーダを同期させることが難しいため、ＳＣＲ／ＰＣＲは使用されない。ＳＣＲ／ＰＣＲが使用されるかどうかに関わらず、ＭＰＥＧストリーム出力にはＭＰＥＧエンコーダ３０８によってＳＣＲ／ＰＣＲが組み込まれる。デコーダタイムスタンプ（ＤＴＳ）は、例えば映像フレームなどの各アクセスデータ単位に包含される。ＤＴＳはシステムクロックに基づいて生成される。
【００２４】
ＰＬＣインタフェース３３０は、ビーコンのブロードキャストを行う。ビーコンには、クロック生成器３５０のシステムクロックに基づいてタイムスタンプが付加される。よって、タイムスタンプは、デジタルまたはＮＳＴＣタイミング信号に同期され、２５ＭＨｚの速度（即ちネットワーククロック速度）を有するタイムスタンプクロックによって生成される。
【００２５】
デマルチプレクサ３１０は、符号化データストリームをＭＰＥＧエンコーダ３０８から受信し、符号化データストリームを分解して符号化映像データストリーム及び符号化音声データストリームを生成し、符号化映像データストリームを映像デコーダ３１４へ、符号化音声データストリームの少なくとも一部を音声デコーダ３２４へ送信する。デマルチプレクサ３１０は、音声増幅器１０４で用いるために、少なくとも符号化データストリームの一部（例えば、符号化音声ストリームの少なくとも一部）をＰＬＣインタフェース３３０にも送信する。
【００２６】
デジタルケーブルブロードキャストの場合、チューナ３０２は、例えばＭＰＥＧストリームなどのデジタルストリームを直接デマルチプレクサ３１０に向けて出力する。ＳＣＲ／ＰＣＲ及びＤＴＳは、ブロードキャストステーションの終端装置（ヘッドエンド：ｈｅａｄ  ｅｎｄ）に組み込まれる。システムクロックは、ＳＣＲ／ＰＣＲに同期される。チューナ３０２からのデータストリームとは、例えば複数のテレビ番組を含む。デマルチプレクサ３１０は、プロセッサ３３６からの命令に基づき、不要なデータをフィルタリングして除外する。映像デコーダ３１４及び音声デコーダ３２４のそれぞれに対して、選択された音声／映像データのみが送信される。
【００２７】
映像デコーダ３１４は、デマルチプレクサ３１０から自身のＳＴＣ周波数に相当する速度で出力される符号化映像データストリームを復号化し、復号化済み映像データストリームをミキサ３１８に向けて出力する。映像デコーダ３１４内のローカルバッファは、デマルチプレクサ３１０から受信する符号化データを、復号化の準備が整うまで保存する。符号化データは、映像デコーダ３１４のＳＴＣがＤＴＳによって特定される時間に達したときに復号化される。さらに、映像デコーダ３１４がローカルバッファ内に保存している符号化データを抽出する速度は、ローカルＳＴＣの周波数に依存する。ミキサ３１８は、映像デコーダ３１４から出力される復号化済みの映像データストリームをグラフィックスエンジン３１６内で生成、出力されるグラフィックデータと重ね合わせ、映像グラフィックデータを生成する。映像グラフィックデータとは、例えば利用者に視聴または録画するテレビ番組を選択させることのできる電子番組案内表などのことである。映像グラフィックデータはその後、映像ＤＡ変換器３２０によってアナログ映像信号に変換される。ディスプレイドライバ３２２は、映像ＤＡ変換器３２０から出力されるアナログ映像信号を受信し、ディスプレイ１１８を作動させて対応する画像を表示させる。
【００２８】
音声デコーダ３２４は、デマルチプレクサ３１０から自身のＳＴＣ周波数に相当する速度で出力される符号化音声データストリームを復号化し、復号化済み音声データストリームを４チャネル音声ＤＡ変換器３２６に向けて出力し、４チャネル音声ＤＡ変換器３２６は復号化済み音声データストリームをアナログ音声信号に変換する。音声デコーダ３２４内のローカルバッファは、デマルチプレクサ３１０から受信する符号化データを、復号化の準備が整うまで保存する。符号化データは、音声デコーダ３２４のＳＴＣがＤＴＳによって特定される時間に達したときに復号化される。さらに、音声デコーダ３２４がローカルバッファ内に保存している符号化データを抽出する速度は、ローカルＳＴＣの周波数に依存する。４チャネル増幅器３２８は、４チャネル音声ＤＡ変換器３２６から出力されるアナログ音声信号を受信し、音声信号を増幅し、増幅済みの音声信号をスピーカ１２０、１２２、１２４、１２６に向けて出力する。
【００２９】
ＰＬＣインタフェース３３０は、デマルチプレクサ３１０からの符号化データストリームの少なくとも一部を受信し、受信した符号化データに加えてビーコン及び他の命令を電力線１０８を介して送信（即ち配信）するよう適合される。１つの実施形態では、ＰＬＣインタフェース３３０は、電力線１０８を介してタイムスタンプの配信も行う。
【００３０】
プロセッサ３３６は、記憶装置３３８内に保存された１以上の制御プログラムに従って、前述の各コンポーネントを内部バス３３４を介して制御するよう適合された回路を含む。１つの実施形態として、プロセッサ３３６は、さらにネットワーク１００内のネットワーククライアントの動作を制御するように適合される。他の実施形態としては、プロセッサ３３６は、さらにＰＬＣインタフェース３３０に電力線１０８上にビーコンとタイムスタンプを送信させるように適合される。電力線１０８上にタイムスタンプを送信することにより、ネットワーク１００の全体が共通のネットワーククロックを共有することとなる。なお、“回路”という用語は、ここで用いられる場合において、例えばハードウェア、ファームウェア、及び／またはソフトウェアによって実装し得る実行可能な命令のいずれの形態にも言及するものであり、それらは全てここで説明される様々な開示の範囲に包含される。
【００３１】
キーパッド３４０は、利用者の操作を受け付けるように適合され、利用者の操作があった場合にはデータ及び／または命令を直接プロセッサ３３６に送信する。前述のモデム１１４はイーサネットポート３４４に接続され、プロセッサ３３６はイーサネットインタフェース３４２を介してモデム１１４と通信（例えばデータの送受信）を行う。赤外線インタフェース３４６は、例えば利用者が扱う遠隔制御器１１６から送信される赤外線信号を受信し、データ及び／またはチャネルの上げ下げや音量の上げ下げなどの命令を送信する。
【００３２】
デマルチプレクサ３１０は、入力されるストリームの一部又は全部を、記録のためにＨＤＤ３１２に送信する。その応答として、デマルチプレクサ３１０は、ＨＤＤ３１２からのストリームを受信、分割する。前述の通り、映像データは映像デコーダ３１４へ送信され、音声データは音声デコーダ３２４に送信される。
【００３３】
図４は、図１に示した音声増幅器１０４のブロック図を描いている。ステレオ１０６は音声増幅器１０４に関連して述べたのと同様に構成される。図４に示されているのは、ＰＬＣインタフェース４０２、音声デコーダ４０４、２チャネル音声ＤＡ変換器４０６、２チャネル増幅器（Ａｍｐ）４０８、前述のスピーカ１２８及び１３０、割り込み線４１０、内部バス４１２、プロセッサ４１４（例えば１つ以上のＣＰＵ）、記憶装置４１６、及びユーザインタフェース４１８（例えばボタンインタフェースなど）である。図示はされていないものの、音声デコーダ４０４は、ローカルバッファ及びシステム時間クロック（ＳＴＣ）を含む。１つの実施形態としては、音声デコーダ４０４及び２チャネル音声ＤＡ変換４０６は、単一のチップに統合してもよい。
【００３４】
ＰＬＣインタフェース４０２は、電力線１０８に接続され、音声デコーダ４０４はＰＬＣインタフェース４０２に接続され、２チャネル音声ＤＡ変換器４０６は音声デコーダ４０４に接続され、２チャネル増幅器４０８は２チャネル音声ＤＡ変換器４０６に接続され、前述のスピーカ１２８及び１３０は２チャネル増幅器４０８に接続される。割り込み線４１０は、ＰＬＣインタフェース４０２、音声デコーダ４０４、及びプロセッサ４１４の間で接続される。記憶装置４１６は、プロセッサ４１４に接続される。音声デコーダ４０４内のローカルバッファは、ＰＬＣインタフェース４０２から受信する符号化データを、復号化の準備が整うまで保存する。符号化データは、音声デコーダ４０４のＳＴＣがＤＴＳによって特定される時間に達したときに復号化される。さらに、音声デコーダ４０４がローカルバッファ内に保存している符号化データを抽出する速度は、ローカルＳＴＣの周波数に依存する。さらに、ＰＬＣインタフェース４０２、音声デコーダ４０４、２チャネル音声ＤＡ変換器４０６、２チャネル増幅器４０８、プロセッサ４１４、及びユーザインタフェース４１８は、内部バス４１２に接続される。
【００３５】
ＰＬＣインタフェース４０２は、電力線１０８上に送信される全てのビーコン、タイムスタンプ、命令、データ（例えば符号化音声データ）などを受信する。ＰＬＣインタフェース４０２が受信する符号化データは、音声デコーダ４０４へ出力され、自身のＳＴＣ周波数に相当する速度で復号化される。音声デコーダ４０４は復号化済みの音声データを２チャネル音声ＤＡ変換器４０６に出力し、復号化済みの音声データはそこでアナログ音声信号に変換される。２チャネル増幅器４０８は２チャネル音声ＤＡ変換器４０６から出力されるアナログ音声信号を受信し、音声信号を増幅し、そして増幅された音声信号をスピーカ１２８及び１３０に出力する。
【００３６】
プロセッサ４１４は、記憶装置４１６内に保存された１以上の制御プログラムに従って、前述の各コンポーネントを内部バス４１２を介して制御するよう適合された回路を含む。ユーザインタフェース４１８は、利用者の操作を受け付けるように適合され、利用者の操作があった場合にはデータ及び／または命令（例えば、チャネルや音量の上げ下げなど）を直接プロセッサ４１４に送信する。プロセッサ４１４は、例えばプロセッサ３３６を伴う遠隔制御器１１６からＰＬＣインタフェース４０２を介して届く命令といった非同期データ（例えば、命令、データなど）の交換を行う。
【００３７】
ネットワーク１００は複数のデコーダを含むため（例えば、テレビジョン１０２に２つ、音声増幅器１０４）、各デコーダ内のそれぞれのＳＴＣの周期は、デコーダが互いに実質的に同期して処理を行うことを保証するように適合されたクロック調整処理に従うことによって、調整することができる。図５は、クロック調整処理の例としての１つの実施形態を描いている。
【００３８】
図５に示している通り、処理は５０１から開始される。５０２において、一連のタイムスタンプ信号が、例えば音声増幅器１０４のプロセッサ４１４において受信される。タイムスタンプ信号は、テレビジョン１０２によってブロードキャストされたビーコン内に含まれるタイムスタンプの値を特定する。よって、一連のタイムスタンプ信号は、テレビジョン１０２のＰＬＣインタフェース３３０から所定の期間内に出力された予決定された数のビーコン内にて同時または別々に送信された、複数のタイムスタンプの値を特定する。
【００３９】
５０４において、一連のローカルクロック信号が音声デコーダ４０４から送信され、例えばプロセッサ４１４において受信される。ローカルクロック信号は、ＰＬＣインタフェース４０２がＰＬＣインタフェース３３０から出力されたビーコンを受信したときに相当する時点において、例えば音声デコーダ４０４内に保存されているＳＴＣの値を特定する。よって、一連のローカルクロック信号は、音声デコーダ４０４のＳＴＣによって保存された複数のＳＴＣの値を特定する。
【００４０】
５０６において、タイムスタンプの差異の値が、例えば音声増幅器１０４のプロセッサ４１４において計算される。１つの実施形態においては、タイムスタンプの差異の値は、ＰＬＣインタフェース３３０から連続して送信された１組のタイムスタンプの差異の値に相当する。例えば、タイムスタンプの差異の値（ｄｉｆｆ＿ｔｓ）は、ＰＬＣインタフェース３３０から送信されたｎ番目のタイムスタンプ（タイムスタンプ（ｎ））と、ＰＬＣインタフェース３３０から送信されたｎ＋１番目のタイムスタンプ（タイムスタンプ（ｎ＋１））との間の差異の値に相当し得る。１つの実施形態においては、タイムスタンプの差異の値（ｄｉｆｆ＿ｔｓ）は、次式によって計算し得る：ｄｉｆｆ＿ｔｓ＝（タイムスタンプ（ｎ＋１）−タイムスタンプ（ｎ））＊ｆｓｔｃ／ｆｔｓ、“ｆｓｔｃ”は音声デコーダ４０４内のＳＴＣのクロック周波数（例えば２７ＭＨｚ）、“ｆｔｓ”は前述の２５ＭＨｚのタイムスタンプクロック速度。他の実施形態としては、タイムスタンプの差異の値は、連続して出力された１組のタイムスタンプの差異の値を複数組にわたって平均した値である。例えば、タイムスタンプの差異の値は、ｎ番目とｎ＋１番目のタイムスタンプ間、ｎ＋２番目とｎ＋３番目のタイムスタンプ間、ｎ＋４番目とｎ＋５番目のタイムスタンプ間などの差異の値の平均値に相当し得る。
【００４１】
５０８において、ローカルクロックの差異の値が、例えばプロセッサ４１４によって計算される。１つの実施形態において、ローカルクロックの差異の値は、テレビジョン１０２から連続して出力されたビーコンに対応する音声デコーダ４０４内に保存された１組のＳＴＣの差異の値に相当する。例えば、ローカルクロックの差異の値（ｄｉｆｆ＿ｓｔｃ）は、音声デコーダ４０４内に保存されたｎ番目のＳＴＣ（ＳＴＣ（ｎ））と、音声デコーダ４０４内に保存されたｎ＋１番目のＳＴＣ（ＳＴＣ（ｎ＋１））との間の差異の値に相当し得る。１つの実施形態においては、ローカルクロックの差異の値（ｄｉｆｆ＿ｓｔｃ）は、次式によって計算し得る：ｄｉｆｆ＿ｓｔｃ＝ＳＴＣ（ｎ＋１）−ＳＴＣ（ｎ）。他の実施形態としては、ローカルクロックの差異の値は、連続して保存された１組のＳＴＣの値を複数組にわたって平均した値である。例えば、ローカルクロックの差異の値は、ｎ番目とｎ＋１番目のＳＴＣの値、ｎ＋２番目とｎ＋３番目のＳＴＣの値、ｎ＋４番目とｎ＋５番目のＳＴＣの値などの間の差異の値の平均値に相当し得る。
【００４２】
５１０において、例えばプロセッサ４１４により、タイムスタンプの差異の値及びローカルクロックの差異の値が比較され、ローカルクロックの差異の値がタイムスタンプの差異の値との間に予決定された関係を有しているかどうかが判定される。１つの実施形態として、ローカルクロックの差異の値がタイムスタンプの差異の値と等しく、または実質的に等しい（即ち、完全に等しくはないものの互いに所定の許容範囲内にある）場合に、ローカルクロックの差異の値はタイムスタンプの差異の値との間に予決定された関係を有するとする。ローカルクロックの差異の値がタイムスタンプの差異の値と実質的に等しいときに予決定された関係が存在するとして定義すれば、ローカルクロックの差異の値とタイムスタンプの差異の値との差が小さい場合にプロセッサ４１４が音声デコーダ４０４に調整命令を過度に頻繁に送信することを防ぐことができる。
【００４３】
５１０における比較によって、ローカルクロックの差異の値とタイムスタンプの差異の値との間に予決定された関係が存在することが認識された場合（即ち、ローカルクロックの差異の値とタイムスタンプの差異の値が完全に等しい、またはローカルクロックの差異の値とタイムスタンプの差異の値が所定の許容範囲内にある場合）、調整は実行されずに処理は５０２に戻る。一方、５１０における比較によって、ローカルクロックの差異の値がタイムスタンプの差異の値よりも大きい（またはタイムスタンプの差異の値に所定の許容範囲を加えた値よりも大きい）ことが認識された場合、音声デコーダ４０４のＳＴＣの周波数が共通ネットワーククロックの周波数よりも速く動いていると推定される。反対に、５１０における比較によって、ローカルクロックの差異の値がタイムスタンプの差異の値よりも小さい（またはタイムスタンプの差異の値から所定の許容範囲を引いた値よりも小さい）ことが認識された場合、音声デコーダ４０４のＳＴＣの周波数が共通ネットワーククロックの周波数よりも遅く動いていると推定される。
【００４４】
ローカルクロックの差異の値がタイムスタンプの差異の値との間に予決定された関係を有しないと判定された場合、５１２において、クロック速度調整命令信号が、例えばプロセッサ４１４から音声デコーダ４０４に送信される。１つの実施形態として、プロセッサ４１４は、テレビジョン１０２により次の（即ち後続の）ビーコンが送信される前に、クロック速度調整命令信号の送信を行う。
【００４５】
クロック速度調整命令信号は、５１０における比較結果に基づき、ローカルクロックの差異の値がタイムスタンプの差異の値との間に予決定された関係を持つ範囲内またはその近くになるように、音声デコーダ４０４のＳＴＣ周波数を調整（即ちＳＴＣの周波数を増加または減少）するよう適合される。１つの実施形態としては、クロック速度調整命令信号は、音声デコーダ４０４のＳＴＣ周波数を固定の調整量の分だけ調整するよう適合される。他の実施形態としては、クロック速度調整命令信号は、ローカルクロックの差異の値とタイムスタンプの差異の値とが異なっている度合いに依存して複数の固定の調整量の中の１つの調整量を選択し、音声デコーダ４０４のＳＴＣ周波数を調整するよう適合される。例えば、ローカルクロックの差異の値とタイムスタンプの差異の値の差が、予決定された関係の範囲外であって、かつ予決定された閾値内にある場合には、クロック速度調整命令信号は、音声デコーダ４０４のＳＴＣ周波数を第一の固定の調整量の分だけ調整するよう適合される。例えば、予決定された閾値は、タイムスタンプの差異の値に対して１００ｐｐｍとすることができる。前述の差がその閾値内にあれば、命令はＳＴＣ周波数を１０ｐｐｍだけ増加または減少させることができる。一方、ローカルクロックの差異の値とタイムスタンプの差異の値の差が予決定された閾値外であれば、クロック速度調整命令信号は、音声デコーダ４０４のＳＴＣ周波数を第二の固定の調整量の分だけ調整するよう適合され、その場合の第二の固定の調整量の絶対値は第一の固定の調整量の絶対値よりも大きい。例えば、前述の差が予決定された１００ｐｐｍの閾値内になければ、命令はＳＴＣ周波数を２０ｐｐｍ増加または減少させることができる。
【００４６】
５１３において、復号化が完了したかどうかが判定される。復号化が完了していなければ、処理は５０２に戻る。復号化が完了していれば、処理は５１４にて終了する。
【００４７】
図６は、ローカルクロックの差異の値とタイムスタンプの差異の値の比較、及び図５に関連して既に説明したクロック調整信号の送信に関する例としての実装を描いている。図６に例示されたアルゴリズムは、デコーダにビーコンが到着する度に実行できることが理解されるであろう。図６に示されているように、処理は６０２（例えばローカルクロックの差異の値とタイムスタンプの差異の値とが計算される時点）から開始され、６０４において、プロセッサ４１４は、ローカルクロックの差異の値よりもタイムスタンプの差異の値の方が大きいかどうかを判定する。６０４において、プロセッサ４１４がローカルクロックの差異の値よりもタイムスタンプの差異の値の方が大きいと判定した場合には、６０６において、プロセッサ４１４は、ローカルクロックの差異の値がタイムスタンプの差異の値との間に予決定された関係を持つ範囲内またはその近くになるように、音声デコーダ４０４のＳＴＣ周波数を増加させるよう適合されたクロック速度調整命令信号を送信する。そして処理は６０８において終了する。
【００４８】
６０４において、プロセッサ４１４がローカルクロックの差異の値よりもタイムスタンプの差異の値の方が大きくないと判定した場合には、６１０において、プロセッサ４１４はローカルクロックの差異の値よりもタイムスタンプの差異の値の方が小さいかどうかを判定する。６１０において、プロセッサ４１４がローカルクロックの差異の値よりもタイムスタンプの差異の値の方が小さいと判定した場合には、６１２において、プロセッサ４１４は、ローカルクロックの差異の値がタイムスタンプの差異の値との間に予決定された関係を持つ範囲内またはその近くになるように、音声デコーダ４０４のＳＴＣ周波数を減少させるよう適合されたクロック速度調整命令信号を送信する。そして処理は６０８において終了する。
【００４９】
６１０において、プロセッサ４１４がローカルクロックの差異の値よりもタイムスタンプの差異の値の方が小さくないと判定した場合には、プロセッサ４１４は、ローカルクロックの差異の値とタイムスタンプの差異の値との間に予決定された関係が存在すると推定する。この場合、クロックの調整は行われない。そして処理は６０８において終了する。
【００５０】
図７は、図５に関連して説明したクロック調整処理に応じた、ＰＬＣインタフェース４０２、プロセッサ４１４、及び音声増幅器１０４の音声デコーダ４０４の間の信号の送信シーケンスの一例を描いている。図７に示されている通り、７０２ａにおいて、ＰＬＣインタフェース４０２はテレビジョン１０２からブロードキャストされたｎ番目のビーコンを受信し、対応するビーコン割り込み信号（即ちビーコン割り込み（ｎ））を生成し、音声デコーダ４０４及びプロセッサ４１４に対して生成したビーコン割り込み信号を割り込み線４１０を介して送信する。その代わりに、ＰＬＣインタフェース４０２は生成したビーコン割り込み信号をプロセッサ４１４のみに対して送信してもよく（例えば内部バス４１２を介して）、それを受けてプロセッサ４１４は、ビーコン割り込み信号を内部バス４１２を介して音声デコーダ４０４に転送することができる。ビーコン割り込み信号（ビーコン割り込み（ｎ））を受信した後、音声デコーダ４０４は、ＳＴＣ値（ＳＴＣ（ｎ））を保存する。７０４ａにおいて、プロセッサ４１４は、ＰＬＣインタフェース４０２にタイムスタンプ要求信号を送信することで、受信したビーコン割り込み信号（ビーコン割り込み（ｎ））に対して応答する。７０６ａにおいて、ＰＬＣインタフェース４０２は、プロセッサ４１４にタイムスタンプ信号（タイムスタンプ（ｎ））を送信することで、タイムスタンプ要求信号に対して応答する。一方、１つの実施形態としては、ＰＬＣインタフェース４０２は、タイムスタンプ要求信号に対する応答の形でなくても、タイムスタンプ信号をプロセッサ４１４に送信することができる。タイムスタンプは、ｎ番目のビーコンに乗せて運ばれた。７０８ａにおいて、プロセッサ４１４はさらに、音声デコーダ４０４にローカルクロック要求信号を送信することで、受信したビーコン割り込み信号（ビーコン割り込み（ｎ））に対して応答する。７１０ａにおいて、音声デコーダ４０４は、プロセッサ４１４に保存していたローカルクロックの値（ＳＴＣ（ｎ））を送信することで、ローカルクロック要求信号に対して応答する。一方、１つの実施形態としては、音声デコーダ４０４は、ローカルクロック要求信号に対する応答の形でなくても、保存されたローカルクロックの値（ＳＴＣ（ｎ））をプロセッサ４１４に送信することができる。１つの実施形態として、７０４ａ及び７０８ａにて送信される要求信号は、ＰＬＣインタフェース４０２及び音声デコーダ４０４の両方にブロードキャストされる単一の要求命令であってもよい。
【００５１】
図５に関連して前述した通り、ローカルクロックの差異の値とタイムスタンプの差異の値は、一連のタイムスタンプ及びローカルクロック信号に基づいて計算される。従って、ＰＬＣインタフェース４０２がｎ番目のビーコンの後にブロードキャストされた他のビーコン（例えばｎ＋１番目のビーコン）を受信した際には、７０２ｂにおいて、ＰＬＣインタフェース４０２は対応するビーコン割り込み信号（ビーコン割り込み（ｎ＋１））を生成し、音声デコーダ４０４及び／またはプロセッサ４１４に対して送信する。ビーコン割り込み信号（ビーコン割り込み（ｎ＋１））を受信した後、音声デコーダ４０４は、ＳＴＣ値（ＳＴＣ（ｎ＋１））を保存する。７０４ｂにおいて、プロセッサ４１４は、ＰＬＣインタフェース４０２にタイムスタンプ要求信号を送信することで、受信したビーコン割り込み信号（ビーコン割り込み（ｎ＋１））に対して応答する。７０６ｂにおいて、ＰＬＣインタフェース４０２は、プロセッサ４１４にタイムスタンプ信号（タイムスタンプ（ｎ＋１））を送信することで、タイムスタンプ要求信号に対して応答する。一方、１つの実施形態としては、ＰＬＣインタフェース４０２は、タイムスタンプ要求信号に対する応答の形でなくても、タイムスタンプ信号をプロセッサ４１４に送信することができる。タイムスタンプは、ｎ＋１番目のビーコンに乗せて運ばれた。７０８ｂにおいて、プロセッサ４１４はさらに、音声デコーダ４０４にローカルクロック要求信号を送信することで、受信したビーコン割り込み信号（ビーコン割り込み（ｎ＋１））に対して応答する。７１０ｂにおいて、音声デコーダ４０４は、プロセッサ４１４に保存していたローカルクロックの値（ＳＴＣ（ｎ＋１））を送信することで、ローカルクロック要求信号に対して応答する。一方、１つの実施形態としては、音声デコーダ４０４は、ローカルクロック要求信号に対する応答の形でなくても、保存されたローカルクロックの値（ＳＴＣ（ｎ＋１））をプロセッサ４１４に送信することができる。一般的に説明された７０２、７０４、７０６、７０８、及び７１０における処理は、プロセッサ４１４においてそれぞれ所望の数のタイムスタンプ信号及びローカルクロック信号を含む一連のタイムスタンプ及びローカルクロック信号の受信が終わるまで、ブロードキャストされる後続のビーコン（例えばｎ＋２番目のビーコン、ｎ＋３番目のビーコンなど）の受信時に要求に応じて繰り返され得る。プロセッサ４１４において一連のタイムスタンプ及びローカルクロック信号が受信された後は、５０６及び５０８に関連して前述した通り、ローカルクロックの差異の値とタイムスタンプの差異の値が計算される。ローカルクロックの差異の値とタイムスタンプの差異の値は、５１０において比較される。クロックの調整が必要であれば、５１２において、プロセッサ４１４がクロック調整命令を音声デコーダ４０４に送信する。
【００５２】
音声デコーダ４０４のＳＴＣの調整に関連してクロック調整処理についてこれまで詳しく説明してきたが、図５〜７に関連する前述の処理は、どのネットワーククライアントのデコーダ内のどのＳＴＣの構成にも適用し得ることは理解されるであろう。さらに、図５〜７に関連する前述の処理は、ネットワークサーバのデコーダ内（例えば映像デコーダ３１４及び／または音声デコーダ３２４）の１つ以上のＳＴＣの調整にも適用し得る。この場合、ＰＬＣインタフェース３３０は、電力線１０８上でビーコンが送信される度に、映像デコーダ３１４及び音声デコーダ３２４に向けてビーコン割り込み信号を生成、送信し、さらに割り込み線３３２を介してプロセッサ３３６にも送信する。
【００５３】
図５〜７に関連する前述の処理の間にプロセッサ３３６によって時間が計測され、処理は予決定された時間（例えば約３００ｍｓｅｃ）の間繰り返され、その後プロセッサ３３６が、ネットワーク内のデコーダのローカルクロックの差異の値とタイムスタンプの差異の値との間に予決定された関係が存在することの推定を行う。従って、ネットワーク１００内の全てのデコーダのＳＴＣ値が前述の通り調整される際、ネットワーククライアントとネットワークサーバのデコーダを含むネットワーク１００内の全てのデコーダのＳＴＣ値は実質的に互いに同期される。デコーダが実質的に同期されたと推定されると、ネットワーク内の各デコーダのＳＴＣ周波数は実質的に等しくなり、様々なデコーダ（例えばデコーダ３１４、３２４、及び４０４）は、ＭＰＥＧエンコーダ３０８によって符号化されたデータを、様々なデコーダ間で目立った遅延無く実質的に同期して復号化することができる。
【００５４】
１つの実施形態として、符号化データは、予決定された時間が経過するまで、テレビジョン１０２から様々なデコーダ３１４、３２４、及び４０４に向けて送信される。１つの実施形態として、符号化データは、デコーダが復号化を開始する前の予決定された時間の間、テレビジョン１０２から様々なデコーダ３１４、３２４、及び４０４に向けて送信される。これに応じて、符号化データは、各デコーダ３１４、３２４、及び４０４のローカルバッファ内に蓄積される。一例として、ネットワーク１００内のデコーダが符号化データの復号化を実質的に同期して行うことを保証するように適合された復号化開始処理について、図８に関連してここで説明を行う。
【００５５】
図８に示されている通り、８０２において（例えば、前述の予決定された時間が経過したことをプロセッサ３３６が判定した後）、復号化開始処理は開始される。８０４において、プロセッサ４１４は、復号化開始信号を受信したかどうかを判定する。１つの実施形態として、復号化開始信号はｓ音声デコーダ４０４に対し、予決定された条件を満たした際にＰＬＣインタフェース４０２から送信された符号化データを復号化させるように適合される。予決定された条件とは、例えばＰＬＣインタフェース４０２におけるビーコンの受信であって、その受信によりＰＬＣインタフェース４０２はビーコン割り込み信号を割り込み線４１０上に生成、送信する。よって、音声デコーダ４０４は、テレビジョン１０２によるビーコンの送信後に符号化データの復号化を行うこととなる。１つの実施形態として、復号化開始信号はプロセッサ３３６によって生成され、内部バス３３４を介してＰＬＣインタフェース３３０に送信される。ＰＬＣインタフェース３３０は、続いて復号化開始信号を電力線１０８経由でＰＬＣインタフェース４０２に送信し、そこからさらに復号化開始信号は内部バス４１２を介してプロセッサ４１４へ転送される。復号化開始信号を受信すると、プロセッサ４１４は内部バス４１２を介して復号化開始信号を音声デコーダ４０４へ送信し、処理は８０６へ継続される。８０６において、ＰＬＣインタフェース４０２が電力線１０８上に送信されたビーコンを受信すると、ＰＬＣインタフェースはビーコン割り込み信号を割り込み線４１０へ送信する。８０８において、プロセッサ４１４から復号化開始信号を既に受信している音声デコーダ４０４は、ＰＬＣインタフェース４０２から送信されたビーコン割り込み信号に応じて、符号化データを復号化する。処理は８１０にて終了する。
【００５６】
音声デコーダ４０４における復号化の開始に関連する処理についてこれまで詳しく説明してきたが、図８に関連する前述の処理は、どのネットワーククライアントのデコーダにおける復号化の開始にも適用し得ることは理解されるであろう。さらに、図８に関連する前述の処理は、ネットワークサーバの１つ以上のデコーダ（例えば映像デコーダ３１４及び／または音声デコーダ３２４）の復号化の開始にも適用し得る。この場合、さらにプロセッサ３３６は、前述の復号化開始信号を直接映像デコーダ３１４及び音声デコーダ３２４に向けて内部バスを介して送信する。また、前述の通り、ＰＬＣインタフェース３３０は、ビーコンが送信される度に、映像デコーダ３１４及び音声デコーダ３２４に向けてビーコン割り込み信号を生成して割り込み線３３２を介して送信する。
【００５７】
よって、前述のように復号化開始信号がネットワーク１００内の全てのデコーダに送信されたとき、ネットワーク１００内のデコーダは電力線１０８上をブロードキャストされるビーコンに基づいて実質的に同期的に（即ち遅延が生じることなく）符号化データの復号化を開始することができる。さらに、ネットワーク１００内の各デコーダが実質的に同期するため、復号化されたデータは実質的に同時に利用者に（例えば、ディスプレイ１１８並びに／またはスピーカ１２０、１２２、１２４、１２６、１２８、及び／若しくは１３０を介して）提供される。ネットワークのデコーダ内のＳＴＣの処理の実質的な同期を維持することを保証するために、デコーダが符号化データを復号化している間、前述のクロック調整処理は実行される。クロック調整処理は、デコーダが符号化データを復号化する機能に対して、不利に影響することはない。
【００５８】
前述の通り、ネットワーク１００内の各デコーダのＳＴＣ周波数は、前述のクロック調整処理が実施された後は実質的に等しいと推定される。１つの実施形態として、ローカルバッファ内の同じ値をとる第一のＳＣＲ／ＰＣＲは、ネットワーク１００内の各デコーダのＳＴＣに設定される。他の実施形態としては、ネットワーク１００内の各デコーダのＳＴＣは、予設定された特定の値に設定してもよい。ネットワーク内の各デコーダのＳＴＣを設定するために、プロセッサ３３６は、ＳＴＣ予設定（ｐｒｅｓｅｔ）命令信号を生成し、ネットワーク１００のデコーダに向けて（例えば、内部バス３３４を介して映像デコーダ３１４及び音声デコーダ３２４に向けて、及びＰＬＣインタフェース３３０とＰＬＣインタフェース４０２を介して音声デコーダ４０４に向けて）ＳＴＣ予設定命令信号を送信してもよい。１つの実施形態として、ＳＴＣ予設定命令信号は、予決定された条件が満たされた場合に、デコーダのＳＴＣを予設定された特定の値に設定するよう適合される。予決定された条件とは、例えばＰＬＣインタフェース３３０からのビーコンの送信であって、それによりＰＬＣインタフェース３３０は対応するビーコン割り込み信号を生成し、内部バス３３２上で映像デコーダ３１４及び音声デコーダ３２４に向けて送信する。よって、デコーダのＳＴＣは、テレビジョン１０２からのビーコンの送信後に予設定された特定の値に設定される。予設定値が設定されると間もなく、各ＳＴＣは計数（ｃｏｕｎｔｉｎｇ  ｕｐ）を開始する。１つの実施形態として、各ＳＴＣはＳＴＣ予設定命令を受信したときに設定され、復号化開始信号を受信したときに計数を開始し、そして次のビーコン割り込みが発生する。
【００５９】
従って、ＳＴＣ予設定命令信号を、プロセッサ３３６から内部バス３３２を介して映像デコーダ３１４及び音声デコーダ３２４に向けて、及びネットワーククライアントのデコーダに向けて直接送信してもよい。例えば、プロセッサは内部バス３３４を介してＰＬＣインタフェース３３０にＳＴＣ予設定命令信号を送信してもよい。ＰＬＣインタフェース３３０は、その後電力線１０８経由でネットワーククライアント内のデコーダにＳＴＣ予設定命令信号を送信し得る。ＰＬＣインタフェース４０２は、テレビジョン１０２から出力されるＳＴＣ予設定命令信号を受信し、続いて内部バス４１２を介してＳＴＣ予設定命令信号をプロセッサ４１４に向けて出力する。プロセッサ４１４は、その後、内部バス４１２を介して音声デコーダ４０４にＳＴＣ予設定命令信号を送信する。ＰＬＣインタフェース４０２においてビーコンが受信された場合、ビーコン割り込み信号が音声デコーダ４０４へ割り込み線４１０を介して送信される。同様に、ビーコンがＰＬＣインタフェース３３０から送信された場合、ＰＬＣインタフェースはビーコン割り込み信号を割り込み線３３２を介して映像デコーダ３１４及び音声デコーダ３２４へ送信する。
【００６０】
ＳＴＣ予設定命令信号は前述のようにネットワーク１００内の全てのデコーダに送信され、ネットワーク１００内のデコーダのＳＴＣのＳＴＣ値は、電力線１０８上をブロードキャストされるビーコンに基づき、互いに実質的に同期して特定の予設定値に設定することができる。さらに、ネットワーク１００内のデコーダのＳＴＣ周波数は実質的に等しく、ネットワーク内の各デコーダのＳＴＣ値は実質的に同期して増加される。
【００６１】
ＨＤＤ３１２内に保存されたデータを再生する際、データの送信には２つのやり方がある。１つは、ＰＣＲまたはＳＣＲをストリームに組み込む等時間隔での送信である。各データパケットは、ＰＣＲまたはＳＣＲがネットワークサーバ（例えばテレビジョン１０２）のシステムクロックに同期するように投入され、元の時間間隔は再構成される。電力線１０８に接続された全てのデコーダは、各デコーダのローカルバッファがオーバフローまたはアンダーフローを起こさないように、ネットワーククロックに同期される。もう１つのやり方は、非同期送信である。非同期送信は、ＭＰＥＧストリームだけではなく、例えば線形ＰＣＭ音声ストリームなどといった、タイムスタンプを含まない固定速度のストリームにも用いられる。ＨＤＤ３１２内に保存されたデータは、各デコーダのローカルバッファがオーバフローまたはアンダーフローを起こさないように、各デコーダ（例えば、デコーダ３１２、３２４、及び４０４）へ送信される。後述の仕組みにより、各ローカルバッファの占有状況が適切に維持される。
【００６２】
図９は、ネットワークサーバから再生データを受信するネットワーククライアントのデコーダ内のバッファ占有状況を予決定された範囲内に維持するための方法の一例の実施形態を示している。図９に示している通り、９０２において、例えば音声デコーダ４０４がＰＬＣインタフェース４０２から受信した再生データの復号化を開始するところから処理は開始される。音声デコーダ４０４が再生データの復号化を行っている際、プロセッサ４１４はローカルバッファのバッファ占有状況（即ち、ローカルバッファ内に保存された再生データ量）を監視する。９０４において、プロセッサ４１４は、ローカルバッファのバッファ占有状況の監視として、現在のバッファの占有率（ｏｃｃｕｐａｎｃｙ）を予決定された範囲の上限値（例えばバッファの領域全体の８０％）と比較する。現在のバッファ占有率が上限値を超えた場合、処理は９０６へと続き、プロセッサ４１４はデータストリーム制御命令信号（即ち停止命令）をＰＬＣインタフェース４０２へ内部バス４１２を介して生成、送信する。ＰＬＣインタフェース４０２はその後、停止命令をテレビジョン１０２へ電力線１０８を介して送信する。
【００６３】
１つの実施形態として、音声増幅器１０４から送信される停止命令は、テレビジョン１０２から音声増幅器１０４へ再生データが送信されることを妨げ、他のネットワーククライアント（例えばステレオ１０６）がテレビジョン１０２から再生データを受信するように適合される。換言すると、停止命令は、ネットワークサーバ（例えばテレビジョン１０２）の現在のデータ配信特性を変えるよう適合される。それに応じて、ＰＬＣインタフェース３３０は送信された停止命令を受信し、プロセッサ３３６へ転送する。プロセッサ３３６は、停止命令を受信した後、再生データがＰＬＣインタフェース４０２から音声増幅器１０４及び他のネットワーククライアントへ送信されるのを妨げるよう適合された制御信号を出力する。１つの実施形態としては、プロセッサ３３６はそうした制御信号をＰＬＣインタフェース３３０へ内部バス３３４を介して出力し、そこからネットワーク１００内の全てのデコーダへ制御信号を続けてブロードキャストしてもよい。それに応じて、テレビジョン１０２は、９０６において音声増幅器１０４から停止命令が送信された後、音声増幅器１０４（及び他のネットワーククライアント）への再生データの送信を停止する。
【００６４】
次に、９０８において、プロセッサ４１４は再生を停止するかどうかを判定する。利用者が遠隔制御器１１６から停止命令を送信した場合、命令は電力線１０８上でプロセッサ４１４に送信される。その場合、処理は９１６に移り、配信は停止する。プロセッサ４１４が停止命令を遠隔制御器１１６から受信しない場合、プロセッサ４１４は９１０において、予決定された時間、例えば１０ｍｓｅｃだけ待機し、その後９０４にてローカルバッファのバッファ占有率の監視を再開する。もし９０４において現在のバッファの占有率が上限値よりも大きくないと判定されれば、処理は９１２に移り、プロセッサ４１４はローカルバッファのバッファ占有率の監視として、現在のバッファ占有率と予決定された範囲（例えばバッファの領域全体の２０％）の下限値との比較を行う。
【００６５】
９１２において、現在のバッファ占有率が下限値を下回っていると判定された場合、処理は９１４へと続き、プロセッサ４１４はデータストリーム制御命令信号（即ち再開命令）をＰＬＣインタフェース４０２へ内部バス４１２を介して生成、送信する。ＰＬＣインタフェース４０２はその後、再開命令をテレビジョン１０２へ電力線１０８を介して送信する。
【００６６】
１つの実施形態として、音声増幅器１０４から送信される再開命令は、テレビジョン１０２から音声増幅器１０４へ再生データを送信可能とし、他のネットワーククライアント（例えばステレオ１０６）がテレビジョン１０２から再生データを受信しないように適合される。換言すると、再開命令は、ネットワークサーバ（例えばテレビジョン１０２）の現在のデータ配信特性を変えるよう適合される。それに応じて、ＰＬＣインタフェース３３０は送信された再開命令を受信し、プロセッサ３３６へ転送する。前述の処理と同様に、プロセッサ３３６は、再開命令を受信した後、再生データがＰＬＣインタフェース４０２から音声増幅器１０４（及び他のネットワーククライアント）へ送信されるよう適合された制御信号を出力する。その後処理は９０８へ進み、プロセッサ４１４は配信を終了するかどうかを判定する。プロセッサ４１４が配信を終了する場合には、処理は９１６にて終了する。プロセッサ４１４が配信を終了しない場合には、９１０において、処理は所定の時間だけ待機した後に前述の９０４へ戻る。
【００６７】
前述の通り、データストリーム制御命令信号は、各デコーダのローカルバッファの占有率を制御するよう適合される。停止命令を送信することにより、再生データのテレビジョン１０２からの送信は妨げられる。従って、音声デコーダ４０４が新しい再生データをローカルバッファ内に受信する際、そのローカルバッファのバッファ占有率は、最終的には上限値を下回るレベルにまで低減される。さらに、再開命令を送信することにより、テレビジョン１０２による音声増幅器１０４への再生データの配信再開が可能となる。従って、テレビジョン１０２が再生データを音声デコーダ４０４へ送信する際、そのローカルバッファのバッファ占有率は、最終的には下限値を上回るレベルにまで増大される。適切なデータストリーム制御命令信号を繰り返し送信することによって、バッファ占有率を上限値と下限値の間に維持することができ、バッファ占有率がオーバフローまたはアンダーフローしないことが保証される。ローカルバッファ内の符号化データは、ネットワーククロックに同期したＳＴＣに基づいて独立して復号化される。
【００６８】
音声増幅器１０４の音声デコーダ４０４内のバッファ占有率の維持に関する処理についてこれまで詳しく説明してきたが、図９に関連する前述の処理は、どのネットワーククライアントのどのデコーダ内のバッファ占有率の維持にも適用し得ることは理解されるであろう。さらに、図９に関連する前述の処理は、ネットワークサーバ内の１つ以上のデコーダ（例えば映像デコーダ３１４及び／または音声デコーダ３２４）のバッファ占有率の維持に適用してもよい。その場合、プロセッサ３３６は、ＨＤＤ３１２から映像デコーダ３１４及び／または音声デコーダ３２４へのデータの送信を単純に停止／可能化する。プロセッサ３３６は、２つ以上のデコーダからデータストリーム制御命令を受信してもよい。データは、いくつかのデコーダのバッファ占有率が範囲外にならない状況で、停止または再送信してもよい。全てのデコーダが同期しているため、これが問題になることはない。他のデコーダがアンダーフロー（オーバフロー）する時に、他のデコーダがオーバフロー（アンダーフロー）することはない。
【００６９】
リアルタイムにブロードキャストされるアナログまたはデジタルデータが復号化される際、クロック生成器３５０によって生成されるシステムクロックは、入ってくるストリームに同期される。ネットワーククロックは、システムクロックに同期される。全てのデコーダはネットワーククロックに固定されているため、同期の問題は発生しない。この仕組みは、サーバが２つ以上の独立したストリームを再配信する場合には適切でない。ネットワーククロックは１つのストリームにだけ同期し得る。そのため、他のストリームが同期しなくなってしまう。ネットワーククロックが送信ストリームに同期しない場合のデコーダの同期方法について、図１０は描いている。この方法において、ネットワークサーバからブロードキャストデータを受信するネットワーククライアントのデコーダ内のバッファ占有状況を、予決定された範囲内に維持することができる。図１０に示している通り、１００２において、例えば音声デコーダ４０４がＰＬＣインタフェース４０２から受信したブロードキャストデータの復号化を開始するところから処理は始まる。音声デコーダ４０４がブロードキャストデータを復号化する際、プロセッサ４１４はローカルバッファのバッファ占有率（即ち、ローカルバッファ内に保存されたブロードキャストデータ量）を監視する。
【００７０】
１００４において、プロセッサ４１４は、ローカルバッファのバッファ占有率の監視として、現在のバッファ占有率と予決定された範囲の上限値（例えばバッファの領域全体の８０％）との比較を行う。現在のバッファ占有率が上限値を超えた場合、処理は１００６へと続き、プロセッサ４１４はクロック速度制御命令信号（即ち速度上昇命令）をＰＬＣインタフェース４０２へ内部バス４１２を介して生成、送信する。ＰＬＣインタフェース４０２はその後、速度上昇命令をテレビジョン１０２へ電力線１０８を介して送信する。
【００７１】
１つの実施形態として、１００６において音声増幅器１０４から送信される速度上昇命令は、音声デコーダ４０４及び他のネットワーククライアント（例えばステレオ１０６）のデコーダ内のＳＴＣ周波数を増加させるために用いるクロック調整比Ｒをプロセッサ３３６に生成させ、そしてテレビジョン１０２からブロードキャストデータを受信するように適合される。それに応じて、ＰＬＣインタフェース３３０は送信された速度上昇命令を受信し、プロセッサ３３６へ転送する。
【００７２】
プロセッサ３３６は、１００６にて生成された速度上昇命令を受信した後、音声増幅器１０４の音声デコーダ４０４及び他のネットワーククライアント内のＳＴＣ周波数を増加させるよう適合されたクロック調整比Ｒを含むクロック比調整信号を生成する。この場合、クロック調整比Ｒは１より大きい（例えば、ＳＴＣ周波数を１００ｐｐｍ増加させることを示す１．０００１）。クロック比調整信号はその後、プロセッサ３３６からＰＬＣインタフェース３３０へ内部バス３３４を介して送信される。そして、ＰＬＣインタフェース３３０は、電力線１０８上にクロック速度比信号をブロードキャストし、それをＰＬＣインタフェース４０２が受信して、プロセッサ４１４に送信する。
【００７３】
プロセッサ４１４はその後、音声増幅器１０４に関連してクロック調整処理が実施される際に、クロック比調整信号からクロック調整比Ｒを取得する。そして、音声デコーダ４０４のＳＴＣについて、取得したクロック調整比を用いて図５に示したようにクロック調整処理が実施される。例えば、５０６において、取得したクロック調整比Ｒを用いてプロセッサ４１４はタイムスタンプの差異の値を次式に従って計算する：ｄｉｆｆ＿ｔｓ＝Ｒ＊（タイムスタンプ（ｎ＋１）−タイムスタンプ（ｎ））＊ｆｓｔｃ／ｆｔｓ。５１０における比較によってローカルクロックの差異の値とタイムスタンプの差異の値との間に予決定された関係が存在することが示されない場合、ローカルクロックの差異の値がタイムスタンプの差異の値よりも小さいことということになる。従って、５１２において送信されるクロック速度調整命令信号は、ローカルクロックの差異の値がタイムスタンプの差異の値との間に予決定された関係を持つ範囲内またはその近くになるように、音声デコーダ４０４のＳＴＣ周波数を増加させる。
【００７４】
次に１００８において、プロセッサ４１４は、配信を停止するかどうかを判定する。利用者が遠隔制御器１１６から停止命令を送信した場合、命令は電力線１０８上でプロセッサ４１４に送信される。その場合、処理は１０１０に移り、配信は停止する。プロセッサ４１４が停止命令を遠隔制御器１１６から受信しない場合、プロセッサ４１４は１０１２において、予決定された時間、例えば１０ｍｓｅｃだけ待機し、その後１００４にてローカルバッファのバッファ占有率の監視を再開する。もし１００４において現在のバッファの占有率が上限値よりも大きくないと判定されれば、処理は１０１４に移り、プロセッサ４１４はローカルバッファのバッファ占有率の監視として、現在のバッファ占有率と予決定された範囲（例えばバッファの領域全体の２０％）の下限値との比較を行う。現在のバッファ占有率が下限値を下回っている場合、処理は１０１６へと続き、プロセッサ４１４はデータストリーム制御命令信号（即ち速度下降命令）をＰＬＣインタフェース４０２へ内部バス４１２を介して生成、送信する。ＰＬＣインタフェース４０２はその後、速度下降命令をテレビジョン１０２へ電力線１０８を介して送信する。
【００７５】
１つの実施形態として、１０１６において音声増幅器１０４から送信される速度下降命令は、音声デコーダ４０４及び他のネットワーククライアント（例えばステレオ１０６）のデコーダ内のＳＴＣ周波数を減少させるために用いるクロック調整比Ｒをプロセッサ３３６に生成させ、そしてテレビジョン１０２からブロードキャストデータを受信するように適合される。それに応じて、ＰＬＣインタフェース３３０は送信された速度下降命令を受信し、プロセッサ３３６へ転送する。
【００７６】
プロセッサ３３６は、１０１６にて生成された速度下降命令を受信した後、音声増幅器１０４の音声デコーダ４０４及び他のネットワーククライアント内のＳＴＣ周波数を減少させるよう適合されたクロック調整比Ｒを含むクロック速度調整信号を生成する。この場合、クロック調整比Ｒは１より小さい（例えば、ＳＴＣ周波数を１００ｐｐｍ減少させることを示す０．９９９９）。クロック比調整信号はその後、プロセッサ３３６からＰＬＣインタフェース３３０へ内部バス３３４を介して送信される。そして、ＰＬＣインタフェース３３０は、電力線１０８上にクロック比調整信号をブロードキャストし、それをＰＬＣインタフェース４０２が受信して、プロセッサ４１４に送信する。
【００７７】
プロセッサ４１４はその後、音声増幅器１０４に関連してクロック調整処理が実施される際に、クロック比調整信号からクロック調整比Ｒを取得する。そして、音声デコーダ４０４のＳＴＣについて、取得したクロック調整比を用いて図５に示したようにクロック調整処理が実施される。例えば、５０６において、取得したクロック調整比Ｒを用いてプロセッサ４１４はタイムスタンプの差異の値を次式に従って計算する：ｄｉｆｆ＿ｔｓ＝Ｒ＊（タイムスタンプ（ｎ＋１）−タイムスタンプ（ｎ））＊ｆｓｔｃ／ｆｔｓ。５１０における比較によってローカルクロックの差異の値とタイムスタンプの差異の値との間に予決定された関係が存在することが示されない場合、ローカルクロックの差異の値がタイムスタンプの差異の値よりも大きいことということになる。従って、５１２において送信されるクロック速度調整命令信号は、ローカルクロックの差異の値がタイムスタンプの差異の値との間に予決定された関係を持つ範囲内またはその近くになるように、音声デコーダ４０４のＳＴＣ周波数を減少させる。１０１４において、現在のバッファ占有率が下限値を下回ると判定された場合（または速度下降命令が１０１６に従って送信された後）、処理は１００８に継続する。
【００７８】
前述の通り、クロック速度制御命令信号は、各デコーダのローカルバッファ占有率を制御するよう適合される。音声デコーダ４０４のＳＴＣ周波数を増加させるよう適合された速度上昇命令を送信することにより、音声デコーダ４０４が自身のローカルバッファ内に保存したブロードキャストデータからデータの抽出と復号化を行う速度を増加させることができる。その結果、ローカルバッファのバッファ占有率は最終的には上限値を下回るレベルにまで低減される。さらに、音声デコーダ４０４のＳＴＣ周波数を減少させるよう適合された速度下降命令を送信することにより、音声デコーダ４０４が自身のローカルバッファ内に保存したブロードキャストデータからデータの抽出と復号化を行う速度を減少させることができる。その結果、ローカルバッファのバッファ占有率は、最終的には下限値を上回るレベルにまで増大される。適切なクロック速度制御命令信号を繰り返し送信することによって、デコーダ内のＳＴＣ周波数を増加または減少させてバッファ占有率を上限値と下限値の間に維持することができ、バッファ占有率がオーバフローまたはアンダーフローしないことが保証される。
【００７９】
音声増幅器１０４の音声デコーダ４０４内のバッファ占有率の維持についてこれまで詳しく説明してきたが、図１０に関連する前述の処理は、どのネットワーククライアントのどのデコーダ内のバッファ占有率の維持にも適用し得ることは理解されるであろう。さらに、図１０に関連する前述の処理は、ネットワークサーバの１以上のデコーダ（例えば映像デコーダ３１４及び／または音声デコーダ３２４）内のバッファ占有率の維持にも適用し得る。この場合、プロセッサ３３６は、映像デコーダ３１４及び音声デコーダ３２４についてクロック調整処理を実施する際に、単純にクロック調整比Ｒをタイムスタンプの差異の値の計算に組み込む。プロセッサ３３６は、２つ以上のデコーダからクロック速度制御命令信号を受信してもよい。いくつかのデコーダのバッファ占有率が範囲外にならない状況で、クロック速度を調整してもよい。全てのデコーダが同期しているため、これが問題になることはない。他のデコーダがアンダーフロー（オーバフロー）する時に、他のデコーダがオーバフロー（アンダーフロー）することはない。
【００８０】
１つの実施形態として、ネットワークサーバ（即ちテレビジョン１０２）は、クロック調整比に基づいて自身のシステムクロック（即ちネットワーククロック）を調整してもよい。この場合、速度上昇／下降命令がクライアントに送信されることはない。クライアントのクロックは、クロック調整比Ｒによって調整されたネットワーククロックに同期される。
【００８１】
ここで開示した発明についてこれまで特定の実施形態、実施例、及びそれらの応用の形で説明を行ってきた。いわゆる当業者であれば、それらに数多くの修正や変形を加えることが可能であるが、それは特許請求の範囲に記載された本発明の技術的範囲から外れるものではない。
【図面の簡単な説明】
【００８２】
【図１】本明細書で開示した多くの実施形態を実装することのできるネットワークの例を示している。
【図２】例としてのネットワークアクセスのタイミング図である。
【図３】図１に示したテレビジョンに関するブロック図である。
【図４】図１に示した音声増幅器に関するブロック図である。
【図５】例としてのクロック調整処理の１つの実施形態を示している。
【図６】ローカルクロックの差異の値とタイムスタンプの差異の値との比較、及び前述の図５で示したクロック調整信号の送信を例として示している。
【図７】図５で示したクロック調整処理の例に応じた、ネットワークコンポーネント間の信号の送信シーケンスを示している。
【図８】符号化データの復号化を開始する処理の例に関する１つの実施形態を示している。
【図９】ネットワークサーバからの応答データストリームを受信する際のネットワーククライアント内のバッファ占有レベルを維持する方法に関する１つの実施形態を示している。
【図１０】ネットワークサーバからのブロードキャストデータストリームをリアルタイムに受信する際のネットワーククライアント内のバッファ占有レベルを維持する方法に関する１つの実施形態を示している。
【図１】
2008537409.tif 000003
【図２】
2008537409.tif 000004
【図３】
2008537409.tif 000005
【図４】
2008537409.tif 000006
【図５】
2008537409.tif 000007
【図６】
2008537409.tif 000008
【図７】
2008537409.tif 000009
【図８】
2008537409.tif 000010
【図９】
2008537409.tif 000011
【図１０】
2008537409.tif 000012
【国際調査報告】
2008537409.tif 000013