Author: ariff Date: Mon Jun 15 04:05:38 2009 New Revision: 194232 URL: http://svn.freebsd.org/changeset/base/194232
Log: Remap type of polynomial interpolators for better polyphase coefficients quality: - Linear interpolator for oversampling factor larger and equal than 4096 (log2 = 12). - Quadratic interpolator for oversampling factor larger and equal than 256 (log2 = 8). Default oversampling factor (128 ~ log2 = 7) will use OPT32X, which provides better accuracy. Modified: head/sys/dev/sound/pcm/feeder_rate.c Modified: head/sys/dev/sound/pcm/feeder_rate.c ============================================================================== --- head/sys/dev/sound/pcm/feeder_rate.c Mon Jun 15 02:17:10 2009 (r194231) +++ head/sys/dev/sound/pcm/feeder_rate.c Mon Jun 15 04:05:38 2009 (r194232) @@ -789,13 +789,11 @@ z_resampler_sinc_len(struct z_info *info defined(Z_COEFF_INTER_BSPLINE) || defined(Z_COEFF_INTERP_OPT32X) || \ defined(Z_COEFF_INTERP_OPT16X) || defined(Z_COEFF_INTERP_OPT8X) || \ defined(Z_COEFF_INTERP_OPT4X) || defined(Z_COEFF_INTERP_OPT2X)) -#if Z_DRIFT_SHIFT >= 8 +#if Z_DRIFT_SHIFT >= 12 #define Z_COEFF_INTERP_LINEAR 1 -#elif Z_DRIFT_SHIFT == 7 +#elif Z_DRIFT_SHIFT >= 8 #define Z_COEFF_INTERP_QUADRATIC 1 -#elif Z_DRIFT_SHIFT == 6 -#define Z_COEFF_INTERP_HERMITE 1 -#elif Z_DRIFT_SHIFT == 5 +#elif Z_DRIFT_SHIFT >= 5 #define Z_COEFF_INTERP_OPT32X 1 #elif Z_DRIFT_SHIFT == 4 #define Z_COEFF_INTERP_OPT16X 1 _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"