VF_biquad | VD_biquad | VE_biquad |
|
Funktion | Biquadratische Filterung |
|
Syntax C/C++ | #include <VFstd.h>
void VF_biquad( fVector Y, fVector X, ui size, fVector Param ); |
C++ VecObj | #include <OptiVec.h>
void vector<T>::biquad( const vector<T>& X, const vector<T>& Param, ); |
Pascal/Delphi | uses VFstd;
procedure VF_biquad( Y,X:fVector; size:UIntSize; Param:fVector ); |
|
CUDA-Funktion C/C++ | #include <cudaVFstd.h>
int cudaVF_biquad( fVector d_Y, fVector d_X, ui size, fVector h_Param );
int cusdVF_biquad( fVector d_Y, fVector d_X, ui size, fVector d_Param );
float VFcu_biquad( fVector h_Y, fVector h_X, ui size, fVector h_Param );
|
CUDA-Funktion Pascal/Delphi | uses VFstd;
function cudaVF_biquad( d_Y, d_X:fVector; size:UIntSize; h_Param:fVector ): IntBool;
function cusdVF_biquad( d_Y, d_X:fVector; size:UIntSize; d_Param:fVector ): IntBool;
procedure VFcu_biquad( h_Y, h_X:fVector; size:UIntSize; h_Param:fVector );
|
|
Beschreibung | Die insbesondere zur Bearbeitung von Audio-Daten verwendete biquadratische Filterung berechnet Ausgangswerte Y aus den Eingangswerten X nach der Formel:
Y[i] = a0*X[i] + a1*X[i−1] + a2*X[i-2] - b1*Y[i−1] - b2*Y[i-2]
Da es sich hierbei um einen rekursiven Filter handelt, müssen außer den eigentlichen Filter-Koeffizienten auch die jeweils zwei Ein- und Ausgangswerte vor Beginn des eigentlichen Eingabevektors als Parameter übergeben werden. Hierbei soll der an die Funktion übergebene Vektor Param die folgenden neun Werte enthalten:
Param[0]=a0
Param[1]=a1
Param[2]=a2
Param[3]=b1
Param[4]=b2
Param[5]=X[−1]
Param[6]=X[-2]
Param[7]=Y[−1]
Param[8]=Y[-2]
|
|
|
|
|