92 Commits

Author SHA1 Message Date
Frank Dana
c40c429581 Delete FindZMQ.cmake
(This also serves as a test of the GitHub Actions config.)
2019-10-30 04:50:24 -04:00
FeRD (Frank Dana)
a1034046a2 ZeroMQ: Use IMPORTED targets
- Adopt FindZeroMQ.cmake from cppzmq, and use its `libzmq` target
- Also use `cppzmq` target, if created
2019-10-26 07:24:28 -04:00
Frank Dana
13e68c368e Merge branch 'develop' into ffmpeg-targets 2019-10-25 02:03:10 -04:00
Jonathan Thomas
69f15ad0d0 Merge pull request #331 from ferdnyc/ferdnyc-patch-1
Delete FindPythonLibs.cmake
2019-10-22 18:33:16 -05:00
FeRD (Frank Dana)
beab952702 FindFFmpeg: Default to all components, if not specified 2019-10-03 04:17:13 -04:00
FeRD (Frank Dana)
5bf3893498 FindFFmpeg.cmake: create targets 2019-10-02 08:28:17 -04:00
Frank Dana
c78d030b5b Delete FindPythonLibs.cmake
Our copy of the module is outdated, and fails detecting Python 3.8. (Besides, we shouldn't be mirroring standard CMake modules.)
2019-09-18 21:25:34 -04:00
Frank Dana
935a740cff Remove spurious include
That wasn't supposed to be in there.
2019-07-12 19:12:31 -04:00
FeRD (Frank Dana)
8dcefbd87c Overhaul FindOpenShotAudio.cmake
* Version checking!
  - Supports EXACT
    (but only for M.N.B, e.g. 0.1.8-dev1 matches 0.1.8 EXACT)
  - REQUIRED will now cause CMake to abort if version is not
    sufficient (lower than requested)
  - Outputs the following:
    - Version requested, if set
    - Version found, if successfully parsed from header
    - Compatibility status, if version set on both ends
* Accept `LIBOPENSHOT_AUDIO_DIR` cache variable, in addition to
  the environment variable (for `cmake -DLIBOPENSHOT_AUDIO_DIR=...`)
* Do two-stage search for both headers and libs
  (Avoids this situation...)
  LIBOPENSHOT_AUDIO_INCLUDE_DIRS=/usr/include/libopenshot-audio
  LIBOPENSHOT_AUDIO_LIBRARY=/home/ferd/build/

(Largely inspired by CMake's `FindPythonLibs.cmake`)
2019-07-12 18:28:40 -04:00
FeRD (Frank Dana)
95aca48831 Fix some bugs in UseDoxygen.cmake
There was a bug in the definition of `DOXYFILE_LATEX`, and _another_
in the processing of it (which were the only reason it wasn't
defaulting on, the way it appeared to be configured), fixed the
bug and changed it to default OFF. But now it _can_ be enabled.

Also moved the handling of `DOXYFILE_DOT` out of the latex-only
section, so that it can be turned on with the new config variable
`DOXYFILE_USE_DOT` (default on). If `DOXYFILE_USE_DOT` is enabled
and the `dot` executable is found, `DOXYFILE_DOT` will be set "YES"
and `dot` will be used for the HTML as well, giving better graphs.
2019-06-13 06:54:16 -04:00
eisneinechse
8b1a7ceb67 Merge branch 'develop' into hardware-support 2019-04-06 09:33:22 -07:00
eisneinechse
5648261e4f Merge branch 'develop' into hardware-support 2019-04-05 07:50:07 -07:00
FeRD (Frank Dana)
6ee1ab17a4 Use updated, improved UseDoxygen.cmake 2019-04-05 00:07:59 -04:00
FeRD (Frank Dana)
3e5dc1d727 Streamline libopenshot-audio discovery 2019-03-29 08:10:31 -04:00
eisneinechse
29b5fcac60 Merge branch 'develop' into hardware-support 2019-01-25 13:07:26 -08:00
Frank Dana
c4321f3f8e Some polishing for the cmake ReSVG discovery (#187)
* Search for libresvg.so in RESVGDIR also

This means that RESVGDIR can be pointed to the `target/release` dir 
where resvg was built, and both `libresvg.so` and `include/resvg.h` will 
be found.

* ReSVG: Fix up discovery module

`find_package_handle_standard_args` is supposed to set the `_FOUND` 
variable automatically (as the comment right above it says), as well as 
handling things like REQUIRED, QUIETLY, etc. It should always be run at 
the end of a module, for this reason.

This change removes the conditionals around the call, lets it handle 
what it's meant to handle, and defines a custom failure message for 
discovery that replaces the one in `src/CMakeList.txt`. 

In addition, the `REQRUIRED` is removed from `tests/CMakeLists.txt`, 
since it's _supposed_ to mark the module as required (which ReSVG is 
not), and was only working due to the aforementioned improper 
conditional wrapping of the module's cleanup.

* FindRESVG.cmake does not set RESVG_DEFINITIONS

Remove the comment that claims it does.
2019-01-24 13:43:40 -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
eisneinechse
533c59ae97 Merge branch 'develop' into hardware-support 2018-09-26 09:44:59 -07: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
95abdcf66b FFmpeg4 support. Compile warnings fixes. Credit goes to many people, including ferdnyc, peterM, and other awesome folks! 2018-08-11 18:22:18 -05:00
Jonathan Thomas
da07ff4818 Fix cmake module lookup for libopenshot-audio, to always try the ENV variable first (#123) 2018-06-20 14:07:55 -05:00
Jonathan Thomas
98fa55feb3 Updating cmake file for libopenshot-audio to search $ENV first, and then static folders 2018-05-21 23:12:21 -05:00
Jonathan Thomas
d7f4b08844 Making some small tweaks for consistency / code format 2016-08-02 18:18:24 -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
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