Une playlist au format M3U est un simple fichier texte encodé en UTF-8. Il peut être édité avec le Bloc-notes depuis les accessoires Windows. N’importe quel M3U commence par un identificateur de texte #EXTM3U à la première ligne. Le fichier est ensuite structuré d’un ensemble de lignes allant toujours par deux. La première ligne commence toujours par l’identificateur de texte #EXTINF: et la deuxième ligne ne contient que l'URL (lien) du contenu.
Prenons cet exemple:
#EXTM3U
#EXTINF:0 tvg-name="BBC" audio-track="eng" tvg-logo="http://mylogos.domain/BBC.png", BBC World
http://server.name/stream/to/video2
#EXTINF:0 tvg-name="CNN" audio-track="rus", CNN International
http://server.name/stream/to/video2
#EXTINF:0, Arirang
http://server.name/stream/to/video3
Comme vous pouvez le voir dans cet exemple, le fichier M3U est structuré d’un ensemble de lignes représentant les paramètres et la source du signal (URL). Dans cet exemple, il y a 3 chaînes : BBC World, CNN International et Arirang.
La première ligne commence par #EXTINF: (durée) (attributs), (titre). Les paramètres requis sont : durée et titre. Dans le cas d’une chaine TV, la durée doit toujours être à 0 ou -1.
Les attributs ne sont pas obligatoires, voici la liste des attributs pris en charge:
- tvg-shift - décalage horaire du guide TV
- tvg-name - identifiant du guide TV
- tvg-logo - logo de la chaîne (url)
- audio-track - piste audio de la chaîne, si supportée. Saisir le code langue au format ISO 639-2, vous pouvez utiliser plusieurs codes séparés par une virgule (ex:"eng, rus, fre"). Le premier élément de la liste sera la langue définie par défaut.
- aspect-ratio - définit le ratio d’image (peut ne pas être disponible pour certains modèles TV). Valeurs disponibles: 16:9, 3:2, 4:3, 1,85:1, 2,39:1
SS IPTV en plus des directives et attributs habituels du format M3U étendu supporte des directives et attributs supplémentaires. En utilisant les attributs décrits ci-dessous, vous pourrez ajuster l'apparence de la playlist sur l'écran principal en modifiant le rendu des vignettes.
Les directives du fichier M3U doivent toujours être sur une nouvelle ligne et leur premier symbole est #, les attributs sont insérés dans la chaîne de la directive (généralement #EXTINF) et sont représentés comme attribut = "valeur". La valeur de l'attribut doit toujours être entre double cote.
Directives supplémentaires:
#EXTBG définit le fond de la vignette associée à l’élément de la playlist. La valeur peut être l’URL d’une image ou une couleur au format #rrggbb ou rgba
#EXTSIZE définit la taille de la vignette associée à l’élément de la playlist. Valeurs disponibles: small, medium, big
#EXTCTRL après la directive peut être écrit l’URL qui doit être demandé lorsque la vignette sera pressée. La demande est envoyée avant le téléchargement du contenu. Cette fonction peut s’avérer utile pour les propriétaires de récepteur satellite car l'application peut envoyer au récepteur la commande pour changer de canal.
Attributs additionnels de la directive #EXTINF:
description – permet d’afficher une description sur les moyennes et grandes vignettes
content-type – permet de spécifier le type de contenu. Valeurs disponibles : stream, video, playlist. Dans la plupart des cas, l'application définit automatiquement le type de contenu et il n'est pas nécessaire d'utiliser ce paramètre.
Attributs additionnels de la directive #EXTM3U:
#EXTM3U peut utiliser les attributs description, size et background. Dans ce cas, toutes les valeurs de ces attributs seront appliquées par défaut à tous les éléments de la playlist. Il est cependant possible de redéfinir des attributs dans les directives #EXTINF pour outrepasser le réglage par défaut.
L'exemple ci-dessous illustre comment utiliser des directives et attributs additionnels.
#EXTM3U #EXTINF:-1, MTV Dance #EXTSIZE: Big #EXTBG: #11609e http://example.com/stream1 #EXTINF:-1,MTV Hits #EXTSIZE: Medium #EXTBG: #046f55 http://example.com/stream1 #EXTINF:-1,Россия 24 #EXTSIZE: Medium #EXTBG: #046f55 dtv://cabel:11/dvb/8 #EXTINF:-1,Первый канал #EXTSIZE: Medium #EXTBG: #046f55 dtv://cabel:11/dvb/2 #EXTINF:-1, MTV Live HD #EXTSIZE: Small http://example.com/stream3 #EXTINF:-1,MTV Rocks #EXTSIZE: Small http://example.com/stream4