AfterDawn | News | Guides | Software downloads | Tech Support | Forums | HIGH.FI
AfterDawn

Version history for OpenShot

<<Back to software description

Changes for v2.5.0 - v2.5.1

  • With faster performance, huge optimizations with effects, and improved UTF-8 character support, OpenShot 2.5.1 is the best version yet, bringing powerful and simple video editing to the open-source world!
  • The OpenShot team has been very busy over the past few weeks, and we are proud to release OpenShot 2.5.1! While we don't normally release so quickly, we had a show-stopping bug with version 2.5.0 (mostly related to UTF-8 support of non-ASCII characters), and decided to put out a fix as quickly as possible. However, we were also able to "sneak in" some really awesome improvements at the same time!
  • Download OpenShot 2.5.1 Now
  • Highlights (TL;DR)
  • UTF-8 Project Encoding Bug Fix (for non-ASCII characters)
  • Auto-Repair UTF-8 Corrupted Projects
  • Thumbnail Server UTF-8 Encoding
  • Updated Documentation (with Auto-Update)
  • Updated Translations / Supporters
  • Fixed Broken Color-Shift and Shift Effects
  • Updated Documentation and Examples (C++)
  • Saturation Effect: Optimize and Parallelize
  • Hue Effect: Optimize and Parallelize
  • Blur Effect: Optimize and Parallelize
  • Wave Effect: Optimize and Parallelize
  • Brightness Effect: Optimize and Parallelize
  • Pixelate Effect: Rewrite effect to use QPainter/QRect
  • Frame: Fix interlaced AddImage
  • Raise Preview Cache to CPUs X 8 Frames (max 64)
  • FindRESVG CMake: Modernize with Targets
  • Enhance Json Data Handling
  • Improve Travis Speed (remove homebrew from Mac builds)
  • Auto-Update HEX Version (for older CMake versions)
  • Misc Bug Fixes
  • UTF-8 Project Encoding
  • A large regression with handling file paths was discovered after the release of OpenShot 2.5.1. Not only did non-ASCII paths fail to save, the *.OSP project file was corrupted in the save process. Yikes. This has been resolved (thanks FeRD and SuslikV), and not only is the bug fixed, but opening these corrupted *.OSP project files with version 2.5.1 will also fix the corruption automatically! I am happy to report that this fix has been tested on Windows, Linux, and Mac, and works great now, especially with non-ASCII file paths!
  • Effects Performance
  • Many effects have been optimized and parallelized, which takes advantage of multi-core processors. This results in many magnitudes of improvement for these effects (or at least most of them). Real-time previews are also notizably improved when effects are involved.
  • Saturation Effect: Optimize and Parallelize
  • Hue Effect: Optimize and Parallelize
  • Blur Effect: Optimize and Parallelize
  • Wave Effect: Optimize and Parallelize
  • Brightness Effect: Optimize and Parallelize
  • Pixelate Effect: Rewrite effect to use QPainter/QRect
  • Improved Documentation & Translations
  • Lots of documentation improvements, including new examples, updated syntax, better formatting, and a new auto-doc-update system, which updates our https://www.openshot.org/user-guide/ anytime a change is committed. Updated translations and supporters are also included, with improved language support for many languages.
  • Join Us
  • Did you know that helping make OpenShot better is really fun, and we are always in need of volunteers, testers, suggestions, GitHub support, translators, and contributors of all kinds! Please introduce yourself to me at hello@openshot.org, and let's chat about how we can work together!
  • Details
  • df8baf0 2020-03-01 FeRD (Frank Dana) Merge branch 'osp-file-repair' into release-20200229 HEAD -> release-20200229, origin/release-20200229
  • 4ed2c2f 2020-03-01 FeRD (Frank Dana) json_data: Correct for lost slashes, pre-repair
  • f792a4a 2020-02-29 Jonathan Thomas Release branch for 2.5.1 (min libopenshot version 0.2.5)
  • 777cf1f 2020-02-29 Jonathan Thomas Merge pull request #3261 from OpenShot/update-translations-2-5-1 develop
  • f044d07 2020-02-29 SuslikV Fix formatting of repaired JSON data (#3262)
  • d28befd 2020-02-29 SuslikV Add thumbnail to the audio only clip (#3249)
  • 35b65e8 2020-02-28 Jonathan Thomas Updating release date and appdata.xml entry origin/update-translations-2-5-1, update-translations-2-5-1
  • 8201f31 2020-02-28 Jonathan Thomas Merge pull request #3187 from ferdnyc/pending
  • ddf89b9 2020-02-28 Jonathan Thomas Merge pull request #3181 from ferdnyc/filter
  • fd39dde 2020-02-27 Jonathan Thomas Bumping version to 2.5.1-dev (for upcoming release)
  • e05f4bc 2020-02-27 Jonathan Thomas Update cache for 2.5.1 release
  • b434a9a 2020-02-27 Jonathan Thomas Updating contributors/supporters for upcoming 2.5.1 release
  • 03499eb 2020-02-27 Jonathan Thomas Updating translations for upcoming OpenShot release (2.5.1)
  • 4d46dde 2020-02-27 Jonathan Thomas Merge pull request #3259 from ferdnyc/osp-file-repair
  • d259a22 2020-02-27 FeRD (Frank Dana) json_data: Autorepair corrupted project files
  • 7f8107a 2020-02-27 FeRD (Frank Dana) main_window: Persist statusBar as a class member
  • ee43136 2020-02-26 Jonathan Thomas Merge pull request #3229 from SuslikV/patch-11
  • 770b744 2020-02-19 Frank Dana Retire Windows envvar-deletion code (#3234)
  • 34fab2b 2020-02-18 Jonathan Thomas Merge pull request #3237 from OpenShot/fix-changelog-listing
  • 5c1bb2c 2020-02-18 Frank Dana Merge pull request #3228 from OpenShot/table-indents
  • 3b3e026 2020-02-18 Jonathan Thomas Merge pull request #3236 from OpenShot/auto-sphinx-update
  • 8d1c0ad 2020-02-16 SuslikV Fix readonly text fields visibility (#3231)
  • 7deb3f7 2020-02-16 SuslikV Specify encoding for thumbnails path
  • bac52ca 2020-02-15 SuslikV Get json in raw format
  • e247a9b 2020-02-14 Frank Dana Package standard .desktop file in AppImage (#3223)
  • 9781b50 2020-02-14 FeRD (Frank Dana) Docs: Remove huge margin under table headings
  • 846e82e 2020-02-14 FeRD (Frank Dana) Docs: Outdent table code a bit
  • 67c2598 2020-02-14 Jonathan Thomas Updating sphinx table syntax on titles
  • eecd449 2020-02-14 Jonathan Thomas fixing syntax error on gitlab-ci
  • dd12457 2020-02-14 Jonathan Thomas Auto build sphinx documentation and publish to openshot.org
  • a56d8bc 2020-02-12 Frank Dana Modernize .travis.yml, add Python 3.6/Bionic (#3218)
  • da851d1 2020-02-11 Frank Dana Merge pull request #3214 from ferdnyc/tutorial-cursor
  • 086bcf2 2020-02-11 FeRD (Frank Dana) Tutorial: Eliminate redundant drawPath()
  • cb91cbe 2020-02-11 FeRD (Frank Dana) Tutorial: Set arrow cursor, streamline painting
  • 41e6b58 2020-02-11 FeRD (Frank Dana) Tutorial: Format code, eliminate one-use variables
  • 9a27269 2020-02-11 FeRD (Frank Dana) Tutorial: Clean up tutorial objects
  • 937c87c 2020-02-11 FeRD (Frank Dana) Tutorial: Don't set Forbidden mouse cursor
  • 3fed6be 2020-02-09 Frank Dana Merge pull request #3211 from ferdnyc/remove-doxyfile
  • 6671684 2020-02-09 FeRD (Frank Dana) Remove outdated Doxyfile.in
  • 1890126 2020-02-09 Jonathan Thomas Fixing logic when trying to parse changelogs in official releases (on About->Changelog) origin/fix-changelog-listing, fix-changelog-listing
  • a198f5f 2020-02-08 Jonathan Thomas Merge pull request #3208 from OpenShot/merge-master-into-develop
  • b2ad5b3 2020-02-08 Jonathan Thomas Merge branch 'master' into merge-master-into-develop origin/merge-master-into-develop, merge-master-into-develop
  • eb7ecbb 2020-02-03 Frank Dana Merge pull request #3202 from ferdnyc/verbose-cherry origin/optimized-effects
  • f46abee 2020-01-05 Jonathan Thomas Removing verbose debug statement when getting properties for property dialog (which happens as the user scrubs the timeline)
  • 1e0ecf3 2020-01-22 Frank Dana Merge branch 'develop' into pending
  • d039709 2020-01-22 Frank Dana Merge pull request #3193 from SuslikV/patch-8
  • f79842c 2020-01-22 FeRD (Frank Dana) Tweak export-cancel confirmation
  • 79f3d76 2020-01-22 Frank Dana Merge pull request #3191 from OpenShot/ferdnyc-timetime
  • 52df046 2020-01-22 Frank Dana Merge pull request #3194 from ferdnyc/undo-active
  • a51640b 2020-01-19 FeRD (Frank Dana) classes/updates: Notify watchers when needed
  • 20080ce 2020-01-22 SuslikV Add confirmation dialog when canceling export
  • 1cfba5f 2020-01-21 Frank Dana Use time.time() more defensively
  • a8a641c 2020-01-19 Frank Dana Merge pull request #3186 from SuslikV/patch-9
  • c7d0692 2020-01-19 FeRD (Frank Dana) classes/updates: Add pending_acton tracking
  • 3623382 2020-01-19 FeRD (Frank Dana) classes/updates: Code style, unused imports
  • 059fbd1 2020-01-19 SuslikV Apply the default profile settings
  • 2b4bf65 2020-01-17 FeRD (Frank Dana) Protect filter() against damaged projects
  • 5e90b39 2020-01-13 Jonathan Thomas Merge pull request #3175 from OpenShot/bumping-version-2-5-0
  • 4aea68e 2020-01-13 Jonathan Thomas Updating min libopenshot version to 0.2.4 origin/bumping-version-2-5-0, bumping-version-2-5-0
  • d0c8766 2020-01-13 Jonathan Thomas Bumping version to 2.5.0-dev1 (official release will be 2.5.0 now instead of 2.4.5 due to extensive changes)
  • 41d371c 2020-01-10 Frank Dana Merge pull request #3169 from ferdnyc/delay-app-import
  • 1ced9d4 2020-03-02 Jonathan Thomas Merge branch 'release-20200229' of github.com:OpenShot/libopenshot into release-20200229 HEAD -> release-20200229, origin/release-20200229
  • 4d7b407 2020-03-02 Jonathan Thomas Fixing abs -> fabs regression. Not sure how this worked before.
  • 0910f22 2020-03-02 FeRD (Frank Dana) Merge branch 'colorshift-name-sync' into release-20200229
  • 325c73a 2020-03-02 FeRD (Frank Dana) ColorShift: Use one-word name in EffectInfo
  • b724f2e 2020-03-01 Frank Dana Merge pull request #400 from ferdnyc/add-features
  • 600e884 2020-03-01 Frank Dana Merge branch 'develop' into add-features
  • c7fe363 2020-02-29 Jonathan Thomas Fix ColorShift classname in EffectInfo::CreateEffect
  • 8d78242 2020-02-29 Jonathan Thomas Release branch for 0.2.5 (SO 19)
  • 8b78ddf 2020-02-29 Jonathan Thomas Merge pull request #451 from OpenShot/bump-version develop
  • 5da706d 2020-02-28 Jonathan Thomas Bump dependency to OpenShotAudio to 0.2.0 origin/bump-version, bump-version
  • 2d471ae 2020-02-28 Jonathan Thomas Bump version to 0.2.5-dev1 (SO 19)
  • 4f591c7 2020-02-27 Jonathan Thomas Merge pull request #396 from ferdnyc/json-...



Changes for v2.4.4 - v2.5.0

  • Hardware encoding and decoding support
  • Perhaps one of the most exciting changes in OpenShot 2.5.0 is our experimental support for hardware acceleration. You will see some new options available if you have a supported encoder/decoder. Many graphics cards come with the ability to encode and decode video data without using the CPU. This can result in a huge performance improvement on some systems, but also depends on the input and output formats, and many other factors. For example, if you are using only MP4/H.264 input files, and your graphics card is supported, it can help OpenShot decode the pixel data from the video, and on the flip side, encode the pixel data back into a video. This can increase performance by up to 30-40%, just depending on all the various factors. A huge thanks to Peter M for his dedication and help with this one!
  • Hardware acceleration options in OpenShot 2.5.0
  • Keyframe performance improvements (magnitudes faster)
  • Often on projects which contain long clips or many clips, the performance of our keyframe system would slow down. Usually the delay was only on first accessing the keyframe, but when many clips are involved, it would sometimes slow down a bunch as a user would jump around the timeline. We have completely rewritten the keyframe system to deliver real-time interpolated values, and no longer cache the entire value set. A big thanks to Daniel Jour for all his great engineering on this one! Our new system can generate almost 100,000 interpolated values before our old system would return even 1 value.
  • Keyframe performance improvements in OpenShot 2.5.0
  • Export and Import of EDL and XML (Premiere and Final Cut Pro)
  • For the first time ever, OpenShot can import and export data in widely supported formats. Our EDL support works with many video editors, and supports the basic timeline data (files, clips, some keyframes, transitions, etc…). XML format is supported in Final Cut Pro, but also many other products support this format. It also contains the basic timeline data (files, clips, some keyframes, and multiple tracks). The XML format is more advanced by far, and supports more features from OpenShot. This has been a highly requested feature for many years. I’m happy to finally deliver on it!
  • XML Export (Final Cut Pro format) in OpenShot 2.5.0
  • Thumbnail generation much improved (uses local HTTP server)
  • Previous versions of OpenShot had a very fragile thumbnail system. If a folder got moved or renamed, it was likely many broken thumbnails would appear. This has now been fixed in a few ways. Project’s now have unique asset folders, and thumbnails are now generated using a local HTTP server, check multiple folder locations, and can regenerate missing ones.
  • Blender 2.8+ Support
  • Blender 2.8 was a huge and impressive release. We now support the new *.blend format, and most of our animated titles have been fixed or recreated from scratch. We also have some improved logic around version detection and EXE detection.
  • Blender 2.8+ support in OpenShot 2.5.0
  • New ability to recover previous saves (~/.openshot_qt/recovery/) and improved auto-backup
  • One of the scariest types of issues a user can encounter is losing huge amounts of data, by perhaps deleting everything from their timeline (on accident), and then auto-save running. Now, before every save, a copy of the entire *.osp project is copied into a recovery folder. We only store a limited amount of recovery files, but now users will be able to easily grab an older version and copy it back to the original save folder location. While not perfect, this will hopefully prevent massive data losses, and give users more options to recover previous versions of a project… even when the undo/redo system and auto-save system fails them.
  • New project recovery options in OpenShot 2.5.0
  • SVG compatibility and improvements
  • We have fixed many issues around SVG support, transparency issues, font issues, and included a much newer version of resvg library in our official releases. Updated title thumbnails, and better support of SVG, especially on OS X and older Linux distros.
  • Improved SVG support in OpenShot 2.5.0
  • Preview window improvements (dimensions divisible by 2)
  • When resizing the preview window in OpenShot, often a user will choose an invalid window size, one that is not divisible by their project output size (i.e. 1920x1080). We now verify (and adjust if needed) the final preview window size to always be divisible by 2 (both width and height). This prevents flickering lines and bars on the sides of preview/playback.
  • Export improvements
  • When exporting a video, we no longer modify the project’s keyframe data. This was done to scale keyframes up and down, when exporting to different frame rates. But a side effect was it would modify keyframe data and potentially lose data (scaling down and back up). This no longer happens, and project data is now safe when exporting.
  • Disable metrics until opt-in (privacy improvements)
  • On the first launch of OpenShot, we no longer automatically send metric data until a user has opted in to share metrics with us. The metric requests are queued up, and will go nowhere unless a user gives permission. Metrics are very useful though, and help us see how OpenShot is being used. They are already anonymized, and contain no IP or location data. But they tell us important details, such as version info, library versions, what errors have occurred, etc… All things that help us find bugs and ultimately improve the quality of OpenShot.
  • Improved privacy opt-in for OpenShot 2.5.0
  • Tons of CMake and build improvements
  • Thanks to @ferdnyc for all the help and support improving our build system, CMake, Travis CI, GitLab CI, and much more! We’ve updated many dependencies, but mostly, our build system is simpler, more bullet-proof, and more modern.
  • Cross-platform improvements (fixed lots of small differences between OSes)
  • We now have a much more rigorous testing suite for OpenShot, and all 3 OSes have reached the same support and features, and all OSes are now passing our release testing plan. This is part of a bigger plan to make OpenShot more transparent, more documented on GitHub, and easier for new contributors to join us. A big thanks to everyone who helped test OpenShot 2.5.0.
  • Get Involved
  • Have you been following OpenShot development for a long time? Do you have amazing ideas for improving OpenShot? Do you want to help spark “video editing joy” in the world? Please send an email to hello@openshot.org and introduce yourself! It’s really that easy to get involved with OpenShot on any level, and you certainly don’t need to be a programmer. All skills, all skill levels, and all people are welcome to join our developer community, share ideas, laugh, and make OpenShot more awesome! Still not convinced or just don’t have any time to contribute? You can always send a donation (and get your name featured in our credits)!
  • Changelog
  • Here is a more exhaustive list of changes included in version 2.5.0. Also, I want to thank everyone who contributed to these changes! Thank you for helping make OpenShot better!
  • openshot-qt:
  • 75632f3 2020-01-13 Jonathan Thomas For Mac, preferences should try and append AppBundle executable name for common apps (Blender, Inkscape) HEAD -> release-20200105, origin/release-20200105
  • e4d79f6 2020-01-13 Jonathan Thomas Bumping version to 2.5.0 (large bump from the previous version, but due to the extensive changes)
  • 27bf096 2020-01-10 FeRD (Frank Dana) main_window: Code style (indentation, exceptions)
  • 87211f7 2020-01-09 Jonathan Thomas Updating some Linux dependencies missing in AppImage
  • 83c4563 2020-01-08 Jonathan Thomas Fixing Windows powershell escaped char in 'git log' call
  • f2bc30b 2020-01-08 FeRD (Frank Dana) launch.py: Fix command-line output
  • d35dc53 2020-01-08 Jonathan Thomas Testing a better way to generate git logs from the current commit to the previous tag. During a release, we tag the current commit during the publishing, and then it starts detecting no changes (since we are ON the current tag).
  • 0cb9751 2020-01-08 Jonathan Thomas Don't read the changelog more than 1 time (when testing different encodings)
  • f840d6d 2020-01-08 Jonathan Thomas Stopping video playback when opening a project, trying to simplify some edge cases (no need for continous playback during switching project files, lol)
  • 2ebef94 2020-01-07 Jonathan Thomas Attempt to fix invalid `resources` folder in Mac App Bundle
  • e276d62 2020-01-07 Jonathan Thomas Add queue for sending metrics, and disable metrics completely on initial launch. Once the user has opted in, flush the queue and send all metrics which are queued. If the user doesn't opt-in, we send no metrics at all.
  • 8aeda71 2020-01-07 Jonathan Thomas Adding a version for Unity importing... trying to get rid of an error I keep seeing related to this.
  • fd620f4 2020-01-07 Jonathan Thomas Updating rescale_keyframes() method to not modify the current project. This allows the Export dialog to make a copy of the rescaled keyframes, and not modify the active project when exporting to a different FPS. Now Export feels much safer, because it doesn't modify project data.
  • 0cf6539 2020-01-06 Jonathan Thomas Fixing keyframe rescale issue after an export is completed (we were scaling all keyframes twice on accident)
  • 67d6a76 2020-01-06 Jonathan Thomas Adding libopenshot version to About dialog
  • 5dbb993 2020-01-05 Jonathan Thomas Removing verbose debug statement when getting properties for property dialog (which happens as the user scrubs the timeline)
  • eb98bf...



Changes for v2.4.3 - v2.4.4

  • OpenShot Logo Animation (Credit: owlmaddie)
  • I am proud to announce the immediate release of OpenShot 2.4.4, the absolute best version yet! This is going to be a long post, but here is a quick summary for those who are short on time. This release brings huge performance and stability improvements, along with some major bug fixes, lots of polish, and many new features.
  • >> Download v2.4.4 Now <<
  • Keyframe Scaling
  • This is perhaps one of the best bug fixes included in this release. Keyframes contain actual frame numbers and their values, and thus, switching to different frame rates and/or exporting to different frame rates, has many unexpected consequences, such as every single keyframe coming too early or too late. This is now fixed, so keyframes and animations are correctly scaled when changing frame rates!
  • Timeline & Preview Performance
  • Stability and performance are extremely important for OpenShot, and historically have been our greatest technical challenge. As usual, lots of improvements have been made in this area. Some of the stand-out improvements include: special handling for certain audio files to better handle the 1-frame video track, updated Angular and timeline speed improvements, improvements to image caching, and improved “missing frame” logic which helps prevent freezes while searching for a frame which will never come.
  • Improved SVG Rendering
  • OpenShot is now compatible with resvg, an amazing SVG rendering library. A big thanks to RazrFalcon for helping us with the integration! This improves our SVG overlay and title rendering, supporting much more of the SVG standard. The resvg library is included with our official downloads and installers, but might take much longer to reach official Linux repositories (since resvg is not available in many repos). Hopefully the integration with OpenShot will help resvg move in that direction.
  • Improved Docking & Tracks
  • One of the most significant updates to docking is the new full size properties widget, which can be on the left or right side of OpenShot. This displays more information without scrolling as much, and is very useful when editing or animating. A big thanks to Frank Dana (ferdnyc) on making this a reality. Also, many improvements have been made when inserting a new track, which makes it extremely fast even on huge projects, and easy to “undo” if needed. Also, many bug fixes relating to “Track Name” are included, and custom named tracks are supported on all dialogs.
  • Improved Windows Installer
  • If you have previously experienced issues launching OpenShot on Windows, we have created a new wiki article with troubleshooting steps. In addition, our Windows installer now looks for conflicting DLLs, and renames them during install, and should resolve a great number of issues. These conflicting DLLs are being added to System32 by some unknown 3rd party software (which should never be done), and are superseding the ones included with OpenShot. This can also easily be reversed (since we just rename the files). However, in general, our new Windows installer should help a bunch of people who previously could not launch OpenShot.
  • Relative File Paths
  • Once a project file (*.osp) is saved in version 2.4.4, some magic happens. All file paths are converted into relative paths, even paths contained in the undo/redo history, thumbnail paths, file paths, and any other paths found in the project data. Upon re-opening your project, all paths are once again converted into absolute file paths. This allows a project folder to be completely portable, and can be moved on the same machine, can be moved to another machine, and even another operating system… and will still open just fine! This “kind of” worked before, but should now work excellent and with great stability.
  • User-Defined Export Presets
  • Have a favorite export preset that is not included in OpenShot by default? No problem. Just create a text file in the /users/USER/.openshot_qt/presets/ folder. You can copy one of our existing presets to get you started. Next time you launch OpenShot and open the Export dialog, you will see your custom preset listed.
  • New Languages: Hindi, Arabic, Chinese
  • For many years I have dreamed of including full Hindi, Arabic, and Chinese (Simplified and Traditional) support in both OpenShot and openshot.org. I was finally able to help fund this effort, to help out the OpenShot translator community, and help get us to 100% complete translations in all 3 of these languages. I am very proud of this, and hopefully this effort will help engage people from these languages, and introduce OpenShot to a whole new world of people!
  • Constant Rate Factor Support (CRF)
  • We have added support for constant rate factor, which required some refactoring of libopenshot::FFmpegWriter. A big thanks to Peter (you are the best)! This can be utilized in any export preset, and is currently used by our VP9 preset.
  • Integrated Changelog
  • Do you ever wonder what changes are included in your currently installed version of OpenShot? Now you can find out! Use the Help->About OpenShot->Changelog dialog, and you can quickly see what commits, the date of each commit, and you can even right click and view the GitHub commit information. I know I might be the only person excited by this, but yay!
  • Waveform Improvements
  • When splitting clips which displayed waveforms, the newly split clip would no longer display any waveform data. This has been a long time bug report, and is finally fixed in this release! Thanks to everyone for patience on this one, and I’m glad that it’s finally resolved.
  • Improved Release Testing
  • One of my goals for 2019 is to make the development process for OpenShot as transparent as possible, and document absolutely every detail of OpenShot’s release cycle, release testing, and release flow. Included in this documentation is a completely new process for testing OpenShot before a release. Instead of this task being done primarily by myself, I’m hoping that this more transparent and documented approach will allow other contributors to fully test OpenShot and help me out in this area. And for the record, I successfully completed the new release testing process for all 3 OSes (Linux, Mac, and Windows). I actually found many issues while working through the testing plan and resolved them all prior to release. It felt great to actually see the validation of why a more rigorous testing plan is necessary.
  • New User Community
  • Over the past few months, our long-time user community / forum (http://www.openshotusers.com) died. Where can a new user ask questions? Where can users have rich discussions on problems, requested features, work-arounds, ideas, etc…? Introducing the official OpenShot subreddit: https://www.reddit.com/r/OpenShot/. So, please join the community, help answer questions, and hang out with us OpenShot people!
  • Full-Time Development
  • After giving more than 10 years of my life to this project and this community, I am finally working full-time on OpenShot. I had only dreamed of OpenShot becoming a full-time career, but I am so incredibly humbled and honored that OpenShot continues to grow, improve, and that I have scratched together enough money to work on this full-time! Hold on tight, because 2019 is going to be the most significant one yet for OpenShot!
  • Get Involved
  • Have you been casually following OpenShot for a long time? Do you have amazing ideas for improving OpenShot? Do you want to help spark “video editing joy” in the world? Send an email to hello@openshot.org and introduce yourself. It’s really that easy to get involved with OpenShot on any level, and you certainly don’t need to be a programmer either. All skills, all skill levels, and all people are welcome to join our developer community, share ideas, laugh, and make OpenShot more awesome! Still not convinced or just don’t have any time to contribute? You can always send a donation (and get your name featured in our credits)!
  • Changelog
  • Here is a more exhaustive list of changes included in version 2.4.4. Also, I want to thank everyone who contributed to these changes! Thank you for helping make OpenShot better!
  • openshot-qt
  • Bump version to 2.4.4 (minimum libopenshot to 0.2.3)
  • Scale keyframe coordinates when changing Profile or Exporting using a different FPS (#2620)
  • Large performance improvements on AngularJS Timeline (and solved some Async issues) (#2533)
  • Integration of resvg SVG library (gitlab and freeze updates) (#2540)
  • Improved Tracks (simpler numbering, faster inserting, prevent deletion of locked tracks) (#2491)
  • Improved Docking (Timeline widget is now dockable and Properties works in pillar mode) (#2490)
  • Windows Installer: Remove invalid files (system32/zlib1.dll) (#2678)
  • Use libopenshot to generate preview images for our Title editor, and no longer use Qt's SVG parsing by default. (#2544)
  • Improving UTF-8 path detection and conversion (#2525)
  • Rewrite conversion of relative and absolute path support in OpenShot (#2477)
  • Fixing many Python issues reported in our automatic exception tracking (#2482)
  • Fixing Various Breakages in our Release Testing Plan (#2669)
  • Fixing regressions to Split Audio (#2660)
  • Integrate Constant Rate Factor (CRF) into Export Dialog (#2543)
  • Separating PrepareStreams() from Open(), to allow SetOption() to correctly function (#2568)
  • Adding h265 export preset (thanks Peter) (#2680)
  • Adding ~/.openshot_qt/presets/ User-defined Presets, so users can easily install custom export presets (devices and formats) (#2555)
  • Dragging an OSP file into the Project Files widget will open the entire project file (and prompt to save unsaved changes) (#2616)
  • Persist undo/redo history correctly across OpenShot sessions (#2474)
  • Fix audio waveform display when slicing clips or resizing/trimming clips
  • Color picker: Never use native dialog (#2425)
  • Adding Git Changelog screen (#2566)
  • Converting to new Settings class, instead of the old ENV VAR method (#2520)
  • Reverting Angular from 1.7.2 to 1.6.0 (for stability reasons) (#2479)
  • Updating GitHub Templates (for bug report, question, and feature request) (#2608)
  • Updating GitHub README: features list, translation urls, and badges (#2597)
  • Completed Arabic, Hindi, Chinese (Simplified and Traditional) translations (#2594)
  • Update messaging integration on build server (#2426)
  • Add __init__.py file for installed module (#2419)
  • launch.py: Path-detect via openshot_qt init (#2419)
  • Exit using sys.exit() (#2409)
  • preferences: Tweak item layout (#2401)
  • Widen export window (#2373)
  • Pass remaining command line args to Qt (#2355)
  • Copy (cleaned up) xdg icon to src/images (#2316)
  • Add strings to be translated and fix tuple error (#2275)
  • added browse button in file properties dialog, to allow relinking of individual media files (#2275)
  • fix for automatic relinking of missing media files during project open (#2275)
  • Add the same browse type for inkscape and blender field (#2255)
  • Remove CRLF line endings from chromebook preset (#2204)
  • Convert `language.py` line endings (#2204)
  • Missing files are now automatically deleted from the recent menu (#2202)
  • Append correct extension to snapshot frames (#2196)
  • Simplify version number and file name logic in build server (especially for releases) (#2136)
  • Update Contributors & Translations (#2679)
  • libopenshot
  • Bumping version to 0.2.3 (SO 17)
  • Integration of resvg SVG library (optional during build) (#185)
  • Improved Keyframe Performance (#197)
  • MP3 Special Handling & Missing Frame Refactor (#196)
  • Fix default sizes on readers without MAX_WIDTH and MAX_HEIGHT settings (#188)
  • Adding new settings class to be used for changing realtime settings used by libopenshot, such as scaling mode for preview vs final render, or hardware decode, etc... (#183)
  • Integrate Constant Rate Factor (CRF) for FFmpegWriter (#186)
  • Improving cache performance by preventing the cache from getting behind the currently displaying frame # (#179)
  • Set video bit rate to 0 if an invalid bit rate detected (which happens when using crf) (#191)
  • Invalid SetMaxSize Logic and Invalid CRF q settings in FFmpegWriter (#198)
  • Refactor FFmpegWriter Open() and PrepareStreams() methods, so that SetOption() can be called between them. (#193)
  • Some polishing for the cmake ReSVG discovery (#187)
  • Adding condition before calling av_frame_free (in AV_FREE_FRAME macro) (#184)
  • tests/CMakeLists: Use same dependencies as src/ (#163)
  • Remove Eclipse files and add to gitignore (#178)
  • Fixing Scale Mode (None) in previews (#182)
  • Exclude git tags from kicking off GitLab builds (for libopenshot)
  • Update readme to use markdown and update copyright to 2019 (#94)
  • Update README and INSTALL files (including build instructions) (#194)
  • Add git log file with commits up to the previous release (#192)
  • libopenshot-audio
  • Bumping version to 0.1.8 (SO remains 6)
  • Create README.md, INSTALL.md, INSTALL-WINDOWS.md, INSTALL-MAC.md, INSTALL-LINUX.md (#32)
  • Adding git log to build artifacts (since last release tag) (#31)
  • Exclude git tags from kicking off GitLab builds (for libopenshot-audio) (#26)
  • Tags : No tags



Changes for v2.4.2 - v2.4.3

  • openshot-qt:
  • Bumping version to 2.4.3 (libopenshot dependency to 0.2.2)
  • Animated Masks: New "reader" property type, initially used by the Mask effect to change the image/video used by transitions and the Mask effect
  • Disable OMP thread concurrency during Export, to make exports as safe as possible
  • Nudge clips when holding SHIFT + Left or Right arrow (Richard Alloway - N3WWN)
  • Add Save Current Frame button (Richard Alloway - N3WWN)
  • New translation & language infrastructure and logic (better logic for determining current language) (Frank Dana - ferdnyc)
  • Fixed split keep both sides (right side position was incorrect)
  • Application icon updates (Frank Dana - ferdnyc)
  • Zoom fixes (lots of issues relating to zooming fixed)
  • Undo/Redo fixes (fixing and preventing giant .osp project files)
  • New tutorial system, better child window management (Frank Dana - ferdnyc)
  • Travis CI Integration
  • Improve Title filename duplication naming/counting (DerGenaue)
  • Use track names in "Add To Timeline" window (Frank Dana - ferdnyc)
  • Improve waveform display rendering (DerGenaue)
  • Fix audio wave not rendered after completion (DylanC)
  • Add instagram and twitter presets (DylanC)
  • Add AppStream metadata to setup.py (Peter Eszlari)
  • Timeline JavaScript Bug Fixes (DylanC)
  • Timeline cleanup and performance, upgrade Angular.js (DylanC)
  • Removing libdrm.so.2 from AppImage
  • Add src/language path to Mac DMG builder (Frank Dana - ferdnyc)
  • Add language override on command line using --lang (Frank Dana - ferdnyc)
  • Add explanatory text for --list-lang (Frank Dana - ferdnyc)
  • Some fixes for the timeline debugger (Frank Dana - ferdnyc)
  • Update edit-clear icon in Humanity (Frank Dana - ferdnyc)
  • Correct variable name typo to initialize properly (DylanC)
  • Convert all nonessential logs to .debug() (Frank Dana - ferdnyc)
  • Remove unused effects filters (Frank Dana - ferdnyc)
  • Add "Ask a Question" template (Frank Dana - ferdnyc)
  • Preventing libopenshot version check on unittests
  • More framerates for YouTube HD and Vimeo HD presets (Frank Dana - ferdnyc)
  • Convert (most) files with DOS line-endings to Unix (Frank Dana - ferdnyc)
  • Remove debug.js from index.html (Frank Dana - ferdnyc)
  • Square the PNG icon file (Frank Dana - ferdnyc)
  • App metadata updates for easier packaging (Frank Dana - ferdnyc)
  • Move Slice All shortcuts to correct menu (Frank Dana - ferdnyc)
  • launch-linux.sh: Don't set QT_DEBUG_PLUGINS=1 (Frank Dana - ferdnyc)
  • Updating default project type to 720p 30 FPS, and sample rate 44100
  • Fix retention of export path (Richard Alloway - N3WWN)
  • Fixing GitLab to no longer run CI for tags, and fixing version # for daily and release builds
  • Add "release-candidate" to filename for daily RC builds, so they don't look so official on the website
  • Misc Typos and text fixes (luzpaz)
  • Updating contributors and supporters (Thank You!)
  • Updating translations
  • libopenshot-audio:
  • Bumping version to 0.1.7 (SO: still 6)
  • Travis CI integration
  • libopenshot:
  • Bumping version to 0.2.2 (SO: 16)
  • FFmpeg 3 & 4 support
  • Fixed crash with masks and transitions
  • Fixed many bugs around FPS and video length calculation (especially for MP3 and streaming WEBM formats)
  • Protecting samples_per_frame calculation to keep from crashing on undetected FPS
  • OpenMP schedule change (added stability)
  • Limiting threads for both FFmpeg and OpenMP (attempting to find a good balance of parallel performance, while not spawning too many threads). Sometimes more is not always better.
  • Travis CI integration
  • Fix install paths for headers and effects (Jeff Shillitto - jeffski)
  • Fix bug with FFmpeg > 3.2 flushing frames (Jeff Shillitto - jeffski)
  • Adding "reader" property for Mask effect, to allow the user to adjust the image or video used by the mask effect.
  • Fixing bitrate calculation (to be in bytes instead of bits)
  • Adding in FPS detection for files which don't have valid FPS. In those cases (streaming files for example), we iterate through all packets, and average the # of frames, duration, bit rate, etc... Not ideal, but a better fallback.



Changes for v2.4.1-14 - v2.4.2

  • libopenshot-audio 0.1.6 so:6
  • Fix under-linking (pthread and dl), fixes #3
  • Integration of GitLab build pipelines
  • libopenshot 0.2.0 so:15
  • Auto audio mixing strategy per clip (average, reduce, or none)
  • Adding new crop effect, which can also be animated for some very cool effects.
  • Adding new Color Shift effect, which can shift any color (RGBA) with infinite wrapping (and full supports animation).
  • Adding new Pixelate video effect, which pixelates a portion (or all) of a frame's image, and is fully animatable.
  • Adding new video effect: Bars, which allow for animating colored bars around your video, such as a letterbox effect.
  • Adding new wave video effect, which can be animated in a ton of ways to create lots of cool wave distortion effects.
  • Adding Hue video effect, to adjust the hue of a frame's image, which can also be animated with a keyframe
  • Adding new effect: Shift, an infinite pixel shifting effect which can be animated and wrap images in any direction.
  • Auto-Rotates any Clip with Reader metadata 'rotate' attribute.
  • Experimental codecs now supported in FFmpeg/LibAV
  • Audio popping during preview (due to resampling)
  • Fixing brightness and Mask effects to calculate factor with a float type, giving more fine control
  • Fix Blur.cpp by copying blur_ values back to so horizontal *andvertical blurs can be applied in one effect and blur accumulates with increased iterations
  • Update and apply frame mapper on any clip changes, to keep timeline offsets in sync (i.e. avoid audio popping due to slight misalignments of clips on the timeline).
  • Removing old frames from WorkingCache (when no longer needed). This helps prevent freezing looking for old frame data on certain videos.
  • Adding metadata from format, audio stream, and video streams to ReaderBase.info, which in some cases includes the 'rotate' metadata added by certain cameras, and audio metadata like title, album, artist, copyright, dates, etc...
  • Added in metadata encoding capabilities (writer.info.metadata["title"] = "My Title"). Only certain tag names are accepted (see FFmpeg for more on which tags are supported by which codecs).
  • Optimize and improve speed of Mask effect (used by transitions). This is way faster than before!
  • Fixing assignement and copy operators on Frame class (to prevent crashes for unintiailized image and audio pointers), and ensuring both copy and assignment operators work as expected.
  • Fixing the color property of Frames, which was being lost on some constructors.
  • Increase valid frame rates to 240 fps since many cameras now support this higher frame rate
  • Fixing regression on Clip constructor, and simplifying pointer initialization
  • Fixing a bug with Frame::AddImage (convertToFormat) not actually doing anything. It returns a new image, and does not convert the format in-place.
  • Preventing crash if Seek invoked before QtPlayer are initialized properly
  • FFMPEG 3.2 support for FFmpegWriter
  • FFMPEG 3.2 support for FFmpegReader
  • Fixing FFmpeg version breakage in FFmpegWriter
  • Increasing the default amount of cache in FFmpeg, based on the # of processors, to better support high framerate videos.
  • Changing some Seek values to be more accurate, and fixes a race condition with Timeline_Tests.cpp.
  • Changing some sleep() calls to usleep(), for more accuracy. This is a bit experimental, and hopefully will work on all OSes.
  • Do not clobber gainFactor when determining volume adjustments and add a TODO note about current_max_volume always being 0
  • Removing anchor from clip properties (since it is unused)
  • Adding "dbghelp" dependency for Windows builds (for crash handling support), and improved Windows build instructions using MSYS2.
  • Properly set test media files path, fixes #36
  • Fixing black frames at end of video clips, if audio stream longer than video stream, and end-of-stream is reached.
  • Integration of GitLab build pipelines
  • Faster Windows builds
  • Fixing audio unit tests
  • Avoid mixing audio for clips with no volume or disabled audio.
  • Updating cmake file for libopenshot-audio to search $ENV first, and then static folders
  • Add missing type cast
  • Spelling and typo fixes
  • openshot-qt 2.4.2
  • More detailed export dialog progress, including estimate time remaining, FPS, and more accurate percentage. Thanks Peter!
  • Defaulting to AAC audio codec
  • Improving zoom scale calculation, to use a custom bezier curve (zoom gets faster and faster the more you zoom out). 30 levels of precision between 1 second and 7200 seconds.
  • Auto-rotate for Readers with 'rotate' metadata. This requires a slightly newer version of FFmpeg, otherwise the 'rotate' tag is never found.
  • Adding new Crop video effect
  • Adding new Color Shift video effect (with temp icon)
  • Adding Pixelate video effect, which can animate a pixelated version of part (of all) of a video clip.
  • Adding new Bars video...



Changes for v2.3.4 - v2.4.0

  • openshot-qt (Video Editor)
  • Improving undo/redo support. Now the last X number of undo/redo actions are stored in the project file. The number can be adjusted in the prefences, under the auto-save tab. This also vastly improves the usefulness of the auto-save system, since it saves your undo/redo history as well.
  • Fixed Image Sequence exporting. Supports PNG, JPG, PPM, BMP and a few others. Also added 'Audio Only' and 'Video Only' export options.
  • Adding new Freeze and Freeze & Zoom presets, to quickly insert freezes into clips.
  • Removing 'show waveform' from separate audio menu, to increase speed of separating audio.
  • Protect file menu from invalid file_id.
  • Protect timeline dropEvent from empty item_id.
  • Cloaking timeline body until Angular loads fully (so we don't see the occasional pop-in debug layout).
  • Updating translations and supporters.
  • Bumping version to 2.4.0 (minimum libopenshot version 0.1.8).
  • libopenshot (Video Library)
  • Prevent crashes related to too many threads (on 24+ thread systems).
  • Migrating tr1 to std, adding C++11 support to build scripts, fixing crash in FFmpegReader (caused by shared_ptr, buffer, and last_video_frame corruption). Much improved stability with this change. Thanks to Craig and Peter for the help!
  • Fixing crash on Ubuntu build server.
  • Fixed a strange bug related to exporting image sequences. The filename property was not being set on the AVFormatContext. Also fixed a bug when exporting to JPEG image sequences related to max_b_frames and certain codecs.
  • Fixing issue with incorrect image size caches, which results in blurry/smudgy scaling on certain things.
  • Fix issue with loading time curves that are never processed (i.e. have no values)
  • Adding additional locks when adding/changing audio data. Reducing FrameMapper to a single frame at a time.
  • Fixing crash on Time keyframes where it would sometimes calculate an invalid frame number.
  • Fixing audio pops when stacking multiple clips with different offsets (pretty big issue for some people, just depending on your source framerates and position/start of clips).
  • Removing nested OMP processing from FrameMapper. Adding lock inside time mapping (to prevent crashes when speeding up/slowing down clips). Adding omp critial lock to Frame GetAudioChannelsCount() and GetAudioSamplesCount() methods.
  • Bumping version to 0.1.8 (SO version 13).



Changes for v2.3.2 - v2.3.3

  • I am proud to announce the release of OpenShot 2.3.3, which addresses many serious stability issues, and the launch of our amazing new website (www.openshot.org). It's been a busy month so far, and I'm super excited to roll out these improvements!
  • Improved Project Website (responsive, mobile-friendly, and fast)
  • Our new website has been in development for the past month (or so). It's built with Python/Django/PostgreSQL and runs on Amazon EC2. There are many custom features of our website that have accumulated over the years (PayPal integration, Bitcoin integration, Patreon integration, GitHub integration, donation back-end, Slack integration, openshot-qt exception reporting and version integration, contributor back-end, and more). Migrating all these features, and upgrading the UI took some time, but I'm very happy how it ended up.
  • Error Analytics
  • Over the past 2 weeks, I've done quite a bit of work aggregating up exception data for openshot-qt and libopenshot, and analyzing some key data points. I've targeted the top 25 crashes and errors, and version 2.3.3 should resolve them all! Below is an example of the analysis, which graphs the frequency of unhandled Python exceptions (including line number).
  • Version 2.3.3 Improvements
  • New release of openshot-qt! Bumping version to 2.3.3, and libopenshot depenency to 0.1.6
  • Adding CFBundlePackageType key to Info.plist, and symlinking a few files which I don't think are considered executables in the app bundle. A bit experimental, but trying to overcome an issue with Gatekeeper on OS X Sierra.
  • Fixed SpaceMovie 3D animated title alpha key frames, and adjusted the position of the main title to be better centered when it appears.
  • Fixing bug when selecting effect on a clip (where selection dropdown would not populate)
  • Fixed bug on certain systems when loading list of all supported languages.
  • Fixed backup recovery issue which would not refresh the timeline on load.
  • Fixed bug destroying the lock file (if another process already deleted the lock file).
  • Added C++ exception parsing from archived exception data.
  • Adding a script to parse and aggregate Python error logs for OpenShot
  • Another attempt to fix the race condition causing the "zipimport.ZipImportError: can't decompress data; zlib not available" when launching a frozen version of OpenShot.
  • Fixed a common error on the title editor (caused by a missing font-style).
  • Protecting query classes more, to prevent invalid clip/tran/effect ids from crashing
  • Removing NVidia driver from AppImage (build server)
  • Updated supporters and donors file
  • Updated translations and improved translation test script (which validates all string replacements are found in translations)
  • New release of libopenshot (0.1.6)
  • Fixing Timeline::SetJSON to use a lock, and reopen the reader if already open. This fixes an issue when trying to open another project while the current project is being accessed (i.e. during playback).
  • Adding additional lock on ClearAllCache method, to prevent crash
  • Fixing a data type issues with max()
  • Big improvement with handling invalid video and audio timestamps, defaulting to more sane values (when huge crazy timestamps are detected).
  • Fixing a bug when disabling video/audio tracks on FrameMappers.
  • Adding additional bail-out code when stuck searching for a video/audio packet that probably doesn't exist.
  • Added improved "checked frame" handling, and once 1 frame is detected as invalid, clean out any other invalid ones as well.



Changes for v2.3.1 - v2.3.2

  • Undo/Redo Crash
  • A very nasty bug related to deleting clips and then using undo to bring them back. The clips would appear to come back, but in reality, it was more like a zombie clip... just waiting to eat OpenShot's brains. Fixed.
  • Transform Crash
  • Apparently I'm not great at testing obvious things, like scaling a clip down to 0 pixels wide/tall. This resulted in a hard-crash. Fixed.
  • libopenshot Detection
  • One of the most common exceptions reported is related to an out-of-date libopenshot library. Sometimes, new methods are added to libopenshot, and if you only update the openshot-qt package, it's possible those new methods are not available. So, now openshot-qt checks the libopenshot version, and stops you before things get ugly. This will also help packagers test packages, and will quickly remind them to also update the libopenshot package.
  • Reduced File Size
  • Reduced source code file size, by further compressing images, removing unused translation resources, and a few other reductions. The result is smaller source code, smaller packages, and smaller installers.
  • Full list of changes:
  • Bumping version number, and updating minimum libopenshot version
  • Updating translations and supporters files
  • Prevent transform scale from dividing by zero
  • Fixing incorrect content-type on exception reporting
  • Fixed another bug when deleting, undoing, and then moving a clip. Similar to the previous bug fix... but now I think I got it fixed. Closes #590.
  • Fixing crash on undo/redo when deleting a clip... and other related crashes.
  • Adding in minimum libopenshot detection, since many linux distros only seem to be updating the PyQt packages, rather than libopenshot (This results in many crashes)
  • Fixing title on SpaceWars 3D title
  • Fixing bug when right clicking on a unselected timeline item, it does not fully select it
  • Attempting to fix a strange race condition when frozen with cx_Freeze, where some users get ZipImportErrors when calling loadUi(). This prevents that function from running at the exact same time, and hopefully will prevent the error.
  • Fixing small bug when trying to lock tracks on an older project file
  • Compressing transitions images more to reduce installer size
  • Removing unused translation files at run-time. Original PO and MO files can be found on LaunchPad: https://translations.launchpad.net/openshot/2.0. These bloat the installers for no real reason.
  • Changing name of toolBar to "Toolbar".
  • Adding a missing documentation image.
  • Updating translation template, and tweaking style of "Update Available" button which only appears when an update is available.
  • Capture multi-digit version numbers - merging



Changes for v2.2.0 - v2.3.0

  • Transform Tool
  • We have added a new transform tool, which allows real-time transformations in the video preview window. Right click on any clip, and choose “Transform” to enable the tool. Using your mouse, move and scale the clip as needed, all while enjoying a real-time preview. Animating the location and scale of clips has never been easier!
  • Zooming Improvements
  • Zooming in and out of the timeline, in order to increase precision of your edits, has been greatly improved. When zooming the timeline, it now centers on your mouse position, similar to image editing applications. The zoom scale is also now saved in each project file, which saves some time when jumping back into a project. When your mouse is over the timeline, hold CTRL+mouse scroll wheel to zoom in and out.
  • Razor Tool
  • Back by popular demand, the razor tool from OpenShot 1.4.3 has returned from the dead. Click on the Razor toolbar button to switch to razor mode. Now click on any clip or transition to quickly cut them (holding CTRL and SHIFT modify the razor to only keep the left or right side). Alternatively, you can cut a clip at the Playhead position by right clicking and choosing “Slice”, by using CTRL+K, or by grabbing the edge of the clip and dragging.
  • Improved Title Editors
  • Many improvements have been made to the Title Editor and Animated Title Editor. Both editors now display a grid of thumbnails, to make finding the right title easier. Save dialogs are no longer used, and instead title files are saved directly into your project folder. New “Edit Title” and “Duplicate Title” menus have been added, to assist in quickly making changes to titles.
  • New Preview Window
  • Previewing files now has its own dedicated video player, which allows for multiple video preview windows at the same time. Also, audio files render a waveform by default. The speed of previewing files is also improved, using the improvements mentioned below.
  • Huge Performance Improvements for Real-time Previews
  • Performance improvements are always a high priority, and we’ve made some really great improvements to the speed of real-time previews. We’ve also fixed some bugs related to freezes and hangs, caching improvements, frame detection, and better logic to determine the max size of our preview window, so we can optimize by not rendering images and frames larger than the preview window. The end result is the best real-time preview performance yet for OpenShot.
  • New Documentation
  • I have finally gotten around to publishing a User Guide for OpenShot 2.x. I am using the Sphinx documentation system (which is really great), and I think this will be very useful for new users, and any user who wants to get the most out of OpenShot. It is currently only available in English, but I will soon start the translation process for it.
  • Audio Improvements
  • Fixes for audio sample distribution, caching, off by 1 errors, and various frame boundary improvements (Thank you Nelson H). Also, improvements to audio device management, which is how OpenShot communicates with the audio system on each OS.
  • Improved Export Dialog
  • Export dialog has been improved to re-load the project, clear cache, and export without requiring any ties to the real-time preview system. This fixes many freezes and hangs when attempting to export, and is a much more stable approach. Also, on Linux, export progress is now displayed on the launcher icon (in Unity and other launchers).
  • New Windows Build Server
  • As you might have heard, my Windows development system (and build server) died (again)... stopping all Windows builds for a few weeks. Hard-drive and motherboard issues (and possibly other problems too). A HUGE thanks to John Fields and his band of merry Open Source Saturday folks. They donated a wonderfully nice computer (i7, 16GB RAM), and their only request was that it be called StarLord! Done! StarLord is up and running, and is working beautifully!
  • GitHub Bug Management
  • With the help of a few volunteers (Ankit, Justin, Jt, and others), we’ve been able to reduce our GitHub bug count from over 380+ bugs to less than 200. Many of those 200 should be resolved with version 2.3, so I still have some work to do in this area, but making great progress! I’ve also added some GitHub templates when filing new bugs, to help increase the quality of new bug reports, and guide users on generating and attaching log files.
  • Translations
  • OpenShot 2.3 is fully translated in 11 languages, and partially translated in more than 60 others. If you notice untranslated text in your native language, please feel free to submit your own translations on LaunchPad.
  • 100% translated in the following languages:
  • Spanish
  • French
  • Italian
  • Portuguese
  • Brazilian Portuguese
  • Greek
  • Ukrainian
  • Catalan
  • Malay
  • Icelandic
  • English (United Kingdom)
  • Patreon & PayPal Donations
  • If you use OpenShot, support OpenShot, or just want to ensure its continued development, please consider a small donation, or help us spread the word. It is expensive and time consuming to build and distribute OpenShot, and any contribution would be hugely appreciated!
  • We accept PayPal, Bitcoin, and Patreon donations, and we’ll list your name in the credits of OpenShot (which is pretty awesome)!
  • Additional Features
  • Added new welcome tutorial message, which contains a checkbox for disabling anonymous error and metrics reporting. That can also be adjusted in the Preferences, but it has been often requested to allow new users to opt-out.
  • All child windows now center on parent window
  • Ability to easily display frame numbers on frames
  • Improved accuracy when calculating frame numbers
  • Improvements to frame accuracy, especially when zoomed in at max zoom
  • Dramatically increased speed of selecting and unselecting large numbers of clips/transitions.
  • Refactor loading properties for selected items, to improve speed.
  • Refactoring and improving preview playback of files, and preview playback during resize/trim (which now maintains aspect ratio correctly).
  • Improving long filename support in file tree/list views, and improving thumbnail/grid view on all listviews (effects, transitions, titles, animated titles, etc...)
  • Updating translation files (with a few minor corrections to string formatting arguments).
  • Improving test_translations.py script, which helps me detect problems with missing formatting args.
  • Fixed an issue preventing the track names from being translated on launch.
  • Adding "width x height" to list of profiles on Export and Profiles screens, to make the output resolution more clear
  • Improved logic for "Next Marker" and "Previous Marker" buttons to include the selected items (start and end positions), to allow quickly jumping to the beginning or end of a selected clip.
  • Prompting user to find missing files when opening a project, and updating translation template.
  • Prompt user to save before creating or opening new project file (if needed)
  • Make effects container on a clip visible on hover (regardless of how small the clip is).
  • Tweak tooltips of clip title so they don't cover up the menu button and effects.
  • Making settings save to disk as they are changed in preferences.
  • Setting focus to Project Files on launch, so the properties filter doesn't auto get tab focus (preventing certain keyboard shortcuts).
  • Switching snapping logic to compare pixels (not time), so it's still useful at close and far zoom levels. Reducing snapping to 10 pixels. Fixing bug when updating new properties for a clip.
  • Bug Fixes
  • Fixed regression with selection dropdown
  • Fixed crash when pasting keyframes onto a clip/transition
  • Fixing incorrect placement of a selection handle
  • Fixed a bug when caching a mask size (a regression from some of our speed improvements)
  • Fixed small bug with Next Marker and Previous Marker buttons (not handling position 0 correctly).
  • Fixed bug in transform callback, where transformation was not being disabled when selecting a different clip.
  • Adding a lock when updating the JSON of a Timeline (or remapping it), so nobody can request frames while everything is changing. Seems much more stable during live preview.
  • Fixing invalid cache after editing effect in a clip, and frame accuracy (converting timestamps into frame numbers). This makes frame by frame editing much better.
  • Fixing broken gravity for GRAVITY_BOTTOM_LEFT
  • Fixed bug with Build server version detection regex (when releasing new versions).
  • Fixed a big bug when pasting deleted clips and transitions.
  • Refactoring some tracking code on initial install, and saving settings after launch (since some settings are updated on launch)
  • Always settings unique id when sending metrics, which is required or analytics ignores it
  • Fixing a crash during initialization of the main window, and a crash during application exit, where threads were not being terminated correctly or safely.
  • Fixed a crash when closing the Split Clip dialog.
  • Fix align_x bug in newer Blender versions (Thanks mixedbredie)
  • Updating Blender compatibility to 2.78, since the API has changed a bit. Also fixing the regex for detecting preview images from Blender, since the output from Blender is now a bit different.
  • Refactoring load project flow to take advantage of the new locks in libopenshot (which allow for quicker updates to the live preview after a change is made).
  • Fixed a regression detecting missing files that contain expressions (like blender animations).



Changes for v2.1.0 - v2.2.0

  • Performance / Caching
  • Over the past few months, improvements to performance have been my top priority. In some cases, performance is improved more than 10x compared to OpenShot 2.1. Adding huge images to your timeline is now fully optimized, and won’t slow you down. Editing HD videos (5K, 4K, 2.5K, and 1080p) is vastly improved. A new caching engine was built from the ground up, and supports both memory and disk back-ends, depending on the user’s needs. This can be configured in the Preferences, under “Cache”. Also, opening huge projects (with hundreds of files / clips) has been optimized and is up to 10x faster.
  • Improved Stability
  • Many critical bugs have been fixed related to seeking, missing frame detection, and AVPacket scope, which results in a much more stable engine, especially on slower systems. Also, compatibility has been improved for Linux AppImage and OS X (10.9+) App Bundles.
  • Keyframe Enhancements
  • Keyframes are used in the animation system in OpenShot, and have received some major upgrades. Support for CSS syntax (quadratic bezier curves) now allows a %-based approach to setting the curve handles. This is very useful, and better than the previously hard-coded values. Also, 28 curve presets have been added for common things like ease-in/out, bounce, etc… Many other improvements have been made to Keyframes, such as better undo/redo support when dragging property values (in the property editor), rendering color keyframes on the timeline, and improved frame detection when using the property editor (i.e. adding a keyframe for the currently selected frame).
  • Error Handling / Reporting
  • Our library (libopenshot) and Python UI (openshot-qt) have improved error handling, and can now detect stack-traces for crashes and exceptions (on Linux, Mac, and Windows). Not only can it pull out the stack-trace, but it can send that anonymously to the OpenShot website back-end, so I can quickly identify where crashes are happening and more quickly fix them. In other words, OpenShot 2.2 now has real-time error reporting, which I’m really excited about. This can be disabled in the preferences, along with metric reporting. It also contains no personal information, just a basic stack trace of what function crashed.



<<Back to software description