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

IppsFIR_32fc and interlaced stereo

gol
Beginner
367 Views

I understand that complex formats aren't really made to process stereo interlaced channels, butsometimes they do, and I use them that way.

I can't find any place where the behavior of complex format with FIR processing is explained, so I assumed that it would work with interlaced stereo.

However, it doesn't seem to, and I can't find any mistake in my code - so is it even supposed to?

I interlace the same taps, so that it's filled with pairs of the same value. But IppsFIR_32fc just results in the right channel (would be imaginary) processed (normally), and the left channel (would be real) is zeroed out.

So.. what's the behavior of the complex format in FIR processing?

Also, if it can't be used to process stereo, do we really have to set up twice the same taps for both channels? Can't the same taps be shared, with only a delay per channel?

Thanks

0 Kudos
3 Replies
gol
Beginner
367 Views

I just realized I could zerothe imaginary part of the taps, and it would process stereo properly. However I don't understand why, and couldn't find any info on the use of FIRs on complex signals.

Still, would I get better performances if I created 2 FIRs, deinterlaced, processed each channel, interlaced?

0 Kudos
gol
Beginner
367 Views

Finally, let's say I want to process stereo by deinterlacing. Should I use FIR, or FIR_Direct?

I'd understand FIR_Direct may be slightly faster, because the taps would be shared, probably better for the cache. However ippsFIR allows the engine to precompute stuff to help it optimize better, but does it really precompute stuff in that state structure? Or does FIR calls FIR_Direct?

0 Kudos
Vladimir_Dudnik
Employee
367 Views
that's correct, FIR keep precomputed staff in state structure.
0 Kudos
Reply