Commit Graph
271 Commits
Author SHA1 Message Date
itsmattkc 500fb58d49 arranged items so they are inputs of folder rather than outputs 2021-03-12 12:22:19 +11:00
itsmattkc 332c120c1f initialize project version and fail if couldn't find 2021-02-21 09:53:02 +11:00
itsmattkc e0e4e42096 corrected otio files 2021-02-18 13:21:16 +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 d1a3e22eaa fixed linux compilation issues 2021-01-31 10:39:14 +11:00
itsmattkc ad4b83a098 new undo system
Also enables undoing when working with node input arrays
2021-01-29 16:10:34 +11:00
itsmattkc 88d1b86d11 bumped project version 2021-01-22 17:06:36 +11:00
itsmattkc 441a459774 viewer: use label instead of media name 2021-01-09 10:38:04 +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
itsmattkc 7849d6f3ff corrections for non shared ptrs in OTIO code 2020-12-16 14:32:18 +11:00
itsmattkc 6cb6407bd8 don't use shared ptrs on streams 2020-12-16 13:46:19 +11:00
itsmattkc e12013e2fb don't use shared ptrs for project items 2020-12-16 10:28:43 +11:00
Thomas Wilshaw 0cf640fb09 Suppress unused variable warning. 2020-12-04 19:20:42 +00:00
ThomasWilshaw a937238bd0 Merge branch 'master' into otio_improvments 2020-12-04 16:08:38 +00:00
itsmattkc f48c8b552b export: calculate total length from individual frames rather than all frames 2020-11-30 07:22:48 +11:00
itsmattkc 24c7c136dc export: set properties before moving thread 2020-11-28 10:21:24 +11:00
itsmattkc f8ceefff6c don't use shared ptr on projects
Really unnecessary
2020-11-27 14:24:02 +11:00
itsmattkc 992b6eb952 added plural forms to translatable strings
Fixes #1421
2020-11-27 13:04:49 +11:00
ThomasWilshaw a30d86f411 Merge branch 'master' into otio_transition 2020-11-18 18:27:30 +00:00
itsmattkc 5ff234de92 fixed uninitialized variable 2020-11-18 14:10:56 +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 15a29288aa added Q_OBJECT macro to classes that were missing it 2020-11-17 19:13:16 +11:00
itsmattkc 8a64ef75d9 implemented selecting custom export range
Fixes #1314
2020-11-17 09:43:43 +11:00
Thomas Wilshaw 8433e4093a Cleanup 2020-11-16 16:57:08 +00:00
Thomas Wilshaw f9e2a83ee4 Create OTIO namespace in otioutils.h 2020-11-16 16:47:31 +00:00
itsmattkc a911c0acf3 Merge branch 'render-singleton' 2020-11-17 00:41:28 +11:00
itsmattkc 1b9bf6d92c switched many QLists for QVectors
Minor optimization
2020-11-16 16:17:43 +11:00
itsmattkc 0d0766e4fb improved render channel count system 2020-11-15 22:16:40 +11:00
itsmattkc c9a8b96c89 reimplemented export process 2020-11-13 22:05:43 +11:00
Thomas Wilshaw 3b68f027f8 More cleanup 2020-11-12 13:48:24 +00:00
Thomas Wilshaw 7f4b676318 Move OTIO macro to define.h
Move the OTIO macro to define.h to avoid having to add it to all
required files.

Also add some cleanup.
2020-11-12 13:44:50 +00:00
itsmattkc 04e27e8e7f otio: use item rather than first of array 2020-11-12 09:38:49 +11:00
Thomas Wilshaw a1d967efe6 OTIO: Use macro OTIO for opentimelineio::v1_0
Exapnd the use of the OTIO macro and add the version number macro.
2020-11-11 22:13:14 +00:00
Thomas Wilshaw cea436b703 saveoitio: Add fix for to_json_file
The function to_json_file can delete it's SerializableObject if it
doesn't have a Retainer associated with it. This fix adds said
Retainer. Retainers clean them selves up when possibly_delete is
called on their associated object.
2020-11-11 21:57:45 +00:00
Thomas Wilshaw 2172cf784c Rational: conversion to opentime take framerate
Add a frame rate option to the conversion to opentime rationals as
otio generaly expects rationals to be in the form value/framerate.

Also add a check to make sure the rational is not in the form 0/0
as this can cause errors with OTIO.
2020-11-11 21:53:44 +00:00
itsmattkc 3c1ac3eeba upgraded to ocio v2 2020-11-11 21:53:24 +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
Thomas Wilshaw 3f0768a1cc Add support for transitions when loading OTIO files
OTIO transitions are now added to the timeline as cross dissolves with
the appropriate in/out points,

Also added a safety check when dealing with media references.
2020-11-08 12:23:37 +00:00
itsmattkc 6ecdb02fd0 okay maybe not 2020-11-08 00:47:59 +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 b582843d27 moved things around and started rewriting render backend 2020-10-29 01:36:26 +11:00
itsmattkc 1e6208517f decoder: fixed regression in image handling in OIIO decoder
Fixes #1277
2020-10-27 12:36:55 +11:00
itsmattkc cf07e52b76 fixed another shadowed variable 2020-10-24 12:05:52 +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