gramps
8dcaee0b5b
fix(encoder): observability — silence was the bug
...
First real recording (2026-09-01): ffmpeg died at ~0.9s mid-session with ZERO log
lines while the pump fed a corpse for 9 more seconds. Three blind spots closed:
- OnStderrLine discarded everything non-progress: ffmpeg's actual words (startup
config, warnings, the reason it quit) now go to AppLog prefixed 'ffmpeg:' (400-char
cap so a \r-choked blob can't flood).
- Unexpected exit only fired ProcessFailed when code != 0 — a CLEAN exit vanished
silently. Any exit we didn't request is now logged and fired, any code.
- ExitCode read raced StopAsync's Dispose (tonight's 'No process is associated'
line) — guarded.
- VM output resolver logs once/5s when a webcam element resolves to a null frame
(preview showed the cam, recording didn't — the layer skip was invisible).
FfmpegEncoderTests + FramePumpTests 21/21 against the new code, 0 warnings.
2026-09-01 22:11:52 -07:00
..
2026-09-01 21:20:45 -07:00
2026-08-31 17:53:34 -07:00
2026-09-01 22:11:52 -07:00
2026-08-06 14:35:34 -07:00
2026-08-12 07:21:15 -07:00
Screen backdrop (schema v5/v6) + five-scene catalog + webcam polish: live desktop/game capture as a permanent non-deletable bottom layer (Source.IsBackdrop), auto full-screen game detection (Win32FullScreenDetector) else primary display, GraphicsCapturePicker re-designation, refcounted shared ScreenCaptureManager, Live-only backdrop by policy (HasBackdrop + v5-v6 backfill + EnforceBackdropPolicy, checkbox gone), SceneCatalog (Starting/Live/BRB/Chat/Ending) with + button re-adding missing scenes, webcam mid-session transparent-container fix (GetPreviewBitmap propagation), Chat half-screen-area cap, 'Add Webcam' always opens the picker (SwapWebcamIdentityAsync, no silent resurrect), WindowsRuntimeMarshal frame-read + 5s-throttled errors, docs updated, tests (65 passing)
2026-08-07 14:15:50 -07:00
2026-08-20 18:02:41 -07:00
2026-08-31 10:48:10 -07:00
Screen backdrop (schema v5/v6) + five-scene catalog + webcam polish: live desktop/game capture as a permanent non-deletable bottom layer (Source.IsBackdrop), auto full-screen game detection (Win32FullScreenDetector) else primary display, GraphicsCapturePicker re-designation, refcounted shared ScreenCaptureManager, Live-only backdrop by policy (HasBackdrop + v5-v6 backfill + EnforceBackdropPolicy, checkbox gone), SceneCatalog (Starting/Live/BRB/Chat/Ending) with + button re-adding missing scenes, webcam mid-session transparent-container fix (GetPreviewBitmap propagation), Chat half-screen-area cap, 'Add Webcam' always opens the picker (SwapWebcamIdentityAsync, no silent resurrect), WindowsRuntimeMarshal frame-read + 5s-throttled errors, docs updated, tests (65 passing)
2026-08-07 14:15:50 -07:00
2026-08-31 18:57:29 -07:00
2026-08-31 19:45:48 -07:00
2026-08-31 19:45:48 -07:00
2026-08-26 06:48:14 -07:00
2026-08-26 06:48:14 -07:00
2026-08-06 14:35:34 -07:00
2026-08-12 07:21:15 -07:00
2026-08-31 18:57:29 -07:00
2026-08-20 18:02:41 -07:00
2026-08-31 19:52:10 -07:00
2026-08-07 17:44:16 -07:00
2026-08-23 13:33:33 -07:00
2026-08-23 12:25:04 -07:00
Screen backdrop (schema v5/v6) + five-scene catalog + webcam polish: live desktop/game capture as a permanent non-deletable bottom layer (Source.IsBackdrop), auto full-screen game detection (Win32FullScreenDetector) else primary display, GraphicsCapturePicker re-designation, refcounted shared ScreenCaptureManager, Live-only backdrop by policy (HasBackdrop + v5-v6 backfill + EnforceBackdropPolicy, checkbox gone), SceneCatalog (Starting/Live/BRB/Chat/Ending) with + button re-adding missing scenes, webcam mid-session transparent-container fix (GetPreviewBitmap propagation), Chat half-screen-area cap, 'Add Webcam' always opens the picker (SwapWebcamIdentityAsync, no silent resurrect), WindowsRuntimeMarshal frame-read + 5s-throttled errors, docs updated, tests (65 passing)
2026-08-07 14:15:50 -07:00
2026-08-31 09:10:17 -07:00
2026-08-31 09:10:17 -07:00
2026-08-31 09:10:17 -07:00
2026-08-31 09:10:17 -07:00
2026-08-31 09:10:17 -07:00
2026-08-31 18:30:03 -07:00
2026-08-25 17:25:25 -07:00
2026-08-06 14:35:34 -07:00
2026-08-12 07:11:54 -07:00
2026-08-31 19:52:10 -07:00
2026-08-31 19:22:02 -07:00
2026-08-07 17:44:16 -07:00
2026-08-23 12:25:04 -07:00
2026-08-21 08:18:52 -07:00
2026-08-31 18:57:29 -07:00
2026-08-29 09:02:55 -07:00
2026-08-31 17:53:34 -07:00
2026-08-22 18:10:59 -07:00
2026-08-22 18:10:59 -07:00
Screen backdrop (schema v5/v6) + five-scene catalog + webcam polish: live desktop/game capture as a permanent non-deletable bottom layer (Source.IsBackdrop), auto full-screen game detection (Win32FullScreenDetector) else primary display, GraphicsCapturePicker re-designation, refcounted shared ScreenCaptureManager, Live-only backdrop by policy (HasBackdrop + v5-v6 backfill + EnforceBackdropPolicy, checkbox gone), SceneCatalog (Starting/Live/BRB/Chat/Ending) with + button re-adding missing scenes, webcam mid-session transparent-container fix (GetPreviewBitmap propagation), Chat half-screen-area cap, 'Add Webcam' always opens the picker (SwapWebcamIdentityAsync, no silent resurrect), WindowsRuntimeMarshal frame-read + 5s-throttled errors, docs updated, tests (65 passing)
2026-08-07 14:15:50 -07:00
2026-08-22 18:10:59 -07:00
2026-08-16 17:48:37 -07:00
2026-08-22 18:10:59 -07:00
2026-08-06 14:35:34 -07:00
2026-08-28 12:09:13 -07:00
2026-08-20 18:02:41 -07:00
2026-08-07 17:44:16 -07:00
2026-08-22 18:10:59 -07:00
2026-08-19 11:59:29 -07:00
2026-09-01 20:55:06 -07:00