Skip to content

Repair ISO writer throughput, restart capacity, and MP4 timing - #531

Draft
iamfatness wants to merge 16 commits into
mainfrom
codex/iso-recorder-throughput
Draft

Repair ISO writer throughput, restart capacity, and MP4 timing#531
iamfatness wants to merge 16 commits into
mainfrom
codex/iso-recorder-throughput

Conversation

@iamfatness

@iamfatness iamfatness commented Sep 14, 2026

Copy link
Copy Markdown
Owner

Eight Windows ISO files shared a serial writer, and source-resolution changes ran a scalar CPU resize. Give each file an ordered worker and use a D3D11 compute filter for conformance. Preserve capture timestamps, source quality, accepted-tail draining, and visible queue loss after finalization.

Prevent a capacity probe from replacing the cache with slots occupied by a live recording or stream. Configure the selected workload while idle, reject overlapping probe results, and retain capacity across repeated recordings. Fix fragmented MP4 timing by deriving each ISO sample duration from the next capture timestamp; the regression previously turned timestamps through ten seconds into a 9.85-second track.

Each ISO has bounded queues of 64 pictures / 96 audio packets, with 96 pictures during startup. The outer dispatcher holds 256 ISO pictures. Maximum queued 1080p I420 payload is approximately 2.25 GiB steady / 3 GiB at startup for eight tracks, excluding codecs/app memory. Sustained overload still reports loss. Stop spaces ISO writer/device teardown by 100 ms on the file-control worker and closes every track before joining.

Validation at code commit 99e09c6: all 1,010 Release native tests, 2,225 managed tests, and 19 hosted checks pass. Two consecutive three-minute live recordings ran eight ISOs (six hardware placement, two software) plus 1080p60 Program recording and streaming, with four scene Takes each. Both had zero ISO video/audio queue loss, zero Program-buffer underruns/deadline misses including Stop, and no stream restart. The repeat recorded eight 1080p ISOs; the first recorded seven 1080p and one 720p ISO. All eighteen H.264/AAC files finalized, have increasing video timestamps, pass head/tail decoding, and have audio/video endpoints within 21.1 ms. Three Program startup frames remain separately reported in the first take; the repeat added none.

The real installer passed install/runtime-probe/uninstall validation, preserving user files. The packaged app also passed a 30-second recording with default capacity settings (seven hardware-placement ISOs, one software), producing all nine files with zero ISO loss or Program-buffer misses. The unsigned testing beta is published at https://github.com/iamfatness/CoreVideoPro/releases/tag/beta-2026-09-14-99e09c64 ; all six uploaded asset hashes and the download were verified.

Targets main and includes still-unmerged #528 startup allocation changes. Addresses #529 and #533. Retained failures and exact workload evidence are in docs/iso-recorder-throughput-2026-09-14.md. Keep draft pending the longer show soak and operator/laptop check: the finite passing tests do not resolve every configuration in #526, and recovered stream startup remains #532. Destination/display presentation and manual lip sync are unverified. The final documentation commit changes no tested runtime code.

@iamfatness
iamfatness changed the base branch from codex/program-buffer-live-validation to main September 14, 2026 13:47
@iamfatness iamfatness changed the title Isolate ISO recorder writers and preserve frame-loss evidence Isolate ISO writers and move resolution conformance to the GPU Sep 14, 2026
@iamfatness iamfatness changed the title Isolate ISO writers and move resolution conformance to the GPU Repair ISO writer throughput, restart capacity, and MP4 timing Sep 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants