Ariff Abdullah 96831ae59b - Increase dynamic range of filter coefficients from 28bit to 30bit.
This cause dramatic effect in overall precision and conversion quality
  by pushing down most aliasing artifacts around -180 dB.

  Spectrogram analysis/comparison:

  	http://people.freebsd.org/~ariff/z_comparison/z_28vs30/

- Guard against possible 64bit overflow during accumulation process by
  slightly normalize and saturate sample and coefficient multiplication,
  possible during extreme 32bit downsampling (eg. 380KHz -> 8KHz) with
  custom preset that require more than ~7000 taps filter (which is
  overkill).

- Add knobs through FEEDER_RATE_PRESETS to set dynamic range of filter
  coefficients/accumulator and prefered polynomial interpolator:

  	COEFFICIENT_BIT:X
	(where 1 <= X <= 30, default: 30)

	ACCUMULATOR_BIT:X
	(where 32 <= X <=64, default: 58)

	INTERPOLATOR:I
	(where I = ZOH, LINEAR, QUADRATIC, HERMITE, BSPLINE,
 	           OPT32X, OPT16X, OPT8X, OPT4X, OPT2X)

Approved by:	re (kib)
2009-07-05 18:15:06 +00:00
..
2009-07-03 21:12:37 +00:00
2009-05-13 22:31:25 +00:00
2009-02-04 20:39:45 +00:00
2009-06-26 10:23:17 +00:00
2009-05-26 12:01:37 +00:00
2009-02-05 19:37:49 +00:00
2009-03-25 06:27:56 +00:00
2009-06-24 20:43:51 +00:00
2009-06-21 19:17:22 +00:00
2009-06-03 20:25:13 +00:00
2009-06-05 18:44:36 +00:00
2009-05-20 20:00:40 +00:00
2009-04-14 11:23:09 +00:00
2009-05-30 18:39:22 +00:00
2009-07-05 17:59:19 +00:00
2009-06-14 00:15:26 +00:00
2009-04-10 04:08:34 +00:00
2009-05-25 22:50:11 +00:00
2009-02-05 19:37:49 +00:00
2009-06-16 14:55:13 +00:00
2009-06-28 20:52:11 +00:00
2009-05-20 20:00:40 +00:00