Audio Encoder Bandwidth-Adaptive Resource Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current audio encoding technologies face challenges in balancing perceptual quality and processing resource usage, particularly at varying bandwidth conditions, where increased processing resources yield marginal improvements in quality at high bitrates and are necessary at low bitrates to maintain quality.

Innovation Solution

A method that dynamically allocates processing resources to audio encoders based on available bandwidth, switching between low and high complexity modes to optimize perceptual quality while minimizing resource usage, allowing for more efficient hosting of calls and reallocating resources for video encoding.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If more processing resources are allocated to audio encoder, then perceptual quality of encoded audio stream is improved, but processing resource usage increases

Engineering Contradiction:
Improveperceptual qualityVSAvoidprocessing resource usage
Core Design Contradiction:
Manufacturing precisionVSUse of energy by moving object

Solution Approach 1:

The patent applies dynamics by making the encoding complexity adaptive rather than static. The audio encoder dynamically adjusts its complexity level based on real-time bandwidth conditions, transitioning between low-complexity and high-complexity modes as network conditions change, thereby optimizing the balance between quality and resource usage

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of encoding complexity based on bandwidth conditions. When bandwidth is sufficient, the system increases encoding complexity to improve perceptual quality; when bandwidth is limited, it reduces complexity to conserve processing resources, making the quality-resource tradeoff adjustable through parameter changes

Inventive Principle:
Principle #35Parameter changes

2Manufacturing precision

If higher complexity encoding mode is used, then perceptual quality is improved at low bitrates, but processing resource consumption increases

Engineering Contradiction:
Improveperceptual quality at low bitrateVSAvoidalgorithmic complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent applies local quality by providing different encoding complexities in different bandwidth conditions. Instead of using a single high-complexity encoder for all scenarios, the system applies high complexity only when bandwidth conditions warrant it, and uses low complexity when bandwidth is limited, optimizing resource allocation locally based on network conditions

Inventive Principle:
Principle #3Local quality

3Productivity

If processing resources are reduced at high output bitrates, then resource efficiency is improved, but perceptual quality improvement becomes marginal

Engineering Contradiction:
Improveresource efficiencyVSAvoidperceptual quality
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The patent applies partial action by using high-complexity encoding only partially - specifically when bandwidth conditions justify it. When bandwidth is sufficient, the system employs high complexity to maximize quality; when bandwidth is limited, it uses low complexity, avoiding the excessive resource consumption that would occur if high complexity were always applied

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP3375164B1Encoding an audio stream
Publication Date: 2019.10.16 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP3375164B1 patent drawingFigure 1
  • EP3375164B1 patent drawingFigure 2~3
  • EP3375164B1 patent drawingFigure 4

AI summary

An audio stream is encoded for transmission to a receiving device via a communications channel. The to-be transmitted audio stream is received at an audio encoder executed on a processor. The processor has an amount of available processing resources. An available bandwidth of the communications channel is determined. Based on the determined bandwidth, a portion of the available processing resources is allocated to the audio encoder. The allocated portion is greater if the determined bandwidth is below a bandwidth threshold. The audio encoder encodes the audio stream using the allocated portion of processing resources, and transmits the encoded audio stream to the receiving device via the communications channel.