Commit Graph
2061 Commits
Author SHA1 Message Date
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
Simran de48eba713 Make dialog for saving a project actually a save dialog
AcceptMode defaults to QFileDialog::AcceptOpen
2020-11-02 12:10:20 +01:00
itsmattkc 34cb7c96de further enclosed C locale setting 2020-10-29 02:20:59 +11:00
itsmattkc 59241f9023 generate OCIO extraction directory BEFORE setting C locale for OCIO 2020-10-29 01:39:22 +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 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 33a0c2d728 Merge pull request #1275 from ThomasWilshaw/stream
MediaInput: Rename streams access methods.
2020-10-20 23:32:00 +11:00
itsmattkc d0858f3f05 Merge pull request #1272 from ThomasWilshaw/Fix#1271_node_duplicate
Fix #1271 Duplicate Keyframed Node
2020-10-20 23:31:38 +11:00
itsmattkc c37607bf66 Merge pull request #1269 from ThomasWilshaw/otio_cmake_fix
Fix building without OTIO support
2020-10-20 23:31:19 +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
Thomas Wilshaw 4ddc659335 MediaInput: Rename streams access methods.
Change MediaInput::footage() to MediaInput::stream() and
MediaInput::SetFootage() to MediaInput::SetStream() as they access
streams not footage.

Also update all instances of access methods to reflect this change.
2020-10-19 15:50:36 +01:00
itsmattkc db8d321fa7 project: improved loading and footage importing 2020-10-19 14:41:01 +11:00
Thomas Wilshaw 7281806c38 Fix #1271 Duplicate Keyframed Node
When nodes with keyframes were copied their parent NodeInput was not
set properly leading to a segfult when key->GetParent was called in
KeyframeViewItem::UpdatePos().

This fix properly sets parent_ when keys are copied.
2020-10-16 22:30:54 +01:00
Thomas Wilshaw 70455c1501 Fix building without OTIO support
Added a new CMake flag that stops any OTIO related cpp files being
built.

Added extra #ifdefs to catch any OTIO related code in other cpp
files.
2020-10-15 18:59:06 +01: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 feb33ac677 Merge pull request #1262 from ThomasWilshaw/Fix_#1252
Fix #1252
2020-10-13 23:10:10 +11:00
Thomas Wilshaw b676f2f8b6 Fix #1252
Checks if the SampleBuffer is valid before trying to extract its
packed data. If it is not valid Olive writes blank segments instead.
2020-10-13 12:19:06 +01: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