IP Library Granted Patent US 10,997,630
Granted Patent B2
US 10,997,630 · App. 16/226,955 · Granted May 4, 2021

Systems and methods for inserting contextual advertisements into a virtual environment

Inventors: Alejandro Sanchez Pulido (Chatsworth, CA); Carla Mack (Los Angeles, CA)
Assignee: Rovi Guides, Inc.
G06Q30/0269G06T3/60G06T11/60G10L25/54
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,997,630
App. No.
16/226,955
Granted
May 4, 2021
Kind
B2
Abstract

Systems and methods are described herein for inserting contextual advertisements into a virtual environment. While presenting a virtual environment, a media device receives speech input. The media device selects an advertisement from an advertisement database based on the speech. The media device then determines the current environment of the virtual environment and generates a virtual object that is related to the current environment. The media device overlays the selected advertisement over the generated virtual object and displays the generated virtual object in the virtual environment.

Claims (96)

1. A method for inserting contextual advertisements into a virtual environment, the virtual environment comprising presentation of virtual objects in a three-dimensional space, the method comprising:

receiving, during presentation of the virtual environment, audio input representing speech;

selecting an advertisement from an advertisement database based on the speech; and

in response to selecting the advertisement:

determining a current environment of the virtual environment;

determining whether any of a plurality of virtual objects displayed in the current environment of the virtual environment are suitable for displaying the selected advertisement by:

determining a number of surfaces of the respective virtual object; and

determining a suitability for each respective surface of the number of surfaces based on properties of the respective surface, the properties comprising (a) whether the respective surface is currently facing the user, (b) lighting of the respective surface, (c) size of the respective surface, and (d) curvature of the respective surface; and

in response to determining that none of the plurality of virtual objects displayed in the current environment of the virtual environment are suitable for displaying the selected advertisement:

generating a new virtual object that is related to the current environment, wherein the new virtual object is different from each of the plurality of virtual objects displayed in the current environment of the virtual environment;

overlaying the selected advertisement over the generated new virtual object; and

displaying the new generated virtual object in the current environment of the virtual environment.

2. The method of claim 1 , wherein determining the current environment of the virtual environment comprises:

identifying a plurality of virtual objects currently being displayed in the virtual environment;

retrieving metadata of a first virtual object of the plurality of virtual objects;

determining whether the metadata of the first virtual object uniquely identifies a single environment; and

in response to determining that the metadata of the first virtual object uniquely identifies a respective single environment, identifying the respective single environment as the current environment.

3. The method of claim 2 , further comprising:

in response to determining that the metadata of the first virtual object does not uniquely identify any single environment:

retrieving metadata of a second virtual object of the plurality of virtual objects;

determining whether the metadata of the second virtual object uniquely identifies a single environment; and

in response to determining that the metadata of the second virtual object uniquely identifies a single environment, identifying the single environment as the current environment.

4. The method of claim 3 , further comprising:

in response to determining that the metadata of the second virtual object does not uniquely identify any single environment:

comparing a first set of environments identified by the metadata of the first virtual object with a second set of environments identified by the metadata of the second virtual object;

determining, based on the comparing, that the first set of environments and the second set of environments contain a common environment; and

identifying the common environment as the current environment.

5. The method of claim 1 , wherein determining whether a virtual object currently displayed in the virtual environment is suitable for displaying the selected advertisement comprises:

identifying a plurality of virtual objects currently being displayed in the virtual environment;

identifying a respective type of each of the plurality of virtual objects; and

determining whether any virtual object of the plurality of virtual objects is of a type that is suitable for displaying the selected advertisement.

6. The method of claim 1 , further comprising:

identifying a surface of the virtual object suitable for displaying the selected advertisement; and

wherein displaying the selected advertisement on the virtual object comprises displaying the selected advertisement on the identified surface.

7. The method of claim 1 , wherein the selected advertisement comprises an image, the method further comprising:

determining an orientation of the virtual object; and

transforming the image to match the orientation of the virtual object.

8. The method of claim 1 , wherein selecting an advertisement from an advertisement database further comprises:

identifying a category of advertisement related to the speech;

determining a particular advertisement based on a user profile and the identified category; and

selecting the particular advertisement from the advertisement database.

9. The method of claim 1 , wherein generating the virtual object that is related to the current environment comprises:

identifying a plurality of virtual objects related to the current environment;

identifying a respective type of each of the plurality of virtual objects; and

selecting a virtual object of the plurality of virtual objects of a type that is suitable for displaying the selected advertisement.

10. The method of claim 1 , wherein the virtual environment is one of a video game, a virtual meeting, and an augmented reality environment.

11. A system for inserting contextual advertisements into a virtual environment, the virtual environment comprising presentation of virtual objects in a three-dimensional space, the system comprising:

a display; and

control circuitry configured to:

receive, during presentation of the virtual environment on the display, audio input representing speech;

select an advertisement from an advertisement database based on the speech; and

in response to selecting the advertisement:

determine a current environment of the virtual environment;

determine whether any of a plurality of virtual objects displayed in the current environment of the virtual environment are suitable for displaying the selected advertisement by, for each respective virtual object of the plurality of virtual objects:

determining a number of surfaces of the respective virtual object; and

determining a suitability for each respective surface of the number of surfaces based on properties of the respective surface, the properties comprising (a) whether the respective surface is currently facing the user, (b) lighting of the respective surface, (c) size of the respective surface, and (d) curvature of the respective surface; and

in response to determining that none of the plurality of virtual objects displayed in the current environment of the virtual environment are suitable for displaying the selected advertisement:

generate a new virtual object that is related to the current environment, wherein the new virtual object is different from each of the plurality of virtual objects displayed in the current environment of the virtual environment;

overlay the selected advertisement over the generated new virtual object; and

display the generated new virtual object in the current environment of the virtual environment on the display.

12. The system of claim 11 , wherein the control circuitry configured to determine the current environment of the virtual environment is further configured to:

identify a plurality of virtual objects currently being displayed in the virtual environment;

retrieve metadata of a first virtual object of the plurality of virtual objects;

determine whether the metadata of the first virtual object uniquely identifies a single environment; and

in response to determining that the metadata of the first virtual object uniquely identifies a respective single environment, identify the respective single environment as the current environment.

13. The system of claim 12 , wherein the control circuitry configured to determine the current environment of the virtual environment is further configured to:

in response to determining that the metadata of the first virtual object does not uniquely identify any single environment:

retrieve metadata of a second virtual object of the plurality of virtual objects;

determine whether the metadata of the second virtual object uniquely identifies a single environment; and

in response to determining that the metadata of the second virtual object uniquely identifies a single environment, identify the single environment as the current environment.

14. The system of claim 13 , wherein the control circuitry is further configured to:

in response to determining that the metadata of the second virtual object does not uniquely identify any single environment:

compare a first set of environments identified by the metadata of the first virtual object with a second set of environments identified by the metadata of the second virtual object;

determine, based on the comparing, that the first set of environments and the second set of environments contain a common environment; and

identify the common environment as the current environment.

15. The system of claim 11 , wherein the control circuitry configured to determine whether a virtual object currently displayed in the virtual environment is suitable for displaying the selected advertisement is further configured to:

identify a plurality of virtual objects currently being displayed in the virtual environment;

identify a respective type of each of the plurality of virtual objects; and

determine whether any virtual object of the plurality of virtual objects is of a type that is suitable for displaying the selected advertisement.

16. The system of claim 11 , wherein the control circuitry is further configured to:

identify a surface of the virtual object suitable for displaying the selected advertisement; and

wherein the control circuitry configured to display the selected advertisement on the virtual object is configured to display the selected advertisement on the identified surface.

17. The system of claim 11 , wherein:

the selected advertisement comprises an image; and

the control circuitry is further configured to:

determine an orientation of the virtual object; and

transform the image to match the orientation of the virtual object.

18. The system of claim 11 , wherein the control circuitry configured to select an advertisement from an advertisement database is further configured to:

identify a category of advertisement related to the speech;

determine a particular advertisement based on a user profile and the identified category; and

select the particular advertisement from the advertisement database.

19. The system of claim 11 , wherein the control circuitry configured to generate the virtual object that is related to the current environment is further configured to:

identify a plurality of virtual objects related to the current environment;

identify a respective type of each of the plurality of virtual objects; and

select a virtual object of the plurality of virtual objects of a type that is suitable for displaying the selected advertisement.

20. The system of claim 11 , wherein the virtual environment is one of a video game, a virtual meeting, and an augmented reality environment.

Assignments (7)
CHANGE OF NAME Recorded Oct 3, 2024
From: ROVI GUIDES, INC.
To: ADEIA GUIDES INC.
Reel/Frame 069106/0171 →
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
Reel/Frame 053481/0790 →
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2020
From: HPS INVESTMENT PARTNERS, LLC
To: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
Reel/Frame 053458/0749 →
SECURITY INTEREST Recorded Jun 1, 2020
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS INC.; VEVEO, INC.; INVENSAS CORPORATION; INVENSAS BONDING TECHNOLOGIES, INC.; TESSERA, INC.; TESSERA ADVANCED TECHNOLOGIES, INC.; DTS, INC.; PHORUS, INC.; IBIQUITY DIGITAL CORPORATION
To: BANK OF AMERICA, N.A.
Reel/Frame 053468/0001 →
PATENT SECURITY AGREEMENT Recorded Nov 25, 2019
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 051110/0006 →
SECURITY INTEREST Recorded Nov 22, 2019
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
To: HPS INVESTMENT PARTNERS, LLC, AS COLLATERAL AGENT
Reel/Frame 051143/0468 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 13, 2019
From: PULIDO, ALEJANDRO SANCHEZ; MACK, CARLA
To: ROVI GUIDES, INC.
Reel/Frame 048585/0769 →
Continuity (1)
Related Publication 20200202389A1 · Jun 25, 2020
Cited By (1)
US 12,573,146