Difference between revisions of "Foobar2000:Components/Spectrum Analyzer (foo vis spectrum analyzer)"

From Hydrogenaudio Knowledgebase
Jump to: navigation, search
Line 12: Line 12:
 
| stable_release          =  
 
| stable_release          =  
 
| stable_release_date    =  
 
| stable_release_date    =  
| preview_release        = 0.1.0.2
+
| preview_release        = 0.4.1.1
| preview_release_date    = {{start date and age|2023|11|13}}
+
| preview_release_date    = {{start date and age|2023|11|29}}
 
| foobar2000_architecture = x86 32-bit, x86 64-bit
 
| foobar2000_architecture = x86 32-bit, x86 64-bit
 
| foobar2000_minimum      = 2.0
 
| foobar2000_minimum      = 2.0
Line 30: Line 30:
 
[[File:Spectrum_Analyzer_Configuration.png]]
 
[[File:Spectrum_Analyzer_Configuration.png]]
  
'''FFT Size''': An integer number between 64 and 32768. Note that any number that is not a power of 2 will consume a lot more CPU power.
 
  
'''Summation''': Determines which method is used to sum the coefficients of FFT.
+
== Transform ==
 +
 
 +
'''Method'''
 +
 
 +
Allows you to the selected the Time to Frequency domain transform. Currently Fast Fourier (FFT) and Constant-Q (CQT) transforms are implemented.
 +
 
 +
== FFT ==
 +
 
 +
Groups the parameters that influence the Fast Fourier transform.
 +
 
 +
'''FFT Size'''
 +
 
 +
Specifies the size of the FFT window as a number between 64 and 32768.
 +
 
 +
Select ''Custom'' to specify a number that is not a power of 2. This will consume a lot more CPU power.
 +
Select ''Sample rate based'' to specify the size as a duration. F.e. 100ms of a track sampled at 44.1kHz will result in an FFT window of 4410 samples.
 +
 
 +
'''Summation'''
 +
 
 +
Determines which method is used to sum the coefficients of FFT.
  
 
     Minimum
 
     Minimum
Line 46: Line 64:
 
'''Smooth gain transition'''
 
'''Smooth gain transition'''
  
'''Lanczos kernel''': Size of the Lanczos kernel
+
'''Lanczos kernel'''
 +
 
 +
Determines the size of the Lanczos kernel. The kernel is used to create a smooth transition between the FFT coefficients resulting in a visual pleasing result.
  
 
'''Distribution''': Determines which parameters are used to generate the frequency bands.
 
'''Distribution''': Determines which parameters are used to generate the frequency bands.

Revision as of 16:51, 29 November 2023

Spectrum Analyzer

foo_vis_spectrum_analyzer
Developer(s) pqyt
Repository
Release information
Initial release
Stable release
Preview release 0.4.1.1 (November 29, 2023; 1 year ago)
foobar2000 compatibility
Architecture x86 32-bit, x86 64-bit
Minimum version 2.0
Maximum version
UI module(s) Default UI
Additional information
Use Visualization
License
Discussion thread {{{discussion_thread}}}
View all components

A recreation of Musical Spectrum component for foobar2000 v2.x and 64-bit versions.

Configuration

Right-click on the component window and select Configure from the context menu to open the configuration dialog.

Spectrum Analyzer Configuration.png


Transform

Method

Allows you to the selected the Time to Frequency domain transform. Currently Fast Fourier (FFT) and Constant-Q (CQT) transforms are implemented.

FFT

Groups the parameters that influence the Fast Fourier transform.

FFT Size

Specifies the size of the FFT window as a number between 64 and 32768.

Select Custom to specify a number that is not a power of 2. This will consume a lot more CPU power. Select Sample rate based to specify the size as a duration. F.e. 100ms of a track sampled at 44.1kHz will result in an FFT window of 4410 samples.

Summation

Determines which method is used to sum the coefficients of FFT.

   Minimum
   Maximum
   Sum
   Residual Mean Square (RMS)
   RMS Sum
   Average
   Median

Smooth lower frequencies

Smooth gain transition

Lanczos kernel

Determines the size of the Lanczos kernel. The kernel is used to create a smooth transition between the FFT coefficients resulting in a visual pleasing result.

Distribution: Determines which parameters are used to generate the frequency bands.

   Linear: Generate frequency bands based on the frequency parameters.
   Octaves: Generate frequency bands based on the note parameters.
   AveePlayer: Generate frequency bands used by AveePlayer.

No. of bands: Number of frequency bands to generate (2 to 512)

Frequency range: Frequency of the first and last band, 0Hz to 96000Hz.

Note range: Number of the first and last note. (C0 = 0, C1 = 12, ...), 0 to 143 (12 octaves)

Bands per octave: Number of bands per octave (1 to 48)

Pitch: Tuning pitch (A4 = 440.0Hz), 0Hz to 96000Hz.

Transpose: Detuning offset (-24 to 24)

Scaling: Determines which frequency scaling function is used.

   Linear
   Logarithmic
   Shifted logarithmic
   Mel (AIMP)
   Bark
   Adjustable Bark
   ERB
   Cams
   Hyperbolic Sine
   Nth Root
   Negative exponential
   Period

Skew factor

Bandwidth: 0.0 to 64.0

X axis: Determines which X axis to display.

   Bands: Center frequency of a band, every 10 bands.
   Decades: Fixed frequency range
   Octaves: Frequency of the C note of each octave
   Notes: C note of each octave

Y axis: Determines which Y axis to display.

   Decibel scale
   Logarithmic

Color scheme: Specifies the color scheme used to render the spectrum.

   Solid color (Not configurable yet)
   Custom color scheme (Not implemented yet)
   Prism 1
   Prism 2
   Prism 3
   foobar2000
   foobar2000 Dark Mode

Smoothing: Specifies how the spectrum will be smoothed over time.

   Average
   Peak

Smoothing factor: Specifies the strength of the smoothing (0.0 to 1.0)


Peak mode: Specifies how the peak indicators are rendered.

   None
   Classic
   Gravity
   AIMP
   Fade Out

Hold time

Acceleration

External links

See also