Mike-Solar
66d761b4b7
R8: finish app/ pure C ABI migration (P3-P9) and make OTIO required
...
- app/ no longer includes engine C++ headers nor holds engine C++ types:
engine access goes through the oakengine C ABI plus C++ wrappers
(oakutil/oaknode.h, oakutil/oakvideo.h) and app-local mirror types
(tooltypes, trackreferencehandle, timelinecommonapp, keyframetypes,
subtitleapp, serializedlayoutinfoapp, nodevaluehandle, sliderdisplaytypeapp)
- engine: new C ABI functions for block/track/clip/transition navigation
and predicates, links, caches, waveform/playback, disk folder,
sequence_track_list, node_free, footage_is_valid, block_get_track,
get_brush; loadotio/saveotio ported to the current engine API
- OTIO is now a required dependency: CI and CD build it on every
platform, FindOpenTimelineIO fixed for OTIO 0.16/0.19 (the old deps
include requirement silently disabled OTIO everywhere), runtime
libraries are bundled into packages and copied next to macOS binaries
(oak_copy_otio_runtime)
- fix ProjectViewModel drag&drop mime read/write size mismatch (segfault)
- unify color label naming (k_olive -> "Oak") in the app-side mirror
- docs: OTIO required, FFmpeg minimum corrected to 6.0 (en/zh)
- gtest suite: 1925 passed, 0 failed
2026-07-31 22:46:52 +08:00
..
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-04-12 01:26:41 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-31 22:46:52 +08:00
2026-07-19 21:45:51 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 21:45:51 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-17 13:07:56 +08:00
2026-07-19 21:45:51 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-27 05:27:32 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-20 01:04:57 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 21:44:34 +08:00
2026-07-13 15:34:11 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-31 22:46:52 +08:00
2026-07-26 22:43:32 +08:00
2026-07-26 22:43:32 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 21:43:58 +08:00
2026-07-26 22:43:32 +08:00
2026-07-26 22:43:32 +08:00
2026-07-19 16:10:54 +08:00
2026-07-13 15:34:11 +08:00
2026-07-31 22:46:52 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-20 00:52:12 +08:00
2026-07-19 21:45:51 +08:00
2026-07-26 22:43:32 +08:00
2026-07-20 00:52:12 +08:00
2026-07-20 00:52:12 +08:00
2026-07-20 00:52:12 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-26 22:43:32 +08:00
2026-07-19 16:10:54 +08:00
2026-07-26 22:43:32 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-31 22:46:52 +08:00
2026-07-19 16:10:54 +08:00
2026-07-31 22:46:52 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-04-12 01:08:22 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-01-10 18:56:58 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-31 22:46:52 +08:00
2026-07-19 16:10:54 +08:00
2026-07-31 22:46:52 +08:00
2026-07-19 21:43:58 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 22:12:29 +08:00
2026-07-19 22:12:29 +08:00
2026-07-26 22:43:32 +08:00
2026-07-20 04:12:58 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-31 22:46:52 +08:00
2026-07-26 22:43:32 +08:00
2026-07-19 16:10:54 +08:00
2026-07-26 22:43:32 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 21:45:51 +08:00
2026-07-19 22:12:29 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-31 22:46:52 +08:00
2026-07-13 15:34:11 +08:00
2026-07-26 22:43:32 +08:00
2026-07-26 22:43:32 +08:00
2026-07-19 16:10:54 +08:00
2026-07-31 22:46:52 +08:00
2026-07-19 16:10:54 +08:00
2026-07-31 22:46:52 +08:00
2026-07-27 08:26:13 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-31 22:46:52 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-19 16:10:54 +08:00
2026-07-31 22:46:52 +08:00
2026-07-20 18:55:04 +08:00
2026-07-20 18:55:04 +08:00
2026-07-19 16:10:54 +08:00
2026-07-31 22:46:52 +08:00
2026-07-19 16:10:54 +08:00
2026-07-31 22:46:52 +08:00
2026-07-31 22:46:52 +08:00
2026-07-31 22:46:52 +08:00
2026-07-20 00:52:12 +08:00
2026-07-31 22:46:52 +08:00