IP Library Granted Patent US 10,885,109
Granted Patent B2
US 10,885,109 · App. 15/475,459 · Granted Jan 5, 2021

Multiple stage indexing of audio content

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,885,109
App. No.
15/475,459
Granted
Jan 5, 2021
Kind
B2
Abstract

Techniques of content unification are disclosed. In some example embodiments, a computer-implemented method comprises: determining clusters based a comparison of a plurality of audio content using a first matching criteria, each cluster of the plurality of clusters comprising at least two audio content from the plurality of audio content; for each cluster of the plurality of clusters, determining a representative audio content for the cluster from the at least two audio content of the cluster; loading the corresponding representative audio content of each cluster into an index; matching the query audio content to one of the representative audio contents using a first matching criteria; determining the corresponding cluster of the matched representative audio content; and identifying a match between the query audio content and at least one of the audio content of the cluster of the matched representative audio content based on a comparison using a second matching criteria.

Claims (48)

1. A computer-implemented method comprising:

determining, by at least one hardware processor, a plurality of clusters based on a comparison of a plurality of audio contents using a first matching criteria, each cluster of the plurality of clusters comprising at least two audio contents from the plurality of audio contents;

for each cluster of the plurality of clusters, determining, by the at least one hardware processor, a representative audio content for the cluster from the at least two audio contents of the cluster;

loading, by the at least one hardware processor, the corresponding representative audio content of each cluster in the plurality of clusters into an index, the index including the representative audio content stored in association with a hash value, the hash value based on permutations of a binary vector formed using a spectral representation of the audio content;

generating a first comparison, by the at least one hardware processor, of a query audio content to each one of the representative audio contents in the index using the first matching criteria, the first comparison including a comparison of at least one of a content duration ratio, a bit error rate at a matching location, or a length of matching positions;

matching, by the at least one hardware processor, the query audio content to one of the representative audio contents based on the generated first comparison;

determining, by the at least one hardware processor, the corresponding cluster of the matched one of the representative audio contents;

generating a second comparison, by the at least one hardware processor, of the query audio content to each one of the at least two audio contents of the determined corresponding cluster of the matched one of the representative audio contents using a second matching criteria different from the first matching criteria; and

identifying, by the at least one hardware processor, a match between the query audio content and at least one of the audio contents of the determined corresponding cluster of the matched one of the representative audio contents based on the generated second comparison of the determined corresponding cluster using the first and the second matching criteria, the match used to determine similarity of the queried audio content to the representative audio content;

wherein the determining the plurality of clusters comprises comparing fingerprint data of each of the plurality of audio contents using the first matching criteria, the comparison including a granular comparison based on a sub-cluster of each of the plurality of clusters.

2. The computer-implemented method of claim 1 , wherein the fingerprint data comprises a nano-fingerprint.

3. The computer-implemented method of claim 2 , wherein a query grid is generated for each query nano-fingerprint using a set of blocks of the query nano-fingerprint, the set of blocks having a width of two blocks, a list of hash values determined using the query grid.

4. The computer-implemented method of claim 1 , wherein the corresponding representative audio content of each cluster in the plurality of clusters is the only audio content of the cluster that is loaded into the index.

5. The computer-implemented method of claim 1 , wherein the matching of the query audio content to one of the representative audio contents comprises comparing fingerprint data of the query audio content with fingerprint data of each of the representative audio contents in the index using the first matching criteria.

6. The computer-implemented method of claim 5 , wherein the fingerprint data comprises a nano-fingerprint.

7. The computer-implemented method of claim 1 , wherein comparing the query audio content to each one of the at least two audio contents of the determined corresponding cluster comprises comparing fingerprint data of the query audio content with fingerprint data of each one of the at least two audio contents of the determined corresponding cluster using the second matching criteria.

8. The computer-implemented method of claim 7 , wherein the fingerprint data comprises a micro-fingerprint.

9. The computer-implemented method of claim 7 , wherein the fingerprint data comprises a full fingerprint.

10. The computer-implemented method of claim 1 , wherein each one of the plurality of audio contents comprises a song.

11. A system comprising:

at least one processor; and

a non-transitory computer-readable medium storing executable instructions that, when executed, cause the at least one processor to perform operations comprising:

determining a plurality of clusters based on a comparison of a plurality of audio contents using a first matching criteria, each cluster of the plurality of clusters comprising at least two audio contents from the plurality of audio contents;

for each cluster of the plurality of clusters, determining a representative audio content for the cluster from the at least two audio contents of the cluster;

loading the corresponding representative audio content of each cluster in the plurality of clusters into an index, the index including the representative audio content stored in association with a hash value, the hash value based on permutations of a binary vector formed using a spectral representation of the audio content;

generating a first comparison of a query audio content to each one of the representative audio contents in the index using the first matching criteria, the first comparison including at a comparison of at least one of a content duration ratio, a bit error rate at a matching location, or a length of matching positions;

matching the query audio content to one of the representative audio contents based on the generated first comparison;

determining the corresponding cluster of the matched one of the representative audio contents;

generating a second comparison of the query audio content to each one of the at least two audio contents of the determined corresponding cluster of the matched one of the representative audio contents using a second matching criteria different from the first matching criteria; and

identifying a match between the query audio content and at least one of the audio contents of the determined corresponding cluster of the matched one of the representative audio contents based on the generated second comparison of the determined corresponding cluster using the first and the second matching criteria, the match used to determine similarity of the queried audio content to the representative audio content;

wherein the determining the plurality of clusters comprises comparing fingerprint data of each of the plurality of audio contents using the first matching criteria, the comparison including a granular comparison based on a sub-cluster of each of the plurality of clusters.

12. The system of claim 11 , wherein the fingerprint data comprises a nano-fingerprint.

13. The system of claim 11 , wherein the corresponding representative audio content of each cluster in the plurality of clusters is the only audio content of the cluster that is loaded into the index.

14. The system of claim 11 , wherein the matching of the query audio content to one of the representative audio contents comprises comparing fingerprint data of the query audio content with fingerprint data of each of the representative audio contents in the index using the first matching criteria.

15. The system of claim 14 , wherein the fingerprint data comprises a nano-fingerprint.

16. The system of claim 11 , wherein comparing the query audio content to each one of the at least two audio contents of the determined corresponding cluster comprises comparing fingerprint data of the query audio content with fingerprint data of each one of the at least two audio contents of the determined corresponding cluster using the second matching criteria.

17. The system of claim 16 , wherein the fingerprint data comprises a micro-fingerprint.

18. The system of claim 16 , wherein the fingerprint data comprises a full fingerprint.

19. A non-transitory machine-readable storage medium, tangibly embodying a set of instructions that, when executed by at least one processor, causes the at least one processor to perform operations comprising:

determining a plurality of clusters based on a comparison of a plurality of audio contents using a first matching criteria, each cluster of the plurality of clusters comprising at least two audio contents from the plurality of audio contents;

for each cluster of the plurality of clusters, determining a representative audio content for the cluster from the at least two audio contents of the cluster;

loading the corresponding representative audio content of each cluster in the plurality of clusters into an index, the index including the representative audio content stored in association with a hash value, the hash value based on permutations of a binary vector formed using a spectral representation of the audio content;

generating a first comparison of a query audio content to each one of the representative audio contents in the index using the first matching criteria, the first comparison including a comparison of at least one of a content duration ratio, a bit error rate at a matching location, or a length of matching positions;

matching the query audio content to one of the representative audio contents based on the generated first comparison;

determining the corresponding cluster of the matched one of the representative audio contents;

generating a second comparison of the query audio content to each one of the at least two audio contents of the determined corresponding cluster of the matched one of the representative audio contents using a second matching criteria different from the first matching criteria; and

identifying a match between the query audio content and at least one of the audio contents of the determined corresponding cluster of the matched one of the representative audio contents based on the generated second comparison of the determined corresponding cluster using the first and the second matching criteria, the match used to determine similarity of the queried audio content to the representative audio content;

wherein the determining the plurality of clusters comprises comparing fingerprint data of each of the plurality of audio contents using the first matching criteria, the comparison including a granular comparison based on a sub-cluster of each of the plurality of clusters.

Assignments (10)
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 →
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 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 3, 2020
From: DIMARIA, PETER C.; CREMER, MARKUS K.; MINK, BARNABAS; KOSHIO, TANJI; TSUJI, KEI
To: GRACENOTE, INC.
Reel/Frame 054536/0802 →
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 →