Camera2_frame_queue_dst_ops 구조체 참조

Camera2_frame_queue_dst_ops 구조체 참조

#include < camera2.h >

데이터 필드

정수(* dequeue_frame )(const struct Camera2_frame_queue_dst_ops *q, size_t 항목, size_t data_bytes, Camera_metadata_t **버퍼)
정수(* cancel_frame )(const struct Camera2_frame_queue_dst_ops *q, Camera_metadata_t *buffer)
정수(* enqueue_frame )(const struct Camera2_frame_queue_dst_ops *q, Camera_metadata_t *buffer)

상세 설명

프레임 출력 대기열 프로토콜:

프레임워크는 대기열과 해당 콘텐츠를 보유합니다. 시작 시 대기열은 비어 있습니다.

  1. 장치가 출력 메타데이터 프레임을 채울 준비가 되면 필요한 크기의 메타데이터 버퍼를 대기열에서 빼야 합니다.
  2. 그런 다음 메타데이터 버퍼를 채우고 enqueue_frame을 사용하여 프레임 대기열에 배치해야 합니다. 프레임워크는 프레임의 소유권을 갖습니다.
  3. 오류가 발생하거나 파이프라인을 플러시하라는 요청이 발생하거나 종료되는 경우 장치는 cancel_frame을 호출하여 영향을 받은 대기열에서 제외된 프레임을 프레임워크에 반환해야 합니다.

Camera2.h 파일의 263 번째 줄에 정의되어 있습니다.

현장 문서

int(* cancel_frame)(const struct Camera2_frame_queue_dst_ops *q, Camera_metadata_t *buffer)

재사용을 위해 큐에서 제거된 메타데이터 버퍼를 프레임워크에 반환합니다. 채워진 것으로 표시하지 마십시오. 오류가 발생하거나 내부 요청 대기열을 플러시할 때 사용합니다.

Camera2.h 파일의 278 번째 줄에 정의되어 있습니다.

int(* dequeue_frame)(const struct Camera2_frame_queue_dst_ops *q, size_t 항목, size_t data_bytes, Camera_metadata_t **버퍼)

프레임워크에서 채울 빈 메타데이터 버퍼를 가져옵니다. 새 메타데이터 버퍼에는 항목 수만큼의 메타데이터 항목을 위한 공간과 data_bytes 상당의 추가 저장 공간이 있습니다. 여기서 대기열에서 제외된 프레임은 cancel_frame 또는 enqueue_frame을 사용하여 프레임워크에 반환되어야 합니다.

Camera2.h 파일의 270 번째 줄에 정의되어 있습니다.

int(* enqueue_frame)(const struct Camera2_frame_queue_dst_ops *q, Camera_metadata_t *buffer)

완성된 메타데이터 프레임을 프레임 출력 큐에 배치합니다.

Camera2.h 파일의 284 번째 줄에 정의되어 있습니다.


이 구조체에 대한 문서는 다음 파일에서 생성되었습니다.