#include #include #include namespace psemek::audio { stream_ptr fade_in(stream_ptr stream, duration length, duration start) { return envelope(std::move(stream), [start, length](duration time){ return math::clamp(static_cast(time.frames() - start.frames()) / length.frames(), {0.f, 1.f}); }); } }