Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER Feature Requests

Reply
 
Thread Tools Display Modes
Old 11-27-2018, 01:42 PM   #1
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default Improved spectrogram frequency resolution: custom FFT sizes

Here is a comparison between REAPER and RX7's spectrograms for the same piece of music:

REAPER:


RX7:


The RX7 spectrogram is obviously much sharper in the frequency domain, and much more informative.

RX7 offers advanced options such as "Adaptively sparse" analysis, and I don't know how difficult it would be to program these for REAPER.

However, even when using only the most basic settings, a spectrogram can be vastly improved by simply tweaking the FFT size. My guess is that REAPER uses an FFT size of 256 samples, since RX7 and Audacity's spectrograms look very similar to REAPER's, if they use that FFT size (and only basic analysis).

Here is Audacity's version, with an FFT size of 4096. Although not as good as RX7, it is a big improvement over REAPER:

juliansader is offline   Reply With Quote
Old 11-28-2018, 03:21 AM   #2
mpl
Human being with feelings
 
mpl's Avatar
 
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,960
Default

FYN there is FFT size parameter (always 1024) in item chunk so maybe it is already possible, but not allowed from interface or ReaScript.
mpl is offline   Reply With Quote
Old 07-06-2019, 04:04 AM   #3
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

If the FFT size is given in the chunk, that would be great, since a script can then easily change it. Unfortunately, I have never seen an FFT field or any field with a default value of 1024 in the item chunk. Are you sure about this FFT size parameter? (Does it only appear after doing some Actions?)
juliansader is offline   Reply With Quote
Old 07-14-2019, 02:55 PM   #4
Philbo King
Human being with feelings
 
Philbo King's Avatar
 
Join Date: May 2017
Posts: 3,201
Default

I wonder if 'adaptively sparse' means FFT size increases for bass and decreases for treble? That would certainly optimise bin resolution across the spectrum.
__________________
Tangent Studio - Philbo King
www.soundclick.com/philboking - Audio streams
Philbo King is offline   Reply With Quote
Old 07-14-2019, 03:00 PM   #5
Meo-Ada Mespotine
Human being with feelings
 
Meo-Ada Mespotine's Avatar
 
Join Date: May 2017
Location: Leipzig
Posts: 6,621
Default

Item-spectral-edit is completely programmable via my Ultraschall-API.
I spent a big deal in reverse engineering it and coding functions for it.

Introduction-chapter:
https://mespotin.uber.space/Ultrasch..._Spectral_Edit


The StateChunk-entries described can be found in:
https://github.com/Ultraschall/ultra...Doku.txt#L1237
__________________
Use you/she/her.Ultraschall-Api Lua Api4Reaper - Donate, if you wish

On vacation for the time being...
Meo-Ada Mespotine is offline   Reply With Quote
Old 07-17-2019, 01:33 PM   #6
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

Quote:
Originally Posted by mespotine View Post
Item-spectral-edit is completely programmable via my Ultraschall-API.
I spent a big deal in reverse engineering it and coding functions for it.

Introduction-chapter:
https://mespotin.uber.space/Ultrasch..._Spectral_Edit


The StateChunk-entries described can be found in:
https://github.com/Ultraschall/ultra...Doku.txt#L1237
Unfortunately, as far as I can tell, the chunk's SPECTRAL_CONFIG field stores the "Take processor FFT size" of an individual spectral edit and only affects that spectral edit, not the appearance of the item's spectrogram.
juliansader is offline   Reply With Quote
Old 10-12-2020, 05:47 PM   #7
rick
Human being with feelings
 
Join Date: Nov 2014
Location: Leicester, Eng
Posts: 55
Default spectral resolution

Being able to change the windowing sizes according to target frequency would be great. and x overlap.
and cut and paste spectral data.
Then I could ditch AudioSculpt.
Thanks

Rick

Last edited by rick; 10-12-2020 at 06:02 PM. Reason: forgot
rick is offline   Reply With Quote
Old 10-13-2020, 07:22 AM   #8
Philbo King
Human being with feelings
 
Philbo King's Avatar
 
Join Date: May 2017
Posts: 3,201
Default

Quote:
Originally Posted by mespotine View Post
Item-spectral-edit is completely programmable via my Ultraschall-API.
I spent a big deal in reverse engineering it and coding functions for it.

Introduction-chapter:
https://mespotin.uber.space/Ultrasch..._Spectral_Edit


The StateChunk-entries described can be found in:
https://github.com/Ultraschall/ultra...Doku.txt#L1237

Every so often a link from the forum leads one to a gold mine. This is one of those. Thank you!
__________________
Tangent Studio - Philbo King
www.soundclick.com/philboking - Audio streams
Philbo King is offline   Reply With Quote
Old 10-14-2020, 05:37 AM   #9
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,686
Default

Please let me know what you mean by "FFT parameters for Spectrum editing".
The colored display of the spectrum of the waveform or the algorithm that calcultes the new samples from the original media's samples ?

-Michael
mschnell is offline   Reply With Quote
Old 10-19-2020, 01:31 AM   #10
juliansader
Human being with feelings
 
Join Date: Jul 2009
Posts: 3,714
Default

I think you probably intended to reply to this thread: Default FFT Size of the Spectral editor?
juliansader is offline   Reply With Quote
Old 07-25-2022, 12:42 PM   #11
nepenthe
Human being with feelings
 
Join Date: Mar 2011
Location: USA
Posts: 461
Default

Quote:
Originally Posted by juliansader View Post
I think you probably intended to reply to this thread: Default FFT Size of the Spectral editor?
Bump. REAPER's Spectrogram FFT size appears to be pretty low (256 or so?). We could really use more options up to 8192 + in order to see what is going on. Multi-res would be even better.

Comparison of a nature recording in REAPER and RX (at 2048 FFT size).
nepenthe is offline   Reply With Quote
Old 07-28-2022, 08:37 PM   #12
Lynx_TWO
Human being with feelings
 
Lynx_TWO's Avatar
 
Join Date: Dec 2019
Location: St Petersburg FL
Posts: 996
Default

Quote:
Originally Posted by Philbo King View Post
I wonder if 'adaptively sparse' means FFT size increases for bass and decreases for treble? That would certainly optimise bin resolution across the spectrum.
I believe that’s exactly what is happening, yes. You can also do Extended Log in RX which allows you to really nail down any issues with bass. There’s so little information in the bass frequencies below 80hz yet it can be SO important.
__________________
My mixes from the Cambridge multitracks library
SoundCloud link & Youtube (ThemTube?) link
My preferred adjectives are “Handsome” and “Brilliant”
Lynx_TWO is offline   Reply With Quote
Old 07-28-2022, 11:41 PM   #13
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,686
Default

Technically, the FFT size defines the low frequency limit (Sample Rate / size). an FFT based algorithm will be able to change anything in the signal, all lower frequencies are just passed through. It has no influence on the high end and does not "cut" the bass.

I can't believe that an FFT size of 256 can do anything reasonable.
-Michael
mschnell is offline   Reply With Quote
Old 01-23-2024, 02:25 PM   #14
Nüwa
Human being with feelings
 
Join Date: Nov 2020
Location: Québec
Posts: 26
Default

I do agree. The spectral resolution as is right now is good to give a broad approximation of the sound but lacks the required resolution to really pinpoint accurately certain problems like you can in RX for example
Nüwa is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 05:44 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.