Calculates the harmonic filter.
IppStatus ippsHarmonicFilter_16s_I (Ipp16s beta, int T, Ipp16s* pSrcDst, int len);
IppStatus ippsHarmonicFilter_NR_16s (Ipp16s beta, int T, const Ipp16s* pSrc, Ipp16s* pDst, int len);
IppStatus ippsHarmonicFilter_32f_I(Ipp32f beta, int T, Ipp32f* pSrcDst, int len);
beta |
The beta factor, in Q15 for 16s data. |
T |
The integer delay. |
pSrc |
Pointer to the source vector. Elements pSrc[- T,...,0,...len -1] are used as input. |
pDst |
Pointer to the destination vector. |
pSrcDst |
Pointer to the source and destination vector. Elements pSrcDst[ -T,...,0,..., len-1] aree used as input, elements pSrcDst[0,...,len -1] are computed by the function. |
len |
Number of elements in the source and destination vectors. |
These functions are declared in the ippsc.h file.
The functions ippsHarmonicFilter_16s_I and ippsHarmonicFilter_32f_I implement the adaptive pre-filter:
H(z) = 1/(1-β*z-T), which can be used to enhance the harmonic component of speech.
The calculation is as follows:
pSrcDst[n] = pSrcDst[n] + beta* pSrcDst[n-T], 0 ≤ n < len.
The function ippsHarmonicFilter_NR_16s implements the harmonic noise shaping filter: H(z) = 1+β*z-T
The calculation is as follows:
pDst[n] = pSrc[n] + beta* pSrc[n-T], 0 ≤ n < len.
Both filters can be used to enhance the harmonic component of the input signal.
ippStsNoErr |
Indicates no error. |
ippStsNullPtrErr |
Indicates an error when one of the specified pointers is NULL. |
ippStsSizeErr |
Indicates an error when len is less than or equal to 0. |
Copyright © 2000 - 2011, Intel Corporation. All rights reserved.