itsmattkc
bf9aa139b1
nodes: improved detection of length changes signalled from the viewer node
2020-05-24 18:11:26 +10:00
itsmattkc
efdf56acf8
cache: improved code pathways for cache
...
Viewers are now more aware of each other and can pause each others' cache tasks
when one of them plays, as well as wait for other viewers' cache tasks to
finish before starting their own.
2020-05-24 18:10:38 +10:00
itsmattkc
4f21a930dd
tasks: added elapsed/remaining time displays for all tasks
2020-05-24 18:10:08 +10:00
itsmattkc
4c4bcb0989
moved simple ms to hh:mm:ss function to timecodefunctions
2020-05-24 17:40:30 +10:00
itsmattkc
89ae6e026f
cache: reimplemented auto-caching
...
Implemented a smarter auto-cache that's context sensitive. Caching will
automatically pause when playback begins or values are being changed and resume
when inactive.
2020-05-24 15:20:35 +10:00
itsmattkc
a26a3cbf21
renderworker: improved update queue handling and reduced memory usage
2020-05-23 02:34:28 +10:00
itsmattkc
5b28070ed8
viewer: reimplemented playback queue warning
...
Not really sure why this was removed, must have been lost in the rewrite work.
2020-05-23 02:33:25 +10:00
itsmattkc
930248ce07
viewer: don't listen for added tracks to invalidate the cache
...
Fixes segfault when adding new tracks.
2020-05-23 02:32:01 +10:00
itsmattkc
f8bd3c1905
nodeinputarray: use deletelater rather than delete
...
Slightly safer code.
2020-05-23 02:31:40 +10:00
itsmattkc
2f5d97f30f
Merge branch 'cacheondemand' of https://github.com/olive-editor/olive into cacheondemand
2020-05-21 21:46:25 +10:00
itsmattkc
25370d0112
viewer: only start drags when using the primary mouse button
2020-05-21 21:45:46 +10:00
itsmattkc
5212a6032a
renderbackend: initialize queuer value
...
Leaving uninitialized could potentially cause issues.
2020-05-21 21:45:12 +10:00
itsmattkc
6507cfbfc9
ffmpegencoder: ensure codec ID is initialized
2020-05-21 18:28:34 +10:00
itsmattkc
34fade9d81
cache: attempt to automatically re-match hashes on invalidate
...
This code is slow and unoptimized. Will require some more work.
2020-05-21 16:49:02 +10:00
itsmattkc
cb72736f52
viewer: keep track of request order and ignore old requests
...
Prevents visual confusion with frames that were requested before the most recent
but arrived after.
2020-05-21 03:09:39 +10:00
itsmattkc
0cf6c9a1f6
export: use codec IDs rather than strings
...
Vastly improves portability between library versions.
2020-05-21 03:04:38 +10:00
itsmattkc
d5766489e4
export: fixed audio exporting with new renderer system
2020-05-21 02:18:52 +10:00
itsmattkc
a2d68f6d9f
timerange: added functions to + and - rationals from timeranges
2020-05-21 02:17:47 +10:00
itsmattkc
b6a42b812e
rational: refactored and cleaned up code
...
Old code (imported from elsewhere) has been cleaned up significantly, made more
understandable/maintainable, and conformed to the rest of the code style.
2020-05-21 02:16:13 +10:00
itsmattkc
0dc548a97e
viewer: fixed bugs in playback queue
...
Fixed issue that caused playback queue to desync and fallback to much slower
live playback.
2020-05-20 12:52:47 +10:00
itsmattkc
470bb44d0a
renderbackend: removed unusued dialog
...
This dialog caused a bunch of warnings and was unused in the new renderer
system. It may be used again later, so it's just been commented out, but there's
currently no plan to.
2020-05-20 12:50:59 +10:00
itsmattkc
87e7564222
cache: heavily reworked exporting for new system
...
Also cleans up cache in general and moves it to the Task infrastructure.
2020-05-19 23:35:17 +10:00
Troy James Sobotka
80badaa5a8
Waveform Fixes and Modifications
...
Fixes:
* Values exceeding the encoded range.
Future may account for a certain range
above and below current values.
* Minor calculation problem that prevented
the above fix from working properly.
* Streamlined the shader code.
* Add a vertex shader to handle the scaling.
* Use the viewport resolution as the scaled
version to save performance.
2020-05-19 00:13:13 -07:00
Troy James Sobotka
6ebe0084a3
Implement Histogram
...
Basic pass at histogram. Uses a power based
scale compared against the total pixel count.
Probably needs a UI toggle to flip lines on
and off as the text and lines in OpenGL are
a large cycles sucker. Could be likely much
faster when migrated to a geometry shader
approach. Uses the scaled viewport resolution
to increase performance as much as possible.
2020-05-19 00:07:34 -07:00
itsmattkc
cd847a89ce
decoder: removed old unused code
...
Minor cleanup.
2020-05-19 03:34:49 +10:00
itsmattkc
cb383d760b
tasks now emit floats rather than integers
...
Simplifies code for tasks.
2020-05-19 02:44:38 +10:00
itsmattkc
b9cd83eff1
task: massively simplified task system
...
Made various changes and fixes to the task system:
- Tasks are built around QtConcurrent rather than QThread. Reduces
code complexity significantly.
- Task error reporting is now streamlined in both TaskManager and
TaskDialog.
- Moved ProjectImport/Save/LoadManager to the app/task folder
2020-05-19 02:44:32 +10:00
itsmattkc
c4b0a53174
cache: render audio in chunks so they can be multithreaded
2020-05-18 22:52:31 +10:00
itsmattkc
558773538d
cache: fixed audio with new system
2020-05-18 17:16:28 +10:00
itsmattkc
127ebbe359
Merge branch 'master' into cacheondemandtake1
2020-05-18 13:46:35 +10:00
itsmattkc
3518a10230
opengl: added another bilt override for custom coordinates and mode
2020-05-18 13:41:11 +10:00
itsmattkc
b74ea1a8ba
renderer: reimported audio rendering functions
2020-05-18 12:52:25 +10:00
itsmattkc
814bbe8c22
fixed various segfaults in decoder and renderer
2020-05-18 02:40:58 +10:00
itsmattkc
a0f2035240
cache: fixed segfault if a block was ever disconnected
2020-05-16 00:31:24 +10:00
itsmattkc
53a2956350
cache: added cache task that can be manually invoked
2020-05-15 18:36:02 +10:00
itsmattkc
7c2280944b
timeruler: reworked and improved cache status
2020-05-15 16:15:24 +10:00
itsmattkc
a40eaa1ed5
mainmenu: added cache actions
2020-05-15 15:09:08 +10:00
itsmattkc
2039067fdc
renderer/viewer: fixed playback and live updates from value changes
2020-05-15 15:02:30 +10:00
itsmattkc
8795e51452
renderer: massive overhaul to move to a vastly simplified threading system
2020-05-15 00:52:45 +10:00
itsmattkc
ef6aa18fe1
further progress on first attempt
2020-05-14 16:47:01 +10:00
itsmattkc
863ae1b913
a first attempt at a new render system
2020-05-14 14:43:03 +10:00
itsmattkc
c5dfddff0d
renderer: weaved out various unnecessary InvalidateVisible functions
2020-05-13 23:04:15 +10:00
itsmattkc
194fddef7e
renderer: set to render only by default
2020-05-13 22:40:02 +10:00
itsmattkc
992321a9a5
viewer: don't update if gizmos haven't actually changed
...
Minor optimization that prevents unnecessary repaints of the viewer viewport.
2020-05-13 18:26:21 +10:00
itsmattkc
ce78c168e6
renderer: fix bug where disconnecting a shared node wouldn't update in the renderer
2020-05-13 16:07:08 +10:00
itsmattkc
1ed0814e83
nodeview: associate disconnected nodes with selected blocks until re-connected
2020-05-13 16:06:13 +10:00
itsmattkc
ce58671fd6
nodeview: started core node filtering work
2020-05-11 22:48:27 +10:00
itsmattkc
9c30f13a2e
nodeview: added setting for curved/straight edges
2020-05-10 04:33:37 +10:00
itsmattkc
ed82061b51
config: new default colors accidentally contained a duplicate
2020-05-10 04:10:33 +10:00
itsmattkc
6ad5076160
viewer: added debug message if playback queue falls behind
2020-05-10 04:05:08 +10:00