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

Upgrading from IPP 5 to IPP 9 but cant find ippsGoertzTwo_16sc_Sfs

jeffggibson
Beginner
1,292 Views

I recently upgraded to IPP 9 (from IPP 5) and it seems like support for dual-frequency Goertz is no longer available.  We use this method extensively:

ippsGoertzTwo_16sc_Sfs 

Is there a replacement for this method, or are there examples of how to do DFT for dual frequencies without this method?

 

The documentation indicates "Some of the functions compute two values, not one. The applications computing several values, for example the dual-tone multifrequency signal detection, work faster with such functions."   But it does not explain how to handle two values instead of one, or which functions compute two values.

 

This is where we are using the ippsGoertzTwo_16sc_Sfs function:

 

PS_INLINE void ML_InbandDtmfDetector::CalculateDFT(int* pFreq, unsigned int* pDst, int nFreqs)
{
   // NOTE: nFreqs must be EVEN !
   //
   for (int i = 0; i < nFreqs; i += 2)
   {
      Ipp16sc output[2] ;
      Ipp32f freq[2] ;

      freq[0] = m_mapFreq2Ratio[pFreq[i]];
      freq[1] = m_mapFreq2Ratio[pFreq[i+1]];
      IppStatus status = ippsGoertzTwo_16sc_Sfs(m_pComplexSamples, SAMPLE_SIZE, output, freq, 6);

      pDst[i] = abs( output[0].re ) + abs( output[0].im ) ;
      pDst[i+1] = abs( output[1].re ) + abs( output[1].im ) ;
   }
}

0 Kudos
5 Replies
VarshaS_Intel
Moderator
1,256 Views

Hi,

 

Thanks for posting in Intel Communities.

 

>>Is there a replacement for this method, or are there examples

Yes, the function ippsGoertzTwo_16sc_Sfs you are referring to is deprecated in the older version IPP 9, and for replacement in the latest version, you can use the function 2xippsGoertz_16sc_Sfs. 

 

For more details regarding ippsGoertz_16sc_Sfs, could you please refer to the below link:

https://www.intel.com/content/www/us/en/docs/ipp/developer-reference/2021-9/goertz.html

 

And also, could you please refer to the below link for other deprecated functions:

https://www.intel.com/content/www/us/en/docs/ipp/developer-reference/2021-9/appendix-b-removed-functions-for-signal-processing.html

 

>>upgraded to IPP 9 (from IPP 5)

We can see that you are using an older version of IPP, we recommend you use the latest version of Intel IPP 2021.9 for more features and better performance

 

Thanks & Regards,

Varsha

 

0 Kudos
jeffggibson
Beginner
1,222 Views

Thankjs Varsha,

 

I cannot find 2xippsGoertz_16sc_Sfs in the header files for IPP 9.0

Where should I find that method?

I am using the latest download, and trying to upgrade my code from IPP 5.

#define IPP_VERSION_STR "2021.9.0"

0 Kudos
VarshaS_Intel
Moderator
1,197 Views

Hi,

 

For the documentation of  Goertz in the latest version of 2021.9, the required Include header is ipps.h, and domain dependencies are Headers: ippcore.h, ippvm.h

Libraries: ippcore.lib, ippvm.lib.

 

Here, Intel IPP 9.0 functions or workaround to replace the removed function ippsGoertzTwo_16sc_Sfs is 2 x ippsGoertz_16sc_Sfs.

VarshaS_Intel_1-1695987487652.png

 

 

Thanks & Regards,

Varsha

 

0 Kudos
VarshaS_Intel
Moderator
1,084 Views

Hi,


We have not heard back from you. Could you please let us know if you have any other queries?


Thanks & Regards,

Varsha


0 Kudos
VarshaS_Intel
Moderator
1,047 Views

Hi,


We have not heard back from you. Could you please let us know if you have any other queries?


Thanks & Regards,

Varsha


0 Kudos
Reply