Commit Graph
350 Commits
Author SHA1 Message Date
wiiiii123 513c576c27 fix(electron): preserve unsupported export blocks 2026-05-09 11:23:01 +07:00
wiiiii123 92f7476c64 fix(electron): force main bundle cjs output 2026-05-09 10:51:22 +07:00
wiiiii123 fe294b71d5 fix(recording): fail cleanly on WGC resize errors 2026-05-09 07:49:54 +07:00
wiiiii123 f3fcd4bfda fix(recording): stabilize WGC resize frames 2026-05-09 00:06:53 +07:00
wiiiii123 4f89a6d38d fix(export): keep large saves off arraybuffer path 2026-05-08 22:40:40 +07:00
wiiiii123 1efc9f1706 fix(electron): avoid cjs dirname binding collision 2026-05-08 20:07:36 +07:00
wiiiii123 81bfd2dbcc fix(export): harden post-merge file handling 2026-05-08 13:07:25 +07:00
Phạm Thị Minh Hồng b1f4bfae3b Merge pull request #410 from meiiie/perf/native-chunked-export-fastpath
Adds guarded native Windows D3D11 and NVIDIA CUDA export compositors for supported Lightning/static-layout MP4 exports, while keeping WebCodecs/WebGL fallback for unsupported feature combinations.

Includes release hardening for native output validation, safe file replacement, CJS bundle smoke checks, helper manifest verification, recording diagnostics, and the Windows browser mic path that fixed the reported crackle/noise issue in beta testing.

Validation before merge:
- `npx tsc --noEmit`
- focused export/audio/telemetry/unit coverage (`92` + `27` tests across the latest hardening passes)
- scoped Biome checks on touched release-gate files
- `npx vite build --config vite.config.ts`
- `node scripts/smoke-electron-main-cjs.mjs`
- `npm run smoke:packaged-binaries`
- `git diff --check`

Known release-safe gates still fall back intentionally: video backgrounds, annotation/caption/frame overlays, missing helper-readable webcam sources, unsupported audio modes, odd output dimensions, and any native helper output that fails validation.
2026-05-08 12:59:51 +07:00
wiiiii123 f2691187b4 fix(export): tighten native cursor and save cleanup 2026-05-08 12:41:00 +07:00
wiiiii123 add11c820a fix(export): harden native release gates 2026-05-08 12:24:04 +07:00
webadderall 01332a3e42 Only show update UI for real available updates 2026-05-08 14:39:37 +10:00
wiiiii123 211d6165f9 merge main into beta/pr410-native-gpu-export-test
# Conflicts:
#	electron/ipc/project/manager.ts
#	electron/ipc/register/export.ts
#	src/lib/exporter/modernVideoExporter.ts
2026-05-08 10:44:13 +07:00
webadderall 2380e56431 Clarify local file read and media allowlist intent 2026-05-08 12:30:26 +10:00
webadderall 25cd1f2f75 Speed up Lightning export and relax local media reads 2026-05-08 11:32:04 +10:00
webadderall cea93cb9fd fix(hud): restore hide and linux fallback 2026-05-08 10:31:33 +10:00
webadderall ea8e486436 Merge pull request #419 from crbender/fix/local-read-allowlist-and-postinstall-fallback
fix: close local read allowlist bypass and make whisper-runtime postinstall non-fatal
2026-05-08 09:17:25 +10:00
wiiiii123 234a7b537a fix(export): support native cropped layouts 2026-05-08 03:20:28 +07:00
wiiiii123 eab365d115 fix(export): enable native speed timelines 2026-05-08 02:28:35 +07:00
wiiiii123 c77007560b fix(recording): account for mic pause gaps 2026-05-08 01:35:17 +07:00
wiiiii123 254783b15f fix(export): gate native speed timelines 2026-05-08 00:39:14 +07:00
wiiiii123 3455475f38 fix(export): harden native beta pipeline 2026-05-07 22:37:27 +07:00
Alan Trebugeais 02889c73f6 fix minimize after 2 clicks in the void, Recordly should always be on top 2026-05-07 13:35:02 +02:00
Alan Trebugeais 471f70d401 chore: reset package-lock.json and electron/native to main 2026-05-07 10:18:44 +02:00
Alan Trebugeais cdf19210bd del: removed compatibility layers which were no ops 2026-05-07 00:56:10 +02:00
wiiiii123 7e94355bb0 fix(recording): default windows mic to browser processing 2026-05-07 04:51:30 +07:00
Alan Trebugeais ff2759448a better code in sources/launchwindow/source
add: caching for 1.2s for a better user experience, less refreshing, it's actually instant now.
2026-05-06 23:32:58 +02:00
Alan Trebugeais c7dc99710b fix: hud overlay was flashing white (because I added a fullscreen window to render the overlay, otherwise it wouldn't stop jittering.)
add: launchTheme.css to have everything under the same variables.
2026-05-06 23:16:52 +02:00
Alan Trebugeais df785a8cbc fix: overflow, add window in fullscreen mode to avoid jittering when opening up select...
add: launchTheme.css for consistent styling accross the whole components spectrum related to LaunchWindow
add: correct styles accross the popovers! with unstyled parameters in Popover.tsx because it was needed to make sure its the same
2026-05-06 23:12:03 +02:00
wiiiii123 7dd827be43 fix(recording): add windows mic diagnostics fallback 2026-05-07 04:00:46 +07:00
wiiiii123 115ecba7c5 fix(recording): reduce native mic noise amplification 2026-05-07 03:29:58 +07:00
Alan Trebugeais 8a3539abef add: LaunchWindow source selector without that much of a jitter. it's still weirdly behaving but it's better 2026-05-06 21:50:07 +02:00
Alan Trebugeais b1a0667a1c edit: LaunchWindow, RecordingControls for seperations of concern
fix: SourceSelection performances
add: seperator.tsx for "divider" component, instead of a non-generic component. can be reused elsewhere!
2026-05-06 19:34:21 +02:00
wiiiii123 65e7bd4fff fix(recording): prefer staged windows capture helper 2026-05-06 23:46:13 +07:00
wiiiii123 e660b49241 fix(recording): compact silent mic discontinuities 2026-05-06 23:11:16 +07:00
wiiiii123 eb1ea68f7e fix(export): support native background blur 2026-05-06 20:53:44 +07:00
wiiiii123 63a8a5bf43 fix(recording): compact short mic discontinuities 2026-05-06 20:16:32 +07:00
wiiiii123 ae0378cee4 fix(recording): declip native Windows mic peaks 2026-05-06 19:10:22 +07:00
wiiiii123 f8df2d6ae9 fix(recording): soften native mic gap boundaries 2026-05-06 18:50:06 +07:00
wiiiii123 b3862bde79 fix(export): allow native cursor overlay routing 2026-05-06 07:04:01 +07:00
wiiiii123 1168e0edcc fix(export): preserve pitch for fallback speed audio 2026-05-06 06:43:40 +07:00
wiiiii123 9ac4c55ccf feat(export): prepare native GPU beta candidate
Add validated native CUDA/D3D11 timeline retime, pause-aware capture timing, webcam source-time sampling, edited-track audio duration padding, packaged helper updates, and focused tests for PR #410 tester branch.
2026-05-06 01:50:12 +07:00
wiiiii123 df8a1a3ed3 Merge remote-tracking branch 'origin/main' into perf/native-chunked-export-fastpath
# Conflicts:
#	electron/ipc/register/recording.ts
#	src/components/video-editor/VideoEditor.tsx
#	src/components/video-editor/VideoPlayback.tsx
#	src/hooks/useScreenRecorder.ts
#	src/lib/exporter/modernFrameRenderer.ts
#	src/lib/exporter/modernVideoExporter.ts
2026-05-05 16:59:32 +07:00
webadderall b773f98ad0 fix: address PR feedback regressions 2026-05-05 16:17:47 +10:00
webadderall 2c0c436267 Reapply "feat: bundle cursor motion and temporal blur updates"
This reverts commit be01bccb7a.
2026-05-05 16:16:56 +10:00
webadderall ad9895a1c4 Merge pull request #413 from webadderallorg/codex/cursor-telemetry-write-api
feat: add writable cursor telemetry API
2026-05-05 14:57:09 +10:00
webadderall c01981fd5e fix: address PR review regressions 2026-05-05 11:43:04 +10:00
Recordly Reviewer b0ab0bf184 fix: address PR review feedback - canonicalize via realpath and gate whisper soft-fail
isAllowedLocalReadPath now resolves the candidate via fs.realpathSync and requires both the lexical and canonical paths to satisfy the policy, so a symlink placed under an allowed prefix that points outside the allowlist is rejected. The redundant 'either resolved or realResolved is allowed' check in read-local-file and generate-wallpaper-thumbnail is removed since the function canonicalizes internally. Adds a regression test that creates such a symlink (skipping when Windows refuses to create it without Developer Mode).

build-whisper-runtime now only soft-fails when invoked from postinstall, in CI, or with WHISPER_RUNTIME_ALLOW_MISSING=1. Direct 'npm run build*' invocations fail loudly when CMake is missing and no bundled runtime is staged so we don't ship release builds with broken auto-captioning.
2026-05-04 14:31:09 -04:00
Recordly Reviewer dce19d5209 fix: tighten local read allowlist and gracefully skip whisper-runtime build without CMake
isAllowedLocalReadPath previously returned true for any existing path because of an existsSync fast-path, which made the read-local-file IPC handler and the local media URL policy effectively allow reading arbitrary files on disk. Drop the existsSync bypass so only paths under app-managed directories or paths that have been explicitly approved (via dialogs, exports, recording sessions, etc.) are accepted. Adjust the local media path policy tests to cover the new behaviour.

Also make build-whisper-runtime fall back to bundled artifacts when CMake is missing (mirroring build-windows-capture) so npm ci does not fail on machines without a C++ toolchain.
2026-05-04 14:21:49 -04:00
webadderall be01bccb7a Revert "feat: bundle cursor motion and temporal blur updates" 2026-05-04 18:17:04 +10:00
webadderall dedf43720a Merge pull request #414 from webadderallorg/codex/behavior-3-13
feat: bundle cursor motion and temporal blur updates
2026-05-04 18:15:30 +10:00