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 |
|
Jonathan Thomas
|
41fe027f6d
|
Cleaned up the encoder code quite a bit, optimized lots of things, and fixed tons of memory leaks.
|
2012-08-04 01:11:12 -05:00 |
|
Jonathan Thomas
|
1f1540f7b6
|
Added initial support for AVOptions, and added video encoding support. Still needs lots of cleaning up, and custom exceptions, etc... but it's working now!
|
2012-08-03 03:23:10 -05:00 |
|
Jonathan Thomas
|
5d708ecfba
|
Fixed a small rounding bug with the audio resampling
|
2012-08-03 00:32:56 -05:00 |
|
Jonathan Thomas
|
566295d46f
|
Added some new audio sample scaling code, and fixed a huge bug with scoping the AVPacket in the correct spot, which was breaking many audio codecs... Also added a new mono audio test file.
|
2012-08-02 17:19:55 -05:00 |
|
Jonathan Thomas
|
9b28da8457
|
More audio refactoring, and resampling issues
|
2012-08-01 03:17:02 -05:00 |
|
Jonathan Thomas
|
0aac7871a3
|
Changed AudioBufferSource to only contain a pointer to a buffer, rather than contain it's own copy of the audio samples.
|
2012-07-30 10:19:35 -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
|
8387f503a6
|
Added new exceptions for invalid sample rates and channel layouts, and fixed a bug that added video streams for some formats for no good reason.
|
2012-07-27 17:44:18 -05:00 |
|
Jonathan Thomas
|
506aa19017
|
Fixed many audio encoding / resampling bugs...
|
2012-07-27 02:35:43 -05:00 |
|
Jonathan Thomas
|
0248a60e99
|
Replaced printf commands with custom exceptions, refactored the exceptions, and did some more testing.
|
2012-07-20 00:13:16 -05:00 |
|
Jonathan Thomas
|
f5bd9ed1bf
|
Added the initial encoder files, still not working though.
|
2012-07-19 15:03:55 -05:00 |
|
Jonathan Thomas
|
902b2ff8cd
|
Added the base class for the FileWriter.
|
2012-07-09 15:18:24 -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 |
|