Commit Graph
3149 Commits
Author SHA1 Message Date
eszlari a5a10ed03d Linux/.desktop: add %f 2020-04-16 12:23:34 +10:00
itsmattkc ca071beb33 Merge branch 'master' of https://github.com/olive-editor/olive 2020-04-16 12:21:09 +10:00
itsmattkc 32969d2403 colordialog: updated to show input/reference/display values 2020-04-15 18:11:46 +10:00
itsmattkc 9cc4349054 timebasedwidget: re-implemented toggle show all function 2020-04-15 15:31:54 +10:00
itsmattkc 2610d58ae3 footagecombobox: fixed bug where footagecombobox would display null on first showing 2020-04-15 03:59:46 +10:00
itsmattkc cc421d4108 keyframeview: show correct length and jump to the corresponding time in NodeParamView 2020-04-15 03:35:48 +10:00
itsmattkc 7ea8c52c78 /nodeparamviewwidgetbridge: block combobox signals when updating from node
Prevents unnecessary re-caching caused by the combobox signalling that its
value has changed when we're really just setting the value that the node already
has.
2020-04-15 02:52:24 +10:00
itsmattkc 07dfe1c364 solid shader: moved from generator to input category 2020-04-15 02:52:12 +10:00
itsmattkc cb6c054b8d trigonometrynode: implemented trigonometry node 2020-04-15 02:41:20 +10:00
itsmattkc c09d83291e nodeparamviewwidgetbridge: empty combobox entries are separators 2020-04-15 02:41:05 +10:00
itsmattkc c761403ba4 mathnode: override texture x matrix op 2020-04-15 02:07:48 +10:00
itsmattkc a0a7d106dc mathnode: implemented add/subtract/multiply/divide/power functions
Includes implementing combobox UI for the NodeParamViewWidgetBridge.
2020-04-15 01:52:24 +10:00
itsmattkc fd1ecfae6f audio: removed hardcoded stereo value
Fixes bug that caused AudioMonitor to only show two channels regardless of the
actual number of channels being mixed.
2020-04-14 23:55:28 +10:00
itsmattkc 2646d424d8 sequence: fixed broken detection of audio channel layouts when setting params from footage 2020-04-14 23:49:48 +10:00
itsmattkc 9f7a9d85b4 ffmpegdecoder: fixed deadlock on non-video streams 2020-04-14 23:42:31 +10:00
itsmattkc 6046b1e892 timeline: fixed bug that prevented clips from being dragged to lower tracks 2020-04-14 23:36:59 +10:00
itsmattkc d8df104c35 keyframeviewbase: for one-dimensional views, if multiple keys are at the same time, select all of them 2020-04-14 23:26:59 +10:00
itsmattkc e5ac9d48a6 mathnode: added path for math between a texture and a matrix 2020-04-14 23:07:00 +10:00
itsmattkc a2f954a0a7 memorypool: implemented arenas
A pool can allocate/destroy any amount of arenas during runtime, meaning it
won't run out of memory but we still get the advantages of one large allocation
as opposed to hundreds of small allocations.
2020-04-14 16:23:45 +10:00
itsmattkc feceef0d62 ffmpegdecoder: impose limit on memory frame cache 2020-04-14 15:16:38 +10:00
itsmattkc 9cc343bf13 ffmpegdecoder: share framepool with all instances
We can conserve memory by sharing our frame pool amongst instances of the same
stream.
2020-04-14 14:51:31 +10:00
itsmattkc b3bebeeef3 decoder: removed unused destructor
Very old unused code.
2020-04-14 14:51:15 +10:00
itsmattkc 9a25064b00 memorypool: placed mutex around get and release functions
Makes all memory pool derivatives effectively thread-safe.
2020-04-14 14:50:37 +10:00
itsmattkc 873f58d057 Merge branch 'decoder-ffpool' 2020-04-14 02:45:38 +10:00
itsmattkc 7bfdf8af7c ffmpegframepool: implemented functional frame pool
Includes splitting off core functionality to a base MemoryPool class that can
be re-used later if necessary.
2020-04-14 02:43:12 +10:00
itsmattkc 2eb03bf386 various: removed constructor.h include 2020-04-14 00:53:25 +10:00
itsmattkc 20b10509fe travis: revert xcode version
Updating the Xcode version appears to have broken rendering on macOS.
2020-04-13 23:45:16 +10:00
itsmattkc 6bb972b4db decoder: began implementation of a frame pool 2020-04-13 23:44:42 +10:00
itsmattkc 5c927ce7a4 core: merged define and constructor headers 2020-04-13 23:44:18 +10:00
itsmattkc f80a82459b ffmpegdecoder: clear cache_at_zero flag if frames are removed 2020-04-13 13:24:30 +10:00
itsmattkc aac47ba776 viewer: re-queue video renderer even when beyond the length
Ensures video renderer always renders where the playhead is.
2020-04-13 13:19:08 +10:00
itsmattkc cdf5a1058d ffmpegdecoder: re-use existing frame pool for memory management 2020-04-12 14:12:08 +10:00
itsmattkc fa16d2169b videorenderbackend: render sequentially rather than outwards 2020-04-12 02:11:55 +10:00
itsmattkc 4d8af6855f ffmpegdecoder: made all instances shared
Decoders now share instances between them and can interact with other threads
to share resources and continue the work of others.
2020-04-12 01:49:10 +10:00
itsmattkc e6b47a817c ffmpegdecoder: separated instance from decoder entity
Should allow for different decoders in different threads to share a single
instance.
2020-04-11 17:37:52 +10:00
itsmattkc a8fbe686e2 openglrenderer: retrieve frame in each worker thread rather than in the proxy thread
Since we now have decoders in each thread, we can parallelize by retrieving
frames in each thread as well.
2020-04-11 17:37:00 +10:00
itsmattkc f08734d18e index/confirm tasks: these tasks no longer need to open the decoder to perform said tasks 2020-04-11 17:36:16 +10:00
itsmattkc ce7fa12520 ffmpegdecoder: implemented basic decoder crosstalk 2020-04-11 13:18:44 +10:00
itsmattkc 0c3ce03348 renderer: use a dedicated decoder per thread 2020-04-11 13:18:31 +10:00
itsmattkc 4cb02b6769 core: set config defaults a second time before loading
Works around an issue where media cache directories would be set before the
app name is set (which Qt uses to return the local appdata dirs used to
set the cache directories).
2020-04-08 02:03:46 +10:00
itsmattkc f5a9dee139 exportdialog: added elapsed/remaining time indicator 2020-04-08 01:48:03 +10:00
itsmattkc 7bc7b6098b ui: moved remaining QMenus to our Menu class
Mainly to take advantage of Menu's specific styling on certain platforms to
keep a consistency.
2020-04-08 00:46:30 +10:00
itsmattkc 6d6b2b237e projectexplorer/mainwindow: close sequence if it's open before deleting it 2020-04-07 03:11:50 +10:00
itsmattkc cf04cad238 mainwindow/timelinepanel: closing a timeline will close a sequence entirely
UI detail.
2020-04-07 03:07:43 +10:00
itsmattkc 9f89f57090 track: when length changes, force the new area to invalidate
The track limits cache invalidation signals to the length of the track. On some
platforms, if a block length was changed to the point that it changed the
track length, the track length would change AFTER the cache invalidation and
therefore never end up getting rendered.

This commit ensures that when a track's length changes, the new section is
invalidated regardless of ordering.
2020-04-07 02:34:59 +10:00
itsmattkc 48a1f20ff3 git: ignore "build" folders 2020-04-06 23:40:01 +10:00
itsmattkc ee5d47a53f viewer: check if file exists before passing to OIIO
This is valid in our system and suppresses OIIO message when files do not exist.
2020-04-06 23:39:19 +10:00
itsmattkc 1b4c241b5b windows: implemented export progress on taskbar button 2020-04-06 18:13:07 +10:00
itsmattkc 78c592cf8d audiorenderer: fixed bug where conform signals would send corrupt re-cache time 2020-04-06 17:10:15 +10:00
itsmattkc 4a8a44a8b1 timerange: added debug output functions for the TimeRange and TimeRangeList classes 2020-04-06 17:08:13 +10:00