Refactorisation des nœuds audio pour utiliser boxed()

Cette mise à jour refactorise les nœuds audio pour utiliser la méthode `boxed()` lors de l'enregistrement des enfants, améliorant ainsi la cohérence et la lisibilité du code. Les méthodes `make()` sont ajoutées pour faciliter la création d'instances boxées des nœuds, et les exemples sont mis à jour en conséquence.
This commit is contained in:
2026-02-26 20:18:14 +01:00
parent 306e691c61
commit 6f8a80a58a
16 changed files with 180 additions and 92 deletions

View File

@@ -117,7 +117,7 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
let sink = FlacFileSink::new(&base_path);
// Construire la chaîne: source → sink
source.register(Box::new(sink));
source.register(sink.boxed());
// Créer un token d'arrêt
let stop_token = CancellationToken::new();

View File

@@ -217,15 +217,15 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
let audio_sink = if use_null_audio {
AudioSink::with_null_output()
} else {
AudioSink::new()
AudioSink::make()
};
tracing::debug!("AudioSink created");
// Connecter timer → audio (AVANT de mettre timer dans une Box)
timer.register(Box::new(audio_sink));
timer.register(audio_sink);
// Connecter playlist → timer
playlist_source.register(Box::new(timer));
playlist_source.register(timer.boxed());
tracing::info!("Playback pipeline connected: PlaylistSource → TimerNode → AudioSink");
// ═══════════════════════════════════════════════════════════════════════════