M3U
Un fichier texte sans vidéo dedans, et ce qu’un abonnement IPTV est réellement.
Un M3U est une liste en texte brut d’adresses de médias avec des noms attachés. Il ne contient absolument aucun audio ni vidéo. Quand un fournisseur IPTV te vend un abonnement, ce que tu reçois est un lien vers l’un de ces fichiers — une liste de noms de chaînes, de logos, de groupes et d’adresses de flux qu’un lecteur transforme en guide des chaînes.
30 juillet 2026
Ouvert sans aide par
Rien dans iOS ni dans macOS ne lit un M3U comme une playlist. En toucher un affiche un mur de texte. Ce n’est pas un format de média et aucun système n’allait jamais le traiter comme tel — il faut une app qui comprend à quoi la liste *sert*.
Les faits
| Nom complet | MP3 URL, ou Moving Picture Experts Group Audio Layer 3 Uniform Resource Locator |
|---|---|
| Type | Playlist — une liste d’adresses, aucun média |
| Extensions | .m3u (n’importe quel encodage texte), .m3u8 (UTF-8) |
| Publié | Fin des années 1990, par Fraunhofer pour Winamp ; jamais formellement normalisé |
| Structure | Une ligne #EXTINF qui nomme chaque entrée, suivie de son adresse |
| Extensions IPTV | tvg-id, tvg-name, tvg-logo, group-title — ajoutés par convention, pas par une spécification |
| Ce que les adresses désignent | En général des playlists HLS ou des flux MPEG-TS ; parfois de simples fichiers |
| Taille typique chez un fournisseur | De quelques centaines de Ko à bien plus de 200 Mo pour des listes de centaines de milliers de chaînes |
Une liste de noms et d’adresses
Le format est à peu près aussi simple qu’un format peut l’être. Chaque entrée fait deux lignes : une qui commence par #EXTINF et qui nomme la chose, et une avec l’adresse où elle se trouve. Tout le reste — logos, numéros de chaîne, groupes qui deviennent des catégories dans un lecteur — est arrivé plus tard sous forme d’attributs que les gens se sont mis d’accord pour poser sur la ligne #EXTINF. Aucun organisme de normalisation n’a jamais ratifié tout ça.
Cette informalité explique pourquoi les fichiers M3U varient autant. Un fournisseur écrit group-title="Sports", un autre écrit group-title="SPOR", un troisième l’omet complètement et attend du lecteur qu’il devine. Un lecteur qui gère bien l’IPTV est surtout un lecteur qui a croisé beaucoup de fichiers M3U mal écrits.
La confusion avec M3U8 vaut la peine d’être levée : le 8 renvoie à l’encodage texte UTF-8, rien de plus. Toute playlist HLS est un M3U8, mais tout M3U8 n’est pas du HLS — une liste de chaînes IPTV enregistrée en UTF-8 est aussi un .m3u8 et n’a rien à voir avec la diffusion en segments.
Pourquoi la taille est tout le problème
Les listes des fournisseurs ont grossi d’une façon que le format n’a jamais anticipée. Un fichier qui faisait quelques centaines de lignes en 2010 fait aujourd’hui, chez un gros fournisseur, des centaines de milliers d’entrées et des centaines de mégaoctets de texte.
La façon naïve d’en lire un — charger le fichier en mémoire, l’analyser, garder le résultat — s’écroule bien avant ça. Analyser une liste de 200 Mo comme ça veut dire un pic de mémoire qu’un iPhone ne tolérera pas, et iOS termine l’app plutôt que d’attendre. C’est pourquoi tant d’apps IPTV plantent purement et simplement sur un gros fournisseur.
L’approche qui marche consiste à ne jamais tenir la liste du tout : la lire depuis le disque par morceaux, écrire chaque chaîne directement dans une base de données au fil de l’analyse, puis afficher l’écran page par page depuis cette base. FoxDL a été mesuré sur une liste de 485 Mo et deux millions de chaînes — 123 secondes pour l’import, 9 Mo de mémoire supplémentaire, 4 millisecondes pour dessiner la première page, 400 millisecondes pour chercher dans toute la liste. Ces chiffres ne sont intéressants que parce que l’approche naïve ne peut pas les produire du tout.
S’en servir
- L’ajouter comme URL, pas comme fichier
Les fournisseurs mettent leurs listes à jour — les chaînes bougent, les adresses tournent. Un lecteur qui détient l’URL peut rafraîchir ; un lecteur qui détient une copie que tu as téléchargée une fois est périmé dès que quoi que ce soit change.
- T’attendre à des groupes en désordre et utiliser la recherche
Les noms de catégories viennent du fournisseur et ne suivent aucune convention. Sur une grosse liste, chercher une chaîne est plus rapide que d’y naviguer, à condition que l’app cherche dans la base de données et pas dans un tableau chargé en mémoire.
- Savoir que la liste n’est pas le contenu
Un M3U, ce sont des adresses. Savoir si ces adresses sont légales à regarder est une question sur le fournisseur, pas sur le fichier ni sur le lecteur. Aucune app ne livre de chaînes, et aucune ne peut se porter garante d’une liste que tu fournis.
Questions sur ce format
D’où viennent ces faits
Formats proches
Ta bibliothèque, enfin au même endroit.
Gratuit à télécharger. Pas de compte, pas d’inscription, rien à remettre.