itsmattkc
964129bb08
viewer: further improvements to auto-cache logic
2021-05-09 18:15:56 +10:00
itsmattkc
fc63be565d
cache: add more pixel format options for performance testing
2021-05-05 11:39:09 +10:00
itsmattkc
b82e616124
previewautocache/viewer: improvements to cooperation between cache and viewer
2021-04-30 00:59:51 +10:00
itsmattkc
f8d175c2ad
previewautocacher: passthrough frames already being rendered
2021-04-29 23:40:53 +10:00
itsmattkc
ec27c272e0
viewer: don't prioritize for the queue
2021-04-29 22:25:33 +10:00
itsmattkc
cd1d75c6fb
removed unnecessary debug lines
2021-04-27 10:08:13 +10:00
itsmattkc
fcb344bd4e
render: improved threading stability
2021-04-24 18:21:33 +10:00
itsmattkc
22b2d08baf
rational: implement NaN mode
...
Also clarify code where 0 is used as a rational.
2021-04-17 15:04:03 +10:00
itsmattkc
885cabbdfa
previewautocacher: remove unnecessary lines
...
These are node inputs now so they'll be copied automatically.
2021-04-13 15:43:32 +10:00
itsmattkc
210eb86cd2
nodes: fixed hashing issues
2021-04-11 18:54:22 +10:00
itsmattkc
12b190346d
cache: clear tasks if wait is enabled
2021-04-08 23:38:44 +10:00
itsmattkc
e037db2f77
autocacher: re-copy list before waiting
2021-04-08 22:57:09 +10:00
itsmattkc
cb75e37e77
moved several files around
...
Mostly moved classes that became node derivatives into the node/ folder.
2021-04-08 12:15:59 +10:00
itsmattkc
898ea25e89
finished merge of viewer and footage
2021-04-06 13:08:56 +10:00
itsmattkc
9be014c0b6
refactored so sequence is again a derivative of viewer
2021-04-05 14:41:59 +10: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
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
f4df6a7918
ensure cleanup on autocache upon destruction
...
Fixes double free.
2021-02-20 23:08:11 +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
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
aeb7bc02b6
autocache: added brief delay between changes and recache
2020-11-18 13:08:09 +11:00
itsmattkc
75d4cd899b
use hardcoded namespace
...
The macro defined namespaces confused the hell out of lupdate and more or less broke translations permanently. Looks like the only way we can do it is to have a hardcoded namespace, which goes against my instinct, but honestly how likely is it that we'll change the namespace anyway (I guess forks might want to do it, but that's their problem ;) )
2020-11-17 20:24:42 +11:00
itsmattkc
1b9bf6d92c
switched many QLists for QVectors
...
Minor optimization
2020-11-16 16:17:43 +11:00
itsmattkc
39149d28c7
fixed bug that prevented cached footage from being reused
2020-11-16 02:02:45 +11:00
itsmattkc
3c1ac3eeba
upgraded to ocio v2
2020-11-11 21:53:24 +11:00
itsmattkc
0429e70fe0
merged all drawing functions into a single shader processing function
2020-11-10 15:50:13 +11:00
itsmattkc
1d61f89920
large scale renderer rework
...
- Abstracts all OpenGL functionality including UI objects
- Cleans up several rendering codepaths
- Improves threading functionality
- Removes old code and problematic functions
2020-11-10 11:24:51 +11:00
itsmattkc
13dd31d5be
began rewrite of renderer inner workings
2020-11-06 20:18:10 +11:00
itsmattkc
26e351d363
moved frame cache saving to our custom thread pool so we can control the priority
2020-10-29 03:12:04 +11:00
itsmattkc
a3a57181a6
re-copy list when waiting since it may have changed
2020-10-29 02:59:10 +11:00
itsmattkc
00fef29cac
fixed issues where hashes wouldn't set correctly
2020-10-29 02:18:58 +11:00
itsmattkc
07dc7104c5
made timerangelist a encapsulation rather than a derivation
...
Locks off functionality that really shouldn't be used.
2020-10-29 02:18:41 +11:00
itsmattkc
b582843d27
moved things around and started rewriting render backend
2020-10-29 01:36:26 +11:00