컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
camera_device_ops 구조체 참조
#include < camera.h >
|
정수(* | set_preview_window )( 카메라_장치 구성 *, 미리보기_스트림_ 옵스 구성 *창) |
|
무효의(* | set_callbacks )(구조체 카메라_장치 *, 카메라_알림_콜백 알림 _cb , 카메라_데이터_콜백 데이터 _cb , 카메라_데이터_타임 스탬프_콜백 데이터_cb_timestamp , 카메라_ 요청_메모리 get_memory , 무효 *사용자) |
|
무효의(* | enable_msg_type )(카메라_장치 구조 *, int32_t msg_type ) |
|
무효의(* | disable_msg_type )(카메라_장치 구조 *, int32_t msg_type ) |
|
정수(* | msg_type_enabled )(카메라_장치 구조 *, int32_t msg_type ) |
|
정수(* | start_preview )( 카메라_장치 구성 *) |
|
무효의(* | stop_preview )( 카메라_장치 구성 *) |
|
정수(* | 미리 보기_활성화 )( 카메라_장치 구조 *) |
|
정수(* | store_meta_data_in_buffers )( 카메라_장치 구조 *, int 활성화) |
|
정수(* | start_recording )( 카메라_장치 구성 *) |
|
무효의(* | stop_recording )( 카메라_장치 구조 *) |
|
정수(* | 기록 _활성화 )( 카메라_장치 구조 *) |
|
무효의(* | release_recording_frame )( 카메라_장치 구조 *, const void *불투명) |
|
정수(* | auto_focus )( 카메라_장치 구조 *) |
|
정수(* | cancel_auto_focus )( 카메라_장치 구조 *) |
|
정수(* | take_picture )( 카메라_장치 구조 *) |
|
정수(* | cancel_picture )( 카메라_장치 구조 *) |
|
정수(* | set_parameters )( 카메라_장치 구성 *, const char *parms) |
|
문자 *(* | get_parameters )( 카메라_장치 구조 *) |
|
무효의(* | put_parameters )( 카메라_장치 구조 *, 문자 *) |
|
정수(* | send_command )(구조체 카메라_장치 *, int32_t cmd, int32_t arg1, int32_t arg2) |
|
무효의(* | 릴리스 )( 카메라_장치 구조 *) |
|
정수(* | 덤프 )( 카메라_장치 구조 *, int fd) |
|
파일 camera.h 의 99 번째 줄에 정의되어 있습니다.
자동 초점 시작, 초점이 완료되면 알림 콜백 루틴이 CAMERA_MSG_FOCUS와 함께 한 번 호출됩니다. 다른 자동 초점이 필요한 경우 autoFocus()가 다시 호출됩니다.
파일 camera.h 의 227 번째 줄에 정의되어 있습니다.
자동 초점 기능을 취소합니다. 자동 초점이 계속 진행 중인 경우 이 기능은 자동 초점을 취소합니다. 자동 초점이 진행 중이든 아니든 이 기능은 초점 위치를 기본값으로 되돌립니다. 카메라가 자동 초점을 지원하지 않는 경우 이는 작동하지 않습니다.
파일 camera.h 의 235 번째 줄에 정의되어 있습니다.
takePicture로 시작된 사진을 취소합니다. 사진이 촬영되고 있지 않을 때 이 메서드를 호출하는 것은 금물입니다.
파일 camera.h 의 246 번째 줄에 정의되어 있습니다.
메시지 또는 일련의 메시지를 비활성화합니다.
disableMsgType(CAMERA_MSG_VIDEO_FRAME)에 대한 호출을 수신하면 카메라 HAL은 클라이언트가 releaseRecordingFrame()을 호출하여 disableMsgType(CAMERA_MSG_VIDEO_FRAME) 호출 전후에 카메라 HAL에서 보낸 동영상 녹화 프레임을 해제하도록 의존해서는 안 됩니다. 카메라 HAL 클라이언트는 disableMsgType(CAMERA_MSG_VIDEO_FRAME)을 호출한 후 비디오 녹화 프레임을 수정/액세스해서는 안 됩니다.
파일 camera.h 의 132 번째 줄에 정의가 있습니다.
무효(* enable_msg_type)(구조체 카메라_장치 *, int32_t msg_type) |
다음 세 함수는 모두 msg_type을 사용합니다. 이는 include/ui/Camera.h에 정의된 메시지의 비트마스크입니다.h 메시지 또는 메시지 세트를 활성화합니다.
파일 camera.h 의 120 번째 줄에 정의.
카메라 매개변수를 검색합니다. 카메라 HAL에서 반환된 버퍼는 put_parameters가 NULL이 아닌 경우 put_parameters와 함께 다시 반환되어야 합니다.
파일 camera.h 의 258 번째 줄에 정의가 있습니다.
int(* msg_type_enabled)(struct camera_device *, int32_t msg_type) |
메시지 또는 메시지 세트가 활성화되었는지 여부를 쿼리합니다. 이것은 AND로 작동하며 쿼리된 메시지 중 하나라도 꺼져 있으면 false를 반환합니다.
파일 camera.h 의 139 번째 줄에 정의되어 있습니다.
미리보기가 활성화된 경우 true를 반환합니다.
파일 camera.h 의 154 번째 줄에 정의가 있습니다.
카메라 HAL은 자체 메모리를 사용하여 get_parameters를 호출할 때 매개변수를 전달합니다. put_parameters가 NULL이 아닌 경우 이 함수를 사용하여 메모리를 카메라 HAL로 다시 반환합니다. put_parameters가 NULL이면 free()를 사용하여 메모리를 해제해야 합니다.
파일 camera.h 의 265 번째 줄에 정의가 있습니다.
이 개체가 소유한 하드웨어 리소스를 해제합니다. 이것은 소멸자에서 수행 되지 않습니다 .
파일 camera.h 의 277 행 정의.
무효(* release_recording_frame)(구조체 카메라 장치 *, const 무효 *불투명) |
CAMERA_MSG_VIDEO_FRAME에서 이전에 반환된 레코드 프레임을 해제합니다.
카메라 HAL이 disableMsgType(CAMERA_MSG_VIDEO_FRAME)에 대한 호출을 수신하기 전에 카메라 HAL에서 보낸 비디오 녹화 프레임을 해제하는 것은 카메라 HAL 클라이언트의 책임입니다. disableMsgType(CAMERA_MSG_VIDEO_FRAME)에 대한 호출을 수신한 후 비디오 녹화 프레임의 수명 주기를 관리하는 것은 카메라 HAL의 책임입니다.
파일 camera.h 의 219 번째 줄에 정의되어 있습니다.
int(* send_command)(구조 카메라_장치 *, int32_t cmd, int32_t arg1, int32_t arg2) |
int(* set_parameters)( 카메라_장치 구조 *, const char *parms) |
카메라 매개변수를 설정합니다. 매개변수가 유효하지 않거나 지원되지 않으면 BAD_VALUE를 반환합니다.
파일 camera.h 의 252 번째 줄에 정의가 있습니다.
미리보기 프레임이 전송되는 ANativeWindow 설정
파일 camera.h 의 101 번째 줄에 정의가 있습니다.
녹화 모드를 시작합니다. 녹화 이미지가 있으면 해당 프레임과 함께 CAMERA_MSG_VIDEO_FRAME 메시지가 전송됩니다. 모든 레코드 프레임은 클라이언트가 disableMsgType(CAMERA_MSG_VIDEO_FRAME)을 호출하기 전에 releaseRecordingFrame()을 통해 카메라 HAL 클라이언트에서 해제해야 합니다. 클라이언트가 disableMsgType(CAMERA_MSG_VIDEO_FRAME)을 호출한 후 비디오 녹화 프레임의 수명 주기를 관리하는 것은 카메라 HAL의 책임이며 클라이언트는 비디오 녹화 프레임을 수정/액세스해서는 안 됩니다.
파일 camera.h 의 198 번째 줄에 정의되어 있습니다.
이전에 시작한 미리보기를 중지합니다.
파일 camera.h 의 149 번째 줄에 정의되어 있습니다.
녹화 세션을 위해 CAMERA_MSG_VIDEO_FRAME를 통해 전송된 비디오 버퍼에 메타 데이터 또는 실제 YUV 데이터를 저장하도록 카메라 HAL에 요청합니다. 호출되지 않으면 기본 카메라 HAL 동작은 실제 YUV 데이터를 비디오 버퍼에 저장하는 것입니다.
이 메소드는 효과적이기 위해 startRecording() 전에 호출되어야 합니다.
메타 데이터가 비디오 버퍼에 저장되어 있는 경우 내용을 해석하고 버퍼의 메타 데이터를 사용하여 실제 프레임 데이터를 찾는 것은 비디오 버퍼의 수신기에 달려 있습니다. 이 작업을 수행하는 방법은 이 방법의 범위를 벗어납니다.
일부 카메라 HAL은 비디오 버퍼에 메타 데이터 저장을 지원하지 않을 수 있지만 모든 카메라 HAL은 비디오 버퍼에 실제 YUV 데이터 저장을 지원해야 합니다. 카메라 HAL이 요청 시 비디오 버퍼에 메타 데이터 저장을 지원하지 않는 경우 INVALID_OPERATION이 반환되어야 합니다. 비디오 크기가 크면 압축되지 않은 프레임 데이터의 양이 매우 클 수 있기 때문에 카메라 HAL이 실제 프레임 데이터가 아닌 메타 데이터를 비디오 인코더에 직접 전달하는 것은 매우 유용합니다.
- 매개변수
~할 수 있게 하다 | 비디오 버퍼에 메타 데이터를 저장하도록 카메라 HAL에 지시하려면 true이고; 비디오 버퍼에 실제 YUV 데이터를 저장하도록 카메라 HAL에 지시하려면 false입니다. |
- 보고
- 성공했습니다.
파일 camera.h 의 186 번째 줄에 정의되어 있습니다.
이 구조체에 대한 문서는 다음 파일에서 생성되었습니다.
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2022-08-30(UTC)
[{
"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":"기타"
}]