makepad/libs/voice/Cargo.toml
Admin 016a171a35 libs/audio_*: MP3, Vorbis and Ogg of our own, plus lyric alignment and audio imaging
Another dependency the app should not be asking the platform for:

  - audio_decode — MP3 (layer 3, LSF tables, synthesis) and Ogg Vorbis
    (codebooks, floor, residue, MDCT) decoders, with tag reading. Both are
    checked against oracle fixtures rather than against our own expectations.
  - audio_encode — an Ogg Vorbis encoder: MDCT, psychoacoustics, floor and
    Huffman coding, setup tables, plus `oggenc` and `audiobench` binaries.
  - audio_picture — waveform and spectrogram rendering, and compositing.
  - audio_lyrics — word-level lyric alignment (DTW plus a DP snap) and the
    baked schema behind karaoke timing.
  - audio_sidechannels — the side-channel plumbing between them.

libs/voice grows a CUDA backend and an alignment path beside its CPU decoder,
with a `whisper_parity` binary to keep the two honest.
2026-08-23 01:34:35 +02:00

37 lines
1 KiB
TOML

[package]
name = "makepad-voice"
version = "0.1.0"
edition = "2021"
description = "Pure Rust CPU-only SIMD+threaded Whisper inference"
license = "MIT"
[features]
default = []
metal-precompile = []
[dependencies]
# THE CUDA store. Must NOT be target-specific: cargo 1.92 drops target-cfg deps
# when this crate is a path dep of another standalone `[workspace]`, and the
# `links = "makepad_ai_cuda"` handshake (DEP_MAKEPAD_AI_CUDA_KERNELS, read in
# build.rs) only arrives for an unconditional dependency. On macOS/iOS the
# crate compiles to empty stubs — no CUDA symbols are referenced or linked.
makepad-ai-cuda = { path = "../ai/cuda" }
[target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies]
makepad-objc-sys = { path = "../objc-sys", version = "1.0.0" }
[[bin]]
name = "whisper-test"
path = "src/bin/whisper_test.rs"
[[bin]]
name = "vad-test"
path = "src/bin/vad_test.rs"
[[bin]]
name = "apple-speech-test"
path = "src/bin/apple_speech_test.rs"
[[bin]]
name = "whisper-parity"
path = "src/bin/whisper_parity.rs"