The amplification and attenuation factors are chosen to make the change imperceptible to the ear. The synchronization bits constitute a pseudo-noise sequence. The information data bits, or groups of such data bits, are also encoded as pseudo-noise sequences for reliable data recovery. The sampling rates for the audio encoder and decoder may be different, with the latter usually operating at half the encoding sampling rate. This makes it possible to perform real-time decoding.
Data buffering as well as computation introduce a delay of approximately one frame time.
The encoded audio output is delayed by this amount with respect to the input. By introducing a delay in the video, any adverse effect due to the audio delay is eliminated. As the exact location of the embedded code in the received audio is not known, it is necessary to compute the frequency spectrum of the incoming audio stream continuously using a sliding version of the Fourier Transform algorithm. The bits of data extracted from adjacent blocks are stored in a complex data structure. This structure is periodically analyzed to determine if a known pattern of 1s and 0s representing the synchronization sequence is present.