Compartilhar via


Substituições de frequência

[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

Foi gasto um esforço significativo para garantir que as frequências de difusão e as atribuições padrão de cores estejam corretas para cada país/região. Mesmo assim, haverá situações em que as tabelas de frequência não são suficientes, contêm erros ou se tornam obsoletas. Para resolver esse problema, as frequências listadas nas tabelas de frequência do filtro sintonizador de TV podem ser substituídas seletivamente usando a seguinte chave do Registro:

HKEY_LOCAL_MACHINE\Software\Microsoft\Serviços do Sistema de\ TVTVAutoTune\TS0-1

Observação

A partir do Windows 7, a seguinte chave do Registro redirecionada é usada para aplicativos x86 em execução em versões x64 do Windows:

 

HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Serviços do Sistema de\ TVTVAutoTune\TS0-1

As substituições de frequência são agrupadas em "espaços de ajuste" definidos pelo aplicativo, que são identificados por número. O exemplo a seguir mostra uma substituição de exemplo:

HKEY_LOCAL_MACHINE\Software\Microsoft\TV System Services\TVAutoTune\TS0-1
"12"=dword:04022750

Nesse caso, "TS0-1" indica o Espaço de Ajuste 0 para frequências de cabo. O primeiro número identifica o espaço de ajuste. O segundo número é 0 para frequências de difusão ou 1 para frequências de cabo.

A subchave chamada "12" substitui o valor de frequência da frequência no índice 12 na tabela de frequência atual. O valor da subchave é um DWORD que especifica a frequência em Hertz (Hz). Neste exemplo, a frequência é definida como 67,25 MHz. As substituições podem ser definidas para qualquer número de canal no intervalo de 1 a 999, inclusive. Se o hardware de ajuste não der suporte a uma determinada frequência, a solicitação de ajuste falhará.

Esse mecanismo também pode ser usado para criar novos números de canal fora do intervalo existente na tabela de frequência. O método IAMTuner::ChannelMinMax retornará o intervalo de canais estendido. Por exemplo, se o intervalo de canais original for de 1 a 158 e uma substituição de canal de "200" for adicionada ao registro, o método ChannelMinMax retornará 200 como o canal máximo. Nesse caso, os números de canal no intervalo de 159 a 199 não terão nenhuma frequência atribuída a eles, portanto, todas as solicitações de ajuste nesse intervalo falharão automaticamente.

O método IAMTuner::p ut_TuningSpace permite que o aplicativo escolha qual conjunto de substituições e informações de ajuste fino usar. Os números de espaço de ajuste são arbitrários. É responsabilidade do aplicativo manter a relação entre o espaço de ajuste e a tabela de frequência. A abordagem mais simples é usar o código de país/região como o número de espaço de ajuste. Em seguida, sempre que o aplicativo alterna para um novo código de país/região, ele também alterna para o mesmo espaço de ajuste (nessa ordem).

Ajuste internacional de TV analógica