Performs linear convolution of 1D signal.
IppStatus ippsConvPartial_16s_Sfs (const Ipp16s* pSrc1, const Ipp16s* pSrc2, Ipp16s* pDst, int len, int scaleFactor);
IppStatus ippsConvPartial_16s32s (const Ipp16s* pSrc1, const Ipp16s* pSrc2, ipp32s* pDst, int len);
IppStatus ippsConvPartial_NR_16s (const Ipp16s* pSrc1, const Ipp16s* pSrc2, Ipp16s* pDst, int len);
IppStatus ippsConvPartial_NR_Low_16s(const Ipp16s* pSrc1, const Ipp16s* pSrc2, Ipp16s* pDst, int len);
pSrc1 |
Pointer to the first source vector. |
pSrc2 |
Pointer to the second source vector. |
pDst |
Pointer to the destination vector. |
len |
Number of elements in the source and destination vectors. |
scaleFactor |
Scale factor used for output data scaling. |
The function ippsConvPartial is declared in the ippsc.h file. The function flavor ippsConvPartial_16s32s computes the convolution of the vectors pSrc1 and pSrc2 as:
The function flavor ippsConvPartial_16s_Sfs computes the convolution of the vectors pSrc1 and pSrc2 and scales output data as given by:
Computed results are clipped.
The function flavor ippsConvPartial_NR_16s performs the same operation as the function ippsConvPartial_16s32s, but uses NR rounding and the default scale factor equal to 15.
The function flavor ippsConvPartial_NR_Low_16s performs the same operation as the function ippsConvPartial_NR_16s, but it requires that each value of the sum does not exceed the Ipp32s data type range.
Note that the output results produced by the partial convolution function are the same as the first len results of the general signal processing convolution function ippsConv_16s_Sfs, if the difference due to rounding is not taken into account.
ippStsNoErr |
Indicates no error. |
ippStsNullPtrErr |
Indicates an error when the pSrc1, pSrc2, or pDst pointer is NULL. |
ippStsSizeErr |
Indicates an error when len is less than or equal to zero. |
ippStsScaleRangeErr |
Indicates an error when scaleFactor is negative. |
Copyright © 2000 - 2011, Intel Corporation. All rights reserved.