Thomas Wilshaw
92db735022
Add Delete functionality. Still buggy.
2020-09-29 00:06:38 +01:00
Thomas Wilshaw
602f96b2b6
Cleanup comment
2020-09-28 14:33:58 +01:00
Thomas Wilshaw
5bb9cb0cca
Make Offlining footage an UndoCommand
...
Created a new UndoCommand in ProjectViewModel that set the footage
input to a nullptr and resets it to the correct stream on undo.
2020-09-28 14:33:58 +01:00
Thomas Wilshaw
c1e345611d
Cleanup.
2020-09-28 14:33:56 +01:00
Thomas Wilshaw
0f1d4ec1b8
Make sure image sequences are caught.
2020-09-28 14:33:55 +01:00
Thomas Wilshaw
0e272b6bba
Cleanup and add warning message.
2020-09-28 14:33:54 +01:00
Thomas Wilshaw
3ed0cb2ab9
Move search code to seperate function.
2020-09-28 14:33:54 +01:00
Thomas Wilshaw
7c7db5c933
Check footage in use before deleteing
...
Initial very hacky implementation that checks if the footgae is in
use before deleting it and makes sure all refernences to it are
properly cleaned up.
Also added IsMedia() function to Node to simplify things a bit.
2020-09-28 14:33:53 +01:00
itsmattkc
dac68cabc2
timeline: made ReplaceBlocksWithGaps more accessible for other parts of the program
2020-09-28 14:28:56 +10:00
itsmattkc
a313fb525c
use QGraphicsView::FullViewportUpdate on TimelineViewBase
...
Since this appears to be necessary for all derivatives anyway, we'll add
this directly to the base class.
2020-09-28 14:21:17 +10:00
itsmattkc
d69e478a62
paramview: ensure item time target is set upon creation
...
Fixes #1213
2020-09-23 01:44:11 +10:00
itsmattkc
871bc08c12
Revert "renderer: if texture is null, don't allocate a frame unless exporting"
...
This reverts commit 8e0c86a6fa .
Fixes #1209
2020-09-21 17:28:28 +10:00
itsmattkc
8e0c86a6fa
renderer: if texture is null, don't allocate a frame unless exporting
2020-09-19 12:53:07 +10: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
855c460ff3
footageviewer: use sequence functions to set video/audio params
...
Code improvement by re-using existing code. Existing code prevents crash
when loading a still image.
2020-09-19 12:30:42 +10:00
itsmattkc
3103359cd6
slider: fixed crash when clicking another mouse button while dragging
2020-09-18 23:49:40 +10:00
itsmattkc
9c488d9a37
timeline: use full viewport update
...
Fixes #1190
2020-09-18 12:59:16 +10:00
itsmattkc
4f65e83322
gcc: fixed shadowed parameter
2020-09-06 18:33:22 +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
f0928814fc
track: store height in "units" rather than pixels
...
Fixes DPI scalability issue if a project ever moved from a display with
one DPI to another.
2020-08-22 00:23:46 +10:00
itsmattkc
9aabde303e
nodeview: added arrows to indicate a node can be expanded
...
Minor UI detail. Also slightly increases the size of node items and adds
"short names" to the video input and audio input nodes.
2020-08-21 15:15:39 +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
itsmattkc
d99a8e9005
timeline: refactored "replace with gap" command fixed bug
...
Fixes an unfortunate bug that restored blocks in the wrong order and leads
to a segfault if you continue undoing beyond that point.
2020-08-20 13:40:58 +10:00
itsmattkc
75c3a37c17
removed speed/duration dialog
...
This is the first step in what will eventually be keyframable time
remapping. The speed/duration dialog was a holdover from 0.1 and we can
probably do better here.
2020-08-19 17:42:52 +10:00
Thomas Wilshaw
8682b1e678
Merge master into branch
2020-08-17 18:42:58 +01:00
itsmattkc
ec8b046f02
viewer: implemented basic deinterlace
...
Implements a very basic GLSL deinterlace that simply halves the vertical
resolution and then interpolates between the fields. This can be toggled
on or off.
The reasons for being so basic is:
- Speed, very quick code running in OpenGL
- It would seem the highest quality deinterlacers are temporally based
which doesn't make much sense for the viewer, particularly since we can't
double the frame rate since our timecode is fixed to the frames.
Higher quality interlacing/deinterlacing will be present in the actual
renderer.
2020-08-11 02:02:50 +10:00
itsmattkc
75b4bfe57e
viewer: clear current render queue before creating next queue
...
Hilariously, the queue was being cleared right after it was being set
thus cancelling the whole operation out. This has now been fixed.
2020-08-11 01:02:14 +10:00
itsmattkc
5723690a21
playbackcontrols: set play button policy to QPushButton default
...
Minor cosmetic improvement.
2020-08-10 17:27:32 +10:00
itsmattkc
70085588d6
audiomonitor: fixed bug where audio was shown at normal speed even if playing faster
2020-08-10 17:12:39 +10:00
itsmattkc
28dcff10c0
various: implement sequence pixel aspect ratios and interlacing settings
...
Implements the following:
- Sequences have pixel aspect ratios that work in tandem with footage PARs
to render footage correctly. Viewer and export also acknowledge PARs
- Sequences can have interlacing settings. This doesn't do anything yet,
eventually the renderer will need to interlace/deinterlace/reinterlace
appropriately in order to conform all the footage to the sequence. Export
acknowledges interlacing, but this only affects metadata, not the image.
2020-08-10 01:47:26 +10:00
itsmattkc
edeeed49ba
various: enabled config saving
2020-08-08 02:44:39 +10:00
itsmattkc
aa31f8ac97
fixed shadowed parameter
2020-08-07 22:46:07 +10:00
itsmattkc
e45174cf51
Merge branch 'histogram-updates' of https://github.com/sobotka/olive into sobotka-histogram-updates
2020-08-07 20:32:35 +10:00
itsmattkc
991f430cc8
Merge pull request #1155 from sobotka/waveform-updates
...
Waveform Updates
2020-08-07 20:18:30 +10:00
itsmattkc
c6dd0e0204
nodeview: select on right click
2020-08-07 20:17:01 +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
02c0fb7316
nodeview: automatically deselect blocks that have been removed
...
Fixes segfault attempting to access and select an item that's already been
removed.
2020-08-05 23:56:42 +10:00
itsmattkc
d5dce29b22
cache: merged cachetask and footagecache into one precache task
...
Since the actual auto-cache now happens elsewhere, this cleans up a lot of
dead code.
2020-08-05 23:45:18 +10:00
itsmattkc
07a53d45f0
renderer: updated audio waveform generated for new cache overhaul
2020-08-05 22:32:24 +10:00
itsmattkc
c8def73b95
cache: mild auto-cache overhaul
...
Shifted from CacheTask to functionality built into RenderBackend. It was
a lot easier to control behavior this way without having to juggle a ton
of threads and race conditions.
Could likely be multithreaded further.
2020-08-05 02:19:04 +10:00
itsmattkc
07a3216a1f
timeline: if an item is selected while deleted, emit the deselection signal
2020-08-05 01:42:52 +10:00
itsmattkc
2afa5a42c7
ui: optimized widget signals for selecting clips/nodes
...
Decent performance optimization when working with the UI.
2020-08-01 02:12:20 +10:00
itsmattkc
fb05594b50
various: allow setting footage aspect ratios
...
We had support for detecting aspect ratios and respecting them in the
render, but this allows people to not only see the aspect ratio in use,
but also override it with their own.
2020-07-25 00:58:01 +10:00
itsmattkc
86b66004b0
ui: removed last of the widget proxies
2020-07-23 23:11:00 +10:00
itsmattkc
023ded1fb5
timeline: overhauled pointer tool again
...
Allows dynamic switching between pointer/roll/slide since occasionally this
behavior is interchangeable. Fixes a lot of transition behavior (but not
all of it).
2020-07-23 18:37:57 +10:00
itsmattkc
c76b25a17a
timeline: tools don't need to call move in the release function
...
I had thought that the cursor may still have moved between the last
mouseMoveEvent and the mouseReleaseEvent, but that turns out to be false
making it completely unnecessary to call move functions in the release
function.
2020-07-23 01:29:04 +10:00
itsmattkc
ce353ccbed
timeline: various work to improve timeline behavior, particularly when dealing with transitions
2020-07-22 18:09:57 +10:00
itsmattkc
4268ccd75e
importtool: fixed broken snapping
...
Snap points were made before the ghost's in/outs were set resulting in
incorrect points.
2020-07-22 10:32:04 +10:00