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 |
|
Jonathan Thomas
|
2b5d317123
|
Fixed a multi-threaded encoding bug with audio-only files.
|
2012-08-20 22:23:31 -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
|
7cb17bdb5f
|
Some profiling changes to test encoder performance
|
2012-08-16 00:53:46 -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
|
9b6d4dc4a1
|
Added some additional "duration" checks, to fix bugs with reading webm files.
|
2012-08-12 02:14:15 -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
|
7eeb8f7c80
|
Added a few new options
|
2012-08-11 03:39:00 -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
|
191d905299
|
Improved SetOption to recognize a few codecContext variables as well (such as g, qmin, and qmax)
|
2012-08-11 02:59:03 -05:00 |
|
Jonathan Thomas
|
d380292210
|
Removed unneeded rescaling, since the codec and stream always have the same frame rate
|
2012-08-06 20:13:01 -05:00 |
|
Jonathan Thomas
|
74d30cf7ee
|
Fixed cmake files to install headers and binary library file
|
2012-08-06 16:33:31 -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 |
|