Commit Graph

20 Commits

Author SHA1 Message Date
Jonathan Thomas
f12ffe692b 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! 2017-08-20 17:37:39 -05:00
Jonathan Thomas
7f347eb1ca Added SetMaxSize for image optimizations in QImageReader and FFmpegReader, which lets the timeline pass down the max size to all clips and readers, so they can optionally optimize the size of images (especially useful for optimizing preview performance). Removed convoluted image scaling code in FFmpegReader, and replaced with simpler version. Also, fixed a few regressions from the new Caching code, primarily a crash when reaching the end of the last clip on the timeline. 2016-09-14 04:11:12 -05:00
Jonathan Thomas
f00ea5c4e2 Reverting logging code in unittests 2016-09-08 22:26:14 -05:00
Jonathan Thomas
badb1450d2 Adding additional logging to unittests, to help find an issue on certain systems 2016-09-08 02:33:24 -05:00
Jonathan Thomas
3731b22317 Added a new effect: Blur. It has the ability to box blur, horizontal and vertical blur, and gaussian blur. All of these settings are keyframeable and can be animated. 2015-11-09 00:12:21 -06:00
Jonathan Thomas
21c9ab5184 Fixed small issue with unit test 2015-09-29 21:36:10 -05:00
Jonathan Thomas
ce47a5b667 Fixing a small regression with the new unit test Tests.h header. 2015-09-28 22:17:29 -05:00
Jonathan Thomas
66c5ced902 Windows now passes most unit tests. Added header macro to assist on passing correct test media paths to unit tests. Also added a new info parameter has_single_image, which is used to optomize the frame mapper class for images with long durations. 2015-09-28 22:05:50 -05:00
Jonathan Thomas
b612f3339d Replaced ImagMagick with QImage on almost all key methods and classes. Reprogrammed all effects and the entire rendering pipeline to use QImage and QTransforms, primarily for increases in speed and stability. libopenshot is more than 10X faster on many of the most CPU heavy tasks. This was a huge change, and still has a few minor issues relating to BlackMagick Decklink and Text rendering.... which should be resolved very soon.
Also, much work has been done on memory management / leak detection, and optimizations with multi-threading... including a new thread cacher class used by the video playback (which is smoother than ever).
2015-06-01 00:20:14 -07:00
Jonathan Thomas
86561aed22 Fixed a huge bug when closing a reader and re-opening it. Added some new unit tests to test for that bug, as well as check the ordering of layers and effects. Improved opening and closing of openshot::Clip->Reader() to better support multiple threads. 2015-02-19 01:03:22 -06:00
Jonathan Thomas
bb9849c60a Fixed some serious issues with the Timeline class, improved the Timeline unit tests to cover more of the code, and fixed a bug with the Clip class... which removed the Reader during closing. 2015-02-07 18:06:11 -06:00
Jonathan Thomas
e135eb5738 Changed license to LGPLv3 for all libopenshot code. 2014-07-11 16:52:14 -05:00
Jonathan Thomas
698b07e9aa Added unittest for Timeline with 2 layers including alpha channel. 2014-04-03 22:47:21 -05:00
Jonathan Thomas
5010f6252a Replaced all copyright and licensing to reflect AGPLv3 license. Also, added a bad ass version header, which is now integrated into CMake as well. A single place to indicate version and ABI/API compatibility. 2014-03-29 18:49:22 -05:00
Jonathan Thomas
f25f342825 Completed timeline class Json methods, with all child properties... and refactored many unneeded properties away. 2014-01-05 22:37:11 -06:00
Jonathan Thomas
97a4f903c2 Added copyright and licensing to the rest of the source code in libopenshot, including the CMake build scripts, the SWIG configuration file, and even updated copyright in the README files. All files are now correctly attributed and protected now. 2013-09-12 23:41:49 -05:00
Jonathan Thomas
42d7565ba1 Integrated more timeline code, such as compositing layers... but they don't work yet 2012-11-07 17:45:13 -06:00
Jonathan Thomas
60e645da61 Added a FrameRate() method to the timeline, to get or set the fps. Also, added a unit test for that, and refactored some header files to be alphabetical. 2012-10-10 01:07:47 -05:00
Jonathan Thomas
6d790d2670 Overloaded Clip comparison operators, to use the Position() of clips for sorthing routines. Also, added the AddClip method, to add clips to a timeline (and sort them by position). 2012-10-05 17:05:33 -05:00
Jonathan Thomas
a417fef1fd Made the Timeline class inherit from FileReaderBase, which means the Timeline is really just a fancy ready class now. Also, added new unit tests for the Clip and Timeline classes. 2012-10-05 01:58:27 -05:00