---
title: Gerbera
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, media-streaming, gerbera, dlna, upnp, audio, video]
confidence: high
contested: false
sources:
  - https://selfh.st/apps/?tag=Media+Streaming
  - https://github.com/gerbera/gerbera
  - https://gerbera.io/
---

# 🎬 Gerbera

> Serveur UPnP/DLNA libre et moderne : expose ta bibliothèque média sur n'importe quel appareil compatible (TV, ampli, console, Freebox, etc.).

## 📋 Informations Générales

| Attribut | Valeur |
|----------|--------|
| **Nom** | Gerbera |
| **Slug** | app-gerbera |
| **Description** | Serveur multimédia UPnP/DLNA issu de MediaTomb, interface web de configuration, transcodage et base de données |
| **Site officiel** | https://gerbera.io/ |
| **Repository** | https://github.com/gerbera/gerbera |
| **Stars** | 1 373 ⭐ |
| **Licence** | GPL-2.0 |
| **Langage principal** | C++ |
| **Catégorie** | Media Streaming |
| **Tags** | [catalogue, media-streaming, gerbera, dlna, upnp, audio, video] |

## 📝 Description

Gerbera est le successeur spirituel de MediaTomb, l'un des premiers serveurs DLNA Linux. Il sert à exposer une bibliothèque locale (films, séries, musique, photos) sur un réseau local vers tout client compatible UPnP/DLNA : Smart TV (Samsung, LG, Sony, Philips), ampli home-cinema, console (PS4/PS5, Xbox), Freebox/Revolution, Kodi (mode UPnP), BubbleUPnP, etc.

La force de Gerbera est son universalité : pas d'application cliente à installer, le client "est" l'appareil final. Le serveur indexe en continu les dossiers, scrape les métadonnées (via les fichiers ou LastFM), et organise le contenu en conteneurs virtuels. La base de données (SQLite ou MySQL) accélère la navigation sur les grosses collections.

L'interface web permet de tout configurer : ajout de dossiers, mapping de types MIME, transcodage ffmpeg à la volée pour les clients incompatibles (ex. AVI sur une TV qui ne gère que H.264), règles d'import automatique, et même scripting JS (import via LastFM, TMDB, ou scraper custom). Limites : pas de client web pour lire (DLNA natif seulement), pas d'auth (LAN uniquement), pas de transcodage GPU.

## 🚀 Installation

### Via Docker (recommandé)

```yaml
# docker-compose.yml
version: "3.8"

services:
  gerbera:
    image: gerbera/gerbera:latest
    container_name: gerbera
    restart: unless-stopped
    ports:
      - "49152:49152"   # Interface web admin
      - "1900:1900/udp" # découverte UPnP SSDP
      - "7359:7359/udp" # (optionnel) clients Jellyfin-like
    environment:
      TZ: Europe/Paris
    volumes:
      - ./config:/config
      - /media:/media:ro
```

### Installation manuelle

Paquets officiels Debian/Ubuntu : `apt install gerbera` (présent dans les dépôts stables depuis Debian 10). Sinon, compilation depuis source avec cmake : `cmake -B build && cmake --build build && cmake --install build`. À exécuter en user dédié `gerbera` (service systemd fourni).

## ⚙️ Configuration

- **`config.xml`** : déclarer les dossiers à scanner (`/media/music`, `/media/videos`, `/media/photos`). Choisir la base SQLite (`<sqlite3>`) ou MySQL.
- **Métadonnées** : activer le plugin `LastFM` pour la musique, scraper les jaquettes via `ffmpeg` ou `libexif`.
- **Transcodage** : profils ffmpeg pour AVI/MKV/FLAC → H.264/MP3/AAC. Utile pour les TV d'ancienne génération.
- **Comptes** : un seul compte admin (interface web). Pas d'utilisateurs multiples : c'est un serveur LAN familial.
- **Découverte** : SSDP actif par défaut (UDP 1900), détection auto sur les clients compatibles.
- **Hiérarchies virtuelles** : règles JS pour créer des vues (par genre, par année, par dossier).

## 🔗 Alternatives

- **MiniDLNA / ReadyMedia** — Très léger, configuration minimaliste, mais sans transcodage ni web UI.
- **Jellyfin** — Plus moderne, avec UI web et clients dédiés, mais plus lourd à mettre en place.
- **Plex / Emby** — DLNA + clients riches, mais freemium et fermés.
- **Rygel** — Alternative GNOME en Vala, intégration Linux poussée, projet plus modeste.
- **Fuseini / Universal Media Server** — Java, fork de PS3 Media Server, transcodage très poussé.

## 🔒 Sécurité

- Pas d'authentification par défaut sur l'UI web : ne JAMAIS exposer le port 49152 sur Internet.
- Restreindre l'accès à l'admin par IP (LAN uniquement) ou via [[app-traefik]] + auth forte.
- Le protocole DLNA n'est pas chiffré : la bibliothèque circule en clair sur le LAN, c'est par design.
- Mettre à jour Gerbera (CVE sur upnp stack et ffmpeg sous-jacent : rester en dernière stable).

## 📚 Ressources

- Site officiel : https://gerbera.io/
- Repository : https://github.com/gerbera/gerbera
- Documentation : https://gerbera.io/userdocs/
- Wiki : https://github.com/gerbera/gerbera/wiki

## 🔗 Pages Liées

- [[cat-media-streaming]] (catégorie parente)
- [[app-jellyfin]] — Alternative moderne avec UI web
- [[app-plex]] — Concurrent fermé DLNA+client
- [[app-traefik]] — Reverse proxy
- [[recettes-docker-compose]] — Templates
- [[securisation-home-lab]] — Bonnes pratiques
