Audio Resampling with Sub-Sample Slicing for Clock Drift Playback
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In wireless speaker and headset systems, audio playback overrun or underrun occurs due to independent clocking systems in host and receiver devices, leading to compromised audio quality as excess data is dropped or repeated, causing distortion.
Innovation Solution
The method involves resampling audio signals by slicing each sample into sub-samples and adjusting the sample rate to maintain playback quality, using linear interpolation and look-up tables to efficiently handle overrun and underrun conditions, thereby reducing distortion and noise.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If excess audio data is dropped when audio playback overrun happens, then the audio playback overrun problem is handled, but the audio playback quality is compromised
Solution Approach 1:
The audio signal is divided into individual samples, and each sample is further divided into multiple sub-samples. This segmentation allows selective retention of sub-samples during overrun conditions, preserving audio quality while handling the overrun. Instead of dropping entire samples, the method keeps a predetermined number of sub-samples from each sample, maintaining temporal resolution and audio fidelity.
Solution Approach 2:
The method changes the representation parameter of audio samples by converting each sample into multiple sub-samples. This parameter transformation enables more granular control over audio data during playback overrun, allowing the system to retain sufficient audio information while adapting to clock synchronization issues between host and receiver devices.
2Reliability
If the last audio data is repeated when audio playback underrun occurs, then the audio playback underrun problem is handled, but the audio playback quality is compromised
Solution Approach 1:
By segmenting each audio sample into multiple sub-samples, the system can selectively repeat only certain sub-samples during underrun conditions rather than repeating entire samples. This reduces the artificial repetition artifacts and maintains better audio quality while still handling the underrun situation.
Solution Approach 2:
The method applies different handling strategies to different parts of the audio signal based on local conditions. During underrun, instead of uniformly repeating all data, the system intelligently selects which sub-samples to repeat based on the specific underrun situation, preserving local audio quality while maintaining playback continuity.
3Adaptability or versatility
If independent clocking systems are used in host and receiver devices, then device independence is maintained, but audio playback overrun or underrun occurs due to clock offset accumulation
Solution Approach 1:
The system dynamically adjusts the audio sample representation by converting samples to sub-samples based on the accumulated clock offset. This dynamic adaptation allows the system to handle varying clock synchronization conditions while maintaining device independence, converting the static sample structure into a flexible sub-sample structure that can accommodate timing variations.
Solution Approach 2:
The method changes the temporal parameter of audio data representation from fixed samples to variable sub-samples. This parameter change enables the system to absorb clock offset variations between independent devices, maintaining audio playback continuity while preserving device independence through flexible time-domain representation.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method, a computer-readable medium, and an apparatus for resampling audio signal are provided. The apparatus resamples the audio signal in order to preserve the audio playback quality when dealing with audio playback overrun and underrun problem. The apparatus may receive a data block of the audio signal including a first number of samples. For each sample of the first number of samples, the apparatus may slice a portion of the audio signal corresponding to the sample into a particular number of sub-samples. The apparatus may resample the data block of the audio signal into a second number of samples based on the first number of samples and the particular number of sub-samples associated with each sample of the first number of samples. The apparatus may play back the resampled data block of the audio signal via an electroacoustic device.