IP Library Granted Patent US 10,860,647
Granted Patent B2
US 10,860,647 · App. 16/528,237 · Granted Dec 8, 2020

Systems, methods, and apparatus to improve media identification

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,860,647
App. No.
16/528,237
Granted
Dec 8, 2020
Kind
B2
Abstract

Methods, apparatus, systems, and articles of manufacture are disclosed to improve media identification. An example apparatus includes a hash handler to generate a first set of reference matches by performing hash functions on a subset of media data associated with media to generate hashed media data based on a first bucket size, a candidate determiner to identify a second set of reference matches that include ones of the first set, the second set including ones having first quantities of hits that did not satisfy a threshold, determine second quantities of hits for ones of the second set by matching ones to the hash tables based on a second bucket size, and identify one or more candidate matches based on at least one of (1) ones of the first set or (2) ones of the second set, and a report generator to generate a report including a media identification.

Claims (100)

1. An apparatus to improve media identification, the apparatus comprising:

a hash handler to generate a first set of reference matches by performing hash functions on a subset of media data included in a fingerprint associated with media to generate hashed media data, the first set of reference matches based on matching the hashed media data to a hash table based on a first bucket size, ones of the first set of reference matches having a respective quantity of one or more hits to be compared to a threshold;

a candidate determiner to:

identify a second set of reference matches that include one or more reference matches of the first set, the second set including first reference matches having first quantities of hits that do not satisfy the threshold;

determine second quantities of hits for ones of the second set by matching ones of the second set to the hash table based on a second bucket size, the second bucket size different than the first bucket size; and

identify one or more candidate matches based on at least one of (1) ones of the first set having the first quantities of hits that satisfy the threshold or (2) ones of the second set having third quantities of hits that satisfy the threshold, the third quantities of hits based on the first quantities of hits and the second quantities of hits; and

a report generator to generate a report including an identification of the media associated with the fingerprint based on the one or more candidate matches.

2. The apparatus of claim 1 , further including a communication interface to obtain the fingerprint from a media device when the media is accessed by a user.

3. The apparatus of claim 1 , further including a data extractor to extract one or more audio data values from the fingerprint including at least one of an amplitude, a frequency, or an energy value and generate a spectrogram based on the extracted one or more audio data values.

4. The apparatus of claim 1 , wherein the report generator is to identify the media based on a comparison of first peak values associated with the one or more candidate matches and second peak values associated with the fingerprint.

5. The apparatus of claim 1 , wherein the subset of media data includes one or more energy values, the hash functions including a first hash function, and further including a data selector to select the one or more energy values, wherein the hash handler is to generate the hash table by executing the first hash function on the one or more energy values to generate a first hash value, and further including a table handler to:

map the first hash value to a bucket of the hash table;

determine whether a second hash value is stored at one or more slots of the bucket; and

store the first hash value at a first one of the one or more slots when the first one of the one or more slots does not include the second hash value.

6. The apparatus of claim 1 , wherein the report generator is to:

compare the one or more candidate matches to the first set and the second set of reference matches to determine quantities of matching peaks;

identify the media based on one of the one or more candidate matches having a highest quantity of matching peaks out of the one or more candidate matches; and

present the identification of the media to a media device that accessed the media.

7. A non-transitory computer readable storage medium comprising instructions which, when executed, cause a machine to at least:

generate a first set of reference matches by performing hash functions on a subset of media data included in a fingerprint associated with media to generate hashed media data, the first set of reference matches based on matching the hashed media data to a hash table based on a first bucket size, ones of the first set of reference matches having a respective quantity of one or more hits to be compared to a threshold;

identify a second set of reference matches that include one or more reference matches of the first set, the second set including first reference matches having first quantities of hits that do not satisfy the threshold;

determine second quantities of hits for ones of the second set by matching ones of the second set to the hash table based on a second bucket size, the second bucket size different than the first bucket size;

identify one or more candidate matches based on at least one of (1) ones of the first set having the first quantities of hits that satisfy the threshold or (2) ones of the second set having third quantities of hits that satisfy the threshold, the third quantities of hits based on the first quantities of hits and the second quantities of hits; and

generate a report including an identification of the media associated with the fingerprint based on the one or more candidate matches.

8. The non-transitory computer readable storage medium of claim 7 , wherein the instructions, when executed, cause the machine to obtain the fingerprint from a media device when the media is accessed by a user.

9. The non-transitory computer readable storage medium of claim 7 , wherein the instructions, when executed, cause the machine to extract one or more audio data values from the fingerprint including at least one of an amplitude, a frequency, or an energy value and generate a spectrogram based on the extracted one or more audio data values.

10. The non-transitory computer readable storage medium of claim 7 , wherein the instructions, when executed, cause the machine to identify the media based on a comparison of first peak values associated with the one or more candidate matches and second peak values associated with the fingerprint.

11. The non-transitory computer readable storage medium of claim 7 , wherein the subset of media data includes one or more energy values, the hash functions including a first hash function, and the instructions, when executed, cause the machine to generate the hash table by:

selecting the one or more energy values;

executing the first hash function on the one or more energy values to generate a first hash value;

mapping the first hash value to a bucket of the hash table;

determining whether a second hash value is stored at a slot of the bucket; and

storing the first hash value at the slot when the slot does not include the second hash value.

12. The non-transitory computer readable storage medium of claim 11 , wherein the hash table is a first hash table, the bucket is a first bucket, the slot is a first slot, and wherein the instructions, when executed, cause the machine to:

select the one or more energy values;

execute a second hash function on the one or more energy values to generate a third hash value, the second hash function different from the first hash function;

map the third hash value to a second bucket of a second hash table;

determine whether a fourth hash value is stored at a second slot of the second bucket; and

store the third hash value at the second slot when the second slot does not include the fourth hash value.

13. The non-transitory computer readable storage medium of claim 7 , wherein the instructions, when executed, cause the machine to:

compare the one or more candidate matches to the first set and the second set of reference matches to determine quantities of matching peaks;

identify the media based on one of the one or more candidate matches having a highest quantity of matching peaks out of the one or more candidate matches; and

present the identification of the media to a media device that accessed the media.

14. A method to improve media identification, the method comprising:

generating a first set of reference matches by performing hash functions on a subset of media data included in a fingerprint associated with media to generate hashed media data, the first set of reference matches based on matching the hashed media data to a hash table based on a first bucket size, ones of the first set of reference matches having a respective quantity of one or more hits to be compared to a threshold;

identifying a second set of reference matches that include one or more reference matches of the first set, the second set including first reference matches having first quantities of hits that do not satisfy the threshold;

determining second quantities of hits for ones of the second set by matching ones of the second set to the hash table based on a second bucket size, the second bucket size different than the first bucket size;

identifying one or more candidate matches based on at least one of (1) ones of the first set having the first quantities of hits that satisfy the threshold or (2) ones of the second set having third quantities of hits that satisfy the threshold, the third quantities of hits based on the first quantities of hits and the second quantities of hits; and

generating a report including an identification of the media associated with the fingerprint based on the one or more candidate matches.

15. The method of claim 14 , further including obtaining the fingerprint from a media device when the media is accessed by a user.

16. The method of claim 14 , further including:

extracting one or more audio data values from the fingerprint including at least one of an amplitude, a frequency, or an energy value; and

generating a spectrogram based on the extracted one or more audio data values.

17. The method of claim 14 , wherein the identification of the media is based on a comparison of first peak values associated with the one or more candidate matches and second peak values associated with the fingerprint.

18. The method of claim 14 , wherein the subset of media data includes one or more energy values, the hash functions including a first hash function, and generating the hash table includes:

selecting the one or more energy values;

executing the first hash function on the one or more energy values to generate a first hash value;

mapping the first hash value to a bucket of the hash table;

determining whether a second hash value is stored at a slot of the bucket; and

storing the first hash value at the slot when the slot does not include the second hash value.

19. The method of claim 18 , wherein the hash table is a first hash table, the bucket is a first bucket, the slot is a first slot, and further including:

selecting the one or more energy values;

executing a second hash function on the one or more energy values to generate a third hash value, the second hash function different from the first hash function;

mapping the third hash value to a second bucket of a second hash table;

determining whether a fourth hash value is stored at a second slot of the second bucket; and

storing the third hash value at the second slot when the second slot does not include the fourth hash value.

20. The method of claim 14 , further including:

comparing the one or more candidate matches to the first set and the second set of reference matches to determine quantities of matching peaks;

identifying the media based on one of the one or more candidate matches having a highest quantity of matching peaks out of the one or more candidate matches; and

presenting the identification of the media to a media device that accessed the media.

21. A non-transitory computer readable storage medium comprising instructions which, when executed, cause a machine to at least:

select one or more energy values included in a first subset of media data;

execute a first hash function on the one or more energy values to generate a first hash value;

map the first hash value to a first bucket of a first hash table;

determine whether a second hash value is stored at a first slot of the first bucket;

store the first hash value at the first slot when the first slot does not include the second hash value to generate the first hash table;

execute a second hash function on the one or more energy values to generate a third hash value, the second hash function different from the first hash function;

map the third hash value to a second bucket of a second hash table;

determine whether a fourth hash value is stored at a second slot of the second bucket;

store the third hash value at the second slot when the second slot does not include the fourth hash value to generate the second hash table;

generate a first set of reference matches by performing hash functions on a second subset of media data included in a fingerprint associated with media to generate hashed media data, the first set of reference matches based on matching the hashed media data to at least one of the first hash table or the second hash table based on a first bucket size, the hash functions including the first hash function and the second hash function;

identify a second set of reference matches that include one or more reference matches of the first set, the second set including first reference matches having first quantities of hits that do not satisfy a threshold;

determine second quantities of hits for ones of the second set by matching ones of the second set to at least one of the first hash table or the second hash table based on a second bucket size, the second bucket size different than the first bucket size;

identify one or more candidate matches based on at least one of (1) ones of the first set having the first quantities of hits that satisfy the threshold or (2) ones of the second set having third quantities of hits that satisfy the threshold, the third quantities of hits based on the first quantities of hits and the second quantities of hits; and

generate a report including an identification of the media associated with the fingerprint based on the one or more candidate matches.

22. A method to improve media identification, the method comprising

selecting one or more energy values included in a first subset of media data;

executing a first hash function on the one or more energy values to generate a first hash value;

mapping the first hash value to a first bucket of a first hash table;

determining whether a second hash value is stored at a first slot of the first bucket;

storing the first hash value at the first slot when the first slot does not include the second hash value to generate the first hash table;

executing a second hash function on the one or more energy values to generate a third hash value, the second hash function different from the first hash function;

mapping the third hash value to a second bucket of a second hash table;

determining whether a fourth hash value is stored at a second slot of the second bucket;

storing the third hash value at the second slot when the second slot does not include the fourth hash value to generate the second hash table;

generating a first set of reference matches by performing hash functions on a second subset of media data included in a fingerprint associated with media to generate hashed media data, the first set of reference matches based on matching the hashed media data to at least one of the first hash table or the second hash table based on a first bucket size, the hash functions including the first hash function and the second hash function;

identifying a second set of reference matches that include one or more reference matches of the first set, the second set including first reference matches having first quantities of hits that do not satisfy a threshold;

determining second quantities of hits for ones of the second set by matching ones of the second set to at least one of the first hash table or the second hash table based on a second bucket size, the second bucket size different than the first bucket size;

identifying one or more candidate matches based on at least one of (1) ones of the first set having the first quantities of hits that satisfy the threshold or (2) ones of the second set having third quantities of hits that satisfy the threshold, the third quantities of hits based on the first quantities of hits and the second quantities of hits; and

generating a report including an identification of the media associated with the fingerprint based on the one or more candidate matches.

Assignments (8)
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 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2020
From: SCOTT, JEFFREY; WILKINSON, MATTHEW JAMES; COOVER, ROBERT; MERCHANT, SHASHANK
To: GRACENOTE, INC.
Reel/Frame 052455/0048 →