[package]
edition = "2024"
name = "autoeq"
version = "0.4.2"
authors = ["Pierre F. Aubert pierre@spinorama.org"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Automatic equalization for speakers, headphones and rooms!"
readme = "README.md"
license = "GPL-3.0-or-later"
repository = "https://github.com/pierreaubert/sotf"
[features]
default = ["nlopt"]
nlopt = ["dep:nlopt"]
plotly_static = ["dep:plotly_static"]
[lib]
name = "autoeq"
path = "src/lib.rs"
[[bin]]
name = "autoeq"
path = "bin/autoeq/main.rs"
[[bin]]
name = "autoeq-download-speakers"
path = "bin/autoeq_download_speaker.rs"
[[bin]]
name = "benchmark-autoeq-speaker"
path = "bin/autoeq_benchmark_speaker.rs"
[[bin]]
name = "convert-recording"
path = "bin/convert_recording.rs"
[[bin]]
name = "roomeq"
path = "bin/roomeq/main.rs"
[[bin]]
name = "roomeq-fuzzer"
path = "bin/roomeq_fuzzer.rs"
[[bin]]
name = "roomeq-qa-coverage"
path = "bin/roomeq_qa_coverage.rs"
[[bin]]
name = "roomeq-qa-quality"
path = "bin/roomeq_qa_quality.rs"
[[example]]
name = "cea2034_score"
path = "examples/cea2034_score.rs"
[[example]]
name = "headphone_loss_demo"
path = "examples/headphone_loss_demo.rs"
[[example]]
name = "headphone_loss_validation"
path = "examples/headphone_loss_validation.rs"
[[test]]
name = "autoeq_golden_tests"
path = "tests/autoeq_golden_tests.rs"
[[test]]
name = "autoeq_integration_test"
path = "tests/autoeq_integration_test.rs"
[[test]]
name = "broadband_matching_test"
path = "tests/broadband_matching_test.rs"
[[test]]
name = "cli_de_parameters"
path = "tests/cli_de_parameters.rs"
[[test]]
name = "fir_tests"
path = "tests/fir_tests.rs"
[[test]]
name = "peq_model_bounds"
path = "tests/peq_model_bounds.rs"
[[test]]
name = "roomeq_generated_data_test"
path = "tests/roomeq_generated_data_test.rs"
[[test]]
name = "roomeq_integration_test"
path = "tests/roomeq_integration_test.rs"
[[test]]
name = "system_config_test"
path = "tests/system_config_test.rs"
[[test]]
name = "test_free_filters"
path = "tests/test_free_filters.rs"
[[test]]
name = "test_mh_callback"
path = "tests/test_mh_callback.rs"
[[test]]
name = "workflow_test"
path = "tests/workflow_test.rs"
[dependencies.anyhow]
version = "1.0"
[dependencies.autoeq-cea2034]
version = "0.4"
[dependencies.autoeq-env]
version = "0.4"
[dependencies.build_html]
version = "2.7"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.clap]
version = "4.5"
features = ["derive"]
[dependencies.csv]
version = "1.4"
[dependencies.env_logger]
version = "0.11"
[dependencies.hound]
version = "3.5"
[dependencies.log]
version = "0.4"
[dependencies.math-dsp]
version = "0.4"
[dependencies.math-iir-fir]
version = "0.4"
[dependencies.math-optimisation]
version = "0.4"
[dependencies.metaheuristics-nature]
version = "10.1"
[dependencies.ndarray]
version = "0.17"
features = [
"rayon",
"blas",
"serde",
]
default-features = false
[dependencies.nlopt]
version = "0.8"
optional = true
[dependencies.num-complex]
version = "0.4"
[dependencies.num_cpus]
version = "1.17"
[dependencies.plotly]
version = "0.13"
[dependencies.plotly_static]
version = "0.1"
features = [
"chromedriver",
"webdriver_download",
]
optional = true
[dependencies.rand]
version = "0.9.2"
[dependencies.rand_chacha]
version = "0.9"
[dependencies.rayon]
version = "1.11"
[dependencies.reqwest]
version = "0.13"
features = ["json"]
[dependencies.rustfft]
version = "6.4"
[dependencies.schemars]
version = "1.2"
[dependencies.serde]
version = "1.0"
features = [
"derive",
"rc",
]
[dependencies.serde_json]
version = "1.0"
[dependencies.strsim]
version = "0.11"
[dependencies.thiserror]
version = "2.0.17"
[dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"fs",
"macros",
"io-util",
"process",
"signal",
]
[dependencies.urlencoding]
version = "2.1"
[dev-dependencies.assert_fs]
version = "1.0"
[dev-dependencies.tempfile]
version = "3.23"
[target.'cfg(all(any(target_os = "ios", target_os="ios_sim"), target_arch = "aarch64"))'.dependencies]
[target.'cfg(all(target_os = "linux", target_arch="aarch64"))'.dependencies]
[target.'cfg(all(target_os = "linux", target_arch="x86_64"))'.dependencies]
[target.'cfg(all(target_os = "windows", target_arch="aarch64"))'.dependencies]
[target.'cfg(all(target_os = "windows", target_arch="x86_64"))'.dependencies]
[target.'cfg(target_os = "macos")'.dependencies]