itsmattkc
f9112c05fd
Implemented time offset node
2022-02-01 19:55:09 -08:00
ThomasWilshaw and itsmattkc
953adf856b
Add Flip/Flop node ( #1850 )
...
* Add Flip/Flop node
* Rename node Flip
* Missed files
Co-authored-by: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
2022-01-25 15:14:54 -08:00
ThomasWilshaw
314167be40
Noise node ( #1848 )
...
* Add a noise generator node
* Cleanup
* Correctly name CMakeLists.txt
* Typo
2022-01-25 15:13:32 -08:00
itsmattkc
3cf90116e2
implement group-based opacity node
2022-01-21 10:08:48 -08:00
itsmattkc
a4934f1d47
implemented saving/loading for groups
2021-12-28 21:52:28 -08:00
itsmattkc
dc79a6a5d9
revised text node
...
Fixes #1684
2021-10-25 15:46:06 -07:00
itsmattkc
4ed9ba5475
rename current text effect to textlegacy
2021-10-25 14:54:48 -07:00
itsmattkc
b07bccb7dc
nodes: revert to single output
2021-09-07 22:01:36 -07:00
itsmattkc
330a37da92
nodes: implemented shape generator
2021-08-03 11:55:31 -07:00
itsmattkc
cc21ed37a7
implemented core subtitle support
2021-05-18 12:42:47 +10:00
itsmattkc
36466d0f9b
nodefactory: removed unnecessary debug line
2021-04-29 23:40:30 +10:00
itsmattkc
77d4b18a60
updated copyright year for 2021 [skip ci]
2021-04-17 18:56:50 +10:00
itsmattkc
e410eb2aa6
nodefactory: minor code change
2021-04-17 15:13:33 +10:00
itsmattkc
88ebfb9d8e
nodefactory: added time remap node
2021-04-17 15:02:56 +10:00
itsmattkc
893adc3d72
implemented value node
...
Also implements changes necessary to support an input data type
that changes. Much of that foundation was built in
`nodearchchanges`, but hadn't been finalized. This commit
finalizes and provides a reference implementation/test with the
"Value" node.
Fixes #1443
2021-04-12 16:37:26 +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
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
8f729203fc
some timeline refactoring, preparing for rewrites
2021-01-09 11:41:33 +11:00
itsmattkc
54cd244801
nodes: added distort nodes
...
Adds nodes for cropping and transforming
2020-11-22 11:34:37 +11:00
itsmattkc
ad2e3d160f
added mosaic filter node
2020-11-18 14:21:47 +11:00
itsmattkc
b3c3fe0fc8
merged video and audio nodes into a single media node
...
They performed exactly the same function so I don't think we need the clutter.
Also bumped the project version, but old projects are automatically converted.
2020-11-18 13:48:14 +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
d241090a9f
finally updated the copyright year
2020-11-17 20:13:22 +11:00
itsmattkc
ae62750d9d
various: fix broken transition creation
...
It's now possible to create transitions! But they're still broken in
a multitude of other ways so plenty more work to do hahahahahahahahaha
2020-07-14 22:31:11 +10:00
itsmattkc
469b1e92d0
nodes: implemented basic text node
2020-06-13 03:01:35 +10:00
itsmattkc
218c63f933
nodecombobox: implemented node combobox widget
2020-05-09 03:22:09 +10:00
itsmattkc
1ceefb6dba
Merge branch 'master' into gizmos
2020-05-06 16:35:40 +10:00
itsmattkc
fb625cb76e
nodes: removed XML infrastructure
2020-05-06 15:06:37 +10:00
itsmattkc
74d252c5c0
nodes: use defined categories rather than arbitrary string based
2020-05-05 22:12:15 +10:00
itsmattkc
c387ce1cd7
polygon node: early crude implementation
2020-05-05 00:22:49 +10:00
itsmattkc
ac3f49a845
nodes: moved matrix input on "video input" elsewhere
...
Rather than plugging a matrix into the video input node, the matrix is now
multiplied by the video input using a math node. This is probably more
sensible from a user perspective.
This also means the renderer is tolerant of texture sizes that are not equal
to the sequence size, however most nodes will downsample the texture to the
sequence size (and if not, it will be downsampled once it is cached). Textures
will still *always* be in reference space and the sequence's format. This seems
like the best compromise between backend and frontend congruity.
2020-04-27 04:11:24 +10:00
itsmattkc
cb14af326c
removed opacity node
...
This node has been superseded by the math node since it essentially functions
as a multiply.
2020-04-20 17:48:35 +10:00
itsmattkc
410f3d25dc
fixed menu bugs introduced in f2bff5f150
...
Turns out setting a QMenu parent *not* in the constructor leads to very strange
behavior. All parents are now set in the constructor.
2020-04-19 16:19:08 +10:00
itsmattkc
f2bff5f150
menu: ensure all addMenu() calls are followed with setParent() calls
...
Ensures memory taken by creating a new menu is freed.
2020-04-19 01:26:54 +10:00
itsmattkc
b4795c0222
blur: merged box and gaussian blurs into one node
...
While these are two separate blur effects, merging them into one node will
allow quick swapping of blur methods.
2020-04-16 13:17:30 +10:00
itsmattkc
cb6c054b8d
trigonometrynode: implemented trigonometry node
2020-04-15 02:41:20 +10:00
itsmattkc
1aa87cbda6
various: encapsulate all code in the olive namespace to avoid name collisions
...
Large-scale code cleanup. Also adds a license to the top of all files that were
missing it.
2020-04-06 15:29:53 +10:00
itsmattkc
3dd91a1429
timenode: implemented timenode to allow values to be connected to time
2020-04-03 23:27:38 +11:00
itsmattkc
7100d00060
nodes: made changes to the node system to allow for context sensitive shader code
...
Primarily implemented for the math node so a new shader can be generated and
compiled based on what inputs the node is receiving.
2020-03-29 03:11:30 +11:00
itsmattkc
97dadace1f
shaders: added stroke shader
2020-02-14 19:13:30 +11:00
itsmattkc
df837efbc6
merged timeline and viewer nodes together
2020-01-03 03:26:00 +11:00
itsmattkc
7ad2eae7a2
implemented volume and pan effects
...
This commit implements a structure for sample processing and two implemenations
of this structure in volume and pan effects.
2019-12-24 12:34:30 +11:00
itsmattkc
f616a0d123
ported dip to black transition to external type and reimplemented drop shadow shader
2019-12-18 01:18:31 +11:00
itsmattkc
4e6da87585
ported crossdissolve to external shader
2019-12-17 15:58:16 +11:00
itsmattkc
46b3f9db48
moved alphaover to external file format
2019-12-15 03:41:37 +11:00
itsmattkc
ae7c9597e2
ported solid color generator to external shader
2019-12-15 03:07:10 +11:00
itsmattkc
965519e9cf
ported opacity node to external file format
...
The plan is to port all nodes that can be external to the external file format.
This should help keep things maintainable.
2019-12-15 02:51:28 +11:00
itsmattkc
845a197c99
enable tooltips in the node menu to allow node descriptions to appear
2019-12-15 02:39:55 +11:00
itsmattkc
ce8c77754d
add embedded external shaders to the node factory
2019-12-15 02:34:47 +11:00