Files
pmomusic/pmoqobuz
Eric Coissac 066e2fe008 Corrige le bug d'URL relative pour la cover dans pmoqobuz
Correction du bug où l'URL de la cover générée par pmoqobuz était relative au lieu d'être absolue, comme pour le flux audio. Ajout de la conversion de l'URL de la cover en URL absolue dans la fonction adapt_playlist_items_to_qobuz. Version mise à jour de 0.3.5 à 0.3.6.
2026-01-16 23:35:07 +01:00
..
2025-12-14 20:39:08 +01:00
2025-10-16 22:12:15 +02:00
2025-12-17 08:47:07 +01:00
2025-12-17 07:23:25 +01:00
2025-12-13 13:56:55 +01:00
2025-12-11 21:35:17 +00:00
2025-12-11 21:35:17 +00:00
2025-12-11 21:35:17 +00:00
2025-12-11 21:35:17 +00:00

pmoqobuz - Client Rust pour l'API Qobuz

Client Rust pour l'API Qobuz avec intégration automatique du Spoofer pour obtenir des AppID et secrets valides.

🎯 Fonctionnalités

  • Authentification automatique avec credentials
  • Spoofer intégré - Obtention automatique d'AppID et secrets valides
  • Signatures MD5 pour les requêtes sensibles (streaming, bibliothèque)
  • Cache en mémoire pour optimiser les performances
  • Support DIDL-Lite pour l'export UPnP/DLNA
  • Recherche dans le catalogue (albums, artistes, tracks, playlists)
  • Favoris et playlists utilisateur
  • Désérialisation robuste (gère integers et strings pour les IDs)

🚀 Utilisation rapide

Configuration minimale

# ~/.pmomusic/config.yaml
accounts:
  qobuz:
    username: "your_email@example.com"
    password: "your_password"
    # AppID et secret seront automatiquement obtenus via le Spoofer

Code d'exemple

use pmoqobuz::QobuzClient;

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    // Le Spoofer s'exécute automatiquement si nécessaire
    let client = QobuzClient::from_config().await?;

    // Rechercher des albums
    let albums = client.search_albums("Miles Davis").await?;
    for album in albums.iter().take(5) {
        println!("{} - {}", album.artist.name, album.title);
    }

    Ok(())
}

📖 Documentation