| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| Concat-0.2.8-aarch64.AppImage | 2026-10-19 | 121.3 MB | |
| Concat-0.2.8-android-arm64.apk | 2026-10-19 | 78.2 MB | |
| Concat-0.2.8-ios-arm64.ipa | 2026-10-19 | 76.5 MB | |
| Concat-0.2.8-linux-aarch64.deb | 2026-10-19 | 138.8 MB | |
| Concat-0.2.8-linux-aarch64.pkg.tar.zst | 2026-10-19 | 126.1 MB | |
| Concat-0.2.8-linux-aarch64.rpm | 2026-10-19 | 137.7 MB | |
| Concat-0.2.8-linux-x86_64.deb | 2026-10-19 | 154.8 MB | |
| Concat-0.2.8-linux-x86_64.pkg.tar.zst | 2026-10-19 | 139.3 MB | |
| Concat-0.2.8-linux-x86_64.rpm | 2026-10-19 | 153.9 MB | |
| Concat-0.2.8-macos-arm64.dmg | 2026-10-19 | 64.4 MB | |
| Concat-0.2.8-macos-x86_64.dmg | 2026-10-19 | 100.3 MB | |
| Concat-0.2.8-windows-x86_64-setup.exe | 2026-10-19 | 86.6 MB | |
| Concat-0.2.8-windows-x86_64.msi | 2026-10-19 | 106.0 MB | |
| Concat-0.2.8-x86_64.AppImage | 2026-10-19 | 137.9 MB | |
| manifest.json | 2026-10-19 | 25.1 kB | |
| SHA256SUMS | 2026-10-19 | 1.4 kB | |
| Concat v0.2.8 source code.tar.gz | 2026-10-19 | 21.4 MB | |
| Concat v0.2.8 source code.zip | 2026-10-19 | 22.0 MB | |
| README.md | 2026-10-19 | 10.4 kB | |
| Totals: 19 Items | 1.7 GB | 2,133 | |
Concat 0.2.8
What changed
- π No effect cards are drawn on a software adapter, which froze CI's API 30 emulator
- π On Windows the lock covers one far byte, so a refused process can read who holds the folder (#337)
- β¨ The Audio page's Concat shelf - CC0 sounds from the assets repository, fetched when asked (#60)
- β¨ Voices on the Audio page - saved clones, the models' speakers and styles (#60)
- π₯οΈ A home page - create row, a poster grid with search and sort, and learn-and-community cards
- β¨ An Audio page with the user's own sounds, kept across projects (#60)
- π One process at a time on a project folder - the window, concat --mcp and the CLI lock what they open (#337)
- β¨ An Adjustments sheet beside Filters, and a layer's Adjust and Effects (#249)
- β¨ An Adjustments page - an adjustment layer, and the LUTs, imported there now and no longer on Filters (#249)
- π A layer laid without a lane goes over the picture, not under it (#249)
- β¨ Masks, stabilization, fit and fill, backgrounds and laying clips end to end as tools (#337)
- π Stabilization and backgrounds are in the schema, a job's status names the stabilize stage, and the CLI's server lists nothing (#337)
- β¨
concat --mcpserves agents from the shipped app, and Automation lists itself for it (#337) - β¨ Concat-mcp, the Concat API as typed tools for AI agents over MCP stdio (#337)
- π€ The window's server lists itself for local callers, and a blocking client for it (#337)
- π€ A JSON Schema for every request and edit command, generated from the types (#337)
- βοΈ Automation waits for a strong token and stops without freezing (#337)
- π€ A caller holds nothing until it is in, weak tokens are refused, wrong ones wait, and a stop cancels first (#337)
- β¨ The transcribe switch sits under the script and says what it does
- π₯οΈ Enhance's Size is a dropdown
- π£οΈ The voice picker shows who each voice is, and ends in Clone from a sample
- β¨ Mask is a tool of its own, a sheet of shape tiles and sliders (#239)
- β¨ A clip keeps a shape of its picture - line, mirror, circle, rectangle, heart or star - feathered, inverted and keyed (#239)
- βοΈ A dragged clip snaps by its end as well as its start, and never to itself
- βοΈ The tray's Captions, Text to speech and Voiceover buttons toggle their panels
- π Several selected cards go onto the timeline together, end to end on one lane
- π± Video decodes on MediaCodec, which it never did
- π A packet the codec refuses while full is sent again, not dropped
- βοΈ The Automation page in the settings' own style
- π The SRT export's notices name their keys where they are used (#281)
- π A stroke painted on a stabilized clip lands where the brush was (#253)
- π₯οΈ A Stabilize section under Video, with Smoothness, Max zoom and Tripod (#253)
- π€ An export measures stabilized clips first, and says how far it has got (#253)
- β¨ The stabilization analysis, one media at a time, only over the source clips show (#253)
- β¨ A stabilized clip is drawn through its correction, on the monitor and in the export alike (#253)
- β¨ Measure a camera's shake and work out the steadying correction (#253)
- π₯οΈ The background is a clip's Canvas with Apply to all, as in CapCut, not a Details group
- β¨ Captions and Text to speech float over the editor on a desk
- π SubRip on phones, a named and unique export, and the captions' lane (#281)
- π A batch volume sets each clip's level, not a key at the playhead (#219)
- π₯οΈ Background and Fit and Fill on the desk and a Canvas sheet on the phone (#232, [#255])
- β¨ A background behind the main picture, and Fit and Fill (#232, [#255])
- βοΈ Delete left and Delete right are buttons on the timeline's toolbar, as in CapCut (#400)
- π Rational::parse refuses a value past i64 instead of panicking
- π The merge strings and the interface scale in Indonesian
- π Space and the playhead move a take and its picture together, and an iPhone records (#213)
- π£οΈ The tick turns Enhance on; a button runs it, and stops it
- π The Shortcuts page and Delete Left/Right in all 25 languages
- βοΈ Q and W delete left and right of the playhead, as in CapCut (#400)
- βοΈ A Shortcuts tab that lists every keybind and lets you set one (#400)
- βοΈ Q and E cut the selected clip at the playhead
- π The level meters' button in all 25 languages
- β¨ A frame back and a frame on beside Play, held to repeat (#244)
- β¨ The lanes glide after a throw, pinch to zoom, and a tap selects without seeking (#350, [#243], [#221])
- π₯οΈ A fresh window opens with the inspector down the whole right side
- βοΈ The VU meters sit at the timeline's right edge, with a tray button to show or hide them
- π Today's new lines in all 25 languages
- β¨ Record Voiceover opens a floating panel with pause, retake, a meter and a teleprompter (#213)
- π₯οΈ Audio effects get their own page beside Audio's Basic
- β‘ Transcription runs AVX2 kernels again on CPUs that have them, and still starts on a Sandy Bridge (#388)
- π± Import opens Photos or Files, and Files shows the app's Documents (#332)
- π Intel Macs open on macOS 12 again, and the AI features say what they need (#372, [#333], [#342])
- π£οΈ Size, Strength and a one-frame preview before the whole run
- βοΈ Interface scale multiplies the display's scale, not replaces it (#320)
- π₯οΈ A launch that dies while starting is followed by one that draws in software (#339, [#378], [#389], [#242])
- π A project that cannot be saved asks to quit without saving, not traps the window (#375)
- βοΈ Ctrl+B splits the selected clip, not every track under the playhead
- π A wide caption aligned left or right is drawn whole, not cut at its far end
- π Background removal and Chatterbox no longer ask a CPU runtime for DirectML (#399)
- π A project the app closed in while removing a background opens again
- β¨ Effects and transitions draw on OpenGL ES, whose uniforms come in whole 16 bytes
- β¨ CONCAT_GPU=software draws the window on the software rasteriser (#389, [#242])
- π± An import whose provider revokes access is skipped, not a crash
- π Cancel is a cancel, not a failure, and whisper leaves room for playback (#388)
- π± A phone without Vulkan opens the app on OpenGL ES instead of closing it
- β¨ Halation is red-orange again, and it and Corona are built-ins by name
- π Preserve short imported subtitle timings
- β¨ Adjust volume for selected sound clips together
- π₯οΈ Remember the last successful project location between launches
- β¨ The captions sheet imports and exports SubRip files
- β¨ SubRip subtitles read into cues and written from a lane of titles
- π A variable-rate average too heavy to keep exactly is rounded, not dropped for the timestamp grid
- π The window no longer crashes on its first frame of text
- π The xkbcommon core library ships beside the module that drives it, so X11 opens
- π Preserve project saves across concurrent writes and failed closes
- π A folder dialog opens on a folder that exists (#331)
- π Translate the 41 lines still in English
- β¨ Add Corona and Halation custom effects
- π€ One bitrate field instead of three cards, and the resolution a fact, not a menu
- π€ A bitrate, not a quality tier: Higher, Recommended, Lower or typed, and a size that is the size written
- π₯οΈ New project asks a phone for no location
- π₯οΈ New project's frame rate is a dropdown, not twelve buttons
- π₯οΈ Escape closes the sheet on top
- π₯οΈ The Export sheet stays inside a phone's bars, and New Project's sizes wrap (#353, [#356])
- π No "Apply to all" in the Text inspector
- βοΈ The dropdowns first, the switches under them
- βοΈ Language and Log level are a title with its dropdown at the far end
- π A window that opens larger than its screen is maximised, so it can be reached and moved (#347)
- π₯οΈ Settings fits a phone: the whole screen, its pages as tabs, every model row whole (#354, [#355])
- βοΈ "Remote" is "Automation", and its section "Scripts and apps"
- βοΈ Proxies are a switch, off by default, as in CapCut
- π Captions and titles in Thai, Arabic, Hindi, Bengali, Korean and the rest draw their words, not boxes
- π± The app no longer closes when dark mode, the font size or the language changes
- π Effects, filters and transitions read in English, and the locales hold only the interface (#364)
- π Centre overlap transitions on the cut
- β¨ Add Fade to Black and Fade to White transitions
- β¨ Apply caption style to all titles on its track
- β¨ Consolidate selected video clips through rendered media
- βοΈ A copy of a split clip shows the frames it was copied from (#335)
- π The window's text is drawn with ClearType when the desk has it on
- βοΈ The scale row is the desk's, not the phone's
- βοΈ An interface scale, for a larger screen
- β¨ A transcription's and a read's bar moves through each stage and says how long is left
- β¨ A native crash writes what it was and where to the log, and every log starts with the machine it ran on (#326)
Before you install
- Windows: this release is not code-signed yet. SmartScreen asks before it runs: More info βΊ Run anyway. Where Smart App Control is on, Windows refuses unsigned programs; see the code signing policy.
- Android: no automated check has started this APK: CI's emulators run x86_64 and it is built for arm64. If it does not open on your phone, say so.
- Phones without Vulkan: the OpenGL ES path is new and has only run on an emulator, not on a real phone.
- Blurred backgrounds on Windows: tested on Windows' software renderer only, not yet on a real graphics card.
Download
A self-contained build for every platform Concat ships on.
| Apple silicon | Intel / x86_64 | arm64 | |
|---|---|---|---|
| macOS | macos-arm64.dmg |
macos-x86_64.dmg |
|
| Windows | windows-x86_64-setup.exe, .msi |
||
| Linux | linux-x86_64.deb, .rpm, x86_64.AppImage |
linux-aarch64.deb, .rpm, aarch64.AppImage |
|
| Android | android-arm64.apk |
||
| iOS / iPadOS | ios-arm64.ipa |
SHA256SUMS lists each file's checksum.