(57)【特許請求の範囲】
【請求項１】
第１のデバイスでパケット交換ネットワークを介して第２のデバイスからビデオストリームを受信する処理であって、前記受信したビデオストリームは当該ビデオストリームの推定ビデオフォーマット情報を含み、前記推定ビデオフォーマット情報は前記第２のデバイスで前記ビデオストリームの制御信号を解析することによって決定される推定ビデオクロック周波数を含み、前記制御信号はＨＳＹＮＣ（horizontal synchronization）信号とＶＳＹＮＣ（Vertical synchronization）信号とＤＥ（data enable）信号とを含み、前記推定ビデオクロック周波数は前記ＨＳＹＮＣ信号及び前記ＶＳＹＮＣ信号をカウントすること及び前記ＤＥ信号の比率を演算することにより決定される処理と、
前記第１のデバイスで前記受信したビデオストリームに関連付けられたビデオクロック信号のクロックリカバリを実行する処理であって、前記クロックリカバリでは、前記受信した推定ビデオフォーマット情報から少なくとも前記ビデオクロック信号の周波数情報を抽出する処理を実行する処理と、
が実行される方法。
【請求項２】
前記第１のデバイスは、シンクデバイスであり、
前記第２のデバイスは、ソースデバイスである、
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記第１のデバイスで受信した前記ビデオストリームは、前記第１のデバイスに送信される前に前記第２のデバイスによってパケット化されており、
前記第１のデバイスで、クロックリカバリを実行する前に前記受信したビデオストリームをデパケット化する処理が更に実行される、請求項２に記載の方法。
【請求項４】
前記クロックリカバリを実行する処理は、前記受信したビデオストリームの連続するパケットに組み込まれたタイムスタンプ間の時間差を計算することによって算出される、前記第２のデバイスによって送信された前記ビデオストリームのクロック周波数と、リカバリする前記ビデオクロック信号の周波数とを比較することによって、前記ビデオクロック信号の周波数を調整することを含む、請求項２に記載の方法。
【請求項５】
前記クロックリカバリを実行する処理は、
ＦＩＦＯ（First-In-First-Out）バッファで前記第２のデバイスからのパケットを受信することと、
所定レベルよりも大きい前記ＦＩＦＯバッファの深度レベルに応じて、リカバリする前記ビデオクロック信号の周波数を増加させることと、
所定レベルよりも小さい前記ＦＩＦＯバッファの深度レベルに応じて、リカバリする前記ビデオクロック信号の周波数を減少させることと、
を含む、請求項１に記載の方法。
【請求項６】
前記クロックリカバリを実行する処理は、
前記ビデオストリームのパケットに組み込まれたタイムスタンプを調べることによって、前記ビデオストリームのパケットの中から異常値パケットを決定して除去すること、
及び可聴周波数範囲の外側に位相雑音をシフトすること、
のうちの少なくとも１つを更に含む、請求項５に記載の方法。
【請求項７】
前記ビデオストリームのコンテンツは、高精細度マルチメディアインタフェース（ＨＤＭＩ（登録商標））ベースコンテンツ、デジタルビデオインタフェース（ＤＶＩ）ベースコンテンツ、又は移動高精細度リンク（ＭＨＬ）ベースコンテンツの少なくとも１つを含む、請求項１に記載の方法。
【請求項８】
パケット交換ネットワークを介して第２のデバイスからビデオストリームを受信するように構成された受信機回路であって、前記受信したビデオストリームは当該ビデオストリームの推定ビデオフォーマット情報を含み、前記推定ビデオフォーマット情報は前記第２のデバイスで前記ビデオストリームの制御信号を解析することによって決定される推定ビデオクロック周波数を含み、前記制御信号はＨＳＹＮＣ（horizontal synchronization）信号とＶＳＹＮＣ（Vertical synchronization）信号とＤＥ（data enable）信号とを含み、前記推定ビデオクロック周波数は前記ＨＳＹＮＣ信号及び前記ＶＳＹＮＣ信号をカウントすること及び前記ＤＥ信号の比率を演算することにより決定される、前記受信機回路と、
前記受信機回路に接続され、受信した前記ビデオストリームに関連するビデオクロック信号のクロックリカバリを実行するように構成されたクロック再生回路であって、前記クロックリカバリでは、前記受信した推定ビデオフォーマット情報から少なくとも前記ビデオクロック信号の周波数情報を抽出する処理を実行する、前記クロック再生回路と、
を有する第１のデバイスを備える装置。
【請求項９】
前記第１のデバイスは、シンクデバイスであり、
前記第２のデバイスは、ソースデバイスである、
請求項８に記載の装置。
【請求項１０】
前記第１のデバイスで受信した前記ビデオストリームは、前記第１のデバイスに送信される前に前記第２のデバイスによってパケット化されており、
前記第１のデバイスは、クロックリカバリを実行する前に受信した前記ビデオストリームをデパケット化するように更に構成されている、
請求項９に記載の装置。
【請求項１１】
前記クロック再生回路は、
受信した前記ビデオストリームの連続するパケットに組み込まれたタイムスタンプ間の時間差を計算することによって算出される、前記第２のデバイスによって送信された前記ビデオストリームのクロック周波数と、リカバリする前記ビデオクロック信号の周波数とを比較することによって、前記ビデオクロック信号の周波数を調整すること
によってクロックリカバリを実行する、請求項９に記載の装置。
【請求項１２】
クロックリカバリを実行する前記クロック再生回路は、
ＦＩＦＯ（First-In-First-Out）バッファで前記第２のデバイスからのパケットを受信することと、
所定レベルよりも大きい前記ＦＩＦＯバッファの深度レベルに応じて、リカバリする前記ビデオクロック信号の周波数を増加させることと、
所定レベルよりも小さい前記ＦＩＦＯバッファの深度レベルに応じて、リカバリする前記ビデオクロック信号の周波数を減少させることと、
によってクロックリカバリを実行する、請求項８に記載の装置。
【請求項１３】
前記クロック再生回路は、
前記ビデオストリームのパケットに組み込まれたタイムスタンプを調べることによって、前記ビデオストリームのパケットの中から異常値パケットを決定して除去すること、
及び可聴周波数範囲の外側に位相雑音をシフトすること、
のうちの少なくとも１つによってクロックリカバリを実行する、請求項１２に記載の装置。
【請求項１４】
前記ビデオストリームのコンテンツは、高精細度マルチメディアインタフェース（ＨＤＭＩ（登録商標））ベースコンテンツ、デジタルビデオインタフェース（ＤＶＩ）ベースコンテンツ、又は移動高精細度リンク（ＭＨＬ）ベースコンテンツの少なくとも１つを含む、請求項８に記載の装置。
【請求項１５】
所定の命令を記録した機械読み取り可能な記録媒体であって、前記所定の命令は、機械に、
第１のデバイスでパケット交換ネットワークを介して第２のデバイスからビデオストリームを受信する手順であって、前記受信したビデオストリームは当該ビデオストリームの推定ビデオフォーマット情報を含み、前記推定ビデオフォーマット情報は前記第２のデバイスで前記ビデオストリームの制御信号を解析することにより決定される推定ビデオクロック周波数を含み、前記制御信号はＨＳＹＮＣ（horizontal synchronization）信号とＶＳＹＮＣ（Vertical synchronization）信号とＤＥ（data enable）信号とを含み、前記推定ビデオクロック周波数は前記ＨＳＹＮＣ信号及び前記ＶＳＹＮＣ信号をカウントすること及び前記ＤＥ信号の比率を演算することにより決定される、前記手順と、
前記第１のデバイスで前記受信したビデオストリームに関連付けられたビデオクロック信号のクロックリカバリを実行する手順であって、前記クロックリカバリでは、前記受信した推定ビデオフォーマット情報から少なくとも前記ビデオクロック信号の周波数情報を抽出する処理を実行する、前記手順と、
を実行させる記録媒体。
【請求項１６】
前記第１のデバイスはシンクデバイスであり、
前記第２のデバイスはソースデバイスである、
ことを特徴とする請求項１５に記載の記録媒体。
【請求項１７】
前記所定の命令は、前記機械に、
前記第１のデバイスで、当該第１のデバイスに送信する前に前記第２のデバイスでパケット化された前記ビデオストリームを、クロックリカバリを実行する前にデパケット化する処理を更に実行させる、請求項１６に記載の記録媒体。
【請求項１８】
前記クロックリカバリを実行する手順は、
前記受信したビデオストリームの連続するパケットに組み込まれたタイムスタンプ間の時間差を計算することによって算出される、前記第２のデバイスによって送信された前記ビデオストリームのクロック周波数と、リカバリする前記ビデオクロック信号の周波数とを比較することによって、リカバリする前記ビデオクロック信号の周波数を調整することを含む、請求項１６に記載の記録媒体。
【請求項１９】
前記クロックリカバリを実行する手順は、
ＦＩＦＯ（First-In-First-Out）バッファで前記第２のデバイスからのパケットを受信することと、
所定レベルよりも大きい前記ＦＩＦＯバッファの深度レベルに応じて、リカバリする前記ビデオクロック信号の周波数を増加させることと、
所定レベルよりも小さい前記ＦＩＦＯバッファの深度レベルに応じて、リカバリする前記ビデオクロック信号の周波数を減少させることと、
を含む、請求項１５に記載の記録媒体。
【請求項２０】
前記所定の命令は、前記機械に、
前記ビデオストリームのパケットに組み込まれたタイムスタンプを調べることによって、前記ビデオストリームのパケットの中から異常値パケットを決定して除去すること、
及び可聴周波数範囲の外側に位相雑音をシフトすること、
のうちの少なくとも１つを含むクロックリカバリを実行させる、請求項１９に記載の記録媒体。
【請求項２１】
前記ビデオストリームのコンテンツは、高精細度マルチメディアインタフェース（ＨＤＭＩ（登録商標））ベースコンテンツ、デジタルビデオインタフェース（ＤＶＩ）ベースコンテンツ、又は移動高精細度リンク（ＭＨＬ）ベースコンテンツの少なくとも１つを含む、
請求項１５に記載の記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
（優先権の請求）
本出願は、２０１１年１月１４日出願のＧＹＵＤＯＮＧ  ＫＩＭによる米国仮特許出願番号６１／４３３，０６１「MECHANISM FOR RECOVERING CLOCK FOR STREMING（パケットネットワークを介してコンテンツをストリーミングするためのクロックリカバリ機構）」（代理人整理番号８０２９Ｐ１０４Ｚ）の優先権を主張するものであり、その開示内容全体は引用により本明細書に組み入れられている。
【０００２】
（技術分野）
本発明の実施形態は、全般的に、ネットワーク通信の分野に関し、より詳細には、パケット通信ネットワークを介して伝送されるコンテンツをストリーミングするためのクロックリカバリを助長するための機構に関する。
【背景技術】
【０００３】
コンテンツをストリーミングする場合のクロックリカバリは広く研究されて改良されてきた。しかしながら、パケットネットワーク環境におけるクロックリカバリは、例えば、到来パケットに対してネットワークで付加されるジッタに関する一連の異なる未解決の問題をもたらす。例えば、従来技術は唯一の固定クロック（例えば、２７ＭＨｚ）だけをサポートするが、ビデオ及びオーディオクロックは独立して回復され、バッファポインタ制御は拡張されない。これらのジッタは、付加ジッタ、脱落パケット、無効タイミング情報を有すると受信パケット、異なる順序で到来するパケット、又は付加されたジッタとして解釈することができるタイムスタンプにおける単純なビットエラー等に起因すること、及びこれらの種々の形式とすることができる。
【発明の概要】
【課題を解決するための手段】
【０００４】
パケット化ネットワークを介してコンテンツをストリーミングするためのクロックリカバリを助長する処理を含む方法の実施形態を説明する。実施形態の方法は、第１のデバイスで推定データストリームを受信する処理を含む。推定データストリームは、第１のデバイスで受信されることが予期されるデータストリームに関する推定データフォーマット情報を含むことができる。本方法は、第１のデバイスで、推定データフォーマット情報に基づいて推定データストリームのクロック再生を実行する処理を更に含むことができる。クロック再生は、推定データストリームのクロックリカバリを実行する処理を含むことができる。
【０００５】
１つの実施形態では、前述のクロック再生は、クロック再生データストリームのシームレスな表示を助長するために、データフォーマット情報に基づいて推定データストリームのクロックリカバリを実行する処理を含むことができる。クロックリカバリの実行は、ローカル周波数の調整のためにソースによってデータストリームに挿入されたタイムスタンプの到着時間を調べる処理、又はローカル周波数の調整のために受信された先入れ先出し（ＦＩＦＯ）の深度レベルを経時的に調べる処理、又は両者の組み合わせを含むことができる。更に、クロックリカバリを強化する処理は、異常値を除去すること、狭帯域幅クロックリカバリを実行すること、及び可聴範囲の外側に位相雑音をシフトすることの１つ又はそれ以上によって実行することができる。１つの実施形態では、データストリームのコンテンツは、高精細度マルチメディアインタフェース（ＨＤＭＩ）ベースコンテンツ、デジタルビデオインタフェース（ＤＶＩ）ベースコンテンツ、又は移動高精細度リンク（ＭＨＬ）ベースコンテンツの少なくとも１つを含むことができ、コンテンツは、ビデオコンテンツ又はオーディオコンテンツの少なくとも１つを含む。
【０００６】
本発明のいくつかの態様において、実施形態の装置及びシステムは、前述の方法を実行する。
【０００７】
本発明の実施形態は、例示的であり制限的ではなく、添付の図面の各図では、同じ参照数字は類似の要素を示している。
【図面の簡単な説明】
【０００８】
【図１Ａ】本発明の１つの実施形態による、データフォーマット推定モジュールを有するソースデバイスを示す。
【図１Ｂ】本発明の１つの実施形態による、クロック再生モジュールを有するシンクデバイスを示す。
【図２】本発明の１つの実施形態による、パケット化ネットワークを介してデータコンテンツをストリーミングするためのクロックリカバリのためのクロックリカバリ機構を示す。
【図３】本発明の１つの実施形態による、パケット化ストリーミングコンテンツのクロックリカバリを助長するためのシーケンスを示す。
【図４】本発明の１つの実施形態によるコンピュータシステムを示す。
【発明を実施するための形態】
【０００９】
本発明の実施形態は、一般的に、パケット化通信ネットワークを介して伝送されるコンテンツをストリーミングするためのクロックリカバリを助長することに関する。
【００１０】
本発明の実施形態は、イーサネットのようなパケット化ネットワークを介してコンテンツをストリーミングするためのクロックリカバリのための機構を提供する。１つの実施形態では、特定のタスク（例えば、ビデオフォーマット推定）がソース（例えば、コンテンツストリームの送信機）で実行され、特定の他のタスク（例えば、クロック再生）がシンク（例えば、コンテンツストリームの受信機）で実行される。例えば、本発明の実施形態は、更に、クロックリカバリ処理に起因する可聴雑音を最小にするために、水平同期（ＨＳＹＮＣ）及び垂直同期（ＶＳＹＮＣ）パルス、及びオーディオスペクトルアウエアクロックリカバリに関するクロックをカウントすることによって推定されるビデオフォーマットから、ソース側でビデオクロック周波数を推定する処理を提供する。本発明の実施形態は、１つ又はそれ以上のパケット化ネットワークを介して伝送される非圧縮及び／又は圧縮ストリーミング媒体を受信するユーザエクスペリエンスを強化する処理を提供する。本明細書全体を通して、「ソース」は、「ソースデバイス」、「送信機」、「送信デバイス」、又は単純に「Ｔｘ」として示される点に留意されたい。同様に、「シンク」は、「シンクデバイス」、「受信機」、「受信デバイス」、又は単純に「Ｒｘ」として示される。
【００１１】
最新のデジタル液晶ディスプレイ（ＬＣＤ）／プラズマディスプレイのようなディスプレイにおけるビデオクロックは、ビデオプロセッサ、タイミングコントローラ、データ／ゲートドライバなどからのディスプレイ電子機器を駆動する機能を果たす。周波数精度は、高精細度マルチメディアインタフェース（ＨＤＭＩ）仕様１．４ａのような関連の仕様に定められる場合が多い。ジッタ要件は、主に、駆動されたディスプレイ電子機器におけるタイミングマージンに関係付けられる。回復されたビデオクロックがソースクロックからの周波数オフセットを有する場合、ビデオディスプレイタイミングが所定期間あたりの不規則なクロック数を許可しないので、結果的に容易に解決されない画素ドロップ／利得が存在する可能性がある。しかしながら、オーディオクロックは、異なる要件を有することができる。関連する仕様における未解決の周波数／ジッタ要件は存在しない可能性があるが、位相雑音が可聴周波数範囲（通常、２０Ｈｚから２０ｋＨｚであると仮定される）にある場合、音程の変化は耳で聞くことができ、ユーザエクスペリエンスに影響を与えることがある。
【００１２】
ＨＤＭＩ及びデジタルビジュアルインタフェース（ＤＶＩ）のような一部のストリーミング媒体規格は、クロック及びデータを同時に送信する。このように、特定の範囲内の任意の周波数は、複雑なクロックリカバリのない仕様及び仕様に準拠したデバイスでサポートすることができる。ディスプレイポートのような別のストリーミング媒体規格は、ビデオ電子機器のためのクロックリカバリを容易にするために少数の事前選択された離散的な周波数をサポートする。ソース媒体規格がクロック周波数の連続した範囲又は少数の事前選択された離散的な周波数をサポートするか否かに関わらず、媒体データ（例えば、ビデオ、オーディオ、制御）がパケット化されネットワークを介して転送されると、オーディオ及びビデオコンテンツに関するソースクロックの回復は単純なものではなくなる。
【００１３】
例えば、データリンクを仮定する。ビデオフォーマット及び画素クロックレートのような着信ビデオモードに関する情報が取得される。ビデオモード情報から識別された公称クロック周波数が生成され、異なる順序での到来、パケットドロップ、パケットエラーなどの制限付きのネットワークジッタをサポートできる所望の位置まで先入れ先出し（ＦＩＦＯ）メモリが満たされるまで、処理は待機する。次に、公称クロックを備えたビデオストリームが再生される。ローカルクロックが着信タイムスタンプから遅れた場合、ローカルクロック位相を進める。ローカルクロックが着信タイムスタンプよりも早い場合、ローカルクロック位相を遅らさる。ローカルクロック位相の制御は、可聴周波数範囲及び再生ビデオ規格によって課せられる絶対周波数許容範囲の下又は上（例えば、ＨＤＭＩにおいて０．５％）になるように制御ループ帯域幅によって指示される。
【００１４】
ビデオモードによって提供される公称周波数から開始することによって、任意のビデオクロックをサポートすることができる。バッファ深度及び／又はタイムスタンプを観察することによって、ローカルクロックは、ネットワークジッタに対応しながらリモートクロックを追跡することができる。１つの実施形態では、制御ループは、追跡する周波数の変化を人間の耳が識別できないようにローカルクロックを回復する。
【００１５】
回復されたビデオクロックは、例えば所定のビデオモードにつき、ＨＤＭＩの準拠テスト仕様（ＣＴＳ）のような関連の仕様に関する準拠テストを満足させる必要がある場合がある。ビデオクロックの変動は、リップシンクがある程度重要になる場合は、ビデオクロックよりも音程変化から明らかになるオーディオクロックの変動として理解することができる。特定の周波数範囲より下（例えば、２０Ｈｚ又は２０ｋＨｚを超える）（可聴周波数範囲の外側）に制御ループの帯域幅を制限することは、処理を助けることができる。信号の因果関係に起因して、ネットワークを通る大部分のジッタはビデオを遅らせる。従って、単純にストリームバッファの中心にバッファポインタを維持するだけでは十分ではない。
【００１６】
実施形態は、ストリーミング媒体データが固定又は選択可能な離散データ帯域幅ネットワークを介して転送され、更にオリジナルストリーミング媒体データとして他方の側で再構成される場合、ビデオクロック又はオーディオクロックのような媒体クロックの回復を可能にする。より詳細には、実施形態は、パケット長の予測可能性がクロックリカバリに活用できる、非圧縮ベースバンドビデオ又はフロー制御圧縮ビデオのような、媒体データパケットの長さが固定又は予測可能である時間を提供する。シリアルリンクの特質は、避けられないビットエラーに起因して変化するパケット長をもたらすことがある。
【００１７】
本明細書で使用される「ネットワーク」又は「通信ネットワーク」は、デバイス間でデジタル媒体コンテンツ（音楽、オーディオ／ビデオ、ゲーム、フォト等を含む）を配信するための相互接続ネットワークを意味する。ネットワークは、家庭内ネットワークのようなパーソナル娯楽ネットワーク、職場環境ネットワーク、又はデバイス及び／又は構成要素の任意の他のネットワークを含むことができる。ネットワークにおいて、特定のネットワークデバイスを、デジタルテレビジョンチューナ、ケーブルセットトップボックス、ビデオ記憶サーバ、及び他のソースデバイスのような媒体コンテンツのソースとすることができる。他のデバイスは、デジタルテレビジョン、ホームシアターシステム、オーディオシステム、ゲームシステム、又はインターネットを介してブラウザ及び他のデバイスに提示される、媒体コンテンツを表示又は使用することができる。更に、特定のデバイスは、ビデオ及びオーディオ記憶サーバのような媒体コンテンツを格納又は転送することを目的とすることができる。特定のデバイスは複数の媒体機能を実行することができる。いくつかの実施形態では、ネットワークデバイスは、単一のローカルエリアネットワークに共同設置することができる。他の実施形態では、ネットワークデバイスは、ローカルエリアネットワーク間のトンネリングなどを介して複数のネットワークセグメントにまたがることができる。ネットワークは、複数のデータ符号化及び暗号化処理を含むことができる。
【００１８】
一部の論理／回路を、ロッキング回路、位相同期ループ（ＰＬＬ）、遅延同期ループ（ＤＬＬ）、暗号化論理、解読論理、認証エンジン、１つ又はそれ以上の（バックグラウンド／フォアグラウンド）処理エンジン、又は同様のもののように受信機及び送信機チップにおいて利用できることが考えられる。本明細書全体を通して説明されるように、データストリーム（例えば、ビデオ及び／又はオーディオデータストリーム）は、ＨＤＭＩベースコンテンツ、デジタルビジュアルインタフェース（ＤＶＩ）ベースコンテンツ、又は移動高精細度リンク（ＭＨＬ）ベースコンテンツを含むことができるが、本発明の実施形態は、ＨＤＭＩ、ＤＶＩ、及びＭＨＬに制限されず、データストリームの任意の他の種類に対しても使用することができる。同様に、本発明の実施形態は、ＨＤＣＰに限定されず、他の暗号化プロトコル又は機構に適用することができ、またこれと一緒に使用することができる。しかしながら、ＨＤＭＩ、ＤＶＩ、及びＭＨＬ等は、本明細書では、説明を簡潔に、明確に、及び容易にするために使用される。
【００１９】
図１Ａは、本発明の１つの実施形態によるデータフォーマット推定モジュールを有するソースデバイスを示している。いくつかの実施形態では、ソースデバイス１００は、データストリームの送信のための送信機１１４、データ送信を制御するためのコントローラ１１６、及び別のデバイス（例えば、シンクデバイス又は中間ブリッジデバイスのような受信デバイス）への送信の前にデータストリームのコンテンツを暗号化するための暗号化エンジン１１８を含む。ソースデバイス１００は、更に、送信の前にデータを記憶するためのデータ記憶装置１１２、及び送信の前に外部データソース１２２からの特定のデータを受信するための受信機１２０を含むことができる。
【００２０】
ソースデバイス１００は、データポート１２４及び制御ポート１２６を更に含むことができる。１つの実施形態では、データ及び制御ポート１２４、１２６は、論理的に分離することができ、別の実施形態では、データ及び制御ポート１２４、１２６は、物理的に分離すること、又は複数の論理ポートを有する単一の物理ポートを有することができる。更に別の方法では、１つより多い物理ポートを、データ及び制御ポート１２４、１２６の各論理ポートに対して利用することができ、「フォーマット」情報の一部を、制御ポート１２６ではなくデータポート１２４を介して送信することができる。ソースデバイス１００は、データポート１２４を介して複数の異なるモードでデータストリームを送信するような動作時にデータストリームの送信を変更することができ、例えば、第１のモードから第２のモードに遷移させることができる。ソースデバイス１００は、ソースデバイス１００が、暗号化（パケット化）データストリームのようなデータストリームを送信していることをシンクデバイスに知らせる等の、特定の状況を受信装置に通知する（又は警告する）ために制御ポート１２６を介してメッセージを送信する。次に、ソースデバイス１００は、別のデータストリームを送信する前に肯定応答（ＡＣＫ）が制御ポート１２６で受信されるまで待つこと、又は肯定応答を受信することなく送信を続けることができる。
【００２１】
ソースデバイス１００は、パケット化ネットワーク（例えば、イーサネット）を介してシンクデバイスに送信されるデータストリームをパケット化するためのパケット化モジュール１４０を含む。パケット化モジュール１４０は、シンクデバイスに送信される暗号化エンジン１１８によって多重化及び暗号化することができるデータストリームをパケット化するために使用される。１つの実施形態では、ソースデバイス１００は更に、データフォーマット推定（ＤＦＥ）モジュール１３０（例えば、ビデオフォーマット推定）を利用して、データストリーム（例えば、ビデオストリーム）を、シンクデバイスに送信されることになる推定データフォーマット（例えば、ビデオフォーマット）又はモードに加えるので、データフォーマット推定によって提供される何らかの情報は、データストリームにタグ付けすることができ、例えば、目標回復画素クロック周波数を推定するために使用することができる。このことは図２に関して更に説明する。ソースデバイス１００の任意数の構成要素は、ソフトウエア、ハードウエア、又はファームウエアのような、これらの任意の組み合せを含むことができることが考えられる。
【００２２】
図１Ｂは、本発明の１つの実施形態によるクロック再生モジュールを有するシンクデバイスを示している。いくつかの実施形態では、シンクデバイス１５０は、データフォーマット推定を有するパケット化データストリームを受信するためのダウンストリーム受信デバイスとして機能することができ、ビデオディスプレイ１９２及びオーディオスピーカ１９４を介してデータストリームを提供又はレンダリングすることができる。１つの実施形態では、ブリッジデバイス１２０は、ソースデバイスでデータストリームに割り当てられたデータフォーマットをシンクデバイス１５０が識別できるようにする幾つかの構成要素及びモジュールを含むことができるデータフォーマット推定読取機１９８を含み、ソースデバイスから受信されるデータストリームを識別、アクセス、読み取り、理解、及び修正することができる。シンクデバイス１５０は更に、ソースデバイスでパケット化されたデータストリームを回復するためにデパケット化モジュール１９６を含む。シンクデバイス１５０は更に、受信されたタイムスタンプ及び／又は先入れ先出し（ＦＩＦＯ）ポインタに基づいて回復されたクロックの周波数を制御することによってクロックを再生するためのクロック再生モジュール１８４を含む。これは図２に関して更に説明する。図１Ａのソースデバイスと同様、シンクデバイス１５０の様々な構成要素は、ソフトウエア、ハードウエア、又はファームウエアのようなこれらの組合せを含む。
【００２３】
シンクデバイス１５０は、データ動作を制御するためのコントローラ１６４、データストリームを受信するための受信機１７６、データストリームを送信するための送信機１７８、並びにそれぞれデータストリームの受信及び送信のためのデータポート１７０及び１７４、及び送信デバイスとのコマンドの交換のための制御ポート１７２を含むことができる。シンクデバイス１５０は、ビデオディスプレイ１９２、オーディオスピーカ１９４、受信されたデータストリームのコンテンツを記憶するためのデータ記憶装置１６２等の１つ又はそれ以上のデバイスに接続することができる。１つの実施形態では、シンクデバイス１５０は、部分的に暗号化されたデータストリームを受信することができ、更に暗号化されていないコンテンツを解読又は再度暗号化、又は暗号化されていないコンテンツの認証処理に加わることなく、データストリームの暗号化されていないコンテンツ（例えば、制御コンテンツ）を調べて修正することができる。
【００２４】
１つの実施形態では、シンクデバイス１５０は、シンクデバイス１５０がデータストリームの暗号化コンテンツを識別及び解読する、並びにソースデバイスから受信されるデータストリームの暗号化されていないコンテンツを識別、アクセス、読み取り、及び理解するのを促進するための幾つかのエンティティを含む解読エンジン１８２を含む。シンクデバイス１５０は、ビデオディスプレイ装置１９２及び／又はオーディオスピーカ１９４を介してデータストリームのコンテンツのいずかを提供することができる。
【００２５】
図２は、本発明の１つの実施形態による、パケット化ネットワークを介してデータコンテンツをストリーミングするためのクロックリカバリのためのクロックリカバリ機構を示している。１つの実施形態では、パケット化ネットワーク（例えば、イーサネット）を経由してデータコンテンツをストリーミングするためのクロックリカバリのための機構（「クロックリカバリ機構」）２００は、ソースデバイス１００とシンクデバイス１５０との間で伝送されるデータストリーム（例えば、ビデオストリーム）に適用されるように示されている。ビデオストリーム（及びそのコンテンツ）のコンテンツ転送は、転送が精密なサイクルでありデータストリームコンテンツが全体で（又は、例えばシンクデバイスによって要求されるように）及び特定の事前に決められた順序で転送されるという意味で、信頼できると仮定できると考えられる。例えば、ＨＤＭＩ仕様は、ビデオストリームに関するビデオクロックが各々の定義されたビデオクロック周波数から０．５％の許容範囲内である必要があることを要求する場合がある。ビデオストリーム転送はトランスペアレントであることを前提とするので、ビデオストリームに含まれるビデオの特徴に関する情報を含まない。これは、典型的にはＤＶＩの場合である。ＨＤＭＩに関して、ビデオストリームのビデオモードに関する情報を提供するために、ビデオ情報フレームをビデオストリームに追加することができる。しかしながら、情報は誤っている可能性があり、適切に作動しない限り、ビデオ情報フレームに１つのエラーでも、ユーザのビデオ視聴エクスペリエンスに大きく影響を与えることがある。結果的に、ビデオタイミングフォーマット及びクロック周波数を知ること及び／又はクロックリカバリを完遂することは重要になる。
【００２６】
説明される実施形態では、未知のフォーマットのビデオストリーム（「未知フォーマットビデオストリーム」）２０５はソースデバイス１００で開始される。次に、未知フォーマットビデオストリーム２０５は、パケット化される（例えば、一連のパケットとしてパケット化ネットワーク２２０を介してシンクデバイス１５０に送信される）。１つの実施形態では、ビデオフォーマット推定２１５の新しい技術が、ソースデバイス１００の未知フォーマットビデオストリーム２０５に適用され、未知フォーマットビデオストリーム２０５をフォーマット情報が追加されたビデオストリームに発展させる。次に、このビデオフォーマット情報はシンクデバイス１５０に送信されるので、フォーマット情報は目標回復クロック周波数を推定するために使用することができる。正確な目標クロック周波数が知られているとしても、２つの基準クロック周波数が同じでないので、クロックリカバリが使用される。例えば、これは、ベースの水晶発振器の周波数が異なることが理由である場合があり、又は、ソースベースのビデオストリームの何らかのジッタによる場合がある。
【００２７】
１つの実施形態では、ビデオフォーマット推定２１５は、ソースデバイス１００で未知フォーマットデータストリーム２０５に割り当てられる又はこれに関連付けられるが、これは、ソースデバイス１００が、理想的なビデオクロック周波数を推定するためにシンクデバイス１５０より良い位置にあるためである。更に、ソースデバイス１００は、許容可能とすべき理想的なビデオクロック周波数を推測するために良い位置に配置されている。１つの実施形態では、ソースデバイス１００で、ＨＳＹＮＣ、ＶＳＹＮＣ、並びにこれらの信号における各イベントの間のＤＥ比及び関係性をカウントすることによって媒体クロック周波数が推定される。この技術を使用することで、シンクデバイス１５０のＨＳＹＮＣとＶＳＹＮＣとの間の比をカウントすることによって、入力ビデオのフォーマットを推定する必要性は無くなる。
【００２８】
１つの実施形態では、シンクデバイス１５０において、例えばＦＩＦＯポインタ位置に基づいて、再生されたクロック周波数を制御するためにデータストリームに関してクロック再生２３０が実行される。しかしながら、前述したように、公知の目標周波数及び公知の周波数許容範囲、論理におけるタイミングに影響を与えるサイクル間ジッタ、及びシンクデバイス１５０の保護機構を起動することがある周波数のゆらぎは、許容可能な範囲内に制御することができる。クロック再生２３０は、１つの実施形態では、クロックリカバリのためにビデオフォーマット推定２１５を使用する。例えば、パケット化ネットワーク２２０を介して受信されたビデオストリームは、一連のパケットとして受信され、送信されたパケットのいくつかがシンクデバイス１５０に到着せずに終わる可能性、及び／又はパケットのいくつかが異なる順序で到着する可能性が残っていると考えられる。これらの欠落又は異なる順序のパケットはＦＩＦＯでのデータ変動を起こすことがあるので、ＦＩＦＯポインタに基づいて回復されたクロックの周波数を制御することは、クロックの再生として見なされる。ＦＩＦＯがビデオストリームの半分以上のデータを有する場合、クロック周波数は次第に高くなる場合があり、対照的に、ＦＩＦＯがデータの半分以下の場合、クロック周波数は次第に低くなる。このように、データの何らかのアンダーラン又はオーバランを防止することができる。
【００２９】
ＦＩＦＯにおけるデータの何らかの潜在的な変動は、シンクデバイス１５０で受信されるデータストリームの各データパケットに何が起こったかに関する情報を提供するビデオフォーマット推定を知ることによって防止される。換言すると、１つの実施形態では、ビデオフォーマット推定２１５を使用して、ビデオストリームの何らかの欠落又は異なる順序のパケットを決定及び識別し、これに応じて次にＦＩＦＯポインタが調整される。
【００３０】
更に、ＨＤＭＩ又はディスプレイポートのような一部のオーディオ／ビデオ（Ａ／Ｖ）インタフェースにおいて、オーディオをデータストリームの一部としてビデオと一緒に同時に転送することができる。例えば、オーディオクロックをビデオクロックに対して回復すること、又は着信クロックジッタの大部分を取り除くために一部の超ハイエンドオーディオＤ／Ａコンバータを使用することができる。これは、ループフィルタ（オンボードアナログ構成要素又はオンチップアナログ又はデジタルループ構成要素／回路のいずれか）及びデータロスを防ぐために使用されるデータＦＩＦＯの高コストに起因する。コストを避けるために、クロック再生２３０が使用され、これによって、再生されたオーディオクロックはクリーンにされ、クリーンオーディオクロックを取得することができ、回復されたビデオクロックはその位相又はその周波数をしばしば変更する必要がなく、これによって、オーディオクロックの何らかのジッタを防止することができる。しかしながら、追加されたジッタ周波数が可聴範囲になければ、ジッタは、データストリームの知覚されるオーディオ品質に影響を与えない。１つの実施形態では、バンドリジェクトフィルタにおけるジッタの制御は、例えば、フラクショナルＮ合成によって達成することができる。
【００３１】
説明される実施形態では、未知フォーマットデータストリーム２０５（例えば、ビデオストリーム）がソースデバイス１００で開始される。次に、データストリーム２０５がパケット化され２１０、関連のフォーマット情報をデータストリーム２０５に関連付けることによってビデオフォーマット推定２１５がデータストリーム２０５に追加される。１つの実施形態では、フォーマット情報は、ソースデバイス１００で、ＨＳＹＮＣ、ＶＳＹＮＣ、並びにこれらの信号におけるイベント間のＤＥ比及び関係性をカウントすることによって推定される媒体クロック周波数を含む。この技術を使用すると、シンクデバイス１５０のＨＳＹＮＣとＶＳＹＮＣとの間の比をカウントすることによって、入力ビデオのフォーマットを推定する必要性は無くなる。フォーマット情報を有する変換データストリーム２３５はパケット化され、パケット化ネットワーク２２０を介して送信される。変換データストリーム２３５はシンクデバイス１５０で受信され、ここでデパケット化され２２５、クロック再生２３０が調べられる。関連のフォーマット情報を提供するビデオフォーマット推定２１５を使用すると、シンクデバイス１５０のクロック再生モジュールは、データストリーム２３５に関連付けられるクロックを再生する。クロック再生２３０を使用して、クロックリカバリは、ビデオシフト又は可聴位相雑音のような何らかの潜在的なジッタを低減するために、データストリーム２３５に関する媒体クロックを回復することによって実行される。
【００３２】
１つの実施形態では、クロックリカバリのためのクロック再生２３０を実行するための様々な方法は、異常値を除去すること（例えば、タイムスタンピングが固定速度で実行される場合に比較的容易に異常値を判断する）、目標周波数がビデオフォーマット推定２１５等から事前に知られている場合に狭帯域幅クロックリカバリを実行すること、及び可聴範囲の外側に位相雑音をシフトさせることを含む。更に、クロック再生２３０は、ＨＳＹＮＣ及びＶＳＹＮＣを見つけることによって、及びビデオフォーマット推定２１５の処理の一部としてデータストリームに追加されたフォーマット情報として提供されるＨＤＭＩ  ＡＶＩ情報フレームを探すことによってクロックタイムスタンプを生成するために、クロックを見つける又は回復するための可変クロック周波数入力を使用して実行することができる。
【００３３】
１つの実施形態では、正確なクロックリカバリ及び周波数推定を提供するためにパケット化ネットワーク２２０を介してシンクデバイス１５０で実行されるクロック周波数を推定すること（クロックを回復するために）を含むクロック再生２３０の処理を利用することは、ＨＤＭＩにおけるＡＶＩ情報フレームに加えて使用される。更に、共通のクロック（又はソース及びシンクデバイス１００、１５０の両方で公知の公称周波数をもつクロック）によって、シンクデバイス１５０で周波数調整のための情報を提供するためにタイムスタンプを繰り返し生成することができる。クロックが利用できない又は保証されない場合、これがソースデバイス１００で実行されたフォーマット推定２１５によって提供された周波数推定に結合されるならば、データストリームの各媒体パケットの間のクロック期間のカウントは、クロックリカバリのための十分な情報として見なすことができる。
【００３４】
データストリーム２３５に対するクロックを回復する場合、可聴音調を避けることは、ユーザエクスペリエンスを向上させる。１つの実施形態では、可聴音調を避けるための方法は、２０ｋＨｚよりも高い、可聴周波数範囲より高い周波数帯域に雑音を整形することであり、雑音が高い周波数帯域に整形されると、雑音はフィルタアウトすることが比較的容易になり、場合によっては、雑音は聞こえないのでフィルタアウトする必要性がなるとうい理由からである。
【００３５】
図３は、本発明の１つの実施形態によるパケット化ストリームのクロックリカバリを助長するためのシーケンスを示している。方法３００は、ハードウエア（例えば、回路、専用論理、プログラム可能論理、マイクロコード）、ソフトウエア（処理装置で実行される命令など）、又はハードウエア装置内のファームウエア又は機能的回路等のこれらの組み合わせ含むことができる処理論理によって実行することができる。１つの実施形態では、方法３００は、図１Ａ及び２Ｂのソース及びシンクデバイス１００、１５０によって利用される図２のクロックリカバリのための機構２００によって実行される。
【００３６】
ブロック３０５において、フォーマットがない又はそのフォーマットが知られていない（例えば、図２の未知フォーマットデータストリーム２０５）第１のデータストリーム（例えば、ビデオ及び／又はオーディオストリーム）がソースデバイスで開始される。第１のデータストリームは、別のデバイス又は場所（例えば、ケーブル放送会社）から受信されるもの又はデータストリームの送信機としての役割をするソースデバイスで生成されるものと想定される。ブロック３１０において、データフォーマット推定処理がソースデバイスで第１のデータストリームに対して実行され、適切なフォーマット推定が、第１のデータストリームに対して決定され、これに割り当てられる。適切なフォーマット推定を割り当てることは、第１のデータストリームをシンクデバイスに送信される第２のデータストリームに変換するフォーマット情報を、第１データストリームに関連付けることを含む。次に、ブロック３１５において、第２データストリームは、ブロック３２０でパケット化ネットワーク（例えば、イーサネット）を介してシンクデバイスに送信されるスモールパケットにパケット化される。
【００３７】
次に、ブロック３２５において、第２のデータストリームが、シンクデバイスで受信されデパケット化される。ブロック３３０において、第２のデータストリームのクロックリカバリ処理がシンクデバイスで実行される。クロック再生処理は、シンクデバイスで第２のデータストリームのクロックリカバリを実行して、最大に楽しめるようジッタが全くない第２のデータストリームをシームレスにユーザに提供するように、第２のデータストリームを調整する。ブロック３３５において、デパケット化及びクロック再生された第２のデータストリームが、第２のデータストリームの受信機として機能するシンクデバイスと通信するディスプレイ装置を介してユーザに表示される。
【００３８】
図４は、本発明の１つの実施形態による図１Ａ及び２Ｂのソース及びシンクデバイス１００、１５０で実行される図２のクロックリカバリのための機構２００を利用するためのコンピュータシステムを示している。本図では、本説明に関係がない特定の規格及び公知の構成要素は示されていない。いくつかの実施形態では、コンピュータシステム又は装置４００は、ソースデバイス、シンクデバイス、又はこの両方４５５を完全に又は部分的に利用することができ、又はその一部とすることができる。
【００３９】
いくつかの実施形態において、装置４００は、相互接続部又はクロスバー４０５、又はデータ伝送のための他の通信手段を含む。データは、オーディオビジュアルデータ及び関連の制御データを含むことができる。装置４００は、情報を処理するための相互接続部４０５に接続された１つ又はそれ以上のプロセッサ４１０のような処理手段を含むことができる。プロセッサ４１０は、１つ又はそれ以上の物理プロセッサ及び１つ又はそれ以上の論理プロセッサを含むことができる。更に、プロセッサ４１０の各々は、複数のプロセッサコアを含むことができる。相互接続部４０５は、単純化するために単一の相互接続部として示されているが、複数の異なる相互接続部又はバスを表すことができ、この相互接続部への構成要素の接続は様々とすることができる。ここで示される相互接続部４０５は、何らかの１つ又はそれ以上の別々の物理バス、ポイントツーポイント接続、又は適切なブリッジ、アダプタ、又はコントローラによって接続されたこれらの両方を表す抽象的なものである。相互接続部４０５は、例えば、システムバス、ＰＣＩ又はＰＣＩｅバス、ハイパートランスポート又は産業規格アーキテクチャ（ＩＳＡ）バス、小型コンピュータシステムインタフェース（ＳＣＳＩ）バス、ＩＩＣ（Ｉ２Ｃ）バス、又は「ファイヤーウォール」と呼ばれることもある電気電子学会（ＩＥＥＥ）規格１３９４バスを含むことができ、又はイーサネットのようなネットワークとすることもできる。（「高性能シリアルバスの規格」１３９４−１９９５、ＩＥＥＥ、１９９６年８月３０日公開、及び補足）。装置４００は、更に、１つ又はそれ以上のＵＳＢ互換接続を取り付けることができるＵＳＢバス４７０のようなシリアルバスを含むことができる。
【００４０】
いくつかの実施形態では、装置４００は、プロセッサ４１０によって実行される情報及び命令を格納するための主メモリ４２０としてランダムアクセスメモリ（ＲＡＭ）又は他の動的記憶装置を更に備える。また、主メモリ４２０は、プロセッサ４１０による命令の実行中に一時的変数又は他の中間情報を格納するために使用することができる。ＲＡＭメモリは、記憶内容のリフレッシュを必要とする動的ランダムアクセスメモリ（ＤＲＡＭ）、及び記憶内容のリフレッシュを必要としないがコストが高い静的ランダムアクセスメモリ（ＳＲＡＭ）を含む。ＤＲＡＭメモリは、信号を制御するためのクロック信号を含む同期動的ランダムアクセスメモリ（ＳＤＲＡＭ）、及び拡張データアウト動的ランダムアクセスメモリ（ＥＤＯ  ＤＲＡＭ）を含むことができる。いくつかの実施形態では、システムのメモリは、特定のレジスタ又は他の専用メモリとすることができる。また、装置４００は、プロセッサ４１０のための静的情報及び命令を格納するための読出し専用メモリ（ＲＯＭ）４２５又は他の静的記憶装置を含むことができる。装置４００は、特定の要素の記憶のための１つ又はそれ以上の不揮発性メモリ要素４３０を含むことができる。
【００４１】
データ記憶装置４３５は、情報及び命令を格納するために装置４００の相互接続部４０５に接続することができる。データ記憶装置４３５は、磁気ディスク、光学ディスク及びその対応するドライブ、又は他のメモリ装置を含むことができる。このような要素は相互接続すること、又は別の構成要素とすることができ、装置４００の他の要素の一部を利用する。
【００４２】
また、装置４００は、ディスプレイ又は表示装置４４０に相互接続部４０５を介して接続することができる。いくつかの実施形態では、ディスプレイは、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、ブラウン管（ＣＲＴ）ディスプレイ、又はエンドユーザに情報又はコンテンツを表示するための任意の他のディスプレイ技術を含むことができる。いくつかの実施形態では、ディスプレイ４４０はテレビ番組を表示するために利用することができる。いくつかの環境では、ディスプレイ４４０は、入力デバイスの少なくとも一部として利用されるタッチスクリーンを含むことができる。いくつかの環境では、ディスプレイ４４０は、テレビ番組のオーディオ部分を含むオーディオ情報を提供するためのスピーカのようなオーディオデバイスとすること、又はこれを含むことができる。入力デバイス４４５は、プロセッサ４１０に情報及び／又はコマンド選択を伝送するために相互接続部４０５に接続することができる。様々な実施構成では、入力デバイス４４５は、キーボード、キーパッド、タッチスクリーン及びスタイラス、音声起動システム、又は他の入力デバイス、又はこのようなデバイスの組合せとすることができる。ユーザ入力デバイスの別の種類は、マウス、トラックボール、又は方向情報及びコマンド選択を１つ又はそれ以上のプロセッサ４１０に伝えてディスプレイ４４０上のカーソルの動きを制御するためのカーソル方向キーのような、カーソル制御デバイス４５０を含むことができる。
【００４３】
また、１つ又はそれ以上のソース及びシンクデバイス４５５は、相互接続部４０５に接続することができる。１つの実施形態では、ソース及びシンクデバイス４５５は、図３に関して説明されたクロックリカバリのための機構の一部又は全てを含むことができる。いくつかの実施形態では、装置４００は、データの受信又は送信のための１つ又はそれ以上のポート４８０を含むことができる。受信又は送信することができるデータは、ＨＤＭＩデータのようなビデオデータ又はオーディオビデオデータを含むことができ、ＨＤＣＰ暗号化データのように暗号化することができる。いくつかの実施形態では、装置４００は、受信又はシンクデバイスであり、データの受信のためのポートを選択するよう動作し、同時にフォアグラウンド処理に対して選択されていないポートで受信されたデータが暗号化されているか否かを決定するために１つ又はそれ以上の他のポートからデータをサンプリングする。装置４００は、更に、無線信号によりデータを受信するための１つ又はそれ以上のアンテナ４５８を含むことができる。また、装置４００は、電源、バッテリ、太陽電池、燃料電池、又は電力を供給又は生成するための他のシステム又は装置を含むことができる電力装置又はシステム４６０を含むことができる。電力装置又はシステム４６０によって供給される電力は、装置４００の要素に必要に応じて分配することができる。
【００４４】
前記の説明では、説明を目的として、本発明の完全な理解を可能にするために多くの特定の詳細内容が示されている。しかしながら、本発明がこれらの特定の詳細内容の一部がなくても実施できることは当業者には明らかであろう。他の場合、公知の構造及び装置は、ブロック図の形式で示されている。図示された構成要素の間の中間的な構造が存在できる。本明細書で説明され図示される構成要素は、説明又は図示されていない付加的な入力又は出力を有することができる。図示された要素又は構成要素は、任意のフィールドの再順序付け又はフィールドサイズの修正を含む異なる構成又は順序で構成することもできる。
【００４５】
本発明は様々な処理を含むことができる。本発明の処理は、ハードウエア構成要素によって実行すること、又は命令によってプログラムされた汎用又は専用プロセッサ又は論理回路に処理を実行させるために使用することができる機械可読命令（例えば、コンピュータ可読命令）に組み入れることができる。代替えとして、処理を、ハードウエア及びソフトウエアの組合せによって実行することができる。
【００４６】
本発明の一部分は、コンピュータプログラム命令を記憶した非一時的機械可読媒体（例えば、非一時的コンピュータ可読媒体）を含むことができ、本発明に従う処理を実行するためにコンピュータ（又は他の電子装置）をプログラムするために使用することができるコンピュータプログラム製品として提供することができる。コンピュータ可読媒体は、限定されるものではないが、フロッピーディスケット、光学ディスク、ＣＤ−ＲＯＭ（コンパクトディスク読出し専用メモリ）、及び磁気光学ディスク、ＲＯＭ（読出し専用メモリ）、ＲＡＭ（ランダムアクセスメモリ）、ＥＰＲＯＭ（消去可能プログラム可能読出し専用メモリ）、ＥＥＰＲＯＭ（電子的消去可能プログラム可能読出し専用メモリ）、磁気又は光学カード、フラッシュメモリ、又は電子命令を格納するのに適した他の種類の媒体／コンピュータ可読媒体を含むことができる。更に、本発明は、コンピュータプログラム製品としてダウンロードすることもでき、プログラムは、遠隔コンピュータから要求側コンピュータに転送することができる。
【００４７】
本方法の大部分は、最も基本的な形式で説明されるが、本発明の基本的な範囲から逸脱することなく、本方法のいずれかに処理を追加することができる、又は方法のいずれの処理を削除することができ、説明されるメッセージのいずれかに情報を追加することができ、又は説明されるメッセージのいずれかの情報を取り去ることができる。多くの更なる修正及び適用を行い得ることは当業者には明らかであろう。特定の実施形態は、本発明を限定するためではなく例示するために提供される。
【００４８】
要素「Ａ」が要素「Ｂ」に結合又は結び付けるとされる場合、要素Ａは、要素Ｂに直接結合することができる、又は例えば要素Ｃを介して間接的に結合することができる。構成要素、特徴、構造、処理、又は特性Ａが、構成要素、特徴、構造、処理、又は特性Ｂを「引き起こす」と明記した時、これは、「Ａ」が「Ｂ」の少なくとも部分的な原因であるが、「Ｂ」を引き起こすことを助ける少なくとも１つの他の構成要素、特徴、構造、処理、又は特性が存在できることを意味する。構成要素、特徴、構造、処理、又は特性が、含むことが「できる」、「できた」、「可能性がある」と指示した場合、その特定の構成要素、特徴、構造、処理、又は特性は、含まれる必要はない。明細書が「ａ（ある）」又は「ａｎ（ある）」要素を示した場合、これは、説明される要素の１つだけが存在することを意味するのではない。
【００４９】
実施形態は、本発明の実施構成又は実施例である。本明細書における「ある実施形態」、「１つの実施形態」、「いくつかの実施形態」、又は「他の実施形態」の言及は、実施形態に関して説明された特定の特徴、構造、又は特性が、少なくともいくつかの実施形態に含まれるが、必ずしも全ての実施形態に含まれないことを意味する。「ある実施形態」、「１つの実施形態」、又は「いくつかの実施形態の」の様々な出現は、必ずしも全て同じ実施形態を示すものではない。本発明の例示的な実施形態の前述の説明では、本発明の様々な特徴が、開示をまとめ更に様々な本発明の態様の１つ又はそれ以上の理解を助ける目的で、本発明の様々な特徴が、単一の実施形態、図、又はその説明に一緒に分類されている場合があることを理解されたい。
【符号の説明】
【００５０】
１００  ソースデバイス
１５０  シンクデバイス
２０５  未知のフォーマットを有するビデオストリーム
２００  クロックリカバリのための機構
２１０  パケット化
２１５  ビデオフォーマット推定
２２０  パケット化ネットワーク
２２５  デパケット化
２３０  クロック再生
２３５  クロック回復ビデオストリーム
【図１Ａ】
0006038046.tif 000002
【図１Ｂ】
0006038046.tif 000003
【図２】
0006038046.tif 000004
【図３】
0006038046.tif 000005
【図４】
0006038046.tif 000006