Anatomia de um arquivo M3U

Lista M3U é o formato padrão para distribuir playlists de mídia em IPTV. É um arquivo de texto simples que organiza canais com URL e metadados — mas o nome assusta mais do que devia.

Origem do formato

O formato M3U nasceu no WinAMP nos anos 90 para listas de música. Era simples: uma URL por linha, opcionalmente com nome do arquivo. Quando o IPTV começou a popularizar nos anos 2010, reaproveitaram o mesmo formato — em vez de URLs de MP3, agora são URLs de streams de vídeo.

Estrutura de um arquivo M3U

Um M3U para IPTV (mais especificamente M3U "extendido", também chamado de M3U8 quando codificado em UTF-8) tem esta estrutura:

#EXTM3U
#EXTINF:-1 tvg-id="globo.br" tvg-logo="http://exemplo.com/globo.png" group-title="Abertos",Globo HD
http://servidor.com:8080/live/usuario/senha/12345.m3u8
#EXTINF:-1 tvg-id="sbt.br" tvg-logo="http://exemplo.com/sbt.png" group-title="Abertos",SBT HD
http://servidor.com:8080/live/usuario/senha/12346.m3u8

Linha por linha:

  • #EXTM3U — sempre a primeira linha. Identifica o arquivo como M3U extendido.
  • #EXTINF:-1 tvg-id="..." tvg-logo="..." group-title="...",Nome do Canal — metadados do canal. -1 indica que é stream contínuo (não tem duração). tvg-id é usado para casar com EPG. group-title agrupa canais em categorias.
  • http://servidor.com:8080/live/.../12345.m3u8 — URL do stream do canal.

Cada canal são duas linhas: uma de metadados e uma com a URL.

Como players IPTV usam

Quando você cola uma URL M3U em apps como Smarters, TiviMate ou XCIPTV, o player faz:

  1. Baixa o arquivo M3U inteiro do servidor.
  2. Lê e separa os canais (parsing).
  3. Agrupa por group-title (cria categorias).
  4. Busca logos das URLs em tvg-logo.
  5. Salva tudo na memória local para acesso rápido.
  6. Quando você clica num canal, abre a URL daquele canal específico e começa o streaming.

M3U vs Xtream Codes

Xtream Codes é um painel de gerenciamento que servidores IPTV usam. Quando você usa Xtream Codes em vez de M3U bruto, o player não baixa o arquivo M3U inteiro — ele faz chamadas de API para endpoints separados:

  • /get.php?...&type=m3u_plus — geração de M3U sob demanda.
  • /player_api.php?...&action=get_live_categories — apenas categorias de canais ao vivo.
  • /player_api.php?...&action=get_live_streams — canais ao vivo.
  • /player_api.php?...&action=get_vod_streams — filmes (VOD).
  • /player_api.php?...&action=get_series — séries.

Resultado: carregamento mais rápido, organização melhor, EPG embutido, atualização incremental sem rebaixar a lista inteira. Por isso preferimos Xtream Codes sempre que disponível.

Lista M3U expira?

O arquivo M3U em si não tem prazo. O que expira é a sua URL personalizada — normalmente contém usuário e senha, e o provedor pode bloqueá-la se você atrasar pagamento, vazar pra terceiros, ou desativar conta. Quando bloqueia, o arquivo M3U continua existindo, mas as URLs internas dos canais retornam erro.

Posso criar minha própria lista M3U?

Sim. Qualquer editor de texto cria. Os streams precisam ser de origem que você controla (canais que você grava, fontes legais públicas, etc.). Hospede num servidor (até GitHub Pages funciona) e use a URL no seu player. Listas pessoais são úteis para combinar canais de fontes diversas num único lugar.

M3U é legal?

O formato em si é totalmente legal. O que importa é a fonte dos streams. M3U de canais públicos (TV aberta retransmitida por radio com permissão, canais oficiais de YouTube, rádios gratuitas, etc.) é completamente legal. M3U distribuído sem autorização para serviços pagos é ilegal — mas a ilegalidade está na distribuição não-autorizada, não no formato M3U.

Perguntas frequentes

M3U e M3U8 são a mesma coisa?
Tecnicamente M3U8 é a versão em UTF-8 do M3U. Na prática, em IPTV os termos são usados de forma intercambiável. URLs de stream individual frequentemente têm extensão .m3u8 (são streams HLS), enquanto a lista de canais costuma vir com extensão .m3u, mas isso varia.
Posso editar minha lista M3U para tirar canais que não uso?
Sim, mas se você usa uma URL remota, o provedor sobrescreve a edição a cada atualização. Para edição persistente, baixe o M3U, edite num editor de texto, salve, e use o arquivo local em vez da URL — apps como Smarters e Clouddy aceitam arquivo M3U local.
Por que minha lista tem 5.000 canais que eu não vou assistir?
Provedores entregam o catálogo completo deles. Para ficar prático, use favoritos no seu player — marca 20-30 canais que você assiste de verdade. Tabela completa fica lá pra emergências e descobertas eventuais.