Jonathan Thomas
|
9dbb063ded
|
Persist any error returned by JUCE during initialise() method, such as sample rate issues on Windows (when playback and recording sample rates do not match, which breaks WASAPI)
|
2019-04-04 00:55:47 -05:00 |
|
Jonathan Thomas
|
b63a63ceb2
|
Fix many bugs around FPS and video length calculation (especially for MP3 and streaming WEBM formats). Also protecting samples_per_frame calculation to keep from crashing on undetected FPS.
|
2018-09-17 00:27:30 -05:00 |
|
Jonathan Thomas
|
f4b4aac7df
|
Update Frame.cpp
Fixing merge error
|
2018-06-11 23:36:23 -07:00 |
|
Jonathan Thomas
|
805304312a
|
Merge branch 'develop' into feature/new-audio-mixing
|
2018-06-11 23:32:05 -07:00 |
|
Jonathan Thomas
|
04e4f63ea8
|
Calculate max volume of all overlapping clips, and scale clip volume to fit within the 100%, to prevent popping
|
2018-06-11 12:02:21 -07:00 |
|
Jonathan Thomas
|
1c71659e94
|
Prevent a negative starting sample when adding audio to a frame
(cherry picked from commit 0327143)
|
2018-06-06 05:14:21 -05:00 |
|
Jonathan Thomas
|
032714316d
|
Prevent a negative starting sample when adding audio to a frame
|
2018-06-06 03:56:02 -05:00 |
|
Jonathan Thomas
|
bc5607910d
|
Fixing audio pops due to resampling (this fixes a bunch of audio popping-related bugs). Now Frame objects track their own max_audio_sample_count, as we add audio data... so we have an accurate bounds on each frame.
|
2018-05-30 03:20:31 -05:00 |
|
Rich Alloway
|
5335797767
|
Do not clobber gainFactor when determining volume adjustments and add a TODO note about current_max_volume always being 0
|
2018-05-10 12:09:55 -04:00 |
|
Jonathan Thomas
|
6e99445eca
|
Fixing a bug with Frame::AddImage (convertToFormat) not actually doing anything. It returns a new image, and does not convert the format in-place.
|
2018-03-04 23:59:14 -06:00 |
|
Jonathan Thomas
|
1ec9e4426a
|
Adding in some experimental code to auto-mix audio data without overflowing (auto-ducking as it's sometimes called). This is calculated per frame, and I'm using the basic formula (S1+S2)-(S1*S2).
|
2018-03-04 04:09:29 -06:00 |
|
Jonathan Thomas
|
f2b0f3a0f4
|
Adding metadata from format, audio stream, and video streams to ReaderBase.info, which in some cases includes the 'rotate' metadata added by certain cameras, and audio metadata like title, album, artist, copyright, dates, etc... Auto-Rotates any Clip with Reader metadata 'rotate' attribute.
|
2018-02-03 01:57:18 -06:00 |
|
Jonathan Thomas
|
7b13001bf7
|
Fixing assignement and copy operators on Frame class (to prevent crashes for unintiailized image and audio pointers), and ensuring both copy and assignment operators work as expected. Also fixing the color property of Frames, which was being lost on some constructors.
|
2018-01-21 23:49:07 -06:00 |
|
Jonathan Thomas
|
6e8c78627e
|
Additional omp critical sections around adding frame images
|
2017-11-10 23:36:13 -06:00 |
|
Jonathan Thomas
|
2fcb35ddcc
|
Removing throw statements from header files (thanks Peter)
|
2017-10-26 18:44:35 -05:00 |
|
Jonathan Thomas
|
c95db460d6
|
Big update! Updating all "long int" frame number types to int64_t, so all 3 OSes will produce the same depth and precision on frame numbers. Also removing variable bitrate support temporarily, since it causes more problems than it solves.
|
2017-09-28 16:03:01 -05:00 |
|
Jonathan Thomas
|
f12ffe692b
|
Migrating tr1 to std, adding C++11 support to build scripts, fixing crash in FFmpegReader (caused by shared_ptr, buffer, and last_video_frame corruption). Much improved stability with this change. Thanks to Craig and Peter for the help!
|
2017-08-20 17:37:39 -05:00 |
|
Jonathan Thomas
|
c30dbb90d8
|
Adding additional locks when adding/changing audio data. Reducing FrameMapper to a single frame at a time (increase seek speed and decrease crashes). Fixing crash on Time keyframes where it would sometimes calculate an invalid frame number.
|
2017-07-19 16:05:07 -05:00 |
|
Jonathan Thomas
|
a322411669
|
Removing nested OMP processing from FrameMapper. Adding lock inside time mapping (to prevent crashes when speeding up/slowing down clips). Adding omp critial lock to Frame GetAudioChannelsCount() and GetAudioSamplesCount() methods.
|
2017-06-22 15:26:40 -05:00 |
|
Jonathan Thomas
|
85ac4bf6d2
|
Updating references to frame number / position to long int, there were still quite a few old "int" declarations, which limits the length of frame number. Also, updated precision of KeyFrames to use double (instead of float) for higher precision, which fixed lots of issues with very long videos (since our FrameMapper used a KeyFrame object to create a map to new frames)
|
2017-01-24 18:39:17 -06:00 |
|
Jonathan Thomas
|
c53c9364f3
|
Added new CacheDisk class, which caches frames to the hard drive, dramatically speeding up preview speeds, at the expense of IO operations. New unittests for caching framework. Fixed a few bugs with Frame constructor, which was causing invalid # width & height. Integrated JSON into the cache framework, to quickly share the state of the cache (including ranges of cached frame numbers). Fixed a bug where some Timeline frames could have no audio samples.
|
2016-09-07 00:40:01 -05:00 |
|
Jonathan Thomas
|
734dc5b32f
|
Fixing a crash on Windows by using a different overload of AddImage that doesn't do a memcpy. There is still a memory leak on the FFmpegWriter somewhere, which eventually starts to return NULL from av_malloc, and breaks on Windows (and probably other OSes too).
|
2016-07-30 16:57:48 -05:00 |
|
Jonathan Thomas
|
9839899a60
|
Big memory leak fixes in FFmpegReader and FrameMapper, and fixed logic in Frame Mapper with regards to special framerate conversions (24, 25, and 30)... which were causing some inadvertent audio drift.
|
2016-07-27 13:18:55 -05:00 |
|
Jonathan Thomas
|
92a9db2aa3
|
Improved detection of missing audio frames, and missing video frames. Also improved logic for giving up on missing frames in general. Also removed some deadlocks related to Seeking (Close() and Open() were deadlocking). The end result is much improved compatability with reading video files.
|
2016-06-29 02:42:00 -05:00 |
|
Jonathan Thomas
|
37f1894300
|
Fixed a race condition in video playback thread! Also, added new method to get the average magnitude of a range of audio samples.
|
2016-04-22 02:43:06 -05:00 |
|