# US 10,313,753 B2 · Overlay content and aggregation of viewing data

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,313,753 B2
- Document ID: US10313753B2
- Status: Granted
- Kind: B2
- Application number: 15/895,775
- Filed: 2018-02-13
- Published: 2018-06-28
- Granted: 2019-06-04
- Earliest claimed: 2014-09-12
- Assignees: The Nielsen Company (US), LLC
- Applicants: The Nielsen Company (US), LLC
- Inventors: Steven M. Cormie; Stefan Liassides
- Web page: https://patentgrep.com/patent/US10313753B2

## CPC

- H04N 21/44222: {Analytics of user selections, e.g. selection of programmes or purchase activity (monitoring of user selections in data processing systems G06F11/34; arrangements for monitoring the user's behaviour or opinions in broadcast systems H04H60/33)}
- G06Q 30/0249: {based upon budgets or funds}
- G06Q 30/0261: {based on user location}
- G06V 20/47: {Detecting features for summarising video content}
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/52: specially adapted for the location of the user terminal
- H04N 21/20: Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N 21/21: Server components or server architectures
- H04N 21/234: Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N 21/23418: {involving operations for analysing video streams, e.g. detecting features or characteristics (television picture signal circuitry for scene change detection H04N5/147; filtering for image enhancement G06T5/00; methods or arrangements for recognising scenes G06V20/00; arrangements characterised by components specially adapted for monitoring, identification or recognition of video in broadcast systems H04H60/59)}
- H04N 21/23424: {involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement}
- H04N 21/25883: {being end-user demographical data, e.g. age, family status or address (arrangements for identifying locations of users in broadcast systems H04H60/52)}
- H04N 21/2668: Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles {(information retrieval from the Internet by querying with filtering and personalisation G06F16/9535; arrangements for replacing or switching information during the broadcast H04H20/10; push services over packet-switching network H04L12/1859; adaptation of message content in packet-switching networks H04L51/063)}
- H04N 21/4312: {involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations}
- H04N 21/44: Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N 21/44008: {involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream (arrangements characterised by components specially adapted for monitoring, identification or recognition of video in broadcast systems H04H60/59)}
- H04N 21/44016: {involving splicing one content stream with another content stream, e.g. for substituting a video clip}
- H04N 21/440245: {the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment}
- H04N 21/4532: {involving end-user characteristics, e.g. viewer profile, preferences (monitoring of user activities for profile generation for accessing a video database G06F16/739; user profiles in network data switching protocols H04L67/306; processing of user preferences or user profiles in wireless networks H04W8/18)}
- H04N 21/6125: {involving transmission via Internet (transmission by internet of broadcast information H04H60/82)}
- H04N 21/812: {involving advertisement data (advertising per se G06Q30/02)}
- H04N 21/84: Generation or processing of descriptive data, e.g. content descriptors {(systems specially adapted for using meta-information in broadcast systems H04H60/73)}
- H04N 21/85: Assembly of content; Generation of multimedia applications
- H04N 21/858: Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
- H04N 21/8583: {by creating hot-spots}
- G06Q 30/0277: {Online advertisement}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A processing device for generating a viewing data report is disclosed. The processing device may include a memory device and a processor. The memory device may store instructions. The processor may be operatively coupled to the memory device. The processor may execute the instructions to: determine first viewing data associated with a first ACR event; determine second viewing data associated with a second ACR event; determine that a data field of a plurality of data fields in the first viewing data is incomplete; derive new data for the data field using other data fields of the first viewing data; aggregate the first viewing data and the second viewing data into a single data model to obtain aggregated viewing data of viewing behavior of a first viewer and a second viewer; and create a viewing data report as a compilation of the aggregated viewing data.

## Claims

### Claim 1

A server device comprising:
a memory device configured to store instructions; and
a processing device communicating with the memory device, the processing device configured to execute the instructions to:
receive an overlay request comprising overlay information from a client device, the overlay information comprising a content identifier (ID) corresponding to media content from a content feed identified by automatic content recognition (ACR) event information associated with the client device, the ACR event information comprising vie wing data, the viewing data comprising:
channel information indicating displayed media content;
duration information indicating a display period of time associated with the displayed media content; and
user command information specifying a command received from the client device;
determine whether the content ID of the overlay information is a recognized content ID;
when the content ID of the overlay information is not the recognized content ID, instruct the client device to continue to display the content feed at the client device;
when the content ID is the recognized content ID:
determine whether the content ID is associated with a live overlay, the live overlay corresponding to a live advertising campaign; and
when the content ID is associated with the live overlay:
determine whether the overlay request is a demo mode overlay request; and
when the overlay request is a demo mode overlay request:
determine that the demo mode overlay request corresponds to a designated media consumption device authorized to display available overlays, the designated media consumption device listed on a whitelist of media consumption devices designated for demonstration use; and
select an available overlay restricted to use by the media consumption devices of the whitelist; and
communicate an overlay uniform resource locator (URL) associated with the available overlay to the client device.

### Claim 2 (depends on 1)

The server device of claim 1, wherein the instructions further comprise, when the content ID is the recognized content ID and when the overlay request is not the demo mode overlay request, determining that more than one overlay is available.

### Claim 3 (depends on 2)

The server device of claim 2, wherein the instructions further comprise:
selecting a highest cost per mile (CPM) overlay from the more than one available overlay; and
determining that the selected highest CPM overlay satisfies a corresponding campaign budget and overlay content criteria.

### Claim 4 (depends on 2)

The server device of claim 2, wherein the instructions further comprise:
selecting a highest cost per mile (CPM) overlay from the more than one available overlay; and
determining that the selected highest CPM overlay satisfies a corresponding campaign budget and a corresponding display frequency, the corresponding display frequency corresponding to a threshold amount of times the selected highest CPM overlay has been displayed.

### Claim 5 (depends on 3)

The server device of claim 3, wherein the overlay content criteria comprises at least one of demographic parameters, viewer age parameters, geographic location parameters, content language parameters, content schedule parameters, content weather condition parameters, content pollen count parameters, content household income parameters, or content provider network parameters.

### Claim 6 (depends on 1)

The server device of claim 1, wherein the overlay information further comprises at least one of a time offset associated with the media content of the content ID, an internet protocol (IP) address, or a location of a media device associated with the overlay request, a language setting associated with the media device.

### Claim 7 (depends on 1)

The server device of claim 1, wherein the processing device receives the overlay request when the client device detects a displayed advertisement.

### Claim 8

A method comprising:
receiving, at data processing hardware, an overlay request comprising overlay information from a client device, the overlay information comprising a content identifier (ID) corresponding to media content from a content feed identified by automatic content recognition (ACR) event information associated with the client device, the ACR event information comprising viewing data, the viewing data comprising:
channel information indicating displayed media content,
duration information indicating a display period of time associated with the displayed media content, and
user command information specifying a command received from the client device;
determining, by the data processing hardware, whether the content ID of the overlay information is a recognized content ID;
when the content ID of the overlay information is not the recognized content ID, instructing, by the data processing hardware, the client device to continue to display the content feed at the client device;
when the content ID is the recognized content ID:
determining, by the data processing hardware, whether the content ID is associated with a live overlay, the live overlay corresponding to a live advertising campaign; and
when the content ID is associated with the live overlay:
determining, by the data processing hardware, whether the overlay request is a demo mode overlay request; and
when the overlay request is a demo mode overlay request:
determining, by the data processing hardware, that the demo mode overlay request corresponds to a designated media consumption device authorized to display available overlays, the designated media consumption device listed on a whitelist of media consumption devices designated for demonstration use; and
selecting, by the data processing hardware, an available overlay restricted to use by the media consumption devices of the white list; and
communicating, from the data processing hardware, an overlay uniform resource locator (URL) associated with the available overlay to the client device.

### Claim 9 (depends on 8)

The method of claim 8, wherein when the content ID is the recognized content ID and when the overlay request is not the demo mode overlay request, determining, by the data processing hardware, that more than one overlay is available.

### Claim 10 (depends on 9)

The method of claim 9, further comprising:
selecting, by the data processing hardware, a highest cost per mile (CPM) overlay from the more than one available overlay; and
determining, by the data processing hardware, that the selected highest CPM overlay satisfies a corresponding campaign budget and overlay content criteria.

### Claim 11 (depends on 9)

The method of claim 9, comprising:
selecting a highest cost per mile (CPM) overlay from the more than one available overlay; and
determining that the selected highest CPM overlay satisfies a corresponding campaign budget and a corresponding display frequency, the corresponding display frequency corresponding to a threshold amount of times the selected highest CPM overlay has been displayed.

### Claim 12 (depends on 10)

The method of claim 10, wherein the overlay content criteria comprises at least one of demographic parameters, viewer age parameters, geographic location parameters, content language parameters, content schedule parameters, content weather condition parameters, content pollen count parameters, content household income parameters, or content provider network parameters.

### Claim 13 (depends on 8)

The method of claim 8, wherein the overlay information further comprises at least one of a time offset associated with the media content of the content ID, an internet protocol (IP) address, or a location of a media device associated with the overlay request, a language setting associated with the media device.

### Claim 14 (depends on 8)

The method of claim 8, wherein receiving, at the data processing hardware, the overlay request further comprises receiving the overlay request when the client device detects a displayed advertisement.

### Claim 15

A server device comprising:
a memory device configured to store instructions; and
a processing device communicating with the memory device, the processing device configured to execute the instructions to:
receive an overlay request comprising overlay information from a client device, the overlay information comprising a content identifier (ID) corresponding to media content from a content feed identified by automatic content recognition (ACR) event information associated with the client device, the ACR event information comprising viewing data, the viewing data comprising:
channel information indicating displayed media content;
duration information indicating a display period of time associated with the displayed media content; and
user command information specifying a command received from the client device;
determine whether the content ID of the overlay information is a recognized content ID;
when the content ID of the overlay information is not the recognized content ID, instruct the client device to continue to display the content feed at the client device;
when the content ID is the recognized content ID:
determine whether the content ID is associated with a live overlay, the live overlay corresponding to a live advertising campaign;
when the content ID is associated with the live overlay:
determine that more than one overlay is available;
select a highest cost per mile (CPM) overlay from the more than one available overlay; and
determine that the selected highest CPM overlay satisfies a corresponding campaign budget, a corresponding display frequency, and overlay content criteria, the corresponding display frequency corresponding to a threshold amount of times the selected highest CPM overlay has been displayed; and
communicate an overlay uniform resource locator (URL) associated with the available overlay to the client device.

### Claim 16

A method comprising:
receiving, at data processing hardware, an overlay request comprising overlay information from a client device, the overlay information comprising a content identifier (ID) corresponding to media content from a content feed identified by automatic content recognition (ACR) event information associated with the client device, the ACR event information comprising viewing data, the viewing data comprising:
channel information indicating displayed media content,
duration information indicating a display period of time associated with the displayed media content, and
user command information specifying a command received from the client device;
determining, by the data processing hardware, whether the content ID of the overlay information is a recognized content ID;
when the content ID of the overlay information is not the recognized content ID, instructing, by the data processing hardware, the client device to continue to display the content feed at the client device;
when the content ID is the recognized content ID:
determining, by the data processing hardware, whether the content ID is associated with a live overlay, the live overlay corresponding to a live advertising campaign; and
when the content ID is associated with the live overlay:
determining, by the data processing hardware, that more than one overlay is available;
selecting, by the data processing hardware, a highest cost per mile (CPM) overlay from the more than one available overlay; and
determining, by the data processing hardware, that the selected highest CPM overlay satisfies a corresponding campaign budget, a corresponding display frequency, and overlay content criteria, the corresponding display frequency corresponding to a threshold amount of times the selected highest CPM overlay has been displayed; and
communicating, from the data processing hardware, an overlay uniform resource locator (URL) associated with the available overlay to the client device.
