Jonathan Thomas
|
9d31e9cf4f
|
Added some functionality to the timeline GetFrame() method, and build a way to update the list of opened clips, to manage which files are open and closed, etc...
|
2012-10-09 02:09:44 -05:00 |
|
Jonathan Thomas
|
1d89fd140a
|
A big refactor of the Open() method on Readers, and the constructor of Readers. All resource consuming code has been moved into the Open() methods, so the Clips and Timeline can control them better.
|
2012-10-09 01:45:34 -05:00 |
|
Jonathan Thomas
|
87d12254ef
|
Added Open() to the reader base class, so all readers need to have that method now. This is to allow the timeline to better control Clips and Readers.
|
2012-10-08 16:22:18 -05:00 |
|
Jonathan Thomas
|
8518071890
|
Protected the Open() and Close() methods better, so the FFmpegReader will not crash. Also, made the Open() method public, so the Timeline and Clip classes can control the reader better.
|
2012-10-08 15:02:52 -05:00 |
|
Jonathan Thomas
|
6d790d2670
|
Overloaded Clip comparison operators, to use the Position() of clips for sorthing routines. Also, added the AddClip method, to add clips to a timeline (and sort them by position).
|
2012-10-05 17:05:33 -05:00 |
|
Jonathan Thomas
|
a417fef1fd
|
Made the Timeline class inherit from FileReaderBase, which means the Timeline is really just a fancy ready class now. Also, added new unit tests for the Clip and Timeline classes.
|
2012-10-05 01:58:27 -05:00 |
|
Jonathan Thomas
|
d8fe0ddfb8
|
Improved the logic to decide which reader to use. ImageReader sometimes hangs when passed "mp4" video files, so we now check for common movie extensions first.
|
2012-10-04 18:02:46 -05:00 |
|
Jonathan Thomas
|
93a356c171
|
Renamed some enumerations, and added in framerate mapping into the clip object.
|
2012-10-04 16:07:58 -05:00 |
|
Jonathan Thomas
|
4bd6db527e
|
Renamed some of the basic clip property getters and setters, and added some simpler ways to get the value of and add points to a key frame.
|
2012-10-04 15:07:29 -05:00 |
|
Jonathan Thomas
|
2266a4ab7a
|
Improved Clip class, and worked on constructors, file readers (image and ffmpeg), and more curves (shear, perspective, and crop)
|
2012-10-04 01:34:45 -05:00 |
|
Jonathan Thomas
|
e96bd5ba98
|
Added the initial timeline and clip classes, with some of the initial curves and constructors.
|
2012-10-03 01:55:24 -05:00 |
|
Jonathan Thomas
|
63529bd158
|
Added a new experimental overlay method to a frame, which composites images from multiple frames, and adds the result to the bottom right side of the image.
|
2012-08-29 16:07:47 -05:00 |
|
Jonathan Thomas
|
b3cf902f22
|
Added a new ImageReader class, which uses ImageMagick++ to read image files, and produce openshot::Frame objects.
|
2012-08-29 15:29:15 -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 |
|
Jonathan Thomas
|
be802dafb0
|
Added experimental AddEffect method to the frame object, to apply image effects
|
2012-08-11 21:13:05 -05:00 |
|
Jonathan Thomas
|
1bbfa060cf
|
Fixed a huge regression with PTS, that caused all sorts of issues with encoded videos, especially webm.
|
2012-08-11 20:28:05 -05:00 |
|
Jonathan Thomas
|
1b1b84dde8
|
Added 2 additional options for SetOption, and split the preparing of streams and the writing header into separate methods.
|
2012-08-11 03:19:52 -05:00 |
|
Jonathan Thomas
|
72d6553f75
|
Added the ability to specify the image type and scale of any frame when calling the Save() method on a frame. This makes it easy to save any frame as any image type at any size image... very useful indeed.
|
2012-08-05 16:43:09 -05:00 |
|
Jonathan Thomas
|
67dba0cd67
|
Fixed the audio resampling by adding a new class called AudioResampler, which maintains state between calls to the JUCE resampler. Maintaining state allows JUCE to remove the discontinuities between the frames, and removes all the pops and crackles.
This is a major commit, and changes many things, including build scripts, new classes, and how the encoder works.
|
2012-08-05 15:17:37 -05:00 |
|