audio_samples 0.1.0

A high-performance audio processing library for Rust with Python bindings.
Documentation

Audio Sample Processing & Conversion Library

Crates.io Docs.rs MSRV: 1.70+ Python

A high-performance audio processing library for Rust with Python bindings.

This library provides a comprehensive set of tools for working with audio data, including type-safe sample format conversions, statistical analysis, and various audio processing operations.

Core Features

  • Type-safe audio sample conversions between i16, I24, i32, f32, and f64
  • High-performance operations leveraging ndarray for efficient computation
  • Comprehensive metadata tracking (sample rate, channels, duration)
  • Flexible data structures supporting both mono and multi-channel audio
  • Python integration via PyO3 bindings

Example Usage

    use audio_samples::AudioSamples;
    use ndarray::array;

    // Create mono audio with sample rate
    let data = array![1.0f32, 2.0, 3.0, 4.0, 5.0];
    let audio = AudioSamples::new_mono(data, 44100);

    assert_eq!(audio.sample_rate(), 44100);
    assert_eq!(audio.channels(), 1);
    assert_eq!(audio.samples_per_channel(), 5);