AudioSpectrumListener (JavaFX 25)
Description: declaration: module: javafx.media, package: javafx.scene.media, interface: AudioSpectrumListener

# Interface AudioSpectrumListener

public interface AudioSpectrumListener
Audio spectrum callback interface. The observer receives periodic updates of the audio spectrum. A single observer may be attached to a given `MediaPlayer` using `MediaPlayer.setAudioSpectrumListener(AudioSpectrumListener)`.

Since:
  JavaFX 2.0
See Also:
  - `MediaPlayer`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `spectrumDataUpdate(double timestamp, double duration, float[] magnitudes, float[] phases)`
  Notifies the observer about new data available for the audio spectrum.

- ## Method Details

  - ### spectrumDataUpdate

    void spectrumDataUpdate(double timestamp, double duration, float[] magnitudes, float[] phases)
    Notifies the observer about new data available for the audio spectrum.

    The notification period for updates may be set using `MediaPlayer.setAudioSpectrumInterval(double)`, and the number of bands and sensitivity threshold via `MediaPlayer.setAudioSpectrumNumBands(int)` and `MediaPlayer.setAudioSpectrumThreshold(int)`, respectively. The default values of the settings are an interval of `0.1` seconds, `128` bands, and sensitivity threshold `-60.0` dB.

    The arrays passed to the listener should be considered to be read-only as the underlying implementation may re-use them.

    Parameters:
      `timestamp` - timestamp of the event in seconds.
      `duration` - duration for which the spectrum was computed in seconds.
      `magnitudes` - array containing the non-positive spectrum magnitude in decibels (dB) for each band. The size of the array equals the number of bands and should be considered to be read-only.
      `phases` - array containing the phase in the range [`Math.PI`, `Math.PI`] for each band. The size of the array equals the number of bands and should be considered to be read-only.