11 个版本 (5 个稳定)

1.4.0 2024年1月17日
1.3.0 2023年5月22日
1.2.1 2023年3月22日
1.2.0 2022年10月22日
1.0.0-alpha.32022年1月15日

音频 中排名第 170

Download history 48/week @ 2024-03-11 56/week @ 2024-03-18 65/week @ 2024-03-25 67/week @ 2024-04-01 27/week @ 2024-04-08 27/week @ 2024-04-15 103/week @ 2024-04-22 52/week @ 2024-04-29 23/week @ 2024-05-06 27/week @ 2024-05-13 52/week @ 2024-05-20 32/week @ 2024-05-27 40/week @ 2024-06-03 48/week @ 2024-06-10 45/week @ 2024-06-17 44/week @ 2024-06-24

每月下载量 178
15 个库中使用 (6 个直接)

MIT 许可证

35KB
556 代码行

augmented_oscillator

非常简单的振荡器实现。

示例

正弦振荡器

let sample_rate = 44100.0;
let mut osc = augmented_oscillator::Oscillator::sine(sample_rate);
osc.set_frequency(40.0);  // set freq. in Hz
let _sample = osc.next_sample(); // tick the oscillator forward

波形表振荡器

use augmented_oscillator::{Oscillator, wavetable::WaveTableOscillator};

let sample_rate = 44100.0;
// let mut osc = WaveTableOscillator::new(vec![/* your wave table data */]);
// You can either ^^^^ provide your own table (and update it at runtime) or generate a table
// of a certain length (100 sample here) from a function oscillator
let mut osc = WaveTableOscillator::from_oscillator(Oscillator::sine(sample_rate), 100);
osc.set_frequency(40.0);  // set freq. in Hz
let _sample = osc.next_sample(); // tick the oscillator forward

自定义振荡器生成函数

let sample_rate = 44100.0;
let mut osc = augmented_oscillator::Oscillator::new_with_sample_rate(
    sample_rate,
    move |phase: f32| phase.sin()
);
osc.set_frequency(40.0);  // set freq. in Hz
let _sample = osc.next_sample(); // tick the oscillator forward

许可证:MIT

依赖项

~0.5–1.2MB
~26K SLoC