Brenno
5eb9f60eea
Added support to update the detected bounding-boxes keyframes
...
Added support to show transform handlers for the bounding-boxes (Tracked Objects) detected by the Object Detection effect and update their Keyframes.
2021-01-22 19:47:36 -03:00
Brenno
32a217eda7
Added support to attach clip to detected object (ObjectDetection) effect
...
This feature let's the user attach a clip to an object detected by the Object Detection effect, in the same way it is done with the Tracker Effect.
2021-01-22 19:28:16 -03:00
Brenno
cb61f914f7
Tracker effect and export video fixes
...
Fixed bug that made Openshot crash if two or more Tracker effects were added to the same video.
Fixed bug that made the clips to be incorrectly attached to tracked objects in the exported video.
2021-01-18 15:30:11 -03:00
Brenno
b08e65f24f
Tracked object bounding box transform handler fix
...
Fixed bug that caused the tracked object bounding box to be incorrectly updated when the user interacted with it's transform handler.
2021-01-18 15:17:10 -03:00
Brenno
a5feadce1e
Changed KeyframeBBox to TrackedObjectBBox and added TrackedObjectBase
...
Added new base class TrackedObjectBase, changed class KeyframeBBox to TrackedObjectBBox and changes it's inheritance from KeyframeBase to TrackedObjectBase.
2021-01-18 14:52:01 -03:00
Brenno
61accdfe95
Merge branch 'opencv' into keyframe-refactor
2021-01-14 15:00:04 -03:00
Frank Dana
6009a26e4c
Eliminate TooManySeeks exception ( #611 )
...
Since commit bfa050409c (2015-08-24),
there is no code in libopenshot which ever throws TooManySeeks.
- Removed catch() statements for TooManySeeks from multiple functions
- Removed the exception from Exceptions.h
- in Qt/AudioPlaybackThread.h:
- Removed the "SafeTimeSliceThread" class definition, as it only
existed to catch TooManySeeks.
- Replaced SafeTimeSliceThread with a standard juce::TimeSliceThread
2021-01-01 05:24:48 -05:00
Jonathan Thomas
f5d6ee22e7
Reverting 'clear the cache when the user seeks' experiment. It was a failed experiement, not to mention that it destroys performance on the "Transform" tool.
2020-12-31 18:09:39 -06:00
Brenno
b579ea6499
Added functionality to link a clip to a tracked object (Animations)
...
- Added KeyframeBase class
- Adjusted the inheritance of KeyframeBase to KeyframeBBox and Keyframe
- Added feature to attach clip to bounding box
- Added support to select tracked object with a dropdown list and removed keyframebbox downcasting
2020-12-22 21:32:36 -03:00
Jonathan Thomas
ac73bd965d
Fixing an issue caused by timeline::GetClip returning a ClipBase instead of a Clip (broke waveform generation).
...
Also adding a swig definition for the Caption effect.
2020-12-03 10:52:27 -06:00
Jonathan Thomas
172348417c
Improvement to video caching thread, to recover from the separation of cache vs display frame #. Also found a mutex that was needed, to prevent crashing when the video thread calls timeline::GetFrame at certain times... colliding with another thread (and independent of OpenMP).
2020-10-23 17:52:20 -05:00
Jonathan Thomas
e556d0fded
Added 2 new unit tests for Clip's with a Timeline associated with them, and FFmpegReaders with a Clip/Timeline associated with them.
2020-10-23 01:35:46 -05:00
FeRD (Frank Dana)
a1e44edad4
Merge branch 'develop' into clip-refactor-keyframes
2020-10-19 16:28:49 -04:00
Jonathan Thomas
d2521bcbff
Fixing some additional cpp_test complaints
2020-10-19 16:22:27 -04:00
Jonathan Thomas
ab4916247b
Replacing audio fix implementation with ParentClip(), to access clip start and position (if any)
2020-10-19 16:05:01 -04:00
Brenno
a4109419ac
Implemented position remapper inside FrameMapper to fix audio noise when exporting to different fps
...
The FrameMapper class now receives the updated clip position and returns the correct amount of samples for a given frame number
2020-10-19 16:05:01 -04:00
Jonathan Thomas
b3ad76ddf7
Fixing some regressions on image merging
2020-10-19 16:05:01 -04:00
Jonathan Thomas
8387b124ad
Large refactor of Timeline, TimelineBase, ClipBase, and Clip, to allow a Clip access to the parent timeline instance (if available), and thus, certain properties (preview size, timeline FPS, etc...). This allows for a simpler rendering of Clip keyframes (during the Clip::GetFrame method), and a simpler Timeline class, that can change the preview window size dynamically and no longer requires a Singleton Settings class.
...
- Also removed "crop" from Clip class, as it was never implmeneted correctly, and we have a fully functional "crop" effect when needed
- Added caching to Clip class, to optimize previewing of cached frames (much faster than previous)
2020-10-19 16:05:01 -04:00
Jonathan Thomas
6da4e8fded
Fixed a bug with cropping logic on Clip (disabled it temporarily). I need to replace the Crop functionality with a more robust cropping tool. Also, updated Timeline to use the MaxWidth/MaxHeight settings when calling the clip (since those are set when the screen is resized).
2020-10-19 15:46:43 -04:00
Jonathan Thomas
eb328f1190
Refactored the Settings::Instance()->MAX_WIDTH and Settings::Instance()->MAX_HEIGHT out of the Cilp class. GetFrame() now has an overload which specifies the width, height, and samples needed. Otherwise, it returns the Clip image based on the source reader (width, height, num samples).
2020-10-19 15:46:42 -04:00
Jonathan Thomas
000c9d6d4c
- Refactoring all Timeline drawing code into the Clip class
...
- Making Clip a proper Reader (so it can be used directly, instead of a Timeline)
2020-10-19 15:45:37 -04:00
FeRD (Frank Dana)
aa40ea29e0
Update include paths in all source/header files
2020-10-18 07:43:37 -04:00
Jonathan Thomas
ef80439b62
Merge pull request #530 from ferdnyc/omp-and-ffmpeg-classes
...
Move off deprecated OpenMP API, fix FFmpeg code paths
2020-10-16 14:45:20 -05:00
Frank Dana
20c75ff227
Const temporary variable
2020-09-10 18:39:24 -04:00
FeRD (Frank Dana)
41af336d11
Add GetMaxTime
2020-09-02 01:04:29 -04:00