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
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
Jonathan Thomas
311c04de23
Another openmp tweak
2012-06-29 02:32:19 -05:00
Jonathan Thomas
40680f7201
Fixed a few openmp bugs in the FFmpegReader, but there are still many issues
2012-06-29 02:02:12 -05:00
Jonathan Thomas
62df1bc7ac
openmp changes
2012-06-18 09:26:14 -05:00
Jonathan Thomas
b775fff325
Got ffmpeg and juce compiling and mostly everything working again. FFmpeg is the newest version, and so is JUCE.
2012-06-16 02:12:48 -05:00
Jonathan Thomas
063c1481bd
Fixed a bug calculating # of samples per frame, to use FPS instead of video time base.
2012-02-26 17:22:24 -06:00
Jonathan Thomas
eae0c0bbfb
FIxed a bug related to the CheckFPS method, if a video is too short to use this method, it needed to exit the function, and seek back to frame 1.
2012-02-26 16:45:50 -06:00
Jonathan Thomas
403c7e512e
Fixed 2 bugs related to audio samples. Each frame can now determine it's own # of samples, due to some sample rates not being divisible evenly into some frame rates. Also, a bug was fixed that injected a bad sample into a frame's samples, when a frame received samples from multiple audio packets.
2012-02-26 16:40:53 -06:00
Jonathan Thomas
ba0245ac82
fixed a bug where resampled audio was not completly copied into the audio buffer.
2011-12-21 16:49:33 -06:00
Jonathan Thomas
da289f93bf
Fixed a bug where audio was not being resampled to the correct sample format. Also fixed a bug where the audio buffer was not being incremented correctly, and it was duplicating audio samples. There are still a few audio bugs, but it's mostly working now.
2011-12-18 02:29:34 -06:00
Jonathan Thomas
b4c7a6ce81
Removed some invalid code to handle interlaced frames. Improved the CheckFPS() algorithm to check for 1/2 the detected frame rate first, and then fallback to the "average frame rate".
2011-12-17 16:16:59 -06:00
Jonathan Thomas
f00c4206be
Added a method to get the average # of frames over the initial 5 seconds of video, and adjust an invalid framerate, which sometimes FFmpeg detects. Also, a Reader only initializes it's default values 1 time, and only checks frame rate 1 time, regardless of how many times your Open() and Close() the reader.
2011-12-15 16:11:48 -06:00
Jonathan Thomas
ade29c7d68
Fixed tons of issues related to video timebase being different than the video framerate. Also, added new properties for interlaced video, correctly detect pixel ratio, and fixed Display() to adjust for pixel ratio. Also added sample_rate to a frame, so it can playback audio at the correct rate. Refactored FFmpegReader to make most methods private, and only expose the important methods publicly.
2011-12-11 20:42:50 -06:00
Jonathan Thomas
e911c8cc00
Adjusting the FFmpegReader to correctly handle video timebase's that are different than the inverse framerate.
2011-11-07 17:12:25 -06:00
Jonathan Thomas
dccc014941
Fixed a bug with seeking the audio stream, to avoid missing samples on the first 2 frames returned.
2011-10-27 15:37:20 -05:00
Jonathan Thomas
bfc05d507d
Fixed bug on Image processing, with no video or audio present. Play() and DisplayWaveform() methods now handle not having any audio samples.
2011-10-27 11:27:44 -05:00
Jonathan Thomas
28b9fbabd1
Fixed some bugs related to audio only files. Now audio only files are correctly divided into frames (30 fps), and seek correctly.
2011-10-27 09:40:03 -05:00
Jonathan Thomas
26083f27b7
Fixed a rounding error on mapping audio samples to frames. Also adjusted the sample rate on the frame.Play() method to 48khz.
2011-10-26 14:34:14 -05:00
Jonathan Thomas
e4f95d8a99
Reworked the cache object to use a double sided queue, so I can iterate through it to find the smallest frame, and remove specific frames from the cache. Also, fixed some additional audio bugs, and I finally have the audio being correctly distributed between frame objects.
2011-10-26 00:34:48 -05:00