feat(pmoradiofrance): implémentation complète du client Radio France
Cette mise à jour implémente complètement le client Radio France avec :
- Découverte dynamique des stations (principales, webradios et locales)
- Accès aux métadonnées live via l'API publique
- Gestion des flux audio HiFi (AAC 192 kbps, HLS)
- Support du cache des stations avec TTL configurable
- Extension de configuration pour pmoconfig
- Exemples d'utilisation et tests d'intégration
Les stations découvertes incluent : France Inter, France Info, France Culture, France Musique, FIP, Mouv', France Bleu (locales), et leurs variantes webradios respectives.
Les fonctionnalités incluent :
- Récupération des métadonnées live (émission en cours, producteur, visuels)
- Accès aux flux audio HiFi
- Gestion intelligente des rafraîchissements via delayToRefresh
- Cache des listes de stations avec TTL configurable (7 jours par défaut)
Les tests d'intégration couvrent : découverte des stations, métadonnées live, flux audio, cache, et gestion des erreurs.
2026-01-22 19:04:44 +01:00
|
|
|
[package]
|
|
|
|
|
name = "pmoradiofrance"
|
|
|
|
|
version = "0.1.0"
|
|
|
|
|
edition = "2021"
|
|
|
|
|
authors = ["PMOMusic Contributors"]
|
|
|
|
|
description = "Rust client for Radio France streaming services"
|
|
|
|
|
license = "MIT OR Apache-2.0"
|
|
|
|
|
repository = "https://github.com/yourusername/pmomusic"
|
|
|
|
|
keywords = ["radio", "france", "streaming", "music", "aac"]
|
|
|
|
|
categories = ["multimedia", "api-bindings"]
|
|
|
|
|
|
|
|
|
|
[dependencies]
|
|
|
|
|
# HTTP client for Radio France API requests
|
|
|
|
|
reqwest = { version = "0.12", features = ["json"] }
|
|
|
|
|
|
|
|
|
|
# Async runtime
|
|
|
|
|
tokio = { workspace = true }
|
|
|
|
|
|
|
|
|
|
# Serialization/Deserialization
|
|
|
|
|
serde = { workspace = true }
|
|
|
|
|
serde_json = { workspace = true }
|
|
|
|
|
serde_yaml = { workspace = true }
|
|
|
|
|
|
|
|
|
|
# Helpers
|
|
|
|
|
chrono = { workspace = true }
|
|
|
|
|
async-trait = { workspace = true }
|
|
|
|
|
|
|
|
|
|
# Error handling
|
|
|
|
|
thiserror = { workspace = true }
|
|
|
|
|
anyhow = { workspace = true }
|
|
|
|
|
|
|
|
|
|
# Logging
|
|
|
|
|
tracing = { workspace = true }
|
|
|
|
|
|
|
|
|
|
# URL manipulation
|
|
|
|
|
url = "2.5"
|
|
|
|
|
|
|
|
|
|
# HTML scraping for station discovery
|
|
|
|
|
scraper = "0.22"
|
|
|
|
|
regex = "1.11"
|
|
|
|
|
|
|
|
|
|
# Common music source traits
|
|
|
|
|
pmosource = { path = "../pmosource" }
|
|
|
|
|
|
2026-01-22 23:49:51 +01:00
|
|
|
# DIDL-Lite structures (for playlist support)
|
|
|
|
|
pmodidl = { path = "../pmodidl", optional = true }
|
|
|
|
|
|
feat(pmoradiofrance): implémentation complète du client Radio France
Cette mise à jour implémente complètement le client Radio France avec :
- Découverte dynamique des stations (principales, webradios et locales)
- Accès aux métadonnées live via l'API publique
- Gestion des flux audio HiFi (AAC 192 kbps, HLS)
- Support du cache des stations avec TTL configurable
- Extension de configuration pour pmoconfig
- Exemples d'utilisation et tests d'intégration
Les stations découvertes incluent : France Inter, France Info, France Culture, France Musique, FIP, Mouv', France Bleu (locales), et leurs variantes webradios respectives.
Les fonctionnalités incluent :
- Récupération des métadonnées live (émission en cours, producteur, visuels)
- Accès aux flux audio HiFi
- Gestion intelligente des rafraîchissements via delayToRefresh
- Cache des listes de stations avec TTL configurable (7 jours par défaut)
Les tests d'intégration couvrent : découverte des stations, métadonnées live, flux audio, cache, et gestion des erreurs.
2026-01-22 19:04:44 +01:00
|
|
|
# Configuration support
|
|
|
|
|
pmoconfig = { path = "../pmoconfig", optional = true }
|
|
|
|
|
|
|
|
|
|
# Cache support
|
2026-01-23 19:10:37 +01:00
|
|
|
pmocache = { path = "../pmocache", optional = true }
|
feat(pmoradiofrance): implémentation complète du client Radio France
Cette mise à jour implémente complètement le client Radio France avec :
- Découverte dynamique des stations (principales, webradios et locales)
- Accès aux métadonnées live via l'API publique
- Gestion des flux audio HiFi (AAC 192 kbps, HLS)
- Support du cache des stations avec TTL configurable
- Extension de configuration pour pmoconfig
- Exemples d'utilisation et tests d'intégration
Les stations découvertes incluent : France Inter, France Info, France Culture, France Musique, FIP, Mouv', France Bleu (locales), et leurs variantes webradios respectives.
Les fonctionnalités incluent :
- Récupération des métadonnées live (émission en cours, producteur, visuels)
- Accès aux flux audio HiFi
- Gestion intelligente des rafraîchissements via delayToRefresh
- Cache des listes de stations avec TTL configurable (7 jours par défaut)
Les tests d'intégration couvrent : découverte des stations, métadonnées live, flux audio, cache, et gestion des erreurs.
2026-01-22 19:04:44 +01:00
|
|
|
pmocovers = { path = "../pmocovers", optional = true }
|
|
|
|
|
pmoaudiocache = { path = "../pmoaudiocache", optional = true }
|
|
|
|
|
|
|
|
|
|
# Playlist management for FIFO support
|
|
|
|
|
pmoplaylist = { path = "../pmoplaylist", optional = true }
|
|
|
|
|
|
2026-01-23 12:18:10 +01:00
|
|
|
# Server integration (optional)
|
|
|
|
|
pmoserver = { path = "../pmoserver", optional = true }
|
|
|
|
|
pmoupnp = { path = "../pmoupnp", optional = true }
|
|
|
|
|
axum = { workspace = true, optional = true }
|
|
|
|
|
futures = { workspace = true, optional = true }
|
|
|
|
|
|
feat(pmoradiofrance): implémentation complète du client Radio France
Cette mise à jour implémente complètement le client Radio France avec :
- Découverte dynamique des stations (principales, webradios et locales)
- Accès aux métadonnées live via l'API publique
- Gestion des flux audio HiFi (AAC 192 kbps, HLS)
- Support du cache des stations avec TTL configurable
- Extension de configuration pour pmoconfig
- Exemples d'utilisation et tests d'intégration
Les stations découvertes incluent : France Inter, France Info, France Culture, France Musique, FIP, Mouv', France Bleu (locales), et leurs variantes webradios respectives.
Les fonctionnalités incluent :
- Récupération des métadonnées live (émission en cours, producteur, visuels)
- Accès aux flux audio HiFi
- Gestion intelligente des rafraîchissements via delayToRefresh
- Cache des listes de stations avec TTL configurable (7 jours par défaut)
Les tests d'intégration couvrent : découverte des stations, métadonnées live, flux audio, cache, et gestion des erreurs.
2026-01-22 19:04:44 +01:00
|
|
|
[features]
|
|
|
|
|
default = ["pmoconfig"]
|
|
|
|
|
# Feature for pmoconfig support
|
|
|
|
|
pmoconfig = ["dep:pmoconfig"]
|
|
|
|
|
# Feature for cache support
|
2026-01-23 19:10:37 +01:00
|
|
|
cache = ["dep:pmocache", "dep:pmocovers", "dep:pmoaudiocache"]
|
feat(pmoradiofrance): implémentation complète du client Radio France
Cette mise à jour implémente complètement le client Radio France avec :
- Découverte dynamique des stations (principales, webradios et locales)
- Accès aux métadonnées live via l'API publique
- Gestion des flux audio HiFi (AAC 192 kbps, HLS)
- Support du cache des stations avec TTL configurable
- Extension de configuration pour pmoconfig
- Exemples d'utilisation et tests d'intégration
Les stations découvertes incluent : France Inter, France Info, France Culture, France Musique, FIP, Mouv', France Bleu (locales), et leurs variantes webradios respectives.
Les fonctionnalités incluent :
- Récupération des métadonnées live (émission en cours, producteur, visuels)
- Accès aux flux audio HiFi
- Gestion intelligente des rafraîchissements via delayToRefresh
- Cache des listes de stations avec TTL configurable (7 jours par défaut)
Les tests d'intégration couvrent : découverte des stations, métadonnées live, flux audio, cache, et gestion des erreurs.
2026-01-22 19:04:44 +01:00
|
|
|
# Feature for playlist/FIFO support
|
2026-01-22 23:49:51 +01:00
|
|
|
playlist = ["dep:pmoplaylist", "dep:pmodidl"]
|
feat(pmoradiofrance): implémentation complète du client Radio France
Cette mise à jour implémente complètement le client Radio France avec :
- Découverte dynamique des stations (principales, webradios et locales)
- Accès aux métadonnées live via l'API publique
- Gestion des flux audio HiFi (AAC 192 kbps, HLS)
- Support du cache des stations avec TTL configurable
- Extension de configuration pour pmoconfig
- Exemples d'utilisation et tests d'intégration
Les stations découvertes incluent : France Inter, France Info, France Culture, France Musique, FIP, Mouv', France Bleu (locales), et leurs variantes webradios respectives.
Les fonctionnalités incluent :
- Récupération des métadonnées live (émission en cours, producteur, visuels)
- Accès aux flux audio HiFi
- Gestion intelligente des rafraîchissements via delayToRefresh
- Cache des listes de stations avec TTL configurable (7 jours par défaut)
Les tests d'intégration couvrent : découverte des stations, métadonnées live, flux audio, cache, et gestion des erreurs.
2026-01-22 19:04:44 +01:00
|
|
|
# Feature for logging (tracing)
|
|
|
|
|
logging = []
|
2026-01-23 12:18:10 +01:00
|
|
|
# Feature for server support (MusicSource + HTTP API routes)
|
|
|
|
|
server = ["pmosource/server", "pmoconfig", "cache", "playlist", "dep:pmoserver", "dep:pmoupnp", "dep:axum", "dep:futures"]
|
feat(pmoradiofrance): implémentation complète du client Radio France
Cette mise à jour implémente complètement le client Radio France avec :
- Découverte dynamique des stations (principales, webradios et locales)
- Accès aux métadonnées live via l'API publique
- Gestion des flux audio HiFi (AAC 192 kbps, HLS)
- Support du cache des stations avec TTL configurable
- Extension de configuration pour pmoconfig
- Exemples d'utilisation et tests d'intégration
Les stations découvertes incluent : France Inter, France Info, France Culture, France Musique, FIP, Mouv', France Bleu (locales), et leurs variantes webradios respectives.
Les fonctionnalités incluent :
- Récupération des métadonnées live (émission en cours, producteur, visuels)
- Accès aux flux audio HiFi
- Gestion intelligente des rafraîchissements via delayToRefresh
- Cache des listes de stations avec TTL configurable (7 jours par défaut)
Les tests d'intégration couvrent : découverte des stations, métadonnées live, flux audio, cache, et gestion des erreurs.
2026-01-22 19:04:44 +01:00
|
|
|
# Full feature set
|
|
|
|
|
full = ["server", "logging"]
|
|
|
|
|
|
|
|
|
|
[dev-dependencies]
|
|
|
|
|
tokio-test = { workspace = true }
|
|
|
|
|
tracing-subscriber = { workspace = true }
|
|
|
|
|
|
|
|
|
|
[[example]]
|
|
|
|
|
name = "discover_stations"
|
|
|
|
|
path = "examples/discover_stations.rs"
|
|
|
|
|
|
|
|
|
|
[[example]]
|
|
|
|
|
name = "live_metadata"
|
|
|
|
|
path = "examples/live_metadata.rs"
|