IP Library Granted Patent US 12,069,335
Granted Patent B2
US 12,069,335 · App. 17/963,107 · Granted Aug 20, 2024

Systems and methods for reducing digital video latency

Inventors: Eric M. Hoffert (New York, NY); Jeffrey Weiss (Chatsworth, CA); Vikki Pitts (Northridge, CA); Alexander Krassel (Encino, CA); Yevgeniy Nisman (New York, NY); Radhika Shivapurkar (Woodland Hills, CA)
Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
H04N21/4384H04N21/23424H04N21/4331H04N21/4667H04N21/47202H04N21/4782H04N21/6543
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 12,069,335
App. No.
17/963,107
Granted
Aug 20, 2024
Kind
B2
Abstract

Examples of the systems and methods described herein relate to reducing latency issues associated with playing online digital video on client devices. An example method includes: determining a likelihood that a user will trigger presentment of video content within a portion of digital content, and when the likelihood is determined to exceed a threshold, obtaining a video tag that identifies the video content or caching a portion of the video content prior to presentment of the video content.

Claims (52)

1. A method comprising:

determining, based upon activity data indicative of interaction of a user with respect to a client device while the client device displays a first portion of digital content, that a likelihood of the user triggering presentation of video content within a second portion of the digital content that is not included in the first portion of digital content exceeds a threshold; and

responsive to determining that the likelihood of the user triggering presentation of the video content within the second portion of the digital content exceeds the threshold, performing acts comprising at least one of:

causing the client device to obtain a video tag that identifies the video content to be presented in the second portion of the digital content; or

causing the client device to cache at least a portion of the video content prior to presentation of the video content within the second portion of the digital content.

2. The method of claim 1 , wherein the acts comprise causing the client device to cache the portion of the video content prior to presentation of the video content within the second portion of the digital content, the method further comprising:

deleting the portion of the video content from a cache of the client device responsive to a predefined time has elapsed since caching of the portion of the video content by the client device.

3. The method of claim 1 , wherein determining that the likelihood of the user triggering presentation of the video content exceeds the threshold is based upon a subject category associated with the video content.

4. The method of claim 1 , wherein determining that the likelihood of the user triggering presentation of the video content exceeds the threshold is based upon a distance, within the digital content, between the first portion of the digital content and the second portion of the digital content.

5. The method of claim 1 , wherein determining that the likelihood of the user triggering presentation of the video content within the second portion of the digital content exceeds the threshold comprises:

executing a machine learning model over the activity data, the machine learning model trained based upon second activity data indicative of past interaction of the user with respect to second digital content.

6. The method of claim 1 , wherein determining that the likelihood of the user trigger presentation of the video content exceeds the threshold is based upon a velocity at which the user is scrolling through the digital content.

7. The method of claim 1 , wherein the digital content is at least one of:

a web page; or

digital content displayed within an interface of a mobile app executing on the client device.

8. The method of claim 1 , wherein the threshold value is a value specified by a publisher of the digital content.

9. The method of claim 1 , wherein the second portion of the digital content is not displayed by the client device when the client device is caused to obtain the video tag or is caused to cache the portion of the video content.

10. The method of claim 1 , wherein determining that the likelihood of the user triggering presentation of the video content exceeds the threshold is based further upon at least one of:

a viewing history of the user;

a viewing history of other users;

a duration of a current activity session of the user; or

a web browser history of the user.

11. The method of claim 1 , wherein the acts comprise causing the client device to obtain the video tag that identifies the video content, wherein further the acts comprise:

causing the client device to provide the video tag to a video server, wherein responsive to receiving the video tag, the video server provides the video content to the client device.

12. The method of claim 11 , wherein responsive to receipt of the video content, the client device caches at least the portion of the video content prior to presentation of the video content within the second portion of the digital content.

13. The method of claim 1 , wherein causing the client device to obtain the video tag that identifies the video content to be presented in the second portion of the digital content comprises:

causing the client device to provide, to an ad server, an ad request that is indicative of an ad space within the second portion of the digital content, wherein responsive to receiving the ad request the ad server provides the video tag to the client device.

14. The method of claim 13 , further comprising:

responsive to receiving the video tag by way of the client device, obtaining the video content identified by the video tag;

executing, by way of the client device, code included in the video content, wherein execution of the code by the client device causes the client device to obtain a second video tag; and

responsive to receiving the second video tag, obtaining, by way of the client device, second video content for presentment in the second portion of the digital content.

15. The method of claim 1 , wherein causing the client device to cache the portion of the video content prior to presentation of the video content within the second portion of the digital content comprises:

causing the client device to provide, to an ad server, an ad request that is indicative of an ad space within the second portion of the digital content, wherein responsive to receiving the ad request the ad server provides the portion of the video content to the client device.

16. A server computing device comprising:

at least one processor; and

memory that stores instructions that, when executed by the processor, cause the processor to perform first acts comprising:

determining, based upon activity data indicative of interaction of a user with respect to a client device while the client device displays a first portion of digital content, that a likelihood of the user triggering presentation of video content within a second portion of the digital content that is not included in the first portion of digital content exceeds a threshold; and

responsive to determining that the likelihood of the user triggering presentation of the video content within the second portion of the digital content exceeds the threshold, performing second acts comprising at least one of:

causing the client device to obtain a video tag that identifies the video content to be presented in the second portion of the digital content; or

causing the client device to cache at least a portion of the video content prior to presentation of the video content within the second portion of the digital content.

17. The server computing device of claim 16 , wherein causing the client device to obtain the video tag comprises causing the client device to submit an ad request to an ad server, wherein responsive to receipt of the ad request the ad server provides the video tag to the client device.

18. The server computing device of claim 16 , wherein causing the client device to cache at least the portion of the video content comprises causing the client device to submit an ad request to an ad server, wherein responsive to receipt of the ad request the ad server provides the portion of the video content to the client device.

19. A client computing device comprising:

a display;

at least one processor; and

memory that stores instructions that, when executed by the processor, cause the processor to perform acts comprising:

determining, based upon activity data indicative of interaction of a user with respect to the client computing device while the client device displays a first portion of digital content on the display, that a likelihood of the user triggering presentation of video content within a second portion of the digital content that is not displayed on the display exceeds a threshold; and

responsive to determining that the likelihood exceeds the threshold, outputting, to a server computing device, a request for the video content that is configured to cause the server computing device to provide the client computing device with at least one of:

a video tag that identifies the video content to be presented in the second portion of the digital content; or

at least a portion of the video content, wherein responsive to receipt of the portion of the video content the client computing device caches the portion of the video content prior to presentation of the video content within the second portion of the digital content.

20. The client computing device of claim 19 , wherein the request for the video content is configured to cause the server computing device to provide the client computing device with the portion of the video content, the acts further comprising:

responsive to the user triggering presentation of the video content within the second portion of the digital content, playing the cached portion of the video content.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 10, 2023
From: HOFFERT, ERIC M.; WEISS, JEFFREY; PITTS, VIKKI; KRASSEL, ALEXANDER; NISMAN, YEVGENIY; SHIVAPURKAR, RADHIKA
To: XANDR INC.
Reel/Frame 063594/0123 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 5, 2023
From: XANDR INC.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 063264/0001 →
Continuity (8)
Continuation 17313222 · May 6, 2021
Continuation 15943375 · Apr 2, 2018
Continuation In Part 15341888 · Nov 2, 2016
Provisional Application 62479456 · Mar 31, 2017
Provisional Application 62298602 · Feb 23, 2016
Provisional Application 62298570 · Feb 23, 2016
Provisional Application 62249861 · Nov 2, 2015
Related Publication 20230032830A1 · Feb 2, 2023