Jonathan Thomas
|
cebf9728c8
|
Refactored seek method a bit in the FFmpegReader, to fix some bugs. Also, being changing the cache object again, on how it cleans up pointers. Some debug code is checked in also.
|
2012-10-10 17:27:46 -05:00 |
|
Jonathan Thomas
|
b7792b04d8
|
Added new method to adjust the min value of a valid frame number, added a new unlimited cache option, and fixed a bug which was preventing the timeline from calling GetFrame correctly. Now timelines, clips, and readers are working together nicely.
|
2012-10-10 15:21:33 -05:00 |
|
Jonathan Thomas
|
9966f3571d
|
Fixed a regression with the FFmpegReader, to always get frame 1 first, to calucate the PTS offsets, etc... Also, fixed a bug on the timeline, and now i'm 1 step closer to having it all work. =)
|
2012-10-10 14:49:33 -05:00 |
|
Jonathan Thomas
|
004e76adbb
|
Added an example, trying write a timeline to the FFmpegWriter. Not quite working yet though.
|
2012-10-10 02:49:34 -05:00 |
|
Jonathan Thomas
|
780a702f5d
|
Added a Rotate() method to a Frame object. Added new methods on a clip to translate frame numbers (FrameMapper and Time Curves). Now, the Timeline, Clip, and Readers are all working with animation curves. Pretty cool!
|
2012-10-10 02:36:53 -05:00 |
|
Jonathan Thomas
|
314b57d106
|
Improved Timeline sort code to use both Position() and Layer().
|
2012-10-10 01:58:13 -05:00 |
|
Jonathan Thomas
|
9d01dd7900
|
Implemented the Close() method, so it closes all clips' readers on the timeline
|
2012-10-10 00:52:47 -05:00 |
|
Jonathan Thomas
|
d840297572
|
Refactored constructor() methods on readers again, to call Open() and then Close() methods automatically, to populate the info struct. And moved the GetFrame() call out of the Open() method, because it was unneeded and slowed down the Open() method.
|
2012-10-09 10:41:07 -05:00 |
|
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
|
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
|
a23e32874e
|
Tweaked the number of FFmpeg threads, to optimize codec performance.
|
2012-08-31 15:19:17 -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
|
8831dd0c49
|
Enabled multi-threading decoding and encoding with libavcodec, setting the thread_count property. This make a huge improvement in CPU performance, for codecs that support this property.
|
2012-08-28 22:53:12 -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
|
c564a15ced
|
Improved the multi-threaded code, by requiring a minimum of 8 frames to be processed by the reader.
|
2012-08-26 02:44:05 -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
|
b4873d566f
|
Refactored to allocate less memory when not resampling audio during encoding
|
2012-08-21 21:51:00 -05:00 |
|
Jonathan Thomas
|
927f320702
|
Additional testing changes
|
2012-08-21 16:12:37 -05:00 |
|
Jonathan Thomas
|
87db694fcf
|
Moved audio decoding outside of OMP task, and fixed all audio pops and crackles!
|
2012-08-21 15:31:52 -05:00 |
|
Jonathan Thomas
|
0e235b0efb
|
Refactored some of the FFmpegReader audio class, trying to locate the pops and cracks in the audio.
|
2012-08-21 02:12:35 -05:00 |
|