Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.

CDT4 compilation error

yoavnaveh
Beginner
461 Views
Hello,

I have a compilation problems with the most simple use of the DCT4 functions. the code is below. It looks like the compiler doesn't know any IppgSomething objects/functions.

thanks,

Yoav

---------------------------------------------------------------------------------------------------------------

#include

#include

#include

#include

#include

#include

#include

#include

#include

int main(int argc, char* argv[])

{

static const Ipp32f src[12] = {1, -10, 324, 48, -483, 4, 7, -5532, 34, 8889, -57, 54};

int i;

int type = 3; // 1==> DWT; 2==> DCT 3 ==> DCT4

printf("original: ");

for(i = 0; i < 12; i++) printf("%.0f; ", src);

printf(" \\n");

if (type == 3) {

Ipp32f dst[12];

Ipp32f dst2[12];

int n;

IppgDCT4Spec_32f* spec;

IppStatus status;

/// get cosine transform coefficients

status = ippgDCT4InitAlloc_32f(&spec, 12);

status = ippgDCT4_32f (pSrc, pDst, spec);

printf("after forward DCT: ");

for(i = 0; i < 12; i++) printf("%.4f; ", dst);

printf("\\n");

/// restore signal using len/4 values

status = ippgDCT4_32f(dst, dst2, spec);

ippgDCT4Free_32f(spec);

printf("after inverse DCT: ");

for(i = 0; i < 12; i++) printf("%.4f; ", dst2);

printf("\\n");

}

return 1;

}

0 Kudos
4 Replies
Vladimir_Dudnik
Employee
461 Views
Hello,

functions from IPP generated library declared in ippgen.h header file and implemented in ippg libraries. Note, these libraries are not installed by default (due to their big size). Instead they available as a separate download package. That is why ippgen.h file not listed in ipp.h file, so you need to include ippgen.h file explicitely in your program when use functions from generated library.

Please note, that in future versions of product ippgen library might be removed.

Regards,
Vladimir
0 Kudos
yoavnaveh
Beginner
461 Views
Hello Vladimir,

I get a compiler error saying that it doesn't know ippgen.h file. I don't have any ippg*.so files in my ipp library list. how do I download this library? Is there another implementation of DCT-4 somewhere? If it will be removed in the future (as you wrote), will the DCT-4 implementation be moved elsewhere? DCT-4 is needed for compression algorithms, so this might be a serious problem for the IPP functionality...

thanks,

Yoav
0 Kudos
Naveen_G_Intel
Employee
461 Views

Hi,

IPPGen is separate download; refer to IPP release notes to get more information.

In order to decrease the size of the Intel IPP library installation package, the SPIRAL subset (ippGEN) of the signal processing domain is now distributed as a separate library add-on. Go to the Intel Registration Center to download the ippGEN component of the Intel IPP library.

SPIRAL for Intel IPP is a separate installation package that contains the binaries and header files needed to utilize the functions contained in the ippGEN domain. It is an add-on to the Intel IPP library and, therefore, requires that the core Intel IPP library be already installed on your system. You must first install the standalone Intel IPP library, Intel Composer XE, or the Intel Parallel Studio product before installing the respective SPIRAL add-on library.

The ippGEN package is an adjunct to the ippSP (Signal Processing) domain. It contains signal processing functions that have been optimized for non-ordinary size data sets, primarily in the class of FFT functions. If you have not used these "ippg" functions in the past it is likely that you do not need to download and install this add-on library. However, there is no harm to installing this add-on with the core Intel IPP library.

Regards,
Naveen Gv
0 Kudos
yoavnaveh
Beginner
461 Views
thanks, I'll check it out.
I have another open thread about 1D wavelet transform, can you assist me with it too?

thanks,

Yoav
0 Kudos
Reply