Bei Geräten mit Android 13 und höher, unterstützt die 10-Bit-Kameraausgabe durch Profile für dynamische Bereiche, die der vom Kameraclient als Teil der Streamkonfiguration konfiguriert wurde. Gerät Hersteller unterstützen 10-Bit-Profile für dynamischen Bereich wie HLG10, HDR 10, HDR 10+ und Dolby Vision.
Durch die Unterstützung der 10-Bit-Kameraausgabe können Kameraclients die unterstützten 10-Bit-
dynamische Bereichsprofile eines Geräts durch Aufrufen von
getSupportedProfiles
Das Framework gibt dann eine
DynamicRangeProfiles
,
Diese enthält Informationen zu unterstützten dynamischen Bereichsprofilen.
die Anfragebeschränkungen zu erfassen. Die
HLG10
muss unterstützt werden. Das empfohlene dynamische Bereichsprofil finden Sie
die
REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE
ein.
Kameraclients können Streamkombinationen konfigurieren, indem sie
setDynamicRangeProfile
Weitere Informationen zu obligatorischen Kombinationen von Ausgabestreams finden Sie in der
Tabelle 10-Bit-Ausgabe mit zusätzlichen garantierten Konfigurationen in
Regelmäßige Aufnahmen.
Voraussetzungen
Damit die 10-Bit-Kameraausgabe unterstützt wird, muss das Gerät eine 10-Bit- oder eine höhere Auflösung haben kompatiblen Kamerasensor mit dem Support des jeweiligen Internetanbieters. Weitere Informationen zu verwandten Kompatibilitätsanforderungen für die 10-Bit-Unterstützung, siehe Abschnitt 7.5 Kameras in der CDD.
Implementierung
Um die 10-Bit-Kameraausgabe zu unterstützen, müssen Gerätehersteller folgende Kamera-AIDL HAL-Integrationen:
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT
einschließen in Kamerafunktionen.ANDROID_REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP
mit allen füllen unterstützte Dynamikumfangprofile und eine Bitmap ihrer Einschränkungen. DieHLG10
muss unterstützt werden. Sie müssen auch eine empfohlene dynamische Bereichsprofil, um Kamera-Clients über das optimale unterstützte Format zu informieren.- Achten Sie darauf, dass der Profilwert des dynamischen Bereichs während des Streams unterstützt wird
für Streams mit der Methode
P010
Format oder die Unterstützung eines implementierungsdefinierten Formats
(
ImageFormat.PRIVATE
). - Legen Sie je nach Profil für den dynamischen Bereich die statischen oder dynamischen Metadaten fest. verarbeiteter Gralloc 4-Puffer vor der Benachrichtigung des Kameradienstes.
Weitere Informationen zur 10-Bit-Kameraausgabe im Kamera-HAL finden Sie in der
folgt in metadata_definitions.xml
:
DYNAMIC_RANGE_TEN_BIT
- HAL-Details für
availableDynamicRangeProfilesMap
recommendedTenBitDynamicRangeProfile
10BIT_OUTPUT
Eine Referenz zur Kamera-HAL-Implementierung, die die 10-Bit-Kameraausgabe unterstützt, finden Sie unter
/hardware/google/camera/devices/EmulatedCamera/hwl
Zertifizierungsstufe
Um die Implementierung der 10-Bit-Kameraausgabe zu überprüfen und sicherzustellen, Drittanbieter-Apps die Funktion aktivieren können, empfehlen wir Folgendes: drei Phasen der Validierung.
- API-Funktionsrichtigkeit testen
- Native Kamera und Drittanbieter-App vergleichen
- Standard und High Dynamic Range vergleichen
Bei der visuellen Überprüfung der 10-Bit-Kameraausgabe wird davon ausgegangen, dass das Gerät unterstützt die Anzeige von HDR (mit mehr als 1000 cd/m2) und die App zur Videowiedergabe (für (z. B. Google Fotos) unterstützt die Wiedergabe von HDR-Videos.
API-Funktionsrichtigkeit testen
Führen Sie den Befehl folgenden CTS-, Kamera-ITS- und VTS-Tests:
hardware/interfaces/camera/provider/aidl/vts/
: Testet die grundlegende Erkennung, Konfiguration und Streaming und prüft die ob HDR-Metadaten vorhanden sind.tests/camera/src/android/hardware/camera2/cts/
: Stellt sicher, dass sich die Kamera gemäß den AOSP API-Spezifikationen verhält.cts/apps/CameraITS
: Sicherstellen, dass das allgemeine Videoverhalten bei Verwendung von HDR-Profilen einheitlich ist Der spezifische Test isttests/scene4/test_video_aspect_ratio_and_crop.py
Native Kamera und Drittanbieter-App vergleichen
Du solltest unbedingt darauf achten, dass bei der Aufnahme von 10-Bit-Videos mit Drittanbieter-Apps der nativen Kamera-App ähneln, wenn sie nicht identisch sind. Dieses sollte die Feinabstimmung wie Belichtung, Dynamikumfang und Farbe von der nativen App auf Drittanbieter-Apps übertragen. Video bestätigen Aufzeichnung des Verhaltens einer Drittanbieter-App, die die 10-Bit-Kameraausgabe auf Ihrem Gerät unterstützt. verwenden, verwenden Sie Beispiel-App „Camera2Video“ auf GitHub. In den folgenden Anleitungen werden die sichtbaren Aspekte HDR ohne Objektivzahlen, da die Sensoren, Panels Anzeigebedingungen und Anbietereinstellungen.
Vorgeschlagene Szenen zum Vergleich
Für einen Vergleich zwischen der nativen Kamera-App und einer Drittanbieter-App Mit der nativen Kamera-App Videos mit unterschiedlichen Szenen aufnehmen und die Beispiel-App Camera2Video. Empfohlene Szenen für Vergleich:
- Eine Szene mit mittel- bis wenig Licht mit einem hellen Objekt wie einer Kerze oder kleine, helle Lichtquelle, die einen großen Helligkeitsbereich erzeugt. Dieses bestätigt das automatische Belichtungsverhalten und den dynamischen Bereich.
- Eine helle Außenszene mit leuchtenden Farben und reflektierenden Objekten wie als Chrome-Bumper an einem Auto, durch die helle Akzente gesetzt werden. Damit wird bestätigt, für helle Szenen mit noch helleren Spitzlichtern.
- Eine Szene im mittleren Bereich und mit niedrigem Dynamikumfang, wie z. B. eine Innenraum-Naturszene in Privat- oder Arbeitszimmer. Dies bestätigt, dass sich weniger extreme Lichtverhältnisse wie erwartet.
Wir empfehlen, für alle Szenen die Belichtung, Farbe und und Umgang mit Hauttönen. Durch die Reduzierung von Bildwechsel zwischen Aufnahmen werden Wiederholungen vereinfacht vergleichen können.
Standard Dynamic Range und High Dynamic Range vergleichen
Um sicherzustellen, dass die Verwendung eines 10-Bit-Dynamikbereichs einen wahrgenommenen Vorteil hat. über ein Standard-Dynamikumfang-Profil zeichnen, Videoaufnahmen mit SDR vergleichen (kein HDR-Profil) gegen HDR-Videos an, um zu überprüfen, ob die wichtigsten Aspekte von HDR in Aufnahmen. Um SDR und HDR zu vergleichen, Beispiel-App „Camera2Video“ und vorgeschlagene Szenen zum Vergleich der nativen Kamera und Drittanbieter-Apps.
Die folgenden wichtigen Aspekte sollten in den vorgeschlagenen Szenen überprüft werden. Anzeigefelder HDR-fähige Helligkeit variiert in Helligkeit (gemessen in Nits oder Lumen), sodass das die folgenden Zahlen sind als Beispiele zu verstehen:
- Im Dunkeln können die hellen Lichter der Kerze oder wird ein kleines Licht mit der maximalen Helligkeit des Displays gerendert (möglicherweise auf 1.000 cd/m2) im HDR-Clip) und mit max. Helligkeit für SDR gerendert (ca. 100 cd/m2) im SDR-Clip ein. Im HDR-Clip zeigt das helle Bild sollten die Highlights aus dem Display hervorgehen und die Wahrnehmung der Nutzenden erfassen. den echten Dynamikumfang der Szene. Im Vergleich zum HDR-Clip Der SDR-Clip sollte flacher und weniger hell erscheinen.
- In einer hellen Ausgabeszene kann je nach Geräteeinstellung das HDR-Bild zeigt einen deutlichen Unterschied der Bildschirmhelligkeit im Vergleich zum SDR-Clip Für den HDR-Clip: die Bildschirmhelligkeit für die gesamte Szene (je nach Toleranz) größer sein, z. B. bis zu 800 cd/m2, und noch stärker für helle Highlights wie die Chrome-Bumper, maximale Helligkeit.
- Innenaufnahmen im mittleren Bereich und niedriger Dynamikumfang sowie HDR und SDR ähneln sich in Farbe und Tonfall. Die HDR-Aufnahme kann als die SDR. Das HDR-Bild sollte nicht dunkler sein als die SDR-Aufnahmen. Wenn Abstimmungsentscheidungen machen dies unmöglich. Stellen Sie sicher, dass die Drittanbieter-App dem Verhalten der nativen Kamera-App entspricht.