重新開機 AVStream 中的處理
如果下列任何條件成立,AVStream 就會停止處理:
在以針腳為中心的環境中,針腳上目前沒有可用的資料。
在以篩選為中心的環境中,至少有一個針腳,其中KSPIN_DESCRIPTOR_EX結構的Flags成員未設定KSPIN_FLAG_FRAMES_NOT_REQUIRED_FOR_PROCESSING,而且沒有等候處理的資料。 根據預設,不會設定此旗標。
不論畫面格可用性為何,迷你驅動程式的處理分派回呼常式都會傳回STATUS_PENDING。 請注意,處理分派可以是 AVStrMiniFilterProcess 或 AVStrMiniPinProcess,視迷你驅動程式實作 針腳中心處理 或 篩選中心處理而定。
當新資料抵達先前空白的佇列時,AVStream 會起始處理。 因此,如果迷你驅動程式的處理分派在相關聯的佇列已滿時傳回STATUS_PENDING,則永遠不會呼叫 minidriver 以繼續處理。 如果 minidriver 設定STATUS_PENDING,minidriver 必須呼叫 KsPinAttemptProcessing 或 KsFilterAttemptProcessing 才能繼續處理。
如果迷你驅動程式實際上不會處理資料,請勿從處理分派傳回STATUS_SUCCESS。 這會導致 AVStream 再次呼叫迷你驅動程式,導致 AVStream 與處理分派之間產生無限迴圈。