Planner API
The planner API enables efficient batch processing by reusing FFT plans across multiple signals.
Creating Plans
- class spectrograms.SpectrogramPlanner
Bases:
objectSpectrogram planner for creating reusable computation plans.
Creating a plan is more expensive than a single computation, but plans can be reused for multiple signals with the same parameters, providing significant performance benefits for batch processing.
- cqt_db_plan(params: SpectrogramParams, cqt_params: CqtParams, db_params: LogParams) CqtDbPlan
–
Create a plan for computing CQT decibel spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
- cqt_paramsCqtParams
Constant-Q Transform parameters
- db_paramsLogParams
Decibel conversion parameters
Returns
- CqtDbPlan
Plan for computing CQT decibel spectrograms
- cqt_magnitude_plan(params: SpectrogramParams, cqt_params: CqtParams) CqtMagnitudePlan
–
Create a plan for computing CQT magnitude spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
- cqt_paramsCqtParams
Constant-Q Transform parameters
Returns
- CqtMagnitudePlan
Plan for computing CQT magnitude spectrograms
- cqt_power_plan(params: SpectrogramParams, cqt_params: CqtParams) CqtPowerPlan
–
Create a plan for computing CQT power spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
- cqt_paramsCqtParams
Constant-Q Transform parameters
Returns
- CqtPowerPlan
Plan for computing CQT power spectrograms
- erb_db_plan(params: SpectrogramParams, erb_params: ErbParams, db_params: LogParams) ErbDbPlan
–
Create a plan for computing ERB decibel spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
- erb_paramsErbParams
ERB-scale filterbank parameters
- db_paramsLogParams
Decibel conversion parameters
Returns
- ErbDbPlan
Plan for computing ERB decibel spectrograms
- erb_magnitude_plan(params: SpectrogramParams, erb_params: ErbParams) ErbMagnitudePlan
–
Create a plan for computing ERB magnitude spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
- erb_paramsErbParams
ERB-scale filterbank parameters
Returns
- ErbMagnitudePlan
Plan for computing ERB magnitude spectrograms
- erb_power_plan(params: SpectrogramParams, erb_params: ErbParams) ErbPowerPlan
–
Create a plan for computing ERB power spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
- erb_paramsErbParams
ERB-scale filterbank parameters
Returns
- ErbPowerPlan
Plan for computing ERB power spectrograms
- linear_db_plan(params: SpectrogramParams, db_params: LogParams) LinearDbPlan
–
Create a plan for computing linear decibel spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
- db_paramsLogParams
Decibel conversion parameters
Returns
- LinearDbPlan
Plan for computing linear decibel spectrograms
- linear_magnitude_plan(params: SpectrogramParams) LinearMagnitudePlan
–
Create a plan for computing linear magnitude spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
Returns
- LinearMagnitudePlan
Plan for computing linear magnitude spectrograms
- linear_power_plan(params: SpectrogramParams) LinearPowerPlan
–
Create a plan for computing linear power spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
Returns
- LinearPowerPlan
Plan for computing linear power spectrograms
- loghz_db_plan(params: SpectrogramParams, loghz_params: LogHzParams, db_params: LogParams) LogHzDbPlan
–
Create a plan for computing logarithmic Hz decibel spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
- loghz_paramsLogHzParams
Logarithmic Hz scale parameters
- db_paramsLogParams
Decibel conversion parameters
Returns
- LogHzDbPlan
Plan for computing logarithmic Hz decibel spectrograms
- loghz_magnitude_plan(params: SpectrogramParams, loghz_params: LogHzParams) LogHzMagnitudePlan
–
Create a plan for computing logarithmic Hz magnitude spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
- loghz_paramsLogHzParams
Logarithmic Hz scale parameters
Returns
- LogHzMagnitudePlan
Plan for computing logarithmic Hz magnitude spectrograms
- loghz_power_plan(params: SpectrogramParams, loghz_params: LogHzParams) LogHzPowerPlan
–
Create a plan for computing logarithmic Hz power spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
- loghz_paramsLogHzParams
Logarithmic Hz scale parameters
Returns
- LogHzPowerPlan
Plan for computing logarithmic Hz power spectrograms
- mel_db_plan(params: SpectrogramParams, mel_params: MelParams, db_params: LogParams) MelDbPlan
–
Create a plan for computing mel decibel spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
- mel_paramsMelParams
Mel-scale filterbank parameters
- db_paramsLogParams
Decibel conversion parameters
Returns
- MelDbPlan
Plan for computing mel decibel spectrograms
- mel_magnitude_plan(params: SpectrogramParams, mel_params: MelParams) MelMagnitudePlan
–
Create a plan for computing mel magnitude spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
- mel_paramsMelParams
Mel-scale filterbank parameters
Returns
- MelMagnitudePlan
Plan for computing mel magnitude spectrograms
- mel_power_plan(params: SpectrogramParams, mel_params: MelParams) MelPowerPlan
–
Create a plan for computing mel power spectrograms.
Parameters
- paramsSpectrogramParams
Spectrogram parameters
- mel_paramsMelParams
Mel-scale filterbank parameters
Returns
- MelPowerPlan
Plan for computing mel power spectrograms
Plan Classes
Linear Plans
- class spectrograms.LinearPowerPlan
Bases:
objectPlan for computing linear power spectrograms.
- compute(samples: numpy.typing.NDArray[numpy.float64]) Spectrogram
–
Compute a spectrogram from audio samples.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
Returns
- Spectrogram
Computed spectrogram result
- compute_frame(samples: numpy.typing.NDArray[numpy.float64], frame_idx: int) numpy.typing.NDArray[numpy.float64]
–
Compute a single frame of the spectrogram.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
- frame_idxint
Frame index to compute
Returns
- numpy.typing.NDArray[numpy.float64]
1D array containing the frame data
- class spectrograms.LinearMagnitudePlan
Bases:
objectPlan for computing linear magnitude spectrograms.
- compute(samples: numpy.typing.NDArray[numpy.float64]) Spectrogram
–
Compute a spectrogram from audio samples.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
Returns
- Spectrogram
Computed spectrogram result
- compute_frame(samples: numpy.typing.NDArray[numpy.float64], frame_idx: int) numpy.typing.NDArray[numpy.float64]
–
Compute a single frame of the spectrogram.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
- frame_idxint
Frame index to compute
Returns
- numpy.typing.NDArray[numpy.float64]
1D array containing the frame data
- class spectrograms.LinearDbPlan
Bases:
objectPlan for computing linear decibel spectrograms.
- compute(samples: numpy.typing.NDArray[numpy.float64]) Spectrogram
–
Compute a spectrogram from audio samples.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
Returns
- Spectrogram
Computed spectrogram result
- compute_frame(samples: numpy.typing.NDArray[numpy.float64], frame_idx: int) numpy.typing.NDArray[numpy.float64]
–
Compute a single frame of the spectrogram.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
- frame_idxint
Frame index to compute
Returns
- numpy.typing.NDArray[numpy.float64]
1D array containing the frame data
Mel Plans
- class spectrograms.MelPowerPlan
Bases:
objectPlan for computing mel power spectrograms.
- compute(samples: numpy.typing.NDArray[numpy.float64]) Spectrogram
–
Compute a spectrogram from audio samples.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
Returns
- Spectrogram
Computed spectrogram result
- compute_frame(samples: numpy.typing.NDArray[numpy.float64], frame_idx: int) numpy.typing.NDArray[numpy.float64]
–
Compute a single frame of the spectrogram.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
- frame_idxint
Frame index to compute
Returns
- numpy.typing.NDArray[numpy.float64]
1D array containing the frame data
- class spectrograms.MelMagnitudePlan
Bases:
objectPlan for computing mel magnitude spectrograms.
- compute(samples: numpy.typing.NDArray[numpy.float64]) Spectrogram
–
Compute a spectrogram from audio samples.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
Returns
- Spectrogram
Computed spectrogram result
- compute_frame(samples: numpy.typing.NDArray[numpy.float64], frame_idx: int) numpy.typing.NDArray[numpy.float64]
–
Compute a single frame of the spectrogram.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
- frame_idxint
Frame index to compute
Returns
- numpy.typing.NDArray[numpy.float64]
1D array containing the frame data
- class spectrograms.MelDbPlan
Bases:
objectPlan for computing mel decibel spectrograms.
- compute(samples: numpy.typing.NDArray[numpy.float64]) Spectrogram
–
Compute a spectrogram from audio samples.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
Returns
- Spectrogram
Computed spectrogram result
- compute_frame(samples: numpy.typing.NDArray[numpy.float64], frame_idx: int) numpy.typing.NDArray[numpy.float64]
–
Compute a single frame of the spectrogram.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
- frame_idxint
Frame index to compute
Returns
- numpy.typing.NDArray[numpy.float64]
1D array containing the frame data
ERB Plans
- class spectrograms.ErbPowerPlan
Bases:
objectPlan for computing ERB power spectrograms.
- compute(samples: numpy.typing.NDArray[numpy.float64]) Spectrogram
–
Compute a spectrogram from audio samples.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
Returns
- Spectrogram
Computed spectrogram result
- compute_frame(samples: numpy.typing.NDArray[numpy.float64], frame_idx: int) numpy.typing.NDArray[numpy.float64]
–
Compute a single frame of the spectrogram.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
- frame_idxint
Frame index to compute
Returns
- numpy.typing.NDArray[numpy.float64]
1D array containing the frame data
- class spectrograms.ErbMagnitudePlan
Bases:
objectPlan for computing ERB magnitude spectrograms.
- compute(samples: numpy.typing.NDArray[numpy.float64]) Spectrogram
–
Compute a spectrogram from audio samples.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
Returns
- Spectrogram
Computed spectrogram result
- compute_frame(samples: numpy.typing.NDArray[numpy.float64], frame_idx: int) numpy.typing.NDArray[numpy.float64]
–
Compute a single frame of the spectrogram.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
- frame_idxint
Frame index to compute
Returns
- numpy.typing.NDArray[numpy.float64]
1D array containing the frame data
- class spectrograms.ErbDbPlan
Bases:
objectPlan for computing ERB decibel spectrograms.
- compute(samples: numpy.typing.NDArray[numpy.float64]) Spectrogram
–
Compute a spectrogram from audio samples.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
Returns
- Spectrogram
Computed spectrogram result
- compute_frame(samples: numpy.typing.NDArray[numpy.float64], frame_idx: int) numpy.typing.NDArray[numpy.float64]
–
Compute a single frame of the spectrogram.
Parameters
- samplesnumpy.typing.NDArray[numpy.float64]
Audio samples as a 1D array
- frame_idxint
Frame index to compute
Returns
- numpy.typing.NDArray[numpy.float64]
1D array containing the frame data