Refactor WebRenderer to use server-side streaming with OGG-FLAC sink
This commit refactors the WebRenderer to use a server-side streaming architecture with OGG-FLAC sink instead of the previous WebSocket-based approach. The changes include: - Replaced WebSocket communication with HTTP streaming using DirectOggFlacSink - Implemented a new pipeline architecture with dedicated handlers for UPnP commands - Added new modules for registration, registry, and streaming - Updated the renderer to work with a pipeline control system - Removed old WebSocket session management - Added support for HTTP streaming with gapless playback - Updated dependencies and features for the new architecture The WebRenderer now acts as a MediaRenderer UPnP device that serves audio streams via HTTP endpoints, with commands relayed to the audio pipeline through a new control system.
This commit is contained in:
9
Cargo.lock
generated
9
Cargo.lock
generated
@@ -3863,6 +3863,7 @@ version = "0.1.0"
|
||||
dependencies = [
|
||||
"async-trait",
|
||||
"bytes",
|
||||
"futures",
|
||||
"pmoaudio",
|
||||
"pmoaudiocache",
|
||||
"pmocache",
|
||||
@@ -3871,6 +3872,7 @@ dependencies = [
|
||||
"pmometadata",
|
||||
"pmoplaylist",
|
||||
"rand 0.8.5",
|
||||
"reqwest",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"tokio",
|
||||
@@ -4359,19 +4361,26 @@ dependencies = [
|
||||
"async-trait",
|
||||
"axum 0.8.7",
|
||||
"axum-extra",
|
||||
"bytes",
|
||||
"futures",
|
||||
"parking_lot",
|
||||
"pmoaudio",
|
||||
"pmoaudio-ext",
|
||||
"pmoconfig",
|
||||
"pmocontrol",
|
||||
"pmodidl",
|
||||
"pmoflac",
|
||||
"pmomediarenderer",
|
||||
"pmometadata",
|
||||
"pmoserver",
|
||||
"pmoupnp",
|
||||
"pmoutils",
|
||||
"reqwest",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"thiserror 2.0.17",
|
||||
"tokio",
|
||||
"tokio-util",
|
||||
"tower-http",
|
||||
"tracing",
|
||||
"uuid",
|
||||
|
||||
Reference in New Issue
Block a user