Commit Graph
100 Commits
Author SHA1 Message Date
itsmattkc d241090a9f finally updated the copyright year 2020-11-17 20:13:22 +11:00
itsmattkc 15a29288aa added Q_OBJECT macro to classes that were missing it 2020-11-17 19:13:16 +11:00
itsmattkc d24178b1b1 Merge branch 'master' of https://github.com/olive-editor/olive 2020-11-17 16:04:27 +11:00
itsmattkc b9724e3910 attempted to implement localization loading 2020-11-17 16:04:09 +11:00
itsmattkc 8a64ef75d9 implemented selecting custom export range
Fixes #1314
2020-11-17 09:43:43 +11:00
itsmattkc e2010dde83 made formal QtUtils class 2020-11-17 09:42:36 +11:00
itsmattkc 97a15f2c54 Merge branch 'master' of https://github.com/olive-editor/olive 2020-11-17 00:41:37 +11:00
itsmattkc a911c0acf3 Merge branch 'render-singleton' 2020-11-17 00:41:28 +11:00
itsmattkc 4aea9a3757 timeline: pad by full width rather than half width 2020-11-17 00:20:56 +11:00
itsmattkc ea090a9215 ci: combined mac dependencies 2020-11-16 18:35:18 +11:00
itsmattkc 81450044e0 added preference for duplicating dependencies
Fixes #1320
2020-11-16 16:32:15 +11:00
itsmattkc 1b9bf6d92c switched many QLists for QVectors
Minor optimization
2020-11-16 16:17:43 +11:00
itsmattkc a0fb1981b4 multi-line edit for text in paramview 2020-11-16 12:27:59 +11:00
itsmattkc 9a1917d160 used different approach for populating open recent menu
Fixes #1243
2020-11-16 10:23:23 +11:00
itsmattkc 81c98e1026 timeline: made markers undoable 2020-11-16 08:58:51 +11:00
itsmattkc 39149d28c7 fixed bug that prevented cached footage from being reused 2020-11-16 02:02:45 +11:00
itsmattkc 17b9a7e3ad renderer: moved alpha channel detection to where texture is actually made 2020-11-16 02:02:12 +11:00
itsmattkc 1dd7e24920 merge: removed debug line 2020-11-16 02:01:51 +11:00
itsmattkc 96d4d88471 renderer: fixed bug that caused threads to hang indefinitely 2020-11-16 01:37:39 +11:00
itsmattkc c81bb003d3 framehashcache: minor code cleanup 2020-11-16 01:35:52 +11:00
itsmattkc a9bc1312c1 don't show associated alpha option if footage has no alpha 2020-11-16 01:34:20 +11:00
itsmattkc fe4e45e386 fixed timerangelist removing bug 2020-11-16 01:33:53 +11:00
itsmattkc 2c086ce9fb removed debug line 2020-11-16 01:33:24 +11:00
itsmattkc c0b710b8c0 use round instead of floor to convert time to samples 2020-11-15 23:51:12 +11:00
itsmattkc fbfa3e1348 use virtual texture size rather than physical and clear destination when running shaders 2020-11-15 23:02:20 +11:00
itsmattkc c3c1fa6f28 project: don't try to retrieve duration of a still image 2020-11-15 22:47:58 +11:00
itsmattkc bb1f16c8e1 merge: don't merge if the blend texture is RGB 2020-11-15 22:47:10 +11:00
itsmattkc 0d0766e4fb improved render channel count system 2020-11-15 22:16:40 +11:00
itsmattkc ee5307336e re-implemented alpha assoc/deassoc when color managing 2020-11-15 10:41:29 +11:00
itsmattkc c9a8b96c89 reimplemented export process 2020-11-13 22:05:43 +11:00
itsmattkc 8776bb9c4a finished upgrade to ocio v2 2020-11-12 15:36:29 +11:00
itsmattkc 2d2d6d2a2b Merge branch 'master' of https://github.com/olive-editor/olive 2020-11-12 09:38:54 +11:00
itsmattkc 04e27e8e7f otio: use item rather than first of array 2020-11-12 09:38:49 +11:00
itsmattkc ddbca1ba51 Merge branch 'master' of https://github.com/olive-editor/olive into render-singleton 2020-11-12 00:57:12 +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 52b98f3fa3 lightened SampleFormat struct 2020-11-10 11:24:20 +11:00
itsmattkc 94c0914e50 codec system rework
Codecs are now much cleaner and thread safe by design.
2020-11-10 11:23:25 +11:00
itsmattkc 6ecdb02fd0 okay maybe not 2020-11-08 00:47:59 +11:00
itsmattkc 83cefbd7c7 uhh yeah this might be fubar 2020-11-07 22:44:27 +11:00
itsmattkc 13dd31d5be began rewrite of renderer inner workings 2020-11-06 20:18:10 +11:00
itsmattkc 60eb71cb4c derive threadpool from cancelableobject 2020-10-30 22:48:25 +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 84a1ec0ca3 began graphics backend enum 2020-10-29 02:59:18 +11:00
itsmattkc a3a57181a6 re-copy list when waiting since it may have changed 2020-10-29 02:59:10 +11:00
itsmattkc 34cb7c96de further enclosed C locale setting 2020-10-29 02:20:59 +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 59241f9023 generate OCIO extraction directory BEFORE setting C locale for OCIO 2020-10-29 01:39:22 +11:00
itsmattkc 10d2ea823c ci: try new dependencies 2020-10-29 01:39:03 +11:00
itsmattkc b65c0f4056 Merge branch 'master' of https://github.com/olive-editor/olive 2020-10-29 01:36:42 +11:00
itsmattkc b582843d27 moved things around and started rewriting render backend 2020-10-29 01:36:26 +11:00
itsmattkc 94321c0a86 align frames to 32 bytes instead of 16 2020-10-28 15:50:56 +11:00
itsmattkc 43873e79e9 clear decoders when viewer is disconnected 2020-10-28 15:50:20 +11:00
itsmattkc 5343ec4b86 use default playback cache if there's no project 2020-10-28 15:49:53 +11:00
itsmattkc 379a799ad9 Merge branch 'master' of https://github.com/olive-editor/olive 2020-10-27 12:37:21 +11:00
itsmattkc 1e6208517f decoder: fixed regression in image handling in OIIO decoder
Fixes #1277
2020-10-27 12:36:55 +11:00
itsmattkc 5f5d6e82ab audioplaybackcache: fixed bug in one of the shift operations 2020-10-24 14:18:59 +11:00
itsmattkc 921608e1df audioplaybackcache: fixed various audio issues
Fixes #1276
2020-10-24 13:59:12 +11:00
itsmattkc 7e637a7372 calculate audio bytes as a 64-bit number 2020-10-24 13:55:07 +11:00
itsmattkc cf07e52b76 fixed another shadowed variable 2020-10-24 12:05:52 +11:00
itsmattkc 67987bd758 fixed shadowed variable 2020-10-24 11:28:37 +11:00
itsmattkc 17efd0bd9b default to cache during playback 2020-10-24 10:13:16 +11:00
itsmattkc 253dd86da8 updated OTIO functions for renamed functions 2020-10-24 10:13:06 +11:00
itsmattkc 4082f6d938 Merge branch 'master' of https://github.com/olive-editor/olive 2020-10-23 01:26:49 +11:00
itsmattkc bc60c74562 finalized very, very basic OTIO support
Ironed out various project and footage loading issues, and a single
cache invalidation issue.
2020-10-23 01:26:17 +11:00
itsmattkc 9613730ee8 Merge branch 'otio' of https://github.com/olive-editor/olive into otio 2020-10-22 22:13:37 +11:00
itsmattkc 917738d1de Merge branch 'master' into otio 2020-10-22 20:26:16 +11:00
itsmattkc 0ec262125c otio: added ability to export a whole project rather than a single sequence 2020-10-20 18:15:39 +11:00
itsmattkc db8d321fa7 project: improved loading and footage importing 2020-10-19 14:41:01 +11:00
itsmattkc 384650e85a tracklist: ensure track indexes are updated when tracks are added/removed 2020-10-15 10:38:36 +11:00
itsmattkc e5b18fa45b audioplaybackcache: fixed bug where the wrong segment may be targeted 2020-10-14 17:40:15 +11:00
itsmattkc 911d13164c render task: queue all hashes and audio tasks in advance 2020-10-14 17:05:15 +11:00
itsmattkc a09b551a7d export: fixed bug that probably didn't cause any issues, but still shouldn't be like that 2020-10-14 17:05:01 +11:00
itsmattkc d20877570e Merge branch 'master' of https://github.com/olive-editor/olive 2020-10-13 23:59:52 +11:00
itsmattkc b17b34c5fd crashhandler: ask confirmation if no summary is written 2020-10-13 23:54:02 +11:00
itsmattkc d620af412f decoder: improved memory management 2020-10-13 23:49:30 +11:00
itsmattkc 65507d81ea audioplaybackcache: use null samplebuffer to write silence 2020-10-13 23:48:59 +11:00
itsmattkc f137a1bbf3 playbackcontrols: set widget visible and enabled properties based on valid timebase 2020-10-12 18:09:10 +11:00
itsmattkc 989dfb7016 footageviewer: reset time if footage is set to null 2020-10-12 18:08:44 +11:00
itsmattkc 7c0d7a9fe3 ffmpeg: manually retrieve audio duration if metadata doesn't provide one
We did this for video, now we do it for audio too.

Fixes #1266
2020-10-12 17:58:56 +11:00
itsmattkc 453f3700ab ensure AudioOutputManager is deleted in its own thread
Fixes #1265
2020-10-12 12:23:20 +11:00
itsmattkc 6ced8504d6 audiooutputmanager: reordered constructor 2020-10-12 01:34:45 +11:00
itsmattkc f56c745d93 viewer: don't use audio timebase if no video is connected
This feature may make a comeback later, but for the time being it causes
issues and I'm not sure it's even that useful.

Fixes #1256
2020-10-12 00:23:17 +11:00
itsmattkc f2bd891071 viewer: allow manually switching to the audio waveform view 2020-10-12 00:20:09 +11:00
itsmattkc 5b69137edf timeruler: add context menu
Should have more stuff in it, this is a basic implementation
2020-10-12 00:19:01 +11:00
itsmattkc 3b6ebb6e30 footageviewer: ensure footage is set to nullptr when disconnecting and update stack 2020-10-11 23:39:55 +11:00
itsmattkc 9d9b25dc11 menu: removed unused function
Hold-over from 0.1, we have better ways of achieving this now.
2020-10-11 23:27:56 +11:00
itsmattkc f7ab0bb640 audio: rewrote audio cache to write to contiguous segments rather than one long file
Fixes issues with PCM file placement, optimizes some audio-based timeline
and cache operations, just generally a better approach.
2020-10-11 23:27:40 +11:00
itsmattkc 920a15d2ea ui: hack to disable embossing
Fixes #1217 while Qt 5.15's palette system is still broken
2020-10-10 20:53:10 +11:00
itsmattkc 221e0efb96 timeline: fix double free on items
Who the hell wrote this? It's all wrong for no reason and makes no sense

Fixes #1222
2020-10-10 20:24:41 +11:00
itsmattkc 0d102defab tracks: use node label instead of separate name string 2020-10-10 20:17:25 +11:00
itsmattkc 0cafbb2594 nodeview: minor optimizations and behavior improvements 2020-10-10 19:47:25 +11:00
itsmattkc df54b98fd6 nodeview: added light gradient to node item 2020-10-10 17:22:12 +11:00
itsmattkc 6e8295666d timeline: optimized rubberband selections 2020-10-10 17:22:04 +11:00
itsmattkc ae8af531a9 timeline: removed cursor setting from block item (how did this get here?) 2020-10-10 17:21:47 +11:00
itsmattkc 2d93e82489 timeline: reworked rubberband 2020-10-06 00:20:54 +11:00
itsmattkc 2ccbfa7715 nodeview: null checks on select code
Prevents segfaults if the node view clears before the timeline.
2020-10-06 00:10:53 +11:00
itsmattkc 2d8c605cc9 timerangelist: fixed bug where ranges might sometimes overlap 2020-10-05 16:50:38 +11:00