Commit Graph

295 Commits

Author SHA1 Message Date
Jonathan Thomas
734dc5b32f Fixing a crash on Windows by using a different overload of AddImage that doesn't do a memcpy. There is still a memory leak on the FFmpegWriter somewhere, which eventually starts to return NULL from av_malloc, and breaks on Windows (and probably other OSes too). 2016-07-30 16:57:48 -05:00
Jonathan Thomas
92a9db2aa3 Improved detection of missing audio frames, and missing video frames. Also improved logic for giving up on missing frames in general. Also removed some deadlocks related to Seeking (Close() and Open() were deadlocking). The end result is much improved compatability with reading video files. 2016-06-29 02:42:00 -05:00
Jonathan Thomas
4808be25ff Added 4 new clip keyframes (channel mapping, channel filter, has_video, and has_audio). These are a bit different though, as they are evaluated as boolean (-1 = ignored, 0 = disabled, 1 = enabled). Also fixed some issues with video playback (where it gets stuck in fast forward), and fixed some race conditions when opening FFmpegReader. Also added more debug output. 2016-04-24 15:37:47 -05:00
Jonathan Thomas
37f1894300 Fixed a race condition in video playback thread! Also, added new method to get the average magnitude of a range of audio samples. 2016-04-22 02:43:06 -05:00
Jonathan Thomas
179d091005 Moved AppendDebugMessage to ZmqLogger, and updated 100+ references to use this new function. Removed debug var from readers/writers, and moved it to ZmqLogger.Enable(true/false). This allows debug output from all classes and functions, without any duplicate code. Also added some additional debug output for video playback and audio readers. 2016-04-21 01:39:17 -05:00
Jonathan Thomas
7c49628d93 Added new optional file logging abilities to ZmqLogger, which are guaranteed to write to disk (even if a crash happens immediately after logging) 2016-04-12 16:42:36 -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
1109e399ec Bumping version to 0.1.1-8, New Release 2016-03-27 23:12:21 -05:00
Jonathan Thomas
ac774b4e3b Fixed a memory corruption issue, where AddImage was being called multiple times (at the same time). Added a lock, and I can no longer reproduce the crash. 2016-03-08 00:38:06 -06:00
Jonathan Thomas
4439131a82 Fixed regression for ImageMagick enabled builds 2016-02-23 10:04:07 -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
6f1bee9b65 Fixing version # bug with 0.0.10... Apparently my build system can't handle 2 digit #s, haha. Bumping version to 0.1.0, and fixing a documentation bug. 2016-02-08 21:52:25 -06:00
Jonathan Thomas
ca39286d5a Bumping version to 0.0.10-7 2016-02-08 10:58:55 -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
054175ddaa Fixed some audio popping issues related to audio buffer size and also resampling issues inside the FrameMapper class. Also made the Timeline more hardened, if a reader returns an error requesting a frame. 2016-01-30 17:12:41 -06:00
Jonathan Thomas
bf81869a4a Bumping version to 0.0.9-6 2016-01-18 20:41:09 -06:00
Jonathan Thomas
d48ce2068e Refactored some audio thread code, and improved performance of timeline (by removing a 'omp ordered' statement that doesn't seem needed). Also added some performance improvements in Clip and FrameMapper classes (if the frame is the same as the source frame... just use the source frame) 2016-01-18 15:20:55 -06:00
Jonathan Thomas
e2573e8144 Flipping alpha channel values. It was brought to my attention that the meaning of alpha was opposite of what was being used. So, sorry if this breaks some things, but better to get it fixed quickly, and for the value to make sense. 2016-01-16 21:53:07 -06:00
Jonathan Thomas
c695243a35 Bumping version to 0.0.8-5, to accompany the first beta release of OpenShot 2.0 2016-01-10 18:04:25 -06:00
Jonathan Thomas
0c2d2bbdd1 Bumping version to 0.0.7-5 2016-01-09 18:48:34 -06:00
Jonathan Thomas
bb6102f46f Added support for newer versions of libav media library. 2016-01-07 23:50:48 -06:00
Jonathan Thomas
13362393c5 Fixed many more regressions with audio files not passing cover art to the next frame correctly. Seeking issues, and many related issues to detecting missing frames improved. Also fixed a deadlock in certain seeking cases. 2016-01-05 01:59:50 -06:00
Jonathan Thomas
bfed49819b Fixed delay with certain types of audio files which also contained a video stream with a single frame. Added some good 'dont get stuck' logic when checking for gaps in video/audio timestamps, etc... 2016-01-01 01:39:56 -06:00
Jonathan Thomas
b7de1a885b Fixed some big issues with time mapping and thread safety. Lots and lots of crashes were fixed related to this. Mostly dealing with an incorrectly sized AudioSampleBuffer when trying to combine multiple frames. 2015-12-28 02:41:32 -06:00
Jonathan Thomas
2f8c4161df Improved changing Reader() on the QtPlayer class, and made many thread safety improvements for the FrameMapper.GetFrame method. Also improved the destructors and Close() methods of FFmpegReader and FrameMapper. Some audio-related bug fixes also, related to audio playback. 2015-12-24 16:44:45 -06:00