CameraCharacteristics.AvailableSessionKeys 属性

定义

返回相机设备作为捕获会话初始化的一部分可以传递的键子集 #getAvailableCaptureRequestKeys

public System.Collections.Generic.IList<Android.Hardware.Camera2.CaptureRequest.Key>? AvailableSessionKeys { [Android.Runtime.Register("getAvailableSessionKeys", "()Ljava/util/List;", "", ApiSince=28)] get; }
[<get: Android.Runtime.Register("getAvailableSessionKeys", "()Ljava/util/List;", "", ApiSince=28)>]
member this.AvailableSessionKeys : System.Collections.Generic.IList<Android.Hardware.Camera2.CaptureRequest.Key>

属性值

可在捕获会话初始化期间传递的密钥列表。 如果相机设备不支持此类键,则列表可以为 null。

属性

注解

返回相机设备作为捕获会话初始化的一部分可以传递的键子集 #getAvailableCaptureRequestKeys

此列表包含难以按帧应用的键,在捕获会话生存期内修改时可能会导致意外延迟。 典型示例包括需要耗时的硬件重新配置或内部相机管道更改的参数。 出于性能原因,我们建议客户端将其初始值作为其一部分 SessionConfiguration#setSessionParameters传递。 启用相机捕获会话后,建议避免从设置 SessionConfiguration#setSessionParameters 的初始值更改它们。 在捕获请求中仍可以控制会话参数,但客户端应注意并期望在应用程序期间出现延迟。 示例使用方案可能如下所示:

<ul><li>相机客户端首先通过android.hardware.camera2.CameraCharacteristics#getAvailableSessionKeys 查询会话参数密钥列表。</li li>><在触发捕获会话创建序列之前,必须使用与特定用例匹配的相应模板来生成CameraDevice#createCaptureRequest 捕获请求。</li li><>客户端应浏览会话参数列表,并检查列出的某些密钥是否与它们打算修改为第一个捕获请求的一部分的参数匹配。</li li>><如果没有此类匹配项,则可以将捕获请求传递为未修改。SessionConfiguration#setSessionParameters </li><li>如果匹配确实存在,客户端应更新相应的值并将请求SessionConfiguration#setSessionParameters 传递给 。</li li><>捕获会话初始化完成后,会话参数密钥列表可以继续用作发布或更新其他请求时的引用。 如前所述,最好避免对会话参数的进一步更改,但如果需要更新,客户端可能会在参数切换期间出现延迟/故障。</li></ul>

返回的列表不可修改,因此任何修改尝试都会引发 。UnsupportedOperationException

列表中仅列出每个键一次。 未定义键的顺序。

适用于 . 的 android.hardware.camera2.CameraCharacteristics.getAvailableSessionKeys()Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于