audio_samples 0.10.2

A typed audio processing library for Rust that treats audio as a first-class, invariant-preserving object rather than an unstructured numeric buffer.
[[bench]]
harness = false
name = "beats"
path = "benches/beats.rs"

[[bench]]
harness = false
name = "channels"
path = "benches/channels.rs"

[[bench]]
harness = false
name = "conversion"
path = "benches/conversion.rs"

[[bench]]
harness = false
name = "detection"
path = "benches/detection.rs"

[[bench]]
name = "dynamic_range"
path = "benches/dynamic_range.rs"

[[bench]]
harness = false
name = "editing"
path = "benches/editing.rs"

[[bench]]
harness = false
name = "iir_filtering"
path = "benches/iir_filtering.rs"

[[bench]]
harness = false
name = "onset"
path = "benches/onset.rs"

[[bench]]
harness = false
name = "parametric_eq"
path = "benches/parametric_eq.rs"

[[bench]]
name = "pitch"
path = "benches/pitch.rs"

[[bench]]
harness = false
name = "processing"
path = "benches/processing.rs"

[[bench]]
harness = false
name = "resampling"
path = "benches/resampling.rs"

[[bench]]
harness = false
name = "serialization"
path = "benches/serialization.rs"

[[bench]]
name = "spectral_analysis"
path = "benches/spectral_analysis.rs"

[[bench]]
harness = false
name = "statistics"
path = "benches/statistics.rs"

[[bench]]
harness = false
name = "transforms"
path = "benches/transforms.rs"

[[bench]]
harness = false
name = "vad"
path = "benches/vad.rs"

[dependencies.bytemuck]
version = "1.23.1"

[dependencies.chrono]
features = ["serde"]
optional = true
version = "0.4"

[dependencies.colored]
version = "3.0.0"

[dependencies.csv]
optional = true
version = "1.3"

[dependencies.fftw-sys]
features = ["intel-mkl"]
optional = true
version = "0.4.0"

[dependencies.flate2]
optional = true
version = "1.0"

[dependencies.html_view]
optional = true
version = "0.1.0"

[dependencies.i24]
features = ["alloc", "num-cast", "ndarray", "std", "serde"]
version = "2.2.7"

[dependencies.indicatif]
optional = true
version = "0.18"

[dependencies.intel-mkl-src]
optional = true
version = "0.8.0"

[dependencies.lazy_static]
version = "1.4"

[dependencies.ndarray]
version = "0.17.1"

[dependencies.num-complex]
version = "0.4"

[dependencies.num-format]
optional = true
version = "0.4.4"

[dependencies.num-traits]
version = "0.2.19"

[dependencies.num_cpus]
optional = true
version = "1.16"

[dependencies.paste]
version = "1.0.15"

[dependencies.plotly]
optional = true
version = "0.13.5"

[dependencies.plotly_static]
features = ["chromedriver", "webdriver_download"]
optional = true
version = "0.1.0"

[dependencies.rand]
optional = true
version = "0.9.2"

[dependencies.rayon]
optional = true
version = "1.10"

[dependencies.realfft]
optional = true
version = "3.4"

[dependencies.rmp-serde]
optional = true
version = "1.3"

[dependencies.rubato]
optional = true
version = "0.16.2"

[dependencies.rustfft]
optional = true
version = "6.2"

[dependencies.serde]
version = "1.0.219"

[dependencies.serde_cbor]
optional = true
version = "0.11"

[dependencies.serde_json]
optional = true
version = "1.0"

[dependencies.src]
version = "0.0.6"

[dependencies.thiserror]
version = "2.0.12"

[dependencies.tracing]
version = "0.1.41"

[dependencies.wide]
optional = true
version = "0.7"

[dev-dependencies.approx_eq]
version = "0.1.8"

[dev-dependencies.clap]
features = ["derive"]
version = "4.5.53"

[dev-dependencies.criterion]
features = ["html_reports"]
version = "0.8.1"

[dev-dependencies.dtmf_tones]
version = "1.0.1"

[dev-dependencies.rand]
version = "0.9"

[[example]]
name = "basic_plotting"
path = "examples/basic_plotting.rs"

[[example]]
name = "basics"
path = "examples/basics.rs"

[[example]]
name = "beats"
path = "examples/beats.rs"

[[example]]
name = "channels"
path = "examples/channels.rs"

[[example]]
name = "chroma"
path = "examples/chroma.rs"

[[example]]
name = "detection"
path = "examples/detection.rs"

[[example]]
name = "dynamic_range"
path = "examples/dynamic_range.rs"

[[example]]
name = "editing"
path = "examples/editing.rs"

[[example]]
name = "hpss"
path = "examples/hpss.rs"

[[example]]
name = "iir_filtering"
path = "examples/iir_filtering.rs"

[[example]]
name = "onset"
path = "examples/onset.rs"

[[example]]
name = "parametric_eq"
path = "examples/parametric_eq.rs"

[[example]]
name = "pitch_analysis"
path = "examples/pitch_analysis.rs"

[[example]]
name = "plotting"
path = "examples/plotting.rs"

[[example]]
name = "processing"
path = "examples/processing.rs"

[[example]]
name = "resampling"
path = "examples/resampling.rs"

[[example]]
name = "serialization"
path = "examples/serialization.rs"

[[example]]
name = "statistics"
path = "examples/statistics.rs"

[[example]]
name = "test"
path = "examples/test.rs"

[[example]]
name = "transforms"
path = "examples/transforms.rs"

[[example]]
name = "utils_demo"
path = "examples/utils_demo.rs"

[[example]]
name = "vad"
path = "examples/vad.rs"

[features]
beat-detection = ["fft", "spectral-analysis"]
channels = []
chroma = ["spectral-analysis"]
core-ops = ["statistics", "processing", "editing", "channels"]
default = ["full"]
editing = ["random-generation"]
fft = ["core-ops", "dep:rustfft", "dep:realfft"]
fixed-size-audio = []
formatting = ["dep:num-format"]
full = ["core-ops", "fft", "plotting", "resampling", "serialization", "static-plots", "parallel-processing", "mkl", "progress-tracking", "beat-detection", "chroma"]
full-analysis = ["spectral-analysis", "beat-detection", "plotting"]
hpss = ["spectral-analysis"]
minimal = ["statistics", "processing"]
mkl = ["fft", "dep:fftw-sys", "dep:intel-mkl-src"]
operations = ["core-ops", "spectral-analysis", "plotting", "resampling"]
parallel-processing = ["dep:rayon", "dep:num_cpus"]
plotting = ["core-ops", "dep:plotly", "dep:html_view"]
processing = []
processing-advanced = ["processing"]
progress-tracking = ["dep:indicatif"]
python = ["i24/pyo3"]
random-generation = ["dep:rand"]
resampling = ["core-ops", "dep:rubato"]
serialization = ["core-ops", "dep:serde_json", "dep:csv", "dep:rmp-serde", "dep:serde_cbor", "dep:flate2", "dep:chrono"]
simd = ["dep:wide"]
spectral-analysis = ["fft"]
static-plots = ["plotting", "dep:plotly_static", "dep:serde_json"]
statistics = []
statistics-advanced = ["statistics", "fft"]
utilities-full = ["formatting", "random-generation"]

[lib]
crate-type = ["rlib"]
name = "audio_samples"
path = "src/lib.rs"

[lints.rust.unexpected_cfgs]
check-cfg = ["cfg(nightly)"]
level = "warn"
priority = 0

[package]
authors = ["Jack Geraghty <jgeraghty049@gmail.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["encoding", "multimedia", "science"]
description = "A typed audio processing library for Rust that treats audio as a first-class, invariant-preserving object rather than an unstructured numeric buffer."
documentation = "https://docs.rs/audio_samples"
edition = "2024"
homepage = "https://github.com/jmg049/audio_samples"
keywords = ["audio", "dsp", "api"]
license = "MIT"
name = "audio_samples"
readme = "README.md"
repository = "https://github.com/jmg049/audio_samples"
version = "0.10.2"