CameraDevice.CreateCaptureSession 메서드

정의

오버로드

Name Description
CreateCaptureSession(SessionConfiguration)

지원되는 모든 매개 변수를 SessionConfiguration 집계하는 도우미 개체를 사용하여 새로 CameraCaptureSession 만듭니다.

CreateCaptureSession(IList<Surface>, CameraCaptureSession+StateCallback, Handler)

CreateCaptureSession(SessionConfiguration)

지원되는 모든 매개 변수를 SessionConfiguration 집계하는 도우미 개체를 사용하여 새로 CameraCaptureSession 만듭니다.

[Android.Runtime.Register("createCaptureSession", "(Landroid/hardware/camera2/params/SessionConfiguration;)V", "GetCreateCaptureSession_Landroid_hardware_camera2_params_SessionConfiguration_Handler", ApiSince=28)]
public virtual void CreateCaptureSession(Android.Hardware.Camera2.Params.SessionConfiguration? config);
[<Android.Runtime.Register("createCaptureSession", "(Landroid/hardware/camera2/params/SessionConfiguration;)V", "GetCreateCaptureSession_Landroid_hardware_camera2_params_SessionConfiguration_Handler", ApiSince=28)>]
abstract member CreateCaptureSession : Android.Hardware.Camera2.Params.SessionConfiguration -> unit
override this.CreateCaptureSession : Android.Hardware.Camera2.Params.SessionConfiguration -> unit

매개 변수

config
SessionConfiguration

세션 구성(참조 SessionConfiguration).

특성

설명

지원되는 모든 매개 변수를 SessionConfiguration 집계하는 도우미 개체를 사용하여 새로 CameraCaptureSession 만듭니다.

활성 캡처 세션은 각 캡처 요청에 대한 카메라 디바이스의 잠재적 출력 Surface 집합을 결정합니다. 지정된 요청은 출력의 전부 또는 일부만 사용할 수 있습니다. CameraCaptureSession이 만들어지면 , CameraCaptureSession#capture captureCameraCaptureSession#captureBurst captureBurst또는 CameraCaptureSession#setRepeatingRequest setRepeatingRequestCameraCaptureSession#setRepeatingBurst setRepeatingBurst.

다양한 사용 사례 및 대상에 대해 카메라 출력으로 포함하기에 적합한 표면을 만들 수 있습니다.

<ul>

<li>: android.view.SurfaceView SurfaceViewSurfaceView의 Surface android.view.SurfaceHolder.Callback#surfaceCreated created가져오면 반환된 크기 중 하나로 Surface android.view.SurfaceHolder#setFixedSize 크기를 StreamConfigurationMap#getOutputSizes(Class) getOutputSizes(SurfaceHolder.class) 설정한 다음 호출android.view.SurfaceHolder#getSurface하여 Surface 가져옵니다. 애플리케이션에서 크기를 설정하지 않으면 카메라 디바이스에서 지원되는 가장 가까운 크기인 1080p 미만으로 반올림됩니다.</li>

<li>: SurfaceTexture를 통해 OpenGL 텍스처를 통해 android.graphics.SurfaceTexture SurfaceTexture액세스하려면 SurfaceTexture에서 Surface 만들기 전에 SurfaceTexture android.graphics.SurfaceTexture#setDefaultBufferSizeSurface#Surface(SurfaceTexture)의 크기를 반환된 StreamConfigurationMap#getOutputSizes(Class) getOutputSizes(SurfaceTexture.class) 크기 중 하나로 설정합니다. 애플리케이션에서 크기를 설정하지 않으면 카메라 디바이스에서 1080p 미만의 지원되는 가장 작은 크기로 설정됩니다.</li>

<li>를 android.media.MediaCodec사용하여 녹음/녹화: /li에서 반환StreamConfigurationMap#getOutputSizes(Class) getOutputSizes(MediaCodec.class)<된 크기 중 하나를 사용하도록 미디어 코덱을 구성한 후 호출 android.media.MediaCodec#createInputSurface>

<li>for recording with android.media.MediaRecorder: 미디어 레코더에서 반환StreamConfigurationMap#getOutputSizes(Class) getOutputSizes(MediaRecorder.class)된 크기 중 하나를 사용하도록 구성하거나 지원되는 android.media.CamcorderProfile CamcorderProfiles중 하나를 사용하도록 구성한 후 호출 android.media.MediaRecorder#getSurface 합니다.</li>

<li>애플리케이션에서 RAW, 압축되지 않은 YUV 또는 압축된 JPEG 데이터에 액세스하려면: 지정된 지원되는 출력 형식 중 하나를 사용하여 개체를 만들고 android.media.ImageReader 선택한 출력 형식StreamConfigurationMap#getOutputFormats()StreamConfigurationMap#getOutputSizes(int)을 전달하여 해당 크기를 지원되는 크기 중 하나로 설정합니다. 그런 다음 .android.view.Surfaceandroid.media.ImageReader#getSurface() ImageReader 크기가 지원되는 크기로 설정되지 않은 경우 카메라 디바이스에서 지원되는 크기로 1080p 미만으로 반올림됩니다. </li>

</ul>

카메라 디바이스는 이 호출 시 각 Surface 크기와 형식을 쿼리하므로 현재 유효한 설정으로 설정해야 합니다.

카메라 하드웨어를 켜거나 다시 구성해야 할 수 있으므로 세션 구성이 완료되는 데 수백 밀리초가 걸릴 수 있습니다. 구성이 완료되고 세션이 실제로 데이터를 캡처할 준비가 되면 제공된 CameraCaptureSession.StateCallbackCameraCaptureSession.StateCallback#onConfigured 백이 호출됩니다.

이 메서드가 호출될 때 이전 CameraCaptureSession이 이미 있는 경우 이전 세션은 더 이상 새 캡처 요청을 수락할 수 없으며 닫힙니다. 이전 세션에서 진행 중인 캡처 요청은 종료되기 전에 완료됩니다. CameraCaptureSession.StateCallback#onConfigured 는 이전 세션에 대해 호출되기 전에 CameraCaptureSession.StateCallback#onClosed 새 세션을 호출할 수 있습니다. 새 세션이 CameraCaptureSession.StateCallback#onConfigured configured되면 자체 요청 캡처를 시작할 수 있습니다. 전환 시간을 최소화하기 위해 호출을 CameraCaptureSession#abortCaptures 사용하여 새 캡처 세션이 생성되기 전에 이전 캡처 세션에 대한 나머지 요청을 취소할 수 있습니다. 새 세션이 만들어지면 이전 세션은 더 이상 캡처를 중단할 수 없습니다.

더 큰 해상도 출력 또는 더 많은 출력을 사용하면 디바이스의 출력 속도가 느려질 수 있습니다.

빈 또는 null 목록을 사용하여 세션을 구성하면 현재 세션이 닫힙니다(있는 경우). 다른 용도로 현재 세션의 대상 표면을 해제하는 데 사용할 수 있습니다.

이 함수는 IllegalArgumentException 상태 콜백 또는 유효한 출력 화면이 없는 SessionConfiguration을 사용하여 호출된 경우를 throw합니다. 유일한 예외는 지연된 SurfaceView 또는 SurfaceTexture 출력입니다. 자세한 내용은 OutputConfiguration#OutputConfiguration(Size, Class)를 참조하세요.

<h3>일반 캡처</h3>

단일 출력 스트림을 StreamConfigurationMap#getOutputSizes 구성할 때 크기를 사용할 수 있지만, 여러 출력이 한 번에 구성된 경우 지정된 카메라 디바이스가 크기, 형식 및 대상의 모든 조합을 지원하지 못할 수 있습니다. 아래 표에는 카메라 디바이스의 기능을 고려할 때 스트림과 대상의 조합에 대해 보장되는 최대 해상도가 나와 있습니다. 이는 설정되지 않았으므로 재처리가 활성화되지 않은 경우에 android.hardware.camera2.params.SessionConfiguration#setInputConfiguration input configuration 유효합니다.

애플리케이션이 아래 표에 설명된 제한을 초과하는 대상 집합을 사용하여 세션을 만들려고 하면 세 가지 가능성 중 하나가 발생할 수 있습니다. 먼저 세션이 성공적으로 만들어지고 정상적으로 작동할 수 있습니다. 둘째, 세션이 성공적으로 만들어질 수 있지만 카메라 디바이스는 에 설명된 StreamConfigurationMap#getOutputMinFrameDuration대로 프레임 속도 보장을 충족하지 않습니다. 셋째, 출력 집합을 전혀 사용할 수 없는 경우 세션 생성이 완전히 실패하고 CameraCaptureSession.StateCallback#onConfigureFailed 호출됩니다.

형식 열 PRIV 의 경우 직접 애플리케이션 표시 형식 없이 사용 가능한 크기를 찾 StreamConfigurationMap#getOutputSizes(Class) 은 대상을 참조하고, YUV 형식을 사용하는 android.graphics.ImageFormat#YUV_420_888 대상 Surface 참조하고, JPEG 형식을 android.graphics.ImageFormat#JPEG 참조하고RAW, 형식을 android.graphics.ImageFormat#RAW_SENSOR 참조합니다.

최대 크기 열 PREVIEW 의 경우 디바이스의 화면 해상도 또는 1080p(1080p)1920x1080에 가장 적합한 크기 일치를 나타냅니다. RECORD 는 에 의해 android.media.CamcorderProfile결정된 대로 카메라 디바이스의 지원되는 최대 녹화 해상도를 나타냅니다. 그리고 MAXIMUM 해당 형식 또는 대상 StreamConfigurationMap#getOutputSizes에 대한 카메라 디바이스의 최대 출력 해상도를 나타냅니다.

이러한 테이블을 사용하려면 필요한 출력의 수와 형식/대상을 결정하고 해당 대상이 있는 테이블의 행을 찾습니다. 크기는 사용할 수 있는 최대 크기 집합을 나타냅니다. 이러한 대상의 경우 지정된 목록에서 StreamConfigurationMap#getOutputSizes 나열된 크기 및 더 작은 항목을 성공적으로 사용하여 세션을 만들 수 있습니다. 예를 들어 행에 MP(8메가픽셀) YUV_420_888 출력을 2 MP PRIV 출력과 함께 사용할 수 있음을 나타내는 경우 대상 [8 MP YUV, 2 MP PRIV] 또는 대상 [2 MP YUV, 2 MP PRIV]과 함께 세션을 만들 수 있지만 테이블의 다른 행에 이러한 조합이 나열되지 않는 한 대상 [8 MP YUV, 4 MP PRIV], 대상 [4 MP YUV, 4 MP PRIV]또는 대상이 [8 MP PRIV, 2 MP YUV] 있는 세션이 작동하도록 보장되지 않습니다.

<스타일 범위> #rb { 테두리 오른쪽 너비: 두께; }</style>

<h5>LEGACY 수준 보장 구성</h5>

레거시 디바이스(CameraCharacteristics#INFO_SUPPORTED_HARDWARE_LEVEL==CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY LEGACY)는 적어도 다음 스트림 조합을 지원합니다.

<table>tr><th colspan="2" id="rb">Target 1</th th<>colspan="2" id="rb">Target 2</th<>colspan="2" id="rb">Target 3</th><행pan="2">Sample use case(s)</th<>/tr tr<>><th>Type</th th><id="rb">Max size</th th><>Type</th th><id="rb">Max size</th th<>>Type</th th><id="rb"<>최대 크기</th></tr tr td>><<td>><<PRIV id="rb"MAXIMUM<>/td td><colspan="2" id="rb"></td td><colspan="2" id="rb"></td td<>>단순 미리 보기, GPU 비디오 처리 또는 미리 보기 없는 비디오 녹화입니다.</td/tr tr><tr><tdJPEG<> td><id="rb"<>MAXIMUM/td td<>colspan="2" id="rb"></td td><colspan="2" id="rb"></td td><td>No-viewfinder still image capture.<></td/tr tr<>tr><td<>YUV td><id="rb"<>MAXIMUM/td td><colspan="2" id="rb"></td td><colspan="2" id="rb"></td td<>>in-application video/image processing.<></td></tr tr<>tr><tdPRIV><<> id="rb"><PREVIEW/td td>>JPEG<</td td><id="rb"><MAXIMUM/td td><colspan="2" id="rb"></td td<>>Standard still imaging.</td></tr tr<>tr><td><YUV td><id="rb"><PREVIEW/td td>>JPEG<</td td><id="rb"><MAXIMUM/td td<>colspan="2" id="rb"></td td><>in-app processing plus still capture.</td></tr tr<>tr><tdPRIV><<> id="rb"><PREVIEW/td td>>PRIV<</td td><id="rb"><PREVIEW/td td><colspan="2" id="rb"></td td<>>Standard 기록.</td></tr tr><td><PRIV></td td><id="rb"><PREVIEW/td td>>YUV<</td td><id="rb"><PREVIEW/td td><colspan="2" id="rb"></td td<>>Preview plus in-app processing.</td></tr tr<>tr<>td>PRIV< td><id="rb">PREVIEW</td td<<>>YUV/td td><id="rb"PREVIEW<>/td td<>JPEG></td td><id="rb"><MAXIMUM/td td<>>Still capture plus in-app processing.</td></tr></table><br>

<h5>LIMITED 수준 추가 보장 구성</h5>

제한된 수준(CameraCharacteristics#INFO_SUPPORTED_HARDWARE_LEVEL==CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED LIMITED) 디바이스는 디바이스에 대한 CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY LEGACY 스트림 조합 외에도 적어도 다음 스트림 조합을 지원합니다.

<table>tr><th colspan="2" id="rb">Target 1</th th><colspan="2" id="rb">Target 2</th th><colspan="2" id="rb">Target 3</th th><rowspan="2">Sample use case(s)</th></tr tr><><th>Type</th><th id="rb">Max size</th th>><Type</th><id="rb">Max size</th th><>Type/th><type<="rb">Max size</th></tr><<tr><td>PRIV</td td><id="rb"><PREVIEW/td td>PRIV><</td td td><id="rb"><RECORD/td td><colspan="2" id="rb"></td td td<>>고해상도 비디오 녹화 미리 보기.</td></tr tr><td><PRIV></td td><id="rb"><PREVIEW/td td>YUV><</td td td><id="rb"><RECORD/td td><colspan="2" id="rb"></td td<>>고해상도 앱 내 비디오 처리 미리 보기.</td></tr tr<>tr><tdYUV><<> id="rb"><PREVIEW/td td>>YUV<</td td><id="rb"><RECORD/td td><colspan="2" id="rb"></td td<>>Two-input in-app 비디오 처리.</td></tr tr tr<><>td<>PRIV td><id="rb">PREVIEW</td td<<>>PRIV/td td><id="rb"RECORD<>/td td<>JPEG></td td><id="rb"><RECORD/td td<>>고해상도 녹화 비디오 스냅샷.</td></tr tr<>tr<>td>PRIV< td><id="rb">PREVIEW</td td<<>>YUV/td td><id="rb"RECORD<>/td td<>JPEG></td td><id="rb"><RECORD/td td<>>고해상도 앱 내 비디오 스냅샷 처리.</td></tr tr tr<>><tdYUV><>< id="rb">PREVIEW</td td<<>>YUV/td td><id="rb"PREVIEW<>/td td<>JPEG></td td><id="rb"><MAXIMUM/td td td<>>Two-input in-app processing with still capture.</td></tr></table><br>

<h5>FULL 수준 추가 보장 구성</h5>

전체 수준(CameraCharacteristics#INFO_SUPPORTED_HARDWARE_LEVEL==CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_FULL FULL) 디바이스는 디바이스에 대한 CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED LIMITED 스트림 조합 외에도 적어도 다음 스트림 조합을 지원합니다.

<table>tr><th colspan="2" id="rb">Target 1</th th><colspan="2" id="rb">Target 2</th th><colspan="2" id="rb">Target 3</th th><rowspan="2">Sample use case(s)</th></tr tr<>><th>Type</th><th id="rb">Max size</th th>><Type</th><id="rb">Max size</th th>><Type/th><type<="rb">Max size</th<>/tr<><tr><td><PRIV/td td><id="rb">PREVIEW</td td><PRIV<>/td td td><id="rb"><MAXIMUM/td td><colspan="2" id="rb"></td td<>>maximum-resolution GPU processing with preview.</td></tr tr<>tr><td><PRIV td><id="rb"><PREVIEW/td td>>YUV<</td td><id="rb"><MAXIMUM/td td><colspan="2" id="rb"></td td td>><Maximum-resolution in-app processing with preview.</td></tr tr><td><YUV></td td><id="rb"><PREVIEW/td td>>YUV<</td td><id="rb"><MAXIMUM/td td><colspan="2" id="rb"></td td<>>Maximum-resolution 2-input in-app 처리.</td/tr tr<>td><<PRIV>/td td><id="rb">PREVIEW</td td>>PRIV<</td td><id="rb"><PREVIEW/td td><JPEG<>/td td><id="rb">MAXIMUM</td td><>비디오 녹화 및 최대 크기 비디오 스냅샷</td></tr tr tr><td<>><><YUV id="rb">><640x480</td td>><PRIV</td td><id="rb"><PREVIEW/td td>><YUV</td td><id="rb"><MAXIMUM/td td>><Standard 비디오 녹화 및 최대 해상도 앱 내 처리.</td></tr tr<>tr<>td>YUV< td><id="rb">640x480</td td<<>>YUV/td td><id="rb"PREVIEW<>/td td<>YUV></td td><id="rb"><MAXIMUM/td td<>>Preview plus 2-input maximum-resolution in-app processing.</td></tr></table><br>

<h5>RAW 기능 추가 보장 구성</h5>

RAW 기능(CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES포함CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_RAW RAW) 디바이스는 디바이스와 CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED LIMITED 디바이스 모두에서 CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_FULL FULL 적어도 다음 스트림 조합을 추가로 지원합니다.

<table>tr><th colspan="2" id="rb">Target 1</th th><colspan="2" id="rb">Target 2</th th><colspan="2" id="rb">Target 3</th th><rowspan="2">Sample use case(s)</th></tr tr<>><th>Type</th><th id="rb">Max size</th th>><Type</th><id="rb">Max size</th th>><Type/th><type<="rb">Max size</th<>/tr<><tr><td><RAW/td td><id="rb">MAXIMUM</td td<>colspan="2" id="rb"></td td<>colspan="2" id="rb"></td td><>No-preview DNG 캡처.</td></tr tr<>tr><tdPRIV><<> id="rb"><PREVIEW/td td>>RAW<</td td><id="rb"><MAXIMUM/td td><colspan="2" id="rb"></td td<>>Standard DNG 캡처.</td></tr tr tr><<>td<>YUV td><id="rb"><PREVIEW/td td>>RAW<</td td><id="rb"><MAXIMUM/td td<>colspan="2" id="rb"></td td><>앱 내 처리 및 DNG 캡처.</td></tr tr<>tr><tdPRIV><>< id="rb">PREVIEW</td td<<>>PRIV/td td><id="rb"PREVIEW<>/td td<>RAW></td td><id="rb"><MAXIMUM/td td<>>Video Recording with DNG capture.</td></tr tr<>tr<>td>PRIV< td><id="rb">PREVIEW</td td<<>>YUV/td td><id="rb"PREVIEW<>/td td<>RAW></td td><id="rb"><MAXIMUM/td td<>>Preview in-app processing and DNG capture.</td></tr tr<>tr<>td>YUV< td><id="rb">PREVIEW</td td<<>>YUV/td td><id="rb"PREVIEW<>/td td<>RAW></td td><id="rb"><MAXIMUM/td td<>>Two-input in-app processing plus DNG capture.</td></tr tr<>tr<>td>PRIV< td><id="rb">PREVIEW</td td<<>>JPEG/td td><id="rb"MAXIMUM<>/td td<>RAW></td td><id="rb"><MAXIMUM/td td<>>Still capture with 동시 JPEG 및 DNG.</td></tr tr tr<><>td<>YUV td><id="rb">PREVIEW</td td<<>>JPEG/td td><id="rb"MAXIMUM<>/td td<>RAW></td td><id="rb"><MAXIMUM/td td<>>in-app processing with 동시 JPEG 및 DNG.</td></tr></table><br>

<h5>BURST 기능 추가 보장 구성</h5>

버스트 기능(CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES 포함 CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_BURST_CAPTURE BURST_CAPTURE)은 디바이스에 대한 CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED LIMITED 것 외에도 적어도 아래 스트림 조합을 지원합니다. 모든 전체 수준 디바이스는 버스트 기능을 지원하며 아래 목록은 전체 수준 디바이스에 대한 목록의 엄격한 하위 집합이므로 이 테이블은 BURST_CAPTURE 기능을 지원하는 LIMITED 수준 디바이스와만 관련이 있습니다.

<table>tr><th colspan="2" id="rb">Target 1</th th><colspan="2" id="rb">Target 2</th th><rowspan="2">Sample use case(s)</th<>/tr><tr><th>Type</th th><id="rb">Max size</th th>><Type</th th><id="rb">Max size</th<>/tr<>tr td></td><><PRIV id="rb"<PREVIEW>/td td><<PRIV>/td/td<><td id="rb">MAXIMUM<미리 보기가 있는 /td td><>최대 해상도 GPU 처리.</td/tr tr><tr><td>PRIV< td><id="rb"PREVIEW<>/td td<<YUV>>/td td><id="rb"MAXIMUM<>/td td<>>maximum-resolution in-app processing with preview.<></td/tr tr><tr><td>YUV< td><id="rb"PREVIEW<>/td td<<YUV>>/td td><id="rb"MAXIMUM<>/td td<>>Maximum-resolution 2-input in-app processing.<></td></tr></table><br>

<h5>LEVEL-3 추가 보장 구성</h5>

LEVEL-3()은 RAW 기능(CameraCharacteristics#INFO_SUPPORTED_HARDWARE_LEVEL==CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIESCameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_3 LEVEL_3포함)에 대한 CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_FULL FULL 조합 외에도 적어도 다음 스트림 조합을 지원합니다.CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_RAW RAW

<table><tr><th colspan="2" id="rb">Target 1</th th><colspan="2" id="rb">Target 2</th th><colspan="2" id="rb">Target 3</th><colspan="2" id="rb ">Target 4</th th><rowspan="2">Sample use case(s)</th<>/tr tr><<>th>Type</th><th id="rb">Max size</th th><>Type</th><id="rb">Max size</th th><>Type</th th><id="rb">Max size</th th><>Type</th th><id="rb">Max size</th></tr tr tr<>><td<>PRIV>< id="rb"<>PREVIEW/td td><<PRIV>/td td><id="rb"><640x480/td td><><YUV/td td><id="rb"<>MAXIMUM/td td<RAW>></td td><id="rb"<>MAXIMUM/td td><>In-app viewfinder analysis with 출력 형식<의 동적 선택/td/tr tr<>tr><tdPRIV<> td><id="rb">PREVIEW</td td<>PRIV></td td><id="rb"><640x480/td td><>JPEG</td td><id="rb"MAXIMUM<>/td td<<RAW>>/td td><id="rb"MAXIMUM<>/td td<>>in-app viewfinder analysis with dynamic selection of output format.<></td></tr></table><br>

<h5>동시 스트림 보장 구성</h5>

설명한 대로 다른 디바이스와 동시에 스트리밍할 수 있는 BACKWARD_COMPATIBLE 디바이스에는 다음과 같은 android.hardware.camera2.CameraManager#getConcurrentCameraIds 보장된 스트림이 있습니다(다른 디바이스와 동시에 스트리밍하는 경우).

참고: 이러한 동시 스트림에 대해 언급된 크기는 지원되도록 보장되는 최대 크기입니다. 특정 형식에 대해 StreamConfigurationMap#getOutputSizes 가져온 크기보다 작은 크기도 지원됩니다.

<table>tr><th colspan="2" id="rb">Target 1</th th><colspan="2" id="rb">Target 2</thth><rowspan="2">Sample use case(s)</th<>/tr tr><<>th>Type</th th><id="rb">Max size</th th>><Type</th th><id="rb">Max size</th<>/tr tr tr<>><td>><<YUV id="rb"s1440p<>/td td<>colspan="2" id="rb"<></td><td>앱 내 비디오/이미지 처리.</td></tr tr><tr><td<>PRIV td><id="rb"><s1440p/td td<>colspan="2" id="rb"></td td><>in-app viewfinder 분석.</td></tr tr><tr><td<>JPEG td><id="rb"><s1440p/td td<>colspan="2" id="rb"></td td><>No viewfinder still image capture.</td></tr tr<>tr<>td>YUV / PRIV</td td><id="rb"<s720p>/td td<>JPEG></td td><id="rb"><s1440p/td td<>> Standard still imaging.</td></tr tr<>td>><YUV / PRIV</td td><id="rb"><s720p/td td>><YUV / PRIV</td td><id="rb"><s1440p/td td>><in-app video / processing with preview.</td></tr></table><br>

이전 버전과 호환되지 않는 디바이스는 동시 작업 중에 이미지 형식 DEPTH16 의 필수 단일 크기 sVGA 스트림을 지원합니다.

보장된 동시 스트림 구성의 경우:

sVGA는 해당 형식 StreamConfigurationMap#getOutputSizes 에 대한 카메라 디바이스의 최대 해상도 또는 낮은 VGA 해상도(640X480)를 나타냅니다.

s720p는 720p(1280X720) 중 더 낮은 720p에서 카메라 StreamConfigurationMap#getOutputSizes 장치의 최대 해상도를 나타냅니다.

s1440p는 1440p(1920X1440)에서 StreamConfigurationMap#getOutputSizes 카메라 장치의 최대 해상도를 나타냅니다.

MONOCHROME 기능(CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES포함CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_MONOCHROME MONOCHROME) 디바이스는 디바이스의 하드웨어 수준 및 기능에 대해 보장된 모든 스트림 조합으로 스트림을 대체하는 Y8YUV 것을 지원 android.graphics.ImageFormat#Y8 Y8 합니다.

클라이언트는 .를 통해 android.hardware.camera2.params.MandatoryStreamCombination위의 필수 스트림 조합 테이블에 액세스할 수 있습니다.

HEIC 형식(StreamConfigurationMap#getOutputFormats 포함 android.graphics.ImageFormat#HEIC)을 출력할 수 있는 디바이스는 디바이스의 하드웨어 수준 및 기능에 대해 보장된 모든 스트림 조합으로 스트림을 대체 JPEGHEIC 합니다. JPEG 및 HEIC 출력을 모두 사용하여 createCaptureSession을 호출하는 것은 지원되지 않습니다.

<h5>다중 해상도 출력</h5를 사용하는 레거시 수준 추가 보장 조합>

특정 형식(비어있지 않은 목록을 반환) android.hardware.camera2.params.MultiResolutionStreamConfigurationMap#getOutputInfo 에 대한 다중 해상도 출력이 가능한 디바이스는 모든 필수 스트림 조합에 대해 해당 형식의 최대 해상도 스트림을 사용할 MultiResolutionImageReader 수 있도록 지원합니다. 예를 들어 LIMITED 카메라 디바이스가 둘 다 JPEGPRIVATE에 대해 다해상도 출력 스트림을 지원하는 경우 위의 LIMITED 및 레거시 테이블의 스트림 구성 외에도 카메라 디바이스는 다음과 같은 보장된 스트림 조합을 지원합니다MultiResolutionImageReader(MULTI_RES최대 크기 열에서는 지원되는 변수 최대 해상도에 따라 생성된 스트림을 참조).

<table>tr><th colspan="2" id="rb">Target 1</th th<>colspan="2" id="rb">Target 2</th<>colspan="2" id="rb">Target 3</th><행pan="2">Sample use case(s)</th<>/tr tr<>><th>Type</th th><id="rb">Max size</th th><>Type</th th><id="rb">Max size</th th<>>Type</th th><id="rb"<>최대 크기</th></tr tr td>><<td>><<PRIV id="rb"MULTI_RES<>/td td><colspan="2" id="rb"></td td><colspan="2" id="rb"></td td<>>단순 미리 보기, GPU 비디오 처리 또는 미리 보기 없는 비디오 녹화입니다.</td/tr tr><tr><tdJPEG<> td><id="rb"<>MULTI_RES/td td<>colspan="2" id="rb"></td td><colspan="2" id="rb"></td td><td>No-viewfinder still image capture.<></td></tr tr<>tr><tdPRIV><<> id="rb"><PREVIEW/td td>>JPEG<</td td><id="rb"><MULTI_RES/td td><colspan="2" id="rb"></td td<>>Standard still imaging.</td></tr tr<>tr<>td>PRIV< td><id="rb">PREVIEW</td td<<>>YUV/td td><id="rb"PREVIEW<>/td td<>JPEG></td td><id="rb"><MULTI_RES/td td<>>Still capture plus in-app processing.</td></tr></table><br>

<h5>다중 해상도 출력</h5를 사용하는 H5 LIMITED 수준 추가 보장 구성>

<table>tr><th colspan="2" id="rb">Target 1</th th><colspan="2" id="rb">Target 2</th th><colspan="2" id="rb">Target 3</th th><rowspan="2">Sample use case(s)</th></tr tr><><th>Type</th><th id="rb">Max size</th th>><Type</th><id="rb">Max size</th th><>Type/th><type<="rb">Max size</th></tr><<tr><td>YUV</td td><id="rb">PREVIEW</td td><><YUV/td td><id="rb"><PREVIEW/td td>><JPEG</td td><id="rb"><MULTI_RES/td td>><2-input in-app processing with still capture.</td></tr></table><br> 동일한 논리가 다른 하드웨어 수준 및 기능에 적용됩니다.

<h5>ULTRA_HIGH_RESOLUTION 센서</h5에 대한 추가 보장 조합>

ULTRA_HIGH_RESOLUTION_SENSOR 기능이 있는 디바이스에는 클라이언트가 활용할 수 있는 몇 가지 추가 보장이 있습니다.

<table>tr><th colspan="3" id="rb">Target 1</th th><colspan="3" id="rb">Target 2</th th<>colspan="3" id="rb">Target 3</th th><rowspan="" 2">샘플 사용 사례(s)</th<>/tr><tr><th>Type</th><th id="rb"> SC Map</th><th id="rb">Max size</th th>><Type</th><id="rb"> SC Map</th th><id="rb"<>Max size</th th><>Type</th th><id="rb"> SC Map</th th><id="rb">Max size</th></tr tr><tr<>td<>YUV / JPEG / RAW>< id="rb"><MAX_RES/td td><id="rb"><MAX/td td><id="rb"<>PRIV / YUV/td td><id="rb">DEFAULT</td td><id="rb"<>PREVIEW/td td><colspan="3" id="rb"></td td><>Ultra high res still image capture preview</td></tr tr><<>td td>><<YUV / JPEG / RAW id="rb"<MAX_RES>/td td><id="rb">MAX</td td><id="rb"PRIV></td td><id="rb"DEFAULT></td td><id="rb"PREVIEW></td td><id="rb"PRIV / YUV></td td id="rb"/td><td id="<DEFAULT>rb"RECORD></td><td td><>Ultra High res still capture with preview + app based RECORD size analysis</td></tr tr>><<td><><YUV / JPEG / RAW id="rb"<>MAX_RES/td td><id="rb">MAX</td td><id="rb"><PRIV/td td><id="rb"DEFAULT<>/td td><id="rb"<>PREVIEW/td td><id="rb"JPEG / YUV / RAW<>/td td id="rb"DEFAULT<>/td><td><id="rb">MAX</td td><>Ultra high res still image capture with preview + default sensor pixel mode analysis stream</td></tr></table><br>

여기서 SC 맵은 StreamConfigurationMap대상 스트림 크기를 선택해야 합니다. DEFAULT 는 기본 센서 픽셀 모드 StreamConfigurationMap 를 참조하고 MAX_RES 최대 해상도 StreamConfigurationMap를 나타냅니다. 스트림의 Max sizeMAX 경우 MAX_RES 열에서 최대 크기부터 StreamConfigurationMap#getOutputSizesStreamConfigurationMap#getHighResolutionOutputSizes다음을 참조합니다. 참고: 동일한 캡처 요청은 서로 다른 센서 픽셀 모드에 StreamConfigurationMap해당하는 대상을 혼합해서는 안 됩니다.

<h5>10비트 출력 추가 보장 구성</h5>

10비트 출력 가능 CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT 디바이스는 적어도 다음 스트림 조합을 지원합니다.

<table>tr><th colspan="2" id="rb">Target 1</th th><colspan="2" id="rb">Target 2</th th><colspan="2" id="rb">Target 3</th th><rowspan="2">Sample use case(s)</th></tr tr><><th>Type</th><th id="rb">Max size</th th>><Type</th><id="rb">Max size</th th><>Type/th><type<="rb">Max size</th></tr><<tr><td>PRIV</td td><id="rb">MAXIMUM</td/td<> td><colspan="4" id="rb"></td td<>>Simple preview, GPU 비디오 처리 또는 미리 보기 없는 비디오 녹화.</td></tr tr><td>><<YUV/td td><id="rb">MAXIMUM</td/td>< td><colspan="4" id="rb"></td td<>>in-application 비디오/이미지 처리.</td></tr tr<>tr><tdPRIV><<> id="rb"><PREVIEW/td td>>JPEG<</td td><id="rb"><MAXIMUM/td td><colspan="2" id="rb"></td td<>>Standard still imaging.</td></tr tr<>tr><td><PRIV td><id="rb"><PREVIEW/td td>>YUV<</td td><id="rb"><MAXIMUM/td td><colspan="2" id="rb"></td td td>><Maximum-resolution in-app processing with preview.</td></tr tr><td><YUV></td td><id="rb"><PREVIEW/td td>>YUV<</td td><id="rb"><MAXIMUM/td td><colspan="2" id="rb"></td td<>>Maximum-resolution 2-input in-app 처리.</td></tr tr<>tr><td><PRIV td><id="rb"><PREVIEW/td td>>PRIV<</td td><id="rb"><RECORD/td td><colspan="2" id="rb"></td td td>><고해상도 비디오 녹화 미리 보기.</td></tr tr<>tr<>td>PRIV< td><id="rb">PREVIEW</td td<<>>PRIV/td td><id="rb"RECORD<>/td td<>YUV></td td><id="rb"><RECORD/td td td-resolution<>>recording with in-app snapshot.</td></tr tr tr<><>td<>PRIV td><id="rb">PREVIEW</td td<<>>PRIV/td td><id="rb"RECORD<>/td td<>JPEG></td td><id="rb"><RECORD/td td<>>고해상도 녹화 비디오 스냅샷.</td></tr></table><br>

여기서 PRIV는 8비트 또는 10비 android.graphics.ImageFormat#PRIVATE 트 픽셀 형식일 수 있습니다. YUV는 둘 중 하나 android.graphics.ImageFormat#YUV_420_888 일 수 있습니다.android.graphics.ImageFormat#YCBCR_P010 최대 크기 열의 경우 PREVIEW는 디바이스의 화면 해상도 또는 1080p(1920x1080)에 가장 적합한 크기 일치를 나타냅니다. RECORD는 에 의해 android.media.CamcorderProfile결정된 대로 카메라 디바이스의 지원되는 최대 녹화 해상도를 나타냅니다. MAXIMUM는 해당 형식 또는 대상 StreamConfigurationMap#getOutputSizes(int)에 대한 카메라 디바이스의 최대 출력 해상도를 나타냅니다. 10비트 프로필에서 픽셀 형식 android.graphics.ImageFormat#YUV_420_888 을 사용하도록 카메라 화면을 구성하는 것과 같은 잘못된 조합으로 인해 캡처 세션 초기화가 실패합니다.

android.graphics.ImageFormat#JPEG_R 에서 보급 android.hardware.camera2.params.StreamConfigurationMap하는 경우에도 지원될 수 있습니다. Jpeg/R 카메라 출력 클라이언트를 포함하는 캡처 세션을 초기화하는 경우 10비트 필수 스트림 조합 테이블인 w.r.t. 다음 항목을 고려해야 합니다.

<ul><li>압축된 Jpeg/R 이미지를 생성하려면 카메라 디바이스에서 내부적으로 단일 android.graphics.ImageFormat#YCBCR_P010 출력을 사용합니다.<동시 10비트 및 8비트 캡처 요청을 android.hardware.camera2.params.DynamicRangeProfiles#getProfileCaptureRequestConstraints 지원할 수 있는 /li<>li>On 카메라 디바이스에서는 인코딩 프로세스 속도를 높이기 위해 내부적으로 추가 android.graphics.ImageFormat#JPEG 항목도 구성됩니다.</li></ul>

Jpeg/R 카메라 출력은 일반적으로 최대 디바이스 해상도를 지원할 수 있습니다. 클라이언트는 전체 목록 지원 크기를 호출 StreamConfigurationMap#getOutputSizes(int) 할 수도 있습니다. 위의 필수 스트림 테이블에 맞지 않는 스트림 조합 내에서 Jpeg/R 출력을 등록하는 카메라 클라이언트는 이 특정 구성이 지원되는지 확인하기 위해 호출 #isSessionConfigurationSupported 할 수 있습니다.

<h5>STREAM_USE_CASE 기능 추가 보장 구성</h5>

STREAM_USE_CASE 기능(CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES 포함)이 있는 디바이스는 CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES_STREAM_USE_CASE아래의 추가 스트림 조합을 지원합니다.

<table>tr><th colspan="3" id="rb">Target 1</th th><colspan="3" id="rb">Target 2</th th><colspan="3" id="rb">Target 3</th th<>rowspan="" 2">샘플 사용 사례(s)</th></tr tr<>><th>Type</th><th id="rb">Max size</th th><>Usecase</th><th>Type</th th><id="rb">Max size</th th>><Usecase</th th Type><><</th th><id="rb">Max size</th th>><Usecase</th></tr tr><tr<>td>YUV / PRIV< td><id="rb"<PREVIEW>/td td><id="rb"<PREVIEW>/td td<>colspan="" 3" id="rb"></td td<>colspan="3" id="rb"></td td>><단순 미리 보기 또는 앱 내 이미지 처리</td></tr tr<>tr><td<>YUV / PRIV/td td><id="rb">RECORD</td td><id="rb">VIDEO_RECORD</td td><colspan="3" id="rb"></td td><colspan="3" id="rb"></td td>><단순 비디오 녹화 또는 앱 내 비디오 처리</td/td></t tr<>tdYUV / JPEG<>></td td><id="rb"MAXIMUM<>/td td><id="rb"><STILL_CAPTURE/td td<>colspan="3" id="rb"></td td><colspan="3" id="rb"></td><td>간단한 JPEG 또는 YUV 스틸 이미지 캡처</td></tr tr><tr td><>YUV / PRIV</td td><id="rb">s1440p</td td td><id="rb">PREVIEW_VIDEO_STILL</td td<>colspan="3" id="></td td<>colspan="3" id="rb"></td td td<>>다목적 스트림 미리 보기, 비디오 및 스틸 이미지 캡처</td<>/tr tr<>td<><>YUV / PRIV/td><td id="rb">s1440p</td td><id="rb">VIDEO_CALL</td td><colspan="3" id="rb"></td td><colspan="3" id="rb"></td td>><Simple video call</td<>/tr tr>><<td>PRIV</td td><id="rb"<PREVIEW>/td td><id="rb"<PREVIEW>/td td><<YUV / JPEG>/td td><id="rb">MAXIMUM</td td><id="rb"/>STILL_CAPTURE< td td colspan="3" id="rb"></td td<>>Preview with JPEG 또는 YUV still image capture</td<>/tr tr><td></td td><PRIV>< id="rb"<PREVIEW>/td><td id="rb"<PREVIEW>/td td><<>YUV / PRIV/td td><id="rb"RECORD></td td><id="rb"><VIDEO_RECORD/td td<>colspan="3" id="rb"></td td>><><비디오 녹화 또는 앱 내 비디오 처리</td></tr tr tr><td></td><PRIV td><id="rb"<>PREVIEW/td td td><id="rb"<PREVIEW>/td td<>>YUV< td><id="rb"<PREVIEW>/td td><colspan=">>PREVIEW<<3" id="rb"></td td td<>>Preview in-application image processing</td></tr tr><<>td>PRIV</td td><id="rb">PREVIEW</td td><id="rb">PREVIEW</td td><<>YUV / PRIV/td td><id="rb">s1440p</td td><id="rb">VIDEO_CALL</td td<>colspan="3" id="rb"></td td>><Preview with video call</td<>/tr tr<<>>tdYUV / PRIV></td><td id="rb">s1440p</td td><id="rb">PREVIEW_VIDEO_STILL</td td>YUV / JPEG<<>/td td><id="rb"><MAXIMUM/td td><id="rb"><STILL_CAPTURE/td td<>colspan="3" ID="rb"></td td<>>MultI-purpose stream with JPEG or YUV still capture</td<>/tr tr><td><YUV<>/td td><id="rb"PREVIEW<>/td td><id="rb">STILL_CAPTURE</td td><JPEG></td td><id="rb"><MAXIMUM/td td><id="rb">STILL_CAPTURE</td td<>colspan="3" id="rb"></td td><>YUV 및 JPEG 동시 이미지 캡처(테스트용)</td></tr tr><tr tdPRIV<><>/td td><id="rb">PREVIEW</td td><id="rb"<>PREVIEW/td td td><>YUV / PRIV</td td><id="rb"><RECORD/td td><id="rb"><VIDEO_RECORD/td td><JPEG></td td><id="rb"><RECORD/td td><id="rb">STILL_CAPTURE</td td>><Preview, 비디오 레코드 및 JPEG 비디오 스냅샷</td></tr tr<>td<>PRIV><>< id="rb"/td td><id="<PREVIEW>rb"PREVIEW<>/td><td>YUV</td td><id="rb"><PREVIEW/td td><id="rb"><PREVIEW/td td><>JPEG</td td><id="rb"><MAXIMUM/td td><id="rb">STILL_CAPTURE</td td>><Preview, 애플리케이션 내 이미지 처리 및 JPEG 스틸 이미지 캡처</td<>/tr></table br><>

<h5>STREAM_USE_CASE_CROPPED_RAW 기능 추가 보장 구성</h5>

스트림 사용 사례를 포함하는 CameraMetadata#SCALER_AVAILABLE_STREAM_USE_CASES_CROPPED_RAW 디바이스는 CameraCharacteristics#SCALER_AVAILABLE_STREAM_USE_CASES아래의 추가 스트림 조합을 지원합니다.

<table>tr><th colspan="3" id="rb">Target 1</th th><colspan="3" id="rb">Target 2</th th><colspan="3" id="rb">Target 3</th th<>rowspan="" 2">샘플 사용 사례(s)</th></tr tr<>><th>Type</th><th id="rb">Max size</th th><>Usecase</th><th>Type</th th><id="rb">Max size</th th>><Usecase</th th Type><><</th th><id="rb">Max size</th th>><Usecase</th></tr tr><tr<>td>RAW< td><id="rb"<MAXIMUM>/td td><id="rb"<CROPPED_RAW>/td td<>colspan="" 3" id="rb"></td td><colspan="3" id="rb"></td td><>Cropped RAW 여전히 미리 보기</td></tr tr tr><<>td<PRIV / YUV><> id="rb">PREVIEW</td td><id="rb">PREVIEW</td td>><RAW</td td><id="rb">MAXIMUM</td td><id="rb">CROPPED_RAW</td td<>colspan="3" id="rb"></td td>><Preview with cropped RAW still capture</td></tr tr tr<<>>td td><<PRIV / YUV> id="rb"/td td id=<PREVIEW>">PREVIEW</td><td><>YUV / JPEG</td td><id="rb"><MAXIMUM/td td><id="rb"><STILL_CAPTURE/td td><RAW<>/td td><id="rb"><MAXIMUM/td td><id="rb"><CROPPED_RAW/td td><>Preview with YUV / JPEG and cropped RAW still capture</td></tr><tr tr td<><><PRIV / YUV> id="rb"/td td td><id="<PREVIEW>rb"PREVIEW></td><td>PRIV / YUV</td td><id="rb"><PREVIEW/td td><id="rb">VIDEO_RECORD / PREVIEW</td td>RAW><</td td><id="rb"><MAXIMUM/td td><id="rb"><CROPPED_RAW/td td><>Video Recording with preview and cropped RAW still capture</td></tr></table br><>

<h5>미리 보기 안정화 보장 스트림 구성</h5>

포함되는 디바이스의 경우 다음 스트림 조합이 보장됩니다. table><tr><th colspan="2" id="rb"Target 1</th th><colspan=">2" id="rb">Target 2</th><rowspan으로 설정된<CameraMetadata#CONTROL_VIDEO_STABILIZATION_MODE_PREVIEW_STABILIZATION CaptureRequests CaptureRequest#CONTROL_VIDEO_STABILIZATION_MODE 의 경우 ="2">Sample use case(s)</th<>/tr tr><><th>Type</th th><id="rb">Max size</th th>><Type</th th><id="rb">Max size</th></tr CameraCharacteristics#CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODESCameraMetadata#CONTROL_VIDEO_STABILIZATION_MODE_PREVIEW_STABILIZATION><tr><td>PRIV / YUV</td td><id="rb"><s1440p/td td><colspan="2" id="rb"></td td<>>Stabilized Preview, GPU 비디오 처리 또는 미리 보기 안정화되지 않은 비디오 녹화.</td></tr tr tr><><td<>PRIV / YUV td><id="rb"<>s1440p/td td<JPEG / YUV>></td td><id="rb"<>MAXIMUM/td td><>Standard 여전히 안정화된 미리 보기로 이미징합니다.</td/tr tr><td>PRIV / YUV><</td td><id="rb"><PREVIEW/td td>><PRIV / YUV</td td><id="rb">s1440p</td td>><안정화된 미리 보기 및 기록 스트림<을 사용하여 고해상도 녹음.></td></tr></table><br>

최대 크기 열의 경우 PREVIEW는 디바이스의 화면 해상도 또는 1080p(1920x1080)에 가장 적합한 크기 일치를 나타냅니다. RECORD는 에 의해 android.media.CamcorderProfile결정된 대로 카메라 디바이스의 지원되는 최대 녹화 해상도를 나타냅니다. MAXIMUM는 해당 형식 또는 대상 StreamConfigurationMap#getOutputSizes(int)에 대한 카메라 디바이스의 최대 출력 해상도를 나타냅니다.

카메라 디바이스의 기능은 매우 다양하기 때문에 지정된 카메라 디바이스는 이러한 보장을 벗어난 크기의 대상 조합을 지원할 수 있지만 이러한 대상을 사용하여 세션을 호출 #isSessionConfigurationSupported 하거나 만들려고 시도하는 경우에만 테스트할 수 있습니다.

176x144(QCIF) 해상도 예외: 카메라 디바이스는 일반적으로 더 큰 해상도에서 더 작은 해상도로 축소할 수 있는 고정된 기능을 가지고 있으며, 고해상도 이미지 센서가 있는 디바이스에서 이러한 제한으로 인해 QCIF 해상도가 완전히 지원되지 않는 경우도 있습니다. 따라서 1920x1080 해상도(너비 또는 높이)를 초과하는 다른 스트림과 함께 QCIF 확인 스트림을 구성하려고 하면 지원되지 않을 수 있으며, 그렇지 않으면 캡처 세션 생성이 실패합니다.

<h3>다시 처리</h3>

카메라 디바이스가 YUV 재처리() 또는 PRIVATE 재처리(CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES_YUV_REPROCESSINGCameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES_PRIVATE_REPROCESSING)를 지원하는 경우 애플리케이션은 세션에 대한 설정을 android.hardware.camera2.params.SessionConfiguration#setInputConfiguration input configuration 통해 재처리 가능한 캡처 세션을 만들어 일반 캡처 요청 외에도 재처리 캡처 요청을 제출할 수도 있습니다. 재처리 캡처 요청은 세션의 입력 Surface 사용 가능한 다음 버퍼를 가져와 카메라 디바이스의 처리 파이프라인을 통해 다시 전송하여 요청의 대상 출력 Surface에 대한 버퍼를 생성합니다. 재처리 요청에 대한 새 이미지 데이터가 캡처되지 않습니다. 그러나 애플리케이션에서 제공하는 입력 버퍼는 이전에 동일한 세션의 동일한 카메라 디바이스에서 직접(예: 0-Shutter-Lag 사용 사례의 경우) 또는 간접적으로 캡처해야 합니다(예: 여러 출력 이미지 결합).

활성 재처리 가능한 캡처 세션은 각 캡처 요청에 대한 카메라 디바이스에 대한 입력 Surface 및 잠재적 출력 Surface 집합을 결정합니다. 애플리케이션은 카메라 디바이스에서 새 이미지를 캡처하는 일반 캡처 요청을 만들고, 입력Surface에서 버퍼를 처리하는 재처리 캡처 요청을 만드는 데 사용할 #createCaptureRequest createCaptureRequest#createReprocessCaptureRequest createReprocessCaptureRequest 수 있습니다. 세션에서 출력 Surface의 일부 조합은 요청에서 동시에 사용되지 않을 수 있습니다. 요청에서 동시에 사용할 수 있는 출력 Surface의 보장된 조합은 아래 #createCaptureSession createCaptureSession표에 나열됩니다. 한 캡처 요청의 모든 출력 Surface는 카메라 디바이스의 새 캡처 또는 요청이 재처리 캡처 요청인지에 따라 입력 Surface 동일한 원본에서 가져옵니다.

카메라 디바이스에서 지원하는 입력 형식 및 크기를 통해 StreamConfigurationMap#getInputFormatsStreamConfigurationMap#getInputSizes쿼리할 수 있습니다. 지원되는 각 입력 형식에 대해 카메라 디바이스는 쿼리할 수 StreamConfigurationMap#getValidOutputFormatsForInput 있는 재처리를 위한 출력 형식 및 크기 집합을 지원합니다 StreamConfigurationMap#getOutputSizes. 입력 구성에 대한 유효한 재처리 출력 대상이 아닌 형식의 출력 Surface는 세션의 일부일 수 있지만 재처리 요청의 대상으로 사용할 수는 없습니다.

애플리케이션은 이미지에 android.media.ImageReader#newInstanceandroid.graphics.ImageFormat#PRIVATE 직접 액세스할 android.graphics.ImageFormat#PRIVATE 수 없으므로 형식으로 만든 출력 Surface 입력을 다시 처리하는 데 사용되는 것으로 간주되므로 크기는 형식에 대해 지원되는 입력 크기 android.graphics.ImageFormat#PRIVATE 중 하나와 android.media.ImageReader 일치해야 합니다. 그렇지 않으면 다시 처리 가능한 캡처 세션을 만들지 못합니다.

API 수준 30부터 다시 처리 가능한 캡처 세션을 다시 만들면 입력 화면에서 대기 중이지만 아직 처리되지 않은 버퍼가 모두 플러시됩니다.

아래 표의 구성은 카메라 디바이스가 YUV 재처리 또는 PRIVATE 재처리를 지원하는 경우 다시 처리 가능한 캡처 세션을 만들 수 있습니다. 그러나 다시 처리 가능한 세션을 만드는 데 사용되는 모든 출력 대상이 동시에 사용될 수 있는 것은 CaptureRequest 아닙니다. 재처리 CaptureRequest에서 출력 대상을 1개만 지원하는 디바이스의 경우 여러 출력 대상을 사용하여 재처리 CaptureRequest 를 제출하면 CaptureFailure. 재처리 CaptureRequest에서 여러 출력 대상을 지원하는 디바이스의 경우 동시에 포함할 수 있는 CaptureRequest 보장된 출력 대상이 아래 #createCaptureSession createCaptureSession표에 나열됩니다. 예를 들어 PRIVATE 재처리를 지원하는 FULL-capability(CameraCharacteristics#INFO_SUPPORTED_HARDWARE_LEVEL==CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_FULL FULL) 디바이스를 사용하면 애플리케이션에서 입력 1개(, ) 및 출력 3개(PRIVMAXIMUM, ), (PRIV, MAXIMUMPREVIEW) 및 (PRIVYUV, MAXIMUM)로 다시 처리 가능한 캡처 세션을 만들 수 있습니다. 그러나 애플리케이션이 아래에 나열#createCaptureSession createCaptureSession된 테이블을 기반으로 (, MAXIMUM) 및 (PRIVYUV, MAXIMUM) 출력을 사용하여 일반 또는 재처리 캡처를 제출할 수 있다고 보장되지는 않습니다. 즉, 아래 표를 사용하여 다시 처리 가능한 캡처 세션을 만들기 위한 보장된 스트림 구성을 결정하고 아래 #createCaptureSession createCaptureSession 테이블을 사용하여 일반 또는 재처리에서 동시에 제출할 수 있는 보장된 출력 대상을 결정합니다 CaptureRequest .

10비트 지원 디바이스에서 10비트 출력 대상으로 다시 처리할 수 CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT 없습니다. 10비트 동적 범위 프로필을 android.hardware.camera2.params.DynamicRangeProfiles 사용하도록 설정된 OutputConfiguration#setDynamicRangeProfile 하나 이상의 광석 출력 구성으로 다시 사용 가능한 캡처 세션을 초기화하려고 하면 트리거IllegalArgumentException됩니다.

<스타일 범위> #rb { 테두리 오른쪽 너비: 두께; }</style>

LIMITED 수준(CameraCharacteristics#INFO_SUPPORTED_HARDWARE_LEVEL==CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED LIMITED) 디바이스는 디바이스에 대한 일반 캡처에 대해 이전에 나열된 것 외에도 다시 처리 가능한 캡처 세션을 만들기 위해 다음 스트림 조합을 지원합니다.CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED LIMITED

<table><tr><th colspan="11">LIMITED 수준 추가 보장 구성을 만들어 다시 처리 가능한 캡처 세션<br>(PRIV 입력은 PRIVATE 재처리가 지원되는 경우에만 보장됩니다. YUV 입력은 YUV 재처리가 지원되는 경우에만 보장됩니다.</th></tr tr<><>th colspan="2" id="rb">Input</th th><colspan="2" id="rb">Target 1</th th><colspan="2" id="rb">Target 2</th><colspan="2" id=" rb">Target 3</th th><colspan="2" id="rb">Target 4</th th><rowspan="2">Sample use case(s)</th></tr<>tr><th>Type</th><th id="rb">Max size</th th><>Type</th th><id="rb">Max size</th th><>Type</th th><id="rb">Max size</th th><>Type</th><id="rb">Max size</th th>><Type</th th><id="rb" >Max size</th></tr tr>><<tdYUV<>PRIV//td td><id="rb"MAXIMUM<>/td td td><>input</td td><id="rb"<>MAXIMUM/td td<>>JPEG</td td><id="rb"<MAXIMUM>/td<>td></td><td id="rb"></td td><></td td><id="rb"></td td<>>No-viewfinder still image reprocessing.</td></tr tr><<>td>PRIVYUV/</td td><id="rb">MAXIMUM</td td td><>input</td td><id="rb"><MAXIMUM/td td>PRIV><</td td><id="rb">PREVIEW</td><td/td<JPEG> td><id="rb">MAXIMUM</td td<>/td><>< id="rb"></td td td>><ZSL(0-Shutter-Lag)은 여전히 이미징입니다.</td></tr tr><<>td>PRIVYUV/</td td><id="rb">MAXIMUM</td td td><>input</td td><id="rb"><MAXIMUM/td td>YUV><</td td><id="rb">PREVIEW</td><td/td<JPEG> td><id="rb">MAXIMUM</td td<>/td><>< id="rb"></td td td>><ZSL 스틸 및 앱 내 처리 이미징</td></tr tr><><td>PRIV</YUV/td td><id="rb">MAXIMUM</td td td><>input</td td><id="rb"><MAXIMUM/td td<>/td<>YUV td><id="rb"><PREVIEW/td><td/tdYUV<> td><id="rb"><PREVIEW/td td><<>JPEG/td td><id="rb">MAXIMUM</td><계속 캡처된 td>ZSL 앱 내 처리입니다.</td></tr></table><br>

전체 수준(CameraCharacteristics#INFO_SUPPORTED_HARDWARE_LEVEL==CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_FULL FULL) 디바이스는 디바이스에 대한 것 외에도 CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED LIMITED 다시 처리 가능한 캡처 세션을 만들기 위해 다음 스트림 조합을 지원합니다.

<table><tr><th colspan="11">재처리 가능한 캡처 세션<br>을 만들기 위한 전체 수준 추가 보장 구성(PRIV PRIVATE 재처리가 지원되는 경우에만 입력이 보장됩니다. YUV 입력은 YUV 재처리가 지원되는 경우에만 보장됩니다.</th></tr tr>><<th colspan="2" id="rb">Input</th th><colspan="2" id="rb">Target 1</th><colspan="2" id="rb">Target 2</th><colspan="2" id="rb">Target 3</th><th colspan="2" id="rb">Target 4</th th><rowspan="2">Sample use case(s)</th<>/tr><tr><th>Type</th><th id="rb">Max size</th><th>Type</th th><id="rb">Max size</th th><>Type</th th><id="rb">Max size</th th>><Type</th><id="rb">Max size</th th><>Type</th th><id="rb"Max> size</th></tr tr<><>td<>YUV/td td><id="rb"<MAXIMUM>/td td><><YUV/td td><id="rb"<MAXIMUM>/td td<>PRIV></td td><id="rb"PREVIEW<>/td<>td></><td td id="rb"></td><td>< td><id="rb"></td td<>>maximum-resolution multi-frame image fusion in-app processing with regular preview.</td></tr tr><><td>YUV</td td><id="rb">MAXIMUM</td td>><<YUV/td td><id="rb"><MAXIMUM/td td>><<YUV/td td><id="rb"><PREVIEW/td td><<>/td td><id="rb"></td><td></td td><id="rb"></td td>><maximum-resolution 다중 프레임 이미지 fusion 앱 내 2개 입력 처리.</td></tr tr><<>td>PRIVYUV/</td td><id="rb">MAXIMUM</td td td><>input</td td><id="rb"><MAXIMUM/td td>PRIV><</td td><id="rb">PREVIEW</td><td/td<YUV> td><id="rb">RECORD</td td<>/td><>< id="rb"></td td td>><일반 미리 보기로 고해상도 ZSL 앱 내 비디오 처리.</td></tr tr>><<td>PRIV</td td><id="rb"><MAXIMUM/td td>>PRIV<</td td><id="rb"><MAXIMUM/td td><><PRIV/td td><id="rb"><PREVIEW/td td>>YUV<</td td><id="rb">MAXIMUM</td td><td><>< id="rb"></td td td><>Maximum-resolution 일반 미리 보기를< 사용하는 ZSL 앱 내 처리/td></tr tr>><<td>PRIV</td td><id="rb"><MAXIMUM/td td>>PRIV<</td td><id="rb"><MAXIMUM/td td><><YUV/td td><id="rb"><PREVIEW/td td>>YUV<</td td><id="rb">MAXIMUM</td td><td><>< id="rb"></td td td><>Maximum-resolution 2개 입력 ZSL 앱 내 처리.</td></tr tr><><td>PRIV</YUV/td td><id="rb">MAXIMUM</td td td><>input</td td><id="rb"><MAXIMUM/td td<>/td<>PRIV td><id="rb"><PREVIEW/td><td/tdYUV<> td><id="rb"><PREVIEW/td td><<>JPEG/td td><id="rb">MAXIMUM</td><td>ZSL은 여전히 캡처 및 앱 내 처리입니다.</td></tr></table><br>

RAW 기능(CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES 포함 CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_RAW RAW) 디바이스는 둘 다 CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_FULL FULL 에서 CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED LIMITED 다시 처리 가능한 캡처 세션을 만들기 위해 다음 스트림 조합을 추가로 지원합니다.

<table><tr><th colspan="11">RAW-capability는 재처리 가능한 캡처 세션<br>을 만들기 위한 추가 보장 구성입니다.PRIV 입력은 PRIVATE 재처리가 지원되는 경우에만 보장됩니다. YUV 입력은 YUV 재처리가 지원되는 경우에만 보장됩니다.</th></tr tr<><>th colspan="2" id="rb">Input</th th><colspan="2" id="rb">Target 1</th th><colspan="2" id="rb">Target 2</th><colspan="2" id="rb">Target 3</th th><colspan="2" id="rb">Target 4</th th><rowspan="2">Sample use case(s)</th<>/tr<>tr><th>Type</th th><id="rb">Max size</th th><>Type</th th><id="rb">Max size</th th><>Type</th th><id="rb">Max size</th th><>Type</th><th id="rb">Max size</th th>><Type</th><th id="rb">Max size</th></tr tr<>td<>td/>PRIV<><YUV id="rb"<MAXIMUM>/td td><>Same as input</td td><id="rb"<>MAXIMUM/td td><<>YUV/td td><id="rb"PREVIEW<>/td td<>RAW></td td><id="rb"><MAXIMUM/td td><<>/td td><id="rb"></td td><>Mutually exclusive ZSL 앱 내 처리 및 DNG 캡처</td></tr tr><><td>PRIV</YUV/td td><id="rb">MAXIMUM</td td td><>input</td td><id="rb"><MAXIMUM/td td<>/td<>PRIV td><id="rb"><PREVIEW/td><td/tdYUV<> td><id="rb"><PREVIEW/td td><<>RAW/td td><id="rb">MAXIMUM</td><td>상호 배타적인 ZSL 앱 내 처리 및 DNG 캡처를 사용한 미리 보기.</td></tr tr><><td>PRIV</YUV/td td><id="rb">MAXIMUM</td td td><>input</td td><id="rb"><MAXIMUM/td td<>/td<>YUV td><id="rb"><PREVIEW/td><td/tdYUV<> td><id="rb"><PREVIEW/td td><<>RAW/td td><id="rb">MAXIMUM</td><td>상호 배타적인 ZSL 2개 입력 앱 내 처리 및 DNG 캡처.</td></tr tr><><td>PRIV</YUV/td td><id="rb">MAXIMUM</td td td><>input</td td><id="rb"><MAXIMUM/td td<>/td<>PRIV td><id="rb"><PREVIEW/td><td/tdJPEG<> td><id="rb"><MAXIMUM/td td><<>RAW/td td><id="rb">MAXIMUM</td><td>상호 배타적인 ZSL은 여전히 DNG 캡처를 사용하여 캡처하고 미리 봅니다.</td></tr tr><><td>PRIV</YUV/td td><id="rb">MAXIMUM</td td td><>input</td td><id="rb"><MAXIMUM/td td<>/td<>YUV td><id="rb"><PREVIEW/td><td/tdJPEG<> td><id="rb"><MAXIMUM/td td><<>RAW/td td><id="rb">MAXIMUM</td><td>상호 배타적인 ZSL 앱 내 처리(여전히 캡처 및 DNG 캡처< 사용)/td></tr></table><br>

LEVEL-3(CameraCharacteristics#INFO_SUPPORTED_HARDWARE_LEVEL==CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_3 LEVEL_3) 디바이스는 디바이스에 대한 스트림 조합 외에도 다시 처리 가능한 캡처 세션을 만들기 위한 CameraMetadata#INFO_SUPPORTED_HARDWARE_LEVEL_FULL FULL 다음 스트림 조합을 지원합니다. 두 번째 구성은 동시에 구성 MAXIMUMYUVJPEG 출력을 허용하지만 해당 구성은 일반 캡처 세션에 대해 나열되지 않으므로 두 대상에 대한 동시 출력은 허용되지 않습니다.

<table><tr><th colspan="13">LEVEL-3은 재처리 가능한 캡처 세션<br>(PRIV PRIVATE 재처리가 지원되는 경우에만 입력)을 만들기 위한 추가 보장 구성을 보장합니다. YUV입력은 항상 보장됩니다.</th></tr tr<><>th colspan="2" id="rb">Input</th><colspan="2" id="rb">Target 1</th th><colspan="2" id="rb">Target 2</th><colspan="2" id="rb">Target 3</th th><colspan="2" id="rb">Target 4</th th><colspan="2" id="rb">Target 5</th th><rowspan="2">Sample use case(s)</th></tr><tr><th>Type</th><th id="rb">Max size</th><th>Type</th th><id="rb">Max size</th th><>Type</th><th id="rb">Max size</th th>><Type</th><id="rb">Max size</th th>><Type</th th><id ="rb">Max size</th><th>Type</th th><id="rb">Max size</th></tr tr<><>tdYUV></td td><id="rb"<MAXIMUM>/td td<>/tdYUV>< td><id="rb" >MAXIMUM</td td><>PRIV</td td><id="rb">PREVIEW</td td><<PRIV>/td td><id="rb">640x480</td td><><RAW/td td><id="rb">MAXIMUM</td td><></td td><id="rb"></td td>><In-app viewfinder analysis with ZSL and RAW.</td></tr tr><><td>PRIV</YUV/td td><id="rb">MAXIMUM</td td td><>input</td td><id="rb"><MAXIMUM/td td<>/td<>PRIV td><id="rb"><PREVIEW/td><td/tdPRIV<> td><id="rb"><640x480/td td><<>RAW/td td><id="rb">MAXIMUM</td><ZSL, RAW 및 JPEG 재처리 출력을 사용하여 td><JPEG/td><td td id="rb">MAXIMUM</td td><>앱 내 뷰파인더 분석</td></tr></table><br>

카메라 디바이스가 다해상도 YUV 입력 및 다중 해상도 YUV 출력을 지원하거나 다해상도 PRIVATE 입력 및 다중 해상도 PRIVATE 출력을 지원하는 경우 LIMITED 및 FULL 디바이스에 대한 추가 필수 스트림 조합이 아래에 나열됩니다(MULTI_RES최대 크기 열 MultiResolutionImageReader 에서는 출력을 위한 값 및 입력을 위한 다중 해상도 InputConfiguration 참조):<테이블><tr><th colspan="11">다중 해상도 입력 및 다중 해상도 출력 br(입력)을 사용하여 다시 처리 가능한 캡처 세션을 만들기 위한 제한된 수준의 추가 보장 구성은 PRIVATE 재처리가 지원되는 경우에만 보장됩니다. YUV 입력은 YUV 재처리가 지원되는 경우에만 보장됩니다.</th></tr tr><<>th colspan="2" id="rb">Input</th th><colspan="2" id="rb">Target 1</th th><colspan="2" id="rb">Target 2</th><PRIV><th colspan="2" id="rb"Target 3/th th><colspan="2" id="rb">Target 4</th th><rowspan="2">Sample use case(s)</th<>/tr tr<>><th>Type</th><th id="rb">Max size</th><th>Type</th th><id="rb">Max size</th th>><Type</th th><id="rb">Max size</th th>><Type</th><id="rb">Max size</th th><>Type</<> th th><id="rb">Max size</th></tr tr><td<>td>/PRIV<><YUV id="rb"<>MULTI_RES/td td td>input</td><td><id="rb">MULTI_RES</td tdJPEG>><</td td><id="rb"<MULTI_RES>/td td></td td><>< id="rb"></td<>td td><>< id="rb"/td td td id="rb"></td td td><>No-viewfinder still image 다시 처리합니다.</td></tr tr><<>td>PRIVYUV/</td td><id="rb">MULTI_RES</td td td><>input</td td><id="rb"><MULTI_RES/td td>PRIV><</td td><id="rb">PREVIEW</td><td/td<JPEG> td><id="rb">MULTI_RES</td td<>/td><>< id="rb"></td td td>><ZSL(0-Shutter-Lag)은 여전히 이미징입니다.</td></tr tr><<>td>PRIVYUV/</td td><id="rb">MULTI_RES</td td td><>input</td td><id="rb"><MULTI_RES/td td>YUV><</td td><id="rb">PREVIEW</td><td/td<JPEG> td><id="rb">MULTI_RES</td td<>/td><>< id="rb"></td td td>><ZSL 스틸 및 앱 내 처리 이미징</td></tr tr><><td>PRIV</YUV/td td><id="rb">MULTI_RES</td td td><>input</td td><id="rb"><MULTI_RES/td td<>/td<>YUV td><id="rb"><PREVIEW/td><td/tdYUV<> td><id="rb"><PREVIEW/td td><<>JPEG/td td><id="rb">MULTI_RES</td><계속 캡처된 td>ZSL 앱 내 처리입니다.</td></tr></table br><table>><<tr><th colspan="11">FULL-level 추가 보장 구성은 다중 해상도 입력 및 다중 해상도 출력<br>(PRIV 입력이 PRIVATE 재처리가 지원되는 경우에만 보장됩니다. YUV 입력은 YUV 재처리가 지원되는 경우에만 보장됩니다.)</th></tr tr><><th colspan="2" id="rb" >Input</th th><colspan="2" id="rb">Target 1</th th><colspan="2" id="rb">Target 2</th th><colspan="2" id="rb">Target 3</th th><colspan="" 2" id="rb">Target 4</th th><rowspan="2">Sample use case(s)</th<>/tr tr<>><th>Type</th th><id="rb">Max size</th>><Type</th th><id="rb">Max size/< th th><Type/th th><id="rb">Max size</th th><>Type</th><id="rb">Max size</th th>><Type/th th><type<="rb">Max size</th></tr<>tr tr><td>PRIV< td><id="rb"MULTI_RES<>/td td<PRIV><>/td td><id="rb"MULTI_RES></td td><PRIV<>/td td td><id=<>"rb">PREVIEW</td td><>YUV</td td><id="rb">MULTI_RES</td td><></td td><id="rb"></td td>><Maximum-resolution ZSL in-app processing with regular preview.</td></tr tr>><<td>PRIV</td td><id="rb"><MULTI_RES/td td>>PRIV<</td td><id="rb"><MULTI_RES/td td><><YUV/td td><id="rb"><PREVIEW/td td>>YUV<</td td><id="rb">MULTI_RES</td td><td><>< id="rb"></td td td><>Maximum-resolution 2개 입력 ZSL 앱 내 처리.</td></tr tr><><td>PRIV</YUV/td td><id="rb">MULTI_RES</td td td><>input</td td><id="rb"><MULTI_RES/td td<>/td<>PRIV td><id="rb"><PREVIEW/td><td/tdYUV<> td><id="rb"><PREVIEW/td td><<>JPEG/td td><id="rb">MULTI_RES</td><td>ZSL은 여전히 캡처 및 앱 내 처리입니다.</td></tr></table><br>

ULTRA_HIGH_RESOLUTION_SENSOR 기능이 있는 디바이스에는 클라이언트가 다음을 활용할 수 있는 몇 가지 추가 보장이 있습니다.

<table><tr><th colspan="13">ULTRA_HIGH_RESOLUTION 센서에 대한 추가 보장 조합(YUV/PRIVATE 재처리가 지원되는 경우에만 YUV/PRIV 입력이 보장됨)</th></tr tr><><th colspan="3" id="rb">Input</th th<>colspan="3" id="rb">Target 1</th th><colspan="3" id="rb">Target 2</th th<>colspan="3" id="rb">Target 3</th th><rowspan="2">샘플 사용 사례</th<>/tr tr<>><th>Type</th><th id="rb"> SC Map</th th><id="rb">Max size</th th>><Type</th th><id="rb"> SC Map</th th><id ="rb">Max size</th<>th>Type</th th><id="rb"> SC Map</th><th id="rb">Max size</th th>><Type</th th><id="rb"> SC Map</th><th id="rb" >Max size</th></tr tr><tr<>td><><RAW id="rb"<>MAX_RES/td td><id="rb"<>MAX/td td><RAW></td td><id="rb"MAX_RES<>/td td id="rb"/td td><id="rb">MAX</td td><id="rb"<PRIV / YUV>/td td><id="rb"DEFAULT></td td><id="rb">PREVIEW</td td><colspan="3" id="rb"></td td><>RAW remosaic 별도의 미리 보기</td<>/tr tr><td<>/td td><><RAW id="rb"/td td><id="rb"<>>MAXMAX_RES</td td>><<RAW/td td><id="rb"MAX_RES></td td><id="rb"<MAX>/td td><id="rb"/td td><id="rb"PRIV / YUV<>/td td id="rb<>PREVIEW"><DEFAULT/><td><td id="rb">로 다시 처리JPEG / YUV</td td><id="rb"><MAX_RES/td td><id="rb"><MAX/td td><>Ultra high res RAW -> JPEG / YUV with separate preview</td></tr tr><<>td>YUV / PRIV</td td><id="rb">MAX_RES</td td><id="rb"><MAX/td td>><<YUV / PRIV/td td><id="rb">MAX_RES</td td><id="rb"/>MAX< td td><id="rb">YUV / PRIV</td td><id="rb"><DEFAULT/td td><id="rb"><PREVIEW/td td><id="<>JPEG/td td><id="rb"MAX_RES<>/td td><id="rb"<>MAX/td td><> Ultra high res PRIV / YUV -> YUV / JPEG reprocessing with separate preview</td<>/tr<>/table br>>< RAW 기능 및 LEVEL-3 하드웨어 수준에 대한 추가 필수 스트림 조합이 없습니다. </피>

<h3>제한된 고속 녹음</h3>

원하는 고속 FPS 범위가 보급되면 CameraCharacteristics#CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES애플리케이션에서 고속 캡처를 사용할 android.hardware.camera2.params.SessionConfiguration#SESSION_REGULAR normal capture session 수 있습니다. 이 경우 일반 캡처 세션과 연결된 모든 API 의미 체계가 적용됩니다.

A는 android.hardware.camera2.params.SessionConfiguration#SESSION_HIGH_SPEED high-speed capture session 카메라 디바이스가 고속 비디오 기능(>즉, CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES 포함)을 지원하는 경우 고속 비디오 녹화(=120fps)에 사용할 수 있습니다 CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO. 제한된 고속 캡처 세션에는 일반 캡처 세션에 비해 특별한 제한 사항이 있습니다.

<ul>

<li>일반 캡처에 대해 위에서 지정한 출력 대상 Surface 요구 사항 외에도 고속 캡처 세션은 최대 2개의 출력 Surface만 지원하지만 애플리케이션은 단 하나의 Surface 구성하도록 선택할 수 있습니다(예: 미리 보기 전용). 모든 Surface는 비디오 인코더 표면(획득 android.media.MediaRecorder#getSurface 또는) 또는 android.media.MediaCodec#createInputSurface미리 보기 표면(에서 가져온 android.view.SurfaceView화면 android.graphics.SurfaceTextureandroid.view.Surface#Surface(android.graphics.SurfaceTexture))이어야 합니다. Surface 크기는 보고StreamConfigurationMap#getHighSpeedVideoSizes되는 크기 중 하나여야 합니다. 여러 Surface가 구성된 경우 해당 크기는 동일해야 합니다.</li>

<li>활성 고속 캡처 세션은 통해 CameraConstrainedHighSpeedCaptureSession#createHighSpeedRequestList만든 요청 목록만 허용하며 요청 목록은 또는 을 통해CameraCaptureSession#captureBurst captureBurstCameraCaptureSession#setRepeatingBurst setRepeatingBurst서만 이 세션에 제출할 수 있습니다.</li>

<li>이 세션에 요청되는 FPS 범위는 에서 StreamConfigurationMap#getHighSpeedVideoFpsRangesFor선택해야 합니다. 애플리케이션은 여전히 원하는 FPS 범위를 제어하는 데 사용할 CaptureRequest#CONTROL_AE_TARGET_FPS_RANGE 수 있습니다. 다른 android.util.Range#getUpper() maximum FPS FPS 범위로 전환하면 일부 카메라 디바이스 재구성이 트리거될 수 있으며, 이로 인해 대기 시간이 추가로 발생할 수 있습니다. 애플리케이션은 고속 스트리밍 중에 불필요한 최대 대상 FPS 변경을 최대한 피하는 것이 좋습니다.</li>

<li>이 세션에 제출된 요청 목록의 경우 카메라 디바이스는 CaptureRequest#CONTROL_MODE control mode각각 AE(자동 노출), AWB(자동 흰색 균형) 및 AF(자동 초점) CameraMetadata#CONTROL_AWB_MODE_AUTOCameraMetadata#CONTROL_MODE_AUTOCameraMetadata#CONTROL_AE_MODE_ON를 재정의합니다.CameraMetadata#CONTROL_AF_MODE_CONTINUOUS_VIDEO 모든 후처리 블록 모드 컨트롤이 FAST로 재정의됩니다. 따라서 캡처 및 후처리 매개 변수를 수동으로 제어할 수 없습니다. 이 외에도 컨트롤의 하위 집합만 작동합니다. 자세한 내용은 참조 CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_CONSTRAINED_HIGH_SPEED_VIDEO 하세요.</li>

</ul>

에 대한 android.hardware.camera2.CameraDevice.createCaptureSession(android.hardware.camera2.params.SessionConfiguration)Java 설명서

이 페이지의 일부는 만들고 공유한 작업을 기반으로 하며 에 설명된 조건에 따라 사용됩니다.

적용 대상

CreateCaptureSession(IList<Surface>, CameraCaptureSession+StateCallback, Handler)

[Android.Runtime.Register("createCaptureSession", "(Ljava/util/List;Landroid/hardware/camera2/CameraCaptureSession$StateCallback;Landroid/os/Handler;)V", "GetCreateCaptureSession_Ljava_util_List_Landroid_hardware_camera2_CameraCaptureSession_StateCallback_Landroid_os_Handler_Handler")]
public abstract void CreateCaptureSession(System.Collections.Generic.IList<Android.Views.Surface> outputs, Android.Hardware.Camera2.CameraCaptureSession.StateCallback callback, Android.OS.Handler? handler);
[<Android.Runtime.Register("createCaptureSession", "(Ljava/util/List;Landroid/hardware/camera2/CameraCaptureSession$StateCallback;Landroid/os/Handler;)V", "GetCreateCaptureSession_Ljava_util_List_Landroid_hardware_camera2_CameraCaptureSession_StateCallback_Landroid_os_Handler_Handler")>]
abstract member CreateCaptureSession : System.Collections.Generic.IList<Android.Views.Surface> * Android.Hardware.Camera2.CameraCaptureSession.StateCallback * Android.OS.Handler -> unit

매개 변수

outputs
IList<Surface>
handler
Handler
특성

설명

이 페이지의 일부는 만들고 공유한 작업을 기반으로 하며 에 설명된 조건에 따라 사용됩니다.

적용 대상