Commit Graph
554 Commits
Author SHA1 Message Date
webadderall 07bd87fdd3 fix(windows): honor selected microphone in native capture 2026-03-26 11:17:39 +11:00
webadderall 2998038766 refactor(captions): simplify model controls UI 2026-03-26 11:17:39 +11:00
webadderall 56f1a94948 fix(ci): pin release builds to resolved source commit 2026-03-26 11:05:38 +11:00
webadderall c20772f11f chore(windows): remove stale DXGI capture helper 2026-03-26 11:05:38 +11:00
webadderall f7b930a867 Fix release workflow source ref handling 2026-03-26 11:05:38 +11:00
webadderall 9401e29b11 Merge pull request #97 from Bortlesboat/fix/display-app-version
fix: display app version in More menu
2026-03-25 19:07:59 +11:00
webadderall 99ecd673d6 Merge pull request #100 from PALConverteo/fix/wgc-capture-thread-safety
Fix corrupted MP4 recordings on Windows
2026-03-25 18:48:30 +11:00
Pierre-Adrien Lair af93de1fb1 Fix corrupted MP4 recordings on Windows by serializing encoder writes
The WGC capture session uses Direct3D11CaptureFramePool::CreateFreeThreaded,
which dispatches FrameArrived callbacks on thread pool threads concurrently.
MFEncoder::writeFrame() accesses non-thread-safe resources (ID3D11DeviceContext,
IMFSinkWriter, shared staging texture and NV12 buffer) without synchronization,
causing MP4 container corruption when callbacks overlap at high frame rates.

Add a mutex to serialize writeFrame() and finalize() calls, preventing
concurrent access to the D3D context and Media Foundation sink writer.

Fixes #96
2026-03-24 17:59:27 +01:00
BortlesboatandClaude Opus 4.6 e792cab804 fix: display app version in More menu
Add IPC handler to expose app.getVersion() to the renderer and
display it in the More dropdown menu. Users can now verify which
version they're running.

Fixes #70

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 09:15:04 -04:00
webadderall 89f557e2a0 fix(hud): restore bar separators after dropdown divider change 2026-03-24 19:38:38 +11:00
webadderall 5ab9368858 chore(updates): add disabled app update infrastructure 2026-03-24 19:32:38 +11:00
webadderall d485c0b226 fix(recording): validate native captures and tighten mic menu spacing 2026-03-24 19:04:24 +11:00
webadderall 8a314c30a3 fix(ci): skip arm64 postinstall during release 2026-03-23 21:55:52 +11:00
webadderall 806f5398f1 fix(ci): skip arm64 release postinstall scripts 2026-03-23 21:53:06 +11:00
webadderall 5948ed1d6a fix(ci): make release workflow build tagged ref 2026-03-23 21:49:16 +11:00
webadderall e0c4bbeeb1 merge: ship v1.1.5 updates v1.1.5 2026-03-23 21:18:40 +11:00
webadderall 698f667050 fix(projects): align HUD browser behavior 2026-03-23 21:18:18 +11:00
webadderall 9350c71c27 style(projects): simplify browser tiles 2026-03-23 20:43:26 +11:00
webadderall 26470371f0 refactor(projects): polish finder-style browser and previews 2026-03-23 20:37:06 +11:00
webadderall 485faa0d74 refactor(projects): simplify browser modal and thumbnail capture 2026-03-23 19:42:50 +11:00
webadderall 883f19f898 revert(cursor): drop Windows-specific anchor overrides 2026-03-23 19:27:47 +11:00
webadderall bf010fcccd fix(cursor): align Windows bundled cursor anchors 2026-03-23 19:22:40 +11:00
webadderall b4cdf7cc5e feat(ipc): persist project library metadata and tighten caption inputs 2026-03-23 19:22:40 +11:00
webadderall 91bdf8b05b test(editor): cover whisper preferences and caption source selection 2026-03-23 19:22:40 +11:00
webadderall 3702308d1b feat(editor): add project browser and whisper selection flows 2026-03-23 19:22:39 +11:00
webadderall 591848b6c1 build(native): stage mac helpers for both architectures 2026-03-23 19:22:39 +11:00
webadderall 8553e7944a fix(sources): backfill missing displays in monitor picker 2026-03-23 18:03:40 +11:00
webadderall ecccc72b30 fix(sources): backfill missing displays in monitor picker 2026-03-23 18:03:40 +11:00
webadderall 22914541bd fix(export): stream audio encoding for long exports 2026-03-23 18:00:00 +11:00
webadderall cd7231e927 fix(windows): preserve full monitor ids for native capture 2026-03-23 18:00:00 +11:00
webadderall 75e5103898 chore: move non-native deps to devDependencies 2026-03-23 18:00:00 +11:00
webadderall 51f9079711 fix(export): stream audio encoding for long exports 2026-03-23 17:56:25 +11:00
webadderall d3d4b5e066 fix(windows): preserve full monitor ids for native capture 2026-03-23 17:51:52 +11:00
webadderall 93d231c1c0 chore: move non-native deps to devDependencies 2026-03-23 17:51:52 +11:00
webadderall eeda2efe81 Add Sponsor Wall to README
Added a sponsor wall section to encourage support for the project.
2026-03-23 16:53:08 +11:00
webadderall 97c75d6a19 Create FUNDING.yml 2026-03-23 16:03:37 +11:00
webadderall bbd514efba perf: remove launch source polling
Push selected-source changes from Electron to the launch window instead of polling every 500ms, reducing constant renderer and IPC churn. Also restore the TimelineEditor audio path narrowing fix so the current tree stays type-safe.
2026-03-22 21:03:26 +11:00
webadderall 6aa137c23f perf: avoid repeated device label capture
Enumerate cameras and microphones before requesting media permissions, only opening a stream once when labels need to be unlocked. Stop rerunning enumeration when the selected device changes so launch controls no longer churn hardware access on routine UI interaction.
2026-03-22 21:02:42 +11:00
webadderall 130fe93a27 perf: reduce editor snapshot churn
Replace JSON-based snapshot cloning and equality checks with structured object comparisons in the video editor. Reuse memoized persisted project state for dirty tracking and saves so normal editor interactions stop rebuilding large serialized snapshots on every change.
2026-03-22 21:02:42 +11:00
webadderall 65001fb40a Update README.md 2026-03-22 19:27:40 +11:00
webadderall 55887beff3 Update README.zh-CN.md 2026-03-22 19:27:25 +11:00
webadderall 49cec3daf5 Added erwan to donor list 2026-03-22 19:27:03 +11:00
webadderall cecfb661c9 feat: support timeline select-all block deletion
Let Cmd/Ctrl+A select all timeline blocks when the timeline is focused and allow Delete or Backspace to remove the full block selection in one action.
2026-03-22 18:34:43 +11:00
webadderall 3c12b7bab3 feat: add custom cursor style rendering
Add minimal, dot, and inverted cursor styles for preview and export rendering, including the bundled minimal cursor asset and runtime cursor asset generation.
2026-03-22 18:34:43 +11:00
webadderall 2e443169c1 feat: render captions in preview playback
Render active captions in the live preview with responsive layout, crop-aware aspect ratio handling, and supporting playback layout refinements.
2026-03-22 18:34:43 +11:00
webadderall 42273dfa6c feat: localize caption controls and loading states
Add translation strings for the new caption, cursor, and zoom controls and include the indeterminate progress styling used by long-running caption and export actions.
2026-03-22 18:34:43 +11:00
webadderall d6d64c4999 feat: add caption controls to the settings panel
Add caption generation controls, caption appearance settings, cursor style selection, and related editor controls to the settings sidebar.
2026-03-22 18:34:43 +11:00
webadderall a67d0fd789 feat: wire caption generation into the editor
Connect caption generation, Whisper model download state, caption persistence, export saving progress, and preview/export caption props through the main video editor workflow.
2026-03-22 18:34:43 +11:00
webadderall 199e96e07c feat: render captions in the export pipeline
Add canvas caption rendering during frame export, carry caption settings through GIF and MP4 export paths, and clean up muxer resources while exposing the saving phase in export progress.
2026-03-22 18:34:43 +11:00
webadderall ed8739f040 feat: add caption layout and styling engine
Introduce the timed caption block layout engine used by preview and export rendering, including line breaking, page building, animation state, width-relative scaling, and merged-cue spacing fixes.
2026-03-22 18:34:43 +11:00