Skip to content

DSP options for convenience

nu774 edited this page Nov 1, 2012 · 10 revisions

qaac supports the following DSP options.

  • Lowpass filter (--lowpass)
  • Sample rate conversion (--rate)
  • 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, --rate, --lowpass will convert internal sample format to 32bit float. Although this will be transparent for AAC encoding, you will need to specify -b 16 or -b 24 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