refactor(audio): split monolithic audio module into submodules

Move audio engine functionality from a single large file into focused Rust modules while preserving behavior and command surface. This keeps boundaries clearer for future extraction and the upcoming lib.rs split.
This commit is contained in:
Maxim Isaev
2026-05-02 04:07:46 +03:00
committed by cucadmuh
parent 274ac5b3b4
commit c917ee1071
15 changed files with 5550 additions and 5469 deletions
+24
View File
@@ -0,0 +1,24 @@
//! Audio playback: Symphonia decode, rodio output, HTTP radio/streaming, gapless, previews.
//!
//! Implementation is split into submodules (`sources`, `decode`, `stream`, `commands`, …)
//! for navigation; behavior matches the historical single `audio.rs` file.
mod codec;
pub mod commands;
mod decode;
mod dev_io;
mod device_watcher;
mod engine;
mod helpers;
mod ipc;
pub mod preview;
mod sources;
mod state;
mod stream;
pub use commands::{audio_default_output_device_name, audio_list_devices_for_engine};
pub use device_watcher::start_device_watcher;
pub use engine::{create_engine, refresh_http_user_agent, AudioEngine};
pub use helpers::take_stream_completed_for_url;
pub(crate) use engine::{analysis_track_id_is_current_playback, ranged_loudness_backfill_should_defer};