Multi-band spectral audio encoding
First Claim
1. A method of inserting an inaudible code into an audio signal comprising:
- sampling the audio signal to generate a plurality of sub blocks of sampled audio, each of the sub blocks having a duration less than a minimum audibly perceivable signal delay;
combining the sub blocks into a plurality of partially overlapping short blocks which together comprise a long block;
individually transforming each of the short blocks into a frequency domain;
encoding each transformed short block in the frequency domain with a desired code by;
selecting at least one frequency to encode based on the desired code to insert and a predetermined coding rule;
setting an amplitude of the at least one frequency based on a masking energy associated with the at least one frequency;
setting a phase angle of the at least one frequency; and
transforming the encoded short block into the time domain; and
constructing an encoded time domain signal from at least two sequential ones of the encoded time domain short blocks, the phase angles of the encoded short blocks are set by setting the phase angle of the at least one frequency of a first short block to a first predetermined value, and incrementing the phase angle of each subsequent short block by a predetermined amount.
8 Assignments
0 Petitions
Accused Products
Abstract
An encoder includes a sampler that samples an audio signal and that generates from the samples a plurality of short blocks of sampled audio. Each of the short blocks has a duration less than a minimum audibly perceivable signal delay. A processor combines the plurality of short blocks into a long block. The long block is transformed into a frequency domain signal having a plurality of independently modulatable frequency indices. The frequency difference between adjacent indices is determined by the minimum duration and the sampling rate of the sampler. A neighborhood of frequency indices is selected so that the frequency difference between a lowest index and a highest index within the neighborhood is less than a predetermined value. Two or more of the indices are modulated in the neighborhood so as to make a selected one of the indices an extremum while keeping the total energy of the neighborhood constant. A plurality of frequency bands are so coded. A decoder decides that a bit or bits have been received if, in a majority of the frequency bands, the decoder detects a modulated index.
267 Citations
14 Claims
-
1. A method of inserting an inaudible code into an audio signal comprising:
-
sampling the audio signal to generate a plurality of sub blocks of sampled audio, each of the sub blocks having a duration less than a minimum audibly perceivable signal delay; combining the sub blocks into a plurality of partially overlapping short blocks which together comprise a long block; individually transforming each of the short blocks into a frequency domain; encoding each transformed short block in the frequency domain with a desired code by; selecting at least one frequency to encode based on the desired code to insert and a predetermined coding rule; setting an amplitude of the at least one frequency based on a masking energy associated with the at least one frequency; setting a phase angle of the at least one frequency; and transforming the encoded short block into the time domain; and constructing an encoded time domain signal from at least two sequential ones of the encoded time domain short blocks, the phase angles of the encoded short blocks are set by setting the phase angle of the at least one frequency of a first short block to a first predetermined value, and incrementing the phase angle of each subsequent short block by a predetermined amount. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An apparatus for inserting an inaudible code into an audio signal comprising:
-
a sampler configured to sample the audio signal to generate a plurality of sub blocks of sampled audio, each of the sub blocks having a duration less than a minimum audibly perceivable signal delay; a combiner configured to combine the sub blocks into a plurality of partially overlapping short blocks which together comprise a long block; a transformer configured to individually transform each of the short blocks into a frequency domain; an encoder configured to encode each transformed short block in the frequency domain with a desired code by; selecting at least one frequency to encode based on the desired code to insert and a predetermined coding rule; setting an amplitude of the at least one frequency based on a masking energy associated with the at least one frequency; setting a phase angle of the at least one frequency; and transforming the encoded short block into the time domain, wherein the encoder is configured to construct an encoded time domain signal from at least two sequential ones of the encoded time domain short blocks, the phase angles of the encoded short blocks are set by setting the phase angle of the at least one frequency of a first short block to a first predetermined value, and incrementing the phase angle of each subsequent short block by a predetermined amount. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
Specification