語言

CaptureRequest.ControlSettingsOverride 屬性

定義

想要的 CaptureRequest 設定會覆蓋某些鍵值的提前套用,讓它們能更早生效。

[Android.Runtime.Register("CONTROL_SETTINGS_OVERRIDE", ApiSince=34)]
public static Android.Hardware.Camera2.CaptureRequest.Key ControlSettingsOverride { get; }
[<Android.Runtime.Register("CONTROL_SETTINGS_OVERRIDE", ApiSince=34)>]
static member ControlSettingsOverride : Android.Hardware.Camera2.CaptureRequest.Key

屬性值

想要的 CaptureRequest 設定會覆蓋某些鍵值的提前套用,讓它們能更早生效。

屬性

備註

想要的 CaptureRequest 設定會覆蓋某些鍵值的提前套用,讓它們能更早生效。

有些 CaptureRequest 金鑰可以在 CaptureRequest 內的控制項不需同時生效時,比其他金鑰更早套用。 其中一個例子是 Zoom。 變焦可以在相機管線的後期階段應用。 一旦相機裝置收到 CaptureRequest,就能將請求的縮放值套用到先前已在流程中的請求上,從而提升縮放延遲。

此鍵在擷取結果中的值反映該擷取控制是否被較新的請求「覆蓋」。 這表示如果擷取請求開啟了設定覆寫,先前請求的擷取結果將包含 ZOOM 的鍵值。 另一方面,如果擷取請求的設定覆蓋是開啟的,但所有較新的請求都關閉了,那麼擷取結果中的該鍵值會關閉,因為這個擷取不會被較新的擷取覆蓋。 在下方兩個範例中,擷取結果欄位說明了不同情境下的設定覆蓋值。

Camera session created
Request 1 (zoom=1.0x, override=ZOOM) ->
Request 2 (zoom=1.2x, override=ZOOM) ->
Request 3 (zoom=1.4x, override=ZOOM) ->  Result 1 (zoom=1.2x, override=ZOOM)
Request 4 (zoom=1.6x, override=ZOOM) ->  Result 2 (zoom=1.4x, override=ZOOM)
Request 5 (zoom=1.8x, override=ZOOM) ->  Result 3 (zoom=1.6x, override=ZOOM)
                                     ->  Result 4 (zoom=1.8x, override=ZOOM)
                                     ->  Result 5 (zoom=1.8x, override=OFF)

應用程式可以開啟設定覆寫並正常使用 Zoom 功能。 範例顯示後續的縮放值(1.2x、1.4x、1.6x 和 1.8x)會覆蓋先前請求(#1、#2、#3 和 #4)的縮放值(1.0x、1.2x、1.4x 和 1.8x)。

應用程式必須確保設定覆寫不會干擾使用者旅程,避免同時對 CaptureRequest 中所有控制項套用於所請求的輸出目標。 例如,若應用程式使用 CameraCaptureSession#capture 擷取靜態影像,且重複請求立即透過覆寫設定不同的縮放值,則飛行中靜態擷取的縮放值可能會意外被覆寫。

因此強烈建議在拍攝靜態/連拍時關閉設定覆寫,當只有重複的觀景器請求且沒有飛行中靜態或連拍時再開啟。

Request 1 (zoom=1.0x, override=OFF)
Request 2 (zoom=1.2x, override=OFF)
Request 3 (zoom=1.4x, override=ZOOM)  -> Result 1 (zoom=1.0x, override=OFF)
Request 4 (zoom=1.6x, override=ZOOM)  -> Result 2 (zoom=1.4x, override=ZOOM)
Request 5 (zoom=1.8x, override=OFF)   -> Result 3 (zoom=1.6x, override=ZOOM)
                                      -> Result 4 (zoom=1.6x, override=OFF)
                                      -> Result 5 (zoom=1.8x, override=OFF)

這個例子顯示:應用程式「逐步進入」設定會覆寫,方法是將控制項設為 ZOOM。 在範例中,請求 #3 啟用了 Zoom 設定的覆蓋。 由於攝影機裝置可將變焦加速1幀,請求#2的輸出具有1.4倍縮放,該值在請求#3中指定;應用程式會透過將控制鍵設為關閉來「逐步退出」設定覆寫。 在範例中,請求 #5 將覆寫改為關閉。 由於請求 #4 的縮放會在結果 #3 生效,結果 #4 的縮放會保持不變,直到結果 #5 有新值生效

可能的值:關閉;ZOOM

此裝置可用值:android.control.available設定覆蓋

可選性 - 此鍵值在某些裝置上可能是空值。

Android 參考資料。android.hardware.camera2.CaptureRequest.CONTROL_SETTINGS_OVERRIDE

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於