Commit Graph

39 Commits

Author SHA1 Message Date
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
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
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
7125b26357 checking stuff in. 2012-07-24 12:50:17 -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
cac43bdc17 Added the ability to include either audio or video streams (or both), and refactored a bit. 2012-07-19 17:10:40 -05:00
Jonathan Thomas
f5bd9ed1bf Added the initial encoder files, still not working though. 2012-07-19 15:03:55 -05:00
Jonathan Thomas
461212c4b2 Fixed doxygen param bug, and updated project plan progress 2012-07-13 16:56:39 -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
902b2ff8cd Added the base class for the FileWriter. 2012-07-09 15:18:24 -05:00
Jonathan Thomas
0e233be34e Added new unit tests for FFmpegReader, which tests actual pixel color values against a test video on 2 different frames. Also, made Seek() method private. 2012-07-09 01:44:36 -05:00
Jonathan Thomas
3b46aad2ef Added some new methods to access audio data: channels, samples, etc... Also, added initial unit tests for the FFmpegReader class, including waveform checking against an actual audio file. 2012-07-09 01:22:11 -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
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
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
e8d9dba8ce Started adding clean up code, to reduce memory footprint 2012-07-03 16:58:07 -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
fde25cec5a Lots of experimental changes with the FFmpegReader, and caching of packets. 2012-07-02 00:51:10 -05:00
Jonathan Thomas
815204d235 1) Successfully got OpenMP working with the video processing method.
2) Added new "processing" flag, to help determine if a frame is being worked on in a thread
3) Added a new cache Display() method, for debugging reasons
2012-07-01 01:43:06 -05:00