Jonathan Thomas
13bd272ead
Adding new settings class to be used for changing realtime settings used by libopenshot, such as scaling mode for preview vs final render, or hardware decode, etc...
2019-01-09 16:50:40 -06: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
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
723bd24e5c
Adding new dependency: libzmq (ZeroMQ). Adding a new debug logging class powered by sockets and ZeroMQ, to allow a threadsafe way to communicate debug messages to a client application (i.e. openshot-qt). Also, removing unneeded Sleep.h functions. There will be lots more code utilizing ZeroMQ soon.
2016-04-04 23:09:18 -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
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
7e8ab6f5bf
Added new ChannelLayouts classe, which allows encoding video files in different channel layouts (mono, stereo, surround, etc...)
2015-02-05 00:11:11 -06:00
Jonathan Thomas
e135eb5738
Changed license to LGPLv3 for all libopenshot code.
2014-07-11 16:52:14 -05:00
Jonathan Thomas
39a67529fa
Removed partially implemented SDL player.
2014-06-20 15:05:24 -05:00
Jonathan Thomas
579237d614
Renaming Profile.h due to conflicts with ImageMagick. Mac builds are working again now.
2014-04-11 00:28:29 -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
4ee7ef9b6e
Added experimental AudioBufferSource and refactored lots of audio code.
2014-01-28 17:17:38 -06:00
Jonathan Thomas
a8389a3b84
Moved effects to a common include file called Effects.h, so all effects could be easily included when needed (such as the timeilne class).
2014-01-10 17:24:12 -06:00
Jonathan Thomas
dfe96b638c
Added Profile class, which can load profile data from a text file, and generate Json from the profile.
2014-01-09 17:37:04 -06:00
Jonathan Thomas
e2f5ca8a69
Removed Framerate class, since its functionality is already represented in the Fraction class. Also, corrected a few unittests, and updated some documentation.
2014-01-05 23:12:56 -06:00
Jonathan Thomas
cd7743fb88
Improved Json methods to correct work with swig and inheritance.
2013-12-07 21:09:55 -06:00
Jonathan Thomas
d8da4cb807
Added Json() methods to many methods, for loading and saving properties.
2013-12-06 00:40:26 -06:00
Jonathan Thomas
781e70fe03
Updated build scripts to work with Qt5 on Mac, and also successfully tested on Ubuntu 13.10.
2013-11-25 00:48:49 -06:00
Jonathan Thomas
d8175effdf
Added Qt video player example code, although it is not working yet.
2013-11-11 17:42:31 -06:00
Jonathan Thomas
cdde046ca4
Added PlayerBase, SDLPlayer, and QtPlayer. This forms the basis for the Player classes in libopenshot.
2013-11-06 23:17:35 -06:00
Jonathan Thomas
1bdea062d6
Added Deinterlace effect. Refactored Wipe effect into Mask effect (which is a more appropriate name). Added an example interlaced.png file. Improved the Mask to accept a 'reader', which can be used for more elaborate wipe animations.
2013-10-18 12:38:09 -05:00
Jonathan Thomas
44681e34d5
Added Wipe effect, which powers all transitions in libopenshot
2013-10-10 17:50:54 -05:00
Jonathan Thomas
642bfc659d
Completed the effects integration into the Timeline class. An effect is limited to a single layer on the timeline, but can affect many clips (based on it's position and duration)
2013-10-06 18:11:33 -05:00