IP Library › Granted Patent US 10,873,614
Granted Patent B2
US 10,873,614 · App. 16/245,137 · Granted Dec 22, 2020

Method and apparatus for configuration and deployment of media processing in the network

Inventors: Prakash Kolan (Plano, TX); Imed Bouazizi (Frisco, TX)
Assignee: Samsung Electronics Co., Ltd.
H04L65/601G06F9/3851G06F9/5072G06F16/483H04L65/60
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,873,614
App. No.
16/245,137
Granted
Dec 22, 2020
Kind
B2
Abstract

A method, an electronic device, and computer readable medium is provided. The method includes receiving, from a media source, a request for media processing, where the request includes a requested media output. The method also includes identifying one or more media processing functions to perform the request for media processing based on information associated with each of the one or more media processing functions. The method further includes configuring each of the one or more media processing functions by mapping the request for media processing to the one or more media processing functions based on the information associated with each of the one or more media processing functions. The method additionally includes monitoring the one or more media processing functions while the one or more media processing functions perform tasks to generate the requested media output.

Claims (80)

1. An electronic device comprising:

a communication interface configured to receive, from a media source, a request for media processing, the request including a requested media output;

a processor configured to:

in response to receiving the request, select multiple media processing functions from a plurality of media processing functions to perform various portions of the request for media processing, wherein the selected media processing functions are identified based on information that describes and is associated with each of the plurality of media processing functions, the information comprises:

input information describing an input type that a function is able to process,

output information describing an output that the function generates, and

requirement information that the function uses in order to process a received input;

configure each of the multiple media processing functions into a pipeline by mapping the request for media processing to the multiple media processing functions to generate the requested media output based on the information associated with each of the multiple media processing functions, wherein an output of one of the multiple media processing functions is mapped to an input of another one of the multiple media processing functions;

monitor the multiple media processing functions while the multiple media processing functions perform tasks to generate the requested media output; and

based on the monitoring, modify the pipeline of the multiple media processing functions to generate the requested media output.

2. The electronic device of claim 1 , wherein:

the processor is further configured to analyze the request for media processing to identify media data, and

to select the multiple media processing functions the processor is configured to:

search a directory listing the plurality of media processing functions for the multiple media processing functions that when organized into the pipeline, modify the media data based on the requested media output, and

select the multiple media processing functions from the directory based on the information associated with each of the multiple media processing functions.

3. The electronic device of claim 2 , wherein the processor is further configured to transmit, to a destination indicated in the request, a generated output from the multiple media processing functions, the generated output corresponding to the requested media output.

4. The electronic device of claim 1 wherein to configure each of the multiple media processing functions, the processor is configured to:

organize each of the multiple media processing functions into the pipeline,

wherein, the multiple media processing functions, when organized, are mapped to one another, and perform respective portions of the media processing until the requested media output is generated.

5. The electronic device of claim 4 wherein the processor is further configured to:

connect the multiple media processing functions,

wherein one function of the multiple media processing functions receives one input from another of the multiple media processing functions or receives two or more inputs from different media processing functions of the multiple media processing functions, and

wherein the one function generates multiple outputs that are received by subsequent media processing functions of the multiple media processing functions.

6. The electronic device of claim 1 wherein

each of the multiple media processing functions receives configuration data, input media data corresponding to the input information, and requirements corresponding to the requirement information, and generates an output corresponding to the output information.

7. The electronic device of claim 1 , wherein to monitor the multiple media processing functions, the processor is configured to:

identify whether a first function of the multiple media processing functions fails to process an input as indicated by the information associated with each of the multiple media processing functions;

in response to identifying that the first function fails to process the input, identify multiple new media processing functions to perform the media processing which that first function was intended to perform; and

map the multiple new media processing functions in place of the first function.

8. A method comprising:

receiving, from a media source, a request for media processing, the request including a requested media output;

in response to receiving the request, select multiple media processing functions from a plurality of media processing functions to perform various portions of the request for media processing, wherein the selected media processing functions are identified based on information that describes and is associated with each of the plurality of media processing functions, the information comprises:

input information describing an input type that a function is able to process,

output information describing an output that the function generates, and

requirement information that the function uses in order to process a received input;

configuring each of the multiple media processing functions into a pipeline by mapping the request for media processing to the multiple media processing functions to generate the requested media output based on the information associated with each of the multiple media processing functions, wherein an output of one of the multiple media processing functions is mapped to an input of another one of the multiple media processing functions;

monitoring the multiple media processing functions while the multiple media processing functions perform tasks to generate the requested media output; and

based on the monitoring, modifying the pipeline of the multiple media processing functions to generate the requested media output.

9. The method of claim 8 , further comprising:

analyzing the request for media processing to identify media data,

wherein selecting the multiple media processing functions comprises:

searching a directory listing the plurality of media processing functions for the multiple media processing functions that when organized into the pipeline, modify the media data based on the requested media output, and

selecting the multiple media processing functions from the directory based on the information associated with each of the multiple media processing functions.

10. The method of claim 9 , further comprising transmitting, to a destination indicated in the request, a generated output from the multiple media processing functions, the generated output corresponding to the requested media output.

11. The method of claim 8 , further comprising:

organizing each of the multiple media processing functions into the pipeline,

wherein, the multiple media processing functions, when organized, are mapped to one another, and perform respective portions of the media processing until the requested media output is generated.

12. The method of claim 11 , further comprising:

connecting the multiple media processing functions,

wherein one function of the multiple media processing functions receives one input from another of the multiple media processing functions or receives two or more inputs from different media processing functions of the multiple media processing functions, and

wherein the one function generates multiple outputs that are received by subsequent media processing functions of the multiple media processing functions.

13. The method of claim 8 , wherein

each of the multiple media processing functions receives configuration data, input media data corresponding to the input information, and requirements corresponding to the requirement information, and generates an output corresponding to the output information.

14. The method of claim 8 , wherein monitoring the multiple media processing functions, comprises:

identifying whether a first function of the multiple media processing functions fails to process an input as indicated by the information associated with each of the multiple media processing functions;

in response to identifying that the first function fails to process the input, identifying multiple new media processing functions to perform the media processing which that first function was intended to perform; and

mapping the multiple new media processing functions in place of the first function.

15. A non-transitory computer readable medium embodying a computer program, the computer program comprising computer readable program code that, when executed by a processor of an electronic device, causes the processor to:

receive, from a media source, a request for media processing, the request including a requested media output;

in response to receiving the request, select multiple media processing functions from a plurality of media processing functions to perform various portions of the request for media processing, wherein the selected media processing functions are identified based on information that describes and is associated with each of the plurality of media processing functions, the information comprises:

input information describing an input type that a function is able to process,

output information describing an output that the function generates, and

requirement information that the function uses in order to process a received input;

configure each of the multiple media processing functions into a pipeline by mapping the request for media processing mapping the request for media processing to the multiple media processing functions to generate the requested media output based on the information that describes and is associated with each of the multiple media processing functions, wherein an output of one of the multiple media processing functions is mapped to an input of another one of the multiple media processing functions;

monitor the multiple media processing functions while the multiple media processing functions perform tasks to generate the requested media output; and

based on the monitoring, modify the pipeline of the multiple media processing functions to generate the requested media output.

16. The non-transitory computer readable medium of claim 15 , wherein:

the program code, when executed by the processor, further causes the processor to analyze the request for media processing to identify media data, and

to select the multiple media processing functions, the program code, when executed by the processor, further causes the processor to:

search a directory listing the plurality of media processing functions for the multiple media processing functions that when organized into the pipeline, modify the media data based on the requested media output, and

select the multiple media processing functions from the directory based on the information associated with each of the multiple media processing functions.

17. The non-transitory computer readable medium of claim 16 , wherein the program code, when executed by the processor, further causes the processor to transmit, to a destination indicated in the request, a generated output from the multiple media processing functions, the generated output corresponding to the requested media output.

18. The non-transitory computer readable medium of claim 15 wherein the program code, when executed by the processor, further causes the processor to organize each of the multiple media processing functions into the pipeline,

wherein, the multiple media processing functions, when organized, are mapped to one another, and perform respective portions of the media processing until the requested media output is generated.

19. The non-transitory computer readable medium of claim 15 , wherein

each of the multiple media processing functions receives configuration data, input media data corresponding to the input information, and requirements corresponding to the requirement information, and generates an output corresponding to the output information.

20. The non-transitory computer readable medium of claim 15 , wherein to monitor the multiple media processing functions, the program code, when executed by the processor, further causes the processor to:

identify whether a first function of the multiple media processing functions fails to process an input as indicated by the information associated with each of the multiple media processing functions;

in response to identifying that the first function fails to process the input, identify multiple new media processing functions to perform the media processing which that first function was intended to perform; and

map the multiple new media processing functions in place of the first function.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2019
From: KOLAN, PRAKASH; BOUAZIZI, IMED
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 047960/0992 →
Continuity (2)
Provisional Application 62618417 · Jan 17, 2018
Related Publication 20190222621A1 · Jul 18, 2019
Cited By (2)
US 12,423,150 US 12,596,814