Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
Announcements
FPGA community forums and blogs have moved to the Altera Community. Existing Intel Community members can sign in with their current credentials.

newb where are filter functions?

Becker__Neal
Beginner
557 Views

I just got an eval copy of ipp to try.  The documentation is awful.  I just want to try first a simple single rate floating point FIR filter.

I look at http://software.intel.com/sites/products/documentation/doclib/ipp_sa/71/ipp_manual/index.htm, everthing

I see there says it deprectated.  Where are the non-deprecated functions for 

1) initialize the filter structure

2) process a vector of input data

Thanks

0 Kudos
3 Replies
SergeyKostrov
Valued Contributor II
557 Views
Take a look at Digital Signal Processing domain header file ( ipps.h ) if you don't like online documentation. There are also documents in pdf format for almost all domains of IPP library.
0 Kudos
Igor_A_Intel
Employee
557 Views

use ippsFIRGetBufferSize, then ippsFIRInit and then - ippsFIR function; GetSize+Init pair should be used instead of deprecated InitAlloc.

regards, Igor

0 Kudos
SergeyKostrov
Valued Contributor II
557 Views
#define NUMITERS 150 IppStatus TestFIR(void) { int n; IppStatus status; IppsIIRState_32f *ictx; IppsFIRState_32f *fctx; Ipp32f *x = ippsMalloc_32f(NUMITERS), *y = ippsMalloc_32f(NUMITERS), *z = ippsMalloc_32f(NUMITERS); const float taps[] = { 0.0051f, 0.0180f, 0.0591f, 0.1245f, 0.1869f, 0.2127f, 0.1869f, 0.1245f, 0.0591f, 0.0180f, 0.0051f, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; for (n =0;n=(float)sin(IPP_2PI *n *0.2); ippsIIRInitAlloc_32f( &ictx, taps, 10, NULL ); ippsFIRInitAlloc_32f( &fctx, taps, 11, NULL ); status = ippsIIR_32f( x, y, NUMITERS, ictx); printf_32f("IIR 32f output + 120 =", y+120, 5, status); ippsIIRFree_32f(ictx); status = ippsFIR_32f( x, z, NUMITERS, fctx ); printf_32f("FIR 32f output + 120 =", z+120, 5, status); ippsFIRFree_32f(fctx); ippsFree(z); ippsFree(y); ippsFree(x); return status; } IPP Output: IIR 32f output + 120 = 0.000000 0.049896 0.030838 -0.030838 -0.049896 FIR 32f output + 120 = 0.000000 0.049896 0.030838 -0.030838 -0.049896
0 Kudos
Reply