[package] authors = ["Braden Steffaniak"] categories = ["development-tools"] description = "MoosicBox audio outputs package" edition = "2021" keywords = ["audio", "cpal", "outputs", "pulse", "pulseaudio"] license = "MPL-2.0" name = "moosicbox_audio_output" readme = "README.md" repository = "https://github.com/MoosicBox/MoosicBox" version = "0.1.0" [dependencies] moosicbox_assert = { version = "0.1.0", path = "../assert", default-features = false } moosicbox_audio_decoder = { version = "0.1.0", path = "../audio_decoder", default-features = false } moosicbox_env_utils = { version = "0.1.0", path = "../env_utils", default-features = false } moosicbox_resampler = { version = "0.1.0", path = "../resampler", default-features = false } moosicbox_stream_utils = { version = "0.1.0", path = "../stream_utils", default-features = false } moosicbox_task = { version = "0.1.0", path = "../task", default-features = false } # API Dependencies actix-web = { workspace = true, optional = true } moosicbox_paging = { version = "0.1.0", path = "../paging", optional = true } serde = { workspace = true, optional = true } utoipa = { workspace = true, optional = true } # CPAL cpal = { workspace = true, optional = true } rb = { workspace = true, optional = true } # Encoders fdk-aac = { workspace = true, optional = true } moosicbox_audio_encoder = { version = "0.1.0", path = "../audio_encoder", default-features = false, optional = true } mp3lame-encoder = { workspace = true, optional = true } ogg = { workspace = true, optional = true } opus = { workspace = true, optional = true } bytes = { workspace = true } log = { workspace = true } symphonia = { workspace = true } thiserror = { workspace = true } tokio = { workspace = true, features = ["rt-multi-thread", "tracing"] } [target.'cfg(target_os = "windows")'.dependencies] [target.'cfg(not(target_os = "windows"))'.dependencies] # PulseAudio libpulse-binding = { workspace = true, optional = true } libpulse-simple-binding = { workspace = true, optional = true } [features] default = ["api", "default-windows", "openapi", "pulseaudio"] default-windows = ["aac", "cpal", "flac", "mp3", "oboe-shared-stdcxx", "opus"] fail-on-warnings = [] api = ["dep:actix-web", "dep:moosicbox_paging", "dep:serde"] openapi = ["dep:utoipa", "moosicbox_paging/openapi"] asio = ["cpal/asio"] cpal = ["dep:cpal", "dep:rb"] jack = ["cpal/jack"] oboe-shared-stdcxx = ["cpal/oboe-shared-stdcxx"] pulseaudio = ["pulseaudio-simple", "pulseaudio-standard"] pulseaudio-simple = ["dep:libpulse-binding", "dep:libpulse-simple-binding"] pulseaudio-standard = ["dep:libpulse-binding"] aac = [ "dep:fdk-aac", "dep:moosicbox_audio_encoder", "moosicbox_audio_encoder/aac", ] flac = ["dep:moosicbox_audio_encoder", "moosicbox_audio_encoder/flac"] mp3 = [ "dep:moosicbox_audio_encoder", "dep:mp3lame-encoder", "moosicbox_audio_encoder/mp3", ] opus = [ "dep:moosicbox_audio_encoder", "dep:ogg", "dep:opus", "moosicbox_audio_encoder/opus", ]