[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2005522744A - 音声コンテンツを特定する方法 - Google Patents

音声コンテンツを特定する方法 Download PDF

Info

Publication number
JP2005522744A
JP2005522744A JP2003585328A JP2003585328A JP2005522744A JP 2005522744 A JP2005522744 A JP 2005522744A JP 2003585328 A JP2003585328 A JP 2003585328A JP 2003585328 A JP2003585328 A JP 2003585328A JP 2005522744 A JP2005522744 A JP 2005522744A
Authority
JP
Japan
Prior art keywords
time
events
frequency components
audio signal
event
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2003585328A
Other languages
English (en)
Other versions
JP4267463B2 (ja
Inventor
ピットマン、マイケル、シー
フィッチ、ブレーク、ジー
アブラムズ、スティーブン
ジャーマン、ロバート、エス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2005522744A publication Critical patent/JP2005522744A/ja
Application granted granted Critical
Publication of JP4267463B2 publication Critical patent/JP4267463B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/48Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/018Audio watermarking, i.e. embedding inaudible data in the audio signal
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/63Querying
    • G06F16/632Query formulation
    • G06F16/634Query by example, e.g. query by humming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/68Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/683Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/56Arrangements characterised by components specially adapted for monitoring, identification or recognition covered by groups H04H60/29-H04H60/54
    • H04H60/58Arrangements characterised by components specially adapted for monitoring, identification or recognition covered by groups H04H60/29-H04H60/54 of audio
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0204Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using subband decomposition

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Library & Information Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stereophonic System (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
  • Measurement Of Mechanical Vibrations Or Ultrasonic Waves (AREA)

Abstract

【課題】 音声コンテンツを特定する方法を提供する。
【解決手段】 音声信号をサンプリングし、音声信号のサンプルの連続する組について周波数変換を実行し音声信号の時間依存パワー・スペクトラムを取得する。周波数変換が出力する周波数成分を周波数帯域に集約する。各周波数帯域の少なくとも1つの移動平均をとる。同じ半音周波数帯域の2つの移動平均の値が交差したら、時間情報を記録する。隣接する周波数帯域の組において異なる時に生起した平均交差イベントに関する情報を組み合わせてキーを形成する。ある歌から取得したキーの組によって、当該歌を特定する手段が得られる。このキーの組をデータベースに格納しておき、歌の特定に使用する。

Description

本発明は一般に信号認識に関し、特に録音などの音声コンテンツを自動的に特定する方法に関する。
音声用の効率的なディジタル符号化法(たとえばMP3と呼ばれるモーション・ピクチャ・エキスパート・グループ・レイヤ3(Motion Picture Experts Group Layer 3)標準)の開発とインターネットの登場とによって、録音済み音楽の完全に電子的な販売と配付が可能になった。これは録音産業に恩恵をもたらす可能性がある。その反面、この技術的進歩によって音楽の違法配付が助長される。これにより、録音を行なう演奏家と音楽販売業者の独自利益が脅かされる。世代を重ねて録音しても劣化しない高忠実度のディジタル・コピーが容易になることはディジタル・オーディオの登場以前に行なわれていたオーディオ・カセットへの音楽の限られたコピーと比べて音楽産業にとってはるかに大きな問題である。現在、人々が、著作権で保護された音楽の海賊盤を入手しうるインターネット・サイトが無数に存在する。したがって、音楽著作権遵守のために、音声コンテンツを自動的に特定するシステムと方法が求められている。
ディジタル音声ファイル(たとえばMP3)の中から音楽を特定することは些細な問題ではない。同じ音楽でも符号化方式が異なると異なったビット・ストリームが生成される。同じ音楽を記録(たとえば録音)して2つのディジタル音声ファイルを作成するのに同じ符号化方式を用いる場合であっても、これらのファイルはビット・レベルでは必ずしも一致しない。様々な効果は、人間の認識によって判定される、結果として得られる相違が無視しうるものであっても、ビット・ストリームの間に相違を生じさせる可能性がある。これらの効果には次に示すものがある。すなわち、録音システムの全般的な周波数応答における微妙な相違、ディジタル−アナログ変換効果、音響環境効果(たとえば残響)、および録音開始時のわずかな相違である。また、所定の録音方式を適用することによって得られるビット・ストリームは音源の種類によって変化する。たとえば、CD(Compact Disc)の出力を符号化することにより作成した歌のMP3ファイルはステレオ受信機の出力を符号化することにより作成した同じ歌のMP3ファイルとはビット・レベルでは一致しない。
提案さている1つの解決策はディジタル透かしを用いて著作権で保護された音楽にタグを付けることである。あいにく、ディジタル透かしを判読できないようにする方法が多数みつかっている。また、人間にとってきわめて聞き取りやすいのに人間の音楽認識能力を妨げない多様なノイズやひずみが存在する。FM放送やオーディオ・カセットはCD録音と比べて帯域幅が狭いのに、一部の聴取者はコピーして楽しんでいる。同様に、インターネット上のMP3ファイルは品質が比較的低いのに増大し続けており、音楽産業の収益を脅かしている。さらに、著作権保護制度の意図的な逸脱の一部には音楽を意図的に改変すなわちゆがめることがある。これらのゆがみには時間伸長と時間圧縮がある。そのような場合、開始時間と終了時間が異なるだけでなく、歌唱期間(song duration)も異なる。このような相違はすべて人間にとってほとんど判別しえないものであるが、既存の多くの著作権保護制度を逸脱するのには十分なものである。
音楽産業と作曲家にとっての別の問題としてサンプルの不正使用が挙げられる。サンプルは歌の短い部分を切り取って別の歌の中に貼り付けたものである。このようなサンプルを発見して特定しうるようにならない限り、元の録音の著作権所有者は模倣という所業における当該著作権の使用に対して正当な補償を受けることができない。
録音、放送、符号化、復号、伝送、および意図的改変などのプロセスの間にわずかな相違や改変が生じても録音などの音声コンテンツを特定しうる方法が求められている。
本発明の第1の側面は次のように構成する。
音声コンテンツを特定する方法であって、
時間依存パワー・スペクトラムを特徴とする音声信号を取得するステップと、
前記スペクトラムを解析して複数の時間依存周波数成分を取得するステップと、
前記複数の時間依存周波数成分中の複数のイベントを検出するステップと
を備えた
方法。
本発明の第2の側面は次のように構成する。
音声信号の記録の一部分を特定する特徴を形成する方法であって、
前記一部分の音声信号のフーリエ変換を行ない、第1の複数の周波数にわたって放散される音声パワーの時系列を生成するステップと、
前記周波数を各々が、隣接する一範囲の周波数を含むより小さな第2の複数の帯域にグループ化するステップと、
前記帯域の各々におけるパワー放散イベントを検出するステップと、
選定した時において互いに隣接する帯域に由来する前記パワー放散イベントをグループ化して前記特定する特徴を形成するステップと
を備えた
方法。
本発明の第3の側面は次のように構成する。
音声信号の記録の一部分を特定する特徴を形成する方法であって、
前記一部分の音声信号のフーリエ変換を行ない、第1の複数の周波数にわたって放散される音声パワーの時系列を生成するステップと、
前記周波数を各々が、隣接する一範囲の周波数を含むより小さな第2の複数の帯域にグループ化するステップと、
前記帯域の各々におけるパワー放散イベントを検出するステップと、
選定した時において互いに隣接する帯域に由来する前記パワー放散イベントをグループ化して前記特定する特徴を形成するステップと
を備えた
方法。
本発明の第4の側面は次のように構成する。
音声ストリームが音声信号の既知の記録の少なくとも一部分を含んでいるか否かを判断する方法であって、
請求項14に記載の方法を用い前記既知の記録の前記部分に基づいて少なくとも1つの第1の特定する特徴を形成するステップと、
前記第1の特定する特徴をデータベースに格納するステップと、
請求項14に記載の方法を用い前記音声ストリームの一部分に基づいて少なくとも1つの第2の特定する特徴を形成するステップと、
前記第1の特定する特徴と前記第2の特定する特徴とを比較して少なくとも選定した程度の類似性があるか否かを判断するステップと
を備えた
方法。
本発明の第5の側面は次のように構成する。
音声コンテンツを特定するプログラムでエンコードされたコンピュータ読み取り可能な媒体であって、前記プログラムが、
時間依存パワー・スペクトラムを特徴とする音声信号を取得するステップと、
前記スペクトラムを解析して複数の時間依存周波数成分を取得するステップと、
前記複数の時間依存周波数成分中の複数のイベントを検出するステップと
を実行する命令を備えている
コンピュータ読み取り可能な媒体。
本発明の第6の側面は次のように構成する。
音声信号の記録の一部分を特定する特徴を形成するプログラムでエンコードされたコンピュータ読み取り可能な媒体であって、前記プログラムが、
前記一部分の音声信号のフーリエ変換を行ない、第1の複数の周波数にわたって放散される音声パワーの時系列を生成するステップと、
前記周波数を各々が、隣接する一範囲の周波数を含むより小さな第2の複数の帯域に集約するステップと、
前記帯域の各々におけるパワー放散イベントを検出するステップと、
選定した時において互いに隣接する帯域に由来する前記パワー放散イベントを集約して前記特定する特徴を形成するステップと
を実行する命令を備えている
コンピュータ読み取り可能な媒体。
本発明の第7の側面は次のように構成する。
音声信号の記録を特定するシステムであって、
特定すべき音声信号を受信するインタフェースと、
前記音声信号から複数の時間依存周波数成分を取得するスペクトラム解析器と、
前記時間依存周波数成分の各々において複数のイベントを検出するイベント検出器と、
前記複数のイベントを周波数および時間によってグループ化し、前記複数のイベントに基づいて複数のキーを生成するキー生成器と
を備えた
システム。
本発明の第8の側面は次のように構成する。
音声信号の記録の一部分を特定する特徴を形成するシステムであって、
前記一部分の音声信号のフーリエ変換を行ない、第1の複数の周波数にわたって放散される音声パワーの時系列を生成する手段と、
前記周波数を各々が、隣接する一範囲の周波数を含むより小さな第2の複数の帯域にグループ化する手段と、
前記帯域の各々におけるパワー放散イベントを検出する手段と、
選定した時において互いに隣接する帯域に由来する前記パワー放散イベントをグループ化して前記特定する特徴を形成する手段と
を備えた
システム。
本発明の目的、特徴、および利点は以下の詳細な説明から明らかになる。しかしながら、次に示す点を認識すべきである。すなわち、詳細な説明と特定の例示は本発明の好適な実施形態を示すものではあるが、説明を目的としたものであり、本発明の範囲の内でごく自然に様々な変形を行なうことができる。
図1はその上で本発明を実現しうる典型的なネットワーク100の模式図である。このネットワークはネットワーク106(たとえばインターネット)に第1の2方向データ・リンク108と第2の2方向データ・リンク110を通じてそれぞれ通信可能に接続された第1のウェブ・サーバ102と第2のウェブ・サーバ104を備えている。第1のウェブ・サーバ102と第2のウェブ・サーバ104はクライアントがダウンロードしうる音声ファイルを含むファイルを格納するファイル記憶装置(たとえばハード・ディスク駆動装置)を備えている。
ネットワーク106には第3の2方向データ・リンク116と第4の2方向データ・リンク118を通じて第1のクライアント・コンピュータ112と第2のクライアント・コンピュータ114がそれぞれ通信可能に接続されている。第1のクライアント・コンピュータと第2のクライアント・コンピュータは第1のウェブ・サーバと第2のウェブ・サーバから音声ファイルを含むファイルをダウンロードすることができる。ここまでに説明したネットワーク・コンポーネントは音楽の配付用に使用しうるシステムを指している。ウェブ・サーバ102とウェブ・サーバ104には音楽の録音を格納した音声ファイルが格納されている。
ネットワーク106には第5の2方向データ・リンクを通じて著作権遵守クライアント・コンピュータ(copyright enforcement client computer:CECC)120が通信可能に接続されている。CECCには下で詳述するような方法を実施するソフトウェアをロードするためにコンピュータ読み取り可能な記憶媒体124(たとえばCD−ROM)を供給する。たとえば、このソフトウェアはウェブ・サイト(たとえば第1のウェブ・サーバ102と第2のウェブ・サーバ104がホスティングするウェブ・サイト)を探索(spider over すなわちsearch)し、ウェブ・サイトに格納されている音声ファイルを検索・取得し、音声ファイルを特定(すなわち音声ファイルに含まれている歌を特定)することができる。
第1のウェブ・サーバ102、第2のウェブ・サーバ104、クライアント・コンピュータ112、114、およびCECCには既存の任意のコンピュータ・システム(たとえばIBM PC互換コンピュータ)を用いることができる。周知のように、IBM PC互換コンピュータにはBIOS ROM(basic input/output system read-only memory)、RAM(random access memory)、ハード・ディスク駆動装置、着脱可能コンピュータ読み取り可能媒体(たとえばCD−ROM駆動装置)、映像表示アダプタ・カード、映像モニタ、ネットワーク・インタフェース(たとえばモデム)、キーボード、ポインティング装置(たとえばマウス)、音声カード、およびスピーカを備えることができる。
第1〜第5の2方向データ・リンク108、110、116、118、122にはDSL(Digital Subscriber Line)、T1線、ダイヤルアップ・モデム接続などを用いることができる。第1のウェブ・サーバ102と第2のウェブ・サーバ104はUNIXオペレーティング・システムの下で実行されるアパッチ・サーバ(Apache Server)ウェブ・サーバ・ソフトウェア(アメリカ合衆国ネブラスカ州リンカーン所在のアパッチ・ソフトウェア・ファウンデーション(Apache Software Foundation)の製品)を備えることができる。第1第2のクライアント・コンピュータ114と第2のクライアント・コンピュータ116はウェブ・ブラウザ(たとえばWindows(R)オペレーティング・システム〔アメリカ合衆国ワシントン州レドモンド所在のマイクロソフト・コーポレーション(Microsoft Corporation)の製品〕の下で実行されるネットスケープ・ナビゲータ〔アメリカ合衆国バージニア州ダレス所在のアメリカ・オンライン(America Online)の製品〕)を用いてロードすることができる。上記ウェブ・ブラウザはプラグイン・アプリケーションとともに動作して音声ファイルをデコードし音声信号を音源カードに供給するのが望ましい。あるいは、再生用に音声ファイルをデコードするのに別個のアプリケーションまたは専用のハードウェアを備えてもよい。2つのウェブ・サーバ102、104、2つのクライアント・コンピュータ112、114、およびCECCも通信プロトコル・スタック・ソフトウェアを用いてロードし、ネットワーク接続(たとえばTCP/IP接続)を確立することができる。また、CECCはオペレーティング・システム(たとえばWindows(R)やUNIX(R))およびCECCアプリケーション(たとえば図2〜図9を参照して下で説明するように動作するもの)を用いてロードする。
図2は本発明の好適な実施形態に従い音声コンテンツを特定するソフトウェアのブロック図(200)を示す図である。ウェブ・サーバ・アプリケーション202は(たとえばMP3フォーマットの)少なくとも1つの音声ファイルを含むファイル・システム204を備えている。ウェブ・サーバ・アプリケーション202はネットワーク(たとえばTCP/IP)接続をサポートしうるサーバ側通信プロトコル・スタック206とともに動作する。ウェブ・サーバ・アプリケーション202とサーバ側通信プロトコル・スタック206は第1のウェブ・サーバ102と第2のウェブ・サーバ104の上で実行する。サーバ通信プロトコル・スタック206とクライアント通信プロトコル・スタック210との間にTCP/IP接続208を確立する。クライアント通信プロトコル・スタックは著作権遵守アプリケーション212が利用する。
著作権遵守アプリケーションはウェブ探索モジュール214とコンテンツ特定モジュール216を備えている。ウェブ探索モジュール214は音声ファイルを求めてウェブ・サイトを探索する。音声ファイルの所在を突き止めたら、それをダウンロードして解析の用に供する。コンテンツ特定モジュール216はウェブ探索モジュール214から音声ファイルを受領し、それらをデコードして音声信号情報を取得する。コンテンツ特定モジュールは多数の歌から抽出した多数のキーを格納したキー・データベースを備えている。データベース中の各歌(すなわち録音ユニット)ごとにキーの組が存在する。キーの組によって、歌または歌のセグメントを特定する手段が得られる。歌の一部分は当該部分の特定を可能にする対応するキーの部分組を有するから、歌の一部分だけの存在を特定する能力を保持している。
キー・データベースはキー・テーブルの形態をとるのが望ましい。このキー・テーブルの各行は第1列にキー・シーケンス、第2列に時間グループ値、第3列に歌ID(たとえばタイトル)を含んでいる。キー・データベースの構築は既知の歌にキー生成プログラムを適用し、キー生成プログラムによって得られる各キーとキー・データベース中のタイトルとを関連付けることにより行なう。時間グループはキーの抽出元である音声特徴が発生した時間(これは歌の開始と関連する所定の間隔から成る単位で測定したものである)である。各時間グループは所定の間隔と等しい時間の間に発生したイベント(後述)を含んでいる。同じ歌を異なる2つの方式で録音すると、特に密造コピーの場合、開始時間がわずかに相違する可能性がある(たとえば音声ファイルの開始は歌の実際の開始よりも数秒間前後する可能性がある)。この相違によって、2つの音声ファイルを比較するのが困難になる。本発明はこの困難を克服するものである。
図3は本発明の一実施形態に従いインターネット(たとえばウェブ・サイトやFTPサイト)上で音声ファイルの所在を突き止めて特定するために著作権遵守モジュール210が実行するプロセス300のフローチャートを示す図である。ステップ302において、ウェブ探索モジュール214はインターネットの一部を探索して多数の音声ファイルを発見する。音声ファイルを特定する1つの方法はウェブ・ページ内にあるURI(Uniform Resource Identifier)のファイル拡張子と既知の音声ファイルのリストとを比較することである。ステップ304において、ウェブ探索モジュール214はステップ302で発見した音声ファイルをダウンロードする。
ステップ306において、コンテンツ特定モジュール218はステップ304でダウンロードした音声ファイルを各音声ファイルごとに一意の署名(1組のキーであるのが望ましい)を生成するアルゴリズムを用いて解析する。ステップ308において、この一意の署名を用いて、著作権で保護された録音(たとえば歌)のデータベース中で特定される情報(たとえば各音声ファイルのタイトル)を探索する。ステップ310において、著作権で保護された歌(たとえばそのタイトル)とウェブ上でそれを発見した場所を示すURIとを記録し、および/または第三者(たとえば著作権の所有者)に送付する。(「Aおよび/またはB」は「AおよびB、A、またはB」を表わす。)この結果、著作権遵守処置で使用するために、著作権で保護された作品に対応するURIのリストを編集することが可能になる。
図4は本発明の好適な実施形態に従い音声セグメント(たとえば歌)用のイベント・ストリームを生成するプロセス400のフローチャートの前半を示す図である。プロセス400は入力として音声信号を受領し「イベント」の列を出力する。本発明の一部の実施形態では、音声信号はMP3ファイルから再生成する。ステップ402において、音声信号をサンプリングする。一実施形態では、約22050Hz以下で音声信号をサンプリングする。これにより、最高11KHzの周波数成分を実際に測定することが可能になる。11KHzはおよそFMラジオ放送の遮断周波数であるから、約11KHzの周波数上限を用いることは好都合である。そして、ある歌の録音がFMラジオによって一時的に送信されたものであるか高品質の音源(たとえばCD)から直接に取得されたものであるかとは無関係に当該歌用に同じ組のキーを生成しうることが望ましい。
ステップ404において、各連続テスト期間ごとに音声信号のスペクトラムを計算する。テスト期間の長さは約(1/43)秒〜約(1/10.75)秒であるのが望ましく、特に約(1/21.5)秒であるのが望ましい。音声信号のスペクトラムは高速フーリエ変換(FFT)アルゴリズムを用いて解析するのが望ましい。FFTアルゴリズムを用いて取得するスペクトラム情報の正確度はいくつかの連続期間(サンプル組)にFFTを適用して得られる結果を平均することにより改善することができる。本発明の好適な実施形態では、スペクトラム情報の改善は少なくとも2つの連続期間、望ましくは少なくとも3つの連続期間、より望ましくは少なくとも4つの連続期間にFFTを適用して得られる結果を平均することにより行なう。本発明の典型的な実施形態によると、長さが(1/21.5)秒の所定のテスト期間に付随するスペクトラムを得るには22050Hzの速度で音声信号をサンプリングし、FFTアルゴリズムを4連続期間(各期間の長さは(2/21.5)秒であり2048個のサンプルを含んでいる)に適用して得られる結果を平均する。
ステップ404はCECC120のマイクロプロセッサで実行されるFFTアルゴリズムを用いることにより実行することができる。あるいは、CECCが、ステップ404を実行するFFTハードウェアを備えてもよい。あるいは、ステップ404を実行するのに他のスペクトラム解析器(たとえばフィルタ・バンク)を用いてもよい。また、プロセス404において、サンプルの連続組にフーリエ原理とは別種の原理を適用してもよい。フーリエ原理に対する1つの特定の代替原理はウエーブレット原理である。フーリエ原理の関数と同様に、ウエーブレットも(程度は劣るが)周波数領域において局所化されている。ウエーブレットには時間領域においても局所化されているというさらなる特徴がある。これにより、音声信号の連続サンプル組ではなく音声信号全体にウエーブレット原理を適用し、音声信号に関する時間依存周波数情報を取得することが可能になる。
音楽を作曲する際に使用する周波数から成る1つの共通の組は平穏な尺度(even-tempered scale)の音である。平穏な尺度は対数尺度上に等しく配置された音を含んでいる。各音は「半音」と呼ばれる周波数帯域をカバーしている。本発明者らは次に示す点を確認した。すなわち、FFTアルゴリズムによって出力される等しく配置された周波数帯域とは対照的に、離散的な半音帯域におけるスペクトラム・パワーを収集すると改善された署名が得られる。ステップ406において、ステップ404で得られたスペクトラム情報(たとえばフーリエ周波数成分)を多数の半音周波数帯域すなわち半音周波数チャネルに集約する。
ステップ408において、最後のT1秒にわたって各半音周波数チャネルにおけるパワーの第1の平均をとる。ステップ410において、最後のT2秒にわたって各半音周波数チャネルにおけるパワーの第2の平均をとる(ただしT2はT1よりも大きい)。T1は約(1/10)秒〜約1秒であるのが望ましい。T2はT1よりも2〜8倍だけ大きいのが望ましい。本発明の典型的な実施形態によると、T2は1秒に等しく、T1は(1/4)秒に等しい。上述した「イベント」が発生するのは第1の平均の値が第2の平均と交差するときである。
ステップ412において、第1の平均の値と第2の平均の値を各半音チャネルごとに記録する。記録は第1の平均が第2の平均と交差したかを次のテスト期間に判断しうるように行なう。ステップ414において、各半音チャネルごとに第1の平均が第2の平均と交差したかを判断する。これは現在のテスト期間における第1の平均と第2の平均との間の不等関係と最後の期間における不等関係とを比較することにより行なう。上では2つの平均の間における比較だけを説明したが、本発明の別の実施形態によれば、3つ以上の平均を用い3つ以上の平均の異なる部分組み合わせ間の交差ポイントとしてイベントを特定することができる。
半音周波数チャネルにおける極値(極大または極小)の近傍で、2つの平均は交差する。様々な平均期間を用いて2つの移動平均の交差ポイントを探究する代わりに、別の種類のピーク検出器(たとえば電子回路)を使用してもよい。これは本発明をソフトウェアではなく主としてハードウェアで実現する際にFFTと組み合わせて使用するのが好都合である。
周波数チャネルにおける信号のピークを探究する代わりに、トリガ・イベントとして別の種類の曲線特徴(たとえば変曲点)を用いてもよい。変曲点は周波数チャネルの2次導関数を計算することにより見つけることができる。この計算は所定の周波数チャネルにおいて連続する3つのパワー値を処理し、2次導関数が正から負または負から正に変化する時を特定することにより行なう。2次導関数は次に示す公式において3つの連続する点に対して関数(時間依存周波数成分)の値を用いて近似することができる。
(F(N+2)−2F(N+1)+F(N))/ΔT2
ただし、F(I)はi番目の時間(たとえばi番目のテスト期間)における関数の値であり、ΔTは連続関数値(たとえばテスト期間の長さ)の間の間隔である。
時間依存周波数成分の極値において、その1次導関数は0に等しい。時間依存周波数成分の変曲点において、その2次導関数は0に等しい。極値と変曲点は2種類のイベントである。一般に、イベントは時間依存周波数成分の1次以上時間依存周波数成分導関数、および/または時間依存周波数成分を含む積分を含む方程式が満足する点(すなわち時間点)として定義することができる。異なる音声コンテンツを特定する際にそれらを用いるのを可能にするために、「イベント」の定義の本質的な部分はそれらが発生するのは各テスト期間においてではなくテスト期間群の一部分においてであるというものである。
ステップ416は判断ブロックである。このブロックの結果は半音チャネルについての平均が交差したか否かによって決まる。ステップ416は各半音チャネルについてテストする。半音チャネルについての平均が現在のテスト期間中に交差しなかった場合、ステップ418において音声信号が終了したか否かを判断する。音声ストリームが終了していたら、プロセス400は終了する。音声信号が終了していない場合、プロセス400は次のテスト期間に進み、ステップ404から続行する。他方、最後のテスト期間に平均が交差した場合、プロセス400はステップ422から続行する。ステップ422では、現在の時間グループに各イベントを割り当て、平均が交差したイベントに関連する情報を生成する。
イベント情報はイベントについての時間グループ、イベントについてのテスト期間、イベントの半音周波数帯域、および交差時における高速平均(T1にわたる平均)の値を含んでいるのが望ましい。イベント情報はCECCに付随するメモリまたはストレージ装置に記録することができる。各時間グループはテスト期間よりも長い期間をカバーしている。そして、時間グループは(1/4)秒〜2秒に等しい連続期間をカバーしているのが望ましい。そして、各時間グループは(1/2)秒〜(3/4)秒の期間をカバーしているのがより望ましい。イベントを連続時間グループに分類するのには次に示す利点がある。すなわち、同じ歌の2つの録音を処理して得られるキーは当該録音群のうちの1つまたは2つが何らかのひずみ(たとえば磁気テープへの録音の際に生じるひずみ)を有するという事実にかかわらずより完全に一致する傾向があるという利点である。
ステップ424において、プロセス400を次のテスト期間に進める。ステップ426において、音声セグメント(たとえば歌)が終了しているか否かを判断する。音声セグメントが終了している場合、プロセス400は終了する。音声セグメントが終了していない場合、テスト期間を進めたのち、プロセスはステップ404へループバックする。
したがって、プロセスの結果は音声信号および複数のイベントを取得するとである。各イベントはそれが生起した半音周波数帯域と時間グループ(間隔)に割り当てる。イベントはメモリ(たとえばCECC120中のRAM)に格納することができる。イベントは少なくとも1つのキー生成プロセスがそこからイベントを連続的に読み出したバッファに格納することができる。プロセスが出力するイベントはイベント・ストリームの形態をとることができる。すなわち、各時間グループのあとで、当該時間グループ内で生起したすべてのイベントはメモリに書き込むことができる。これにより、さらなる処理においてそれらを利用することが可能になる。別の方法は歌についてのすべてのイベントをメモリまたはストレージに一時に書き込むものである。
図6は図4と図5に示すプロセスが生成するイベントからキーを生成するキー生成器プロセスのフローチャートを示す図である。プロセス400が出力するイベントは複数のキー生成器プロセス500が処理する。複数のキー生成器プロセスの各々はその主周波数で指名されている半音周波数帯域の1つに割り当てる。しかし、各キー生成器はその主周波数近傍の他の半音周波数帯域で生起するイベントも使用する。各キー生成器は5〜15個の半音周波数帯域をモニタするのが望ましい。モニタする周波数帯域の個数が少なすぎると、結果として得られるキーは特定の音声セグメントの特徴をあまり強く表わさない。他方、周波数帯域の個数が多すぎると、キーの計算と比較に要するコンピュータ能力の消費量が多くなり、キーを格納するのに要するメモリ量が多くなり、そしてキーの個数が増大することによるキー・テーブル中のキーの飽和に起因して性能が低下する可能性がある。本発明の一実施形態によると、各キー生成器はその主半音周波数帯域と4つの他の半音周波数帯域(主半音周波数帯域の両側に2つずつ)とをモニタする。
次に、図6を参照する。ステップ502において、このキー生成器に割り当てられた半音周波数帯域内で生起するイベントがないか、プロセス400が出力するイベントの各連続時間グループをモニタする。ステップ504は判断ブロックである。ステップ504の結果はステップ502においてキー生成器が(たとえばメモリを読み取ることにより)新たなイベントを検出したか否かによって決まる。NOの場合、プロセス500は次の時間グループに進み、ステップ502にループバックする。他方、チェックした時間グループと半音周波数帯域において新たなイベントが生起した場合、ステップ506において当該新たなイベントを問題のキー生成器用のキー生成器バッファに書き込む。そして、キー生成器バッファに格納されていた最古の時間グループ用のイベントを削除する。典型的な一実施形態では、キー生成器バッファは行が時間グループに対応し列が周波数帯域に対応するアレイと見ることができる。したがって、本発明の上述した実施形態では、各キー生成器がモニタする各半音周波数帯域ごとに5つの列が存在する。
キー生成器バッファは3〜7個の時間グループに由来するイベントを含んでいるのが望ましい。各キーバッファ・アレイには5または6個の時間グループに由来するイベントが保持されているのがより望ましい。留意点を挙げると、この実施形態では、キー生成器バッファ中にすべての時間グループが示されているわけではない。図6に示すように、ある時間グループにおいてあるキー生成器つき半音周波数帯域でイベントが生起しない場合、キー生成器バッファには変化を記録しない。換言すると、空白行は記録しない。したがって、キー生成器バッファに記録されている各時間グループは少なくとも1つのイベントを含んでいる。
ステップ508は判断ブロックである。ステップ508の結果は現在の時間グループ(たとえば現在のパス・スルー・プログラム・ループ)において生起したイベントがトリガ・イベントであるか否かによって決まる。本発明の好適な実施形態によると、トリガ・イベントとはこのキー生成器に割り当てられた主周波数において生起するイベントのことである。トリガ・イベントが生起しなかった場合、プロセスはステップ514にループバックする。トリガ・イベントが生起した場合、プロセスはステップ510から続行する。ステップ510では、キー生成器バッファの内容からキーを生成する。プロセス500はプロセス400が生成したすべてのイベントの処理が完了するまで継続する。
図7は本発明の一実施形態に従いキー生成器バッファの内容からキーを生成するプロセスのフローチャートを示す図である。特に、プロセス600は図6のステップ510を実現する一実施形態を詳細に示すものである。ステップ602において、各キー生成器(上述したようにプロセス500を実行するキー生成器は複数個存在する)ごとに、そして問題のキー生成器につき各トリガ・イベントごとに、キー生成器バッファに由来するイベントの少なくとも1つの異なる組み合わせを選択する。各組み合わせは各時間グループに由来するイベントを1つしか含んでいない。(各キー生成器バッファにおいて各時間グループごとに複数のイベントが存在する。)本発明の好適な実施形態によると、可能な組み合わせをすべて選択するのではなく、各イベントに付随するパワーがその組み合わせにおいてあるイベントから次のイベントへ単調に変化する組み合わせだけを選択する。
この実施形態では、組み合わせ内のイベントの順序は時間グループの順序と一致する。各イベントに付随するパワーの大きさは当該イベントが生起したテスト期間の高速(第1の)平均の大きさと一致するのが望ましい。この実施形態では、キーの組み合わせは可能なすべての組み合わせに満たない個数しかとっていない。したがって、所定の音声セグメントに対するキーの合計個数が少なくなるから、必要なメモリと処理能力は少なくて済む。他方、歌から生成されるキーの組が歌のアイデンティティを特徴付ける(すなわち両者が強く相関する)のに十分な個数のキーは存在する。別の実施形態によると、キー生成器バッファの内容からは単一の組み合わせしか選択しない。この単一の組み合わせは各時間グループに由来する最高位の高速平均パワーに付随するイベントを含んでいる。さらに別の実施形態によると、各時間グループに由来する1つのイベントをとる異なるイベントの組み合わせをすべてとる。
ステップ604において、イベントの選択した各組み合わせごとに、ステップ602で形成した各組み合わせに由来する一連のイベントについて(主キー生成器周波数からの)周波数オフセットの一連の数値を含むキー・シーケンスを作成する。各周波数オフセットはイベントが生起した半音帯域の周波数とキー生成器の主周波数との差である。ステップ606において、トリガ・イベントのテスト期間情報(たとえばトリガ・イベントのテスト期間のシーケンス番号〔ただし各歌について第1のテスト期間のシーケンス番号を1番に指定する〕)とキー・シーケンスとを関連付ける。
ステップ608において、キー・シーケンスおよびテスト期間情報を含むキーと歌(または他の音声)の識別子すなわちID(たとえばタイトル)とを関連付ける。既知の歌を用いて、既知の歌を比較する対象をなす歌データベースを構築している場合、プロセス600はステップ608を含んでいる。2つの歌を比較する際、キー・シーケンスとテスト期間情報との双方を使用する。この点については図9を参照して後述する。歌データベースは3つの列と複数の行を含むテーブルの形態をとることができる。最初の列はキー・シーケンスを含み、次の列はこのキー・シーケンスに関連付けられた対応するテスト期間を含み、最後の列は行中のキーの取得先である歌のIDを含んでいる。
上述したプロセスを用いて音声コンテンツを特定することができるが、パーカッション(打楽器)イベントをフィルタリングするのが好都合である。特に、フィルタリングしない場合、歌の中のパーカッション音は通常、プロセス400が出力するイベントの大きな割合を占める。コンピュータ資源(たとえばメモリと処理能力)を節減しより特徴的なキーの組を取得するために、パーカッション・イベントの個数を低減するのが望ましい。それは、たとえばキー生成器プロセス500がイベントを処理する前に一部のパーカッション・イベントを除去することにより行なう。本発明者らの認識によると、パーカッション音によって、隣接する半音周波数帯域において同じテスト期間に複数のイベントがトリガされる。たとえば、パーカッション音によって、複数の隣接する一連の半音帯域において複数のイベントが生起する可能性がある。
図8は図4と図5のプロセスが生成するイベントからパーカッション・イベントをフィルタリングするために、好適な実施形態で使用するプロセスのフローチャートを示す図である。ステップ702において、各連続テスト期間ごとに、連続する少なくとも2つの隣接する半音周波数帯域において複数のイベントが生起したか否かを判断する。ステップ704は判断ブロックである。ステップ704の結果は隣接する周波数帯域において複数のイベントが生起したか否かによって決まる。このプロセスでは、隣接する周波数帯域において生起するイベントの所定個数から成るしきい値を使用する。(パーカッション音がイベントを生成したものとみなすために)イベントがあるに違いない隣接する周波数帯域の個数の下限は少なくとも3に設定するのが望ましい。本発明の典型的な実施形態によると、ステップ704の結果が正になるには3連続の半音周波数帯域においてイベントが生起しなければならない。
ステップ704の結果が負の場合、プロセスはステップ708から継続する。ステップ708では、プロセスは次のテスト期間に進み、ステップ702にループバックする。他方、ステップ704の結果が正の場合、プロセス700はステップ706から継続する。ステップ706では、隣接する周波数帯域における同じテスト期間に生起した一連のイベントの各々を単一のイベントに低減させる。最高速の平均値を有するシーケンスにおけるイベントを除くすべてのイベントをプロセス400が生成したイベント・ストリームから削除する。あるいは、1つ以外のすべてを削除する代わりに、最大で所定数のイベントを残してもよい。
上述したプロセスでは録音に含まれている特徴(すなわちイベント)に基づいて録音用のキーを生成している。したがって、既知の音声コンテンツに対してこのプロセスを実行し記憶フェーズの間に既知の音声コンテンツの特徴データベースを構築することができる。特徴データベースを構築したら、検索・取得フェーズの間に上述したプロセスを用いて未知の音声コンテンツから特徴を抽出することができる。そして、特徴データベースにアクセスし抽出済みの特徴に基づいて音声コンテンツを特定することができる。たとえば、未知の音声コンテンツに対して同じプロセスを実行しリアルタイムに(あるいはそれより速く)特徴を抽出することができる。そして、特徴データベース中の最良一致を用いて音声コンテンツを特定することができる。一実施形態では、音声コンテンツの最良一致は各所定間隔(たとえば10〜30秒間)ごとに報告することができる。
図9は図6と図7のプロセスで生成されるキーを用いて音声セグメントを特定する歌特定プロセスのフローチャートを示す図である。歌データベース(たとえば上述したもの)を用いて未知の歌(たとえばプロセス300のステップ304でウェブ・サイトからダウンロードした歌)を特定する。歌データベースのキー・シーケンス・フィールド(列)をデータベース・キーとして使用することができる。歌データベースのレコード(行)はハッシュ・テーブルに格納して直接探索の用に供するのが望ましい。特定プロセス800は図3のステップ308の典型的な実現例である。
ステップ802において、(たとえば図6と図7に示すプロセスを実行することにより)、特定すべき歌からキーを生成する。ステップ804では、複数の歌用のキーを含む歌データベースにおいて、ステップ804で生成するキーの組中の各キーを探索する。各キーのキー・シーケンス部を(テスト期間部とは対照的に)データベース・キーとして使用する。換言すると、特定すべき歌から取得されるキーに属すキー・シーケンスと同じキー・シーケンスを有するすべてのエントリを求めて歌データベースを探索する。歌データベース中の複数のキーが同じキー・シーケンスを有する可能性がある。また、歌データベース中の複数の歌が偶然に同じキー・シーケンスを共有する可能性もある。ステップ806において、(キー・シーケンスによって)歌データベース中の少なくとも1つのキーと一致したデータベース中の各キーごとに、探索したキーに付随するテスト期間と歌データベース中の各一致キーに付随するテスト期間との間の差をとることによりオフセットを計算する。
ステップ808では、オフセットをオフセット時間グループに集約する。
オフセット用のオフセット時間グループはキー生成の際に使用する時間グループから峻別(しゅんべつ)される。好適な実施形態によると、1つのオフセット時間グループは2〜10個のテスト期間に等しい。たとえば、各オフセット時間グループが5であるとすると、ステップ806で決まる差が0〜5であるすべてのキーの対は第1のオフセット時間グループに割り当て、差が6〜10であるすべてのキーの対は第2のオフセット時間グループに割り当てる。本発明の典型的な実施形態によると、各オフセット時間グループは5個のテスト期間に等しい。
ステップ810において、特定すべき歌中のキーと一致するキーを有する各歌ごとに、そしてステップ808で求め、歌データベース中の所定の歌用のキーを含む各オフセット時間グループ値ごとに、同じオフセット時間グループ値を有する一致キーの個数をカウントする。ステップ810は次に示すように視覚化することができる。これは実現方法の基礎としても使用することができる。すなわち、各行が、特定すべき歌と一致するキーを少なくとも1つ有する歌データベースに由来する歌に対応する一時テーブルを構築する。第1列は歌の名前を含む。第2列には、各歌の名前に隣接して、歌データベースにおいて名前付きの歌に付随するキーと特定すべき歌に由来する一致キーとで決まるオフセット時間グループ値が記載されている。ステップ810の完了後、第3列は第1列で特定した特定の歌に対応する(、第2列で特定したのと同じオフセット時間グループを有する)キー一致の個数のカウント値を含むことになる。そのテーブルは次に示すようになる。
Figure 2005522744
特定すべき歌がデータベース中に存在すると、1つの特定の時間グループのオフセット値が大きくなる。換言すると、キーの一致対の個数が大きくなると、時間グループの特定のオフセット値を有するようになる。上述した例では、タイトル2なる歌はカウント値が107であり、時間グループのオフセット値が3である。たとえば、時間グループのオフセットが大きくなるのは特定中の特定の録音が、歌データベース用にキーを生成するのに用いた歌の録音の数秒後に開始したからである、あるいは歌の小さなセグメントを特定中だからである。
ステップ812では、オフセットが同じで一致キーのカウント値が最大である歌データベースに由来する歌を特定する。判断ブロック814において、カウント値としきい値とを比較する。しきい値は特定の用途に基づいて、あるいは、歌が実際に一致するときにおける最大カウント値を最小値に、そしてテストする歌がデータベース中の歌と一致しない場合における最大カウント値を最大値に決めることにより設定することができる。使用するしきい値は上述したステップ602用に選定した特定の実施形態によっても決まる。これにより、キーの総数が決まる。
ステップ812においてはカウント値としきい値とを比較する代わりに、しきい値と、最大カウント値と特定すべき歌から生成したキーの総数との比とを比較することができる。別の実施形態はしきい値と、最大カウント値と残りのカウント値の平均との比とを比較するものである。これら後2者の実施形態は最大カウント値としきい値とを比較するものとみることもできる。ただし、これらの場合、しきい値は固定値ではない。特定すべき歌がデータベース中に存在しない場合のようにカウント値がしきい値基準を満たさない場合、歌特定プロセス800は終了する。この場合、特定すべき歌は特定できない旨を(たとえばユーザに)報告する追加のステップ群を設ける。他方、カウント値がしきい値基準を満たす場合、ステップ814においてカウント値が最大である(しきい値基準を満たす)歌を特定する情報を出力する。さらに別の実施形態では、本発明のプロセスを用いて歌のセグメントを特定している。
したがって、本発明はひずみと改ざんを処理るす能力の点で頑強な、歌を特定する方法を提供するものである。また、この方法は計算の複雑性とメモリ要件の点で効率的でもある。好適な実施形態では、イベント・ストリームを生成するプロセス、パーカッション・イベントをフィルタリングするプロセス、キーを生成するプロセス、および歌データベース中のキーを探索するプロセスはリアルタイムに実行する。好適な実施形態中のこれらのプロセスがコンピュータを使用する程度は十分に低いので、これらのプロセスは普通のパーソナル・コンピュータ上でリアルタイムに実行することができる。
本発明はハードウェア、ソフトウェア、またはハードウェアとソフトウェアの組み合わせで実現することができる。あらゆる種類のコンピュータ・システム(またはここで説明した方法を実施するように適合した他の装置)を用いることができる。ハードウェアとソフトウェアの典型的な組み合わせはロードして実行したときにコンピュータ・システムをそれが、ここで説明した方法を実行しうるように制御するコンピュータ・プログラムを備えた汎用コンピュータ・システムである。
本発明はコンピュータ・プログラム製品に組み込むこともできる。そのコンピュータ・プログラム製品はここで説明した方法の実現を可能にするすべての機能を含み、コンピュータ・システムにロードしたときにこれらの方法を実行しうるものである。この文脈におけるコンピュータ・プログラム手段またはコンピュータ・プログラムは情報処理能力を備えたシステムに特定の機能を直接に、あるいは(a)別の言語、コード、または標記への変換、および(b)異なる材料形態での再生産の一方または双方の後に実行させるように意図した1組の命令の、任意の言語、コード、または標記による任意の表現を意味する。各コンピュータ・システムは特に少なくとも1つのコンピュータおよび少なくとも1つのコンピュータ読み取り可能な媒体を備えている。このコンピュータ読み取り可能な媒体はコンピュータが当該コンピュータ読み取り可能な媒体からデータ、命令、メッセージまたはメッセージ・パケット、および他のコンピュータ読み取り可能な情報を読み取るのを可能にするものである。コンピュータ読み取り可能な媒体にはたとえばROM、フラッシュ・メモリ、ディスク駆動装置メモリ、CD−ROM、および他の永続記憶装置などの不揮発性メモリが含まれる。また、コンピュータ媒体にはたとえばRAM、バッファ、キャッシュ・メモリ、およびネットワーク回路などの揮発性記憶装置が含まれる。さらに、コンピュータ読み取り可能な媒体にはたとえばネットワーク・リンクおよび/またはネットワーク・インタフェース(たとえば有線ネットワークまたは無線ネットワーク)などの一時状態媒体中のコンピュータ読み取り可能な情報が含まれる。これにより、コンピュータはこのようなコンピュータ読み取り可能な情報を読み取ることが可能になる。
以上、本発明の好適な実施形態であると現在考えられるものを説明するとともに記述したが、当業者が理解しうるように、本発明の真の範囲の内で他の様々な変形をなすことができるとともに均等物で置換することができる。また、ここで説明した中心的な発明概念の内で特定の状況を本発明の教示に適合させうるように多くの変形をなすことができる。したがって、本発明はここで開示した特定の実施形態に限定されない。本発明は特許請求の範囲に属すすべての実施形態を含むものである。
本発明の好適な実施形態を実現することのできる典型的なネットワークの模式図である。 本発明の好適な実施形態に従って音楽を特定するソフトウェアのブロック図である。 本発明の一実施形態を用いてネットワーク上で音声ファイルの所在を突き止めて特定するプロセスのフローチャートを示す図である。 本発明の好適な実施形態に従い音声セグメントからイベントを特定するプロセスのフローチャートを示す図である。 本発明の好適な実施形態に従い音声セグメントからイベントを特定するプロセスのフローチャートを示す図である。 図4と図5に示したプロセスによって生成したイベントからキーを生成するプロセスのフローチャートを示す図である。 本発明の好適な実施形態に従いキー生成器バッファの内容からキーを生成するプロセスのフローチャートを示す図である。 本発明の好適な実施形態に従いパーカッション・イベントをフィルタリングするプロセスのフローチャートを示す図である。 キーを用いて2つの音声セグメントを比較するプロセスのフローチャートを示す図である。
符号の説明
100 ネットワーク
102 第1のウェブ・サーバ
104 第2のウェブ・サーバ
106 ネットワーク
108 第1の2方向データ・リンク
110 第2の2方向データ・リンク
112 第1のクライアント・コンピュータ
114 第2のクライアント・コンピュータ
116 第3の2方向データ・リンク
118 第4の2方向データ・リンク
120 著作権遵守クライアント・コンピュータ(CECC)
122 第5の2方向データ・リンク
124 コンピュータ読み取り可能な記憶媒体
200 音声コンテンツを特定するソフトウェア
202 ウェブ・サーバ・アプリケーション
204 ファイル・システム
206 サーバ側通信プロトコル・スタック
208 TCP/IP接続
210 クライアント通信プロトコル・スタック
212 著作権遵守アプリケーション
214 ウェブ探索モジュール
216 コンテンツ特定モジュール
218 キー・データベース

Claims (27)

  1. 音声コンテンツを特定する方法であって、
    時間依存パワー・スペクトラムを特徴とする音声信号を取得するステップと、
    前記スペクトラムを解析して複数の時間依存周波数成分を取得するステップと、
    前記複数の時間依存周波数成分中の複数のイベントを検出するステップと
    を備えた
    方法。
  2. 前記検出するステップが、
    前記複数の時間依存周波数成分中の複数の極値を検出するサブステップ
    を備えている、
    請求項1に記載の方法。
  3. さらに、
    隣接する時間依存周波数成分の組においてほぼ同時に生起するイベントの組を検出するサブステップと、
    さらなる処理のためにイベントの前記組の部分組を選択するサブステップと
    を備えた、
    請求項1に記載の方法。
  4. さらに、
    各イベントに対応する時間依存周波数成分のパワーを求めるステップ
    を備えた、
    請求項1に記載の方法。
  5. 前記解析するステップが、
    音声信号をサンプリングして複数の音声信号サンプルを取得するサブステップと、
    前記複数の音声信号サンプルから複数の部分組をとるサブステップと、
    前記複数の部分組の各々についてフーリエ変換を実行してフーリエ周波数成分の組を取得するサブステップと
    を備えた、
    請求項1に記載の方法。
  6. 前記解析するステップが、さらに、
    前記複数の部分組から選択した少なくとも2つの連続部分組から取得した対応するフーリエ周波数成分を平均するサブステップ
    を備えている、
    請求項5に記載の方法。
  7. 前記解析するステップが、さらに、
    フーリエ周波数成分を複数の半音周波数帯域に集約するサブステップ
    を備えている、
    請求項6に記載の方法。
  8. 前記検出するステップが、
    複数の時間依存周波数成分の第1の部分組の各々の第1の平均期間を用いて第1の移動平均をとって複数の時間依存周波数成分の各々ごとに1組の連続時間における平均パワーの第1のシーケンスを取得するサブステップと、
    複数の時間依存周波数成分の第2の部分組の各々の、前記第1の平均期間とは異なる第2の平均期間を用いて第2の移動平均をとって複数の時間依存周波数成分の各々ごとに1組の連続時間における平均パワーの第2のシーケンスを取得するサブステップと、
    前記第1の移動平均が前記第2の移動平均と交差する複数のイベント時間において複数の平均交差イベントを特定するサブステップと
    を備えている、
    請求項1に記載の方法。
  9. 前記第1の平均期間が(1/10)秒〜1秒であり、前記第2の平均期間が前記第1の平均期間の2〜8倍である、
    請求項8に記載の方法。
  10. さらに、
    複数のイベントを各々がある期間をカバーする複数の時間グループに集約するステップ
    を備えた、
    請求項1に記載の方法。
  11. さらに、
    前記複数の時間依存周波数成分の各々において各イベントを検出するのに応答して、多数の時間グループ内および多数の時間依存周波数成分内で生起した複数のイベントから少なくとも1つのイベントの組み合わせを選択するステップ
    を備えた、
    請求項10に記載の方法。
  12. 前記選択するステップが、
    各時間グループから同時に1つのイベントのみをとることにより、多数の時間グループ内および多数の時間依存周波数成分内で生起した複数のイベントから少なくとも1つのイベントの組み合わせを選択するサブステップ
    を備えている、
    請求項11に記載の方法。
  13. さらに、
    各々がイベントの前記組み合わせに関連付けるべき時間から成る少なくとも1つの前記組み合わせと前記組み合わせ中の各イベントに関する情報を含むキー・シーケンスとから複数のキーを形成するステップ
    を備えた、
    請求項11に記載の方法。
  14. 音声信号の記録の一部分を特定する特徴を形成する方法であって、
    前記一部分の音声信号のフーリエ変換を行ない、第1の複数の周波数にわたって放散される音声パワーの時系列を生成するステップと、
    前記周波数を各々が、隣接する一範囲の周波数を含むより小さな第2の複数の帯域にグループ化するステップと、
    前記帯域の各々におけるパワー放散イベントを検出するステップと、
    選定した時において互いに隣接する帯域に由来する前記パワー放散イベントをグループ化して前記特定する特徴を形成するステップと
    を備えた
    方法。
  15. さらに、
    前記帯域の各々におけるパワー放散を所定の期間にわたって積分するステップ
    を備えた、
    請求項14に記載の方法。
  16. 前記パワー放散イベントの各々が、エネルギー放散レベルを異なる長さの期間にわたって変化させた際における交差ポイントである、
    請求項15に記載の方法。
  17. 音声ストリームが音声信号の既知の記録の少なくとも一部分を含んでいるか否かを判断する方法であって、
    請求項14に記載の方法を用い前記既知の記録の前記部分に基づいて少なくとも1つの第1の特定する特徴を形成するステップと、
    前記第1の特定する特徴をデータベースに格納するステップと、
    請求項14に記載の方法を用い前記音声ストリームの一部分に基づいて少なくとも1つの第2の特定する特徴を形成するステップと、
    前記第1の特定する特徴と前記第2の特定する特徴とを比較して少なくとも選定した程度の類似性があるか否かを判断するステップと
    を備えた
    方法。
  18. 前記パワー放散イベントの各々が、エネルギー放散レベルを異なる長さの期間にわたって変化させた際における交差ポイントである、
    請求項17に記載の方法。
  19. 音声コンテンツを特定するプログラムでエンコードされたコンピュータ読み取り可能な媒体であって、前記プログラムが、
    時間依存パワー・スペクトラムを特徴とする音声信号を取得するステップと、
    前記スペクトラムを解析して複数の時間依存周波数成分を取得するステップと、
    前記複数の時間依存周波数成分中の複数のイベントを検出するステップと
    を実行する命令を備えている
    コンピュータ読み取り可能な媒体。
  20. 前記プログラムが、さらに、
    隣接する時間依存周波数成分の組においてほぼ同時に生起するイベントの組を検出するステップと、
    さらなる処理のために前記イベントの組の部分組を選択するステップと
    を実行する命令を備えている、
    請求項19に記載のコンピュータ読み取り可能な媒体。
  21. 前記解析するステップが、
    前記音声信号をサンプリングして複数の音声信号サンプルを取得するサブステップと、
    前記複数の音声信号サンプルから複数の部分組をとるサブステップと、
    前記複数の部分組の各々についてフーリエ変換を実行してフーリエ周波数成分の組を取得するサブステップと
    を備えている、
    請求項19に記載のコンピュータ読み取り可能な媒体。
  22. 前記検出するステップが、
    前記複数の時間依存周波数成分の第1の部分組の各々の第1の平均期間を用いて第1の移動平均をとって前記複数の時間依存周波数成分の各々ごとに連続する時間の組における平均パワーの第1のシーケンスを取得するサブステップと、
    前記複数の時間依存周波数成分の第2の部分組の各々の、前記第1の平均期間とは異なる第2の平均期間を用いて第2の移動平均をとって前記複数の時間依存周波数成分の各々ごとに連続する時間の組における平均パワーの第2のシーケンスを取得するサブステップと、
    前記第1の移動平均が前記第2の移動平均と交差する複数のイベント時間において複数の平均交差イベントを特定するサブステップと
    を備えている、
    請求項19に記載のコンピュータ読み取り可能な媒体。
  23. 音声信号の記録の一部分を特定する特徴を形成するプログラムでエンコードされたコンピュータ読み取り可能な媒体であって、前記プログラムが、
    前記一部分の音声信号のフーリエ変換を行ない、第1の複数の周波数にわたって放散される音声パワーの時系列を生成するステップと、
    前記周波数を各々が、隣接する一範囲の周波数を含むより小さな第2の複数の帯域に集約するステップと、
    前記帯域の各々におけるパワー放散イベントを検出するステップと、
    選定した時において互いに隣接する帯域に由来する前記パワー放散イベントを集約して前記特定する特徴を形成するステップと
    を実行する命令を備えている
    コンピュータ読み取り可能な媒体。
  24. 音声信号の記録を特定するシステムであって、
    特定すべき音声信号を受信するインタフェースと、
    前記音声信号から複数の時間依存周波数成分を取得するスペクトラム解析器と、
    前記時間依存周波数成分の各々において複数のイベントを検出するイベント検出器と、
    前記複数のイベントを周波数および時間によってグループ化し、前記複数のイベントに基づいて複数のキーを生成するキー生成器と
    を備えた
    システム。
  25. 前記イベント検出器がピーク検出器である、
    請求項24に記載のシステム。
  26. さらに、
    音声信号の既知の記録のキーのデータベースを備えた、
    請求項24に記載のシステム。
  27. 音声信号の記録の一部分を特定する特徴を形成するシステムであって、
    前記一部分の音声信号のフーリエ変換を行ない、第1の複数の周波数にわたって放散される音声パワーの時系列を生成する手段と、
    前記周波数を各々が、隣接する一範囲の周波数を含むより小さな第2の複数の帯域にグループ化する手段と、
    前記帯域の各々におけるパワー放散イベントを検出する手段と、
    選定した時において互いに隣接する帯域に由来する前記パワー放散イベントをグループ化して前記特定する特徴を形成する手段と
    を備えた
    システム。
JP2003585328A 2002-04-05 2002-04-05 音声コンテンツを特定する方法、音声信号の記録の一部分を特定する特徴を形成する方法およびシステム、音声ストリームが音声信号の既知の記録の少なくとも一部分を含んでいるか否かを判断する方法、コンピュータ・プログラム、音声信号の記録を特定するシステム Expired - Fee Related JP4267463B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2002/011091 WO2003088534A1 (en) 2002-04-05 2002-04-05 Feature-based audio content identification

Publications (2)

Publication Number Publication Date
JP2005522744A true JP2005522744A (ja) 2005-07-28
JP4267463B2 JP4267463B2 (ja) 2009-05-27

Family

ID=29247966

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003585328A Expired - Fee Related JP4267463B2 (ja) 2002-04-05 2002-04-05 音声コンテンツを特定する方法、音声信号の記録の一部分を特定する特徴を形成する方法およびシステム、音声ストリームが音声信号の既知の記録の少なくとも一部分を含んでいるか否かを判断する方法、コンピュータ・プログラム、音声信号の記録を特定するシステム

Country Status (8)

Country Link
EP (1) EP1497935B1 (ja)
JP (1) JP4267463B2 (ja)
KR (1) KR100754294B1 (ja)
CN (1) CN100545834C (ja)
AT (1) ATE386999T1 (ja)
AU (1) AU2002254568A1 (ja)
DE (1) DE60225190T2 (ja)
WO (1) WO2003088534A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007171772A (ja) * 2005-12-26 2007-07-05 Clarion Co Ltd 音楽情報処理装置、音楽情報処理方法および制御プログラム

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7711123B2 (en) * 2001-04-13 2010-05-04 Dolby Laboratories Licensing Corporation Segmenting audio signals into auditory events
US7598447B2 (en) * 2004-10-29 2009-10-06 Zenph Studios, Inc. Methods, systems and computer program products for detecting musical notes in an audio signal
US7539616B2 (en) * 2006-02-20 2009-05-26 Microsoft Corporation Speaker authentication using adapted background models
JP2009192725A (ja) * 2008-02-13 2009-08-27 Sanyo Electric Co Ltd 楽曲記録装置
CN104252480B (zh) * 2013-06-27 2018-09-07 深圳市腾讯计算机系统有限公司 一种音频信息检索的方法和装置
CN104900239B (zh) * 2015-05-14 2018-08-21 电子科技大学 一种基于沃尔什-哈达码变换的音频实时比对方法
CN104900238B (zh) * 2015-05-14 2018-08-21 电子科技大学 一种基于感知滤波的音频实时比对方法
CN105653596A (zh) * 2015-12-22 2016-06-08 惠州Tcl移动通信有限公司 一种基于音频对比的特定功能快速启动方法及其装置
CN105976828A (zh) * 2016-04-19 2016-09-28 乐视控股(北京)有限公司 一种声音区分方法和终端
US11294954B2 (en) * 2018-01-04 2022-04-05 Audible Magic Corporation Music cover identification for search, compliance, and licensing
KR102097534B1 (ko) * 2018-07-25 2020-04-06 주식회사 키네틱랩 사용자의 모션 인식 기반 댄스 게임을 제공하는 방법 및 장치
CN113112993B (zh) * 2020-01-10 2024-04-02 阿里巴巴集团控股有限公司 一种音频信息处理方法、装置、电子设备以及存储介质
US11816151B2 (en) 2020-05-15 2023-11-14 Audible Magic Corporation Music cover identification with lyrics for search, compliance, and licensing
CN111724824B (zh) * 2020-06-11 2021-12-03 北京凯视达信息技术有限公司 一种音频的储存和检索方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4450531A (en) * 1982-09-10 1984-05-22 Ensco, Inc. Broadcast signal recognition system and method
US4843562A (en) * 1987-06-24 1989-06-27 Broadcast Data Systems Limited Partnership Broadcast information classification system and method
DE3720882A1 (de) * 1987-06-24 1989-01-05 Media Control Musik Medien Verfahren und schaltungsanordnung zum automatischen wiedererkennen von signalfolgen
US5437050A (en) * 1992-11-09 1995-07-25 Lamb; Robert G. Method and apparatus for recognizing broadcast information using multi-frequency magnitude detection

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007171772A (ja) * 2005-12-26 2007-07-05 Clarion Co Ltd 音楽情報処理装置、音楽情報処理方法および制御プログラム

Also Published As

Publication number Publication date
CN1623289A (zh) 2005-06-01
ATE386999T1 (de) 2008-03-15
DE60225190T2 (de) 2009-09-10
EP1497935B1 (en) 2008-02-20
EP1497935A4 (en) 2006-12-06
EP1497935A1 (en) 2005-01-19
KR100754294B1 (ko) 2007-09-03
JP4267463B2 (ja) 2009-05-27
DE60225190D1 (de) 2008-04-03
KR20040101299A (ko) 2004-12-02
AU2002254568A1 (en) 2003-10-27
WO2003088534A1 (en) 2003-10-23
CN100545834C (zh) 2009-09-30

Similar Documents

Publication Publication Date Title
US6604072B2 (en) Feature-based audio content identification
US7031921B2 (en) System for monitoring audio content available over a network
US6574594B2 (en) System for monitoring broadcast audio content
US6748360B2 (en) System for selling a product utilizing audio content identification
US7085613B2 (en) System for monitoring audio content in a video broadcast
US7516074B2 (en) Extraction and matching of characteristic fingerprints from audio signals
KR101578279B1 (ko) 데이터 스트림 내 콘텐트를 식별하는 방법 및 시스템
KR100776495B1 (ko) 오디오 데이터베이스에서의 검색 방법
JP4267463B2 (ja) 音声コンテンツを特定する方法、音声信号の記録の一部分を特定する特徴を形成する方法およびシステム、音声ストリームが音声信号の既知の記録の少なくとも一部分を含んでいるか否かを判断する方法、コンピュータ・プログラム、音声信号の記録を特定するシステム
US20130139673A1 (en) Musical Fingerprinting Based on Onset Intervals
JP2005322401A (ja) メディア・セグメント・ライブラリを生成する方法、装置およびプログラム、および、カスタム・ストリーム生成方法およびカスタム・メディア・ストリーム発信システム
JP2004536348A (ja) 録音の自動識別
EP3575989B1 (en) Method and device for processing multimedia data
KR101002732B1 (ko) 온라인을 통한 디지털 컨텐츠 관리 시스템
Htun et al. Broadcast monitoring system using MFCC-based audio fingerprinting
JP4839721B2 (ja) 音響信号に対する情報の埋め込み装置
Htun Compact and Robust MFCC-based Space-Saving Audio Fingerprint Extraction for Efficient Music Identification on FM Broadcast Monitoring.
Ghorbani et al. Audio content security: attack analysis on audio watermarking
ARMONK Pitman et al.(43) Pub. Date: Jul. 25, 2002

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061024

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070110

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070423

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080902

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081125

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090114

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090203

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090218

R150 Certificate of patent or registration of utility model

Ref document number: 4267463

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120227

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120227

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130227

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130227

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140227

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees