itsmattkc
179e8d9014
audio: added null check
...
Fixes common crash.
2021-07-23 15:47:25 -07:00
itsmattkc
4bbc75392a
nodes: rewrote and simplified length signaling system
2021-07-15 21:00:18 -07:00
itsmattkc
528852c148
render: pack audio during playback
...
Should optimize audio rendering
2021-07-12 23:54:18 -07:00
itsmattkc
c374a03e9d
render: further simplified job times
...
Outside of silly mistakes, this should be significantly faster and more stable.
2021-07-12 15:14:37 -07:00
itsmattkc
310fd3541a
various: greatly simplified job times
...
Hopefully this doesn't break everything
2021-07-11 23:33:21 -07:00
itsmattkc
a9d6e0f3e5
audioplaybackcache: increase size of segments
2021-07-11 16:53:24 -07:00
itsmattkc
08e2fa4d8e
renderer: generate audio waveforms in render threads
...
Solves UI lag issues with long audio sequences.
2021-06-11 23:30:55 -07:00
itsmattkc
8383929476
track/audioplaybackcache: re-did binary search algorithms
...
Fixes #1617
Fixes #1615
2021-05-10 10:42:07 +10:00
itsmattkc
77d4b18a60
updated copyright year for 2021 [skip ci]
2021-04-17 18:56:50 +10:00
itsmattkc
7b4e7099f5
audioplayback: break loop on failure to read segment
...
Fixes #1564
2021-04-13 13:29:31 +10:00
itsmattkc
40abdcc605
audioplaybackcache: fixed segmentation bug
2021-03-19 18:10:58 +11:00
itsmattkc
1b5426d786
audioplaybackcache: improve comments/documentation
2021-03-19 17:09:45 +11:00
itsmattkc
cfbf563b2e
ensure cache modified time is accurate
2021-02-22 00:23:34 +11:00
itsmattkc
d0bcea3b1d
audio: ignore shift event if from time exceeds length
2020-11-21 09:52:24 +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
3c1ac3eeba
upgraded to ocio v2
2020-11-11 21:53:24 +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
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
e5b18fa45b
audioplaybackcache: fixed bug where the wrong segment may be targeted
2020-10-14 17:40:15 +11:00
itsmattkc
d20877570e
Merge branch 'master' of https://github.com/olive-editor/olive
2020-10-13 23:59:52 +11:00
itsmattkc
65507d81ea
audioplaybackcache: use null samplebuffer to write silence
2020-10-13 23:48:59 +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
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
edeeed49ba
various: enabled config saving
2020-08-08 02:44:39 +10:00
itsmattkc
d85089f71a
cache: improved setting manual cache path on a per project basis
2020-08-07 13:41:09 +10:00
itsmattkc
df14c2aaa7
cache: better implemented changing disk cache folders
...
Not complete yet, but getting there.
2020-08-07 02:31:46 +10:00
itsmattkc
36dd06d2dc
viewer: set video and audio caches to children of the viewer
...
Ensures their thread gets changed along with the viewer. The project
gets loaded/created in a background thread so the GUI can remain
responsive, and is then moved to the main thread for intended event
handling. However if the caches aren't parented, the hierarchy breaks
and the caches remain in a thread whose event loop is quickly destroyed.
Now that they're parented, events can be properly queued on them once
again.
2020-07-10 18:34:16 +10:00
itsmattkc
bad60fc5f0
audioplaybackcache: no-op if params are invalid
2020-06-12 03:26:34 +10:00
itsmattkc
9095dfa463
project: replaced proxy with pre-cache
...
Removed proxy task and replaced with a true honest-to-god pre-cache for
footage. This footage is pre-cached to a sequence and therefore 100% ready
for use in it once the task is done.
2020-06-08 23:17:51 +10:00
itsmattkc
430561e2ac
sequence: made divider a sequence parameter rather than a viewer parameter
...
Doing this makes the preview resolution an explicit project setting rather
than a temporary UI setting. This will allow more consistency when caching.
2020-06-08 14:41:35 +10:00
itsmattkc
33e3225c89
audioplaybackcache: use std::rand instead of QRandomGenerator
...
Improves support for versions of Qt < 5.10.
2020-06-05 15:47:00 +10:00
itsmattkc
7609754103
playbackcache: more intelligent job matching
...
Ensures audio ranges can be anticipated and accurately ignored if they're
old or acknowledged if they're current.
2020-06-05 15:23:16 +10:00
itsmattkc
5eeef76b62
waveform: shift track waveform alongside cache
2020-06-04 23:32:50 +10:00
itsmattkc
9ff9817b95
cache: use render job times to synchronize cache
...
Ensure old inaccurate jobs are never prioritized over current jobs.
2020-06-04 16:48:23 +10:00
itsmattkc
e30d278327
playbackcache: made thread-safe
...
Since this class is regularly accessed by multiple threads, it makes the
most sense to make all of its functions thread-safe.
2020-06-03 03:38:28 +10:00
itsmattkc
11bfe61208
cache: began base implementation of "shifting" the cache
...
Should be a fairly important optimization to make.
2020-06-02 01:38:12 +10:00
itsmattkc
bc5068afa1
audiocache: ensure cached ranges are actually marked as validated
...
For some reason, the audio cache never validated itself leading to an
endless loop of trying to re-render it. This is fixed now.
2020-05-30 15:20:14 +10:00
itsmattkc
558773538d
cache: fixed audio with new system
2020-05-18 17:16:28 +10:00
itsmattkc
b74ea1a8ba
renderer: reimported audio rendering functions
2020-05-18 12:52:25 +10:00
itsmattkc
2039067fdc
renderer/viewer: fixed playback and live updates from value changes
2020-05-15 15:02:30 +10:00
itsmattkc
863ae1b913
a first attempt at a new render system
2020-05-14 14:43:03 +10:00