(57)【要約】  オーバレイを用いた対象とするコンテンツ配置のための方法が、コンテンツフィード（１０３）からメディアコンテンツ（Ｍ）を受信することと、メディアデバイス（１１５）のディスプレイにおいてコンテンツフィードからのメディアコンテンツを表示することと、を含む。メディアデバイスのディスプレイがメディアコンテンツを表示するときに、方法は、また、フィンガープリント（１２８、２０８）を取得するためにメディアコンテンツの少なくとも１つのフレームのフィンガープリントを取ることと、取得されたフィンガープリントに基づいてフレーム内広告を識別することと、を含む。フレーム内広告は、少なくとも１つのフレームの一部の中の広告に対応する。方法は、フレーム内広告を有する少なくとも１つのフレーム内の対象オーバレイ位置（４１０）を判断することであって、対象オーバレイ位置が、フレーム内広告のサイズに対応する、判断することと、メディアデバイスのディスプレイが、フレーム内広告を有する少なくとも１つのフレームを表示するときに、対象オーバレイ位置においてオーバレイコンテンツ（２１２）を重ね合わせることと、をさらに含む。【選択図】図１
2020512775.tif 000002
【特許請求の範囲】
【請求項１】
メディアデバイス（１１５）のデータ処理ハードウェア（５０２）において、コンテンツフィード（１０３）からメディアコンテンツ（Ｍ）を受信することと、
前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）によって、前記コンテンツフィード（１０３）からの前記メディアコンテンツ（Ｍ）を前記メディアデバイス（１１５）のディスプレイに表示することと、
前記メディアデバイス（１１５）の前記ディスプレイが、前記メディアコンテンツ（Ｍ）を表示するときに、
前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）によって、フィンガープリント（１２８、２０８）を取得するために前記メディアコンテンツ（Ｍ）の少なくとも１つのフレームのフィンガープリントを取ることと、
前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）によって、前記取得されたフィンガープリント（１２８、２０８）に基づいて、前記少なくとも１つのフレーム内のフレーム内広告を識別することであって、前記フレーム内広告が、前記少なくとも１つのフレームの一部の中の広告に対応する、前記識別することと、
前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）によって、前記フレーム内広告を有する前記少なくとも１つのフレーム内の対象オーバレイ位置（４１０）を判断することであって、前記対象オーバレイ位置（４１）が、前記少なくとも１つのフレーム内の前記フレーム内広告のサイズに対応する、前記判断することと、
前記メディアデバイス（１１５）の前記ディスプレイが、前記フレーム内広告を有する前記少なくとも１つのフレームを表示するときに、前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）によって、前記対象オーバレイ位置（４１０）においてオーバレイコンテンツ（２１２）を重ね合わせることと、
を含む、方法。
【請求項２】
前記対象オーバレイ位置（４１０）において前記オーバレイコンテンツ（２１２）を重ね合わせることが、前記判断された対象オーバレイ位置（４１０）に適合させるために前記オーバレイコンテンツ（２１２）を拡縮することをさらに含む、請求項１に記載の方法。
【請求項３】
前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）によって、前記取得されたフィンガープリント（１２８、２０８）に基づいて前記オーバレイコンテンツ（２１２）を識別することであって、前記識別されたオーバレイコンテンツ（２１２）が、前記フレーム内広告に対応する前記取得されたフィンガープリント（１２８、２０８）の一部に一致するオーバレイコンテンツフィンガープリントに対応する、前記識別することをさらに含む、請求項１または２に記載の方法。
【請求項４】
前記オーバレイコンテンツ（２１２）が、前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）と通信するオーバレイコンテンツデータベースからランダムに選択される、請求項１に記載の方法。
【請求項５】
前記フィンガープリント（１２８、２０８）を取得するために前記メディアコンテンツ（Ｍ）の前記少なくとも１つのフレームのフィンガープリントを取ることが、フレーム内広告識別子をフレーム内広告に関連付け、前記方法が、前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）によって、それぞれのフレーム内広告に対応する、前記関連付けられたフレーム内広告識別子に一致するオーバレイ識別子を有する前記オーバレイコンテンツ（２１２）を取得することをさらに含む、請求項１〜３のいずれか１項に記載の方法。
【請求項６】
前記フレーム内広告が、前記少なくとも１つのフレームの前記メディアコンテンツ（Ｍ）内の背景特徴を含む、請求項１〜５のいずれか１項に記載の方法。
【請求項７】
前記フレーム内広告が、シーンに対応し、前記シーンが、メディアコンテンツ（Ｍ）の１つより多くのフレームに対応する、請求項１〜６のいずれか１項に記載の方法。
【請求項８】
前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）によって、オーバレイシーンに対応するオーバレイコンテンツ（２１２）を識別することであって、前記オーバレイシーンが、前記フレーム内広告の前記シーンに対応するいくつかのフレームに一致するいくつかのオーバレイコンテンツフレームを含む、前記識別することをさらに含む、請求項７に記載の方法。
【請求項９】
前記フレーム内広告が、前記少なくとも１つのフレームの前記一部の中の潜在的フレーム内広告配置位置に対応する、請求項１〜８のいずれか１項に記載の方法。
【請求項１０】
前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）において、広告配置要求を受信することであって、前記広告配置要求が、フレーム内広告配置位置を要求し、オーバレイ基準を含む、前記受信することと、
前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）によって、前記対象オーバレイ位置（４１０）を前記フレーム内広告配置位置として識別することと、
前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）によって、前記広告配置要求の前記オーバレイ基準を満たす前記フレーム内広告配置位置においてオーバレイコンテンツ（２１２）を重ね合わせることと、
をさらに含む、請求項１〜９のいずれか１項に記載の方法。
【請求項１１】
ディスプレイを含むメディアデバイス（１１５）と、
前記メディアデバイス（１１５）に位置するデータ処理ハードウェア（５０２）と、
前記データ処理ハードウェア（５０２）と通信するメモリハードウェア（５０４）であって、前記データ処理ハードウェア（５０２）上で実行されるときに、
コンテンツフィード（１０３）からメディアコンテンツ（Ｍ）を受信することと、
前記コンテンツフィード（１０３）からの前記メディアコンテンツ（Ｍ）を前記メディアデバイス（１１５）のディスプレイに表示することと、
前記メディアデバイス（１１５）の前記ディスプレイが、前記メディアコンテンツ（Ｍ）を表示するとき、
フィンガープリント（１２８、２０８）を取得するために前記メディアコンテンツ（Ｍ）の少なくとも１つのフレームのフィンガープリントを取ることと、
前記取得されたフィンガープリント（１２８、２０８）に基づいて、前記少なくとも１つのフレーム内のフレーム内広告を識別することであって、前記フレーム内広告が、前記少なくとも１つのフレームの一部の中の広告に対応する、前記識別することと、
前記フレーム内広告を有する前記少なくとも１つのフレーム内の対象オーバレイ位置（４１０）を判断することであって、前記対象オーバレイ位置（４１０）が、前記少なくとも１つのフレーム内の前記フレーム内広告のサイズに対応する、前記判断することと、
前記メディアデバイス（１１５）の前記ディスプレイが、前記フレーム内広告を有する前記少なくとも１つのフレームを表示するときに、前記対象オーバレイ位置（４１０）においてオーバレイコンテンツ（２１２）を重ね合わせることと、
を含む動作を、前記データ処理ハードウェア（５０２）に実行させる命令（５２６）を記憶する、前記メモリハードウェア（５０４）と、
を含む、システム。
【請求項１２】
前記対象オーバレイ位置（４１０）において前記オーバレイコンテンツ（２１２）を重ね合わせることが、前記判断された対象オーバレイ位置（４１０）に適合させるために前記オーバレイコンテンツ（２１２）を拡縮することをさらに含む、請求項１１に記載のシステム。
【請求項１３】
前記動作が、前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）によって、前記取得されたフィンガープリント（１２８、２０８）に基づいて前記オーバレイコンテンツ（２１２）を識別することであって、前記識別されたオーバレイコンテンツ（２１２）が、前記フレーム内広告に対応する前記取得されたフィンガープリント（１２８、２０８）の一部に一致するオーバレイコンテンツフィンガープリントに対応する、前記識別することをさらに含む、請求項１１または１２に記載のシステム。
【請求項１４】
前記オーバレイコンテンツ（２１２）が、前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）と通信するオーバレイコンテンツデータベースからランダムに選択される、請求項１１に記載のシステム。
【請求項１５】
前記フィンガープリント（１２８、２０８）を取得するために前記メディアコンテンツ（Ｍ）の前記少なくとも１つのフレームのフィンガープリントを取ることが、フレーム内広告識別子をフレーム内広告に関連付け、前記方法が、前記メディアデバイス（１１５）の前記データ処理ハードウェア（５０２）によって、それぞれのフレーム内広告に対応する、前記関連付けられたフレーム内広告識別子に一致するオーバレイ識別子を有する前記オーバレイコンテンツ（２１２）を取得することをさらに含む、請求項１１〜１３のいずれか１項に記載のシステム。
【請求項１６】
前記フレーム内広告が、前記少なくとも１つのフレームの前記メディアコンテンツ（Ｍ）内の背景特徴を含む、請求項１１〜１５のいずれか１項に記載のシステム。
【請求項１７】
前記フレーム内広告が、シーンに対応し、前記シーンが、メディアコンテンツ（Ｍ）の１つより多くのフレームに対応する、請求項１１〜１６のいずれか１項に記載のシステム。
【請求項１８】
前記動作が、オーバレイシーンに対応するオーバレイコンテンツ（２１２）を識別することであって、前記オーバレイシーンが、前記フレーム内広告の前記シーンに対応するいくつかのフレームに一致するいくつかのオーバレイコンテンツフレームを含む、前記識別することをさらに含む、請求項１７に記載のシステム。
【請求項１９】
前記フレーム内広告が、前記少なくとも１つのフレームの前記一部の中の潜在的フレーム内広告配置位置に対応する、請求項１１〜１８のいずれか１項に記載のシステム。
【請求項２０】
前記動作が、
広告配置要求を受信することであって、前記広告配置要求が、フレーム内広告配置位置を要求し、オーバレイ基準を含む、前記受信することと、
前記対象オーバレイ位置を前記フレーム内広告配置位置として識別することと、
前記広告配置要求の前記オーバレイ基準を満たす前記フレーム内広告配置位置にオーバレイコンテンツを重ね合わせることと、
をさらに含む、請求項１１〜１９のいずれか１項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、オーバレイを用いたターゲットコンテンツ配置に関する。
【背景技術】
【０００２】
スマートテレビ（ＴＶ）などのメディアデバイスは、ブロードキャストメディアコンテンツにアクセスし、ストリーミングメディアを受信し得る。ストリーミングメディアは、電話回線、ケーブル、インターネットなどを介して、メディアコンテンツが要求に応じてエンドユーザに提供され得るサービスをいう。例えば、視聴者は、自分の家から出なくとも映画を視聴し得る。また、視聴者は、学校または教育機関に物理的に出席しなくとも、ビデオ講義などの様々な種類の教育コンテンツにアクセスし得る。
【０００３】
メディアデバイスの数が増加し続けるにつれて、ビデオコンテンツの生成及び配信は、同様に増加し得る。ストリーミングメディアにアクセスするメディアデバイスの使用が増加するとともに、コンテンツプロバイダまたはネットワークプロバイダは、メディアコンテンツを消費している視聴者に文脈上関連する題材を配布し得る。例えば、地方放送局は、メディアコンテンツと文脈上関連する広告コンテンツを含み得る。
【発明の概要】
【０００４】
開示の１つの態様は、オーバレイを用いたターゲットコンテンツ配置のための方法を提供する。方法は、メディアデバイスのデータ処理ハードウェアにおいて、コンテンツフィードからメディアコンテンツを受信することを含む。方法は、また、メディアデバイスのデータ処理ハードウェアによって、コンテンツフィードからのメディアコンテンツをメディアデバイスのディスプレイに表示することを含む。メディアデバイスのディスプレイがメディアコンテンツを表示するときに、方法は、メディアデバイスのデータ処理ハードウェアによって、フィンガープリントを取得するためにメディアコンテンツの少なくとも１つのフレームのフィンガープリントを取ることと、メディアデバイスのデータ処理ハードウェアによって、取得されたフィンガープリントに基づいて、少なくとも１つのフレーム内のフレーム内広告を識別することであって、フレーム内広告が、少なくとも１つのフレームの一部の中の広告に対応する、識別することと、メディアデバイスのデータ処理ハードウェアによって、フレーム内広告を有する少なくとも１つのフレーム内の対象オーバレイ位置を判断することであって、対象オーバレイ位置が、少なくとも１つのフレーム内のフレーム内広告のサイズに対応する、判断することと、メディアデバイスのディスプレイが、フレーム内広告を有する少なくとも１つのフレームを表示するときに、メディアデバイスのデータ処理ハードウェアによって、対象オーバレイ位置においてオーバレイコンテンツを重ね合わせることと、をさらに含む。
【０００５】
開示の実施態様は、以下の任意選択の特徴のうちの１つまたは複数を含み得る。いくつかの実施態様において、対象オーバレイ位置においてオーバレイコンテンツを重ね合わせることが、判断された対象オーバレイ位置に適合させるためにオーバレイコンテンツを拡縮することを含む。方法は、また、メディアデバイスのデータ処理ハードウェアによって、取得されたフィンガープリントに基づいてオーバレイコンテンツを識別することであって、識別されたオーバレイコンテンツが、フレーム内広告に対応する取得されたフィンガープリントの一部に一致するオーバレイコンテンツフィンガープリントに対応する、識別することを含んでもよい。任意選択で、オーバレイコンテンツが、メディアデバイスのデータ処理ハードウェアと通信するオーバレイコンテンツデータベースからランダムに選択されてもよい。
【０００６】
いくつかの実施例では、フィンガープリントを取得するためにメディアコンテンツの少なくとも１つのフレームのフィンガープリントを取ることが、フレーム内広告識別子をフレーム内広告に関連付ける。この実施例では、方法は、また、メディアデバイスのデータ処理ハードウェアによって、それぞれのフレーム内広告に対応する、関連付けられたフレーム内広告識別子に一致するオーバレイ識別子を有するオーバレイコンテンツを取得することを含む。追加的または代替的に、フレーム内広告は、少なくとも１つのフレームのメディアコンテンツ内の背景特徴を含んでもよい。
【０００７】
いくつかの構成では、フレーム内広告が、シーンに対応し、シーンが、メディアコンテンツの１つより多くのフレームに対応する。ここで、方法は、また、メディアデバイスのデータ処理ハードウェアによって、オーバレイシーンに対応するオーバレイコンテンツを識別することであって、オーバレイシーンが、フレーム内広告のシーンに対応するいくつかのフレームに一致するいくつかのオーバレイコンテンツフレームを含む、識別することを含んでもよい。他の構成では、フレーム内広告は、少なくとも１つのフレームの一部の中の潜在的フレーム内広告配置位置に対応する。
【０００８】
いくつかの実施例では、方法は、メディアデバイスのデータ処理ハードウェアにおいて、広告配置要求を受信することであって、広告配置要求が、フレーム内広告配置位置を要求し、オーバレイ基準を含む、受信することを含む。ここで、方法は、また、メディアデバイスのデータ処理ハードウェアによって、対象オーバレイ位置をフレーム内広告配置位置として識別することと、広告配置要求のオーバレイ基準を満たすフレーム内広告配置位置にオーバレイコンテンツを重ね合わせることと、を含む。
【０００９】
開示の別の態様は、オーバレイを用いたターゲットコンテンツ配置のためのシステムを提供する。システムは、ディスプレイを含むメディアデバイスと、メディアデバイスに位置するデータ処理ハードウェアと、データ処理ハードウェアと通信するメモリハードウェアと、を含む。メモリハードウェアは、データ処理ハードウェア上で実行されるときにデータ処理ハードウェアに動作を実行させる命令を記憶する。動作は、コンテンツフィードからメディアコンテンツを受信することと、メディアデバイスのディスプレイにおいてコンテンツフィードからのメディアコンテンツを表示することと、を含む。メディアデバイスのディスプレイがメディアコンテンツを表示するときに、動作は、フィンガープリントを取得するためにメディアコンテンツの少なくとも１つのフレームのフィンガープリントを取ることと、取得されたフィンガープリントに基づいて、少なくとも１つのフレーム内のフレーム内広告を識別することであって、フレーム内広告が、少なくとも１つのフレームの一部の中の広告に対応する、識別することと、フレーム内広告を有する少なくとも１つのフレーム内の対象オーバレイ位置を判断することであって、対象オーバレイ位置が、少なくとも１つのフレーム内のフレーム内広告のサイズに対応する、判断することと、メディアデバイスのディスプレイが、フレーム内広告を有する少なくとも１つのフレームを表示するときに、対象オーバレイ位置においてオーバレイコンテンツを重ね合わせることと、を含む。
【００１０】
本態様は、以下の任意選択の特徴のうちの１つまたは複数を含み得る。いくつかの実施態様において、対象オーバレイ位置においてオーバレイコンテンツを重ね合わせることが、判断された対象オーバレイ位置に適合させるためにオーバレイコンテンツを拡縮することを含む。動作は、また、取得されたフィンガープリントに基づいてオーバレイコンテンツを識別することであって、識別されたオーバレイコンテンツが、フレーム内広告に対応する取得されたフィンガープリントの一部に一致するオーバレイコンテンツフィンガープリントに対応する、識別することを含み得る。追加的または代替的に、オーバレイコンテンツが、メディアデバイスのデータ処理ハードウェアと通信するオーバレイコンテンツデータベースからランダムに選択されてもよい。
【００１１】
いくつかの実施例では、フィンガープリントを取得するためにメディアコンテンツの少なくとも１つのフレームのフィンガープリントを取ることが、識別子をフレーム内広告に関連付け、動作は、それぞれのフレーム内広告に対応する、関連付けられた識別子に一致するオーバレイ識別子を有するオーバレイコンテンツを取得することを含む。任意選択で、フレーム内広告は、少なくとも１つのフレームのメディアコンテンツ内の背景特徴を含んでもよい。
【００１２】
いくつかの構成では、フレーム内広告が、シーンに対応し、シーンが、メディアコンテンツの１つより多くのフレームに対応する。ここで、動作が、オーバレイシーンに対応するオーバレイコンテンツを識別することであって、オーバレイシーンが、フレーム内広告のシーンに対応するいくつかのフレームに一致するいくつかのオーバレイコンテンツフレームを含む、識別することを含む。追加的または代替的には、フレーム内広告は、少なくとも１つのフレームの一部の中の潜在的フレーム内広告配置位置に対応してもよい。
【００１３】
いくつかの実施態様では、動作は、広告配置要求を受信することであって、広告配置要求が、フレーム内広告配置位置を要求し、オーバレイ基準を含む、受信することを含む。この実施態様では、動作は、また、対象オーバレイ位置をフレーム内広告配置位置として識別することと、広告配置要求のオーバレイ基準を満たすフレーム内広告配置位置にオーバレイコンテンツを重ね合わせることと、を含む。
【００１４】
開示の１つまたは複数の実施態様の詳細が、添付図面及び以下の説明において明記されている。他の態様、特徴、及び利点が、説明及び図面から、ならびに特許請求の範囲から明らかとなるであろう。
【図面の簡単な説明】
【００１５】
【図１】例としてのコンテンツ配布ネットワークの概略図を示す。
【図２】クライアントデバイスなどのメディアデバイスにオーバレイコンテンツを提供するためのコンテンツマネージャを含む、例としてのシステムの概略図を示す。
【図３】メディアコンテンツの一部をオーバレイコンテンツと重ね合わせる、例としての方法を示す。
【図４】図４Ａは、メディアコンテンツを有するオーバレイ位置を含む、例としてのメディアコンテンツの概略図を示す。図４Ｂは、オーバレイコンテンツを有するオーバレイ位置を含む、例としてのメディアコンテンツの概略図を示す。
【図５】本明細書で論じられる方法論のうちの任意の１つまたは複数を機械に実行させるための命令セットが含まれるコンピュータシステムの例としての形式で、機械の図式表現を示す。
【発明を実施するための形態】
【００１６】
多様な図面内の類似の参照シンボルは、類似要素を示す。
【００１７】
メディアコンテンツ放送またはストリーミングは、エンタテイメント、教育、ニュース、及び他の情報についてのメディアコンテンツを取得するためのメディアソースである。テレビ（ＴＶ）ショー放送などのメディアコンテンツ放送またはストリーミングは、製品及びサービスを広告し、または視聴者に情報を提供するための魅力のある場であり得る。従来、メディアコンテンツ広告は、受動的広告であった。コマーシャルは、テレビ番組プロデューサまたは配布業者によって選択される時間の番組の間に、視聴者に対して表示され得る。この場合、メディアコンテンツは、ポストプロダクションの時に固定される。例えば、メディアコンテンツが撮影され、次いで、ポストプロダクションに入り得る。ポストプロダクションにおいて、メディアコンテンツ内のフレームのシーケンス及びコンテンツが、定義され、固定される。配布されるメディアコンテンツの各コピーは、同一であり、メディアコンテンツを視聴する各人に同一の視聴エクスペリエンスを提供する。視聴者の人口統計、視聴者の個人的嗜好などに関わらず、視聴者に対して同一のメディアコンテンツが示される。
【００１８】
メディアコンテンツの固定された性質は、視聴者のためにメディアコンテンツを更新または個人化するためのメディアコンテンツの適応可能性を制限する。例えば、メディアコンテンツのための製作スタジオは、特集コンテンツ、広告、予告編、プレビュー、及び表示用の他のコンテンツを生成するコンテンツプロバイダから、メディアコンテンツを受信する。製作スタジオは、メディアコンテンツを編集し、マスタを作成し、準備し、配布ネットワークを通してメディアコンテンツを視聴者に提供する。製作スタジオは、特集コンテンツ、広告などを含むメディアコンテンツ内に示されるものを判断する。
【００１９】
メディアコンテンツについての大きな収入源は、広告及びプロモーションソースから来るものである。広告主は、自分の製品をメディアコンテンツ内に出現させるために、プロダクトプレイスメントに大きな金額を支払う。デジタルプロダクトプレイスメントは、ポストプロダクションの間に、要素がメディアコンテンツの１つまたは複数のフレームに追加され、または置換される場合である。１つの実施例では、自動車製造業者が、自社の車を映画の中のセットの一部として使用させるために、割増金を支払う。別の実施例では、広告が、シーンの背景におけるポスター上の新たなフィルムに追加され得る。同様に、ソフトドリンク製造業者は、自社のラベル、自動販売機、または掲示板広告をシーンの背景に示させるため、または自社の企業ロゴが付いたＴシャツをフィルム内で俳優に着用させるために、金銭を支払う。しかしながら、メディアコンテンツの固定された性質は、メディアコンテンツが制作及びポストプロダクション中である時にメディアコンテンツ内に配置される広告から広告収入を得ることのみにメディアコンテンツプロバイダを制限する。
【００２０】
本開示は、オーバレイコンテンツをメディアコンテンツの一部の上に重ね合わせるためのシステムを提供することにより、上述及びその他の欠陥に対処する。システムは、オーバレイコンテンツをメディアコンテンツの一部の上に重ね合わせて、更新された、または個人化されたメディアコンテンツを視聴者に提供し得る。更新された、または個人化されたオーバレイコンテンツは、異なる種類のコンテンツの局所カスタマイズ、及び、より魅力のあるメディアコンテンツのために、市場及び視聴者人口統計に対するオーバレイコンテンツの適合が改善されて、より多くの機会を広告主及びコンテンツプロバイダに提供し得る。
【００２１】
「コンテンツ」という単語は、メディアまたはマルチメディアを指すために使用され得る。「コンテンツ」という単語は、メディアそれ自体ではなくメディアの主題を意味する具体的な用語でもあり得る。同様に、「メディア」という単語、及び「メディア」を含むいくつかの複合語（例えば、マルチメディア、ハイパーメディア）は、情報がエンドユーザ／聴取者に配信されるチャネルではなく、代わりにコンテンツを指す。メディアまたはメディアコンテンツは、ビデオ、フィルム、テレビショー、コマーシャル、ストリーミングビデオなどのグラフィカル表現、テキスト、グラフィックス、アニメーション、静止画、対話コンテンツ形式などを含んでもよい。メディアの種類として一般に呼ばれるコンテンツの種類の実施例は、「フィルム」と呼ばれる「映画」である。オーバレイコンテンツは、視聴者に対して現在表示されているコンテンツフィードのメディアコンテンツに加えて、広告、ニュースアラート、告知、または他の情報を含むメディアコンテンツであってもよい。
【００２２】
図１は、１つの実施例による、コンテンツ配布ネットワーク１００のシステム図を示す。コンテンツ配布ネットワーク１００において、コンテンツプロバイダ１０２は、コンテンツフィード１０３をローカルプロバイダ１０６にブロードキャストし得る。ローカルプロバイダ１０６は、ヘッドエンド１０４及び自動コンテンツ認識（ＡＣＲ）フィンガープリントサーバ１０５を含み得る。コンテンツプロバイダ１０２からのコンテンツフィード１０３は、ローカルプロバイダ１０６のヘッドエンド１０４において受信され得る。
【００２３】
様々な実施態様において、ヘッドエンド１０４は、受信したコンテンツフィード１０３に基づいて、ローカルコンテンツフィード１０３を生成し得る。例えば、ヘッドエンド１０４は、国営放送局またはグローバル放送局から番組及び広告とともにネットワークチャンネルを受信する地方系列放送局であってもよい。１つの実施例では、ヘッドエンド１０４は、放送フィードを送信する放送設備の前の放送フィードのソースであってもよい。別の実施例では、ヘッドエンド１０４は、分配増幅器であってもよい。分配増幅器は、ソースフィードを受信してもよく、同一のソースフィードから異なるデバイスのための複数出力を生成し得る。出力フィードは、放送地上波（ＯＴＡ）、ケーブルプロバイダへの配信、衛星プロバイダへの配信、及び／またはオンラインストリーミングプロバイダへの配信などのために、様々な配布先に送られ得る。
【００２４】
ヘッドエンド１０４は、ＡＣＲフィンガープリントサーバ１０５、地上波（ＯＴＡ）放送局１０８、及び／またはマルチチャンネルビデオ番組配布業者（ＭＶＰＤ）１１０にローカルコンテンツフィード１０３を通信し得る。ＯＴＡ放送局１０８及び／またはＭＶＰＤ１１０は、メディアデバイス１１５にローカルコンテンツフィード１０３を通信し得る。メディアデバイス１１５のいくつかの実施例は、クライアントデバイス１１８及び１２０（例えば、スマートＴＶ）、クライアントデバイス１１８及び１２０にプロバイダコンテンツをストリーミングするセットトップボックス１１４、ならびにユーザがそれを通してローカルコンテンツフィード１０３をストリーミングし得る他のデバイス１１６（例えば、ＯＴＡアンテナ、衛星テレビ受信用アンテナなど）を含む。
【００２５】
１つの実施例では、ＯＴＡ放送局１０８は、ローカルコンテンツフィード１０３を従来のローカルテレビ又はラジオチャンネルを用いてブロードキャストし得る。この実施例では、クライアントデバイス１１８及び１２０は、アンテナ（ＴＶまたはラジオアンテナなど）を含んでもよく、ローカルコンテンツフィード１０３を受信してもよい。別の実施例では、ＭＶＰＤ１１０（ケーブル放送局または衛星放送局など）は、ローカルコンテンツフィード１０３をセットトップボックス１１４に通信してもよい。この実施例では、セットトップボックス１１４は、クライアントデバイス１１８及び１２０のためにコンテンツフィード１０３をフォーマットしてもよく、フォーマットされたコンテンツフィード１０３をクライアントデバイス１１８及び１２０に通信してもよい。クライアントデバイス１１８及び１２０は、ローカルコンテンツを視聴者に表示するための、テレビ画面またはタッチ画面などの表示デバイスを含んでもよい。コンテンツ配布ネットワーク１００の様々なコンポーネントは、クライアントデバイス１１８及び１２０に統合されてもよく、または連結されてもよい。例えば、スマートテレビは、アンテナ、セットトップボックス１１４、及び表示デバイスを単一ユニット内に含んでもよい。
【００２６】
ＡＣＲフィンガープリントサーバ１０５は、ローカルコンテンツフィード１０３を分析し、フィンガープリント情報（例えば、フィンガープリント）を判断してもよい。１つの実施例では、ＡＣＲフィンガープリントサーバ１０５は、放送設備内に設置されるデバイスであってもよい。ＡＣＲフィンガープリントサーバ１０５は、ヘッドエンド１０４からのフィードを受信し得る。ＡＣＲフィンガープリントサーバ１０５は、フィードのフィンガープリントを取り、フィンガープリント１２８ａ〜１２８ｎをクラウドベースウェブサービスに送信し得る。いくつかの実施態様において、ＡＣＲフィンガープリントサーバ１０５は、フィードがテレビ（ＴＶ）などの表示デバイスに配信されるのに先立ってフィードのフィンガープリントを取るために、放送設備内に設置されてもよい。
【００２７】
ＡＣＲフィンガープリントサーバ１０５は、フィンガープリント１２８ａ〜１２８ｎをＡＣＲシステム１２４及び／または１２６に通信し得る。ＡＣＲシステム１２４及び１２６は、スマートＴＶ製造業者などのデバイス製造業者によって選択された、異なるＡＣＲシステムであってもよい。
【００２８】
ＡＣＲフィンガープリントサーバ１０５は、ローカルコンテンツフィード１０３を分析し、フィンガープリント１２８ａ〜１２８ｎをキャプチャし得る。フィンガープリント１２８ａ〜１２８ｎは、ローカルコンテンツフィード１０３からの順序付きフレームシーケンスを含んでもよい。ＡＣＲフィンガープリントサーバ１０５は、フィンガープリント１２８ａ〜１２８ｎをＡＣＲシステム１２４及び／または１２６に通信してもよい。ＡＣＲシステム１２４及び１２６は、スマートＴＶ製造業者などのデバイス製造業者によって選択された、異なるＡＣＲシステムであってもよい。１つの実施例では、ＡＣＲシステム１２４または１２６は、命令を実行し、またはプロセスを実行するための処理ロジックまたは処理デバイスを含んでもよい。別の実施例では、ＡＣＲシステム１２４及び１２６は、異なるＡＣＲベンダについてのＡＣＲウェブサービスであってもよい。ＡＣＲフィンガープリントサーバ１０５は、複数のＡＣＲベンダからインデックス付きクライアントの使用を可能にし得る。例えば、ＴＶ製造業者などの異なる家電メーカ（ＣＥＭ）は、彼らの電子デバイスに統合するためのＡＣＲベンダを独立して選択し得る。特定ＣＥＭのデバイス上でＡＣＲベースの機能性を有効にするために、ＡＣＲシステムは、ＣＥＭが選択した、そのＣＥＭのテレビ上に統合されるＡＣＲベンダを用いて、ブロードキャストフィードにインデックスを付与し得る。複数のＡＣＲベンダをＡＣＲフィンガープリントサーバ１０５上に統合することの１つの利点は、広告主、広告代理店、及びコンテンツプロバイダなどの主体が、単一プラットフォームとインタフェースし、ならびに高度な広告及びコンテンツエクスペリエンスを複数のＣＥＭからの電子デバイスに配信することを可能にすることであり得る。
【００２９】
多様な実施態様において、ＡＣＲフィンガープリントサーバ１０５は、例えば、異なるフィンガープリントアルゴリズムなどの異なる種類のフィンガープリント技術を含む異なるＡＣＲシステム１２４及び１２６のために、フィンガープリント１２８ａ〜１２８ｎをフォーマットし得る。ＡＣＲシステム１２４及び１２６は、クライアントデバイス１１８及び１２０をそれぞれ含む、異なるメディアデバイス１１５との通信接続を確立し得る。クライアントデバイス１１８及び１２０は、ＡＣＲシステム１２４及び１２６にそれぞれフィンガープリント情報を通信し得る。ＡＣＲシステム１２４または１２６がＡＣＲフィンガープリント情報をクライアントデバイス１１８及び／または１２０から受信するとき、ＡＣＲシステム１２４または１２６は、受信したフィンガープリント１２８ａ〜１２８ｎをＡＣＲフィンガープリントサーバ１０５によって生成されたものと照合し、一致が発生し、かつコンテンツが識別されたとき、ＡＣＲイベントをコンテンツマネージャ１２２に通信し得る。いくつかの実施態様において、以下に説明されるように、ＡＣＲシステム１２４または１２６は、オーバレイ位置ユニット１２５を含み得る。オーバレイ位置ユニット１２５は、コンテンツマネージャ１２２、またはコンテンツマネージャ１２２に連結されるメモリデバイスに記憶されるコンテンツをオーバレイするために、メディコンテンツ内の位置を識別し得る。ＡＣＲシステム１２４または１２６は、オーバレイ位置ユニット１２５を含んでもよく、含まなくともよい。オーバレイ位置ユニット１２５に関する詳細が、図２及び図３に関して以下で説明される。
【００３０】
別の実施例では、ＡＣＲシステム１２４及び１２６は、ＡＣＲフィンガープリント情報をクライアントデバイス１１８及び１２０から受信し、受信したフィンガープリント１２８ａ〜１２８ｎをＡＣＲフィンガープリントサーバ１０５によって生成されたものと照合する。一致が発生し、かつコンテンツが識別されたとき、ＡＣＲシステム１２４及び／または１２６は、クライアントデバイス１１８または１２０にＡＣＲイベントを通知してもよく、次いで、クライアントデバイス１１８または１２０は、それらのＡＣＲイベントをコンテンツマネージャ１２２に通信してもよい。代替的または追加的には、ＡＣＲシステム１２４及び／または１２６は、ＡＣＲイベントをコンテンツマネージャ１２２に直接通信する。ＡＣＲフィンガープリント情報は、視聴者に対するローカルコンテンツフィード１０３内の広告の表示、視聴者に対するローカルコンテンツフィード１０３内の選択された、またはフラグ付けされたコンテンツの表示、クライアントデバイス１１８または１２０におけるコンテンツチャンネルの変更などを含み得る。
【００３１】
異なるＡＣＲシステム１２４及び１２６からのイベント情報は、異なるフォーマットで生成されてもよく、コンテンツマネージャ１２２は、記録されたＡＣＲ情報データベース１２３（例えば、説明を容易にするために、データベース１２３）内にデータを記録する前に、共通フォーマットにデータを標準化し得る。例えば、コンテンツマネージャ１２２は、同一コンテンツを有するが異なるようにフォーマットされているデータなどの、類似であるが同一ではないデータを含むＡＣＲシステム１２４及び１２６から異種データセットを受信し得る。コンテンツマネージャ１２２は、単一データモデルまたはフォーマット（例えば、再フォーマットされたデータセット）を生成するために、異種データセットを処理し、再フォーマットしてもよい。再フォーマットされたデータセットは、コンテンツマネージャ１２２内のデータベース１２３に投入されてもよい。データベース１２３に記憶されているＡＣＲシステムからのイベント情報は、ユーザの視聴行動、関心、及び特定のメディアプログラムの特定の視聴履歴から記録された情報からの記録済みＡＣＲデータをさらに含んでもよい。
【００３２】
いくつかの実施態様において、ＡＣＲシステム１２４及び１２６からの異種データセットを標準化するために、コンテンツマネージャ１２２は、データセット内のデータを洗浄し、またはフィルタリングし得る。例えば、いくつかのデータセットは、コンテンツマネージャ１２２とは無関係であり得るフィールドまたはデータを含むことがある。この実施例では、コンテンツマネージャ１２２は、無関係のデータを洗浄し、またはフィルタリングする（例えば、データは、除去されるか、または無視され得る）。別の実施例では、いくつかのデータセットは、不完全な、または誤ったデータまたはデータセットのインスタンスを含み、コンテンツマネージャ１２２は、不完全な、または誤ったデータまたはデータセットを洗浄し、またはフィルタリングする。別の実施態様において、ＡＣＲシステム１２４及び１２６からの異種データセットを標準化するために、コンテンツマネージャ１２２は、データセットのフィールドをマッピングする。例えば、コンテンツマネージャ１２２が、第１のデータセットをＡＣＲシステム１２４から受信し、第２のデータセットをＡＣＲシステム１２６から受信するとき、第１のデータセット及び第２のデータセットのデータフィールドのうちの少なくともいくつかは、第１のデータセット及び第２のデータセットの両方に共通であってもよい。しかしながら、共通データフィールドは、第１のデータセット及び第２のデータセット内の異なる場所に位置する場合がある。この実施例では、コンテンツマネージャ１２２は、第１のデータセット及び第２のデータセットの異なるデータフィールドを標準化されたフィールドにマッピングし、データベース１２３内の同一データフィールドの位置には同一のデータフィールドを有する。
【００３３】
別の実施例では、ＡＣＲシステム１２４及び１２６からの異種データセットを標準化するために、コンテンツマネージャ１２２は、データセットからデータを導出する。例えば、ＡＣＲシステム１２４及び／または１２６からのデータは、データベース内のデータフィールドを埋める必要があるフィールドの全てを含まない場合がある。しかしながら、コンテンツマネージャ１２２は、これらのデータフィールドのためのデータを導出するために、ＡＣＲシステム１２４及び１２６からのデータセット内の他のフィールドを使用し得る。
【００３４】
いくつかの実施例では、データベース１２３は、国内の州フィールド、指定マーケット地域（ＤＭＡ）、ならびに郡及び／または都市フィールドなどのデータフィールドを含むが、ＡＣＲシステム１２４及び１２６からのデータセットは、郵便集配区域改善計画（ＺＩＰ）コードを含むだけであってもよい。この実施例では、コンテンツマネージャ１２２は、ＺＩＰコードを使用して、データベース内のフィールドのためのデータを導出する。別の実施例では、データセットは、いかなる地理的位置情報も含まないが、ＡＣＲシステム１２４及び１２６のインターネットプロトコル（ＩＰ）アドレスを含む。この実施例では、コンテンツマネージャ１２２は、地理ＩＰ（ｇｅｏ−ＩＰ）検索サービスを使用して、州、ＤＭＡ、郡、都市、及びＺＩＰコード情報を導出する。
【００３５】
別の実施例では、データベース１２３は、年齢フィールド、性別フィールド、世帯収入フィールドなどの人口統計フィールドを含む。しかしながら、ＡＣＲシステム１２４及び１２６からのデータセットは、人口統計フィールドまたは人口統計データを含まない場合がある。この実施例では、ＡＣＲシステム１２４及び１２６は、コンテンツマネージャ１２２にクライアントデバイス１１８及び１２０のＩＰアドレスを提供する。コンテンツマネージャ１２２は、ＩＰアドレスを使用して、データベース内のデータフィールドに投入するための人口統計データを判断してもよい。
【００３６】
別の実施例では、ＡＣＲシステム１２４からの第１のデータセット内のフィールドは、山岳部夏時間（ＭＤＴ）ゾーンなどのローカルタイムゾーン情報を含み、ＡＣＲシステム１２６からの第２のデータセットは、協定世界時（ＵＴＣ）ゾーンなどの別のタイムゾーンからの情報を含み得る。データベースは、ＵＴＣを用いて全てのデータを記憶してもよく、コンテンツマネージャ１２２は、データをデータベース１２３に記憶する前に、ローカルタイムをＵＴＣに変換してもよい。
【００３７】
いくつかの実施態様において、コンテンツマネージャ１２２は、標準化されたデータを使用して、異なるＡＣＲ技術ベンダ、及びスマートＴＶまたは他のインターネット接続ビデオデバイスにわたるユーザの視聴行動についての報告またはデータ（視聴データ）を生成する。コンテンツマネージャ１２２及びメディアデバイス１１５は、メディアデバイス１１５とコンテンツマネージャ１２２との間でオーバレイコンテンツ２１２及び記録済みＡＣＲデータなどの情報を通信するための通信インタフェースを含み得る。
【００３８】
いくつかの実施例では、通信インタフェースは、セルラネットワーク及び／またはワイヤレスネットワークを用いて情報を通信する。１つの実施例では、通信ネットワークは、第３世代パートナーシッププロジェクト（３ＧＰＰ）リリース８、９、１０、１１、もしくは１２、ロングタームエボリューション（ＬＴＥ）、または米国電気電子学会（ＩＥＥＥ）８０２．１６ｐ、８０２．１６ｎ、８０２．１６ｍ−２０１１、８０２．１６ｈ−２０１０、８０２．１６ｊ−２００９、８０２．１６−２００９であり得るセルラネットワークである。別の実施例では、通信ネットワークは、ＩＥＥＥ８０２．１１−２０１２、ＩＥＥＥ８０２．１１ａｃ、またはＩＥＥＥ８０２．１１ａｄ標準などの、Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ，Ｉｎｃ．によって開発されたＩＥＥＥ（登録商標）標準に従い得るワイヤレスネットワーク（Ｗｉ−Ｆｉアライアンスによって開発されたＷｉ−Ｆｉ（登録商標）技術を用いたネットワークなど）である。さらなる別の実施例では、通信ネットワークは、Ｂｌｕｅｔｏｏｔｈ(登録商標)  ｖ１．０、Ｂｌｕｅｔｏｏｔｈ(登録商標)  ｖ２．０、Ｂｌｕｅｔｏｏｔｈ(登録商標)  ｖ３．０、またはＢｌｕｅｔｏｏｔｈ(登録商標)  ｖ４．０などの、Ｂｌｕｅｔｏｏｔｈ(登録商標)  ＳＩＧ（Ｓｐｅｃｉａｌ  Ｉｎｔｅｒｅｓｔ  Ｇｒｏｕｐ）によって開発されたＢｌｕｅｔｏｏｔｈ（登録商標）接続である。別の実施形態において、通信ネットワークは、ＩＥＥＥ８０２．１５．４−２００３（Ｚｉｇｂｅｅ２００３）、ＩＥＥＥ８０２．１５．４−２００６（Ｚｉｇｂｅｅ２００６）、ＩＥＥＥ８０２．１５．４−２００７（Ｚｉｇｂｅｅ  Ｐｒｏ）などの、ＺｉｇＢｅｅアライアンスによって開発されたＺｉｇｂｅｅ（登録商標）接続であってもよい。
【００３９】
いくつかの実施態様において、コンテンツマネージャ１２２は、また、ＯＴＡ放送局１０８またはＭＶＰＤ１１０から受信されるローカルコンテンツフィード１０３の一部をオーバレイコンテンツ２１２で置換するように、メディアデバイス１１５に命令する。さらにいくつかの実施例では、コンテンツマネージャ１２２は、ローカルコンテンツフィード１０３の一部の上にオーバレイコンテンツ２１２をオーバレイし、または重ね合わせるように、メディアデバイス１１５に命令する。コンテンツマネージャ１２２は、複数のＡＣＲシステム１２４及び１２６にわたってＡＣＲ情報を集めてもよく、異なるクライアントデバイス１１８及び１２０にオーバレイコンテンツ２１２を通信し得る。その場合に、クライアントデバイス１１８及び１２０は、異なるデバイス製造業者からのものであってもよい。
【００４０】
コンテンツマネージャ１２２は、また、概してメディアデバイス１１５としてカテゴリ化された他のデバイス１１６との通信接続を確立し得る。いくつかの実施例では、他のデバイス１１６は、クライアントデバイス１１８または１２０と通信し、オーバレイコンテンツ２１２を表示するために追加の画面（例えば、第２の画面）を提供する。例えば、クライアントデバイス１１８及び１２０は、ローカルコンテンツフィード１０３をＯＴＡ放送局１０８またはＭＶＰＤ１１０から受信し、ローカルコンテンツフィード１０３をユーザに表示する。他のデバイス１１６は、また、前の段落で論じられたように、ＡＣＲイベントが発生したときに、ＡＣＲシステム１２４及び１２６にＡＣＲイベント情報を通信してもよい。コンテンツマネージャ１２２がＡＣＲイベント情報を受信するとき、コンテンツマネージャ１２２は、他のデバイス１１６にオーバレイコンテンツ２１２を通信してもよい。
【００４１】
いくつかの実施態様において、クライアントデバイス１１８及び１２０は、ローカルコンテンツフィード１０３を表示し続け、一方、他のデバイス１１６は、オーバレイコンテンツ２１２を表示する。別の実施例では、クライアントデバイス１１８及び１２０、ならびに他のデバイス１１６は、いずれも、オーバレイコンテンツ２１２を表示する。さらなる別の実施例では、クライアントデバイス１１８及び１２０、ならびに他のデバイス１１６は、オーバレイコンテンツ２１２の一部及びローカルコンテンツフィード１０３の一部を表示する。クライアントデバイス１１８及び１２０、ならびに他のデバイス１１６は、異なるローカルコンテンツフィード１０３及び／またはオーバレイコンテンツ２１２を表示してもよい。
【００４２】
クライアントデバイス１１８及び１２０、及び／または他のデバイス１１６は、オーバレイコンテンツ２１２が受信された時点で、オーバレイコンテンツ２１２を表示してもよい。いくつかの実施例では、クライアントデバイス１１８及び１２０、及び／または他のデバイス１１６は、オーバレイコンテンツ２１２の表示を閾値期間遅延させる。閾値期間は、事前定義された期間であってもよく、またはコンテンツマネージャ１２２が、クライアントデバイス１１８及び１２０、及び／または他のデバイス１１６がオーバレイコンテンツ２１２の表示を遅延させるための期間を選択してもよい。
【００４３】
図２は、クライアントデバイス２１８及び／または２２０などのメディアデバイス１１５にオーバレイコンテンツを提供するためのコンテンツマネージャ２２２を含むシステム２００を示す。コンテンツプロバイダ２０２（例えば、テレビ放送局）は、ネットワーク２１９を介してメディアコンテンツＭをメディアデバイス１１５にストリーミングしてもよく、そのストリーミングは、メディアデバイス１１５へのメディアコンテンツＭのストリーミングの前、またはストリーミングと同時に、コンテンツマネージャ２２２によって傍受されてもよい。コンテンツマネージャ２２２は、より詳細に説明されるように、メディアコンテンツＭの主題及び／またはユーザの関心をターゲットとする、メディアコンテンツＭとともに（またはメディアコンテンツＭに対するオーバレイとして）供給される広告を要求する広告コールをアドサーバ２３０に送信するなどのために、広告サーバ（または、「アド」サーバ）２３０とも通信してもよい。アドサーバ２３０は、メディアデバイス１１５への後の配信のために、広告もしくは他のオーバレイコンテンツ２１２をコンテンツマネージャ２２２に提供する、第三者のサーバもしくは外部サーバであってもよく、または、オーバレイ２１２もしくは置換広告としての配信のために、コンテンツをメディアデバイス１１５に直接提供してもよい。
【００４４】
コンテンツマネージャ２２２は、ＡＣＲエンジン２０４、検索サーバ２０６、オーバレイ決定エンジン２１０、オーバレイコンテンツ２１２を記憶するオーバレイデータベース２１１、及びターゲッタ２１４を含み得る。コンテンツプロバイダ２０２は、ネットワーク２１９を介してメディアコンテンツＭをＡＣＲエンジン２０４にアップロードし得る。
【００４５】
ＡＣＲエンジン２０４は、メディアコンテンツＭのフィンガープリントを取り得る。いくつかの実施例では、ＡＣＲエンジン２０４は、フィードのあらゆるフレーム、フィードのあらゆる他のフレーム、フレームシーケンスなどのフィンガープリントを取ることによって、フィンガープリント２０８ａ〜２０８ｎを生成する。例えば、ＡＣＲエンジン２０４は、フレームの離散コサイン変換（ＤＣＴ）を実行すること、及び結果となる係数のサブセット（例えば、低周波数係数）をフィンガープリント２０８として指定することによって、フィードのフレームのためのフィンガープリント２０８を生成する。追加的または代替的に、ＡＣＲエンジン２０４は、メディアデバイス１１５にストリーミングされているコンテンツの順序付きフレームシーケンスに対応するフィンガープリント２０８ａ〜２０８ｎの対象ブロックを生成（または識別）してもよい。さらに、検索サーバ２０６は、識別が既知である発信メディアプログラム（例えば、発信コンテンツ）のための、フィンガープリントデータベース２０７に記憶されたフレームフィンガープリント２０８ａ〜２０８ｎの一致するソースブロックを見つけ得る。
【００４６】
別の、または関連する実施態様において、ＡＣＲエンジン２０４は、また、どのイベントが発生したか、例えば、ＡＣＲシステム１２４または１２６に記憶された発信コンテンツのフレームシーケンスクエリフィンガープリント２０８ａとフレームフィンガープリント２０８ａ〜２０８ｎとの間の肯定的一致が発生したか、を判断するために、ＡＣＲイベント情報を分析する。いくつかの実施態様において、ＡＣＲシステム１２４または１２６は、オーバレイ位置ユニット１２５を含む。オーバレイ位置ユニット１２５は、コンテンツマネージャ２２２、またはコンテンツマネージャ２２２に連結されたメモリデバイスに記憶されたコンテンツをオーバレイするために、メディアコンテンツ内の位置を識別し得る。ＡＣＲシステム１２４または１２６は、オーバレイ位置ユニット１２５を含んでもよく、含まなくともよい。
【００４７】
肯定的一致があるとき、ＡＣＲエンジン２０４は、肯定的一致をもたらすコンテンツを識別するメディアコンテンツ識別子（ＩＤ）を含む肯定的一致指標を要求側のメディアデバイス１１５に送信する。メディアデバイス１１５は、メディアコンテンツオーバレイ２１２を要求するオーバレイ要求をオーバレイ決定エンジン２１０に送信し得る。いくつかの実施例では、オーバレイ要求は、メディアコンテンツＩＤを含む。他の実施例では、オーバレイ要求は、オーバレイ情報またはオーバレイパラメータを含む。
【００４８】
図２をさらに参照して、ＡＣＲエンジン２０４は、フィンガープリント２０８ａ〜２０８ｎを検索サーバ２０６に通信し得る。検索サーバ２０６は、ＡＣＲシステム１２４または１２６から受信されるＡＣＲイベントに対応する、（例えば、識別されたチャンネルのために予定された）テレビ番組、及びテレビ番組内の位置を検索し、判断し得る。フィードのセグメントの各フィンガープリント２０８は、タイムスタンプに関連付けられ得る。タイムスタンプは、ＡＣＲエンジン２０４によって受信されたときのフィードのセグメントの個々のフレームに属する。タイムスタンプは、任意の開始点からのフィード内のフレーム番号であってもよい。検索サーバ２０６は、それらのそれぞれのタイムスタンプと関連付けてフィンガープリント２０８ａ〜２０８ｎを（例えば、フィンガープリントデータベース２０７内に）記憶し、ユーザが視聴しているフィードのメディアコンテンツＭの中のターゲットとするタイミング及びコンテンツにおいてアドターゲッタ２１４及びオーバレイ決定エンジン２１０を援助する。
【００４９】
いくつかの実施態様において、ＡＣＲエンジン２０４は、多様なメディアデバイス１１５においてＡＣＲクライアント２１５と対話する。ＡＣＲクライアント２１５は、フィンガープリント２０８ａ〜２０８ｎをローカルに照合してもよく、異なるテレビ番組を見るため、及びチャンネル変更をコンテンツマネージャ２２２に報告するために、ユーザがチャンネルを変更したか否かを確認し得る。したがって、フィンガープリント２０８ａ〜２０８ｎの照合は、場合によっては、メディアデバイス１１５においてローカルに発生し得る。
【００５０】
さらに、ＡＣＲクライアント２１５は、周期的に、連続的に、または半連続的に、例えば、クエリフィンガープリント２０８ａの形式で、対象ブロックを含むユーザフィンガープリント情報を検索サーバ２０６に通信して、メディアデバイス１１５上で見られているテレビ番組またはチャンネルを確認することを要求してもよい。検索サーバ２０６は、クエリフィンガープリント（複数可）２０８ａ（または対象ブロック）と、多数のフレームフィンガープリント２０８ａ〜２０８ｎとの間で一致があるときを判断してもよく、フレームフィンガープリント２０８ａ〜２０８ｎは、フィンガープリント２０８ａ〜２０８ｎのソースブロックとして、フィンガープリントデータベース２０７内に、または検索サーバからネットワーク２１９をわたって記憶され得る。クエリフィンガープリント２０８ａは、順序付きフレームシーケンスであってもよく、シーケンスのうちのそれぞれが、テレビ番組またはテレビ番組がストリーミングされるチャンネルに関連付けられるのに十分な一致が見つかるまで、フレームフィンガープリント２０８ａ〜２０８ｎのうちの個々のものと照合されてもよい。肯定的一致があるとき、検索サーバ２０６は、肯定的一致指標をＡＣＲクライアント２１５に通信する。肯定的一致指標に応答して、ＡＣＲクライアント２１５は、メディアコンテンツオーバレイ２１２を要求して、オーバレイ２１２要求をオーバレイ決定エンジン２１０に送信する。
【００５１】
いくつかの実施例では、オーバレイ要求は、メディアコンテンツ識別子（ＩＤ）を含む。追加の実施例では、オーバレイ要求は、オーバレイ情報またはオーバレイパラメータを含む。例えば、オーバレイ決定エンジン２１０は、コンテンツＩＤ、オーバレイ情報、及び／またはオーバレイパラメータを使用して、ターゲットとするオーバレイコンテンツ２１２を識別する。別の実施例では、オーバレイ決定エンジン２１０は、コンテンツＩＤ、オーバレイ情報、及び／またはオーバレイパラメータを使用して、オーバレイフォーマットを識別してもよい。オーバレイ決定エンジン２１０は、コンテンツＩＤ、オーバレイ情報、及び／またはオーバレイパラメータをオーバレイデータベース２１１と比較して、ターゲットとするオーバレイコンテンツ２１２及びオーバレイフォーマットを識別し得る。オーバレイデータベースは、周期的または連続的に、コンテンツプロバイダまたは広告主（例えば、アドサーバ２３０）によって、新たなオーバレイコンテンツ２１２及びオーバレイフォーマットで更新され得る。オーバレイコンテンツ２１２は、チャンネルのテレビ番組のストリーミングされたメディアコンテンツＭのオーバレイ位置に、配信前または配信後のオーバレイフォーマット（オーバレイテンプレートなど）を投入する。
【００５２】
アドターゲッタ２１４は、オーバレイ決定エンジンによってメディアデバイス１１５に配信される広告及び他のオーバレイコンテンツ２１２とのユーザ対話、及び広告及び他のオーバレイコンテンツ２１２に関する行動を追跡及び分析する。アドターゲッタ２１４は、また、ユーザが関心のある主題を判断するために、メディアデバイス単位でユーザプロファイル情報を受信し、ユーザ行動の分析に組み込み得る。ユーザまたはユーザのグループに関して集められたこの情報及びデータは、典型的に見られているテレビ番組及びチャンネルならびに時間に関して、好適な視聴時間及び典型的な視聴習慣に拡張し得る。アドターゲッタ２１４は、次いで、オーバレイ決定エンジン２１０が、それぞれのユーザへの配信用にどのオーバレイコンテンツ２１２を選択すべきか、そのフォーマット方法、及びキャンペーン予算の投資に対する最大の収益のための最良の配信時期を決定する際に使用し得る、異なる関心のある主題及び視聴習慣を、例えばパラメータの型式で、オーバレイ決定エンジン２１０に通知してもよい。
【００５３】
オーバレイ決定エンジン２１０が、ターゲットとするオーバレイコンテンツ２１２をアドターゲッタ２１４の助けを借りて識別するとき、オーバレイ決定エンジンは、ターゲットとするオーバレイコンテンツ２１２をメディアデバイス１１５に返す。いくつかの実施例では、オーバレイ決定エンジン２１０は、ワイヤレス通信ネットワークを介するなどして、ターゲットとするオーバレイコンテンツ２１２をメディアデバイス１１５に直接通信する。他の実施例では、オーバレイ決定エンジン２１０は、ユニバーサルリソースロケータ（ＵＲＬ）を介して、ターゲットとするオーバレイコンテンツ２１２をメディアデバイス１１５に通信する。複数のターゲットとするオーバレイコンテンツ２１２がコンテンツＩＤ、オーバレイ情報、及び／またはオーバレイパラメータと一致するとき、オーバレイ決定エンジン２１０は、最大数のパラメータまたは他の情報を満たす、ターゲットとするコンテンツオーバレイを選択する。追加的または代替的には、複数のターゲットとするオーバレイコンテンツ２１２が、コンテンツＩＤ、オーバレイ情報、及びオーバレイパラメータと一致するとき、オーバレイ決定エンジン２１０は、パラメータ及び他の情報を満たすオーバレイコンテンツ２１２をランダムに選択する。さらなる実施例では、複数のターゲットとするオーバレイコンテンツ２１２が、コンテンツＩＤ、オーバレイ情報、及びオーバレイパラメータと一致するとき、オーバレイ決定エンジン２１０は、コンテンツＩＤ，オーバレイ情報、及び／またはオーバレイパラメータと一致する所定のオーバレイコンテンツ２１２を選択する。オーバレイコンテンツ２１２は、動的コンテンツ（例えば、周期的間隔で更新またはリフレッシュされ得るコンテンツ）とともに投入されてもよい。動的コンテンツは、ローカルデータベースまたは外部システムに記憶され得る。
【００５４】
ＡＣＲフィンガープリント情報がユーザフィンガープリント情報と一致するとき、メディアデバイス１１５のＡＣＲクライアント２１５は、オーバレイコンテンツ２１２をコンテンツフィード１０３上に重ね合わせ得る。１つの実施例では、メディアデバイス１１５は、オーバレイコンテンツ２１２をハイパーテキストマークアップ言語（ＨＴＭＬ）ブラウザ内のコンテンツフィード１０３上に重ね合わせる。別の実施例では、メディアデバイス１１５は、オーバレイコンテンツ２１２をＯＴＡ放送局またはケーブル放送局からのコンテンツフィード１０３上に重ね合わせる。オーバレイコンテンツ２１２が、コンテンツフィード１０３上に置かれるとき、オーバレイコンテンツ２１２は、メディアデバイス１１５のディスプレイを介してユーザに表示され得る。１つの実施例では、オーバレイコンテンツ２１２は、ユーザに表示され得る１つまたは複数の行動喚起（ｃａｌｌ−ｔｏ−ａｃｔｉｏｎ）オプションを含む。この実施例では、ユーザは、フィードバック情報を作成するために、入力デバイス（ＴＶリモコン、キーボード、スマートフォン、またはタブレットなど）を使用してオーバレイコンテンツ２１２と対話する。ＡＣＲクライアント２１５は、フィードバック情報をアドターゲッタ２１４に通信し得る。広告主などの別の個人は、フィードバック情報にアクセスし、オーバレイコンテンツ２１２に対するユーザの関心などの所望の情報を判断するためにフィードバック情報を分析し得る。
【００５５】
ＡＣＲクライアント２１５は、オーバレイコンテンツ２１２及びコンテンツフィード１０３の照合が終わるとき、及び／または閾値期間が満了するときを判断するために、コンテンツフィード１０３をモニタリングし得る。１つの実施例では、オーバレイコンテンツ２１２及びコンテンツフィード１０３の照合が終わったとき、または閾値期間が満了したときに、メディアデバイスは、メディアデバイス１１５上での表示のためにオーバレイコンテンツ２１２を重ね合わせるのを止める。
【００５６】
図３は、メディアコンテンツＭの一部をオーバレイコンテンツ２１２と重ね合わせる、例としての方法３００を示す。方法３００は、ハードウェア（例えば、回路、専用ロジック、処理コンポーネント、マイクロコードなど）、ソフトウェア（例えば、処理デバイスによって実行される命令）、ファームウェア、またはこれらの組み合わせを含む処理ロジックによって、少なくとも部分的に実行され得る。いくつかの実施態様において、方法３００は、図１のコンテンツ配布ネットワーク１００、または図２のシステム２００のうちの全てまたは一部によって実行される。例えば、方法３００は、ＡＣＲシステム１２４もしくは１２６、またはメディアデバイス１１５によって実行される。
【００５７】
図３を参照すると、方法３００が、ブロック３１０において、メディアデバイス１１５がコンテンツフィード１０３からメディアコンテンツＭを受信することで、開始する。ブロック３１２において、方法は、メディアデバイス１１５が、メディアデバイス１１５上にメディアコンテンツＭを表示することを含む。ブロック３１４において、方法は、ＡＣＲシステムがメディアコンテンツＭのフィンガープリントを取ることを含む。ブロック３１６において、方法は、ＡＣＲシステムが、フィンガープリント１２８、２０８を用いてメディアコンテンツＭに関連付けられた番組を識別することを含む。ブロック３１８において、方法は、フィンガープリント１２８、２０８を用いてトリガイベントを識別することを含む。いくつかの実施態様において、トリガイベントは、メディアデバイス１１５がメディアコンテンツＭを表示することである。他の実施態様において、トリガイベントは、メディアデバイス１１５がメディアコンテンツＭの表示を休止することとである。
【００５８】
ブロック３２０において、方法は、コンテンツマネージャが、メディアコンテンツＭ上に重ね合わせるためのオーバレイコンテンツ２１２を識別することを含む。いくつかの実施態様において、コンテンツマネージャが、フィンガープリント１２８、２０８を使用して、メディアコンテンツＭに関連付けられたオーバレイコンテンツ２１２を識別する。別の実施態様では、コンテンツマネージャは、オーバレイコンテンツ２１２をランダムに選択してもよい。
【００５９】
ブロック３２２において、ＡＣＲシステムは、トリガイベントに応答して、オーバレイコンテンツ２１２と置換するためのメディアコンテンツＭの１つまたは複数のフレーム内の位置を識別する。いくつかの実施例では、ＡＣＲシステムは、フィンガープリントを用いてメディアコンテンツＭの１つまたは複数のフレーム内の位置を識別する。例えば、ＡＣＲシステムは、置換されるべきメディアコンテンツＭの１つまたは複数のフレームまたはシーンの一部に識別子を関連付ける。ＡＣＲシステムは、また、識別子をオーバレイコンテンツ２１２に関連付けてもよい。ＡＣＲシステムは、オーバレイコンテンツ２１２と重ね合わせているメディアコンテンツＭの１つまたは複数のフレーム内の位置を識別するために、フレームレベル精度でフィンガープリント１２８、２０８を判断してもよい。例えば、製品配置が、メディアコンテンツＭの少数のフレームに対してのみ発生する場合、フィンガープリントのフレームレベル精度は、メディアデバイス１１５が、メディア内の正確な時間またはフレームにおいてオーバレイを重ね合わせることを可能にする。いくつかの実施態様において、メディアデバイス１１５またはコンテンツマネージャは、メディアコンテンツＭの識別された位置に適合させるために、オーバレイコンテンツ２１２を拡縮する。
【００６０】
ブロック３２４において、方法は、メディアデバイス１１５が、オーバレイコンテンツ２１２をメディアコンテンツＭの一部の上（例えば、フレーム内広告の位置）に重ね合わせることを含む。例えば、ＡＣＲシステムは、フィンガープリントを使用して、フレーム内のメディアコンテンツＭが、オーバレイコンテンツ２１２と重ね合わせるべきメディアコンテンツＭの一部を含むと判断する。言い換えると、オーバレイコンテンツ２１２は、識別されたフレーム内広告に代用し得る広告に対応し得る。いくつかの実施例では、ＡＣＲシステムは、メディアデバイス１１５が１つまたは複数のフレーム内の位置にメディアコンテンツＭを重ね合わせることを要求するメッセージ（例えば、広告配置要求）を、メディアデバイス１１５に送信する。メディアデバイス１１５は、１つまたは複数のフレーム内の識別された位置にオーバレイコンテンツ２１２を重ね合わせることによって、要求に応答し得る。オーバレイコンテンツ２１２は、メディアコンテンツＭのフレームまたはセクション内の空間的位置または時間的位置（例えば、メディアコンテンツＭ内のフレーム内広告の位置）に、重ね合わせられてもよく、または挿入されてもよい。いくつかの実施例では、オーバレイ領域は、メディアコンテンツＭの１つまたは複数のフレーム内の複数の所定の、または事前定義されたオーバレイ領域から選択される。
【００６１】
いくつかの実施例では、オーバレイコンテンツ２１２は、オーバレイコンテンツ２１２が、元はメディアコンテンツＭの一部であったことを視聴者に明らかにするように、メディアコンテンツＭ上に重ね合わせられてもよい。例えば、飲料缶またはビンが、飲料が入っているグラスの隣に重ね合わせられ、したがって、飲料缶またはビンは、それらが消費されていると視聴者には見える。他の実施例では、メディアデバイス１１５は、メディアコンテンツＭの一部を追加、削除、または修正するために、メディアコンテンツＭ上にオーバレイコンテンツ２１２を動的に重ね合わせる。例えば、メディアコンテンツＭ内の俳優が、メディアコンテンツのシーンにおいて旧世代のスマートフォンを使用しているとき、メディアデバイス１１５は、メディアコンテンツＭ内のスマートフォンの位置に、最新世代のスマートフォンを有するオーバレイコンテンツ２１２を重ね合わせる。
【００６２】
いくつかの実施例では、コンテンツマネージャは、オーバレイ基準を用いてオーバレイコンテンツ２１２を選択する。オーバレイ基準は、メディアデバイスを使用する個人または世帯に関連付けられた人口統計情報、位置情報、環境情報などであってもよい。例えば、オーバレイコンテンツ２１２は、世帯の人口統計をターゲットとする。メディアデバイス１１５は、オーバレイコンテンツ２１２を、世帯の人口統計に関連付けられたメディアコンテンツＭのシーン内のポスター上に重ね合わせてもよい。この実施例では、異なる世帯の視聴者は、彼らに個人化され得る異なるオーバレイコンテンツ２１２を有する同一のメディアコンテンツＭを視聴する。いくつかの実施態様において、同一製品が、異なる視聴者に広告されるときに、異なるように提示される。例えば、同一の朝食用シリアルは、健康志向の聴取者に対しては、健康的、繊維が豊富、低脂肪、及び栄養価が高いと宣伝されるが、あまり健康志向でない聴取者に対しては、面白い、カラフル、甘い、カリカリして楽しいと宣伝される。
【００６３】
図４Ａは、第１のフレーム内広告に対応するメディアコンテンツ４１２を有するオーバレイ位置４１０を含む、メディアコンテンツ４００の実施例を示す。（例えば、フレーム内広告の）オーバレイ位置４１０は、上述したように、オーバレイコンテンツを重ね合わせるための位置として識別されている、メディアコンテンツ４００内の位置であってもよい。例えば、オーバレイ位置４１０は、メディアコンテンツ４００内の背景特徴に対応する。メディアコンテンツ４００は、メディアデバイスにおいてコンテンツプロバイダまたは放送局から受信され得る、元のメディアコンテンツ４００の一部であるメディアコンテンツ４１２を含み得る。
【００６４】
図４Ｂは、第２のフレーム内広告に対応するオーバレイコンテンツ４１４を有するオーバレイ位置４１０を含む、メディアコンテンツ４００の実施例を示す。図４Ｂの特徴のうちのいくつかは、そうでないと明示的に述べられない限り、同一の参照番号によって記される図４Ａ内の特徴のうちのいくつかと同一または類似である。上述のように、図１のＡＣＲシステム１２４または１２６は、フィンガープリントを用いてオーバレイ位置４１０を識別し得る。図４Ｂを参照して、メディアデバイス１１５は、図１のコンテンツマネージャ１２２からオーバレイコンテンツ４１４を受信する。トリガイベントが発生するとき、メディアデバイス１１５は、第２のフレーム内広告として、オーバレイ位置４１０においてメディアコンテンツ４００上にオーバレイコンテンツ４１４を重ね合わせる。例えば、図４Ａ内のメディアコンテンツ４００は、２０１４  Ｃｈｅｒｄ  Ｍｕｓｔａｒｏを含む広告掲示板の画像である、メディアコンテンツ４１２内の第１のフレーム内広告を最初に含み得る。メディアデバイスは、第２のフレーム内広告として広告掲示板に新たな車の広告を示すために、２０１７  Ｆｏｒｅｖｙ  Ｃａｍａｓｔａｎｇの画像を含むオーバレイコンテンツ４１４を２０１４  Ｃｈｅｒｄ  Ｍｕｓｔａｒｏの上に重ね合わせてもよい。オーバレイ位置４１０の位置及びサイズは、限定することを意図するものではなく、メディアコンテンツのビューにおいて変化し得る。オーバレイコンテンツ４１４のサイズ及びコンテンツは、限定することを意図するものではなく、メディアコンテンツのビュー、オーバレイ基準などにおいて変化し得る。
【００６５】
図５は、本明細書で論じられる方法論のうちの任意の１つまたは複数を機械に実行させるための命令セットが実行され得る、コンピュータシステム５００の例としての形式で、機械の例としての図式表現を示す。代替的実施態様において、機械は、ＬＡＮ、イントラネット、エクストラネット、またはインターネット内で他の機械に接続され（例えば、ネットワーク化され）てもよい。機械は、クライアントサーバネットワーク環境内のサーバもしくはクライアントデバイスのキャパシティにおいて、またはピアツーピア（もしくは分散型）ネットワーク環境内のピアマシンとして、動作し得る。機械は、パーソナルコンピュータ（ＰＣ）、タブレットＰＣ、セットトップボックス（ＳＴＢ）、携帯情報端末（ＰＤＡ）、携帯電話、スマートフォン、ウェブ機器、サーバ、ネットワークルータ、スイッチもしくはブリッジ、またはその機械によって行われるべきアクションを特定する（逐次または非逐次）命令セットを実行可能な任意の機械であってもよい。さらに、単一機械のみが示されているが、「機械」という用語は、本明細書で述べた方法論のうちの任意の１つまたは複数を実行するために命令セット（または複数の命令セット）を個別に、または共同で実行する、機械の任意の集合を含むとも取られるものとする。
【００６６】
コンピュータシステム５００は、図１のＡＣＲシステム１２４もしくは１２６、図２及び図３のＡＣＲシステム２２４もしくは２２６、または図１のコンテンツマネージャ１２２、図２のコンテンツマネージャ２２２、もしくは図３のコンテンツマネージャ３２２に対応し得る。コンピュータシステム５００は、図１のクライアントデバイス１１８または１２０などの、任意のメディアデバイス１１５に対応し得る。コンピュータシステム５００は、クラウドベースコンピュータシステムの少なくとも一部に対応し得る。
【００６７】
コンピュータシステム５００は、データ処理ハードウェア５０２（例えば、処理デバイス）、メインメモリ５０４ａを含むメモリハードウェア５０４（例えば、読み出し専用メモリ（ＲＯＭ）、フラッシュメモリ、動的ランダムアクセスメモリ（ＤＲＡＭ）（同期ＤＲＡＭ（ＳＤＲＡＭ）またはＤＲＡＭ（ＲＤＲＡＭ）など）、及び静的メモリ５０４ｂ（例えば、フラッシュメモリ、静的ランダムアクセスメモリ（ＳＲＡＭ）など）、ならびにデータ記憶デバイス５１８を含み、それらは、互いにバス５３０を介して通信する。
【００６８】
処理デバイス５０２は、マイクロプロセッサ、中央処理装置などの、１つまたは複数の汎用処理デバイスを表す。より詳細には、処理デバイスは、複合命令セットコンピューティング（ＣＩＳＣ）マイクロプロセッサ、縮小命令セットコンピュータ（ＲＩＳＣ）マイクロプロセッサ、超長命令語（ＶＬＩＷ）マイクロプロセッサ、もしくは他の命令セットを実装するプロセッサ、または命令セットの組み合わせを実装するプロセッサであってもよい。処理デバイス５０２は、また、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、デジタル信号プロセッサ（ＤＳＰ）、ネットワークプロセッサなどの、１つまたは複数の専用処理デバイスであってもよい。いくつかの実施態様において、処理デバイス５０２は、１つまたは複数の処理コアを含んでもよい。処理デバイス５０２は、本明細書で述べた動作を実行するためのミラーリングロジックの命令５２６を実行してもよい。
【００６９】
コンピュータシステム５００は、ネットワーク５２０に通信可能に連結されるネットワークインタフェースデバイス５０８をさらに含んでもよい。コンピュータシステム５００は、また、ビデオディスプレイユニット５１０（例えば、液晶ディスプレイ（ＬＣＤ）、もしくは陰極線管（ＣＲＴ））、英数字入力デバイス５１２（例えば、キーボード）、カーソル制御デバイス５１４（例えば、マウス）、信号生成デバイス５１６（例えば、スピーカ）、または他の周辺デバイスを含んでもよい。さらに、コンピュータシステム５００は、グラフィックス処理ユニット５２２、ビデオ処理ユニット５２８、及び音声処理ユニット５３２を含んでもよい。別の実施形態において、コンピュータシステム５００は、チップセット（図示せず）を含んでもよく、チップセットは、処理デバイス５０２とともに動作するように設計された集積回路またはチップのグループを指し、処理デバイス５０２と外部デバイスとの間の通信を制御する。例えば、チップセットは、ＵＳＢ、ＰＣＩ、またはＩＳＡバスなどの周辺機器の低速周辺バスに処理デバイス５０２をリンクするだけでなく、メインメモリ５０４及びグラフィックコントローラなどの超高速デバイスに処理デバイス５０２をリンクする、マザーボード上のチップのセットであってもよい。
【００７０】
データ記憶デバイス５１８は、本明細書で説明された機能の方法論のうちの任意の１つまたは複数を具現化する命令５２６が記憶されている、コンピュータ可読記憶媒体５２５を含んでもよい。命令５２６は、また、コンピュータシステム５００によるその実行中に、メインメモリ５０４及び／または処理デバイス５０２内に完全に、または少なくとも部分的に常駐し得る。メインメモリ５０４及び処理デバイス５０２は、また、コンピュータ可読記憶媒体を構成する。
【００７１】
コンピュータ可読記憶媒体５２５は、また、上記アプリケーションを呼び出す方法を含むロジック及び／またはソフトウェアライブラリを利用する命令５２６を記憶するために使用されてもよい。コンピュータ可読記憶媒体５２５は、単一の媒体であるように例示的実施態様において示されるが、「コンピュータ可読記憶媒体」という用語は、１つまたは複数の命令セットを記憶する単一媒体または複数媒体（例えば、集中型もしくは分散型データベース、及び／または関連キャッシュ及びサーバ）を含むと取られるべきである。「コンピュータ可読記憶媒体」という用語は、また、機械による実行のための命令セット５２６を記憶し、符号化し、または搬送することが可能であり、本開示の方法論のうちの任意の１つまたは複数を機械に実行させる、任意の媒体を含むと取られるものとする。「コンピュータ可読記憶媒体」という用語は、したがって、ソリッドステートメモリ、光学媒体、及び磁気媒体を含むと取られるものとするが、これらに限定されない。以下の実施例は、さらなる実施態様に適する。
【００７２】
本開示は、限定された数の実施態様に関して説明されているが、当業者であれば、そこからの多数の修正及び変形を理解するであろう。添付の特許請求の範囲は、本開示の真の趣旨及び範囲内に入るものとして、そのような修正及び変形全てをカバーすると意図される。
【００７３】
本明細書中の説明において、本開示の完全な理解をもたらすために、特定の種類のプロセッサ及びシステム構成、特定のハードウェア構造、特定のアーキテクチャ及びマイクロアーキテクチャの詳細、特定のレジスタ構成、特定の命令の種類、特定のシステムコンポーネント、特定の測定／高さ、特定のプロセッサパイプラインステージ及び動作などの例といった、多数の特定の詳細が述べられている。しかしながら、これらの特定の詳細が、本開示を実施するために採用されなくともよいことは、当業者には明らかである。他の例では、特定の及び代替的なプロセッサアーキテクチャ、説明したアルゴリズムのための特定のロジック回路／コード、特定のファームウェアコード、特定の相互接続動作、特定のロジック構成、特定の製造技術及び原料、特定のコンパイラ実施態様、コードにおける特定のアルゴリズム表現、特定のパワーダウン及びゲーティング技術／ロジック、ならびにコンピュータシステムの他の特定の動作詳細などの、周知のコンポーネントまたは方法は、本開示を不必要に不明瞭にすることを回避するために、詳細には説明されていない。
【００７４】
実施態様は、コンピューティングプラットフォームまたはマイクロプロセッサなどの特定の集積回路におけるセキュアなメモリ再分割に関して説明される。実施態様は、他の種類の集積回路及びプログラマブルロジックデバイスにも適用可能であってもよい。例えば、開示された実施態様は、デスクトップコンピュータシステム、またはＩｎｔｅｌ（登録商標）Ｕｌｔｒａｂｏｏｋｓ（商標）コンピュータなどのポータブルコンピュータに限定されない。さらに、手持ちデバイス、タブレット、他の薄型ノートブック、システムオンチップ（ＳｏＣ）デバイス、及び埋め込みアプリケーションなどの他のデバイスにおいて使用されてもよい。手持ちデバイスのいくつかの実施例は、携帯電話、インターネットプロトコルデバイス、デジタルカメラ、携帯情報端末（ＰＤＡ）、及び手持ちＰＣを含む。埋め込みアプリケーションは、典型的には、マイクロコントローラ、デジタル信号プロセッサ（ＤＳＰ）、システムオンチップ、ネットワークコンピュータ（ＮｅｔＰＣ）、セットトップボックス、ネットワークハブ、ワイドエリアネットワーク（ＷＡＮ）スイッチ、または以下で教示される機能及び動作を実行し得る任意の他のシステムを含む。システムは、任意の種類のコンピュータまたは埋め込みシステムであってもよいと説明される。開示された実施態様は、特に、ローエンドデバイス、ウェアラブルデバイスのようなもの（例えば、時計）、電子インプラント、知覚及び制御インフラストラクチャデバイス、コントローラ、監督制御及びデータ収集（ＳＣＡＤＡ）システムなどに使用されてもよい。さらに、本明細書において説明された装置、方法、及びシステムは、物理コンピューティングデバイスに限定されず、エネルギー保存及び効率のためのソフトウェア最適化にも関連し得る。以下の説明において容易に明らかとなるように、本明細書において説明された方法、装置、及びシステムの実施態様（ハードウェア、ファームウェア、ソフトウェア、またはこれらの組み合わせに関連するかどうかに関わらず）は、性能考慮とバランスの取れた「グリーンテクノロジ」の未来に極めて重要である。
【００７５】
本明細書における実施態様は、プロセッサに関して説明されるが、他の実施態様は、他の種類の集積回路及びロジックデバイスに適用可能である。本開示の実施態様の類似の技術及び教示は、より高いパイプラインスループット及び改善された性能からの恩恵を受け得る、他の種類の回路または半導体デバイスに適用され得る。本開示の実施態様の教示は、データ操作を実行する任意のプロセッサまたは機械に適用可能である。しかしながら、本開示は、５１２ビット、２５６ビット、１２８ビット、６４ビット、３２ビット、または１６ビットデータ動作を実行するプロセッサまたは機械に限定されず、データの操作または管理が実行される任意のプロセッサ及び機械に適用され得る。さらに、本明細書における説明は、実施例を提供し、添付図面は、例示の目的で様々な実施例を示している。しかしながら、これらの実施例は、本開示の実施態様のうちの全ての可能な実施態様の網羅的なリストを提供するのではなく、単に本開示の実施態様の実施例を提供することを意図されるように、限定的な意味で解釈されるべきではない。
【００７６】
下記の実施例は、実行ユニット及びロジック回路の文脈において命令ハンドリング及び配布を説明するが、本開示の他の実施態様は、機械可読の有形媒体上に記憶されたデータまたは命令として完成され得る。命令は、機械による実行時に、開示の少なくともいくつかの実施態様と一貫した機能を機械に実行させる。いくつかの実施態様において、本開示の実施態様に関連付けられた機能が、機械実行可能命令において具現化される。命令は、命令でプログラムされる汎用プロセッサまたは専用プロセッサに、本開示のステップを実行させるために使用され得る。本開示の実施態様は、命令をその上に記憶している機械またはコンピュータ可読媒体を含み得るコンピュータプログラム製品またはソフトウェアとして提供されてもよく、命令は、本開示の実施態様に従って１つまたは複数の動作を実行するコンピュータ（または他の電子デバイス）をプログラムするために使用されてもよい。代替的には、本開示の実施態様の動作は、動作を実行するための固定機能ロジックを含む特定のハードウェアコンポーネントによって、またはプログラムされたコンピュータコンポーネント及び固定機能ハードウェアコンポーネントの任意の組み合わせによって実行されてもよい。
【００７７】
開示の実施態様を実行するためのロジックをプログラムするために使用される命令は、ＤＲＡＭ、キャッシュ、フラッシュメモリ、または他の記憶装置などの、システムにおけるメモリ内に記憶されてもよい。さらに、命令は、ネットワークを介して、または他のコンピュータ可読媒体を経由して、配布されてもよい。したがって、機械可読媒体は、機械（例えば、コンピュータ）によって読み取り可能な形式で情報を記憶し、または送信するための任意の機構を含み得るが、フロッピーディスケット、光ディスク、コンパクトディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）、及び光磁気ディスク、読み出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、消去可能プログラマブル読み出し専用メモリ（ＥＰＲＯＭ）、電気的消去可能プログラマブル読み出し専用メモリ（ＥＥＰＲＯＭ）、磁気もしくは光学カード、フラッシュメモリ、または電気、光、音響、もしくは他の形式の伝播信号（例えば、搬送波、赤外線信号、デジタル信号など）を介してインターネット上で情報の送信において使用される有形の機械可読記憶装置に限定されない。したがって、コンピュータ可読媒体は、機械（例えば、コンピュータ）によって読み取り可能な形式で、電子命令または情報を記憶し、または送信するのに適した、任意の種類の有形の機械可読媒体を含む。
【００７８】
設計は、創作から製作シミュレーションまで、多様な段階を通過し得る。設計を表すデータは、いくつかのやり方で設計を表し得る。第１に、シミュレーションにおいて有用であるように、ハードウェアは、ハードウェア記述言語または別の機能記述言語を用いて表され得る。追加的に、ロジック及び／またはトランジスタゲートを有する回路レベルモデルは、設計プロセスのいくつかの段階において生産され得る。さらに、大抵の設計は、いくつかの段階において、ハードウェアモデルにおける多様なデバイスの物理配置を表すデータレベルに到達する。従来の半導体製作技術が使用される場合、ハードウェアモデルを表すデータは、集積回路を生産するために使用されるマスクのための異なるマスクレイヤ上の多様な特徴の存在または不存在を特定するデータであってもよい。設計の任意の表現において、データは、機械可読媒体の任意の形式で記憶され得る。メモリ、またはディスクなどの磁気もしくは光学記憶装置は、情報を送信するために変調され、または生成される光波または電波を介して送信される情報を記憶するための機械可読媒体であってもよい。コードまたは設計を示し、または搬送する電気搬送波が送信されるとき、電気信号のコピー、バッファ、または再送信が実行される限り、新たなコピーが行われる。したがって、通信プロバイダまたはネットワークプロバイダは、有形の機械可読媒体上に、少なくとも一時的に、本開示の実施態様の技術を具現化する、搬送波に符号化された情報などの品目を記憶し得る。
【００７９】
本明細書で用いられるモジュールは、ハードウェア、ソフトウェア、及び／またはファームウェアの任意の組み合わせを指す。例として、モジュールは、マイクロコントローラによって実行されるように適合されるコードを記憶するための非一時的媒体に関連付けられた、マイクロコントローラなどのハードウェアを含む。したがって、モジュールへの参照は、いくつかの実施態様において、非一時的媒体上に保持されるべきコードを認識及び／または実行するように特に構成されているハードウェアを指す。さらに、別の実施形態において、モジュールの使用は、所定の動作を実行するためにマイクロコントローラによって実行されるように特に適合された、コードを含む非一時的媒体を指す。推察され得るように、さらなる別の実施形態において、モジュールという用語（この実施例における）は、マイクロコントローラ及び非一時的媒体の組み合わせを指してもよい。しばしば、別々であると示されるモジュール境界は、一般に変化し、潜在的にオーバラップすることがある。例えば、第１のモジュール及び第２のモジュールは、何らかの独立したハードウェア、ソフトウェア、またはファームウェアを潜在的に保持しつつ、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせを共有してもよい。いくつかの実施態様において、ロジックという用語の使用は、トランジスタ、レジスタ、またはプログラマブルロジックデバイスなどの他のハードウェアといった、ハードウェアを含む。
【００８０】
いくつかの実施態様において、「ように構成される」という句の使用は、指定された、または判断されたタスクを実行するために、装置、ハードウェア、ロジック、または要素を配置すること、一緒に置くこと、製造すること、販売を申し出ること、輸入すること、及び／または設計することを指す。この例では、動作していない装置またはその要素は、やはり、それが指定されたタスクを実行するために設計され、連結され、及び／または相互接続されている場合に、指定されたタスクを実行する「ように構成されている」。単なる例示的な実施例として、ロジックゲートは、動作中に０または１を提供し得る。しかし、クロックにイネーブル信号を提供する「ように構成される」ロジックゲートは、１または０を提供し得るあらゆる潜在的なロジックゲートを含まない。その代わりに、ロジックゲートは、動作中に１または０の出力がクロックをイネーブルにするいくつかのやり方で連結されるものである。「ように構成される」という用語の使用は、動作を必要としないが、その代わりに、装置、ハードウェア、及び／または要素の潜在的状態に着目し、潜在的状態において、装置、ハードウェア、及び／または要素が、装置、ハードウェア、及び／または要素が動作中であるときに特定のタスクを実行するように設計されていることに再び留意されたい。
【００８１】
さらに、いくつかの実施態様における「ための」、「することが可能な」、及び／または「するように動作可能な」という句の使用は、特定のやり方で装置、ロジック、ハードウェア、及び／または要素の使用を可能にするように設計された、何らかの装置、ロジック、ハードウェア、及び／または要素を指す。いくつかの実施態様における、ための、することが可能な、または、するように動作可能な、の使用は、装置、ロジック、ハードウェア、及び／または要素の潜在的状態を指し、装置、ロジック、ハードウェア、及び／または要素は、特定のやり方で装置の使用を可能にするように、動作していないが、設計されていることに、上述の通り留意されたい。
【００８２】
本明細書で用いられる値は、数、状態、論理状態、またはバイナリ論理状態の任意の既知の表現を含む。しばしば、ロジックレベル、ロジック値、または論理値の使用は、また、１及び０の使用を指し、それは、単にバイナリロジック状態を表す。例えば、１は、ハイ論理レベルを指し、０は、ロー論理レベルを指す。いくつかの実施態様において、トランジスタまたはフラッシュセルなどの記憶セルは、単一の論理値または複数の論理値を保持することが可能であってもよい。しかしながら、コンピュータシステムでは、他の値の表現が使用されている。例えば、１０進数の１０は、２進値の１０１０及び１６進数の文字Ａとも表され得る。したがって、値は、コンピュータシステムにおいて保持されることが可能な情報の任意の表現を含む。
【００８３】
さらに、状態は、値または値の一部によって表されてもよい。実施例として、論理的１などの第１の値は、デフォルトまたは初期状態を表し得る一方で、論理的０などの第２の値は、非デフォルト状態を表し得る。さらに、いくつかの実施態様において、リセット及びセットという用語は、それぞれ、デフォルト値及び更新後の値または状態を指す。例えば、デフォルト値は、潜在的に、ハイ論理値、すなわちリセットを含み、一方、更新後の値は、潜在的に、ロー論理値、すなわち、セットを含む。値の任意の組み合わせは、任意の数の状態を表すために利用され得ることに留意されたい。
【００８４】
上述した方法、ハードウェア、ソフトウェア、ファームウェア、またはコードの実施態様は、処理要素によって実行可能な、機械アクセス可能媒体、機械可読媒体、コンピュータアクセス可能媒体、またはコンピュータ可読媒体上に記憶された、命令またはコードを介して実装されてもよい。非一時的機械アクセス可能な媒体／読み取り可能な媒体は、コンピュータまたは電子システムなどの機械によって読み取り可能な形式で、情報を提供する（すなわち、記憶し、及び／または送信する）任意の機構を含む。例えば、非一時的機械アクセス可能な媒体は、静的ＲＡＭ（ＳＲＡＭ）または動的ＲＡＭ（ＤＲＡＭ）などのランダムアクセスメモリ（ＲＡＭ）、ＲＯＭ、磁気または光学記憶媒体、フラッシュメモリデバイス、電気記憶デバイス、光学記憶デバイス、音響記憶デバイス、一時的（伝播）信号（例えば、搬送波、赤外線信号、デジタル信号）から受信される情報を保持するための他の形式の記憶デバイスなどを含み、それらは、そこから情報を受信し得る非一時的媒体とは区別されるものとする。
【００８５】
開示の実施態様を実行するためのロジックをプログラムするために使用される命令は、ＤＲＡＭ、キャッシュ、フラッシュメモリ、または他の記憶装置などの、システムにおけるメモリ内に記憶されてもよい。さらに、命令は、ネットワークを介して、または他のコンピュータ可読媒体を経由して、配布されてもよい。したがって、機械可読媒体は、機械（例えば、コンピュータ）によって読み取り可能な形式で情報を記憶し、または送信するための任意の機構を含み得るが、フロッピーディスケット、光ディスク、コンパクトディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）、及び光磁気ディスク、読み出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、消去可能プログラマブル読み出し専用メモリ（ＥＰＲＯＭ）、電気的消去可能プログラマブル読み出し専用メモリ（ＥＥＰＲＯＭ）、磁気もしくは光学カード、フラッシュメモリ、または電気、光、音響、もしくは他の形式の伝播信号（例えば、搬送波、赤外線信号、デジタル信号など）を介してインターネット上で情報の送信に使用される有形の機械可読記憶装置に限定されない。したがって、コンピュータ可読媒体は、機械（例えば、コンピュータ）によって読み取り可能な形式で、電子命令または情報を記憶または送信するのに適した、任意の種類の有形の機械可読媒体を含む。
【００８６】
この明細書全体を通した「いくつかの実施態様」または「実施形態」に対する参照は、実施形態に関係して説明される特定の特徴、構造、または特性が、本開示の少なくともいくつかの実施態様に含まれることを意味する。したがって、本明細書全体を通した様々な場所における、「いくつかの実施態様において」または「実施形態において」という句の出現は、必ずしも全てが同一の実施形態を指すものではない。さらに、特定の特徴、構造、または特性は、１つまたは複数の実施態様において任意の適当なやり方で結合されてもよい。
【００８７】
上記明細書において、詳細な説明は、特定の例示的な実施態様を参照して与えられている。しかしながら、添付の特許請求の範囲において述べられている、開示のより広範な趣旨及び範囲から逸脱することなく、それに対して多様な修正及び変更が行われ得ることは明らかである。明細書及び図面は、したがって、限定的な意味ではなく例示的な意味で考えられるものとする。さらに、前述の実施形態の使用及び他の例示的な言葉は、必ずしも、同一の実施形態または同一の実施例を指すものではないが、異なる及び別個の実施態様、ならびに潜在的には同一の実施形態を指してもよい。
【００８８】
詳細な説明のいくつかの部分は、コンピュータメモリ内のデータビット上の動作のアルゴリズム及び記号表現に関して提示されている。これらのアルゴリズムの説明及び表現は、他の当業者に自分の作業の要旨を最も効果的に伝達するための、データ処理の技術分野における当業者によって使用される手段である。アルゴリズムは、本明細書では、及び概して、所望の結果に至る自己矛盾のない動作シーケンスであると考えられる。動作は、物理量の物理的操作を必要とするものである。通常、これらの量は、記憶され、移送され、結合され、比較され、及び操作されることが可能な電気信号または磁気信号の形式を取るが、必ずしもそうではない。これらの信号を、ビット、値、要素、記号、文字、用語、数字などと呼ぶことは、主に慣用的な理由から、時には便宜的であると証明されている。本明細書で説明されるブロックは、ハードウェア、ソフトウェア、ファームウェア、またはそれらの組み合わせであってもよい。
【００８９】
しかしながら、これらの及び類似の用語の全てが、適切な物理量に関連付けられるものであり、これらの量に適用される単なる便宜的なラベルであることに留意すべきである。上述の説明から明らかなように特段の記載がない限り、「定義する」、「受信する」、「判断する」、「発行する」、「リンクする」、「関連付けする」、「取得する」、「認証する」、「禁止する」、「実行する」、「要求する」、「通信する」などの用語を使用する説明は、コンピューティングシステムのレジスタおよびメモリ内の物理（例えば、電子）量として表されるデータを、コンピューティングシステムメモリもしくはレジスタ、または他のそのような情報記憶、送信もしくは表示デバイス内の物理量として同様に表される他のデータに操作及び変換する、コンピューティングシステムまたは類似の電子コンピューティングデバイスのアクション及び処理を指すと、説明全体を通して理解される。
【００９０】
「例」または「例示的」という単語は、実施例、事例、または例示として機能することを意味するために、本明細書において使用される。「実施例」または「例示的」として本明細書で説明される任意の態様または設計は、必ずしも、他の態様または設計を超えて好適または有利と解釈されるべきではない。むしろ、「実施例」または「例示的」という単語の使用は、概念を具体的に提示することを意図している。本出願において使用される、「または」という用語は、排他的な「または」ではなく包含的な「または」を意味することを意図している。すなわち、特段の記載がない限り、または文脈から明らかでない限り、「ＸはＡまたはＢを含む」は、自然な包含的並べ替えのいずれかを意味することを意図している。すなわち、ＸがＡを含む、ＸがＢを含む、またはＸがＡ及びＢの両方を含む場合、「ＸがＡまたはＢを含む」は、前述の場合のいずれかにおいて満たされる。さらに、特段の記載がない限り、または文脈から単数形を対象とすることが明らかでない限り、本明細書及び添付の特許請求の範囲において使用される冠詞「ａ」及び「ａｎ」は、概して、「１つまたは複数の」を意味するように解釈されるべきである。さらに、全体を通して「実施形態」または「いくつかの実施態様」または「実施態様」または「１つの実施態様」という用語の使用は、そのように説明されない限り、同一の実施形態または実施態様を意味することを意図するものではない。また、本明細書で使用される「第１の」、「第２の」、「第３の」、「第４の」などの用語は、異なる要素間で区別するためのラベルとして意味され、必ずしもそれらの数字の指定による元の意味を有しなくともよい。
【図１】
2020512775.tif 000003
【図２】
2020512775.tif 000004
【図３】
2020512775.tif 000005
【図４】
2020512775.tif 000006
【図５】
2020512775.tif 000007
【手続補正書】
【提出日】令和1年12月27日(2019.12.27)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００６７
【補正方法】変更
【補正の内容】
【００６７】
コンピュータシステム５００は、データ処理ハードウェア５０２（例えば、処理デバイス）、メインメモリ５０４を含むメモリハードウェア５０４（例えば、読み出し専用メモリ（ＲＯＭ）、フラッシュメモリ、動的ランダムアクセスメモリ（ＤＲＡＭ）（同期ＤＲＡＭ（ＳＤＲＡＭ）またはＤＲＡＭ（ＲＤＲＡＭ）など）、及び静的メモリ５０６（例えば、フラッシュメモリ、静的ランダムアクセスメモリ（ＳＲＡＭ）など）、ならびにデータ記憶デバイス５１８を含み、それらは、互いにバス５３０を介して通信する。
【手続補正２】
【補正対象書類名】図面
【補正対象項目名】図１
【補正方法】変更
【補正の内容】
【図１】
2020512775.tif 000008
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】図２
【補正方法】変更
【補正の内容】
【図２】
2020512775.tif 000009
【手続補正４】
【補正対象書類名】図面
【補正対象項目名】図５
【補正方法】変更
【補正の内容】
【図５】
2020512775.tif 000010
【国際調査報告】
2020512775.tif 000011
2020512775.tif 000012