Commit Graph
51 Commits
Author SHA1 Message Date
young e8e2928520 Fix washed-out Mac screen recordings 2026-09-01 18:49:33 +10:00
young fb44703514 Apply consistent project formatting 2026-08-28 09:54:42 +10:00
webadderall 8378342a48 fix macOS countdown resume recording race 2026-08-24 18:05:16 +10:00
young e7fcb15cea fix: address follow-up capture review 2026-08-24 13:19:17 +10:00
young 54c506dac7 fix: address native capture review feedback 2026-08-24 11:43:50 +10:00
young 13dd5ec412 fix: stabilize macOS countdown capture 2026-08-24 10:29:43 +10:00
webadderall 9be52f37f2 fix: warm start native capture before countdown 2026-08-23 19:31:37 +10:00
webadderall 0c690bd5c2 fix: avoid duplicate mic audio in native mac recordings 2026-06-02 10:24:50 +10:00
wiiiii123 0235b4f947 fix(export): address CUDA dimension review notes 2026-05-27 18:31:00 +07:00
wiiiii123 fe828433ad fix(recording): stabilize capture quality and CUDA export canvas 2026-05-27 18:12:21 +07:00
wiiiii123 5d3da14671 fix: stabilize Windows recording preview 2026-05-25 02:50:09 +07:00
wiiiii123 978f01407a fix(windows): normalize WGC video timestamps 2026-05-22 17:47:37 +07:00
wiiiii123 58e413fca4 fix(windows): validate WGC encoder fps 2026-05-22 17:13:43 +07:00
wiiiii123 ed11c26983 fix(windows): guard WGC frame extension fps 2026-05-22 17:06:22 +07:00
wiiiii123 6227eb8955 fix(windows): preserve WGC duration through static frames 2026-05-22 15:56:36 +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 234a7b537a fix(export): support native cropped layouts 2026-05-08 03:20:28 +07:00
wiiiii123 3455475f38 fix(export): harden native beta pipeline 2026-05-07 22:37:27 +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 f8df2d6ae9 fix(recording): soften native mic gap boundaries 2026-05-06 18:50:06 +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 94bbd0280f Add NVIDIA CUDA export compositor 2026-05-04 09:59:41 +07:00
wiiiii123 9c81006e5c Add native GPU static layout export path 2026-05-03 22:43:23 +07:00
Wiii 46f384d4d0 fix(recording): use native audio start timestamps for Windows sync

2026-04-25 17:47:39 +07:00
webadderall 2ae0aa9a92 fix: address CodeRabbit review feedback
- Remove dead helperExists local in recording/windows.ts
- Hoist fs/promises import out of close handler in recording/ffmpeg.ts
- Guard fs.readdir with mkdir in recording/prune.ts (ENOENT resilience)
- Derive companion audio suffixes from COMPANION_AUDIO_LAYOUTS in prune.ts
- Guard mousemove hook registration to Linux only in cursor/interaction.ts
- Replace dynamic require('electron') with static import in cursor/monitor.ts
- Wrap nodeRequire in try/catch in ffmpeg/binary.ts for fallback safety
- Fix hardcoded timeOffsetMs: 0 in project/session.ts (use normalizer)
- Fix isPathInsideDirectory to normalize candidatePath in project/manager.ts
- Fix isAllowedLocalReadPath security: require path to be in allowlist (AND not OR)
- Derive extension regex from constants in project/manager.ts
- Consolidate duplicate Duration parsers in recording/diagnostics.ts
- Refactor ensureReadableFile to use options object instead of description string
- Make swiftc compilation async (execFile) in paths/binaries.ts
- Add socket timeout to httpsGet in captions/whisper.ts
2026-04-17 20:35:08 +10:00
webadderall 8abceaa914 feat: add H.264 stream-copy export, overhaul exporter pipeline, rename native binaries
- IPC: new inputMode 'h264-stream' — browser VideoEncoder output stream-copied
  into MP4 via ffmpeg rather than piping raw RGBA frames, cuts memory usage
- Security: replace flat approvedLocalReadPaths with userApprovedPaths fed from
  dialog pickers and project load; isAllowedLocalReadPath uses it alongside
  dir prefix / existsSync checks
- nativeVideoExport: add buildNativeH264StreamExportArgs for stream-copy path
- frameRenderer / modernFrameRenderer: cursor-follow camera integration,
  annotation blur post-processing, shadow profile, squircle geometry
- audioEncoder / streamingDecoder / gifExporter / muxer: full pipeline
  hardening — drift correction, backpressure, proper teardown
- Rename native helpers openscreen-* → recordly-* on darwin-arm64 and
  darwin-x64; update helpers-manifest.json for win32-x64
- electron/main, windows, updater, rendererServer: startup and window
  lifecycle improvements
- preload: expose inputMode and new IPC surface to renderer
2026-04-16 17:51:41 +10:00
webadderall fb54994685 fix(macos): lower deployment target to macOS 13.0 for native helpers
The Swift helper binaries were compiled with -target macos14.0, causing
dyld symbol-not-found crashes on macOS 13. The ScreenCaptureKit audio
APIs require macOS 13.0 minimum, so the deployment target is lowered to
13.0 and an #available guard is added for the macOS 14-only
ignoreShadowsSingleWindow API. README updated accordingly.

Fixes #199, fixes #200
2026-04-09 21:23:33 +10:00
webadderall 5fd49fbf0f fix(audio): reduce recording and export drift 2026-04-04 21:53:25 +11:00
webadderall cab37792c3 update native capture helper binaries 2026-04-04 13:08:12 +11:00
webadderall 13f99f07c8 fix(macos): use firstSampleTime as common time base in native recorder 2026-04-02 16:29:47 +11:00
webadderall 27a2be2d3b fix: filter auxiliary windows and remove thumbnail requirement from source list
- Swift helper: filter out untitled auxiliary windows from multi-window apps (e.g. Arc sidebar/tab-bar chrome)
- Swift helper: increase minimum window size from 1x1 to 50x50
- Remove .filter(source => Boolean(source.thumbnail)) that hid valid sources
- Remove hasUsableSourceThumbnail filter in fallback path
- Recompile prebundled openscreen-window-list binary
2026-03-30 15:16:28 +11:00
webadderall 86671debe1 chore(native): rebuild win32-x64 native helper binaries
- Rebuild wgc-capture.exe and cursor-monitor.exe from unchanged source
- Update helpers-manifest.json with new binary hashes and timestamps
2026-03-29 19:30:02 +11:00
webadderall ac14768a62 fix: TCC permission handling for native helpers on macOS 26
- Add CGPreflightScreenCaptureAccess pre-check in Swift helper
- Add microphone TCC pre-flight when mic capture is requested
- Warm up TCC via desktopCapturer.getSources before spawning helper
- Request mic access from Electron before helper spawn
- Remove unreliable systemPreferences.getMediaAccessStatus pre-checks
- Add camera entitlements to plist files for webcam support
- Guard getScreen() calls behind app.isReady()
- Make tray icons lazy to avoid early screen access
- Suppress duplicate permission error alerts in renderer
2026-03-29 19:15:18 +11:00
webadderall 4e8ab9cf45 fix(windows): finalize WGC recordings safely 2026-03-28 17:03:41 +11:00
webadderall 58153679dd chore(windows): track bundled helper manifests 2026-03-28 16:17:29 +11:00
webadderall ca29abd89c fix(windows): restore WGC monitor fallback 2026-03-28 15:18:56 +11:00
webadderall 8de1d9a498 fix(windows): bundle native capture helpers 2026-03-28 14:56:16 +11:00
webadderall 719fa78e9f Revert "feat: Advanced Video Editor Implementation, Native WGC Integration, and AI Auto-Captions" 2026-03-28 14:12:25 +11:00
Mahdy Arief 7d7b61b7f5 feat: add blur annotation and Whisper model selection for autocaption 2026-03-27 13:27:57 +07:00
webadderall 0d9a1d1915 feat: add backend Whisper and native audio support
Add Electron IPC handlers and preload wiring for Whisper caption generation, small-model download management, and safer project media source resolution. Update native macOS capture helpers to mux separate system and microphone audio outputs before finalizing recordings.
2026-03-22 18:34:43 +11:00
webadderall 1a2fc987fb build: add bundled Whisper runtime pipeline
Add the Whisper runtime build script, package integration, runtime manifest, and staged darwin-arm64 Whisper binaries.
2026-03-22 18:30:19 +11:00
webadderall 26a8e069e8 fix: restore cursor fallback and mac mic selection 2026-03-18 21:19:00 +11:00
webadderall ab1a163281 fix: re-release v1.1.1 mic capture + hud position 2026-03-18 21:00:39 +11:00
webadderall de1074cdff Pause native screen capture across platforms 2026-03-18 18:36:25 +11:00
KBCats 6e7a034a93 merge main into feat/cursor-sway 2026-03-16 08:57:03 -07:00
aras b3423c39dd fix(macos): add explicit target architecture to Swift helper builds
Added `-target` flag to swiftc compilation to explicitly specify arm64-apple-macos14.0 or x86_64-apple-macos14.0 based on process architecture, ensuring proper binary compilation for darwin-arm64 native helpers.
2026-03-15 18:01:14 +03:00
webadderall d4d4ff474f Make ScreenCaptureKit microphone APIs runtime-compatible across SDKs 2026-03-13 21:14:05 +11:00