LMMS
Loading...
Searching...
No Matches
MixHelpers.cpp File Reference
#include "MixHelpers.h"
#include <algorithm>
#include <cmath>
#include "ValueBuffer.h"
#include "SampleFrame.h"

Classes

struct  lmms::MixHelpers::AddOp
struct  lmms::MixHelpers::AddMultipliedOp
struct  lmms::MixHelpers::AddSwappedMultipliedOp
struct  lmms::MixHelpers::AddMultipliedStereoOp
struct  lmms::MixHelpers::MultiplyAndAddMultipliedOp

Namespaces

namespace  lmms
namespace  lmms::MixHelpers

Functions

bool lmms::MixHelpers::isSilent (const SampleFrame *src, int frames)
bool lmms::MixHelpers::isSilent (std::span< const sample_t > buffer)
void lmms::MixHelpers::add (SampleFrame *dst, const SampleFrame *src, int frames)
 Add samples from src to dst.
void lmms::MixHelpers::add (PlanarBufferView< sample_t > dst, PlanarBufferView< const sample_t > src)
 Add samples from src to dst.
void lmms::MixHelpers::addMultiplied (SampleFrame *dst, const SampleFrame *src, float coeffSrc, int frames)
 Add samples from src multiplied by coeffSrc to dst.
void lmms::MixHelpers::multiply (SampleFrame *dst, float coeff, int frames)
 Multiply samples from dst by coeff.
void lmms::MixHelpers::addSwappedMultiplied (SampleFrame *dst, const SampleFrame *src, float coeffSrc, int frames)
 Add samples from src multiplied by coeffSrc to dst, swap inputs.
void lmms::MixHelpers::addMultipliedByBuffer (SampleFrame *dst, const SampleFrame *src, float coeffSrc, ValueBuffer *coeffSrcBuf, int frames)
 Add samples from src multiplied by coeffSrc and coeffSrcBuf to dst.
void lmms::MixHelpers::addMultipliedByBuffers (SampleFrame *dst, const SampleFrame *src, ValueBuffer *coeffSrcBuf1, ValueBuffer *coeffSrcBuf2, int frames)
 Add samples from src multiplied by coeffSrc and coeffSrcBuf to dst.
void lmms::MixHelpers::addMultipliedStereo (SampleFrame *dst, const SampleFrame *src, float coeffSrcLeft, float coeffSrcRight, int frames)
 Add samples from src multiplied by coeffSrcLeft/coeffSrcRight to dst.
void lmms::MixHelpers::multiplyAndAddMultiplied (SampleFrame *dst, const SampleFrame *src, float coeffDst, float coeffSrc, int frames)
 Multiply dst by coeffDst and add samples from src multiplied by coeffSrc.
void lmms::MixHelpers::multiplyAndAddMultipliedJoined (SampleFrame *dst, const sample_t *srcLeft, const sample_t *srcRight, float coeffDst, float coeffSrc, int frames)
 Multiply dst by coeffDst and add samples from srcLeft/srcRight multiplied by coeffSrc.