Capítulo 2. Reprodução de TV digital

Configurações para TV Digital

Enquanto as funcionalidades básicas são suficientemente úteis para interessados em uma interface simplista e poderosa de um reprodutor multimídia, a melhor funcionalidade no Kaffeine é no seu uso como uma interface gráfica GUI para assistir e gravar programas de TV digital.

Desde a versão 2.0 do Kaffeine o suporte a TV digital utiliza a biblioteca libdvbv5 e foi estendido para suportar padrões mais modernos de TV digital, como DVB-T2 e ISDB-T, este último utilizado no Sistema Brasileiro de Televisão Digital (SBTVD). Estender seu suporte para novos padrões agora é mais simples. Além dico, como utiliza a API DVB versão 5 do Linux® o Kaffeine suporta dispositivos capazes de implementar múltiplos padrões de TV no mesmo produto.

Ajustar as configurações de TV no Kaffeine é tão simples como abrir o item Televisão da barra de menu e selecionar a opção Configurar televisão. Uma janela será aberta para solicitar os parâmetros a serem utilizados:

Configuração de TV - Opções Gerais

Configurações gerais para TV digital

O menu Opções Gerais permite ajustar as configurações que são independentes do dispositivo.

A Pasta de gravações configura a localização onde as gravações dos programas de TV serão armazenados.

A opção Arquivo xmltv (opcional) permite especificar um arquivo contendo o guia de programação que será gerado por um programa externo. Quando esta opção é selecionada, você provavelmente irá também marcar a opção Desabilitar decodificação do Guia de Programação nas tabelas do MPEG-TS.

A opção Desabilitar decodificação do Guia de Programação nas tabelas do MPEG-TS desabilita a obtenção de dados do Guia de Programação (EPG) pelo sinal de TV recebido. Use esta opção para reduzir a carga na CPU, se a emissora não enviar informações confiáveis nos dados do EPG.

A pasta do deslocamento de tempo é utilizada em conjunto com o botão de pausa () da tela do reprodutor de media. Quando o botão é pressionado, um arquivo com deslocamento de tempo é armazenado na localização apontada por esta opção do menu.

As opções Margem inicial e Margem final são utilizadas para configurar algo como uma margem de segurança nas gravações, de forma a prevenir a perda do início ou do final do programa, visto que as marcações de tempo do guia de programação podem não ser precisas. Assim, as gravações na realidade iniciam alguns minutos antes do Início do programa, definido no Guia de programação. O valor exato de antecedência na gravação é definido pela Margem inicial. O Kaffeine estende o horário final da gravação conforme o valor definido na Margem final.

A opção Estilo de nome para gravações é utilizada para definir como o Kaffeine irá denominar um programa gravado. Diversas macros podem ser utilizadas para definir dinamicamente o nome da gravação:

  • %title - Título do programa, conforme visto nos menus Guia de programação e na Agenda de gravações;

  • %day, %month, %year, %hour, %min, %sec - Campos da marcação de tempo que representam o horário em que o Kaffeine iniciará a gravação do programa;

  • %channel - Nome do canal que está transmitindo o programa.

A opção Ação após concluir gravação é utilizada para configurar um comando opcional a ser executado quando o Kaffeine termina de gravar um programa.

Pressionando a opção Atualizar arquivo de busca pela Internet faz com que o Kaffeine cheque se um novo arquivo com nova definição de canais está disponível no Site do KDE.

O Kaffeine usa um arquivo chamado scanfile.dvb para armazenar a lista de canais de TV digital conhecidos por cidade e país. Este arquivo é mantido em sincronia com a árvore de desenvolvimento do dtv-scan-tables, mantido pela comunidade LinuxTV. Para mais detalhes, favor ver a página wiki do dtv-scan-tables.

Quando o botã́o é pressionado, Kaffeine irá descarregar a última versão do arquivo com definições de canais e armazenar dentro da área local específica do usuário, substituindo quaisquer conteúdos de uma versão anterior.

Favor notar que, para usar as novas definições, é necessário fechar o diálogo de configuração de TV e reabrir.

A opção Editar arquivo de busca permite editar o arquivo, o que pode ser útil para adicionar um novo conjunto de canais, enquanto o arquivo da Internet não é atualizado. Se você necessitar usar essa opção, favor considerar enviar uma atualização para a árvore dtv-scan-tables , de forma que outros possam também beneficiarem-se das novas definições de canal.

A opção Usar a codificação ISO 8859-1 ao invés de ISO 6937 permite selecionar a codificação padrão a ser utilizada em mensagens no stream MPEG-TS que não definam explicitamente uma codificação. Se não selecionado, o padrão é utilizar a codificação definida na norma ISO-6937. Caso selecionado, o padrão é utilizar a norma ISO 8859-1. No Brasil, essa normalmente deve ser selecionada.

A opção Criar arquivo de informações para acompanhar gravações EPG habilita a gravação de arquivos auxiliares contendo o conteúdo do guia de programação para gravações realizadas por meio do Guia de programação.

Obtenção de dados para o Guia de Programação (EPG)

A maioria das emissoras de TV digital enviam um guia de programação codificado dentro do canal em MPEG-TS. No entanto, algumas destas emissoras usam codificações não padronizadas para tais informações. Por exemplo no Reino Unido, canais HD possuem guias codificados em formato proprietário. Outras emissoras simplesmente não preenchem as tabelas de EPG, ou as informações contidas nelas não são confiáveis.

Desde o Kaffeine 2.0.17, é possível desabilitar o processamento do guia de programação contido nos canais, usando um programa externo para obtê-los. Para desabilitar, apenas marque a opção Desabilitar decodificação do Guia de Programação nas tabelas do MPEG-TS. Você poderá então usar um programa externo para obtê-lo, usando a opção Arquivo xmltv (opcional) para especificar o nome do arquivo com o guia. O arquivo deverá estar no formato XMLTV, conforme descrito em seu DTV. Veja XMLTV File format para mais informações.

Quando o Kaffeine está configurado para usar arquivo XMLTV, irá automaticamente detectar mudanças nele. Quando tal mudança acontecer, irá tentar abrir e processar seu conteúdo, atualizando o EPG de acordo com os novos dados.

Deve ser notado que os arquivos XMLTV possuem uma tabela que associa sua representação interna de canais com o nome de canal esperado nos dados enviados pela emissora. O Kaffeine irá ler os dados EPG apenas se os canais do arquivo corresponderem a um nome na lista de canais do Kaffeine. Então, você deve garantir que os nomes no arquivo correspondem aos esperados. Se não houver correspondência, você pode utilizar um editor de arquivos xml em linha de comando, de forma a adicionar a informação de canal faltante.

Por exemplo, se você tiver um programa de obtenção de guia de programação no formato xmltv que esteja gerando um arquivo denominado original_xmltv_file.xmltv, você pode usar o programa xmlstarlet para incluir as associações de nomes de canal faltantes. Assim, se você desejar associar um canal referido no XMLTV como channel.foo.ukcom um canal que no Kaffeine é conhecido como FOO, você pode rodar o seguinte script:

channel="xmltv.channel.pt"
name="DVB_CHANNEL"
xmlstarlet ed \
        -s "tv/channel[@id='$channel']" -t elem -n display-name \
        -v "$name" original_xmltv_file.xmltv > new_xmltv_file.xmltv
mv new_xmltv_file.xmltv /tmp/new_xmltv_file.xmltv

Então, o Kaffeine deve ser configurado para usar o novo arquivo/tmp/new_xmltv_file.xmltv.

Configurando origens para TV digital

Configuração de TV

As abas de Dispositivo possuem configurações por dispositivo. Geralmente, selecionando o país e a cidade na caixa de seleção Origem (ou selecionando busca automática) é suficiente para dispositivos de TV não satelitais. O mesmo ocorre em dispositivos que suportem múltiplos padrões de TV. Nestes dispositivos, é necessário configurar a Origem para cada padrão de TV:

Configuração de canais

A opção Tempo de espera do sintonizador especifica a quantidade de tempo que a busca de canais irá esperar para obter sintonia. Usualmente, o padrão é suficiente para a maior parte dos dispositivos, mas se o dispositivo levar muito tempo para travar no canal, este valor pode ser aumentado.

O Nome especifica o nome associado com a origem que irá aparecer no item Televisão da barra de menu e a opção Canais, para o painel de ajustes.

Dispositivos para Satélite

A configuração para dispositivos satelitais (DVB-S e DVB-S2) são mais complexas, pois diferentes arranjos no sistema satelital são possíveis. Além nisso, nestes sistemas, é usual que o dispositivo alimente com energia um amplificador localizado no prato do satélite - chamado LNBf - por meio de uma tensão DC.

Além disso, como sistemas satelitais utilizam banda larga e aceitam sinais de diferente polaridades, é comum o uso de um protocolo - chamado DiSEqC - de forma a selecionar a faixa de canais a ser recebidas.

O primeiro passo é ensinar o Kaffeine a respeito da configuração dos satélites via a caixa de seleção Configuração:

Configuração de dispositivos para Satélite

Os seguintes são possíveis:

  • Chave DiSEqC - O cabeamento da antena está conectado a uma chave DiSEqC ou o LNBf requer comandos DiSEqC para selecionar a faixa de canais. Esta é a configuração mais comum. Permite utilizar até 4 satélites conectados ao mesmo tempo, cada um com o seu próprio prato. Fara cada satélite, é necessário ajustar a configuração do LNBf que aponta para o respectivo satélite.

  • Rotor USALS - O cabeamento da antena está conectado a um prato único com um rotor USALS, controlado via DiSEqC. Múltiplos satélites podem ser configurados, pois o rotor irá alterar a posição do prato quando um satélite diferente é escolhido. Você precisará especificar a posição do prato (latitude, longitude).

  • Rotor de posições - O cabeamento da antena está conectado a um prato único com um rotor com um conjunto pré-fixado de posições, controlado via DiSEqC. Múltiplos satélites podem ser configurados, pois o rotor irá alterar a posição do prato quando um satélite diferente é escolhido. Você precisará especificar a posição do prato (latitude, longitude).

  • Desabilitar DiSEqC - O cabeamento da antena está conectado a um prato sem nenhum elemento que suporte DiSEqC. Esta configuração é tipicamente utilizada em configurações de LNBf multiponto (bandstacked), onde todos os canais estão presentes ao mesmo tempo nos sinais vindo no cabeamento da antena.

Em um sistema satelital típico, o LNBf utiliza a voltagem recebida para energizá-lo para selecionar entre polarização vertical ou circular anti horária, para voltagem mais baixa (13V) ou para polarização horizontal ou circular horária. No entanto, devido a perdas no cabeamento, algumas vezes o LNBf não entende a voltagem mais alta, e vários canais não irão sintonizar ou sintonizarão de forma errada. Então, alguns dispositivos oferecem a opção de aumentar a tensão para valores maiores (14V ou 19V). Esta configuração é habilitada por meio da opção Use voltagem mais alta no LNBf. Três valores são possíveis:

  • tri-state - Não envia comandos para o dispositivo ajustar o nível de voltagem. Este é o padrão.

  • não selecionado - Usa valores normais (13V/18V) para a tensão DC. Apenas selecione em dispositivos que aceitem ajustar a tensão.

  • selecionado - Usa valores mais altos (14V/19V) para a tensão DC. Apenas selecione em dispositivos que aceitem ajustar a tensão.

Configurações sem rotor

Quando as opções Chave DiSEqC ou Desabilitar DiSEqC são utilizadas, o primeiro passo é configurar o satélite que será usado como origem do sinal, por meio da caixa de seleção à direita. Com uma chave DiSEqC, é possível selecionar até 4 origens, cada uma com seu próprio LNBf. Apos configurar a(s) origem(ns), para cada satélite, pressione o botão correspondente de configurações do LNBf para abrir uma janela que permitirá selecionar o tipo do LNBf que está no prato correspondente a origem do sinal:

Configuração de LNBf

Configurações com rotor

Quando um rotor é utilizado, existe apenas um único LNBf que é compartilhado por múltiplos satélites. Assim, o próximo passo é selecionar o tipo de LNBf por meio do diálogo Configurações do LNBf.

Para rotor USALS, o posicionamento é feito por meio da posição do satélite (latitude, longitude). Assim, apenas selecione os satélites que serão utilizados por meio da caixa de seleção e pressionar o botão Satélite.

Para rotor de posições, o posicionamento é feito por meio de uma posição numerada pré-configurada. Assim, apenas selecione a posição do satélite na caixa de seleção numérica à esquerda e o satélite por meio da caixa de seleção à direita e pressione o botão Adicionar Satélite.

Se um satélite for adicionado por engano, selecione o satélite e pressione o botão Remover Satélite para removê-lo.

Configurações de canal para TV digital

Após pressionar o botão OK, a próxima etapa é realizar a busca por canais de TV digital, utilizando o item Televisão da barra de menu, e selecionar a opção Canais para abrir o painel de ajustes:

Iniciar busca

Se mais de um padrão for suportado, a caixa de seleção Origem irá permitir que seja selecionado aquele que será utilizado na busca de canais. Não esqueça de conectar o dispositivo no cabo de antena correspondente ao padrão que será utilizado.

Quando o Kaffeine identifica um canal, ele interpreta uma tabela do MPEG-TS chamada Network Information Table (NIT), que contém informações relativas aos canais utilizando outros parâmetros de sintonia transmitidos pelo provedor. Em certas redes, é possível que tais parâmetros estejam armazenados em mais de uma tabela NIT (referidas como outras redes). Isto é mais comum em alguns sistemas de TV a cabo e satelitais. Selecionando procurar transponders de outras redes, o Kaffeine é instruído a esperar e processar todas as outras tabelas NIT, o que poderá fazê-lo encontrar mais canais, com o custo de levar muito tempo a mais para completar o processo de busca por canais.

A operação de busca de canais é iniciada pressionando o botão Iniciar busca. Uma vez concluída a operação, os canais descobertos aparecerão no lado direito da imagem. Esses canais podem ser copiados para o lado esquerdo pressionando o botão Adicionar filtrado. É possível verificar os parâmetros de sintonia dos canais do lado esquerdo, pressionando o botão Editar. Alguns parâmetros podem ser ajustados na janela que aparecerá.

Editar canal

Uma vez que os canais de TV sejam armazenados, assisti-los é tão simples quanto pressionar o botão TV digital na tela principal: