Dear Developers,
We're excited to announce that CameraX 1.4.0 has reached stable release! This version brings a host of new features, previously announced in Beta release, to a production-ready level.
What's new in 1.4.0?
This release focuses on stability and bug fixes, addressing issues identified during the RC phases. For a detailed list of Beta phase bug fixes, check out the RC release announcement. Here are some of the key improvements for the production version:
Resolved a crash that occurred when bindToLifecycle was called with a destroyed LifecycleOwner (link).
Improved zoom control by setting CONTROL_SETTINGS_OVERRIDE_ZOOM for devices that support it (link).
Addressed an issue where PreviewView#getMeteringPointFactory() produced incorrect coordinates when an effect or stream sharing was enabled (link).
Ensured more robust handling of stream configurations by using log warnings and catching IllegalArgumentException in StreamConfigurationMapCompat (link).
Added an animation for increasing visibility of ScreenFlashView during ScreenFlash#apply to address bad capture quality issues (e.g. under-exposed images) due to device brightness increase delay (link).
Decoupled Ultra HDR functionality from 10-bit output capability. This means that the device does not need 10-bit output capability to support Ultra HDR, and setting Ultra HDR in ImageCapture will be treated as dynamic range unspecified, allowing it to not affect the dynamic range settings that can be used by other use cases (link).
Improve the pinch-to-zoom smoothness by optimizing the configuration for detecting zoom gestures in PreviewView (link).
Image captures with CameraEffect lacked support for some pre-capture functionalities (i.e. flash trigger, 3A convergence, and focus lock in applicable cases). The same pre-capture and post-capture processings as general image capture (i.e. without any CameraEffect) have now been added to this feature to fix these issues. (link).
Looking ahead: Introducing androidx.camera.viewfinder & new feature combination query libraries
We’re also introducing a new library in the 1.5.0 alpha which builds on the viewfinder: camera-compose. This library in the androidx.camera group includes a CameraXViewfinder composable that seamlessly adapts CameraX to Jetpack Compose. To support this new library, we’ve unified and migrated the old camera-viewfinder library to a new androidx.camera.viewfinder library group (releasing in 1.4.0-alpha) as viewfinder-view. This group also contains the viewfinder-compose library, which can be used to display other camera feeds, such as through Camera2, in Jetpack Compose.
In addition, we’re publishing new feature combination query artifacts, camera-feature-combination-query and camera-feature-combination-query-play-services, in androidx.camera as part of the 1.5.0 alpha release.
These additions offer exciting possibilities for developers looking to explore the latest CameraX advancements. You can also see a detailed list of changes in the CameraX release notes here and here.
Get started!
Ready to experience the latest stable release or explore the new alpha features? Download the latest versions from Google Maven!
Feedback and support
As always, we encourage you to try out the new release and report any bugs you encounter via our Buganizer. For questions or feature requests, please contact us.
Thank you for your continued support of CameraX!
Sincerely,
The CameraX Development Team