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, especially in environments with fluctuating network conditions.
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 configuration, which are used to initialize the decoder and facilitate smooth playback.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the decoder is initialized by decoding multiple preceding frames before the current frame, then the decoder can be properly positioned to decode the current frame, but the initialization time and processing delay increase
Solution Approach 1:
The patent applies preliminary action by including pre-roll frames (encoded audio sample values of preceding frames) within the special frame structure before the current frame. This allows the decoder to be pre-initialized with the necessary preceding frame data, so that when the special frame is decoded, the decoder is already positioned correctly without requiring additional initialization time. The pre-roll frames are prepared in advance and embedded in the bitstream, enabling immediate decoder setup.
2Adaptability or versatility
If the decoder switches between different codec configurations, then adaptability to variable bitrate conditions is improved, but the complexity of managing multiple configurations and ensuring seamless switching increases
Solution Approach 1:
The patent uses the special frame as an intermediary structure that facilitates seamless switching between different codec configurations. The special frame contains not only the current frame data but also pre-roll frames encoded with the new configuration, acting as a bridge between old and new configurations. This intermediary structure allows the decoder to transition smoothly without complex management overhead, as the configuration change is embedded within the frame structure itself rather than requiring external control mechanisms.
3Reliability
If the special frame includes encoded audio sample values of multiple preceding frames, then the decoder can be initialized properly, but the size of the special frame and the bitrate overhead increase
Solution Approach 1:
The patent applies local quality by selectively including only the necessary number of pre-roll frames in the special frame structure, rather than including all possible preceding frames. The encoder determines the optimal number of pre-roll frames based on the specific codec configuration and initialization requirements, ensuring that only the minimum necessary data is included to properly initialize the decoder. This selective approach optimizes the balance between initialization completeness and frame size.
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.


