AirPlay was scaffolded in both crates/qbz-cast/src/airplay and src-tauri/src/cast/airplay but never worked at runtime: the RAOP sender required an Apple MFi-licensed stack with no free/open alternative, and the backend state was already disabled via the commented `.manage(airplay_state)` line in src-tauri/src/lib.rs. The CastPicker UI already hid the AirPlay tab pending streaming support that was never going to ship. Delete: - crates/qbz-cast/src/airplay/ (entire directory) - src-tauri/src/cast/airplay/ (entire directory) - 10x v2_airplay_* commands from commands_v2/library.rs + their tauri::generate_handler entries - AirPlayError from qbz-cast errors - 'airplay' from CastProtocol + every case arm in castStore.ts, CastPicker.svelte, AudioOutputBadges.svelte - Corresponding i18n keys if present Zero behavior change for Chromecast / DLNA / QConnect / MPRIS. If AirPlay ever becomes feasible we'll revisit from scratch with a real streaming backend. cc
33 lines
579 B
TOML
33 lines
579 B
TOML
[package]
|
|
name = "qbz-cast"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
description = "Casting support for QBZ - Chromecast, DLNA"
|
|
|
|
[dependencies]
|
|
# Chromecast
|
|
rust_cast = "0.21"
|
|
|
|
# mDNS discovery
|
|
mdns-sd = "0.11"
|
|
|
|
# Local HTTP server for media streaming
|
|
tiny_http = "0.12"
|
|
|
|
# DLNA/UPnP
|
|
rupnp = { version = "3", features = ["full_device_spec"] }
|
|
futures-util = "0.3"
|
|
|
|
# Serialization
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
|
|
# Error handling
|
|
thiserror = "2"
|
|
|
|
# Logging
|
|
log = "0.4"
|
|
|
|
# Async runtime (for DLNA)
|
|
tokio = { version = "1", features = ["rt", "sync"] }
|