Version 1.4, Sweeties, and the Future!
It's been 3 months since my last blog post, and I have so much to say. I have been working harder than ever before on OpenShot, and regret that I have not had more time for writing blog entries. I have new details on our next release, version 1.4, a request for translations, a GKT3 update, details on a new Daily PPA, enhancements to www.openshot.org website, an announcement about a new OpenShot video editing library, and more! Let's just call this... an information explosion for OpenShot fans. =)
For the past 7 months, we have been working very hard, across many different branches of code, with many significant contributors helping, to bring you version 1.4.0. This version is in the final stages of testing, and will be released by the end of September, 2011. A few of the big features include:
- Timeline improvements (middle mouse dragging on the canvas)
- More stable video & audio effects engine
- Powerful color correction and adjustments
- Many new & exciting video & audio effects
- New 3D animations
- New transitions
- Many enhancements to the project files tree
- Improved internationalization & translations
- TONS of bug fixes and speed improvements!
- Works best with MLT 0.7.4+, but is still compatible with older versions
Demo of Timeline Improvements
The scroll wheel on your mouse is useful for moving the timeline up and down, but not so useful at moving the timeline side to side. In fact, an average video timeline is much wider than it is tall, so we have added a new method for moving the timeline left to right, by clicking and dragging your middle mouse button on the timeline. This is a common feature in most graphics applications (such as Gimp or Inkscape). In OpenShot 1.4, moving the timeline has never been faster or easier! Watch the video for a demonstration:
If you speak a non-English native language, we need your help translating OpenShot. It's web-based, easy to do, and you get your name in the credits of OpenShot! So, please help us, even if you only have time to translate a single word or phrase. To begin, log in to LaunchPad, and visit our Translations page.
One of our top contributors, Maël Lavault, has been working hard on adapting OpenShot to GTK3. Most of the work is already done, and we just need lots of testing before we merge this branch into our trunk. This will most likely be the next release of OpenShot, after 1.4. I will post details on how to test this branch soon, so stay tuned.
Daily PPA (for testers)
We now have a daily PPA, which always has our most recent source code and our most recent Debian packaging scripts: OpenShot Daily - Highly Unstable, Perfect for Testers. As you can see by the name, I really don't want normal users to install OpenShot using this PPA. This PPA is only stable at the point we release a new version of OpenShot. During active development, this PPA would be a very bad idea. =)
Lots of new content, streamlined menu, enhanced footer, dynamic content on home page, updated pictures, and many new features have been added to the OpenShot.org website. A new Donation system has been added, which was created using Python, Django, and PayPal. It's much slicker than Pledgie, and now supports both 1 time donations of any amount, as well as monthly subscriptions. The following new pages were added to the site:
Recipient of the August 2011 DistroWatch.com Donation
Each month, DistroWatch.com chooses an open-source project, nominated by their users, to receive a cash donation. OpenShot has been lucky enough to receive this donation two times in 2011, once in February and again in August! DistroWatch.com has given over $29,000 to open-source projects since the beginning of this program in 2004. I am proud just to be nominated, much less actually receive the donation. So, thank you very much DistroWatch.com!
Our Picks > Ubuntu's Sweetest Applications
When you install Ubuntu 11.10 this October, you might notice that OpenShot is now a featured application! When you launch the software center, and click on the "Our Picks > Ubuntu's sweetest applications" banner, OpenShot is now listed with about 20 other applications. We are excited to be included in this category, and look forward to new users discovering OpenShot!
Featured Application on LaunchPad
OpenShot has been using LaunchPad.net for code hosting, bug tracking, questions & answers, mailing lists, translations, and release management since we began the project. Basically, our entire project runs through LaunchPad. I'm proud to announce that OpenShot is now a featured application on the home page of LaunchPad, along side some great projects: MySQL, Inkscape, Ubuntu, OpenStack, and more. Of course, we are very honored to be a featured application, and to showcase how LaunchPad can help facilitate open-source projects, such as ours.
OpenShot Video Library (C++)
Let me preface this by saying what a pleasure the MLT video editing library has been over the past 3 years. It has powered most of the features in OpenShot, and has been a cornerstone of our project. I have much respect for Dan Dennedy and the other MLT developers. However, in order for OpenShot to reach my ultimate vision, a decision would have to be made: should we continue to use MLT and contribute the features we needed? Evaluate other libraries? Or build our own library? I spent a long time exploring each of these options, and forming my plans.
My ultimate Vision: A video editing library that is a cross-platform, object-oriented, multi-threaded, frame accurate, with a powerful key-frame animation system, unit tests, Python support for OpenShot, and has a ridiculously simple and stable API. The decision: OpenShot needed to have it's own, bad ass, video editing library. Something that would help us achieve our goals very rapidly, and raise the bar for video editing on Linux.
So, for the past 8 months, I've been working... harder than ever before, to create the backbone of this new library, and establish a strong, stable code-base to build on. The library is written in C++, with all original hand-crafted code, and is fully cross-platform, building on Windows, Linux, and Mac... although Linux is my primary target. It is licensed GPL version 3, and is fully open-source. So far, here is what the library does:
- C++, object-oriented design
- Cross-platform build system (CMake)
- Multi-threaded, dynamically scales to # of processors (OpenMP)
- Video, Audio, and Image Encoding / Decoding (FFmpeg)
- Frame accurate seeking
- Unlimited curve-based key-frame system (Bézier, Linear, and Constant)
- Time Remapping (Curve-based speed and direction of video)
- Powerful image manipulation and compositing (ImageMagick++)
- Audio mixing, filters, waveform generation (Juce)
- Python support, including exception handling from C++
- Simple & elegant API (from C++ and Python)
- Capability to support different encoding / decoding back-ends (Currently only FFmpeg is supported)
- 150+ unit tests already (UnitTest++)
- Documentation for all public API classes / methods (Doxygen)
- Source code and details will be released soon on LaunchPad
So, what does all this mean? The outcome of this library will be increased competition for other video editing libraries, increased choice for application developers needing video editing capabilities, and ultimately... increased choice for end-users. Being cross-platform, and having a simple API, I hope this increases the number of contributors, and results in more features, more stability, and of course, more users. This is not open-core, and it's not crowd-funded, and it won't live or die based on some corporation's interests... it's open-source, by the community, for the community!
Once version 1.4 is released, we will likely follow that up quickly with a GTK3 version of OpenShot, and then probably 1 or 2 more releases (still using MLT) into next year. Sometime next year, we'll branch OpenShot, and start integrating our new video editing library into this new experimental branch, for testers and developers to work with. What does the future hold for OpenShot and our new library? I'm not sure, but I know it's going to be an exciting journey!