O que é EPG no IPTV? Como funciona o guia de programação

Você abre a lista, escolhe um canal e encontra uma grade com o programa atual, o que vem depois e os horários do restante do dia. Essa camada de informação é o EPG — o guia eletrônico de programação que transforma uma relação de canais ao vivo em uma experiência mais próxima da televisão tradicional.
Quando o EPG funciona, ele parece fazer parte do próprio canal. Nos bastidores, porém, o vídeo e a programação percorrem caminhos diferentes. Entender essa separação ajuda a descobrir por que um canal pode tocar normalmente enquanto o guia aparece vazio, atrasado ou associado ao conteúdo errado.
O que significa EPG?
EPG é a sigla de Electronic Program Guide, ou guia eletrônico de programação. Ele reúne os horários e as informações editoriais de canais lineares: o que está passando agora, quando cada programa começou, a que horas termina e qual será a próxima atração.
O ponto mais importante é que o EPG não contém o vídeo. Ele funciona como uma agenda sincronizada com os canais. O endereço da transmissão entrega imagem e som; a fonte do EPG entrega dados de programação. O player combina as duas coisas na interface.
Quais informações podem aparecer no guia
A quantidade de detalhes depende do que a fonte fornece e do que o player consegue interpretar. Um EPG pode incluir:
- nome do canal e logotipo;
- título do programa atual e dos próximos programas;
- horário de início e término;
- sinopse e categoria, como esporte, notícia ou filme;
- temporada, episódio e título do episódio;
- classificação, elenco, imagem e outros dados complementares.
Nem todo guia traz tudo isso. Em algumas fontes, há apenas título e horário. Em outras, a descrição é completa. O player não consegue exibir uma sinopse ou uma imagem que nunca chegou na fonte de programação.
Como o EPG chega ao player IPTV
Para montar a grade, o player precisa relacionar dois conjuntos de dados. De um lado está a lista ou a API com os canais e seus endereços de reprodução. Do outro está o guia, com a identidade dos canais e os programas vinculados a horários específicos.
- A lista M3U ou a API informa quais canais existem e como reproduzi-los.
- A fonte de EPG descreve a programação de cada canal.
- O player atualiza os dois conjuntos de dados.
- Em seguida, associa cada canal da lista ao canal correspondente no guia.
- Por fim, converte os horários para o dispositivo e desenha a grade na tela.
Essa associação é decisiva. Baixar o guia com sucesso não basta: o player também precisa saber qual registro do EPG pertence a cada canal da lista.
O que é XMLTV
XMLTV é um formato amplamente usado para distribuir dados de programação. Como o nome indica, ele organiza as informações em XML, um documento de texto estruturado que pode ser baixado de um arquivo local ou de uma URL.
Dentro desse documento, elementos de canal guardam identificadores, nomes e, quando disponível, logotipos. Elementos de programa apontam para um desses canais e trazem campos como início, término, título, descrição, categoria e episódio. Os horários também podem carregar a diferença em relação ao UTC, permitindo que o aplicativo os apresente no fuso correto.
E no acesso via Xtream Codes?
Em uma API compatível com Xtream Codes, o servidor pode entregar parte do EPG por endpoints próprios, sem pedir que o usuário configure uma URL XMLTV separada. A embalagem muda, mas o princípio continua o mesmo: o servidor fornece dados de programação identificados por canal, e o player os transforma em uma grade.
O papel do tvg-id
Em listas M3U, o atributo tvg-id costuma funcionar como a ponte entre o canal e o XMLTV. O canal na playlist recebe um identificador, e a fonte de programação usa o mesmo valor para identificar sua entrada correspondente. Quando os dois lados coincidem, o vínculo tende a ser direto.
- Na lista M3U: o canal pode trazer algo como tvg-id=“canal.exemplo”.
- No XMLTV: o elemento de canal usa id=“canal.exemplo”.
- Nos programas: cada entrada aponta novamente para channel=“canal.exemplo”.
Alguns players ainda tentam encontrar uma correspondência pelo nome quando o identificador está ausente. Isso é menos confiável: “Canal Exemplo”, “Canal Exemplo HD” e “Canal Exemplo SP” podem ser tratados como canais diferentes. Um identificador estável evita depender dessas variações.
Por que o EPG fica vazio ou mostra dados errados
A fonte não oferece programação
Uma lista pode reproduzir canais sem incluir qualquer guia. Também é possível que o provedor entregue EPG apenas para parte do catálogo. Nesse caso, o player não tem de onde obter os horários que faltam.
Os identificadores não combinam
Se o tvg-id da lista for diferente do id usado no guia, o player pode baixar todos os programas e, ainda assim, não saber a qual canal atribuí-los. Também há casos em que canais mudam de nome ou são substituídos, mas o arquivo de programação continua usando o cadastro antigo.
O guia está desatualizado
A programação muda e precisa ser renovada periodicamente. Uma URL indisponível, uma atualização interrompida ou um arquivo antigo pode deixar a grade parada no dia anterior. Eventos ao vivo também podem alterar horários em cima da hora, antes que a fonte seja corrigida.
O fuso horário foi interpretado incorretamente
Quando a fonte informa um fuso incorreto — ou omite informações que o sistema esperava receber —, toda a grade pode aparecer adiantada ou atrasada pelo mesmo intervalo. Se todos os programas estão deslocados exatamente uma, duas ou três horas, vale conferir data, hora e fuso do aparelho antes de procurar outro tipo de falha.
O player ainda usa dados em cache
Para não baixar uma grade grande a cada abertura, players costumam manter dados localmente por algum tempo. Se a atualização falha, o aplicativo pode continuar mostrando a última versão válida. Atualizar a lista ou o guia e reabrir o aplicativo ajuda a separar um cache antigo de um problema na fonte.
Como diagnosticar o problema, passo a passo
- Confirme se o canal reproduz. Se o vídeo também falha, o problema não está limitado ao EPG.
- Observe outros canais. Um único canal vazio sugere erro de identificação; a grade inteira vazia aponta para a fonte ou para a atualização.
- Atualize a lista e o guia dentro do player, quando essas opções estiverem disponíveis.
- Verifique se a data, a hora e o fuso do aparelho estão corretos.
- Compare o horário exibido com o deslocamento real. Uma diferença fixa costuma indicar fuso; títulos trocados costumam indicar associação incorreta.
- Se você administra a própria lista autorizada, compare o tvg-id do canal com o id correspondente no XMLTV.
- Ao falar com o provedor, informe canal, horário, aparelho e se a falha atinge apenas o guia ou também a reprodução.
Esse roteiro evita duas trocas desnecessárias: mudar de player quando o provedor não entrega EPG, ou mudar de fonte quando o aparelho estava apenas com o fuso errado.
Quem é responsável por cada parte
- Fonte ou provedor: disponibiliza canais, identificadores e dados de programação corretos e atualizados.
- Player: lê os formatos compatíveis, atualiza os dados, faz a associação e apresenta a grade.
- Aparelho: fornece data, hora e fuso usados na exibição.
- Usuário: configura apenas acessos autorizados e evita compartilhar URLs ou credenciais do guia.
EPG não é a mesma coisa que metadados de filmes e séries
O EPG acompanha a linha do tempo de canais ao vivo. Já filmes e séries sob demanda usam outro tipo de catálogo, com capa, sinopse, elenco, temporadas e episódios vinculados ao título — não a um horário da grade. Um player pode enriquecer esse catálogo com bases como o TMDB, mas isso não preenche automaticamente a programação dos canais.
Resumo prático
- EPG é a agenda dos canais ao vivo; não é o vídeo.
- XMLTV é um dos formatos usados para distribuir essa programação.
- O tvg-id ajuda a ligar um canal da lista à entrada correta do guia.
- Guia vazio pode significar fonte ausente, identificador incompatível ou atualização com falha.
- Programação deslocada pelo mesmo número de horas costuma apontar para fuso ou relógio.
- O player organiza e exibe os dados, mas não consegue inventar informações que o provedor não enviou.
Já tem uma lista M3U ou um acesso Xtream Codes autorizado? O Nebula Player organiza seus canais, filmes e séries no iPhone e iPad, com perfis, favoritos e continue assistindo.
Conhecer o Nebula Player
Thiago Monteiro
Criador do Nebula Player
Desenvolvedor iOS e criador do Nebula Player. Escreve sobre como reprodutores de mídia, listas autorizadas e tecnologias de streaming funcionam na prática.
Artigos de Thiago MonteiroArtigos relacionados

IPTV é legal? O que você precisa saber
IPTV é legal ou ilegal? A resposta depende do que está sendo distribuído, não da tecnologia. Entenda o que diz a lei no Brasil, quem corre mais risco e como identificar um serviço irregular antes de assinar.

IPTV travando ou com buffering: por que acontece e como resolver
IPTV travando na melhor parte? Entenda o que é buffering, por quais caminhos o vídeo passa até a sua tela e como descobrir se o gargalo está no servidor, na internet, no Wi-Fi ou no aparelho — com um passo a passo prático para resolver.
Uma forma mais organizada de assistir sua IPTV.
Baixar para iOS