System and method for recognizing audio pieces via audio fingerprinting
First Claim
1. An audio recognition method comprising:
- receiving an audio fingerprint of a musical piece from a client device;
comparing the received audio fingerprint against a plurality of stored audio fingerprints for a match;
determining if the received audio fingerprint corresponds to a particular one of the stored audio fingerprints;
if the received audio fingerprint corresponds to the particular one of the stored audio fingerprints;
retrieving an audio profile vector stored in association with the particular one of the stored audio fingerprints, the audio profile vector including at least N numerical values quantifying N acoustic attributes of the musical piece, wherein N>
0, and wherein at least one of the acoustic attributes is tempo, and the associated numerical value quantifies the tempo of the musical piece based on an automatic processing of audio signals of the musical piece by a music profiling engine; and
transmitting information stored in association with the retrieved audio profile vector to the client device for doing at least one of generating a music playlist, making music related recommendations, and making other music-related selections; and
if the received audio fingerprint does not correspond to the particular one of the stored audio fingerprints, prompting the client device for generating the audio profile vector.
18 Assignments
0 Petitions
Accused Products
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.
129 Citations
22 Claims
-
1. An audio recognition method comprising:
-
receiving an audio fingerprint of a musical piece from a client device; comparing the received audio fingerprint against a plurality of stored audio fingerprints for a match; determining if the received audio fingerprint corresponds to a particular one of the stored audio fingerprints; if the received audio fingerprint corresponds to the particular one of the stored audio fingerprints; retrieving an audio profile vector stored in association with the particular one of the stored audio fingerprints, the audio profile vector including at least N numerical values quantifying N acoustic attributes of the musical piece, wherein N>
0, and wherein at least one of the acoustic attributes is tempo, and the associated numerical value quantifies the tempo of the musical piece based on an automatic processing of audio signals of the musical piece by a music profiling engine; andtransmitting information stored in association with the retrieved audio profile vector to the client device for doing at least one of generating a music playlist, making music related recommendations, and making other music-related selections; and if the received audio fingerprint does not correspond to the particular one of the stored audio fingerprints, prompting the client device for generating the audio profile vector. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. An audio recognition method comprising:
-
receiving an audio fingerprint of an audio piece; comparing the received audio fingerprint against a plurality of stored audio fingerprints for a match; identifying the audio piece responsive to a match of the audio fingerprint; and retrieving information stored in association with the identified audio piece, wherein the audio fingerprint is a representation of matrix VT generated from a singular value decomposition (SVD) of an N×
M matrix A, the matrix A being built based on frequency measurements of audio signals associated with the audio piece, wherein SVD(A)=USVT, where U is an N×
M orthogonal matrix, S in an M×
M diagonal matrix, and VT is a transpose of an M×
M orthogonal matrix. - View Dependent Claims (15)
-
-
16. An audio recognition system comprising:
-
a first data store storing a plurality of audio fingerprints for a plurality of audio pieces; one or more processors; one or more memory devices operably coupled to the one or more processors storing program instructions therein, each of the one or more processors being operable to execute one or more of the program instructions, the program instructions including; receiving an audio fingerprint of a particular musical piece from a client device; comparing the received audio fingerprint against the plurality of stored audio fingerprints for a match; determining if the received audio fingerprint corresponds to a particular one of the stored audio fingerprints; retrieving an audio profile vector stored in association with the particular one of the stored audio fingerprints if the received audio fingerprint corresponds to the particular one of the stored audio fingerprints, the audio profile vector including at least N numerical values quantifying N acoustic attributes of the musical piece, wherein N>
0, and wherein at least one of the acoustic attributes is tempo, and the associated numerical value quantifies the tempo of the musical piece based on an automatic processing of audio signals of the audio piece by a music profiling engine;transmitting information stored in association with the retrieved audio profile vector to the client device for doing at least one of generating a music playlist, making music related recommendations, and making other music-related selections; and prompting the client device for generating the audio profile vector if the received audio fingerprint does not correspond to the particular one of the stored audio fingerprints. - View Dependent Claims (17, 18, 19, 20)
-
-
21. An audio recognition system comprising:
-
a first data store storing a plurality of audio fingerprints for a plurality of audio pieces; one or more processors; one or more memory devices operably coupled to the one or more processors storing program instructions therein, each of the one or more processors being operable to execute one or more of the program instructions, the program instructions including; receiving an audio fingerprint of a particular audio piece; comparing the received audio fingerprint against the plurality of stored audio fingerprints for a match; identifying the audio piece responsive to a match of the audio fingerprint; and retrieving information stored in association with the identified audio piece, wherein the audio fingerprint is a representation of matrix VT generated from a singular value decomposition (SVD) of an N×
M matrix A, the matrix A being built based on frequency measurements of audio signals associated with the audio piece, wherein SVD(A)=USVT, where U is an N×
M orthogonal matrix, S in an M×
M diagonal matrix, and VT is a transpose of an M×
M orthogonal matrix. - View Dependent Claims (22)
-
Specification