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

about ippiDCT8x8Fwd_16s_C1

sean_tseng
Beginner
263 Views
I try to use the Ipp function "ippiDCT8x8Fwd_16s_C1"
to do DCT Transformation
How to pass the argument to the function??
Are there any sample code ??
for ex.
Ipp16s Test[8][8]={{52,55,61,66,70,61,64,73},
{63,59,66,90,109,95,69,72},
{62,59,68,113,144,104,66,73},
{63,58,71,122,154,106,70,69},
{67,61,68,104,126,88,68,70},
{79,65,60,70,77,68,58,75},
{85,71,64,59,55,61,65,83},
{87,79,69,68,65,76,78,94}};
Ipp16s dTest[8][8];
IppStatus st=ippiDCT8x8Fwd_16s_C1((Ipp16s*)Test,(Ipp16s*)dTest);
The above code can be compiled,but in run-time may cause some error!!
Help!~
0 Kudos
1 Reply
Vladimir_Dudnik
Employee
263 Views

Hi,

seems, you are using this function correctly (if you are talking about IPP for IA). There is simple example which you can found in IPP Manual, ippiman.pdf file (it is for in-place variant of functions but is does not matter):

Example 10-4 Forward DCT of 8x8 Size

IppStatus dct16s( void ) {
Ipp16s x[64] = {0};
IppiSize roi = {8,8};
int i;

for( i=0; i<8; ++i ) {
ippiSet_16s_C1R( (Ipp16s)i, x+8*i+i, 8*sizeof(Ipp16s), roi );
--roi.width;
--roi.height;
}

return ippiDCT8x8Fwd_16s_C1I( x );
}

Note, there can be alignment requirement in IPP for Xscale, please check with IPP for Xscale manual.

Regards,
Vladimir

Message Edited by vdudnik on 01-12-2006 01:27 PM

0 Kudos
Reply