Commit Graph

91 Commits

Author SHA1 Message Date
Jonathan Thomas
14a61f9c5c Refactored a few methods, added new doxygen format, and improved the copyright, license, and comments & documentation for many classes and methods. 2013-09-08 23:09:54 -05:00
Jonathan Thomas
a42e257521 Many small improvements, bug fixes, and build system fixes for newer systems that have both qt4 and qt5. 2013-09-08 16:08:56 -05:00
Jonathan Thomas
6171abfe1a Added a Sleep.h header, which defines an OS specific sleep metho. 2013-06-06 12:12:08 -05:00
Jonathan Thomas
124675ce84 Fixed bug in timeline which always reversed audio. Added a new timecurve demo. 2013-02-19 00:51:07 -06:00
Jonathan Thomas
aa09fdc69b Fixed many, many blackmagic bugs, and have a pretty good demo built. 2013-02-15 00:23:55 -06:00
Jonathan Thomas
c07b97d52a Experimenting with image sequence performance (using Tif images) 2013-02-13 02:46:55 -06:00
Jonathan Thomas
d0556bc33f Fixed a big audio regression, with a buggy isnear() function, which did not take into account the amount of frames between the sample locations. 2013-01-25 02:24:18 -06:00
Jonathan Thomas
ebf3bad263 Increased the number of samples to look for gaps (based on the samples per frame value) 2013-01-13 10:54:53 -06:00
Jonathan Thomas
b8d4b0b73d Fixed a big bug with the Swig wrapper, to correctly match the typemap of the tr1::shared_ptr, and then removed the GetFrameObject method, since it's no longer needed. 2013-01-12 12:45:55 -06:00
Jonathan Thomas
ad81fed72e Added alpha to all FFmpegReader source images, which is needed by the timeline class. Also, added alpha to the AddColor() method. Now even the background of the timeline can be transparent, along with all layers... even the bottom layer. 2012-12-04 02:21:01 -06:00
Jonathan Thomas
0d82a4e716 Made Keyframe objects thread safe, by generating the values as Points are added, and the Timeline's Open and Close logic was made thread safe, so a reader is not closed while it's still being accessed on another thread. Also removed some unneeded code and comments. 2012-12-03 22:55:46 -06:00
Jonathan Thomas
e264d4fcab Fixed a really huge audio issue, related to audio timestamps, gaps, and also mono vs stereo issues. This is the best audio support I've accomplished thus far. =) 2012-12-03 04:51:17 -06:00
Jonathan Thomas
d3ef1fac13 Refactored the audio waveform generation into the Timeline class. Added the ability to set the volume, and the ability to mix layers of audio samples together. Also, made the waveform's have a transparent background, so they can be layered on top of other layers. 2012-11-29 16:32:48 -06:00
Jonathan Thomas
afd9b1d6d3 Fixed more audio issues, and a regression where removing the video channel (with just an audio channel remaining) caused the FPS to be incorrect. 2012-11-21 16:57:21 -06:00
Jonathan Thomas
495ca9dc9e Fixed a big audio bug, where varying timestamp values on low precision audio timebases (i.e. 1/1000) would leave small gaps in the audio wave. Also, fixed a few issues related to sample_rate getting lost between the reader and clip and timeline objects. 2012-11-20 16:22:50 -06:00
Jonathan Thomas
7e51c204f9 Lots of debug code with some experimental audio PTS code, to adjust for small gaps in timestamps. 2012-11-20 10:15:39 -06:00
Jonathan Thomas
bff37d0072 Added in openMP code to improve performance on the timeline layer merging, which is very CPU intensive. 2012-11-12 17:21:21 -06:00
Jonathan Thomas
d47a94f1a0 Added gravity, scale type, and percentage based X,Y location settings. All the basic transformation methods are now working. You can layer, move, fade, snap, rotate, and scale clips on the screen. 2012-11-12 01:25:35 -06:00
Jonathan Thomas
170b73a595 Added a new method of getting the Frame* pointer from SWIG 2012-10-31 01:17:12 -05:00
Jonathan Thomas
aab257402d Fixed bug which froze the FFmpegReader when caching 1080p video. 2012-10-28 23:06:10 -05:00
Jonathan Thomas
a0b24c61f0 Fixed a huge memory leak related to cache objects, and incorrect frame sizes. It was caching way too many frames, and creating all sorts of issues. 2012-10-26 00:27:44 -05:00
Jonathan Thomas
651993ff60 Fixed a bug in the regression in the FFmpegReader class, which prevented frame 1 from loading 2012-10-22 23:59:36 -05:00
Jonathan Thomas
612bb25f5f Fixed the FFMpegReader to discard the first audio and video frames it finds after a seek, since they sometimes are missing information. This fixed many issues with the time mapping curves and audio reversing and fast forwarding. 2012-10-22 17:05:34 -05:00
Jonathan Thomas
48bef6b566 Removed some unneeded methods, due to the previous refactor involving shared_ptr objects. They no longer require some special overloads which "delete" the objects in the cache. 2012-10-14 21:09:22 -05:00
Jonathan Thomas
617088cebf Yet another huge refactor, to use shared_ptr objects instead of actual pointers, due to the difficulties in managing the lifecycle of pointers between the timeline, clip, and readers. Seems to work great, and solves all sorts of bugs. =) 2012-10-14 03:43:52 -05:00