В Android 16 QPR2 появилась возможность считывать данные с производственного процессора дисплея (DPU). Обратное считывание DPU впервые появилось в Android 9 для тестирования выходных данных Hardware Composer (HWC). При этом использовался аппаратный блок, который считывал пиксели на экране и передавал их в память, доступную ЦП. Вы можете использовать обратное считывание DPU в рабочей среде для сценариев, требующих захвата полноэкранного контента.
Примеры использования
Оборудование для воспроизведения подходит для:
Анимации, которые требуют преобразования статического состояния всего экрана, например анимации выключения.
Использование искусственного интеллекта (ИИ), требующее доступа к содержимому экрана в защищенной среде
Автоматизированное тестирование
Оборудование для воспроизведения не подходит для:
Запись части экрана, на которой не показывается или скрывается другой видимый контент.
Запись контента, защищенного DRM, и его передача в небезопасную среду.
Как включить озвучивание
Чтобы включить озвучивание:
Используйте
IComposerClient::getReadbackBufferAttributes, чтобы указать, что реализация HWC сообщает атрибуты буфера обратного чтения.Включите системное свойство
debug.sf.productionize_readback_screenshot.Это означает, что обратная связь с DPU работает хорошо, не содержит визуальных ошибок и готова к использованию в производстве.
Используйте системный API
ScreenCapture, чтобы запросить скриншот, созданный с помощью DPU. Система пытается использовать DPU readback, если это возможно, но API-клиенты могут потребовать его, передав флагCAPTURE_MODE_REQUIRE_OPTIMIZED.
Проверка чтения вслух
Мы рекомендуем протестировать несколько сценариев использования, уделяя особое внимание производительности, корректности и энергопотреблению. Протестируйте перечисленные выше варианты использования, чтобы убедиться, что производительность приемлема и нет визуальных ошибок, таких как мерцание экрана или непреднамеренный сдвиг цвета.