TextureView에 카메라 영상이 나오게 하는 법

Jang Seok Woo·2021년 7월 22일
0

실무

목록 보기
73/136

createCameraPreviewSession()에서 프리뷰 세션 생성 하는 순서

Preview 세션을 만들기 위해서 TextureView가 가지고 있는 SurfaceTexture를 가져옵니다. SurfaceTexture에 대한 내용은 이전 포스트로 대체합니다.
SurfaceTexture에 setUpCameraOutputs()에서 계산한 기본 버퍼 사이즈를 설정합니다.
SufaceTexture를 이용하여 Surface를 만듭니다.
CaptureRequest.Builder에 surface를 타겟으로 지정합니다.
지정된 타겟은 실제 카메라 프레임 버퍼를 받아 처리하게 됩니다. 아직 CaptureRequest를 사용할순 없습니다. 캡쳐세션이 먼저 만들어져야 합니다.
CameraDevice.createCaptureSession()을 통해 세션을 만듭니다.
캡쳐 세션이 만들어졌다면 CameraCaptureSession.StateCallback의 onConfigured()가 호출 되게 됩니다.
onConfigured()에서 CaptureRequest.Builder인스턴스를 build()하여 CaptureRequest객체를 만듭니다.
반복적으로 이미지 버퍼를 얻기 위해 프리뷰 세션에서 setRepeatingRequest()를 호출합니다. 이렇게 하면 TextureView에 카메라 영상이 나오는것을 확인할 수 있습니다.

출처 : https://www.charlezz.com/?p=1118

profile
https://github.com/jsw4215

0개의 댓글