IP Library Granted Patent US 12,039,383
Granted Patent B1
US 12,039,383 · App. 17/850,366 · Granted Jul 16, 2024

Coordinated effects in experiences

Inventors: Shyamalan Pather (Seattle, WA); Michelle Ruby Hwang (Seattle, WA); Nora Micheva (Seattle, WA)
Assignee: Meta Platforms, Inc.
G06F9/547A63F13/52A63F13/86G06F9/543G06V40/16
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,039,383
App. No.
17/850,366
Granted
Jul 16, 2024
Kind
B1
Abstract

Exemplary embodiments relate to the application of coordinated or cooperative effects to a coordinated activity. A coordinated activity protocol is provided for synchronizing interactive effects and experiences across multiple devices. The protocol allows effects to be initiated and coordinated on multiple devices via a real-time communications (RTC) channel. Messages may be exchanged to cooperatively initiate the effect, and (once initiated) generic data may be exchanged via application programming interface (API) calls. According to some embodiments, the coordinated activity is a shared video experience, such as a video conference or shared video-watching experience. According to other embodiments, the coordinated activity relates to other types of experiences, such as single- or multi-player games, shared book reading, communal interactions with a photo album, etc.

Claims (53)

1. A method, comprising:

receiving, from a first device engaged in a coordinated activity involving an exchange of graphical information with a second device, a first application programming interface (API) call to initiate a media effect, the first API call associated with modifying the graphical information of the coordinated activity;

transmitting the first API call to the second device;

receiving, from the second device responsive to the first API call, a second API call comprising a request for logic to implement the media effect, the logic comprising instructions for an animation depicting the media effect and location information for implementing the media effect on the second device;

identifying, based on the second API call, the logic to implement the media effect in an effect library, wherein the effect library stores logic for a plurality of media effects including the media effect, wherein the logic is identified based on an identifier of the media effect; and

transmitting, to the second device, the logic to implement the media effect.

2. The method of claim 1 , further comprising:

initiating the media effect according to a device-agnostic coordinated activity protocol.

3. The method of claim 2 , wherein information associated with the first API call comprises formatted data associated with a service that is predefined by the coordinated activity protocol, wherein the information associated with the first API call further relates to a state of the coordinated activity.

4. The method of claim 2 , wherein the first API call further comprises an identifier of the first device as an initiating device of the media effect.

5. The method of claim 1 , wherein the location information is determined based at least in part on facial recognition.

6. The method of claim 1 , further comprising:

identifying, based on a plurality of target device identifiers specified in the first API call, a plurality of target devices participating in the coordinated activity, the plurality of target devices comprising at least the second device; and

transmitting the first API call to the identified plurality of target devices.

7. A non-transitory computer-readable storage medium, the computer-readable storage medium including instructions that when executed by a processor, cause the processor to:

receive, from a first device engaged in a coordinated activity involving an exchange of graphical information with a second device, a first application programming interface (API) call to initiate a media effect, the first API call associated with modifying the graphical information of the coordinated activity;

transmit the first API call to the second device;

receive, from the second device responsive to the first API call, a second API call comprising a request for logic to implement the media effect, the logic comprising instructions for an animation depicting the media effect and location information

for implementing the media effect on the second device;

identify, based on the second API call, the logic to implement the media effect in an effect library, wherein the effect library stores logic for a plurality of media effects including the media effect, wherein the logic is identified based on an identifier of the media effect; and

transmit, to the second device, the logic to implement the media effect.

8. The computer-readable storage medium of claim 7 , wherein the instructions further cause the processor to:

initiate the media effect according to a device-agnostic coordinated activity protocol.

9. The computer-readable storage medium of claim 8 , wherein information associated with the first API call comprises formatted data associated with a service that is predefined by the coordinated activity protocol, wherein the information associated with the first API call further relates to a state of the coordinated activity.

10. The computer-readable storage medium of claim 8 , wherein the first API call further comprises an identifier of the first device as an initiating device of the media effect.

11. The computer-readable storage medium of claim 7 , wherein the location information is determined based at least in part on facial recognition.

12. The computer-readable storage medium of claim 7 , wherein the instructions further cause the processor to:

identify, based on a plurality of target device identifiers specified in the first API call, a plurality of target devices participating in the coordinated activity, the plurality of target devices comprising at least the second device; and

transmit the first API call to the identified plurality of target devices.

13. A computing apparatus

comprising: a processor; and

a memory storing instructions that, when executed by the processor, cause the processor to:

receive, from a first device engaged in a coordinated activity involving an exchange of graphical information with a second device, a first application programming interface (API) call to initiate a media effect, the first API call associated with modifying the graphical information of the coordinated activity;

transmit the first API call to the second device;

receive, from the second device responsive to the first API call, a second API call comprising a request for logic to implement the media effect, the logic comprising instructions for an animation depicting the media effect and location information

for implementing the media effect on the second device;

identify, based on the second API call, the logic to implement the media effect in an effect library, wherein the effect library stores logic for a plurality of media effects including the media effect, wherein the logic is identified based on an identifier of the media effect; and

transmit, to the second device, the logic to implement the media effect.

14. The computing apparatus of claim 13 ,

wherein the instructions further cause the processor to:

initiate the media effect according to a device-agnostic coordinated activity protocol.

15. The computing apparatus of claim 14 , wherein information associated with the first API call comprises formatted data associated with a service that is predefined by the coordinated activity protocol, wherein the information associated with the first API call further relates to a state of the coordinated activity.

16. The computing apparatus of claim 14 , wherein the first API call further comprises an identifier of the first device as an initiating device of the media effect.

17. The computing apparatus of claim 13 ,

wherein the instructions further cause the processor to:

identify, based on a plurality of target device identifiers specified in the first API call, a plurality of target devices participating in the coordinated activity, the plurality of target devices comprising at least the second device; and

transmit the first API call to the identified plurality of target devices.

18. The computing apparatus of claim 17 , wherein the instructions further cause the processor to:

based on a determination that an acknowledgment for the first API call has not been received from a third device of the plurality of target devices, programmatically retransmit the first API call to the third device.

19. The method of claim 6 , further comprising:

based on a determination that an acknowledgment for the first API call has not been received from a third device of the plurality of target devices, programmatically retransmitting the first API call to the third device.

20. The computer-readable storage medium of claim 12 , wherein the instructions further cause the processor to:

based on a determination that an acknowledgment for the first API call has not been received from a third device of the plurality of target devices, programmatically retransmit the first API call to the third device.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE FIRST INVENTOR NAME PREVIOUSLY RECORDED AT REEL: 66653 FRAME: 514. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded May 1, 2024
From: PATHER, SHYAMALAN; HWANG, MICHELLE RUBY; MICHEVA, NORA
To: FACEBOOK, INC.
Reel/Frame 067282/0440 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 5, 2024
From: PATHER, SHYAMALAU; HWANG, MICHELLE RUBY; MICHEVA, NORA
To: FACEBOOK, INC.
Reel/Frame 066653/0514 →
CHANGE OF NAME Recorded Mar 5, 2024
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 066739/0742 →
Continuity (2)
Continuation 15870040 · Jan 12, 2018
Continuation In Part 15869926 · Jan 12, 2018