Commit Graph
265 Commits
Author SHA1 Message Date
Mike-Solar c203ce1dbf fix: black preview when footage connects directly to a clip
ClipBlock::kBufferIn is declared as NodeValue::kNone with no value
hint, so when a footage node is connected straight to a clip's buffer
input (no effect node in between), the traverser has no type to look
up in the footage's value table and falls back to its last entry. A
footage pushes its video texture first and its audio samples last, so
a video clip ended up fed with audio samples, produced no texture and
the preview went silently black. With any node in between, the table
only carries the passthrough texture, which is why the bug only showed
on direct connections.

Make Node::GetValueHintForInput virtual and override it in ClipBlock
to prefer the value type matching the clip's track (kTexture on video
tracks, kSamples on audio tracks).

Regression tests cover the exact application render path
(PreviewAutoCacher -> RenderManager -> RenderWorkerPool ->
oak-render-worker) for both the direct and indirect cases, the hint
following the track type, and viewer display widgets. The direct-case
test reproduces the black frame without the fix and passes with it.
Full suite: 584 passed.
2026-07-16 01:06:24 +08:00
Mike-Solar e5eeaddf2f format: reformatting files 2026-07-13 15:30:43 +08:00
Mike-Solar bfb1b2fce4 update copyright back 2026-01-16 21:22:05 +08:00
Mike-Solar b8669f6a11 Change project name; 2026-01-05 16:22:26 +08:00
Mike-Solar 86e82b13e2 remove unused includes 2026-01-05 14:24:28 +08:00
Mike Solar 6fdfd03ffd update: update copyright 2025-08-05 17:12:49 +08:00
Mike Solar 74f73ab3be change: change code style to Linux style except indent. 2025-08-03 03:09:40 +08:00
itsmattkc d71359e914 track: fixed issues from recent rework 2023-03-02 00:06:35 -08:00
itsmattkc aeac292ecb Merge branch 'master' into track-redux 2023-02-23 11:07:50 -08:00
itsmattkc 5e29414dce clip: use footage label by default rather than copied label 2023-02-21 19:44:26 -08:00
itsmattkc bef8fd7b50 Merge branch 'node-rework' into track-redux 2023-02-21 09:33:52 -08:00
itsmattkc f9cd28a694 node: make convenient input flag setter 2023-02-20 19:13:50 -08:00
itsmattkc 114ddc7d0d Merge branch 'node-rework' into track-redux 2023-02-19 21:36:15 -08:00
itsmattkc 71e8665fbf move item setting to a node flag 2023-02-19 21:30:49 -08:00
itsmattkc 3b822c1110 save/sync data with binary arraymap 2023-02-19 20:52:07 -08:00
itsmattkc 5da72e4d35 Squashed commit of the following:
commit dec7ca6b96c58decf2c5e5194b665fa2342951b2
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Wed Feb 8 12:32:12 2023 -0800

    moved previewautocacher to rendermanager

commit d289d74d82c3911f3fdaa707abe9994c7363594d
Merge: a8a049a28 70d34c674
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Wed Feb 8 12:15:31 2023 -0800

    Merge branch 'master' into move-cacher-to-renderman

commit a8a049a2857c438cbab0f1ab21e3299fdfbf1fa1
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Wed Feb 8 11:18:25 2023 -0800

    initial work
2023-02-08 12:40:19 -08:00
itsmattkc c1c6893713 various: moved more to core lib 2023-01-19 16:01:31 -08:00
itsmattkc 9a0e16f504 move clamping code from clip to track
Fixes severe regression related to audio transitions
2022-11-18 10:20:03 -08:00
itsmattkc 073e9fdb0e fixed transition regression 2022-11-01 21:04:44 -07:00
itsmattkc ca47792dc7 nodes: clamp footage retrieval times for clips
Fixes #2070
2022-11-01 12:44:01 -07:00
itsmattkc 5e92930de0 nodes: fix loop mode regression 2022-11-01 09:15:51 -07:00
itsmattkc 3ae7f0ff7e diptocolortransition: ensure base params are retranslated too 2022-10-24 10:05:49 -07:00
itsmattkc f4011db5b4 diptocolortransition: ensure input name is set 2022-10-24 09:28:15 -07:00
itsmattkc 89677ce7e4 transition: push null texture if none exists 2022-10-24 09:19:44 -07:00
itsmattkc 9b0ba2a6c4 transition: show in param view 2022-10-16 09:43:02 -07:00
itsmattkc fa8dc8892b clip: limit input node lookup to 1 2022-10-05 21:01:15 -07:00
itsmattkc d9c50ce176 clip: limit maximum multicam to 1 2022-10-05 20:54:17 -07:00
itsmattkc e91ae5e4df Merge branch 'master' into multicam 2022-10-01 13:51:04 -07:00
itsmattkc df97df635d timeline: implement nest function
Also includes some improved cache/request code
2022-10-01 13:04:51 -07:00
itsmattkc 74a1ec1479 multicam: implement clip splitting 2022-09-28 17:57:09 -07:00
itsmattkc c0d8ff403f nodes: rework so that jobs can be completely deferred
Big optimization requiring a lot of refactoring.
2022-09-24 18:44:59 -07:00
itsmattkc f157e5014d fix more instances where sample counts used int instead of size_t 2022-09-16 00:35:48 -07:00
itsmattkc 3003b4e849 crossdissolvetransition: use size_t instead of int for sample counts 2022-09-16 00:09:38 -07:00
itsmattkc d0e12ce607 timeline: add options for manually caching and discarding parts of clips 2022-09-13 19:19:42 -07:00
itsmattkc 7c0637d428 clip: remove unnecessary lines 2022-09-08 20:28:59 -07:00
itsmattkc 97ae714017 clip: fixed issue where thumbs would be cached infinitely 2022-09-06 17:00:21 -07:00
itsmattkc 571be3d28d timeline: added thumbnail modes that affect how much is rendered 2022-09-06 16:06:26 -07:00
itsmattkc 53def87749 timeline: request caches on import 2022-09-01 11:05:30 -07:00
itsmattkc 54d0a94a20 Merge branch 'master' into cache-update 2022-08-18 08:12:46 -07:00
itsmattkc 4a22bf71e7 clip: fix issue with trimming in point of speed adjusted clip 2022-08-15 18:24:17 -07:00
itsmattkc 5ea97f7a64 render: remove alpha request option 2022-07-20 23:14:16 -07:00
itsmattkc 0d9727b6d2 architecture: move loop modes to clips 2022-07-17 15:22:36 -07:00
itsmattkc 0cab96d463 clip: correct bug in media_range() function 2022-07-02 19:08:24 -05:00
itsmattkc 7e1792cfea Merge branch 'master' into cache-update 2022-07-01 22:32:49 -05:00
itsmattkc 89927c71ff implemented reveal in footage viewer option
Fixes #1958
2022-06-27 23:40:05 -07:00
itsmattkc 079d6beff2 timeline: separate markers and workarea 2022-06-27 23:39:31 -07:00
itsmattkc eeea16c5c3 cache: add passthroughs to allow shallow copies of data 2022-06-06 20:06:43 -07:00
itsmattkc dfc401b63c cache: behavior improvements 2022-06-06 09:39:09 -07:00
itsmattkc 25699ef05b cache: use disk states to share caches 2022-06-05 19:47:33 -07:00
itsmattkc 7a8794fe88 ui: draw clip cache on timeline 2022-06-03 17:16:29 -07:00