IP Library Granted Patent US 10,303,800
Granted Patent B2
US 10,303,800 · App. 14/636,474 · Granted May 28, 2019

System and method for optimization of audio fingerprint search

Inventors: Srinath Cheluvaraja (Carmel, IN); Ananth Nagaraja Iyer (Carmel, IN); Felix Immanuel Wyss (Zionsville, IN)
G06F17/30743G10L25/51
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 10,303,800
App. No.
14/636,474
Granted
May 28, 2019
Kind
B2
Abstract

A system and method are presented for optimization of audio fingerprint search. In an embodiment, the audio fingerprints are organized into a recursive tree with different branches containing fingerprint sets that are dissimilar to each other. The tree is constructed using a clustering algorithm based on a similarity measure. The similarity measure may comprise a Hamming distance for a binary fingerprint or a Euclidean distance for continuous valued fingerprints. In another embodiment, each fingerprint is stored at a plurality of resolutions and clustering is performed hierarchically. The recognition of an incoming fingerprint begins from the root of the tree and proceeds down its branches until a match or mismatch is declared. In yet another embodiment, a fingerprint definition is generalized to include more detailed audio information than in the previous definition.

Claims (47)

1. A computerized method of searching for audio fingerprints stored in a database within an audio fingerprint detection system, the method comprising the steps of:

a. dividing known audio files into frames that overlap;

b. extracting audio fingerprints for each frame from the known audio files, each audio fingerprint comprising a plurality of values extracted at least at a first resolution and at a second resolution, the second resolution having a higher resolution than the first resolution;

c. archiving the audio fingerprints into the database; and

d. comparing and classifying an incoming unknown audio stream wherein said comparing and classifying is based on the extent of the match of the fingerprints of the unknown audio stream with the fingerprints archived in the database, the database comprising a fingerprint tree comprising a plurality of nodes, each node of the plurality of nodes being associated with:

a cluster of similar fingerprints in accordance with a Hamming distance; and

a centroid corresponding to an average of the similar fingerprints of the cluster,

wherein the matching of fingerprints comprises:

i. computing, using the Hamming distance, a fingerprint distance between a plurality of first resolution values of a fingerprint of the fingerprints of the unknown audio stream and the centroid of a node;

ii. comparing a plurality of second resolution values of the fingerprint of the fingerprints of the unknown audio stream with child nodes of the node in response to determining that the fingerprint distance satisfies a threshold, each of the child nodes being associated with a sub-cluster of fingerprints of the cluster of the node;

iii. repeating steps (i) and (ii) until a node without child nodes is reached;

iv. applying a mask to check the fingerprints within the node reached in step (iii); and

v. returning matches to the system.

2. The method of claim 1 , wherein the frames have a length of 20 ms.

3. The method of claim 1 , wherein the archiving of step (c) further comprises:

a. assigning the fingerprints into clusters;

b. assigning the clusters into branches of the fingerprint tree; and

c. repeating steps (a) and (b) until a desired depth is obtained of the fingerprint tree.

4. The method of claim 1 , wherein the centroid comprises a frequently occurring binary value at each fingerprint location in the cluster.

5. The method of claim 1 , wherein the threshold comprises directional differences of successive perceptual filter bank amplitudes over successive instants.

6. The method of claim 1 , wherein the threshold comprises directional differences of successive perceptual filter bank amplitude values.

7. The method of claim 6 , wherein the values are recorded by maintaining parallel sets of binary values for different strengths.

8. A computerized method of searching for audio fingerprints stored in a database within an audio fingerprint detection system, the method comprising the steps of:

a. dividing known audio files into frames that overlap;

b. extracting audio fingerprints for each frame from the known audio files, each audio fingerprint comprising a plurality of values extracted at least at a first resolution and at a second resolution, the second resolution having a higher resolution than the first resolution;

c. archiving the audio fingerprints into the database, wherein each fingerprint is archived at a plurality of resolutions; and

d. comparing and classifying an incoming unknown audio stream, wherein said comparing and classifying is based on the extent of the match of the fingerprints of the unknown audio stream with the fingerprints archived in the database, the database comprising a fingerprint tree comprising a plurality of nodes, each node of the plurality of nodes being associated with:

a cluster of similar fingerprints in accordance with a Hamming distance; and

a centroid corresponding to an average of the similar fingerprints of the cluster,

wherein the matching is performed based on resolution, and

wherein the matching of fingerprints comprises:

i. computing, using a Hamming distance, a fingerprint distance between a plurality of first resolution values of a fingerprint of the fingerprints of the unknown audio stream and the centroid of a node;

ii. comparing a plurality of second resolution values of the fingerprint of the fingerprints of the unknown audio stream with child nodes of the node in response to determining that the fingerprint distance satisfies a threshold, each of the child nodes being associated with a sub-cluster of fingerprints of the cluster of the node;

iii. repeating steps (i) and (ii) until a node without child nodes is reached;

iv. applying a mask to check the fingerprints within the node reached in step (iii); and

v. returning matches to the system.

9. The method of claim 8 , wherein the frames have a length of 20 ms.

10. The method of claim 8 , wherein the archiving of step (c) further comprises:

a. assigning the fingerprints into clusters, wherein the fingerprints are assigned based on resolution;

b. assigning the clusters into branches of the fingerprint tree; and

c. repeating steps (a) and (b) until a desired depth is obtained of the fingerprint tree.

11. The method of claim 10 , wherein the resolution comprises a high resolution and a low resolution.

12. The method of claim 11 , wherein the high resolution comprises 16 bits.

13. The method of claim 11 , wherein the low resolution comprises 2 bits.

14. The method of claim 8 , wherein the centroid comprises a frequently occurring binary value at each fingerprint location in the cluster.

15. The method of claim 8 , wherein the matching is performed starting with lower resolution fingerprints and progressing towards higher resolution fingerprints.

16. The method of claim 15 , wherein a fingerprint mask is applied while performing the match at higher resolutions.

Assignments (6)
NOTICE OF SUCCESSION OF SECURITY INTERESTS AT REEL/FRAME 040815/0001 Recorded Feb 3, 2025
From: BANK OF AMERICA, N.A., AS RESIGNING AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR AGENT
Reel/Frame 070498/0001 →
CHANGE OF NAME Recorded Jun 6, 2024
From: GENESYS TELECOMMUNICATIONS LABORATORIES, INC.
To: GENESYS CLOUD SERVICES, INC.
Reel/Frame 067646/0452 →
MERGER Recorded Jul 1, 2018
From: INTERACTIVE INTELLIGENCE GROUP, INC.
To: GENESYS TELECOMMUNICATIONS LABORATORIES, INC.
Reel/Frame 046463/0839 →
SECURITY AGREEMENT Recorded Dec 5, 2016
From: GENESYS TELECOMMUNICATIONS LABORATORIES, INC., AS GRANTOR; ECHOPASS CORPORATION; INTERACTIVE INTELLIGENCE GROUP, INC.; BAY BRIDGE DECISION TECHNOLOGIES, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 040815/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2016
From: INTERACTIVE INTELLIGENCE, INC.
To: INTERACTIVE INTELLIGENCE GROUP, INC.
Reel/Frame 040647/0285 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 3, 2015
From: CHELUVARAJA, SRINATH; IYER, ANANTH NAGARAJA; WYSS, FELIX IMMANUEL
To: INTERACTIVE INTELLIGENCE GROUP, INC.
Reel/Frame 035074/0459 →
Continuity (2)
Provisional Application 61947834 · Mar 4, 2014
Related Publication 20150254338A1 · Sep 10, 2015