IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ グーグル インコーポレイテッドの特許一覧

特許7436704ビデオストリームを同期させるための方法、システム、および媒体
<>
  • 特許-ビデオストリームを同期させるための方法、システム、および媒体 図1
  • 特許-ビデオストリームを同期させるための方法、システム、および媒体 図2A
  • 特許-ビデオストリームを同期させるための方法、システム、および媒体 図2B
  • 特許-ビデオストリームを同期させるための方法、システム、および媒体 図3
  • 特許-ビデオストリームを同期させるための方法、システム、および媒体 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-02-13
(45)【発行日】2024-02-22
(54)【発明の名称】ビデオストリームを同期させるための方法、システム、および媒体
(51)【国際特許分類】
   H04N 21/235 20110101AFI20240214BHJP
   H04N 21/234 20110101ALI20240214BHJP
   H04N 21/262 20110101ALI20240214BHJP
【FI】
H04N21/235
H04N21/234
H04N21/262
【請求項の数】 21
(21)【出願番号】P 2022560083
(86)(22)【出願日】2020-04-02
(65)【公表番号】
(43)【公表日】2023-05-15
(86)【国際出願番号】 US2020026306
(87)【国際公開番号】W WO2021201868
(87)【国際公開日】2021-10-07
【審査請求日】2022-11-24
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】ジュエ・ワン
(72)【発明者】
【氏名】ジェームズ・サイア・ジアン・ウォン
【審査官】大西 宏
(56)【参考文献】
【文献】特表2007-528144(JP,A)
【文献】特表2013-521674(JP,A)
【文献】米国特許出願公開第2019/0342594(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 21/00 -21/858
(57)【特許請求の範囲】
【請求項1】
ハードウェアプロセッサによって実行される、ビデオストリームを同期させるための方法であって、
ターゲットビデオストリームおよび基準ビデオストリームを識別するステップであって、前記ターゲットビデオストリームおよび前記基準ビデオストリームは番組の2つの異なる放送である、識別するステップと、
前記ターゲットビデオストリームに対して、フィンガープリントのシーケンスを生成するステップと、
フィンガープリントの前記シーケンスが前記基準ビデオストリーム内に現れる時間シフトを決定するステップと、
前記時間シフトが所定のしきい値を超えるかどうかを決定することによって、前記ターゲットビデオストリームが前記基準ビデオストリームと同期しているかどうかを決定するステップと、
前記ターゲットビデオストリームが前記基準ビデオストリームと同期していないとの決定に応じて、前記ターゲットビデオストリームの表示を含む電子番組ガイドが前記時間シフトに基づいて変更されるようにするステップと
を含む、方法。
【請求項2】
前記ターゲットビデオストリームに関連するオペレータにアラートを送信するステップをさらに含み、前記アラートが前記時間シフトを示す、請求項1に記載の方法。
【請求項3】
前記時間シフトに関連するエラータイプを決定するステップをさらに含む、請求項1または2に記載の方法。
【請求項4】
前記エラータイプが、前記ターゲットビデオストリームが正確な時間に始まらなかったことを示す、請求項3に記載の方法。
【請求項5】
前記エラータイプが、前記ターゲットビデオストリームが正確な時間に終わらないことを示す、請求項3に記載の方法。
【請求項6】
第2のターゲットビデオストリームを識別するステップと、
前記第2のターゲットビデオストリームに対して、フィンガープリントの第2のシーケンスを生成するステップと、
フィンガープリントの前記第2のシーケンスが前記基準ビデオストリームに含まれていないと決定するステップと、
フィンガープリントの前記第2のシーケンスが前記基準ビデオストリームに含まれていないとの決定に応じて、前記第2のターゲットビデオストリームが前記基準ビデオストリームに対応する前記番組の放送ではないと決定するステップと
をさらに含む、請求項1から5のいずれか一項に記載の方法。
【請求項7】
前記ターゲットビデオストリームが、前記ターゲットビデオストリームに関連するメタデータに基づいて識別される、請求項1から6のいずれか一項に記載の方法。
【請求項8】
ビデオストリームを同期させるためのシステムであって、
ハードウェアプロセッサであって、
ターゲットビデオストリームおよび基準ビデオストリームを識別することであって、前記ターゲットビデオストリームおよび前記基準ビデオストリームが番組の2つの異なる放送である、識別することと、
前記ターゲットビデオストリームに対して、フィンガープリントのシーケンスを生成することと、
フィンガープリントの前記シーケンスが前記基準ビデオストリーム内に現れる時間シフトを決定することと、
前記時間シフトが所定のしきい値を超えるかどうかを決定することによって、前記ターゲットビデオストリームが前記基準ビデオストリームと同期しているかどうかを決定することと、
前記ターゲットビデオストリームが前記基準ビデオストリームと同期していないとの決定に応じて、前記ターゲットビデオストリームの表示を含む電子番組ガイドが前記時間シフトに基づいて変更されるようにすることと
を行うように構成されたハードウェアプロセッサ
を備える、システム。
【請求項9】
前記ハードウェアプロセッサが、前記ターゲットビデオストリームに関連するオペレータにアラートを送信するようにさらに構成され、前記アラートが、前記時間シフトを示す、請求項8に記載のシステム。
【請求項10】
前記ハードウェアプロセッサが、前記時間シフトに関連するエラータイプを決定するようにさらに構成される、請求項8または9に記載のシステム。
【請求項11】
前記エラータイプが、前記ターゲットビデオストリームが正確な時間に始まらなかったことを示す、請求項10に記載のシステム。
【請求項12】
前記エラータイプが、前記ターゲットビデオストリームが正確な時間に終わらないことを示す、請求項10に記載のシステム。
【請求項13】
前記ハードウェアプロセッサが、
第2のターゲットビデオストリームを識別することと、
前記第2のターゲットビデオストリームに対して、フィンガープリントの第2のシーケンスを生成することと、
フィンガープリントの前記第2のシーケンスが前記基準ビデオストリームに含まれていないと決定することと、
フィンガープリントの前記第2のシーケンスが前記基準ビデオストリームに含まれていないとの決定に応じて、前記第2のターゲットビデオストリームが前記基準ビデオストリームに対応する前記番組の放送ではないと決定することと
を行うようにさらに構成される、請求項8から12のいずれか一項に記載のシステム。
【請求項14】
前記ターゲットビデオストリームが、前記ターゲットビデオストリームに関連するメタデータに基づいて識別される、請求項8から13のいずれか一項に記載のシステム。
【請求項15】
プロセッサによって実行されると、前記プロセッサにビデオストリームを同期させるための方法を行わせるコンピュータ実行可能命令を含むコンピュータ可読記憶媒体であって、前記方法が、
ターゲットビデオストリームおよび基準ビデオストリームを識別するステップであって、前記ターゲットビデオストリームおよび前記基準ビデオストリームは番組の2つの異なる放送である、識別するステップと、
前記ターゲットビデオストリームに対して、フィンガープリントのシーケンスを生成するステップと、
フィンガープリントの前記シーケンスが前記基準ビデオストリーム内に現れる時間シフトを決定するステップと、
前記時間シフトが所定のしきい値を超えるかどうかを決定することによって、前記ターゲットビデオストリームが前記基準ビデオストリームと同期しているかどうかを決定するステップと、
前記ターゲットビデオストリームが前記基準ビデオストリームと同期していないとの決定に応じて、前記ターゲットビデオストリームの表示を含む電子番組ガイドが前記時間シフトに基づいて変更されるようにするステップと
を含む、コンピュータ可読記憶媒体。
【請求項16】
前記方法が、前記ターゲットビデオストリームに関連するオペレータにアラートを送信するステップをさらに含み、前記アラートが、前記時間シフトを示す、請求項15に記載のコンピュータ可読記憶媒体。
【請求項17】
前記方法が、前記時間シフトに関連するエラータイプを決定するステップをさらに含む、請求項15または16に記載のコンピュータ可読記憶媒体。
【請求項18】
前記エラータイプが、前記ターゲットビデオストリームが正確な時間に始まらなかったことを示す、請求項17に記載のコンピュータ可読記憶媒体。
【請求項19】
前記エラータイプが、前記ターゲットビデオストリームが正確な時間に終わらないことを示す、請求項17に記載のコンピュータ可読記憶媒体。
【請求項20】
前記方法が、
第2のターゲットビデオストリームを識別するステップと、
前記第2のターゲットビデオストリームに対して、フィンガープリントの第2のシーケンスを生成するステップと、
フィンガープリントの前記第2のシーケンスが前記基準ビデオストリームに含まれていないと決定するステップと、
フィンガープリントの前記第2のシーケンスが前記基準ビデオストリームに含まれていないとの決定に応じて、前記第2のターゲットビデオストリームが前記基準ビデオストリームに対応する前記番組の放送ではないと決定するステップと
をさらに含む、請求項15から19のいずれか一項に記載のコンピュータ可読記憶媒体。
【請求項21】
前記ターゲットビデオストリームが、前記ターゲットビデオストリームに関連するメタデータに基づいて識別される、請求項15から20のいずれか一項に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
開示する主題は、ビデオストリームを同期させるための方法、システム、および媒体に関する。
【背景技術】
【0002】
テレビジョンネットワークは、異なるローカル局に番組を放送する場合がある。たとえば、単一の番組が、全国にわたって数百のローカル局に放送される場合がある。いくつかの場合には、特定のローカル局での番組の放送が、たとえば、延長戦に入ったスポーツイベント、ニュース速報イベント、天候遅延などにより、遅延することがある。そのような場合、ローカル局のローカルオペレータは、たとえば、訂正されたタイミング情報で電子番組ガイドを手動で調整するために、番組放送が遅れていることを手動で検出しなければならないことがある。手動で番組遅延を検出し、タイミング情報を調整することは、多くのリソースを要するものである可能性がある。
【発明の概要】
【発明が解決しようとする課題】
【0003】
したがって、ビデオストリームを同期させるための新しい方法、システム、および媒体を提供することが望ましい。
【課題を解決するための手段】
【0004】
ビデオストリームを同期させるための方法、システム、および媒体が提供される。
【0005】
開示する主題のいくつかの実施形態によれば、ビデオストリームを同期させるための方法が提供され、この方法は、ターゲットビデオストリームおよび基準ビデオストリームを識別するステップであって、ターゲットビデオストリームおよび基準ビデオストリームが番組の2つの異なる放送である、識別するステップと、ターゲットビデオストリームに対して、フィンガープリントのシーケンスを生成するステップと、基準ビデオストリーム内にフィンガープリントのシーケンスが現れる時間シフトを決定するステップと、時間シフトが所定のしきい値を超えるかどうかを決定することによって、ターゲットビデオストリームが基準ビデオストリームと同期しているかどうかを決定するステップと、ターゲットビデオストリームが基準ビデオストリームと同期していないとの決定に応じて、ターゲットビデオストリームの表示を含む電子番組ガイドを時間シフトに基づいて変更させるステップとを含む。フィンガープリントのシーケンスは、たとえば、ターゲットビデオストリームのフレームのシーケンスから導出されたフィンガープリントから構成されてもよい。ビデオストリームのフレームの「フィンガープリント」は、たとえば、フレームから抽出されたコンパクトなデジタル記述子であってもよい。いくつかの実施形態では、各フィンガープリントが、フレームのシーケンスのそれぞれのフレームから導出される。
【0006】
いくつかの実施形態では、方法は、ターゲットビデオストリームに関連するオペレータにアラートを送信するステップをさらに含み、アラートは、時間シフトを示す。アラートは、たとえば、時間シフトが検出されたことを示してもよく、場合によっては時間シフトの長さもまた示してもよい。
【0007】
いくつかの実施形態では、方法は、時間シフトに関連するエラータイプを決定するステップをさらに含む。
【0008】
いくつかの実施形態では、エラータイプは、ターゲットビデオストリームが正確な時間に始まらなかったことを示す。
【0009】
いくつかの実施形態では、エラータイプは、ターゲットビデオストリームが正確な時間に終わらないことを示す。
【0010】
いくつかの実施形態では、ターゲットビデオストリームは、ターゲットビデオストリームに関連するメタデータに基づいて識別される。追加または代替として、基準ビデオストリームは、基準ビデオストリームに関連するメタデータに基づいて識別され得る。
【0011】
いくつかの実施形態では、方法は、第2のターゲットビデオストリームを識別するステップと、第2のターゲットビデオストリームに対して、フィンガープリントの第2のシーケンスを生成するステップと、フィンガープリントの第2のシーケンスが基準ビデオストリームに含まれていないと決定するステップと、フィンガープリントの第2のシーケンスが基準ビデオストリームに含まれていないとの決定に応じて、第2のターゲットビデオストリームが基準ビデオストリームに対応する番組の放送ではないと決定するステップとをさらに含む。
【0012】
いくつかの実施形態では、第2のターゲットビデオストリームは、ターゲットビデオストリームに関連するメタデータに基づいて識別される。
【0013】
開示する主題のいくつかの実施形態によれば、ビデオストリームを同期させるためのシステムが提供され、このシステムは、ターゲットビデオストリームおよび基準ビデオストリームを識別することであって、ターゲットビデオストリームおよび基準ビデオストリームが番組の2つの異なる放送である、識別することと、ターゲットビデオストリームに対して、フィンガープリントのシーケンスを生成することと、基準ビデオストリーム内にフィンガープリントのシーケンスが現れる時間シフトを決定することと、時間シフトが所定のしきい値を超えるかどうかを決定することによって、ターゲットビデオストリームが基準ビデオストリームと同期しているかどうかを決定することと、ターゲットビデオストリームが基準ビデオストリームと同期していないとの決定に応じて、ターゲットビデオストリームの表示を含む電子番組ガイドが時間シフトに基づいて変更されるようにすることとを行うように構成されたハードウェアプロセッサを備える。
【0014】
開示する主題のいくつかの実施形態によれば、プロセッサによって実行されると、プロセッサにビデオストリームを同期させるための方法を行わせるコンピュータ実行可能命令を含む、コンピュータ可読媒体が提供され、コンピュータ可読媒体は、非一時的コンピュータ可読媒体であってもよいが、この実施形態は、非一時的コンピュータ可読媒体に限定されず、この方法は、ターゲットビデオストリームおよび基準ビデオストリームを識別するステップであって、ターゲットビデオストリームおよび基準ビデオストリームが番組の2つの異なる放送である、識別するステップと、ターゲットビデオストリームに対して、フィンガープリントのシーケンスを生成するステップと、基準ビデオストリーム内にフィンガープリントのシーケンスが現れる時間シフトを決定するステップと、時間シフトが所定のしきい値を超えるかどうかを決定することによって、ターゲットビデオストリームが基準ビデオストリームと同期しているかどうかを決定するステップと、ターゲットビデオストリームが基準ビデオストリームと同期していないとの決定に応じて、ターゲットビデオストリームの表示を含む電子番組ガイドを時間シフトに基づいて変更させるステップとを含む。
【0015】
開示する主題のいくつかの実施形態によれば、ビデオストリームを同期させるためのシステムが提供され、このシステムは、ターゲットビデオストリームおよび基準ビデオストリームを識別するための手段であって、ターゲットビデオストリームおよび基準ビデオストリームが番組の2つの異なる放送である、識別するための手段と、ターゲットビデオストリームに対して、フィンガープリントのシーケンスを生成するための手段と、基準ビデオストリーム内にフィンガープリントのシーケンスが現れる時間シフトを決定するための手段と、時間シフトが所定のしきい値を超えるかどうかを決定することによって、ターゲットビデオストリームが基準ビデオストリームと同期しているかどうかを決定するための手段と、ターゲットビデオストリームが基準ビデオストリームと同期していないとの決定に応じて、ターゲットビデオストリームの表示を含む電子番組ガイドを時間シフトに基づいて変更させるための手段とを備える。
【0016】
開示する主題のいくつかの実施形態によれば、ビデオストリームを同期させるための方法が提供され、この方法は、ターゲットビデオストリームおよび基準ビデオストリームを識別するステップであって、ターゲットビデオストリームおよび基準ビデオストリームが番組の2つの異なる放送である、識別するステップと、ターゲットビデオストリームに対して、フィンガープリントのシーケンスを生成するステップと、基準ビデオストリーム内にフィンガープリントのシーケンスが現れる時間シフトを決定するステップと、時間シフトが所定のしきい値を超えるかどうかを決定することによって、ターゲットビデオストリームが基準ビデオストリームと同期しているかどうかを決定するステップと、ターゲットビデオストリームが基準ビデオストリームと同期していないとの決定に応じて、ターゲットビデオストリームに関連するオペレータにアラートを送信するステップであって、アラートが時間シフトを示す、送信するステップとを含む。
【0017】
開示する主題のいくつかの実施形態によれば、方法が提供され、この方法は、ターゲットビデオストリームおよび基準ビデオストリームを識別するステップと、ターゲットビデオストリームに対して、フィンガープリントのシーケンスを生成するステップと、フィンガープリントのシーケンスが基準ビデオストリームに含まれていないと決定するステップと、フィンガープリントのシーケンスが基準ビデオストリームに含まれていないとの決定に応じて、ターゲットビデオストリームが基準ビデオストリームに対応する番組の放送ではないと決定するステップとを含む。
【0018】
開示する主題のいくつかの実施形態によれば、非一時的コンピュータ可読媒体であってもよいが、この実施形態は、非一時的コンピュータ可読媒体に限定されない、コンピュータ可読媒体が、プロセッサによって実行されると、プロセッサに本明細書で説明するいずれかの実施形態または実装形態による方法を行わせるコンピュータ実行可能命令を含む。
【0019】
開示する主題のいくつかの実施形態によれば、ビデオストリームを同期させるためのシステムが提供され、このシステムは、本明細書で説明するいずれかの実施形態または実装形態による方法を行うように構成されたハードウェアプロセッサを備える。
【0020】
本開示の態様は、したがって、ターゲットビデオシーケンスのフレームのシーケンスから導出されるフィンガープリントのシーケンスの分析によって、ターゲットビデオストリームが基準ビデオストリームと同期しているかどうかを決定することを可能にする。フィンガープリントのシーケンスを導出するために使用されるフレームのシーケンスは、ターゲットビデオシーケンスに含まれるものよりもはるかに少ないフレームを含む場合があり、したがってターゲットビデオストリームが基準ビデオストリームと同期しているかどうかの決定は計算効率が良い。さらに、フィンガープリントのシーケンスを導出するために使用されるフレームのシーケンスが、ターゲットビデオストリームの初期ポイントで発生するフレームから選択される場合、ターゲットビデオストリームが基準ビデオストリームと同期しているかどうかの決定は、ターゲットビデオストリームの送信の初期段階で行うことができる。これは、ターゲットビデオストリームが基準ビデオストリームと同期しているかどうかをターゲットビデオストリームの送信の初期段階で知ることを可能にし、それによってオペレータ、ターゲットビデオストリームの受信者、および/またはデバイスもしくはエンティティが、ターゲットビデオストリームの送信が完了する前に、ターゲットビデオストリームが基準ビデオストリームと正確に同期していないことを通知されることを可能にする。
【0021】
開示する主題の様々な目的、特徴、および利点は、同様の参照番号が同様の要素を特定する以下の図面に関連して検討されると、開示する主題の以下の詳細な説明を参照してより完全に理解され得る。
【図面の簡単な説明】
【0022】
図1】開示する主題のいくつかの実施形態による、ビデオストリームを同期させるためのプロセスの説明のための例を示す図である。
図2A】開示する主題のいくつかの実施形態による、ビデオストリームを同期させる概略図の説明のための例を示す図である。
図2B】開示する主題のいくつかの実施形態による、ビデオストリームが時間同期していると考えられるかどうかを決定するためにターゲットビデオストリームおよび基準ビデオストリームを比較する説明のための例を示す図である。
図3】開示する主題のいくつかの実施形態による、ビデオストリームを同期させるための本明細書で説明する機構の実装形態に適した説明のためのシステムの概略図である。
図4】開示する主題のいくつかの実施形態による、図3のサーバおよび/またはユーザデバイスにおいて使用され得るハードウェアの詳細な例を示す図である。
【発明を実施するための形態】
【0023】
様々な実施形態に従って、ビデオストリームを同期させるための機構(方法、システム、および媒体を含み得る)が提供される。
【0024】
いくつかの実施形態では、本明細書で説明する機構は、ショーまたは番組(たとえば、テレビショー、映画、および/または任意の他の適切なタイプのショーまたは番組)の放送に各々対応する2つのビデオストリームが、時間同期しているかどうかを決定することができる。たとえば、いくつかの実施形態では、機構は、ターゲットビデオストリーム(たとえば、特定のローカル局のショーの放映に対応する)が、同じショーに対応する基準ビデオストリームに時間同期しているかどうかを決定することができる。いくつかの実施形態では、ターゲットビデオストリームが基準ビデオストリームに時間同期していないとの決定に応じて、機構は任意の適切なアクションを行うことができる。
【0025】
たとえば、いくつかの実施形態では、機構は、アラートを生成することができ、アラートは、ターゲットビデオストリームを提供しているローカル局のオペレータに送信することができる。別の例として、いくつかの実施形態では、機構は、ターゲットビデオストリームを含む電子番組ガイドが変更されるようにすることができる。たとえば、機構が、ターゲットビデオストリームは基準ビデオストリームに対して遅れているのでターゲットビデオストリームは基準ビデオストリームに同期していないと決定する事例では、機構は、電子番組ガイドがターゲットビデオストリームの正確な開始時間、ターゲットビデオストリームの更新された終了時間を示すように変更される、かつ/または任意の他の適切な方法で更新されるようにすることができる。
【0026】
いくつかの実施形態では、機構は、任意の適切な技法または技法の組合せを使用して、ターゲットビデオストリームが基準ビデオストリームに時間同期しているかどうかを決定することができる。たとえば、いくつかの実施形態では、機構は、ターゲットビデオストリームのフィンガープリント(たとえば、ビデオフィンガープリント、オーディオフィンガープリント、および/または任意の他の適切なフィンガープリント)のシーケンスを識別することができる。この例を続けると、いくつかの実施形態では、機構は、フィンガープリントのシーケンスが基準ビデオストリームに現れる時間シフトを決定することができる。この例をさらに続けると、いくつかの実施形態では、機構は、時間シフトに基づいて、ターゲットビデオストリームが基準ビデオストリームと同期しているかどうかを決定することができる。より詳細な例として、いくつかの実施形態では、機構は、時間シフトが所定のしきい値未満であるとの決定に応じて、ターゲットビデオストリームが基準ビデオストリームと同期していると決定することができる。反対に、いくつかの実施形態では、機構は、時間シフトが所定のしきい値を超えるとの決定に応じて、ターゲットビデオストリームが基準ビデオストリームと同期していないと決定することができる。
【0027】
図1を見ると、開示する主題のいくつかの実施形態による、ビデオストリームを同期させるためのプロセスの説明のための例100が示されている。いくつかの実施形態では、プロセス100は、異なるローカル局に放送されるショーまたは番組の放映に対応する異なるビデオストリームを記憶するサーバなどの、任意の適切なデバイスによって実行され得る。
【0028】
102において、プロセス100は、番組の放送である基準ビデオストリームおよびターゲットビデオストリームを識別することによって開始することができる。いくつかの実施形態では、プロセス100は、基準ビデオストリームおよびターゲットビデオストリームを任意の適切な方法で識別することができる。いくつかの実施形態では、基準ビデオストリームおよびターゲットビデオストリームは、各々、テレビショー、映画、および/または任意の他の適切なタイプのショーなどの、任意の適切なタイプのショーまたは番組の放送であり得ることに留意されたい。加えて、いくつかの実施形態では、基準ビデオストリームは、特定のローカル局に放送されるビデオストリーム、ショーのランダムに選択される放送、および/または任意の他の適切な基準ビデオストリームなどの、基準として使用されることになる任意の適切なビデオストリームであることがある。
【0029】
いくつかの実施形態では、プロセス100は、基準ビデオストリームおよび/またはターゲットビデオストリームを、各ビデオストリームに関連するメタデータに基づいて識別することができる。いくつかの実施形態では、メタデータは、ビデオストリームに対応するショーまたは番組の名前などの、任意の適切な情報を示すことができる。たとえば、いくつかの実施形態では、メタデータは、テレビショーの名前、特定のテレビショーのエピソード番号もしくは名前、および/または映画の名前を示すことができる。いくつかの実施形態では、メタデータは、番組識別子、ビデオストリームが放送される予定のチャンネルの識別子、ビデオストリームが放送される予定の地理的領域の識別子、ビデオストリームが放送される予定のタイムスロット、および/または任意の他の適切な情報などの、任意の他の適切な情報を示すことができる。いくつかの実施形態では、プロセス100は、ターゲットビデオストリームが基準ビデオストリームと同じショーまたは番組に対応することを示すメタデータに基づいてターゲットビデオストリームを識別することができる。
【0030】
104において、プロセス100は、ターゲットビデオストリームのフレームのシーケンス(グループ)を識別するために、ターゲットビデオストリームをサンプリングすることができる。いくつかの実施形態では、プロセス100は、任意の適切な頻度(たとえば、毎秒1回、毎秒2回、2秒に1回、および/または任意の他の適切な頻度)でターゲットビデオストリームをサンプリングすることができる。いくつかの実施形態では、プロセス100は、特定の頻度でターゲットビデオストリームをサンプリングすることができ、各サンプリング時間ポイントに対応するターゲットビデオストリームのフレームを識別することができる。
【0031】
106において、プロセス100は、ターゲットビデオストリームのフレームシーケンスについて、フィンガープリントシーケンスを識別することができる。いくつかの実施形態では、フィンガープリントシーケンスは、フレームシーケンス中のフレームに対応するビデオコンテンツの任意の適切な数のビデオフィンガープリントを含むことができる。追加または代替として、いくつかの実施形態では、フィンガープリントシーケンスは、フレームシーケンス中のフレームに対応するオーディオコンテンツの任意の適切な数のオーディオフィンガープリントを含むことができる。いくつかの実施形態では、プロセス100は、任意の適切な方法でフィンガープリントシーケンスを識別することができる。たとえば、いくつかの実施形態では、プロセス100は、フィンガープリントシーケンスを生成するために、任意の適切なビデオフィンガープリンティングおよび/またはオーディオフィンガープリンティングアルゴリズムを使用することができる。別の例として、いくつかの実施形態では、プロセス100は、任意の適切なエンティティまたはデータベースから、フレームシーケンスに対応するフィンガープリントシーケンスを検索することができる。いくつかの実施形態では、フレームシーケンスが、ターゲットビデオストリームの任意の適切な数(たとえば、1、2、5、10、20、および/または任意の他の適切な数)のフレームを含むことができ、フレームシーケンス中の各フレームは、任意の適切な数のフィンガープリント(たとえば、フレームシーケンス中のフレームごとに1つのフィンガープリント、フレームシーケンス中のフレームごとに2つのフィンガープリント(たとえば、ビデオフィンガープリントおよびオーディオフィンガープリント、2つの異なるビデオフィンガープリント表現など)、ならびに/または任意の他の適切な数のフィンガープリント)に関連付けられ得ることに留意されたい。加えて、いくつかの実施形態では、異なるフレームに対して異なる数のフィンガープリントが識別されてもよいことに留意されたい。たとえば、いくつかの実施形態では、フレームシーケンス中の第1のフレームが、フィンガープリントシーケンスの2つのフィンガープリントに関連付けられることがあり、フレームシーケンス中の第2のフレームが、フィンガープリントシーケンスの1つのフィンガープリントに関連付けられることがある。さらに、いくつかの実施形態では、フレームシーケンス中のフレームが、連続したフレームのシーケンス(たとえば、フレーム1、フレーム2、……フレームN)であることがある。代替的に、いくつかの実施形態では、フレームシーケンス中のフレームが、連続していないことがあり(たとえば、フレーム1、フレーム5、フレーム6、……フレームN)、任意の適切なフレームがフレームシーケンス中でスキップされる。
【0032】
図2Aを見ると、基準ビデオストリーム202およびターゲットビデオストリーム204の一例が、開示する主題のいくつかの実施形態によって示されている。図示のように、ターゲットビデオストリーム204は、フィンガープリントシーケンス206があるフレームを含む。フィンガープリントシーケンス206に3つのフィンガープリントが示されているが、いくつかの実施形態では、任意の適切な数のフィンガープリント(たとえば、1、2、3、5、10、および/または任意の他の適切な数)、任意の適切なタイプのフィンガープリント(たとえば、ビデオフィンガープリントおよび/またはオーディオフィンガープリント)がフィンガープリントシーケンス206に含まれ得ることに留意されたい。さらに、いくつかの実施形態では、フィンガープリントシーケンス206の第1のフィンガープリントは、対応するチェックポイント210(フィンガープリントが発生するシーケンス中の時間もしくはポイント、または同期がチェックされるシーケンス中の時間もしくはポイントを定義することができる)に関連付けられ得る。
【0033】
再び図1を参照すると、108において、ターゲットビデオストリームの各フィンガープリントシーケンスに対して、プロセス100は、フィンガープリントシーケンスが基準ビデオストリームに現れる時間シフトを決定することができる。図2Aを参照すると、時間シフト216が、ターゲットビデオストリーム204のフィンガープリントシーケンス206のチェックポイント210と、基準ビデオストリーム202のフィンガープリントシーケンス208の対応する第1のフィンガープリントとの間の持続時間を示すことができる。
【0034】
再び図1を参照すると、いくつかの実施形態では、プロセス100は、ターゲットビデオのフィンガープリントシーケンスが基準ビデオストリームに現れる時間シフトを任意の適切な方法で決定することができる。たとえば、いくつかの実施形態では、プロセス100は、基準ビデオストリーム内のフィンガープリントシーケンス、およびフィンガープリントシーケンスが基準ビデオストリーム内に現れる基準ビデオストリーム内の時間位置を識別するために、ターゲットビデオストリームおよび基準ビデオストリームのフィンガープリントシーケンスの相互相関を実行することができる。
【0035】
いくつかの実施形態では、プロセス100は、基準ビデオストリームの任意の適切な検索ウィンドウ内のターゲットビデオストリームのフィンガープリントシーケンスを検索することができる。たとえば、図2Aを参照すると、いくつかの実施形態では、プロセス100は、チェックポイント210に先行する時間ウィンドウ212上で基準ビデオストリーム202を検索することができる。別の例として、いくつかの実施形態では、プロセス100は、代替または追加として、チェックポイント210の後にある時間ウィンドウ214上で基準ビデオストリーム202を検索することができる。いくつかの実施形態では、時間ウィンドウ212および時間ウィンドウ214は、同じ継続時間であり得ることに留意されたい。代替的に、いくつかの実施形態では、時間ウィンドウ212および時間ウィンドウ214は、異なる継続時間であり得る。いくつかの実施形態では、時間ウィンドウ212および/または時間ウィンドウ214が各々、任意の適切な継続時間(たとえば、5秒、10秒、30秒、1分、5分、10分、および/または任意の他の適切な継続時間)であり得ることに留意されたい。
【0036】
いくつかの実施形態では、プロセス100は、ターゲットビデオストリームのフィンガープリントシーケンスが基準ビデオストリームに現れないと決定し得ることに留意されたい。いくつかの実施形態では、フィンガープリントシーケンスが基準ビデオストリームに現れないとの決定に応じて、プロセス100は、基準ビデオストリームがターゲットビデオストリームとは異なる番組に対応すると決定することができる。
【0037】
110において、プロセス100は、ターゲットビデオストリームは基準ビデオストリームに時間同期しているかどうかを決定することができる。いくつかの実施形態では、プロセス100は、任意の適切な技法を使用して、ターゲットビデオストリームが基準ビデオストリームに時間同期しているかどうかを決定することができる。たとえば、いくつかの実施形態では、プロセス100は、108において決定された時間シフトが所定のしきい値継続時間未満である(たとえば、5秒未満、10秒未満、1分未満、2分未満、および/または任意の他の適切な持続時間)との決定に応じて、ターゲットビデオストリームが基準ビデオストリームに時間同期していると決定することができる。より詳細な例では、図2Bは、ターゲットビデオストリームV1にわたる同期外れの長さが所定のしきい値未満であるので、ターゲットビデオストリームV1が基準ビデオストリームV0と同期していることを示す。別の例として、いくつかの実施形態では、プロセス100は、108において決定された時間シフトが所定のしきい値継続時間を超えるとの決定に応じて、ターゲットビデオストリームが基準ビデオストリームに時間同期していないと決定することができる。
【0038】
いくつかの実施形態では、プロセス100は、基準ビデオストリームがターゲットビデオストリームのフィンガープリントシーケンスを含んでいないとの決定に応じて、ターゲットビデオストリームが基準ビデオストリームに時間同期していないと決定できることに留意されたい。
【0039】
110において、プロセス100が、ターゲットビデオストリームが基準ビデオストリームに時間同期していると決定する(110において「yes」)場合、プロセス100は116において終了することができる。
【0040】
110において、プロセス100が、ターゲットビデオストリームが基準ビデオストリームに時間同期していないと決定する(110において「no」)場合、プロセス100は112において同期情報を決定することができる。いくつかの実施形態では、同期情報は、基準ビデオストリームとターゲットビデオストリームとの間に同期がないことに関連するエラータイプなどの、任意の適切な情報を含むことができる。
【0041】
たとえば、いくつかの実施形態では、プロセス100がターゲットビデオストリームのフィンガープリントシーケンスが基準ビデオストリームに見つからなかったと決定した事例では、プロセス100は、エラータイプは基準ビデオストリームが不正確なコンテンツであることと決定することができる。より詳細な例では、図2Bに示すように、プロセス100が、ターゲットビデオストリームV2のフィンガープリントシーケンスが基準ビデオストリームV0に見つからなかった、またはターゲットビデオストリームV2の特定の量よりも多くの量が、基準ビデオストリームV0と同期していないことがわかったと決定する事例では、プロセス100は、基準ビデオストリームV2は不正確に識別され、異なるコンテンツアイテムが提供されていると決定することができる。
【0042】
別の例では、フィンガープリントシーケンスがターゲットビデオストリームに見つかる時間ポイントに先行する時間位置で基準ビデオストリームにフィンガープリントシーケンスが見つかった事例では、プロセス100は、エラータイプはターゲットビデオストリームの不正確な開始時間である(または一般的には、ターゲットビデオストリームに関連する電子番組ガイド時間が不正確である)と決定することができる。より詳細な例では、図2Bに示すように、プロセス100が、ターゲットビデオストリームV3内のコンテンツの特定の部分が基準ビデオストリームV0と同期していないことがわかる(たとえば、特定の量の非同期コンテンツがターゲットビデオストリームV3の開始部分内にある)と決定する事例では、プロセス100は、基準ビデオストリームが不正確な開始時間を有すると決定することができる。いくつかの実施形態では、プロセス100が非同期コンテンツの特定の部分(たとえば、75%)が、ビデオコンテンツアイテムの設計された開始時間から特定の時間量(たとえば、最初の5分、最初の10分など)以内にあると決定したことに応じて、プロセス100は、ターゲットビデオストリームV3が不正確な開始時間を有すると決定することができる。不正確な開始時間は、たとえば、前のコンテンツアイテムが時間延長された場合の自然な事象推移または予測できない状態の存在によるものである可能性があることに留意されたい。
【0043】
また別の例として、フィンガープリントシーケンスがターゲットビデオストリームに見つかる時間ポイントの後の時間位置で基準ビデオストリームにフィンガープリントシーケンスが見つかった事例では、プロセス100は、エラータイプはターゲットビデオストリームの不正確な終了時間である(または一般的には、ターゲットビデオストリームに関連する電子番組ガイド時間が不正確である)と決定することができる。より詳細な例では、図2Bに示すように、プロセス100が、ターゲットビデオストリームV4内のコンテンツの特定の部分が基準ビデオストリームV0と同期していないことがわかる(たとえば、特定の量の非同期コンテンツがターゲットビデオストリームV4の終了部分内にある)と決定する事例では、プロセス100は、基準ビデオストリームが不正確な終了時間を有すると決定することができる。いくつかの実施形態では、プロセス100が非同期コンテンツの特定の部分(たとえば、75%)が、ビデオコンテンツアイテムの設計された開始時間から特定の時間量(たとえば、最後の5分、最後の10分など)以内にあると決定したことに応じて、プロセス100は、基準ビデオストリームV4が不正確な終了時間を有すると決定することができる。
【0044】
114において、プロセス100は、アラートを送信することができる。いくつかの実施形態では、アラートは、108において決定された時間シフトの継続時間、エラータイプ(たとえば、112に関連して上記で説明したものなど)、および/または任意の他の適切な情報などの、任意の適切な情報を含むことができる。いくつかの実施形態では、プロセス100は、基準ビデオストリームに時間同期していないターゲットビデオストリームに関連するオペレータ(たとえば、ローカル局のオペレータ、および/または任意の他の適切なオペレータ)などの、任意の適切なユーザまたはエンティティにアラートを送信することができる。いくつかの実施形態では、プロセス100は、任意の適切な方法でアラートを送信することができる。たとえば、いくつかの実施形態では、プロセス100は、アラートの受信者に関連するユーザアカウントにメッセージを送信することによって、アラートを送信することができる。いくつかの実施形態では、ブロック114は省略され得ることに留意されたい。たとえば、いくつかの実施形態では、プロセス100がブロック115に関して以下で説明するように電子番組ガイド(EPG)を直接更新する事例では、プロセス114は省略され得る。
【0045】
115において、いくつかの実施形態では、プロセス100は、ターゲットビデオストリームの表示を含む電子番組ガイドを変更することができる。たとえば、ターゲットビデオストリームは特定の継続時間だけ時間シフトされているので(たとえば、ターゲットビデオストリームが基準ビデオストリームよりも遅れて始まったので、および/または任意の他の適切な理由で)、プロセス100が、ターゲットビデオストリームは基準ビデオストリームと時間同期していないと決定する事例では、プロセス100は、電子番組ガイドはターゲットビデオストリームの正確な開始時間および/またはターゲットビデオストリームの更新された終了時間を示すように変更されなければならないと決定することができる。より詳細な例として、いくつかの実施形態では、電子番組ガイドは、108において決定された時間シフトに基づいて正確な開始時間を示すように変更され得る、かつ/または108において決定された時間シフトに基づいて更新された終了時間を示すように変更され得る。いくつかの実施形態では、特定のターゲットビデオストリームに関連する電子番組ガイドが、特定のターゲットビデオストリームに関連するオペレータによる手動入力なしに、自動的に更新され得ることに留意されたい。
【0046】
加えて、いくつかの実施形態では、プロセス100は、複数のターゲットビデオストリームのいずれかが基準ビデオストリームに時間同期していないかどうかを決定するために複数のターゲットビデオストリームを分析できることに留意されたい。たとえば、いくつかの実施形態では、複数のターゲットビデオストリームは、特定のショーまたは番組の異なる放送を含むことができる。いくつかの実施形態では、プロセス100は、(たとえば、104~108に関して上記で説明した技法を使用して)基準ビデオストリームに対して各ターゲットビデオストリームに対応する時間シフトを識別することができる。いくつかの実施形態では、プロセス100は、時間シフトについて任意の適切な分析を行う、かつ/または任意の適切なアクションを行うことができる。たとえば、いくつかの実施形態では、プロセス100は、(たとえば、114に関して上記で説明したように)所定のしきい値を超える時間シフトに関連するいずれかのターゲットビデオストリームに関連するオペレータにアラートを送信することができる。
【0047】
別の例として、いくつかの実施形態では、プロセス100は、複数のターゲットビデオストリームについて識別された時間シフトをクラスタリングすることができ、クラスタリングに基づいて外れ値時間シフトに関連するターゲットビデオストリームを識別することができる。より詳細な例として、いくつかの実施形態では、プロセス100は、基準ビデオストリームに時間同期していないターゲットビデオストリームのサブセットを識別するために、対応する数のターゲットビデオストリーム(たとえば、50のターゲットビデオストリーム、100のターゲットビデオストリーム、500のターゲットビデオストリーム、および/または他の適切な数)に関連する任意の適切な数の時間シフトをクラスタリングすることができる。特定の例として、いくつかの実施形態では、プロセス100は、同様の時間シフトを有するターゲットビデオストリームのサブセットに対応するクラスタを識別することができ、クラスタが、サブセットに含まれない他のターゲットビデオストリームに対して基準ビデオストリームへの時間同期の外れ値を表すと決定することができる。この例を続けると、いくつかの実施形態では、プロセス100は、EPGタイミング情報が更新されるようにすること、ターゲットビデオストリームのサブセットにおいて各ターゲットビデオストリームに関連するオペレータに通知もしくはアラートを送信すること、および/または任意の他の適切なアクションを行うことなど、ターゲットビデオストリームのサブセットにおいてターゲットビデオストリームに関して、任意の適切なアクションがとられるようにすることができる。
【0048】
図3を見ると、開示される主題のいくつかの実施形態に従って使用され得る、ビデオストリームを同期させるためのハードウェアの説明のための例300が示されている。示されるように、ハードウェア300は、サーバ302、通信ネットワーク304、ならびに/または、ユーザデバイス308および310など、1つもしくは複数のユーザデバイス306を含み得る。
【0049】
サーバ302は、情報、データ、プログラム、メディアコンテンツ、および/または任意の他の適切なコンテンツを記憶するための任意の適切なサーバであり得る。いくつかの実施形態では、サーバ302は、任意の適切な機能を実施し得る。たとえば、いくつかの実施形態では、サーバ302は、図1に関して上記で示し、説明したように、ターゲットビデオストリームは基準ビデオストリームと同期していないことを検出することができる。別の例として、いくつかの実施形態では、サーバ302は、ターゲットビデオストリームが基準ビデオストリームと同期していないとの決定に応じて、図1に関して上記で示し、説明したように、ターゲットビデオストリームに関連するオペレータもしくはローカル局にアラートを送信する、電子番組ガイドが変更されるようにする、および/または任意の他の適切なアクションを行うなど、任意の適切なアクションを行うことができる。
【0050】
通信ネットワーク304は、いくつかの実施形態では、1つまたは複数のワイヤードおよび/またはワイヤレスネットワークの任意の適切な組合せであり得る。たとえば、通信ネットワーク304は、インターネット、イントラネット、ワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN)、ワイヤレスネットワーク、デジタル加入者線(DSL)ネットワーク、フレームリレーネットワーク、非同期トランスファーモード(ATM)ネットワーク、仮想プライベートネットワーク(VPN)、および/または任意の他の適切な通信ネットワークのうちの任意の1つまたは複数を含み得る。ユーザデバイス306は、1つまたは複数の通信リンク(たとえば、通信リンク314)を介してサーバ302にリンクされ得る通信ネットワーク304に、1つまたは複数の通信リンク(たとえば、通信リンク312)によって接続され得る。通信リンクは、ネットワークリンク、ダイヤルアップリンク、ワイヤレスリンク、ハードワイヤードリンク、任意の他の適切な通信リンク、またはそのようなリンクの任意の適切な組合せなどの、ユーザデバイス306とサーバ302との間でデータを通信するのに適した任意の通信リンクであり得る。
【0051】
ユーザデバイス306は、メディアコンテンツを提示するのに適した任意の1つまたは複数のユーザデバイスを含み得る。いくつかの実施形態では、ユーザデバイス306は、モバイルフォン、タブレットコンピュータ、ウェアラブルコンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、スマートテレビジョン、メディアプレーヤ、ストリーミングメディアプレーヤ、ゲームコンソール、車両情報および/もしくはエンターテインメントシステム、ならびに/または任意の他の適切なタイプのユーザデバイスなど、任意の適切なタイプのユーザデバイスも含み得る。
【0052】
サーバ302は1つのデバイスとして示されているが、サーバ302によって実行される機能は、いくつかの実施形態では任意の適切な数のデバイスを使用して実行され得る。たとえば、いくつかの実施形態では、複数のデバイスが、サーバ302によって実行される機能を実装するために使用され得る。
【0053】
図を過剰に複雑にするのを避けるために、2つのユーザデバイス308および310が図3に示されているが、いくつかの実施形態では、任意の適切な数のユーザデバイス、および/または任意の適切なタイプのユーザデバイスが使用され得る。
【0054】
いくつかの実施形態では、サーバ302およびユーザデバイス306は、任意の適切なハードウェアを使用して実装され得る。たとえば、いくつかの実施形態では、デバイス302および306は、任意の適切な汎用コンピュータまたは専用コンピュータを使用して実装され得る。たとえば、モバイルフォンは、専用コンピュータを使用して実装され得る。任意のそのような汎用コンピュータまたは専用コンピュータが、任意の適切なハードウェアを含み得る。たとえば、図4の例示的なハードウェア400において示すように、そのようなハードウェアは、ハードウェアプロセッサ402、メモリおよび/またはストレージ404、入力デバイスコントローラ406、入力デバイス408、ディスプレイ/オーディオドライバ410、ディスプレイおよびオーディオ出力回路412、通信インターフェース414、アンテナ416、ならびにバス418を含み得る。
【0055】
ハードウェアプロセッサ402は、いくつかの実施形態では、マイクロプロセッサ、マイクロコントローラ、デジタルシグナルプロセッサ、専用論理回路、および/または、汎用コンピュータもしくは専用コンピュータの機能を制御するための任意の他の適切な回路などの、任意の適切なハードウェアプロセッサを含み得る。いくつかの実施形態では、ハードウェアプロセッサ402は、サーバ302などのサーバのメモリおよび/またはストレージに記憶されるサーバプログラムによって制御され得る。いくつかの実施形態では、ハードウェアプロセッサ402は、ユーザデバイス306のメモリおよび/またはストレージ404に記憶されているコンピュータプログラムによって制御され得る。
【0056】
メモリおよび/またはストレージ404は、いくつかの実施形態では、プログラム、データ、および/または任意の他の適切な情報を記憶するための、任意の適切なメモリおよび/またはストレージであり得る。たとえば、メモリおよび/またはストレージ404は、ランダムアクセスメモリ、読取り専用メモリ、フラッシュメモリ、ハードディスクストレージ、光学メディア、および/または任意の他の適切なメモリを含み得る。
【0057】
入力デバイスコントローラ406は、いくつかの実施形態では、1つまたは複数の入力デバイス408を制御してそれらから入力を受けるための任意の適切な回路であり得る。たとえば、入力デバイスコントローラ406は、タッチスクリーンから、キーボードから、1つまたは複数のボタンから、音声認識回路から、マイクロフォンから、カメラから、光学センサから、加速度計から、温度センサから、近距離センサから、圧力センサから、エンコーダから、および/または任意の他のタイプの入力デバイスから、入力を受けるための回路であり得る。
【0058】
ディスプレイ/オーディオドライバ410は、いくつかの実施形態では、1つまたは複数のディスプレイ/オーディオ出力デバイス412を制御してそれへの出力を駆動するための任意の適切な回路であり得る。たとえば、ディスプレイ/オーディオドライバ410は、タッチスクリーン、フラットパネルディスプレイ、陰極線管ディスプレイ、プロジェクタ、1つまたは複数のスピーカ、ならびに/または任意の他の適切なディスプレイおよび/もしくは提示デバイスを駆動するための回路であり得る。
【0059】
通信インターフェース414は、1つまたは複数の通信ネットワーク(たとえば、コンピュータネットワーク304)とインターフェースをとるための任意の適切な回路であり得る。たとえば、インターフェース414は、ネットワークインターフェースカード回路、ワイヤレス通信回路、および/または任意の他の適切なタイプの通信ネットワーク回路を含み得る。
【0060】
アンテナ416は、いくつかの実施形態では、通信ネットワーク(たとえば、通信ネットワーク304)とワイヤレスに通信するための任意の適切な1つまたは複数のアンテナであり得る。いくつかの実施形態では、アンテナ416は省略され得る。
【0061】
バス418は、いくつかの実施形態では、2つ以上の構成要素402、404、406、410、および414の間で通信するための任意の適切な機構であり得る。
【0062】
いくつかの実施形態に従って、任意の他の適切な構成要素がハードウェア400に含まれ得る。
【0063】
本明細書で説明するシステムおよび方法がユーザについての個人情報を収集する、または個人情報を利用する場合がある状況において、ユーザは、プログラムまたは機能がユーザ情報(たとえば、ユーザのソーシャルネットワーク、社会的なアクションもしくはアクティビティ、職業、ユーザの選好、またはユーザの現在のロケーションについての情報)を収集するかどうかを制御するための、または、ユーザにより関連があり得るコンテンツサーバからコンテンツを受信するかどうか、もしくはどのように受信するかを制御するための、機会を与えられ得る。加えて、いくつかのデータは、個人を識別できる情報が除去されるように、記憶または使用される前に1つまたは複数の方法で扱われ得る。たとえば、ユーザの識別情報は、個人を識別できる情報がユーザについて決定できないように扱われてもよく、またはユーザの地理的位置は、ユーザの具体的な位置を決定できないように、位置情報が取得される場合に(たとえば、都市、ZIPコード、もしくは州のレベルなどに)一般化されてもよい。ユーザは、ユーザについての情報を追加、削除、または変更することができる。したがって、ユーザは、情報がどのようにユーザについて収集され、サーバによって使用されるかを制御することができる。
【0064】
いくつかの実施形態では、図1のプロセスの上記で説明したブロックの少なくともいくつかは、図に示し、図に関連して説明する順序およびシーケンスに限定されない、任意の順序またはシーケンスで実行または実施され得る。また、図1の上記のブロックのいくつかは、適切な場合には実質的に同時に、またはレイテンシおよび処理時間を減らすために並行して実行または実施され得る。追加または代替として、図1のプロセスの上記で説明したブロックのいくつかは省略され得る。
【0065】
いくつかの実施形態では、本明細書における機能および/またはプロセスを実施するための命令を記憶するために、任意の適切なコンピュータ可読媒体が使用され得る。たとえば、いくつかの実施形態では、コンピュータ可読媒体は、一時的または非一時的であり得る。たとえば、非一時的コンピュータ可読媒体は、非一時的な形態の磁気媒体(ハードディスク、フロッピーディスク、および/もしくは任意の他の適切な磁気媒体など)、非一時的な形態の光学媒体(コンパクトディスク、デジタルビデオディスク、ブルーレイディスク、および/もしくは任意の他の適切な光学媒体など)、非一時的な形態の半導体媒体(フラッシュメモリ、電気的プログラム可能読取り専用メモリ(EPROM)、電気的消去可能プログラム可能読取り専用メモリ(EEPROM)、および/もしくは任意の他の適切な半導体媒体など)、一過性でなく、もしくは送信の間に見かけ上の永続性を失うことのない任意の適切な媒体、ならびに/または任意の適切な有形媒体などの媒体を含み得る。別の例として、一時的コンピュータ可読媒体は、ネットワーク上の、配線中の、導体中の、光ファイバ中の、回路中の、一過性であり、また送信の間にあらゆる見かけ上の永続性を失う任意の適切な媒体中の、および/または任意の適切な非有形媒体中の信号を含み得る。
【0066】
したがって、ビデオストリームを同期させるための方法、システム、および媒体が提供される。
【0067】
本発明は、前述の説明のための実施形態において説明され示されているが、本開示は、単なる例として行われるものであり、本発明の実装形態の詳細における多数の変更が、以下の特許請求の範囲だけによって限定される本発明の趣旨および範囲から逸脱することなく行われ得ることが理解される。開示される実施形態の特徴は、様々な方法で組み合わされて並べ替えられ得る。
【符号の説明】
【0068】
300 ハードウェア
302 サーバ
304 通信ネットワーク
306 ユーザデバイス
308 ユーザデバイス
310 ユーザデバイス
312 通信リンク
314 通信リンク
400 ハードウェア
402 ハードウェアプロセッサ
404 メモリおよび/またはストレージ
406 入力デバイスコントローラ
408 入力デバイス
410 ディスプレイ/オーディオドライバ
412 ディスプレイおよびオーディオ出力回路
414 通信インターフェース
416 アンテナ
418 バス
図1
図2A
図2B
図3
図4