92 Commits

Author SHA1 Message Date
FeRD (Frank Dana)
3ce85d0fff openshot:: prefixing as needed for SWIG
It turns out SWIG is a lot pickier than GCC about namespaces, and
requires a lot more `openshot::` prefixing in our headers, if we
eliminate the `using namespace...` statements from them.
2019-08-05 02:17:22 -04:00
FeRD (Frank Dana)
be9a32c65a *.h: Eliminate remaining 'using' statements 2019-08-04 23:18:04 -04:00
FeRD (Frank Dana)
b4b6223e89 std:: prefixes for FFmpegReader.h/.cpp 2019-08-04 22:23:33 -04:00
Chris Kirmse
572875b8d7 Merge remote-tracking branch 'upstream/develop' into develop 2019-06-24 10:00:22 -07:00
FeRD (Frank Dana)
9261f46772 More copyright, missed a few older ones 2019-06-11 06:51:37 -04:00
FeRD (Frank Dana)
0327c2ab5c Remove license block from documentation comment 2019-06-09 08:31:04 -04:00
Chris Kirmse
833fcb8e8e fix a number of memory leaks
- some were with libav functions
- same were due to non-virtual destructors
2019-05-08 15:02:33 -07:00
Jonathan Thomas
893b91b528 Adding doc/HW-ACCEL.md document, code reformatting, some variable renaming 2019-04-18 01:07:57 -05:00
Chris Kirmse
650d3ec820 fix grammar error with possessive its and update sample for audio parameter 2019-03-14 09:26:56 -07:00
eisneinechse
29b5fcac60 Merge branch 'develop' into hardware-support 2019-01-25 13:07:26 -08: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
662ed77263 Merge branch 'develop' into hardware-support 2019-01-18 16:42:46 -08: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
eisneinechse
e7f2494040 First changes to make hardware accelerated DECODE work with decoders
other than vaapi. Encode is already working for nvenc; nvidia driver
396 has to be installed for nvenc to work. On nVidia card turn
accelerated decode off in Preferences->Performance for now
2018-11-26 09:36:21 -08: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
eisneinechse
aff1be93b8 Support for multiple input files 2018-09-09 10:54:31 -07:00
eisneinechse
c29bf21c75 Simplifications of FFmpegReader and start of setting parameters
per input file
2018-09-09 09:05:16 -07:00
eisneinechse
340803e31e Initial rudimentary support for hardware acceleration (encode and decode)
Only Linux vaapi for now
2018-08-31 21:36:23 -07:00
Jonathan Thomas
8216795c33 Adding environment checking to enable/disable omp taskwait after each video/audio frame is processed. This is experimental for some users with crashes. 2018-08-12 00:15:23 -05:00
Jonathan Thomas
774eb365b3 FFMPEG 3.2 support for FFmpegReader (writer support coming soon) 2018-03-21 02:10:46 -05: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
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
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