[opus] OPUS on cortex M4 (Nicolas Ehrenberg)
Timothy B. Terriberry
tterribe at xiph.org
Sun Jul 1 20:44:28 UTC 2018
Ehrenberg Nicolas wrote:
> Also, I'm not quite sure if my opus implementation works as it should yet. I can run the encoder with OPUS_APPLICATION_RESTRICTED_LOWDELAY, but If I try to run it with OPUS_APPLICATION_VOIP or OPUS_APPLICATION_AUDIO the opus_encode function returns just 2 (size of encoded samples) and the opus decode just returns 0's. I would imagine to get the best audio reconstruction with
In either of these modes, the encoder adds enough delay to allow
switching between the CELT and SILK layers. That may be more than a full
frame for small frame sizes (5 ms or less). The result is that the first
frame out of the encoder will be just the padding (usually pure
silence), which is consistent with a 2 byte frame and all 0's from the
Also, even with OPUS_APPLICATION_RESTRICTED_LOWDELAY, there is still
some delay added. See the opus_encoder_ctl OPUS_GET_LOOKAHEAD() to query
the delay actually in use.
After that, pretty much all I can suggest to improve the "visual"
appearance of the signal is to increase the bitrate. But even if you go
all of the way up to 255 kb/s per channel, it's still a lossy codec
designed for human ears, not spectogram plots.
2000 +- 500 still has a large DC component that will get removed.
More information about the opus