Commit Graph

2004 Commits

Author SHA1 Message Date
Jonathan Thomas
22cd56331f Removing SkipEmptyParts from modified ObjectDetection.cpp code (old QT build server doesn't have this) 2025-06-17 19:06:48 -05:00
Jonathan Thomas
055975a212 Improving Tracker and Object Detector to include effect ID in the tracked Object IDs they return - to allow for multiple effects on the same clip, and to not accidentally clobber trackedObject IDs (i.e. "0" as the default tracked object ID) 2025-06-17 18:27:52 -05:00
Jonathan Thomas
515c4ff509 Improving Tracker effect to better track occluded objects, follow objects offscreen and back onscreen without getting lost, and improved unit tests. 2025-06-15 16:01:17 -05:00
Jonathan Thomas
c6720bb59b Lowering version required for libopenshot-audio, since technically it's fine to link against the previous library. 2025-06-12 17:34:36 -05:00
Jonathan Thomas
f60d6659e1 Bumping version to 0.5.0, SO 28, this is a major new release of libopenshot. 2025-06-12 17:30:17 -05:00
Jonathan Thomas
0d492ec77f Removing Play/Stop implementation from VideoCacheThread. Adding back in a ClearAllCache in Seek(), to handle updates via the UI correctly. 2025-06-07 16:05:19 -05:00
Jonathan Thomas
805af0dffc Fix Timeline::ApplyJsonDiff to make changes to our data first, and then clear cache afterwards (potential race condition) 2025-06-07 16:03:55 -05:00
Jonathan Thomas
0fcdcdb326 Removing debug code 2025-06-06 16:11:18 -05:00
Jonathan Thomas
7ee4643a60 Splitting FF_NUM_PROCESSORS into a VIDEO and AUDIO constant. Also limiting VIDEO encoders to 16 threads and audio encoders to 2 threads. 2025-06-06 15:28:28 -05:00
Jonathan Thomas
57a0bae9ac Refactor of Settings to no longer duplicate them in the *.h and Instance() method. Also changing FF_THREADS and OMP_THREADS to use # of processors on device. 2025-06-06 15:26:40 -05:00
Jonathan Thomas
a6ca7d9a2f Adding back Setting::VIDEO_CACHE_MAX_FRAMES, to limit the video cache thread to a hard #. Also, minor refactor to reduce duplication of capacity. 2025-06-06 15:25:46 -05:00
Jonathan Thomas
5e4bc364cb Remove per-thread scalers; use single persistent frames and SwsContext for video scaling. Total improvement of 8-9% when testing h.264 encoding @ 720p. 2025-06-05 19:38:15 -05:00
Jonathan Thomas
60fbb7fe5e Fix incorrect _MSC_VER and replace with _WIN32 2025-06-04 22:42:34 -05:00
Jonathan Thomas
38afcea242 Use aligned memory free for QImage / frame buffer (fix crash on Win32 running unit tests for FFmpegReader) 2025-06-04 21:29:31 -05:00
Jonathan Thomas
b2333ab389 Refactoring aligned malloc to work on Mac, Windows, and Linux (inside FFmpegUtilities.h) 2025-06-04 20:45:19 -05:00
Jonathan Thomas
c487aa4389 Fixing the alignment of our FFmpegReader video buffers to be 32 / AVX2. This increases performance by a factor of 3X. 2025-06-04 18:37:46 -05:00
Jonathan Thomas
c95fd837b6 Small improvement to caching sws scale context and reusing AVFrame objects. About 1.5% less CPU calls, and more even memory allocations (less spikey). 2025-06-04 17:18:23 -05:00
Jonathan Thomas
9a4dcf252a Merge pull request #1013 from OpenShot/caching-improvements
Caching Improvements (Forward & Backwards, Play & Pause)
2025-06-03 23:20:10 -05:00
Jonathan Thomas
6c39b0f8e5 Another large refactor of our primary cache thread, to split out many functions which we can test in our unit tests. 2025-06-03 19:36:05 -05:00
Jonathan Thomas
fd91892fea More tweaks to keep the cache window centered on the playhead, so different speeds (- and +) still result in moving cache window. 2025-06-03 17:49:56 -05:00
Jonathan Thomas
ec81c1d1cd Simplification and another small refactor of Run code (to make it more maintainable) 2025-06-03 16:46:04 -05:00
Jonathan Thomas
6d5e55175b Huge refactor of VideoCacheThread, to provide better caching, fixing many edge cases that cause our cache to become unsynced with playback. This is still a work-in-progress though.. 2025-06-03 16:23:17 -05:00
Jonathan Thomas
06ddfc1320 Add virtual Touch() function to CacheBase, and rename MoveToFront in CacheMemory.cpp and CacheDisk.cpp to Touch. 2025-06-03 09:24:16 -05:00
Jonathan Thomas
7f130cb65c Improving performance of Mask effect (transitions) using OMP + reducing floating point operations per pixel and caching variables 2025-06-02 16:09:30 -05:00
Jonathan Thomas
3e2dc8a3f8 Fix crash on deinterlace effect, and add in omp performance improvements. Also fixed issue with isOdd being accidentally read-only 2025-06-02 15:50:53 -05:00