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

◆ dynamic_range_per_channel()

MAYAFLUX_API std::vector< double > MayaFlux::dynamic_range_per_channel ( const std::vector< Kakshya::DataVariant > &  channels)

Calculate dynamic range per channel for multi-channel data.

Parameters
channelsVector of channel data
Returns
Vector of dynamic range values in dB, one per channel

Definition at line 184 of file Yantra.cpp.

185{
186 auto analyzer = std::make_shared<Yantra::StandardEnergyAnalyzer>();
187 analyzer->set_energy_method(Yantra::EnergyMethod::DYNAMIC_RANGE);
188 auto result = analyzer->analyze_energy(channels);
189 std::vector<double> ranges;
190 for (const auto& channel : result.channels) {
191 ranges.push_back(channel.energy_values.empty() ? 0.0 : channel.energy_values[0]);
192 }
193 return ranges;
194}

References MayaFlux::Yantra::DYNAMIC_RANGE.