Freigeben über


Erkennen der ersten Optimierungsanforderung

Einige Tuner erfordern das Schwenken um eine Frequenz, um gültige Signalstärke/PLL-Informationen abzurufen, sodass ein Minidriver möglicherweise erkennen muss, wann KsTvTune.ax eine erste Optimierungsanforderung stellt.

Jede Optimierungsanforderung ist tatsächlich ein Paar von Anforderungen an den Minidriver. Der Minidriver empfängt zuerst einen Satz KSPROPERTY_TUNER_FREQUENCY Anforderung, gefolgt von einem oder mehreren Abrufen KSPROPERTY_TUNER_STATUS Anforderungen.

Bei der ersten Optimierungsanforderung kommt es zu einer Verzögerung zwischen der Setanforderung und der ersten Abrufenanforderung. Der Minidriver legt die Verzögerungslänge in Millisekunden im SettlingTime-Member der KSPROPERTY_TUNER_MODE_CAPS_S-Struktur fest. Die Get-Anforderung wird alle fünf Millisekunden wiederholt, während der Busy-Member der KSPROPERTY_TUNER_STATUS_S-Struktur nonzero ist, bis zu fünf Versuche.

KsTvTune.ax betrachtet eine Optimierungsanforderung erst dann als abgeschlossen, wenn sie eine nichtbusige status vom Gerät empfängt, oder wenn das Gerät nach dem vom SettlingTime-Member der KSPROPERTY_TUNER_MODE_CAPS_S-Struktur angegebenen Intervall noch 20 Millisekunden ausgelastet ist, je nachdem, was zuerst kommt.

Danach gibt es für jede Optimierungsanforderung im Feinabstimmungsmodus ein Intervall von fünf Millisekunden zwischen der Setanforderung und der ersten Abrufenanforderung.

Wenn KsTvTune.ax nach einer ersten Anforderung mindestens einmal wiederholen soll, geben Sie immer den PLLOffset-Wert 1 für die erste Optimierungsanforderung zurück. KsTvTune.ax versucht sofort den nächsten Schritt höher, wie vom TuningGranularity-Member der KSPROPERTY_TUNER_MODE_CAPS_S-Struktur angegeben. Zu diesem Zeitpunkt können Sie einen PLLOffset-Wert von größer als 1 oder kleiner als -1 zurückgeben, wenn Ihr Minidriver feststellt, dass kein Signal vorhanden ist, oder einen PLLOffset-Wert von -1 oder 0, wenn Ihr Minidriver feststellt, dass das Signal gut ist.