“What took so long?” you might ask. A good way to manage it across all operating systems and GPU vendor APIs. We have a FAQ topic about this. Management comes in the forms of operating system abstraction APIs, hardware scaling, and a threshold limiter.
Settings > Preview Scaling > Use Hardware Decoder
Enabled by default, except with NVIDIA on Linux.
Uses VA-API on Linux, Media Foundation on Windows, and Video Toolbox on macOS.
Only supports codecs your hardware can decode; automatically falls back to software decoding if needed.
May not provide a dramatic speed boost unless you use Linear 10-bit CPU processing mode or have a low-powered CPU.
Has limited impact on seeking and scrubbing—using proxies is still recommended for smooth editing.
Reduces CPU usage, which can help lower battery drain and keep your system cooler.
Not integrated with GPU processing mode via 0-copy.
Transferring uncompressed video between CPU and GPU RAM can be a bottleneck, so this feature is limited to preview scaling or 1080p-60fps (or lower) sources.
Advanced users can remove the 1080p60 limiter by setting environment variable MLT_AVFORMAT_HWACCEL_PPS=0.
Export > Codec > Use hardware decoder
Disabled by default, as it can sometimes increase export times.
No resolution or frame rate limits.
Can reduce CPU usage during export, which may be beneficial for some workflows.
(Tip: Avoid exporting videos on your lap for long periods!)
The setting is persistent and will be remembered between sessions and projects.
Feel free to test it on your system to see if it offers benefits for your specific hardware and workflow.
What’s This?
This is contextual help! It lets you get assistance for a specific item in the user interface—just click the “What’s This?” icon, then click on the UI element you want to learn about. Usually, this opens a web browser to the relevant documentation, but for some items like toolbar buttons, it may show a tooltip instead if more detailed documentation isn’t available.
Comprehensive documentation is essential for this feature to be useful. Many users aren’t aware that documentation exists, but it’s now much more complete and accessible. The documentation is available on the website, and a PDF is generated automatically from the forum-wiki-based content. Additionally, the forum offers a Claude AI bot that can help answer questions using the documentation and release notes.
Other New Features
Added converting a project between GPU & CPU processing modes.
Added the Blend Mode filter and track option for the Linear 10-bit GPU/CPU processing mode.
Increased the maximum resolution in Video Mode and Export to 8640 for 8K VR180 video.
Added Settings > Language > Chinese (Simplified).
Changes
Improved the appearance of outline in the text filters: Text: Simple, Typewriter, GPS Text, Subtitle Burn In and Timer.
Changed bulk proxy generation (when you switch Settings > Proxy > Use Proxy ON) to update clips.
(Previously, you had to turn proxy mode off and back on again to start using the proxies. That requires reloading the project each time, which was a real drag.)
Changed Timeline > Add Generator and New Generator > Add To Timeline to not seek.
This leaves the playhead over the clip it just added to facilitate preview and reduce steps.
Changed simple keyframe defaults in Mask: From File filter to be more convenient for multi-track transitions.
Fixes
Fixed Brightness filter with a reduced level is different when there was clip with transparency above it (broke in v25.12).
Fixed Timeline > Record Audio would always reset the selected audio device and require re-selection (broke in v25.12).
Fixed the Mask: Apply video filter in 10-bit processing modes (incomplete in v25.12).
Fixed macOS app signing.
Fixed a crash in the scrub-bar on a very long playlist.
Improved the reliability of opening URLs (Help menu), Show In Folder, Open With in the Linux AppImage/portable/Snap.
Fixed app not responding while enqueuing very many proxy jobs.
Fixed Previous/Next in Subtitles may be unreadable on some themes and OS.
Fixed reading the alpha channel in 12-bit ProRes with alpha.
Fixed the Halftone video filter was not copying input alpha channel.
Fixed it was possible to use Split on a locked track in Timeline.
Fixed glitchy export job progress and estimated remaining time.
What is “bit depth?” That is the number of colors or video brightness levels. 8-bit has only 256 values per color component, for example, red/green/blue. 10 bits has 1024 levels. Previously, 10-bit video sources were only partially supported using GPU Effects and only GPU filters. Without GPU Effects (CPU), in order to stay in thee 10 bit space, you could only use filters with the #10bit tag but no transitions or track blending/compositing. Now, we have ported many CPU video effects to support 10- and 12-bit video sources including transitions and track blending. Also, the #10bit CPU video filters also work properly with the experimental GPU processing. Not all of the video CPU filters have been converted; many of them come through another software project that does not support it. However, we were able to convert many for this release or at least mark them as safe for a 10-bit project.
Higher Image Quality: Linear Color Processing
Any mixing of pixels with a color space’s gamma is not ideal, can cause color distortions, and is technically incorrect. This pixel mixing occurs whenever images interpolated, for example scaling, blurring, and sub-pixel positioning, as well as with track blending/composition. Previously, only GPU Effects and video filters in the GPU category operated in linear color. Now, there is an option to use it outside of the GPU processing. But when using the GPU, the handoff of the video from GPU to CPU now stays in the linear color transfer.
There is a new sub-menu in Settings > Processing Mode with options:
Native 8-bit CPU (fast, flexible)
Native 10-bit CPU (slower, better)
Linear 10-bit CPU (slowest, best)
Linear 10-bit GPU/CPU (Experimental)
Non-linear “native” options are still included because there is a signficant performance decrease when using linear (more conversions). We have a plan to improve performance for the next release. 8-bit is still included because it is more “flexible” by including more video filters. Of course, you can use an 8-bit video filter in a 10-bit, but the quality of the video clip or track will suffer a reduction in bit depth.
Other New Features
Added a drop-down to the Filters menu’s Video button to more conveniently browse appropriate filters for the current processing mode.
GPU
10-bit
Color
RGBA
YUV
Changed the Filters menu to default to Color filters in the Color layout/workspace and Audio filters in the Audio layout.
Added a visual preset browser for New > Image/Video from HTML generator.
To add a thumbnail for your custom preset add a file named <preset-name>.webp in the preset folder.
Added 2 new HTML presets: Chrome and Neon Flux!
Added Minimize Shotcut and Record Audio to Screen Snapshot and Screen Recording.
Added support for nvenc to Screen Recording on Linux/X11.
Added support for mov_text and SSA in Properties > Extract Subtitles.
Changes
Changed the default for Settings > Timeline > Automatically Add Tracks to OFF (changed in v25.10).
Changed the preset folder for the HTML generator to presets/HTML.
Changed the VP8/9 WebM presets to offer greater control over quality and bitrate.
Changed New > Animation (Glaxnimate) to Drawing/Animation to clarify that this is not only for animation.
Changed New Project > Project name to not permit ? to fix unloadable project.
Changed the Opacity video filter’s maximum to 200% to support reducing translucency.
Improved VA-API hardware encoder compatibility on our Linux AppImage, Portable, and Snap builds.
Changed Screen Snapshot on macOS to show a toolbar to choose rectangle or fullscreen and whether to minimize.
Removed Screen Recording on Windows 10–Snipping Tool does not support it.
Upgrade zimg (used to convert HDR to SDR and to and from linear color) to version 3.0.6.
Fixes
Fixed dissolve transition damages color (broke in v25.10).
Fixed export on Windows not working with some special characters in a filename (broke in v25.10).
Fixed Settings > Player > External Monitor > DeckLink Gamma > HLG HDR (broke in v25.10).
Fixed Stereo Enhancer and Declick Audio filters (broke in v25.10).
Fixed alpha channel is lost from a nested XML clip (broke in v25.10).
Fixed 10-bit with amf (AMD) and mf (Windows on Arm) hardware encoders.
Fixed Text: Typewriter cannot reduce blink rate to 0.
Fixed the defaults when using New > Text > Typewriter.
Fixed window not properly restored to maximized for Screen Snapshot.
Fixed the selection rectangle was showing when using Screen Snapshot on Linux/X11.
Fixed the UI for the Downmix audio filter (broke in v25.05).
Fixed custom colors in color dialogs are not saved in Qt 6.9 and up.
Fixed clips are still replaced after stopping a Reverse or Convert job.
Fixed Freeze Frame is not properly adjusting the start and end of existing filters.
Fixed Toggle Keyframe at Playhead for Corner Pin video filter.
Fixed Chroma Key: Simple overwrites the alpha channel including padding for a mismatched aspect ratio.
Fixed crash on MLT XML with extremely large (>8K) resolution (CVE-2025-65834).
Fixed audio crackle artifacts with pcm_s24le in mkv.
Fixed duration of markers are off by 1 frame in different ways and places.
Fixed the appearance of toolbars under KDE/Linux when its Settings > Colors & Themes > Application Style > Configure Icons and Toolbars > Main toolbar label is Beside icons.
Fixed a memory leak generating audio waveform data on media with an invalid or exremely long duration.
Fixed dragging media with a very long duration (> 1 day) to Timeline uses a lot of memory and unresponsive.
Fixed crash when clicking Cancel in the Set Duration dialog (also related to very long or invalid duration).
Fixed a memory leak in Filters panel.
Fixed a possible crash in the player’s scrub bar.
Fixed the vertical position of the shadow-clip when dragging a clip to a timeline with a subtitles track.
For example, the 3D-extruded gold text in this image:
This requires Google Chrome or Chromium.
Please see the stock Presets for examples.
It defaults to a transparent background!
The stock presets also demonstrate a template facility for up to 3 lines of text. You can make your own templates by using %1, %2, or %3 as placeholders in the Body field.
It is designed to make it easy to copy from codepen.io, but Shotcut does not include pre-preprocessors for things like SCSS or TypeScript. Therefore, in codepen.io click the V button in the top right corner of the edit block to choose View Compiled before copying.
This does not support WebGL or embedded video.
Generate Video is limited to 15 frame-per-second for performance reasons. A somewhat modern or fast computer and SSD hard drive are recommended.
Generate automatically opens the result in the Source viewer so you can preview it with its HTML for revising if needed. Once you add it to Playlist or Timeline, Properties now reflects the image or video and no longer shows the HTML inputs.
This is not available in the Linux Flatpak.
Added Text to Speech to Notes and Subtitles
This uses Docker like a plugin framework. The engine for this is Kokorodoki, and the model is Kokoro–both of which are not made by us. Do not ask us for more languages or voices.
There are Docker installers for Windows and macOS from docker.com. For Linux, it is usually preferable to get it from your distribution but ensure you get the real docker and not podman or the desktop icon dock bar. On Debian-based systems, it is the docker.io package.
The quality with subtitles is heavily dependent upon the timing and duration of each item. If it sounds choppy or cut-off, you either need to increase the speech speed and/or the item durations. Also, multi-line subtitle items are discouraged because that introduces a pause as it thinks it is like a new paragraph.
This is not available in the Linux Flatpak.
Added New > Screen Snapshot and Screen Recording
On Windows, Screen Recording simply launches Windows’ Snipping Tool provided by Microsoft. It does not create a job in Shotcut or automatically open the capture file when done. You need to either configure Snipping Tool to save to a file or click the notification that appears to view it from which you can save it. Then, you need to manually locate it and open it in Shotcut using either File > Open, the Files panel, or drag-n-drop from Explorer.
On macOS, Screen Recording uses the screenshot utility from Apple. It starts a job in Shotcut’s Jobs panel that you must right-click and choose Stop This Job.
On Linux, Screen Recording uses the bundled ffmpeg if using X11. On Wayland, it uses GNOME Shell, KDE Spectacle, or obs if neither of those. With X11 or GNOME/Wayland it starts a job in Shotcut’s Jobs panel that you must right-click and choose Stop This Job.
Not yet available for Flatpak on Linux.
Other New Features
Added a Text: Typewriter video filter and New Generator > Text > Typewriter.
Added Open With and Reload to Properties.
You can think of this as “Edit With” especially useful for images and audio files.
There is a file watcher upon opening with another tool as long as selection (Properties) does not change. If it does, you can use Reload. This does not yet reload–whether manual or automatic–every clip object based on this file.
This is not available in the Linux Flatpak.
Changes
There were some changes in the engine to prepare for video processing improvements in a future version. As a result, there are a different set of blending modes in Timeline trackProperties and the Blend Mode video filter.
Changed Export > Export File to Export Video/Audio.
Changed Export > Search to include file name extension.
Changed Settings > Time Format to default to Clock.
1 hot for the new Speech to Text model downloader
2 hots for the new System Fusion and improved System UI themes
3 hots for your CPU cooking on the new Outline video filter!
Added a Whisper.cpp (GGML) model downloader to the Speech to Text dialog.
A model is no longer included in the download and installation reducing their sizes.
Improved the System theme to follow the operating system palette on Windows (darker and more contrast), and improved its appearance on macOS dark mode.
Added Settings > Theme > System Fusion that combines the operating system palette with the monochrome, symbolic icons of the Fusion themes.
Added an Outline video filter that uses the input alpha channel–useful with rich text or assets with a transparent background.
This means that, like Drop Shadow, it will not work as expected when used after a text filter on a video or image clip. Rather, you must use a text clip (transparent color generator with text filter) on an upper track.
Other New Features
Added the ability to drag the waveform peak line to adjust audio gain.
Added Settings > Timeline > Adjust Clip Gain/Volume to turn off the above.
Added rolling an edit/trim to Timeline:
Hold Ctrl (command on macOS) while trimming to simultaneously trim the neighbor clip.
Added a Soft Focus filter set.
Added Audio/Video duration to the Slideshow Generator dialog, defaults to 4 hours.
This facilitates using Slideshow Generator to make transitions between everything when including both video and images. (It still respects the source duration and in & out points; duration here is a maximum.)
Surround Sound Mixing Improvements
Added fader and surround balance to the Balance audio filter if channels > 2.
Added Channels toggle buttons to many audio filters:
Band Pass
Compressor
Delay
Downmix
Equalizer: 3-Band
Equalizer: 15-Band
Equalizer: Parametric
Expander
Gain/Volume
High Pass
Low Pass
Limiter
Mute
Noise Gate
Notch
Added support for 4 channels in the Copy Channel audio filter.
For example, now you can:
Copy stereo music to the rear channels and use the fader in the Balance filter to reduce its volume,
Downmix spoken word into the center channel and apply a Band Pass filter to it, and
Route music or sound effects to the low-frequency channels and apply a Low Pass filter to it.
Other Improvements
Changed the default Export > Audio > Rate control to Average Bitrate for AAC, Opus, and MP3.
Added the ability to add/use multiple Mask: Apply filters.
Added support for Scrub While Dragging to trimming on the timeline.
Added hold Shift to ripple-trim when Ripple is turned off.
Added French (Canadian) and Lithuanian translations.
Fixes
Fixed Mask: Apply with multiple Mask: Simple Shape (broke in v25.05)
Fixed exporting projects containing only Generator clips on Windows (broke in v25.05).
Fixed converting 10-bit full to limited range (broke in v25.01).
Fixed dropdown menus using Settings > Theme > System on Windows.
Fixed Load Keyframes from Motion Tracker is empty after opening something into the Source player.
Fixed Balance and Pan audio muted channels if audio channels > 2.
Fixed Export > Use hardware encoder fails with H.264 on macOS 15.
Fixed Properties > Convert or Reverse for iPhone 16 Pro videos with Ambisonic audio.
Fixed a single frame fade out filter would either mute or make black.
Fixed repairing a project (e.g. broken file links) with proxy turned on.
Fixed doing Freeze Frame on the first frame of a clip.