Skip to content1.2.4
Fixed
- Playback moves to the next clip without the picture pausing at the boundary.
- Timeline thumbnails show the frame at their own time, including videos with long keyframe intervals.
1.2.3
Fixed
- The timeline scrolls smoothly during playback and stops where the picture stops.
- The playhead stays within the loop on the transition and music sheets.
- Adding the same song twice shows the full waveform in both lanes.
- Back cancels a detached render while music is being prepared.
- Closing the editor releases the preview player and its decoders.
1.2.2
Fixed
- Tapping “Next” more than once starts only one render.
- The render progress screen appears as soon as “Next” is tapped, including right after adding music.
- With
detachedRenderEnabled, the editor shows a progress indicator while added music is prepared, then closes.
1.2.1
Added
- Transitions
spin, zoom_flip, blur and shake.
- Effects
shake, old_film, strobe and fisheye.
Fixed
- Split cuts at the playhead, including clips trimmed at the start.
- A trimmed clip ends exactly where the handle is released, in the preview and in the rendered video.
1.2.0
Added
EditorConfig.detachedRenderEnabled: draw render progress in your own UI. Launch with VideoEditorActivity.RenderContract; it returns the EditorRenderJob when the render starts and the editor closes. See “Show render progress in your own UI” in the integration guide.
EditorRenderJob reports progress and its end state (EditorRenderState). EditorRenderJob.current is the running job, and VideoEditorActivity.renderJob(resultCode, data) reads it from an activity result.
- String
videoeditor_render_busy, shown when “Next” is tapped while a render job is running.
1.1.1
Added
EditorResult.usage (EditorUsage): what went into the rendered video, plus editing and render stats. See “Read usage data” in the integration guide.
Fixed
- Playback when the timeline contains only photos.
- The preview switches to a photo immediately while scrubbing into it.
1.1.0
Added
- Select up to seven videos or photos at once, from the picker and the timeline’s add button. One undo removes them all.
- A thin border on the editor canvas marks the area included in the result.
Changed
- Breaking:
OutputSpec(width, height, bitrate, maxFrameRate, codec) is replaced by OutputSpec(aspectRatio, bitrate, maxFrameRate, codec) (OutputSpec.AspectRatio: 9:16, 1:1, 4:5, 3:4, 16:9). OutputSpec.DEFAULT is 9:16 (1080×1920).
1.0.10
Added
EditorDrafts.deleteAll(context).
Changed
- A completed render keeps the draft and returns its id as
EditorResult.draftId. Delete it with EditorDrafts.delete(context, id).
1.0.8
Added
- Edge auto-scroll while dragging a trim handle or moving an audio clip.
Fixed
- Preview playback stops when the editor closes or the app goes to the background.
- Sticker GIFs are decoded at their on-canvas size.
- Selection border of a sticker larger than the canvas.
1.0.7
Changed
- Rendered audio is AAC stereo, 48 kHz, 256 kbps.
1.0.4
Changed
- An
audioPicker result without a URI cancels instead of opening the system file picker.
1.0.3
Added
EditorConfig.coverPickerEnabled: a cover screen after “Next” to pick a frame or a gallery photo.
EditorResult.audioPaths: audio tracks used, in timeline order.
Changed
- The license check shows a spinner without text.
1.0.2
Changed
- Breaking:
TextFontSpec(id, displayName, regularAsset, boldAsset) is replaced by TextFontSpec(displayName, asset). Give the bold face as asset.
1.0.1
Changed
- Transition picker swatches show a transition between two different scenes.
1.0.0
VideoEditorActivity presents the editor. Build the intent with VideoEditorActivity.intent(...) and receive the result with VideoEditorActivity.Contract. Failures arrive in intent(onFailure =) while the editor stays open.
EditorConfig, OutputSpec, TextFontSpec.
intent(audioPicker =): your own audio picker activity.
- Drafts:
draftsEnabled, EditorDrafts, intent(draftId =).
- Strings are SDK resources (English, Korean). Override them by defining the same names in your app’s
strings.xml.