Abstract purple and amber illustration representing a self-hosted music streaming server

Navidrome

Navidrome est un serveur de musique gratuit et open source qui transforme une collection musicale personnelle en service de streaming privé. Pointez-le vers un dossier de morceaux déjà possédés, et il diffuse cette bibliothèque vers un lecteur web ou vers l’une des dizaines d’applications mobiles conçues pour l’API Subsonic. C’est la réponse auto-hébergée à l’abonnement payant pour de la musique déjà achetée, pas un moyen d’accéder à quoi que ce soit de nouveau.

L’essentiel : Navidrome est open source sous licence GNU GPL v3, comme le confirme le fichier LICENSE sur GitHub. Il est écrit en Go avec une interface web React, en développement actif depuis 2020, et compte plus de 21 000 étoiles sur GitHub. L’image Docker officielle est deluan/navidrome, port par défaut 4533. Même règle que partout ailleurs sur ce site : cette page part du principe d’une musique déjà possédée, CD rippés, achats numériques, enregistrements personnels, rien d’autre.

Qu’est-ce que Navidrome ?

Navidrome est développé par Deluan Quintão et une communauté de contributeurs. Jellyfin et Plex ont tous deux démarré comme des plateformes centrées vidéo, avec la musique ajoutée après coup ; Navidrome, lui, a été pensé pour la musique dès le départ. Le projet indique avoir été testé sur une bibliothèque d’environ 900 000 morceaux, aux deux tiers en FLAC et un tiers en MP3. Il parle OpenSubsonic, une évolution ouverte du protocole Subsonic, et fonctionne donc aussi avec les applications conçues pour Subsonic, Madsonic et Airsonic.

Compatible avec : Android, iOS, Windows, macOS et Linux via des applications tierces, plus un lecteur web intégré. L’annuaire d’applications de Navidrome recense environ 80 clients compatibles, des applications mobiles aux intégrations Sonos et Kodi.

À quoi ça sert vraiment ?

Le cas d’usage évident, c’est de remplacer un abonnement de streaming payant par de la musique déjà possédée : des CD numérisés il y a des années, des achats sur Bandcamp, des téléchargements sans perte achetés directement auprès d’un label. Navidrome trie tout ça par artiste, album et genre, récupère les pochettes et tags intégrés, et diffuse vers un téléphone en 4G sans exploser le forfait data grâce au transcodage à la volée. La gestion multi-utilisateurs permet à un foyer de partager un seul serveur avec des identifiants et des playlists séparés, et il tourne confortablement sur du matériel modeste puisqu’il ne transcode jamais de vidéo.

Navidrome est-il légal ?

Oui. C’est un logiciel open source, et l’installer n’a rien de différent, légalement, de l’installation de n’importe quel autre programme. Navidrome ne scrape, n’indexe et ne récupère de musique nulle part ; il se contente de diffuser ce qui se trouve déjà dans un dossier. Ce qui compte, c’est l’origine de ces fichiers : CD et vinyles rippés soi-même, achats numériques, morceaux libres de droits ou sous licence Creative Commons, tout ça est parfaitement légal à stocker de cette façon. Cette fiche ne concerne en rien de la musique sans les droits pour l’écouter.

Installer Navidrome avec Docker

Prérequis : Docker et Docker Compose doivent déjà être installés. Notre guide homelab pour débutants explique comment choisir le matériel pour un premier projet Docker.

  1. Créez deux dossiers : un pour la base de données et le cache de Navidrome, un pour la musique.
  2. Enregistrez le docker-compose.yml ci-dessous et adaptez les deux chemins de volumes en conséquence.
  3. Lancez le fichier compose depuis ce dossier.
  4. Ouvrez l’adresse IP du serveur sur le port 4533 et créez le premier compte administrateur.
services:
  navidrome:
    image: deluan/navidrome:latest
    container_name: navidrome
    user: 1000:1000
    ports:
      - "4533:4533"
    restart: unless-stopped
    volumes:
      - "/path/to/data:/data"
      - "/path/to/music:/music:ro"
docker compose up -d

Cette directive user doit correspondre à l’UID:GID propriétaire du dossier musique, ce qui évite les erreurs de permissions dès le premier scan. Monter /music en lecture seule (:ro) n’est pas obligatoire, mais c’est une bonne pratique. L’image officielle couvre linux/amd64, arm/v6, arm/v7 et arm64 : un Raspberry Pi utilise donc exactement la même image qu’un serveur complet, d’après la documentation d’installation Docker de Navidrome.

Astuce : pour mettre à jour, il suffit de faire docker compose pull, puis docker compose up -d.

Attention : ne redirigez pas le port 4533 directement sur internet ; pour y accéder depuis l’extérieur, passez plutôt par un VPN maillé ou un reverse proxy avec un vrai certificat.

Quelles applications mobiles fonctionnent avec Navidrome ?

Navidrome parle OpenSubsonic, donc il fonctionne avec n’importe lequel des quelque 80 clients tiers de son annuaire d’applications. Sur Android, Symfonium et Substreamer reviennent sans cesse : l’un payant et très soigné, l’autre gratuit et open source. Sur iOS et macOS, Amperfy et Supersonic couvrent l’usage natif et bureau. Des clients plus anciens comme DSub fonctionnent toujours très bien aussi.

Navidrome vs Jellyfin, Plex et Emby pour la musique

Jellyfin, Plex et Emby sont des serveurs multimédias généralistes : la vidéo passe en premier, la musique récupère une section ajoutée après coup. Navidrome, lui, ne fait que de la musique, et cette spécialisation se voit dans la vitesse de scan et le support natif d’un écosystème de clients Subsonic auquel les serveurs multimédias généralistes ne se connectent pas. Faire tourner Navidrome à côté de Jellyfin ou Plex pour les films et séries n’a rien d’un conflit ; beaucoup de monde fait tourner les deux côte à côte.

Navidrome vs les autres serveurs de musique auto-hébergés

Airsonic-Advanced est le concurrent direct le plus proche : même famille de licence GPL-3.0, même filiation avec l’API Subsonic. Son propre README reconnaît que ses versions stables étiquetées peuvent être très datées, la plus récente remontant à 2020, même si des builds snapshot continuent de sortir ; une bonne partie de l’explication pour laquelle beaucoup ont fini par choisir Navidrome à la place. Funkwhale prend une approche différente : une plateforme fédérée bâtie sur ActivityPub, pensée pour partager de la musique entre des « pods » gérés indépendamment plutôt que pour simplement diffuser une bibliothèque privée, même si elle propose aussi un accès Subsonic.

NavidromeAirsonic-AdvancedFunkwhale
ModèleServeur personnel uniqueServeur personnel uniqueRéseau fédéré de pods
APIOpenSubsonic (native)SubsonicAccès Subsonic, plus sa propre API
DéveloppementPublications régulièresTag stable figé depuis 2020Actif
  • Conçu spécifiquement pour la musique, pas un serveur vidéo avec la musique ajoutée après coup
  • Scans rapides, même sur des bibliothèques de plusieurs centaines de milliers de morceaux
  • Compatible avec des dizaines d’applications Subsonic et OpenSubsonic existantes
  • Assez léger pour tourner sur un Raspberry Pi
  • Pas d’application mobile officielle ; tous les clients sont tiers
  • L’interface web ne couvre que la musique, rien pour les photos ou la vidéo
  • Certains clients tiers soignés, comme Symfonium, sont payants
  • Les playlists intelligentes et quelques fonctionnalités récentes restent marquées bêta

FAQ

Navidrome est-il gratuit ?

Oui, entièrement. Open source sous GPL-3.0, pas de palier premium, aucune fonctionnalité verrouillée. Certaines applications clientes tierces sont payantes, mais le serveur lui-même ne coûte rien.

Quel port Navidrome utilise-t-il par défaut ?

Le port 4533 gère à la fois l’interface web et l’API Subsonic ; c’est celui défini dans l’exemple docker-compose officiel, et il peut être changé via les options de configuration.

Est-il légal de faire tourner Navidrome ?

Oui, c’est un logiciel open source comme n’importe quel autre programme auto-hébergé. Ce qui compte, c’est ce qu’on y met, et cette fiche part du principe d’une musique déjà possédée.

Quelle est la différence entre Navidrome et Jellyfin ou Plex ?

Surtout une question de spécialisation. Jellyfin et Plex sont des serveurs multimédias centrés vidéo qui gèrent aussi la musique ; Navidrome, lui, est bâti exclusivement autour de la musique, avec des scans plus rapides et un écosystème d’applications Subsonic plus large.

Quelles applications mobiles fonctionnent avec Navidrome ?

N’importe quel client Subsonic ou OpenSubsonic fonctionne : Symfonium et Substreamer couvrent Android, Amperfy couvre iOS et macOS, et l’annuaire de Navidrome en recense des dizaines d’autres.

Peut-on installer Navidrome sans Docker ?

Oui. Des binaires précompilés existent pour Windows, macOS, Linux et FreeBSD, et il est possible de compiler depuis les sources. Docker offre juste une installation plus propre, plus simple à mettre à jour ensuite.

Les fiches Jellyfin et Plex couvrent l’installation d’un serveur multimédia complet qui gère aussi la musique, et Emby complète le tableau si les applications natives Apple TV ou PlayStation comptent davantage. Pour les livres audio et les podcasts spécifiquement, Audiobookshelf reprend cette même approche de bibliothèque personnelle avec sa propre application dédiée. Notre guide homelab pour débutants couvre les bases Docker dont toutes ces fiches dépendent.