IP Library Granted Patent US 11,334,310
Granted Patent B2
US 11,334,310 · App. 17/211,402 · Granted May 17, 2022

Synchronization of digital content consumption

Inventors: Thai Gia Tran (Palo Alto, CA); Aditya Aghi (Kirkland, WA); Olivier Alain Pierre Notteghem (San Francisco, CA); Gregory Stephen Williams (Sunnyvale, CA)
Assignee: Facebook Technologies, LLC.
G06F3/1454H04L7/0008
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 11,334,310
App. No.
17/211,402
Granted
May 17, 2022
Kind
B2
Abstract

In one embodiment, a method includes receiving playback statuses from one or more second client computing devices that are in a synchronous presentation session with a first client computing device. Content presented on the first client computing device and the one or more second client computing devices may be determined to be out of synchronization. A plurality of synchronization options for synchronization of the content may be displayed on the first client computing device. The plurality of synchronization options may be based on the playback statuses associated with the first client computing device and the one or more second client computing devices. A particular synchronization option may be selected from the plurality of synchronization options. The content on the first client computing device may be synchronized with the one or more second client computing devices based on the particular synchronization option.

Claims (50)

1. A method comprising, by a first client computing device:

receiving playback statuses from one or more second client computing devices that are in a synchronous presentation session with the first client computing device;

determining that content presented on the first client computing device and the one or more second client computing devices are out of synchronization;

displaying a plurality of synchronization options for synchronization of the content across the first client computing device and the one or more second client computing devices, wherein the plurality of synchronization options is based on the playback statuses associated with the first client computing device and the one or more second client computing devices;

receiving a selection of a particular synchronization option from the plurality of synchronization options; and

synchronizing the content on the first client computing device with the one or more second client computing devices based on the particular synchronization option.

2. The method of claim 1 , wherein the plurality of synchronization options comprises:

skipping ahead to fastest user among the first client computing device and the one or more second client computing devices;

jumping back to slowest user among the first client computing device and the one or more second client computing devices; or

averaging playback times across the first client computing device and the one or more second client computing devices and jumping to the average playback time.

3. The method of claim 1 , wherein the selection of the particular synchronization option from the plurality of synchronization options is received in response to users of the first client computing device and the one or more second client computing devices collectively deciding on a common playback time of the content.

4. The method of claim 1 , wherein the particular synchronization option is automatically selected based on user selection history.

5. The method of claim 1 , wherein determining that the content presented on the first client computing device and the one or more second client computing devices are out of synchronization comprises:

comparing the playback statuses of the content on the first client computing device and the one or more second client computing devices with each other; and

determining that a difference between the playback statuses of the content on the first client computing device and the one or more second client computing devices exceeds a certain threshold.

6. The method of claim 5 , wherein the certain threshold is learned based on past user selections.

7. The method of claim 1 , wherein the first client computing device and the one or more second client computing devices comprise three client computing devices associated with three users co-watching the content.

8. The method of claim 1 , wherein the first client computing device and the one or more second client computing devices comprise virtual reality devices.

9. The method of claim 8 , wherein the content presented on each of the first client computing device and the one or more second client computing devices is streamed from a third-party content source on a screen in a virtual reality environment.

10. The method of claim 8 , wherein a user of each of the first client computing device and the one or more second client computing devices is represented by a digital avatar in a virtual reality environment.

11. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:

receive playback statuses from one or more second client computing devices that are in a synchronous presentation session with a first client computing device;

determine that content presented on the first client computing device and the one or more second client computing devices are out of synchronization;

display a plurality of synchronization options for synchronization of the content across the first client computing device and the one or more second client computing devices, wherein the plurality of synchronization options is based on the playback statuses associated with the first client computing device and the one or more second client computing devices;

receive a selection of a particular synchronization option from the plurality of synchronization options; and

synchronize the content on the first client computing device with the one or more second client computing devices based on the particular synchronization option.

12. The media of claim 11 , wherein the plurality of synchronization options comprises:

skipping ahead to fastest user among the first client computing device and the one or more second client computing devices;

jumping back to slowest user among the first client computing device and the one or more second client computing devices; or

averaging playback times across the first client computing device and the one or more second client computing devices and jumping to the average playback time.

13. The media of claim 11 , wherein the selection of the particular synchronization option from the plurality of synchronization options is received in response to users of the first client computing device and the one or more second client computing devices collectively deciding on a common playback time of the content.

14. The media of claim 11 , wherein the particular synchronization option is automatically selected based on user selection history.

15. The media of claim 11 , wherein to determine that the content presented on the first client computing device and the one or more second client computing devices are out of synchronization, the software is further operable when executed to:

compare the playback statuses of the content on the first client computing device and the one or more second client computing devices with each other; and

determine that a difference between the playback statuses of the content on the first client computing device and the one or more second client computing devices exceeds a certain threshold.

16. A system comprising: one or more processors; and a non-transitory memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to:

receive playback statuses from one or more second client computing devices that are in a synchronous presentation session with a first client computing device;

determine that content presented on the first client computing device and the one or more second client computing devices are out of synchronization;

display a plurality of synchronization options for synchronization of the content across the first client computing device and the one or more second client computing devices, wherein the plurality of synchronization options is based on the playback statuses associated with the first client computing device and the one or more second client computing devices;

receive a selection of a particular synchronization option from the plurality of synchronization options; and

synchronize the content on the first client computing device with the one or more second client computing devices based on the particular synchronization option.

17. The system of claim 16 , wherein the plurality of synchronization options comprises:

skipping ahead to fastest user among the first client computing device and the one or more second client computing devices;

jumping back to slowest user among the first client computing device and the one or more second client computing devices; or

averaging playback times across the first client computing device and the one or more second client computing devices and jumping to the average playback time.

18. The system of claim 16 , wherein the selection of the particular synchronization option from the plurality of synchronization options is received in response to users of the first client computing device and the one or more second client computing devices collectively deciding on a common playback time of the content.

19. The system of claim 16 , wherein the particular synchronization option is automatically selected based on user selection history.

20. The system of claim 16 , wherein to determine that the content presented on the first client computing device and the one or more second client computing devices are out of synchronization, the processors are further operable when executing the instructions to:

compare the playback statuses of the content on the first client computing device and the one or more second client computing devices with each other; and

determine that a difference between the playback statuses of the content on the first client computing device and the one or more second client computing devices exceeds a certain threshold.

Assignments (1)
CHANGE OF NAME Recorded Jul 6, 2022
From: FACEBOOK TECHNOLOGIES, LLC
To: META PLATFORMS TECHNOLOGIES, LLC
Reel/Frame 060591/0848 →