프로덕션화된 DPU 읽기

Android 16 QPR2에서는 프로덕션화된 디스플레이 처리 장치 (DPU) 읽기를 도입했습니다. DPU 리드백은 하드웨어 블록을 활용하여 화면에 표시된 픽셀을 CPU 액세스 가능 메모리로 '리드백'하여 하드웨어 컴포저 (HWC) 출력을 테스트하기 위해 Android 9에서 처음 도입되었습니다. 전체 화면 콘텐츠를 캡처해야 하는 사용 사례의 경우 프로덕션에서 DPU 리드백을 사용할 수 있습니다.

사용 사례

리드백 하드웨어는 다음 용도에 적합합니다.

  • 전체 화면의 정적 상태를 변환해야 하는 애니메이션(예: 전원 끄기 애니메이션)

  • 보안 엔클레이브에서 화면 콘텐츠에 대한 지식이 필요한 인공지능 (AI) 사용 사례

  • 자동 테스트

리드백 하드웨어는 다음 용도에 적합하지 않습니다.

  • 화면에 표시되는 다른 콘텐츠를 제외하거나 숨기는 화면 상태의 하위 집합을 캡처

  • DRM으로 보호된 콘텐츠를 캡처하여 보안이 취약한 환경으로 전송

읽어주기 사용 설정

리드백을 사용 설정하려면 다음을 실행하세요.

  1. HWC 구현이 readback 버퍼 속성을 보고하도록 지정하려면 IComposerClient::getReadbackBufferAttributes를 사용하세요.

  2. debug.sf.productionize_readback_screenshot 시스템 속성을 사용 설정합니다.

    이는 DPU 리드백이 성능이 우수하고 시각적 버그가 없으며 프로덕션에서 사용할 준비가 되었음을 시스템에 알립니다.

  3. ScreenCapture 시스템 API를 사용하여 DPU 지원 스크린샷을 요청합니다. 시스템은 가능한 경우 DPU 읽기를 사용하려고 시도하지만 API 클라이언트는 CAPTURE_MODE_REQUIRE_OPTIMIZED 플래그를 전달하여 이를 요구할 수 있습니다.

리드백 테스트

성능, 정확성, 전력 소모에 중점을 두고 여러 사용자 여정을 테스트하는 것이 좋습니다. 앞에 나열된 사용 사례를 테스트하여 성능이 허용되고 화면 깜박임이나 의도하지 않은 색상 이동과 같은 시각적 버그가 없는지 확인합니다.