推广app赚佣金平台有哪些中国十大seo公司
在音频处理中,会无意中产生直流偏置,这个偏置如果通过功放去推喇叭,会对喇叭造成不可逆转的损坏,所以在实际应用中,会通过硬件(添加直流检测模块,如果有 使用继电器切断输出) 、软件(软件直流滤波算法),这里讲下软件滤波器的实现
此处参考CCRMA 的说明
http://www-ccrma.stanford.edu/~jos/filters/
某些不对称波形整形、级联滤波器或者输入引入dc ,会导致信号信噪比降低,这里实现算法如下
y(n) = x(n) - x(n-1) + R * y(n-1)
// "R" between 0.9 .. 1
//R = 1 - (pi*2 * frequency /samplerate)
// n=current (n-1)=previous in/out value
定点实现参考 DSP Trick: Fixed-Point DC Blocking Filter With Noise-Shaping - dspGuru
// let's say sizeof(short) = 2 (16 bits) and sizeof(long) = 4 (32 bits)
short x[], y[];
long acc, A, prev_x, prev_y;
double pole;
unsigned long n, num_samples;
pole = 0.9999;
A = (long)(32768.0*(1.0 - pole));
acc = 0;
prev_x = 0;
prev_y = 0;
for (n=0; n<num_samples; n++){acc -= prev_x;prev_x = (long)x[n]<<15;acc += prev_x;acc -= A*prev_y;prev_y = acc>>15; // quantization happens herey[n] = (short)prev_y;// acc has y[n] in upper 17 bits and -e[n] in lower 15 bits}