Streaming e IPTV
A televisão ao vivo pela internet emprestou o vocabulário de três lugares diferentes — a radiodifusão, a web, e um software de painel específico que virou padrão por acidente. Estas são as palavras que aparecem.
-
HLS
HTTP Live Streaming -
O protocolo de streaming da Apple, e o que quase tudo usa. O vídeo é cortado em segmentos curtos listados numa playlist de texto, e o player busca cada um em ordem por HTTP comum.
O HLS venceu porque não precisa de servidor especial: os segmentos são arquivos, a playlist é um arquivo, e qualquer servidor web entrega os dois. Ele tem suporte nativo em tudo nas plataformas da Apple e em quase todo lugar mais.
O desenho dele tem uma consequência que as pessoas encontram constantemente — não existe um arquivo de vídeo único para salvar. O que você está assistindo existe só como mil pedaços e um conjunto de instruções para buscá-los.
Veja também: ManifestoSegmentoTaxa de bits adaptativa
-
Manifesto
playlist, .m3u8 -
O arquivo de texto que lista de que um stream é feito. Um manifesto mestre lista os níveis de qualidade disponíveis; cada um deles aponta para um manifesto de mídia que lista os segmentos de verdade.
Abra um e são algumas dezenas de linhas: um cabeçalho, alguns parâmetros e endereços. Tudo o que você assiste está em outro lugar. Numa transmissão ao vivo, o player busca esse arquivo de novo a cada poucos segundos, porque ele cresce enquanto a transmissão continua.
Endereços de manifesto normalmente são assinados e têm prazo, e é por isso que um link que funcionava hoje de manhã frequentemente não aponta para nada à tarde.
-
Segmento
chunk, pedaço -
Um pedaço curto de um stream, tipicamente de dois a dez segundos, entregue como arquivo próprio. Uma hora de vídeo são centenas a milhares deles.
A segmentação é o que torna possível trocar de qualidade no meio da reprodução: o player simplesmente pede o próximo pedaço de outro nível de qualidade, e a mudança acontece numa fronteira em vez de ser uma interrupção.
É também o que faz baixar um stream ser uma reconstrução em vez de uma cópia. Cada segmento tem que ser buscado e depois escrito dentro de um único contêiner com um índice adequado — o passo que dá ao resultado uma barra de progresso que funciona.
-
Taxa de bits adaptativa
ABR -
Oferecer o mesmo conteúdo em vários níveis de qualidade e deixar o player se mover entre eles conforme a conexão muda. É por isso que os streams perdem nitidez em vez de parar.
O player mede a que velocidade os segmentos estão chegando e escolhe a qualidade mais alta que acredita conseguir sustentar. Quando a conexão aperta, ele desce um degrau, normalmente antes de o buffer secar.
Essa é a maior diferença entre assistir a um stream e baixar um arquivo. Um download quer a melhor versão e vai esperar; um stream prefere ficar mais borrado do que pausar.
Veja também: HLSBufferTaxa de bits
-
Buffer
-
Um player segurando alguns segundos de vídeo à frente do que você está assistindo, para que um engasgo curto da rede não se torne uma pausa. Quando você vê a palavra, o buffer acabou.
Um buffer maior atravessa mais instabilidade ao custo de demorar mais para começar e reagir mais devagar a uma troca de canal. Transmissões ao vivo o mantêm pequeno de propósito, e é por isso que são mais frágeis do que vídeo sob demanda.
Quando um canal de IPTV engasga, a causa quase sempre está em algum ponto entre o provedor e você — o servidor deles, a rota, a sua conexão. O mesmo app no mesmo aparelho reproduz um arquivo local da mesma taxa de bits sem uma falha, e essa é a forma mais rápida de distinguir os dois casos.
Veja também: Taxa de bits adaptativaIPTV
-
IPTV
-
Televisão entregue pela internet em vez de pelo ar, por cabo ou por satélite. Como palavra, descreve um método de entrega e não diz nada sobre quem tem direito de entregar o quê.
O que uma assinatura realmente é, na prática, é uma lista — uma playlist M3U, ou uma conta num painel — que dá nome aos canais e um endereço para cada um. O player transforma isso num guia de canais; ele não hospeda nem fornece nada.
O que é a parte importante tanto juridicamente quanto tecnicamente. Um app que reproduz IPTV não entrega canal nenhum, e se um determinado provedor tem o direito de carregar o que carrega é uma pergunta sobre esse provedor.
Veja também: Playlist M3UXtream CodesEPG
-
Playlist M3U
-
Uma lista em texto puro de nomes de canais e endereços de stream, e a forma mais comum de uma assinatura de IPTV ser entregue. Ela não contém vídeo nenhum.
Cada entrada é uma linha nomeando o canal — com logo, grupo e um identificador anexados por convenção — e uma linha dando o endereço dele. Nenhuma dessas convenções foi padronizada, então cada provedor escreve de um jeito um pouco diferente.
As listas de provedor cresceram muito além do que o formato previa: centenas de milhares de canais e centenas de megabytes de texto são coisa comum hoje, e um app que lê uma dessas para a memória antes de interpretá-la vai ser encerrado pelo iOS muito antes de terminar.
Veja também: IPTVXtream Codes
-
Xtream Codes
-
Um software de painel cuja API se tornou um padrão de fato. Em vez de um arquivo de playlist, você recebe um endereço de servidor, um usuário e uma senha, e o app pede ao painel os canais, filmes, séries e o guia.
A empresa por trás dele foi fechada em 2019; a API sobreviveu, porque milhares de provedores já tinham construído sobre ela e os clientes deles esperavam por ela. Software descrito como “compatível com Xtream” está implementando essa interface, não usando o produto daquela empresa.
Ele difere de uma playlist simples de dois jeitos úteis: o catálogo chega como dado estruturado em vez de uma lista plana, e o painel impõe um limite de conexões — e é por isso que um download e um canal ao vivo ao mesmo tempo podem derrubar um ao outro.
Veja também: IPTVPlaylist M3UEPG
-
EPG
guia eletrônico de programação -
A programação: o que está passando em cada canal agora, o que vem depois e o que passou antes. Entregue separadamente dos canais em si, normalmente como um arquivo XMLTV.
O guia é casado com os canais por um identificador que o provedor coloca em cada um. Quando esses identificadores estão faltando ou inconsistentes — o que é comum — os canais não mostram informação de programação, mesmo que os dados do guia estejam presentes e corretos.
Um guia completo de um provedor grande é, por si só, um download considerável, cobrindo dias de programação para milhares de canais.
Veja também: IPTVCatch-upXtream Codes
-
Catch-up
timeshift, arquivo -
Assistir a algo que já foi transmitido, pedindo ao servidor do provedor um horário passado de um canal. Só existe onde o provedor grava; nada fica guardado no seu aparelho.
Onde é oferecido, um app pode transformar um programa passado do guia num pedido por aquela janela daquele canal. Acervos típicos cobrem alguns dias.
É inteiramente uma capacidade do provedor. Um app não consegue acrescentar catch-up a um canal que não tem, e uma entrada no guia da semana passada não é prova de que a gravação existe.
-
DRM
gestão de direitos digitais -
Criptografia que só um software de reprodução licenciado consegue desfazer, usando chaves buscadas num servidor de licenças. FairPlay nas plataformas da Apple, Widevine no Android e na maioria dos navegadores da web.
Um stream protegido por DRM é criptografado de ponta a ponta, e a chave só é liberada para software que provou que vai obedecer às regras anexadas a ela — sem salvar, sem capturar, às vezes sem tela externa.
Isso não é uma dificuldade para ser contornada; é o mecanismo funcionando. Qualquer ferramenta que diga baixar um stream protegido por DRM está mentindo ou sobre o que ela faz, ou sobre o que o stream é.