(57)【要約】  媒体コンテンツの一部からそれぞれ導き出されたものであり、媒体コンテンツの一部に一意的に対応する媒体フィンガープリントを分散型データベースに保存する。この分散型データベースの１以上の情報貯蔵庫のインスタンスは、データネットワークに通信可能に接続してある１以上のコンピューティング装置にそれぞれ配置される。媒体フィンガープリントのそれぞれに個々に関連する少なくとも第１番目の基準に基づいて、前記１以上の情報貯蔵庫に複数の媒体フィンガープリントのそれぞれを分配する。媒体フィンガープリントの１つに向けられたクエリに応じて、前記基準に基づいて、２以上のコンピューティング装置のうちの少なくとも１つを選択する。選択された少なくとも１つのコンピューティング装置の分散型データベースインスタンスに対してこのクエリを実行する。
2011517816.tif 000002
【特許請求の範囲】
【請求項１】
媒体コンテンツの一部からそれぞれ導き出されたものであり、媒体コンテンツの一部に一意的に対応する、複数の媒体フィンガープリントを分散型データベースに保存するステップであって、
前記分散型データベースの１以上の情報貯蔵庫のインスタンスは、データネットワークに通信可能に接続してある１以上のコンピューティング装置にそれぞれ配置され、
前記保存するステップは、前記媒体フィンガープリントのそれぞれに個々に関連する少なくとも第１番目の基準に基づいて、前記１以上の情報貯蔵庫に前記複数の媒体フィンガープリントのそれぞれを分配するステップを具備することを特徴とする、ステップと、
前記媒体フィンガープリントの１つに向けられたクエリに応じて、前記第１番目の基準のうちの１つ以上又は、第２番目の基準に基づいて、２以上のコンピューティング装置のうちの少なくとも１つを選択するステップと、
前記選択された少なくとも１つのコンピューティング装置の分散型データベースインスタンスに対してクエリを実行するステップと、
を具備する方法。
【請求項２】
前記第１番目の基準は、１以上の前記媒体コンテンツ、又は該媒体コンテンツから導き出し、一意的に該媒体コンテンツ対応する媒体フィンガープリントと関連付けた、１以上の適時性、値、又は統計的情報のうちの１以上に関することを特徴とする請求項１に記載の方法。
【請求項３】
前記選択するステップは、前記第２番目の基準に基づいて行われ、
該第２番目の基準は、前記少なくとも１つのコンピューティング装置の特性に関するものであり、
該特性は、
前記コンピューティング装置の１つ以上の位置、又は
クエリのときにおける前記コンピューティング装置の１つ以上の計算特性又はネットワーキング特性、又は
クエリのときにおける、前記コンピューティング装置の１つ以上の統計的情報、もしくは、前記コンピューティング装置における待ち時間、もしくは、前記データネットワークに対する前記コンピューティング装置の利用の可能性、又は
クエリのときにおけるデータネットワークの状態
のうちの１つに関することであることを特徴とする請求項１に記載の方法。
【請求項４】
前記媒体コンテンツのインスタンスは前記データネットワークに流れ、
前記クエリは、前記媒体コンテンツのインスタンスに関連し、
前記方法は、
前記クエリを計算するステップと、
前記計算するステップに基づいて、結果を返送するステップと、
前記返送されたクエリの結果に基づいて媒体コンテンツインスタンスのストリーミングに対して動作するステップと、
を具備することを特徴とすることを特徴とする請求項１に記載の方法。
【請求項５】
前記動作するステップは、
前記媒体コンテンツインスタンスのストリーミングを制御するステップを具備し、
前記制御するステップは、
前記媒体コンテンツインスタンスのストリーミングを抑制するステップ、又は
前記媒体コンテンツインスタンスのストリーミングに関して少なくともリアルタイム近くの媒体コンテンツインスタンスに関連する情報を提供するステップ、
のうちの１つ以上を具備し、
前記媒体コンテンツインスタンスは、前記媒体コンテンツにアクセスする事業体からの要求に応じて前記データネットワークに通信可能に接続された前記事業体に流れ、
前記抑制するステップは、前記媒体コンテンツインスタンスの前記事業体への流れを抑制するステップと、
前記媒体コンテンツが前記事業体とは別に前記データネットワークの部分に流れることを許容するステップと、
を具備することを特徴とする請求項４に記載の方法。
【請求項６】
分散型データベースを管理するステップであって、
前記管理するステップは、前記基準に基づいて前記１以上の分散型データベース情報貯蔵庫中に１以上の複数の媒体フィンガープリントを分配するステップをさらに具備し、
前記選択するステップ又はクエリを実行するステップは、再分配するステップに基づき行われることを特徴とする請求項１に記載の方法。
【請求項７】
前記再分配するステップは、
１以上の第１番目の分散型データベース情報貯蔵庫インスタンスから少なくとも１つの媒体フィンガープリントの保存位置を、前記第１番目の分散型データベース情報貯蔵庫インスタンスとは別の少なくとも１つのコンピューティング装置の少なくとも１つの分散型データベース情報貯蔵庫インスタンスに、動的に再割り付けするステップを具備することを特徴とする請求項６に記載の方法。
【請求項８】
コンピュータで実行可能なインストラクションを具備するコンピュータ読み取り可能記憶媒体と、
前記インストラクションを実行することにより、１以上のステップを実行するようシステムを制御する、少なくとも１つのプロセッサと、
を具備し、前記ステップは、
媒体コンテンツの一部からそれぞれ導き出されたものであり、媒体コンテンツの一部に一意的に対応する、複数の媒体フィンガープリントを分散型データベースに保存するステップであって、
前記分散型データベースの１以上の情報貯蔵庫のインスタンスは、データネットワークに通信可能に接続してある１以上のコンピューティング装置にそれぞれ配置され、
前記保存するステップは、前記媒体フィンガープリントのそれぞれに個々に関連する少なくとも第１番目の基準に基づいて、前記１以上の情報貯蔵庫に前記複数の媒体フィンガープリントのそれぞれを分配するステップを具備することを特徴とする、ステップと、
前記媒体フィンガープリントの１つに向けられたクエリに応じて、前記第１番目の基準のうちの１つ以上又は、第２番目の基準に基づいて、２以上のコンピューティング装置のうちの少なくとも１つを選択するステップと、
前記選択された少なくとも１つのコンピューティング装置の分散型データベースインスタンスに対してクエリを実行するステップと、
を具備することを特徴とするシステム。
【請求項９】
媒体コンテンツの一部からそれぞれ導き出されたものであり、媒体コンテンツの一部に一意的に対応する、複数の媒体フィンガープリントを分散型データベースに保存するステップを実行する、保存手段であって、
前記分散型データベースの１以上の情報貯蔵庫のインスタンスは、データネットワークに通信可能に接続してある１以上のコンピューティング装置にそれぞれ配置され、
前記保存するステップは、前記媒体フィンガープリントのそれぞれに個々に関連する少なくとも第１番目の基準に基づいて、前記１以上の情報貯蔵庫に前記複数の媒体フィンガープリントのそれぞれを分配するステップを具備することを特徴とする保存手段と、
前記媒体フィンガープリントの１つに向けられたクエリに応じて、前記第１番目の基準のうちの１つ以上又は、第２番目の基準に基づいて、２以上のコンピューティング装置のうちの少なくとも１つを選択する、選択手段と、、
前記選択された少なくとも１つのコンピューティング装置の分散型データベースインスタンスに対してクエリを実行するクエリ手段と、
を具備することを特徴とするシステム。
【請求項１０】
１以上のプロセッサに実行させたとき、
媒体コンテンツの一部からそれぞれ導き出されたものであり、媒体コンテンツの一部に一意的に対応する、複数の媒体フィンガープリントを分散型データベースに保存するステップであって、
前記分散型データベースの１以上の情報貯蔵庫のインスタンスは、データネットワークに通信可能に接続してある１以上のコンピューティング装置にそれぞれ配置され、
前記保存するステップは、前記媒体フィンガープリントのそれぞれに個々に関連する少なくとも第１番目の基準に基づいて、前記１以上の情報貯蔵庫に前記複数の媒体フィンガープリントのそれぞれを分配するステップを具備することを特徴とするステップと、
前記媒体フィンガープリントの１つに向けられたクエリに応じて、前記第１番目の基準のうちの１つ以上又は、第２番目の基準に基づいて、２以上のコンピューティング装置のうちの少なくとも１つを選択するステップと、
前記選択された少なくとも１つのコンピューティング装置の分散型データベースインスタンスに対してクエリを実行するステップと、
を具備する方法の実行を制御する、エンコードされたインストラクションを記憶するコンピュータ読み取り可能記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、Ｐｈｉｌｉｐ  Ｂｅｒｎｏｓｋｙ、Ｃｌａｕｓ  Ｂａｕｅｒ及びＷｅｎｙｕ  Ｊｉａｎｇによる２００８年３月３１日出願の米国暫定特許出願番号６１／０４０，８６５、（Ｐａｔｅｎｔ  Ｄｏｃｋｅｔ  Ｎｏ．Ｄ０７０５１ＵＳ０１）、表題「Ｄｉｓｔｒｉｂｕｔｅｄ  Ｍｅｄｉａ  Ｆｉｎｇｅｒｐｒｉｎｔ  Ｒｅｐｏｓｉｔｏｒｉｅｓ」に基づく優先権を主張する。この暫定特許出願はそのすべてを参照として本明細書に組み込むものとする。
【０００２】
本発明は、一般的には媒体に関する。さらに詳細には、本発明の実施形態は分散型媒体フィンガープリントリポジトリに関する。
【背景技術】
【０００３】
オーディオ媒体及びビデオ媒体は、本質的に現代の活動におけるユビキタス特性を具備している。最も近代的な映画のような、マルチメディアコンテンツは、ビデオコンテンツ及びオーディオサウンドトラックのような１以上の媒体を含む。事実上多くの階層の特性と個性を有する現代の企業は、独自の方法でありまた関連性のある方法で、オーディオ媒体コンテンツ及びビデオ媒体コンテンツを用いる。娯楽、商取引と広告、教育、インストラクションとトレーニング、コンピューティングとネットワーキング、放送、企業、及び電気通信は、オーディオ媒体コンテンツ及びビデオ媒体コンテンツを共通に用いられることが見いだされる、現代の活動のほんの小さな例でしかない。
【０００４】
オーディオ媒体には、個々のコンパクトディスク（ＣＤ）に記録された音楽、スピーチ、及び音声、又は、サーバーとクライアントコンピュータとの間をネットワークを介してデジタルファイルとして流れるか、あるいは、アナログ電磁信号及びデジタル電磁信号として伝送される、他の記憶形式で記録された音楽、スピーチ、及び音声が含まれる。ビデオ媒体の例には、映画や他の公演、実演やアニメーション、及び、しばしばクリップと称される、これらの一部分が含まれる。ユーザが、家の娯楽システム上に変換しながらラップトップコンピュータ上で、あるいは劇場で、上演するデジタルバーサタイルディスク（ＤＶＤ）で映画を見ることは一般的になってきている。大衆的楽団のコンサートは、インターネットを介して流され、ユーザは、オーディオとして楽しみ、及び／又は、その公演のウェブ放送で見ることもある。非常に軽量で小さな形状の、低価格のデジタルファイルオーディオ再生装置が広範囲な大衆性を獲得している。今や本質的にユビキタスとなっている携帯電話、携帯情報端末（ＰＤＡ）、及びハンドヘルドコンピュータは、多目的な機能性を有している。単なる電気通信装置ではなく、現代の携帯電話でインターネットにアクセスし、そこからオーディオ及びビデオコンテンツにアクセスし、ゲーム愛好家がネットワーク化されたビデオゲームに参加し、ファンがインターネットによりスポーツイベントを見ることは、ありふれたこととなった
オーディオ及びビデオコンテンツが広く行き渡り用いられることが多くなった結果、膨大な数のオーディオ及び媒体コンテンツが存在する。存在するオーディオ媒体コンテンツ及びビデオ媒体コンテンツの真の量及び多様性、そして、時間とともにコンテンツが拡大成長することを仮定すると、コンテンツを特定する能力には価値がある。媒体フィンガープリントは、媒体コンテンツを特定するための技術を有する。
【０００５】
この章で記載したアプローチを追求することができるが、既に着想又は追求していたものである必要は無い。特記なき場合は、この章で記載したアプローチを、ここに記載したことを理由として先行技術として認めるものではない。同様に、特に記載が無い限り、１以上のアプローチに関して特定された事項は、この章に基づいて、先行技術として認めるものではない。
【図面の簡単な説明】
【０００６】
本発明を例示するものであり限定するものではない。添付図において、類似の参照番号は類似する要素を示す。
【図１】本発明の実施形態に係る、分散型データベースネットワークの例を示す。
【図２】本発明の実施形態に係る、システムの例を示す。
【図３】本発明の実施形態に係る、手続例のフローチャートを示す。
【図４】本発明の実施形態に係る、もう１つの手続例のフローチャートを示す。
【図５】本発明の実施形態を組み込むことのできる、コンピュータシステムのプラットフォーム例を示す。
【発明を実施するための形態】
【０００７】
分散型媒体フィンガープリントリポジトリに関する実施形態の例を以下に記載する。以下の記載において、説明目的で、本発明を十分理解してもらうために多くの具体例について説明する。しかしながら、本発明はこれらの具体例がなくても実施できることは明らかである。一方、よく知られた構成及び装置は、本発明を不必要に難解にしたり、曖昧にしたり、混乱させたりすることを防ぐために、あまりに詳細に説明することはしていない。
【０００８】
［概要］
実施形態の例は分散型媒体フィンガープリントリポジトリに関する。媒体コンテンツ一部に一意的に対応し、そこから導き出される、媒体フィンガープリントは、分散型データベースに記録される。分散型データベースの１以上の情報貯蔵庫の場合は、データネットワークを介して通信可能に接続された２以上のコンピューティング装置上に、情報貯蔵庫の各々が配置される。媒体フィンガープリントは、媒体フィンガープリントの各々に個々に関係する基準に基づき情報貯蔵庫に分散される。媒体フィンガープリントの１つに向けられたクエリに応じて、２以上のコンピューティング装置のうちの少なくとも１つが、上記基準に基づき選択される。このクエリは、選択されたコンピューティング装置の分散型データベースインスタンスに対して行われる。
【０００９】
この基準は、例えば、そこから導き出されそれに一意的に対応する、媒体フィンガープリント又は媒体コンテンツに関連付けられた、質的適時性、値、又は統計的情報に関連付けることができる。選択は、コンピューティング装置（例えば、コンピュータ）の特性に基づいて行うこともできる。例えば、この選択の基準となるコンピュータの特性には、コンピュータのネットワーク上の又は物理的な位置、コンピュータの特質又はクエリが行われたときのコンピュータにおけるネットワーキングの特質、コンピュータに関する統計的情報、コンピュータと関連づけられた待ち時間、又はクエリが行われたときのデータネットワークに対するコンピュータの使用可能性、又はクエリが行われたときのデータネットワークの状態、その他、が含まれる。
【００１０】
分散型データベースの情報貯蔵庫インスタンスは、サーバーのようなコンピューティング装置上に配置することができ、サーバーには、データネットワークのエッジサーバー、又はコンテンツ分配サービス（ＣＤ）、その他を含むことができる。データネットワークには、１つ以上のピア・ツー・ピア（Ｐ２Ｐ）ネットワークを含むことができる。データネットワークがＰ２Ｐネットワークを含む場合、分散型データベースの情報貯蔵庫インスタンスは、Ｐ２Ｐネットワークの１つ以上のクライアントに配置することができる。
【００１１】
媒体コンテンツは、データネットワーク上のストリームとすることができる。例えば、媒体コンテンツのインスタンスは、データネットワークのクライアントから媒体コンテンツへのアクセス要求に応答するストリームとすることができる。従って、クエリは、ストリーミングとなった媒体コンテンツインスタンスに関連する。このクエリは、計算処理されその結果が返送される。この動作は、媒体コンテンツインスタンスのストリーミング化を阻止するような、返送されたクエリ結果に基づく媒体コンテンツインスタンスのストリーミング化を制御することに関連させて行うことができる。例えば、媒体コンテンツを要求するクライアントがそれにアクセスすることを承認されていない場合、そのクライアントに対して媒体コンテンツインスタンスをストリーミング化することは、ブロックされ、阻止され、中断され、ゆがめられ、遅らされ、妨害される等のことを行うことができる。この特定のクライアントに対する媒体コンテンツインスタンスのストリーミング化が阻止された場合、１つの実施の形態では、媒体コンテンツを、そのクライアントとは別のデータネットワークの一部分のストリームとすることができる。また、例えば、返送されてきたクエリの結果に基づいて行われる動作には、情報の提供が含まれ、この情報は、（何らかの形で媒体コンテンツに関連する、補助的な、広告的な、教育的な、商業的な、又はその他の情報のような）、例えば、媒体コンテンツインスタンスのストリーミングに関連するリアルタイムの又はリアルタイムに近い、媒体コンテンツインスタンスと関連させることができる。この動作は、さらに、例えば、阻止されていた動作にアクセスすることを許可し、阻止が弱まったか除去されたときに開始、再開、続行することを許可する機構を含むことができる。
【００１２】
分散型データベースの管理には、媒体フィンガープリント（例えば、それに関する記憶位置、アドレス等のダイナミックな割当て）を、さらなる基準に基づき分散型データベースの情報貯蔵庫に分配することが含まれる。従って、コンピュータが分散型データベースの特定の情報貯蔵庫を選択すること、又はそれについてのクエリに関するフィンガープリントを実行することは、さらなる再分配に基づくことができる。例えば、媒体コンテンツの適時性は、その価値又はそれから導き出された媒体フィンガープリントの価値を反映することができる。例えば媒体コンテンツが年を経ているので、その価値はある意味で減少しているかもしれない。媒体コンテンツから導き出されたフィンガープリントを保存することの価値は、それに関する費用との関係で減殺されることがある。比較的価値の高いフィンガープリント、例えば、時機を得た媒体コンテンツに関するものは、価値の低いフィンガープリントに比べて、コンピューティング装置の分散型データベースの多くの情報貯蔵庫インスタンスに保存することができる。媒体コンテンツの適時性が失われるにつれて（例えば、時が経過してしまった場合）は、しかしながら、複数の情報貯蔵庫インスタンスに、対応するフィンガープリントを保存する（例えば、ミラーリング）費用は、そうすることの価値に比べて、上昇する。従って、フィンガープリントは、例えば、分散型データベースにおける少数の情報貯蔵庫インスタンスに保存することができる。媒体フィンガープリントのいくつかは記憶装置から除去してもよい。
【００１３】
実施形態は、処理（手順、方法、アルゴリズム等）を行うことができる１以上のコンピュータに関するものとすることができる。実施形態は、そのような処理を行う手段を具備するコンピュータに関するものとすることができる。さらに、実施形態は、コンピュータが実行可能なインストラクションを実行することにより、コンピュータを制御するプロセッサにそのような処理をさせ及び／又はそのようなコンピュータシステムを構成（例えばプログラム）させることのできるような、コンピュータが実行可能なインストラクションを具備するコンピュータ読み取り可能媒体に関する。
【００１４】
［実施形態の例］
［分散型媒体フィンガープリントデータベースの例］
図１は、本発明の実施形態に係る、分散型媒体フィンガープリントデータベース１００の例を示す。分散型媒体フィンガープリントデータベース１００は、データネットワーク１５０の複数の（例えば２以上の）クライアント装置に分散配分される。実施形態に係る媒体フィンガープリントデータベースは、限定のためではなく説明のための図示を目的としたものである、図１に示したクライアントよりも、多くの又は少しのクライアントに分散配分することができる。ネットワーク１５０は、ローカルエリアネットワーク（ＬＡＮ）、広域エリアネットワーク（ＷＡＮ）、インターネット、ネットワーク接続ストレージ（ＮＡＳ）、ストレージエリアネットワーク（ＳＡＮ）、ＣＤリレーティッドネットワーク、及び／又はＰ２Ｐネットワークを含む、１以上のネットワークを具備することができる。
【００１５】
クライアント装置１０１，１０３，１０５，１０７，１０９，１１１，１１３，１１５，１１７，１１９，１２１及び１９８は、データネットワーク１５０と通信可能に接続されたサーバーのようなコンピューティング装置とすることができる。クライアント装置は、ネットワーク１０１０のエッジサーバー、ＣＤと関連づけられたサーバー、又はＰ２Ｐネットワークのクライアントを具備することができる。分散型フィンガープリントデータベースの情報貯蔵庫インスタンスは、各クライアントに配置されるクライアント１０１は（図１において、「フィンガープリントデータベース」と表示されている）分散型フィンガープリントデータベースの情報貯蔵庫インスタンス１０２を有する。
【００１６】
クライアント１０３は、分散型フィンガープリントデータベースの情報貯蔵庫インスタンス１０４を有する。クライアント１０５は、分散型フィンガープリントデータベースの情報貯蔵庫インスタンス１０６を有する。クライアント１０７は、分散型フィンガープリントデータベースの情報貯蔵庫インスタンス１０８を有する。クライアント１０９は、分散型フィンガープリントデータベースの情報貯蔵庫インスタンス１１０を有する。クライアント１１１は、分散型フィンガープリントデータベースの情報貯蔵庫インスタンス１１２を有する。クライアント１１３は、分散型フィンガープリントデータベースの情報貯蔵庫インスタンス１１４を有する。クライアント１１５は、分散型フィンガープリントデータベースの情報貯蔵庫インスタンス１１６を有する。クライアント１１７は、分散型フィンガープリントデータベースの情報貯蔵庫インスタンス１１８を有する。クライアント１１９は、分散型フィンガープリントデータベースの情報貯蔵庫インスタンス１２０を有する。クライアント１２１は、分散型フィンガープリントデータベースの情報貯蔵庫インスタンス１２２を有する。クライアント１９８は、分散型フィンガープリントデータベースの情報貯蔵庫インスタンス１９９を有する。
【００１７】
媒体フィンガープリントは、各媒体フィンガープリントと個々に関係がある基準に従い、分散型フィンガープリントデータベースの情報貯蔵庫インスタンスに保存される。媒体フィンガープリントのうちの１つに対するクエリがあった場合に、２以上のコンピューティング装置のうちの少なくとも１つが、この基準に従い選択される。このクエリは、選択されたコンピューティング装置の分散型データベースインスタンスに対して行われる。この基準は、そこから導き出されそこだけに応答する媒体フィンガープリント又は媒体コンテンツに関連づけられた、例えば、適時性の程度、値、又は統計的情報に関連付けることができる。選択は、コンピューティング装置（例えば、クライアントコンピュータ）の特性に基づいて行うこともできる。例えば、この選択の基準となるコンピュータの特性には、ワーク上の又は物理的なクライアントの位置、コンピュータの特質又はクエリが行われたときのコンピュータにおけるネットワーキングの特質、クライアントに関する統計的情報、コンピュータと関連づけられた待ち時間、又はクエリが行われたときのデータネットワーク１５０に対するコンピュータの使用可能性、又はクエリが行われたときのデータネットワーク１０１０の状態、その他、が含まれる。
【００１８】
媒体上の参照フィンガープリントリポジトリ１７０は、クライアント装置に保存された媒体フィンガープリントのミラーインスタンス又は記憶させるための媒体フィンガープリントのプッシュインスタンスとすることができる。媒体上の参照フィンガープリントリポジトリ１７０は、は、データネットワーク１５０のクライアントとすることができる
［媒体フィンガープリントシステムの例］
図２は、本発明の１つの実施形態にかかる媒体フィンガープリントシステム２００の例を示す。媒体フィンガープリントシステム２００は、媒体コンテンツリポジトリ２６０及び媒体コンテンツサーバー２６２を有する。媒体フィンガープリントシステム２００は、分散型媒体フィンガープリントデータベース１００（図１）により機能する。例えば、媒体コンテンツサーバー２６２は、ストリーミング媒体コンテンツ２６８をデータネットワーク１５０のクライアントに提供する（例えば、サーブ、ストリームする）。ストリーミング媒体コンテンツ２６８は、媒体コンテンツリポジトリ２６０に保存され、及び／又はそこからアクセスされる。クライアント１０１から特定の媒体コンテンツ（例えば、ストリーミング媒体コンテンツ２６８）へのアクセス要求に応じて、媒体コンテンツサーバー２６２は、そこへのアクセスを許可することができ、媒体コンテンツ２６９にアクセスしたストリームをクライアント１０１にアクセスさせることができる。
【００１９】
媒体コンテンツサーバー２６２は、媒体フィンガープリント生成装置２６４及びコンテンツコントローラー２６６を有する。媒体コンテンツサーバー２６２は、媒体フィンガープリントアプリケーションロジック２１０とともに機能する。媒体コンテンツ２６９のストリームにアクセスすると、フィンガープリント生成装置２６４は、そこから媒体フィンガープリントを導き出す（例えば、ビデオコンテンツの輝度（luma）、彩度（chroma）、又は動きに関する値に関する値のような、媒体コンテンツの要素から計算又は抽出する）。コンテンツサーバー２６２は、媒体コンテンツ２６８又は２６９から導き出した媒体フィンガープリントをフィンガープリントアプリケーションロジック２１０に提供する。コンテンツサーバー２６２又はフィンガープリントアプリケーションロジック２１０の機能は、ネットワーク１５０の１以上のクライアント（例えば、クライアント１０１，１１１，１１３，１１１５，１１９，その他）とともに実行し、又はこれらの１以上のクライアントに配置し、又はこれらの１以上のクライアントに分配することができる。
【００２０】
フィンガープリントアプリケーションロジック２１０は、フィンガープリントチェッカー２１２，２１４，及び２１６を有する。フィンガープリントアプリケーションロジック２１０は、限定のためではなく説明のための図示を目的としたものである図２に示したフィンガープリントチェッカーよりも、多くの又は少しのフィンガープリントチェッカーを有する。フィンガープリントチェッカー２１２は、ストリーミングコンテンツ２６８又は２６９から導き出された、すべての（又はほとんどすべての）フィンガープリント２１１に関する、媒体フィンガープリントデータベース情報貯蔵庫インスタンス（図２では「ＦＰＤＢ」と表示）にクエリを行う。
【００２１】
フィンガープリントロジック２１０によれば、フィンガープリントチェッカー２１４は、クライアント１１１，１１３，１１１５，又は１１９（又は、例えば、図１で示したようなネットワーク１５０の他のクライアント）のうちの１つ以上を選択し、ストリーミングコンテンツ２６８又は２６９から導き出した、Ｎは２より大きい整数値である、Ｎ番目毎の媒体フィンガープリント２１１に関連して、それぞれ媒体フィンガープリントデータベース情報貯蔵庫インスタンス１１２，１１４，１１６，又は１１８に配置された、情報貯蔵庫インスタンス１１２，１１４，１１６，又は１１８のうちの１以上にクエリを行う。Ｎの値は、ストリーミングコンテンツ２６８又は２６９から引き続いて導き出した、連続的な媒体フィンガープリントの主要な要素、又は、コンテンツのストリーミングの継続時間に関して、媒体フィンガープリントからの導出に関連する時間に関連させることができる。
【００２２】
フィンガープリントロジック２１０に従い、フィンガープリントチェッカー２１６は、ストリーミングコンタンツ２６８又は２６９から導き出されたＭ＋Ｎ番目の媒体フィンガープリント２１１に関連してフィンガープリントリポジトリ２７０を選択しクエリを行う。ここで、Ｎは２より大きな整数の値であり、Ｍは１より大きな整数の値である。（Ｍ＋Ｎ）の値は、このように、ストリーミングコンテンツ２６８又は２６９から引き続いて導き出した、連続的な媒体フィンガープリントの主要な要素、又は、少なくともＮの値より大きなコンテンツのストリーミングの継続時間に関して、媒体フィンガープリントからの導出に関連する時間に関連させることができる。媒体フィンガープリントリポジトリは、参照リポジトリ（例えば参照リポジトリ１７０；図１）に関連付けることができる。媒体フィンガープリントリポジトリは、代替的に、データネットワーク１５０のクライアントに配置した１以上の媒体フィンガープリントデータベース情報貯蔵庫インスタンスに関連付けることもできる。
【００２３】
フィンガープリントアプリケーションロジック２１０は加算機能２１８を有する。フィンガープリントチェッカー２１２，２１４，及び２１６は、それぞれ、媒体フィンガープリントデータベース情報貯蔵庫インスタンス１０２、媒体フィンガープリントデータベース情報貯蔵庫インスタンス１１２，１１４，１１６，１１９，等、及びリポジトリ２７０に対して行ったクエリの返答を加算器２１８に提供する。加算器２１８に提供された各クエリの返答が、導き出されたフィンガープリント２１１が媒体フィンガープリントデータベース情報貯蔵庫インスタンス１０２、媒体フィンガープリントデータベース情報貯蔵庫インスタンス１１２，１１４，１１６，１１９，等、及びリポジトリ２７０に貯蔵されたフィンガープリントと合致していることを示していると、加算器２１８は合致表示（例えば、信号）をコンテンツコントローラー２６６に提供する。
【００２４】
コンテンツコントローラー２６６は、ストリーミング媒体コンテンツ２６８へのアクセスを制御する。例えば、合致表示２１４を受け取ると、コンテンツコントローラー２６６は、クライアント１０１を媒体コンテンツストリーム２６９にアクセスさせる。しかし、非合致がコンテンツコントローラー２６６にもたらされた場合、コンテンツコントローラー２６６は、コンテンツコントローラー２６６は、クライアント１０１が媒体コンテンツストリーム２６９にアクセスすることを阻止することができる。１つの実施形態において、ポップアップ（又は、例えば、ドロップダウン）ウインドウ等により、広告又は他の関連付けられた情報を表現（例えば、表示）させる、装置やシステム等によりコンテンツコントローラー２６６の機能を実行することができる。
【００２５】
例えば、媒体フィンガープリントデータベース情報貯蔵庫インスタンス１０２は、媒体コンテンツ２６８又は２６９から導き出したものであって、フィンガープリントチェッカー２１２からのクエリに否定的な返答を送った、フィンガープリント２１１に合致した１以上の媒体フィンガープリントを保存しないでおくことができる一方、１以上の媒体フィンガープリントデータベース情報貯蔵庫インスタンス１１２，１１４，１１６，１１９，その他、及び／又はリポジトリ２７０は、フィンガープリントチェッカー２１４及び２１６のそれぞれからのクエリに対応する肯定的な回答を送ることができる。これは、クライアント１０１が媒体コンテンツストリーム２６８のインスタンスにアクセスする権限を各ことを示すか又は暗示しているであろう。従って、コンテンツコントローラー２６６は、データネットワーク１５０の他のクライアントをストリーミングコンテンツ２６９にアクセスさせることができる一方、このコンテンツコントローラーは、クライアント１０１がこのストリーミングコンテンツにアクセスすることを、ブロック、阻止、中断、歪曲、遅延、置き換え、妨害、干渉する機能も持つことができる。
【００２６】
ストリーミングコンテンツ２６９にクライアント１０１をアクセスさせることに関するコンテンツコントローラー２６６の他の動作には、例えば、媒体コンテンツインスタンスのストリーミングに関してリアルタイムの又はリアルタイムに近い状態で、（この媒体コンテンツに何らかの意味で関連する、補助的な、広告的な、教育的な、説明的な、商業的な、又はその他の情報のような）媒体コンテンツインスタンスに関連付けることのできる情報を提供することが含まれる。コンテンツコントローラー２６６は、さらに、阻止手段を弱め又は除去することにより、阻止されていたアクセスを、開始、再開、又は継続させる機能を有する。例えば、手数料を払うこと又は対価の他の形態を提供することなしに、ストリーミング媒体コンテンツインスタンス２６９にアクセスすることを含む、ウェブページ、電子的形態、その他をクライアント１０１に提供することができる。
【００２７】
［手続の例］
図３は、実施形態に係る、例示的な手続３００のフローチャートを示す。ステップ３０１で、媒体コンテンツから導き出された媒体フィンガープリントが参照用として保存される。ステップ３０２で、この参照用の媒体フィンガープリントに関するメタデータのような情報が一緒に保存される。情報は、フィンガープリントに関連する記憶時間、フィンガープリントを導き出すもととなった媒体コンテンツの世代、導き出すもととなったフィンガープリント又はコンテンツに関する経済的その他の価値、フィンガープリント又は関連する媒体コンテンツに関する地理的その他の位置に関連する情報に関するものとすることができる。
【００２８】
ステップ３０３で、情報は、フィンガープリントを保存する分散型データベースに関する、ネットワーク情報、コンピュータに関する情報、待ち時間情報、位置に関する情報、経済その他の情報とともに、分析される。このフィンガープリントに関する情報及び分散型データベースに関する情報の分析に基づき、複数の媒体フィンガープリントデータベース情報貯蔵庫インスタンスにおいて、各媒体フィンガープリントに割り当てるべき保存位置に関する決定を、ステップ３０４で行う。ステップ３０５で、媒体フィンガープリントが１以上の情報貯蔵庫インスタンスに保存され、決定に基づいて分散型データベースの設定が行われる。
【００２９】
ステップ３０６で、フィンガープリント及び分散型データベースに関連する情報が変化したかどうかを判断する。もし、変化していないならば、ステップ３０６は、周期的又はそのような変化の表示に応答して繰り返される。もし、情報が変更されているならば、ステップ３０７で、情報はその変化に応じて見直される。ステップ３０８で、その情報の変化は、保存の決定を見直す正当な理由となるかどうかを判断する。もし、正当な理由とならないなら、ステップ３０６，３０７，及び／又は３０８が周期的又は保存の決定を見直す正当な理由があるとの指摘に応答して、繰り返される。情報の変化が保存の決定を見直す正当な理由となる場合は、ステップ３０９で、見直し結果に基づき、１以上の保存位置を動的に再度割付ける。
【００３０】
図４は、１つの実施形態に係る例示的な手続４００のフローチャートを示す。ステップ４０１で、ストリーミング媒体コンテンツのインスタンスから導き出された１以上の媒体フィンガープリントに関してクエリが生成される。ステップ４０２で、クエリを算出する媒体フィンガープリントの分散型データベースの多数情報貯蔵庫インスタンスの１つ以上を決定する。
【００３１】
ステップ４０３で、クエリを算出する多数情報貯蔵庫インスタンスの１つ以上から結果が戻ってきたかどうかを判断する。何も返送されてきていない場合は、ステップ４０４で、最初に質問を受けたものではない、分配されたフィンガープリントデータベースの１以上の数情報貯蔵庫インスタンスが選択されそこでクエリを算出する。クエリに合致すると（例えば、肯定的結果を受けると）、ステップ４０５で、その結果が出力され、媒体コンテンツと関連付けられたコンテンツへのアクセス又は情報提供を制御するために用いられる。すべての分配されたフィンガープリントデータベースについてクエリを実行した後戻ってきた結果に肯定的結果がなかった場合、ステップ４０４で否定的結果が返送される。
【００３２】
［応用例］
このように、実施形態は、マルチメディアフィンガープリントを保存するための分散型データベース及び他の情報リポジトリと関連するものとなろう。媒体にフィンガープリントするシステムは、媒体フィンガープリントを保存するための、独自の、専用の、具体的な職務を与えた、或いは、職務を共有するリポジトリを用いることができる。例えば、媒体コンテンツから、例えば、独自のデータベースは、ビデオシーケンス、音楽その他の部分のような、コンテンツの特定の部分又はインスタンスから、導き出した、すべての媒体フィンガープリントの、一部、すべて、実質的にすべて、又は具体的な成分を保存することができる。そして、媒体フィンガープリントを、導き出したものから媒体コンテンツ部分を一意的に特定するために使うことができる。
【００３３】
例えば、コンテンツ部分から導き出した媒体フィンガープリントは、フィンガープリントデータベースに保存された媒体フィンガープリントと比較することができる。合致していることがわかるとコンテンツ部分を特定することができる。さらに、合致する場合は、導き出されたフィンガープリントにインデックスを与える、補助情報をそのコンテンツに関連付ける。この文脈において、媒体コンテンツ部分の部分は、従って、フィンガープリントデータベースに対するクエリとして機能する。
【００３４】
媒体コンテンツ部分の独自性、及び関連付けられた情報は、フィンガープリントリポジトリに対して計算処理を行った結果を具備すると考えられる。本質的に、媒体コンテンツのストリーミング部分又はアップローディング部分は、フィンガープリントデータベースの貯蔵庫内に保存された記録に対するクエリとして機能する。実施形態では、分散型データベースシステムのような、分散型情報リポジトリに保存された媒体フィンガープリントにより機能することができる。
【００３５】
媒体コンテンツから導き出したフィンガープリントは、いくつかのデータベース、例えば分散型データベースシステム中に配分することができる。複数のフィンガープリントデータベースは、物理的又は論理的に近くであったり遠くであったりすることができる。例えば、集合させたり又は別々の位置に配置したり、及びどのような電話回線又はデータネットワークに接続することができる。分散型データベースシステムは、クラスタ化したコンピューティング特性により機能することができる。分散型情報リポジトリは、物理的又は論理的に複数のデータベースに配置することができる。この分散型リポジトリは、は、ネットワーク化された、ミラーにし、クラスタ化し、及び／又は多重化することができる。ここで用いられる分散型リポジトリには、ＳＡＮ成分又はＮＡＳ成分を含むことができる。
【００３６】
他の媒体コンテンツにアクセスすることを目的として媒体コンテンツにアクセスするためにより頻繁に要求を受け取ることができる。例えば、映画によっては他の映画より人気があるかもしれない。従って、人気のある映画の方を人気のない映画より頻繁にストリーム化又はダウンロードするために、要求を受け取ることがある。媒体コンテンツへのアクセス要求を正当化することができる。例えば、要求する者は、特定の媒体コンテンツをストリーム化又はダウンロードすることのできる購入者又は受信契約者としての権利を保持することができる。コンテンツから導き出した媒体フィンガープリントは、一意的にコンテンツを特定し、ここに記載するように、それに関連付けたインデックス情報として用いることができる。
【００３７】
コンテンツにアクセスするすべての要求が正当化されるわけではない。いわゆる、「海賊」媒体又はコンテンツは、しばしば認められず、権利者の同意のない著作権コンテンツから、又は認可されていないのにアップロードされたコンテンツからの権限のない、おそらく違法なストリーミング又はダウンロードであると称される。残念ながら、特定の媒体コンテンツに人気があればあるほど、受け取るための違法なアクセス要求であり、それから生じるインスタンスの違法なストリーミング、ダウンロード、又はアップロードである可能性が大きくなる。媒体フィンガープリントを、コンテンツの権限のない、又は他の違法なストリーミング、ダウンロード、アップロード、又は他の窃盗行為を検出し、又は、実際に、そのような事実の後（再生により）、盗まれたインスタンスを一意的に特定するために、用いることができる。
【００３８】
実施形態では、例えば、コンテンツの保存、及び／又は、そこから導き出された媒体フィンガープリントと関連する企業又は他の事業体により、様々な媒体コンテンツへのアクセス要求の尤度を測定する。そして、測定した、特定の媒体コンテンツへのアクセスへの要求の程度は、そのコンテンツから導き出された媒体フィンガープリントへの、分配された情報リポジトリ内に記憶位置を、積極的又は受け身的に、割り当てるために用いることができる。実施形態では、例えば、配分されたリポジトリ内の１つの記憶位置から他の位置への、そのコンテンツから導き出した媒体フィンガープリントの分配された情報リポジトリ内の記憶位置の割り当て又は再割り当て（例えば変更）のために、特定のコンテンツへの要求へのアクセスを受け取ること、又は、その変化、尤度の測定にも用いることができる。そして、特定のコンテンツ媒体へのアクセスが要求される尤度の測定結果により、時間で変化し、（又は特定のイベント又は条件が展開し）、実施形態では、そのコンテンツに対応する媒体フィンガープリントの分配されたフィンガープリントリポジトリ内の記憶位置を動的に差異割り当てする。従って、実施形態では、アクセススピードと効率を促進し、フィンガープリントリポジトリに対するクエリを行うのに消費するコンピューティング又はネットワーキングの資源を節減する。
【００３９】
１つの実施形態において、コンテンツリポジトリと結び付けられた企業又は他の事業体は、そこに保存された媒体コンテンツにアクセスするために受け取った要求と結び付けられた統計データを保持する。１つの実施形態において、フィンガープリントリポジトリと結び付けられた企業又は他の事業体は、そこに保存されたすべてのフィンガープリントに対して提出したクエリと結び付けられた統計データを保持する。事業体は、相互に関係のあるもの、共同して機能するもの等である。事業体は、コンテンツの使用情報とフィンガープリントとを交換することができ、したがって、分配されたフィンガープリントリポジトリと結び付けられた事業体は、そこに保存されたすべてのフィンガープリントのみならず、受け取ったアクセス要求に対して提出したクエリと結び付けられた統計データを保持する。
【００４０】
リポジトリを操作する事業体は、このようにして、特定のコンテンツは他のコンテンツより高い尤度で要求を受ける状態を実現する。同様に、より高い尤度で要求を受けたコンテンツと結び付けられたフィンガープリントは、このようにして、より高頻度でアクセスされると推定される。１つの実施形態では、コンテンツに基づき、アクセス要求を受ける尤度に従いクラス分けされた、フィンガープリントデータベース及び他のリポジトリを構築する。
【００４１】
１つの実施形態では、ネットワーキング環境内で機能する。異なるクラスのフィンガープリントについてのリポジトリは、異なるネットワーク事業体に設置又は配置することができる。１つの実施形態では、ピア・ツー・ピア（Ｐ２Ｐ）ネットワーキング環境内で機能する。Ｐ２Ｐネットワークにおいて、異なるクラスのフィンガープリントについてのリポジトリは、異なるクライアントのそれぞれと関連付けることができる（例えば、クライアント・ピア）。
【００４２】
１つの実施形態では、フィンガープリントリポジトリは、何度も複製又はミラー化することができる。倍増率は、クラスの状態、例えば、所定のリポジトリと結び付けられた「重要性」と関係させることができる。例えば、第１のクラスのフィンガープリントリポジトリは、第２のクラスのリポジトリの倍増率より大きな倍増率で複製することができ、Ｎ番目のクラスのフィンガープリントリポジトリは、全く複製されないか又は、他のどの「高い」クラスのフィンガープリントリポジトリより低い倍増率で複製することができる。この倍増率は、（例えば、ゼロより大きい）自然数とすることができる。
【００４３】
所定のリポジトリにある媒体フィンガープリントの時間長さはあらかじめ定めておくことができる。１つの実施形態では、所定のクラスのリポジトリにある特定のマルチメディアファイルに対応するフィンガープリントの時間長さは、フィンガープリント又は導き出された媒体コンテンツに関する利用量の統計に基づくことができる。
【００４４】
フィンガープリント記憶位置は、異なるクラスのリポジトリに動的に分配することができる。フィンガープリント記憶位置はダウングレード又はアップグレードすることができる。例えば、１番目のクラスのリポジトリに保存されたフィンガープリントを、所定の期間又は特定の数のクエリにわたって、クエリに対する応答が戻ってこない場合には、２番目のリポジトリ又はより低いクラスのリポジトリに移すことができる。同様に、Ｎ番目のクラスのリポジトリに保存されたフィンガープリントを、２番目のリポジトリ又はより高いクラスのリポジトリに移すことができる。このような等級付け（クラス分け）の変更は、フィンガープリントまたは、フィンガープリントを導き出した媒体コンテンツに関する利用量の統計に基づくことができる。フィンガープリントファイルは、あらかじめ定めておいた基本構想に従い、異なるクラスのリポジトリに分配することができる。
【００４５】
さらに、リポジトリクラスの特定のサーバー又はＰ２Ｐクライアント・ピアへの割当てはあらかじめ決めておくか又は動的に変更可能にするか又は無作為にすることができる。１つの実施形態では、どれだけの数のＰ２Ｐクライアント・ピアを特定のクラスのリポジトリに割り当てるかを決めるために統計的アプローチを用いる。統計的アプローチは、例えば、クライアント・ピアのすべてがＰ２Ｐネットワーク中でいつもアクティブというわけではない場合に有効であろう。
【００４６】
従って、実施形態は、媒体フィンガープリント記憶の拡張性を強化する、分配システム、優先順位をつけた情報リポジトリに関連する。優先順位をつけたリポジトリは、順番に検索することができる。
【００４７】
アプリケーションは、必ずしも優先順位が付けられておらず、順番に検索されることもないフィンガープリントリポジトリによりサポートされる。１つの実施形態において、フィンガープリントポジトリは、いくつかの、「分岐」リポジトリ又は「子」リポジトリに分割することができる。クエリは、分割リポジトリにたいして並行して、例えば並行処理を用いて、行うことができる。さらに、並列して走る検索プロセスでは、例えば、並列にクエリをコンピューティングすることについての実時間に関する情報を交換することができ、これにより、精度を向上させ及び／又は検索にかかる待ち時間を減少させることができる。例えば、独自性の基準に基づき又は特定のクエリの特徴に関連させて、特定のフィンガープリントをクエリの対象から除外して検索プロセスを始めることができる。特定のフィンガープリントを除外する検索プロセスでは、それと並行して走る他の検索プロセスを除外することに関する情報を伝達し、これにより、精度を向上させ、並行して検索を行うことに関する待ち時間を減少させることができる。
【００４８】
［定義、用語、及び参照］
（媒体フィンガープリント）
媒体フィンガープリントは、媒体コンテンツから導き出す、例えば、算出、抽出、生成、等を行う、媒体コンテンツの一意的な識別子である。用語「フィンガープリント」は、人が一意的に、媒体コンテンツのフィンガープリントにより、例えば法廷でも使える程度に特定することができるという意味で、媒体コンテンツの識別子の一意性を示すために適切に用いる。署名と似ているが、媒体フィンガープリントは、もっと親密にかつ識別可能にコンテンツに対応する。オーディオ媒体及びビデオ媒体は両方とも、各媒体に対応する媒体フィンガープリントを用いて特定することができる。
【００４９】
オーディオ媒体は、音響フィンガープリントにより特定することができる。音響フィンガープリントは、特定のオーディオ波形から、それに対応するコードとして生成される。音響フィンガープリントを生成すると、フィンガープリントをそこから生じさせた波形は、そのフィンガープリントを参照することにより特定される。音響フィンガープリントは、例えばデータベースに保存することができる。比較すべきオーディオサンプルを、特定、カテゴリー化、又はその他のクラス分けを行うために、保存した音響フィンガープリントにアクセスすることができる。音響フィンガープリントは、音楽、又は、ユーザにより演奏されたストリーム化又は他の方法で伝送されたオーディオ媒体、音声ライブラリの管理、放送、ネットワーク活動及び広告のモニターのために音楽を特定するのに有効であり、（映画のような）ビデオコンテンツに関連する（サウンドトラックのような）オーディオコンテンツから、ビデオコンテンツを特定するのに有効である。
【００５０】
音響フィンガープリントの信頼性は、特定することができるように特定のオーディオ波形に関連する独自性に関連する。オーディオフィンガープリントによっては非常に正確な特定を行うので、それと同じ音楽を別に演奏したのも特定する程度の信頼性がある。加えて、音響フィンガープリントによっては、人の心理音響的システムにより知覚されるものとしてのオーディオコンテンツに基づく。このような堅固なオーディオフィンガープリントは、したがって、圧縮、伸長、コード変換、及び他の変換を知覚的にオーディオコーディックに基づいて行われたコンテンツに行った後、非可逆の圧縮を行うコーディックであっても、（そして、オーディオコンテンツの質を劣化させるものであったとしても）オーディオコンテンツを特定することができる。音響フィンガープリントと比較することによりオーディオ媒体コンテンツを特定することと同様にして、デジタルビデオフィンガープリントにより、ビデオ媒体を特定することができる。
【００５１】
ビデオフィンガープリントは、対応するビデオコンテンツから生成される。ビデオ情報のシーケンス、例えば、ビデオストリーム又はビデオクリップに、アクセスして分析する。ビデオシーケンスの特性成分は特定され抽出される。特性成分には、輝度、クロミナンス、動作記述子、及び／又は人の心理映像的システムにより知覚される他の特徴が含まれる。抽出した成分は、容易に保存したり取り出したりすることが可能なフォーマットに圧縮がなされる。
【００５２】
ビデオフィンガープリントは、対応するビデオコンテンツに比べてフィンガープリントデータを小さくする、比較的に非可逆な圧縮を用いて生成することができる。対応するビデオフィンガープリントから元のビデオコンテンツを再構成することは、実用的なものでなくまた実現可能なものでもない。ここで用いられているような、ビデオフィンガープリントは、従って、元のビデオコンテンツファイルの比較的低ビットレートな表現を表す。しかし、ビデオフィンガープリントを保存すること及びアクセスすることは、上述のとおり、効率的でありまた経済的である。
【００５３】
保存されたビデオフィンガープリントには、ビデオシーケンスのサンプルと比較するためにアクセスすることができ、このビデオシーケンス中のビデオコンテンツを正確に特定することができる。ビデオフィンガープリントは、コンテンツを見るとき、及び、きちんと著作権を管理するうえで、及び認可の評価を行ううえで、ユーザがビデオコンテンツを正確に特定するために、及び、認可されていないコンテンツのバージョン及びインスタンスが保存され、ストリーム化され、又はその他の方法で用いられているかどうかを検出するために役に立つ。多くの音響フィンガープリントとともに、ビデオフィンガープリントは、知覚的にエンコードされる。従って、ビデオシーケンスのコンテンツは、圧縮、伸長、コード変換、及び他の変換を、知覚的なビデオコーディックに基づいて行われたコンテンツに行った後、非可逆の圧縮を行うコーディックであっても、（そして、ビデオコンテンツの質を劣化させるものであったとしても）、ビデオフィンガープリントと比較することにより正確に特定することができる。
【００５４】
オーディオ媒体コンテンツ及びビデオ媒体コンテンツは、おそらく、コンテンツのインスタンスをどうにかして分離及び区分することに、概念的、商業的、又はその他で関連する。オーディオコンテンツ及びビデオコンテンツに関連するコンテンツには、他のオーディオコンテンツ、ビデオコンテンツ、又は、マルチメディアコンテンツが含まれるがこれらに限られるわけではない。例えば、特定の音楽は、概念的に特定の映画と結び付けることができる。他の例として、商業的背景において、所定のスピーチ、講義、又は音楽に関する、テキストファイル又はコンピュータグラフィックがあろう。しかし、特定の媒体コンテンツ結び付けられたコンテンツの存在を解明することは簡単ではなく、まして、この媒体コンテンツに関連して、関係するコンテンツにアクセスすることは簡単ではない。
【００５５】
媒体フィンガープリントは、媒体コンテンツの一部から導き出される（例えば、算出され、抽出される）。情報は、抽出した媒体フィンガープリントに基づき媒体コンテンツ部分と関連付けられる。関連付けられた情報とリンクさせることにより、関連づけられた情報コンテンツは、媒体コンテンツ部分とともに表示される。ここで用いられているような、用語「関連付けられた情報」、「関連付けられた情報コンテンツ」、及び、「関連づけられたコンテンツ」は、同意語として用いられ、用語「補助情報」、「補助的に関連付けられた情報」、及び、「補助コンテンツ」は、基本的に関連付けられた情報を意味する。
【００５６】
ここで用いられているような、用語「媒体」は、データ又は他の情報を記憶し、又は転送するための入れ物を意味する。ここで用いられているような、用語「マルチメディア」は、複数の形式の情報を保持する媒体を意味する。マルチメディア情報ファイルには、例えば、オーディオ、ビデオ、画像、図形、テキスト、動画の及び／又は他の情報、及びこれらの様々な組み合わせを収納することができる。ここで用いられているような、用語「関連付けられた情報」は、情報媒体コンテンツと何らかの方法で関連付けられた情報を意味することができる。関連付けられた情報には、例えば、補助コンテンツを含めることができる。
【００５７】
ここで用いられているような、用語「媒体フィンガープリント」は、媒体コンテンツファイルを表現するものを意味し、この特性要素から抽出される。媒体フィンガープリントは、関連する媒体コンテンツから導き出される（例えば、抽出、生成、等される）。ここで用いられているような、用語「音響フィンガープリント」は、（音響フィンガープリントは、他の媒体とも結び付けることができるが）特殊性の程度でオーディオ媒体と結び付けることのできる媒体フィンガープリントを意味する。ここで用いられているような、用語「ビデオフィンガープリント」は、（ビデオフィンガープリントは、他の媒体とも結び付けることができるが）特殊性の程度でビデオ媒体と結び付けることのできる媒体フィンガープリントを意味する。ここでの実施形態に用いられる媒体フィンガープリントは、オーディオ、ビデオ、画像、図形、テキスト、動画の及び／又は他の媒体情報コンテンツ、及び／又はこれらの様々な組み合わせに対応し、媒体に加えて、特殊性の程度と結び付けることができる、他の媒体を意味することがある。
【００５８】
ここに記載されているような、媒体フィンガープリントは、２００７年８月３１日付けで、Philip  Bernosky、Claus  Bauer、Jack  Buser、及びGuido  Voltolinaによるもので、本発明の出願代理人により代理され（特許代理番号Ｄ０７０２２）、表題「Associating  Information  with  a  Portion  of  Media  Content」として同時係属出願された米国暫定特許出願Ｎｏ．６０／９６９，５４３に記載されているような媒体フィンガープリントに基本的に準拠し、この米国暫定特許出願は、参照として本明細書に組み込まれ、あたかも本明細書に記述されているかのように扱われるものとする。
【００５９】
ここに記載されているような、媒体フィンガープリントは、２００８年２月５日付けで、Philip  Bernosky、Claus  Bauer、Jack  Buser、及びGuido  Voltolinaによるもので、本発明の出願代理人により代理され（特許代理番号Ｄ０７０２２ＵＳ０２）、表題「Associating  Information  with  a  Portion  of  Media  Content」として同時係属出願された米国暫定特許出願Ｎｏ．６１／０２６，４４６に記載されているような媒体フィンガープリントに基本的に準拠し、この米国暫定特許出願は、参照として本明細書に組み込まれ、あたかも本明細書に記述されているかのように扱われるものとする。
【００６０】
ここに記載されているような、媒体フィンガープリントは、２００７年１０月５日付けで、Ragunathan  Radhakhrishnan、及びClaus  Bauerによるもので、本発明の出願代理人により代理され（特許代理番号Ｄ０７０３７）、表題「Media  Fingerprints  that  Reliably  Correspond  to  Media  Content」として同時係属出願された米国暫定特許出願Ｎｏ．６０／９９７，９４３に記載されているような媒体フィンガープリントに基本的に準拠し、この米国暫定特許出願は、参照として本明細書に組み込まれ、あたかも本明細書に記述されているかのように扱われるものとする。
【００６１】
ここに記載されているような、媒体フィンガープリントは、２００７年５月１７日付けで、Ragunathan  Radhakhrishnan、及びClaus  Bauerによるもので、本発明の出願代理人により代理され（特許代理番号Ｄ０Ｌ２１４）、表題「Video  Fingerprint  Comparison  Resilient  to  Frame  Rate  Conversion」として同時係属出願された米国暫定特許出願Ｎｏ．６０／９３０，９０５に記載されているような媒体フィンガープリントに基本的に準拠し、この米国暫定特許出願は、参照として本明細書に組み込まれ、あたかも本明細書に記述されているかのように扱われるものとする。
【００６２】
例えば、音響フィンガープリントは、オーディオ波形から生成された一意的なコードを具備することができ、この一意的なコードは、デジタル信号処理技術を用い、オーディオ媒体コンテンツを具備する。また、例えば、ビデオフィンガープリントは、一意的なデジタルビデオファイルを具備することができ、この一意的なデジタルビデオファイルの成分は、ビデオコンテンツの特徴成分から抽出され圧縮されたものである。ビデオコンテンツに対応するビデオフィンガープリントに圧縮することができる、抽出したビデオコンテンツの特徴成分には、輝度値、クロミナンス値、動作推定、予測及び修正値、等が含まれるが、これらに限定されるものではない。従って、ここに記載の媒体フィンガープリントは、フィンガープリントを導き出した媒体コンテンツを表現するが、フィンガープリントは、媒体コンテンツを関連づけられたメタデータを具備するものではなく、（ここに記載された目的と文脈において）メタデータと混同すべきでない。媒体フィンガープリントは、導き出す元となった媒体コンテンツのビットレートより低いビットレートで伝達することができる。ここで用いられているような、用語「コンピューティング」、「導き出す」、「生成する」、「書き込む」、「抽出する」、「圧縮する」、等は、「媒体コンテンツ部分から、媒体フィンガープリントを取得することに関連し、媒体フィンガープリントの文脈上では、（例えば、同意語として）互いに置き換えることができる。これらの用語及びそれに類似する用語は、媒体フィンガープリントと元の媒体コンテンツ又はそれに関連する媒体コンテンツとの関係に関するものである。従って、媒体フィンガープリントは、一意的にかつ堅固に、フィンガープリントを導き出す元となった媒体コンテンツを表現し、特定し、参照とし、引用することができる。付随して、これらの用語及びそれに類似する用語は、当然ながら、媒体フィンガープリントは、ラベル付け又は説明目的でコンテンツに付加することができ、例えば、後でそこから抽出する、メタデータ、タグ、及び他の記述子とは区別されるものである。派生的な媒体コンテンツに関連する状況において、用語「導き出す」及び「派生的な」は、媒体コンテンツの元のインスタンスとは別のものを表す媒体コンテンツに関するものとすることができる。
【００６３】
［「関連付けられた情報」及びこれとの「リンク」］
ここで用いられているような、マルチメディア又は媒体コンテンツファイルに関する用語「関連付けられた情報」、「関連付けられたコンテンツ」、「補助コンテンツ」、及び「補助情報」は、特定の媒体コンテンツファイルによりインデックス化された情報を意味する。補助情報そのものは、からなずしも、マルチメディアそのもののどの部分とも同一でなくても、近似していなくてもよい。例えば、特定のビデオファイルのある部分は、ある日時における、ある場所、例えばニューヨーク市の気温をインデックス化することができる。このように、ニューヨーク市の気温は、ビデオのその部分に関連させた補助コンテンツを具備することができる。他の例によれば、所定のビデオファイルのある部分は、特定の自動車製造業者のあるモデルの、モデルと製造年をインデックス化することができる。
【００６４】
インデックス化は、元の媒体ファイル、例えば、全映画が作られたときに行われる。しかし、１つの実施形態では、例えば映画が上演されたときに、その上演の間に、ビデオのセグメントと補助コンテンツとのリンクを可能にする機構が提供される。１つの実施形態では、マルチメディアファイルの部分だけが、異なる装置で、異なる長さ及び形式で、及び／又はそのビデオファイルに様々な修正を行った後で、再生されるところで、機能する。修正には、編集、圧縮・伸長、コード変換、及びそれから派生する作業、例えばその部分を他の媒体に挿入すること、が含まれるがこれらに限定されるわけではない。修正には、また、コンテンツに意図的に又は意図せずにその元のインスタンスと何らかの差異を生じさせることができるように、任意に又はその他の方法で、回転又はパンのような、幾何学的変更又は歪みが含まれる。コンテンツ修正の他の例では、デジタル透かしのような情報を付加したコンテンツが含まれる。
【００６５】
ここで用いられているような、用語「リンク」、「リンクされた」、「リンクしている」等は、データベースのような又は媒体フィンガープリントのリストのようなリポジトリに補助コンテンツの１以上のポインターを保存すること、又は、データベースのような又は媒体フィンガープリントのリストのようなリポジトリ中に補助コンテンツを有する１以上のユニフォームリソースロケータ（ＵＲＬ）を保存すること、又は、データベースのような又は媒体フィンガープリントのリストのようなリポジトリ中に補助コンテンツを有する１以上のデータベースリファレンスを保存すること、又は、これに類することを意味することができる。ここで用いられているような、用語「リンク」は、データベースのような又は媒体フィンガープリントのリストのようなリポジトリ中に保存された１以上のポインターから補助コンテンツを取得すること、又は、データベースのような又は媒体フィンガープリントのリストのようなリポジトリにより参照された１以上のファイルから補助コンテンツを取得すること、又は、データベースのような又は媒体フィンガープリントのリストのようなリポジトリに保存された１以上のＵＲＬを用いて補助コンテンツを取得すること、又は、データベースのような又は媒体フィンガープリントのリストのようなリポジトリに保存された１以上のデータベースリファレンスから、補助コンテンツを取得することを意味することができる。
【００６６】
１つの実施形態では、媒体全体の製品が作られたとき、媒体ファイルが部分として、シーケンスとして、そして修正された形式で再生されたときであっても、媒体ファイルの特定の部分に割り付けられた補助コンテンツを特定することができる。加えて、１つの実施形態では、メタデータなしで機能し、コンテンツに関するメタデータを、挿入、生成、又は動作させる必要がなく、コンテンツの修正も必要ない。実施形態では、ビデオファイル及びオーディオファイル、オーディオファイル及びビデオファイルのマルチメディア再生、及びその類を含む、事実上どのような形式の媒体ででも機能する。
【００６７】
補助コンテンツのような情報は媒体コンテンツと関連付けられる。１つの実施形態では、オーディオフィンガープリントやビデオフィンガープリントのような媒体フィンガープリントは、媒体コンテンツ部分を特定するために用いられる。媒体上にフィンガープリントすることで、全媒体作品だけでなく、例えば現在再生しているような、表示中の媒体部分が正確に特定される。
【００６８】
１つの実施形態では、媒体ファイルの媒体フィンガープリントの、データベースのような、情報リポジトリを保持する。他のリポジトリ（例えば、データベース）は、関連付けた補助コンテンツに、ある媒体コンテンツの特定の部分を表す、媒体上の特定のフィンガープリントをマッピングする。補助コンテンツは、特定の媒体コンテンツが作られたとき、その媒体コンテンツ部分に割り付けられる。この媒体コンテンツ部分の実演により、実演中の部分に対応する媒体フィンガープリントが、マッピングデータベース中の媒体フィンガープリントと比較される。この比較は、媒体コンテンツ部分の実演に関して、本質的に実時間で行うことができる。
【００６９】
例えば、映画の一部は、ビデオに関するウェブページで上演されることがある。上演されている部分に対応する媒体フィンガープリントが、基本的にリアルタイムに、そこから抽出される。媒体フィンガープリントは、マッピングデータベース中のフィンガープリントと比較される。例えば、再生されている部分が属する、マッピングデータベース中の映画の部分を特定することにより、映画のこの部分にもともと又はその他の方法で割り当てられた補助コンテンツが特定されてリンクされるか又は取り出される。
【００７０】
１つの実施形態では、広告主に、ある意味でビデオのシーンを「購入」させる。ベンダー又は（サーチエンジン又はウェブサービスプロバイダのような）その代理人は、このように、製品、サービス、その他の広告を、特定の媒体コンテンツ部分と結び付けるために選択する。例えば、ソフトドリンク会社は、役者がその会社の特定の製品を飲んでいるシーンを特定することができる。このソフトドリンク会社又はその代理人は、その会社の広告をその特定の媒体コンテンツ部分のシーンと結び付けるために、そのシーンに対応する媒体フィンガープリントを用いる権利を購入することができる。従って、視聴者にそのシーンを見せることにより、媒体コンテンツ部分と結び付けられた情報がリンクされて、ソフトドリンク会社の広告が、上演されているシーンに、基本的にリアルタイムで表示される。
【００７１】
この広告コンテンツは、そのビデオシーンの隣、又はその近傍、又はそれに重ねて表示することができる。映画のこの特定の部分が、実施形態を実現させるインターネット又はその他のネットワークに接続された実際の媒体を上演する装置に表示されたときはいつでも、媒体フィンガープリント技術を使って映画のその部分を特定することができる。従って、購入者及びウェブページに再生された関連情報が知らされる。購入者と媒体コンテンツプロバイダ又は媒体コンテンツを上演する他の企業体との間で交わされた合意により、対応する媒体コンテンツ部分の上演と同時に、又はその後、購入者が定めた関連する広告が表示される。
【００７２】
加えて、１つの実施形態では、対応する媒体コンテンツ部分が存在するときは、その対応する媒体コンテンツ部分が、予告編、広告、又は、例えばソーシャルネットワーキングサイトに表示させるための海賊版の不正な媒体コンテンツであったとしても、補助情報又は他の関連情報を忠実に上演する。この媒体コンテンツ部分は、どのような形式で上演されようとも認識され、補助コンテンツのような、それに関連する情報にリンクされる。１つの実施形態では、媒体コンテンツの部分は、検索のためのクエリに用いられる。
【００７３】
［実施例及びプラットフォーム］
［情報リポジトリの例］
例示的な実施形態は、データベース、ファイルシステム、その他を含む種々の情報リポジトリと共に実行することができる。実施形態を、例えばデータベース管理システム（ＤＢＭＳ）と一緒に実行することができる。本発明の実施形態は、特定のデータベース又はリポジトリ構造に限定されない。リポジトリは、１以上のデータコンテナ中の多数のレコードを保存する。データコンテナは、リレーショナルデータベース、オブジェクト指向データベース中のオブジェクトのコレクション（例えば、オブジェクトクラスのインスタンス）、その他におけるテーブルに準拠することができる。多数のレコード内のレコードは、テーブルの行、オブジェクトクラスのオブジェクト、その他に準拠することができる。レコードの属性は、テーブルの行、オブジェクトの属性、その他に準拠することができる。説明を明確に、簡明に、統一的に、そして短くするために、手順の例示において、ここでは、リレーショナルデータベースに準拠して説明する。しかしながら、実施形態は、（例えば、オブジェクト指向の）どのようなデータベース構造、又は他の情報リポジトリによっても十分実行可能である。
【００７４】
例示的な実施形態は、それぞれが１以上のコンピュータで機能する、相互作用を行う１以上のデータベースに保存することのできる情報により実行することができる。例示的な実施形態は、多数のコンピュータに計算処理を配分して実行することができる。多数のコンピュータのそれぞれは、１以上のデータネットワーク又は電気通信ネットワークを介して１以上の他のコンピュータリンク、又は通信可能に接続することができる。例示的な実施形態は、分散型データベースシステムにより実行することができ、１以上の複数のデータベースサーバーは、１以上のその他のデータベースサーバーと物理的に隣接させることも遠隔に置くこともできる。
【００７５】
例示的な実施形態は、ミラーデータベース又は他の情報リポジトリにより実行することができる。例示的な実施形態は、一次的で論理的なデータベース又は物理的に予備のデータベースにより実行することができる。１以上のミラーデータベース又は予備のデータベースは、１以上の（例えば、一次的な）その他のデータベースサーバーと物理的に隣接させることも遠隔に置くこともできる。
【００７６】
情報は、データベースのようなリポジトリに都合よく保存される。保存された情報は、データベース管理システム（ＤＢＭＳ）内で実行するアプリケーションによりアクセスされ更新される。ＤＢＭＳは、要求により、１以上のコンテナに情報を効率よく保存すること及び、データベースサーバーとして、効率よくそこからデータを取り出すことの両方の機能を有する。加えて、ＤＢＭＳは、取り出したデータが確かに新鮮な情報であり、付随して、新鮮でない情報の取り出しを確実に防止する機能を持つ。データベースのデータコンテナのそれぞれはレコードを有する。レコード内のデータは１以上の属性フィールドにまとめられる。種々のデータベース構造が存在する。
【００７７】
リレーショナルデータベースのデータコンテナはテーブルであり、そこに保存されたデータは行である。リレーショナルデータベースは、実質的に多数のテーブルを有することができ、その属性は、カラムと称される。オブジェクト指向データベースのデータコンテナは、オブジェクトクラスであり、オブジェクトクラスのレコードは、オブジェクト属性と称される属性を有するオブジェクトからなる。他のデータベース構造も存在する。データベースは一般に、リレーショナルデータベースについては特別に、ここに、分かりやすく、統一的に、簡単に、例示及び概略説明として、限定目的としてではなく記載する。
【００７８】
情報は、それぞれが１以上のコンピュータで機能する１以上のコ・ファンクショナルデータベース（co-functional  database）に保存することができる。さらに、大量の情報を処理するに当たって、複数のコンピュータに計算作業を分担させることによりスピード及び／又は効率を上げることができる。複数のコンピュータの各々は、１以上のネットワークを介した１以上の他のコンピュータとリンク又は通信可能に結合している。コンピュータクラスターのような、複数のコンピュータ、分散型コンピューティング環境がネットワークされているようなネットワーク中で機能するデータベースサーバーを、ここでは分散型データベースシステムと称することができる。１以上の複数のデータベースサーバーは、１以上の他のデータベースと物理的に隣接させることも遠隔に置くこともできる。
【００７９】
データベース及び他の情報リポジトリはミラー化することができる。例えば、情報コンテンツの第１番目のインスタンスは、第１番目のデータベースに保存し、第２番目のインスタンスは、第２番目のデータベースに保存することができる。コンテンツの第２番目のインスタンスは、実質的に第１番目のインスタンスの複製であってもよい。第２番目のリポジトリは第１番目のリポジトリをこのようにミラー化する。加えて、１つのデータベースは、他のデータベース中に保存されたデータをバックアップする機能を有することができる。例えば、第３番目のデータベース「Ａ」は、一次のデータベース又は製造データベース「Ｂ」の予備としての機能を持つことができる。予備データベース「Ａ」は、一次のデータベース「Ｂ」に保存された情報の物理的インスタンス又は論理的インスタンスを保存することができる。１以上のミラーデータベース又は予備データベースは、１以上の他の（例えば、一次の）データベースと物理的に隣接させることも遠隔に置くこともできる。
【００８０】
データベースに保存されたデータを取り出すために、クエリをデータベースサーバーに送り、そこでクエリを計算して要求されたデータを返送する。クエリステートメントは、おおむね、ＤＢＭＳが機能する特定のデータベース言語の構文特性に合致させて、データベースサーバーに送られる。ＳＱＬ（構造化クエリ言語）及びＰＬ／ＳＱＬ（手続き型言語／ＳＱＬ）は、このような言語のよく知られた例である。他のデータベース言語は、メーカ独自のものもあるが、用いることができる。
【００８１】
１つの実施形態では、コンピュータシステムプラットフォームで上記１以上の特徴を実行する。コンピュータシステムには、１以上のプロセッサが含まれ、ハードウェア、ソフトウェア、ファームウェア、及び／又はこれらの組み合わせにより上述の１以上の特徴を実行するために機能する。コンピュータシステムのプロセッサ及び／又は他の要素により、１以上のコンピュータ読み取り可能記憶媒体によりエンコードされた、及び／又はコンピュータシステムが受け取った、コンピュータで読み取り可能な、そしてコンピュータで実行可能なインストラクションによる指示に従い、上述の１以上の特徴を実行するように機能する。
【００８２】
１つの実施形態では、ハードウェア、ソフトウェア、ファームウェア、及び／又はこれらの組み合わせを含み、コンピュータプラットフォーム上で機能するデコーダ又はサーバーにて、上述の１以上の特徴を実行する。コンピュータプラットフォームは、ＴＶ、ＤＶＤプレーヤー、ゲーム装置、ワークステーション、デスクトップコンピュータ、ラップトップコンピュータ、ハンドヘルドコンピュータ、又は他のコンピュータ、携帯電話、携帯端末（ＰＤＡ）、携帯ゲーム装置、のようなネットワーク接続可能な通信装置、その他のような電子装置の構成要素と共に配置し、又は、このような電子装置の構成要素として配備することができる。上述の１以上の特徴は、このような特徴を実行するために構成した集積回路（ＩＣ）装置により実施することができる。このＩＣは、特定用途向けＩＣ（ＡＳＩＣ）及び／又は、マイクロコントローラー、プログラマブルロジック装置、又はフィールドプログラマブルゲートアレー（ＦＰＧＡ）のような、プログラマブルＩＣ装置とすることができる。
【００８３】
［コンピュータシステムプラットフォームの例］
図５は、本発明の実施形態を組み込むことのできるコンピュータシステムプラットフォーム５００の例を示す。コンピュータシステム５００には、バス５０２又は情報通信のための他の機構、及びバス５０２と接続された情報処理のためのプロセッサ５０４が含まれる。コンピュータシステム５００には、情報及びプロセッサ５０４により実行することのできるインストラクションを保存するためにバス５０２と接続された、ランダムアクセスメモリ（ＲＡＭ）又は他のダイナミック記憶装置のような、主メモリ５０６が含まれる。主メモリ５０６は、プロセッサ５０４がインストラクションを実行している間、一時的な変数又は他の中間的な情報を保存するためにも使うことができる。コンピュータシステム５００には、固定的な情報及びプロセッサ５０４へのインストラクションを保存するためにバス５０２に接続された、リードオンリーメモリ（ＲＯＭ）５０８又は他のスタティック記憶装置がさらに含まれる。磁気ディスク又は光学的ディスクのような、記憶装置５１０が、情報及びインストラクションを保存するために用意され、バス５０２に接続される。
【００８４】
コンピュータシステム５００は、コンピュータユーザに情報を表示するために、液晶ディスプレイ（ＬＣＤ）、ブラウン管（ＣＲＴ）、フラットパネルディスプレイ、その他のモニターのような、ディスプレイ５１２にバス５０２経由で接続することができる。英数字キー及びその他のキーを含む入力装置５１４が、プロセッサ５０４に情報と命令を通信するために、バス５０２に接続されている。ユーザ入力装置の他の形式として、マウス、トラックボール、又は、プロセッサ５０４に命令情報と選択指令を送信する、ディスプレイ５１２上のカーソルの動きを制御するカーソル命令キーのような、カーソル制御５１６がある。この入力装置は、一般に、装置に平面上の位置を特定させるために、第１の座標軸（例えば、ｘ）及び第２の座標軸（例えば、ｙ）の２つの軸方向に、２の自由度を持つ。
【００８５】
本発明の実施の形態は、分散型フィンガープリントリポジトリのコンピュータシステム５００の使用に関連する。本発明の１つの実施の形態によれば、メインメモリ５０６中に含まれる１以上の命令の１以上のシーケンスを実行するプロセッサ５０４に応答して、コンピュータシステム５００により、媒体コンテンツに関連する情報がもたらされる。このような命令は、記憶装置５１０のような他のコンピュータ読取可能媒体からメインメモリ５０６に読み込むことができる。メインメモリ５０６中に含まれる命令のシーケンスを実行することにより、ここに記載したプロセスのステップをプロセッサ５０４に行わせる。複数処理の構成となる１以上のプロセッサを、メインメモリ５０６中に含まれる命令のシーケンスを実行するために用いることもできる。代替的な実施の形態において、ハードワイヤードの回路を、本発明を実行するためのソフトウェア命令と組み合わせて、又はソフトウェア命令の代わりに用いることもできる。これにより、本発明の実施の形態は、特定のハードウェア回路とソフトウェアの結合に限定されるものではない。
【００８６】
ここで用いられる用語「コンピュータ読取可能媒体」は、プロセッサ５０４に実行させるための命令を与えるために使われるあらゆる媒体を意味する。このような媒体は、これらに限定されるわけではないが、不揮発性媒体、揮発性媒体、伝達媒体を含む多くの形態をとることができる。不揮発性媒体には、例えば、記憶装置５１０のような磁気ディスクや光学的ディスクが含まれる。揮発性媒体には、メインメモリ５０６のようなダイナミックメモリが含まれる。伝達媒体には、バス５０２を形成する電線を含む、同軸ケーブル、銅線及び他の導体及び光ファイバが含まれる。伝達媒体は、ラジオデータ通信及び赤外線データ通信において生じるような音響波又は電磁波の形態をとることができる。
【００８７】
コンピュータ読取可能媒体の一般的形式として、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気テープ、その他の磁気媒体、ＣＤ−ＲＯＭ、その他の光学的媒体、パンチカード、紙テープ、その他の旧来の穿孔パターによる物理的な媒体、ＲＡＭ、ＰＲＯＭ、及びEPROM、FLASH-EPROM、その他のメモリチップ又はカートリッジ、以下に説明する搬送波、その他のコンピュータで読み取り可能な媒体が挙げられる。
【００８８】
種々の形式のコンピュータ読取可能媒体は、プロセッサ５０４に実行させるための１以上の命令の１以上のシーケンスの収納に用いることができる。例えば、命令を最初に、遠隔のコンピュータの磁気ディスクに収納しておくことができる。遠隔のコンピュータは、ダイナミックメモリに命令をロードし、この命令をモデムを用いて電話線で送ることができる。コンピュータシステム５００の近くにあるモデムは、電話線でデータを受け取り、赤外線トランスミッタを用いてデータを赤外線信号に変換することができる。バス５０２に接続した赤外線検出器は、赤外線信号により搬送されたデータを受信しそのデータをバス５０２に流す。バス５０２はメインメモリ６０６にこのデータを送り、このデータからプロセッサ５０４は命令を読み取って実行する。メインメモリ５０６が受信した命令は、プロセッサ５０４が実行する前又は後のいずれかに記憶装置５１０に格納することもできる。
【００８９】
コンピュータシステム５００には、バス５０２に接続された通信インターフェース５１８も含まれる。通信インターフェース５１８は、ローカルネットワーク５２２に接続されたネットワークリンク５２０に接続する２方向データ通信を行う。例えば、通信インターフェース５１８は、統合サービスデジタルネットワーク（ＩＳＤＮ）カード、又はデジタル加入者回線、ケーブル、又は電話線の形式に対応するデータ通信接続を行うその他のモデムとすることができる。他の例として、通信インターフェース５１８は、ＬＡＮと互換性のあるデータ通信接続を行うローカルエリアネットワーク（ＬＡＮ）カードとすることができる。無線リンクを組み込むことも可能である。このような実施の形態のいずれにおいても通信インターフェース５１８は、種々の形式の情報を表すデジタルデータストリームを運ぶ電気的信号、電子的信号、又は光学的信号を送信及び受信する。
【００９０】
ネットワークリンク５２０は、通常、他のデータ装置に１以上のネットワークを介してデータ通信を行う。例えば、ネットワークリンク５２０は、ローカルネットワーク５２２を介してホストコンピュータ５２４、又は、インターネットサービスプロバイダ（ＩＳＰ）５２６が運営するデータ装置への接続を行うことができる。一方、ＩＳＰ５２６は、今では一般に“インターネット”と呼ばれる、世界的なパケットデータ通信ネットワークを介してデータ通信サービスを提供する。ローカルネットワーク５２２及びインターネット５２８はどちらも、デジタルデータストリームを運ぶ電気的、電磁的、又は光学的信号を用いる。デジタルデータをコンピュータシステム５００に運びコンピュータシステム５００から受け取る、種々のネットワークを通る信号、及びネットワークリンク５２０上の及び通信インターフェース５１８を通る信号は、情報を伝送する典型的な搬送波の形式となる。
【００９１】
コンピュータシステム５００は、ネットワーク、ネットワークリンク５２０、及び通信インターフェース５１８を介して、プログラムコードを含むメッセージを送ることができ、データを受け取ることができる。インターネットの例では、サーバー５３０は、インターネット５２８、ＩＳＰ５２６、ローカルネットワーク５２２、及び通信インターフェース５１８を介してアプリケーションプログラムの要求コードを伝送することができる。本発明によれば、このようなダウンロードされたアプリケーションは、ここに記載したような、モーション推定の時間的平滑化のためのアプリケーションを提供する。
【００９２】
受け取ったコードは、受け取ったときにプロセッサ５０４で実行することができ、及び／又は記憶装置５１０に保存すること又は、後で実行するために他の不揮発性記憶装置に保存することができる。このようにして、コンピュータシステム５００は、搬送波の形でアプリケーションコードを入手することができる。
【００９３】
［例示的実施形態の列挙］
本発明の実施形態は、以下に列挙した１以上の例に関する。
【００９４】
１．媒体コンテンツの一部からそれぞれ導き出されたものであり、媒体コンテンツの一部に一意的に対応する、複数の媒体フィンガープリントを分散型データベースに保存するステップであって、
前記分散型データベースの１以上の情報貯蔵庫のインスタンスは、データネットワークに通信可能に接続してある１以上のコンピューティング装置にそれぞれ配置され、
前記保存するステップは、前記媒体フィンガープリントのそれぞれに個々に関連する少なくとも第１番目の基準に基づいて、前記１以上の情報貯蔵庫に前記複数の媒体フィンガープリントのそれぞれを分配するステップを具備することを特徴とする、ステップと、
前記媒体フィンガープリントの１つに向けられたクエリに応じて、前記第１番目の基準のうちの１つ以上又は、第２番目の基準に基づいて、２以上のコンピューティング装置のうちの少なくとも１つを選択するステップと、
前記選択された少なくとも１つのコンピューティング装置の分散型データベースインスタンスに対してクエリを実行するステップと、
を具備する方法。
【００９５】
２．前記第１番目の基準は、１以上の前記媒体コンテンツ、又は該媒体コンテンツから導き出し、一意的に該媒体コンテンツ対応する媒体フィンガープリントと関連付けた、１以上の適時性、値、又は統計的情報のうちの１以上に関することを特徴とする例示的実施形態１に記載の方法。
【００９６】
３．前記選択するステップは、前記第２番目の基準にも基づいて行われ、
該第２番目の基準は、前記少なくとも１つのコンピューティング装置の特性に関するものであることを特徴とする、例示的実施形態１に記載の方法。
【００９７】
４．前記コンピューティング装置の特性は、
前記コンピューティング装置の１つ以上の位置、又は
クエリのときにおける前記コンピューティング装置の１つ以上の計算特性又はネットワーキング特性、又は
クエリのときにおける前記コンピューティング装置の１つ以上の統計的情報、もしくは、前記コンピューティング装置における待ち時間、もしくは、前記データネットワークに対する前記コンピューティング装置の利用の可能性、又は
クエリのときにおけるデータネットワークの状態
のうちの１つに関することを特徴とする例示的実施形態３に記載の方法。
【００９８】
５．前記２以上のコンピューティング装置のうちの
少なくとも１つはサーバーを具備することを特徴とする例示的実施形態１に記載の方法。
【００９９】
６．前記データネットワークはピアツーピアネットワークを具備することを特徴とする例示的実施形態１に記載の方法。
【０１００】
７．前記２以上のコンピューティング装置のうちの少なくとも１つはピアツーピアネットワークのクライアントを具備することを特徴とする例示的実施形態６に記載の方法。
【０１０１】
８．前記媒体コンテンツのインスタンスは前記データネットワークを流れ、前記クエリは前記媒体コンテンツに関することを特徴とする例示的実施形態１に記載の方法。
【０１０２】
９．クエリを算出するステップと、
前記算出するステップに基づいて結果を返送するステップと、
前記返送されたクエリの結果に基づいて媒体コンテンツインスタンスのストリーミングに対して動作するステップと、
を具備することを特徴とする例示的実施形態８に記載の方法。
【０１０３】
１０．前記動作するステップは、前記媒体コンテンツインスタンスのストリーミングを制御するステップを具備することを特徴とする例示的実施形態９に記載の方法。
【０１０４】
１１．前記制御するステップは、
前記媒体コンテンツインスタンスのストリーミングを抑制するステップ、又は
前記媒体コンテンツインスタンスのストリーミングに関して少なくともリアルタイム近くの媒体コンテンツインスタンスに関連する情報を提供するステップ、
のうちの１つ以上を具備することを特徴とする例示的実施形態１０に記載の方法。
【０１０５】
１２．前記媒体コンテンツインスタンスは、前記媒体コンテンツにアクセスする事業体からの要求に応じて前記データネットワークに通信可能に接続された前記事業体に流れ、
前記抑制するステップは、前記媒体コンテンツインスタンスの前記事業体への流れを抑制するステップと、
前記媒体コンテンツが前記事業体とは別に前記データネットワークの部分に流れることを許容するステップと、
を具備することを特徴とする例示的実施形態１１に記載の方法。
【０１０６】
１３．分散型データベースを管理するステップであって、
前記管理するステップは、前記基準に基づいて前記１以上の分散型データベース情報貯蔵庫中に１以上の複数の媒体フィンガープリントを分配するステップをさらに具備し、
前記選択するステップ又はクエリを実行するステップは、再分配するステップに基づき行われることを特徴とする例示的実施形態１に記載の方法。
【０１０７】
１４．前記再分配するステップは、
１以上の第１番目の分散型データベース情報貯蔵庫インスタンスから少なくとも１つの媒体フィンガープリントの記憶位置を、前記第１番目の分散型データベース情報貯蔵庫インスタンスとは別の少なくとも１つのコンピューティング装置の少なくとも１つの分散型データベース情報貯蔵庫インスタンスに、動的に再割り付けするステップを具備することを特徴とする例示的実施形態１３に記載の方法。
【０１０８】
１５．前記再分配するステップは、前記１以上の情報貯蔵庫から前記複数の媒体フィンガープリントの１以上を削除するステップを具備することを特徴とする例示的実施形態１に記載の方法。
【０１０９】
１６．コンピュータで実行可能なインストラクションを具備するコンピュータ読み取り可能記憶媒体と、
前記インストラクションを実行することにより、例示的実施形態１乃至１５に記載の方法のステップの１以上を実行するようシステムを制御する、少なくとも１つのプロセッサと、
を具備するシステム。
【０１１０】
１７．例示的実施形態１乃至１５にいずれか１つに記載の方法のステップの１以上を実行するための手段を具備するシステム。
【０１１１】
１８．１以上のプロセッサに実行させたときに、例示的実施形態１乃至１５にいずれか１つに記載の方法のステップの１以上を実行する実演を制御する、エンコードされたインストラクションを具備するコンピュータ読み取り可能記憶媒体。
【０１１２】
１９．１以上のプロセッサに実行させたときに、例示的実施形態１７又は１８に記載のシステムの１以上を構成する、エンコードされたインストラクションを具備するコンピュータ読み取り可能記憶媒体。
【０１１３】
［拡張、等価物、代替物、その他］
分散型媒体フィンガープリントリポジトリの例示的な実施形態を上述の通り説明した。前記説明において本発明の実施形態を、実施形態毎に異なる具体的な詳細を参照しながら説明している。従って、本発明の出願が意図するものは、本発明を、唯一かつ排他的に規定し、その後の補正を含めて具体的に記載した、この出願が発行する特許請求の範囲である。このような特許請求の範囲に含まれる用語を説明するためにここに記載した定義は、特許請求の範囲で使われる用語の意味を規定する。従って、特許請求の範囲に明示していない限定、要素、特性、外観、効果、及び、属性は、いかなる意味でもこの特許請求の範囲を限定するものではない。従って、本明細書及び図面は、限定のためではなく説明のためのものである。
【図１】
2011517816.tif 000003
【図２】
2011517816.tif 000004
【図３】
2011517816.tif 000005
【図４】
2011517816.tif 000006
【図５】
2011517816.tif 000007
【手続補正書】
【提出日】平成22年6月30日(2010.6.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データベースを包含するネットワークと接続された複数のデータ貯蔵庫にフィンガープリントを分配する方法であって、該方法は、
媒体コンテンツの一部からそれぞれ導き出されたものであり、媒体コンテンツの一部に一意的に対応する、複数の媒体フィンガープリントを分散型データベースに保存するステップであって、
前記分散型データベースの１以上のデータ貯蔵庫のインスタンスは、データネットワークに通信可能に接続してある１以上のコンピューティング装置にそれぞれ配置され、
前記保存するステップは、
前記媒体フィンガープリントのそれぞれに個々に関連する少なくとも第１番目の基準に基づいて、前記１以上のデータ貯蔵庫のインスタンスに、前記複数の媒体フィンガープリントのそれぞれを分配するステップ、又は、
前記少なくとも第１番目の基準に関する変化に基づいて、前記１以上の分散型データ貯蔵庫のインスタンスに、前記複数の媒体フィンガープリントの１以上を分配するステップ、の１つ以上を具備し、
前記第１番目の基準は、１以上の前記媒体コンテンツ、又は該記媒体コンテンツから導き出し、該媒体コンテンツに一意的に対応する媒体フィンガープリントに関連づけられた、適時性、値、又は統計的情報のうちの１以上と関連することを特徴とするステップと、
前記媒体フィンガープリントの１つに関連して生成され又は提示されたクエリに応じて、少なくとも前記第１番目の基準のうちの１つ以上又は、前記第１番目及び第２番目の基準に基づいて、２以上のコンピューティング装置のうちの少なくとも１つを選択するステップと、
前記選択された少なくとも１つのコンピューティング装置の分散型データベースインスタンスに対してクエリを実行するステップと、
を具備する方法。
【請求項２】
保存するステップにコストを関連付け、時間経過による保存コストに関して前記第１番目の基準に関連付けている適時性又は値の１つ以上が下落し、
前記複数の媒体フィンガープリントを含有する１以上の分散型データ貯蔵庫のインスタンスは前記データ貯蔵庫のインスタンスの第１番目のセットを具備し、
前記時間経過によるコストに関する前記適時性又は値の下落、若しくは、
１以上の前記媒体コンテンツ、又は前記媒体コンテンツから導き出し、一意的に前記媒体コンテンツに関連づけた前記媒体フィンガープリントに関連づけられた統計的情報の変化のうちの１以上により、
前記再分配するステップは、前記データ貯蔵庫のインスタンスの少なくとも第２番目のセット中のフィンガープリントを再分配するステップを具備し、
前記データ保存庫のインスタンスの第２番目のセットは、少なくとも１つの事項が、前記データ保存庫のインスタンスの第１番目のセットとは異なることを特徴とする請求項１に記載の方法。
【請求項３】
前記選択するステップは、前記第２番目の基準に基づいて行われ、
該第２番目の基準は、前記少なくとも１つのコンピューティング装置の特性に関するものであり、
該特性は、
前記コンピューティング装置の１つ以上の位置、又は
クエリのときにおける前記少なくとも１つのコンピューティング装置の１つ以上の計算特性又はネットワーキング特性、又は
クエリのときにおける、前記コンピューティング装置の１つ以上の統計的情報、もしくは、前記コンピューティング装置における待ち時間、もしくは、前記データネットワークに対する前記コンピューティング装置の利用の可能性、又は
クエリのときにおけるデータネットワークの状態
のうちの１つに関することを特徴とする請求項１に記載の方法。
【請求項４】
１以上の前記媒体コンテンツに関連付けられ、又は前記媒体コンテンツから導き出し、一意的に前記媒体コンテンツに関連づけた統計的情報は、
前記媒体コンテンツにアクセスする要求の尤度、又は
前記媒体コンテンツにアクセスするための第１番目の複数の要求、及び
前記媒体コンテンツにから導き出し、一意的に前記媒体コンテンツに関連づけた媒体フィンガープリントへの第２番目の複数のクエリ、
のうちの１つ以上に関連し、
前記方法は、さらに、
前記媒体コンテンツにアクセスする要求の尤度を決定するステップを具備し、前記データ貯蔵庫のインスタンスの少なくとも第２番目のセットにフィンガープリントを再分配するステップは、少なくとも部分的に、前記尤度を決定するステップに基づくことを特徴とし、
前記再分配するステップは、前記統計的情報の変化に基づき、１以上の前記媒体コンテンツ又は前記媒体フィンガープリントの保存位置を動的に変化させるステップを具備することを特徴とする請求項２に記載の方法。
【請求項５】
前記データ貯蔵庫のインスタンスの第２番目のセットが前記データ貯蔵庫のインスタンスの第１番目のセットと異なる少なくとも１つの事項は、前記データ貯蔵庫のインスタンスのそれぞれに関連付けられたクラスを具備し、該クラスは、前記媒体コンテンツ又は前記媒体フィンガープリントに関する接近可能性に関する特性を具備し、
前記統計的情報に関する周波数の上昇により、前記統計的情報の変化に基づき、１以上の前記媒体コンテンツ又は前記媒体フィンガープリントの保存位置を動的に変化させるステップは、該１以上の前記媒体コンテンツ又は前記媒体フィンガープリントをより上位のクラスびデータ貯蔵庫のインスタンスに動かすステップを具備し、
前記統計的情報に関する周波数の下降により、前記統計的情報の変化に基づき、１以上の前記媒体コンテンツ又は前記媒体フィンガープリントの保存位置を動的に変化させるステップは、該１以上の前記媒体コンテンツ又は前記媒体フィンガープリントをより下位のクラス及びデータ貯蔵庫のインスタンスに動かすステップを具備する、
ことを特徴とする請求項４に記載の方法。
【請求項６】
分散型データベースを管理するステップであって、
前記管理するステップは、再分配するステップを具備し、
前記再分配するステップの完了により、１以上の前記選択するステップ又はクエリを実行するステップは、前記再分配するステップに基づき行われることを特徴とする請求項１に記載の方法。
【請求項７】
前記再分配するステップは、
１以上の第１番目の分散型データベースデータ貯蔵庫インスタンスから少なくとも１つの媒体フィンガープリントの保存位置を、前記第１番目の分散型データベースデータ貯蔵庫インスタンスとは別の少なくとも１つのコンピューティング装置の少なくとも１つの分散型データベース情報貯蔵庫インスタンスに、動的に再割り付けするステップを具備することを特徴とする請求項６に記載の方法。
【請求項８】
データベースを包含するネットワークと接続された複数のデータ貯蔵庫にフィンガープリントを分配するコンピューティング装置であって、該コンピューティング装置は、
コンピュータで実行可能なエンコードされたインストラクションを具備するコンピュータ読み取り可能記憶媒体と、
前記インストラクションを実行することにより、１以上のステップを実行するよう前記コンピューティング装置を制御又はプログラムする、少なくとも１つのプロセッサと、
を具備し、前記ステップは、
媒体コンテンツの一部からそれぞれ導き出されたものであり、該媒体コンテンツの一部に一意的に対応する、複数の媒体フィンガープリントを前記コンピューティング装置のデータ貯蔵庫の分散型データベースに保存するステップであって、
前記分散型データベースの１以上のデータ貯蔵庫のインスタンスは、データネットワークに通信可能に接続してある１以上のコンピューティング装置にそれぞれ配置され、
前記保存するステップは、前記媒体フィンガープリントのそれぞれに個々に関連する少なくとも第１番目の基準に基づいて、前記１以上のデータ貯蔵庫のインスタンスに前記複数の媒体フィンガープリントのそれぞれを分配するステップを具備することを特徴とする、ステップと、
前記第１の基準は、１以上の前記媒体コンテンツ又は該媒体コンテンツから導き出し、該媒体コンテンツに一意的に対応する媒体フィンガープリントに関連づけられた、適時性、値、又は統計的情報のうちの１以上に関連し、
前記媒体フィンガープリントの１つに関連して生成され又は提示されたクエリに応じて、前記第１番目の基準のうちの１つ以上、又は前記第１番目と第２番目の基準に基づいて、２以上のコンピューティング装置のうちの少なくとも１つを選択するステップと、
前記選択された少なくとも１つのコンピューティング装置の分散型データベースインスタンスに対してクエリを実行するステップと、
を具備することを特徴とするシステム。
【請求項９】
データベースを包含するネットワークと接続された複数のデータ貯蔵庫にフィンガープリントを分配するコンピュータ装置であって、
媒体コンテンツの一部からそれぞれ導き出されたものであり、該媒体コンテンツの一部に一意的に対応する、複数の媒体フィンガープリントを前記コンピュータシステムのデータ貯蔵手段の分散型データベースに保存する手段と、
前記分散型データベースの１以上のデータ貯蔵庫のインスタンスは、データネットワークに通信可能に接続してある１以上のコンピューティング装置にそれぞれ配置され、
前記保存する手段は、前記媒体フィンガープリントのそれぞれに個々に関連する少なくとも第１番目の基準に基づいて、前記１以上のデータ貯蔵庫のインスタンスに前記複数の媒体フィンガープリントのそれぞれを分配する手段を具備することを特徴とする、保存する手段と、
前記第１の基準は、１以上の前記媒体コンテンツ又は該媒体コンテンツから導き出し、該媒体コンテンツに一意的に対応する媒体フィンガープリントに関連づけられた、適時性、値、又は統計的情報のうちの１以上に関連し、
前記媒体フィンガープリントの１つに関連して生成され又は提示されたクエリに応じて、前記第１番目の基準のうちの１つ以上、又は前記第１番目と第２番目の基準に基づいて、２以上のコンピューティング装置のうちの少なくとも１つを選択する手段と、
前記選択された少なくとも１つのコンピューティング装置の分散型データベースインスタンスに対してクエリを実行する手段と、
を具備することを特徴とするコンピュータ装置。
【請求項１０】
コンピュータ読み取り可能記憶媒体であって、プログラムが該記憶媒体上にエンコードしてあり、該プログラムを実行したとき、請求項１に記載の方法のステップを実行することを特徴とするコンピュータ読み取り可能記憶媒体。
【国際調査報告】
2011517816.tif 000008
2011517816.tif 000009
2011517816.tif 000010