596 Commits

Author SHA1 Message Date
Jonathan Thomas
46c25dc3ec Fixing version: 0.1.3 (so 10) - whoops v0.1.3 2016-12-20 16:58:45 -06:00
Jonathan Thomas
70d61bb9ed Bumping version to 0.2.2 (so 10) 2016-12-20 16:56:38 -06:00
Jonathan Thomas
066d4818a3 Only apply effects for valid frame objects 2016-12-15 03:18:26 -06:00
Jonathan Thomas
ff77af11bb -DDISABLE_TESTS=1 now disables the entire "make test" target, and does not require unittest++ to be a build dependency 2016-12-13 17:17:21 -06:00
Jonathan Thomas
b058251cc4 Large refactor of detecting missing frames, to make it more accurate and dramatically improve performance for many videos. 2016-12-07 01:06:16 -06:00
Jonathan Thomas
c90ddfd484 Ensure Seek() waits for any outstanding video/audio frames to be processed in other threads before attempting a seek (and potentially crashing) 2016-11-23 01:50:03 -06:00
Jonathan Thomas
7be1b8ca4c Removing unneeded std::map which has holding all AVPackets, which was causing a memory leak and crashes. 2016-11-14 22:37:44 -06:00
Jonathan Thomas
d79994a780 New cross platform exception handler for libopenshot! Logs basic stacktrace on segmentation fault. This will be a huge help in finding bugs and crashes. 2016-11-03 02:19:48 -05:00
Jonathan Thomas
559d6a0545 Huge refactor of keyframe point handles (bezier quadratic curves) to use CSS-style syntax. Basically, the left and right handles of a point now use percentages, such as 0.0, 1.0, 0.5, 1.0 (between 0 and 1), and become real coordinates based on the value differences between points (in real time). Also simplified the JSON property creation. Also, many unit tests have been updated, because they were actually generating the incorrect values from before... although only slightly in most cases. Now they have correct values from the default bezier handles. 2016-10-19 02:19:07 -05:00
Jonathan Thomas
d2b3651d87 Fixing crash when FrameMapper sometimes returns a blank Frame objects. Not sure why that is possible, but now it fails gracefully. Also, extending the cache clearing code on timeline +/- 1 more frame, to be sure we clear frames that have changed. 2016-09-19 22:27:36 -05:00
Jonathan Thomas
1743558f99 Improved image caching logic, to better estimate max image sizes possible, based on clip scale and keyframe settings... so we are always dealing with the smallest possible frame sizes for performance (without losing quality) 2016-09-17 17:14:27 -05:00
Jonathan Thomas
183b0714e2 Added a new optimized constructor to some readers (FFmpegReader, QtImageReader, ImageReader) to not Open() in the constructor, which dramatically speeds up creating hundreds of Readers (i.e. when opening a project). This is really only useful when inflating the reader with Json right after you instantiate it... 2016-09-16 17:43:26 -05:00
Jonathan Thomas
33bba65cfd Adding transform selection handles to a clip, which doesn't have much of a purpose yet, but it renders the rectangle handles for a clip (will soon be tied into the UI). Finally implemented shearing as a basic clip transform, which can be keyframed and animated. Refactored the timeline code where we do matrix transformations (QTransform), to simplify it. 2016-09-16 00:12:17 -05:00
Jonathan Thomas
2b5db8dc5c Fixing regression from new caching system, to ignore removing frames from certain JSON changes, for example, deletions (i.e. removing a clip/transition). 2016-09-15 17:43:46 -05:00
Jonathan Thomas
982faba190 Fixing DiskCache unittest, and adding some better clean-up code to remove the cache folder after running unittests. 2016-09-15 01:21:15 -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
6cc7fcfd99 Merge branch 'bzr/master' 2016-09-08 22:55:27 -05:00
Jonathan Thomas
43d561754f Reverting to previous state from github... fixing to merge them 2016-09-08 22:33:09 -05:00
Jonathan Thomas
f00ea5c4e2 Reverting logging code in unittests 2016-09-08 22:26:14 -05:00
Jonathan Thomas
a4340b8b0a Reverting and fixing a serious stack smashing error, caused by having a Json::Value in the header file. 2016-09-08 22:18:40 -05:00
Jonathan Thomas
8d8c297ac9 Think I found the bug, replacing Json::Value on the stack with a string 2016-09-08 18:44:12 -05:00
Jonathan Thomas
76afb58cc1 Removing Json cache variable, trying to detect crash 2016-09-08 18:24:18 -05:00
Jonathan Thomas
ad9de6d2ca More changes looking for bug 2016-09-08 18:06:11 -05:00
Jonathan Thomas
f5b7fa6241 Removing some of the JSON related cached functions, still hunting for a build server bug 2016-09-08 17:37:06 -05:00
Jonathan Thomas
19db239537 More changes looking for build server breakage 2016-09-08 17:03:42 -05:00