使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
camera3_stream_buffer结构参考
#include < camera3.h >
camera3_stream_buffer_t:
来自camera3流的单个缓冲区。它包括其父流的句柄、gralloc 缓冲区本身的句柄以及同步栅栏
缓冲区没有指定它是用于输入还是输出;这是由其父流类型以及缓冲区如何传递到 HAL 设备决定的。
文件camera3.h第1755行的定义。
该缓冲区的获取同步栅栏。在尝试读取或写入此缓冲区之前,HAL 必须等待此栅栏 fd。
框架可以设置为-1以指示该缓冲区不需要等待。
当 HAL 使用 process_capture_result() 将输出缓冲区返回到框架时, acquire_fence 必须设置为 -1。如果由于填充缓冲区时出错,HAL 从不等待 acquire_fence,则在调用 process_capture_result() 时,HAL 必须将缓冲区的release_fence 设置为框架传递给它的 acquire_fence。这将允许框架在重用缓冲区之前等待。
对于输入缓冲区,HAL 不得在 process_capture_request() 调用期间更改 acquire_fence 字段。
>= CAMERA_DEVICE_API_VERSION_3_2:
当 HAL 使用 process_capture_result() 将输入缓冲区返回到框架时, acquire_fence 必须设置为 -1。如果 HAL 由于错误而从不等待输入缓冲区获取栅栏,则同步栅栏的处理方式应与处理输出缓冲区的方式类似。
文件camera3.h第1800行的定义。
该缓冲区的释放同步栅栏。当向框架返回缓冲区时,HAL 必须设置此栅栏,或者写入 -1 以指示此缓冲区不需要等待。
对于输出缓冲区,必须在传递给 process_capture_result() 的 output_buffers 数组中设置栅栏。
<= CAMERA_DEVICE_API_VERSION_3_1:
对于输入缓冲区,必须通过 process_capture_request() 调用设置释放栅栏。
>= CAMERA_DEVICE_API_VERSION_3_2:
对于输入缓冲区,必须在传递给 process_capture_result() 的 input_buffer 中设置栅栏。
在发出此缓冲区的release_fence 信号后,HAL 不应再尝试访问此缓冲区,因为所有权已完全转移回框架。
如果指定了 -1 的栅栏,则该缓冲区的所有权将在调用 process_capture_result 时立即转回。
文件camera3.h第1827行的定义。
缓冲区的当前状态,camera3_buffer_status_t 值之一。框架不会将处于错误状态的缓冲区传递给 HAL。如果 HAL 无法填充缓冲区,则当使用 process_capture_result() 返回到框架时,必须将其状态设置为 CAMERA3_BUFFER_STATUS_ERROR。
文件camera3.h第1773行的定义。
该结构的文档是从以下文件生成的:
本页面上的内容和代码示例受内容许可部分所述许可的限制。Java 和 OpenJDK 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2023-12-01。
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"没有我需要的信息"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"太复杂/步骤太多"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"内容需要更新"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻译问题"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"示例/代码问题"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"其他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"易于理解"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"解决了我的问题"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"其他"
}]
{"lastModified": "\u6700\u540e\u66f4\u65b0\u65f6\u95f4 (UTC)\uff1a2023-12-01\u3002"}
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["没有我需要的信息","missingTheInformationINeed","thumb-down"],["太复杂/步骤太多","tooComplicatedTooManySteps","thumb-down"],["内容需要更新","outOfDate","thumb-down"],["翻译问题","translationIssue","thumb-down"],["示例/代码问题","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2023-12-01。"]]