Override della frequenza

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation anziché DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

Un notevole sforzo è stato speso per garantire che le frequenze di trasmissione e le assegnazioni standard di colore siano corrette per ogni paese/area geografica. Anche in questo caso, ci saranno situazioni in cui le tabelle di frequenza non sono sufficienti, contengono errori o diventano obsoleti. Per risolvere questo problema, le frequenze elencate nelle tabelle di frequenza del filtro TV Tuner possono essere sostituite in modo selettivo usando la chiave del Registro di sistema seguente:

HKEY_LOCAL_MACHINE\Software\Microsoft\Servizi \di sistema TVTVAutoTune\TS0-1

Nota

A partire da Windows 7, la chiave del Registro di sistema reindirizzata seguente viene usata per le applicazioni x86 in esecuzione in versioni x64 di Windows:

 

HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Servizi \di sistema TVTVAutoTune\TS0-1

Gli overridi di frequenza vengono raggruppati in spazi di ottimizzazione definiti dall'applicazione, identificati da numero. Nell'esempio seguente viene illustrato un override di esempio:

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

In questo caso, "TS0-1" indica l'ottimizzazione dello spazio 0 per le frequenze del cavo. Il primo numero identifica lo spazio di ottimizzazione. Il secondo numero è 0 per le frequenze di trasmissione o 1 per le frequenze del cavo.

La sottochiave denominata "12" sostituisce il valore di frequenza per la frequenza in corrispondenza dell'indice 12 nella tabella di frequenza corrente. Il valore della sottochiave è un DWORD che specifica la frequenza in Hertz (Hz). In questo esempio la frequenza è impostata su 67,25 MHz. Gli overridi possono essere definiti per qualsiasi numero di canale compreso tra 1 e 999, inclusivo. Se l'hardware di ottimizzazione non supporta una determinata frequenza, la richiesta di ottimizzazione avrà esito negativo.

Questo meccanismo può essere usato anche per creare nuovi numeri di canale all'esterno dell'intervallo esistente nella tabella di frequenza. Il metodo IAMTuner::ChannelMinMax restituirà l'intervallo di canali esteso. Ad esempio, se l'intervallo di canali originale è stato compreso tra 1 e 158 e un override del canale "200" viene aggiunto al Registro di sistema, il metodo ChannelMinMax restituirà 200 come canale massimo. In questo caso, i numeri di canale nell'intervallo compreso tra 159 e 199 non avranno frequenze assegnate a loro, pertanto eventuali richieste di ottimizzazione in tale intervallo avranno esito negativo automaticamente.

Il metodo IAMTuner::p ut_TuningSpace consente all'applicazione di scegliere quale set di override e informazioni di ottimizzazione per l'uso. I numeri di spazio di ottimizzazione sono arbitrari. È responsabilità dell'applicazione mantenere la relazione tra lo spazio di ottimizzazione e la tabella di frequenza. L'approccio più semplice consiste nell'usare il codice paese/area geografica come numero di spazio di ottimizzazione. Quindi, ogni volta che l'applicazione passa a un nuovo codice paese/area geografica, passa anche allo stesso spazio di ottimizzazione (in tale ordine).

Ottimizzazione tv analogica internazionale