Commit Graph
1365 Commits
Author SHA1 Message Date
itsmattkc cdf29c8ccc Merge branch 'master' of https://github.com/olive-editor/olive 2020-04-28 17:09:37 +10:00
itsmattkc 4906bb7d53 scopes: don't use shared context
OpenGL shared contexts (through Qt at least) seem to be buggy. Scopes have been
shifted to a non-shared approach as a result.
2020-04-28 17:08:52 +10:00
itsmattkc 1b2c68c927 preferencesaudiotab: fixed bug that didn't disable UI when refreshing audio devices 2020-04-28 15:39:31 +10:00
itsmattkc 64ce4642c6 linux: fixes bug where layout was wonky on startup for some systems 2020-04-28 15:26:22 +10:00
itsmattkc 690bdb6581 timeline: make sure track length is updated if a block is disconnected 2020-04-27 14:01:44 +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 f61321d68b nodes/timeline: correctly detect when tracks are removed from the graph
Fixes several segfaults that could result from this occurring.
2020-04-27 01:01:12 +10:00
itsmattkc 981860b60b fixed audio regression introduced with optimized node copy 2020-04-27 00:55:40 +10:00
itsmattkc 9c4999cfae curvepanel: reconfigured to be a spawnable child of NodeParamView 2020-04-27 00:04:07 +10:00
itsmattkc 53ae25a7cb nodes: optimize node graph changes by only updating from inputs that changed
A huge optimization that ensures only the parts of a node graph that have
changed get pushed to the renderer. For thread-safety, the node graph is
copied elsewhere so that users can make changes asynchronously and the graph
can update when its threads are ready. Up until now, if an input value changed,
every node's values would be re-copied, or worse, if a connection was changed,
the entire graph would be recopied. This has been negligible in testing since
we've been largely testing with small graphs, but for massive projects, it's
important that this be as optimized as possible.
2020-04-26 04:16:15 +10:00
itsmattkc 17999eab7a timelineview: removed "end item"
This was written as a hack to force our QGraphicsScenes to larger sizes. Turns
out it was completely unnecessary and can be done better.
2020-04-25 15:19:46 +10:00
itsmattkc acef99eb17 renamed viewerglwidget to viewerdisplaywidget
Initially this class was named to provide the possibility of supporting other
APIs, however this abstraction has been done with a base class instead.
2020-04-25 14:46:30 +10:00
itsmattkc c7de93cc5d viewer/opengl: minor code improvements 2020-04-24 15:14:20 +10:00
itsmattkc 8c44f8d03d viewer/various: split off color management into separate base class
Also moves scopes to said base class.
2020-04-24 03:45:07 +10:00
itsmattkc 3eb966cb5b openglshader: fixed ocio opengl incompatibility 2020-04-24 00:19:25 +10:00
itsmattkc 7768925826 manageddisplay: started base class for widgets that are managed 2020-04-24 00:17:32 +10:00
itsmattkc c4fe5786a3 openglshader: fixed ocio opengl incompatibility 2020-04-23 23:43:29 +10:00
itsmattkc d3e7678c13 Merge branch 'master' into Simran-B-glsl-150 2020-04-23 23:31:21 +10:00
itsmattkc 1bad7e9b11 waveformscope: pass viewport in as uniform 2020-04-23 23:28:57 +10:00
itsmattkc 8d66989de3 Merge branch 'glsl-150' of https://github.com/Simran-B/olive into Simran-B-glsl-150 2020-04-23 22:37:39 +10:00
itsmattkc 48b5d9ca60 openglshader: upload ocio lut immediately 2020-04-23 22:36:05 +10:00
itsmattkc 6940b00164 colormanager: added wrappers for GetDefaultLumaCoefs 2020-04-23 21:39:21 +10:00
itsmattkc 9e04728c12 openglshader: minor code tidiness 2020-04-23 21:20:51 +10:00
itsmattkc ac09f604b1 Merge branch 'master' of https://github.com/olive-editor/olive 2020-04-23 21:14:07 +10:00
itsmattkc 1436d9b3eb ffmpegdecoder: potential fix for deadlocks when closing 2020-04-23 21:13:43 +10:00
itsmattkc 1f34b89950 viewer: removed unnecessary debug line 2020-04-23 18:06:49 +10:00
itsmattkc 4490b10032 oiiodecoder: fixed broken reference 2020-04-23 03:58:38 +10:00
itsmattkc c41b43ea06 nodeview: don't try to delete nodes marked as undeletable 2020-04-23 03:09:38 +10:00
itsmattkc 61e3641bcc export: fixed bug where null frames never got signalled and hung exporting 2020-04-23 03:02:04 +10:00
itsmattkc 8f9c056419 colorspacechooser: fixed incorrect title function call 2020-04-23 02:23:41 +10:00
itsmattkc 9beff8b1e8 ffmpegdecoder: fixed deadlock if decoder instance was closed from main thread 2020-04-23 02:23:20 +10:00
itsmattkc fef29db754 export: fixed bug that failed to export video if using a different export resolution 2020-04-23 02:00:49 +10:00
itsmattkc a1ec48b978 clitaskdialog: updated comment describing its status 2020-04-23 02:00:29 +10:00
itsmattkc 5c736114d0 merged some export improvements from another branch 2020-04-23 01:31:50 +10:00
itsmattkc 2b1363d434 colorspacechooser: fixed segfault that occurred sometimes if DVL was disabled 2020-04-23 01:23:08 +10:00
itsmattkc 6c1e90665f colormanagement: moved from passing DVL strings everywhere to a consolidated ColorTransform struct 2020-04-23 01:17:58 +10:00
itsmattkc a422f6e369 timelineviewbase: decrease ctrl+scroll speed 2020-04-23 01:00:26 +10:00
itsmattkc 03ce9ee8f7 moved color widgets from ColorDialog folder to a widget folder 2020-04-22 23:38:51 +10:00
itsmattkc 197e60b6c3 export: show main color spaces rather than DVL chain 2020-04-22 23:34:23 +10:00
itsmattkc 361a986b79 renderer: added path for generating resized frames from textures 2020-04-22 22:58:00 +10:00
Simran Brucherseifer 7bd25ee36a Revert "opengl: use compatibility profile"
This reverts commit baa8df38f6.
2020-04-22 11:28:47 +02:00
Simran Brucherseifer 5da9848de7 Upgrade shaders from GLSL 110 to 150 (OpenGL 3.2) 2020-04-22 11:28:33 +02:00
itsmattkc 26b928597c nodeview: only select if a graph is currently active
Fixes segfault where timeline attempted to signal NodeView to select nodes
after it had already cleared itself.
2020-04-22 18:18:22 +10:00
itsmattkc de783d214a colorwheel/colorgradient: clamped at 1.0
Since these are UI/display components, they are clamped at 0.0 - 1.0
2020-04-22 18:15:29 +10:00
itsmattkc 258f83d5d3 node: fixed bug that failed to load some default values from shader xml 2020-04-22 18:13:53 +10:00
itsmattkc db117e0780 mathnode: increased decimal places
Also includes general improvements to the slider widget such as an optional
"autotrim" function to cut off trailing zeroes, a "format" string that's easier
to internationalize, and general tidiness.
2020-04-22 17:49:32 +10:00
itsmattkc 0f825cbc44 oiiodecoder: updated to handle frame linesizes 2020-04-22 16:57:18 +10:00
itsmattkc c9e797abdf various: conformed frame usages to respect stride 2020-04-22 15:54:47 +10:00
itsmattkc 0a9ad8f235 opengltexture: implemented linesize fields whenever uploading data to a texture 2020-04-22 15:23:29 +10:00
itsmattkc eb6b9217ab frame: implemented usage of linesizes
Frame will transparently use an optimized linesize for it's allocated data.
2020-04-22 15:19:04 +10:00