Optimisation des délais de rafraîchissement et amélioration de la réactivité

Réduction du délai de rafraîchissement des conteneurs à 2 secondes et ajustement du polling pour une meilleure réactivité de l'interface utilisateur.

- Modification du délai de cooldown de 5 secondes à 2 secondes dans MediaBrowser.vue
- Réduction du délai de polling de 60 secondes à 10 secondes pour la découverte des appareils dans control_point.rs
- Modification du polling de volume et de mute de 3 secondes à 1 seconde (tous les 2 ticks à 500ms) dans control_point.rs
- Réduction du délai de polling de position de 1 seconde à 500ms dans control_point.rs
This commit is contained in:
2026-01-11 15:44:37 +01:00
parent da12cc82b3
commit 7d2cb75e58
2 changed files with 239 additions and 229 deletions

View File

@@ -112,8 +112,8 @@ impl ControlPoint {
];
loop {
// Attendre 60 secondes avant le prochain cycle
thread::sleep(Duration::from_secs(60));
// Attendre 10 secondes avant le prochain cycle pour découverte rapide
thread::sleep(Duration::from_secs(10));
debug!("Sending periodic M-SEARCH for device discovery");
@@ -303,9 +303,9 @@ impl ControlPoint {
new_snapshot.state = Some(logical_state);
}
// Poll volume and mute less frequently (every 3 seconds)
// to reduce SOAP overhead without impacting UI responsiveness
if tick % 3 == 0 {
// Poll volume and mute every second (every 2 ticks at 500ms)
// for responsive volume control feedback
if tick % 2 == 0 {
if let Ok(volume) = renderer.volume() {
if prev_snapshot.last_volume != Some(volume) {
polling_cp.emit_renderer_event(RendererEvent::VolumeChanged {
@@ -334,8 +334,8 @@ impl ControlPoint {
}
tick = tick.wrapping_add(1);
// Keep 1 second polling for smooth position updates
thread::sleep(Duration::from_secs(1));
// 500ms polling for smoother position updates and progress bar
thread::sleep(Duration::from_millis(500));
}
});