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 |
|
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
|
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
|
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
|
c53c9364f3
|
Added new CacheDisk class, which caches frames to the hard drive, dramatically speeding up preview speeds, at the expense of IO operations. New unittests for caching framework. Fixed a few bugs with Frame constructor, which was causing invalid # width & height. Integrated JSON into the cache framework, to quickly share the state of the cache (including ranges of cached frame numbers). Fixed a bug where some Timeline frames could have no audio samples.
|
2016-09-07 00:40:01 -05:00 |
|
Jonathan Thomas
|
89fb86453e
|
Refactoring/renaming Cache to CacheMemory.
|
2016-08-31 23:57:06 -05:00 |
|
Jonathan Thomas
|
e547296d83
|
Adding new CacheBase class. This is the first of many cache related commits, with the goal of building a disk based cache object, to be used by the timeline object if enabled.
|
2016-08-31 02:02:54 -05:00 |
|
Jonathan Thomas
|
d1d0b078f9
|
Bumping version to 0.1.2, so 9.
|
2016-08-29 23:23:13 -05:00 |
|
Jonathan Thomas
|
a3ef86a695
|
Fixed some big performance issues (some which were causing crashes) in effects (Brightness and Saturation), and created a factory class for effects, to reduce redundent code.
|
2016-08-16 22:40:51 -05:00 |
|
Jonathan Thomas
|
d0b14fe3d3
|
Updated lots of JSON min/max properties to better reflect reasonable values
|
2016-08-16 02:12:51 -05:00 |
|
Jonathan Thomas
|
98ccfb5ee1
|
Fixing cmake build scripts to support 64bit on Windows. Also refactoring some pointer handling to support 64bit on Windows (Linux and Mac have always supported it). Adding instructions for setting up a Windows 64 bit build environment using MSYS2.
|
2016-08-12 19:15:19 -05:00 |
|
Jonathan Thomas
|
d743d4988b
|
Merge branch 'enable_system_jsoncpp' of https://github.com/komackaj/libopenshot into komackaj-enable_system_jsoncpp
# Conflicts:
# src/CMakeLists.txt
|
2016-08-02 18:08:02 -05:00 |
|
Jonathan Thomas
|
734dc5b32f
|
Fixing a crash on Windows by using a different overload of AddImage that doesn't do a memcpy. There is still a memory leak on the FFmpegWriter somewhere, which eventually starts to return NULL from av_malloc, and breaks on Windows (and probably other OSes too).
|
2016-07-30 16:57:48 -05:00 |
|
Jonathan Thomas
|
92a9db2aa3
|
Improved detection of missing audio frames, and missing video frames. Also improved logic for giving up on missing frames in general. Also removed some deadlocks related to Seeking (Close() and Open() were deadlocking). The end result is much improved compatability with reading video files.
|
2016-06-29 02:42:00 -05:00 |
|