feat: implémentation du WebRenderer UPnP privé par navigateur
Ajout de la fonctionnalité WebRenderer permettant à chaque navigateur connecté de devenir un MediaRenderer UPnP privé. - Création du crate pmowebrenderer avec l'architecture complète - Implémentation des handlers SOAP → WebSocket pour les services AVTransport, RenderingControl et ConnectionManager - Intégration avec le ControlPoint pour l'enregistrement dynamique des renderers - Gestion des sessions avec timeout et cleanup automatique - Support des commandes de transport (play, pause, stop, seek) et du contrôle du volume - Mise à jour des dépendances dans Cargo.toml et Cargo.lock - Documentation de l'architecture dans Blackboard/Architecture/webrenderer.md
This commit is contained in:
25
pmowebrenderer/src/lib.rs
Normal file
25
pmowebrenderer/src/lib.rs
Normal file
@@ -0,0 +1,25 @@
|
||||
//! PMO Web Renderer - Transforme un navigateur en MediaRenderer UPnP privé
|
||||
|
||||
mod error;
|
||||
mod handlers;
|
||||
mod messages;
|
||||
mod renderer;
|
||||
mod session;
|
||||
mod state;
|
||||
mod websocket;
|
||||
|
||||
#[cfg(feature = "pmoserver")]
|
||||
mod config;
|
||||
|
||||
pub use error::WebRendererError;
|
||||
pub use messages::{
|
||||
BrowserCapabilities, ClientMessage, CommandParams, PlaybackState, RendererInfo, ServerMessage,
|
||||
TrackMetadata, TransportAction,
|
||||
};
|
||||
pub use renderer::{FactoryError, WebRendererFactory};
|
||||
pub use session::{SessionManager, WebRendererSession};
|
||||
pub use state::{RendererState, SharedState};
|
||||
pub use websocket::{websocket_handler, WebSocketState};
|
||||
|
||||
#[cfg(feature = "pmoserver")]
|
||||
pub use config::WebRendererExt;
|
||||
Reference in New Issue
Block a user