IP Library Granted Patent US 10,986,399
Granted Patent B2
US 10,986,399 · App. 16/441,956 · Granted Apr 20, 2021

Media content identification on mobile devices

Inventors: Mihailo M. Stojancic (San Jose, CA); Sunil Suresh Kulkarni (Santa Cruz, CA); Shashank Merchant (Sunnyvale, CA); Jose Pio Pereira (Cupertino, CA); Oleksiy Bolgarov (San Jose, CA)
Assignee: Gracenote, Inc.
H04N21/4394G10H1/0008H04N1/32H04N21/41407H04N21/4223H04N21/42203H04N21/439H04N21/4332H04N21/8352H04N21/84H04N21/8456G10H2210/041G10H2210/051G10H2240/141G10H2250/235
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,986,399
App. No.
16/441,956
Granted
Apr 20, 2021
Kind
B2
Abstract

A mobile device responds in real time to media content presented on a media device, such as a television. The mobile device captures temporal fragments of audio-video content on its microphone, camera, or both and generates corresponding audio-video query fingerprints. The query fingerprints are transmitted to a search server located remotely or used with a search function on the mobile device for content search and identification. Audio features are extracted and audio signal global onset detection is used for input audio frame alignment. Additional audio feature signatures are generated from local audio frame onsets, audio frame frequency domain entropy, and maximum change in the spectral coefficients. Video frames are analyzed to find a television screen in the frames, and a detected active television quadrilateral is used to generate video fingerprints to be combined with audio fingerprints for more reliable content identification.

Claims (53)

1. A computer-implemented method comprising:

obtaining, by a computing device, a fragment of media content, wherein the fragment of media content is a representation of a sequence of media content that is presented by a playback device;

generating, by the computing device, a query fingerprint using the fragment of media content;

determining, by the computing device, that the query fingerprint does not match any reference fingerprints of a set of reference fingerprints, wherein the set of reference fingerprints is stored in a memory of the computing device, and wherein the set of reference fingerprints corresponds to the sequence of media content;

based on the determining that the query fingerprint does not match any reference fingerprints of the set of reference fingerprints, incrementing, by the computing device, a counter;

determining, by the computing device, that a number stored by the counter satisfies a threshold condition; and

based on the determining that the number satisfies the threshold condition, transmitting, by the computing device to a server device, the query fingerprint for comparison with reference fingerprints of a reference database.

2. The computer-implemented method of claim 1 , wherein the number is indicative of a successive number of search misses, and wherein a search miss is a failure to match a given query fingerprint to any reference fingerprints of the set of reference fingerprints.

3. The computer-implemented method of claim 1 , further comprising:

prior to incrementing the counter:

determining that another query fingerprint matches a reference fingerprint of the set of reference fingerprints; and

based on the determining that the other query fingerprint matches the reference fingerprint, resetting the counter.

4. The computer-implemented method of claim 1 , further comprising:

receiving, from the server device, another set of reference fingerprints, wherein the other set of reference fingerprints corresponds to a range around a match point, wherein the match point is associated with a reference fingerprint that the query fingerprint matches; and

resetting the counter.

5. The computer-implemented method of claim 4 , further comprising:

generating another query fingerprint using another fragment of media content;

determining that the other query fingerprint matches a reference fingerprint of the other set of reference fingerprints; and

based on the determining that the other query fingerprint matches the reference fingerprint, triggering an action event on the computing device.

6. The computer-implemented method of claim 5 , further comprising obtaining data corresponding to the reference fingerprint, wherein the action event is based on the data.

7. The computer-implemented method of claim 1 , wherein obtaining the fragment of media content comprises obtaining the fragment of media content using a microphone, wherein the fragment of media content comprises an audio fragment, and wherein the query fingerprint comprises an audio fingerprint.

8. The computer-implemented method of claim 7 , further comprising resampling the audio fragment or down-mixing the audio fragment prior to generating the audio fingerprint.

9. The computer-implemented method of claim 1 , wherein obtaining the fragment of media content comprises obtaining the fragment of media content using a camera, wherein the fragment of media content comprises a video fragment, and wherein the query fingerprint comprises a video fingerprint.

10. The computer-implemented method of claim 9 , further comprising selecting a video frame of the video fragment, wherein generating the query fingerprint comprises generating the video fingerprint using the video frame.

11. The computer-implemented method of claim 1 , wherein the playback device comprises a television.

12. A computing device comprising:

one or more processors; and

a non-transitory computer-readable medium having stored therein instructions that are executable by the one or more processors to cause the computing device to perform functions comprising:

obtaining a fragment of media content, wherein the fragment of media content is a representation of a sequence of media content that is presented by a playback device,

generating a query fingerprint using the fragment of media content,

determining that the query fingerprint does not match any reference fingerprints of a set of reference fingerprints, wherein the set of reference fingerprints is stored in a memory of the computing device, and wherein the set of reference fingerprints corresponds to the sequence of media content,

based on the determining that the query fingerprint does not match any reference fingerprints of the set of reference fingerprints, incrementing a counter,

determining that a number stored by the counter satisfies a threshold condition, and

based on the determining that the number satisfies the threshold condition, transmitting, to a server device, the query fingerprint for comparison with reference fingerprints of a reference database.

13. The computing device of claim 12 , wherein the number is indicative of a successive number of search misses, and wherein a search miss is a failure to match a given query fingerprint to any reference fingerprints of the set of reference fingerprints.

14. The computing device of claim 12 , wherein the functions further comprise:

prior to incrementing the counter:

determining that another query fingerprint matches a reference fingerprint of the set of reference fingerprints; and

based on the determining that the other query fingerprint matches the reference fingerprint, resetting the counter.

15. The computing device of claim 12 , wherein the functions further comprise:

receiving, from the server device, another set of reference fingerprints, wherein the other set of reference fingerprints corresponds to a range around a match point, wherein the match point is associated with a reference fingerprint that the query fingerprint matches; and

resetting the counter.

16. The computing device of claim 12 , wherein the computing device further comprises a microphone, wherein obtaining the fragment of media content comprises obtaining the fragment of media content using the microphone, wherein the fragment of media content comprises an audio fragment, and wherein the query fingerprint comprises an audio fingerprint.

17. The computing device of claim 12 , wherein the computing device further comprises a camera, wherein obtaining the fragment of media content comprises obtaining the fragment of media content using the camera, wherein the fragment of media content comprises a video fragment, and wherein the query fingerprint comprises a video fingerprint.

18. A non-transitory computer-readable medium having stored therein instructions that are executable by one or more processors to cause a computing device to perform functions comprising:

obtaining a fragment of media content, wherein the fragment of media content is a representation of a sequence of media content that is presented by a playback device;

generating a query fingerprint using the fragment of media content;

determining that the query fingerprint does not match any reference fingerprints of a set of reference fingerprints, wherein the set of reference fingerprints is stored in a memory of the computing device, and wherein the set of reference fingerprints corresponds to the sequence of media content;

based on the determining that the query fingerprint does not match any reference fingerprints of the set of reference fingerprints, incrementing a counter;

determining that a number stored by the counter satisfies a threshold condition; and

based on the determining that the number satisfies the threshold condition, transmitting, to a server device, the query fingerprint for comparison with reference fingerprints of a reference database.

19. The non-transitory computer-readable medium of claim 18 , wherein the number is indicative of a successive number of search misses, and wherein a search miss is a failure to match a given query fingerprint to any reference fingerprints of the set of reference fingerprints.

20. The non-transitory computer-readable medium of claim 18 , wherein obtaining the fragment of media content comprises obtaining the fragment of media content using a microphone, wherein the fragment of media content comprises an audio fragment, and wherein the query fingerprint comprises an audio fingerprint.

Assignments (11)
SECURITY INTEREST Recorded Sep 18, 2024
From: ROKU, INC.
To: CITIBANK, N.A.
Reel/Frame 068982/0377 →
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 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT (REEL/FRAME 056982/0194) Recorded Feb 22, 2023
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: ROKU, INC.; ROKU DX HOLDINGS, INC.
Reel/Frame 062826/0664 →
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded Jun 29, 2021
From: ROKU, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 056982/0194 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2021
From: GRACENOTE, INC.
To: ROKU, INC.
Reel/Frame 056103/0786 →
PARTIAL RELEASE OF SECURITY INTEREST Recorded Apr 20, 2021
From: CITIBANK, N.A.
To: THE NIELSEN COMPANY (US), LLC; GRACENOTE, INC.
Reel/Frame 056973/0280 →
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 Jun 17, 2019
From: ZEITERA, LLC
To: GRACENOTE, INC.
Reel/Frame 049493/0134 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 17, 2019
From: STOJANCIC, MIHAILO M.; KULKARNI, SUNIL SURESH; MERCHANT, SHASHANK; PEREIRA, JOSE PIO; BOLGAROV, OLEKSIY
To: ZEITERA, LLC
Reel/Frame 049493/0126 →