Reconnaissance de la première demande de paramétrage
Certains tuners nécessitent un remorquage autour d’une fréquence pour obtenir des informations valides sur la puissance du signal/la PLL. Par conséquent, un minidriver peut avoir besoin de reconnaître quand KsTvTune.ax effectue une demande de réglage initiale.
Chaque demande de réglage est en fait une paire de requêtes adressées au minidriver. Le minidriver reçoit d’abord un ensemble KSPROPERTY_TUNER_FREQUENCY demande suivie d’une ou plusieurs demandes get KSPROPERTY_TUNER_STATUS .
Lors de la première demande de paramétrage, il existe un délai entre la demande définie et la première demande get. Le minidriver définit la longueur du délai en millisecondes dans le membre SettlingTime de la structure KSPROPERTY_TUNER_MODE_CAPS_S . La requête get est répétée toutes les cinq millisecondes tandis que le membre Busy de la structure KSPROPERTY_TUNER_STATUS_S est différent de zéro, jusqu’à cinq tentatives.
KsTvTune.ax considère qu’une demande d’optimisation n’est pas terminée tant qu’elle n’a pas reçu un status non actif de l’appareil, ou si l’appareil est toujours occupé 20 millisecondes après l’intervalle spécifié par le membre SettlingTime de la structure KSPROPERTY_TUNER_MODE_CAPS_S, selon la première éventualité.
Par la suite, pour chaque demande de réglage en mode de réglage précis, il y aura un intervalle de cinq millisecondes entre la demande définie et la première demande get.
Si vous souhaitez KsTvTune.ax réessayer au moins une fois après une demande initiale, retournez toujours une valeur PLLOffset de 1 lors de la première demande de paramétrage. KsTvTune.ax tente immédiatement l’étape suivante plus haut, comme spécifié par le membre TuningGranularity de la structure KSPROPERTY_TUNER_MODE_CAPS_S . À ce stade, vous pouvez retourner une valeur PLLOffset supérieure à 1 ou inférieure à -1 si votre minidriver détermine qu’il n’y a aucun signal, ou une valeur PLLOffset de -1 ou 0 si votre minidriver détermine que le signal est correct.