Commit Graph
582 Commits
Author SHA1 Message Date
itsmattkc 9be014c0b6 refactored so sequence is again a derivative of viewer 2021-04-05 14:41:59 +10:00
Thomas Wilshaw f99600ed40 openglrender: Add attributeLocation check
Sometimes when the default fragment shader is used a_texcoord is
optimised out
which can cause GL errors. Also adds the same check for a_position
preemptively
2021-03-27 01:50:17 +00:00
itsmattkc ce80fccd80 cache: include single frame tasks as video tasks 2021-03-26 10:28:58 +11:00
itsmattkc 3c2da0a966 cache: fixed race condition 2021-03-25 23:05:55 +11:00
itsmattkc 9b49bea096 cache: improved queue performance and stability 2021-03-25 16:57:15 +11:00
itsmattkc 5d74ee66b5 Revert "previewautocacher: ensure queues are actually cleared"
This reverts commit ae4dbd9919.
2021-03-25 15:44:47 +11:00
itsmattkc ae4dbd9919 previewautocacher: ensure queues are actually cleared 2021-03-23 08:34:21 +11:00
itsmattkc 57b8193427 playbackcache: added note for later 2021-03-19 18:11:17 +11:00
itsmattkc 40abdcc605 audioplaybackcache: fixed segmentation bug 2021-03-19 18:10:58 +11:00
itsmattkc 1b5426d786 audioplaybackcache: improve comments/documentation 2021-03-19 17:09:45 +11:00
itsmattkc 6b2e788680 audioparams: use ceil converting time to samples
Appears to solve audio cache issue, but I'm not 100% sure if
this is mathematically correct.
2021-03-19 17:06:34 +11:00
itsmattkc fb410e7c96 use vectors for sample buffers rather than raw ptr arrays 2021-03-17 11:54:14 +11:00
itsmattkc 3ac1503a32 diskmanager: ensure file is deleted and ignore accesses from non-existent hashes 2021-03-08 15:37:29 +11:00
itsmattkc 8ef608c246 sped up disk cache accesses
Shifted some code around to improve performance
2021-03-08 11:26:03 +11:00
itsmattkc 605a593f90 fixed segfault caused by removing nodes 2021-03-01 13:26:23 +11:00
itsmattkc cfbf563b2e ensure cache modified time is accurate 2021-02-22 00:23:34 +11:00
itsmattkc 816beed08b fix double free in auto cacher 2021-02-21 10:35:02 +11:00
itsmattkc 17474b2f71 fix some compilation issues on various platforms 2021-02-21 09:35:14 +11:00
itsmattkc f4df6a7918 ensure cleanup on autocache upon destruction
Fixes double free.
2021-02-20 23:08:11 +11:00
itsmattkc b21271534f added UI for editing video parameters in nodes 2021-02-20 13:27:56 +11:00
itsmattkc cc9747ede4 moved ColorManager to a node
Reduces code by reusing the existing node infrastructure. Also
helps prevent race conditions since the node/render system is
designed for multithreading.
2021-02-18 14:33:08 +11:00
itsmattkc 4827782331 moved sequence params into node graph too
Reduces code by reusing more of the existing node infrastructure
to synchronize sequence parameters the render backend.
2021-02-18 13:20:23 +11:00
itsmattkc d7c5ac4b44 implement entire project in nodes
Project items are now represented directly in nodes opening up more versatility and possibilities. This is the first iteration of this and will be buggy. Need to test thoroughly.
2021-02-15 21:31:57 +11:00
itsmattkc 81c1922911 use strings to connect nodes
This makes the node system somewhat more high-level with the intent of making
working with them far more flexible and stable. By making the architecture more
abstracted, it becomes far less rigid which should allow us to do even more
with it and make it much less crash prone.
2021-02-09 15:48:37 +11:00
itsmattkc 96c0921193 use std::map instead of QMap for the node connections
std::map gives us a reverse iterator which we need. QMap doesn't seem to.
2021-01-15 14:34:36 +11:00
itsmattkc b83677e319 moved input signals to graph to prevent signal desyncs 2021-01-14 10:32:42 +11:00
itsmattkc f7883bd02c began some rewrites to timeline drawing 2021-01-14 10:30:20 +11:00
itsmattkc 8f729203fc some timeline refactoring, preparing for rewrites 2021-01-09 11:41:33 +11:00
itsmattkc 3337be07e5 use QVector instead of QList for block cache 2021-01-09 10:41:13 +11:00
itsmattkc 181235f6ce began new infrastructure
Yep, this is another one of my "famous" sweeping rewrites. Expect things to break.

Goals for this are:
- Greatly simplify node connections (particularly with arrays) so the code requires less maintenance/is more stable
- Redesign node structure to address issues where UI would stall for lengthy periods of time
- Less reliance on shared ptrs/greater reliance on QObject system for inheritance/memory management
- General code cleanup and improvements
2021-01-05 11:20:38 +11:00
itsmattkc 6cb6407bd8 don't use shared ptrs on streams 2020-12-16 13:46:19 +11:00
itsmattkc c9323b9731 renderer: added another cancelled check 2020-11-29 12:17:42 +11:00
itsmattkc 720acb8f77 renderer: fixed shadowed property
Fixes issue where waveforms would only appear on one track
2020-11-29 10:20:10 +11:00
itsmattkc d9e445d39e rendermanager: always create tickets in own thread 2020-11-28 21:27:35 +11:00
itsmattkc 466900e579 renderer: mutex around color context creation/retrieval 2020-11-28 08:24:40 +11:00
itsmattkc 992b6eb952 added plural forms to translatable strings
Fixes #1421
2020-11-27 13:04:49 +11:00
itsmattkc d02a1aa41b renderer: mutex colorspace and premultiplied fields of video footage 2020-11-27 12:49:40 +11:00
itsmattkc c35005d1bf renderer: only use different footage dividers on smaller footage 2020-11-25 11:45:42 +11:00
itsmattkc 0eda91a0cb renderer: destroy surface in main thread 2020-11-25 08:59:14 +11:00
itsmattkc 60f515a2cc transform: added interpolation parameter 2020-11-22 22:53:31 +11:00
itsmattkc dbf4a814e1 renderer: added extra null check for texture
Fixes #1392
2020-11-22 19:00:01 +11:00
itsmattkc a6d382f4d4 further improved gizmos 2020-11-22 18:21:24 +11:00
itsmattkc 3e48aef88c renderer: only divide as much as necessary to get within maximum sequence resolution
Prevents lower res images from becoming too low res
2020-11-22 10:32:58 +11:00
itsmattkc 81447c439f opengl: update for shader changes mentioned earlier 2020-11-22 10:32:22 +11:00
itsmattkc 425e69c789 renderprocessor: add generate resolution override 2020-11-22 10:32:01 +11:00
itsmattkc 065fc9e10e miscellaneous shader changes
Since sequence resolution is provided to the nodes now, it no longer needs to be a global in the shaders
Removed some unused shaders
Added default params to ShaderCode to allow skipping types that aren't used
2020-11-22 10:31:37 +11:00
itsmattkc d0bcea3b1d audio: ignore shift event if from time exceeds length 2020-11-21 09:52:24 +11:00
itsmattkc 30b0af4f3a opengl: dropped minimum version to es 3.0 2020-11-19 16:55:19 +11:00
itsmattkc dcf56781b4 removed version macros from shaders and add automatically in compile step 2020-11-19 14:36:05 +11:00
itsmattkc aeb7bc02b6 autocache: added brief delay between changes and recache 2020-11-18 13:08:09 +11:00