FFT Analyzer is available in
AudioTools, and FFT is also available as a standalone application. The
information in this manual applies largely to the FFT module available
within AudioTools, although the two apps are nearly identical. You will
find FFT in the Acoustics section of AudioTools. To quickly see FFT Analyzer in action, make sure to check out our FFT Demo Videos in the Support -> Video Center of AudioTools.
FFT, or Fast Fourier Transform takes a time-varying input signal and transforms it into a frequency spectrum. The algorithm used in Studio Six Digital's FFT Analyzer provides the same professional quality measurement results that you would find in any other hardware- or software-based FFT analyzer.
Note: This application has been designed for acoustics work, so the FFT bins have been normalized to octaves to get a display that will show a flat line for a pink noise input signal.
Back to TopThe FFT algorithm is a mathematical procedure that breaks a signal into frequency bins. Each bin is the same size in Hertz. The size of the FFT determines the width of the bins in Hertz. The bin width = sample rate / FFT size. For example, running at the iOS device's maximum sample rate of 48,000 samples/second, a 1,024 point FFT would result in each frequency bin being 48 Hz wide. This gives us great resolution at 10kHz, but poor resolution at 32 Hz.
It is possible to run larger and larger FFTs, but since we first have to store up all the samples to fill the FFT buffer, and then do the math, the lag time starts to increase and the display becomes less and less responsive.
In FFT Analyzer, we provide the choice of FFT size (4,096 points to 32,768 points). In addition, another mode is provided called: Equal Points Per Octave (EPPO). In this mode, a fairly small FFT (512 points) is run, but only the top octave from this FFT is used. So we get a resolution at 10kHz of about 93Hz. Another way to look at it is that we get about 120 data points in the top octave (think of it as 1/120th octave resolution). Then, we decimate and filter to get the sample rate down to 24kHz, and then run another 512 point FFT. So again, we get 1/120th octave resolution. We continue this process right down to the lowest octave. The result is excellent resolution across the frequency spectrum. The cost is that each octave only updates half as quickly as the octave above it, so the low octaves update much more slowly. The upper octaves, however, retain a very quick response.
EPPO is best used with steady-state signals, such as pink noise, or to analyze constant noise signals. If you want to see the entire graph updating quickly, use 4,096 or 8,192 points. Note that due to the fact that there are individual FFTs running for each octave, you may see graphical anomalies in the noise floor -- for example, since the decimation filter cuts off frequencies above the Nyquist frequency (sampling rate/2), the lower FFTs don't even get the higher frequencies, and so they may have a lower noise floor than the upper FFTs. This is normal. You may adjust the graph to move the entire FFT noise floor off the bottom of the screen to get a cleaner looking graph, if desired.
All calculations are done in 64-bit floating point for the best accuracy and to get the lowest possible noise floor.
Back to Top
This section describes the elements of the main FFT Analyzer screen (iPad interface is shown).
A -- Audio Input: This text will show the input that FFT Analyzer is acquiring audio from. The options include Internal Mic, iAudioInterface, iAudioInterface2, iTestMic and USB Audio if using a USB audio interface and the camera connection kit. Tapping the Input text on the header bar of FFT will let you select the input option, or also disable audio processing if you want to simply load a pre-measured FFT response to analysis without running the live FFT.
B -- FFT Bins: Displays the currently selected number of FFT points. Select the number of points from the FFT Setup screen. Each bin collects the amplitude of signal from a small frequency range based on the sampling frequency. In the example above, we have 16,384 points at a sampling rate of 48,000 Hz. In this case, each frequency bin is approximately 2.93 Hz wide. A higher number of points will give additional frequency resolution. On the latest generation of iOS devices, sufficient processing power is available to use any of the FFT bin choices available, up to 32,768 points.
C -- Graph Display: This area shows the current frequency response of the incoming audio signal. The X-Axis displays the frequency and the Y-Axis displays the dB SPL of the given frequency.
D -- Overall SPL: This is the overall dB SPL of the broadband signal being recorded. The SPL Readout can be set to Flat, A-Weighted or C-Weighted from the FFT Setup.
Also on the right side of the screen at the top you will see the audio sample rate and bit depth that are currently in effect. In Full Frequency FFT mode you will see one sample rate, normally 48kHz, but in Low Frequency mode you will see two sample rate, like 48k/8k. The first value is the sample rate of the hardware, and the second one is the sample rate of the FFT processing. 8kHz provides the best low frequency response according to our tests, but not all hardware combinations can run at 8kHz.
E -- Capture Image: Taping the picture thumbnail icon will save a screen capture of the current analysis to your iOS device's photo roll.
F -- Frequency Smoothing Selector: Taping this select box will bring up the Frequency Smoothing Selector (below). This will combine a number of individual frequency bins into a larger bandwidth bin logarithmically. Smoothing options from 1 octave to 1/24th octave-wide smoothing are available. Taping No Smoothing will display each individual FFT bin on the graph. Tap the adjacent Select button to change the amount of smoothing currently being used for the analysis.
G -- Start Analysis: Taping the play/pause button will begin or stop the real time FFT analyzer.
H -- Save/Recall Screen: Tapping the folder icon will bring up the Save/Recall FFT screen, where measurements can be stored, shared or recalled for comparison with the current measurement.
FFT supports all of the standard Save/Recall features, which are described in detail on the Info screen that is accessed from the Save/Recall page. In addition, several other features are available.
Quick-Save: From the main screen, if you leave your finger on the folder icon for 2 seconds, the current plot will be saved, using the name from the Auto-Save Naming settings (see the mini-menu below), and then immediately recalled back onto the screen. This is useful for quickly capturingplots.
Clear Recalled Graphs: On the Save/Recall screen there is an icon that looks like 3 lines with dots. Tapping this icon brings up the mini-menu, with several additional options. One of these options is "Clear Recalled Graphs", which will remove the recalled plots from the main screen.
Recall to Live Plot: Also on the mini-menu, this option allows you to recall a stored plot to the main live plot. This can be useful if you want to, for example, compare two stored plots using Compare Mode.
Note that when you recall a plot, the settings for the FFT,
specifically FFT Size and Full/Low mode, must match those of the stored
plot. This is due to how the FFT data is handled when the plot is
mathematically being created.
I -- Generator: The sine wave icon, when taped, brings up the Signal Generator (seen below). The generator will play back test signals from the output of the connected audio device or internal speakers of the iOS device. The generator can create sine or square wave tones from 5 Hz to 20,000 Hz, white noise or pink noise. To change the value of the frequency of the tone, either use the slider or simply tap on the current frequency displayed and type in the desired frequency with the pop-up keyboard.
When the iAudioInterface2 is connected and the Surround Generator modules has been purchased (Utilities -> Surround Generator), the option to play back the signal from any of the surround channels over the optical output of the iAudioInterface2 will also be available.
J -- FFT Setup: Tapping the wrench icon brings up the setup menu. This menu displays the configuration options of the FFT Generator, which will be described in detail in the FFT Setup section.
K -- Decay Mode: This selector (shown below) will adjust the decay time being used for analysis.
The decay times apply to the graph dB values. A decay time of one second will cause a point to decay at the rate of 20dB/second. Peak Hold holds the highest value received, and Average is a true linear average of all readings over the time of the average. To clear Peak or Average mode, tap the Reset button on the Average box, which appears when these modes are selected.
NOTE: In EPPO mode, the decay time on the lower octaves is the same as the upper octaves, but since they are not being refreshed as often, they will jump up and then decay back down.
Clipping: If clipping of the input occurs, the words "Clipping Detected" will be displayed above the graph in the upper left-hand corner in red for 1.5 seconds.
Back to TopTapping the wrench icon will bring up the FFT Setup menu. From here, you can customize how the FFT Analyzer operates. Tapping the Done button at any point will bring you back to the main analyzer window. Let's take a look at what each option available does to the analysis.
A -- Frequency Range: The FFT Analyzer has two options for frequency range: Low Frequency and Full Range. Full Range shows 20 Hz-20 kHz range, while Low Frequency mode shows 5 Hz to 3.1 kHz. The Low Frequency mode is especially useful when you need the most resolution in the lowest octaves of analysis -- measuring a subwoofer's response in a room for example.
B -- Audio Monitor: Turn on or off to allow audio that is coming in to the audio interface to be presented at the output. Note: Turning on the generator overrides audio-pass through.
C -- FFT Type: Taping this box will allow you to change the number of points being used for the analysis. 2,048, 4,096, 8,192, 16,384 and 32,768 are available, in addition to the EPPO mode. The FFT Resolution of your choice will be displayed in Hz below the FFT Type selection text.
D -- Difference Mode: Difference mode will allow you to compare the frequency spectrum of an incoming signal to the currently measured signal. Tap the On button and then recall a reference signal from the Save/Recall screen (by tapping the folder icon from the main window). Notice the graph will turn green and the name of the recalled file will be displayed as shown below. The recalled graph is being subtracted from the current measurement. In the example shown here, to current measurement shows less high frequency energy than the measurement that was recalled. Turning on the the normalize plots switch will normalize the broadband SPL so that just the relative frequency spectrum will be compared, and not the absolute level. Taping the invert switch will switch the order of the subtraction -- the current response will be subtracted from the reference signal.
NOTE: Difference Mode is now called "Compare Mode". Also in the
latest versions you can select the comparison mode, where "L" is the
Live Plot, and "R" is the recalled plot (or plots, if Average Plots is
switched on".
E -- Peak Tracking: Turning peak tracking on will track the FFT bin with the highest amplitude and display the frequency either on the cursor or in large text on the screen. Our algorithm uses the actual highest FFT bin, and does not use the calibration compensation, so it may not be the highest point on the graph.
Thin / Thick Plot: Select whether you would like to display a thin plot line, or a thickened one for more readability, but less resolution.
F -- Graph Scales:This will select the frequency scale on the X-axis of the main analysis screen. Normally, this is set to Log, where the scale is marked by octaves. Choosing Linear will display a linear frequency scale. You can also set the lower and upper bounds of the dB Scale and Frequency Scale here.
G -- Input Source: This is the standard AudioTools input source selection screen, where you can choose microphone gain, or change settings.
H -- Average Plots: Turn on this switch to instantiate the average plot mode. When this mode is on, instead of recalling only a single plot at a time, any number of plots can be recalled and averaged. This holds true for difference mode as well, where n measurements recalled will be averaged together to be the basis for the computation. This is useful when you take numerous measurements in a room, for example, and want to compare them to the next individual measurement.
I -- SPL Readout:Adjusts the filter used for the broadband SPL reading on the main FFT Analyzer screen. Choose between Flat, A, and C-weighting filters. In the FFT Setup section, you can also apply Flat, A or C-weighting filters to the whole FFT analysis by changing the options there.
J -- Input Windowing: When turned on, the data is windowed before sending it to the FFT. Windows are used as a time weight function and to minimize frequency errors outside the FFT bin caused by the discrete nature of the sample and to reduce spectral leakage. These windows attempt to heavily weight the beginning and end of the FFT sample to be zero and the middle of the sample to be weighted towards unity gain. Read more about windows for spectral analysis. There are three options for FFT Windowing: Hamming, Hann and Blackman. Hamming is the default used. Read more about Hamming, Hann and Blackman windows. Underneath the windowing options is a slider to adjust the amount of overlap used in the FFT analysis. The default is 50%. By reducing the value of the slider, the analysis will give you a better transient response in your analysis -- usefully for impulsive sounds like drums. Moving the overlap to the right, gives the analysis a smoother overall response.
K -- Lock ranges: This switch will turn on and off the fixed X- and Y-axes of a given measurement. When lock ranges is turned on this lock icon
will be displayed on the main window analysis window. Any subsequent
measurement or recalled measurement will be relative to this fixed
scale.
L -- Reference Curve: Tapping this text will bring up the Reference Curve screen. This option is an in-app upgrade that when purchased is available program-wide in AudioTools. Reference curves are useful if you want to compare live measurements against a pre-defined level, or try to match the curve using EQ, for example, or to test whether a piece of equipment is within spec. Full details about usage are in the Reference Curves info screen.
Show Music Note: Turn this
switch on to enable the display of the nearest musical scale note, both
on the cursor, and on the Peak Tracking display.
Double-tap: At any time, double-tap the screen to normalize it. This will show the full frequency range, and fit the graph to the screen.
Graph Scrolling: The graph will scroll up and down when you slide one finger up and down on the screen. Use a two-finger vertical pinch to adjust the screen scale, to see more or less dB on the screen. Use a horizontal open-pinch gesture to spread out the screen and zoom in on the frequency axis. When the frequency scale is zoomed, you can use two fingers to pan the graph horizontally. Note: if Lock Graph Scale is turned on in the FFT Setup menu, the two-finger pinch gesture will not function.
The state of the graph is stored as you make changes, so the next time that you start the FFT app, the zoom and scale settings are restored.
Cursor: Swiping left and right will bring up a cursor, which you can dismiss by swiping off the graph to the left.
Back to Top