satdump/src-core/common/dsp/block.cpp

20 lines
554 B
C++
Raw Permalink Normal View History

2021-10-27 20:35:12 +02:00
#include "block.h"
namespace dsp
{
2025-07-23 12:21:02 +02:00
float branchless_clip(float x, float clip) { return 0.5 * (std::abs(x + clip) - std::abs(x - clip)); }
2025-07-23 12:21:02 +02:00
float branched_clip(float x, float clip)
{
2025-07-23 12:21:02 +02:00
if (x < -clip)
return -clip;
else if (x > clip)
return clip;
else
return x;
}
2025-07-23 12:21:02 +02:00
double hz_to_rad(double freq, double samplerate) { return 2.0 * M_PI * (freq / samplerate); }
double rad_to_hz(double rad, double samplerate) { return (rad / (2.0 * M_PI)) * samplerate; }
}; // namespace dsp