(57)【要約】本発明は、デジタル媒体信号をフィンガプリンティングする場合に、デジタルサイレンスを処理するコンピュータプログラムプロダクト及びコンピュータプログラム要素と同様に、方法、装置、クライアント−サーバシステムにも関する。このデジタル媒体信号の少なくとも一部に対する多数のサブフィンガプリントを有するフィンガプリントが発生し（ステップ４２）、このフィンガプリントへの前記媒体信号の少なくとも一片の影響が除去又は変更され（ステップ４８）、この一片はデジタルサイレンスに相当する。本発明は、デジタルサイレンスが含まれる、例えばオーディオ信号のような媒体信号の誤った特定を信頼できるやり方で防ぐ。本発明は、既にコンピュータに設けられた機能の幾つかを必要とするだけで、実施も容易である。
2006519452.tif 000002
【特許請求の範囲】
【請求項１】
デジタル媒体信号をフィンガプリンティングする場合、デジタルサイレンスを処理する方法において、
−前記デジタル媒体信号の少なくとも一部に対する多数のサブフィンガプリントを有するフィンガプリントを発生させるステップ、及び
−前記フィンガプリントへの前記デジタル媒体信号の少なくとも一片の影響を除去又は変更するステップであり、前記一片がデジタルサイレンスに相当するステップ
を有する方法。
【請求項２】
前記影響を除去又は変更するステップは、フィンガプリントを発生させる前に、前記デジタル媒体信号の前記一片を除去するステップを有する請求項１に記載の方法。
【請求項３】
前記影響を除去又は変更するステップは、前記媒体信号の前記一片のデジタルサイレンスに相当する値を持つ前記フィンガプリントからサブフィンガプリントを除去するステップを有する請求項１に記載の方法。
【請求項４】
前記影響を除去又は変更するステップは、デジタルサイレンスに相当する前記媒体信号の前記一片に乱数値を供給するステップを有する請求項１に記載の方法。
【請求項５】
乱数値を供給する前記ステップは、前記媒体信号の各一片に乱数値を追加するステップを有する請求項４に記載の方法。
【請求項６】
乱数値を供給する前記ステップは、前記媒体信号におけるデジタルサイレンスに相当する値を持つサブフィンガプリントを乱数値と置換するステップを有する請求項４に記載の方法。
【請求項７】
乱数値を供給する前記ステップは、デジタルサイレンスに相当する前記媒体信号の一片を、フィンガプリントを発生し始める前に、ランダムノイズに相当する一片と置換するステップを有する請求項４に記載の方法。
【請求項８】
請求項４に記載の方法において、前記方法は、第１の装置において実行され、前記第１の装置において乱数値が発生するやり方は、前記第１の装置が媒体信号を特定するために通信している第２の装置において乱数値が発生するやり方とは異なっている方法。
【請求項９】
乱数値を供給する前記ステップは、乱数発生器を用いて乱数値を発生させるステップを有する請求項４に記載の方法。
【請求項１０】
フィンガプリントの発生に関する日時情報に依存する追加情報を用いて前記乱数値を処理するステップをさらに含む請求項９に記載の方法。
【請求項１１】
請求項１０に記載の方法において、前記処理するステップは、前記乱数値及び前記追加情報において排他的論理和演算を行うステップを有する方法。
【請求項１２】
請求項１０に記載の方法において、前記処理は、多数の線形フィードバックシフトレジスタを介して行われる請求項１０に記載の方法。
【請求項１３】
フィンガプリントのデータベースに一致するためのサーバに前記フィンガプリントを転送するステップをさらに含む請求項１に記載の方法。
【請求項１４】
クライアント装置から入力されるフィンガプリントに突き合わせるために用いられるべきサーバのフィンガプリントのデータベースに前記フィンガプリントを記憶するステップをさらに含む請求項１に記載の方法。
【請求項１５】
デジタル媒体信号をフィンガプリンティングする場合、デジタルサイレンスを処理する装置において、
−デジタル媒体信号の少なくとも一部に対する多数のサブフィンガプリントを有するフィンガプリントを発生させるように構成されるフィンガプリント発生ユニット、及び
−前記フィンガプリントへの前記媒体信号の少なくとも一片の影響を除去又は変更するように構成されるデジタルサイレンス除去ユニット
を有する装置。
【請求項１６】
前記サイレンス除去ユニットは、デジタルサイレンスに相当する前記媒体信号の前記一片に対する乱数値を発生させる乱数発生ユニットを含む請求項１５に記載の装置。
【請求項１７】
前記サイレンス除去ユニットは、前記媒体信号におけるデジタルサイレンスに相当する値を持つ前記フィンガプリント発生ユニットにより発生するサブフィンガプリントを乱数値と置換するように構成される請求項１６に記載の装置。
【請求項１８】
前記サイレンス除去ユニットは、デジタルサイレンスに相当する前記媒体信号の前記一片を、フィンガプリントを発生する前記フィンガプリント発生ユニットに送る前に、ランダムノイズに相当する一片と置換するように構成される請求項１６に記載の装置。
【請求項１９】
前記フィンガプリントの発生に関する日時情報に依存する追加情報を用いて、前記乱数値を処理するように構成される論理関数ユニットをさらに含む請求項１６に記載の装置。
【請求項２０】
前記論理関数ユニットは、排他的論理和ユニットである請求項１９に記載の装置。
【請求項２１】
前記乱数発生ユニットは、多数の線形フィードバックシフトレジスタとして設けられる請求項１６に記載の装置。
【請求項２２】
多数の異なる媒体信号に対するフィンガプリントのデータベースを含むサーバ装置にフィンガプリントのクエリを発生させるように構成されるクライアント装置である請求項１５に記載の装置。
【請求項２３】
少なくとも１つのクライアント装置と通信するのに使用される多数の異なる媒体信号に対するフィンガプリントのデータベースを含むサーバに設けられる請求項１５に記載の装置。
【請求項２４】
デジタル媒体信号をフィンガプリンティングする場合、デジタルサイレンスを処理する装置のシステムであり、
−媒体ファイルとして記憶される媒体信号に関するフィンガプリントのデータベースを持つサーバ装置、及び
−前記サーバ装置に対するフィンガプリントのクエリを発生させるクライアント装置
を有する装置のシステムにおいて、前記クライアント装置及びサーバ装置の少なくとも１つは、
−デジタル媒体信号の少なくとも一部に対する多数のサブフィンガプリントを発生させるように構成されるフィンガプリント発生ユニット、及び
−前記フィンガプリンティングへの前記媒体信号の少なくとも一片の影響を除去又は変更するように構成され、前記一片がデジタルサイレンスに相当するサイレンス除去ユニット
を有するシステム。
【請求項２５】
デジタル媒体信号をフィンガプリンティングする場合、デジタルサイレンスを処理する、コンピュータ上で用いられるべき、コンピュータプログラムプロダクトであり、前記プログラムが前記コンピュータにロードされる場合、前記コンピュータを実行させるために、その上にコンピュータプログラムコード手段を持つコンピュータ読取可能媒体を有するコンピュータプログラムプロダクトにおいて、
−デジタル媒体信号の少なくとも一部に対する多数のサブフィンガプリンタを発生させ、
−前記フィンガプリントへの、前記媒体信号の少なくとも一片の影響を除去又は変更し、前記一片はデジタルサイレンスに相当している
コンピュータプログラムプロダクト。
【請求項２６】
デジタル媒体信号をフィンガプリンティングする場合、デジタルサイレンスを処理する、コンピュータ上で使用されるべき、コンピュータプログラム要素であり、前記プログラムが前記コンピュータにロードされる場合、前記コンピュータを実行させるための、コンピュータプログラムコード手段を有するコンピュータプログラム要素において、
−デジタル媒体信号の少なくとも一部に対する多数のサブフィンガプリントを発生させ、
−前記フィンガプリントへの、前記媒体信号の少なくとも一片の影響を除去又は更新し、前記一片はデジタルサイレンスに相当している
コンピュータプログラム要素。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は通常、オーディオ信号のようなデジタル媒体信号のフィンガプリンティング(fingerprinting)の分野に関し、特にこのデジタル媒体信号の一部がデジタルサイレンス(digital silence)を含む場合のフィンガプリントの発生に関する。
【背景技術】
【０００２】
ある１曲を特定するために、オーディオ信号のような媒体信号にフィンガプリントを設けることが知られている。ローカルコンピュータはこのとき、オーディオ信号に対するフィンガプリントを発生させ、このフィンガプリントをクエリとしてデータベースに送る。このデータベースにおいて、前記フィンガプリントは他のフィンガプリントと比較され、一致が見つかる場合、このフィンガプリンタはローカルコンピュータに戻され、このコンピュータは次いでオーディオ信号の特定を受ける。
【０００３】
このようなフィンガプリンティングは、多くのアプリケーション、例えばプレイリストを特定するラジオ局において有用であるが、例えばラジオで楽曲を特定した後、その楽曲を購入したいと思っている個人にとっても成長する市場である。
【０００４】
あるこのようなフィンガプリンティング方式は、Jaap Haitsma及びTon Kaller, Ismir著、”A Highly Robust Audio Fingerprinting System” October 2002に記載され、ここでフィンガプリントは、多数のサブフィンガプリントにより構成されている。サブフィンガプリントは、媒体信号の一部に基づいている。フィンガプリント又はフィンガプリントブロックと呼ばれる２５６個の連続するサブフィンガプリントは、媒体信号の迅速且つ安全な特定を提供するために、短い時間期間中に計算される。これにより、例えば媒体信号の最初の３秒でフィンガプリントが得られる。この得られたフィンガプリントと、データベースにあるフィンガプリントとの間のハミング距離(Hamming distance)があるしきい値よりも低いかに基づいて、成功した特定(positive identification)が、フィンガプリントのデータベースにおいてなされる。
【０００５】
既知のフィンガプリント方式の問題点は、しばしば媒体信号がデジタルサイレンスを構成する部分を持つことである。オーディオクリップが例えばＰＣＭサンプルが零値を持つサイレンスで始まり、ビデオクリップは多数の黒フレームで始まることができる。これは、このデジタルサイレンス中、最初に作成されるサブフィンガプリントが同じであり、情報が存在しないと反映することを意味する。多くの異なる媒体信号又はファイルが最初にこのデジタルサイレンス信号を持つことができるので、最初に作成されるフィンガプリントを備えるクエリが前記データベースにおける幾つかの異なる記憶される媒体信号に誤って対応していることをわかることが可能である。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
これにより、本発明の目的は、フィンガプリントが誤った媒体信号を特定する危険性を減少して用いられるように、媒体信号におけるデジタルサイレンスの影響が除去される。
【課題を解決するための手段】
【０００７】
本発明の第１の態様によれば、本目的は、デジタル媒体信号をフィンガプリンティングする場合、デジタルサイレンスを処理する方法により達成され、このデジタルサイレンスは、
−デジタル媒体信号の少なくとも一部に対する多数のサブフィンガプリントを有するフィンガプリントを発生させるステップ、及び
−前記フィンガプリントへの前記媒体信号の少なくとも一片の影響を除去又は変更するステップであり、その一片がデジタルサイレンスに相当するステップ
を有する。
【０００８】
本発明の第２の態様によれば、本目的は、デジタル媒体信号をフィンガプリンティングする場合、デジタルサイレンスを処理すると共に、
−デジタル媒体信号の少なくとも一部に対する多数のサブフィンガプリントを有するフィンガプリントを発生するように構成されるフィンガプリント発生装置、及び
−前記フィンガプリントへの前記媒体信号の少なくとも一片の影響を除去又は変更し、その一片がデジタルサイレンスに相当するように構成されるデジタルサイレンス除去ユニット
を有する装置によっても達成される。
【０００９】
本発明の第３の態様によれば、本目的はさらに、デジタル媒体信号をフィンガプリンティングする場合、デジタルサイレンスを処理すると共に、
−媒体ファイルとして記憶される媒体信号に関するフィンガプリントのデータベースを持つサーバ装置、及び
−前記サーバ装置にフィンガプリントのクエリを発生させるクライアント装置
を有する装置のシステムにより達成され、ここで、クライアント装置及びサーバ装置の少なくとも１つは、
−デジタル媒体信号の少なくとも一部に対する多数のフィンガプリントを発生するように構成されるフィンガプリント発生ユニット、及び
−前記フィンガプリントへの前記媒体信号の少なくとも一片の影響を除去又は変更し、その一片がデジタルサイレンスに相当するように構成されるデジタルサイレンス除去ユニット
を有する。
【００１０】
本発明の第４の態様によれば、本目的はさらに、デジタル媒体信号をフィンガプリンティングする場合、デジタルサイレンスを処理する、コンピュータ上で用いられるべき、コンピュータプログラムプロダクトにより達成される。このコンピュータは、
−前記プログラムがこのコンピュータにロードされる場合、コンピュータを実施させ、
−デジタル媒体信号の少なくとも一部に対する多数のサブフィンガプリントを発生させ、及び
−前記フィンガプリントへの前記媒体信号の少なくとも一片の影響を除去又は変更し、その一片がデジタルサイレンスに相当する
ためのコンピュータプログラムコード手段を持つコンピュータ読取可能媒体を有する。
【００１１】
本発明の第５の態様によれば、本目的はさらに、デジタル媒体信号をフィンガプリンティングする場合、デジタルサイレンスを処理する、コンピュータ上で用いられるべき、コンピュータプログラム要素によっても達成され、このコンピュータプログラム要素は、
−前記プログラムがコンピュータにロードされる場合、コンピュータを実施させ、
−デジタル媒体信号の少なくとも一部に対する多数のサブフィンガプリントを発生させ、及び
−前記フィンガプリントへの前記媒体信号の少なくとも一片の影響を除去又は変更し、その一片がデジタルサイレンスに相当する
ためのコンピュータプログラムコード手段を有する。
【００１２】
請求項２及び３は、デジタルサイレンスの原因を除去することを述べている。
【００１３】
請求項４は、乱数値を媒体信号全体に追加することを述べている。
【００１４】
請求項５及び１６は、デジタルサイレンスの影響を変更する乱数値を供給することを述べている。
【００１５】
請求項６及び１７は、デジタルサイレンスを表すサブフィンガプリントを乱数値に置換することを述べている。
【００１６】
請求項７及び１８は、デジタルサイレンスを表す媒体信号のサンプルを乱数値に置換することを述べている。
【００１７】
請求項８は、クライアント及びサーバ装置に異なる形式の乱数値の発生を供給することを述べている。
【００１８】
請求項１０及び１９は、媒体信号を誤って特定する可能性を低くするための、フィンガプリントに関する日時情報を用いて、前記乱数値を処理することを述べている。
【００１９】
本発明は、デジタルサイレンスが含まれる媒体信号の誤った特定を防止する信頼性のある方法の利点を持っている。さらに、コンピュータに既に設けられた機能の幾つかを必要とするだけで容易に実施する。本発明の変形例において、発生する前記乱数値が殆ど確実に誤った特定を生じさせないことを保証する。
【００２０】
本発明の背後にある一般的な考えはこれにより、媒体信号に対するフィンガプリントを発生する場合、媒体信号に関するデジタルサイレンスを除去することか、又はそのデジタルサイレンスを乱数値に置換することかである。
【００２１】
デジタルサイレンスと言う表現は、フレーム内の情報が黒を表す又は画像が認識できないあるしきい値よりも下にあるデジタルビデオ情報と同じく、信号内の情報が無音声である又は異なる値のサブフィンガプリントを生じることができないある低いしきい値よりも下にある音声を表すデジタルオーディオ信号を有する。
【発明を実施するための最良の形態】
【００２２】
本発明のこれら及び他の態様は、以下に記載される実施例から明白であり、これら実施例を参照して説明される。
【００２３】
本発明は、デジタル媒体信号にフィンガプリントを供給する分野に関し、オーディオ信号のフィンガプリンティングに関して以下に説明される。しかしながら、本発明はオーディオに限定されるのではなく、例えばビデオのような他の媒体信号にも応用可能である。
【００２４】
図１は、フィンガプリンティング装置１０又はデータベース２１に接続され、オーディオ信号に基づくサブフィンガプリントを発生するように構成されるフィンガプリント発生ユニットのブロック図である。図１におけるフィンガプリンティング装置１０は、データベースを含み、サーバと通信可能であるクライアント装置に設けられる。クライアントはフィンガプリントによりオーディオ信号を特定するために、このデータベースと交信することができる。フィンガプリントを発生させるために、フィンガプリンティング装置１０は、オーディオ信号をダウンサンプリングするダウンサンプラー１１においてオーディオ信号を入力する。ダウンサンプリングされたオーディオ信号は、次いでこのダウンサンプラーから、フレーミング回路１２に転送され、このフレーミング回路１２はこのオーディオ信号をハミングウィンドウにより重み付けされる（好ましくはオーバーラッピングする）フレームに分割する。これによりフレーミングされたオーディオ信号は次いで、フーリエ変換回路１３に転送され、このフーリエ回路１３は各フレームのスペクトル表現を計算する。後続するブロック１４において、これらフーリエ係数の絶対値が計算される。この装置はさらに帯域分割段１５も含み、この段は、周波数スペクトルを多数の帯域に分割すると共に、多数のセレクタ１５１を含んでいる。これらセレクタ１５１は個々の帯域のフーリエ係数を選択する。各帯域に対する段１６１を持つエネルギー計算段１６は、この帯域分割段１５に接続される。この計算段１６は、個々の帯域のフーリエ係数の大きさのエネルギーを計算する。ビット導出回路１７は、エネルギー計算段１６に接続される。このビット導出回路１７は、各帯域のエネルギーレベルをビットに変換し、この目的のために、各帯域に対して第１の減算器１７１、フレーム遅延１７２、第２の減算器１７３及び比較器１７４を備える。全ての連続するフレームの結果生じるサブフィンガプリントは、フィンガプリントとしてバッファ１８に記憶される。このフィンガプリンティング装置１８は、ビットの信頼性を判断する回路１９も含み、フィンガプリントにおけるビットの信頼性を判断する。バッファ１８におけるフィンガプリント、及びビットの信頼性を判断する回路１９からのビットの信頼性の情報は、前記装置１０からサーバに設けられるコンピュータ２０に送られる。このコンピュータ２０に接続されるデータベース２１は、多数のオーディオ信号又は歌曲に対するサブフィンガプリント全てを有する多数の記憶されるフィンガプリントを持つ。図１にはルックアップテーブル２２も示され、コンピュータ２０はデータベース２１において一致するフィンガプリントを検索する場合、使用し、この一致するフィンガプリントは、前記装置１０から入力されるフィンガプリントに対応する。
【００２５】
クライアントにおけるフィンガプリントとサーバにおけるフィンガプリントとの間にある１つの違いは、データベースがオーディオ信号全体に対するフィンガプリントを含んでいる一方、クライアントは通常、オーディオ信号に対する１つ又は数個のフィンガプリントしか発生しないことである。図１に示される装置の機能及びフィンガプリントの発生、並びにフィンガプリントの一致が行われる方法は、Jaap Haitsma及びTon Kalker, Ismir著の文献”A Highly Robust Audio Fingerprinting System”, October 2002において詳細に説明され、この文献は、参照することによりこれに含まれるものとする。
【００２６】
図２は、インターネットのようなコンピュータネットワーク２８を介してサーバ装置２６に接続されるクライアント装置２４を示す。このクライアント装置２４はこれにより、上述したやり方で発生するフィンガプリントを発生させ、これをビットの信頼性の情報と一緒に、クエリとして、特定を必要とするオーディオ信号に対するサーバ２６に送る。このサーバ２６は、データベースを調べ、データベースを調査した後に前記オーディオ信号に関する情報をクライアントに戻す。この戻された情報は通常、曲名、アーチスト名等のようなメタデータ(metadata)である。この特定を行う場合、サーバは、フィンガプリントにおけるサブフィンガプリントをデータベースに記憶されるオーディオ信号のサブフィンガプリントと比較し、２つのフィンガプリント間のハミング距離があるしきい値よりも下にあることが分かる場合、成功した特定を戻す。
【００２７】
上述した装置において、１曲のオーディオの特定は、約３秒に相当し、２５６個のサブフィンガプリントを含むフィンガプリントに基づいて迅速に行われる。しかしながら、これは、本発明が解決するであろう幾つかの問題点を導く。多くのオーディオ信号又はクリップは、サイレンスで始まり、このサイレンスは数秒の長さとすることができる。これにより、多くのオーディオ信号は実際にはサイレンスを表す情報を含むであろう。これは、それら信号の全てがさらにフィンガプリントがとられるオーディオファイルに相当していると分かるサイレンスで開始する幾つかのオーディオ信号であることを意味する。これにより、このサイレンスを処理する必要がある。ビデオの場合、これは最初にある多数の黒フレームに相当する。
【００２８】
本発明によるデジタルサイレンス３０を処理する装置３０が、図３にブロック図で示される。この装置３０は、図１に示されるフィンガプリンティング装置のバッファ１８に接続されるように構成される制御ユニット３２、及び前記制御ユニット３２に接続される乱数発生ユニット３４を含む。
【００２９】
本発明による第１の実施例のフローチャートを示す図４と共にクライアント装置において使用する、図３におけるユニットの機能がここに記載されている。クライアント装置は最初に、フィンガプリンティング装置において、オーディオ信号用の多数のサブフィンガプリントを発生させる（ステップ４２）。これらサブフィンガプリンタはレジスタ１８に記憶されている。装置３０の制御ユニット３２は、これらサブフィンガプリンタを前記レジスタ１８から取り出し、これらサブフィンガプリンタの何れかが零値を持っているか検査する、すなわち記載されるフィンガプリンティングアルゴリズムの場合、デジタルサイレンスに相当しているか検査する（ステップ４４）。これらサブフィンガプリンタの何れも零値を持たない場合、サブフィンガプリンタは、レジスタにおいて変化しないままでいて、次いで検査が終了する（ステップ５０）。これらサブフィンガプリンタが零値を含む場合、制御ユニット３２は、乱数値を発生させる乱数発生ユニット３４と交信する（ステップ４６）。これら乱数値は次いで、零値のサブフィンガプリントをサブフィンガレジスタ１８におけるこれらの乱数値と置換する制御ユニット３２に送信され、そこで前記調査は終了する（ステップ５０）。クライアント装置はその後、零値のサブフィンガプリントがこれら乱数値により置換されたフィンガプリントを含むクエリを前記サーバに送信する場合、そのデータベースにおいて一致を見つける可能性は非常に低く、オーディオ信号の誤った一致を戻すのを防ぐ。クライアント装置が成功した特定を行わなければならない場合、オーディオ信号がサイレントではないときは、他のクエリを後で送らなければならなく、そして成功した特定が行われる。
【００３０】
装置３０は、代替として、クライアント装置の入力側、すなわちサブフィンガプリントが発生する前に設けられる。この場合、制御ユニット３２は、実際のオーディオ信号がフィンガプリンティングされる前に一時的に記憶されるレジスタに接続される。本発明の他の実施例による方法は、この第２の実施例による方法のフローチャートを示す図５を参照して説明される。最初に、多数のＰＣＭサンプルから構成されるオーディオ信号のサンプルは、零サンプルが存在するか、若しくは、それが零のサブフィンガプリントとなる、ある最低レベルよりも下にサンプルが存在するかを判断する（ステップ５４）ために、制御ユニットにより分析される（ステップ５２）。それらが存在している場合、乱数発生器は乱数を発生させる（ステップ５６）。その後、制御ユニット３２は、零値のＰＣＭサンプル、若しくは前記しきい値より下にあるサンプルを乱数と置換する（ステップ５８）。その後、オーディオ信号のサンプルは、既知のやり方でサブフィンガプリンタを発生させるフィンガプリンティング装置に送信される（ステップ６０）。このオーディオ信号の零レベルのサンプルは既に置換されたので、これらサンプルに対し後続して発生するサブフィンガプリントは同様に、実際に乱数値であり、これにより、データベースにおけるオーディオ信号のサイレント部分に対する一致がより少ないであろう。零値のサンプルが存在しない場合（ステップ５４）、フィンガプリンティングの発生は直接行われる（ステップ６０）。
【００３１】
上述した方式に対し幾つかの他の可能な変形例が存在する。本発明の他の実施例の１つの変形例は、ランダムノイズの小片を、フィンガプリントが発生する前のオーディオ信号のサンプル全てに、すなわちサイレンスには相当しないサンプルにも加えることである。その上、フィンガプリンティングが行われる前のデジタルサンプルの何れかからデジタルサイレンスを除去する、又はサブフィンガプリンタを乱数と置換する代わりに、デジタルサイレンスに相当するサブフィンガプリントを除去することも可能である。しかしながら、これが行われる場合、後続するサブフィンガプリント間の間隔が１１．８ｍｓ離れていることは保証されない。このとき、サイレンスの代わりにラジオ放送用のオーディオ信号に加えられることができる低い振幅ノイズが、データベースに送られるフィンガプリントの一部となる危険がある。このデータベースが除去された対応するサイレンスを持つ場合、これは、最適な一致よりも僅かに少なくなるであろう。
【００３２】
図３におけるユニットは同様に、サーバにおけるフィンガプリンティング装置と一緒に、クライアントにおけるフィンガプリンティング装置として、上述したように、このフィンガプリンティング装置の前若しくは後に設けられる。これは、データベースが一片のオーディオのフィンガプリントに対し零値を持つ如何なるサブフィンガプリンタも持たないのではなく、乱数語により置換されることを保証する。デジタルサイレンスはさらに、上記段落に記載したのと同じやり方で、デジタルサイレンスのサンプル又はデジタルサイレンスに対応するサブフィンガプリントを除去することにより、サーバ内において除去される。
【００３３】
発生するこれらサブフィンガプリンタは、３２ビットからなり、サイレンスに対応するサブフィンガプリンタは、このとき１６進法の値0x00000000である。零のサブフィンガプリントを置換するのに使用するために、３２ビットの乱数語を発生させる、標準の線形合同乱数発生器を使用するのが便利である。この乱数発生器は、乱数Ｘ0で初期化される。後続する乱数は、以下の等式
ＸN+1＝(1664525*ＸN＋1013904223)mod ２32                          （１）
により得られる。
【００３４】
しかしながら、クライアント装置及びサーバ装置の両方がフィンガプリンタを持ち、この同じ形式の乱数発生器が使用される場合、この方法を用いることによる問題点が存在する。実数の乱数だけが最初の乱数であり、後続する乱数の全ては、既知のやり方でこの最初の乱数から計算されるので、両方の装置がデジタルサイレンスに対し同じ乱数で終わる危険性がある。これが、サイレンスに対し、“ランダムな”サブフィンガプリンタのシーケンスに基づく、データベースにおけるフィンガプリントの一致となる。このデータベースが約１００万曲を保有している場合、この危険性は、少なくとも１／４０００、すなわち０．０２５％である。実際に、その危険性は、クエリにおけるサブフィンガプリントと、フィンガプリントにおいて異なる位置に設けられるデータベースとの間の一致の危険性により、これよりもさらに高い。
【００３５】
この問題のある解決法は、クライアント及びサーバに対して異なる乱数発生方式を持つことである。これは、データベースを別々に実施して、サーバ及びクライアントにおいてフィンガプリントクエリを発生する。この問題の他の解決法は、図６に関連して以下に記載される。
【００３６】
図６は、乱数発生ユニット３４の第１の変形例を示す。このユニットは、本事例では排他的論理和ユニット４０である論理ユニット４０の第１の入力部に接続される標準的な線形合同乱数発生器３６を含む。この論理ユニット４０は、第２の入力部において値Ｖ(tSYS)を入力し、この値は、フィンガプリントを発生する日時に依存する３２ビット値である。この値Ｖ(tSYS)は、乱数発生器が設けられるコンピュータのシステム時間に依存している。これは、後続する乱数値を第１の乱数値だけでなく、現在のシステムの時間及び日時にも依存させる。
【００３７】
これら値がクライアント及びサーバの両方におけるデジタルサイレンスに相当する可能性は、これによりかなり減少する。
【００３８】
この論理ユニットの１つの変形例が図７に示される。図７は、ランダムビットを発生させるのに用いられる線形フィードバックシフトレジスタユニット６２を示す。このユニットは、多数のタップ付き遅延ラインτ６４−７２を含む。これら遅延ラインは直列に接続され、最後の７２は、乱数発生ユニット６２の出力部９４に接続されている。乗算ユニットｇ1８２、ｇ2８４、．．．ｇ29７８、ｇ30７６及びｇ31７４は、各遅延ユニット間に設けられている。この増倍率は、１又は０のどちらかにすることができる。各乗算ユニットは、対応する加算ユニット８４−９２に接続され、この加算ユニットの最後の９２は、直接前記出力部９４にも接続され、最初の８４は、第１の遅延ユニット６４の入力部に接続される。３２ビットの乱数を作成するために、これら線形フィードバックシフトレジスタ（ＬＦＳＲ）を３２個必要とする。これら３２個のＬＦＳＲの各々は、コンピュータのシステム時間から得られる異なる３２ビット数を用いて初期化される。各ＬＳＦＲは、１つのランダムビットを発生する。各ＬＳＦＲが前記システム時間に依存する３２ビット数を用いて初期化されるので、この実施のサイクルもこのシステム時間に依存される。
【００３９】
本発明は、本発明による方法を実施するためのプログラムコードが記憶される関連するプログラムメモリを備える１つ以上の処理器を好ましくは具備する。このプログラムコードは、図８に示されるようなＣＤ−ＲＯＭディスク９６のようなデータ担体の形式で設けられることもできる。このプログラムコードは、図２に示されるようなネットワークを介してサーバから装置へダウンロードされることもできる。
【００４０】
本発明には幾つかの利点がある。デジタルサイレンスが含まれる媒体信号の誤った特定を信頼できる方法で防ぐ。既にコンピュータに設けられる機能の幾つかを使用するので、実施することも容易である。本発明の変形例において、発生する乱数がほぼ確実に誤った特定を起こさないことも保証される。
【００４１】
本発明は、コンピュータシステムにおけるコンピュータに関連して記載されている。しかしながら、本発明は、これに限定されるのではなく、例えばセルラーネットワークを介してサーバと通信する移動電話のように、他の形式の環境において使用されることができる。移動電話は、上述したデータベースを含むサーバに接続するクライアント装置であるコンピュータと通信することもできる。本発明はその上、記載したフィンガプリンティング方式に限定されるのではなく、デジタルサイレンスの処理が可能でなければならない如何なるフィンガプリンティング方式において実施されることができる。本発明はＰＣＭサンプルに関連して記載される。ビデオのような他の形式の媒体信号に対してと同様に、ＭＰ３符号化のような、異なる形式の圧縮及び符号化が用いられる場合も応用可能であることも分かるべきである。従って、本発明は、特許請求の範囲により限定されるべきである。
【００４２】
要約すると、本発明は、デジタル媒体信号をフィンガプリンティングする場合に、デジタルサイレンスを処理するコンピュータプログラムプロダクト及びコンピュータプログラム要素と同様に、方法、装置、クライアント−サーバシステムにも関する。このデジタル媒体信号の少なくとも一部に対する多数のサブフィンガプリントを有するフィンガプリントが発生し（ステップ４２）、このフィンガプリントへの前記媒体信号の少なくとも一片の影響が除去又は変更され（ステップ４８）、この一片はデジタルサイレンスに対応する。本発明は、デジタルサイレンスが含まれる、例えばオーディオ信号のような媒体信号の誤った特定を信頼できるやり方で防ぐ。本発明は、既にコンピュータに設けられた機能の幾つかを必要とするだけで、実施も容易である。
【図面の簡単な説明】
【００４３】
【図１】フィンガプリントのデータベースと一緒にフィンガプリンタを発生する装置のブロック図。
【図２】ネットワークを介してサーバ装置に接続されるクライアント装置を概略的に示す。
【図３】本発明によるデジタルサイレンスを処理する装置のブロック図。
【図４】本発明の第１の実施例によるデジタルサイレンスを処理する方法のフローチャート。
【図５】本発明の第２の実施例によるデジタルサイレンスを処理する方法のフローチャート。
【図６】図３における装置にある乱数発生ユニットの第１の変形例のブロック図。
【図７】本発明によるデジタルサイレンスを処理するための装置のための乱数発生ユニットの第２の変形例を示す。
【図８】本発明を実施するためのプログラムコードが記憶された光学ディスクを示す。
【図１】
2006519452.tif 000003
【図２】
2006519452.tif 000004
【図３】
2006519452.tif 000005
【図４】
2006519452.tif 000006
【図５】
2006519452.tif 000007
【図６】
2006519452.tif 000008
【図７】
2006519452.tif 000009
【図８】
2006519452.tif 000010
【国際調査報告】
2006519452.tif 000011
2006519452.tif 000012