Repair ISO writer throughput, restart capacity, and MP4 timing - #531
Draft
iamfatness wants to merge 16 commits into
Draft
Repair ISO writer throughput, restart capacity, and MP4 timing#531iamfatness wants to merge 16 commits into
iamfatness wants to merge 16 commits into
Conversation
iamfatness
changed the base branch from
codex/program-buffer-live-validation
to
main
September 14, 2026 13:47
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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.