Yeah, the real/imaginary parts. The problem is that you do the
transform on each colour channel separately, so for rgb you need 6
channels (12 for the two buffers), which likely means 4 buffers in
practice.

Is this a problem? I'd split the RGB components and feed 3 identical macro instances with them, each containing buffer and CI filters for the FFT and the spectral processing and stuff, finally recombine the components.

Yep, that's the obvious solution. The catch is that it uses 3x the processing time, and this isn't a cheap filter. I'm aiming to use it as part of an application, which needs to process live video in various non-trivial ways.. in fact I'm really dubious about whether it's possible to integrate it and keep things running fast enough, but it has to be tried :)

Concerning power-of-2: You can do things like convolution or cross- correlation always on a power-of-2 basis. You need zero-padding anyway to perform _noncyclic_ convolution or correlation: Keep in mind that with DFT, you always get a spectrum of a periodic extension of your signal. A bit more zero-padding than needed will not be wrong.

Thanks.. more experimenting needed I think. I've written a mirror- tiling filter already, so I'll experiment a bit and see what happens in practice.

Another thing: Shouldn't we care about precision? Which GPU has how many bits per color, and will it be sufficient for FFT?

Absolutely. The GPU solutions I've come across all use floating point buffers, and I'm using mostly 32bit mode within my app so it'll fit in no problem there. Basically, a card that supports 32bit float is necessary - I guess radeon 1600+ or nvidia 7600+? They'll probably run it too slowly anyway :)

I've done some work on this: the texture juggling in the CI filter seems fine, and I've got the butterfly shaders running. I need to figure out how to create the weights + indices LUT next, and figuring out how to do that in a shader is giving me some headaches. Maybe a custom plugin is best for that. Plenty learned too, especially about the javascript functions in the CI filter patch. I finally figured out how to create custom sized images from a CI filter with no image inputs - took long enough! :)

Chris

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Quartzcomposer-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/quartzcomposer-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to