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
89fb86453e
Refactoring/renaming Cache to CacheMemory.
2016-08-31 23:57: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
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
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
bfa050409c
Improved support for missing frames and invalid PTS (which result in gaps and duplicate frames). Also changed frame number to larger data type, and did some code clean-up and refactoring. Less crashes, and more video support!
2015-08-24 01:05:48 -05:00
Jonathan Thomas
03c9f06708
Fixed many audio issues with the FFmpegWriter. Planar formats were not being handled correctly. Framesize was also wrong on some formats. Also, added a new method to a Frame to fill with audio silence. Lastly, cleaned up some unused imports and C++ warnings.
2015-08-02 20:32:33 -05:00
Jonathan Thomas
b612f3339d
Replaced ImagMagick with QImage on almost all key methods and classes. Reprogrammed all effects and the entire rendering pipeline to use QImage and QTransforms, primarily for increases in speed and stability. libopenshot is more than 10X faster on many of the most CPU heavy tasks. This was a huge change, and still has a few minor issues relating to BlackMagick Decklink and Text rendering.... which should be resolved very soon.
...
Also, much work has been done on memory management / leak detection, and optimizations with multi-threading... including a new thread cacher class used by the video playback (which is smoother than ever).
2015-06-01 00:20:14 -07:00
Jonathan Thomas
ea9885f9a9
Laying the ground work for audio mapping (resampling and changing channel layouts) for the openshot::FrameMapper. This is important for use with the Timeline, that all clips have a common frame rate, sample rate, and channel layout.
2015-02-26 17:33:09 -06:00
Jonathan Thomas
ff60450f4f
Completely rewrote audio encoding API (old one was depreciated)
...
Integrated new debug output, which makes troubleshooting issues much easier
Simplified the Writer API calls (some methods now get automatically called if needed). Now a few simple methods can write an entire video file.
2015-02-05 00:06:07 -06:00
Jonathan Thomas
e135eb5738
Changed license to LGPLv3 for all libopenshot code.
2014-07-11 16:52:14 -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
4ee7ef9b6e
Added experimental AudioBufferSource and refactored lots of audio code.
2014-01-28 17:17:38 -06: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
41c2d434a8
Improve more documentation, including descriptions of enum values.
2013-09-10 22:11:47 -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
Jonathan Thomas
a97f170738
Improved documentation, mainpage, and added some examples on ChunkReader and ChunkWriter.
2013-09-09 17:06:07 -05:00
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
c244657a11
Renamed FileReaderBase and FileWriterBase to ReaderBase and WriterBase, since they are not specifically related to files.
2013-09-08 16:40:57 -05:00
Jonathan Thomas
6cac382773
Fixed most build warnings on Mac OS X
2013-06-09 01:08:23 -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
f04e821f0d
Refactored blackmagic capture example into DecklinkCapture.cpp, and added it into libopenshot. Also, added a new, Main_Blackmagic.cpp example program, which invokes the DecklinkCapture.cpp class.
...
Also, built in a 20 frame buffer into the DecklinkCapture.cpp class, to discard old frames, to keep the memory from filling up.
2013-02-06 02:09:21 -06:00