Complexity Adaptive Streaming for Power-Constrained Devices
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current multimedia streaming technologies do not effectively adapt to the power status of client devices, leading to disruptions in video streaming when devices enter power-saving modes or low battery conditions, as they do not consider the computational complexity and power consumption of different multimedia content versions.
Innovation Solution
A method and system for complexity adaptive streaming, where a server calculates the complexity of multimedia content segments based on encoding parameters and operation complexities, allowing client devices to dynamically switch to lower complexity versions when power status drops below a threshold, ensuring seamless playback without discontinuing the streaming service.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If high quality multimedia content with high encoding parameters is streamed, then content quality is improved, but power consumption increases
Solution Approach 1:
The system dynamically adapts the encoding parameters of multimedia content based on real-time power status detection. When power status is high, high quality content is streamed; when power status drops below a threshold, the system automatically switches to lower complexity versions with reduced encoding parameters, resolving the contradiction between quality and power consumption through dynamic adjustment
Solution Approach 2:
The patent changes the encoding parameters (compression ratios, spatial resolutions, temporal resolutions) of multimedia content based on power status conditions. By modifying these parameters dynamically, the system maintains content quality when power is available and reduces power consumption when power status is low, directly addressing the technical contradiction
2Manufacturing precision
If complex decoding operations are performed for high quality content, then content quality is improved, but device computational load increases
Solution Approach 1:
The system dynamically adjusts the computational complexity of decoding operations by selecting different content versions based on device power status. The complexity of decoding operations is not fixed but adapts in real-time, reducing computational load when power status is low while maintaining high quality decoding when power is sufficient
Solution Approach 2:
Instead of always performing full complex decoding operations, the system performs partial decoding operations appropriate to the power status. When power status is low, the system uses simplified decoding operations for lower complexity versions, avoiding excessive computational actions that would waste energy or overload the device
3Adaptability or versatility
If adaptive streaming switches between different content versions, then network condition adaptation is improved, but playback continuity may be disrupted
Solution Approach 1:
The system prepares multiple content versions with different encoding parameters in advance and maintains a buffer of segments. When power status changes, the system can switch between versions without interruption because the necessary segments are already prepared and buffered, ensuring playback continuity while enabling network and power condition adaptation
Data Source
AI summary
A method includes calculating a complexity value for each segment or version of multimedia content. The multimedia content has multiple versions associated with common content and different encoding parameters, and each version is divided into segments. The method also includes adaptively streaming the multimedia content to a client device based on at least some of the calculated complexity values. The complexity value for each segment or version is calculated by summing multiple operation complexity values defining complexities of operations for decoding the segment or version. The operation complexity values could include values for a bit parsing operation, a buffer initialization operation, an intra-prediction operation, an inverse quantization and transform operation, a reference block fetch operation, a fractional interpolation operation, and in-loop deblocking operation, a sample adaptive offset correction operation, an adaptive loop filtering operation, and a de-ringing filtering operation.


