Configurazione
Struttura di un file M3U: anatomia di una playlist IPTV
Struttura di un file M3U spiegata riga per riga: #EXTM3U, #EXTINF, group-title e tvg-logo. L'anatomia di una playlist IPTV chiarita passo passo.
Capire la struttura interna di un file M3U permette di analizzare meglio i problemi di visualizzazione, come un logo mancante o un canale nella categoria sbagliata, e di comprendere cosa fa esattamente l'app quando "carica" una lista. Questa guida spiega ogni riga senza presupporre conoscenze tecniche pregresse.
Cos'è esattamente un file M3U?
Un file M3U è un file di testo normale, non un video. Rimanda a una serie di stream o file multimediali. Il formato esiste dai tempi degli MP3 e fu poi adottato anche per lo streaming video. Secondo la documentazione su Wikipedia è ancora uno dei formati playlist più ampiamente supportati. Quando un'app "apre" un URL M3U, scarica questo file di testo ed elabora ogni riga per costruire l'elenco dei canali sullo schermo, come mostrato nel diagramma in alto.
A cosa serve la riga di intestazione #EXTM3U?
La riga #EXTM3U deve comparire alla prima riga del file e segnala al lettore di trovarsi davanti a una lista M3U estesa, cioè un file in grado di contenere metadati come nomi, loghi e categorie. Senza questa intestazione, il file viene trattato come una lista semplice.
#EXTM3U
Un file M3U semplice senza questa intestazione è limitato a un elenco di URL senza nomi né loghi. È questa riga, e la sua posizione all'inizio, a fare la differenza tra le due varianti del formato.
Cosa contiene la riga #EXTINF?
La riga #EXTINF contiene le informazioni descrittive di un canale: la durata, gli attributi facoltativi come logo e categoria, e il nome visualizzato. Per ogni voce della playlist compare una di queste righe, seguita dall'URL dello stream. Una voce tipica si presenta così:
#EXTINF:-1 tvg-id="canale1" tvg-logo="https://esempio.it/logo.png" group-title="Sport",Nome canale
https://server-esempio.it/live/canale1/index.m3u8
Questa riga è composta da tre parti:
- La durata (
-1per una trasmissione in diretta senza durata fissa; un numero positivo indica la durata in secondi per i contenuti on demand). - Gli attributi facoltativi:
tvg-id(l'ID che collega il canale alla guida ai programmi),tvg-logo(l'URL del logo) egroup-title(la categoria visualizzata, come Sport o Film). - Il nome visualizzato, dopo l'ultima virgola.
La riga successiva contiene l'URL dello stream stesso, ovvero l'indirizzo che il lettore usa per avviare la riproduzione quando si seleziona il canale.
Come funziona group-title nell'organizzazione del catalogo?
L'attributo group-title determina in quale categoria compare un canale nelle app che lo supportano. Se manca o il lettore non lo gestisce, tutti i canali vengono di norma mostrati in un unico elenco senza categorie. La stessa lista M3U può quindi apparire più ordinata in un'app che in un'altra: dipende dal modo in cui il lettore elabora l'attributo, non dalla playlist stessa.
Qual è la differenza tra M3U e M3U8?
La differenza tra le due estensioni riguarda solo la codifica. Un file .m3u8 usa UTF-8, necessario per visualizzare correttamente accenti e caratteri non latini nei nomi dei canali. Il formato M3U8 esteso viene utilizzato anche per lo streaming HLS adattivo, ovvero HTTP Live Streaming, in cui ogni playlist rimanda a segmenti video successivi invece di un unico stream continuo, come descrive Wikipedia. Nell'uso normale dell'IPTV questa distinzione è quasi impercettibile: praticamente tutte le app moderne supportano entrambe le estensioni.
Come apre un lettore un URL M3U?
App come VLC possono aprire un URL M3U direttamente dal menu di riproduzione di rete, senza una schermata di accesso IPTV dedicata. Questa procedura è descritta nella documentazione ufficiale di VideoLAN. Altre app IPTV, come IPTV Smarters Pro, dispongono di una schermata apposita per l'URL M3U e sovrappongono la propria interfaccia alla struttura descritta sopra.
Come individuare i problemi partendo dalla struttura?
Conoscere la struttura del file permette di isolare la causa di un problema di visualizzazione: quasi sempre riguarda un singolo attributo, non l'intera playlist. Con queste informazioni è più facile riconoscere l'origine dei problemi più comuni:
- Logo mancante: l'URL in
tvg-logonon è disponibile o non è raggiungibile dalla tua rete. - Canale nella categoria sbagliata o senza categoria: l'attributo
group-titleè assente dalla riga#EXTINFoppure il lettore non lo utilizza. - La lista non si carica: il problema riguarda di solito l'URL principale o la connessione, non la struttura interna del file. Leggi cosa fare se la lista M3U non si carica.
Ora che conosci la struttura, il nostro articolo su come gestire una lista M3U spiega come organizzare, aggiornare e tenere in ordine la lista.
Riepilogo
Un file M3U è un file di testo con una struttura semplice: un'intestazione, seguita da coppie di righe #EXTINF e URL per ogni canale. Capire questa struttura permette di spiegare il comportamento dell'app e di distinguere un problema della playlist da un problema di rete. Leggi M3U o Xtream Codes per scegliere tra i due metodi di connessione.
Domande frequenti
Qual è la differenza tra .m3u e .m3u8?
Entrambi hanno la stessa struttura. L'estensione .m3u8 indica semplicemente che il file usa la codifica UTF-8, necessaria per visualizzare correttamente accenti e caratteri speciali, ad esempio nei nomi di canali in lingue diverse. La maggior parte delle app IPTV moderne supporta entrambi i formati allo stesso modo.
A cosa serve la riga #EXTM3U all'inizio del file?
È la riga di intestazione obbligatoria che rende il file riconoscibile come lista M3U estesa. Senza questa riga in prima posizione, la maggior parte dei lettori non riconosce il file come playlist valida.
Cosa significa il group-title in una riga #EXTINF?
È un attributo facoltativo che indica la categoria di un canale, ad esempio Sport, Film o Notizie. Le app compatibili lo usano per ordinare automaticamente la lista per argomento invece di mostrare tutti i canali in un unico elenco.
Perché alcuni loghi dei canali non vengono mostrati?
Il logo viene caricato tramite un URL nell'attributo tvg-logo della riga #EXTINF. Se quell'URL manca, è scaduto o viene bloccato dalla rete, il lettore mostra un'icona predefinita.
Posso aprire un file M3U con un editor di testo e riprodurlo?
Puoi aprirlo, ma non riprodurlo direttamente. Un file M3U è testo normale visualizzabile con qualsiasi editor. Solo un'app compatibile, come VLC, TiviMate o IPTV Smarters Pro, può riprodurre gli stream a cui il file rimanda.
Il file M3U contiene il video?
No. Il file contiene solo URL che puntano a stream video su un server esterno e metadati come nome, logo e categoria. Il file stesso occupa pochi kilobyte, indipendentemente dalla dimensione del catalogo a cui rimanda.