Skip to content

DSP options for convenience

nu774 edited this page Mar 21, 2012 · 10 revisions

qaac supports the following DSP options.

  • Sample rate conversion (--rate)
  • Lowpass filter (--lowpass)
  • Normalizing (-N)
  • Gain adjustment (--gain)
  • Channel reordering (--chanmap)
  • Matrix mixer (--matrix-preset, --matrix-file)
  • Delay (--delay)
  • Bits per sample conversion (--bits-per-sample)

--rate, --lowpass, --matrix-preset, --matrix-file require libsoxrate.

Note that -N, --gain, --matrix-preset, --matrix-file converts internal sample format to 32bit float. Although this will be transparent when you are encoding into AAC, you will need -b option when you are encoding to ALAC, since ALAC doesn't support float format. Of course -b will be also useful for WAV output.

Besides, channels are internally/automatically reordered. At first, channels are reordered to the Microsoft order (such as L C R to L R C), and before encoding to AAC/ALAC, reordered aagin to AAC order (such as C L R). Of course, this reordering works properly only when the input channel layout is known. If not known, qaac uses the default guess, and it's always Microsoft order. You can use --chanmap and --chanmask to let qaac know the channel layout.

DSP chain is processed in the following order. As you can see, when matrix mixer and --chanmap is processed, channels are in Microsoft WAV order. You have to take it into account when you use these options.

  1. Delay
  2. Reordering to Microsoft order
  3. Matrix mixer
  4. Channel reordering with --chanmap
  5. Reordering to AAC order (AAC/ALAC)
  6. Sample rate conversion
  7. Lowpass filter
  8. Normalizing
  9. Gain adjustment
  10. Bits per sample conversion