All notable changes to the Camera Kit SDK will be documented in this file.
The format is based on Keep a Changelog, and the Camera Kit SDK adheres to Semantic Versioning.
- Lens Studio 5.4 support
- Support for Lens HTTP requests
- Fix for Lens Studio 5.3 support
- Lens Studio 5.3 support
- Launched a dedicated iOS repository: https://github.com/Snapchat/camera-kit-ios-sdk, now supporting Swift Package Manager
- Lens Studio 5.2 support
- Lens Studio 5.1 support
- Fix an issue with Custom Location Markers
- Fix an issue caused by the NS_OPTIONS not being supported in Objc++
- Lens Studio 5.0.19 support
- Lens Studio 5.0.17 support
- Improvement for microphone permission handling that could cause video freeze
- Lens Studio 5.0.14 support
- Updated Privacy manifest file describing data the SDK collects and reasons required APIs it uses.
- Lens Studio 5.0.10 support
- Added Privacy manifest file describing data the SDK collects and reasons required APIs it uses.
- Added new
SCCameraKitPushToDeviceProtocol#unpair
method to unpair from Push-to-Device.
- Fix for a blank preview on app launch when device is in a low bandwidth environment
- Lens Studio 5.0.2 support
- Fix face detection for 3+ faces on IOS front camera.
- Update CocoaPods's pod names to SCCameraKit, SCCameraKitReferenceUI, SCCameraKitReferenceSwiftUI, SCCameraKitLoginKitAuth, SCCameraKitBaseExtension, SCCameraKitConnectedLensesExtension, SCCameraKitPushToDeviceExtension from this release on. Framework names in code remain the same.
- Lens elements that use overlay render target may be get incorrectly positioned when camera input does not match preview output aspect ratio
- Lens Studio 4.55 support
- Wrong camera orientation after device rotation on iOS 16 and later
- Lens UI elements assinged to the overlay render target can get incorrectly positioned when device camera input frame does not match preview preview frame aspect ratio
- Lens Studio 4.53 support
- Lens Studio 4.49 support
- Add a debug dialog to swap API token for testing
- Add support for configuring debug dialogs via deep links/qr codes.
- Fix a bug where certain assets could be loaded later than expected, potentially causing the lens to fail to load entirely if device was offline.
- Lens Studio 4.47 support
- Fix share button working as save button in the reference UI
- Deprecate application ID, remove its use across sample apps
- Lens Studio 4.46 support
- Fix a bug in the reference UI where tapping share button leads to a crash on iPad
- Fixed issue where photos of certain lenses could output a blank image
- Fixed issue where touch handling could be processed incorrectly
- Lens Studio 4.43 support
- Lens Studio 4.40 support
- Fixed bug where login flow could fail during Push to Device configuration
- Fix Snap attribution view is not shown outside of US
- Fix the issue of staging watermark showing with production API token
- Lens Studio 4.36 support
- Add a new sample app that demonstrates a custom implementation of lenses carousel and camera preview layout
- Add a debug menu to the sample app to customize lens groups at runtime
- Lens Studio 4.34 support
- Custom Location AR (Beta feature) support
- Snap attribition support as per Design Guidelines
- Staging Watermark applies on staging builds of Camera Kit integrations
- Xcode 14 or above required
- Discontinued support on iOS 11 and lower
- Lens Studio 4.31 support
- Add support for City-Scale AR Lenses (Beta)
- Add support for Push-to-Device (P2D) feature (Beta), which allows developers to send Lenses from Lens Studio to their Camera Kit application for testing. Note that on Android, P2D is only supported if your application uses the built-in lenses carousel.
- Lens Studio 4.28.x support
- Add support for Connected Lenses (Closed Beta)
- Add support for arm64 simulators
- This version has critical issues on Android. Use version 1.15.1 instead
- This version has critical issues on Android. Use version 1.14.1 instead
- Lens Studio 4.22 support
- Add support for lenses with static assets
- Add standard flash along with ring light for front-facing flash to sample app
- New API to support lenses which use the remote service feature
- New tone-mapping and portrait camera adjustments
- Add explicit viewport configuration to SCCameraKitPreviewView
- Starting with this release, an API token must be provided as part of the Camera Kit configuration, failure to do so will result in a runtime exception. See Android and iOS documentation for examples on how to obtain and provide an API token.
- The legal agreement prompt has been updated to use a more user friendly text copy. Updating to this release will result in users needing to accept the updated prompt which includes a new link to the Camera Kit's "learn more" page.
- Lens Studio 4.19 support
LensProcessor.setAudioMuted
doesn't mute/unmute audio coming from lenses
- Lenses using the new Text to Speech feature throw a runtime exception on Android and simply do nothing on iOS. This is expected as the feature is currently unavailable in Camera Kit.
- Fix bug where landmarkers would not work properly
- Allow recording videos up to 60 seconds by default
- Add support for text input in lenses
- Lens Studio 4.16 support
- Binary size optimizations (1.3MB uncompressed savings)
- Fixed bug where
additionalConfigurationFlags
would not be processed correctly
- Lens Studio 4.13 support
- M1/arm64 simulator support
- Add support for tap to focus
- Audio cuts out when swapping camera
- SessionConfig values not being used correctly
- Clear out queue file if it is corrupted
- Expose legal agreement URLs
- Too-large images fail to load in media picker
- Lens content downloads use non-optimal CDN links
- unknown_lens_hint blinks on activation
- Rear camera not using LiDAR for depth when supported
- Touch targets in lenses are not aligned with actual elements
- Recording keeps going past duration but animation stops
- Memory leak when device is offline
- gRPC objective c runtime conflicts
- Rebuilt deliverable with latest toolset to prevent crashes
- Support API token based authorization
- Legal agreement prompt pop-up dialog support
- Extension API mismatch
- Memory leak when device is offline
- Potential gRPC objective c runtime conflicts when host app contains gRPC
- Surface tracking behaves incorrectly in portrait mode
- Lens Studio 4.7 support
- Cache size config being ignored
- Remove private API usage
- Borders on captured images and videos
- Process images at video resolution
- Deadlock on stopping session
- Process images at video resolution (scaling was causing layers of lens to disappear or objects to move their location in photos)
- SwiftUI support
- Added SRE metrics
- Cache size config being ignored
- Remove private API usage
- Borders on captured images and videos
- Landmarkers localisation issues
- Button hit target may not have aligned with rendered UI
- LensStudio 4.5 support
- Stability issues
- Bitcode support
- Localization always giving priority to preferred languages with 3 letter ISO 639-2 codes
- Increase max lenses content size
- Some lenses turn grayscale when recording
- Large photo picker images (panorama) exceed memory
- Previous lens would sometimes be applied after new one was applied
- Deadlock on stopping session
- Landmarkers support
- Media picker support
- FileHandle exceptions and lens processor crash
- CarouselView crashing sometimes when swiping
- Add first frame ready event to processor observer
- Lock orientation when recording
- Carousel sometimes resetting transform on reloading data
- ARKit video is stretched
- Image hints are present in videos
- Some lenses won't download after the internet is back
- Bundled hints not localizing properly if host app doesn't support localization
- Recorded video frozen when returning from background
- Add LiDAR support
- Improve AVSessionInput camera performance
- Expose lens preview model
- Some lenses won't download after the internet is back
- Race condition sometimes when retrying requests due to no internet
- Requests sometime failing if app is open for too long
- Lens repo sometimes returning stale data
- Expose lens preview model
- ARKit video is stretched
- Image hints are present in videos
- Some lenses won't download after the internet is back
- Bundled hints not localizing properly if host app doesn't support localization
- Recorded video frozen when returning from background
- Add LiDAR support
- Improve AVSessionInput camera performance
- Expose lens preview model
- Expose lens preview model
- Some lenses won't download after the internet is back
- Race condition sometimes when retrying requests due to no internet
- Requests sometime failing if app is open for too long
- Invalidate metadata cache on cold-start when network is available
- Add support for dynamic lens launch data
- Expose user data provider
- Expose vendor data
- Add lens prefetcher support
- Add support for ARKit
- Add support for localized hints
- Original lens should be active on app opening
- First lens doesn't work on fresh install
- Carousel in landscape is not aligned
- Fix carousel ux: close button goes to empty lens
- Add processor observer
- Add share to Snapchat
- Capture and image preview support
- Add support for remote assets and unbundle tracking data
- Add sample video preview
- Correct effect viewport and aspect ratio for lenses
- Restructure Repository API
- Add video recording support
- Add sample UI and migrate CameraViewController to reference UI
- Add snap camera button
- Add Carousel
- Add support for remote lens metadata and content
- Re-apply lens when entering foreground
- Add Camera Flip Button
- add prev next buttons to flip between lenses
- use lens name property