pipewire 0.9->0.10, symphonia 0.5->0.6, rosc 0.10->0.11, dirs 5->7, biquad 0.5->0.6, ratatui->0.30.2. symphonia 0.6: get_probe().probe() returns the FormatReader; default_track(TrackType::Audio); CodecParameters::Audio; make_audio_decoder; next_packet()->Option; GenericAudioBufferRef + copy_to_slice_interleaved; tags via rev.media.tags/StandardTag; Packet.track_id is a field. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GLUwWE2KmFPzhKaf67tWbx
37 lines
883 B
TOML
37 lines
883 B
TOML
[package]
|
|
name = "djdeck"
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
|
|
[[bin]]
|
|
name = "djdeck"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
ratatui = "0.30"
|
|
crossterm = "0.29"
|
|
pipewire = "0.10"
|
|
symphonia = { version = "0.6", features = ["all"] }
|
|
rosc = "0.11"
|
|
tokio = { version = "1", features = ["full"] }
|
|
crossbeam-channel = "0.5"
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
anyhow = "1"
|
|
dirs = "7"
|
|
walkdir = "2"
|
|
parking_lot = "0.12"
|
|
tracing = "0.1"
|
|
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
|
|
|
|
# In-process DSP
|
|
ssstretch = "0.1" # Signalsmith Stretch — independent pitch + tempo
|
|
biquad = "0.6" # IIR biquad filters for cutoff and band split
|
|
atomic_float = "1" # AtomicF32 for lock-free param state
|
|
timestretch = "0.4" # detect_bpm / BeatGrid for waveform overlay
|
|
|
|
[profile.release]
|
|
opt-level = 3
|
|
lto = true
|
|
codegen-units = 1
|