termusic-playback 0.12.1

playback library to support termusic.
Documentation
[[bench]]
harness = false
name = "async_ring"
path = "benches/async_ring.rs"

[dependencies.anyhow]
features = ["backtrace"]
version = "1.0.99"

[dependencies.async-ringbuf]
version = "0.3"

[dependencies.async-trait]
version = "0.1.89"

[dependencies.base64]
version = "0.22"

[dependencies.discord-rich-presence]
version = "0.2.5"

[dependencies.glib]
optional = true
version = "0.21.1"

[dependencies.gstreamer]
optional = true
version = "0.24.1"

[dependencies.libmpv-sirno]
optional = true
version = "2.0.2-fork.1"

[dependencies.log]
version = "0.4.27"

[dependencies.parking_lot]
version = "^0.12.4"

[dependencies.pathdiff]
features = ["camino"]
version = "0.2.3"

[dependencies.rand]
version = "0.9.2"

[dependencies.reqwest]
features = ["cookies", "gzip", "json", "stream"]
version = "0.12.23"

[dependencies.rodio]
default-features = false
features = ["playback"]
version = "0.21"

[dependencies.soundtouch]
features = ["bundled"]
optional = true
version = "0.5.1"

[dependencies.souvlaki]
default-features = false
features = ["use_zbus"]
version = "0.8.3"

[dependencies.stream-download]
features = ["reqwest-rustls"]
version = "0.22.4"

[dependencies.symphonia]
features = ["aac", "mp3", "isomp4", "alac", "flac", "mkv", "wav", "aiff"]
version = "0.5.5"

[dependencies.symphonia-adapter-libopus]
default-features = false
optional = true
version = "0.2.0"

[dependencies.termusic-lib]
version = "0.12.1"

[dependencies.tokio]
features = ["sync", "macros", "rt", "rt-multi-thread", "parking_lot", "process"]
version = "1.47"

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

[dev-dependencies.pretty_assertions]
version = "1.4.1"

[features]
all-backends = ["gst", "mpv"]
default = []
gst = ["dep:gstreamer", "dep:glib"]
mpv = ["dep:libmpv-sirno"]
rusty-libopus = ["dep:symphonia-adapter-libopus"]
rusty-simd = ["symphonia/opt-simd"]
rusty-soundtouch = ["dep:soundtouch"]

[lib]
doctest = false
name = "termusicplayback"
path = "src/lib.rs"

[lints.clippy.all]
level = "warn"
priority = -1

[lints.clippy.correctness]
level = "warn"
priority = -1

[lints.clippy.pedantic]
level = "warn"
priority = -1

[lints.rust]
unsafe_code = "deny"

[lints.rust.rust_2018_idioms]
level = "warn"
priority = -1

[package]
authors = ["tramhao <haoxinkui@gmail.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["command-line-interface", "command-line-utilities", "multimedia::audio"]
description = "playback library to support termusic."
edition = "2024"
homepage = "https://github.com/tramhao/termusic"
keywords = ["terminal", "tui", "music", "youtube", "podcast"]
license = "MIT"
name = "termusic-playback"
readme = "README.md"
repository = "https://github.com/tramhao/termusic"
resolver = "2"
rust-version = "1.85"
version = "0.12.1"

[target.'cfg(target_os = "windows")'.dependencies.windows]
features = ["Win32_Foundation", "Win32_Graphics_Gdi", "Win32_System_LibraryLoader", "Win32_UI_WindowsAndMessaging"]
version = "0.58.0"