69 static const simd ramp(1.0f, 2.0f, 3.0f, 4.0f);
Definition AcousticMaterial.h:36
JPL_INLINE constexpr auto GetNumSIMDOps(std::unsigned_integral auto count) noexcept
Get number of SIMD operations that can fit into the count
Definition SIMDMath.h:51
void AddAndApplyGainRamp(float *dest, const float *source, uint32 destChannel, uint32 sourceChannel, uint32 destNumChannels, uint32 sourceNumChannels, uint32 numFrames, float gainStart, float gainEnd)
Definition ChannelMixing.h:89
void Add(float *dest, const float *source, uint32 destChannel, uint32 sourceChannel, uint32 destNumChannels, uint32 sourceNumChannels, uint32 numFrames)
Definition ChannelMixing.h:32
JPL_INLINE constexpr auto GetSIMDTail(std::unsigned_integral auto count) noexcept
Get the remaining tail from count that won't fill a simd vector.
Definition SIMDMath.h:45
void ApplyGain(float *dest, uint32 numFrames, float gain)
Definition ChannelMixing.h:50
std::uint32_t uint32
Definition Core.h:311
void ApplyGainRamp(float *dest, uint32 numFrames, float gainStart, float gainEnd)
Definition ChannelMixing.h:65
JPL_INLINE simd min(const simd &a, const simd &b) noexcept
Element-wise min.
Definition SIMD.h:1813
void DownmixToMono(float *dest, const float *source, uint32 numChannels, uint32 numSamples)
Definition ChannelMixing.h:129
Minimal 4-wide 32-bit float vector implementation for SIMD.
Definition SIMD.h:60
JPL_INLINE float get_lane() const noexcept
Get float component by index known at compile-time.
Definition SIMD.h:610
static constexpr std::size_t size() noexcept
Get number of element of the vector.
Definition SIMD.h:97