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

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

▶ ビジオ,インコーポレイテッドの特許一覧

特表2024-534076埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法
<>
  • 特表-埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法 図1
  • 特表-埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法 図2
  • 特表-埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法 図3
  • 特表-埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法 図4
  • 特表-埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法 図5
  • 特表-埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法 図6
  • 特表-埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法 図7
  • 特表-埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法 図8
  • 特表-埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法 図9
  • 特表-埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法 図10A
  • 特表-埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法 図10B
  • 特表-埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法 図11
  • 特表-埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法 図12
  • 特表-埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-09-18
(54)【発明の名称】埋め込まれた透かしを使用してコンテンツの表示を監視するためのシステム及び方法
(51)【国際特許分類】
   H04N 21/6583 20110101AFI20240910BHJP
   H04N 21/8358 20110101ALI20240910BHJP
   H04N 21/435 20110101ALI20240910BHJP
【FI】
H04N21/6583
H04N21/8358
H04N21/435
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024509516
(86)(22)【出願日】2022-08-15
(85)【翻訳文提出日】2024-03-12
(86)【国際出願番号】 US2022040291
(87)【国際公開番号】W WO2023022960
(87)【国際公開日】2023-02-23
(31)【優先権主張番号】63/234,170
(32)【優先日】2021-08-17
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】524060739
【氏名又は名称】ビジオ,インコーポレイテッド
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】リード、ブライアン
(72)【発明者】
【氏名】ムン、キョンス
(72)【発明者】
【氏名】ホーティ、ダブリュ.・レオ
【テーマコード(参考)】
5C164
【Fターム(参考)】
5C164MA02S
5C164MB35P
5C164SB06S
5C164TC12P
5C164UB10P
(57)【要約】
埋め込まれた透かしを使用してメディア及び/又は特殊コンテンツの表示を検出するためのシステム及び方法が提供される。例えば、メディアデバイスが、ビデオフレームのセットを含むビデオデータを受信し得る。メディアデバイスは、ビデオフレームのセットのうちの少なくとも1つのビデオフレームにおいて、少なくとも1つのビデオフレームに埋め込まれた透かしを検出し得る。透かしは、メディアデバイスによって表示されるべきメディアを識別するために使用可能であり得る。メディアデバイスは、メディアを表示し得る。次いで、メディアデバイスは、宛先デバイスに、メディアがメディアデバイスによって提示されたというインジケーションを送信し得る。
【選択図】図1
【特許請求の範囲】
【請求項1】
方法であって、
メディアデバイスによって、ビデオフレームのセットを含むビデオデータを受信することと、
前記ビデオフレームのセットのうちの少なくとも1つのビデオフレームにおいて、前記少なくとも1つのビデオフレームに埋め込まれた透かしを検出すること、ここにおいて、前記透かしは、前記メディアデバイスによって表示されるべきメディアを識別するために使用可能である、と、
前記メディアデバイスによって、前記メディアを表示することと、
前記透かしを検出することに応答して、宛先アドレスに、前記メディアが前記メディアデバイスによって提示されたというインジケーションを送信することと、
を備える方法。
【請求項2】
前記透かしを検出することに応答して、前記メディアに関連付けられた前記宛先アドレスについての要求を送信することと、
前記宛先アドレスを受信することと、
を更に備える、請求項1に記載の方法。
【請求項3】
前記ビデオデータは、前記メディアに関連付けられたトークンを含み、前記メディアが前記メディアデバイスによって提示されたという前記インジケーションを送信することは、前記トークンを送信することを含む、請求項1に記載の方法。
【請求項4】
前記メディアは、前記ビデオデータが受信される前に、前記メディアデバイスのローカルメモリに記憶される、請求項1に記載の方法。
【請求項5】
前記メディアは、前記フレームのセットのうちの1つ以上のフレームを置き換える、請求項1に記載の方法。
【請求項6】
前記ビデオデータは、前記宛先アドレスとは異なるアドレスに関連付けられたデバイスから受信される、請求項1に記載の方法。
【請求項7】
前記透かしは、シンボルのシーケンスを含む、請求項1に記載の方法。
【請求項8】
システムであって、
1つ以上のプロセッサと、
命令を記憶した非一時的なコンピュータ可読記憶媒体と、を備え、前記命令は、前記1つ以上のプロセッサによって実行されると、前記1つ以上のプロセッサに、
メディアデバイスによって、ビデオフレームのセットを含むビデオデータを受信することと、
前記ビデオフレームのセットのうちの少なくとも1つのビデオフレームにおいて、前記少なくとも1つのビデオフレームに埋め込まれた透かしを検出すること、ここにおいて、前記透かしは、前記メディアデバイスによって表示されるべきメディアを識別するために使用可能である、と、
前記メディアデバイスによって、前記メディアを表示することと、
前記透かしを検出することに応答して、宛先アドレスに、前記メディアが前記メディアデバイスによって提示されたというインジケーションを送信することと、
を含む動作を行わせる、システム。
【請求項9】
前記動作は、
前記透かしを検出することに応答して、前記メディアに関連付けられた前記宛先アドレスについての要求を送信することと、
前記宛先アドレスを受信することと、
を更に含む、請求項8に記載のシステム。
【請求項10】
前記ビデオデータは、前記メディアに関連付けられたトークンを含み、前記メディアが前記メディアデバイスによって提示されたという前記インジケーションを送信することは、前記トークンを送信することを含む、請求項8に記載のシステム。
【請求項11】
前記メディアは、前記ビデオデータが受信される前に、前記メディアデバイスのローカルメモリに記憶される、請求項8に記載のシステム。
【請求項12】
前記メディアは、前記フレームのセットのうちの1つ以上のフレームを置き換える、請求項8に記載のシステム。
【請求項13】
前記ビデオデータは、前記宛先アドレスとは異なるアドレスに関連付けられたデバイスから受信される、請求項8に記載のシステム。
【請求項14】
前記透かしは、シンボルのシーケンスを含む、請求項8に記載のシステム。
【請求項15】
命令を記憶した非一時的なコンピュータ可読記憶媒体であって、前記命令は、1つ以上のプロセッサによって実行されると、前記1つ以上のプロセッサに、
メディアデバイスによって、ビデオフレームのセットを含むビデオデータを受信することと、
前記ビデオフレームのセットのうちの少なくとも1つのビデオフレームにおいて、前記少なくとも1つのビデオフレームに埋め込まれた透かしを検出すること、ここにおいて、前記透かしは、前記メディアデバイスによって表示されるべきメディアを識別するために使用可能である、と、
前記メディアデバイスによって、前記メディアを表示することと、
前記透かしを検出することに応答して、宛先アドレスに、前記メディアが前記メディアデバイスによって提示されたというインジケーションを送信することと、
を含む動作を行わせる、非一時的なコンピュータ可読記憶媒体。
【請求項16】
前記動作は、
前記透かしを検出することに応答して、前記メディアに関連付けられた宛先アドレスについての要求を送信することと、
前記宛先アドレスを受信することと、
を更に含む、請求項15に記載の非一時的なコンピュータ可読記憶媒体。
【請求項17】
前記ビデオデータは、前記メディアに関連付けられたトークンを含み、前記メディアが前記メディアデバイスによって提示されたという前記インジケーションを送信することは、前記トークンを送信することを含む、請求項15に記載の非一時的なコンピュータ可読記憶媒体。
【請求項18】
前記メディアは、前記ビデオデータが受信される前に、前記メディアデバイスのローカルメモリに記憶される、請求項15に記載の非一時的なコンピュータ可読記憶媒体。
【請求項19】
前記メディアは、前記フレームのセットのうちの1つ以上のフレームを置き換える、請求項15に記載の非一時的なコンピュータ可読記憶媒体。
【請求項20】
前記ビデオデータは、前記宛先アドレスとは異なるアドレスに関連付けられたデバイスから受信される、請求項15に記載の非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【関連出願の相互参照】
【0001】
[0001]本願は、2021年8月17日に出願された米国仮特許出願第63/234,170号の利益を主張し、これは、あらゆる目的のために、その全体が参照により本明細書に組み込まれている。
【技術分野】
【0002】
[0002]本開示は、一般に、コンテンツの表示を監視することに関し、より詳細には、メディアデバイスによって表示されているコンテンツを識別するために、デジタルビデオ信号内に埋め込まれたデータを検出することに関する。
【背景技術】
【0003】
[0003]メディアデバイスは、メディアサービスプロバイダ(例えば、ケーブル、衛星放送用パラボラアンテナ、等)からマルチチャネル放送ビデオを受信する。放送ビデオは、メディアのリソースコストを補助する特殊コンテンツ(例えば、広告、情報のコンテンツ、等)を伴うメディア(例えば、テレビ番組、映画、等)を含み得る。特殊コンテンツのコンテンツプロバイダによって提供されるリソースの数量は、一般に、特殊コンテンツを閲覧したユーザの数量に基づく。例えば、コンテンツプロバイダは、1000回の「インプレッション」、即ち、特殊コンテンツが閲覧された回数ごとに特定の数量のリソースを提供し得、これは、「1000回当たりのコスト」又は「CPM」と呼ばれ得る。特殊コンテンツは放送ビデオに含まれているので、メディアデバイスが放送ビデオを表示していた場合、特殊コンテンツが表示されたと仮定され得る。しかしながら、現代のメディアデバイスは、多様で動的なソース(例えば、インターネット上、ローカル又はリモートのデジタルビデオレコーダ等のタイムシフトされたソース、等)からのコンテンツを表示し得る。その結果、メディアの表示を検出することは、もはや特殊コンテンツの表示を示すものではない。
【発明の概要】
【0004】
[0004]埋め込まれた透かしを使用してコンテンツの表示を監視するための方法及びシステムが、本明細書で説明される。方法は、メディアデバイスによって、ビデオフレームのセットを含むビデオデータを受信することと、ビデオフレームのセットのうちの少なくとも1つのビデオフレームにおいて、少なくとも1つのビデオフレームに埋め込まれた透かしを検出すること、ここにおいて、透かしは、メディアデバイスによって表示されるべきメディアを識別する、と、メディアデバイスによって、メディアを表示することと、透かしを検出することに基づいて、宛先アドレスに、メディアがメディアデバイスによって提示されたというインジケーションを送信することと、を含む。
【0005】
[0005]本明細書で説明されるシステムは、埋め込まれた透かしを使用してコンテンツの表示を監視し得る。システムは、1つ以上のプロセッサと、命令を記憶した非一時的なコンピュータ可読媒体と、を含み、命令は、1つ以上のプロセッサによって実行されると、1つ以上のプロセッサに、前述したような方法のうちのいずれかを行わせる。
【0006】
[0006]本明細書で説明される非一時的なコンピュータ可読媒体は、命令を記憶し得、命令は、1つ以上のプロセッサによって実行されると、1つ以上のプロセッサに、前述したような方法のうちのいずれかを行わせる。
【0007】
[0007]これらの例示的な例は、本開示を限定又は定義するためではなく、その理解を助けるために言及される。追加の実施形態が、発明を実施するための形態で述べられ、更なる説明がそこで提供される。
【0008】
[0008]本開示の特徴、実施形態、及び利点は、添付の図面を参照して以下の発明を実施するための形態を読むと、より良く理解される。
【図面の簡単な説明】
【0009】
図1】[0009]図1は、本開示の態様による、メディアデバイスにおけるコンテンツの表示を監視するクライアント側メディア挿入システムの例となるブロック図を例示する。
図2】[0010]図2は、本開示の態様による、メディアデバイスにおけるコンテンツの表示を監視するサーバ側メディア挿入システムの例となるブロック図を例示する。
図3】[0011]図3は、本開示の態様による、透かしを使用してメディアデバイスにおけるコンテンツの表示をセキュアに監視するセキュアストリームシステムの例となるブロック図を例示する。
図4】[0012]図4は、本開示の態様による、透かしを使用してメディアデバイスにおけるコンテンツの表示を監視するためのプロセスの例となるブロック図を例示する。
図5】[0013]図5は、本開示の態様による、コンテンツの表示を監視及び報告するメディアデバイスを説明する、例となるプロセスのフローチャートを例示する。
図6】[0014]図6は、本開示の態様による、コンテンツの表示の監視及び報告に関与するメディアサーバを説明する、例となるプロセスのフローチャートを例示する。
図7】[0015]図7は、本開示の態様による、2レベルの透かし(two-level watermark)を使用してビデオフレームの上部の行に埋め込まれたデータの例を例示する。
図8】[0016]図8は、本開示の態様による、ビデオフレームの上部の行及び上部の2つの行に埋め込まれた、例となる2値の透かしを例示する。
図9】[0017]図9は、本開示の態様による、人間の目に対する透かしの知覚的ぼかし(perceptual blurring)を増大させるために、透かしに近接した遷移領域が漸進的に暗くされる、例となるビデオフレームを例示する。
図10A】[0018]図10Aは、本開示の態様による、人間の目に対する透かしの知覚的ぼかしを生じさせるために、透かしの0シンボルと1シンボルとの値が交互するビデオフレームの例となるシーケンスを例示する。
図10B】[0019]図10Bは、本開示の態様による、データシンボルの知覚的ブレンディング(perceptual blending)を改善するための、2つのフレームごとのデータシンボルの例となるビデオ反転を例示する。
図11】[0020]図11は、本開示の態様による、透かし入りフレームの検出を強化するために、強化されたリードインデータシンボルシーケンスを用いた例となる透かしを例示する。
図12】[0021]図12は、本開示の態様による、0シンボルと1シンボルとの間のユークリッド距離が一時的に増大される、透かしのデータシンボルの例を例示する。
図13】[0022]図13は、本開示の態様による、本明細書で説明される様々な技法を実装し得る、例となるコンピューティングデバイスの例となるコンピューティングデバイスアーキテクチャを例示する。
【発明を実施するための形態】
【0010】
[0023]本開示は、透かしを使用してデバイスによるコンテンツの表示を監視するためのシステム及び方法を含む。メディアデバイスは、様々な異なるソース(例えば、無線(OTA:over-the-air)、ケーブル、衛星、インターネット、等)からの様々なタイプのメディアを表示するように構成され得る。いくつかのソースは、他のメディアのある特定の間隔中に表示され得る特殊コンテンツ(例えば、広告、情報のコンテンツ、メディアコンテンツ、等)を含み得る。いくつかの事例では、メディアデバイスは、特殊コンテンツを他のメディアに挿入するために、クライアント側コンテンツ挿入(CSCI)プロセスを実行し得る。例えば、メディアデバイスは、他のメディアのビデオフレームとは別個に(例えば、別個のコンテンツ配信ネットワーク(CDN)、又は同様のものから)、特殊コンテンツに対応するビデオフレームを受信し得る。次いで、メディアデバイスは、特殊コンテンツのビデオフレームを、他のメディアのビデオフレームに挿入することによって、ビデオフレームの単一のシーケンスを生成し得る。他の事例では、スティッチングサービス(stitching service)が、特殊コンテンツと他のメディアとの両方を受信し、次いでメディアデバイスに送信され得る、ビデオフレームの単一のシーケンスを生成する、サーバ側コンテンツ挿入(SSCI)プロセスが実行され得る。
【0011】
[0024]クライアントデバイスは、特殊コンテンツを改善するため、特殊コンテンツがメディアデバイスによって表示される可能性を増大させるため、メディアソース(例えば、スティッチングサービス、CDN、並びに/又は、メディアデバイスに特殊コンテンツを提供したデバイス及び/若しくはサービス、等)に報酬を支払う(compensate)ため、又は同様のことのために、特定の特殊コンテンツの表示に関連付けられた情報を要求し得る。メディアデバイスは、スティッチングサービスのデバイス等の中間デバイスが特殊コンテンツの表示を誤って報告することを回避するために、トラッキングサーバに特殊コンテンツの表示を直接報告し得る。メディアデバイスは、コンテンツサーバから、特殊コンテンツに関連付けられたトラッキングサーバのロケーションに対応するアドレス(例えば、ユニフォームリソースロケータ(URL)、又は同様のもの等)を取得し得る。次いで、アドレスを使用して、メディアデバイスは、特殊コンテンツが表示されたことを示す報告をトラッキングサーバに送信し得る。
【0012】
[0025]いくつかの事例では、コンテンツサーバは、特殊コンテンツの1つ以上のビデオフレームに透かしを埋め込み得る。透かしは、メディアデバイスに情報及び/又は命令(例えば、コンテンツサーバのアドレス、特殊コンテンツの識別、透かし入りビデオフレームを置き換えるべき1つ以上のビデオフレームの識別、トークン、及び/又は同様のもの等)を提供し得る。いくつかの例では、透かしを検出することに応答して、メディアデバイスは、特殊コンテンツが表示されたことを示す報告をトラッキングサーバに送り得る。透かしは、中間デバイスが透かしに埋め込まれた情報及び/又は命令を傍受するのを防止するために、中間デバイス(例えば、スティッチングサービス、等)によって知覚不可能であり得る(又はさもなければ復号可能でない)方法で、特殊コンテンツに埋め込まれ得る。
【0013】
[0026]透かしはまた、透かしがメディアデバイスによって提示されているビデオフレームの品質に影響を及ぼすことを防止するために、メディアデバイスのユーザには知覚不可能であり得る。いくつかの例では、透かしは、ビデオフレームの上部の1つ以上の行における画素のルミナンス及び/又はクロミナンスを修正することによって、ビデオのための画素データに符号化され得る。いくつかの事例では、上部の1つ以上の画素行は、メディアデバイスによって表示されないことがある。他の事例では、ルミナンス及び/又はクロミナンスの度合い(degree)は、ユーザが修正を検出する可能性を最小限にするように選択され得る。(例えば、純白又は純黒のような対照的な画素値を使用するのではなく)ルミナンス及び/又はクロミナンスをシフトすることは、メディアデバイスによって検出可能であり得るが、メディアデバイスのユーザには知覚可能でなくなり得る。変調された画素及び変調されていない画素は、情報及び/又は命令を表し得るシンボルのシーケンス(例えば、1及び0、又は同様のもの等)を伝達し得る。
【0014】
[0027]いくつかの事例では、シンボルのシーケンスは、別のデバイスが1つ以上のビデオフレームを傍受し、透かしのシンボルのシーケンスを復号し得る可能性を更に低減するために、1つ以上のビデオフレームに埋め込まれる前に、(例えば、非同期又は同期暗号化スキームを使用して)暗号化され得る。ビデオフレームへの透かしの生成、埋め込み、及び復号は、2021年7月29日に出願された「System And Methods for the Application of Adaptive Video Watermarks」と題する米国特許出願第17/389,147号に更に記載され得、これは、あらゆる目的のために、その全体が参照により本明細書に組み込まれている。
【0015】
[0028]トラッキングサーバは、特殊コンテンツに関連付けられたコンテンツサーバ及び/又はクライアントデバイスに報告を提供するために、1つ以上のメディアデバイスから受信された情報を集約し得る。報告内に含まれ得る情報の例は、限定はしないが、メディアデバイスによって表示されたメディア及び/又は特殊コンテンツの識別、秒単位での、或いはメディア及び/又は特殊コンテンツが表示され得る総時間量のパーセンテージとしての、メディア及び/又は特殊コンテンツが表示された時間量、メディアデバイス及び/又はそのユーザに関連付けられた人口統計学的情報、メディアデバイスによって以前に表示されたメディア及び/又は特殊コンテンツの識別、メディアデバイスのネットワーク情報(例えば、インターネットプロトコル(IP)アドレス、媒体アクセス制御(MAC)アドレス、インターネットサービスプロバイダ(ISP)、等)、メディアデバイスの識別(例えば、メディアデバイスのシリアル番号又は一意の識別子、モバイル広告ID(MAID)、メディアデバイスのデバイスタイプ(例えば、モバイルデバイス、コンピューティングデバイス、テレビ、スマートテレビ、等)、メディアデバイスの製造業者の識別、メディアデバイスの仕様の識別(例えば、ハードウェア及び/又はソフトウェア、等)、これらの組合せ、又は同様のもの)、これらの組合せ、又は同様のものを含み得る。
【0016】
[0029]いくつかの例では、コンテンツサーバ及び/又はクライアントデバイスは、特定の特殊コンテンツが、特定のメディアデバイス、(例えば、シリアル番号、IPアドレス、MACアドレス、地理的ロケーション、メディアデバイス及び/若しくはそのユーザの人口統計学的情報、これらの任意の組合せ、又は同様のものによって識別される)メディアデバイスの特定のセットによって、又は任意のメディアデバイスによって表示されたインスタンスの数量について、トラッキングサーバに問い合わせし得る。いくつかの例では、コンテンツサーバ及び/又はクライアントデバイスは、人口統計学的情報、ロケーション情報、又は同様のもの等の、特殊コンテンツを表示したデバイスに関連付けられた情報について、トラッキングサーバに問い合わせし得る。トラッキングサーバから取得された情報は、特殊コンテンツを改善するため、特殊コンテンツがメディアデバイスによって表示される可能性を増大させるため、メディアソースに報酬を支払うため、等に使用され得る。例えば、コンテンツサーバ及び/又はクライアントデバイスは、メディアデバイスが修正された特殊コンテンツの全持続時間を表示し得る可能性を増大させるために、特殊コンテンツ及び/又はその中に埋め込まれた透かしを修正し得る。修正された特殊コンテンツは、コンテンツサーバに記憶され、CDN及び/又はメディアデバイスによる要求に応じて、CDNに配信され得る。
【0017】
[0030]図1は、本開示の態様による、メディアデバイスにおけるコンテンツの表示を監視するクライアント側メディア挿入システムの例となるブロック図を例示する。クライアント側メディア挿入システム100は、メディアデバイス104において、メディア及び/又は特殊コンテンツをメディアストリームに挿入する。メディアデバイス104は、様々なソース(例えば、ケーブルサービスプロバイダ、コンテンツ配信ネットワーク、インターネットサービスプロバイダ、コンテンツサーバ、データベース、ストリーミングデバイス、記憶デバイス、等)からメディア(例えば、画像、ビデオ、オーディオ、ビデオ及びオーディオ、等)を受信及び表示するように構成され得る。いくつかの事例では、メディアデバイス104は、単一のシーケンスとして表示されるように構成された、2つ以上のソースからのメディアを受信し得る。それらの事例では、メディアデバイス104は、メディアデバイス104によって表示され得るビデオフレームの単一のシーケンスを生成するために、1つのソースからのビデオフレームを別のソースのビデオフレームに挿入するプロセスハードウェアを含み得る。
【0018】
[0031]メディアデバイス104は、メディアコンテンツ配信ネットワーク(CDN)108から及び/又はコンテンツサーバ112から、メディアを受信し得る。メディアCDN108は、メディアを記憶する1つ以上のデバイスを含み得る。メディアCDN108は、メディアサービスプロバイダ(例えば、ケーブルサービスプロバイダ、インターネットサービスプロバイダ、等)及び/又はコンテンツサーバ112によって動作され得るか、又はそれらからメディアを受信し得る。メディアCDN108は、メディアCDN108によって供給される(served)メディアのタイプを論理的にセグメント化する1つ以上のCDNを含み得る。例えば、メディアCDN108は、メディアストリームを記憶及び配信する第1のCDNと、特殊コンテンツを記憶及び配信する第2のCDNと、を含み得る。第2のCDNは、限定はしないが、コンテンツサーバ112等の他のデバイスから受信された特殊コンテンツを記憶し得る。メディアCDN108は、限定はしないが、ストリーミングサービス用のCDN、ケーブルサービスプロバイダ用のCDN、映画用のCDN、テレビ番組用のCDN、等のような他のCDNを有し得る。各CDNは、同じソース(例えば、同じケーブルサービスプロバイダ、会社、ネットワーク、又は同様のもの等)から又は複数のソースからの、メディア及び/又は特殊コンテンツを記憶及び配信し得る。メディアCDN108は、メディアデバイス104から、又はメディアデバイス104に対するサービスプロバイダ(例えば、ケーブルサービスプロバイダ、インターネットサービスプロバイダ、等)から、1つ以上のメディアストリームについての要求を受信し得る。これに応答して、メディアCDN108は、要求された1つ以上のメディアストリームをメディアデバイス104に送信し得る。
【0019】
[0032]コンテンツサーバ112は、特殊コンテンツ(例えば、コマーシャル、広告、メディアコンテンツ、情報のコンテンツ、等)をメディアデバイスに提供する1つ以上のデバイス(例えば、コンピューティングデバイス、サーバ、等)を含み得る。コンテンツサーバ112は、メディアデバイス104及び/又はメディアCDN108から、特殊コンテンツ又は特定の特殊コンテンツについての要求を受信する。これに応答して、コンテンツサーバ112は、要求を満たすことになる特定の特殊コンテンツを識別し得る。識別された特殊コンテンツは、コンテンツサーバ112の1つ以上のデバイスのうちのデバイスによって記憶され得るか、又はコンテンツサーバ112と通信状態にあるデータベース内に記憶され得る。例えば、コンテンツサーバ112は、最初に、識別された特殊コンテンツがローカルに記憶されているかどうかを決定し、そうである場合、識別された特殊コンテンツをメディアデバイス104又はメディアCDN108に送信し得る。識別された特殊コンテンツがローカルに記憶されていない場合、コンテンツサーバ112は、識別された特殊コンテンツについてコンテンツデータベース116に問い合わせし得る。次いで、コンテンツサーバ112は、コンテンツデータベース116から識別された特殊コンテンツを取り出し、識別された特殊コンテンツをメディアデバイス104又はメディアCDN108に送信し得る。
【0020】
[0033]コンテンツサーバ112は、追加の情報及び/又は命令を含む透かしを記憶及び/又は生成し得る。コンテンツサーバ112は、識別された特殊コンテンツをメディアデバイス104又はメディアCDN108に送信する前に、識別された特殊コンテンツ内に透かしを埋め込み得る。透かしは、識別された特殊コンテンツのメタデータ中に含まれ得るか、又は識別された特殊コンテンツのビデオフレームに埋め込まれ得る。例えば、コンテンツサーバ112は、1つ以上のビデオフレームの一部分(例えば、上部n行、側部n列、下部n行、等)の画素値を、第1のシンボル(例えば、0、又は同様のもの)を表すための第1の画素値、及び第2のシンボル(例えば、0、又は同様のもの)を表すための第2の画素値に設定し得る。代替として、1つ以上のビデオフレームの一部分の知覚可能性(perceptibility)を低減するために、コンテンツサーバ112は、画素のルミナンス値及び/又はクロミナンス値をシフトすることによって、画素値を変調し得る。ルミナンス及び/又はクロミナンスをシフトすることによって、変調された画素は、変調されていない画素に画素値がより近いように見え得、これは、ユーザがビデオフレームに埋め込まれた透かしを知覚することを防止し得る。
【0021】
[0034]追加の情報及び/又は命令は、(例えば、特殊コンテンツが表示されるべきビデオフレームの数量又は時間の長さ、特殊コンテンツのソース、特殊コンテンツ内で提示されるオブジェクト、特殊コンテンツの制作に関連付けられた情報、この特殊コンテンツに関連付けられた他の特殊コンテンツの識別、この特殊コンテンツを置き換えるべき別の特殊コンテンツの識別、等を識別する)特殊コンテンツに関連付けられた情報を含み得る。いくつかの事例では、命令は、透かしを検出したことに応答して実行すべき1つ以上のプロセスの識別を含み得る。例えば、1つ以上のプロセスは、特殊コンテンツを、(例えば、コンテンツサーバ112、別のサーバ、メディアデバイス104のキャッシュ、又は同様のものによって受信される)別の特殊コンテンツと置き換えることを含み得る。他の事例では、命令は、1つ以上のプロセスを行うためにメディアデバイス104によって実行され得る実行可能コードを含み得る。
【0022】
[0035]メディア受信機120は、受信されたメディアストリームの一部又は全部を、及びビデオプロセッサ128にルーティングするように、中央処理ユニット124によって動作され得る。例えば、メディアストリームは、1つ以上のサブストリームを含み得る。メディア受信機120は、メディアデバイス104によって表示されるべき特定のメディアサブストリームを識別し、特定のメディアサブストリームを分離し、特定のサブストリームをビデオプロセッサに渡し得る。1つ以上のサブストリームは、任意の符号化スキームを使用して、メディアストリームに符号化され得る。例えば、1つ以上のサブストリーム(例えば、テレビチャネル、等)は、周波数ベースの符号化スキームを使用して、メディアストリームに符号化され得る。メディア受信機120は、サブストリームがメディアストリームに符号化される周波数(frequency)に基づいて、サブストリームを識別し得る。
【0023】
[0036]ビデオプロセッサ128は、(例えば、解像度のアップスケーリング、動き補間、平滑化、動きぼかし(motion blurring)、個々のビデオフレームの画像処理(imaging processing)、及び/又は同様のことによって)受信されたビデオフレームを処理し、リアルタイムでメディアデバイス104によって表示するためのビデオフレームのシーケンスを生成し得る。例えば、ビデオプロセッサ128は、特殊コンテンツに対応するビデオフレームと、メディアCDN108からのメディアに対応するビデオフレームと、を受信し得る。次いで、ビデオプロセッサ128は、ビデオフレームの単一のシーケンスを生成するために、特殊コンテンツに対応するビデオフレームを、メディアに対応するビデオフレームに挿入し得る。ビデオプロセッサ128は、他のビデオフレームを、メディアに対応するビデオフレームに(又はビデオフレームの単一のシーケンスのビデオフレームに)挿入し得る。例えば、メディアデバイス104は、他のメディア及び/又は他の特殊コンテンツをメディアキャッシュ132に記憶し得る。ビデオプロセッサ128は、ビデオフレームの単一のシーケンスを生成するために、特殊コンテンツのビデオフレームに加えて、メディアキャッシュ132からの他のメディア及び/又は他の特殊コンテンツに対応するビデオフレームを使用し得る。代替又は追加として、メディアデバイス104は、リモートデバイスから(例えば、コンテンツサーバ112、メディアCDN108、及び/又は他のデバイスから)、他のメディア及び/又は他の特殊コンテンツに対応するビデオフレームを要求し得る。メディアデバイスは、他のメディア及び/又は他の特殊コンテンツに対応するビデオフレームをメディアキャッシュ132に記憶し得る。
【0024】
[0037]いくつかの事例では、特殊コンテンツは、メディアに対応するビデオフレームに挿入されるべき他の特殊コンテンツを識別するための命令を含み得る。例えば、特殊コンテンツは、メディアデバイス104によって復号され得る透かしを含み得る。透かしは、メディアに対応するビデオフレームに挿入されるべき特定の特殊コンテンツを識別し得る。メディアデバイス104は、メディアキャッシュ132において特定の特殊コンテンツ又はその一部分(例えば、特定の特殊メディアの第1の部分、又は同様のもの)を見つけ(locate)得、及び/又は特定の特殊コンテンツ(又は特定の特殊コンテンツの残りの部分)をコンテンツサーバ112及び/又は別のサーバから要求し得る。他の事例では、命令は、(例えば、メタデータ及び/又は透かしとして)メディアに含まれ得る。命令が透かしに含まれる場合、メディアデバイス104は、特定の特殊コンテンツを識別するために、透かしを復号し得る。次いで、ビデオプロセッサ128は、透かしを含むビデオフレームを、特定の特殊コンテンツに対応するビデオフレームと置き換え得る。命令がメタデータ中に含まれる場合、メディアデバイス104は、特定の特殊コンテンツと、特定の特殊コンテンツのビデオフレームを挿入するためのメディア内のロケーションと、を識別し得る。
【0025】
[0038]メディアキャッシュ132は、メディア及び/又は特殊コンテンツに対応するビデオフレーム、メディア及び/又は特殊コンテンツに関連付けられたメタデータ、メディアデバイス104によって表示されたメディア及び/又は特殊コンテンツの記録を記憶し得る。メディアキャッシュ132は、メディアデバイス104によるビデオフレームの単一のシーケンスを生成する際の遅延及び/又はビデオフレームを表示する際の遅延を低減するために、メディア及び/又は特殊コンテンツのビデオフレームを記憶し得る。例えば、いくつかの事例では、ビデオフレームの単一のシーケンスを生成するときの処理時間及び/又はレイテンシは、メディア及び/又は特殊コンテンツの表示における遅延を引き起こし得る。処理遅延は、プロセッサエラーに起因して、メディア及び/若しくは特殊コンテンツが適時に受信されないことに起因して、並びに/又は、処理負荷が、ビデオフレームの単一のシーケンスの生成が予期されるより長くかかることを引き起こすときに発生し得る。遅延は、ビデオフレームバッファ136に、ディスプレイ140に送るべきビデオフレームが不足することと、ディスプレイ140に、表示すべきものが何もないことと、を引き起こし得る。
【0026】
[0039]遅延は、メディア及び/又は特殊コンテンツに対応するビデオフレームの一部又は全部を、メディアキャッシュ132に記憶することによって低減又は除去され得る。メディアデバイス104は、将来表示されるべきメディア及び/又は特殊コンテンツに対応するビデオフレームの一部又は全部を要求し得る。メディア及び/又は特殊コンテンツが表示される予定であるとき、ビデオプロセッサ128は、ビデオフレームの単一のシーケンスを生成するために、メディアキャッシュ132におけるビデオフレームを使用し得る。メディアキャッシュ132が、特定のメディア又は特殊コンテンツに対応する全てのビデオフレームを含まない場合には、メディアデバイス104は、表示のためにメディアキャッシュ132に記憶されたメディア及び/又は特殊コンテンツの部分を準備しながら、足りないビデオフレームを要求し得る。ビデオプロセッサ128は、残りのビデオフレームがメディア受信機120によって受信されるにつれて、それらのビデオフレームをビデオフレームの単一のシーケンスに挿入し得る。メディア及び/又は特殊コンテンツの一部分は、ビデオフレームの単一のシーケンスに既に挿入されていることがあり得るので、それらのフレームの表示は、残りのビデオフレームが受信されている間に開始し得、それによって、メディア及び/又は特殊コンテンツの表示における遅延を除去する。
【0027】
[0040]ビデオプロセッサ128は、ビデオフレームの単一のシーケンスをビデオフレームバッファ136にストリーミングする。ビデオフレームバッファ136は、ディスプレイ140によって表示される前に、ビデオフレームがビデオプロセッサ128から受信されるにつれて、ビデオフレームを記憶するバッファであり得る。ビデオフレームバッファ136は、ビデオフレームのシーケンスのビデオフレームを受信し、ビデオフレームを(順番に)ディスプレイ140に送信する前に、所定の数量のビデオフレームを記憶する。ビデオフレームバッファ136は、一定間隔でディスプレイ140にビデオフレームを送信することによって、ビデオフレームがディスプレイ140によって表示されるレートを調整し得る。例えば、いくつかの時間間隔の間、ビデオプロセッサ128は、ビデオフレームバッファがディスプレイ140にビデオフレームを送信しているレートより高いレートで、ビデオフレームを生成及び送信し得る。他の時間間隔の間、ビデオプロセッサ128は、ビデオフレームバッファがディスプレイ140にビデオフレームを送信しているレートより低いレートで、ビデオフレームを生成及び送信し得る。ビデオフレームバッファ136は、ビデオプロセッサ128がより高いレートで送信しているときに、ビデオプロセッサ128から受信された余分なビデオフレームを記憶することによって、ビデオフレームがディスプレイ140に送信されるレートを調整し得る。ビデオプロセッサ128がより低いレートでビデオフレームを送信するとき、ビデオフレームバッファは、記憶されたビデオフレームを使用してビデオフレームを送信し続け得る。
【0028】
[0041]ディスプレイ140は、任意の電子ディスプレイ(例えば、陰極線管(CRT)、プラズマ、液晶ディスプレイ(LCD)、発光ダイオード(LED)、有機LED(OLED)、等)であり得る。いくつかの事例では、ディスプレイ140は、メディアデバイス104と別個であり得る。それらの事例では、メディアデバイス104は、表示のためにビデオフレームの単一のシーケンスを生成するための処理コンポーネントを含み得る。次いで、メディアデバイス104は、ビデオフレームの単一のシーケンスを、(例えば、ワイヤード又はワイヤレスインターフェースを介して)外部ディスプレイ140に送信し得る。
【0029】
[0042]クライアント動的コンテンツ挿入(DCI)コントローラ144は、ビデオフレームバッファ136から、ディスプレイ140によって表示されているビデオフレームの識別を受信し得る。いくつかの事例では、クライアントDCIコントローラ144は、クライアント動的広告挿入(DAI)コントローラであり得るか、又はそれを含み得る。特定のメディア及び/又は特殊コンテンツがディスプレイ140によって表示されるとき、クライアントDCIコントローラ144は、特定のメディア及び/又は特殊コンテンツがディスプレイ140によって表示されている(又は表示された)ことを示す通信をトラッキングサーバ148に送信し得る。クライアントDCIコントローラ144は、リモートデバイスから、及び/又は、特定のメディア及び/又は特殊コンテンツ自体から、表示の際にトラッキングサーバ148に報告されるべき特定のメディア及び/又は特殊コンテンツの識別を受信する。例えば、特定のメディア及び/又は特殊コンテンツは、特定のメディア及び/又は特殊コンテンツの表示をトラッキングサーバ148に通信するための命令を含む、透かし又はメタデータを含み得る。透かし又はメタデータはまた、トラッキングサーバ148のロケーション(例えば、アドレス又は同様のもの)の識別も含み得る。代替又は追加として、メディアデバイス104は、リモートデバイス(例えば、コンテンツサーバ112、又は同様のもの等)から、表示の際に報告されるべきメディア及び/又は特殊コンテンツの識別、及び/又は、トラッキングサーバ148のロケーションを要求し得る。
【0030】
[0043]クライアントDCIコントローラ144は、トラッキングサーバ148への通信において、メディアデバイス104及び/又はメディアデバイス104のユーザに関連付けられた情報を含み得る。例えば、クライアントDCIコントローラ144は、人口統計学的情報(例えば、メディアデバイス104の地理的ロケーション、メディアデバイス104のユーザの年齢、メディアデバイス104のユーザの性別、及び/又は同様のもの)、メディアデバイス104のネットワーク情報(例えば、IPアドレス、MACアドレス、インターネットサービスプロバイダ(ISP)、及び/又は同様のもの)、メディア及び/又は特殊コンテンツが表示された持続時間の識別(例えば、秒単位、分単位、メディア及び/又は特殊コンテンツが中断されないで表示されるであろう総持続時間のパーセンテージとして、等)、以前に表示されたメディア又は特殊コンテンツの識別、及び/又は同様のものを含み得る。
【0031】
[0044]図2は、本開示の態様による、メディアデバイスにおけるコンテンツの表示を監視するサーバ側メディア挿入システムの例となるブロック図を例示する。サーバ側メディア挿入システム200は、メディアデバイス204にメディアストリームを送信する前に、メディアデバイス204によって表示されるべきメディアストリームにメディア及び/又は特殊コンテンツを挿入する。メディアデバイス204は、(図示されるように)図1のメディアデバイス104と同じコンポーネントを含み得るか、メディアデバイス104と同様のコンポーネントを含み得るか、又はメディアデバイス104とは異なるコンポーネントを含み得る。メディアデバイス204は、メディアデバイス204のディスプレイ140による表示のためにメディアストリームを要求し得る。メディアCDN108は、要求を受信し、要求されたメディアストリームをスティッチングサービス208に送信し得る。
【0032】
[0045]メディアデバイス204はまた、コンテンツサーバ112から、メディアストリーム中に表示するための特殊コンテンツを要求し得る。メディアデバイス204は、特定の特殊コンテンツの識別、特殊コンテンツタイプの識別、任意の特殊コンテンツについての一般的な要求、メディアデバイス204の識別、メディアデバイス204に関連付けられた情報(例えば、ネットワーク情報、人口統計学的情報、ユーザ情報、等)の識別、及び/又は同様のものを含み得る。コンテンツサーバ112は、コンテンツデータベース116から要求を満たす特殊コンテンツを選択し、その特殊コンテンツをスティッチングサービス208に送信し得る。例えば、特殊コンテンツは、(例えば、人口統計学的情報、等のような)メディアデバイス204に関連付けられた情報及び/又はメディアストリームに関連付けられた情報に基づいて選択され得る。
【0033】
[0046]スティッチングサービス208は、コンテンツサーバ112から受信された特殊コンテンツと、メディアCDN108から受信されたメディアストリームとから、ビデオフレームの単一のシーケンスを生成する、1つ以上のデバイス(例えば、コンピューティングデバイス、サーバ、データベース、等)を含み得る。例えば、スティッチングサービス208は、特殊コンテンツに対応するビデオフレームを、メディアストリームに対応するビデオフレームに挿入し得、又はその逆もあり得る。代替として、スティッチングサービスは、特殊コンテンツに対応するビデオフレームからメディアストリームに対応するビデオフレームへの、ビデオフレームの新しいシーケンスを生成し得る。次いで、スティッチングサービス208は、ビデオフレームの単一のシーケンスをメディア受信機120に送信し得る。
【0034】
[0047]メディア受信機120は、ビデオフレームの単一のシーケンスを受信し、これらビデオフレームをビデオプロセッサ128に渡す。ビデオプロセッサ128は、ビデオフレームの単一のシーケンスを処理し得る(例えば、解像度のアップスケーリング、動き補間、等)。次いで、ビデオプロセッサ128は、ディスプレイ140による表示のために、ビデオフレームの単一のシーケンスをビデオフレームバッファ136に渡す。メディアストリームへのメディア及び/又は特殊コンテンツの挿入は、スティッチングサービスによって行われるので、メディアデバイス104、又は、特に、ビデオプロセッサ128は、挿入を行う必要がない。スティッチングサービス208は、処理負荷をリモートデバイスにシフトすることによって、メディアストリームを表示するときに消費されるメディアデバイス204の処理リソースを低減する。スティッチングサービス208はまた、ビデオプロセッサ128によって引き起こされる処理遅延が、ディスプレイ140によってビデオフレームを提示する際に遅延を引き起こし得る可能性を低減し得る。スティッチングサービス208は、メディアデバイスのセット(例えば、メディアデバイス204を含む)のためのメディア及び/又は特殊コンテンツの挿入を行い得る。
【0035】
[0048]図1に同様に説明されたように、クライアントDCIコントローラ144は、ディスプレイ140によって表示されている特定のメディア及び/又は特殊コンテンツがトラッキングサーバ212に報告されるべきであると決定し得る。クライアントDCIコントローラ144は、(前述したように)特定のメディア及び/又は特殊コンテンツがメディアデバイス104によって表示されたことを示す通信を、スティッチングサービス208に送信し得る。スティッチングサービス208は、通信をトラッキングサーバ212に再送信する。サーバ側メディア挿入システム200は、(例えば、ビデオプロセッサ128によって以前に提供されたメディア及び/又は特殊コンテンツの挿入をオフロードすることによって)負荷分散装置として、及びディスプレイ140によって表示されたメディア及び/又は特殊コンテンツのトラッキングを管理するために、スティッチングサービス208を使用する。
【0036】
[0049]スティッチングサービス208は、メディア及び/又は特殊コンテンツがメディアデバイスによって表示されたインスタンスの数を決定することによって、スティッチングサービスを提供するためのコストを決定し得る。トラッキングサーバ212及び/又はスティッチングサービス208は、メディア及び/又は特殊コンテンツがメディアデバイスによって表示されたインスタンスの数を、コンテンツサーバ112及び/又はメディアCDN108に報告し得る。いくつかの事例では、スティッチングサービス208は、メディア及び/又は特殊コンテンツがメディアデバイスによって表示されたインスタンスの数を正確にトラッキングしないことがある。ネットワークエラーは、スティッチングサービス208又はトラッキングサーバ212へのいくつかの通信を、破損させて誤った報告を生じさせ得るか、又は失わせ得る。ソフトウェアエラー(例えば、プロセッサ割り込み、未処理例外、等)は、報告された表示が、過少カウント又は過剰カウントされること、及び/又は、総計された数量が破損することを防止し得る。スティッチングサービスは、表示されたメディア及び/又は特殊コンテンツの数量に基づいて報酬が支払われるので、スティッチングサービス208は、メディア及び/又は特殊コンテンツが表示されたインスタンスの数量を過大報告する場合がある。その結果、コンテンツサーバ112及び/又はメディアCDN108は、より高いコストを請求され得る。
【0037】
[0050]サーバ側メディア挿入システム200は、(図3に説明されるように)メディア及び/又は特殊コンテンツの表示をトラッキングすることからスティッチングサービス208を分離することによって、より効率的に機能し得る。トラッキングすることからスティッチングサーバを分離することによって、(例えば、メディアデバイスが、メディア及び/又は特殊コンテンツを含むメディアストリームを受信し得、メディア及び/又は特殊コンテンツの表示が、より正確にトラッキングされ得るので)メディアデバイスの処理負荷が低減され得る。
【0038】
[0051]図3は、本開示の態様による、透かしを使用してメディアデバイスにおけるコンテンツの表示をセキュアに監視するセキュアストリームシステムの例となるブロック図を例示する。セキュアストリームシステム300は、トラッキングサーバ312によって提供されるメディアディスプレイトラッキングから、スティッチングサービス308によって提供されるスティッチングサービスを分離する。メディアデバイス304は、(図示されるように)図1のメディアデバイス104と同じコンポーネントを含み得るか、メディアデバイス104と同様のコンポーネントを含み得るか、又はメディアデバイス104とは異なるコンポーネントを含み得る。メディアデバイス304は、メディアデバイス304のディスプレイ140による表示のためにメディアストリームを要求し得る。メディアCDN108は、要求を受信し、要求されたメディアストリームをスティッチングサービス308に送信し得る。
【0039】
[0052]メディアデバイス304はまた、コンテンツサーバ112から、メディアストリーム中に表示するための特殊コンテンツを要求し得る。メディアデバイス304は、特定の特殊コンテンツの識別、特殊コンテンツタイプの識別、任意の特殊コンテンツについての一般的な要求、メディアデバイス304の識別、メディアデバイス304に関連付けられた情報(例えば、ネットワーク情報、人口統計学的情報、ユーザ情報、等)の識別、及び/又は同様のものを含み得る。いくつかの事例では、メディアデバイス304は、特殊コンテンツを周期的に(例えば、一定間隔又は不規則な間隔で)要求し得る。例えば、メディアデバイス304は、メディアストリームを表示する際に、特殊コンテンツを要求し得る。別の事例では、メディアデバイス304は、(例えば、特殊コンテンツが、スティッチングサービス308から受信されたメディアストリームに存在しないとき、又はメディアキャッシュ132等のローカルストレージにおいて)メディアデバイス304が表示のために利用可能な特殊コンテンツを有していないとき、特殊コンテンツを要求し得る。コンテンツサーバ112は、コンテンツデータベース116から要求を満たす特殊コンテンツを取得し、その特殊コンテンツをメディアCDNに送信し得る。
【0040】
[0053]代替として、スティッチングサービス308は、コンテンツサーバ112から、メディアストリーム中に表示するための特殊コンテンツを要求し得る。例えば、スティッチングサービス308は、特殊コンテンツが、メディアCDN104から受信されたメディアストリームにいつ挿入されるべきかを決定し得る。スティッチングサーバ308が、ローカルに記憶された特殊コンテンツを有していない場合、スティッチングサーバ308は、コンテンツサーバ112から特殊コンテンツを要求し得る。コンテンツサーバ112は、特殊コンテンツを識別する応答をスティッチングサービス308に送信し、(メディアCDN108が識別された特殊コンテンツを既に含んでいない場合)特殊コンテンツを含む通信をメディアCDNに送信し得る。いくつかの事例では、応答は、VAST(Video Ad Severing Template)応答であり得る。識別された特殊コンテンツは、(例えば、人口統計学的情報、メディアデバイス304のハードウェア及び/又はソフトウェアコンポーネント、メディアデバイス304のネットワーク情報、等のような)メディアデバイス304に関連付けられた情報及び/又はメディアストリームに関連付けられた情報に基づいて選択され得る。
【0041】
[0054]コンテンツサーバ112は、特殊コンテンツに埋め込まれ得る追加情報をメディアCDN108に送信し得る。例えば、コンテンツサーバは、透かし又はメタデータをメディアCDN108に送信し得る。透かしは、画素のセットの画素値を変調することによって、特殊コンテンツの1つ以上のフレームに符号化されたシンボルのシーケンスを含み得る。透かしは、ビデオフレームの周縁(例えば、上部n行、下部n行、側部n列、これらの組合せ、又は同様のもの等)において配置され得る。例えば、透かしは、第1のシンボル(例えば、1又は同様のもの)を表すために、第1のセットの画素のルミナンス値及び/又はクロミナンス値をシフトすることと、第2のシンボル(例えば、0又は同様のもの)を表すために、第2のセットの画素のルミナンス値及び/又はクロミナンス値をシフトすることと、を含み得る。ルミナンス値及び/又はクロミナンス値をシフトすることによって、透かしは、ビデオフレームが表示されるときに、ユーザには知覚不可能なままであり得る。代替として、コンテンツサーバ112は、特殊コンテンツをメディアCDN108に送信する前に、透かしを特殊コンテンツに埋め込み得る。透かしは、特殊コンテンツの1つ以上のビデオフレームに埋め込まれ得る。いくつかの事例では、透かしは、特殊コンテンツの各ビデオフレームに埋め込まれ得る。
【0042】
[0055]追加情報は、特殊コンテンツの識別、トラッキングサーバ312のロケーション(例えば、ネットワークアドレス)、(メディアデバイス304及び/又は特殊コンテンツに一意の)トークン、暗号鍵、特殊コンテンツに関連付けられた情報(例えば、ビデオフレームの数量、表示されたときの特殊コンテンツの推定持続時間、等)、これらの組合せ、又は同様のものを含み得る。
【0043】
[0056]スティッチングサーバ308は、メディアストリーム及び特殊コンテンツから、ビデオフレームの単一のシーケンスを生成し、ビデオフレームの単一のシーケンスをメディア受信機120に送信し得る。メディア受信機120は、(必要とされるか、又は要求された場合)ビデオフレームの単一のシーケンスを、処理のためにビデオプロセッサ128に渡し得る。次いで、ビデオフレームの単一のシーケンスは、ディスプレイ140による表示のための準備において、ビデオフレームバッファ136に渡され得る。ビデオフレームの単一のシーケンスが表示されるとき、特殊コンテンツ内の透かしが(例えば、ビデオプロセッサ128によって、又は透かしデコーダ316によって)検出され得る。透かしデコーダ316は、シンボルのシーケンスを抽出することによって、透かしを復号し得る。
【0044】
[0057]次いで、シンボルのシーケンスは、メディアデバイス304によって復号され、更なる処理のために使用され得る。例えば、シンボルのシーケンスは、クライアントDCIコントローラ144が、識別された特殊コンテンツの表示を報告することを可能にするために、特殊コンテンツを識別し得る。シンボルのシーケンスは、報告サーバ312のアドレスを含み得る。代替として、クライアントDCIコントローラ144は、制御サーバ112及び/又は別のデバイスからアドレスを要求し得る。
【0045】
[0058]シンボルのシーケンスは、(例えば、スティッチングサービス308による)特殊コンテンツの表示の未認証報告及び透かしへの不正アクセスを防止するためにセキュアにされ得る。シンボルのシーケンスは、(例えば、対称暗号化及び/又は非対称暗号化を使用して)シンボルのシーケンスを暗号化することによってセキュアにされ得る。代替又は追加として、シンボルのシーケンスは、特殊コンテンツの表示の未認証報告を防止するために使用され得るトークンを含み得る。透かしがコンテンツサーバ112によって生成されるとき、コンテンツサーバは、トークンも生成し得る。コンテンツサーバ112は、マッチングトークンを記憶し得、及び/又は、マッチングトークンをトラッキングサーバ312に送信し得る。透かしデコーダ316が、透かし及びシンボルのシーケンスを復号する(及び、暗号化されている場合、復号されたシンボルのシーケンスを解読する)とき、透かしデコーダ316は、トークンを識別し、透かしから復号された他の情報と共に、それをクライアントDCIコントローラ144に渡し得る。クライアントDCIコントローラ144は、特殊コンテンツの表示を報告するときに、トークンを含め得る。
【0046】
[0059]トークンは、メディアデバイス304及び/又は特殊コンテンツに一意であり、特殊コンテンツの表示の報告を認証するために使用可能であり得る。報告を認証することによって、セキュアストリームシステム300は、デバイスが、特殊コンテンツの表示を不正に報告し、特殊コンテンツが表示されたインスタンスの数量を示すカウンタを、誤って増加させることを防止し得る。例えば、特殊コンテンツの表示の報告を認証するためには、報告は、指定されたトークンを含まなければならない。報告がトークンを含まないか、又は(例えば、メディアデバイス304及び/又は特殊コンテンツに対応しない)誤ったトークンを含む場合、報告は認証され得ず、報告に含まれる特殊コンテンツの表示は、カウントされ得ない。
【0047】
[0060]トークンは、対称認証及び/又は非対称認証のために使用され得る。対称認証では、コンテンツサーバ112及び/又はトラッキングサーバ312によって記憶されたマッチングトークンは、透かしに含まれるトークンのコピーであり得る。非対称認証では、マッチングトークンは、透かしに含まれるトークンの補数(complement)であり得る。マッチングトークンは、トークンとは異なり得るが、それでもなおトークンとマッチされ得る。マッチングトークンは、スティッチングサーバ308又は別のデバイスが、透かしからトークンを抽出し、そのトークンを使用して、メディア及び/又は特殊コンテンツの表示の不正な報告を認証することを防止するために、透かしに含まれるトークンとは異なり得る。トークンとマッチングトークンは、トークンが単一のマッチングトークンに対応し、その逆もまた同様であるように、1対1の関係を有し得る。
【0048】
[0061]トラッキングサーバ312が、トークンを有する通信をクライアントDCIコントローラ144から受信すると、トラッキングサーバ312は、受信されたトークンを、クライアントサーバ112から受信された対応するトークンとマッチさせ得る。トラッキングサーバ312がマッチングトークンを識別した場合には、トラッキングサーバ312は、特殊コンテンツの表示の報告が認証され、特殊コンテンツの表示がカウントされ得ることを決定し得る。対応するトークンを識別することができない場合、トラッキングサーバ312は、メディアデバイス304からのトークンをコンテンツサーバ112に送信し得、コンテンツサーバ112が、マッチングトークンを識別することを試み得る。コンテンツサーバ112がマッチングトークンを識別した場合には、コンテンツサーバ112は、コンテンツサーバ112がマッチングトークンを識別したというインジケーションを有する通信を、トラッキングサーバ312に送信し得る。通信は、トラッキングサーバ312による将来の使用のために、マッチングトークンを含み得る。
【0049】
[0062]対応するトークンがコンテンツサーバ112によって識別されることができなかった場合には、コンテンツサーバ112は、マッチングトークンがないというインジケーションをトラッキングサーバ312に送信し得る。次いで、トラッキングサーバ312は、特殊コンテンツの表示が認証されず、特殊コンテンツの表示がカウントされ得ないことを決定し得る。次いで、クライアントDCIコントローラ144からの報告は、トラッキングサーバ312からパージされ得る。代替又は追加として、トラッキングサーバ312は、報告が認証されなかったという通信を、クライアントDCIコントローラ144、コンテンツサーバ112、スティッチングサーバ308、クライアントデバイス、及び/又は他のデバイスに送信し得る。
【0050】
[0063]図4は、本開示の態様による、透かしを使用してメディアデバイスにおけるコンテンツの表示を監視するプロセスの例となるブロック図を例示する。図4に図示されるシステムは、図3のセキュアストリームシステム300に対応し得る。プロセスは、メディアデバイス304がメディアストリーム(例えば、ビデオフレーム及び/若しくはオーディオのシーケンス、又は同様のもの)についての要求404をスティッチングサービス308に送信したときに始まり得る。スティッチングサービス308は、メディアデバイス304によって要求されたメディアストリームに挿入されるべき追加のメディア及び/又は特殊コンテンツについての要求408を送信し得る。コンテンツサーバ112は、要求されたメディア及び/又は特殊コンテンツの識別を有する応答412を送信する。いくつかの事例では、応答412は、VAST応答であり得る。
【0051】
[0064]コンテンツサーバ112は、要求されたメディア及び/又は特殊コンテンツのための透かしを含む通信416を、メディアCDN108に送信し得る。いくつかの事例では、コンテンツサーバ112は、メディア及び/又は特殊コンテンツに透かしを適用し、メディア及び/又は特殊コンテンツをメディアCDN108に送信し得る。他の事例では、コンテンツサーバ112は、透かしを適用するための命令をメディアCDN108に通信し得、メディアCDN108が、透かしをメディア及び/又は特殊コンテンツに適用し得る。応答412及び通信416は、直列に(例えば、応答412の後に通信416が続くか、又はその逆)送信され得るか、又は並列に送信され得る。
【0052】
[0065]コンテンツサーバ112から応答412を受信すると、スティッチングサービス308は、メディアデバイス304によって要求されたメディアストリームの識別を含む要求420と、メディア及び/又は特殊コンテンツの識別を含む要求428と、を送信する。要求420及び428は、直列に(例えば、要求420の後に要求428が続くか、又はその逆)送信され得るか、又は並列に送信され得る。メディアCDN108は、メディアCDNにおいて要求されたメディアストリームを識別し、要求されたメディアストリームを、応答424において、スティッチングサービス308に送信する。メディアCDN108は、(メディアCDNにおいて)要求されたメディア及び/又は(例えば、特殊コンテンツCDNにおいて)特殊コンテンツを識別し、応答432において、要求されたメディア及び/又は特殊コンテンツ(透かしを有する)をスティッチングサービス308に送信する。応答424及び432は、直列に(例えば、応答424の後に応答432が続く、又はその逆)送信され得るか、又は並列に送信され得る。
【0053】
[0066]スティッチングサービス308は、ビデオフレームの単一のシーケンスを生成するために、応答424及び432において受信された、メディアストリームと、メディア及び/又は特殊コンテンツと、を使用し得る。スティッチングサービス308は、応答436を介して、ビデオフレームの単一のシーケンスをメディアデバイス304に送信する。メディアデバイス304は、表示のための準備において、ビデオストリームのシーケンスを処理し得る(例えば、個々のフレームの画像処理、解像度のアップスケーリング又はダウンスケーリング、フレーム外挿、等)。メディアデバイス304が、透かしを備えるビデオフレームを表示するにつれて、メディアデバイス304は、シンボルのシーケンスを導出するために、透かしを検出及び復号し得る。シンボルのシーケンスが暗号化されている場合、メディアデバイス304は、メディアデバイス304に含まれる情報及び/又は命令を導出するために、シンボルのシーケンスを解読し得る。透かしは、透かしを入れられたメディア及び/又は特殊コンテンツの識別を提供し、メディア及び/又は特殊コンテンツの表示がトラッキングサーバ312に通信されるべきであることを示し、メディア及び/又は特殊コンテンツに関連付けられた情報(例えば、限定はしないが、制作スタッフ、俳優、制作に関する事実、メディア及び/又は特殊コンテンツのコンテンツのコンテキスト又はセマンティクスに関する事実、これらの組合せ、及び/又は同様のものを含む)、トークン、これらの組合せ、又は同様のものを提供し得る。
【0054】
[0067]透かしにメディア及び/又は特殊コンテンツがメディアデバイス304によって表示されたというインジケーションをトラッキングサーバ312に送信するためのアドレスがない場合には、メディアデバイス304は、メディア及び/又は特殊コンテンツの表示のインジケーションを送信するためのアドレスについての要求440を、コンテンツサーバ112に送信し得る。コンテンツサーバは、トラッキングサーバ312の識別と、トラッキングサーバ312の宛先アドレス(例えば、ネットワークアドレス、URL、又は同様のもの等)と、を含む応答444を送信し得る。応答444はまた、通信プロトコル、データフォーマット、インジケーションがそれにわたって送信されるべき時間間隔、及び/又は同様のもの等の、トラッキングサーバ312への通信を生成するための情報も含み得る。要求440及び応答444(及び/又は、メディアデバイス304とコンテンツサーバ112との間の他の通信)は、メディアデバイス304とコンテンツサーバ112との間で通信される宛先アドレス及び/又は他の情報が無許可のデバイスによって取得されることを防止するために、暗号化され得る。
【0055】
[0068]メディアデバイス304は、応答444を受信し、トラッキングサーバ312への通信448を生成する。通信448は、表示されたメディア及び/又は特殊コンテンツの識別、メディア及び/又は特殊コンテンツがメディアデバイス304によって表示されたというインジケーション、メディアデバイス304の識別、メディアデバイス304及び/又はメディアデバイス304のユーザに関連付けられた人口統計学的情報、(例えば、秒単位、分単位、及び/又は、メディア及び/又は特殊コンテンツが表示されるように設定された総時間に対する、メディア及び/又は特殊コンテンツが表示された時間のパーセンテージとしての)メディア及び/又は特殊コンテンツが表示された持続時間、メディアデバイス304のネットワーク情報(例えば、IPアドレス、MACアドレス、メディアデバイス304のISPの識別、及び/又は同様のもの)、トークン(例えば、図3に関連して前述したように通信を認証するためのもの)、これらの組合せ、又は同様のものを含み得る。一旦メディア及び/又は特殊コンテンツの表示が報告されると、プロセスは、終了し得、及び/又は、メディアデバイス304が新しいメディアストリームを要求するまで、ビデオフレームのシーケンスが完全に表示されるまで、又は同様のことまで待機し得る。通信448(及び/又はメディアデバイス304と宛先アドレスに位置するデバイスとの間の他の通信)は、宛先アドレスに位置するデバイスに通信される情報が無許可のデバイスによって取得されることを防止するために、暗号化され得る。
【0056】
[0069]図5は、本開示の態様による、コンテンツの表示を監視及び報告するメディアデバイスを説明する、例となるプロセス500のフローチャートを例示する。ブロック504において、メディアデバイスは、ビデオフレームのセット(例えば、ビデオフレームのシーケンス)を含むビデオデータを受信する。メディアデバイスは、要求されたメディアストリーム及び特殊コンテンツからフレームのセットを生成するスティッチングサービス(例えば、図3及び図4のスティッチングサービス304等)から、ビデオフレームのセットを受信し得る。ビデオフレームのセットは、メディアストリーム又はメディア及び/若しくは特殊コンテンツについてのメディアデバイスによる要求に応答して受信され得る。
【0057】
[0070]ブロック508において、メディアデバイスは、フレームのセットのうちの1つ以上のフレーム内の透かしを検出する。例えば、透かしは、スティッチングサービスによってメディアストリームに追加された特殊コンテンツの1つ以上のフレームに埋め込まれ得る。透かしは、コンテンツサーバ(例えば、コンテンツサーバ112)及び/又はメディアCDN(例えば、メディアCDN108)によって、1つ以上のフレームに埋め込まれたものであり得る。
【0058】
[0071]透かしは、特殊コンテンツに関連付けられた追加の情報及び/又は命令を伝達し得るシンボルのシーケンスを表すために、1つ以上のフレームの一部分における画素値の変調を含み得る。例えば、いくつかの画素のルミナンス値及び/又はクロミナンス値は、第1のシンボルを表すためにシフトされ得、他の画素のルミナンス値及び/又はクロミナンス値は、第2のシンボルを表すために異なってシフトされ得る。一例では、第1のセットの画素のルミナンス値は、第1のシンボルを表すために55にシフトされ得、第2のセットの画素のルミナンス値は、第2のシンボルを表すために16にシフトされ得る。いくつかの事例では、シンボルのシーケンスは暗号化され得、これにより、一旦透かしがシンボルのシーケンスに復号されると、シンボルのシーケンスは解読され得る。
【0059】
[0072]透かしは、メディアデバイスによって表示されるべきメディアを識別し得る。例えば、透かしは、メディアデバイスによって表示されるべき(又は現在表示されている)メディア及び/又は特殊コンテンツのメディアの直接的な識別(例えば、英数字表現)又は間接的な識別(例えば、ルックアップテーブルと共に使用可能なコード)を含み得る。いくつかの事例では、透かしは、別のソース(例えば、ローカルメモリ、コンテンツサーバ、及び/又は同様のもの等)から識別を取得するようにメディアデバイスをトリガすることによって、メディアデバイスによって表示されるべきメディアを識別し得る。
【0060】
[0073]ブロック512において、メディアデバイスは、透かしに関連付けられた特定のメディアに対応するビデオフレームを表示する。いくつかの事例では、特定のメディアのビデオフレームは、メディア及び/又は特殊コンテンツのビデオフレームであり得る。他の事例では、透かしは、特定のメディアを識別し、メディアデバイスに、メディア及び/又は特殊コンテンツに対応するビデオフレームの少なくとも一部分を特定のメディアと置き換えるように指示する命令を含み得る。メディアデバイスは、メディアCDN(例えば、メディアCDN108)から、コンテンツサーバ(例えば、コンテンツサーバ112)から、ローカルメモリ(例えば、メディアキャッシュ132)から、クライアントデバイス、別のリモートデバイス、及び/又は同様のものから、特定のメディアを取得し得る。
【0061】
[0074]ブロック516において、メディアデバイスは、特定のメディアがメディアデバイスによって表示されたというインジケーションを含む通信を、宛先アドレス(例えば、ネットワークアドレス、URL、又は同様のもの)に送信する。メディアデバイスは、宛先アドレスを透かしから取得し得るか、又は、透かしに存在しない場合、メディアデバイスは、コンテンツサーバ等のリモートサーバから宛先アドレスを要求し得る。
【0062】
[0075]透かしは、宛先アドレスにおいて位置するデバイス(例えば、トラッキングサーバ、又は同様のもの)への通信に含まれるべきトークンを含み得る。トークンは、通信を認証するために、デバイスによって使用され得る。例えば、トークンがマッチングトークンにマッチされ得る場合には、通信は、真正であると決定され得、特定のメディアの表示は、カウントされ得る。トークンが対応するトークンとマッチしない場合には、通信は、真正でないと決定され得、特定のメディアの表示は、カウントされ得ない。トークンは、対称認証(例えば、トークンがマッチングトークンと同一である)又は非対称認証(例えば、トークンがマッチングトークンとは異なるが、1対1の方式でマッチングトークンに対応する)のために使用され得る。
【0063】
[0076]いくつかの事例では、メディアデバイスとリモートサーバとの間の通信、及び/又は、メディアデバイスと宛先アドレスにおいて位置するデバイスとの間の通信は、通信に対する不正アクセスを防止するために、セキュアにされ得る(例えば、非対称又は対称暗号化スキームを使用して暗号化され得る)。
【0064】
[0077]いくつかの事例では、プロセス500は、メディアデバイスが、別のメディアストリームを要求したとき、及び/又は、ブロック504に戻ることによって、新しいビデオフレームのセットを受信したとき、継続し得る。代替として、ブロック516を実行すると、プロセス500は終了し得る。
【0065】
[0078]図6は、本開示の態様による、コンテンツの表示の監視及び報告に関与するメディアサーバを説明する、例となるプロセス600のフローチャートを例示する。ブロック604において、メディアサーバ(例えば、コンテンツサーバ112、メディアCDN108、又は同様のもの等)は、特殊コンテンツについての要求を受信する。特殊コンテンツは、メディア(例えば、テレビ番組、映画、予告編、又は同様のもの)及び/若しくは広告(例えば、コマーシャル又は同様のもの)、情報のコンテンツ(例えば、教育コンテンツ又は他の情報のコンテンツ)又は他のコンテンツを含み得る。要求は、メディアデバイスの識別、及び/又は、メディアデバイスによって要求されたメディアストリームの識別を含み得る。例えば、要求は、メディアデバイスから、スティッチングサービスから、クライアントデバイスから、及び/又は別のリモートデバイスから受信され得る。
【0066】
[0079]いくつかのケースでは、メディアサーバは、メディアストリーム内でメディアデバイスによって表示されるべき特定の特殊コンテンツを識別することによって、応答を生成し得る。特定の特殊コンテンツは、メディアデバイスの識別、メディアデバイスに関連付けられた人口統計学的情報、メディアデバイスによって要求されたメディアストリームの識別、これらの組合せ、又は同様のものに基づいて選択され得る。いくつかの例では、メディアサーバは、特殊コンテンツを要求したデバイス及び/又はメディアストリームについての要求を満たすことになるメディアCDNに応答を送信し得る。
【0067】
[0080]ブロック608において、メディアサーバは、特定の特殊コンテンツに関連付けられた透かしを送信する。透かしは、限定はしないが、特殊コンテンツの表示をトラッキングするように構成されたデバイスの識別、宛先アドレス、トークン(例えば、特殊コンテンツの報告された表示を認証するためのもの)、特殊コンテンツの表示の予期された持続時間の識別、特殊コンテンツの識別、特殊コンテンツの表示が報告されるべきであるというインジケーション、これらの組合せ、又は同様のもの等、メディアデバイスに、特殊コンテンツの表示をトラッキングサーバへと報告させる情報及び/又は命令を含み得る。透かしはまた、制作情報(例えば、監督、制作者、制作ロケーション、制作に関連付けられた事実、等)、出演情報(例えば、俳優、等)、コンテキスト情報及び/若しくはセマンティクス情報(例えば、メディア及び/又は特殊コンテンツのコンテンツに関連付けられた情報、等)、これらの組合せ、又は同様のもの等の、メディアストリーム及び/又は特殊コンテンツに関連付けられた情報を含み得る。透かしのコンテンツは、ビデオフレームに適用される前に、又は、透かしをビデオフレームに適用するデバイスに送信される前に、暗号化され得る。
【0068】
[0081]いくつかの事例では、メディアサーバは、(例えば、特殊コンテンツをメディアCDNに送信する前に)特殊コンテンツの1つ以上のフレームに透かしを適用する。他の事例では、メディアサーバは、特殊コンテンツに透かしを適用するための命令を、特殊コンテンツを記憶しているメディアCDNに送信する。特殊コンテンツに透かしを適用することは、特殊コンテンツを含むべき各ビデオフレームについて、第1のシンボルを表すようにビデオフレームの画素の第1の部分の画素値と、第2のシンボルを表すようにビデオフレームの画素の第2の部分の画素値とを修正することを含み得る。例えば、画素値を修正することは、画素のルミナンス値及び/又はクロミナンス値をシフトすることを含み得る。
【0069】
[0082]透かしがメディアCDNに送信されると、メディアCDNは、メディアデバイスによって要求されたメディアストリームと、透かしを備える特殊コンテンツとを、スティッチングサービスに送信し得る。スティッチングサービスは、2つ以上の別個のビデオフレームソース(例えば、メディアストリーム及び特殊コンテンツ、等)から、ビデオフレームの単一のシーケンスを生成し、それを表示のためにメディアデバイスに送信する。
【0070】
[0083]メディアデバイスがビデオフレームの単一のシーケンスを表示するとき、メディアデバイスは、特殊コンテンツの1つ以上のフレームに埋め込まれた透かしを検出及び復号し得る。透かしを復号すると、メディアデバイスは、特殊コンテンツの表示を報告するために、透かしと共に埋め込まれた命令を実行し得る(又は、透かしの情報を使用し得る)。
【0071】
[0084]ブロック612において、メディアデバイスは、メディアデバイスからトラッキング宛先についての要求を受信し得る。要求は、前述したように、メディアデバイスが特定のメディア内に埋め込まれた透かしを復号したことに応答して、送信又は受信され得る。いくつかの事例では、メディアサーバとメディアデバイスとの間の通信は、宛先アドレス及び/又は他の情報が無許可のデバイスにアクセス可能になることを防止するために、(例えば、対称又は非対称暗号化スキームを使用して)暗号化され得る。
【0072】
[0085]ブロック616において、メディアサーバは、宛先アドレスをメディアデバイスに送信する。宛先アドレス(例えば、ネットワークアドレス、物理アドレス、ジオロケーション、URL、又は同様のもの)は、特殊コンテンツが表示されたインスタンスの数量をトラッキングするように構成されたデバイス(例えば、トラッキングサーバ312、又は同様のもの)に対応し得る。宛先アドレスは、特殊コンテンツがメディアデバイスによって表示されたことを示す通信を送信するために、メディアデバイスによって使用可能であり得る。例えば、メディアデバイスは、特殊コンテンツが表示されたというインジケーションを含む通信を、宛先アドレスにおいて位置するデバイスに送信し得る。通信はまた、表示されたメディア及び/又は特殊コンテンツの識別、メディア及び/又は特殊コンテンツがメディアデバイス304によって表示されたというインジケーション、メディアデバイス304の識別、メディアデバイス304及び/又はメディアデバイス304のユーザに関連付けられた人口統計学的情報、(例えば、秒単位、分単位、及び/又は、メディア及び/又は特殊コンテンツが表示されるように設定された総時間に対する、メディア及び/又は特殊コンテンツが表示された時間のパーセンテージとしての)メディア及び/又は特殊コンテンツが表示された持続時間、メディアデバイス304のネットワーク情報(例えば、IPアドレス、MACアドレス、メディアデバイス304のISPの識別、及び/又は同様のもの)、トークン(例えば、図3に関連して前述したように通信を認証するためのもの)、これらの組合せ、又は同様のものを含み得る。
【0073】
[0086]図7は、本開示の態様による、2レベルの透かしを使用してビデオフレームの上部の行に埋め込まれたデータの例を例示する。フレーム704は、メディアデバイスを介して提示され得るビデオフレームを表す。透かし708は、フレーム704の画素のセットの画素値を変調することによって挿入され得る。画素のセットは、(図示されるような)上部の1つ以上の画素行、下部の1つ以上の画素行、右の2つの画素列、左の2つの画素列、等のような、フレーム704の周縁において配置され得る。いくつかの事例では、透かし708は、フレーム7042つの異なるロケーションの間で分割され得る。例えば、透かし708は、上部の行と下部の行との両方、上部の行と左の列との両方、等において位置し得る。
【0074】
[0087]図示されるように、透かし708は、2値コードの第1のシンボル(例えば、0)を表す第1の画素値の画素と、2値コードの第2のシンボル(例えば、1)を表す第2の画素値の画素と、を含み得る。透かし708は、非2値コードの追加のシンボルを表す追加の画素値を含み得る。透かし708は、2値コードのシンボルを表す画素の離散的なセットによって表される。ソースが無損失(lossless)である(例えば、信号データが雑音又は他の信号インピーダンスによる歪み又は損失を受けない)場合には、単一の画素が単一のシンボルを表し得る。ビデオソースが損失を受け得る場合(例えば、フレームの部分が雑音、距離、等に起因して歪められ得る、テレビ放送、ケーブルテレビ、等)には、画素のセットが、単一のシンボルを表し得る。図示されるように、8つの画素が各シンボルを表すために使用され得る(例えば、4つの画素の2つの行)。いくつかの事例では、透かし708を含む第1のビデオフレーム等の特定のビデオフレームは、画素の各セットが、メディアデバイスが透かし708を検出することを確実にするために、追加の画素(例えば、8つの画素の2つの行、又は同様のもの等)を含み得る。
【0075】
[0088]透かし708の拡大された部分712は、画素の各セットにおいて表されるシンボルを例示する。図示された例では、より高いルミナンスを有する(例えば、白により近い)画素のセットは、1の値を割り当てられ、より低いルミナンスを有する(例えば、黒により近い)画素のセットは、0の値を割り当てられる。ルミナンスは、0(例えば、黒)から100(例えば、白)までの間で変化させられ得る。いくつかの事例では、透かしの知覚可能性を低減するために、0を表す画素と1を表す画素との間のルミナンスにおける差が最小化され得る。例えば、1を表す画素は、50のルミナンスを有し得、0を表す画素は、10のルミナンスを有し得る。透かし708の画素のセットの色成分は、(例えば、フレーム704の、又は同様のものの)近くの画素の色成分に基づいて選択され得る。色成分は、より大きいベースコード(larger-base codes)(例えば、2つより多くのシンボルを用いたコード)のために、及び/又は、メディアデバイスのユーザによる透かし708の知覚可能性を更に低減するために使用され得る。
【0076】
[0089]図8は、本開示の態様による、ビデオフレームの上部の行及び上部の2つの行に埋め込まれた、例となる2値コーディングされた透かしを例示する。透かし801は、シンボルのシーケンスを表す2つの画素行を備える透かしを例示する。16個の画素(8つの画素の2つの行)の各セットは、透かしのシンボルを表し、より暗い画素(例えば、16のルミナンス値Y’を有する)は、0のシンボルを表し、より明るい画素(例えば、50のルミナンス値Y’を有する)は、1のシンボルを表す。画素のルミナンス値及び/又はクロミナンス成分は、透かしの知覚可能性を低減するために、フレームの非透かし部分に基づいて選択され得る。従って、黒及び白(例えば、それぞれ0及び100のルミナンス値Y’)は、選択されないことがある。
【0077】
[0090]透かしの単一のシンボルを表している行及び/又は画素の数量は、ビデオの信号品質に基づいて選択され得る。例えば、高い信号品質(例えば、雑音及び/又は損失がほとんどない、等)は、単一の行を使用し得る。透かし810は、透かし801と同じシンボルのシーケンスを表す単一の画素行を備える透かしを例示する。代替又は追加として、高い信号品質は、単一のシンボルを表すために、行当たりより少ない画素(例えば、連続した4つの画素(4 pixels in a row)、連続した2つの画素、1つの画素、又は同様のもの)を使用し得る。同様に、不十分な品質の信号は、行当たりの追加の画素又は追加の行を使用し得る。シンボル当たり追加の画素及び/又は行を使用することは、単一のビデオフレーム中に含まれ得るシンボルの数量を低減させ得るが、透かしが検出され、正しく復号され得る可能性を増大させ得る。メディアデバイスが、現在の信号品質のインジケーションをリモートサーバに送信し得る。次いで、リモートサーバは、透かしが検出され得る可能性を増大させ、透かし雑音又は他のアーチファクトが透かしに影響を及ぼす可能性を低減させるために、各フレーム中の透かしを変調し得る。
【0078】
[0091]図9は、本開示の態様による、人間の目に対する透かしの知覚的ぼかしを増大させるために、透かしに近接した遷移領域が漸進的に暗くされる、例となるビデオフレームを例示する。境界領域が、透かしとビデオフレームの残りの部分との間に生成され得る。境界領域は、透かしに隣接する1つ以上の画素行を含み得る。これらの行は、透かしの知覚可能性を低減する視覚的ブレンディング効果をもたらすように修正される。例えば、行901及び902は、(例えば、透かしのシンボルを表す画素値に比例する)同じ値に調整され得る。いくつかの事例では、各行は、勾配を作り出すために独立して調整され得る。例えば、行901の画素のルミナンス値Yは、透かしのシンボルを表す画素値に基づいて低減され得、行902の画素のルミナンス値Yも低減され得るが、行901のものよりも小さくなり得る。
【0079】
[0092]境界領域は、任意の数の行を含み得る。境界領域における行数で除算したビデオフレームの平均ルミナンスに等しいルミナンス勾配が定義され得る。次いで、ビデオフレームの平均ルミナンスが、透かしの平均ルミナンスより高いか、又はそれより低いかが決定される。ビデオフレームの平均ルミナンスが透かしの平均ルミナンスより高い場合には、境界領域は、透かしに最も近い暗さ(dark)からビデオフレームに最も近い明るさ(light)(例えば、より低いルミナンスからより高いルミナンスに)シフトし得る。ビデオフレームの平均ルミナンスが透かしの平均ルミナンスより低い場合には、境界領域は、透かしに最も近い明るさからビデオフレームに最も近い暗さに(例えば、より高いルミナンスからより低いルミナンスに)シフトし得る。
【0080】
[0093]例えば、ビデオフレームの平均ルミナンスが透かしの平均ルミナンスより高い場合には、境界領域の第1の行(例えば、透かしに隣接する行)の画素のルミナンス値は、ビデオフレームの平均ルミナンス(例えば、ビデオフレームの平均ルミナンスに比例する値、又は同様のもの)に基づいて低減され得る。境界領域の次の行(透かしからより離れた次の行)のルミナンスは、前の行が低減された量からルミナンス勾配を引いたものだけ低減され得る。透かしから更に離れた各後続の行のルミナンスは、すぐ前の行が低減された量からルミナンス勾配を引いたものに基づいて低減され得る。
【0081】
[0094]別の例では、ビデオフレームの平均ルミナンスが透かしの平均ルミナンスより低い場合には、境界領域の第1の行(例えば、透かしに隣接する行)の画素のルミナンス値は、ビデオフレームの平均ルミナンス(例えば、ビデオフレームの平均ルミナンスに比例する値、又は同様のもの)に基づいて増大され得る。境界領域の次の行(透かしからより離れた次の行)のルミナンスは、前の行が増大された量からルミナンス勾配を引いたものだけ増大され得る。透かしから更に離れた各後続の行のルミナンスは、すぐ前の行が増大された量からルミナンス勾配を引いたものに基づいて増大され得る。
【0082】
[0095]代替として、ビデオフレームの平均ルミナンスが第1の閾値より低い場合には、境界領域は、透かしに最も近い明るさから、透かしから最も離れた暗さまでの勾配を有し得る。ビデオフレームの平均ルミナンスが第2の閾値より高い場合には、境界領域は、透かしに最も近い暗さから、透かしから最も離れた明るさまでの勾配を有し得る。各行のルミナンス値の差は、透かし又はビデオフレームの平均ルミナンス値の比例値であり得る。第1の閾値は、第2の閾値に等しくあり得るか、又は第2の閾値とは異なり得ることに留意されたい。
【0083】
[0096]図10Aは、本開示の態様による、人間の目に対する透かしの知覚的ぼかしを生じさせるために、透かしの0シンボルと1シンボルとの値が交互する、ビデオフレームの例となるシーケンスを例示する。透かしは、(ベースコードに応じて)2つ以上のタイプのシンボルを示すための画素値の変調を含むので、交互する画素値は、メディアデバイスのユーザにはフリッカ(flickering)として見え得る。フリッカは、後続のビデオフレームにおいてビデオフレームの逆にした形態を提示することによって、低減又は除去され得る。透かしの第1のバージョンが、フレーム1に埋め込まれ得る。同じ透かしの第2のバージョンが、フレーム2に埋め込まれ得る。透かしの第2のバージョンは、第1の透かしの反転された形態であり得る。例えば、第1のシンボルを表すルミナンス値(例えば、10~16の間の低いルミナンス)を有する画素の各セットは、第2のシンボルを表すルミナンス値(例えば、45~55の間の高いルミナンス)を与えられ得る。第2のシンボルを表すルミナンス値を有する画素の各セットは、第1のシンボルを表すルミナンス値を与えられ得る。
【0084】
[0097]メディアデバイスは、フレーム1において透かしの第1のバージョンを受信した後、フレーム2においては、その透かしが反転されることを予期し得る。フレーム2における透かしを復号するとき、メディアデバイスは、復号されたシンボルを反転させ得る(例えば、各第1のシンボルは、第2のシンボルに置き換えられ得、各第2のシンボルは、第1のシンボルに置き換えられ得る)。メディアデバイスは、透かしが検出され、正しく復号されること確実にするために、いくつのフレームが、(例えば、交互する反転された形態で)同じ透かしを含むべきかのインジケーションを受信し得る。
【0085】
[0098]いくつかの事例では、次のフレーム(例えば、フレーム3)は、前のフレーム(例えば、フレーム2)において含まれる透かしの反転された透かしを含み得、これは、(例えば、フレーム1における)元の透かしに等しい。透かしは、2つ以上のビデオフレームを使用して、1回以上反転され得る。交互するフレームにおいて画素を反転させることによって、ユーザは、透かしを2つのフレーム間の平均画素値として知覚し得る。例えば、第1の画素が白であり、反転された画素が黒である場合、すばやく連続して表示されるとき、2つの画素は、(図示されるように)グレーに見えることになる。これは、透かしを、フリッカしている画素ではなく、ソリッドカラーとして見えるようにし得る。透かしが反転される回数を増大させることは、透かしが知覚され得る可能性を減少させ得るが、ビデオフレームの所与のセットを用いて送信され得るデータ量を低減し得る。透かしが反転されることになるフレームの数量は、透かしに埋め込まれるべきデータ量と、透かしが検出され得る可能性と、に基づく。
【0086】
[0099]図10Bは、本開示の態様による、データシンボルの知覚的ブレンディングを改善するための、2つのフレームごとのデータシンボルの例となるビデオ反転を例示する。いくつかの事例では、より大きいデータ量をメディアデバイスに送信するために、透かしのシーケンスがフレームのセットに挿入され得る。例えば、フレーム1が、第1の透かしを含み得、フレーム2が、第1の透かしの反転された形態を含み得る。フレーム1及びフレーム2は、反転ペアAと呼ばれ得る。透かしのシーケンスにおける次の透かしは、フレーム3に埋め込まれ得、その透かしの反転が、フレーム4に埋め込まれている(例えば、反転ペアB)。各奇数ビデオフレームが、透かしのシーケンスにおいて新しい透かしを含み得、各偶数フレームが、すぐ前のビデオフレームに埋め込まれた透かしの反転された形態を含み得る。
【0087】
[0100]透かしのシーケンスが、ビデオフレームのセットに埋め込まれたとき、それは、ユーザにとってより知覚可能になり得る。ビデオフレームと透かしとの間の画素の変調は、フリッカとして見え得る。透かしとその透かしの反転された形態とを連続するビデオフレームに埋め込むことによって、そのフリッカは、低減又は除去され得る。
【0088】
[0101]図11は、本開示の態様による、透かし入りフレームの検出を強化するために、強化されたリードインデータシンボルシーケンスを用いた例となる透かしを例示する。透かしは、2値コードのシンボルをそれぞれ表す画素のセットを含み得る。シンボルを表す画素のセットにおける画素の数量は、シンボルの画素サイズと呼ばれ得る。いくつかの事例では、画素サイズは、(透かしが1つの行である場合)4つの画素又は(透かしが2つの行、例えば、4つの画素の2つの行等である場合)8つの画素であり得る。画素のセットの画素値は、ほぼ同じ画素値に対応し得る。代替として、画素のセットの画素値は、(例えば、範囲内の)同様の画素値に対応し得る。
【0089】
[0102]透かしは、(リードインパターンとして知られる)透かしの開始をシグナリングするデータの所定のパターンで始まり得る。所定のパターンは、透かしの最初の8つ又は16個のシンボルにおいて配置され得る。メディアデバイスは、最初に、所定のパターンがビデオフレームの最初のx個の画素(例えば、シンボル当たりの画素の数量*データの所定のパターンにおけるシンボルの数)において検出されるかどうかを決定し得る。所定のパターンが検出された場合、メディアデバイスは、その行における残りの画素を復号し続け得る。
【0090】
[0103]透かしにおけるリードインパターンは、透かしがメディアデバイスによって検出されることになる可能性を増大させるために調整され得る。例えば、各シンボルの画素サイズは、増大され得る。各シンボルの画素サイズを増大させることによって、リードインパターンは、メディアデバイスによって、より確実に復号され得る。いくつかの例では、リードインパターンの各シンボルの画素サイズは、(例えば、図示されるように)2倍にされ得る。透かしのシンボルの残りの画素サイズは、調整されないことがある。例えば、リードインパターンが4の画素サイズを有する8つのシンボルである場合には、リードインパターンのみが、最初の64個の画素(例えば、8つのシンボルでのシンボル当たり8の画素サイズ)を占有し得、リードインパターンの後のシンボルの画素サイズは、4のままであり得る。リードインパターンは、透かし入りフレームが、透かしを含まない大きい数量のビデオフレームの間で周期的に生じるときに、特に有用であり得る。
【0091】
[0104]この例では、透かし1101は、シンボル当たりの増大された画素サイズを有するリードインパターンを含む。リードインパターンのシンボルは、画素サイズの2倍(例えば、4の2行から8の2行)によって表される。例えば、シンボル1102及び1103は、8個ではなく16個の画素によって表される。シンボル当たりの増大された画素サイズは、リードインパターンの長さにわたって(例えば、8~16シンボル又は256個の画素まで)続く。リードインパターンの終わりにおいて、及びそのビデオフレームにおける透かしの残りの部分の間、各シンボルの画素サイズは増大されない(例えば、8の2行)。リードインパターンは、限定はしないが、シンボル当たりの通常の画素サイズの2倍、シンボル当たりの通常の画素サイズの3倍、シンボル当たりの通常の画素サイズの分数、シンボル当たりの通常の画素サイズの倍数、又は同様のもの等の任意の量によって増大される、シンボル当たりの画素サイズを含み得る。
【0092】
[0105]図12は、本開示の態様による、0シンボルと1シンボルとの間のユークリッド距離が一時的に増大される、透かしのデータシンボルの例を例示する。透かしは、ビデオフレームの上部の2つの行における画素等の画素のセットの画素値を変調することによって、ビデオフレームに符号化され得る。画素値を変調することは、2値コードの2つのシンボルを表すために、2つのルミナンス値を選択することを含み得る。2つのルミナンス値は、メディアデバイスが雑音又は同様のものの存在下で各シンボルを検出し得る可能性と、透かしがメディアデバイスのユーザによって知覚されない可能性と、に基づいて選択され得る。第1のシンボルのためのルミナンス値と第2のシンボルのためのルミナンス値とが互いに近すぎる場合、メディアデバイスが、画素のセットが第1のシンボルを表すのか、又は第2のシンボルを表すのかを正確に決定するのを、信号雑音が妨げ得る。第1のシンボルのためのルミナンス値と第2のシンボルのためのルミナンス値とが近いほど、ユーザが透かしを知覚する可能性は低くなる。ルミナンス値は、メディアデバイスが、透かしのシンボルシーケンスを検出し、正確に復号することが可能となる閾値可能性を提供する最小差として選択され得る。いくつかの事例では、差は、約40であり得、従って、第1のシンボルを表す画素が約5~15のルミナンス値を有し得、第2のシンボルを表す画素が約45~55のルミナンス値を有し得る。
【0093】
[0106]信号雑音は、シンボル間のルミナンス差が最小限(minimal)(例えば、約40)であるとき、復号されたシンボルシーケンスにおけるエラーを誘起し得る。復号されたシンボルシーケンスにおけるエラーの可能性を低減するために、エラー訂正透かしが、透かしを含むべきビデオフレームのセットのうちの1つ以上のビデオフレームに挿入され得る。エラー訂正透かしは、第1のシンボルを表すルミナンス値と第2のシンボルを表すルミナンス値との間のより高い差を含み得る。いくつかの事例では、エラー訂正透かしのための高いルミナンス値と低いルミナンス値との間の差は、約80であり得、従って、第1のシンボルを表す画素が約10~20のルミナンス値を有し得、第2のシンボルを表す画素が約75~85のルミナンス値を有し得る。
【0094】
[0107]例えば、図12の透かし1201は、16のルミナンス値を有するシンボル1202と、90のルミナンス値を有するシンボル1203と、を含むエラー訂正透かしであり得る。透かしのルミナンス値における差は74である。図8のシンボル802及び803のルミナンス値は、それぞれ16及び50である。シンボル802と803との間のルミナンス値における差は34である。図12の透かしのシンボル間のルミナンス値における差は、図8の透かしのシンボル間のルミナンス値における差の2倍であり、これは、復号されたシンボルシーケンスにおけるエラーの可能性を低減する。
【0095】
[0108]メディアデバイスがエラー訂正透かしを受信すると、シンボル間のルミナンス値のより大きい差は、メディアデバイスが、シンボルシーケンスを検出し、正しく復号し得る可能性を増大させる。次のビデオフレームは、シンボル間のルミナンス値における通常の(より小さい)差を有する通常の透かしを含み得る。
【0096】
[0109]エラー訂正透かしは、フレームのセットのうちの複数のフレームに埋め込まれ得る。例えば、エラー訂正透かしは、「n」個のフレームごとに挿入され得る。代替又は追加として、エラー訂正透かしは、エラー訂正透かしが挿入されるたびに、1つ以上の隣接するビデオフレームに挿入され得る。例えば、エラー訂正透かしがビデオフレームに挿入されるたびに、エラー訂正透かしは、1つ以上の後続のフレームにも(例えば、m-1個のフレームについても)挿入され得る。即ち、エラー訂正透かしが挿入されるたびに、それは、「m」個のビデオフレームに挿入され得る。
【0097】
[0110]代替又は追加として、ビデオフレームの平均ルミナンスが高い(例えば、第1の閾値より大きい)とき、透かしの画素は、(例えば、第1のシンボルを表すための約10~20のルミナンス値及び第2のシンボルを表すための約70~80のルミナンス値、又はそれらの間の差が約80である任意のルミナンス値を使用して)第1のシンボルを表す画素と第2のシンボルを表す画素との間のルミナンス値における差が約80であるように変調され得る。ビデオフレームの平均ルミナンスが低い(例えば、第2の閾値より小さい)とき、透かしの画素は、(例えば、第1のシンボルを表すための約10~20のルミナンス値及び第2のシンボルを表すための約45~55のルミナンス値、又はそれらの間の差が約40である任意のルミナンス値を使用して)第1のシンボルを表す画素と第2のシンボルを表す画素との間のルミナンス値における差が約40であるように変調され得る。追加として、ビデオフレームの平均ルミナンスが低いとき、透かしの画素は、0シンボル色及び1シンボル色についての極値間で調整される、Cr等の色チャネルを有し得る。第1の閾値及び第2の閾値は、予め決定され得るか、又はビデオフレームの画素値に基づいて動的に決定され得る。いくつかの事例では、第1の閾値は、第2の閾値に等しくなり得る。他の事例では、第1の閾値は、第2の閾値との差であり得る。
【0098】
[0111]代替のエラー訂正プロセスが、(同じ透かしをそれぞれ含む)同じビデオフレームの複数のインスタンス又は複数の隣接するビデオフレームに同じ透かしを埋め込むことを含み得る。同じ透かしを2回以上送信することによって、メディアデバイスは、(例えば、ソースからメディアデバイスへの)ビデオ配信経路によって歪まされ得るデータをより良く復元することが可能になり得る。リードインパターンが検出されたが、ビデオの残りの部分が確実には復号されない場合、グループの後続のビデオフレームのビデオ値の平均化が、復号可能なデータを提供するために、信号対雑音比を増大させ得る。いくつかの事例では、メディアデバイスは、透かしをシンボルに復号する前に、同じ透かしの各インスタンスの画素値を平均化し得る。
【0099】
[0112]メディアデバイスは、同じ透かしを含むべきビデオフレームのグループの第1の透かしにおける一意のリードインパターンによって、(グループ中に2つ又はそれ以上あるかどうかにかかわらず)関連するビデオフレームを識別し得る。一意のリードインパターンは、一意のリードインパターンがビデオフレームの既知の数量に関連付けられていることに基づいて、又は、一意のリードインパターンのシンボルが、次のビデオフレームのうちのいくつが同じ透かしを含むことになるかを示すことに基づいて、ビデオフレーム中に含まれるフレームの数量を示し得る。代替として、第1のリードインパターンが、ビデオフレームのグループの開始を示すために使用され得、第2のリードインパターンが、ビデオフレームのグループ中の最後のフレームを示すために使用され得る。代替のエラー訂正プロセスは、前述したようなエラー訂正透かしを含む、本明細書で説明されるような他のプロセスと組み合わされ得る。
【0100】
[0113]図13は、本開示の態様による、例となるコンピューティングデバイスを例示する。例えば、コンピューティングデバイス1300は、本明細書で説明されるシステム又は方法のいずれかを実装し得る。いくつかの事例では、コンピューティングデバイス1300は、メディアデバイスのコンポーネントであり得るか、又はメディアデバイス内に含まれ得る。コンピューティングデバイス1300のコンポーネントは、バス等の接続1306を使用して、互いに電気通信状態にあるように示されている。例となるコンピューティングデバイスアーキテクチャ1300は、プロセッサ(例えば、CPU、プロセッサ、又は同様のもの)1304と、限定はしないが、メモリ1320、読取り専用メモリ(ROM)1318、ランダムアクセスメモリ(RAM)1316、及び/又は記憶デバイス1308等の、コンピューティングデバイス1300のコンポーネントを、処理ユニット1310に結合するように構成された接続1306(例えば、バス、又は同様のもの等)と、を含む。
【0101】
[0114]コンピューティングデバイス1300は、プロセッサ1304に直接接続されるか、近接しているか、又はその内に統合された、高速メモリのキャッシュ1302を含み得る。コンピューティングデバイス1300は、プロセッサ1304によるより迅速なアクセスのために、メモリ1320及び/又は記憶デバイス1308からキャッシュ1302にデータをコピーし得る。このようにして、キャッシュ1302は、プロセッサ1304がデータを待っている間の遅延を回避するパフォーマンスブーストを提供し得る。代替として、プロセッサ1304は、メモリ1320、ROM1318、RAM1316、及び/又は記憶デバイス1308から直接データにアクセスし得る。メモリ1320は、(例えば、限定はしないが、磁気、光、ソリッドステート、等のような)複数のタイプの同種又は異種メモリを含み得る。
【0102】
[0115]記憶デバイス1308は、揮発性及び/又は不揮発性メモリ等の1つ以上の非一時的なコンピュータ可読媒体を含み得る。非一時的なコンピュータ可読媒体は、コンピューティングデバイス1300によってアクセス可能な命令及び/又はデータを記憶し得る。非一時的なコンピュータ可読媒体は、限定はしないが、磁気カセット、ハードディスクドライブ(HDD)、フラッシュメモリ、固体メモリデバイス、デジタル多用途ディスク、カートリッジ、コンパクトディスク、ランダムアクセスメモリ(RAM)1316、読取り専用メモリ(ROM)1318、これらの組合せ、又は同様のものを含み得る。
【0103】
[0116]記憶デバイス1308は、プロセッサ1304及び/又は他の電子ハードウェアによって実行可能である、サービス1 1310、サービス2 1312、及びサービス3 1314等の、1つ以上のサービスを記憶し得る。1つ以上のサービスは、本明細書で説明された技法、ステップ、プロセス、ブロック、及び/又は動作のいずれか等の動作を実行すること、コンピューティングデバイス1300と通信状態にあるデバイスの動作を制御すること、処理ユニット1310及び/又は任意の専用プロセッサの動作を制御すること、これらの組合せ、或いは同様のことを行うためにプロセッサ1304によって実行可能な命令を含む。プロセッサ1304は、1つ以上のコア又はプロセッサ、バス、メモリ、クロック、メモリコントローラ、キャッシュ、他のプロセッサコンポーネント、及び/又は同様のものを含む、システムオンチップ(SOC)であり得る。マルチコアプロセッサは、対称型又は非対称型であり得る。
【0104】
[0117]コンピューティングデバイス1300は、マイクロホン、グラフィカル入力用のタッチセンシティブスクリーン、キーボード、マウス、モーション入力、音声、メディアデバイス、センサ、これらの組合せ、又は同様のもの等の、任意の数の入力メカニズムを表し得る1つ以上の入力デバイス1322を含み得る。コンピューティングデバイス1300は、ユーザに対してデータを出力する1つ以上の出力デバイス1324を含み得る。このような出力デバイス1324は、限定はしないが、メディアデバイス、プロジェクタ、テレビ、スピーカ、これらの組合せ、又は同様のものを含み得る。いくつかの事例では、マルチモーダルコンピューティングデバイスは、ユーザが、コンピューティングデバイス1300と通信するために、複数のタイプの入力を提供することを可能にし得る。通信インターフェース1326は、ユーザ入力及びコンピューティングデバイス出力を管理するように構成され得る。通信インターフェース1326はまた、1つ以上の通信プロトコルを介して、及び/又は、1つ以上の通信媒体(例えば、ワイヤード、ワイヤレス、等)を介して、リモートデバイスとの通信を管理する(例えば、接続を確立する、通信を受信/送信する、等)ように構成され得る。
【0105】
[0118]コンピューティングデバイス1300は、図13に示されるようなコンポーネントに限定されない。コンピューティングデバイス1300は、図示されていない他のコンポーネントを含み得、及び/又は、図示されているコンポーネントは、省略され得る。
【0106】
[0119]本開示の例示的な態様は、限定はしないが、以下を含む:
【0107】
[0120] 態様1:方法であって、メディアデバイスによって、ビデオフレームのセットを含むビデオデータを受信することと、ビデオフレームのセットのうちの少なくとも1つのビデオフレームにおいて、少なくとも1つのビデオフレームに埋め込まれた透かしを検出すること、ここにおいて、透かしは、メディアデバイスによって表示されるべきメディアを識別する、と、メディアデバイスによって、メディアを表示することと、透かしを検出することに基づいて、宛先アドレスに、メディアがメディアデバイスによって提示されたというインジケーションを送信することと、を備える方法。
【0108】
[0121] 態様2:メディアデバイスによって表示されるべきメディアを識別する透かしを検出することに応答して、宛先アドレスについての要求を送信することと、宛先アドレスを受信することと、を更に備える、態様1に記載の方法。
【0109】
[0122] 態様3:ビデオデータは、メディアに関連付けられたトークンを含み、メディアがメディアデバイスによって提示されたというインジケーションを送信することは、トークンを送信することを含む、態様1~2のいずれかに記載の方法。
【0110】
[0123] 態様4:メディアは、ビデオデータが受信される前に、メディアデバイスのローカルメモリに記憶される、態様1~3のいずれかに記載の方法。
【0111】
[0124] 態様5:メディアは、フレームのセットのうちの1つ以上のフレームの代わりに表示される、態様1~4のいずれかに記載の方法。
【0112】
[0125] 態様6:ビデオデータは、宛先アドレスとは異なるアドレスに関連付けられたデバイスから受信される、態様1~5のいずれかに記載の方法。
【0113】
[0126] 態様7:透かしは、シンボルのシーケンスを含む、態様1~6のいずれかに記載の方法。
【0114】
[0127] 態様8:シンボルのシーケンスは、宛先アドレスの識別を含む、態様1~7のいずれかに記載の方法。
【0115】
[0128] 態様9:メディアがメディアデバイスによって提示されたというインジケーションを、送信前に暗号化することを更に備える、態様1~8のいずれかに記載の方法。
【0116】
[0129] 態様10:1つ以上のプロセッサと、命令を記憶した非一時的なコンピュータ可読記憶媒体と、を備えるシステムであって、この命令は、1つ以上のプロセッサによって実行されると、1つ以上のプロセッサに、態様1~9のいずれかに記載の動作を行わせる、システム。
【0117】
[0130] 態様11:命令を記憶した非一時的なコンピュータ可読記憶媒体であって、この命令は、1つ以上のプロセッサによって実行されると、1つ以上のプロセッサに、態様1~9のいずれかに記載の動作を行わせる、非一時的なコンピュータ可読記憶媒体。
【0118】
[0131] 態様12:態様1~9のいずれかに記載の動作を行うための1つ以上の手段を備える装置。
【0119】
[0132]「コンピュータ可読媒体」という用語は、限定はしないが、ポータブル又は非ポータブル記憶デバイス、光記憶デバイス、並びに命令(複数可)及び/又はデータを記憶するか、含むか、又は搬送すること可能な様々な他の媒体を含む。コンピュータ可読媒体は、データが搬送波及び/又は電子信号を除外した形で記憶され得る、非一時的な媒体を含み得る。非一時的な媒体の例は、限定はしないが、磁気ディスク又はテープ、コンパクトディスク(CD)又はデジタル多用途ディスク(DVD)等の光記憶媒体、フラッシュメモリ、メモリ又はメモリデバイスを含み得る。コンピュータ可読媒体は、プロシージャ、関数、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェアパッケージ、クラス、或いは命令、データ構造、又はプログラムステートメントの任意の組合せを表し得る、コード及び/又は機械実行可能命令をその上に記憶し得る。コードセグメントは、情報、データ、引数、パラメータ、又はメモリコンテンツを渡すこと及び/又は受け取ることによって、別のコードセグメント又はハードウェア回路に結合され得る。情報、引数、パラメータ、データ、等は、メモリ共有、メッセージパッシング、トークンパッシング、ネットワーク送信、又は同様のことを含む、任意の好適な手段を介して渡され得るか、転送され得るか、又は送信され得る。
【0120】
[0133]本説明のいくつかの部分は、情報に対する動作のアルゴリズム及び記号表現によって例を説明している。これらの動作は、機能的、コンピューティング処理的、又は論理的に説明されているが、コンピュータプログラム若しくは同等の電気回路、マイクロコード、又は同様のものによって実装され得る。更に、動作の構成(arrangements)は、一般性を失うことなく、モジュールと呼ばれ得る。説明された動作及びそれらの関連付けられたモジュールは、ソフトウェア、ファームウェア、ハードウェア、又はこれらの任意の組合せで具現化され得る。
【0121】
[0134]本明細書で説明されたステップ、動作、又はプロセスの任意のものが、単独で又は他のデバイスと組み合わせて、1つ又は複数のハードウェアモジュール又はソフトウェアモジュールを用いて行われ得るか、又は実装され得る。いくつかの例では、ソフトウェアモジュールは、コンピュータプログラムコードを記憶したコンピュータ可読媒体で実装され得、これは、説明されたステップ、動作、又はプロセスのいずれか又は全てを行うために、プロセッサによって実行され得る。
【0122】
[0135]いくつかの例は、説明されたステップ、動作、又はプロセスのいずれか又は全てを行うための装置又はシステムに関連し得る。この装置は、必要とされる目的のために特別に構築され得、及び/又は、それは、コンピューティングデバイスのメモリに記憶されたコンピュータプログラムによって選択的にアクティブ化又は再構成される汎用コンピューティングデバイスを備え得る。メモリは、バスに結合され得る、非一時的な有形のコンピュータ可読記憶媒体、又は電子命令を記憶するのに好適な任意のタイプの媒体であり得るか、又はそれを含み得る。更に、本明細書で言及された任意のコンピューティングシステムは、単一のプロセッサ又は複数のプロセッサを含み得る。
【0123】
[0136]本主題は、特定の例に関して詳細に説明されたが、当業者であれば、上記のことの理解を達成すると、そのような実施形態に対する変更、そのような実施形態の変形、及びそのような実施形態の同等物を容易に作り出し得ることが理解されよう。請求項に記載の主題の完全な理解を提供するために、多数の具体的な詳細が本明細書に記載されている。しかしながら、当業者であれば、請求項に記載の主題はこれらの具体的な詳細なしに実施され得ることを理解されよう。他の事例では、当業者に知られているであろう方法、装置、又はシステムは、請求項に記載の主題を不明瞭にしないように、詳細には説明されていない。従って、本開示は、限定ではなく例を目的として提示されており、当業者に容易に明らかであるように、本主題にそのような修正、変形、及び/又は追加を含めることを排除するものではない。
【0124】
[0137]説明を明確にするために、いくつかの事例では、本開示は、デバイス、デバイスコンポーネント、ソフトウェアで具現化される方法におけるステップ又はルーチン、或いはハードウェアとソフトウェアとの組合せを備える機能ブロックを含む、個々の機能ブロックを含むものとして提示され得る。図示及び/又は本明細書で説明されたもの以外の追加の機能ブロックが使用され得る。例えば、回路、システム、ネットワーク、プロセス、及び他のコンポーネントは、不要な詳細で実施形態を不明瞭にしないために、ブロック図形式のコンポーネントとして示され得る。他の事例では、周知の回路、プロセス、アルゴリズム、構造、及び技法は、実施形態を不明瞭にすることを回避するために、不要な詳細なしに示され得る。
【0125】
[0138]個々の例は、フローチャート、フロー図、データフロー図、構造図、又はブロック図として図示され得るプロセス又は方法として本明細書で説明され得る。フローチャートは、順次プロセスとして動作を説明し得るが、動作の多くは、並行して又は同時並行に実行され得る。加えて、動作の順序は並べ換えられ得る。プロセスは、その動作が完了したときに終了するが、図示されていない追加のステップを有し得る。プロセスは、方法、関数、プロシージャ、サブルーチン、サブプログラム、等に対応し得る。プロセスが関数に対応するとき、その終了は、関数が呼び出し関数又は主関数に戻ることに対応し得る。
【0126】
[0139]上記で説明された例によるプロセス及び方法は、コンピュータ可読媒体に記憶されるか、又はコンピュータ可読媒体から別様に利用可能なコンピュータ実行可能命令を使用して実装され得る。そのような命令は、例えば、汎用コンピュータ、専用コンピュータ、又は処理デバイスに、ある特定の機能又は機能のグループを行わせるか、又はさもなければそれらを行うように構成する、命令及びデータを含み得る。使用されるコンピュータリソースの部分は、ネットワークを介してアクセス可能であり得る。コンピュータ実行可能命令は、例えば、バイナリ、アセンブリ言語等の中間フォーマット命令、ファームウェア、ソースコード、等であり得る。
【0127】
[0140]本明細書で説明される方法及びシステムを実装するデバイスは、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、又はこれらの任意の組合せを含み得、様々なフォームファクタのいずれかをとり得る。ソフトウェア、ファームウェア、ミドルウェア又はマイクロコードで実装されるとき、必要なタスクを実行するためのプログラムコード又はコードセグメント(例えば、コンピュータプログラム製品)は、コンピュータ可読媒体又は機械可読媒体に記憶され得る。プログラムコードは、プロセッサによって実行され得、これは、限定はしないが、1つ以上のデジタルシグナルプロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、又は他の同等の集積回路又はディスクリート論理回路等の1つ以上のプロセッサを含み得る。このようなプロセッサは、本開示において説明された技法のうちの任意のものを実行するように構成され得る。プロセッサは、マイクロプロセッサ、従来のプロセッサ、コントローラ、マイクロコントローラ、ステートマシン、又は同様のものであり得る。プロセッサはまた、コンピューティングコンポーネントの組合せ(例えば、DSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、DSPコアと連携した1つ又は複数のマイクロプロセッサ、又はその他任意のこのような構成)として実装され得る。従って、本明細書で使用される場合、「プロセッサ」という用語は、前述の構造の任意のもの、前述の構造の任意の組合せ、又は本明細書で説明された技法の実装に好適なその他任意の構造又は装置を指し得る。本明細書で説明された機能はまた、周辺機器又はアドインカードにおいて具現化さ得る。このような機能はまた、更なる例として、回路基板上の異なるチップ間で、又は単一のデバイスにおいて実行される異なるプロセスで実装され得る。
【0128】
[0141]前述の説明では、本願の態様は、その特定の例を参照して説明されたが、当業者であれば、本開示はそれに限定されないことを認識されよう。従って、本開示の例示的な例が本明細書で詳細に説明されてきたが、本発明の概念は、別様に様々に具現化及び用いられ得、添付の特許請求の範囲は、そのような変形を含むように解釈されるよう意図されていることを理解されたい。上記で説明された本開示の様々な特徴及び態様は、個々に又は任意の組合せで使用され得る。更に、例は、本開示のより広い趣旨及び範囲から逸脱することなく、本明細書で説明されたもの以外の、任意の数の環境及び用途において利用され得る。従って、本開示及び図は、限定的なものではなく例示的なものと見なされる。
【0129】
[0142]本明細書で開示された実施形態に関連して説明された様々な例示的な論理ブロック、モジュール、回路、及びアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、ファームウェア、又はこれらの組合せとして実装され得る。ハードウェアとソフトウェアのこの互換性を明確に例示するために、様々な例示的なコンポーネント、ブロック、モジュール、回路、及びステップが、概してそれらの機能の観点から上記で説明されてきた。このような機能が、ハードウェアとして実装されるか、又はソフトウェアとして実装されるかは、特定のアプリケーション及びシステム全体に課せられる設計制約に依存する。当業者は、特定のアプリケーションごとに多様な方法において、説明された機能を実装し得るが、このような実装の決定は、本願の範囲から逸脱を引き起こしていると解釈されるべきでない。
【0130】
[0143]別段に明記されていない限り、本明細書全体にわたって、「処理すること」、「コンピューティングすること」、「計算すること」、「決定すること」、及び「識別すること」、又は同様のこと等の用語を利用した説明は、コンピューティングプラットフォームのメモリ、レジスタ、若しくは他の情報記憶デバイス、送信デバイス、又はメディアデバイス内で、物理電子量又は磁気量として表されるデータを操作又は変換する、1つ以上のコンピュータ又は1つ以上の同様の電子コンピューティングデバイス等の、コンピューティングデバイスのアクション又はプロセスを指すことが理解される。本明細書での「~ように適合された」又は「~ように構成された」の使用は、追加のタスク又はステップを行うように適合又は構成されたデバイスを排除しない、オープン且つ包括的な文言として意図されている。追加として、「~に基づく」の使用は、1つ以上の記載された条件又は値「に基づく」プロセス、ステップ、計算、又は他のアクションが、実際には、記載されているもの以外の追加の条件又は値に基づき得るという点で、オープン且つ包括的であることが意図されている。本明細書に含まれる見出し、リスト、及び番号付けは、説明を簡単にするためのものにすぎず、限定的なものとして意図されない。
【0131】
[0144]本技術の前述の詳細な説明は、例示及び説明を目的として提示された。それは、網羅的であること、又は本技術を開示された厳密な形態に限定することを意図したものではない。上記教示を踏まえて、多くの修正及び変形が可能である。説明された実施形態は、技術の原理、その実際の適用を最もよく説明するために、また、他の当業者が、様々な実施形態において、及び企図される特定の使用に適した様々な修正を伴って、技術を利用することを可能にするために選ばれた。本技術の範囲は、特許請求の範囲によって定義されることが意図される。
【0132】
[0145]本開示の例示的な態様は、以下を含む:
【0133】
[0146] 態様1:方法であって、メディアデバイスによって、ビデオフレームのセットを含むビデオデータを受信することと、ビデオフレームのセットのうちの少なくとも1つのビデオフレームにおいて、少なくとも1つのビデオフレームに埋め込まれた透かしを検出すること、ここにおいて、透かしは、メディアデバイスによって表示されるべきメディアを識別するために使用可能である、と、メディアデバイスによって、メディアを表示することと、透かしを検出することに応答して、宛先アドレスに、メディアがメディアデバイスによって提示されたというインジケーションを送信することと、を備える方法。
【0134】
[0147] 態様2:透かしを検出することに応答して、メディアに関連付けられた宛先アドレスについての要求を送信することと、宛先アドレスを受信することと、を更に備える、態様1に記載の方法。
【0135】
[0148] 態様3:ビデオデータは、メディアに関連付けられたトークンを含み、メディアがメディアデバイスによって提示されたというインジケーションを送信することは、トークンを送信することを含む、態様1~2のいずれかに記載の方法。
【0136】
[0149] 態様4:メディアは、ビデオデータが受信される前に、メディアデバイスのローカルメモリに記憶される、態様1~3のいずれかに記載の方法。
【0137】
[0150] 態様5:メディアは、フレームのセットのうちの1つ以上のフレームを置き換える、態様1~4のいずれかに記載の方法。
【0138】
[0151] 態様6:ビデオデータは、宛先アドレスとは異なるアドレスに関連付けられたデバイスから受信される、態様1~5のいずれかに記載の方法。
【0139】
[0152] 態様7:透かしは、シンボルのシーケンスを含む、態様1~6のいずれかに記載の方法。
【0140】
[0153] 態様8:命令を記憶した非一時的なコンピュータ可読記憶媒体であって、命令は、1つ以上のプロセッサによって実行されると、1つ以上のプロセッサに、態様1~7のいずれかに記載の動作を行わせる、非一時的なコンピュータ可読記憶媒体。
【0141】
[0154] 態様9:態様1~7のいずれかに記載の動作を行うための1つ以上の手段を備える装置。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10A
図10B
図11
図12
図13
【国際調査報告】