JP2008537409A - ネットワーク機器用の同期的音声/映像復号化方法及び装置 - Google Patents

ネットワーク機器用の同期的音声/映像復号化方法及び装置 Download PDF

Info

Publication number
JP2008537409A
JP2008537409A JP2008506647A JP2008506647A JP2008537409A JP 2008537409 A JP2008537409 A JP 2008537409A JP 2008506647 A JP2008506647 A JP 2008506647A JP 2008506647 A JP2008506647 A JP 2008506647A JP 2008537409 A JP2008537409 A JP 2008537409A
Authority
JP
Japan
Prior art keywords
clock
local
difference value
decoder
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008506647A
Other languages
English (en)
Other versions
JP5068744B2 (ja
Inventor
隆一 岩村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of JP2008537409A publication Critical patent/JP2008537409A/ja
Application granted granted Critical
Publication of JP5068744B2 publication Critical patent/JP5068744B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2368Multiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/10Arrangements for initial synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4305Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4341Demultiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals

Abstract

ネットワーク内のデコーダをサーバに同期させる方法であって、一連のタイムスタンプ及びローカルクロック信号をビーコン割り込み信号の受信後に受信し、一連のタイムスタンプ及びローカルクロック信号内のタイムスタンプ及びローカルクロックの値からタイムスタンプの差異の値及びローカルクロックの差異の値をそれぞれ計算し、タイムスタンプの差異の値に対してローカルクロックの差異の値が予決定された関係を有するかどうかを判定し、そして前記関係を有しないと判定した場合にはクロック速度調整命令信号を送信する方法が開示される。クロック速度調整命令信号は、タイムスタンプの差異の値に対してローカルクロックの差異の値が予決定された関係を有するように前記ローカルシステム時間クロックを調整し、それによりデコーダは実質的に同期され、復号化の遅延を人間に知覚されない程度に維持することができる。
【選択図】図3

Description

関連する出願の参照
本願は、2005年4月13日付提出の米国仮特許出願第60/671,223号の利益を主張し、その全ての内容はここに参照により取り入れられる。
本明細書にて説明する実施形態は、一般的にネットワーク機器用の同期的音声/映像復号化に関する。
メディアネットワーク内において通信用リンクに沿ってメディア情報(例えば映像データ、音声データなど)を配信するために、様々な仕組みが提案されてきた。メディアネットワークの1つの形態は、通信媒体として基本的に家庭の交流電源の配線(即ち電力線)を用いる電力線ネットワークである。従って、電力線ネットワーク内では、ネットワークサーバが、メディア情報(即ち1つ以上の符号化されたデータストリーム)を、交流電源のコンセントに接続(“plugged in”)された1つ以上のネットワーククライアントに送信することができる。ネットワーククライアントは、符号化されたデータストリームを受信して復号化し、復号化後のデータストリームを音声及び/または映像の形式で出力する。
従来の電力線ネットワークの1つの欠点は、ネットワーククライアントが同期の仕組みを全く有していないことである。よって、2つのネットワーククライアントが符号化されたデータストリームの復号化を同時に開始する際でさえも、それぞれのデコーダ内のクロックの発振子が独立して動作するため、両者間の遅延は時間の経過と共に徐々に大きくなる。音声の遅延が30msecを超えると、好ましくないエコー効果(即ちハース効果)が発生し、利用者に2つの音調が聞こえる結果となる。そうしたエコー効果は、音声復号化サラウンドシステムによって再生される音楽を聴く利用者の楽しさを損ねてしまう。デコーダのクロック内の典型的な発振子の精度は、10ppmよりも大きい。1時間は3600秒である。よって、10ppmは36msecに相当する。従って、従来の電力線ネットワークでは、映像データを復号化すると、1時間以内に好ましくないハース効果が現れる。
従って、ネットワーク内での復号化を同期的に処理するように適合された方法及びシステムが提供されることが好ましい。
本明細書で開示されている複数の実施形態は、ネットワーク機器用の音声/映像を同期的に復号化する方法を提供し、及びシステムを実現することによって、前述の要求及び他の要求に効果的に対処している。
本明細書で例として説明する1つの実施形態において提供される、ネットワーク内でデコーダをサーバに同期させる方法は、ネットワークサーバから送信されたビーコンの受信後に一連のタイムスタンプ信号を受信し、ネットワークサーバから送信されたビーコンの受信後に一連のローカルクロック信号を受信し、一連のタイムスタンプ信号内のタイムスタンプ信号の値に基づいてタイムスタンプの差異を計算し、一連のローカルクロック信号内のローカルクロック信号の値に基づいてローカルクロックの差異を計算し、タイムスタンプの差異の値に対してローカルクロックの差異の値が予決定された関係を有するかどうかを判定し、及びタイムスタンプの差異の値について予決定された関係をローカルクロックの差異の値が有しないと判定された場合にデコーダにクロック速度調整命令信号を送信し、さらにクロック速度調整命令信号はローカルシステム時間のクロックを後続のローカルクロックの差異の値がタイムスタンプの差異の値について予決定された関係を有するように調整するよう適合される。一連のタイムスタンプ信号内の各タイムスタンプ信号は、ネットワークサーバから送信されてタイムスタンプを付されたビーコンに、対応する値を有する。一連のローカルクロック信号内の各ローカルクロック信号は、ネットワーククライアントのデコーダに関連付けられたローカルシステム時間クロックによって生成された値を有する。ネットワークサーバは、ネットワーク上に符号化データを流すように適合され、デコーダは、前記符号化データを復号化するように適合される。
本明細書で例として説明する他の実施形態において提供されるネットワーク装置は、ネットワーク上を送信される符号化データを受信するように適合されたネットワットワークインタフェースと、受信した符号化データを復号化するためにネットワットワークインタフェースに接続されるデコーダと、ネットワークインタフェース及びデコーダに接続されるプロセッサとを含む。プロセッサは、ネットワークサーバから送信されたビーコンの受信後に一連のタイムスタンプ信号をネットワークインタフェースを介して受信し、ネットワークサーバから送信されたビーコンの受信後に一連のローカルクロック信号を受信し、一連のタイムスタンプ信号内のタイムスタンプ信号の値に基づいてタイムスタンプの差異を計算し、一連のローカルクロック信号内のローカルクロック信号の値に基づいてローカルクロックの差異を計算し、タイムスタンプの差異の値に対してローカルクロックの差異の値が予決定された関係を有するかどうかを判定し、及びタイムスタンプの差異の値について予決定された関係をローカルクロックの差異の値が有しないと判定された場合にデコーダにクロック速度調整命令信号を送信するよう適合される。一連のタイムスタンプ信号内の各タイムスタンプ信号は、ネットワークサーバから送信されてタイムスタンプを付されたビーコンに、対応する値を有する。一連のローカルクロック信号内の各ローカルクロック信号は、デコーダに関連付けられたローカルシステム時間クロックによって生成された値を有する。クロック速度調整命令信号は、後続のローカルクロックの差異の値とタイムスタンプの差異の値とが予決定された関係を有するようにローカルシステム時間クロックを調整するよう適合される。
本明細書で説明している複数の実施形態が有する、前述の、及び他の観点、特徴、並びに利点は、添付図面と併せて以下のより詳細なそれらの説明からさらに明らかとなる。
対応する符号は複数の図面を通して対応するコンポーネントを示している。いわゆる当業者であれば、図中の要素は簡潔さと明確さをもって描かれているのであって、必ずしも縮尺どおりに描かれているわけではないことを理解するであろう。例えば、図中のいくつかの要素の次元は、本明細書で説明している様々な実施形態のよりよい理解を助けるために、他の要素と比較して強調されている。また、商業的に実現可能な実施形態において有用または必須の一般的でよく知られた要素は、ここで説明される様々な実施形態を参照することを妨げないために、多くの場合省略されている。
以下の説明は、限定的な意味で理解すべきものではなく、例としての実施形態の一般的な原理を説明する目的でのみ記載されている。本発明の技術的範囲は、特許請求の範囲を参照することでのみ決定されるべきである。
本明細書では、多くの実施形態によって、ネットワーク内でデコーダがネットワーク内の他のデコーダと同期しながらデータを復号化することを可能にする。それに応じて、多くの実施形態において、ネットワークサーバから出力されるタイムスタンプに基づいてデコーダのシステム時間クロック(即ち、ローカルSTC:local system time clock)を調整することで、実質的な同期処理を行うことが可能となる。また、他の実施形態において、デコーダのバッファ占有状況(occupancy level)を調整することで、実質的な同期処理を行うことが可能となる。ネットワーク内のデコーダのSTC及び/またはバッファ占有状況を調整することで、デコーダは、符号化データを実質的に同期して復号化することができる。本明細書で開示した方法をネットワーク内の各デコーダに対して実施する際にはそれらデコーダは実質的に同期され、デコーダ間の復号化中の遅延は、人間に知覚され得る程度を下回る値に維持される。
図1は、本明細書に開示する多くの実施形態を実装可能なネットワーク100を例として示している。図1に示されているのは、テレビジョン102、音声増幅器104、ステレオ106、交流電力線108、ケーブル入力線110、ネットワーク入力線112(例えばケーブル誘導線、またはADSL電話線など)、モデム114(例えばケーブルモデム、ADSL電話線モデム、または同等のもの)、遠隔制御器116、ディスプレイ118、及びスピーカ120、122、124、126、128、130である。
テレビジョン102、音声増幅器104、及びステレオ106は、それぞれ交流電力線108に接続されている。テレビジョン102はケーブル入力線110に接続され、さらにモデム114を介してネットワーク入力線112に接続される。スピーカ120、122、124、及び126はテレビジョン102に接続され、スピーカ128及び130は音声増幅器104に接続される。図1に例示された実施形態において、スピーカ120、122、124、126、128、及び130は音声サラウンドシステムを構成し、スピーカ120は前部低音スピーカ、スピーカ122、124、及び126は前部スピーカ(例えばそれぞれ左側、中央、右側スピーカなど)、そしてスピーカ128及び130は後部スピーカ(例えばそれぞれ左側、右側スピーカなど)となる。
一般的に、また多くの実施形態に従えば、テレビジョン102は音声及び/または映像信号を、ケーブル入力線110から、及び/またはモデム114を介してネットワーク入力線112から受信するように適合される。さらにテレビジョン102は、受信した映像信を処理してディスプレイ118上に映像を生成し、受信した音声信号を処理してスピーカ120、122、124、及び126上に音声を生成し、さらに受信した信号を電力線108上に送信(即ち配信(stream))するように適合される。
一般的に、また多くの実施形態に従えば、音声増幅器104は、電力線108上に送信される符号化された音声信号を受信し、受信した音声信号を復号化し、そして復号化済みの音声信号をスピーカ128及び130に出力するように適合される。同様に、ステレオ106は、テレビジョン102からの符号化された音声信号を電力線108を介して受信し、受信した音声信号を復号化し、そして復号化済みの音声信号を内蔵するスピーカに出力するように適合される。ステレオ106を、テレビジョン102に向けてプレイバック命令(例えば、再生、停止、一時停止など)を電力線108を介して送信するように適合してもよい。
ここで述べられているように、ネットワーク100は電力線ネットワーク(即ち、家庭の電力線を音声及び映像データの送信用媒体として用いるネットワーク)である。従って、テレビジョン102をネットワーク100のネットワークサーバとして活用し、音声増幅器104及びステレオ106をネットワーク100のネットワーククライアントとして活用してもよい。一般的なネットワークサーバの役割には、電力線108上へのビーコンのブロードキャスト、符号化された音声/映像データのネットワーククライアントへの送信(即ち配信)、ネットワーククライアントへの命令(例えば、符号化データの復号化の開始、符号化データの復号化の停止など)の送信、及び他のネットワーククライアントを協調させる処理が含まれる。1つの実施形態において、ネットワーククライアント及びネットワークサーバの処理は、ブロードキャストされるビーコンに基づいて調整される。ここで電力線通信に関連して実施形態が検討されているが、ネットワーク100は、ビーコンを用いて動作する他の如何なる有線又は無線のネットワークを含んでもよいことは理解されるであろう。
図2は、ネットワークアクセスのタイミング図を例として示している。図2に示しているように、ネットワークサーバの役割を果たすテレビジョン102は、ビーコン202a、202b、202c等をブロードキャストしている。1つの実施形態において、テレビジョン102は、定期的にビーコンをブロードキャストする(例えば40msecごと)。従って、各ビーコン周期の長さは40msecとなる。しかしながら、後述するクロック調整処理が行われるために十分な時間が存在する限り、ビーコンの送信が定期的に行われる必要はないことは理解されるであろう。1つの実施形態において、各ビーコンは、電力線108の交流周期(例えば50Hzまたは60Hz)と同期してブロードキャストされる。1つの実施形態において、各ビーコンと共に(例えばビーコンに含んでもよい)、タイムスタンプが送信される。ビーコンのタイムスタンプは、テレビジョン102のシステムクロックに基づいて付加される。他の実施形態としては、タイムスタンプは各ビーコンとは別に送信される。
各ビーコン周期は、無競合期間(contention−free period)と競合期間(contention period)とに分割される。各ビーコン周期の中でタイムスロット204a、204bなどとして予約される無競合期間においては、等時間間隔での送信が行われ、その期間内では他の送信は認められない。符号化された音声/映像データは、テレビジョン102によって、等時間間隔での送信を利用して配信される。非同期送信(例えば206における送信)は、符号分割多元接続(CDMA:Carrier Sense Multiple Access)が認められる競合期間において行われる。典型的には、ネットワーク100のサーバとクライアントとの間の命令やファイルの送信が、非同期送信を利用して行われる。
図3は、図1に示したテレビジョン102のブロック図を描いている。図3には、前述のケーブル入力線110、遠隔制御器115及びスピーカ120、122、124、及び126、さらにチューナ302、映像AD(analog−to−digital)変換器304、音声AD変換器306、MPEGエンコーダ308、デマルチプレクサ(DMX)310、クロック生成器350、ハードディスクドライブ(HDD)312、映像デコーダ314、グラフィックスエンジン316、ミキサ318、ディスプレイ118、映像DA(digital−to−analog)変換器320、ディスプレイドライバ322、音声デコーダ324、4チャネルDA変換器326、4チャネル増幅器(Amp)328、電力線通信(PLC)インタフェース330、割り込み線332、内部バス334、プロセッサ336(例えば1つ以上の中央演算装置(CPU))、記憶装置338、キーパッド340、イーサネット(登録商標)インタフェース342、イーサネットポート344、及び赤外線(IR:Infra−red)インタフェース346が示されている。また、図示はされていないものの、映像デコーダ314及び音声デコーダ324は両方とも、ローカルバッファ及びSTCを含む。1つの実施形態として、映像デコーダ314及び音声デコーダ324、並びに/またはデマルチプレクサ310は、単一のチップに統合することもできる。
チューナ302は、ケーブル入力線110に接続され、映像AD変換器304及び音声AD変換器306はそれぞれチューナ302に接続され、MPEGエンコーダ308は映像AD変換器304及び音声AD変換器306に接続され、デマルチプレクサ310はMPEGエンコーダ308に接続される。HDD312、映像デコーダ314、音声デコーダ324、及びPLCインタフェース330はデマルチプレクサ310に接続される。ミキサ318は映像デコーダ314及びグラフィックスエンジン316に接続され、映像DA変換器320はミキサ318に接続され、ディスプレイドライバ322は映像DA変換器320に接続され、ディスプレイ118はディスプレイドライバ322に接続される。4チャネル音声DA変換器326は音声デコーダ324に接続され、4チャネル増幅器328は4チャネル音声DA変換器326に接続され、そしてスピーカ120、122、124、及び126は4チャネル増幅器328に接続される。PLCインタフェース330は電力線108に接続される。割り込み線332は、PLCインタフェース330、映像デコーダ314及び音声デコーダ324とプロセッサ336とを接続する。前述の各コンポーネントは、内部バス334と接続してもよい。なお、図示する上での明確さのために、デマルチプレクサ310、映像デコーダ314、音声デコーダ324、PLCインタフェース330、プロセッサ336、記憶装置338、キーパッド340、イーサネットインタフェース342、及び赤外線インタフェース346のみが内部バス334に接続しているように示されている。チューナ302は、ケーブル入力線110からのアナログケーブル信号に周波数を合わせて復調を行う。チューナ302のアナログ映像出力は、映像AD変換器304によって受信され、デジタル映像信号に変換される。同様に、チューナ302のアナログ音声出力は音声AD変換器306によって受信され、デジタル音声信号に変換される。音声及び映像信号出力はその後、MPEGエンコーダ308によって受信され、MPEG形式を用いて符号化され、デマルチプレクサ310に符号化データストリームとして出力される。
クロック生成器350は、前述のシステムクロックを生成する。システムクロックの速度は、例えば27MHzである。システムクロックは、映像AD変換器304及び音声AD変換器306により生成されるデジタルまたはNSTCタイミング信号に同期される。システムクロックは、MPEGエンコーダ308、デマルチプレクサ310、及びPLCインタフェース330に配信される。
さらにMPEGエンコーダ308は、デマルチプレクサ310への符号化データ出力内に、100msecから700msecの間隔を持つ参照クロック(例えば、参照システムクロック(SCR)または参照プログラムクロック(PCR))を組み込む。システムクロックはSCRまたはPCRに同期される。従来の方式では、SCR/PCRはデコーダのSTCを同期させるために用いられる。ここで開示するシステムにおいては、SCR/PCRを用いる2つ以上のデコーダを同期させることが難しいため、SCR/PCRは使用されない。SCR/PCRが使用されるかどうかに関わらず、MPEGストリーム出力にはMPEGエンコーダ308によってSCR/PCRが組み込まれる。デコーダタイムスタンプ(DTS)は、例えば映像フレームなどの各アクセスデータ単位に包含される。DTSはシステムクロックに基づいて生成される。
PLCインタフェース330は、ビーコンのブロードキャストを行う。ビーコンには、クロック生成器350のシステムクロックに基づいてタイムスタンプが付加される。よって、タイムスタンプは、デジタルまたはNSTCタイミング信号に同期され、25MHzの速度(即ちネットワーククロック速度)を有するタイムスタンプクロックによって生成される。
デマルチプレクサ310は、符号化データストリームをMPEGエンコーダ308から受信し、符号化データストリームを分解して符号化映像データストリーム及び符号化音声データストリームを生成し、符号化映像データストリームを映像デコーダ314へ、符号化音声データストリームの少なくとも一部を音声デコーダ324へ送信する。デマルチプレクサ310は、音声増幅器104で用いるために、少なくとも符号化データストリームの一部(例えば、符号化音声ストリームの少なくとも一部)をPLCインタフェース330にも送信する。
デジタルケーブルブロードキャストの場合、チューナ302は、例えばMPEGストリームなどのデジタルストリームを直接デマルチプレクサ310に向けて出力する。SCR/PCR及びDTSは、ブロードキャストステーションの終端装置(ヘッドエンド:head end)に組み込まれる。システムクロックは、SCR/PCRに同期される。チューナ302からのデータストリームとは、例えば複数のテレビ番組を含む。デマルチプレクサ310は、プロセッサ336からの命令に基づき、不要なデータをフィルタリングして除外する。映像デコーダ314及び音声デコーダ324のそれぞれに対して、選択された音声/映像データのみが送信される。
映像デコーダ314は、デマルチプレクサ310から自身のSTC周波数に相当する速度で出力される符号化映像データストリームを復号化し、復号化済み映像データストリームをミキサ318に向けて出力する。映像デコーダ314内のローカルバッファは、デマルチプレクサ310から受信する符号化データを、復号化の準備が整うまで保存する。符号化データは、映像デコーダ314のSTCがDTSによって特定される時間に達したときに復号化される。さらに、映像デコーダ314がローカルバッファ内に保存している符号化データを抽出する速度は、ローカルSTCの周波数に依存する。ミキサ318は、映像デコーダ314から出力される復号化済みの映像データストリームをグラフィックスエンジン316内で生成、出力されるグラフィックデータと重ね合わせ、映像グラフィックデータを生成する。映像グラフィックデータとは、例えば利用者に視聴または録画するテレビ番組を選択させることのできる電子番組案内表などのことである。映像グラフィックデータはその後、映像DA変換器320によってアナログ映像信号に変換される。ディスプレイドライバ322は、映像DA変換器320から出力されるアナログ映像信号を受信し、ディスプレイ118を作動させて対応する画像を表示させる。
音声デコーダ324は、デマルチプレクサ310から自身のSTC周波数に相当する速度で出力される符号化音声データストリームを復号化し、復号化済み音声データストリームを4チャネル音声DA変換器326に向けて出力し、4チャネル音声DA変換器326は復号化済み音声データストリームをアナログ音声信号に変換する。音声デコーダ324内のローカルバッファは、デマルチプレクサ310から受信する符号化データを、復号化の準備が整うまで保存する。符号化データは、音声デコーダ324のSTCがDTSによって特定される時間に達したときに復号化される。さらに、音声デコーダ324がローカルバッファ内に保存している符号化データを抽出する速度は、ローカルSTCの周波数に依存する。4チャネル増幅器328は、4チャネル音声DA変換器326から出力されるアナログ音声信号を受信し、音声信号を増幅し、増幅済みの音声信号をスピーカ120、122、124、126に向けて出力する。
PLCインタフェース330は、デマルチプレクサ310からの符号化データストリームの少なくとも一部を受信し、受信した符号化データに加えてビーコン及び他の命令を電力線108を介して送信(即ち配信)するよう適合される。1つの実施形態では、PLCインタフェース330は、電力線108を介してタイムスタンプの配信も行う。
プロセッサ336は、記憶装置338内に保存された1以上の制御プログラムに従って、前述の各コンポーネントを内部バス334を介して制御するよう適合された回路を含む。1つの実施形態として、プロセッサ336は、さらにネットワーク100内のネットワーククライアントの動作を制御するように適合される。他の実施形態としては、プロセッサ336は、さらにPLCインタフェース330に電力線108上にビーコンとタイムスタンプを送信させるように適合される。電力線108上にタイムスタンプを送信することにより、ネットワーク100の全体が共通のネットワーククロックを共有することとなる。なお、“回路”という用語は、ここで用いられる場合において、例えばハードウェア、ファームウェア、及び/またはソフトウェアによって実装し得る実行可能な命令のいずれの形態にも言及するものであり、それらは全てここで説明される様々な開示の範囲に包含される。
キーパッド340は、利用者の操作を受け付けるように適合され、利用者の操作があった場合にはデータ及び/または命令を直接プロセッサ336に送信する。前述のモデム114はイーサネットポート344に接続され、プロセッサ336はイーサネットインタフェース342を介してモデム114と通信(例えばデータの送受信)を行う。赤外線インタフェース346は、例えば利用者が扱う遠隔制御器116から送信される赤外線信号を受信し、データ及び/またはチャネルの上げ下げや音量の上げ下げなどの命令を送信する。
デマルチプレクサ310は、入力されるストリームの一部又は全部を、記録のためにHDD312に送信する。その応答として、デマルチプレクサ310は、HDD312からのストリームを受信、分割する。前述の通り、映像データは映像デコーダ314へ送信され、音声データは音声デコーダ324に送信される。
図4は、図1に示した音声増幅器104のブロック図を描いている。ステレオ106は音声増幅器104に関連して述べたのと同様に構成される。図4に示されているのは、PLCインタフェース402、音声デコーダ404、2チャネル音声DA変換器406、2チャネル増幅器(Amp)408、前述のスピーカ128及び130、割り込み線410、内部バス412、プロセッサ414(例えば1つ以上のCPU)、記憶装置416、及びユーザインタフェース418(例えばボタンインタフェースなど)である。図示はされていないものの、音声デコーダ404は、ローカルバッファ及びシステム時間クロック(STC)を含む。1つの実施形態としては、音声デコーダ404及び2チャネル音声DA変換406は、単一のチップに統合してもよい。
PLCインタフェース402は、電力線108に接続され、音声デコーダ404はPLCインタフェース402に接続され、2チャネル音声DA変換器406は音声デコーダ404に接続され、2チャネル増幅器408は2チャネル音声DA変換器406に接続され、前述のスピーカ128及び130は2チャネル増幅器408に接続される。割り込み線410は、PLCインタフェース402、音声デコーダ404、及びプロセッサ414の間で接続される。記憶装置416は、プロセッサ414に接続される。音声デコーダ404内のローカルバッファは、PLCインタフェース402から受信する符号化データを、復号化の準備が整うまで保存する。符号化データは、音声デコーダ404のSTCがDTSによって特定される時間に達したときに復号化される。さらに、音声デコーダ404がローカルバッファ内に保存している符号化データを抽出する速度は、ローカルSTCの周波数に依存する。さらに、PLCインタフェース402、音声デコーダ404、2チャネル音声DA変換器406、2チャネル増幅器408、プロセッサ414、及びユーザインタフェース418は、内部バス412に接続される。
PLCインタフェース402は、電力線108上に送信される全てのビーコン、タイムスタンプ、命令、データ(例えば符号化音声データ)などを受信する。PLCインタフェース402が受信する符号化データは、音声デコーダ404へ出力され、自身のSTC周波数に相当する速度で復号化される。音声デコーダ404は復号化済みの音声データを2チャネル音声DA変換器406に出力し、復号化済みの音声データはそこでアナログ音声信号に変換される。2チャネル増幅器408は2チャネル音声DA変換器406から出力されるアナログ音声信号を受信し、音声信号を増幅し、そして増幅された音声信号をスピーカ128及び130に出力する。
プロセッサ414は、記憶装置416内に保存された1以上の制御プログラムに従って、前述の各コンポーネントを内部バス412を介して制御するよう適合された回路を含む。ユーザインタフェース418は、利用者の操作を受け付けるように適合され、利用者の操作があった場合にはデータ及び/または命令(例えば、チャネルや音量の上げ下げなど)を直接プロセッサ414に送信する。プロセッサ414は、例えばプロセッサ336を伴う遠隔制御器116からPLCインタフェース402を介して届く命令といった非同期データ(例えば、命令、データなど)の交換を行う。
ネットワーク100は複数のデコーダを含むため(例えば、テレビジョン102に2つ、音声増幅器104)、各デコーダ内のそれぞれのSTCの周期は、デコーダが互いに実質的に同期して処理を行うことを保証するように適合されたクロック調整処理に従うことによって、調整することができる。図5は、クロック調整処理の例としての1つの実施形態を描いている。
図5に示している通り、処理は501から開始される。502において、一連のタイムスタンプ信号が、例えば音声増幅器104のプロセッサ414において受信される。タイムスタンプ信号は、テレビジョン102によってブロードキャストされたビーコン内に含まれるタイムスタンプの値を特定する。よって、一連のタイムスタンプ信号は、テレビジョン102のPLCインタフェース330から所定の期間内に出力された予決定された数のビーコン内にて同時または別々に送信された、複数のタイムスタンプの値を特定する。
504において、一連のローカルクロック信号が音声デコーダ404から送信され、例えばプロセッサ414において受信される。ローカルクロック信号は、PLCインタフェース402がPLCインタフェース330から出力されたビーコンを受信したときに相当する時点において、例えば音声デコーダ404内に保存されているSTCの値を特定する。よって、一連のローカルクロック信号は、音声デコーダ404のSTCによって保存された複数のSTCの値を特定する。
506において、タイムスタンプの差異の値が、例えば音声増幅器104のプロセッサ414において計算される。1つの実施形態においては、タイムスタンプの差異の値は、PLCインタフェース330から連続して送信された1組のタイムスタンプの差異の値に相当する。例えば、タイムスタンプの差異の値(diff_ts)は、PLCインタフェース330から送信されたn番目のタイムスタンプ(タイムスタンプ(n))と、PLCインタフェース330から送信されたn+1番目のタイムスタンプ(タイムスタンプ(n+1))との間の差異の値に相当し得る。1つの実施形態においては、タイムスタンプの差異の値(diff_ts)は、次式によって計算し得る:diff_ts=(タイムスタンプ(n+1)−タイムスタンプ(n))*fstc/fts、“fstc”は音声デコーダ404内のSTCのクロック周波数(例えば27MHz)、“fts”は前述の25MHzのタイムスタンプクロック速度。他の実施形態としては、タイムスタンプの差異の値は、連続して出力された1組のタイムスタンプの差異の値を複数組にわたって平均した値である。例えば、タイムスタンプの差異の値は、n番目とn+1番目のタイムスタンプ間、n+2番目とn+3番目のタイムスタンプ間、n+4番目とn+5番目のタイムスタンプ間などの差異の値の平均値に相当し得る。
508において、ローカルクロックの差異の値が、例えばプロセッサ414によって計算される。1つの実施形態において、ローカルクロックの差異の値は、テレビジョン102から連続して出力されたビーコンに対応する音声デコーダ404内に保存された1組のSTCの差異の値に相当する。例えば、ローカルクロックの差異の値(diff_stc)は、音声デコーダ404内に保存されたn番目のSTC(STC(n))と、音声デコーダ404内に保存されたn+1番目のSTC(STC(n+1))との間の差異の値に相当し得る。1つの実施形態においては、ローカルクロックの差異の値(diff_stc)は、次式によって計算し得る:diff_stc=STC(n+1)−STC(n)。他の実施形態としては、ローカルクロックの差異の値は、連続して保存された1組のSTCの値を複数組にわたって平均した値である。例えば、ローカルクロックの差異の値は、n番目とn+1番目のSTCの値、n+2番目とn+3番目のSTCの値、n+4番目とn+5番目のSTCの値などの間の差異の値の平均値に相当し得る。
510において、例えばプロセッサ414により、タイムスタンプの差異の値及びローカルクロックの差異の値が比較され、ローカルクロックの差異の値がタイムスタンプの差異の値との間に予決定された関係を有しているかどうかが判定される。1つの実施形態として、ローカルクロックの差異の値がタイムスタンプの差異の値と等しく、または実質的に等しい(即ち、完全に等しくはないものの互いに所定の許容範囲内にある)場合に、ローカルクロックの差異の値はタイムスタンプの差異の値との間に予決定された関係を有するとする。ローカルクロックの差異の値がタイムスタンプの差異の値と実質的に等しいときに予決定された関係が存在するとして定義すれば、ローカルクロックの差異の値とタイムスタンプの差異の値との差が小さい場合にプロセッサ414が音声デコーダ404に調整命令を過度に頻繁に送信することを防ぐことができる。
510における比較によって、ローカルクロックの差異の値とタイムスタンプの差異の値との間に予決定された関係が存在することが認識された場合(即ち、ローカルクロックの差異の値とタイムスタンプの差異の値が完全に等しい、またはローカルクロックの差異の値とタイムスタンプの差異の値が所定の許容範囲内にある場合)、調整は実行されずに処理は502に戻る。一方、510における比較によって、ローカルクロックの差異の値がタイムスタンプの差異の値よりも大きい(またはタイムスタンプの差異の値に所定の許容範囲を加えた値よりも大きい)ことが認識された場合、音声デコーダ404のSTCの周波数が共通ネットワーククロックの周波数よりも速く動いていると推定される。反対に、510における比較によって、ローカルクロックの差異の値がタイムスタンプの差異の値よりも小さい(またはタイムスタンプの差異の値から所定の許容範囲を引いた値よりも小さい)ことが認識された場合、音声デコーダ404のSTCの周波数が共通ネットワーククロックの周波数よりも遅く動いていると推定される。
ローカルクロックの差異の値がタイムスタンプの差異の値との間に予決定された関係を有しないと判定された場合、512において、クロック速度調整命令信号が、例えばプロセッサ414から音声デコーダ404に送信される。1つの実施形態として、プロセッサ414は、テレビジョン102により次の(即ち後続の)ビーコンが送信される前に、クロック速度調整命令信号の送信を行う。
クロック速度調整命令信号は、510における比較結果に基づき、ローカルクロックの差異の値がタイムスタンプの差異の値との間に予決定された関係を持つ範囲内またはその近くになるように、音声デコーダ404のSTC周波数を調整(即ちSTCの周波数を増加または減少)するよう適合される。1つの実施形態としては、クロック速度調整命令信号は、音声デコーダ404のSTC周波数を固定の調整量の分だけ調整するよう適合される。他の実施形態としては、クロック速度調整命令信号は、ローカルクロックの差異の値とタイムスタンプの差異の値とが異なっている度合いに依存して複数の固定の調整量の中の1つの調整量を選択し、音声デコーダ404のSTC周波数を調整するよう適合される。例えば、ローカルクロックの差異の値とタイムスタンプの差異の値の差が、予決定された関係の範囲外であって、かつ予決定された閾値内にある場合には、クロック速度調整命令信号は、音声デコーダ404のSTC周波数を第一の固定の調整量の分だけ調整するよう適合される。例えば、予決定された閾値は、タイムスタンプの差異の値に対して100ppmとすることができる。前述の差がその閾値内にあれば、命令はSTC周波数を10ppmだけ増加または減少させることができる。一方、ローカルクロックの差異の値とタイムスタンプの差異の値の差が予決定された閾値外であれば、クロック速度調整命令信号は、音声デコーダ404のSTC周波数を第二の固定の調整量の分だけ調整するよう適合され、その場合の第二の固定の調整量の絶対値は第一の固定の調整量の絶対値よりも大きい。例えば、前述の差が予決定された100ppmの閾値内になければ、命令はSTC周波数を20ppm増加または減少させることができる。
513において、復号化が完了したかどうかが判定される。復号化が完了していなければ、処理は502に戻る。復号化が完了していれば、処理は514にて終了する。
図6は、ローカルクロックの差異の値とタイムスタンプの差異の値の比較、及び図5に関連して既に説明したクロック調整信号の送信に関する例としての実装を描いている。図6に例示されたアルゴリズムは、デコーダにビーコンが到着する度に実行できることが理解されるであろう。図6に示されているように、処理は602(例えばローカルクロックの差異の値とタイムスタンプの差異の値とが計算される時点)から開始され、604において、プロセッサ414は、ローカルクロックの差異の値よりもタイムスタンプの差異の値の方が大きいかどうかを判定する。604において、プロセッサ414がローカルクロックの差異の値よりもタイムスタンプの差異の値の方が大きいと判定した場合には、606において、プロセッサ414は、ローカルクロックの差異の値がタイムスタンプの差異の値との間に予決定された関係を持つ範囲内またはその近くになるように、音声デコーダ404のSTC周波数を増加させるよう適合されたクロック速度調整命令信号を送信する。そして処理は608において終了する。
604において、プロセッサ414がローカルクロックの差異の値よりもタイムスタンプの差異の値の方が大きくないと判定した場合には、610において、プロセッサ414はローカルクロックの差異の値よりもタイムスタンプの差異の値の方が小さいかどうかを判定する。610において、プロセッサ414がローカルクロックの差異の値よりもタイムスタンプの差異の値の方が小さいと判定した場合には、612において、プロセッサ414は、ローカルクロックの差異の値がタイムスタンプの差異の値との間に予決定された関係を持つ範囲内またはその近くになるように、音声デコーダ404のSTC周波数を減少させるよう適合されたクロック速度調整命令信号を送信する。そして処理は608において終了する。
610において、プロセッサ414がローカルクロックの差異の値よりもタイムスタンプの差異の値の方が小さくないと判定した場合には、プロセッサ414は、ローカルクロックの差異の値とタイムスタンプの差異の値との間に予決定された関係が存在すると推定する。この場合、クロックの調整は行われない。そして処理は608において終了する。
図7は、図5に関連して説明したクロック調整処理に応じた、PLCインタフェース402、プロセッサ414、及び音声増幅器104の音声デコーダ404の間の信号の送信シーケンスの一例を描いている。図7に示されている通り、702aにおいて、PLCインタフェース402はテレビジョン102からブロードキャストされたn番目のビーコンを受信し、対応するビーコン割り込み信号(即ちビーコン割り込み(n))を生成し、音声デコーダ404及びプロセッサ414に対して生成したビーコン割り込み信号を割り込み線410を介して送信する。その代わりに、PLCインタフェース402は生成したビーコン割り込み信号をプロセッサ414のみに対して送信してもよく(例えば内部バス412を介して)、それを受けてプロセッサ414は、ビーコン割り込み信号を内部バス412を介して音声デコーダ404に転送することができる。ビーコン割り込み信号(ビーコン割り込み(n))を受信した後、音声デコーダ404は、STC値(STC(n))を保存する。704aにおいて、プロセッサ414は、PLCインタフェース402にタイムスタンプ要求信号を送信することで、受信したビーコン割り込み信号(ビーコン割り込み(n))に対して応答する。706aにおいて、PLCインタフェース402は、プロセッサ414にタイムスタンプ信号(タイムスタンプ(n))を送信することで、タイムスタンプ要求信号に対して応答する。一方、1つの実施形態としては、PLCインタフェース402は、タイムスタンプ要求信号に対する応答の形でなくても、タイムスタンプ信号をプロセッサ414に送信することができる。タイムスタンプは、n番目のビーコンに乗せて運ばれた。708aにおいて、プロセッサ414はさらに、音声デコーダ404にローカルクロック要求信号を送信することで、受信したビーコン割り込み信号(ビーコン割り込み(n))に対して応答する。710aにおいて、音声デコーダ404は、プロセッサ414に保存していたローカルクロックの値(STC(n))を送信することで、ローカルクロック要求信号に対して応答する。一方、1つの実施形態としては、音声デコーダ404は、ローカルクロック要求信号に対する応答の形でなくても、保存されたローカルクロックの値(STC(n))をプロセッサ414に送信することができる。1つの実施形態として、704a及び708aにて送信される要求信号は、PLCインタフェース402及び音声デコーダ404の両方にブロードキャストされる単一の要求命令であってもよい。
図5に関連して前述した通り、ローカルクロックの差異の値とタイムスタンプの差異の値は、一連のタイムスタンプ及びローカルクロック信号に基づいて計算される。従って、PLCインタフェース402がn番目のビーコンの後にブロードキャストされた他のビーコン(例えばn+1番目のビーコン)を受信した際には、702bにおいて、PLCインタフェース402は対応するビーコン割り込み信号(ビーコン割り込み(n+1))を生成し、音声デコーダ404及び/またはプロセッサ414に対して送信する。ビーコン割り込み信号(ビーコン割り込み(n+1))を受信した後、音声デコーダ404は、STC値(STC(n+1))を保存する。704bにおいて、プロセッサ414は、PLCインタフェース402にタイムスタンプ要求信号を送信することで、受信したビーコン割り込み信号(ビーコン割り込み(n+1))に対して応答する。706bにおいて、PLCインタフェース402は、プロセッサ414にタイムスタンプ信号(タイムスタンプ(n+1))を送信することで、タイムスタンプ要求信号に対して応答する。一方、1つの実施形態としては、PLCインタフェース402は、タイムスタンプ要求信号に対する応答の形でなくても、タイムスタンプ信号をプロセッサ414に送信することができる。タイムスタンプは、n+1番目のビーコンに乗せて運ばれた。708bにおいて、プロセッサ414はさらに、音声デコーダ404にローカルクロック要求信号を送信することで、受信したビーコン割り込み信号(ビーコン割り込み(n+1))に対して応答する。710bにおいて、音声デコーダ404は、プロセッサ414に保存していたローカルクロックの値(STC(n+1))を送信することで、ローカルクロック要求信号に対して応答する。一方、1つの実施形態としては、音声デコーダ404は、ローカルクロック要求信号に対する応答の形でなくても、保存されたローカルクロックの値(STC(n+1))をプロセッサ414に送信することができる。一般的に説明された702、704、706、708、及び710における処理は、プロセッサ414においてそれぞれ所望の数のタイムスタンプ信号及びローカルクロック信号を含む一連のタイムスタンプ及びローカルクロック信号の受信が終わるまで、ブロードキャストされる後続のビーコン(例えばn+2番目のビーコン、n+3番目のビーコンなど)の受信時に要求に応じて繰り返され得る。プロセッサ414において一連のタイムスタンプ及びローカルクロック信号が受信された後は、506及び508に関連して前述した通り、ローカルクロックの差異の値とタイムスタンプの差異の値が計算される。ローカルクロックの差異の値とタイムスタンプの差異の値は、510において比較される。クロックの調整が必要であれば、512において、プロセッサ414がクロック調整命令を音声デコーダ404に送信する。
音声デコーダ404のSTCの調整に関連してクロック調整処理についてこれまで詳しく説明してきたが、図5〜7に関連する前述の処理は、どのネットワーククライアントのデコーダ内のどのSTCの構成にも適用し得ることは理解されるであろう。さらに、図5〜7に関連する前述の処理は、ネットワークサーバのデコーダ内(例えば映像デコーダ314及び/または音声デコーダ324)の1つ以上のSTCの調整にも適用し得る。この場合、PLCインタフェース330は、電力線108上でビーコンが送信される度に、映像デコーダ314及び音声デコーダ324に向けてビーコン割り込み信号を生成、送信し、さらに割り込み線332を介してプロセッサ336にも送信する。
図5〜7に関連する前述の処理の間にプロセッサ336によって時間が計測され、処理は予決定された時間(例えば約300msec)の間繰り返され、その後プロセッサ336が、ネットワーク内のデコーダのローカルクロックの差異の値とタイムスタンプの差異の値との間に予決定された関係が存在することの推定を行う。従って、ネットワーク100内の全てのデコーダのSTC値が前述の通り調整される際、ネットワーククライアントとネットワークサーバのデコーダを含むネットワーク100内の全てのデコーダのSTC値は実質的に互いに同期される。デコーダが実質的に同期されたと推定されると、ネットワーク内の各デコーダのSTC周波数は実質的に等しくなり、様々なデコーダ(例えばデコーダ314、324、及び404)は、MPEGエンコーダ308によって符号化されたデータを、様々なデコーダ間で目立った遅延無く実質的に同期して復号化することができる。
1つの実施形態として、符号化データは、予決定された時間が経過するまで、テレビジョン102から様々なデコーダ314、324、及び404に向けて送信される。1つの実施形態として、符号化データは、デコーダが復号化を開始する前の予決定された時間の間、テレビジョン102から様々なデコーダ314、324、及び404に向けて送信される。これに応じて、符号化データは、各デコーダ314、324、及び404のローカルバッファ内に蓄積される。一例として、ネットワーク100内のデコーダが符号化データの復号化を実質的に同期して行うことを保証するように適合された復号化開始処理について、図8に関連してここで説明を行う。
図8に示されている通り、802において(例えば、前述の予決定された時間が経過したことをプロセッサ336が判定した後)、復号化開始処理は開始される。804において、プロセッサ414は、復号化開始信号を受信したかどうかを判定する。1つの実施形態として、復号化開始信号はs音声デコーダ404に対し、予決定された条件を満たした際にPLCインタフェース402から送信された符号化データを復号化させるように適合される。予決定された条件とは、例えばPLCインタフェース402におけるビーコンの受信であって、その受信によりPLCインタフェース402はビーコン割り込み信号を割り込み線410上に生成、送信する。よって、音声デコーダ404は、テレビジョン102によるビーコンの送信後に符号化データの復号化を行うこととなる。1つの実施形態として、復号化開始信号はプロセッサ336によって生成され、内部バス334を介してPLCインタフェース330に送信される。PLCインタフェース330は、続いて復号化開始信号を電力線108経由でPLCインタフェース402に送信し、そこからさらに復号化開始信号は内部バス412を介してプロセッサ414へ転送される。復号化開始信号を受信すると、プロセッサ414は内部バス412を介して復号化開始信号を音声デコーダ404へ送信し、処理は806へ継続される。806において、PLCインタフェース402が電力線108上に送信されたビーコンを受信すると、PLCインタフェースはビーコン割り込み信号を割り込み線410へ送信する。808において、プロセッサ414から復号化開始信号を既に受信している音声デコーダ404は、PLCインタフェース402から送信されたビーコン割り込み信号に応じて、符号化データを復号化する。処理は810にて終了する。
音声デコーダ404における復号化の開始に関連する処理についてこれまで詳しく説明してきたが、図8に関連する前述の処理は、どのネットワーククライアントのデコーダにおける復号化の開始にも適用し得ることは理解されるであろう。さらに、図8に関連する前述の処理は、ネットワークサーバの1つ以上のデコーダ(例えば映像デコーダ314及び/または音声デコーダ324)の復号化の開始にも適用し得る。この場合、さらにプロセッサ336は、前述の復号化開始信号を直接映像デコーダ314及び音声デコーダ324に向けて内部バスを介して送信する。また、前述の通り、PLCインタフェース330は、ビーコンが送信される度に、映像デコーダ314及び音声デコーダ324に向けてビーコン割り込み信号を生成して割り込み線332を介して送信する。
よって、前述のように復号化開始信号がネットワーク100内の全てのデコーダに送信されたとき、ネットワーク100内のデコーダは電力線108上をブロードキャストされるビーコンに基づいて実質的に同期的に(即ち遅延が生じることなく)符号化データの復号化を開始することができる。さらに、ネットワーク100内の各デコーダが実質的に同期するため、復号化されたデータは実質的に同時に利用者に(例えば、ディスプレイ118並びに/またはスピーカ120、122、124、126、128、及び/若しくは130を介して)提供される。ネットワークのデコーダ内のSTCの処理の実質的な同期を維持することを保証するために、デコーダが符号化データを復号化している間、前述のクロック調整処理は実行される。クロック調整処理は、デコーダが符号化データを復号化する機能に対して、不利に影響することはない。
前述の通り、ネットワーク100内の各デコーダのSTC周波数は、前述のクロック調整処理が実施された後は実質的に等しいと推定される。1つの実施形態として、ローカルバッファ内の同じ値をとる第一のSCR/PCRは、ネットワーク100内の各デコーダのSTCに設定される。他の実施形態としては、ネットワーク100内の各デコーダのSTCは、予設定された特定の値に設定してもよい。ネットワーク内の各デコーダのSTCを設定するために、プロセッサ336は、STC予設定(preset)命令信号を生成し、ネットワーク100のデコーダに向けて(例えば、内部バス334を介して映像デコーダ314及び音声デコーダ324に向けて、及びPLCインタフェース330とPLCインタフェース402を介して音声デコーダ404に向けて)STC予設定命令信号を送信してもよい。1つの実施形態として、STC予設定命令信号は、予決定された条件が満たされた場合に、デコーダのSTCを予設定された特定の値に設定するよう適合される。予決定された条件とは、例えばPLCインタフェース330からのビーコンの送信であって、それによりPLCインタフェース330は対応するビーコン割り込み信号を生成し、内部バス332上で映像デコーダ314及び音声デコーダ324に向けて送信する。よって、デコーダのSTCは、テレビジョン102からのビーコンの送信後に予設定された特定の値に設定される。予設定値が設定されると間もなく、各STCは計数(counting up)を開始する。1つの実施形態として、各STCはSTC予設定命令を受信したときに設定され、復号化開始信号を受信したときに計数を開始し、そして次のビーコン割り込みが発生する。
従って、STC予設定命令信号を、プロセッサ336から内部バス332を介して映像デコーダ314及び音声デコーダ324に向けて、及びネットワーククライアントのデコーダに向けて直接送信してもよい。例えば、プロセッサは内部バス334を介してPLCインタフェース330にSTC予設定命令信号を送信してもよい。PLCインタフェース330は、その後電力線108経由でネットワーククライアント内のデコーダにSTC予設定命令信号を送信し得る。PLCインタフェース402は、テレビジョン102から出力されるSTC予設定命令信号を受信し、続いて内部バス412を介してSTC予設定命令信号をプロセッサ414に向けて出力する。プロセッサ414は、その後、内部バス412を介して音声デコーダ404にSTC予設定命令信号を送信する。PLCインタフェース402においてビーコンが受信された場合、ビーコン割り込み信号が音声デコーダ404へ割り込み線410を介して送信される。同様に、ビーコンがPLCインタフェース330から送信された場合、PLCインタフェースはビーコン割り込み信号を割り込み線332を介して映像デコーダ314及び音声デコーダ324へ送信する。
STC予設定命令信号は前述のようにネットワーク100内の全てのデコーダに送信され、ネットワーク100内のデコーダのSTCのSTC値は、電力線108上をブロードキャストされるビーコンに基づき、互いに実質的に同期して特定の予設定値に設定することができる。さらに、ネットワーク100内のデコーダのSTC周波数は実質的に等しく、ネットワーク内の各デコーダのSTC値は実質的に同期して増加される。
HDD312内に保存されたデータを再生する際、データの送信には2つのやり方がある。1つは、PCRまたはSCRをストリームに組み込む等時間隔での送信である。各データパケットは、PCRまたはSCRがネットワークサーバ(例えばテレビジョン102)のシステムクロックに同期するように投入され、元の時間間隔は再構成される。電力線108に接続された全てのデコーダは、各デコーダのローカルバッファがオーバフローまたはアンダーフローを起こさないように、ネットワーククロックに同期される。もう1つのやり方は、非同期送信である。非同期送信は、MPEGストリームだけではなく、例えば線形PCM音声ストリームなどといった、タイムスタンプを含まない固定速度のストリームにも用いられる。HDD312内に保存されたデータは、各デコーダのローカルバッファがオーバフローまたはアンダーフローを起こさないように、各デコーダ(例えば、デコーダ312、324、及び404)へ送信される。後述の仕組みにより、各ローカルバッファの占有状況が適切に維持される。
図9は、ネットワークサーバから再生データを受信するネットワーククライアントのデコーダ内のバッファ占有状況を予決定された範囲内に維持するための方法の一例の実施形態を示している。図9に示している通り、902において、例えば音声デコーダ404がPLCインタフェース402から受信した再生データの復号化を開始するところから処理は開始される。音声デコーダ404が再生データの復号化を行っている際、プロセッサ414はローカルバッファのバッファ占有状況(即ち、ローカルバッファ内に保存された再生データ量)を監視する。904において、プロセッサ414は、ローカルバッファのバッファ占有状況の監視として、現在のバッファの占有率(occupancy)を予決定された範囲の上限値(例えばバッファの領域全体の80%)と比較する。現在のバッファ占有率が上限値を超えた場合、処理は906へと続き、プロセッサ414はデータストリーム制御命令信号(即ち停止命令)をPLCインタフェース402へ内部バス412を介して生成、送信する。PLCインタフェース402はその後、停止命令をテレビジョン102へ電力線108を介して送信する。
1つの実施形態として、音声増幅器104から送信される停止命令は、テレビジョン102から音声増幅器104へ再生データが送信されることを妨げ、他のネットワーククライアント(例えばステレオ106)がテレビジョン102から再生データを受信するように適合される。換言すると、停止命令は、ネットワークサーバ(例えばテレビジョン102)の現在のデータ配信特性を変えるよう適合される。それに応じて、PLCインタフェース330は送信された停止命令を受信し、プロセッサ336へ転送する。プロセッサ336は、停止命令を受信した後、再生データがPLCインタフェース402から音声増幅器104及び他のネットワーククライアントへ送信されるのを妨げるよう適合された制御信号を出力する。1つの実施形態としては、プロセッサ336はそうした制御信号をPLCインタフェース330へ内部バス334を介して出力し、そこからネットワーク100内の全てのデコーダへ制御信号を続けてブロードキャストしてもよい。それに応じて、テレビジョン102は、906において音声増幅器104から停止命令が送信された後、音声増幅器104(及び他のネットワーククライアント)への再生データの送信を停止する。
次に、908において、プロセッサ414は再生を停止するかどうかを判定する。利用者が遠隔制御器116から停止命令を送信した場合、命令は電力線108上でプロセッサ414に送信される。その場合、処理は916に移り、配信は停止する。プロセッサ414が停止命令を遠隔制御器116から受信しない場合、プロセッサ414は910において、予決定された時間、例えば10msecだけ待機し、その後904にてローカルバッファのバッファ占有率の監視を再開する。もし904において現在のバッファの占有率が上限値よりも大きくないと判定されれば、処理は912に移り、プロセッサ414はローカルバッファのバッファ占有率の監視として、現在のバッファ占有率と予決定された範囲(例えばバッファの領域全体の20%)の下限値との比較を行う。
912において、現在のバッファ占有率が下限値を下回っていると判定された場合、処理は914へと続き、プロセッサ414はデータストリーム制御命令信号(即ち再開命令)をPLCインタフェース402へ内部バス412を介して生成、送信する。PLCインタフェース402はその後、再開命令をテレビジョン102へ電力線108を介して送信する。
1つの実施形態として、音声増幅器104から送信される再開命令は、テレビジョン102から音声増幅器104へ再生データを送信可能とし、他のネットワーククライアント(例えばステレオ106)がテレビジョン102から再生データを受信しないように適合される。換言すると、再開命令は、ネットワークサーバ(例えばテレビジョン102)の現在のデータ配信特性を変えるよう適合される。それに応じて、PLCインタフェース330は送信された再開命令を受信し、プロセッサ336へ転送する。前述の処理と同様に、プロセッサ336は、再開命令を受信した後、再生データがPLCインタフェース402から音声増幅器104(及び他のネットワーククライアント)へ送信されるよう適合された制御信号を出力する。その後処理は908へ進み、プロセッサ414は配信を終了するかどうかを判定する。プロセッサ414が配信を終了する場合には、処理は916にて終了する。プロセッサ414が配信を終了しない場合には、910において、処理は所定の時間だけ待機した後に前述の904へ戻る。
前述の通り、データストリーム制御命令信号は、各デコーダのローカルバッファの占有率を制御するよう適合される。停止命令を送信することにより、再生データのテレビジョン102からの送信は妨げられる。従って、音声デコーダ404が新しい再生データをローカルバッファ内に受信する際、そのローカルバッファのバッファ占有率は、最終的には上限値を下回るレベルにまで低減される。さらに、再開命令を送信することにより、テレビジョン102による音声増幅器104への再生データの配信再開が可能となる。従って、テレビジョン102が再生データを音声デコーダ404へ送信する際、そのローカルバッファのバッファ占有率は、最終的には下限値を上回るレベルにまで増大される。適切なデータストリーム制御命令信号を繰り返し送信することによって、バッファ占有率を上限値と下限値の間に維持することができ、バッファ占有率がオーバフローまたはアンダーフローしないことが保証される。ローカルバッファ内の符号化データは、ネットワーククロックに同期したSTCに基づいて独立して復号化される。
音声増幅器104の音声デコーダ404内のバッファ占有率の維持に関する処理についてこれまで詳しく説明してきたが、図9に関連する前述の処理は、どのネットワーククライアントのどのデコーダ内のバッファ占有率の維持にも適用し得ることは理解されるであろう。さらに、図9に関連する前述の処理は、ネットワークサーバ内の1つ以上のデコーダ(例えば映像デコーダ314及び/または音声デコーダ324)のバッファ占有率の維持に適用してもよい。その場合、プロセッサ336は、HDD312から映像デコーダ314及び/または音声デコーダ324へのデータの送信を単純に停止/可能化する。プロセッサ336は、2つ以上のデコーダからデータストリーム制御命令を受信してもよい。データは、いくつかのデコーダのバッファ占有率が範囲外にならない状況で、停止または再送信してもよい。全てのデコーダが同期しているため、これが問題になることはない。他のデコーダがアンダーフロー(オーバフロー)する時に、他のデコーダがオーバフロー(アンダーフロー)することはない。
リアルタイムにブロードキャストされるアナログまたはデジタルデータが復号化される際、クロック生成器350によって生成されるシステムクロックは、入ってくるストリームに同期される。ネットワーククロックは、システムクロックに同期される。全てのデコーダはネットワーククロックに固定されているため、同期の問題は発生しない。この仕組みは、サーバが2つ以上の独立したストリームを再配信する場合には適切でない。ネットワーククロックは1つのストリームにだけ同期し得る。そのため、他のストリームが同期しなくなってしまう。ネットワーククロックが送信ストリームに同期しない場合のデコーダの同期方法について、図10は描いている。この方法において、ネットワークサーバからブロードキャストデータを受信するネットワーククライアントのデコーダ内のバッファ占有状況を、予決定された範囲内に維持することができる。図10に示している通り、1002において、例えば音声デコーダ404がPLCインタフェース402から受信したブロードキャストデータの復号化を開始するところから処理は始まる。音声デコーダ404がブロードキャストデータを復号化する際、プロセッサ414はローカルバッファのバッファ占有率(即ち、ローカルバッファ内に保存されたブロードキャストデータ量)を監視する。
1004において、プロセッサ414は、ローカルバッファのバッファ占有率の監視として、現在のバッファ占有率と予決定された範囲の上限値(例えばバッファの領域全体の80%)との比較を行う。現在のバッファ占有率が上限値を超えた場合、処理は1006へと続き、プロセッサ414はクロック速度制御命令信号(即ち速度上昇命令)をPLCインタフェース402へ内部バス412を介して生成、送信する。PLCインタフェース402はその後、速度上昇命令をテレビジョン102へ電力線108を介して送信する。
1つの実施形態として、1006において音声増幅器104から送信される速度上昇命令は、音声デコーダ404及び他のネットワーククライアント(例えばステレオ106)のデコーダ内のSTC周波数を増加させるために用いるクロック調整比Rをプロセッサ336に生成させ、そしてテレビジョン102からブロードキャストデータを受信するように適合される。それに応じて、PLCインタフェース330は送信された速度上昇命令を受信し、プロセッサ336へ転送する。
プロセッサ336は、1006にて生成された速度上昇命令を受信した後、音声増幅器104の音声デコーダ404及び他のネットワーククライアント内のSTC周波数を増加させるよう適合されたクロック調整比Rを含むクロック比調整信号を生成する。この場合、クロック調整比Rは1より大きい(例えば、STC周波数を100ppm増加させることを示す1.0001)。クロック比調整信号はその後、プロセッサ336からPLCインタフェース330へ内部バス334を介して送信される。そして、PLCインタフェース330は、電力線108上にクロック速度比信号をブロードキャストし、それをPLCインタフェース402が受信して、プロセッサ414に送信する。
プロセッサ414はその後、音声増幅器104に関連してクロック調整処理が実施される際に、クロック比調整信号からクロック調整比Rを取得する。そして、音声デコーダ404のSTCについて、取得したクロック調整比を用いて図5に示したようにクロック調整処理が実施される。例えば、506において、取得したクロック調整比Rを用いてプロセッサ414はタイムスタンプの差異の値を次式に従って計算する:diff_ts=R*(タイムスタンプ(n+1)−タイムスタンプ(n))*fstc/fts。510における比較によってローカルクロックの差異の値とタイムスタンプの差異の値との間に予決定された関係が存在することが示されない場合、ローカルクロックの差異の値がタイムスタンプの差異の値よりも小さいことということになる。従って、512において送信されるクロック速度調整命令信号は、ローカルクロックの差異の値がタイムスタンプの差異の値との間に予決定された関係を持つ範囲内またはその近くになるように、音声デコーダ404のSTC周波数を増加させる。
次に1008において、プロセッサ414は、配信を停止するかどうかを判定する。利用者が遠隔制御器116から停止命令を送信した場合、命令は電力線108上でプロセッサ414に送信される。その場合、処理は1010に移り、配信は停止する。プロセッサ414が停止命令を遠隔制御器116から受信しない場合、プロセッサ414は1012において、予決定された時間、例えば10msecだけ待機し、その後1004にてローカルバッファのバッファ占有率の監視を再開する。もし1004において現在のバッファの占有率が上限値よりも大きくないと判定されれば、処理は1014に移り、プロセッサ414はローカルバッファのバッファ占有率の監視として、現在のバッファ占有率と予決定された範囲(例えばバッファの領域全体の20%)の下限値との比較を行う。現在のバッファ占有率が下限値を下回っている場合、処理は1016へと続き、プロセッサ414はデータストリーム制御命令信号(即ち速度下降命令)をPLCインタフェース402へ内部バス412を介して生成、送信する。PLCインタフェース402はその後、速度下降命令をテレビジョン102へ電力線108を介して送信する。
1つの実施形態として、1016において音声増幅器104から送信される速度下降命令は、音声デコーダ404及び他のネットワーククライアント(例えばステレオ106)のデコーダ内のSTC周波数を減少させるために用いるクロック調整比Rをプロセッサ336に生成させ、そしてテレビジョン102からブロードキャストデータを受信するように適合される。それに応じて、PLCインタフェース330は送信された速度下降命令を受信し、プロセッサ336へ転送する。
プロセッサ336は、1016にて生成された速度下降命令を受信した後、音声増幅器104の音声デコーダ404及び他のネットワーククライアント内のSTC周波数を減少させるよう適合されたクロック調整比Rを含むクロック速度調整信号を生成する。この場合、クロック調整比Rは1より小さい(例えば、STC周波数を100ppm減少させることを示す0.9999)。クロック比調整信号はその後、プロセッサ336からPLCインタフェース330へ内部バス334を介して送信される。そして、PLCインタフェース330は、電力線108上にクロック比調整信号をブロードキャストし、それをPLCインタフェース402が受信して、プロセッサ414に送信する。
プロセッサ414はその後、音声増幅器104に関連してクロック調整処理が実施される際に、クロック比調整信号からクロック調整比Rを取得する。そして、音声デコーダ404のSTCについて、取得したクロック調整比を用いて図5に示したようにクロック調整処理が実施される。例えば、506において、取得したクロック調整比Rを用いてプロセッサ414はタイムスタンプの差異の値を次式に従って計算する:diff_ts=R*(タイムスタンプ(n+1)−タイムスタンプ(n))*fstc/fts。510における比較によってローカルクロックの差異の値とタイムスタンプの差異の値との間に予決定された関係が存在することが示されない場合、ローカルクロックの差異の値がタイムスタンプの差異の値よりも大きいことということになる。従って、512において送信されるクロック速度調整命令信号は、ローカルクロックの差異の値がタイムスタンプの差異の値との間に予決定された関係を持つ範囲内またはその近くになるように、音声デコーダ404のSTC周波数を減少させる。1014において、現在のバッファ占有率が下限値を下回ると判定された場合(または速度下降命令が1016に従って送信された後)、処理は1008に継続する。
前述の通り、クロック速度制御命令信号は、各デコーダのローカルバッファ占有率を制御するよう適合される。音声デコーダ404のSTC周波数を増加させるよう適合された速度上昇命令を送信することにより、音声デコーダ404が自身のローカルバッファ内に保存したブロードキャストデータからデータの抽出と復号化を行う速度を増加させることができる。その結果、ローカルバッファのバッファ占有率は最終的には上限値を下回るレベルにまで低減される。さらに、音声デコーダ404のSTC周波数を減少させるよう適合された速度下降命令を送信することにより、音声デコーダ404が自身のローカルバッファ内に保存したブロードキャストデータからデータの抽出と復号化を行う速度を減少させることができる。その結果、ローカルバッファのバッファ占有率は、最終的には下限値を上回るレベルにまで増大される。適切なクロック速度制御命令信号を繰り返し送信することによって、デコーダ内のSTC周波数を増加または減少させてバッファ占有率を上限値と下限値の間に維持することができ、バッファ占有率がオーバフローまたはアンダーフローしないことが保証される。
音声増幅器104の音声デコーダ404内のバッファ占有率の維持についてこれまで詳しく説明してきたが、図10に関連する前述の処理は、どのネットワーククライアントのどのデコーダ内のバッファ占有率の維持にも適用し得ることは理解されるであろう。さらに、図10に関連する前述の処理は、ネットワークサーバの1以上のデコーダ(例えば映像デコーダ314及び/または音声デコーダ324)内のバッファ占有率の維持にも適用し得る。この場合、プロセッサ336は、映像デコーダ314及び音声デコーダ324についてクロック調整処理を実施する際に、単純にクロック調整比Rをタイムスタンプの差異の値の計算に組み込む。プロセッサ336は、2つ以上のデコーダからクロック速度制御命令信号を受信してもよい。いくつかのデコーダのバッファ占有率が範囲外にならない状況で、クロック速度を調整してもよい。全てのデコーダが同期しているため、これが問題になることはない。他のデコーダがアンダーフロー(オーバフロー)する時に、他のデコーダがオーバフロー(アンダーフロー)することはない。
1つの実施形態として、ネットワークサーバ(即ちテレビジョン102)は、クロック調整比に基づいて自身のシステムクロック(即ちネットワーククロック)を調整してもよい。この場合、速度上昇/下降命令がクライアントに送信されることはない。クライアントのクロックは、クロック調整比Rによって調整されたネットワーククロックに同期される。
ここで開示した発明についてこれまで特定の実施形態、実施例、及びそれらの応用の形で説明を行ってきた。いわゆる当業者であれば、それらに数多くの修正や変形を加えることが可能であるが、それは特許請求の範囲に記載された本発明の技術的範囲から外れるものではない。
本明細書で開示した多くの実施形態を実装することのできるネットワークの例を示している。 例としてのネットワークアクセスのタイミング図である。 図1に示したテレビジョンに関するブロック図である。 図1に示した音声増幅器に関するブロック図である。 例としてのクロック調整処理の1つの実施形態を示している。 ローカルクロックの差異の値とタイムスタンプの差異の値との比較、及び前述の図5で示したクロック調整信号の送信を例として示している。 図5で示したクロック調整処理の例に応じた、ネットワークコンポーネント間の信号の送信シーケンスを示している。 符号化データの復号化を開始する処理の例に関する1つの実施形態を示している。 ネットワークサーバからの応答データストリームを受信する際のネットワーククライアント内のバッファ占有レベルを維持する方法に関する1つの実施形態を示している。 ネットワークサーバからのブロードキャストデータストリームをリアルタイムに受信する際のネットワーククライアント内のバッファ占有レベルを維持する方法に関する1つの実施形態を示している。

Claims (18)

  1. ネットワーク内のデコーダをサーバに同期させる方法であって:
    一連のタイムスタンプ信号を受信するステップであって、前記一連のタイムスタンプ信号内の各タイムスタンプ信号はネットワークサーバから送信されタイムスタンプを付されたビーコンに対応する値を有することと、前記ネットワークサーバはネットワーク上に符号化データを配信するように適合されていることを特徴とするステップと;
    一連のローカルクロック信号を受信するステップであって、前記一連のローカルクロック信号内の各ローカルクロック信号はネットワーククライアントのデコーダに関連付けられたローカルシステム時間クロックによって生成された値を有し、デコーダは前記符号化データを復号化するように適合されるステップと;
    前記一連のタイムスタンプ信号内のタイムスタンプ信号の値に基づいてタイムスタンプの差異の値を計算するステップと;
    前記一連のローカルクロック信号内のローカルクロック信号の値に基づいてローカルクロックの差異の値を計算するステップと;
    前記タイムスタンプの差異の値に対して前記ローカルクロックの差異の値が予決定された関係を有するかどうかを判定するステップと;
    前記タイムスタンプの差異の値に対して前記予決定された関係を前記ローカルクロックの差異の値が有しないと判定された場合に前記デコーダにクロック速度調整命令信号を送信するステップであって、前記クロック速度調整命令信号は前記ローカルシステム時間クロックを後続のローカルクロックの差異の値が前記タイムスタンプの差異の値に対して前記予決定された関係を有するように調整するよう適合されていることを特徴とするステップと;
    を備える方法。
  2. さらに:
    前記ネットワーククライアントに関連付けられたネットワークインタフェースからビーコン割り込み信号を受信するステップであって、前記ビーコン割り込み信号は前記ネットワークサーバから送信されたビーコンの受信後にネットワークインタフェースによって生成されることを特徴とするステップを備え、
    前記一連のタイムスタンプ信号内の各タイムスタンプ信号はネットワークインタフェースから受信されビーコン割り込み信号に対応する値を有することを特徴とする、
    請求項1に記載の方法。
  3. さらに:
    前記ネットワーククライアントに関連付けられたネットワークインタフェースからビーコン割り込み信号を受信するステップであって、前記ビーコン割り込み信号は前記ネットワークサーバから送信されたビーコンの受信後にネットワークインタフェースによって生成されることを特徴とするステップを備え、
    前記一連のローカルクロック信号内の各ローカルクロック信号は前記ローカルシステム時間クロックから受信されビーコン割り込み信号に対応する値を有することを特徴とする、
    請求項1に記載の方法。
  4. さらに:
    前記ネットワークサーバから出力される予決定された数のビーコンを受信する期間内に前記一連のタイムスタンプ信号及び前記一連のローカルクロック信号を受信するステップと;
    前記期間に続いてビーコンが出力される前に前記クロック速度調整命令信号を前記デコーダへ送信するステップと;
    を備える、請求項1に記載の方法。
  5. 前記クロック速度調整命令信号は、前記ローカルクロックの差異の値が前記タイムスタンプの差異の値よりも小さい場合に前記ローカルシステム時間クロックの前記周波数を増加させるように適合されることを特徴とする、請求項1に記載の方法。
  6. 前記クロック速度調整命令信号は、前記ローカルクロックの差異の値が前記タイムスタンプの差異の値よりも大きい場合に前記ローカルシステム時間クロックの前記周波数を減少させるように適合されることを特徴とする、請求項1に記載の方法。
  7. さらに:
    システム時間クロック予設定命令信号を受信するステップと;
    前記システム時間クロック予設定命令信号をローカルシステム時間クロックに送信するステップであって、前記システム時間クロック予設定命令信号は前記ネットワークサーバからのビーコンの送信後に前記ローカルシステム時間クロックを所定の予設定値に設定するよう適合されていることを特徴とするステップと;
    を備える、請求項1に記載の方法。
  8. さらに:
    前記クロック速度調整命令信号の送信後に復号化開始信号を受信するステップと;
    前記復号化開始信号を前記デコーダに送信するステップであって、前記復号化開始信号は前記ネットワークサーバからのビーコンの送信後に前記デコーダに符号化データを復号化させるよう適合されていることを特徴とするステップと;
    を備える、請求項1に記載の方法。
  9. さらに:
    前記デコーダがローカルバッファ内で符号化データを復号化する際に、前記デコーダの前記ローカルバッファのバッファ占有率がバッファ領域全体に対して予決定された範囲内にあるかどうかを判定するステップと;
    前記バッファ占有率が前記予決定された範囲外にあると判定された場合にデータストリーム制御命令信号を前記ネットワークサーバに送信するステップであって、前記データストリーム制御命令信号は前記ネットワークサーバの当該時点のデータ配信特性を変えるよう適合されていることを特徴とするステップと;
    を備える、請求項1に記載の方法。
  10. 前記データストリーム制御命令信号は、前記バッファ占有率が前記予決定された範囲の上限値を超えた場合に、前記ネットワークサーバにデータ配信を停止させるよう適合されることを特徴とする、請求項9に記載の方法。
  11. 前記データストリーム制御命令信号は、前記バッファ占有率が前記予決定された範囲の下限値を下回った場合に、前記ネットワークサーバにデータ配信を再開させるよう適合されることを特徴とする、請求項9に記載の方法。
  12. さらに:
    前記デコーダがローカルバッファ内で符号化データを復号化する際に、前記デコーダの前記ローカルバッファのバッファ占有率がバッファ領域全体に対して予決定された範囲内にあるかどうかを判定するステップと;
    前記バッファ占有率が前記予決定された範囲外にあると判定された場合にクロック速度制御命令信号を前記ネットワークサーバに送信するステップと;
    前記クロック速度制御命令信号に対応するクロック比調整信号を受信するステップであって、前記クロック比調整信号はクロック調整比を含むことを特徴とするステップと;
    前記クロック調整比に基づいて前記クロック速度調整命令信号を計算するステップと;
    前記デコーダに前記計算されたクロック速度調整命令信号を送信して後続のローカルクロックの差異の値が前記バッファ領域全体に対して前記予決定された範囲内となるように前記ローカルシステム時間クロックを調整するステップと;
    を備える、請求項1に記載の方法。
  13. 前記クロック速度調整命令信号は、前記バッファ占有率が前記予決定された範囲の上限値を超えた場合に前記ローカルシステム時間クロックの前記周波数を増加させるよう適合されることを特徴とする、請求項12に記載の方法。
  14. 前記クロック速度調整命令信号は、前記バッファ占有率が前記予決定された範囲の下限値を下回った場合に前記ローカルシステム時間クロックの前記周波数を減少させるよう適合されることを特徴とする、請求項12に記載の方法。
  15. ネットワーク装置であって:
    ネットワーク上に送信される符号化データを受信するよう適合されるネットワークインタフェースと;
    前記ネットワークインタフェースに接続され前記受信した符号化データを復号化するよう適合されるデコーダと;
    前記ネットワークインタフェース及び前記デコーダに接続されるプロセッサと、前記プロセッサは:
    前記ネットワークインタフェースを介して一連のタイムスタンプ信号を受信し、前記一連のタイムスタンプ信号内の各タイムスタンプ信号はネットワークサーバから送信されタイムスタンプを付されたビーコンに対応する値を有し;
    一連のローカルクロック信号を受信し、前記一連のローカルクロック信号内の各ローカルクロック信号は前記デコーダに関連付けられたローカルシステム時間クロックによって生成された値を有し;
    前記一連のタイムスタンプ信号内のタイムスタンプ信号の値に基づいてタイムスタンプの差異の値を計算し;
    前記一連のローカルクロック信号内のローカルクロック信号の値に基づいてローカルクロックの差異の値を計算し;
    前記タイムスタンプの差異の値に対して前記ローカルクロックの差異の値が予決定された関係を有するかどうかを判定し;
    前記タイムスタンプの差異の値に対して前記予決定された関係を前記ローカルクロックの差異の値が有しないと判定された場合に前記デコーダにクロック速度調整命令信号を送信し、前記クロック速度調整命令信号は前記ローカルシステム時間クロックを後続のローカルクロックの差異の値が前記タイムスタンプの差異の値に対して前記予決定された関係を有するように調整する;
    ように適合されることと;
    を備えるネットワーク装置。
  16. 前記クロック速度調整命令信号は、前記ローカルクロックの差異の値が前記タイムスタンプの差異の値を下回った場合に前記ローカルシステム時間クロックの前記周波数を増加させ、前記ローカルクロックの差異の値が前記タイムスタンプの差異の値を上回った場合に前記ローカルシステム時間クロックの前記周波数を減少させるよう適合されることを特徴とする、請求項15に記載のネットワーク装置。
  17. 前記デコーダは符号化データを保存するよう適合されるローカルバッファを含むことと;
    前記デコーダは前記ローカルバッファ内に保存された前記符号化データを復号化するよう適合されることと;
    前記プロセッサはさらに:
    前記ローカルバッファのバッファ占有率がバッファ領域全体に対して予決定された範囲内にあるかどうかを判定し;
    前記ネットワークサーバの当該時点のデータ配信特性を変えるよう適合されるデータストリーム制御命令信号を、前記バッファ占有率が前記予決定された範囲外にあると判定された場合に前記ネットワークサーバに送信する;
    ように適合される回路を含むことと;
    を特徴とする、請求項15に記載のネットワーク装置。
  18. 前記デコーダは符号化データを保存するよう適合されるローカルバッファを含むことと;
    前記デコーダは前記ローカルバッファ内に保存された前記符号化データを復号化するよう適合されることと;
    前記プロセッサはさらに:
    前記ローカルバッファのバッファ占有率がバッファ領域全体に対して予決定された範囲内にあるかどうかを判定し;
    前記バッファ占有率が前記予決定された範囲外にあると判定された場合に前記ネットワークサーバにクロック速度制御命令信号を送信し;
    前記クロック速度制御命令信号に対応するクロック速度調整信号を受信し、前記クロック速度調整信号はクロック調整比を含み;
    前記クロック速度調整命令信号を前記クロック調整比に基づいて計算し;
    前記デコーダに前記計算されたクロック速度調整命令信号を送信して後続のローカルクロックの差異の値が前記バッファ領域全体に対して前記予決定された範囲内となるように前記ローカルシステム時間クロックを調整する;
    ように適合される回路を含むことと;
    を特徴とする、請求項15に記載のネットワーク装置。
JP2008506647A 2005-04-13 2006-04-11 ネットワーク機器用の同期的音声/映像復号化方法及び装置 Expired - Fee Related JP5068744B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US67122305P 2005-04-13 2005-04-13
US60/671,223 2005-04-13
US11/386,526 2006-03-20
US11/386,526 US8238376B2 (en) 2005-04-13 2006-03-20 Synchronized audio/video decoding for network devices
PCT/US2006/013706 WO2006113283A2 (en) 2005-04-13 2006-04-11 Synchronized audio/video decoding for network devices

Publications (2)

Publication Number Publication Date
JP2008537409A true JP2008537409A (ja) 2008-09-11
JP5068744B2 JP5068744B2 (ja) 2012-11-07

Family

ID=37108405

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008506647A Expired - Fee Related JP5068744B2 (ja) 2005-04-13 2006-04-11 ネットワーク機器用の同期的音声/映像復号化方法及び装置

Country Status (7)

Country Link
US (1) US8238376B2 (ja)
EP (1) EP1869884A4 (ja)
JP (1) JP5068744B2 (ja)
KR (1) KR101228177B1 (ja)
CN (1) CN101156447B (ja)
CA (1) CA2603978A1 (ja)
WO (1) WO2006113283A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010147941A (ja) * 2008-12-19 2010-07-01 Panasonic Corp 通信方法、通信装置、および通信システム

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4555072B2 (ja) * 2002-05-06 2010-09-29 シンクロネイション インコーポレイテッド ローカライズされたオーディオ・ネットワークおよび関連するディジタル・アクセサリ
EP1465187A1 (en) * 2003-04-02 2004-10-06 Deutsche Thomson-Brandt Gmbh Method for controlling an optical pick-up for reading data streams for simultaneous reproduction
US8090857B2 (en) 2003-11-24 2012-01-03 Qualcomm Atheros, Inc. Medium access control layer that encapsulates data from a plurality of received data units into a plurality of independently transmittable blocks
KR20120056900A (ko) * 2004-03-15 2012-06-04 캐보트 코포레이션 개질 탄소 제품 및 이의 응용
KR100669034B1 (ko) * 2005-05-20 2007-01-15 주식회사 엔터기술 디지털 오디오 재생 장치 및 이를 이용한 재생 방법
US8553706B2 (en) * 2005-07-27 2013-10-08 Coppergate Communications Ltd. Flexible scheduling of resources in a noisy environment
US8175190B2 (en) 2005-07-27 2012-05-08 Qualcomm Atheros, Inc. Managing spectra of modulated signals in a communication network
US8737420B2 (en) * 2005-07-27 2014-05-27 Sigma Designs Israel S.D.I. Ltd. Bandwidth management in a powerline network
US20070025266A1 (en) * 2005-07-27 2007-02-01 Neal Riedel Communicating schedule and network information in a powerline network
US8014806B2 (en) * 2006-09-29 2011-09-06 Motorola Mobility, Inc. Dynamic creation of a communication group that includes contacts identified in one or more contact levels
US8875217B2 (en) * 2006-11-06 2014-10-28 Panasonic Corporation Receiver
US8214453B2 (en) * 2007-03-14 2012-07-03 Steven Charles Estes Concept and associated device enabling multi-camera video and audio recording for synchronization with long term ambulatory electroencephalography (EEG) in the home, office, or hospital environment
US8301790B2 (en) * 2007-05-30 2012-10-30 Randy Morrison Synchronization of audio and video signals from remote sources over the internet
US8788589B2 (en) * 2007-10-12 2014-07-22 Watchitoo, Inc. System and method for coordinating simultaneous edits of shared digital data
US20100138746A1 (en) * 2007-10-12 2010-06-03 Rony Zarom System and method for synchronized video sharing
US7680154B2 (en) * 2007-12-31 2010-03-16 Intel Corporation Methods and apparatus for synchronizing networked audio devices
EP2270999A4 (en) * 2008-04-25 2015-01-07 Panasonic Corp COMMUNICATION TERMINAL DEVICE AND COMMUNICATION METHOD
TWI358219B (en) * 2008-05-21 2012-02-11 Ra Link Technology Corp Method for scheduling wireless network packet and
US9559867B2 (en) 2008-05-30 2017-01-31 Google Technology Holdings LLC Contact group dynamics in networked communication devices
CN101674174B (zh) * 2008-09-12 2013-06-05 华为技术有限公司 一种提高时钟稳定度的方法及设备
KR101535827B1 (ko) * 2008-12-05 2015-07-27 삼성전자주식회사 무선 통신 네트워크에서 오디오 및 비디오 동기화 장치 및 방법
US9325789B2 (en) * 2009-02-17 2016-04-26 International Business Machines Corporation Distributed server election with imperfect clock synchronization
WO2010123140A1 (ja) * 2009-04-24 2010-10-28 日本電気株式会社 パケット通信システム、パケット通信装置、パケット通信方法、パケット通信プログラムを記録したコンピュータ読み取り可能な記録媒体
CN101656807B (zh) * 2009-09-08 2012-07-04 中兴通讯股份有限公司 一种网络电话发送端的语音控制方法及网络电话发送终端
JP5528939B2 (ja) * 2010-07-29 2014-06-25 ルネサスエレクトロニクス株式会社 マイクロコンピュータ
TW201328205A (zh) * 2011-12-23 2013-07-01 Hon Hai Prec Ind Co Ltd 音頻設備轉接器
CN102740131B (zh) * 2012-07-09 2015-12-02 深圳市香江文化传播有限公司 基于实时传输协议的网络电视直播方法及系统
US9237116B2 (en) * 2013-09-12 2016-01-12 Cisco Technology, Inc. Network system time domain re-stamping
CN103905880A (zh) * 2014-03-13 2014-07-02 北京奇艺世纪科技有限公司 音视频数据的播放方法、智能电视和移动设备
US9641576B2 (en) 2014-07-11 2017-05-02 Amazon Technologies, Inc. Dynamic locale based aggregation of full duplex media streams
US20160150008A1 (en) * 2014-11-25 2016-05-26 Google Inc. Clock synchronization using wifi beacons
JP2016126037A (ja) * 2014-12-26 2016-07-11 ソニー株式会社 信号処理装置、および信号処理方法、並びにプログラム
US9986519B2 (en) * 2015-03-04 2018-05-29 Texas Instruments Incorporated Synchronization by difference between link layer and processor time stamps
US9935685B2 (en) * 2015-05-28 2018-04-03 Qualcomm Incorporated DC power line synchronization for automotive sensors
GB2540947B (en) 2015-07-31 2017-09-20 Imagination Tech Ltd Identifying network conditions
GB2542984B (en) 2015-07-31 2020-02-19 Imagination Tech Ltd Identifying network congestion based on a processor load and receiving delay
GB2535819B (en) * 2015-07-31 2017-05-17 Imagination Tech Ltd Monitoring network conditions
US10855741B2 (en) * 2015-08-06 2020-12-01 Sensormatic Electronics, LLC System and method for multiplexed video stream decoding in web browser
CN105187754B (zh) * 2015-08-31 2018-09-14 浙江宇视科技有限公司 一种缓存补录方法和装置
US9798515B1 (en) 2016-03-31 2017-10-24 Bose Corporation Clock synchronization for audio playback devices
US10541005B2 (en) * 2017-05-17 2020-01-21 Cypress Semiconductor Corporation Distributed and synchronized control system for environmental signals in multimedia playback
CN108965777B (zh) * 2017-08-28 2020-07-17 视联动力信息技术股份有限公司 一种回声消除方法和装置
US10572534B2 (en) 2018-07-06 2020-02-25 Blaine Clifford Readler Distributed coordinated recording
CA3130164A1 (en) 2019-02-14 2020-08-20 International Business Machines Corporation Directed interrupt for multilevel virtualization
EP3924819A1 (en) 2019-02-14 2021-12-22 International Business Machines Corporation Directed interrupt for multilevel virtualization with interrupt table
TWI764082B (zh) 2019-02-14 2022-05-11 美商萬國商業機器公司 用於經引導中斷虛擬化之中斷信號之方法、電腦系統及電腦程式產品
EP3924822A4 (en) 2019-02-14 2022-11-23 International Business Machines Corporation DIRECTED INTERRUPT VIRTUALIZATION WITH CLOCK FLAG
TWI759677B (zh) 2019-02-14 2022-04-01 美商萬國商業機器公司 用於具有回退之經引導中斷虛擬化之方法、電腦系統及電腦程式產品
WO2020164935A1 (en) * 2019-02-14 2020-08-20 International Business Machines Corporation Directed interrupt virtualization with running indicator
TWI727607B (zh) 2019-02-14 2021-05-11 美商萬國商業機器公司 用於具有中斷表之經引導中斷虛擬化之方法、電腦系統及電腦程式產品
WO2020164820A1 (en) 2019-02-14 2020-08-20 International Business Machines Corporation Directed interrupt virtualization
KR20230095712A (ko) * 2021-12-22 2023-06-29 삼성전자주식회사 전자 장치 및 그 제어 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003060652A (ja) * 2001-04-27 2003-02-28 Matsushita Electric Ind Co Ltd 無線伝送装置
JP2003249922A (ja) * 2002-02-26 2003-09-05 Sony Corp データ受信装置、および受信データ処理方法、並びにコンピュータ・プログラム
JP2003273854A (ja) * 2002-02-22 2003-09-26 Sony United Kingdom Ltd クロックの周波数同期
US6654956B1 (en) * 2000-04-10 2003-11-25 Sigma Designs, Inc. Method, apparatus and computer program product for synchronizing presentation of digital video data with serving of digital video data
JP2005250445A (ja) * 2004-02-04 2005-09-15 Seiko Epson Corp マルチ画面映像再生システム

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5533021A (en) * 1995-02-03 1996-07-02 International Business Machines Corporation Apparatus and method for segmentation and time synchronization of the transmission of multimedia data
US5862140A (en) * 1995-11-21 1999-01-19 Imedia Corporation Method and apparatus for multiplexing video programs for improved channel utilization
US5844900A (en) * 1996-09-23 1998-12-01 Proxim, Inc. Method and apparatus for optimizing a medium access control protocol
US5930252A (en) * 1996-12-11 1999-07-27 International Business Machines Corporation Method and apparatus for queuing and triggering data flow streams for ATM networks
US5778218A (en) * 1996-12-19 1998-07-07 Advanced Micro Devices, Inc. Method and apparatus for clock synchronization across an isochronous bus by adjustment of frame clock rates
US6347084B1 (en) * 1998-05-28 2002-02-12 U.S. Philips Corporation Method of timestamp synchronization of a reservation-based TDMA protocol
WO2002009351A2 (en) * 2000-07-26 2002-01-31 Thomson Licensing S.A. Multi-media jitter removal in an asynchronous digital home network
US6577231B2 (en) * 2001-04-03 2003-06-10 Thomson Licensing Sa Clock synchronization over a powerline modem network for multiple devices
GB2375014A (en) * 2001-04-27 2002-10-30 Ericsson Telefon Ab L M Neighbour discovery in a communication network
US7043651B2 (en) * 2001-09-18 2006-05-09 Nortel Networks Limited Technique for synchronizing clocks in a network
US20040006484A1 (en) * 2001-11-13 2004-01-08 Manis Constantine N. Method and system for media content data distribution and consumption
US7191355B1 (en) * 2002-02-19 2007-03-13 Nortel Networks Limited Clock synchronization backup mechanism for circuit emulation service
US7151945B2 (en) * 2002-03-29 2006-12-19 Cisco Systems Wireless Networking (Australia) Pty Limited Method and apparatus for clock synchronization in a wireless network
US20050166135A1 (en) * 2004-01-05 2005-07-28 Burke David G. Apparatus, system and method for synchronized playback of data transmitted over an asynchronous network
US20050273833A1 (en) * 2004-05-14 2005-12-08 Nokia Corporation Customized virtual broadcast services
US7668243B2 (en) * 2004-05-18 2010-02-23 Texas Instruments Incorporated Audio and video clock synchronization in a wireless network
US20060013407A1 (en) * 2004-07-19 2006-01-19 Peavey Hartley D Methods and apparatus for sound compensation in an acoustic environment
US7551606B2 (en) * 2004-08-20 2009-06-23 Sony Corporation Isochronous transmission for IP-oriented network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6654956B1 (en) * 2000-04-10 2003-11-25 Sigma Designs, Inc. Method, apparatus and computer program product for synchronizing presentation of digital video data with serving of digital video data
JP2003060652A (ja) * 2001-04-27 2003-02-28 Matsushita Electric Ind Co Ltd 無線伝送装置
JP2003273854A (ja) * 2002-02-22 2003-09-26 Sony United Kingdom Ltd クロックの周波数同期
JP2003249922A (ja) * 2002-02-26 2003-09-05 Sony Corp データ受信装置、および受信データ処理方法、並びにコンピュータ・プログラム
JP2005250445A (ja) * 2004-02-04 2005-09-15 Seiko Epson Corp マルチ画面映像再生システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010147941A (ja) * 2008-12-19 2010-07-01 Panasonic Corp 通信方法、通信装置、および通信システム
CN102257769A (zh) * 2008-12-19 2011-11-23 松下电器产业株式会社 用于适配通信系统中的数据速率的同步估计
US8411699B2 (en) 2008-12-19 2013-04-02 Panasonic Corporation Communication method, communication apparatus, and communication system

Also Published As

Publication number Publication date
WO2006113283A3 (en) 2007-10-04
CA2603978A1 (en) 2006-10-26
KR101228177B1 (ko) 2013-01-30
KR20080007577A (ko) 2008-01-22
EP1869884A4 (en) 2013-01-23
US8238376B2 (en) 2012-08-07
JP5068744B2 (ja) 2012-11-07
WO2006113283A2 (en) 2006-10-26
CN101156447A (zh) 2008-04-02
EP1869884A2 (en) 2007-12-26
CN101156447B (zh) 2010-05-19
US20060233203A1 (en) 2006-10-19

Similar Documents

Publication Publication Date Title
JP5068744B2 (ja) ネットワーク機器用の同期的音声/映像復号化方法及び装置
US8028097B2 (en) System and method for synchronizing audio-visual devices on a power line communications (PLC) network
JP5215604B2 (ja) クライアント装置、通信システム及びデータ処理方法
CN117596516A (zh) 音频播放系统
CN103888815B (zh) 一种音视频流实时分离处理及同步的方法及其系统
KR20050090448A (ko) 오디오-비쥬얼 콘텐트 전송
WO2007103871A2 (en) System and method for establishing and maintaining synchronization of isochronous audio and video information streams in wireless multimedia applications
KR20040017794A (ko) 네트워크 시스템 및 이 시스템에 이용되는 출력 기기
TWI735476B (zh) 視聽接收裝置及其快速變換頻道之方法
WO2006053704A1 (en) Synchronizing multi-channel speakers over a network
JP2015515208A (ja) 相関したメディアプレゼンテーションの同期のためのバッファ管理方法
JP2006109000A (ja) オーディオビデオ同期システム及びモニター装置
CN108810656B (zh) 一种实时直播ts流的去抖处理方法及处理系统
JP2008029006A (ja) クライアント装置、通信システム及びデータ処理方法
JP2009272945A (ja) 同期再生装置
KR100552077B1 (ko) 컨텐츠 제공시스템과 이를 위한 이동단말
CN103327364B (zh) 一种用于音视频播放的无线传输方法及装置
JP2004356695A (ja) データ配信システムおよびデータ配信方法、ならびにデータ受信装置およびデータ受信方法
JP4986229B2 (ja) 同期した異なる種類のストリーミングデータを受信し且つ同時に再生する受信システム、受信装置及びプログラム
JP2009049919A (ja) 映像音声再生方法および映像音声再生システム
JP4359024B2 (ja) 同期制御方法と装置およびそれを用いた同期再生装置およびテレビジョン受信装置
US20220013131A1 (en) Method, a system, and a program for playing back audio/video signals with automatic adjustment of latency
CN113077799A (zh) 具有两个音频链路的解码器装备
JPH10164556A (ja) デコーダ、エンコーダ、およびビデオ・オン・デマンドシステム
KR20130060651A (ko) 영상처리장치 및 그 제어방법

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20080617

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20080617

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080709

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090310

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090811

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120227

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120528

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120604

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120627

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120704

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120806

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120815

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150824

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees