}\r
\r
// FM polyphase FIR resampling\r
-#define FMFIR_TAPS 9\r
+#define FMFIR_TAPS 8\r
\r
// resample FM from its native 53267Hz/52781Hz with polyphase FIR filter\r
static int ymchans;\r
{\r
int mindiff = 999;\r
int diff, mul, div;\r
- int minmult = 22, maxmult = 55; // min,max interpolation factor\r
+ int minmult = 11, maxmult = 61; // min,max interpolation factor\r
\r
// compute filter ratio with largest multiplier for smallest error\r
for (mul = minmult; mul <= maxmult; mul++) {\r
mindiff = diff;\r
Pico.snd.fm_fir_mul = mul;\r
Pico.snd.fm_fir_div = div;\r
- if (abs(mindiff) <= inrate/1000+1) break; // below error limit\r
+ if (abs(mindiff)*1000 <= inrate) break; // below error limit\r
}\r
}\r
printf("FM polyphase FIR ratio=%d/%d error=%.3f%%\n",\r