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
|
27d2cf629d
|
Added a minimum # of packets to read in the FFmpegReader, which really helps utilize the multiple threads... and improved performance by 27% overall.
|
2012-08-24 17:03:23 -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
|
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
|
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
|
9b6d4dc4a1
|
Added some additional "duration" checks, to fix bugs with reading webm files.
|
2012-08-12 02:14:15 -05:00 |
|
Jonathan Thomas
|
efb38cc9d8
|
Added in JUCE audio resampling, and have lots of resampling debug code still in place.
|
2012-07-30 02:37:19 -05:00 |
|
Jonathan Thomas
|
1e5cffd6db
|
Added the initial API of the FFmpegWriter class, and tweaked the build scripts and reader class.
|
2012-07-12 15:55:41 -05:00 |
|
Jonathan Thomas
|
0c2008461a
|
Fixed seek method to fallback on both streams, if one stream fails to seek. This fixes MP3s... which have a video stream, but only a single video packet. Also fixed the CheckWorkingFrames method to better determine when a frame is completed.
|
2012-07-09 00:41:17 -05:00 |
|
Jonathan Thomas
|
dfae7825ca
|
Refactored FFmpegReader code a bit, fixed many, many memory leaks, and many valgrind errors. Now the memory seems very stable, and the seeking and stream walking seems very solid.
|
2012-07-08 23:26:44 -05:00 |
|
Jonathan Thomas
|
8067cb657a
|
Fixed a bug when seeking, and not reseting the cache's current frame. Removed some debug code.
|
2012-07-07 00:58:05 -05:00 |
|
Jonathan Thomas
|
e9c243ddeb
|
Audio optimizations and some debug code for seeking
|
2012-07-06 16:52:13 -05:00 |
|
Jonathan Thomas
|
21aa4d6b01
|
Replaced last_video_frame and last_audio_frame with a single last_frame variable, and refactored some related code. This fixes a big audio seeking bug.
|
2012-07-06 15:17:57 -05:00 |
|
Jonathan Thomas
|
457df5b2ff
|
Changed the method of determining if a frame is completed or not.
|
2012-07-06 02:34:18 -05:00 |
|
Jonathan Thomas
|
e610d343f4
|
Added some debug messages about when a frame is "complete"
|
2012-07-05 02:29:43 -05:00 |
|
Jonathan Thomas
|
25b3d70a9a
|
Refactored the cache class to only apply the max frames against "previous" frames, and allow unlimited number of future frames, to account for different types of files (some which have hundreds of tiny frames, which need large future cache).
|
2012-07-05 00:01:42 -05:00 |
|
Jonathan Thomas
|
53e16efd63
|
Fixed a small audio buffer issue, and removed more debug code.
|
2012-07-04 04:01:59 -05:00 |
|
Jonathan Thomas
|
34a07b8d82
|
All known memory leaks are now fixed, and the memory seems to hold steady when looping through frames for many many minutes at a time. Fixed a bug with av_free_packet, which was breaking after an audio decode. Removed lots of debug statements.
|
2012-07-04 03:07:26 -05:00 |
|
Jonathan Thomas
|
e8d9dba8ce
|
Started adding clean up code, to reduce memory footprint
|
2012-07-03 16:58:07 -05:00 |
|
Jonathan Thomas
|
6553f49874
|
Made CheckSeek() threadsafe
|
2012-07-03 02:59:38 -05:00 |
|
Jonathan Thomas
|
a662abcfd7
|
Fixed many bugs, including an audio crackle between packets, and fixed many multi-threading issues.
|
2012-07-03 02:42:47 -05:00 |
|
Jonathan Thomas
|
eea7b0c076
|
Protected audio decoding in a omp_critical, and removed some debug code
|
2012-07-02 17:25:07 -05:00 |
|
Jonathan Thomas
|
ed6b50709d
|
More OpenMP debug code
|
2012-07-02 01:25:32 -05:00 |
|