Retour aux outils
Photos / MédiasIntermédiaireOpen sourceAuto-hébergeable

m3u editor

Interface web pour nettoyer, organiser et fusionner des playlists IPTV M3U/M3U8 avec filtres regex e

MAJ 2026-06-14
m3u editor
Site officiel Code source★ 0

m3u editor est l'outil de référence pour qui doit administrer des playlists IPTV importantes (plusieurs milliers d'entrées). Il remplace avantageusement l'édition à la main dans Vim ou un tableur, en proposant une interface web où l'on peut filtrer, réordonner, grouper par catégorie et éditer en mas

Description

m3u editor est l'outil de référence pour qui doit administrer des playlists IPTV importantes (plusieurs milliers d'entrées). Il remplace avantageusement l'édition à la main dans Vim ou un tableur, en proposant une interface web où l'on peut filtrer, réordonner, grouper par catégorie et éditer en masse les URL des flux.

Le logiciel s'appuie sur Laravel et fonctionne aussi bien sur un petit VPS que sur un NAS Synology. Il supporte plusieurs providers en parallèle (vous pouvez fusionner votre playlist Free + une playlist de votre FAI étranger), gère les logos de chaînes, et produit une playlist exportable en HTTP pour les clients IPTV (TiviMate, Kodi, [[app-tvheadend]]).

Points forts : regex de filtrage puissantes, sauvegarde versionnée, support EPG XMLTV, groupement par tvg-name. Limites : demande une base de données (SQLite suffit), peu adapté au streaming direct — c'est un éditeur, pas un proxy.

Installation

Via Docker (recommandé)

# docker-compose.yml
version: "3.8"

services:
  m3u-editor:
    image: m3ueditor/m3u-editor:latest
    container_name: m3u-editor
    restart: unless-stopped
    ports:
      - "8530:8530"
    volumes:
      - ./data:/app/storage
      - ./database:/app/database
    environment:
      - APP_KEY=base64:CHANGEZMOIAVANTPROD
      - APP_URL=http://m3u.example.com
      - DB_CONNECTION=sqlite

Installation manuelle

Prérequis : PHP 8.2+, Composer, SQLite.

git clone https://github.com/m3u-editor/m3u-editor.git
cd m3u-editor
composer install --no-dev --optimize-autoloader
cp .env.example .env
php artisan key:generate
php artisan migrate
php artisan serve --port=8530

Configuration

  • Import : URL HTTP d'une playlist M3U ou fichier local .m3u/.m3u8.
  • Filtres regex : appliquer un filtre positif/négatif sur le nom de chaîne ou le groupe.
  • Groupement : créer des catégories logiques (Sport, Cinéma FR, Kids, etc.) pour les clients IPTV.
  • EPG : associer un fichier XMLTV local ou distant ; m3u editor sait lier tvg-id et chaîne.
  • Export : URL signée générée par m3u editor, valable pour un client IPTV ou un proxy comme [[app-nodecast-tv]].

Alternatives

  • xTeVe / Threadfin — Plus axés proxy EPG, moins sur l'édition.
  • Jellyfin IPTV plugin — Édition limitée mais directement intégrée au serveur média.
  • IPTV Editor (Qt) — Application desktop, pas self-hosted.
  • Sed/awk — Pour l'édition scriptée en CLI, sans UI.

Sécurité

  • Changer APP_KEY avant toute exposition (sinon les sessions sont compromises).
  • Protéger l'UI derrière un reverse proxy HTTPS ([[app-traefik]]).
  • Si export public : les URLs signées peuvent fuiter ; préférer un compte IPTV avec authentification.
  • Sauvegarder régulièrement le volume database/ (SQLite = tout dans un seul fichier).

Ressources

  • Site officiel : https://m3u-editor.com/
  • Repository : https://github.com/m3u-editor/m3u-editor
  • Documentation : https://docs.m3u-editor.com/
  • Spec M3U : https://tools.ietf.org/html/rfc8216