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
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
8fb94cc123
Updated the FFmpegWriter to use compiler #IF commands to be compatible with older and newer versions of FFmpeg. This is still a work in progress, but many of the newer commands are now being protected.
2012-11-16 17:15:44 -06:00
Jonathan Thomas
075feffe16
Updated path to opt.h ffmpeg include
2012-11-15 23:53:29 -06:00
Jonathan Thomas
7dd94a02e4
Added code to flush the encoders, and also write the final frame's audio samples
2012-10-28 03:35:50 -05:00
Jonathan Thomas
bf93f6941e
Fixed some major issues with the FFmpegWriter, which was not setting the correct PTS values
2012-10-26 17:15:17 -05:00
Jonathan Thomas
5fcead37f2
Added frame counter to writer class, to help generate a valid PTS
2012-10-26 02:11:39 -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
Jonathan Thomas
a601bcef2d
Another huge refactor and lots of big fixes! Time mapping now works... mostly. The jumpy / glitchy images have been solved by copying the AVFrame into an AVPicture, which does not get clobbered on the next decode.
...
Also, added a new frame number overaly (in the top, left part of the image), and a new AddColor() method, to change the size and color of the frame's image...
Padded the end of the FFmpegWriter / WriteTrailer() method, to avoid having a codec ignore the last many frames.
2012-10-12 00:54:53 -05:00
Jonathan Thomas
0f3758bc29
Fixed a big regression where the "omp" tag was not correct. Also, restructured the encoder to be much faster, and changed "omp master" to "omp single".
2012-08-28 15:53:18 -05:00
Jonathan Thomas
ed697a9c15
Added pool of software image scalers to the FFmpegWriter / encoder, and removed OMP critical section. Also, refactored some audio and video codecs, and changed "resize" to "scale" for speed improvements.
2012-08-24 15:57:49 -05:00
Jonathan Thomas
1ec7128a09
Fixed a huge bug where the FFmpegWriter was not scaling colors to 8 bit, and that would crash on certain colors being used in an image. Also, added a new, experimental waveform visualization to the encoder.
2012-08-22 17:31:12 -05:00
Jonathan Thomas
b98b8f8968
Fixed many bugs on the multi-threaded encoder, simplified the API, and removed some memory leaks.
2012-08-20 14:26:49 -05:00
Jonathan Thomas
97b2717744
Fixed many bugs on the multi-threaded FFmpegWriter. Added audio multi-threading, and it mostly works... with a few bugs remaining.
2012-08-20 02:59:35 -05:00
Jonathan Thomas
3f2855735e
Added experimental multi-threaded features to the FFmpegWriter
2012-08-20 00:02:09 -05:00
Jonathan Thomas
d1af1b5fef
Huge refactor, switched almost all methods to using pointers for Frames, and moved some key method calls outside the critical OMP sections. Also, refactored the sws scaler, to create a pool of 32 scalers, and give each thread it's own scaler. This refactor resulted in a 40%+ increase in speed on the FFmpegReader class.
...
I also added a cmake build flag for the google perftools library, to assist on profiling performance issues.
2012-08-15 17:27:14 -05:00