[opus] Encoding ultrasonics

Corey Shay cshay892 at gmail.com
Wed Jan 16 11:45:13 PST 2013

It's my understanding that the CELT layer of Opus has a maximum input
sample rate of 48k, and frequencies above 20k are effectively not encoded.
I've been trying to get up to speed on the specification, and studying its
operation, but as far as I can infer, there is a fixed set of 21 bands
distributed logarithmically to encode DC to 20k. If I were inclined to
encode at say, 96k, and pass ultrasonics up to 40k, I suppose I could in
theory lie to the encoder about its input rate so it thinks it's 48k, and I
could restore its 96k rate after decoding, but obviously this would result
in doubling the necessary bit rate. Is there a more efficient way to encode
information over 20k without breaking the standard?

You may ask, why do you care about ultrasonics? Well, because the intention
is to encode once to a file, and play back multiple times, at arbitrary
playback speeds, and in some cases, half speed or even lower. This would
result in the ultrasonics coming into the audible range, and for certain
recordings, it would be preferable to hear them in detail rather than a low
pass filtered version. Why use Opus for this? Video games, of course.
Memory constraints.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xiph.org/pipermail/opus/attachments/20130116/5e1a972b/attachment.htm 

More information about the opus mailing list