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

resampling audio 44.1kHz -> 48kHz

inyanga
Beginner
990 Views

I'm trying to resample 44.1kHz 16 bit stereo to 48kHz 16 bit stereo with Intel IPP.

Since I'm new in IPP world, after a few days of reading tons of documentation, I'm nowhere.

What I have is this:


// imagine that we call this only once somewhere during the 'initialization'.

[bash]Ipp16s * pSourceBuffer = ippsMalloc_16s( 16 * 1024 ); Ipp64f * pTaps = ippsMalloc_64f( 8192 ); // is 8192 too much??? IppStatus result = ippsFIRGenLowpass_64f( 0.2, pTaps, 8192, ippWinHann, ippTrue ); Ipp16s * pDest = ippsMalloc_16s( 2 * samplesToConvert / 3 ); [/bash]

I'm not sure that above lines are 100% correct for my needs.

I tried using ippsFIRMR32s_Direct_16s_Sfs(), but the 'pTaps' parameter should be of 'Ipp32s *' type, and I have 'Ipp64f*'.
There is also an ippsFIRMRInitAlloc64f_32s() function, but I still can't figure out what to do next with the 'IppsFIRState64f_32s *'.


Some pseudo code would help a lot (if possible).


Basically, I'm trying to create a code that will resample incoming buffers. From a PCM file for example. The point is to get fast resampling with high quality.

0 Kudos
0 Replies
Reply