3 basic oscillators

This commit is contained in:
2026-03-10 22:45:52 -04:00
commit 61747da879
5 changed files with 114 additions and 0 deletions

17
src/lib.rs Normal file
View File

@@ -0,0 +1,17 @@
#![no_std]
use dasp::signal::{self, ConstHz, Saw, Sine, Square};
pub fn square_oscillator(sample_rate: f64, freq: f64) -> Square<ConstHz> {
signal::rate(sample_rate).const_hz(freq).square()
}
pub fn sine_oscillator(sample_rate: f64, freq: f64) -> Sine<ConstHz> {
signal::rate(sample_rate).const_hz(freq).sine()
}
pub fn saw_oscillator(sample_rate: f64, freq: f64) -> Saw<ConstHz> {
signal::rate(sample_rate).const_hz(freq).saw()
}
// TODO: Custom triangle wave oscilator