camera2_frame_queue_dst_ops 구조체 참조

camera2_frame_queue_dst_ops 구조체 참조

#include < camera2.h >

데이터 필드

int(*  dequeue_frame )(const struct camera2_frame_queue_dst_ops *q, size_t entries, size_t data_bytes, camera_metadata_t **buffer)
 
int(*  cancel_frame )(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer)
 
int(*  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 FILE의 278 행에 정의가 있습니다.

int(* dequeue_frame)(const struct camera2_frame_queue_dst_ops *q, size_t entries, size_t data_bytes, camera_metadata_t **buffer)

프레임워크에서 채울 빈 메타데이터 버퍼를 가져옵니다. 새 메타데이터 버퍼에는 메타데이터 항목 수와 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 FILE의 284 번 행에 정의되어 있습니다.


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