Commit Graph

13 Commits

Author SHA1 Message Date
Jonathan Thomas
f3c4504662 Improve benchmark regression caused by aggressive memory trimming, and caches that were too small. A new debounce strategy for memory trimming (1 time max per 30 seconds). 2026-02-06 23:11:00 -06:00
Jonathan Thomas
7fdd145dc2 Adding new memory trimming to more forcefully return memory to the OS after major memory clearing events (i.e. clearing all cache, closing readers, or large amounts of cache cleared). Also, refactoring default cache sizes in Timeline, FrameMapper, and FFmpegReader to better support high frame rate and high resolution videos (i.e. 4k 60 fps) so we don't immediately run out of memory. 2025-12-14 23:53:36 -06: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
8a3e2eb2d0 Refactor of cache code, and fixed a crash generating Json from an empty cache object. 2022-09-15 18:29:43 -05:00
Jonathan Thomas
9202d94ee6 Fixing whitespace issues (converting spaces back to tabs... for now) 2022-07-21 15:00:08 -05:00
Jonathan Thomas
d243db8aaa Adding new GetFrames method to CacheBase, to return an ordered vector of Frame objects. Useful when needing to iterate through the current cached frames. 2022-06-25 17:32:36 -05:00
Jonathan Thomas
a5f35fb42a Refactoring the VideoCacheThread to check every frame before requesting it. Adding a new method: Contains() to our cache objects, to facilitate this. Removing cache clearning experimental code from Timeline (causing playback issues). Refactoring PrivatePlayer playback timing code, to calculate an average # of frame difference between audio and video threads, and slowly adjust back towards zero when needed. 2022-01-14 15:16:04 -06:00
Jonathan Thomas
f81f620c2a Merge pull request #732 from ferdnyc/crop-qpainter
Rewrite Crop effect using QPainter
2021-10-29 13:17:38 -05:00
Frank Dana
59138ea3e4 Adopt license management via Reuse project/tool (#711)
* reuse-managed license/copyright headers

reuse is a tool for compliance with the REUSE recommendations. See
<https://reuse.software/> for more information, and
<https://reuse.readthedocs.io/> for the online documentation.

* Set jsoncpp license
* Add MIT license for Decklink sources
* Explicitly license examples/
  - Add headers to source files
  - Change blanket licensing in .reuse/dep5 to only cover binary media
  - Import CC-BY-3.0 license and assign to sintel_trailer
2021-10-16 01:26:26 -04:00
FeRD (Frank Dana)
42e7049e6d Cleanup includes to reflect actual dependencies 2021-09-18 08:37:22 -04:00
FeRD (Frank Dana)
8278496042 Headers: Fix doc comments
KalmanTracker: Convert comment to doc comment
2021-03-07 12:43:15 -05:00
FeRD (Frank Dana)
2f3615f706 Move Exceptions.h includes to .cpp files 2021-01-26 10:52:04 -05:00
FeRD (Frank Dana)
a6441d822d Reorganize source tree (headers in src/)
- src/bindings/ moves to /bindings/
- src/examples/ moves to /examples/
- Contents of include/ merged into src/ with same hierarchy
- src/Qt/demo/ moves to examples/qt-demo/
2020-10-18 05:05:29 -04:00