Joint quality management across multiple streams

US9755993B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9755993-B2
Application numberUS-201414339644-A
CountryUS
Kind codeB2
Filing dateJul 24, 2014
Priority dateJul 24, 2014
Publication dateSep 5, 2017
Grant dateSep 5, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Various implementations disclosed herein enable a more efficient allocation of one or more shared network resources amongst a plurality of client devices based on media content complexity and client device resource status in order to better manage perceptual playback quality. In some implementations, a method includes obtaining a plurality of resource constraint values associated with a plurality of client devices sharing a network resource, and jointly determining a respective encoding rate level selection and a corresponding resource allocation for each of the plurality of client devices based on a combination of one or more resource constraint values and the assessment of the respective perceptual quality level values, such that a combination of resulting quality levels satisfies a joint quality criterion.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: at a network device including a processing device and a non-transitory memory: obtaining a plurality of resource constraint values associated with a plurality of client devices sharing a network resource, wherein each respective resource constraint value characterizes a limiting rate at which media content data can be provided to a particular client device; determining a respective encoding rate level and a corresponding resource allocation for each of the plurality of client devices based on a combination of the one or more resource constraint values and the assessment of the respective perceptual quality level values, wherein a combination of resulting quality levels satisfies a joint quality criterion; and reallocating a portion of the network resource from a first one of the plurality of client devices to a second one of the plurality of client devices in order to satisfy the joint quality criterion. 2. The method of claim 1 , wherein the network resource includes bandwidth, processor time, and memory. 3. The method of claim 1 , further comprising assessing a respective perceptual quality level value associated with each of one or more combinations of encoding rate levels and resource allocations for the plurality of client devices. 4. The method of claim 1 , wherein the perceptual quality level value includes at least one of MSE distortion, a peak-signal-to-noise ratio, a mean opinion score, a video quality metric, encoding quantization parameter, and subscription tier data. 5. The method of claim 4 , wherein the joint quality metric is determined as a function of a plurality of perceptual quality level values. 6. The method of claim 5 , wherein the function includes at least one of a statistical characterization, threshold values, and upper or lower bounds. 7. The method of claim 1 , wherein determining the joint quality metric includes at least one of: reducing distortion across the plurality of client devices; reducing a weighted sum of distortions across a plurality of streams and segments; reducing a sum of distortions subject to a distortion constraint applicable to a plurality of segments; and equalizing distortion across client streams while adjusting distortion across within each of one or more client streams. 8. The method of claim 1 , further comprising: obtaining a plurality of video rate selections, wherein each of the plurality of video rate selections is associated with a corresponding one of the client devices; determining whether or not each plurality of video rate selections substantially matches the corresponding encoding-rate level determined for the corresponding one of the client device. 9. The method of claim 8 , further comprising selecting an alternative video rate selection for a particular client device in response to determining that the respective one of the plurality of video rate selections does not match the corresponding encoding-rate level determined for the particular client device. 10. The method of claim 8 , further comprising transmitting a feedback message to a particular one of the plurality of client devices in response to determining that the respective one of the plurality of video rate selections does not match the corresponding encoding-rate level determined for the particular client device. 11. The method of claim 8 , further comprising permitting the particular client device to proceed with the selection of the corresponding one of the video rate selections when the corresponding one of the video rate selections falls within a tolerance value. 12. The method of claim 1 , wherein jointly determining the respective encoding rate level and the corresponding resource allocation for each of the plurality of client devices comprises: determining respective initial buffer levels associated with the plurality of client devices; and determining a corresponding estimate of cumulative data associated with each of the plurality of client devices as a function of the respective initial buffer levels. 13. The method of claim 12 , further comprising constraining the determination of the respective encoding rate level and the corresponding resource allocation for each of the plurality of client devices based on the corresponding estimates of cumulative data associated with the plurality of client devices. 14. A computer program product, embedded on a non-transitory computer readable medium, including instructions that when executed by a processor cause a device to operate to: obtain a plurality of resource constraint values associated with a plurality of client devices sharing a network resource, wherein each respective resource constraint value characterizes a limiting rate at which media content data can be provided to a particular client device; determine a respective encoding rate level and a corresponding resource allocation for each of the plurality of client devices based on a combination of the one or more resource constraint values and the assessment of the respective perceptual quality level values, wherein a combination of resulting quality levels satisfies a joint quality criterion; and reallocate a portion of the network resource from a first one of the plurality of client devices to a second one of the plurality of client devices in order to satisfy the joint quality criterion. 15. The computer program product of claim 14 , further comprising instructions when executed by the processor cause the device to operate to assess a respective perceptual quality level value associated with each of one or more combinations of encoding rate levels and resource allocations for the plurality of client devices. 16. The computer program product of claim 14 , wherein the perceptual quality level value includes at least one of MSE distortion, a peak-signal-to-noise ratio, a mean opinion score, a video quality metric, an encoding rate, encoding quantization parameter, and subscription tier data. 17. The computer program product of claim 16 , wherein the joint quality metric is determined as a function of a plurality of perceptual quality level values. 18. The computer program product of claim 14 , wherein determining the joint quality metric includes at least one of: reducing distortion across the plurality of client devices; reducing a weighted sum of distortions across a plurality of streams and segments; reducing a sum of distortions subject to a distortion constraint applicable to a plurality of segments; and equalizing distortion across client streams while adjusting distortion across within each of one or more client streams. 19. The computer program product of claim 14 , wherein jointly determining the respective encoding rate level and the corresponding resource allocation for each of the plurality of client devices comprises: determining respective initial buffer levels associated with the plurality of client devices; and determining a corresponding estimate of cumulative data associated with each of the plurality of client devices as a function of the respective initial buffer levels; and constraining the determination of the respective encoding rate level and the corresponding resource allocation for each of the plurality of client devices based on the corresponding estimates of cumulative data associated with the plurality of client devices. 20. An apparatus comprising: logic configured to obtain a plurality of resource constraint values associated with a plurality of client devices sharing a network resour

Assignees

Inventors

Classifications

  • Admission control; Resource allocation · CPC title

  • Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities (flow or congestion control using dynamic resource allocation, e.g. in-call renegotiation, H04L47/76) · CPC title

  • using dynamic resource allocation, e.g. in-call renegotiation requested by the user or requested by the network in response to changing network conditions · CPC title

  • Electricity · mapped topic

  • Network arrangements, protocols or services for supporting real-time applications in data packet communication (real-time or near real-time messaging, e.g. instant messaging [IM] H04L51/04; selective video distribution H04N21/00) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9755993B2 cover?
Various implementations disclosed herein enable a more efficient allocation of one or more shared network resources amongst a plurality of client devices based on media content complexity and client device resource status in order to better manage perceptual playback quality. In some implementations, a method includes obtaining a plurality of resource constraint values associated with a plurali…
Who is the assignee on this patent?
Cisco Tech Inc, Cisco Tech Inc
What technology area does this patent fall under?
Primary CPC classification H04L47/828. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Sep 05 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).