使用無線電微調器的視訊擷取裝置
Microsoft Windows XP 和更新版本,以及 Microsoft DirectX 8.1 和更新版本提供包含 FM 無線電微調器的視訊擷取裝置支援。
具有 FM 微調器之裝置的視訊擷取迷你驅動程式應該支援 KSPROPERTY_TUNER_STATUS 屬性。 這可讓使用者模式用戶端擷取描述微調作業進度的 KSPROPERTY_TUNER_STATUS_S 結構。
Minidrivers 可以支援三種微調策略之一:
依 PLL 位移微調。
如果您的 FM 微調器硬體支援透過 PLL 位移進行微調,您的迷你驅動程式應該將KSPROPERTY_TUNER_MODE_CAPS_S結構的策略成員設定為KS_TUNER_STRATEGY_PLL。
如果您的 FM 微調器硬體未提供 PLL 支援,迷你驅動程式應該使用原生訊號強度指標來模擬 PLL 支援。 只有在 minidriver 指定支援KS_TUNER_STRATEGY_PLL策略時,才會啟用KsTvTune.ax中系統提供的 FM 微調邏輯。
依訊號強度微調。
如果 minidriver 將KSPROPERTY_TUNER_MODE_CAPS_S結構的 Strategy 成員設定為 KS_TUNER_STRATEGY_SIGNAL_STRENGTH, KsTvTune.ax 仍會嘗試使用 KSPROPERTY_TUNER_STATUS_S 結構的 PLLOffset 成員。 因此,這不是未來相容性的有效選項。
此外,minidriver 應該根據目前選取可接受的頻率,將KSPROPERTY_TUNER_STATUS_S結構的SignalStrength成員設定為 -1、0 或 1。 廠商決定 RSSI (RSSI) 或 decibel millivolt (高於或低於基準電壓的 dBmV) 層級,構成 FM 接收可接受的訊號。
迷你驅動程式手動執行的微調。
將KSPROPERTY_TUNER_MODE_CAPS_S結構的[策略] 成員設定為KS_TUNER_STRATEGY_DRIVER_TUNES,以控制 minidriver 中的微調邏輯。
在 FM 模式中,KsTvTune.ax 使用KSPROPERTY_TUNER_MODE_CAPS_S結構的 minidriver 指定的TuningGranularity成員,在兩端) (100 kHz 的 200-kHz 帶上逐步執行。 當 KsTvTune.ax搜尋整個 200 kHz 頻段,或迷你驅動程式判斷找到良好的訊號時,搜尋會停止,無論第一個情況。
如果 minidriver 一律指定 -1 或 1 的 PLLOffset 值,調整需要較長的時間。 在此情況下, KsTvTune.ax 重試重迭頻率範圍的微調邏輯。 minidriver 應該只在第一個微調要求上指定 -1 或 1 的 PLLOffset ,或者當微調程式在最佳訊號的八個步驟內時。 如需微調要求的詳細資訊,請參閱 辨識第一個微調要求。
微調程式一律會以中心頻率啟動,如應用程式要求,並在中心上方執行不超過 100 kHz。 不過,如果 PLLOffset 變成接近上限 100-kHz 限制的 1,則微調邏輯步驟超過 100-kHz 頻。
如果微調程式在上限範圍內找不到可接受的訊號,它會嘗試低於中心頻率、從中心下方 100 kHz 開始逐步執行,並在仍然找不到可接受的訊號時結束于中心頻率。 同樣地,如果 PLLOffset 變成接近中心頻率的 1,在最後返回中心頻率之前,調整超過中心頻率的步驟。
第一個微調要求上的 PLLOffset 成員值 -1 或 1 會導致 KsTvTune.ax 進入微調模式。 微調模式是由PLLOffset所指示方向KSPROPERTY_TUNER_MODE_CAPS_S的TuningGranularity成員所指定的步驟間隔快速連續微調要求所組成。
KsTvTune.ax 在八個微調步驟增加或減少頻率後,停止其微調嘗試。 在 KsTvTune.ax處於微調模式之後,如果PLLOffset將方向從 -1 變更為 1 或 1 到 -1,或變成 0,則微調要求會被視為成功。 微調和搜尋到該時間點的 200 kHz 帶停駐點。
不過,如果 PLLOffset 大於 1 或小於 -1,則微調不會啟動或放棄。 微調模式與透過中心頻率的 200 kHz 頻段無關,雖然兩者都使用 TuningGranularity 中指定的步驟大小 (因此,請小心一律傳回 -1..1) 的 PLLOffset 。