implemented volume and pan effects

This commit implements a structure for sample processing and two implemenations
of this structure in volume and pan effects.
This commit is contained in:
itsmattkc
2019-12-24 12:34:30 +11:00
parent 3a7b3ffac6
commit 7ad2eae7a2
13 changed files with 275 additions and 1 deletions
+11
View File
@@ -32,6 +32,7 @@
#include "node/inputarray.h"
#include "node/output.h"
#include "node/value.h"
#include "render/audioparams.h"
/**
* @brief A single processing unit that can be connected with others to create intricate processing systems
@@ -156,6 +157,16 @@ public:
*/
virtual NodeInput* AcceleratedCodeIterativeInput() const;
/**
* @brief Return whether this node processes samples or not
*/
virtual bool ProcessesSamples() const;
/**
* @brief If ProcessesSamples() is true, this is the function that will process them.
*/
virtual void ProcessSamples(const NodeValueDatabase& values, const AudioRenderingParams& params, const float* input, float* output, int index) const;
/**
* @brief Returns the parameter with the specified ID (or nullptr if it doesn't exist)
*/