Commit Graph

380 Commits

Author SHA1 Message Date
Jonathan Thomas
9dbb063ded Persist any error returned by JUCE during initialise() method, such as sample rate issues on Windows (when playback and recording sample rates do not match, which breaks WASAPI) 2019-04-04 00:55:47 -05:00
Jonathan Thomas
6e2600dcd4 Moving JuceHeader.h below other includes, to be sure it is always included after system libraries (for Mac Point build failure) 2019-03-30 14:23:50 -05:00
Jonathan Thomas
13ab8b48bd Moving JuceHeader.h in ZmqLogger.h, to come after system libraries (to prevent error on Mac related to Point declaration) 2019-03-30 01:47:49 -05:00
FeRD (Frank Dana)
7e7f5c341a Use new Juce header file location 2019-03-29 08:11:19 -04:00
Jonathan Thomas
abe44ade73 Bumping version to 0.2.3 (SO 17) 2019-03-15 13:14:52 -05:00
Jonathan Thomas
8f385c112a Improved Keyframe Performance (#197)
* Refactor of Coorindate and Keyframe optimized for performance (much faster than previously). Also refactored FrameMapper to not use a Keyframe, and to only process frame mapping when needed... speeding up Json loading of project files.

* Fixing FrameMapper linear calculation to match existing Keyframe calculation

* Fixing Keyframe to pass original unit tests, and correctly calculate the Keyframe repeat fractions and deltas.

* Small refactor of time mapped logic in Clip.cpp
2019-03-06 15:35:03 -06:00
Jonathan Thomas
7b6eb9c21b Integration of resvg SVG library (optional during build) (#185)
* Integration of libresvg SVG library (optional during build)

* Major refactor of max_width and max_height for preview optimization

* Fixed many bugs related to preview resizing, with regards to cached frames

* Updating gitlab CI to find RESVGDIR correctly for windows, and adding svgz support

* Updating cmake findresvg module to search for windows locations first, to prevent an issue on our windows builders and updating some CMake output.

* Removing folder path from resvg header, since it could be installed in different named folders. This is an attempt to fix Windows include issues.

* Making call to AV_FREE_FRAME conditional for non windows systems (because it crashes on Windows for seemingly no reason). Needs more investigation.
2019-01-19 02:18:52 -06:00
Jonathan Thomas
64a53283c9 Adding condition before calling av_frame_free (in AV_FREE_FRAME macro) (#184) 2019-01-15 14:58:01 -06:00
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
082f9aa668 Bumping version to 0.2.2 (SO: still 16) 2018-09-22 13:36:41 -05:00
Jonathan Thomas
c0929d22d4 Bumping version to 0.2.1 (SO: 16) 2018-09-15 18:37:29 -05:00
Jonathan Thomas
6b37ad7e1d Limiting threads for both FFmpeg and OpenMP (attempting to find a good balance of parallel performance, while not spawning too many threads). Sometimes more is not always better. 2018-09-11 10:48:30 -05:00
Jonathan Thomas
e879188a7d FFmpeg 3 & 4 support, Travis CI support, OpenMP schedule change (#160)
* FFmpeg4 support. Compile warnings fixes. Credit goes to many people, including ferdnyc, peterM, and other awesome folks!

* Adding environment checking to enable/disable omp taskwait after each video/audio frame is processed. This is experimental for some users with crashes.

* Moving `omp taskwait` to after the ProcessVideoPacket() method, since that is the only place it is useful.

* Fixing crashes on missing Clip source file, and changing FFmpeg scaling algorthm from SWS_BILINEAR to  SWS_LANCZOS (for higher quality scaling)

* Update FindFFmpeg.cmake module, and updating build script. Also enabling debug builds.

* Updating experimental travis build script

* Fixed unit test for newer version of FFmpeg (audio resampling)

* Experimental travis multiple jobs

* Adding OMP schedule hint (thanks PeterM), which prevents crashes in some circumstances.
2018-09-11 00:40:31 -05:00
Jonathan Thomas
d11f14b0dc Merge branch 'develop' into fix-install-paths 2018-08-08 02:15:11 -05:00
Jonathan Thomas
da01a2c4cb Adding "reader" property for Mask effect, to allow the user to adjust the image or video used by the mask effect. 2018-08-02 00:42:14 -05:00
Jonathan Thomas
1de33a2e1c Revert: Update Version.h 2018-06-30 00:19:56 -05:00
Jonathan Thomas
cc17315fa7 Merge branch 'develop' into release 2018-06-29 23:48:47 -05:00
Jonathan Thomas
ef1fb6320b Add new static function to determine if video/audio codecs names are valid (#134) 2018-06-28 21:57:56 -05:00
Jonathan Thomas
588302f594 Adding new audio mixing enum, to allow for no automatic audio mixing, average mixing (where all overlapping clips average to 100% audio), or reduce mixing (where clips overlapping clips are all reduced by a constant value to reduce popping). (#131) (#132)
(cherry picked from commit 2f45a4e)
2018-06-27 01:54:34 -05:00
Jonathan Thomas
2f45a4eb38 Adding new audio mixing enum, to allow for no automatic audio mixing, average mixing (where all overlapping clips average to 100% audio), or reduce mixing (where clips overlapping clips are all reduced by a constant value to reduce popping). (#131) 2018-06-27 01:35:38 -05:00
Jeff Shillitto
b5f6897f5d Merge branch 'develop' into fix-install-paths 2018-06-19 19:07:26 +10:00
Jonathan Thomas
720c2d5ed7 Update Version.h
Reverting version for develop branch
2018-06-11 23:37:02 -07:00
Jonathan Thomas
04e4f63ea8 Calculate max volume of all overlapping clips, and scale clip volume to fit within the 100%, to prevent popping 2018-06-11 12:02:21 -07:00
Jeff Shillitto
14fc9a85bb Fix install paths for headers and effects
Fix additional relative paths
2018-06-01 22:34:09 +10:00
Jonathan Thomas
25d536a79b Bumping version to 0.2.0 (so 15) 2018-06-01 01:14:59 -05:00