Commit Graph
107 Commits
Author SHA1 Message Date
webadderall c85fb7a05a feat: show real-time audio rendering progress during export finalization
Instead of freezing at 'Finalizing 99%' while audio renders in real-time,
the export UI now shows 'Rendering audio XX%' with a live progress bar and
an explanatory note about why real-time playback is required.

Progress is reported every 250ms from the RAF tick loop in AudioProcessor
and piped through VideoExporter to the UI via the existing onProgress callback.
2026-04-09 18:25:25 +10:00
webadderall 919a29c61d fix: export animation desync — use content time for zoom spring delta
The zoom spring animation in both frameRenderer and modernFrameRenderer
was using performance.now() (wall-clock time) to compute spring deltas.
During export, wall-clock time and content time are decoupled — a frame
representing 33ms of video may render in 3ms or 500ms. This caused zoom
animations to appear choppy/laggy in exports while previews were smooth.

Switched to content-time deltas (timeMs) so the spring advances at the
same rate as the video regardless of actual render speed.

Also bumps version to 1.1.20.
2026-04-09 16:51:21 +10:00
webadderall 094a43c1a8 feat: classic zoom toggle, clip speed support, restore zoom durations
- Add Classic Animation toggle (disables cursor follow + spring smoothing)
- Remap zoomSmoothness slider from 0-2 to 0-1 range, default 0.5
- Fix clip speed: merge clip speeds into effectiveSpeedRegions
- Restore zoom duration constants to original values
  (ZOOM_IN_TRANSITION_WINDOW_MS: 700ms -> 1522ms, TRANSITION_WINDOW_MS: 1000 -> 1015.05)
- Pass missing zoomSmoothness to VideoPlayback and GIF exporter
- Persist zoomSmoothness and zoomClassicMode in project files
2026-04-09 00:55:27 +10:00
webadderall 4bd45dc927 fix: cursor desync in exports — remove erroneous startup offset from cursor timestamp 2026-04-08 23:39:35 +10:00
webadderall e670956e42 fix(export): audio encoder reliability and gif exporter compat 2026-04-08 22:00:23 +10:00
webadderall 5b07af5083 feat(zoom): add spring animation and cursor follow to export pipeline
Both legacy (FrameRenderer) and modern (ModernFrameRenderer) exporters
now use inlined spring solver and cursor follow camera for auto zooms.
Wire zoomSmoothness config through both exporter paths.
2026-04-08 21:43:27 +10:00
webadderall 012bec21a7 Prefer WebCodecs auto export and harden Pixi fallback 2026-04-06 15:23:06 +10:00
webadderall a760892490 fix export cursor lag 2026-04-05 22:04:17 +10:00
webadderall b72cc10c07 Fix Lightning export fallback and preview sync 2026-04-05 21:09:55 +10:00
webadderall 4a9e55f571 Fix Windows export finalization progress 2026-04-05 19:18:12 +10:00
webadderall 46f55dc61a Fix encoder errors reported as cancellations 2026-04-05 18:15:14 +10:00
webadderall 5fd49fbf0f fix(audio): reduce recording and export drift 2026-04-04 21:53:25 +11:00
webadderall f725df3dfc export new pipeline modules 2026-04-04 13:07:57 +11:00
webadderall 21496a787e teach legacy exporter native fallback 2026-04-04 13:07:57 +11:00
webadderall 1e5f0b8658 add modern video exporter 2026-04-04 13:07:57 +11:00
webadderall 2c51b67f2c add modern export frame renderer 2026-04-04 13:07:50 +11:00
webadderall cacc614cde improve renderer and gif export progress 2026-04-04 13:07:42 +11:00
webadderall e136cc7dcc bound streaming decoder backpressure 2026-04-04 13:07:42 +11:00
webadderall 987939b253 normalize forward frame source timing 2026-04-04 13:07:42 +11:00
webadderall c29673b9fc add audio passthrough export path 2026-04-04 13:07:34 +11:00
webadderall 4e83ec98ee preload annotation assets for export 2026-04-04 13:07:34 +11:00
webadderall cc63fa1b24 add native frame capture utilities 2026-04-04 13:07:34 +11:00
webadderall 3109b18460 add export backpressure tuning 2026-04-04 13:07:34 +11:00
webadderall 015d46245c add export pipeline core types 2026-04-04 13:07:34 +11:00
webadderall 7b1d16d969 feat(wallpaper): video wallpaper system with wispysky default, upload, thumbnails, preview and export rendering 2026-04-02 21:09:16 +11:00
webadderall 8d262fbc10 feat(editor): add video wallpaper background support
Adds video file detection (mp4/webm/mov/etc) to wallpaper system,
renders video backgrounds with looping playback in editor preview,
and adds Video tab to background picker in settings panel.
2026-04-02 16:49:56 +11:00
webadderall 45bca06431 feat(editor): add ClipRegion type, persistence, and keyboard shortcuts 2026-04-02 16:29:29 +11:00
webadderall 8690393a80 fix: stale variable references in audioEncoder cleanup 2026-04-01 16:03:40 +11:00
webadderall db8718cf66 Add sidecar audio fallback for silent recordings 2026-04-01 15:40:40 +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 f9364eb431 fix(ts): resolve VideoExporterConfig initialization error in VideoEditor.tsx 2026-03-28 06:11:28 +07:00
Mahdy Arief d5ab86ea44 fix(export, native, ui): resolve critical data integrity and resource management bugs in PR #122
- Implement comprehensive solo/mute export pipeline in audioEncoder.ts
- Fix duplicate caption IDs by adding chunk-specific indices in handlers.ts
- Prioritize native monitor selection by bounds in monitor_utils.cpp
- Fix alignment for blur annotations extending beyond canvas boundaries
- Resolve timeline selection desync and sidebar visibility for blur annotations
- Fix memory leaks in audio waveform generation with AudioContext cleanup
2026-03-28 06:09:50 +07:00
Mahdy Arief 74dfa0d5fa feat: Implement initial video editor with timeline, effects, audio waveforms, and export capabilities. 2026-03-28 01:25:40 +07:00
Mahdy Arief 281a73b51a chore: Finalize PR #116 stability and privacy improvements
- Hardened IPC with safety guards for all webContents.send calls
- Scrubbed sensitive absolute paths from caption logs
- Realigned Windows artifact naming logic
2026-03-27 23:14:12 +07:00
webadderall 658b15d3ca fix(stability): restore export and recording session compatibility 2026-03-27 23:58:08 +11:00
webadderall 7119346e4b fix(export): improve final compositor resampling 2026-03-27 23:34:39 +11:00
webadderall ffad684d54 fix(export): encode MP4 audio as AAC 2026-03-27 23:34:39 +11:00
Mahdy Arief 7d7b61b7f5 feat: add blur annotation and Whisper model selection for autocaption 2026-03-27 13:27:57 +07:00
webadderall b131bf8e0d fix(export): stream audio encoding for long exports 2026-03-23 18:00:00 +11:00
webadderall 549871816b 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 39a897d460 fix: cap MP4 export size and preview volume 2026-03-21 15:40:30 +11:00
webadderall 023a8a27a0 fix: stabilize editor preview and wallpaper defaults
Follow-up to PR #69: fix: restore editor preview responsiveness after export (#68).
2026-03-20 23:51:52 +11:00
webadderall 7431a2efc4 Fix countdown overlay and squircle corners 2026-03-20 20:08:47 +11:00
webadderall 767a0993b5 Fix loop suggestions and webcam positioning 2026-03-20 13:03:26 +11:00
webadderall 2b5783ab00 Fix webcam sync and app close flow 2026-03-20 11:37:37 +11:00
webadderall c64c088748 Fix cursor positioning with cropped video 2026-03-20 00:17:53 +11:00
webadderall 5e42f0c078 Overhaul editor shell and cursor behavior 2026-03-19 23:48:07 +11:00
webadderall 24927e9b0b Fix TypeScript cleanup regressions 2026-03-18 18:36:25 +11:00
webadderall 0836b9e1e8 Read export local media via IPC 2026-03-18 16:18:53 +11:00
webadderall 9d17cb7427 Add webcam export coverage 2026-03-18 16:06:19 +11:00