Peter Eszlari
2c8ebdf0d2
ocioconf: replace script with cmake
2020-05-04 04:35:32 +02:00
itsmattkc
b458bfa542
proxy: improved UI on proxy menu
2020-05-04 01:33:26 +10:00
itsmattkc
2b1640ac04
frame/texture: use dividers when allocating buffers
...
Allows render pipeline to know the "real" and "simulated" resolution of a
divided buffer.
2020-05-04 01:08:46 +10:00
itsmattkc
e4e797c901
proxy: cleaned up, re-use the render cache's disk save system for proxies, multithreaded compression
2020-05-04 00:29:26 +10:00
itsmattkc
6754feb2f6
proxy: began work towards creating proxy from video
2020-05-03 17:09:52 +10:00
itsmattkc
e4c3b6bf7b
renderer/decoder: simplified audio PCM transcode
...
Turned the two-step PCM transcode into one step and simplified/removed much of
the unnecessary infrastructure that supported it. This makes the code cleaner
and generally improves the code paths.
2020-05-03 16:07:10 +10:00
itsmattkc
403a8a8656
ocio: change lut edge size to 64 instead of 32
...
Doesn't "solve" the white inaccuracy issue, but does mitigate it somewhat. Also
improves accuracy across the board.
2020-05-03 03:14:38 +10:00
itsmattkc
80acd91d88
created script to auto-generate qt resource file from ocio config
2020-05-03 02:21:52 +10:00
itsmattkc
c5458c6843
timeline: use headers in waveform data files rather than sidecar metadata files
2020-05-03 00:44:14 +10:00
itsmattkc
3e57cdac1d
use linesize workaround for setting OIIO pixels as well as getting
2020-05-02 22:51:29 +10:00
itsmattkc
4a225aff85
colormanager: show OCIO error if env config failed to load
2020-05-01 17:55:04 +10:00
itsmattkc
4290797389
colormanager: use env variable as default config if it exists
2020-05-01 16:33:46 +10:00
itsmattkc
6f2993477d
added null check for audio that hasn't been indexed yet
2020-05-01 03:51:56 +10:00
itsmattkc
a2cba8c103
pixelformat: respect linesizes when converting pixel formats
2020-05-01 03:42:31 +10:00
itsmattkc
afc9cff301
exporter: fixed segfault when cancelling introduced by multithreaded color space conversion
2020-05-01 00:36:37 +10:00
itsmattkc
dc355dca46
export: multithread the color space conversion
2020-04-30 18:54:30 +10:00
itsmattkc
aecfa842c3
nodes: moved hashing to nodes so they can override behavior if they wish
2020-04-30 01:56:08 +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
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
981860b60b
fixed audio regression introduced with optimized node copy
2020-04-27 00:55:40 +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
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
c4fe5786a3
openglshader: fixed ocio opengl incompatibility
2020-04-23 23:43:29 +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
61e3641bcc
export: fixed bug where null frames never got signalled and hung exporting
2020-04-23 03:02:04 +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
5c736114d0
merged some export improvements from another branch
2020-04-23 01:31:50 +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
361a986b79
renderer: added path for generating resized frames from textures
2020-04-22 22:58:00 +10:00
Simran Brucherseifer
5da9848de7
Upgrade shaders from GLSL 110 to 150 (OpenGL 3.2)
2020-04-22 11:28:33 +02: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
c8da59a45e
opengltexture: align all data to 16
...
Fixes crash if frame is not aligned to 16. This should probably
be folded into the Frame class itself at some point.
2020-04-22 15:08:36 +10:00
itsmattkc
1d7c29c6d8
colormanager: minor comment update
...
More explicitly explains what's happening.
2020-04-22 14:55:40 +10:00
itsmattkc
bf787b1d2f
projectproperties: updated to assume empty config is default config
2020-04-22 14:04:10 +10:00
itsmattkc
8272f482d9
colormanager: temporarily hardcoding default input color space
...
The first input color space is "linear" which is very rare for footage to be
in. For simplicity, it'll default to sRGB for now.
2020-04-22 13:44:18 +10:00
itsmattkc
d15b08c181
sampleformat: fixed erroneous constant
2020-04-22 13:10:48 +10:00
itsmattkc
ccb02d30aa
colormanager: implement default config
2020-04-22 05:08:33 +10:00
itsmattkc
afa3d3babe
audiomonitor: rewrote to handle audio independently of output
...
This gives the AudioMonitor more control over its own timing and appearance
and also reduces the load on the audio processing threads.
2020-04-22 01:09:49 +10:00
itsmattkc
38fcad6a3f
cache: fixed signalling issue where changing default input didn't update the cache
2020-04-21 23:48:26 +10:00
itsmattkc
05eae1e28a
audio: don't use a shared QIODevice
...
This system was kind of janky anyway. It makes more sense ultimately for the
audio management classes to contain the file handle rather than the renderer.
2020-04-21 17:55:55 +10:00
itsmattkc
0ced48d4df
histogram: implemented color management
2020-04-21 01:59:06 +10:00
itsmattkc
1c3c8cd9b2
began work on headless export path
2020-04-20 02:37:10 +10:00
itsmattkc
707e9d5522
project: fixed bug where ocio config wouldn't automatically load from a saved project
2020-04-18 17:55:23 +10:00
itsmattkc
d3b71e6576
nodes: color management when setting color parameters is now preserved
2020-04-18 17:43:37 +10:00