Android 13 voegt een aantal nieuwe functies toe aan de Camera2 API, waaronder HDR-video-uitvoer en ondersteuning voor ‘stream use cases’.
De Camera2-API werd geïntroduceerd in Android 5.0 als opvolger van de originele Camera API. Met de API kunnen ontwikkelaars controleren welke camerafuncties beschikbaar zijn op een apparaat en wordt de gedetailleerde camera zichtbaar functies voor apps, inclusief bedieningselementen per frame voor belichting en witbalanswinst, verscherping, ruis verwijderen, enz. Het is ook een voorwaarde voor installatie Google Camera-poorten. Met Androïde 13, voegt Google enkele nieuwe mogelijkheden toe aan de Camera2 API.
Zoals opgemerkt door EsperMet de HAL van Android 13 kunnen smartphonemakers 10-bit video-uitvoer beschikbaar stellen aan de Camera2 API. Als een OEM ervoor kiest om 10-bit camera-uitvoer bloot te leggen, moet deze op zijn minst het HLG10-profiel ondersteunen. Als een apparaat andere HDR-formaten ondersteunt, zoals HDR10+ en Dolby Vision, kan de fabrikant van het apparaat het aanbevolen profiel adverteren bij apps met behulp van de
Camerakenmerken#REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE constante. Ondertussen kunnen apps die de Camera2 API ondersteunen een specifiek door het apparaat ondersteund dynamisch bereikprofiel instellen met behulp van de OutputConfiguration.setDynamicRangeProfile API.Naast de HDR-video-ondersteuning voegt de Camera2 API ook ondersteuning toe voor "stream use cases" zodat OEM's de cameraprestaties in verschillende streamingscenario's kunnen optimaliseren.
De stream use case geeft het doel van een bepaalde camerastream aan vanuit het perspectief van de eindgebruiker. Enkele voorbeelden van cameragebruik zijn: voorbeeldstream voor live-zoeker getoond aan de gebruiker, nog steeds vastleggen voor het genereren van foto's van hoge kwaliteit vastleggen, video-opname voor het coderen van de camera-uitvoer met het oog op toekomstig afspelen, en videogesprek voor live realtime videoconferenties.
Als een apparaatfabrikant ervoor kiest deze mogelijkheid te implementeren, is het vereist om de volgende gebruiksscenario's voor streams te implementeren:
- PREVIEW voor live zoeker en in-app beeldanalyse
- STILL_CAPTURE voor het maken van foto's
- VIDEO_RECORD voor het opnemen van videoclips
- PREVIEW_VIDEO_STILL voor één enkele stream die wordt gebruikt voor zoeker, video-opname en foto-opname.
- VIDEO_CALL voor langdurige videogesprekken
Wanneer ondersteuning voor streamgebruiksscenario's beschikbaar is, kan het camera-apparaat configuraties uitvoeren, zoals het selecteren van de optimale camerasensormodus, afstemmingsparameters selecteren en beeldverwerkingspijplijn opbouwen met behulp van de Camera2 API. Apps kunnen de Camerakenmerken#SCALER_AVAILABLE_STREAM_USE_CASES veld om de lijst met ondersteunde Steam-gebruiksscenario's op een apparaat op te vragen.
Bron: Esper