2025-11-03 06:55:45 +01:00
|
|
|
//! Extensions pour pmoaudio
|
|
|
|
|
//!
|
|
|
|
|
//! Cette crate fournit des nodes d'extension pour pmoaudio qui dépendent
|
|
|
|
|
//! d'autres crates du projet. Elle permet d'éviter les dépendances cycliques
|
|
|
|
|
//! en plaçant ces extensions en "bout de chaîne" de dépendances.
|
|
|
|
|
//!
|
|
|
|
|
//! # Features
|
|
|
|
|
//!
|
|
|
|
|
//! - `cache-sink` : Active le `FlacCacheSink` qui encode l'audio en FLAC et le stocke dans pmoaudiocache
|
2025-11-05 13:44:24 +00:00
|
|
|
//! - `playlist` : Active l'intégration avec pmoplaylist (sources et sinks)
|
2025-11-03 06:55:45 +01:00
|
|
|
//! - `all` : Active toutes les features d'un coup
|
|
|
|
|
//!
|
|
|
|
|
//! # Architecture
|
|
|
|
|
//!
|
|
|
|
|
//! Cette crate dépend de :
|
|
|
|
|
//! - `pmoaudio` : Types de base (AudioSegment, AudioError, etc.)
|
|
|
|
|
//! - `pmoaudiocache` (optionnel) : Cache audio pour le stockage FLAC
|
|
|
|
|
//! - `pmoflac` (optionnel) : Encodage FLAC
|
|
|
|
|
//! - `pmometadata` (optionnel) : Gestion des métadonnées
|
|
|
|
|
//! - `pmoplaylist` (optionnel) : Intégration playlist
|
|
|
|
|
//!
|
|
|
|
|
//! Aucune des crates ci-dessus ne dépend de `pmoaudio-ext`, évitant ainsi
|
|
|
|
|
//! tout cycle de dépendances.
|
|
|
|
|
|
2025-11-15 14:02:22 +01:00
|
|
|
#[cfg(any(feature = "cache-sink", feature = "http-stream"))]
|
2025-11-03 06:55:45 +01:00
|
|
|
pub mod sinks;
|
|
|
|
|
|
2025-11-15 15:03:08 +01:00
|
|
|
#[cfg(any(feature = "cache-sink", feature = "http-stream"))]
|
|
|
|
|
pub mod nodes;
|
|
|
|
|
|
2025-11-05 13:44:24 +00:00
|
|
|
#[cfg(feature = "playlist")]
|
|
|
|
|
pub mod sources;
|
|
|
|
|
|
2025-11-03 06:55:45 +01:00
|
|
|
// Re-exports pour faciliter l'utilisation
|
2025-11-15 14:02:22 +01:00
|
|
|
#[cfg(any(feature = "cache-sink", feature = "http-stream"))]
|
2025-11-03 06:55:45 +01:00
|
|
|
pub use sinks::*;
|
2025-11-05 13:44:24 +00:00
|
|
|
|
2025-11-15 15:03:08 +01:00
|
|
|
#[cfg(any(feature = "cache-sink", feature = "http-stream"))]
|
|
|
|
|
pub use nodes::*;
|
|
|
|
|
|
2025-11-05 13:44:24 +00:00
|
|
|
#[cfg(feature = "playlist")]
|
|
|
|
|
pub use sources::*;
|