語言

StreamConfigurationMap.GetHighSpeedVideoFpsRanges 方法

定義

取得支援的高速錄影 FPS 範圍清單。

[Android.Runtime.Register("getHighSpeedVideoFpsRanges", "()[Landroid/util/Range;", "")]
public Android.Util.Range[]? GetHighSpeedVideoFpsRanges();
[<Android.Runtime.Register("getHighSpeedVideoFpsRanges", "()[Landroid/util/Range;", "")>]
member this.GetHighSpeedVideoFpsRanges : unit -> Android.Util.Range[]

傳回

Range[]

支援的高速錄影 FPS 範圍陣列回傳範圍的上限保證大於或等於 120。

屬性

備註

取得支援的高速錄影 FPS 範圍清單。

當 CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO 支援 時 CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES,此方法將列出支援的高速影片 FPS 範圍配置。 應用程式接著 #getHighSpeedVideoSizesFor 可以用來查詢回傳 FPS 範圍中的可用大小。

為了啟用高速錄影,應用程式必須透過 建立一個有限制的建立高速擷取會話 CameraDevice#createConstrainedHighSpeedCaptureSession,並提交由 建立的 android.hardware.camera2.CameraConstrainedHighSpeedCaptureSession#createHighSpeedRequestList CaptureRequest 清單給此會話。 應用程式必須從此方法及 CaptureRequest#CONTROL_AE_TARGET_FPS_RANGE FPS range 從中 #getHighSpeedVideoFpsRangesFor 選擇視訊大小,以設定受限高速會話並產生高速請求清單。 例如,若應用程式打算進行高速錄影,可以選擇此方法報告的一個 FPS 範圍,查詢對應該 FPS 範圍 #getHighSpeedVideoSizesFor 的影片尺寸,並使用報告大小中的一個來建立高速擷取會話。 請注意,若使用多重輸出串流,應用程式必須從此方法中選擇一個獨特大小(例如,預覽串流與錄製串流必須大小相同)。 否則,高速會話建立會失敗。 一旦建立高速擷取會話,應用程式可透過 android.hardware.camera2.CameraConstrainedHighSpeedCaptureSession#createHighSpeedRequestList在錄製請求列表中設定 FPS 範圍。

此方法報告的 FPS 範圍將具有以下特性: <li>fpsMin 與 fpsMax 將是多個 30fps。</li><li fps>最低不會低於 30fps,fpsMax 不會低於 120fps。</li><li>至少有一個範圍會是固定的 FPS 範圍,其中 fpsMin == fpsMax。</li><li>每個固定的 FPS 範圍,會有一個對應的可變 FPS 範圍 [30, fps_max] 或 [60, fps_max]。 這類 FPS 範圍適合僅用於預覽的應用,應用程式不希望相機裝置的幀率總是高於顯示刷新率。 30fps 和 60fps 預覽率不會同時支援,且錄影率<相同。/李>

若 CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO 不支援此功能,此函式會回傳一個空陣列。

Java 文件 android.hardware.camera2.params.StreamConfigurationMap.getHighSpeedVideoFpsRanges()。

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

適用於