MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ power_spectrum_per_channel()

MAYAFLUX_API std::vector< std::vector< double > > MayaFlux::power_spectrum_per_channel ( const std::vector< Kakshya::DataVariant > &  channels,
size_t  window_size = 0 
)

Compute power spectrum per channel for multi-channel data.

Parameters
channelsVector of channel data
window_sizeFFT size (0 = use data size)
Returns
Vector of power spectra, one per channel

Definition at line 737 of file Yantra.cpp.

738{
739 auto energy_analyzer = std::make_shared<Yantra::StandardEnergyAnalyzer>();
740 energy_analyzer->set_energy_method(Yantra::EnergyMethod::POWER);
741 if (window_size > 0) {
742 energy_analyzer->set_window_parameters(window_size, window_size / 2);
743 }
744 auto result = energy_analyzer->analyze_energy(channels);
745
746 std::vector<std::vector<double>> spectra;
747 for (const auto& channel : result.channels) {
748 spectra.push_back(channel.energy_values);
749 }
750 return spectra;
751}

References MayaFlux::Yantra::POWER.