IP Library › Granted Patent US 11,256,546
Granted Patent B2
US 11,256,546 · App. 16/460,354 · Granted Feb 22, 2022

Methods, apparatuses and computer readable mediums for network based media processing

Inventors: Yu You (Kangasala, FI); Sujeet Shyamsundar Mate (Tampere, FI)
Assignee: Nokia Technologies Oy
G06F9/5027G06F9/4881G06F9/5038G06F9/5066H04L47/70H04L65/4069
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,256,546
App. No.
16/460,354
Granted
Feb 22, 2022
Kind
B2
Abstract

A network apparatus distributes a first plurality of tasks for processing first media content among at least a first slicing window and a second slicing window based on a connection map included in a workflow description from a network based media processing (NBMP) source. The first slicing window includes at least one first task from among the first plurality of tasks and the second slicing window includes at least one second task from among the first plurality of tasks. The network apparatus provisions the first media content to at least a first of the one or more media sinks by deploying the at least one first task to one or more first media processing entities, and deploying the at least one second task to one or more of the first media processing entities in response to receiving an indication that the at least one first task has been deployed successfully.

Claims (64)

1. A method for provisioning media content to one or more media sinks, the method comprising:

distributing a first plurality of tasks for processing first media content among at least a first slicing window and a second slicing window based on a connection map included in a workflow description from a network based media processing (NBMP) source, the first slicing window including at least one first task from among the first plurality of tasks and the second slicing window including at least one second task from among the first plurality of tasks;

calculating resources needed for the first slicing window; and

provisioning the first media content to at least a first of the one or more media sinks by

deploying the at least one first task to one or more first media processing entities based on the calculated resources, and

deploying the at least one second task to one or more of the first media processing entities in response to receiving an indication that the at least one first task has been deployed successfully.

2. The method of claim 1 , wherein

the connection map includes a flow control parameter indicating whether a respective pair of tasks among the first plurality of tasks must be included in a same slicing window; and

the distributing distributes the respective pair of tasks based on the flow control parameter.

3. The method of claim 2 , wherein the flow control parameter is a breakable parameter.

4. The method of claim 3 , wherein the flow control parameter for the respective pair of tasks further includes a shareable parameter indicating whether the respective pair of tasks must be deployed at a same media processing entity.

5. The method of claim 1 , wherein

the workflow description includes an execution mode parameter indicating an execution mode for processing the first plurality of tasks.

6. The method of claim 5 , wherein the execution mode is one of a streaming execution mode and a stepping execution mode.

7. The method of claim 1 , wherein the provisioning further comprises:

scheduling the at least one first task and the at least one second task for deployment to one or more of the first media processing entities prior to deploying the at least one first task and prior to deploying the at least one second task.

8. The method of claim 1 , wherein the first plurality of tasks form a workflow including at least two connected tasks.

9. The method of claim 1 , further comprising:

distributing a second plurality of tasks for processing second media content among at least the first slicing window and the second slicing window, the first slicing window including at least one third task from among the second plurality of tasks and the second slicing window including at least one fourth task from among the second plurality of tasks; and

provisioning the second media content to at least a second of the one or more media sinks by

deploying the at least one third task to one or more second media processing entities, and

deploying the at least one fourth task to one or more of the second media processing entities in response to receiving the indication that the at least one first task has been deployed successfully.

10. The method of claim 9 , wherein

the first plurality of tasks form a first workflow;

the second plurality of tasks form a second workflow; and

the first workflow and the second workflow are executed collaboratively and synchronized according to the first slicing window and the second slicing window.

11. The method of claim 1 , wherein the deploying the at least one second task to one or more of the first media processing entities comprises:

deploying the at least one second task to the one or more of the first media processing entities in response to receiving the indication that all tasks included in the first slicing window have been deployed and executed successfully.

12. The method of claim 1 , wherein

the workflow description describes information enabling a corresponding workflow, and

the connection map describes connection edges of a directed acyclic graph (DAG) representation of the corresponding workflow.

13. A network apparatus comprising:

at least one processor; and

at least one memory including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the network apparatus to

distribute first plurality of tasks for processing first media content among at least a first slicing window and a second slicing window based on a connection map included in a workflow description from a network based media processing (NBMP) source, the first slicing window including at least one first task from among the first plurality of tasks and the second slicing window including at least one second task from among the first plurality of tasks;

calculate resources needed for the first slicing window; and

provision the first media content to at least a first of one or more media sinks by

deploying the at least one first task to one or more first media processing entities based on the calculated resources, and

deploying the at least one second task to one or more of the first media processing entities in response to receiving an indication that the at least one first task has been deployed successfully.

14. The network apparatus of claim 13 , wherein

the connection map includes a flow control parameter indicating whether a respective pair of tasks among the first plurality of tasks must be included in a same slicing window; and

the at least one memory and the computer program code are configured to, with the at least one processor, cause the network apparatus to distribute the respective pair of tasks based on the flow control parameter.

15. The network apparatus of claim 14 , wherein the flow control parameter is a breakable parameter.

16. The network apparatus of claim 15 , wherein the flow control parameter for the respective pair of tasks further includes a shareable parameter indicating whether the respective pair of tasks must be deployed at a same media processing entity.

17. The network apparatus of claim 13 , wherein

the workflow description includes an execution mode parameter indicating an execution mode for processing the first plurality of tasks.

18. The network apparatus of claim 17 , wherein the execution mode is one of a streaming execution mode and a stepping execution mode.

19. The network apparatus of claim 13 , wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the network apparatus to

schedule the at least one first task and the at least one second task for deployment to one or more of the first media processing entities prior to deploying the at least one first task and prior to deploying the at least one second task.

20. The network apparatus of claim 13 , wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the network apparatus to

distribute a second plurality of tasks for processing second media content among at least the first slicing window and the second slicing window, the first slicing window including at least one third task from among the second plurality of tasks and the second slicing window including at least one fourth task from among the second plurality of tasks; and

provision the second media content to at least a second of the one or more media sinks by

deploying the at least one third task to one or more second media processing entities, and

deploying the at least one fourth task to one or more of the second media processing entities in response to receiving the indication that the at least one first task has been deployed successfully.

21. The network apparatus of claim 20 , wherein

the first plurality of tasks form a first workflow;

the second plurality of tasks form a second workflow; and

the first workflow and the second workflow are executed collaboratively and synchronized according to the first slicing window and the second slicing window.

22. A non-transitory computer-readable medium storing computer-executable instructions that, when executed by at least one processor at network apparatus, cause the network apparatus to perform a method for provisioning media content to one or more media sinks, the method comprising:

distributing a first plurality of tasks for processing first media content among at least a first slicing window and a second slicing window based on a connection map included in a workflow description from a network based media processing (NBMP) source, the first slicing window including at least one first task from among the first plurality of tasks and the second slicing window including at least one second task from among the first plurality of tasks;

calculating resources needed for the first slicing window; and

provisioning the first media content to at least a first of the one or more media sinks by

deploying the at least one first task to one or more first media processing entities based on the calculated resources, and

deploying the at least one second task to one or more of the first media processing entities in response to receiving an indication that the at least one first task has been deployed successfully.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2019
From: YOU, YU; MATE, SUJEET SHYAMSUNDAR
To: NOKIA TECHNOLOGIES OY
Reel/Frame 050132/0205 →
Continuity (1)
Related Publication 20210004273A1 · Jan 7, 2021