itsmattkc
3903f70259
render: implemented frame pool
...
Optimization
2021-04-28 16:17:11 +10:00
itsmattkc
cdea531d95
viewer: fix timer issues
...
Should address various viewer playback lag issues.
2021-04-27 01:22:58 +10:00
itsmattkc
fcb344bd4e
render: improved threading stability
2021-04-24 18:21:33 +10:00
itsmattkc
50644b8e10
viewer: implemented path to show empty frame
...
Mild UI improvement.
2021-04-22 11:50:24 +10:00
itsmattkc
77d4b18a60
updated copyright year for 2021 [skip ci]
2021-04-17 18:56:50 +10:00
itsmattkc
22b2d08baf
rational: implement NaN mode
...
Also clarify code where 0 is used as a rational.
2021-04-17 15:04:03 +10:00
Thomas Wilshaw
8142df7a04
viewer: Don't hide the widget before deleting
2021-04-16 20:15:10 +01:00
Thomas Wilshaw
600c9bbe6b
viewer: Safely delete full screen widget
...
Hide the full screen widget and then use deleteLater() rather than
delete.
Fixes #1571
2021-04-14 17:38:45 +01:00
itsmattkc
3ffb2fde1c
audiomonitor: use mipmapped waveform
...
Since we have these now, may as well use them. This should
improve general playback performance since the audio monitor
will be able to iterate far fewer
2021-04-14 15:25:38 +10:00
itsmattkc
87e315c493
viewer: stop restart timer on pause
...
Fixes #1569
2021-04-14 13:45:35 +10:00
itsmattkc
e0a94ca776
viewer: don't assume still if no texture connected
2021-04-14 11:53:23 +10:00
itsmattkc
429442c0ea
viewer: restart audio if validated during playback
...
Fixes #1566
2021-04-14 11:20:02 +10:00
itsmattkc
09009e01fc
viewer: reimplement still support in a more robust way
2021-04-13 15:47:04 +10:00
itsmattkc
46e00c0099
viewer: store video/audio length outside of cache
2021-04-13 15:39:45 +10:00
itsmattkc
f9c145b4d4
viewer: default to black background
...
Fixes theme background no null frame in full screen.
2021-04-13 15:37:22 +10:00
itsmattkc
e141b486ae
viewer: fixed issues with audio-only nodes in the viewer
2021-04-13 12:17:38 +10:00
itsmattkc
831bac70c5
viewer: don't trigger context menu if no node is connected
2021-04-08 23:33:55 +10:00
itsmattkc
4021a7166d
viewer: keep track of which screens have full screen viewers on them
...
Fixes #1307
2021-04-08 22:37:38 +10:00
itsmattkc
cb75e37e77
moved several files around
...
Mostly moved classes that became node derivatives into the node/ folder.
2021-04-08 12:15:59 +10:00
itsmattkc
ea29ffef96
minor refactoring and signalling panel subtitle by node change
...
Fixes issue where Footage Viewer subtitle wouldn't update when
dropping footage in.
2021-04-08 10:42:13 +10:00
itsmattkc
bb32048c65
use frame rate and timebase less interchangeably
2021-04-07 13:08:25 +10:00
itsmattkc
898ea25e89
finished merge of viewer and footage
2021-04-06 13:08:56 +10:00
itsmattkc
4066fcba90
began merging footage and viewer
2021-04-05 16:41:37 +10:00
itsmattkc
6e7c8088b7
viewer: ensure instances are actually removed from list
2021-04-05 15:04:48 +10:00
itsmattkc
9be014c0b6
refactored so sequence is again a derivative of viewer
2021-04-05 14:41:59 +10:00
itsmattkc
a30d031a9c
improved FPS counter
...
Shows real frame update time rather than refresh time
2021-03-15 11:34:09 +11:00
itsmattkc
60e828efa8
viewer: minor profiling
...
Allows users to show FPS counter and skipped frames count.
2021-03-10 13:40:17 +11:00
itsmattkc
05cb3b86b8
viewer: fix double queue
2021-02-21 18:19:36 +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
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
b604a7271d
viewer: fix regression where multiple viewers could play at once
2020-12-30 10:38:34 +11:00
itsmattkc
90edc4f933
timebasedwidget: added infrastructure of passing scroll wheel signals to the scrollbar
2020-11-29 10:08:37 +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
0d0766e4fb
improved render channel count system
2020-11-15 22:16:40 +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
b582843d27
moved things around and started rewriting render backend
2020-10-29 01:36:26 +11:00
itsmattkc
17efd0bd9b
default to cache during playback
2020-10-24 10:13:16 +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
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
3b6ebb6e30
footageviewer: ensure footage is set to nullptr when disconnecting and update stack
2020-10-11 23:39:55 +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
7bc841904a
viewer: display image infinitely if video length is null
...
Allows for displaying still images in viewer without a finite length.
2020-09-19 12:52:50 +10:00
itsmattkc
83c7596038
viewer: extended scrolling/panning functionality
2020-09-06 17:40:53 +10:00
itsmattkc
ba64313dd7
Merge branch 'issue_70' of https://github.com/ThomasWilshaw/olive into ThomasWilshaw-issue_70
...
# Conflicts:
# app/widget/viewer/viewerwindow.cpp
2020-09-06 17:40:14 +10:00
itsmattkc
1334c04235
viewer: return if no viewer is connected
...
Minor improvement
2020-08-31 15:20:31 +10:00
itsmattkc
416ba8e2b2
viewer: ensure pixel aspect and interlace parameters are sent to viewer windows too
2020-08-20 19:34:09 +10:00