# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "pocket-tts"
version = "0.4.0"
authors = ["Pocket TTS Contributors"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "High-performance CPU-based Text-to-Speech library using Candle"
readme = false
keywords = [
    "tts",
    "candle",
    "speech-synthesis",
    "audio",
]
categories = [
    "multimedia::audio",
    "science",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/babybirdprd/pocket-tts"
resolver = "2"

[features]
default = []
metal = [
    "candle-core/metal",
    "candle-nn/metal",
]
mkl = [
    "candle-core/mkl",
    "candle-nn/mkl",
]
quantized = []
wasm = []

[lib]
name = "pocket_tts"
crate-type = [
    "cdylib",
    "rlib",
]
path = "src/lib.rs"

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

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

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

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

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

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

[[test]]
name = "integration_tests"
path = "tests/integration_tests.rs"

[[test]]
name = "memory_usage"
path = "tests/memory_usage.rs"

[[test]]
name = "parity_tests"
path = "tests/parity_tests.rs"

[[test]]
name = "streaming_tests"
path = "tests/streaming_tests.rs"

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

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

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

[dependencies.anyhow]
version = "1.0"

[dependencies.byteorder]
version = "1.5"

[dependencies.candle-core]
version = "0.9.1"

[dependencies.candle-nn]
version = "0.9.1"

[dependencies.candle-transformers]
version = "0.9.1"

[dependencies.hound]
version = "3.5"

[dependencies.lenient_semver]
version = "0.4.2"

[dependencies.rand]
version = "0.8"

[dependencies.rand_distr]
version = "0.4"

[dependencies.rayon]
version = "1.11.0"

[dependencies.regex]
version = "1"

[dependencies.rubato]
version = "0.14.1"

[dependencies.safetensors]
version = "0.5.2"

[dependencies.serde]
version = "1.0"
features = ["derive"]

[dependencies.serde_json]
version = "1.0"

[dependencies.serde_yaml]
version = "0.9"

[dependencies.thiserror]
version = "2.0"

[dependencies.tokenizers]
version = "0.21.0"
features = ["fancy-regex"]
default-features = false

[dev-dependencies.anyhow]
version = "1.0"

[dev-dependencies.candle-core]
version = "0.9.1"

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

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.hf-hub]
version = "0.4.3"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.intel-mkl-src]
version = "0.8.1"
features = ["mkl-static-lp64-iomp"]

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.memmap2]
version = "0.9"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.sentencepiece]
version = "0.13"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokenizers]
version = "0.21.0"
features = [
    "onig",
    "progressbar",
    "http",
]
default-features = false

[target.'cfg(target_arch = "wasm32")'.dependencies.console_error_panic_hook]
version = "0.1"

[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom]
version = "0.3"
features = ["wasm_js"]

[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom_02]
version = "0.2"
features = ["js"]
package = "getrandom"

[target.'cfg(target_arch = "wasm32")'.dependencies.js-sys]
version = "0.3"

[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen]
version = "0.2"

[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen-futures]
version = "0.4"

[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
version = "0.3"
features = ["console"]
