MayaFlux 0.3.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 739 of file Yantra.cpp.

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

References MayaFlux::Yantra::POWER.