[package] name = "bliss-rs" version = "0.6.9" build = "build.rs" authors = ["Polochon-street "] edition = "2021" license = "GPL-3.0-only" description = "A song analysis library for making playlists" homepage = "https://lelele.io/bliss.html" repository = "https://github.com/Polochon-street/bliss-rs" keywords = ["audio", "analysis", "MIR", "playlist", "similarity"] readme = "README.md" exclude = ["index.node"] [lib] crate-type = ["rlib", "cdylib"] [package.metadata.docs.rs] features = ["bliss-audio-aubio-rs/rustdoc", "library"] no-default-features = true [features] default = ["bliss-audio-aubio-rs/static"] # Build ffmpeg instead of using the host's. build-ffmpeg = ["ffmpeg-next/build"] ffmpeg-static = ["ffmpeg-next/static"] # Build for raspberry pis rpi = ["ffmpeg-next/rpi"] # Use if you get "No prebuilt bindings. Try use `bindgen` feature" update-aubio-bindings = ["bliss-audio-aubio-rs/bindgen"] # Use if you want to build python bindings with maturin. python-bindings = ["bliss-audio-aubio-rs/fftw3"] # Enable the benchmarks with `cargo +nightly bench --features=bench` bench = [] library = [ "serde", "dep:rusqlite", "dep:dirs", "dep:tempdir", "dep:anyhow", "dep:serde_ini", "dep:serde_json", "dep:indicatif", ] serde = ["dep:serde"] [dependencies] # Until https://github.com/aubio/aubio/issues/336 is somehow solved # Hopefully we'll be able to use the official aubio-rs at some point. bliss-audio-aubio-rs = "0.2.1" crossbeam = "0.8.2" ffmpeg-next = "6.0.0" ffmpeg-sys-next = { version = "6.0.1", default-features = false } log = "0.4.17" ndarray = { version = "0.15.6", features = ["rayon"] } num_cpus = "1.15.0" ndarray-stats = "0.5.1" noisy_float = "0.2.0" ripemd = "0.1.3" rustfft = "6.1.0" thiserror = "1.0.40" strum = "0.24.1" strum_macros = "0.24.3" rcue = "0.1.3" # Deps for the library feature serde = { version = "1.0", optional = true, features = ["derive"] } serde_json = { version = "1.0.59", optional = true } serde_ini = { version = "0.2.0", optional = true } tempdir = { version = "0.3.7", optional = true } rusqlite = { version = "0.28.0", optional = true } dirs = { version = "5.0.0", optional = true } anyhow = { version = "1.0.58", optional = true } indicatif = { version = "0.17.0", optional = true } [dependencies.neon] version = "1.0.0-alpha.4" default-features = false features = ["napi-6", "channel-api", "promise-api", "try-catch-api"] [dev-dependencies] ndarray-npy = { version = "0.8.1", default-features = false } mime_guess = "2.0.3" glob = "0.3.0" anyhow = "1.0.45" clap = "2.33.3" pretty_assertions = "1.3.0" serde_json = "1.0.59" [[example]] name = "library" required-features = ["library"] [[example]] name = "library_extra_info" required-features = ["library"] [[example]] name = "playlist" required-features = ["serde"]