[opus] OPUS on cortex M4
Timothy B. Terriberry
tterribe at xiph.org
Fri Jun 29 21:41:07 UTC 2018
Ehrenberg Nicolas wrote:
> for(uint16_t i = 0; i < test_data_size; i++)
> {
> test_data[i] = 100;
> }
>
> [snip]
>
> The decoded values start out at 0, go to -16 up, then up to 135 and then
> slowly down to the 17 (see attached file).
> Furthermore, I do not see much of a change if I increase the complexity.
You're encoding a signal with a constant (DC) offset. opus_encode()
includes a 3 Hz highpass filter to remove the (inaudible) DC component,
because it screws up other parts of the codec (mainly it would create
MDCT leakage that is completely unmasked). So you shouldn't expect to
get your constant values of 100 back.
In general the numeric values of the output aren't guaranteed to
resemble the numeric values of the input. The codec will just try to
make the two signals sound the same to human ears.
More information about the opus
mailing list