If you have a problem or need to report a bug please email : support@dsprobotics.com
There are 3 sections to this support area:
DOWNLOADS: access to product manuals, support files and drivers
HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects
USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here
NEW REGISTRATIONS - please contact us if you wish to register on the forum
Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright
Okay, so lets make real FFT in FS
1 post
• Page 1 of 1
Okay, so lets make real FFT in FS
Okay, we know some theory on how to contact with DLL's, so let's make some real FFT in FS. I mean something, that operates on 65 up to perhaps even 512k resolutions...
My general understanding is this.
1. Via ruby - we need to send audio mono stream in frames (whatever that means...) to the DLL primitive.
2. DLL primitive will sent this to external FFT processor.
3. DLL will get back FFT data from external processor via ruby frame (in/out nodes seem to be paired?), and here things start to get tricky.
In FS - as far I can see, generally single green arrays are limited to 16k, maybe 32k. Over that size - FS starts to slow down. So there are few solutions, that should be incorporated in external FFT processor.
A) Either we need split the output FFT somehow into several paralel arrays, like 16k x 8 arrays (I don't know if this will work, I don't know if this should be done via FS ruby or within external FFT processor).
B) Or - some sort of zooming technique, that will always output single 16k array, but at desired zoom (x1-x2 range) ratio. Then FS should be able to perform paralel processing (general array vs zoomed array)
Now - one "release candidate" for FFT processing is probably this one:
http://www.fftw.org/
Or maybe something else, like wavelets? I don't know, but FS needs better analyzing tools (and if possible - at least near/usable real-time processing) than it can have right now.
My general understanding is this.
1. Via ruby - we need to send audio mono stream in frames (whatever that means...) to the DLL primitive.
2. DLL primitive will sent this to external FFT processor.
3. DLL will get back FFT data from external processor via ruby frame (in/out nodes seem to be paired?), and here things start to get tricky.
In FS - as far I can see, generally single green arrays are limited to 16k, maybe 32k. Over that size - FS starts to slow down. So there are few solutions, that should be incorporated in external FFT processor.
A) Either we need split the output FFT somehow into several paralel arrays, like 16k x 8 arrays (I don't know if this will work, I don't know if this should be done via FS ruby or within external FFT processor).
B) Or - some sort of zooming technique, that will always output single 16k array, but at desired zoom (x1-x2 range) ratio. Then FS should be able to perform paralel processing (general array vs zoomed array)
Now - one "release candidate" for FFT processing is probably this one:
http://www.fftw.org/
Or maybe something else, like wavelets? I don't know, but FS needs better analyzing tools (and if possible - at least near/usable real-time processing) than it can have right now.
Need to take a break? I have something right for you.
Feel free to donate. Thank you for your contribution.
Feel free to donate. Thank you for your contribution.
- tester
- Posts: 1786
- Joined: Wed Jan 18, 2012 10:52 pm
- Location: Poland, internet
1 post
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 81 guests