Présentation de CameraX   Fait partie d'Android Jetpack.

CameraX est une bibliothèque Jetpack conçue pour faciliter le développement d'applications de caméra. Pour les nouvelles applications, nous vous recommandons d'utiliser CameraX. Elle fournit une API cohérente et intuitive qui fonctionne sur la grande majorité des appareils Android, ainsi qu'une rétrocompatibilité avec Android 5.0 (niveau d'API 21). Si vous migrez une application à partir de Camera1, consultez notre Guide de migration de Camera1 vers CameraX.

Principaux avantages

CameraX améliore l'expérience des développeurs de plusieurs manières essentielles.

Compatible avec de nombreux appareils

CameraX est compatible avec les appareils équipés d'Android version 5.0 (niveau 21 d'API) ou ultérieure, soit plus de 98 % des appareils Android existants.

Facilité d'utilisation

CameraX met en lumière des cas d'utilisation qui vous permettent de vous concentrer sur la tâche à effectuer plutôt que sur les spécificités de chaque appareil. La plupart des cas d'utilisation courants de la caméra sont compatibles :

  • Aperçu : affichez une image sur l'écran.
  • Analyse des images : accédez facilement à un tampon pour l'utiliser dans vos algorithmes, par exemple pour le transmettre à ML Kit.
  • Capture d'image : enregistrez des images.
  • Capture vidéo : enregistrez des vidéos et des pistes audio.

Uniformité sur tous les appareils

Image 2. Le Test Lab automatisé de CameraX garantit une expérience d'API uniforme sur de nombreux types d'appareils et de fabricants.

Il est difficile de maintenir un comportement uniforme de la caméra. Vous devez tenir compte du format, de l'orientation, de la rotation, de la taille de l'aperçu et de la taille de l'image. CameraX permet le fonctionnement de ces fonctions de base.

Nous gérons un Test Lab automatique de CameraX qui teste différents comportements de la caméra sur différents appareils et toutes les versions de système d'exploitation depuis Android 5.0. Ces tests sont exécutés en continu pour identifier et corriger de nombreux problèmes.

Extensions pour l'appareil photo

Figure 3. Image capturée avec l'effet bokeh (portrait) à l'aide de CameraX.

CameraX dispose d'une API facultative Extensions qui vous permet d'accéder aux mêmes fonctionnalités qu'une application d'appareil photo native d'un appareil en seulement deux lignes de code.

Les extensions comprennent le bokeh (portrait), le mode HDR (High Dynamic Range), le mode Nuit et la retouche du visage. Toutes ces fonctionnalités nécessitent la compatibilité avec votre appareil.

Étude de cas

Pour voir comment CameraX a simplifié le développement pour Monzo, consultez cette étude de cas.

Documents

Ressources supplémentaires

Pour en savoir plus sur CameraX, consultez les ressources supplémentaires suivantes.

Atelier de programmation

  • Premiers pas avec CameraX
  • Exemple de code

  • Applications exemples de CameraX