共用方式為


相片序列模式

相片序列模式可讓您擷取相片序列,以回應相機的單一相片點選。 在此模式中,擷取系統會持續將緩衝區傳送至相機驅動程式,以序列擷取相片。 此模式也允許擷取相片在相片點選之前的一段時間。

相片順序作業

如果能夠排序相片,數位相機驅動程式支援 KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOMODE 控制項。 擷取管線會藉由將 KS_VideoControlFlag_StartPhotoSequenceCapture 觸發程式傳送到相片串流,以啟動相片序列。 此時,驅動程式必須開始傳送擷取緩衝區。 擷取管線會藉由關閉 KS_VideoControlFlag_StopPhotoSequenceCapture 來停止相片序列,以觸發相片串流關閉。 針對每個完成的相片,新的緩衝區會向下傳送給驅動程式,以便擷取畫面格。

擷取管線具有相片序列模式的設定階段,其期間會設定特定相片序列會話所需的過去畫面數。 在設定階段,驅動程式必須指定其支援的過去相片框架數目上限。 此外,驅動程式也會指定支援所需數目過去畫面格所需的緩衝區數目。

延伸控制項 KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOTRIGGERTIME會降低使用者按一下相機應用程式中相片觸發程式的實際時間,以拍攝相片序列。 如果沒有這個時間,驅動程式就不知道當觸發程式到達 KS_VideoControlFlag_StartPhotoSequenceCapture 觸發程式時,要開始傳回畫面格的相片擷取。 使用此控制項時,驅動程式預期會傳回最接近所指定相片觸發時間的相片。

畫面格計數交涉

下列作業順序會設定相機驅動程式的相片模式和畫面計數。

  1. 應用程式會呼叫 API 來準備相片序列擷取的擷取系統和驅動程式。

  2. 擷取系統會將呼叫 Photo Mode 擴充屬性要求傳送給驅動程式, KSPROPERTY_CAMERACONTROL_EXTENDED_PHOTOMODE 旗標中設定KSCAMERA_EXTENDEDPROP_PHOTOMODE_SEQUENCE,以開始將驅動程式轉換成相片順序模式。

    1. 驅動程式會從應用程式獲得要求的歷程記錄畫面計數。 驅動程式必須傳回它能夠支援的歷程記錄框架計數,以及保存歷程記錄框架所需的緩衝區數目。

    2. 驅動程式必須使用 KsEdit的相片序列模式轉換呼叫,以緩衝區數目來更新針腳的配置器需求結構。

    3. 驅動程式會將其內部狀態變更為相片順序模式。

  3. 擷取系統會將針腳轉換為KSSTATE_RUN,並提供驅動程式要求相片序列模式的緩衝區數目。

控制支援需求

相機驅動程式必須支援下列擴充控制項,才能支援相片序列模式。