IP Library Granted Patent US 10,083,355
Granted Patent B2
US 10,083,355 · App. 15/192,804 · Granted Sep 25, 2018

Systems and methods for incremental media processing based on utilizing client-side computation

Inventors: Karthik Subbian (Cupertino, CA); Benjamin Ray (Palo Alto, CA)
Assignee: Facebook, Inc.
G06K9/00664G11B27/10
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,083,355
App. No.
15/192,804
Granted
Sep 25, 2018
Kind
B2
Abstract

Systems, methods, and non-transitory computer-readable media can identify a media content item for which media processing is to be performed. State information associated with the media content item can be acquired. At least some of the media processing can be enabled, based on the state information, to be performed client-side with respect to the media content item. The state information can indicate a next processing step of the at least some of the media processing that is to be performed. The state information can be updated based on the at least some of the media processing performed client-side.

Claims (44)

1. A computer-implemented method comprising:

identifying, by a computing system, a media content item for which media processing is to be performed;

acquiring, by the computing system, state information associated with the media content item;

enabling, by the computing system, based on the state information, at least some of the media processing to be performed client-side with respect to the media content item, the state information indicating a next processing step of the at least some of the media processing that is to be performed, wherein the at least some of the media processing is separable into at least a first portion of the media processing and a second portion of the media processing; and

updating, by the computing system, the state information based on the at least some of the media processing performed client-side.

2. The computer-implemented method of claim 1 , wherein the state information indicates that the next processing step corresponds to the first portion of the media processing, and wherein the second portion of the media processing corresponds to an incremental processing step subsequent to the first portion of the media processing.

3. The computer-implemented method of claim 2 , wherein enabling the at least some of the media processing to be performed client-side further comprises:

performing client-side at least the first portion of the media processing to produce a first set of data associated with the media content item;

performing client-side at least the second portion of the media processing to produce a second set of data associated with the media content item; and

utilizing at least one of the first set of data or the second set of data when updating the state information.

4. The computer-implemented method of claim 3 , wherein the first portion of the media processing is performed via a first client computing system, wherein the state information is updated via the first client computing system utilizing the first set of data, wherein the second portion of the media processing is performed via a second client computing system, and wherein the state information is also updated via the second client computing system utilizing the second set of data.

5. The computer-implemented method of claim 3 , wherein the first set of data is cached subsequent to the first portion of the media processing being performed, and wherein the second set of data is cached subsequent to the second portion of the media processing being performed.

6. The computer-implemented method of claim 1 , further comprising:

transmitting, to a server, the state information subsequent to being updated.

7. The computer-implemented method of claim 1 , wherein the at least some of the media processing is performed while the media content item is being presented client-side.

8. The computer-implemented method of claim 1 , wherein the at least some of the media processing is performed while satisfying one or more client-side conditions.

9. The computer-implemented method of claim 8 , wherein the one or more client-side conditions includes at least one of a first requirement that the at least some of the media processing be performed within a specified maximum time duration or a second requirement that the at least some of the media processing be performed with a specified maximum amount of computing resources.

10. The computer-implemented method of claim 1 , wherein the media content item is associated with an image, and wherein the media processing is associated with optical character recognition.

11. A system comprising:

at least one processor; and

a memory storing instructions that, when executed by the at least one processor, cause the system to perform:

identifying a media content item for which media processing is to be performed;

acquiring state information associated with the media content item;

enabling, based on the state information, at least some of the media processing to be performed client-side with respect to the media content item, the state information indicating a next processing step of the at least some of the media processing that is to be performed, wherein the at least some of the media processing is separable into at least a first portion of the media processing and a second portion of the media processing; and

updating the state information based on the at least some of the media processing performed client-side.

12. The system of claim 11 , wherein the state information indicates that the next processing step corresponds to the first portion of the media processing, and wherein the second portion of the media processing corresponds to an incremental processing step subsequent to the first portion of the media processing.

13. The system of claim 12 , wherein enabling the at least some of the media processing to be performed client-side further comprises:

performing client-side at least the first portion of the media processing to produce a first set of data associated with the media content item;

performing client-side at least the second portion of the media processing to produce a second set of data associated with the media content item; and

utilizing at least one of the first set of data or the second set of data when updating the state information.

14. The system of claim 13 , wherein the first portion of the media processing is performed via a first client computing system, wherein the state information is updated via the first client computing system utilizing the first set of data, wherein the second portion of the media processing is performed via a second client computing system, and wherein the state information is also updated via the second client computing system utilizing the second set of data.

15. The system of claim 11 , wherein the media content item is associated with an image, and wherein the media processing is associated with optical character recognition.

16. A non-transitory computer-readable storage medium including instructions that, when executed by at least one processor of a computing system, cause the computing system to perform a method comprising:

identifying a media content item for which media processing is to be performed;

acquiring state information associated with the media content item;

enabling, based on the state information, at least some of the media processing to be performed client-side with respect to the media content item, the state information indicating a next processing step of the at least some of the media processing that is to be performed, wherein the at least some of the media processing is separable into at least a first portion of the media processing and a second portion of the media processing; and

updating the state information based on the at least some of the media processing performed client-side.

17. The non-transitory computer-readable storage medium of claim 16 , wherein the state information indicates that the next processing step corresponds to the first portion of the media processing, and wherein the second portion of the media processing corresponds to an incremental processing step subsequent to the first portion of the media processing.

18. The non-transitory computer-readable storage medium of claim 17 , wherein enabling the at least some of the media processing to be performed client-side further comprises:

performing client-side at least the first portion of the media processing to produce a first set of data associated with the media content item;

performing client-side at least the second portion of the media processing to produce a second set of data associated with the media content item; and

utilizing at least one of the first set of data or the second set of data when updating the state information.

19. The non-transitory computer-readable storage medium of claim 18 , wherein the first portion of the media processing is performed via a first client computing system, wherein the state information is updated via the first client computing system utilizing the first set of data, wherein the second portion of the media processing is performed via a second client computing system, and wherein the state information is also updated via the second client computing system utilizing the second set of data.

20. The non-transitory computer-readable storage medium of claim 16 , wherein the media content item is associated with an image, and wherein the media processing is associated with optical character recognition.

Assignments (2)
CHANGE OF NAME Recorded Nov 24, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058250/0283 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 8, 2017
From: SUBBIAN, KARTHIK; RAY, BENJAMIN
To: FACEBOOK, INC.
Reel/Frame 042646/0509 →
Continuity (1)
Related Publication 20170372138A1 · Dec 28, 2017