Qt is the main UI and app library (separate from the media engine) that Shotcut uses. This is the first major upgrade of it since Shotcut started over 10 years ago with Qt 5! (Some interim upgrades did feel major tho.) It was a lot of work, but as a result:
The Windows version now directly uses Direct3D 11 instead of OpenGL (or OpenGL converted to Direct3D) for drawing portions of the UI: Timeline, Keyframes, Filters, and the video player. This is faster, and we hope it improves compatibility.
The Windows version improves support for fractional display scaling in the system settings (e.g. 125% or 150%).
The macOS version now directly uses Metal (Apple’s GPU tech) instead of OpenGL for drawing portions of the UI (see above). It is faster.
The macOS app is now universal: compatible with both Intel and Apple Silicon CPUs (M1/M2) in the same app.
Some fixes for commonly reported Linux bugs like some images not rendering, visual controls not showing, and OpenSSL 3 compatibility. This also ought to improve things on Wayland.
There is now an ARM64 build of the Flatpak for Linux (but none of the core developers currently has a Linux/ARM system for testing and support).
Besides the performance improvements from Qt 6 above:
Some timeline optimization.
Additional multi-threading in audio/video file reading.
Faster preview for most video clips without filters.
Settings > GPU Effects is back! We made several big fixes to improve its stability. Decoupling it from the OpenGL used for the UI and video display also helps. If you think its performance is not so great try it with Preview Scaling. GPU effects’ performance improvement mainly comes on systems with weak CPUs, with certain filters like Scale & Position, and when stacking filters and video tracks. It also works best when using only GPU filters.
GPU effects is not just about performance but also quality since it does all processing in linear color, which gives optimally colored blending and interpolation.
End-to-end support for 10-bit! For this to work, on 10-bit sources use only GPU filters. Nothing prevents you from adding CPU filters, but that will introduce an 8-bit down- and up-conversion into the pipeline. To add text, use a text clip using Open Other > Text as that is not a 10-bit video source.
Searching in Filters on “gpu” shows only/all GPU filters.
All previous limitations are removed and working now: text filters, video scopes, stabilization.
The Blend Mode video filter and track Properties option is not available because it is not yet implemented.
Rotation is not available in the Size & Position filter because that is not implemented yet.
Motion Tracker Video Filter
Added a Motion Tracker video filter. This is required to use motion tracking. It only does the preview and analysis and is not intended to include effects but rather drive other video filters…
Added a Load Keyframes from Motion Tracker button to the following filters:
Mask: Simple Shape
Size, Position & Rotate
Size & Position (GPU)
The Motion Tracker can be on a different clip than the clip with the above filters.
The dialog only shows Motion Trackers that have successfully completed analysis.
Click Reset in the dialog to remove the keyframes added by motion tracker and restore the state of these parameters to before motion tracking.
Clicking Apply in the dialog more than once automatically resets the affected parameters before adding new keyframes; so, you do not need to reset manually between changes.
You can edit the added keyframes, but if you reapply the motion tracker your changes are discarded.
To change the initial position of something after applying tracking you should Reset, make changes, and then Apply again.
Disable the Motion Tracker when your changes and its analysis are done (or turn off its preview). I do not recommend removing this filter when you are done loading keyframes because if you need to make an adjustment, this filter must still be available to list it in the dialog and get its tracking data.
More New Features!
Added new time filters: Speed: Forward Only and Speed: Forward & Reverse. These are usually friendlier to use than Time Remap. The forward only version does not usually require converting the clip first unlike Time Remap and Speed: Forward & Reverse.
Added saving and loading filter sets. A filter set is a collection of filters. The copy and paste buttons in the Filters panel open new Copy Filters and Paste Filters dialogs. When copying filters, you can optionally give it a name, in which case it will be saved to use not only in the current project but also all projects and sessions. Giving it a name still also puts it on the system clipboard. When pasting filters, you can choose to paste from the clipboard or a saved filter set. A few examples are included: Obscure With Blur, Obscure With Mosaic, Text Simple with Gradient Back.
Added an Add To Timeline button to many things in the Open Other menu/dialog. That usually saves a couple of steps.
Added a visual rectangle control to the Mask: Simple Shape filter.
Holding Shift while dragging a point in the Corner Pin filter moves all corners together.
Added faster and better quality YADIF deinterlacer plus addition of BWDIF deinterlacer.
Added 10-bit export presets under the “ten_bit” category.
Added support for Intel (“qsv”) AV1 and VP9 hardware encoders on Windows including 10-bit for AV1.
Fixes and General Improvements
Less audio crackling in exports when audio source is not 48000 Hz sample rate.
Less audio crackling upon start of playback in preview.
Upgraded Glaxnimate to version 0.5.3, which fixes some bugs and can animate motion along a drawn path.
Upgraded FFmpeg to latest version 6.
Upgraded MLT to latest version 7.16.0.
Upgrade AV1 codecs to latest versions.
Stabilize and Normalize: Two Pass on a timeline clip is faster.
The Lens Correction video filter is back.
Added Settings > Language > Hebrew.
Open Other > Text now has a Rich option.
Changed File > Export > Video and its shortcut to be the same as clicking Export > Export File.
Fixed seeking on raw FLAC audio files.
Fixed Record Audio breaks the state of the player’s mute toggle when you unmute the Shotcut audio during recording.
Fixed using the mouse wheel to scroll the timeline horizontally on macOS and Linux.
Fixed image padding not transparent during a transition.
Added low disk space warnings to the Properties > Convert and Reverse actions.
Fixed loading projects made with version before 19.06 using comma for decimal symbol.
Fixed chroma bleeding for interlaced YUV 4:2:0 video sources.
Fixed Shotcut became very slow if something wrong and very large was saved to Recent. Shotcut no longer saves recent file names to the main configuration file, which is the Registry on Windows. It now saves to a recent.ini text file in its app data directory and limits the maximum size of any entry.
Drawbacks and Limitations
Settings > Player > External Monitor with a system monitor (not Blackmagic peripheral) is no longer available.
Export progress no longer shows on the Windows taskbar icon.
The minimum version for Windows is now Windows 10. Older systems can continue to use version 22.12.
The minimum version of our non-Flatpak Linux binaries is now based on Ubuntu 20.04 LTS, which uses glibc 2.31. This is due to modern C++ requirements in dependencies, and bundling libstdc++ can break non-bundled system components. Previously, it was based on Ubuntu 18.04 LTS, whose support period ended in April, 2023. Older systems can continue to use version 22.12, or maybe the Flatpak will work.
Shotcut is a free, open source, cross-platform video editor for Windows, Mac and Linux. Major features include support for a wide range of formats; no import required meaning native timeline editing; Blackmagic Design support for input and preview monitoring; and resolution support to 4k.