What’s New

CameraX 1.4.0-alpha03

1.4.0-alpha03

Version 1.4.0-alpha03

Added CameraInfo.mustPlayShutterSound to provide the information of whether a shutter sound must be played in accordance to regional restrictions. Added OnImageCapturedCallback.onCaptureStarted and OnImageSavedCallback.onCaptureStarted for notifying when the camera has started exposing a frame. It's recommended to play the shutter sound or the shutter animation at this point. Added Screen Flash feature support in CameraX for front camera image capture. CameraX will take care of the framework-side API handling and sync the timing with application's UI changes as required (e.g. AE precapture trigger after app screen color/brightness change). Apps will only need to add their UI side implementations in the ScreenFlashUiControl interface provided to CameraX. Added Screen Flash feature UI-side implementation support in CameraX. Apps will be able to get a basic ImageCapture.ScreenFlashUiControl implementation from PreviewView or the newly added ScreenFlashView which will add a mono-color overlay view and maximize screen brightness during screen flash photo capture. Supports new Extensions features(postview and capture process progress): Added ImageCapture#getImageCaptureCapabilities() APIs for apps to query the capabilities of the postview and capture process progress callback. Apps can enable the postview using the ImageCapture.Builder#setPostviewEnabled(). The postview size can be selected using ImageCapture.Builder#setPostviewResolutionSelector(). When invoking takePicture(), onPostviewBitmapAvailable and onCaptureProcessProgressed can be implemented in OnImageSavedCallback or OnImageCapturedCallback to get the postview and process progress notification if supported. APIs for calculate coordinates transformation from sensor to the current buffer, with a flag indicating whether the Surface contains the camera orientation info. Expose the API to query PreviewCapabitlity in Preview UseCase. Added APIs to support more qualities for VideoCapture. Recorder.Builder#setVideoCapabilitiesSource(int) can be used with VIDEO_CAPABILITIES_SOURCE_CODEC_CAPABILITIES to create a Recorder instance which supports more qualities than VIDEO_CAPABILITIES_SOURCE_CAMCORDER_PROFILE. A common use case is when the application strives to record UHD video whenever feasible, but the device's CamcorderProfile does not include a UHD settings, even though the codec is capable of recording UHD video. Add ImageAnalysis output format getter/setter to CameraController. From Camera 1.3.1: Improved the ProcessCameraProvider#bindToLifecycle() performance. The major change is to optimize the process of identifying the most suitable size combinations for UseCases. The optimal results vary based on the specific UseCase combinations and the number of supported output sizes for the target devices. Allow the use of VideoCapture when Extensions are enabled. Fixed large captured JPEG image issue on Samsung A71 and M51 series devices. The captured JPEG images contain redundant 0's padding data in the JFIF compressed data segment. It causes the captured images to have extreme file size. Those redundant 0's padding data will be removed to make the captured images have normal image file sizes. Disable ImageAnalysis support on Pixels to avoid the bug on Pixel that returns the non-empty ImageAnalysis supported sizes accidentally. Fixed performance issue where CPU loading and power consumption increased when Extensions are enabled. Added Snapdragon 480 to the CameraUseInconsistentTimebaseQuirk. This fixes an issue on Android 12 for devices using this chipset where the audio in recordings is offset by the amount of time the device is in a suspended state.

View original

Discussion