--- title: Ampache created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, media-streaming, ampache, audio, subsonic, php] confidence: high contested: false sources: - https://selfh.st/apps/?tag=Media+Streaming - https://github.com/ampache/ampache - https://ampache.org/ --- # 🎬 Ampache > Serveur de streaming audio et vidĂ©o en PHP, compatible Subsonic : bibliothĂšque perso accessible partout avec clients natifs. ## 📋 Informations GĂ©nĂ©rales | Attribut | Valeur | |----------|--------| | **Nom** | Ampache | | **Slug** | app-ampache | | **Description** | Plateforme de streaming audio/vidĂ©o Ă©crite en PHP, supportant le protocole Subsonic et des plugins multiples | | **Site officiel** | https://ampache.org/ | | **Repository** | https://github.com/ampache/ampache | | **Stars** | 3 791 ⭐ | | **Licence** | AGPL-3.0 | | **Langage principal** | PHP | | **CatĂ©gorie** | Media Streaming | | **Tags** | [catalogue, media-streaming, ampache, audio, subsonic, php] | ## 📝 Description Ampache est l'un des plus anciens projets de streaming mĂ©dia open-source (lancĂ© en 2001). Écrit en PHP, il sert Ă  constituer une bibliothĂšque musicale (ou vidĂ©o) personnelle, l'enrichir automatiquement (pochettes, paroles, tags), et la streamer depuis n'importe oĂč. L'interface web est sobre et fonctionnelle, et l'API Subsonic assure la compatibilitĂ© avec une multitude de clients : Substreamer, Symfonium, play:Sub, DSub, Sublime Music, Submariner, etc. Au-delĂ  du simple lecteur, Ampache propose un systĂšme de catalogues multiples (un par dossier), des permissions fines (utilisateur, admin, manager), du transcodage Ă  la volĂ©e (MP3, Opus, OGG), des listes de lecture partagĂ©es, des podcasts, des webradios et mĂȘme un module de recommandation. Les plugins Ă©tendent les sources (LastFM scrobbling, Mopidy, Discord Rich Presence, etc.). Cas d'usage typique : on veut remplacer Spotify / Apple Music par sa propre bibliothĂšque FLAC accessible depuis son tĂ©lĂ©phone via l'app 4G, sans sacrifier l'UX des clients Subsonic. Limites : l'UI web n'est pas aussi moderne que Navidrome, l'installation PHP/MySQL est plus lourde qu'un binaire Go. ## 🚀 Installation ### Via Docker (recommandĂ©) ```yaml # docker-compose.yml version: "3.8" services: ampache: image: ampache/ampache:latest container_name: ampache restart: unless-stopped ports: - "80:80" environment: MYSQL_HOST: db MYSQL_USER: ampache MYSQL_PASSWORD: ChangeM3_AMPACHE MYSQL_DATABASE: ampache AMPACHE_VERSION: latest volumes: - ./config:/var/www/html/config - ./music:/music:ro depends_on: - db db: image: mariadb:11 container_name: ampache-db restart: unless-stopped environment: MARIADB_USER: ampache MARIADB_PASSWORD: ChangeM3_AMPACHE MARIADB_DATABASE: ampache MARIADB_RANDOM_ROOT_PASSWORD: "yes" volumes: - ./db:/var/lib/mysql ``` ### Installation manuelle LAMP/WAMP classique : PHP 8.1+, MySQL/MariaDB, Apache/Nginx. TĂ©lĂ©charger l'archive, extraire dans `/var/www/html/ampache`, suivre l'installateur web. Modules PHP requis : `curl`, pdo_mysql, intl, mbstring, gd, zip. ## ⚙ Configuration - **Catalogues** : ajouter un ou plusieurs dossiers (ex : `/music`), choisir le type (local, Beets, Mopidy, Subsonic distant), planifier les scans cron. - **Transcodage** : dĂ©finir les commandes ffmpeg pour limiter le bitrate selon l'utilisateur (utile en 4G). - **Utilisateurs** : quotas, permissions d'upload, ACL par catalogue. - **Authentification** : locale, LDAP, OAuth, ou header (reverse proxy SSO). - **API Subsonic** : activable par utilisateur, base de l'ecosystĂšme clients mobiles. ## 🔗 Alternatives - **Navidrome** — Plus moderne, Ă©crit en Go, consomme peu de RAM, compatible Subsonic aussi, mais audio uniquement. - **Funkwhale** — Plateforme audio fĂ©dĂ©rĂ©e (ActivityPub), orientĂ©e podcasts et communautĂ©s. - **Jellyfin** — Plus gĂ©nĂ©raliste (vidĂ©o + audio + Live TV), interface plus moderne. - **Koel** — UI trĂšs soignĂ©e type Spotify, mais plus exigeant en ressources et moins riche fonctionnellement. ## 🔒 SĂ©curitĂ© - Imposer HTTPS via [[app-traefik]] : le serveur expose des fichiers locaux, donc confidentiels. - Activer le module `security_headers` (HSTS, CSP) cĂŽtĂ© reverse proxy. - Limiter la taille d'upload, surveiller les scans cron (un dossier compromis reste lisible). - Mettre Ă  jour Ampache rĂ©guliĂšrement (correctifs XSS / SQLi frĂ©quents sur les apps PHP historiques). ## 📚 Ressources - Site officiel : https://ampache.org/ - Repository : https://github.com/ampache/ampache - Documentation : https://github.com/ampache/ampache/wiki - Clients Subsonic compatibles : https://www.subsonic.org/pages/apps.jsp ## 🔗 Pages LiĂ©es - [[cat-media-streaming]] (catĂ©gorie parente) - [[app-jellyfin]] — Concurrent plus gĂ©nĂ©raliste - [[app-traefik]] — Reverse proxy HTTPS - [[recettes-docker-compose]] — Templates - [[securisation-home-lab]] — Bonnes pratiques