MCPcopy Create free account
hub / github.com/Signalsmith-Audio/reverb-example-code / monoProcessor

Method monoProcessor

main.cpp:15–33  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

13
14 template<class Processor>
15 void monoProcessor(std::string name, Processor &&processor) {
16 Wav outputWav;
17 outputWav.sampleRate = inputWav.sampleRate;
18 outputWav.channels = 1;
19
20 srand(1);
21 processor.configure(outputWav.sampleRate);
22
23 int durationSamples = inputWav.samples.size()/inputWav.channels;
24 outputWav.samples.resize(durationSamples);
25 for (int i = 0; i < durationSamples; ++i) {
26 outputWav.samples[i] = processor.process(inputWav.samples[i*inputWav.channels]);
27 }
28 outputWav.write(outputPrefix + name + ".wav");
29 if (!outputWav.result) {
30 std::cerr << outputWav.result.reason << "\n";
31 std::exit(1);
32 }
33 }
34
35 template<int channels, bool averageOutputs=true, class Processor>
36 void multiProcessor(std::string name, Processor &&processor) {

Callers

nothing calls this directly

Calls 3

writeMethod · 0.80
configureMethod · 0.45
processMethod · 0.45

Tested by

no test coverage detected