itsmattkc
0cd40028d9
openglrenderer: use effective texture size rather than virtual size
...
Oof, this was an oopsie. This appears to fix the issues on AMD and some Intel
GPUs (the most prominent issues at least).
2021-04-18 00:19:19 +10:00
itsmattkc
77d4b18a60
updated copyright year for 2021 [skip ci]
2021-04-17 18:56:50 +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
afed4f48d4
removed unused qfloat16 includes
...
Should lower our Qt minimum version requirement to 5.6
2021-04-13 23:43:56 +10:00
itsmattkc
157da658a5
renderer: prevent cache saving/loading with empty path
2021-04-13 15:53:33 +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
7b4e7099f5
audioplayback: break loop on failure to read segment
...
Fixes #1564
2021-04-13 13:29:31 +10:00
itsmattkc
63c41146c7
renderer: disable mid-render cache when rendering audio
...
Fixes #1563
2021-04-13 10:17:37 +10:00
itsmattkc
6d0e188393
renderer: don't process video footage if rendering audio
...
Fixes #1530
2021-04-12 15:28:33 +10:00
itsmattkc
7701e9331f
block: reimplemented reversing
2021-04-12 11:05:45 +10:00
itsmattkc
da9cdbd29e
block: disable connecting and keyframing speed parameter
...
We're going to replace keyframing this with a time remap node
because that will be much simpler to implement.
Fixes #1192 .
Fixes #1204 .
2021-04-12 10:35:02 +10:00
itsmattkc
6c30f8cf46
nodes: implemented infrastructure for caching any node
...
Not accessible through UI yet, but ported Footage node to it
(previously we used a hack to ensure Footage textures were
cached, now it's a formal infrastructure).
2021-04-11 18:56:39 +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
4584d62def
removed debug lines
2021-04-08 08:00:16 +10:00
itsmattkc
d495815550
audio: use sample rate rather than timebase now they aren't interchangeable
2021-04-08 07:59:56 +10:00
itsmattkc
bb32048c65
use frame rate and timebase less interchangeably
2021-04-07 13:08:25 +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
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