This website requires JavaScript.
9e9c6d9863
fix(app): never block the UI thread on a sync render during playback
Mike-Solar
2026-08-19 05:12:30 +08:00
a17d5be56a
fix(render): assign batch slots in the worker's acquisition order
Mike-Solar
2026-08-19 04:49:15 +08:00
345c464e55
fix(render): cap the playback pre-render window to the slot headroom
Mike-Solar
2026-08-19 01:55:59 +08:00
6dc8285f2a
fix(app): probed stream indices for original media, central modal-defer, one less onscreen copy
Mike-Solar
2026-08-19 01:19:52 +08:00
adf2cef32c
feat(oakrender): render-process isolation S3 - audio over shm, per-ticket slot formats, tuning
Mike-Solar
2026-08-19 00:42:03 +08:00
194d761ade
refactor(oakundo): replace the CHandle vtable layer with owned trait objects
Mike-Solar
2026-08-19 00:41:49 +08:00
e0aa597f1e
feat(app): custom shortcuts, Keyboard preferences tab, Action Search
Mike-Solar
2026-08-18 23:09:53 +08:00
ec7b7e6d13
feat(app): OpenFX UI wiring - effect library, inspector params, startup glue
Mike-Solar
2026-08-18 22:16:08 +08:00
d61acb9e0a
chore(crates): retire oakengine facade, drop oakcommon handle module
Mike-Solar
2026-08-18 21:40:35 +08:00
f12cf3ffef
refactor(oakundo): mark raw-pointer facade functions unsafe
Mike-Solar
2026-08-18 21:40:22 +08:00
cf459d7e4c
feat(app): multicam panel with live angle grid, switching, timeline enable
Mike-Solar
2026-08-18 21:40:00 +08:00
cad1d93544
feat(oakrender): render-process isolation S2 - process backend by default, zero-copy onscreen
Mike-Solar
2026-08-18 20:45:24 +08:00
74b080f88a
feat(oaktimeline): multicam enable/disable/switch commands, split copies the dependency graph
Mike-Solar
2026-08-18 20:45:01 +08:00
431b9ed2b1
feat(oakrender): render-process isolation S1 - dispatcher, scheduler, real worker
Mike-Solar
2026-08-18 18:58:38 +08:00
f2af92958a
feat(app): proxy editing and audio sync, aligned with the C++ version
Mike-Solar
2026-08-18 18:58:26 +08:00
2db1615453
feat(oakplugin): wire OpenFX plugins into the node graph and renderer
Mike-Solar
2026-08-18 17:15:13 +08:00
9daa266189
feat(app): gpui action/keymap shortcut system, full main menu, context menus
Mike-Solar
2026-08-18 17:15:00 +08:00
6576113a69
chore: bump gpui submodule (node zoom scaling, explorer thumbnails, divider drag fix)
Mike-Solar
2026-08-18 12:42:09 +08:00
33db5657e0
feat(app): reprobe legacy footage on load; background thumbnail pipeline
Mike-Solar
2026-08-18 12:42:03 +08:00
b8a3beaee4
feat(probe): record and print the footage stream inventory
Mike-Solar
2026-08-18 12:41:55 +08:00
61da70ecf8
fix(build): launch crash — @rpath/libz.1.dylib had no LC_RPATH
Mike-Solar
2026-08-17 19:42:45 +08:00
b36cbd6b6f
refactor: purge CHandle from module internals (M14 R5)
Mike-Solar
2026-08-17 16:40:15 +08:00
ede03d0bfe
chore: bump gpui submodule (track toggles + explorer icon buttons)
Mike-Solar
2026-08-17 01:37:46 +08:00
21cc2fba24
feat(app): track-header toggles, effect library, panel titles (design parity)
Mike-Solar
2026-08-17 01:37:31 +08:00
c5f1d0d76c
refactor(engine): pure cdylib + undo-stack test race fix (M14 R4)
Mike-Solar
2026-08-17 00:51:36 +08:00
022c0a7a5a
refactor(app): cut liboakengine, link module rlibs directly (M14 R3)
Mike-Solar
2026-08-16 23:36:43 +08:00
a45a7af2ac
refactor(cli,worker): cut liboakengine, link module rlibs directly (M14 R2)
Mike-Solar
2026-08-16 21:16:27 +08:00
8a2e45225f
refactor: sink facade glue into modules (M14 R1)
Mike-Solar
2026-08-16 20:37:45 +08:00
f59c7c8476
docs(riir): M14 — frontends link module rlibs directly (plan A)
Mike-Solar
2026-08-16 19:54:48 +08:00
4f6c903edb
chore: bump gpui submodule (dock panel drag-drop layout)
Mike-Solar
2026-08-16 19:46:34 +08:00
b2d353fe99
fix(app): footage drop auto-creates the media's track
Mike-Solar
2026-08-16 19:46:05 +08:00
2958464bd7
chore: bump gpui submodule (explorer icons + footage drag)
Mike-Solar
2026-08-16 19:07:35 +08:00
061aab9180
fix(app): full-res worker crash + source playback frozen + cli/worker DS batch
Mike-Solar
2026-08-16 19:07:07 +08:00
36ca413a84
ci: restore macOS and move all runners back to WarpBuild
Mike-Solar
2026-08-16 18:21:10 +08:00
f3f3748173
ci(cd): release needs only the linux job while macos/windows stay disabled
Mike-Solar
2026-08-16 18:09:36 +08:00
8334894984
ci(cd): packaging verified end-to-end on macOS
Mike-Solar
2026-08-16 18:05:03 +08:00
4e5d8747b5
refactor(oakengine): absorb oakcore host symbols into the dylib
Mike-Solar
2026-08-16 18:05:03 +08:00
e346ea5338
feat(app): P5 — async full-res render, full preferences, shortcut map
Mike-Solar
2026-08-16 18:05:03 +08:00
466cdcb7d7
chore: bump gpui submodule (ruler markers + work-area drag)
Mike-Solar
2026-08-16 16:06:36 +08:00
92daff1a83
feat(engine,app): timeline markers, work area, cross-track move (M12 P4)
Mike-Solar
2026-08-16 16:06:19 +08:00
23e6fa7a5b
chore: bump gpui submodule (project explorer drop fix)
Mike-Solar
2026-08-16 15:05:36 +08:00
693e2df5eb
feat(app): project browser on real project data + drag-drop import (M12 P3)
Mike-Solar
2026-08-16 15:05:01 +08:00
0f82092e95
refactor(app): retire manual-save semantics (M13 D5)
Mike-Solar
2026-08-16 14:17:45 +08:00
025dc88c25
feat(storage,app): PostgreSQL backend (D3) + project manager window (D4)
Mike-Solar
2026-08-16 10:39:31 +08:00
5fabad8efd
feat(engine): write-through persistence (M13 D2)
Mike-Solar
2026-08-16 08:52:23 +08:00
b35f3b49bc
docs: project storage architecture (en+zh), linked from README and docs index
Mike-Solar
2026-08-16 01:40:53 +08:00
3dfeed67f5
feat(storage): database backend D1 — SQLite, node-granular journal, snapshots, persistent undo
Mike-Solar
2026-08-16 01:38:27 +08:00
530bc762dc
docs(riir): M13 final — node-granular journal (diff-produced), snapshots, persistent undo
Mike-Solar
2026-08-16 01:19:41 +08:00
78d8073c89
docs(riir): M13 — database backend, write-through persistence, project manager
Mike-Solar
2026-08-16 00:40:02 +08:00
ab1a2e9c7b
refactor: drop internal bridge/ffi layers; exporter family lands
Mike-Solar
2026-08-16 00:33:45 +08:00
2248be8567
feat(storage): real oakstorage file backends + full-timeline .ove serializer
Mike-Solar
2026-08-14 15:14:38 +08:00
48d3027d50
feat(engine,app): node editor bound to the facade graph (M12 P2)
Mike-Solar
2026-08-14 13:33:49 +08:00
4240df1d71
refactor(crates): implement std::error::Error for all module error enums
Mike-Solar
2026-08-14 05:45:05 +08:00
d460d57805
fix(oakaudio): P1 output hardening
Mike-Solar
2026-08-14 05:45:05 +08:00
c8c282f06c
chore: bump gpui submodule (content-width dock tabs, rounded clips)
Mike-Solar
2026-08-13 23:39:42 +08:00
f0517fe6af
feat(app): UI walkthrough pass — faithful screenshots, dock labels, timeline clips, status bar, meter
Mike-Solar
2026-08-13 23:37:57 +08:00
c5287ff234
chore: bump gpui submodule (menu scrubbing + density pass)
Mike-Solar
2026-08-13 18:16:27 +08:00
5afa95c80e
feat(render,app): footage decode lands (M12 P0) + UI density pass
Mike-Solar
2026-08-13 18:16:10 +08:00
3625e37081
docs(riir): M12 app rewrite plan (gpui shell, P0-P5 phases)
Mike-Solar
2026-08-12 14:35:14 +08:00
06f47235b2
feat(engine,app): source-monitor frames + real audio meter
Mike-Solar
2026-08-12 14:19:18 +08:00
f1f4124b18
chore: bump gpui submodule (tab-policy formatting pass)
Mike-Solar
2026-08-11 23:06:40 +08:00
18ff60f147
feat(engine): clip move, clip effect_input, mandatory static FFmpeg
Mike-Solar
2026-08-11 23:04:48 +08:00
a209f63d52
ci: rewrite CI/CD for the Rust workspace
Mike-Solar
2026-08-11 20:04:44 +08:00
05e42668cb
build(ffmpeg): static GPL FFmpeg 8.0 via project script + FFMPEG_DIR
Mike-Solar
2026-08-11 20:04:44 +08:00
cdda643d64
feat(engine,app): effect chain facade + app effect stack wiring
Mike-Solar
2026-08-11 20:04:44 +08:00
f86a895c8a
Revert "build: root .cargo/config.toml enables the real OCIO bridge workspace-wide"
Mike-Solar
2026-08-11 18:05:56 +08:00
43003d0e33
build: root .cargo/config.toml enables the real OCIO bridge workspace-wide
Mike-Solar
2026-08-11 18:00:08 +08:00
7b295b7661
feat(app): scopes (histogram/waveform/vectorscope) fed by rendered frames
Mike-Solar
2026-08-11 17:04:42 +08:00
f908724a7a
feat(app): real engine renders true frames to the viewers
Mike-Solar
2026-08-11 16:10:14 +08:00
26009a5ea5
refactor(oakaudio): drop ffmpeg_bridge fb_* imports, call ffmpeg-next in-process
Mike-Solar
2026-08-11 16:10:14 +08:00
aa5fcef66e
fix(oakengine): facade bugs found by integration tests
Mike-Solar
2026-08-11 01:30:18 +08:00
b564e7a71f
chore: bump gpui submodule (submenu hover fix, icons/tooltip helpers)
Mike-Solar
2026-08-11 00:25:21 +08:00
063837446d
feat(app): link liboakengine.dylib via frozen C ABI; UI fixes
Mike-Solar
2026-08-11 00:25:20 +08:00
3110e5cc3a
test(oakengine): rename integration test families to English names
Mike-Solar
2026-08-11 00:24:57 +08:00
d9c477365a
remove: remove some unneccessary files
Mike-Solar
2026-08-10 21:12:29 +08:00
013a175707
refactor: workspace layout — crates/, app at root, legacy C++ removed
Mike-Solar
2026-08-10 20:24:25 +08:00
f8540e3892
refactor(engine): single-lib phase 3 — plugin/timeline/task/codec bridges converted
Mike-Solar
2026-08-10 19:11:25 +08:00
96e57b3705
refactor(engine): single-lib phase 2 — node/render/audio bridges to direct calls
Mike-Solar
2026-08-10 18:29:18 +08:00
e1423553c7
refactor(engine): single-lib phase 1 — direct Rust calls across the facade
Mike-Solar
2026-08-10 17:48:13 +08:00
f0d551d4a8
docs(riir): settle stale tech-debt entries in notes.md
Mike-Solar
2026-08-10 17:00:37 +08:00
0ca9cad448
feat(engine): rename facade to oakengine, build liboakengine.dylib
Mike-Solar
2026-08-10 16:55:35 +08:00
e563b340ac
feat: oakengine facade, oaknode/oakrender impls, worker+CLI, app skeleton
Mike-Solar
2026-08-10 08:12:08 +08:00
d11d80ea53
chore: add oak-gpui submodule (UI framework for the app rewrite)
Mike-Solar
2026-08-09 20:21:28 +08:00
cac41d92c1
feat(rust): oakcodec/oaktask/oakplugin crates + oakotio + node/render/storage skeletons
Mike-Solar
2026-08-09 05:49:15 +08:00
4b24aa9d67
feat(rust): first green Rust crates — oakcore-rs, oakundo, oakcommon, oaktimeline, oakaudio
Mike-Solar
2026-08-09 04:24:28 +08:00
5a564f30ca
refactor(node,render): route oaknode->oakrender calls through the C ABI
Mike-Solar
2026-08-08 03:56:17 +08:00
81431d180d
refactor(node,timeline): route oaknode->oaktimeline calls through the C ABI
Mike-Solar
2026-08-07 22:53:44 +08:00
fd2111d560
refactor(plugin): de-Qt oakplugin and wrap it in a pure C ABI
Mike-Solar
2026-08-07 22:18:36 +08:00
0462842f8c
refactor(render,timeline,task): switch remaining handles to refcounted value structs
Mike-Solar
2026-08-07 18:05:34 +08:00
67176281d9
refactor(node): switch oaknode to refcounted value handles, migrate consumers
Mike-Solar
2026-08-07 17:20:42 +08:00
295ea1bfe5
refactor(undo): switch oakundo to refcounted value handles, migrate consumers
Mike-Solar
2026-08-07 15:48:34 +08:00
da2ab512c6
refactor(task): OTIO load/save tasks over oaknode/oaktimeline C ABIs
Mike-Solar
2026-08-07 14:58:56 +08:00
40a336276f
refactor(task,render): RenderTask family over a new oakrender ticket C ABI
Mike-Solar
2026-08-07 14:40:12 +08:00
6ded1d2d63
refactor(task): de-Qt oaktask base + project tasks, wire codec task submitter
Mike-Solar
2026-08-07 14:01:23 +08:00
66831a870e
refactor(timeline): de-Qt oaktimeline and wrap it in a pure C ABI
Mike-Solar
2026-08-07 04:37:24 +08:00
354df2e194
refactor(config,audio): merge config into oakcommon, split oakaudio
Mike-Solar
2026-08-06 20:53:07 +08:00
3d004c081b
refactor(codec): de-Qt oakcodec and wrap it in a pure C ABI; switch common handles to refcounted value structs
Mike-Solar
2026-08-06 18:50:07 +08:00
edbd3913af
refactor(render): de-Qt oakrender and wrap it in a pure C ABI
Mike-Solar
2026-08-06 03:21:26 +08:00
d77348ad9f
refactor(node): de-Qt oaknode and wrap it in a pure C ABI
Mike-Solar
2026-08-05 23:55:54 +08:00
c50017127b
refactor(undo): de-Qt oakundo and wrap it in a pure C ABI
Mike-Solar
2026-08-05 18:02:24 +08:00