Search Docs
Loading...
Skip to content

Changelog

Explore the recent changes made to CreativeEditor SDK.

Our release notes contain more details on features and changes.

Download the full changelog as a plain text file.

Recent Releases

Version v1.68.0 Changelog February 6, 2026

Breaking Changes

  • Engine/Swift, Editor/Swift: Packages for Apple platforms are now built with Xcode 26.0.1 and Swift 6.2, which is the new minimum requirement for using them.

Non Breaking Changes

  • Engine/Android: Bumped Kotlin to 1.9.10 and Coroutines to 1.7.3.
  • Engine: Updated entt from v3.13.1 to v3.16.
  • Engine: Removed unused black_and_white_color_mixer and hsp_selective_adjustments effects. These effects were never publicly documented or supported. Existing scenes containing these effects will still load correctly, but the effects will no longer be applied.
  • Engine: Removed the features/hspSelectiveAdjustmentsEnabled setting as it is no longer needed.
  • Editor/Android: Change demo assets’ CDN path from https://cdn.img.ly/assets/demo/v2 to https://cdn.img.ly/assets/demo/v3
  • Engine/Swift: Change demo assets’ CDN path from https://cdn.img.ly/assets/demo/v2 to https://cdn.img.ly/assets/demo/v3
  • Editor/Web: Change demo assets’ CDN path from https://cdn.img.ly/assets/demo/v2 to https://cdn.img.ly/assets/demo/v3
  • Engine: Enhanced the Grow animation with new corner-based direction options (TopLeft, TopRight, BottomLeft, BottomRight) and a scaleFactor property for controlling the initial/final scale.
  • Docs: Improved markdown versions of documentation for AI agents. Pages are now served directly as markdown when accessed with Accept: text/markdown header or via .md URLs.
  • Engine: Added setMode API to change the scene mode between Design and Video modes.
  • Plugins/Web: Plugin versions are now aligned with CE.SDK releases, starting from version 1.68.0. This is a versioning change only with no breaking API changes.
  • Editor/Android: Use custom FileProvider class to avoid manifest merger conflicts.
  • Editor/Web: Fixed the drop overlay being shown when dragging files onto the canvas even when no upload asset sources are available.
  • Editor/Flutter: Fixed an issue where effects applied to paused videos were not immediately visible when using TextureView.
  • Editor/iOS: Fixed editor cleanup being triggered incorrectly when pushing another screen on top of the editor in a navigation stack. The editor now correctly stays alive when covered by another view and only cleans up when truly dismissed (popped or closed).
  • Engine/iOS: Fixed text selection handles not being hidden when switching from text to transform edit mode on iOS 17+.
  • Engine: Prevent zoom auto-fit from producing negative or zero zoom levels.
  • Editor/Web: Added showIndicator option to builder.Dropdown() to control visibility of the expand indicator icons.
  • Engine: Fixed vector outline not resizing with shape during transform operations
  • Engine: Fixed video playback stopping unexpectedly when pressing play before videos finish loading.
  • Editor/Web: Showcases app now displays iOS/Android demos in an interactive carousel layout on desktop, allowing users to navigate between the emulator and screenshots with smooth animations and intuitive controls.
  • Plugins/Web: Fixed Runware NanoBanana2Pro API errors when using non-square aspect ratios (16:9, 9:16, 4:3, 3:4). The model requires specific dimension combinations that differ from the generic aspect ratio map.
  • Plugins/Web: Fixed Runware Seedream 4.0 API errors when using non-square aspect ratios. At 1K resolution only 1:1 is supported; now using 2K dimensions for all aspect ratios.
  • Plugins/Web: Improved Runware image generation reliability by switching from synchronous requests to async delivery with polling, avoiding timeouts on slower models.
  • Plugins/Web: Added resolution parameter to Runware NanoBanana2Pro image-to-image generation for automatic aspect ratio detection from reference images.
  • Editor/Android: Fixed media replacement not working when using camera capture
  • Engine: Added Auto option to horizontal text alignment that automatically aligns text based on the first logical run’s script direction (right for RTL scripts, left for LTR scripts).
  • Engine: Added block.getTextEffectiveHorizontalAlignment(block) API to retrieve the resolved alignment when using Auto mode.
  • Editor/Web: Added “Match Language Direction” option to text alignment controls that automatically adjusts alignment based on the text’s script direction.
  • Editor/iOS: Fixed LUT filter not being highlighted as selected on first click when the engine has not yet downloaded the LUT file.
  • Editor/Android: Fixed LUT filter not being highlighted as selected on first click when the engine has not yet downloaded the LUT file.
  • Renderer: Fixed buzzy or distorted audio in rendered videos when using open-source codecs on Linux.
  • Renderer: Fixed a crash during video rendering when source videos contain non-standard frame timing.
  • Engine: Fixed audio duration calculation for some MP4 files preventing a divide-by-zero crash when the videos are played.
  • Editor/iOS: Added “Match Language Direction” option to text alignment controls that automatically adjusts alignment based on the text’s script direction.
  • Editor/iOS: Text blocks now use “Auto” alignment by default, automatically matching the text’s script direction.
  • Editor/Android: Added “Match Language Direction” option to text alignment controls that automatically adjusts alignment based on the text’s script direction.
  • Editor/Android: Text blocks now use “Auto” alignment by default, automatically matching the text’s script direction.

Version v1.67.0 Changelog January 22, 2026

Breaking Changes

Non Breaking Changes

  • Engine/Swift: Deprecated addLocalAssetSourceFromJSONString and addLocalAssetSourceFromJSONURI in favor of overloaded addLocalAssetSourceFromJSON(_:) methods that accept either URL or String parameters.
  • Engine: Added the block.loadFromURL(url) API, including Swift (block.load(from: URL)) and Kotlin (block.loadFromURL(url)) bindings, to make component creation and loading more easy.
  • Engine/Android: Fixed StrictMode violations.
  • Editor/iOS: Changed the default Apparel Editor navigation bar layout to place undo, redo, and preview mode buttons in the center (principal placement) instead of the trailing edge. This aligns with the Postcard Editor layout and fixes empty slots appearing in iOS 26’s Liquid Glass navigation bar during preview mode.
  • Editor/Android: Changed the default Apparel Editor navigation bar layout to place undo, redo, and preview mode buttons in the center instead of the end. This aligns with the Postcard Editor layout for cross-platform consistency.
  • Engine/Swift: Fixed a potential crash due to a race condition during engine shutdown with active network requests.
  • Editor/Flutter: Fixed an issue where effects applied to paused videos were not immediately visible when using TextureView.
  • Camera/iOS: Fix Camera cleanup when dismissed programmatically in both SwiftUI and UIKit environments - the Camera view now properly invokes cleanup and onDismiss callback when dismissed via code (e.g., isPresented = false in SwiftUI or dismiss(animated:) in UIKit) rather than user interaction
  • Engine: Fixed missing scaling of outline and drop shadow properties while resizing elements.
  • Engine: Fixed an issue where block events triggered during event callbacks were not being delivered to subscribers.
  • Editor/RN: Auto-configure Compose Compiler based upon the Kotlin version specified in the Gradle extras.
  • Camera/RN: Auto-configure Compose Compiler based upon the Kotlin version specified in the Gradle extras.
  • Engine: Fixed deserialization of scenes exported before the textEditModeTransformHandlesEnabled setting was introduced.
  • Engine: Fixed certain malformed WAV files throwing an error on load.
  • Engine: Fix video source sets not being updated correctly.
  • Editor/Flutter: Fixed empty demo asset source sections in the asset library. Demo asset sources are now added by default.
  • Editor/RN: Fixed empty demo asset source sections in the asset library. Demo asset sources are now added by default.
  • Editor/Web: Fix zoom control incorrectly showing percentage instead of “Auto” when switching pages
  • Editor/iOS: Improved editor startup performance by loading font data on demand when the font selection UI is displayed instead of loading all font data at startup.
  • Editor/Web: Fixed a crash that occurred when clicking Undo after applying the Recolor or Green Screen effects.
  • Editor/iOS: Fixed filter selection not being displayed correctly in the UI after loading scene archive.
  • Editor/Android: Fixed filter selection not being displayed correctly in the UI after loading scene archive.
  • Renderer: Fix blank audio for some AAC-LC streams when decoded by the AV-Licensed codec pack
  • Editor/Android: Fixed IllegalArgumentException crash in inspector bar FillStroke and TextBackground buttons.
  • Editor/Android: Fixed scene restoration after process death
  • Renderer: Significantly reduced memory usage during video exports.
  • Editor/Android: Restrict system gallery sources to image/video MIME types to avoid surfacing audio files.
  • Renderer: Improved mp4 video support using open-source codecs.

Version v1.66.1 Changelog December 19, 2025

Breaking Changes

Non Breaking Changes

  • Engine/Android: Fixed crash when archiving scene on Android 12 and below.
  • Engine: Fixed video export hanging when the audio track of a video starts later than the video.
  • Engine: Fixed audio delay as set in media-time not being handled during playback and export for videos.

Version v1.66.0 Changelog December 17, 2025

Breaking Changes

  • Editor/iOS: Photo Roll now defaults to privacy-friendly photos picker mode (no permissions required). The PhotoRollAssetSource is automatically registered. To enable full photo library access, override loadAssetSources in your onCreate callback and use PhotoRollAssetSource(engine: engine, mode: .fullLibraryAccess).
  • Editor/iOS: The separate dock buttons systemPhotoRoll() and imglyPhotoRoll(), and the events addFromSystemPhotoRoll() and addFromIMGLYPhotoRoll are now deprecated in favor of the unified photoRoll() button and addFromPhotoRoll() event.

Non Breaking Changes

  • Engine/Web: Added support for transparent WebM videos.
  • Engine: Fixed applying of scene archive assets in asset sources.
  • Editor/Flutter: Fixed an issue where effects applied to paused videos were not immediately visible when using TextureView.
  • Editor/Web: Fixed TypeScript compilation error when using skipLibCheck: false.
  • Editor/React-Native: Fixed iOS crash with New Architecture when optional parameters are undefined.
  • Camera/React-Native: Fixed iOS crash with New Architecture when optional settings are undefined.
  • Editor/Android: Fix camera crash by checking IMG.LY camera availability before initialization
  • Editor/Web: All media HTML elements now include a crossorigin HTML attribute, making them compatible with strict Cross-Origin-Embedder-Policy environments without the need to inject new headers into cross-origin asset sources.
  • Editor/Android: Fixed a crash when selecting Free crop in PhotoEditor.
  • Engine: Scene loading APIs now have an additional option to defer their completion callbacks until all resources are loaded
  • Engine/Android: Fixed ANR in Engine.start() during scene recovery.
  • Engine: Added RTL text support and bidirectional navigation for Text blocks with automatic direction detection.

Version v1.65.0 Changelog December 5, 2025

Breaking Changes

Non Breaking Changes

  • Editor: Improved the visisbility of the page boundaries by adding a slight outline to it, can be changed with setting pageHighlightColor.
  • Editor/Web: Add isSearchable field to AssetLibraryEntry to indicate if an entry supports searching. The search field in asset library panels is now only shown when at least one currently rendered entry is searchable
  • Engine: Text blocks are now automatically deleted when exiting text edit mode if they are completely empty and the lifecycle/destroy scope permits deletion
  • Engine: Add removeUndoStep API to remove the last history state from the undo stack
  • Engine: Option+Backspace and Command+Backspace text editing shortcuts.
  • Engine: Add getLayout and setLayout APIs to dynamically change scene layouts after scene creation: supports transitions between Free, VerticalStack, HorizontalStack, and DepthStack layouts. When transitioning from stack to Free layout, page visual positions are preserved to maintain the existing layout appearance.
  • Engine: Added setTextCursorRange API to set text cursor position and selection range in text blocks. Supports cursor positioning (from == to), range selection (from < to), and select-all (from: -1, to: -1). The API validates inputs and returns errors for invalid ranges (e.g., from > to). If the range exceeds text length, it is automatically clamped to valid bounds.
  • Engine/Android: Fixed race condition where audio/video decoders could access freed AVContainer memory causing segmentation faults when replacing media with uploaded files.
  • Editor/Flutter: Improved error messaging when Kotlin Compose compiler plugin is unavailable, providing clearer diagnostics for build configuration issues
  • Editor/RN: Improved error messaging when Kotlin Compose compiler plugin is unavailable, providing clearer diagnostics for build configuration issues
  • Engine: Fixed look up of LUT filter effect from an archived scene.
  • Editor/Flutter: Fixed an issue where effects applied to paused videos were not immediately visible when using TextureView.
  • Engine: Add undo step support for keyboard-based block nudging. When moving blocks with arrow keys (or Shift+Arrow for faster movement), undo/redo now works correctly.
  • Engine: Fixed pixelation of image fills when adjustment effects are applied by selectively disabling mipmaps only for effects that manipulate UV coordinates
  • Engine: Added allowTextOverhang flag to ExportOptions to optionally include text glyph overhangs during export, preventing clipping of decorative fonts (defaults to false)
  • Engine: It is now possible to resize and rotate text blocks while editing text by enabling the new textEditModeTransformHandlesEnabled feature flag (off by default).
  • Engine: Scene loading APIs (loadSceneFromString, loadSceneFromURL, loadSceneFromArchiveURL) now defer their completion callbacks until layout is complete
  • Engine: Fixed saveToArchive crashing when scene resources contain template variables (e.g., {{appearanceId}}) in their URLs. Template variables are now resolved before archiving.
  • Engine: Text styling operations (color, font size, bold, italic, typeface, etc.) now apply to the entire text when called in edit mode with no selection. Previously, these operations only affected the cursor position style for future typed characters.
  • Engine: Scene loading APIs now have an additional option to defer their completion callbacks until all resources are loaded

Version v1.64.0 Changelog November 21, 2025

New platform

Added a new platform for CE.SDK: the CE.SDK Renderer can be used on Linux servers inside a Docker container to render CE.SDK scene and archive files. GPU acceleration and video codecs are supported, allowing for simpler and faster server-side exporting workflows.

Breaking Changes

  • Editor/Web: Number inputs and text inputs now require Enter key or blur to confirm changes by default. This prevents accidental changes while typing and provides a more intentional editing experience.
  • Engine: Video files that only contain unsupported audio tracks are now reported in error state when adding them instead of automatically removing all audio. This prevents exports with missing audio. Happens, for example, for videos with PCM audio. The audio needs to be removed manually to get these files loaded.
  • Editor/Android: Replaced the EngineConfiguration.systemGallery flag with the explicit SystemGalleryPermission.setMode opt-in, so projects enable the gallery inside their onCreate scope and can update it at runtime.
  • Editor/Android: Simplified the opt-in flow – SystemGalleryPermission.setMode controls the GalleryPermissionManager, and the editor registers the gallery asset sources inline, so no extra engine helpers are required.
  • Editor/Android: Cleared persisted gallery selections so gallery content is session based, matching the manual opt-in workflow.

Non Breaking Changes

  • Editor/Web: Add canvas menu options customization support. The canvas menu “more options” button now supports customization via the builder API, allowing integrators to add, remove, or reorder menu items. Individual action components (flip horizontal, flip vertical, copy, paste) are now available as separate registered components for maximum flexibility.
  • Editor/iOS: Add support for custom crop sheets with automatic edit mode association through the new optional associatedEditMode parameter in openSheet event.
  • Editor/Web: Enhanced AssetLibraryDockComponent with optional onClick, selected, disabled, size, variant, and colour properties for greater customization and control over asset library dock buttons
  • Editor/iOS: Add OnLoaded.Callback to execute custom logic when the editor finishes loading
  • Editor/iOS: Add Force Crop feature via EditorEvents.ApplyForceCrop event using context.eventHandler.send(.applyForceCrop(to:with:mode:))
  • Editor/Web: Added 33 granular feature flags for placeholder settings control. Customers can now individually enable/disable placeholder options (opacity, blend mode, arrange, fill, stroke, text, appearance) using hierarchical feature IDs like ly.img.placeholder.general.opacity or disable entire sections with ly.img.placeholder.general. All features are enabled by default for backward compatibility.
  • Engine/Web: Add public zoom utility methods (cesdk.utils.zoom.toLevel(), cesdk.utils.zoom.in(), cesdk.utils.zoom.out()) for controlling canvas zoom programmatically
  • Editor/Web: Refactor internal zoom handling to use centralized actions API instead of facade methods
  • Editor/Web: Improve zoom behavior consistency across UI components (NavigationBar, Canvas shortcuts, ActionsStore)
  • Editor/Web: Add automatic page zoom with padding on scene load and page focus operations
  • Editor/Android: The license parameter in EngineConfiguration is now nullable. Pass null to run the SDK in evaluation mode with a watermark.
  • Editor/iOS: The license parameter in EngineSettings is now nullable. Pass nil to run the SDK in evaluation mode with a watermark.
  • Editor/Flutter: The license parameter in EditorSettings is now nullable. Pass null to run the SDK in evaluation mode with a watermark.
  • Editor/React Native: The license parameter in EditorSettings is now nullable. Pass null to run the SDK in evaluation mode with a watermark.
  • Camera/Android: The license parameter in EngineConfiguration is now nullable. Pass null to run the SDK in evaluation mode with a watermark.
  • Camera/iOS: The license parameter in EngineSettings is now nullable. Pass nil to run the SDK in evaluation mode with a watermark.
  • Camera/Flutter: The license parameter in CameraSettings is now nullable. Pass null to run the SDK in evaluation mode with a watermark.
  • Camera/React Native: The license parameter in CameraSettings is now nullable. Pass null to run the SDK in evaluation mode with a watermark.
  • Engine: Introduce Safe Area Insets API to automatically adjust viewport rendering for UI overlays (toolbars, navigation bars, etc.). Configure insets via editor.setSafeAreaInsets() to ensure scene content remains visible and properly framed within the effective viewport. All camera operations (zoom, pan, clamp) automatically respect these insets. Defaults to zero insets (no adjustment)
  • Editor/Web: Added comprehensive speed and duration controls to the inspector for video and audio blocks. Speed can be adjusted from 0.25x to 3x with quick-access presets (0.25x, 0.5x, 1.0x, 2.0x, 3.0x) or custom values. Duration can be set using time format (HH:MM:SS) for precise clip timing.
  • Editor/Web: Implemented automatic collision detection and track management. When a clip grows due to speed or duration changes and would overlap with adjacent clips, it automatically moves to a newly created track above its current position, preventing unwanted content overwriting.
  • Engine: Lifted the 3x playback-speed cap for video fills while keeping the existing limit for audio blocks. Videos running faster than 3x are muted automatically until their speed is lowered again, ensuring consistent audio behaviour across platforms.
  • Editor/Web: Add new loading animation for the editor.
  • Editor/Android: Fixed crashes and UI state issues when changing scenes at runtime by ensuring all components properly subscribe to active scene changes and reinitialize their state.
  • Editor/Flutter: Fixed an issue where effects applied to paused videos were not immediately visible when using TextureView.
  • Editor/iOS: Fixed NavigationLabel appearance on iOS 26 when compiled with Xcode 16.
  • Editor/iOS: Fixed keyboard not dismissing when interacting with pickers in the resize sheet on iOS 18+.
  • Editor/iOS: Fix potential localization lookup performance issue for large app bundles.
  • Engine/Web: Added support for VP9 videos with dynamic resolution.
  • Engine: Improved caption property synchronization performance by batching property changes and processing them in a single pass.
  • Engine/Android: Fixed race condition where audio/video decoders could access freed AVContainer memory causing segmentation faults when replacing media with uploaded files.
  • Editor/Android: Improved visual hierarchy of asset library “See All” button by using smaller text style and flexible width layout to accommodate longer translations

Version v1.63.1 Changelog November 13, 2025

Breaking Changes

Non Breaking Changes

  • Updated asset archives with the full asset tree for self-hosting

Version v1.62.1 Changelog November 7, 2025

Non Breaking Changes

  • Engine: Fixed an issue where export calls failed with a Scene contains disallowed schemes… error.

Version v1.63.0 Changelog November 7, 2025

Breaking Changes

  • Editor/Web: Migrated document colors to use engine-native ly.img.scene.colors asset source, removing the frontend implementation entirely. The old ly.img.colors.documentColors source ID is no longer available. Custom integrations explicitly referencing the old source ID must update configurations to use ly.img.scene.colors instead. The migration is automatic for users relying on default configurations.
  • Editor/iOS: Add support for groups in video editor timeline
  • Editor/Android: Add support for groups in video editor timeline
  • Editor/iOS: Removed DefaultAssetLibrary.textAndTextComponents property. Use DefaultAssetLibrary.text instead, which now includes text components by default.
  • Editor/iOS: Removed DefaultAssetLibrary.text(_: SceneMode?) function. Use the DefaultAssetLibrary.text property instead.
  • Editor/Android: Removed LibraryContent.TextAndTextComponents property. Use LibraryContent.Text instead, which now includes text components by default.
  • Editor/Android: Removed LibraryCategory.TextAndTextComponents property. Use LibraryCategory.Text instead, which now includes text components by default.
  • Engine: The createAudioFromVideo and createAudiosFromVideo APIs now have an AudioFromVideoOptions parameter consisting of:
    • keepTrimSettings (default: true): When enabled, the extracted audio block will have the same duration as the video’s effective (trimmed) duration. When disabled, the full audio track is extracted.
    • muteOriginalVideo (default: false): When enabled, the original video’s audio track is muted after extraction.
  • Editor/Web: Add new “modern” UI scaling option

Non Breaking Changes

  • Engine: Added isCropAspectRatioLocked() and setCropAspectRatioLocked() APIs to query and control crop aspect ratio locking. When enabled, crop handles maintain the current aspect ratio during resize operations.
  • Editor/Web: Improved crop panel aspect ratio lock button to control both text inputs and crop handles, with automatic synchronization when selecting crop presets (1:1, Free, etc.).
  • Editor/iOS: Added assetSourceIDs parameter to SheetType.crop allowing to specify asset sources for the crop sheet used by InspectorBar.Buttons.crop and Dock.Buttons.crop actions.
  • Editor/Web: Add native eye dropper tool for color sampling in color inspector and color preview boxes (Chrome, Edge, Opera)
  • Engine: Added findAllMediaURIs API that retrieves all valid media file URIs (http://, https://, file://) referenced by blocks in a scene
  • Engine/Web: Licenses are now optional. Without a license, a watermark is shown on exports. Licenses remove the watermark and are required for production use.
  • Editor/Web: Updated all examples to demonstrate the SDK works without a license.
  • Engine/Web: Added video support for Safari 26.0 and newer.
  • Engine: Added editor APIs to enable or disable selection for a block and query its current selection state via setSelectionEnabled and isSelectionEnabled.
  • Engine: Fixed possible empty audio samples in video exports if the audio decoder could not provide the decoded audio data in time.
  • Engine/Android: Fixed empty audio in exported videos for some video files especially on the Samsung Galaxy S24 and S25 devices.
  • Editor/Android: Fixed a jump of the video preview playback position if the video is paused and set to playing again.
  • Editor/iOS: Fixed crop rectangle not expanding back to full size after multiple rotations with fixed aspect ratios
  • Editor/Web: Fixed broken ligatures in ElsieSwashCaps font
  • Editor/Android: Fixed broken ligatures in ElsieSwashCaps font
  • Editor/iOS: Fixed broken ligatures in ElsieSwashCaps font
  • Editor: Improve selection frame handle visibility for text blocks with fixed frame widths by prioritizing right side handle over corner handles when overlapping
  • Editor/Web: Fixed video playback being stopped by selection changes when using the API to programmatically start playback. A 300ms grace period now allows initialization sequences to complete without interference while preserving the UI behavior of stopping playback when users manually click on clips.
  • Editor/Web: Add feature flag ly.img.crop.panel.autoOpen to control automatic opening of crop panel when entering crop edit mode (defaults to true for backward compatibility)
  • Editor/Web: Importing scenes from archives is now more memory efficient. Blob URLs are now used instead of Data URLs avoiding base64 encoding overhead.
  • fix(Engine): Fix Document Color showing multiple highlights (default and selected color) after changing text color
  • Engine/Web: Add objectURL return type to utils.loadFile() API for efficient blob URL creation without manual conversion. This avoids base64 encoding overhead when loading large archive files.
  • Editor/iOS: Fixed potential voiceover crashes
  • Editor/Web: Fix document color selection state not updating properly when selected element changes

Version v1.62.0 Changelog October 22, 2025

Breaking Changes

  • Editor/Web: Modernized editor theme with refined color palette, unified elevation surfaces, and improved visual hierarchy.
  • Engine/Android: Fixed crash on calling AssetApi.fetchAsset.
  • Engine/Android: Replaced AssetSource.fetchAsset(id:) with AssetSource.fetchAsset(id:options:) by adding FetchAssetOptions argument. The replaced function AssetSource.fetchAsset(id:) won’t be called anymore. Asset sources that implemented this old optional method need to be updated.
  • Engine/iOS: Replaced AssetSource.fetchAsset(id:) with AssetSource.fetchAsset(id:options:) by adding FetchAssetOptions argument. The replaced function AssetSource.fetchAsset(id:) won’t be called anymore. Asset sources that implemented this old optional method need to be updated.
  • Editor/Web: Clips added from the asset library will now no longer be automatically added to the background track when the timeline is still empty
  • Engine: The ‘unstable_exportAudio’ API was renamed to ‘exportAudio’ and is now able to export audio from scenes, pages, tracks, audio blocks and blocks with video fills.
    • Audio can be exported to either ‘audio/wav’ and ‘audio/mp4’:
    • When exporting audio from either an audio block or a block with a video fill, if the underlying resource is not compatible with the requested mime type, the audio is first transcoded. Otherwise, the audio data is returned immediately.
    • Added the flag ‘skipEncoding’ to the AudioExportOptions (disabled by default). Enabling it will allow getting the audio data from buffers directly while bypassing encoding (even if it is needed).

Non Breaking Changes

  • Editor/Web: Added cesdk.i18n.listLocales() method to retrieve available locales with optional wildcard pattern matching.
  • Editor/Web: Added cesdk.actions.list() method to retrieve registered actions with optional wildcard pattern matching.
  • Editor/Web: Fixed an issue in cesdk.i18n.getTranslations() that was causing the method to not return all available locales when no locale was passed as an input.
  • Editor/Android: Added Engine.addSystemGalleryAssetSources to register device gallery sources (all, image, video) and wire them into the default configuration.
  • Editor/Android: Introduced SystemGalleryAssetSource and SystemGalleryAssetSourceType to expose MediaStore content, including permission-aware paging and limited-access support on Android 13+.
  • Editor/Android: Updated the default asset library and timeline flows to surface the system gallery with runtime permission handling and quick add options.
  • Editor/Android: Documented how to keep the legacy uploads flow by overriding the default AssetLibrary/timeline configuration, while keeping Dock.Button.rememberSystemGallery() as the default system gallery entry.
  • Engine/Web: Add optional clipType context parameter to engine.asset.apply() API for explicit placement control
  • Engine/Web: Stabilize middleware APIs by renaming unstable_registerApplyAssetMiddleware to registerApplyMiddleware and unstable_registerApplyAssetToBlockMiddleware to registerApplyToBlockMiddleware
  • Editor/Web: Move middleware registration from VideoTimeline component to engine facade for global initialization
  • Editor/Web: Update middleware to support conditional clip placement based on clipType context parameter
  • Editor/Web: Add clipType option to AssetLibraryPanelPayload for panel-level placement configuration
  • Editor/Web: Update addClip action to use clipType: 'overlay' for correct background track placement
  • Engine/Web: Deprecate ui.colorLibraries, ui.typefaceLibraries, ui.pagePresetsLibraries, and ui.cropPresetsLibraries configuration properties in favor of the new API-driven approach using cesdk.ui.updateAssetLibraryEntry(). The deprecated properties will be automatically migrated with console warnings. See migration guide in the deprecation warnings for details.
  • Engine/Web: Add @deprecated JSDoc marker to ui.pageFormats configuration property. This property is now deprecated in favor of using cesdk.ui.updateAssetLibraryEntry('ly.img.pagePresets', { sourceIds: [...] }).
  • Engine: Now supports evaluation mode without providing a license
  • Editor/Web: Remove loading indicator text from editor
  • Editor/Web: Deprecated configuration.ui.elements.dock.iconSize in favor of cesdk.engine.editor.setSetting('dock/iconSize', 'normal' | 'large').
  • Editor/Web: Deprecated configuration.ui.elements.dock.hideLabelsin favor of cesdk.engine.editor.setSetting('dock/hideLabels', boolean).
  • Engine/Swift: Added a parameter onDisallowedResourceScheme to SceneAPI.saveToString and BlockAPI.saveToString to allow the opportunity to persist transient or temporary resources.
  • Editor/Web: Added rectangle selection for timeline clips by dragging. Click the timeline background to deselect all clips.
  • Editor/Web: Added middle mouse button drag scrolling for timeline navigation.
  • Engine/Web: Added locale parameter to cesdk.asset.fetchAsset to support fetching assets in different locales. The locale parameter is optional.
  • Editor/Web: Fixed an issue on the page resize panel that was causing the input values to not reflect properly.
  • Editor/Web: Fixed an issue on the page resize panel that was causing wrong updates to the scene values.
  • Engine: Fixed and issue where fonts for a given typeface were being wrongly evicted, causing archives to not have the necessary fonts files.
  • Editor/iOS: Fix potential localization lookup performance issue for large app bundles.
  • Editor/iOS: Fixed asset library navigation reset when using search button in nested navigation screens on iOS 26.
  • Editor/iOS: Fixed opening the crop sheet via double tap when another sheet is already open.
  • Editor/iOS: Fixed opening the replace sheet when tapping on placeholders while another sheet is open.
  • Engine/Web: Added web/fetchCredentials setting that accepts "omit", "same-origin" (default), or "include" to control cookie behavior for cross-origin asset fetches
  • Editor/Web: Add currentIds parameter to updateAssetLibraryEntry sourceIds callback for easier extension of existing source IDs without manual getAssetLibraryEntry calls
  • Engine: Fixed getAVResourceTotalDuration on a video fill from an imported archive not returning the correct value.

All Releases

v1.68.0 Changelog February 6, 2026
v1.67.0 Changelog January 22, 2026
v1.66.1 Changelog December 19, 2025
v1.66.0 Changelog December 17, 2025
v1.65.0 Changelog December 5, 2025
v1.64.0 Changelog November 21, 2025
v1.63.1 Changelog November 13, 2025
v1.62.1 Changelog November 7, 2025
v1.63.0 Changelog November 7, 2025
v1.62.0 Changelog October 22, 2025
v1.61.0 Changelog October 8, 2025
v1.60.0 Changelog September 19, 2025
v1.59.2 Changelog September 12, 2025
v1.59.1 Changelog September 8, 2025
v1.59.0 Changelog September 2, 2025
v1.58.0 Changelog August 19, 2025
v1.57.1 Changelog August 15, 2025
v1.57.0 Changelog August 6, 2025
v1.56.0 Changelog July 24, 2025
v1.55.2 Changelog July 18, 2025
v1.55.1 Changelog July 11, 2025
v1.55.0 Changelog July 8, 2025
v1.54.1 Changelog July 2, 2025
v1.54.0 Changelog June 26, 2025
v1.53.0 Changelog June 12, 2025
v1.52.0 Changelog May 29, 2025
v1.51.0 Changelog May 19, 2025
v1.50.2 Changelog May 15, 2025
v1.50.1 Changelog May 9, 2025
v1.50.0 Changelog April 29, 2025
v1.49.1 Changelog April 21, 2025
v1.49.0 Changelog April 16, 2025
v1.48.1 Changelog April 11, 2025
v1.48.0 Changelog April 1, 2025
v1.47.0 Changelog March 20, 2025
v1.46.1 Changelog March 5, 2025
v1.46.0 Changelog March 4, 2025
v1.10.6 Changelog February 19, 2025
v1.45.0 Changelog February 19, 2025
v1.44.0 Changelog February 6, 2025
v1.43.0 Changelog January 21, 2025
v1.42.0 Changelog January 9, 2025
v1.41.1 Changelog December 16, 2024
v1.41.0 Changelog December 11, 2024
v1.40.1 Changelog December 6, 2024
v1.40.0 Changelog November 28, 2024
v1.39.0 Changelog November 12, 2024
v1.38.0 Changelog October 29, 2024
v1.37.0 Changelog October 14, 2024
v1.36.1 Changelog October 4, 2024
v1.36.0 Changelog September 30, 2024
v1.35.1 Changelog September 20, 2024
v1.35.0 Changelog September 16, 2024
v1.34.0 Changelog August 31, 2024
v1.10.5 Changelog August 30, 2024
v1.33.0 Changelog August 23, 2024
v1.10.4 Changelog August 21, 2024
v1.32.0 Changelog August 6, 2024
v1.31.0 Changelog July 18, 2024
v1.30.0 Changelog July 3, 2024
v1.29.0 Changelog June 20, 2024
v1.28.0 Changelog June 6, 2024
v1.27.1 Changelog May 23, 2024
v1.26.1 Changelog May 22, 2024
v1.27.0 Changelog May 21, 2024
v1.26.0 Changelog May 7, 2024
v1.25.0 Changelog April 23, 2024
v1.24.0 Changelog April 5, 2024
v1.23.0 Changelog March 26, 2024
v1.22.0 Changelog March 12, 2024
v1.21.1 Changelog February 27, 2024
v1.21.0 Changelog February 22, 2024
v1.20.0 Changelog January 25, 2024
v1.19.0 Changelog December 13, 2023
v1.18.1 Changelog November 29, 2023
v1.18.0 Changelog November 6, 2023
v1.10.2 Changelog October 26, 2023
v1.10.3 Changelog October 26, 2023
v1.17.0 Changelog October 9, 2023
v1.16.1 Changelog September 14, 2023
v1.16.0 Changelog September 8, 2023
v1.15.0 Changelog September 1, 2023
v1.14.0 Changelog July 21, 2023
v1.13.1 Changelog July 10, 2023
v1.13.0 Changelog July 3, 2023
v1.12.2 Changelog June 30, 2023
v1.12.1 Changelog June 12, 2023
v1.12.0 Changelog June 2, 2023
v1.11.1 Changelog May 17, 2023
v1.11.0 Changelog May 10, 2023
v1.10.1 Changelog March 29, 2023
v1.10.0 Changelog March 14, 2023
v1.9.2 Changelog January 18, 2023
v1.9.1 Changelog December 15, 2022
v1.9.0 Changelog December 12, 2022
v1.8.0 Changelog October 21, 2022
v1.7.0 Changelog August 11, 2022
v1.6.3 Changelog June 13, 2022
v1.6.2 Changelog May 24, 2022
v1.6.1 Changelog May 23, 2022
v1.6.0 Changelog May 16, 2022
v1.5.1 Changelog May 9, 2022
v1.4.7 Changelog May 3, 2022
v1.4.6 Changelog April 14, 2022
v1.5.0 Changelog April 4, 2022
v1.4.5 Changelog April 1, 2022
v1.4.4 Changelog March 9, 2022
v1.4.3 Changelog March 7, 2022
v1.4.2 Changelog February 23, 2022
v1.4.1 Changelog February 22, 2022
v1.4.0 Changelog February 18, 2022
v1.3.0 Changelog January 6, 2022
v1.2.1 Changelog November 30, 2021
v1.2.0 Changelog November 22, 2021
v1.1.1 Changelog October 29, 2021
v1.1.0 Changelog October 28, 2021
v1.0.0 Changelog August 18, 2021