1 unstable release
Uses new Rust 2024
new 0.1.0 | Mar 13, 2025 |
---|
#618 in Audio
215KB
3K
SLoC
DASP-RS
dasp-rs
is a Rust crate for digital audio signal processing.
lib.rs
:
DASP-RS: Digital Audio Signal Processing in Rust
DASP-RS provides a collection of tools and utilities for audio signal processing, analysis, and generation. It includes functionality for handling audio input/output, performing signal transformations, generating synthetic signals, extracting audio features, working with magnitude spectra, and pitch-related operations. The library is designed to be modular and extensible, leveraging Rust's performance and safety features.
Key Features
- Audio I/O: Loading and saving audio files with flexible options.
- Signal Processing: Time-frequency transforms (e.g., STFT, CQT) and filtering.
- Signal Generation: Creating synthetic waveforms and noise.
- Feature Extraction: Computing audio features like tempo, pitch, and spectral properties.
- Magnitude Operations: Manipulating and analyzing magnitude spectra.
- Pitch Utilities: Converting between frequency, MIDI, and musical notations.
- Utilities: General-purpose functions for audio analysis and conversion.
Usage
To use this library, add it to your Cargo.toml
and import the desired modules or items:
[dependencies]
dasp-rs = "0.1.0"
use dasp-rs::get_duration;
let audio = dasp-rs::audio_io::load("example.wav", None, None, None, None).unwrap();
let duration = get_duration(&audio);
println!("Duration: {} seconds", duration);
Modules
See the individual module documentation for detailed information on available functionality.
Dependencies
~66MB
~863K SLoC