IP Library Granted Patent US 10,390,060
Granted Patent B2
US 10,390,060 · App. 15/586,875 · Granted Aug 20, 2019

Guaranteed delivery of video content items based on received constraints

Inventors: Zhengyong Zhu (San Jose, CA); Vishal Jain (Mountain View, CA); Marcin Zajac (Belmont, CA)
Assignee: Facebook, Inc.
H04N21/2407H04N21/251H04N21/25891H04N21/262H04N21/44204
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,390,060
App. No.
15/586,875
Granted
Aug 20, 2019
Kind
B2
Abstract

An online system presents a video from a third party system based on a video view value generate by the online system. Based on a target audience specification from the third party system, the online system selects a plurality of online system users as the audience of the video. The online system presents the video the selected users in a duration of time equal to a video presentation period received from the third party system. A play of the video by a selected user constitutes a historical view. The online system generates a video view value for the video based on historical views of the video by the selected users. The online system further applies the generated video view value for pacing delivery of the video by the online system.

Claims (59)

1. A method for guaranteed delivery of a video by an online system, the method comprising:

receiving, at the online system from a third party system, a video-presentation request, the video-presentation request comprising a video, a video presentation period, a target video view value, and a target audience specification, the video presentation period indicating a range of dates for which the online system is to present the video to users of the online system, the target video view value indicating a target number of times that the video is played for at least a threshold duration;

accessing a metadata of users of the online system;

selecting a plurality of users of the online system as an audience for the video, wherein at least part of the metadata for each selected user matches the target audience specification;

presenting the video to the selected users for a duration of time equal to the video presentation period received from the third party system;

determining a video view value for the video, the video view value indicating a count of a number of times that the video was played by the selected users for at least the threshold duration; and

applying the video view value to modify a pacing of delivery of the video by the online system over a period of time by:

comparing the video view value with a video view limit, the video view limit computed by dividing the target video view value by the video presentation period;

in response to the video view value being larger than the video view limit, delivering the video to fewer users of the online system; and

in response to the video view value smaller than the video view limit, delivering the video to more users of the online system.

2. The method of claim 1 , wherein the target audience specification received from the third party systems provides one or more characteristics of users eligible to be presented with the video, the one or more characteristics of users including at least one of the following: descriptive information of users, actions of users on the online system, and connections between users on the online system.

3. The method of claim 1 , wherein determining video view value for the video comprises:

determining an individual view value for each selected user, the individual view value indicating a view count for the selected user; and

aggregating the individual view values of each of the selected users.

4. The method of claim 3 , wherein determining an individual view value for each selected user comprises:

retrieving one or more historical video views of a selected user, a historical video view being a previous play of the video by the selected user; and

for each retrieved historical video view, in response to determining that the selected user played the video for at least the threshold duration in the retrieved historical video view, including the retrieved historical video view as part of the individual view value for the selected user.

5. The method of claim 4 , further comprising:

in response to determining that the selected user did not play the video for at least a threshold duration in the retrieved historical view, excluding the retrieved historical view from the individual view value for the selected user.

6. The method of claim 1 , further comprising sending the video view value to the third party system for an adjustment in the video-presentation request.

7. The method of claim 5 , wherein the delivery of the video by the online system is paced on a daily basis.

8. A computer program product comprising a non-transitory computer readable storage medium having instructions encoded thereon that, when executed by a processor, cause the processor to:

receive, at the online system from a third party system, a video-presentation request, the video-presentation request comprising a video, a video presentation period, a target video view value, and a target audience specification, the video presentation period indicating a range of dates for which the online system is to present the video to users of the online system, the target video view value indicating a target number of times that the video is played for at least a threshold duration;

access a metadata of users of the online system;

select a plurality of users of the online system as an audience for the video, wherein at least part of the metadata for each selected user matches the target audience specification;

present the video to the selected users for a duration of time equal to the video presentation period received from the third party system;

determine a video view value for the video, the video view value indicating a count of a number of times that the video was played by the selected users for at least the threshold duration; and

apply the video view value to modify a pacing of delivery of the video by the online system over a period of time by:

comparing the video view value with a video view limit, the video view limit computed by dividing the target video view value by the video presentation period;

in response to the video view value being larger than the video view limit, delivering the video to fewer users of the online system; and

in response to the video view value smaller than the video view limit, delivering the video to more users of the online system.

9. The computer program product of claim 8 , wherein the target audience specification received from the third party systems provides one or more characteristics of users eligible to be presented with the video, the one or more characteristics of users including at least one of the following: descriptive information of users, actions of users on the online system, and connections between users on the online system.

10. The computer program product of claim 8 , wherein the instructions that cause the processor to determine a video view value for the video comprise instructions that cause the processor to:

determine an individual view value for each selected user, the individual view value indicating a view count of the selected user; and

aggregate the individual view values of each of the selected users.

11. The computer program product of claim 10 , wherein the instructions that cause the processor to determine an individual view value for each selected user comprise instructions that cause the processor to:

retrieve one or more historical video views of a selected user, a historical video view being a previous play of the video by the selected user; and

for each retrieved historical video view, in response to determining that the selected user played the video for at least the threshold duration in the retrieved historical video view, include the retrieved historical video view as part of the individual view value for the selected user.

12. The computer program product of claim 8 , further comprising instructions that cause the processor to send the video view value to the third party system for an adjustment in the video-presentation request.

13. The method of claim 8 , wherein the delivery of the video by the online system is paced on a daily basis.

14. A computer system comprising:

a non-transitory computer-readable storage medium storing executable computer program instructions, the computer program instructions comprising instructions that when executed cause a computer processor to perform steps, comprising:

receiving, at the online system from a third party system, a video-presentation request, the video-presentation request comprising a video, a video presentation period, a target video view value, and a target audience specification, the video presentation period indicating a range of dates for which the online system is to present the video to users of the online system, the target video view value indicating a target number of times that the video is played for at least a threshold duration;

accessing a metadata of users of the online system;

selecting a plurality of users of the online system as an audience for the video, wherein at least part of the metadata for each selected user matches the target audience specification;

presenting the video to the selected users for a duration of time equal to the video presentation period received from the third party system;

determining a video view value for the video, the video view value indicating a count of a number of times that the video was played by the selected users for at least the threshold duration; and

applying the video view value to modify a pacing of delivery of the video by the online system over a period of time by:

comparing the video view value with a video view limit, the video view limit computed by dividing the target video view value by the video presentation period;

in response to the video view value being larger than the video view limit, delivering the video to fewer users of the online system; and

in response to the video view value smaller than the video view limit, delivering the video to more users of the online system.

15. The method of claim 14 , wherein the target audience specification received from the third party systems provides one or more characteristics of users eligible to be presented with the video, the one or more characteristics of users including at least one of the following: descriptive information of users, actions of users on the online system, and connections between users on the online system.

16. The method of claim 14 , wherein determining video view value for the video comprises:

determining an individual view value for each selected user, the individual view value indicating a view count of the selected user; and

aggregating the individual view values of each of the selected users.

17. The method of claim 16 , wherein determining an individual view value for each selected user comprises:

retrieving one or more historical video views of a selected user, a historical video view being a previous play of the video by the selected user; and

for each retrieved historical video view, in response to determining that the selected user played the video for at least the threshold duration in the retrieved historical video view, including the retrieved historical video view as part of the individual view value for the selected user.

18. The system of claim 14 , wherein the delivery of the video by the online system is paced on a daily basis.

Assignments (2)
CHANGE OF NAME Recorded Nov 18, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058897/0824 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2017
From: ZHU, ZHENGYONG; JAIN, VISHAL; ZAJAC, MARCIN
To: FACEBOOK, INC.
Reel/Frame 042475/0168 →
Continuity (1)
Related Publication 20180324476A1 · Nov 8, 2018