[Tremor] questions on windowing/floor functions and standard vs lowmem tremor
Ethan Bordeaux
ethan.bordeaux at gmail.com
Wed Dec 3 08:57:14 PST 2008
Hi, I have a couple questions on tremor optimizations and lowmem vs the
standard implementation.
1. I was reading about a hardware implementation of the Ogg Vorbis decoder
(http://www.vlsi.fi/fileadmin/datasheets/vlsi/vs1000.pdf) and they mention
on page 20 two memory optimizations they take advantage of. First, they say
that if the sample rate is below 48kHz that you'll never have a window size
of 8192 samples. Also, they do not support files encoded with floor0. Are
both of these assertations valid? I've seen mention that floor0 isn't used
because floor1 is a better algorithm (from a computational and fidelty
standpoint) but that floor0 is not officially depreciated. Is the 8192
sample/48kHz something that is guaranteed by Xiph going forward or a
shortsighted optimization by VLSI?
2. Other sources have mentioned that the only window sizes used in practice
are 256 and 2048 samples. Is this correct? At first I was considering
whether or not the other windows could be #ifdef'ed out to save memory, but
I'm guessing that would be a bad idea as a future encoder implementation
could use the other window options right?
Lastly, is there any good reason to use standard tremor instead of lowmem
for an embedded application? I've seen mention of increased decoding delay
in lowmem but I haven't seen this delay quantified - are there any figures
that might give a hint of what to expect for decode delay in a final
implementation? Do most handheld players use lowmem? Also, I did a diff of
the standard and lowmem branches and found that they were far more different
than I was expecting. Is one considered to be more up-to-date than the
other? I compared the audio output from the two and found that they were
similar but not bit exact.
Thanks!
Ethan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xiph.org/pipermail/tremor/attachments/20081203/c0198b4c/attachment.htm
More information about the Tremor
mailing list