,

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.


Join the Team

If you love OpenShot and want to help make it the best free video editor in the world, I am still looking for help to manage the ever growing list of GitHub issues, plan future releases, track down bugs, and think up great ideas. You don't have to be a programmer or hacker, just someone with a cheerful outlook, and willingness to help out. =) Please email me if you are interested in joining the team.

,

Version 2.3.2 has been released this evening, and it addresses a few big issues.

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

,


I am proud to announce the newest release of OpenShot Video Editor, version 2.3! This is one of the biggest updates ever to OpenShot, and is filled with new features, performance improvements, and tons of bug fixes! 

Download OpenShot 2.3

 
Take a quick look at our release video below, which highlights some of our biggest new features.

    Also, check out this awesome 2D animation created by my daughter with OpenShot 2.3 (my kids are the best testers and are experts at breaking OpenShot)!



    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).
    • Improve speed on Transform method, since it gets called quite often during project load (due to clearing selected clips and transitions)
    • Fixing regression with slicing clips (and razor tool).
    • Fixing regression on reading large log files (causing slow launch)
    • Fixing regression on passing keypresses to timeline. CTRL and SHIFT keys have special uses on the timeline.
    • Improve cutting/splitting dialog to use Timeline() object, to support all possible media types (images, videos, etc...) and maintain correct aspect ratio.
    • Removing unused files and unneeded translatable strings. Also, adding title names to translation template (forgot about those).
    • Removing old effect meta data and old effect icons. New effects will have different translatable metadata.
    • Removing uploads folder from mac build script
    • Removing app.processEvents from transitions and effects models, due to crashes on OS X. Also, it doesn't make much of a difference anymore.
    • Fixing weird bug preventing backup.osp from restoring correctly
    • Fixing bug with duplicate title when running in an non-English language
    • Improving logic to process files when importing (some were incorrectly marked as invalid)
    • Fixing bug when opening legacy projects (1.4.3) that contain effects or markers

    ,

    Happy Holidays to all the OpenShot supporters around the world! I am very proud to announce the latest and greatest release of OpenShot (version 2.2) has just arrived, and is ready to edit all your holiday videos! It’s faster, more stable, and better than ever!

    Downloads for version 2.2



    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.

    New Title Templates

    Many Kickstarter backers requested new title templates to be added to OpenShot. I am proud to announce that all new titles are now included in OpenShot 2.2. We have some really nice additions, such as Film Ratings, TV Ratings (small corner rating), and more!


    Infrastructure Improvements

    One of the most challenging aspects of running an open-source project such as OpenShot, is the large amounts of data (downloads, installers, etc…). We had been using Amazon S3 previously, and our monthly costs skyrocketed to over $1000 just for data transfer. So, we’ve moved our installers into GitHub (which ironically happens to also be powered by S3), and our installer-related data transfer costs have gone to $0! So, a huge thanks to GitHub for being awesome!

    We have also integrated torrents into our build server, and all major releases now include torrents (on our download page), to help further distribute our data transfer.

     
    Misc / Bug Fixes

    Many other bugs have been fixed, and lots of small improvements that defy categorization are listed below.
    • Selection handles (in progress)
    • Ability to disable unit tests (useful for distros that have a broken unittest++ library)
    • Broken Ubuntu 16.10 PPA fixed
    • Fixed bug when opening .OSP projects via command line
    • Disabled SSL validation (not used anyway)
    • Fixed bug when opening legacy 1.4.x project files that contain UTF-8 encoded characters
    • Preferences now save settings on close of dialog (and persist even if a crash follows)
    • Added FileVersion and custom icon to Windows installer (more polished)
    • Ability to drop a file directly on the timeline (without dropping it in your Project Files first)
    • Fixed bug where the tutorial does not find the correct widget
    • Began work on a new help manual using sphinx (not quite ready yet)
    • New 2.5k and 4k profiles added
    • Fixed margins on OS X and Windows around QDockWidgets
    • Fixed bug when switching between Thumbnail and Detail views
    • Alpha backgrounds have been fixed on all Blender animated titles
    • Recently opened menu logic has been fixed
    • Translations updated for 70+ languages

     
    Kickstarter Campaign

    Thank you again to each and every Kickstarter backer and donor (PayPal and Bitcoin) for supporting OpenShot in the transition from Linux video editor, to multi-platform video editor! Things have taken way longer than I even imagined, but we’ve also accomplished something that is exceedingly rare: a successful Kickstarter and a free, open-source, cross-platform video editor!

    Over the course of this campaign, I’ve received a ton of feedback, and based on that, I’ve included 9 additional major features that were never originally planned (i.e. additional stretch goals). A few of the original stretch goals turned out to be less useful and less demanded than I thought, and so I’m bumping those until I see a bigger demand.


    Patreon and the Future

    Although this campaign has been successfully completed, OpenShot development marches on, and I will continue to post periodic updates on Kickstarter, especially when new features and new versions are released. If you would like to continue supporting OpenShot, we would be honored and humbled for you to stop by our Patreon page and help us fund the future of OpenShot!

    If your support stops here, I just want to thank you again from the bottom of my heart. I have learned so much in the past couple of years, and worked so hard to bring OpenShot 2.x to Windows, Mac, and Linux. And this really is just the beginning of something much bigger than me, and you helped make that happen. Thank you and Happy Holidays!

    ,

    If you speak a non-English native language, and would like to have your name appear in the credits, please help us ensure that OpenShot is fully translated in your language. All you need is a web browser and a bit of free time: Translate OpenShot. Thanks in advance for your help!

    NOTE: Please do not use an automated translation service (such as Google Translate)

    Subscribe to: Posts (Atom)