Commit Graph

34 Commits

Author SHA1 Message Date
FeRD (Frank Dana)
b8bb1a88f8 A more Pythonic openshot.Fraction
Extend openshot::Fraction in the Python wrapper, to permit:
```py
f = openshot.Fraction(16, 9)
float(f) # returns 1.777777777
int(f) # returns 2
print(f) # outputs "16:9"
dict(f.GetMap()) # in Python dict form
2019-09-07 17:06:04 -04:00
FeRD (Frank Dana)
0ac3720023 SWIG: Warnings cleanup
* Remove a SWIG pragma from Frame.h (gcc warns on it)
* Place the equivalent %warnfilter in the openshot.i files
* Set openshot.i PROPERTY GENERATED_COMPILE_OPTIONS with flags to
  disable warning spew in generated SWIG code, if -Wall is used

(Also, remove 'using namespace std' from Frame.h, and add std::
prefixes to necessary variables.)
2019-07-12 13:28:47 -04:00
Jonathan Thomas
376170d7dd Merging work from @ferdnyc, to move version info to CMake, and other misc Cmake improvements. This was the easiest way to resolve the merge conflict for me (to apply it locally and commit it). 2019-07-01 12:24:50 -05:00
FeRD (Frank Dana)
f170fdd009 Update copyright range to current year 2019-06-11 06:48:32 -04:00
Jonathan Thomas
140fbaddff Added new AudioDeviceInfo struct, and populate a vector of them on QtPlayer initialization. This allows a user to overwrite the preferred audio device by using the setting PLAYBACK_AUDIO_DEVICE_NAME. 2019-04-23 16:45:02 -05: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
244fac4df8 Adding new crop effect, which can also be animated for some very cool effects. 2018-03-05 02:12:37 -06:00
Jonathan Thomas
7f9fc30203 Adding new Color Shift effect, which can shift any color (RGBA) with infinite wrapping (and full supports animation). 2018-03-03 18:02:14 -06:00
Jonathan Thomas
3034bbe273 Adding new Pixelate video effect, which pixelates a portion (or all) of a frame's image, and is fully animatable. 2018-02-09 16:43:43 -06:00
Jonathan Thomas
8c1da9798b Adding new video effect: Bars, which allow for animating colored bars around your video, such as a letterbox effect. 2018-02-09 02:37:05 -06:00
Jonathan Thomas
c159fde729 Adding new wave video effect, which can be animated in a ton of ways to create lots of cool wave distortion effects. 2018-02-08 03:51:32 -06:00
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
4a9f2a0a00 Adding new effect: Shift, an infinite pixel shifting effect which can be animated and wrap images in any direction. 2018-02-06 00:51:59 -06:00
Jonathan Thomas
f2b0f3a0f4 Adding metadata from format, audio stream, and video streams to ReaderBase.info, which in some cases includes the 'rotate' metadata added by certain cameras, and audio metadata like title, album, artist, copyright, dates, etc... Auto-Rotates any Clip with Reader metadata 'rotate' attribute. 2018-02-03 01:57:18 -06: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
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
e547296d83 Adding new CacheBase class. This is the first of many cache related commits, with the goal of building a disk based cache object, to be used by the timeline object if enabled. 2016-08-31 02:02:54 -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
b8246f1800 Fixing SWIG bindings when ImageMagick is not found 2016-02-23 01:24:13 -06: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
276aae35b3 Improvements to exception handling, including using std::exception base class, and better general purpose exception handling in SWIG with Python. Also fixed an error when thowing exceptions inside OMP regions. 2016-02-02 01:09:02 -06:00
Jonathan Thomas
3731b22317 Added a new effect: Blur. It has the ability to box blur, horizontal and vertical blur, and gaussian blur. All of these settings are keyframeable and can be animated. 2015-11-09 00:12:21 -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