WinBlackman
WinBlackman
Multiplies a vector by a Blackman windowing function.
Syntax
IppStatus ippsWinBlackman_16s(const Ipp16s*
pSrc
, Ipp16s*
pDst
, int
len
, Ipp32f
alpha
);
IppStatus ippsWinBlackman_16sc(const Ipp16sc*
pSrc
, Ipp16sc*
pDst
, int
len
, Ipp32f
alpha
);
IppStatus ippsWinBlackman_32f(const Ipp32f*
pSrc
, Ipp32f*
pDst
, int
len
, Ipp32f
alpha
);
IppStatus ippsWinBlackman_32fc(const Ipp32fc*
pSrc
, Ipp32fc*
pDst
, int
len
, Ipp32f
alpha
);
IppStatus ippsWinBlackman_64f(const Ipp64f*
pSrc,
Ipp64f*
pDst
, int
len
, Ipp64f
alpha
);
IppStatus ippsWinBlackman_64fc(const Ipp64fc*
pSrc,
Ipp64fc*
pDst
, int
len
, Ipp64f
alpha
);
IppStatus ippsWinBlackmanStd_16s(const Ipp16s*
pSrc
, Ipp16s*
pDst
, int
len
);
IppStatus ippsWinBlackmanStd_16sc(const Ipp16sc*
pSrc
, Ipp16sc*
pDst
, int
len
);
IppStatus ippsWinBlackmanStd_32f(const Ipp32f*
pSrc
, Ipp32f*
pDst
, int
len
);
IppStatus ippsWinBlackmanStd_32fc(const Ipp32fc*
pSrc
, Ipp32fc*
pDst
, int
len
);
IppStatus ippsWinBlackmanStd_64f(const Ipp64f*
pSrc
, Ipp64f*
pDst
, int
len
);
IppStatus ippsWinBlackmanStd_64fc(const Ipp64fc*
pSrc
, Ipp64fc*
pDst
, int
len
);
IppStatus ippsWinBlackmanOpt_16s(const Ipp16s*
pSrc
, Ipp16s*
pDst
, int
len
);
IppStatus ippsWinBlackmanOpt_16sc(const Ipp16sc*
pSrc
, Ipp16sc*
pDst
, int
len
);
IppStatus ippsWinBlackmanOpt_32f(const Ipp32f*
pSrc
, Ipp32f*
pDst
, int
len
);
IppStatus ippsWinBlackmanOpt_32fc(const Ipp32fc*
pSrc
, Ipp32fc*
pDst
, int
len
);
IppStatus ippsWinBlackmanOpt_64f(const Ipp64f*
pSrc
, Ipp64f*
pDst
, int
len
);
IppStatus ippsWinBlackmanOpt_64fc(const Ipp64fc*
pSrc
, Ipp64fc*
pDst
, int
len
);
IppStatus ippsWinBlackman_16s_I(Ipp16s*
pSrcDst
, int
len
, Ipp32f
alpha
);
IppStatus ippsWinBlackman_16sc_I(Ipp16sc*
pSrcDst
, int
len
, Ipp32f
alpha
);
IppStatus ippsWinBlackman_32f_I(Ipp32f*
pSrcDst
, int
len
, Ipp32f
alpha
);
IppStatus ippsWinBlackman_32fc_I(Ipp32fc*
pSrcDst
, int
len
, Ipp32f
alpha
);
IppStatus ippsWinBlackman_64f_I(Ipp64f*
pSrcDst
, int
len
, Ipp64f
alpha
);
IppStatus ippsWinBlackman_64fc_I(Ipp64fc*
pSrcDst
, int
len
, Ipp64f
alpha
);
IppStatus ippsWinBlackmanOpt_16s_I(Ipp16s*
pSrcDst
, int
len
);
IppStatus ippsWinBlackmanOpt_16sc_I(Ipp16sc*
pSrcDst
, int
len
);
IppStatus ippsWinBlackmanOpt_32f_I(Ipp32f*
pSrcDst
, int
len
);
IppStatus ippsWinBlackmanOpt_32fc_I(Ipp32fc*
pSrcDst
, int
len
);
IppStatus ippsWinBlackmanOpt_64f_I(Ipp64f*
pSrcDst
, int
len
);
IppStatus ippsWinBlackmanOpt_64fc_I(Ipp64fc*
pSrcDst
, int
len
);
IppStatus ippsWinBlackmanStd_16s_I(Ipp16s*
pSrcDst
, int
len
);
IppStatus ippsWinBlackmanStd_16sc_I(Ipp16sc*
pSrcDst
, int
len
);
IppStatus ippsWinBlackmanStd_32f_I(Ipp32f*
pSrcDst
, int
len
);
IppStatus ippsWinBlackmanStd_32fc_I(Ipp32fc*
pSrcDst
, int
len
);
IppStatus ippsWinBlackmanStd_64f_I(Ipp64f*
pSrcDst
, int
len
);
IppStatus ippsWinBlackmanStd_64fc_I(Ipp64fc*
pSrcDst
, int
len
);
Include Files
ipps.h
Domain Dependencies
Headers:
ippcore.h
,
ippvm.h
Libraries:
ippcore.lib
,
ippvm.lib
Parameters
- pSrc
- Pointer to the source vector.
- pDst
- Pointer to the destination vector.
- pSrcDst
- Pointer to the source and destination vector for the in-place operation.
- alpha
- Adjustable parameter associated with the Blackman windowing equation.
- len
- Number of elements in the vector
Description
These functions multiply the vector
pSrc
by the Blackman window, and store the result in pDst
.The in-place flavors of
ippsWinBlackman
multiply the vector pSrcDst
by the Blackman window, and store the result in pSrcDst
.The complex types multiply both the real and imaginary parts of the vector by the same window. The functions for the Blackman family of windows are defined below.
ippsWinBlackman
.ippsWinBlackman
allows the application to specify alpha
. The Blackman window is defined as follows:
ippsWinBlackmanStd
.ippsWinBlackmanStd
, which simply multiplies a vector by a Blackman window with the standard value of alpha
shown below:alpha
= -0.16ippsWinBlackmanOpt
.ippsWinBlackmanOpt
provides a modified window that has a 30 dB/octave roll-off by multiplying a vector by a Blackman window with the optimal value of alpha
shown below:
The minimum
len
is equal to 4. For large len
, the optimal alpha
converges asymptotically to the asymptotic alpha
; the application can use the asymptotic value of alpha
shown below: alpha
= -0.25Return Values
- ippStsNoErr
- Indicates no error.
- ippStsNullPtrErr
- Indicates an error when thepSrc,pDst, orpSrcDstpointer isNULL.
- ippStsSizeErr
- Indicates an error whenlenis less than 4 for the functionippsWinBlackmanOptand less than 3 for all other functions of the family.
Example
The example below shows how to use the function
ippsWinBlackmanStd_32f_I
void blackman(void) { Ipp32f x[8]; ippsSet_32f(1, x, 8); ippsWinBlackmanStd_32f_I(x, 8); printf_32f(“blackman (half) =”, x, 4, ippStsNoErr); }
Output:
blackman(half) = 0.000000 0.090453 0.459183 0.920364 Matlab* Analog: >> b = blackman(8)'; b(1:4)