IP Library Granted Patent US 7,013,301
Granted Patent B2
US 7,013,301 · App. 10/668,926 · Granted Mar 14, 2006

Audio fingerprinting system and method

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,013,301
App. No.
10/668,926
Granted
Mar 14, 2006
Kind
B2
Abstract

An audio fingerprinting system and method. A server receives an audio fingerprint of a first audio piece, searches a database for the audio fingerprint, retrieves an audio profile vector associated with the audio fingerprint, updates user preference information based on the audio profile vector, and selects a second audio piece based on the user preference information. The audio fingerprint is generated by creating a matrix based on the frequency measurements of the audio piece, and performing a singular value decomposition of the matrix. To expedite the search of the database and to increase matching accuracy, a subset of candidates in the database is identified based on the most prominent musical notes of the audio piece, and the search is limited to the identified subset. One of the attributes of the audio profile vector is a particular audio class. An identifier for the audio class is generated based on an average of audio fingerprints of the audio pieces belonging to the audio class.

Claims (71)

1. A computer-implemented method for audio fingerprinting comprising:

receiving an audio signal associated with an audio piece;

obtaining a plurality of frequency measurements of the audio signal;

building an N×M matrix A based on the frequency measurements;

performing a singular value decomposition on the matrix A for generating an audio fingerprint, wherein A=USV T , and wherein U is an N×M orthogonal matrix, S in an M×M diagonal matrix, and V T is a transpose of an M×M orthogonal matrix;

retrieving one or more rows of matrix V T ; and

storing the retrieved rows of matrix V T in a data store in association with the audio piece as the audio fingerprint for the audio piece, wherein a request including the retrieved rows of matrix V T is received by an application program and information stored in a database for the audio piece identified and retrieved based on the rows of matrix V T in the request.

2. The method of claim 1 , wherein rows of the matrix A represent time, and columns of the matrix A represent the frequency measurements.

3. The method of claim 1 , wherein the information is an audio profile vector storing acoustic analysis data for the audio piece.

4. A computer-implemented system for audio fingerprinting comprising:

an audio file reader reading an audio file storing an audio piece;

a processor coupled to the audio file reader, the processor being configured to:

obtain a plurality of frequency measurements of audio signals associated with the audio piece;

build an N×M matrix A based on the frequency measurements;

perform a singular value decomposition on the matrix A for generating an audio fingerprint, wherein A=USV T , and wherein U is an N×M orthogonal matrix, S in an M×M diagonal matrix, and V T is a transpose of an M×M orthogonal matrix; and

retrieve one or more rows of matrix V T ;

a data store coupled to the processor storing the retrieved rows of matrix V T in association with the audio piece as the audio fingerprint for the audio piece; and

a database storing information for a plurality of audio pieces, wherein a request including the retrieved rows of matrix V T is received by an application program and information for the audio piece stored in the database identified and retrieved based on the rows of matrix V T in the request.

5. The system of claim 4 , wherein rows of the matrix A represent time, and columns of the matrix A represent the frequency measurements.

6. The system of claim 4 , wherein the information is an audio profile vector storing acoustic analysis data for the audio piece.

7. An article of manufacture comprising a computer readable medium having computer usable program code containing executable instructions that, when executed, cause a computer to perform the steps of:

obtaining a plurality of frequency measurements of an audio signal associated with an audio piece;

building an N×M matrix A based on the frequency measurements;

performing a singular value decomposition on the matrix A for generating an audio fingerprint, wherein A=USV T , and wherein U is an N×M orthogonal matrix, S in an M×M diagonal matrix, and V T is a transpose of an M×M orthogonal matrix;

retrieving one or more rows of matrix V T ; and

storing the retrieved rows of matrix V T in a data store in association with the audio piece as the audio fingerprint for the audio piece, wherein a request including the retrieved rows of matrix V T is received by an application program and in formation stored in a database for the audio piece identified and retrieved based on the rows of matrix V T in the request.

8. The article of manufacture of claim 7 , wherein rows of the matrix A represent time, and columns of the matrix A represent the frequency measurements.

9. The method of claim 3 further comprising recommending a second audio piece based on the acoustic analysis data.

10. The method of claim 3 , wherein the audio profile vector quantifies a degree of similarity of the audio piece to audio pieces classified into a particular audio class.

11. The method of claim 10 further comprising generating an identifier for the particular audio class, the generating including:

selecting audio pieces associated with the particular audio class;

computing a second audio fingerprint for each selected audio piece;

calculating an average of the computed second audio fingerprints;

associating the calculated average to the particular audio class; and

storing the calculated average in a data store as the identifier of the particular audio class.

12. The method of claim 11 , wherein computing of the second audio fingerprint comprises:

obtaining from a particular audio signal associated with the selected audio piece a plurality of frequency measurements;

building an N×M matrix A′ based on the frequency measurements;

performing a singular value decomposition on the matrix A′, wherein A′=U′S′V T ′, and wherein U′ is an N×M orthogonal matrix, S′ in an M×M diagonal matrix, and V T ′ is a transpose of an M×M orthogonal matrix;

retrieving one or more rows of matrix V T ′; and

associating the retrieved rows of matrix V T ′with the selected audio piece.

13. The method of claim 12 , wherein rows of the matrix A′ represent time, and columns of the matrix A′ represent the frequency measurements.

14. The method of claim 1 , further comprising generating an index of the audio piece, the generating including:

automatically obtaining from the audio signal associated with the audio piece a list of musical notes included in the audio piece;

determining from the audio signal a prominence of the musical notes in the audio piece; and

selecting a pre-determined number of most prominent musical notes in the audio piece as the index.

15. The method of claim 14 , wherein the selected musical notes are translated to musical note numbers, and the index includes the translated musical note numbers.

16. The method of claim 14 , wherein data stored in the database is organized into one or more groups, wherein each group is identified by a particular index.

17. The method of claim 16 , wherein a search of the database for the information for the audio piece limited to a group identified by the generated index.

18. The system of claim 4 , wherein the processor is further configured to recommend a second audio piece based on the acoustic analysis data.

19. The system of claim 6 , wherein the audio profile vector quantifies a degree of similarity of the audio piece to audio pieces classified into a particular audio class.

20. The system of claim 19 , wherein the processor is further configured to generate an identifier for the particular audio class, the generating including:

selecting audio pieces associated with the particular audio class;

computing a second audio fingerprint for each selected audio piece;

calculating an average of the computed second audio fingerprints;

associating the calculated average to the particular audio class; and

storing the calculated average in a data store as the identifier of the particular audio class.

21. The system of claim 20 , wherein computing of the second audio fingerprint comprises:

obtaining from a particular audio signal associated with the selected audio piece a plurality of frequency measurements;

building an N×M matrix A′ based on the frequency measurements;

performing a singular value decomposition on the matrix A′, wherein A′=U′S′V T ′, and wherein U′ is an N×M orthogonal matrix, S′ in an M×M diagonal matrix, and V T ′ is a transpose of an M×M orthogonal matrix;

retrieving one or more rows of matrix V T ′; and

associating the retrieved rows of matrix V T ′ with the selected audio piece.

22. The system of claim 21 , wherein rows of the matrix A′ represent time, and columns of the matrix A′ represent the frequency measurements.

23. The system of claim 4 , wherein the processor is further configured to generate an index of the audio piece, the generating including:

automatically obtaining from the audio signal associated with the audio piece a list of musical notes included in the audio piece;

determining from the audio signal a prominence of the musical notes in the audio piece; and

selecting a pre-determined number of most prominent musical notes in the audio piece as the index.

24. The system of claim 23 , wherein the selected musical notes are translated to musical note numbers, and the index includes the translated musical note numbers.

25. The system of claim 23 , wherein data stored in the database is organized into one or more groups, wherein each group is identified by a particular index.

26. The system of claim 25 , wherein a search of the database for the information for the audio piece limited to a group identified by the generated index.

Assignments (18)
RELEASE (REEL 054066 / FRAME 0064) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063605/0001 →
RELEASE (REEL 053473 / FRAME 0001) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063603/0001 →
SECURITY INTEREST Recorded May 8, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: ARES CAPITAL CORPORATION
Reel/Frame 063574/0632 →
SECURITY INTEREST Recorded Apr 28, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: CITIBANK, N.A.
Reel/Frame 063561/0381 →
SECURITY AGREEMENT Recorded Jan 31, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: BANK OF AMERICA, N.A.
Reel/Frame 063560/0547 →
RELEASE (REEL 042262 / FRAME 0601) Recorded Oct 13, 2022
From: CITIBANK, N.A.
To: GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC
Reel/Frame 061748/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENTS LISTED ON SCHEDULE 1 RECORDED ON 6-9-2020 PREVIOUSLY RECORDED ON REEL 053473 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SUPPLEMENTAL IP SECURITY AGREEMENT. Recorded Oct 7, 2020
From: A.C. NIELSEN (ARGENTINA) S.A.; A.C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A
Reel/Frame 054066/0064 →
SUPPLEMENTAL SECURITY AGREEMENT Recorded Jun 9, 2020
From: A. C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NIELSEN UK FINANCE I, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A.
Reel/Frame 053473/0001 →
SUPPLEMENTAL SECURITY AGREEMENT Recorded Apr 13, 2017
From: GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE DIGITAL VENTURES, LLC
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 042262/0601 →
RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Feb 8, 2017
From: JPMORGAN CHASE BANK, N.A.
To: GRACENOTE, INC.; CASTTV INC.; TRIBUNE MEDIA SERVICES, LLC; TRIBUNE DIGITAL VENTURES, LLC
Reel/Frame 041656/0804 →
SECURITY INTEREST Recorded Mar 19, 2014
From: GRACENOTE, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 032480/0272 →
MERGER Recorded Feb 8, 2012
From: AMPLIFIED MUSIC SERVICES, INC.
To: AMPLIFIED MUSIC SERVICES, INC.; TUNEUP MEDIA, INC.
Reel/Frame 027690/0279 →
CHANGE OF NAME Recorded Feb 8, 2012
From: RESONANCE MEDIA SERVICES, INC.
To: AMPLIFIED MUSIC SERVICES, INC.
Reel/Frame 027690/0214 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 25, 2011
From: TUNE UP MEDIA, INC.; AMPLIFIED MUSIC SERVICES, INC.
To: GRACENOTE, INC.
Reel/Frame 026348/0993 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 6, 2009
From: MUSICIP CORPORATION
To: RESONANCE MEDIA SERVICES, INC.
Reel/Frame 022645/0294 →
CHANGE OF NAME Recorded Aug 21, 2006
From: PREDIXIS CORPORATION
To: MUSICIP CORPORATION
Reel/Frame 018207/0020 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 28, 2005
From: PARASOFT CORPORATION
To: PREDIXIS CORPORATION
Reel/Frame 016432/0501 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2003
From: HOLM, FRODE; HICKEN, WENDELL T.
To: PARASOFT CORPORATION
Reel/Frame 014542/0282 →