Patent ID: 9589575
Date: 2017-03-07
CPC Classifications: G10L,H04R

Claim:
1. A computer-implemented method for removing a frequency offset from a received audio signal, the method comprising: transmitting a first reference signal to a first wireless speaker; receiving a first signal from a first microphone, the first signal representing audible sound output by the first wireless speaker; generating a second signal using the first signal, the second signal aligned to the first reference signal to remove a propagation delay between the first reference signal and the first signal; applying a Fast Fourier Transform (FFT) to the second signal to determine a first microphone signal in a frequency domain; applying the FFT to the first reference signal to determine a first reference signal in the frequency domain; determining a first summation for a first frame at a first tone index of a plurality of tone indexes using the first microphone signal and a complex conjugate of the first reference signal; determining a second summation for a second frame at the first tone index using the first microphone signal and the complex conjugate of the first reference signal, the second frame following the first frame; determining a first angle associated with the first frame using the first summation, wherein the first angle is in radians and corresponds to a phase difference between the first reference signal and the first microphone signal; determining a second angle associated with the second frame using the first summation and the second summation, wherein the second angle is in radians; determining that the first angle is less than a threshold value; determining that the second angle is less than the threshold value; performing a first linear regression to determine a first linear fit based on the first angle and the second angle; determining a first frequency offset between the first reference signal and the second signal based on the first linear fit, wherein the first frequency offset is a difference between a first sampling rate of the first reference signal and a second sampling rate of the second signal; determining that the first frequency offset has a negative value; and removing at least one sample of the first reference signal per cycle based on the first frequency offset.