Class DefaultAudioSpectrogramProvider
java.lang.Object
org.episteme.core.media.audio.providers.DefaultAudioSpectrogramProvider
- All Implemented Interfaces:
AudioSpectrogramProvider, AlgorithmProvider
@AutoService(AudioSpectrogramProvider.class)
public class DefaultAudioSpectrogramProvider
extends Object
implements AudioSpectrogramProvider
Default implementation of
AudioSpectrogramProvider using FFTProvider.- Author:
- Gemini AI (Google DeepMind)
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondouble[]calculateSpectrum(double[] buffer, AudioSpectrogram.WindowFunction window) Calculates the magnitude spectrum of a buffer.float[]calculateSpectrum(float[] buffer, AudioSpectrogram.WindowFunction window) Calculates the magnitude spectrum of a buffer.List<double[]> computeSpectrogram(double[] audioData, int windowSize, int overlap, AudioSpectrogram.WindowFunction window) Computes a full spectrogram (list of spectrums) for a long buffer.List<float[]> computeSpectrogram(float[] audioData, int windowSize, int overlap, AudioSpectrogram.WindowFunction window) Computes a full spectrogram (list of spectrums) for a long buffer.getName()Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface AlgorithmProvider
description, getMetadata, getPriority, isAvailable, score, shutdownMethods inherited from interface AudioSpectrogramProvider
getAlgorithmType
-
Constructor Details
-
DefaultAudioSpectrogramProvider
public DefaultAudioSpectrogramProvider()
-
-
Method Details
-
getName
- Specified by:
getNamein interfaceAlgorithmProvider
-
calculateSpectrum
Description copied from interface:AudioSpectrogramProviderCalculates the magnitude spectrum of a buffer.- Specified by:
calculateSpectrumin interfaceAudioSpectrogramProvider- Parameters:
buffer- Input audio data.window- Window function to apply.- Returns:
- Magnitude spectrum (half size of buffer if buffer is power of 2).
-
computeSpectrogram
public List<float[]> computeSpectrogram(float[] audioData, int windowSize, int overlap, AudioSpectrogram.WindowFunction window) Description copied from interface:AudioSpectrogramProviderComputes a full spectrogram (list of spectrums) for a long buffer.- Specified by:
computeSpectrogramin interfaceAudioSpectrogramProvider- Parameters:
audioData- Full audio data.windowSize- Size of the analysis window.overlap- Overlap between consecutive windows.window- Window function to apply.- Returns:
- List of magnitude spectrums.
-
calculateSpectrum
Description copied from interface:AudioSpectrogramProviderCalculates the magnitude spectrum of a buffer.- Specified by:
calculateSpectrumin interfaceAudioSpectrogramProvider- Parameters:
buffer- Input audio data.window- Window function to apply.- Returns:
- Magnitude spectrum (half size of buffer if buffer is power of 2).
-
computeSpectrogram
public List<double[]> computeSpectrogram(double[] audioData, int windowSize, int overlap, AudioSpectrogram.WindowFunction window) Description copied from interface:AudioSpectrogramProviderComputes a full spectrogram (list of spectrums) for a long buffer.- Specified by:
computeSpectrogramin interfaceAudioSpectrogramProvider- Parameters:
audioData- Full audio data.windowSize- Size of the analysis window.overlap- Overlap between consecutive windows.window- Window function to apply.- Returns:
- List of magnitude spectrums.
-