> +static double pink_filter(double white, double *buf) { > + double pink; > + > + /* http://www.musicdsp.org/files/pink.txt */ > + buf[0] = 0.99886 * buf[0] + white * 0.0555179; > + buf[1] = 0.99332 * buf[1] + white * 0.0750759; > + buf[2] = 0.96900 * buf[2] + white * 0.1538520; > + buf[3] = 0.86650 * buf[3] + white * 0.3104856; > + buf[4] = 0.55000 * buf[4] + white * 0.5329522; > + buf[5] = -0.7616 * buf[5] - white * 0.0168980; > + pink = buf[0] + buf[1] + buf[2] + buf[3] + buf[4] + buf[5] + buf[6] + > white * 0.5362; > + buf[6] = white * 0.115926; > + return pink * 0.11; > +} > + > +static double brown_filter(double white, double *buf) { > + double brown; > + > + brown = ((0.02 * white) + buf[0]) / 1.02; > + buf[0] = brown; > + return brown * 3.5; > +}
Using a fixed-point sample format also means these filters will need to be re-done. Anyone know of a good fixed-point filter algorithms for pink and brown noise? _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel