MCPcopy Create free account
hub / github.com/0xShug0/audio.cpp / root_mean_square_or_throw

Function root_mean_square_or_throw

src/framework/audio/waveform_ops.cpp:104–113  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

102}
103
104float root_mean_square_or_throw(const std::vector<float> & samples) {
105 if (samples.empty()) {
106 throw std::runtime_error("RMS input samples must not be empty");
107 }
108 double sum = 0.0;
109 for (const float sample : samples) {
110 sum += static_cast<double>(sample) * static_cast<double>(sample);
111 }
112 return static_cast<float>(std::sqrt(sum / static_cast<double>(samples.size())));
113}
114
115std::vector<int16_t> float_to_pcm16_clipped(
116 const std::vector<float> & samples,

Callers 1

Calls 2

emptyMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected