[package] name = "needle-rs" version = "0.1.5" edition = "2021" description = "Find openings and endings across video files" authors = ["Assil Ksiksi "] readme = "README.md" homepage = "https://github.com/aksiksi/needle" repository = "https://github.com/aksiksi/needle" license = "MIT OR LGPL-2.1-or-later" keywords = ["multimedia", "ffmpeg"] categories = ["command-line-utilities", "multimedia", "multimedia::audio"] exclude = [ # Test resources "resources/*", ] [lib] name = "needle" path = "src/lib.rs" # We need to disable doctests because rustflags are not passed # to rustdoc when building doctests. As a result, building them # fails on Windows (MSVC). # See: https://github.com/rust-lang/cargo/issues/6650 doctest = false [[bin]] name = "needle" path = "src/main.rs" [dependencies] thiserror = "1" tracing = "0.1.34" tracing-subscriber = "0.2" ffmpeg-next = { version = "5", default-features = false, features = ["codec", "format", "software-resampling"] } blockhash = { version = "0.4.0", optional = true } image = { version = "0.24", optional = true } chromaprint-rust = "0.1" clap = { version = "3", features = ["derive"] } bincode = "1.3" serde = { version = "1", features = ["derive"] } serde_json = "1" rayon = { version = "1.5", optional = true } infer = { version = "0.8", default-features = false } md5 = "0.7" [dev-dependencies] insta = "1" [features] default = ["rayon", "static-chromaprint"] video = ["blockhash", "image"] static-chromaprint = ["chromaprint-rust/static"] static-ffmpeg = ["ffmpeg-next/static"] static-ffmpeg-build = ["ffmpeg-next/build"] static = ["static-chromaprint", "static-ffmpeg"] [target.'cfg(windows)'.build-dependencies] vcpkg = "0.2" # Info for cargo-vcpkg [package.metadata.vcpkg] git = "https://github.com/microsoft/vcpkg" rev = "cef0b3ec767df6e83806899fe9525f6cf8d7bc91" [package.metadata.vcpkg.target] x86_64-pc-windows-msvc = { triplet = "x64-windows-static-md", dependencies = ["ffmpeg"] } [profile.release] # https://doc.rust-lang.org/cargo/reference/profiles.html lto = "thin" strip = true