Guia técnico

Xtream Codes: o que é, como funciona e como configurar

Se seu provedor de IPTV te mandou três coisas separadas (host, usuário e senha) em vez de uma URL única, ele está usando Xtream Codes. Este é o protocolo moderno usado por servidores IPTV. Aqui está como funciona e por que importa.

O que é Xtream Codes

Xtream Codes é o nome de um sistema de gestão de servidores IPTV criado em 2012, que se tornou tão popular que virou padrão de facto da indústria. Hoje, quando alguém fala "Xtream Codes" no contexto de IPTV, está se referindo à API (interface de programação) que esses servidores expõem.

Tecnicamente, é uma REST API — um conjunto de endpoints HTTP que apps podem consultar pra buscar dados específicos. Em vez de baixar uma lista M3U inteira de uma vez (que pode ter dezenas de MB), o app conversa com o servidor consultando:

  • "Me dê a lista de canais ao vivo"
  • "Me dê a lista de filmes disponíveis"
  • "Me dê os episódios da série X"
  • "Me dê o EPG do canal Y"
  • "Me autentique com este usuário e senha"

Cada consulta retorna só o que foi pedido, em formato JSON. Resultado: tudo carrega mais rápido e a navegação é mais fluida.

A história curiosa do nome

A empresa original "Xtream Codes" (criadora do software) foi fechada em 2019 por questões legais. Mas o protocolo que ela criou já estava tão difundido que continuou sendo usado por outros painéis de gestão IPTV (Xtream UI, XCMS, FlussonicWatcher, etc). Hoje, "Xtream Codes" se refere mais à API padrão que ao software original.

Os três dados que você recebe

Quando um provedor te configura no Xtream Codes, ele envia três informações separadas:

1. Host (servidor + porta)

É o endereço do servidor IPTV. Tem o formato:

http://servidor-exemplo.com:8080

Detalhes importantes: a maioria dos servidores usa HTTP (não HTTPS) e porta 8080 (algumas usam 80, 25461, ou outras). Se o protocolo ou porta estiver errado, a conexão falha. Sempre confira esses detalhes com o provedor.

2. Username (usuário)

Identificador único da sua conta no servidor. Pode ser uma string alfanumérica (tipo cliente1234), seu email, ou um código gerado automaticamente. Importa caso/letra-maiúscula.

3. Password (senha)

Senha da sua conta. Como qualquer senha, importa caso e geralmente tem 8-16 caracteres. Alguns provedores geram senhas complexas com símbolos.

Cuidado com espaços invisíveis

Quando você copia/cola usuário e senha do WhatsApp, às vezes vem com espaço antes ou depois — invisível, mas quebra a autenticação. É o erro #1 quando alguém me liga dizendo "não tô conseguindo logar". Sempre confira no final dos campos.

Xtream Codes vs M3U: comparação direta

Os dois formatos coexistem no mercado. Vale entender as vantagens de cada:

Critério M3U Xtream Codes
Velocidade de carregamento Mais lento Mais rápido
Organização de VOD Lista plana Categorias + capas
EPG automático Configurar à parte Integrado
Catch-up TV Não Sim (se servidor suporta)
Compatibilidade com players Universal Players modernos
Tamanho do download inicial Lista inteira Sob demanda
Persistência (offline) Arquivo local Sempre online
Atualização da lista Refresh manual Sempre atualizada

Quando o M3U ainda faz sentido

  • Em apps que não suportam Xtream (iPlayTV no Roku, Smart IPTV)
  • Quando você quer arquivo local pra usar offline
  • Pra editar manualmente a lista (filtrar canais, mudar ordem)

Quando Xtream Codes é claramente melhor

Como configurar Xtream Codes no seu app

O processo é parecido nos principais players. Os campos sempre são os mesmos três:

No IPTV Smarters Pro

  1. Na tela inicial, escolha Login with Xtream Codes API
  2. Preencha: Any Name (nome livre), Username, Password, URL (host)
  3. Toque em Add User

Tutorial completo: IPTV Smarters Pro

No TiviMate

  1. Escolha Add Playlist → Xtream Codes
  2. Preencha servidor, usuário, senha e nome
  3. Aguarde processamento

Tutorial completo: TiviMate

No XCIPTV

  1. Na tela inicial: Xtream Codes API
  2. Preencha Playlist Name, Username, Password, URL
  3. Toque em Connect

Tutorial completo: XCIPTV

Convertendo Xtream em URL M3U

Em apps que não suportam Xtream Codes nativamente (Smart IPTV, iPlayTV no Roku), você pode converter as três credenciais Xtream em uma URL M3U. O servidor Xtream Codes expõe esse endpoint pra retrocompatibilidade.

Formato da URL convertida

http://HOST:PORTA/get.php?username=USUARIO&password=SENHA&type=m3u_plus

Substitua HOST, PORTA, USUARIO e SENHA pelos seus dados. Por exemplo, se seu Xtream é:

  • Host: http://servidor.com:8080
  • Username: cliente1234
  • Password: senha123

A URL convertida fica:

http://servidor.com:8080/get.php?username=cliente1234&password=senha123&type=m3u_plus

Outras variações úteis

Trocar type=m3u_plus por outros parâmetros muda o que vem na lista:

  • type=m3u_plus — Lista padrão (canais + VOD)
  • type=m3u — Lista simples sem metadados extras
  • output=m3u8 — Força formato HLS nas URLs dos canais

URL XMLTV para EPG

O EPG no formato XMLTV também pode ser obtido por endpoint similar:

http://HOST:PORTA/xmltv.php?username=USUARIO&password=SENHA

Útil pra adicionar EPG manualmente em players que não puxam automaticamente.

Problemas comuns no Xtream Codes

"Authentication failed" ou "Invalid login"

Causas, em ordem de frequência:

  1. Espaços invisíveis nos campos (causa #1)
  2. Porta errada — o servidor responde em 8080 mas você botou 80, ou vice-versa
  3. Protocolo errado — servidor é HTTP e você botou HTTPS
  4. Conta vencida — sua assinatura expirou no provedor
  5. Servidor offline temporariamente — teste em 5-10 minutos

"Connection timeout"

Você consegue conectar com a internet, mas o servidor IPTV não responde. Causas: servidor sobrecarregado (horário de pico), provedor de internet bloqueando o IP, firewall do roteador bloqueando porta 8080. Testes: tente via 4G/5G do celular pra ver se é problema de rede; tente em outro horário.

Canais carregam, mas filmes/séries não aparecem

O servidor pode não estar expondo os endpoints VOD do Xtream Codes, ou seu plano com o provedor não inclui VOD. Confirme com o provedor: "Meu plano tem filmes e séries via Xtream?". Se sim, mas continua faltando, pode ser bug do servidor — peça pro provedor verificar.

EPG vem em horário errado

O servidor envia EPG em UTC (horário universal). Apps modernos convertem automaticamente pro seu fuso, mas em alguns casos a conversão falha. Em Settings → EPG do seu player, ajuste manualmente: pro Brasil, geralmente -3 horas (UTC-3, horário de Brasília).

"Connection limit exceeded"

Você ultrapassou o número de conexões simultâneas do seu plano. A maioria dos planos permite 1 conexão por conta. Se você tem o mesmo Xtream em TV + celular e tenta usar nos dois ao mesmo tempo, dá esse erro. Pra usar em vários aparelhos simultaneamente, peça pro provedor um plano "multi-conexão".

Dúvidas sobre Xtream Codes

Hoje, praticamente todos os painéis de gestão IPTV modernos (Xtream UI, XCMS, etc) usam o protocolo Xtream Codes como base. É mais leve no servidor, oferece mais recursos pro usuário e gerencia melhor as conexões. Provedores que ainda mandam só M3U geralmente usam infraestrutura mais antiga.

Sim, em alguns aspectos. Xtream permite autenticação separada (usuário + senha), expira sessões inativas, e o provedor pode invalidar credenciais sem mudar URLs. Em M3U, a URL contém usuário e senha embutidos — se alguém vê sua URL, vê tudo. Mas atenção: Xtream Codes geralmente NÃO criptografa o tráfego (é HTTP, não HTTPS) — então alguém na sua rede ainda pode interceptar o stream. Pra privacidade real, VPN ajuda.

Não pelo lado do usuário — a senha é definida pelo provedor no servidor dele. Mas você pode pedir pra ele alterar. Se você desconfia que alguém clonou suas credenciais, pede troca imediata. O provedor gera senha nova e te manda — você atualiza nos seus apps.

Depende de duas coisas: (1) seu provedor configurou conteúdo VOD no servidor dele, e (2) seu plano inclui acesso a VOD. Alguns provedores cobram extra pelo "pacote completo" (canais + filmes + séries) vs "só canais ao vivo". Confirme com seu provedor o que está incluso.

Tecnicamente não. O servidor pode expor quantos canais o provedor configurar — vi listas com 30.000+ canais somando ao vivo + VOD. O limite prático vem do app processar tantas entradas e da sua paciência pra navegar. Apps como TiviMate e XCIPTV lidam bem com listas grandes; apps mais leves podem travar.

Pelo navegador do computador. Acesse a URL: http://SEU_HOST:PORTA/player_api.php?username=USUARIO&password=SENHA (substitua os dados). Se voltar um JSON com informações de "user_info" e "server_info", está funcionando. Se voltar erro 401, credenciais erradas. Se não voltar nada, servidor offline.

Erro de autenticação Xtream Codes? Me chama.

Te ajudo a verificar host, porta, usuário e senha — geralmente é detalhe pequeno que resolve em segundos.