diff --git a/docs/evidence/clip-long-2026-10-24.json b/docs/evidence/clip-long-2026-10-24.json new file mode 100644 index 0000000..ac294a0 --- /dev/null +++ b/docs/evidence/clip-long-2026-10-24.json @@ -0,0 +1,29 @@ +{ + "date_utc": "2026-10-24", + "version": "v0.4.17", + "steam_os_version": "0.5.6", + "steam_os_build": "20261015.6141207", + "result": "PASS: the real Steam-saved clip exported beyond 60 seconds", + "method": "Steam manual recording of a reserved test title, then Frame Control's production frame_clips.export_clip path; no packaged GUI button click", + "source": { + "kind": "saved Steam clip", + "duration_seconds": 100.801, + "chunks": 68, + "gaps": 0 + }, + "export": { + "format": "MP4", + "bytes": 1377849, + "sha256": "82ef31f65e6933d122bc326d664beb2eb2e3ba6969f26c0032552e80fbe8d823", + "duration_seconds_ffprobe": 100.833335, + "video": "H.264, 1920x1080, 6049 frames", + "audio": "AAC, 48000 Hz, stereo", + "full_ffmpeg_decode": "passed without errors" + }, + "cleanup": "Restored Steam recording mode to its prior off setting; stopped and removed only the reserved title and its processes; no recording or running Steam apps remained; Game Mode active, battery 100%, shared test lock released", + "limits": [ + "This exercised the production export code path, not a packaged GUI Export click.", + "Visible gameplay quality, perceptual audio/video sync, trims and longer recordings were not checked.", + "The newly saved Steam source clip was retained; no user recording was deleted." + ] +} diff --git a/docs/recording.md b/docs/recording.md index d300cba..ec52f94 100644 --- a/docs/recording.md +++ b/docs/recording.md @@ -170,14 +170,26 @@ The temporary server stopped, the shared device lock was released, and the headset remained in Game Mode at 99% battery. See [`docs/evidence/clip-gui-export-2026-10-24.json`](evidence/clip-gui-export-2026-10-24.json) for the narrow proof. This did not exercise the packaged desktop installer. + +On 2026-10-24, the exact v0.4.17 tag exported a second real Steam-saved clip +through `frame_clips.export_clip`, the same production path used by **Export**. +Steam listed the clip at **100.801 seconds**, with 68 chunks and no gaps. The +copied MP4 was **100.833 seconds** by `ffprobe` and decoded completely with +`ffmpeg`; it was not cut at 60 seconds. The test restored Steam's recording +mode, removed its reserved title and processes, and left Game Mode active at +100% battery. See [the long-clip evidence](evidence/clip-long-2026-10-24.json). +This did not click **Export** in the packaged desktop app or verify visible +gameplay quality or perceptual audio/video sync. + Remaining checks include: - Perceptual audio/video sync and audible content. Frame Control's separate **Record** path stamps camera and audio inputs with the wall clock because they otherwise count from different clocks. -- Long saved clips, trims starting partway through a Steam recording, and the - packaged desktop app's **Export** button. One real saved clip's directory - layout was checked; the parser remains deliberately loose for other layouts. +- Clips longer than the 100-second test, trims starting partway through a Steam + recording, and the packaged desktop app's **Export** button. Two real saved + clips' directory layouts were checked; the parser remains deliberately loose + for other layouts. - How much x264 at 1080p30 costs the Frame while a game is running. - Automatic copying: that 30 seconds without a write is a safe sign Steam has finished saving a clip, and how a once-a-minute listing feels on the Frame.