DPU-Rücklesung in der Produktion

Mit Android 16 QPR2 wurde die DPU-Rücklesefunktion (Display Processing Unit) eingeführt. DPU-Readback wurde erstmals in Android 9 eingeführt, um die Ausgabe des Hardware Composers (HWC) zu testen. Dabei wird ein Hardwareblock verwendet, um On-Screen-Pixel in den CPU-zugänglichen Speicher „zurückzulesen“. Sie können DPU-Readback in der Produktion für Anwendungsfälle verwenden, bei denen Inhalte im Vollbildmodus erfasst werden müssen.

Anwendungsfälle

Die Hardware für die Sprachausgabe ist geeignet für:

  • Animationen, die eine Transformation eines statischen Zustands des gesamten Bildschirms erfordern, z. B. Ausschaltanimationen

  • Anwendungsfälle für künstliche Intelligenz (KI), die Kenntnisse des Bildschirminhalts in einer sicheren Enklave erfordern

  • Automatisierte Tests

Die Hardware für das Vorlesen ist nicht geeignet für:

  • Erfassen eines Teils des Bildschirmstatus, bei dem andere sichtbare Inhalte auf dem Bildschirm ausgeschlossen oder ausgeblendet werden

  • Aufzeichnen von DRM-geschützten Inhalten und Übertragen in eine unsichere Umgebung

Sprachausgabe aktivieren

So aktivieren Sie die Sprachausgabe:

  1. Verwenden Sie IComposerClient::getReadbackBufferAttributes, um anzugeben, dass die HWC-Implementierung Attribute des Readback-Puffers meldet.

  2. Aktivieren Sie die Systemeigenschaft debug.sf.productionize_readback_screenshot.

    Dies signalisiert dem System, dass das DPU-Readback leistungsstark und frei von visuellen Fehlern ist und für die Produktion bereit ist.

  3. Verwenden Sie die System-API ScreenCapture, um einen DPU-basierten Screenshot anzufordern. Das System versucht, DPU-Readback zu verwenden, wenn möglich. API-Clients können dies jedoch durch Übergeben des Flags CAPTURE_MODE_REQUIRE_OPTIMIZED erzwingen.

Readback testen

Wir empfehlen, mehrere Nutzeraktionen zu testen und sich dabei auf Leistung, Richtigkeit und Stromverbrauch zu konzentrieren. Testen Sie die oben aufgeführten Anwendungsfälle, um zu prüfen, ob die Leistung akzeptabel ist und ob es visuelle Fehler gibt, z. B. Bildschirmflimmern oder unerwünschte Farbverschiebungen.