Commit Graph

116 Commits

Author SHA1 Message Date
Jonathan Thomas
a6087dab3a Many improvements to FFmpegReader, including
Better bounds checking, and support at the end of the video file
Improved debug output, which helped resolve many issues
Implemented the newest audio decoding API (old one was depreciated)
Now support packed and planar audio data
Far superier audio resampling support
2015-02-05 00:00:52 -06:00
Jonathan Thomas
eec8e38ec2 Fixed more seek issues 2014-09-26 09:35:38 -05:00
Jonathan Thomas
663e0d4129 Fixed a big memory leak on the FFmpegReader while processing audio packets. 2014-09-22 00:40:21 -05:00
Jonathan Thomas
348ff39e87 Fixed another seek bug, and resolved some memory leaks with removing av_frames and av_packets. 2014-09-15 00:24:46 -05:00
Jonathan Thomas
f6b9ba4fa3 More tweaks to the seeking code, to increase stability while seeking. 2014-09-13 18:05:15 -05:00
Jonathan Thomas
7eb25b54fc Fixed a bad seek bug, where the FFmpegReader would read until the end of stream looking for a frame. Also refactored a bit of cmake code. 2014-09-13 16:35:11 -05:00
Jonathan Thomas
cc7a0f41e8 Added new debug methods, and refactored the ReaderBase and WriterBase to better utilize the base class constructor. Also fixed some FFMpegReader issues related to seeking and determining when frames are actually ready. 2014-08-27 09:44:27 -05:00
Jonathan Thomas
b1022212e3 Updated cmake build script to correctly set install_path_name, so cx_Freeze could correctly walk to the dependency chain. Also fixed a minor issue with FFmpeg on Mac, where it could not find any codecs. 2014-08-01 10:27:05 -05:00
Jonathan Thomas
e135eb5738 Changed license to LGPLv3 for all libopenshot code. 2014-07-11 16:52:14 -05:00
Jonathan Thomas
7de37cf1a6 Fixed a bug in the Seek method, which was reseting the seek_target on each recursive seek. 2014-04-05 10:19:20 -05:00
Jonathan Thomas
a229ced036 Added new usleep method for Windows, and improved speed of Seek() operation on the FFmpegReader. Also added some Seek unit tests. 2014-04-03 22:35:25 -05:00
Jonathan Thomas
e073ad89f5 Fixed many issues with the QtPlayer and related classes. Now the VideoRenderer can be passed through SWIG and connected to a PyQt application and handle display signals for each frame. Also, refactored some OpenMP settings into its own header. 2014-04-02 16:48:27 -05:00
Jonathan Thomas
5010f6252a Replaced all copyright and licensing to reflect AGPLv3 license. Also, added a bad ass version header, which is now integrated into CMake as well. A single place to indicate version and ABI/API compatibility. 2014-03-29 18:49:22 -05:00
Jonathan Thomas
bc4e58c601 1) Reduced all openmp to use /2 the available CPUs (for performance reasons)
2) Improved detection of pixel format (enabled GIF support.. although it is still flawed a bit)
3) Improved error reporting when video encoding issues happen
2014-03-29 15:39:43 -05:00
Jonathan Thomas
2ba83486c9 Made some dramatic improvements to the QtPlayer classes, especially audio / video sync. All of my test files now work correctly, with no audio or video issues! Also, now audio only files also work, and image only files. 2014-03-21 01:25:17 -05:00
Jonathan Thomas
74abf40932 Fixed bugs in new AudioReaderSource class. Also fixed a few small issues in the FFmpegReader class. 2014-01-29 00:18:40 -06:00
Jonathan Thomas
4ee7ef9b6e Added experimental AudioBufferSource and refactored lots of audio code. 2014-01-28 17:17:38 -06:00
Jonathan Thomas
118fe9113a Fixed RendererBase to correctly use writePixels, instead of iterating through PixelPackets. Fixed Audio Crash caused by not initializing a JUCE background audio thread. Added an OutOfBoundsFrame exception on the FFmpegReader, when the end-of-stream is detected. 2014-01-28 02:41:15 -06:00
Jonathan Thomas
3c99e53dad Added JSON change method, which accepts a diff / sync JSON array, and applies the changes to a timeline and timeline associated properties and items. Also fixed many bugs on JSON type checking. 2014-01-08 01:43:58 -06:00
Jonathan Thomas
cd7743fb88 Improved Json methods to correct work with swig and inheritance. 2013-12-07 21:09:55 -06:00
Jonathan Thomas
e3d41808b9 Added Json methods to readers and readerBase classes. 2013-12-07 16:52:09 -06:00
Jonathan Thomas
e30ca3e9d6 Fixed huge audio show stopping bug! Audio is now reduced to 98% of original (to prevent some samples from maxing out their values at 1.0). Also fixed an off by one error, which was leaving gaps in the samples. Nice, beautiful, smooth audio from this point forward! 2013-10-17 14:53:00 -05:00
Jonathan Thomas
58090ef5fc Added license and copyright to all files. Improved many examples and documentation. Refactored the Coordinate() object, to move a few properties to methods. 2013-09-12 17:52:10 -05:00
Jonathan Thomas
cbed47ea5f Changed / Refactored many enums and structs, to better standardize the naming of everything. Improved some more descriptions and briefs. 2013-09-10 12:59:06 -05:00
Jonathan Thomas
234201743a Improved more documenation, and switched to @ syntax for doxygen. 2013-09-09 23:32:16 -05:00