Jonathan Thomas
c81d42629d
Adding Hue video effect, to adjust the hue of a frame's image, which can also be animated with a keyframe
2018-02-06 02:26:35 -06:00
Jonathan Thomas
7490aaa3e4
Fixing brightness and Mask effects to calculate factor with a float type, giving more fine control
2017-11-14 00:15:42 -06:00
Jonathan Thomas
2fcb35ddcc
Removing throw statements from header files (thanks Peter)
2017-10-26 18:44:35 -05:00
Jonathan Thomas
c95db460d6
Big update! Updating all "long int" frame number types to int64_t, so all 3 OSes will produce the same depth and precision on frame numbers. Also removing variable bitrate support temporarily, since it causes more problems than it solves.
2017-09-28 16:03:01 -05:00
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
289e659566
Fixed a bug when caching a mask size (a regression from some of our speed improvements)
2017-02-19 01:29:59 -06: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
82d3798a18
Fixing JSON property value ranges on mask effect
2016-08-21 21:06:50 -05:00
Jonathan Thomas
e2615c9249
Renaming Layer to Track in JSON properties
2016-08-18 19:45:45 -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
45f1b8c5ac
Making ImageMagick completely optional. This will simplify packaging on Windows and Mac. Also, reprogrammed Display, DisplayWaveform, Save, and Thumbnail methods, which are much faster now (using Qt).
2016-02-23 00:27:03 -06:00
Jonathan Thomas
3097e4a2fd
Fixed a crash on windows, relating to a race condition on the Mask effect.
2016-01-25 23:53:10 -06:00
Jonathan Thomas
c44aeda948
Optimizations with Mask effect (making transitions faster)
2015-11-05 00:11:30 -06:00
Jonathan Thomas
358e0835d2
Added dropdown choices into JSON properties, so a UI can correctly list the options for certain properties. Fixed a bug when deleting all Points from a Keyframe, and added some missing Enums from the Python/Ruby bindings.
2015-10-02 18:22:10 -05:00
Jonathan Thomas
bfa050409c
Improved support for missing frames and invalid PTS (which result in gaps and duplicate frames). Also changed frame number to larger data type, and did some code clean-up and refactoring. Less crashes, and more video support!
2015-08-24 01:05:48 -05:00
Jonathan Thomas
8fa2ab71c5
Fixed a few tiny bugs in JSON Properties, and removed some unneeded code related to hashing the current state of an effect.
2015-08-16 19:19:14 -05:00
Jonathan Thomas
c345ae07b7
Fixed the ApplyJsonDiff function to support effects inside clips, which gets a bit tricky.
2015-08-07 23:11:03 -05:00
Jonathan Thomas
c7f0a481cc
Added a new class to easily expose the JSON metadata of supported effects in libopenshot. Fixed some bugs related to metadata, and a few bugs in the Mask effect (if initialized without a reader).
2015-08-06 20:01:34 -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
dfeff3379e
Fixed a small issue with unneeded reader Open() calls.
2015-02-26 01:59:12 -06:00
Jonathan Thomas
79519dbeab
Added JSON Properties to all effects and refactored some of the code into the ClipBase class.
2015-02-26 00:02:06 -06:00
Jonathan Thomas
6937d89bfd
Fixed some issues with the Mask effect: correctly serialize the reader property, and correctly load the reader. Added additional debug info for the Timeline class.
2015-02-25 17:39:59 -06:00
Jonathan Thomas
e135eb5738
Changed license to LGPLv3 for all libopenshot code.
2014-07-11 16:52:14 -05:00
Jonathan Thomas
6232a1bd41
Refactored and fixed many include paths (not sure how they worked before). Also, refactored SWIG bindings into separate folders, and added Ruby as the 2nd officially supported language for libopenshot.
2014-04-10 22:38:01 -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