説明

デジタル・オーディオ・トラック・セット認識システム

デジタル・オーディオ録音のトラック・セットを該録音に関するメタデータにマッチングさせるためのシステムおよび方法が提供される。トラック・セットについてトラック継続時間データが取得され、そのトラック継続時間が丸められる。丸められたトラック継続時間データに基づいて、第1データベースからマッチングレコードが検索される。ここで、結果として生じるそれぞれのマッチングレコードは識別子を有する。マッチングレコードに関連する識別子に基づいて、トラック継続時間データが第2データベースから検索される。2つ以上のマッチングレコードが検索された場合、第2データベース内のベストマッチングレコードを見つけるべく、第2データベースから取り出されたトラック継続時間データが、トラック・セットについて取得されたトラック継続時間データと比較される。第2データベースのベストマッチングレコード内に含まれるメタデータが出力される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンパクト・ディスク、DVD、あるいはそれらのデジタル化バージョンなどのオーディオ・トラックの標準の集合を認識し、これらのトラックに関して追加の情報をユーザに提供するためのコンピュータ・システムおよび方法を含めたシステムおよび方法に関する。
【背景技術】
【0002】
コンパクト・ディスクから目次データを読み出し、そのデータを使用してデータベース内の情報を検索し、またはコンパクト・ディスクの再生を監視し制御するための方法が存在する。たとえば、米国特許第6230192号および第6330593号(「‘192特許および‘593特許」)は、音楽録音を聴くユーザに補足的なコンテンツを提供することに関する。そのコンテンツは、録音の再生を制御し監視することができるインターネット・ウェブ・ブラウザを使用してアクセスされる。従来の技術を使用して、再生されるCDの識別子が計算される。識別子は、1/75秒のブロック(フレーム)単位で測定されるCD上のトラックの数および長さに基づいて判断され得る。たとえば、識別子は、トラックの長さの連結であり得る。実際に、識別子を短くするためトラックの長さは、より粗い単位、たとえば1/4秒の単位で表現され得る。
【0003】
識別子は、ユーザによって再生される録音に関するデータベースから情報を取り出すために使用される。具体的に識別子は、ユーザのコンピュータのCDプレーヤ内にディスクが検出されると計算され、特定のレコード会社によって作成されたCDに関する情報を含むウェブ・サイトをホストするリモート・サーバに送信される。サーバは、識別子をデータベース内の単一のマッチングレコードを検索するためのキーとして使用し、そのマッチングレコード内に格納された情報を出力する。この情報は、オーディオCDに関するウェブ・アドレス (URL) (アーティストのホーム・ページのウェブ・アドレスなど)、曲の名前などの単純なデータ、また格納されたURLを使用してアクセスされるビデオ・クリップを潜在的に含む補足的なエンタテインメントをも含む。
【0004】
こうしたシステムの諸欠点の中に、同じ録音のそれぞれ異なるCDリリースまたはプレスで発生し得るトラック時間の差を考慮していないという欠点がある。こうした差は、データベース内に格納された識別子にマッチ (match) しない識別子の計算をもたらすことがあり、それは結果として、録音に関するデータの取出しを妨げ得る。トラックの長さの差が十分に大きい場合、この問題は、識別子がCDから取り出されるデータよりも粗い単位で、たとえば1/75秒ではなく直近の1/4秒に丸められて表現される場合でも生じる。
【0005】
‘192特許および‘593特許は、2つのCDが同じかどうか判断するための「ファジィ比較アルゴリズム (fuzzy comparison algorithm) 」について記載することをも目的にしている。このアルゴリズムは、目次データから取得されたトラックの長さの一部を切り捨て、合計トラック時間と、2つのCDの間のトラック時間の差を合計することを伴う。次いで、これらの値を使用して、「2つのCDがどの程度よくマッチしているかについて示す」パーセンテージを判断する。これらの特許の記載内容からは、このアルゴリズムがどのように使用されるかは不明確である。それが再生中のCDとデータベース内のエントリの間のマッチングを見つけるために使用される場合、こうした手法には少なくとも2つの欠点がある。第1にこの計算は、単一のマッチングレコードを見つけるために、データベース内のありとあらゆるエントリについて実施されなければならず、それは極めて非能率的である。第2に、トラックの長さの一部を切り捨てると、2つの異なるCDが、短縮された同じトラック長をもたらし、マッチングとして識別され得る可能性を高める。あるいは、上述したように、同じCDの2つの異なるプレスまたはリリースが、短縮された異なるトラック長をもたらすことがあり、したがってマッチとして識別されない。いずれの場合も、データベース内の正確なマッチングレコードは見つけられない。
【0006】
したがって、‘192特許および‘593特許で取られる手法には、それらが計算時に、唯一のマッチングレコードを含むデータベース内で情報を記録し検索するための単一の識別子であると断定されるので、複数の欠点がある。録音のそれぞれ異なるプレスまたはリリース、ならびにPC上に格納されたそのデジタル化バージョンのトラック長の差を考慮に入れる、デジタル・オーディオ録音に関する情報を効率的に取り出すためのシステムが求められている。
【0007】
【特許文献1】米国特許第6230192号
【特許文献2】米国特許第6330593号
【発明の開示】
【発明が解決しようとする課題】
【0008】
本発明の目的は、デジタル・オーディオ録音(オーディオCDなど)の集合からの1組の近似のトラック継続時間を使用してデータベース内の情報を検索することによってデジタル・オーディオ録音に関する情報をユーザに提供するためのシステムおよび方法を提供することである。
【0009】
本発明の別の目的は、目次データがプレスまたはリリースの違いにより様々である場合でも、録音から読み出された目次データを使用してデータベース内のデジタル・オーディオ録音に関する情報を正確に検索するためのシステムおよび方法を提供することである。
【0010】
本発明の別の目的は、目次データ・シーケンスの過度の数の可能な順列を含める必要なしに、トラック継続時間データのばらつきを考慮に入れるためファジィ・データベースの複数のレコードを効率的に生成するためのシステムおよび方法を提供することである。
【課題を解決するための手段】
【0011】
一側面において、本発明は、デジタル・オーディオ録音からのトラック・セットを該録音に関するメタデータにマッチングさせるための方法およびコンピュータ・コードを提供する。トラック・セットについてのトラック継続時間データが取得され、そのトラック継続時間データが丸められる。丸められたトラック継続時間データに基づいて、第1データベース内のマッチングレコードが検索される。結果として生じるそれぞれのマッチングレコードは識別子を有している。マッチングレコードに関連する識別子に基づいて、トラック継続時間データが第2データベースから検索される。2つ以上のマッチングレコードが検索された場合、第2データベース内のベストマッチングレコードを見つけるべく、第2データベースから取り出されたトラック継続時間データは、トラック・セットについて取得されたトラック継続時間データと比較される。第2データベースのベストマッチングレコード内に含まれるメタデータが出力される。
【0012】
本発明の実施形態は、以下の特徴のうちの1つまたは複数を含み得る。それぞれのマッチングレコードについて、マッチングレコードがマッチング品質しきい値を満たすかどうか判断するため、第2データベースから取り出されるトラック継続時間データは、トラック・セットについて取得されたトラック継続時間データと比較され得る。トラック・セットについてのトラック継続データはネットワークを介してクライアント装置からサーバによって受信されることができ、メタデータは、ネットワークを介してサーバからクライアント装置に送信され得る。第1データベースのレコードは、デジタル・オーディオ録音の集合の各録音の目次データから計算されるトラック継続時間のシーケンスを丸めることによって生成され得る。各録音について計算されたトラック継続時間データ・シーケンスは、第2データベースから取得され得る。各録音について計算されたトラック継続時間シーケンスは、所定数のトラック数に切り捨てられ得る。第2データベースのベストマッチングレコードは、第2データベースから取り出されたトラック継続時間データ内の値のシーケンスと、トラック・セットについて取得されたトラック継続時間データ内の対応する値のシーケンスとの間の差の2乗の和を計算することによって判断され得る。
【0013】
トラック継続時間のシーケンスの丸めは、トラック継続時間シーケンス内の各値を、その値が丸め係数の整数倍の所定の範囲内にない場合には、選択された方向に丸め係数の直近の整数倍に丸めることを含み得る。またトラック・シーケンス内の各値は、その値が丸め係数の整数倍の所定の範囲内にある場合には、選択された方向と反対方向の両方に丸められ得る。
【0014】
シーケンス内の少なくとも1つの値が選択された方向と反対方向の両方に丸められる場合、トラック継続時間シーケンスから第1データベースの複数のレコードが生成され得る。複数のレコードは、選択された方向と反対方向の両方に丸められた値からもたらされるシーケンスのすべての可能な順列に対応し得る。
【0015】
別の側面において、本発明は、デジタル・オーディオ録音の集合についてマッチングデータベースのレコードを生成するための方法およびコンピュータ・コードを提供する。録音の集合の各録音について、トラック継続時間のシーケンスが取得される。トラック継続時間のシーケンス内の各値は、その値が丸め係数の整数倍の所定の範囲内にない場合には、選択された方向で丸め係数の直近の整数倍に丸められる。トラック継続時間のシーケンス内の各値は、その値が丸め係数の整数倍の所定の範囲内にある場合には、選択された方向と反対方向の両方に丸められる。シーケンス内の少なくとも1つの値が選択された方向と反対方向の両方に丸められる場合、複数のレコードがトラック継続時間のシーケンスから作成される。複数のレコードは、選択された方向と反対方向の両方に丸められた値からもたらされるシーケンスのすべての可能な順列に対応する。
【0016】
本発明の実施形態は、以下の特徴のうちの1つまたは複数を含み得る。録音の集合のうちの各録音のトラック継続時間のシーケンスは、それぞれが録音に関するメタデータを含む、各録音に対応するレコードを含む第2データベースから取得され得る。
【発明を実施するための最良の形態】
【0017】
一般的に述べると本発明は、コンピュータまたは他の再生装置を使用してデジタル・オーディオ録音内に格納された目次(TOC : table of contents)データからオーディオ・トラックの集合についてのトラック継続時間を導出することによって実施される。あるいは、トラック継続時間は、オーディオ・ファイルの集合(オーディオ・プレーヤを使用してデジタル化され、コンピュータ上に格納されたアルバムなど)から直接に読み出され得る。各トラックの長さ、および録音が分割されたトラック数に関する情報を含むトラック継続時間データは、ファジィ・アルゴリズムを使用して作成されたデータベース内で、タイトルおよびアーティストなど、オーディオ録音に関する情報を検索するために使用される。
【0018】
本明細書において、「コンピュータ」の用語は、単一のコンピュータ、または対話するコンピュータのシステムを指し得る。一般的に述べるとコンピュータは、ハードウェア・システム、ソフトウェア・オペレーティング・システム、および恐らくは1つまたは複数のソフトウェア・アプリケーション・プログラムの組合せである。コンピュータの例には、それに限定されないが、DOSなどのオペレーティング・システムを含むIBMタイプのパーソナル・コンピュータ(PC)、Microsoft Windows(登録商標)、OS/2またはLinux(登録商標);MAC OSなどのオペレーティング・システムを含むAppleコンピュータ;JAVA(登録商標) OSオペレーティング・システムを含むハードウェア;UNIX(登録商標)オペレーティング・システムを含むSun MicrosystemsおよびSilicon Graphics Workstationなどのグラフィカル・ワークステーション;PalmPilots;およびPocket PCが含まれる。
【0019】
「ネットワーク」は、データの伝送を可能にする2つ以上の任意のコンピュータ間の接続を意味する。ネットワークの一例は、唯一の例では決してないが、インターネットである。
【0020】
「ウェブ・ページ」は、それだけに限らないが、HTML (hypertext mark up language : ハイパーテキスト・マークアップ言語) またはVRML (virtual reality modeling language : 仮想現実モデリング言語)、ダイナミックHTML、XML (extended mark up language : 拡張マークアップ言語) またはその関連コンピュータ言語を含めて、マークアップ言語で書かれた任意のドキュメント、ならびに特定のインターネット・アドレスを介して到達可能なこうしたドキュメントの任意の集合、または特定のURL (Uniform Resource Locator : ユニフォーム・リソース・ロケータ) を介して取得可能な任意のドキュメントを意味する。
【0021】
「ウェブ・サイト」は、少なくとも1つのウェブ・ページ、より一般的にはまとまりのあるグループを形成するため仮想的に接続された複数のウェブ・ページを意味する。
【0022】
「ウェブ・ブラウザ」は、ウェブ・サイト上のウェブ・ページからのテキスト、グラフィックスまたはその両方を表示し得る任意のソフトウェア・プログラムを意味する。ウェブ・ブラウザの例には、それに限定されないが、Netscape NavigatorおよびMicrosoft Internet Explorer(登録商標)が含まれる。
【0023】
「ウェブ・サーバ」は、ウェブ・ブラウザに少なくとも1つのウェブ・ページをサービスすることができるコンピュータまたは他の電子装置を指す。
【0024】
語句「ウェブ・ページの表示」は、コンピュータ・ユーザが利用可能なウェブ・ページ上に情報の少なくとも一部をレンダリングするのに必要なすべての動作を含む。したがって、この語句は、それに限定されないが、静的なグラフィカル情報の静的な視覚表示、オーディオ情報の可聴の製作物、アニメーションの動画化された視覚表示、およびビデオ・ストリーム・データの視覚表示を含む。
【0025】
「メタデータ」は一般に、データを描写するデータを意味する。本発明の文脈ではそれは、デジタル・オーディオ録音の内容を記述するデータを意味する。こうしたメタデータは、たとえばアーティスト情報(名前、誕生日、ディスコグラフィなど)、アルバム情報(タイトル、レビュー、トラック・リスト、サウンド・サンプルなど)、関係のある情報(類似のアーティストおよびアルバムなど)、ならびに他のタイプの補足情報を含み得る。
【0026】
本発明の文脈では「フレーム」は、1/75秒 (2352バイトのデジタル・オーディオ・データ) である、コンパクト・ディスク上の最小の時間単位を指す。
【0027】
本発明では、ソフトウェア・アプリケーションは、当業者によって容易に選択され得る任意の適切なプログラミング言語で実質上書かれ得る。選択されるプロミング言語は、ソフトウェア・アプリケーションが実行されるコンピュータ、具体的にはそのコンピュータのオペレーティング・システムと互換性があるべきである。適切なプログラミング言語の例には、それに限られないが、Object Pascal、C、C++、CGI、Java(登録商標)およびJava(登録商標) Scriptsが含まれる。さらに、本発明の諸機能は、方法の一連の工程として示される場合、本発明がソフトウェア、ファームウェアまたはハードウェア、あるいはその組合せとして実施され得るように、データ・プロセッサによって操作されるための一連のソフトウェア命令として実装され得る。
【0028】
図1を参照すると、このシステムは、インターネットなどのネットワーク105に動作可能に接続された、たとえばウェブ・サーバであり得るトラック・セット (TS : track set) サーバ100を含んでいる。TSサーバ100は、ドラック継続時間データ、およびデジタル・オーディオ録音に関する情報を保持するフル・トラック・セット・データベース110を含む。TSサーバ100は、類似の情報を保持するファジィ・トラック・セット・データベース115をも含むが、以下で詳細に述べるように、マッチングキーを作成するためファジィ・アルゴリズムを使用することによって、より効率的なデータ取出しを可能にするように構成される。複数のクライアント装置120、クライアント1からクライアントnもネットワークに接続されており、これらのクライアント装置は、録音に関連する情報を取り出すため、コンパクト・ディスク(CD : compact disc)やローカル・ハード・ドライブなどの媒体からデジタル・オーディオ録音および関連のトラック継続時間データを読み出し、TSサーバ100にトラック継続時間データを送信するように構成される。クライアント装置は、たとえばパーソナル・コンピュータ (クライアント1) 、コンポーネントCDプレーヤ (クライアント2) およびポータブルCDプレーヤ (クライアント3) であり得る。クライアント装置の他の可能性も存在する。
【0029】
それぞれのクライアント120は、TSサーバ100と通信するためのハードウェアおよびソフトウェアを含む。たとえば、クライアント・コンピュータは、インターネットにアクセスするためのグラフィカル・ユーザ・インタフェース (GUI : graphical user interface) を備えたオペレーティング・システムを含むことができ、また好ましくは、ウェブ上のハイパーテキスト転送プロトコル (HTTP : Hypertext Transport Protocol) サーバからハイパーテキスト・マークアップ言語 (HTML : Hypertext Markup language) 形式を読み出し、またはそこに送信するように動作可能な Netscape Navigator (商標) やMicrosoft Internet Explorer (商標) など、グラフィカルなワールド・ワイド・ウェブ (ウェブ) ブラウザ・ソフトウェアを備える。クライアントCDプレーヤは、それがインターネットを経由してTSサーバと直接にまたはコンピュータを介して通信することを可能にする組込み型のインタフェースを含み得る。たとえば、CDプレーヤは、それがデータを送信し、インターネットにやはり接続されたコンピュータからデータを受信することを可能にするRS-232やUSBなどのデータ・インタフェースを含み得る。
【0030】
同様に、TSサーバ100は、クライアント120と通信するためのハードウェアおよびソフトウェアを含む。たとえば、TSサーバ100は、HTTP準拠のソフトウェアと、オペレーティング・システムと、インターネットを介してクライアント120とインタフェースするための共通ゲートウェイ・インタフェース (CGI : common gateway interface) ソフトウェアとを含み得る。あるいは、TSサーバ100およびクライアント120は、それがインターネットまたは他の何らかのタイプのネットワークを介して通信することを可能にするプロプライエタリのソフトウェアを実行し得る。
【0031】
図1の概略図は例示的なものにすぎず、各種の変形が可能であることが容易に理解されよう。たとえば、TSサーバ100は、ネットワークにやはり接続され得るローカル・エリア・ネットワーク (LAN : local area network) に接続されることができる。TSサーバ100は、複数のウェブ・サーバを使用して実装され得る。またネットワーク105は、ローカル・エリア・ネットワーク (LAN) 、またはインターネット以外の広域ネットワーク (WAN : wide area network) であり得る。
【0032】
あるいは、図2に示すように本発明は、クライアント−サーバ・アーキテクチュアなしに、および/またはネットワークなしに実施されることができ、そうではなく、本発明の実施に必要なすべてのソフトウェアおよびデータが、デジタル・オーディオ再生装置に関連する記憶装置上に格納され得る。たとえば、コンピュータ125は、コンパクト・ディスク129のデジタル・オーディオを再生するため、CDドライブ127を含み得る。コンピュータ125は、ローカルのファジィ・トラック・セット・データベース130、およびハード・ディスク140内に格納されたローカルのフル・トラック・セット・データベース135を含むこともでき、それぞれのデータベースが、TSサーバ100内の対応するデータベースで使用可能な情報の完全なセットまたはサブセットを含む。これらのデータベース130および135はCD ROM145からハード・ディスク140上にロードされることができ、データベースは、ネットワーク155を介してリモート・ホスト150からダウンロードされ、更新され得る。たとえば、データベースは、インターネットを介してウェブ・サイトからダウンロードされ得る。その他の変形もある。
【0033】
本発明の好ましい実施形態では、トラック継続時間データは、コンパクト・ディスク (CD) などのデジタル・オーディオ録音の目次 (TOC) データから取り出され得る。TOCデータは、デジタル・オーディオCDの規格を定める「Red Book」(Compact Disc Digital Audio System Description, Philips Corp.,1999年5月) で指定された形式を使用してCD内に格納される。TOCデータは、6桁の16進数の値で表現される、ディスク上のあらゆるトラックの連結されたトラック開始時間の列からなる。トラック開始時間はフレーム単位で提供され、各フレームは、1/75秒である。TOCデータの最後の6桁の値は、フレーム単位での合計ディスク時間である。たとえば、あるCDのTOCデータは、以下のように与えられ得る。
000096004187006F2500C77C010EF0015F9A01DC95021F28025439028F23
このTOCデータは、37分16秒15フレーム長のディスクを指定する:
028F23h=167715フレーム=2236.2秒=37分16.2秒
【0034】
このTOCデータは、以下のようにトラック開始時間を指定する。
トラック 開始時間
1 000096h
2 004187h
3 006F25h
4 00C77Ch
5 010EF0h
6 015F9Ah
7 01DC95h
8 021F28h
9 025439h
【0035】
したがって、たとえば7番目のトラックは、27分6秒505フレーム:01DC95h=122005フレーム=1626.7333秒=27分6.7333秒で開始する。もちろん、各トラックのトラック継続時間は、トラック開始時間および合計ディスク時間から計算され得る。
【0036】
上述したように、TSサーバ100は、たとえばアーティスト名、誕生日、ディスコグラフィ、アルバム・タイトル、レビュー、トラック・リスト、サウンド・サンプルなど、デジタル・オーディオ録音の既知の集合に関する情報を含むフル・トラック・セット・データベース110を維持する。このデータベースは、情報が入手可能な各録音に関連する一意のアルバム識別子(A_ID)によるキーをもつ。フル・トラック・セット・データベース110は、各録音の元のTOCデータ列内に設けられたトラック開始時間から計算される1組のトラック継続時間をも含む。
【0037】
TSサーバ100は、ファジィ・アルゴリズムを使用してフル・トラック・セット継続時間データから作成されるアルバム識別子のファジィ・トラック・セット・データベース115をも維持する。ファジィ・アルゴリズムは、クライアントから受信される入力トラック継続時間のばらつきを考慮に入れる。こうしたばらつきは、たとえばCDプレスの違いや様々なデジタル化手段のせいで生じ得る。以下で詳細に述べるように、TSサーバ100は、クライアントから入力トラック継続時間データ列を受信するときに、まずファジィ・トラック・セット・データベース115内の検索操作を実施してA_IDを取り出し、次いで、フル・トラック・セット・データベース110内の検索を実施して、A_IDに対応するメタデータを取り出す。
【0038】
本発明の好ましい実施形態では、図3に示すようにユーザは、コンパクト・ディスクをパーソナル・コンピュータなどのクライアント装置120内に挿入する (ステップ205) 。TOCデータは、一般に使用されているほとんどのオペレーティング・システムのもとで使用可能なCDアプリケーション・プログラム・インタフェース (API : application program interface) への標準の呼出しを使用してディスクから読み出される (ステップ210) 。次いで、TOCデータはトラック継続時間のシーケンスに変換され、ネットワーク105を介してTSサーバ100に送信される (ステップ215) 。あるいは、トラック継続時間のシーケンスは、PCまたは他の任意の記憶装置内に常駐するデジタル・ファイルの集合から導出され得る。
【0039】
TSサーバ100は、クライアント装置120から入力データを受信し、トラック継続時間のシーケンスを丸め (rounds)、および/またはその一部を切り捨てる (truncates) (ステップ220) 。たとえば、トラック継続時間入力データは、特定のトラック数、たとえば5に切り捨てられ得る。次いで、データは、特定の丸め係数、たとえば100フレームなどを使用して、特定の方向に丸められ得る。たとえばデータは切り捨てて丸められることがあり、その場合、各トラック継続時間は、下方向に直近の100フレームに丸められる。あるいは、データは切り上げて丸められることがあり、その場合、各トラック継続時間は、上方向に直近の100フレームに丸められる。さらなる代替方法として、データは直近の100フレームに切り上げまたは切り捨てて丸められることがあり、その場合、各トラック継続時間は、どちらが最短の距離かに応じて上方向または下方向に丸められる。もちろん、トラック継続時間を切捨て直近の100フレームに丸めることは、2つの最下位桁 (1および10の位の桁) を削除することによってトラック継続時間を切り捨てることと同じであることが当業者には理解されよう。したがって、この文脈では用語「丸め (rounding) 」は、「切捨て (truncating) 」と同じであることを理解されたい。
【0040】
丸められ、短縮された入力列を使用して、ファジィ・トラック・セット・データベース115内で検索が実施されて (ステップ225) 、いずれかのマッチングエントリ (matching entries) が存在するかどうかが判断され (ステップ230) 、A_IDが各マッチングに返される。マッチングが存在しない場合、TSサーバ100はその旨の応答をクライアント120に返送し (ステップ235) 、そうでない場合、TSサーバ100は、各A_IDについてフル・トラック・セット・データベース110の検索を実施する。2つ以上のマッチングがある場合、たとえば、(丸め前の) 入力列と、フル・トラック・セット・データベース110内の各A_IDに関連するフル・トラック継続時間データ列との間のトラック継続時間差の2乗和を計算することによって、最も近似するマッチングが判断され得る (ステップ240) 。最も近似するマッチング、またはその場合には唯一のマッチングが品質しきい値 (quality threshold) と比較され得る。トラック継続時間差の2乗和がマッチング品質しきい値以下である場合、このマッチングについてのA_IDに関連するメタデータがクライアント120に返送される (ステップ245および235)。
【0041】
TSサーバ100からの応答受信 (ステップ235) の後にクライアント120は、マッチングA_IDが返されたかどうかを判断し (ステップ250) 、次いで、返されたメタデータを表示し (ステップ255) または「マッチングなし」画面を適宜表示し得る (ステップ260) 。クライアント120によってその他の処理を行ってもよい。
【0042】
ファジィ・トラック・セット・データベース115を作成するために、ファジィ・アルゴリズムがフル・トラック・セット・データベース110内のトラック継続時間データに適用され、このフル・トラック・セット・データベースは上述したように、(元のTOCデータ列内のトラック開始時間から計算された) 各トラックのトラック継続時間を備える。第1のステップとしてファジィ・アルゴリズムは、トラック継続時間データを特定のトラック数(T)、たとえばT=5に切り捨てる。次いで、このアルゴリズムは、短縮されたデータ列の各トラック継続時間を以下のやり方で丸めを行い、丸められ短縮されたサブストリングを作成する。
【0043】
図4は、トラック継続時間を丸めるやり方を示している。特定の丸め係数(N)、たとえばN=100フレームが使用され、また特定の方向、たとえば下方向が選択され、その場合、各トラック継続時間は、直近の100フレームに丸められる。たとえば、11678フレームのトラック継続時間は11600フレームに丸められ、11744フレームの時間は11700フレームに丸められ、11863フレームの時間は11800フレームに丸められる。丸めの後に、有効桁だけが保持される必要があり、したがってこれらの時間は、それぞれ116、116および118と表現され得る。この時点までは、切捨ておよび丸めは、クライアントから受信されるトラック継続時間入力データに対して行われるものと類似する。しかし、ファジィ・トラック・セット・データベース内に格納されたデータに対して、以下の追加のステップが実施される。
【0044】
トラック継続時間の丸めは、フル・トラック継続時間データ列といくらか異なる入力列が別の結果に丸められることがあり、それによって、丸め境界効果 (rounding boundary effect) のせいでマッチングが見つけられないことになる可能性を生じさせる。たとえば、CDの第2のプレスが特定のトラックについて11678ではなく11744のトラック継続時間を有する場合、その時間は、116ではなく117に丸められる。これは、第2プレスからのCDについてマッチングがファジィ・トラック継続時間データベース内で見つけられないことをもたらす。この問題を回避するため、特定の録音、すなわち特定のアルバム識別子について、複数のエントリがファジィ・トラック・セット・データベース内に設けられ得る。
【0045】
ファジィ・トラック・セット・データベースの複数のエントリを作成するあるやり方は、各トラック継続時間の切上げによる丸めと切捨てによる丸めの両方を行い、これらの丸められた複数のトラック継続時間のあらゆる可能な順列を含めることである。しかし、この方法は、データベースがそれぞれのA_IDごとに2Tエントリ (ただしTは、短縮された列内のトラック数) を有するデータベースをもたらすので非効率的である。そうではなくトラック継続時間は、それが丸め係数(N)の整数倍の特定のフレーム数(P)の範囲内であれば、切上げと切捨ての両方による丸めが行われる。この丸め間隔(P)内のフレーム数は好ましくは、丸め係数(N)を4で割ったもの、たとえばP=N/4=25であるように選択され、それは、丸め中間点と丸め境界の間の等距離分割点である。
【0046】
丸め係数を4で割ると、冗長性と認識品質の間の最適均衡である丸め間隔(P)がもたらされる。比較すると、丸め係数を2で割ると、値が常に直近の丸め境界の丸め間隔の半分未満の距離内、たとえば100フレームの直近の整数倍の50フレーム内にあるので、あらゆる可能な順列が生成されることになる。また、以下で論じるように、丸め係数を4より大きい整数で割ると、マッチングが見落とされる確率が高まる。
【0047】
たとえば、図4を再び参照すると、値11678は、11700の25フレーム以内にあり、したがって切上げによる117への丸めと切捨てによる116への丸めの両方が行われる。一方、値11744は、100フレームの倍数の25フレーム以内にないので、したがって切り捨てられて117に丸められる。同様に値11863は、切り捨てられて118に丸められる。以下のように、複数のファジィ・トラック継続時間データ列が、丸められた値から生成される。
【0048】
図5を参照して、トラック継続時間データ列が、22655、11678および16628フレームのトラック継続時間をそれぞれ有する3つのトラックに切り捨てられるものとする (ステップ401) 。値22655 (トラック1) は100フレームの倍数 (すなわち22600または22700) の25フレーム内にないので、したがって切り捨てられて226に丸められる (ステップ402) 。値11678 (トラック2) は11700の25フレーム内にあるので、したがって116および117に丸められる (ステップ403) 。これらの2つの値は、そこから導出され得る複数のトラック継続時間シーケンスを示すため、ツリー構造の別個の枝として図示される。値11628 (トラック3) は100フレームの倍数の25フレーム内にないので、したがって、切り捨てられて116に丸められる (ステップ404) 。この値は、ツリー構造の2つの枝のそれぞれで図示されている。このプロセスは以下のトラック継続時間シーケンスをもたらし、各シーケンスが、ファジィ・トラック・セット・データベース内のエントリになる。
226 116 166
226 117 166
【0049】
このようして作成されるファジィ・トラック・セット・データベース内の複数のエントリを含めると、Pフレームの正確さが保証されるようになる。換言すると、フル・トラック継続時間データ列の対応するトラック継続時間のPフレーム内のトラック継続時間を有する (丸めおよび切捨て前の) 入力トラック継続時間列によって、ファジィ・トラック・セット・データベース内の正確なマッチングがもたらされる。上記の例では、それぞれ値22655、11678および11628の25フレーム内のトラック継続時間を有する入力列は、正確なマッチングをもたらす。
【0050】
上記の詳細な説明は例示的なものにすぎず、また本発明を限定するものでもない。本発明は、請求の範囲によって定められる。
【図面の簡単な説明】
【0051】
【図1】ネットワークを介してトラック・セット・サーバに接続された複数のクライアントを示すブロック図である。
【図2】ローカルのトラック継続時間データベースを含むコンピュータを示すブロック図である。
【図3】本発明の好ましい実施形態を示すフローチャートである。
【図4】本発明によって使用される丸め技術を示すブロック図である。
【図5】ファジィ・トラック継続時間データベースの複数のエントリの作成を示すブロック図である。

【特許請求の範囲】
【請求項1】
デジタル・オーディオ録音からのトラック・セットを前記録音に関するメタデータにマッチングさせるための方法であって、
前記トラック・セットについてのトラック継続時間データを取得するステップと、
前記トラック・セットについての前記トラック継続時間データを丸めるステップと、
丸められた前記トラック継続時間データに基づいて、第1データベースからマッチングレコードを検索するステップであって、検索される各マッチングレコードは識別子を有している、ステップと、
前記マッチングレコードに関連する前記識別子に基づいて第2データベースからトラック継続時間データを検索するステップと、
2つ以上のマッチングレコードが検索された場合、前記第2データベース内のベストマッチングレコードを見つけるべく、前記第2データベースから検索された前記トラック継続時間データを前記トラック・セットについて取得された前記トラック継続時間データと比較するステップと、
前記第2データベースの前記ベストマッチングレコードに含まれるメタデータを出力するステップと、
を備えることを特徴とする方法。
【請求項2】
それぞれのマッチングレコードについて、前記第2データベースから取り出された前記トラック継続時間データを前記トラック・セットについて取得された前記トラック継続時間データと比較して、それぞれのマッチングレコードがマッチング品質しきい値を満たすかどうか判断するステップをさらに備えることを特徴とする請求項1に記載の方法。
【請求項3】
前記トラック・セットについての前記トラック継続時間データは、ネットワークを介してクライアント装置からサーバによって受信され、前記メタデータは、前記ネットワークを介して前記サーバから前記クライアント装置に送信されることを特徴とする請求項1に記載の方法。
【請求項4】
前記第1データベースのレコードは、デジタル・オーディオ録音の集合の各録音についての目次データから計算されたトラック継続時間のシーケンスを丸めることによって作成されることを特徴とする請求項1に記載の方法。
【請求項5】
各録音についての前記計算されたトラック継続時間データのシーケンスは、前記第2データベースから取得されることを特徴とする請求項4に記載の方法。
【請求項6】
各録音についての前記計算されたトラック継続時間シーケンスは、所定のトラック数に切り捨てられることを特徴とする請求項4に記載の方法。
【請求項7】
前記トラック継続時間シーケンスの前記丸めは、
前記トラック継続時間シーケンス内の各値を、前記値が丸め係数の整数倍の所定の範囲内にない場合には、選択された方向に前記丸め係数の直近の整数倍に丸めるステップと、
前記トラック継続時間シーケンス内の各値を、前記値が前記丸め係数の整数倍の前記所定の範囲内にある場合には、前記選択された方向と反対の方向の両方に丸めるステップと
を含むことを特徴とする請求項4に記載の方法。
【請求項8】
前記シーケンス内の少なくとも1つの値が前記選択された方向と前記反対の方向の両方に丸められる場合、前記トラック継続時間シーケンスから前記第1データベースの複数のレコードを作成するステップをさらに備えることを特徴とする請求項7に記載の方法。
【請求項9】
前記複数のレコードは、前記選択された方向と前記反対の方向の両方に丸められた値からもたらされる前記シーケンスのすべての可能な順列に対応することを特徴とする請求項7に記載の方法。
【請求項10】
前記第2データベースの前記ベストマッチングレコードは、前記第2データベースから取り出された前記トラック継続時間データ内の値のシーケンスと、前記トラック・セットについて取得された前記トラック継続時間データ内の対応する値のシーケンスとの間の差の2乗和を計算することによって判断されることを特徴とする請求項1に記載の方法。
【請求項11】
デジタル・オーディオ録音の集合についてマッチングデータベースのレコードを作成する方法であって、
前記録音集合の各録音についてトラック継続時間シーケンスを取得するステップと、
前記トラック継続時間シーケンス内の各値を、前記値が丸め係数の整数倍の所定の範囲内にない場合には、選択された方向に前記丸め係数の直近の整数倍に丸めるステップと、
前記トラック継続時間シーケンス内の各値を、前記値が前記丸め係数の整数倍の前記所定の範囲内にある場合には、前記選択された方向と反対の方向の両方に丸めるステップと、
前記シーケンス内の少なくとも1つの値が前記選択された方向と前記反対の方向の両方に丸められる場合、前記トラック継続時間シーケンスから複数のレコードを作成するステップとを備え、
前記複数のレコードは、前記選択された方向と前記反対の方向の両方に丸められた値からもたらされる前記シーケンスのすべての可能な順列に対応することを特徴とする方法。
【請求項12】
前記録音集合の各録音の前記トラック継続時間シーケンスは、それぞれが前記録音に関するメタデータを備える、各録音に対応するレコードを含む第2データベースから取得されることを特徴とする請求項11に記載の方法。
【請求項13】
デジタル・オーディオ録音に関する情報を提供するためのシステムであって、
ネットワークを介して前記デジタル・オーディオ録音についてのトラック継続時間データを受信するように構成されたサーバと、
前記トラック継続時間データが丸められた後の前記トラック継続時間データに基づいて、マッチングレコードが見つけられることを可能にするように構成された第1データベースであって、各マッチングレコードは識別子を有している、第1データベースと、
前記第1データベース内で見つけられる前記マッチングレコードに関連する前記識別子に基づいてトラック継続時間データが取り出されることを可能にするように構成された第2データベースと、
前記第2データベースのベストマッチングレコードを見つけるため、前記第2データベースから取得された前記トラック継続時間データを前記録音について取得された前記トラック継続時間データと比較するための比較モジュールと、
前記第2データベースの前記ベストマッチングレコード内に含まれる前記録音に関する情報を前記ネットワークを介してクライアント装置に送信する出力モジュールと、
を備えることを特徴とするシステム。
【請求項14】
デジタル・オーディオ録音からのトラック・セットを前記録音に関するメタデータにマッチングさせるためのコンピュータ・コードであって、
前記トラック・セットについてトラック継続時間データを取得するためのコードと、
前記トラック・セットについての前記トラック継続時間データを丸めるためのコードと、
丸められた前記トラック継続時間データに基づいて、第1データベースからマッチングレコードを検索するためのコードであって、検索される各マッチングレコードは識別子を有している、コードと、
前記マッチングレコードに関連する前記識別子に基づいて第2データベースからトラック継続時間データを検索するためのコードと、
2つ以上のマッチングレコードが検索された場合、前記第2データベースのベストマッチングレコードを見つけるべく、前記第2データベースから検索された前記トラック継続時間データを前記トラック・セットについて取得された前記トラック継続時間データと比較するためのコードと、
前記第2データベースの前記ベストマッチングレコードに含まれるメタデータを出力するためのコードと、
を備えることを特徴とするコンピュータ・コード。
【請求項15】
それぞれのマッチングレコードについて、前記第2データベースから取り出された前記トラック継続時間データを前記トラック・セットについて取得された前記トラック継続時間データと比較して、それぞれのマッチングレコードがマッチング品質しきい値を満たすかどうかを判断するためのコードをさらに備えることを特徴とする請求項14に記載のコンピュータ・コード。
【請求項16】
前記トラック・セットの前記トラック継続時間は、ネットワークを介してクライアント装置からサーバによって受信され、前記メタデータは、前記ネットワークを介して前記サーバから前記クライアント装置に送信されることを特徴とする請求項14に記載のコンピュータ・コード。
【請求項17】
前記第1データベースのレコードは、デジタル・オーディオ録音の集合の各録音について目次データから計算されたトラック継続時間のシーケンスを丸めることによって作成されることを特徴とする請求項14に記載のコンピュータ・コード。
【請求項18】
各録音についての前記計算されたトラック継続時間データ・シーケンスは、前記第2データベースから取得されることを特徴とする請求項17に記載のコンピュータ・コード。
【請求項19】
各録音についての前記計算されたトラック継続時間シーケンスは、所定のトラック数に切り捨てられることを特徴とする請求項17に記載のコンピュータ・コード。
【請求項20】
前記トラック継続時間シーケンスの前記丸めのためのコードは、
前記トラック継続時間シーケンス内の各値を、前記値が丸め係数の整数倍の所定の範囲内にない場合には、選択された方向に前記丸め係数の直近の整数倍に丸めるためのコードと、
前記トラック継続時間シーケンス内の各値を、前記値が前記丸め係数の整数倍の前記所定の範囲内にある場合には、前記選択された方向と反対の方向の両方に丸めるためのコードと、
を含むことを特徴とする請求項17に記載のコンピュータ・コード。
【請求項21】
前記シーケンス内の少なくとも1つの値が前記選択された方向と前記反対の方向の両方に丸められる場合、前記トラック継続時間シーケンスから前記第1データベースの複数のレコードを作成するためのコードをさらに有することを特徴とする請求項20に記載のコンピュータ・コード。
【請求項22】
前記複数のレコードは、前記選択された方向と前記反対の方向の両方に丸められた値からもたらされる前記シーケンスのすべての可能な順列に対応することを特徴とする請求項20に記載のコンピュータ・コード。
【請求項23】
前記第2データベースの前記ベストマッチングレコードは、前記第2データベースから取り出された前記トラック継続時間データ内の値のシーケンスと、前記トラック・セットについて取得された前記トラック継続時間データ内の対応する値のシーケンスの間の差の2乗和を計算することによって判断されることを特徴とする請求項14に記載のコンピュータ・コード。
【請求項24】
デジタル・オーディオ録音の集合についてマッチングデータベースのレコードを作成するためのコンピュータ・コードであって、
前記録音集合の各録音のトラック継続時間シーケンスを取得するためのコードと、
前記トラック継続時間シーケンス内の各値を、前記値が丸め係数の整数倍の所定の範囲内にない場合には、選択された方向に前記丸め係数の直近の整数倍に丸めるためのコードと、
前記トラック継続時間シーケンス内の各値を、前記値が前記丸め係数の整数倍の前記所定の範囲内にある場合には、前記選択された方向と反対の方向の両方に丸めるためのコードと、
前記シーケンス内の少なくとも1つの値が前記選択された方向と前記反対の方向の両方に丸められる場合、前記トラック継続時間シーケンスから複数のレコードを生成するためのコードとを備え、
前記複数のレコードは、前記選択された方向と前記反対の方向の両方に丸められた値からもたらされる前記シーケンスのすべての可能な順列に対応することを特徴とするコンピュータ・コード。
【請求項25】
前記録音集合の各録音の前記トラック継続時間シーケンスは、それぞれが前記録音に関するメタデータを備える、各録音に対応するレコードを含む第2データベースから取得されることを特徴とする請求項24に記載の方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公表番号】特表2007−507761(P2007−507761A)
【公表日】平成19年3月29日(2007.3.29)
【国際特許分類】
【出願番号】特願2006−521837(P2006−521837)
【出願日】平成16年6月23日(2004.6.23)
【国際出願番号】PCT/US2004/020040
【国際公開番号】WO2005/017658
【国際公開日】平成17年2月24日(2005.2.24)
【出願人】(506033034)エイイーシー ワン ストップ グループ, インコーポレイテッド (1)
【氏名又は名称原語表記】AEC ONE STOP GROUP, INC.
【住所又は居所原語表記】4250 Coral Ridge Drive, Coral Springs, FL 33065, U.S.A.
【Fターム(参考)】