Audio Decoder Pre-Roll Frames for Seamless Codec Switching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing audio decoding technologies face challenges in seamlessly switching between different codec configurations, leading to potential glitches and reduced flexibility in adapting to variable bitrate conditions, particularly in wireless communication environments.
Innovation Solution
Incorporating a special frame with additional information that allows immediate initialization and decoding of audio data, enabling seamless switching between codec configurations by providing pre-roll frames encoded using the same or different codec configurations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional audio decoding is used without special initialization frames, then the decoder structure remains simple, but the decoder cannot initialize properly when switching between different codec configurations, causing playback glitches
Solution Approach 1:
The patent applies preliminary action by inserting a special frame containing pre-roll encoded audio samples before the actual audio content. This special frame is decoded in advance to initialize the decoder's internal state (buffers, filters, etc.) so that when the main audio content arrives, the decoder is already ready to produce accurate output without glitches. The pre-roll samples are discarded but serve the critical function of warming up the decoder.
Solution Approach 2:
The special frame acts as an intermediary element between the encoded audio stream and the decoder. It contains encoded audio samples that are decoded using the target codec configuration, producing output that initializes the decoder's internal state. This intermediary frame bridges the gap between different codec configurations and enables smooth transitions without requiring complex reconfiguration logic.
2Ease of operation
If the decoder processes frames sequentially without special frames, then the processing is straightforward, but switching between codec configurations causes audible glitches and requires buffer flushing
Solution Approach 1:
Before switching to a new codec configuration, the system inserts a special frame encoded with the new configuration's parameters. This frame is decoded in advance to prepare the decoder's internal state for the upcoming configuration change. The pre-roll samples allow the decoder to adapt to new codec parameters (sampling rate, bit depth, channel configuration) without causing audible glitches during the transition.
Solution Approach 2:
The patent utilizes parameter changes by embedding codec configuration parameters within the special frame's encoded audio samples. When the decoder encounters this special frame, it extracts and applies the new configuration parameters, smoothly transitioning from one codec configuration to another. This allows dynamic adaptation to varying network conditions and transmission requirements.
3Reliability
If the decoder waits for sufficient pre-roll frames before starting playback, then initialization is complete, but playback delay increases
Solution Approach 1:
The special frame contains a predetermined number of pre-roll encoded audio samples that are sufficient to initialize the decoder's internal state. By carefully selecting the minimum necessary number of pre-roll samples, the system achieves complete decoder initialization without excessive delay. The pre-roll count is optimized to balance initialization completeness with playback latency requirements.
Solution Approach 2:
The system adjusts the number of pre-roll frames based on the specific codec configuration and initialization requirements. By dynamically setting this parameter, the system minimizes playback delay while ensuring the decoder has enough samples to properly initialize its buffers and filters. This parameter optimization allows fast startup without compromising initialization reliability.
Data Source
AI summary
An audio decoder decodes a bit stream of encoded audio data, which bit stream represents a sequence of audio sample values and includes a plurality of frames, wherein each frame includes associated encoded audio sample values. The audio decoder includes a determiner configured to determine whether a frame of the encoded audio data is a special frame including encoded audio sample values associated with the special frame and additional information, wherein the additional information include encoded audio sample values of a number of frames preceding the special frame, wherein the encoded audio sample values of the preceding frames are encoded using the same codec configuration as the special frame, wherein the number of preceding frames is sufficient to initialize the decoder to be in a position to decode the audio sample values associated with the special frame if the special frame is the first frame upon start-up of the decoder.


