Rate/distortion/rdcost modeling with machine learning
US-2020186808-A1 · Jun 11, 2020 · US
US12034936B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12034936-B2 |
| Application number | US-202318098534-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 18, 2023 |
| Priority date | Jan 18, 2022 |
| Publication date | Jul 9, 2024 |
| Grant date | Jul 9, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method for managing computational resources allocated for encoding of one or more multimedia content streams for distribution in dynamic mode to viewing devices through a distribution network is proposed, which comprises, by a processing node of the distribution network: obtain, for a multimedia content stream corresponding to a channel distributed to the viewing devices, a value of a computational resource allocation criterion, wherein the computational resource allocation criterion comprises an audience measurement for the corresponding channel; and determine, based on the computational resource allocation criterion, an allocation of computational resources of a computing platform configured for encoding the multimedia content stream.
Opening claim text (preview).
The invention claimed is: 1. A method for managing computational resources allocated for encoding of one or more multimedia content streams for distribution in dynamic mode to viewing devices through a distribution network, the method comprising, by a processing node of the distribution network: obtaining, for a multimedia content stream corresponding to a channel distributed to the viewing devices, a value of a computational resource allocation criterion, wherein the computational resource allocation criterion comprises an audience measurement for the corresponding channel; and determining, based on the computational resource allocation criterion, an allocation of computational resources of a computing platform configured for encoding the multimedia content stream; wherein the allocation of computational resources comprises a number of CPU cores allocated to the channel, and the number Allocation[channel] of CPU cores allocated to the channel is determined by the following: Allocation[channel]=minAlloc+min (maxAlloc−minAlloc,Step(v)), where v designates a number of viewers measured for the channel, Step(v) designates a step function of v, min(x,y) designates the min function (minimum between x and y), minAlloc designates a minimum computational resource allocation determined for the channel, maxAlloc designates a maximum computational resource allocation determined for the channel, Step(v) designates a step function of v. 2. The method according to claim 1 , wherein the audience measurement comprises a measured number of viewers of the channel. 3. The method according to claim 1 , wherein the allocation of computational resources is further determined based on a minimum computational resource allocation for the channel. 4. The method according to claim 1 , wherein the allocation of computational resources is determined based on a step function of a number v of viewers measured for the channel. 5. The method according to claim 1 , wherein Step(v) is defined based on └v/Δv┘ where └┤┘ designates a floor operator, v designates a number of viewers measured for the channel, and Δv designates a threshold of number of viewers. 6. The method according to claim 1 , further comprising: obtaining respective computational resource allocation criterion levels for a plurality of multimedia content streams respectively corresponding to channels in a plurality of channels distributed to viewers; determining a computational resource configuration of the computing platform, wherein the computational resource configuration comprises respective allocations of computational resources of the encoding platform for encoding content of a multimedia content stream of the plurality of multimedia content streams. 7. The method according to claim 6 , further comprising: selecting a multimedia content stream in the plurality of multimedia content streams based on the respective computational resource allocation criterion levels; and determining an allocation of computational resources of the computing platform for encoding the selected multimedia content stream. 8. The method according to claim 7 , wherein a respective allocation of computational resources for a channel of index i comprises a number of CPU cores allocated to the channel, and the number Allocation[i] of CPU cores allocated to the channel is determined by the following: Allocation[i]=min_allocation[i]+Step(v i ), where v i designates a number of viewers measured for the channel i, Step(v i ) designates a step function of v i , min_allocation[i] designates a minimum computational resource allocation determined for the channel i. 9. The method according to claim 8 , wherein Step(v i ) is defined based on ⌊ v i ∑ j = 1 N v j · N cpus ⌋ , where └ ┘ designates a floor operator, v i designates a number of viewers measured for the channel i, N designates the number of channels for which a computational resource allocation is determined, and N cpus designates a number of remaining CPU cores to be allocated once minimum computational resource allocations have been made for the channels. 10. The method according to claim 6 , wherein the computational resource configuration is determined as an allocation of computational resources that minimizes an overall bitrate of the plurality of multimedia content streams after encoding while maximizing a video quality by minimizing a distortion incurred by encoding the plurality of multimedia content streams. 11. The method according to claim 6 , wherein the computational resource configuration is determined as an allocation of computational resources that minimizes an overall bitrate of the plurality of multimedia content streams after encoding while maximizing a quality of experience for channels corresponding to the multimedia content streams. 12. The method according to claim 6 , further comprising: determining a cost function J 1 =R 1 +λ·D, where D is a distortion measurement, λ is a Lagrangian parameter, and R 1 is an overall bitrate measurement, wherein R 1 =Σ i=1 N b i (v i ), where N is a number of channels, b i is a bitrate of an encoded multimedia content stream corresponding to a channel of index i, v i is an audience measurement for the channel of index i, and wherein the distortion measurement D is determined based on a distortion measurement and the audience measurement v i . 13. The method according to claim 10 , further comprising: determining a cost function J 2 =R 2 +λ·D, where D is a distortion measurement, λ is a Lagrangian parameter, and R 2 is an overall bitrate measurement, wherein R 2 =Σ i=1 N b i (1+v i ), where N is a number of channels, b i is a bitrate of an encoded multimedia content stream corresponding to a channel of index i, v i is an audience measurement for the channel of index i, and wherein the distortion measurement D is determined based on a distortion measurement and the audience measurement v i . 14. The method according to claim 10 , wherein the distribution network comprises a content delivery network, CDN, the method further comprising: determining a cost function J 3 =R 3 +λ·D, where D is a distortion measurement, λ is a Lagrangian parameter, and R 3 is an overall bitrate measurement, wherein R 3 =Σ i=1 N b i (Σ j=1 M +v i ), where N is a number of channels, b i is a bitrate of an encoded multimedia content stream corresponding to a channel of index i, v i is an audience measurement for the channel of index i, M is a number of regions in the CDN, and k j is a weight value of index j assigned to an edge cache used for distribution in the CDN of the channel of index i, and wherein the distortion measurement D is determined based on a distortion measurement and the audience measurement v i . 15. The method according to claim 12 , wherein the distortion measurement of D is d
Monitoring of the downstream path of the transmission network, e.g. bandwidth available (traffic monitoring in data switching networks H04L43/00; monitoring data switching networks utilization H04L43/0876) · CPC title
Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion (use of rate-distortion criteria H04N19/147) · CPC title
Feedback from the receiver or from the transmission channel · CPC title
Availability of hardware or computational resources, e.g. encoding based on power-saving criteria · CPC title
according to rate distortion criteria (rate-distortion as a criterion for motion estimation H04N19/567) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.