IP Library › Granted Patent US 9,723,043
Granted Patent B2
US 9,723,043 · App. 15/339,054 · Granted Aug 1, 2017

Streaming data on data processes

Inventors: Paolo Dettori (Elmsford, NY); Julio Nogima (While Plains, NY); Frank A. Schaffa (Hartsdale, NY)
Assignee: International Business Machines Corporation
H04L65/4084H04L29/06
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 9,723,043
App. No.
15/339,054
Granted
Aug 1, 2017
Kind
B2
Abstract

A method, system and computer program product for servicing media content. In one embodiment, the media content is processed by having each of a group of services process increments of the media content, one increment at a time; and the order in which the services process these increments is orchestrated to process all of the media content in accordance with a defined procedure. In one embodiment, the increments of the media content are passed, one increment after another, to at least a plurality of the services in a defined order. In an embodiment, each time one of the plurality of services passes one of the increments of the media content to a subsequent one of the services in the defined order, the one of the plurality of services requests another increment of the media content from a preceding one of the services in the defined order.

Claims (43)

1. A method of servicing media content, comprising:

receiving specified media content at one or more processing units;

requesting a multitude of services operating on the one or more processing units to process the media content by having each of the services process increments of the media content, one increment at a time; and

executing the one or more processing units, implementing a media content servicing program, for orchestrating the order in which the services process the increments of the media content to process all of the media content in accordance with a defined procedure, including orchestrating the exchange of the increments of the media content among the services in a defined sequence, and wherein:

the requesting a multitude of services to process the media content includes each of said services transitioning through a series of states to process the media content, including

after said each service receives the request to process the media content, said each service moving to a read state where said each service reads one of the increments of the media content, and

after reading said one of the increments of the media content, said each service moving to a process state wherein the said each service processes the read one of the increments of the media content.

2. The method according to claim 1 , wherein the requesting a multitude of services to process the media content further includes said each service, after processing the read one of the increments of the media content, returning to the read state to read another increment of the media content.

3. The method according to claim 1 , wherein the requesting a multitude of services to process the media content further includes said each service repeating the read state and the process state to process additional increments of the media content.

4. The method according to claim 1 , the repeating the read state and the process state includes repeating the read state and the process state until said each service receives a message that no more data are available.

5. The method according to claim 4 , wherein the requesting a multitude of services to process the media content further includes, when said each service receives the message that no more data are available, said each service sending a message that the request has been completed.

6. The method according to claim 1 , wherein the each of said services transitioning through a series of states to process the media content further includes after the said each service processes the read one of the increments of the media content, said each service moves to a write state and outputs the processed read one of the increments of the media content.

7. The method according to claim 1 , wherein the each of said services transitioning through a series of states to process the media content further includes, when said each service receives said request, said each service moving to a setup state where the said each service prepares to perform the service provided by said each service.

8. The method according to claim 1 , wherein the each of said services transitioning through a series of states to process the media content further includes putting some of the read content in a buffer.

9. The method according to claim 1 , wherein the each of said services transitioning through a series of states to process the media content further includes storing the processed content in a buffer.

10. The method according to claim 1 , wherein the orchestrating includes passing the multitude of increments, one increment after another, to at least a plurality of the services in a defined order.

11. A system for servicing media content, comprising:

one or more processing units; and

a memory for storing instructions for the one or more processing units; and

wherein the one or more processing units are configured for:

providing a multitude of services to process the media content;

receiving specified media content;

requesting the multitude of services to process the media content by having each of the services process increments of the media content, one increment at a time; and

implementing a media content servicing program, for orchestrating the order in which the services process the increments of the media content to process all of the media content in accordance with a defined procedure, including orchestrating the exchange of the increments of the media content among the services in a defined sequence, and wherein:

the requesting a multitude of services to process the media content includes each of said services transitioning through a series of states to process the media content, including

after said each service receives the request to process the media content, said each service moving to a read state where said each service reads one of the increments of the media content, and

after reading said one of the increments of the media content, said each service moving to a process state wherein the said each service processes the read one of the increments of the media content.

12. The system according to claim 11 , wherein the requesting a multitude of services to process the media content further includes said each service, after processing the read one of the increments of the media content, returning to the read state to read another increment of the media content.

13. The system according to claim 11 , wherein the requesting a multitude of services to process the media content further includes said each service repeating the read state and the process state to process additional increments of the media content.

14. The method according to claim 13 , wherein the repeating the read state and the process state includes repeating the read state and the process state until said each service receives a message that no more data are available.

15. The method according to claim 14 , wherein the requesting a multitude of services to process the media content further includes, when said each service receives the message that no more data are available, said each service sending a message that the request has been completed.

16. A computer program product comprising:

at least one tangible computer readable device having computer readable program code logic tangibly embodied therein to service media content, the computer readable program code logic, when executing on a computer performing the following:

receiving specified media content at one or more processing units;

requesting a multitude of services operating on the one or more processing units to process the media content by having each of the services process increments of the media content, one increment at a time; and

executing the one or more processing units, implementing a media content servicing program, for orchestrating the order in which the services process the increments of the media content to process all of the media content in accordance with a defined procedure, including orchestrating the exchange of the increments of the media content among the services in a defined sequence, and wherein:

the requesting a multitude of services to process the media content includes each of said services transitioning through a series of states to process the media content, including

after said each service receives the request to process the media content, said each service moving to a read state where said each service reads one of the increments of the media content, and

after reading said one of the increments of the media content, said each service moving to a process state wherein the said each service processes the read one of the increments of the media content.

17. The computer program product according to claim 16 , wherein the requesting a multitude of services to process the media content further includes said each service, after processing the read one of the increments of the media content, returning to the read state to read another increment of the media content.

18. The computer program product according to claim 16 , wherein the requesting a multitude of services to process the media content further includes said each service repeating the read state and the process state to process additional increments of the media content.

19. The computer program product according to claim 18 , wherein the repeating the read state and the process state includes repeating the read state and the process state until said each service receives a message that no more data are available.

20. The computer program product according to claim 19 , wherein the requesting a multitude of services to process the media content further includes, when said each service receives the message that no more data are available, said each service sending a message that the request has been completed.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2016
From: DETTORI, PAOLO; NOGIMA, JULIO; SCHAFFA, FRANK A.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 040176/0358 →
Continuity (4)
Continuation 14976045 · Dec 21, 2015
Continuation 13969305 · Aug 16, 2013
Continuation 13673227 · Nov 9, 2012
Related Publication 20170093940A1 · Mar 30, 2017