[Flac] flac -- exhaustive model search vs. -A <*>?
brianw at sounds.wa.com
Mon Jun 11 12:59:52 PDT 2012
On Jun 10, 2012, at 21:32, Linda A. Walsh wrote:
> what does the exhaustive model search do?
> Does it try all of the functions listed under "-A" to find the 'best',
> i.e. bartlett, bartlett_hann, blackman, blackman_har-
> ris_4term_92db, connes, flattop, gauss(STDDEV), hamming, hann,
> kaiser_bessel, nuttall, rectangle, triangle, tukey(P), welch.
> Or is that something else?
> I've been using the -e option for a while in my flac encoding,
> but for something that sounds like it should be slow I wonder
> if it is testing all the models or if it might not be
> working correctly?
A better question might be: "What do the -A options do?"
All of those windowing functions are lossy, and are used for
frequency domain transforms. I'm not sure how they would be used in
a lossless encoder. Then again, I have not yet studied the entire
mathematics behind FLAC.
As for your question, I've never used the exhaustive model search
option, but I had originally assumed that it meant a search among the
various compression level options. For example, -l -b -r -M and -m
all are preset when using -0 through -9 and --fast and --best as if
they were macros, but you can also manually set those options in
different combinations. I initially thought that the exhaustive
search went through the -l -b -r -M/-m options to find an adaptive
"best" compression rather than a preset one.
However, now that you've made me think about this in more detail, I
tend to assume that the exhaustive model search has more to do with
the LPC (linear predictive coding). The key to lossless compression
is to find a model that predicts each sample from the previous
samples, and the better the model the smaller the file. An
exhaustive model search must go through all possible LPC models
rather than the quicker default list.
Anyway, my apologies for responding without an actual answer, but a
conversation might be slightly more interesting than a quick answer
More information about the Flac