Commit Graph

28 Commits

Author SHA1 Message Date
ea5936717a Add pmocovers integration for external cover URL proxying
- Introduce optional `pmocover` dependency in pmocontrol
- Add cover URL transformation logic for both REST and SSE endpoints using `pmocovers::proxy_cover_url`/sync
- Refactor `/covers/proxy?...=` handler to accept any external URL and return local cached route
- Implement helper functions `transform_cover_url` (async) & sync variant for consistent cover URL normalization
- Update Cargo.lock to include `pmocovers`
2026-04-04 12:05:10 +02:00
bdaee820ad Add cover proxy for external LAN media servers
- Implement new /covers/proxy endpoint to cache and rewrite external LAN cover URLs
- Add url/urlencoding dependencies for URL parsing/escaping in pmocontrol and pmocovers Cargo.toml
- Transform album_art_uri fields to use proxy endpoint for LAN URLs in REST and SSE handlers (browse_container, MetadataChanged)
- Add URL validation logic to detect LAN vs public URLs and avoid self-caching
- Update Cargo.lock with new dependencies
2026-04-04 10:42:46 +02:00
1a7e5dd790 Debug openhome 2025-12-21 21:04:31 +01:00
0264e0c2e1 Corrections mineurs des systèmes de caches 2025-12-17 15:23:54 +01:00
0a03f72467 Changement du mécanisme d'attention sur les channels Radio Paradise. 2025-12-06 12:48:21 +01:00
cf3f0afde4 Les playlists suivent la lecture de leurs morceaux. 2025-12-06 12:48:21 +01:00
8f043a4d80 Gestion des évènements d'écoute sur le cache. 2025-12-06 12:48:21 +01:00
4e979a2d79 Ajouter une route JPEG ou Cover Cache 2025-12-06 12:48:21 +01:00
f7c89d8000 des trucs... 2025-12-06 12:48:09 +01:00
66416dafa8 Fin de la correction de l'implémentation par ChatGPT. 2025-11-16 21:34:16 +01:00
Claude
4e5b8a9148 Améliorer la documentation des fonctions singleton de cache
- Ajouter sections # Arguments et # Returns
- Documenter le comportement thread-safe
- Préciser le comportement en cas d'appels multiples
- Ajouter liens croisés entre register_* et get_*
2025-11-05 20:54:07 +00:00
Claude
e06a8d95df Déplacer cache registry dans les crates individuelles (pattern singleton)
Au lieu d'avoir un cache_registry centralisé dans pmoupnp qui créait
des dépendances circulaires, chaque crate a maintenant son propre
singleton global :

- pmoaudiocache : register_audio_cache() + get_audio_cache()
- pmocovers : register_cover_cache() + get_cover_cache()

Changes:
- Add singleton pattern to pmoaudiocache/src/lib.rs
- Add singleton pattern to pmocovers/src/lib.rs
- Add once_cell dependency to both crates
- Update pmoplaylist to use pmoaudiocache::get_audio_cache() as fallback
- Update pmoupnp/upnp_server.rs to use register_* functions
- Update pmoupnp/lib.rs to reexport only get_* (not register_*)
- Remove pmoupnp/src/cache_registry.rs (no longer needed)

pmoupnp réexporte get_audio_cache() et get_cover_cache() pour
compatibilité avec le code existant (pmosource, etc.).
2025-11-05 20:48:52 +00:00
785f8d52a5 Update la web app pour tirer partie du nouveau systeme de cache 2025-10-29 22:36:36 +01:00
1e0a0e2acb On continue le refactoring des sources 2025-10-29 22:35:10 +01:00
1268c24faf On complète la gestion du cache pour les métadonnées 2025-10-29 22:35:10 +01:00
33761f1cef Refactoring du cache pour une meilleur gestion des metadonnées 2025-10-29 22:35:10 +01:00
ecb362ae48 refactoring des caches 2025-10-25 17:46:53 +02:00
79940e685c Correction on cache system 2025-10-20 16:18:21 +02:00
455fc4ed21 Généralisation des caches permettant de passer des reader générique et pas seulement de flux http. 2025-10-20 16:18:21 +02:00
208fe8be76 amélioration de la webapp 2025-10-20 16:18:21 +02:00
ee9dca75ba ebuggage transcodage audio en flac 2025-10-20 16:18:21 +02:00
ff515e22bd nouveau mediarenderer 2025-10-18 14:33:52 +02:00
993ef18ac6 adaptation de la crate pmocovers 2025-10-17 22:52:36 +02:00
082914cf8c Refactoring manuel 2025-10-17 19:28:04 +02:00
1c83416be4 Debug le menu debug 2025-10-13 11:31:14 +02:00
3154c11845 Correction de ChatGPT 2025-10-07 15:53:18 +02:00
24be870e4a Debuggage 2025-10-07 14:59:29 +02:00
9bf5bc7fe2 Ajoute pmocovers 2025-10-07 11:41:10 +02:00