Commit Graph

332 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
b094ac8469 Fixing issue with incorrect image size caches, which results in blurry/smudgy scaling on certain things. 2017-07-27 02:25:20 -05:00
Jonathan Thomas
c30dbb90d8 Adding additional locks when adding/changing audio data. Reducing FrameMapper to a single frame at a time (increase seek speed and decrease crashes). Fixing crash on Time keyframes where it would sometimes calculate an invalid frame number. 2017-07-19 16:05:07 -05:00
Jonathan Thomas
078c3f74dd Bumping release to 0.1.7 (so version 12) 2017-05-31 23:39:13 -05:00
Jonathan Thomas
8f236200cc Fixing another small issue when changing profiles 2017-05-26 01:08:20 -05:00
Jonathan Thomas
b36d8540fa New release! Bumping version to 0.1.6 2017-05-18 17:31:38 -05:00
Jonathan Thomas
efecd2b8d6 Fixing unicode path issues when loading a Profile() class. Broke when using unicode home directory on Windows. 2017-05-16 17:07:06 -05:00
Jonathan Thomas
7b1ff78d2d Bumping version to 0.1.5 (SO renames unchanged at 11). 2017-05-09 23:52:56 -05:00
Jonathan Thomas
ddae58f18c Bumping version to 0.1.4 (SO 11). 2017-03-30 16:15:52 -05:00
Jonathan Thomas
b3ca56b5ab Another attempted fix for audio device management. Moving CloseAudioDevice() call to only invoke when quiting OpenShot, and only initializing the JUCE audio manager 1 time. This fixes a audio freeze in Windows when the preview window launches. 2017-03-26 23:51:03 -07:00
Jonathan Thomas
6fe901f359 Refactoring closing of audio devices 2017-03-21 14:38:42 -05:00
Jonathan Thomas
3193ee9701 Wrapping AudioDeviceManager in singleton wrapper, to ensure only a single instance can be created. This solves lots of weird issues with the preview dialog. 2017-03-21 10:56:19 -05:00
Jonathan Thomas
97ec6298ff Adding frame number display options to a clip, which can be super useful when debugging issues. Options include: None, Clip, Timeline, or Both. Also improving missing frame detection, to have less false positives (i.e. flickering 1st frame) 2017-03-15 02:06:53 -05:00
Jonathan Thomas
ec65ca39b3 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. 2017-03-10 00:51:08 -06:00
Jonathan Thomas
dc25576fab Removing transform handles, since I will instead implement that in Python rather this library. Also, refactoring a bit of the clip transforms, to keep the rotation center correct. 2017-02-04 22:01:06 -06:00
Jonathan Thomas
85ac4bf6d2 Updating references to frame number / position to long int, there were still quite a few old "int" declarations, which limits the length of frame number. Also, updated precision of KeyFrames to use double (instead of float) for higher precision, which fixed lots of issues with very long videos (since our FrameMapper used a KeyFrame object to create a map to new frames) 2017-01-24 18:39:17 -06:00
Nelson Ho
c9b74ec96d Added fixes for audio sample distribution to clean up missing or extra audio samples that were at frame boundaries 2017-01-06 20:48:47 -05:00
Jonathan Thomas
46c25dc3ec Fixing version: 0.1.3 (so 10) - whoops 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
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
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
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