Skip to content

Fix macOS meeting and media recovery after soak testing - #253

Draft
iamfatness wants to merge 14 commits into
mainfrom
fix/macos-soak-recovery
Draft

Fix macOS meeting and media recovery after soak testing#253
iamfatness wants to merge 14 commits into
mainfrom
fix/macos-soak-recovery

Conversation

@iamfatness

@iamfatness iamfatness commented Sep 6, 2026

Copy link
Copy Markdown
Owner

CoreVideo could flood the operator with subscription errors after recording permission was granted near a breakout transfer, leave the waiting room after two minutes, and keep a shared participant renderer at tile resolution when an HD source was added.

This change gives macOS raw media a single lifecycle owner, preserves desired bindings across room transitions, consolidates source failures into actionable media status, and makes Retry Media reach exhausted tile feeds. Waiting-room events now hold the existing admission watchdog. Director decisions clamp stale timestamps and log cut attribution. Shared video quality uses the highest current target request, upgrades the warm renderer in place, preserves it on refusal, and limits automatic quality retries to three.

Validation: full arm64 macOS plugin and engine build against Zoom SDK 7.1.5; 75/75 CTest tests passed, including a regression through real client event handling for breakout readiness. Individual task reviews and a combined review passed after corrections. Cross-platform GitHub checks are running on the final revision.

This remains a draft pending candidate validation. Host-controlled recording permission and breakout checks, actual HD delivery, a two-hour soak, and installation on a second Mac remain outstanding. The working beta release and website download remain unchanged. Missing ATEM audio hardware is a local OBS configuration item and is outside this change.


static int failures = 0;
static void check(bool ok, const char *message) {
if (!ok) { std::fprintf(stderr, "FAIL: %s\n", message); ++failures; }

static int failures;
static void check(bool value, const char *message) {
if (!value) { std::fprintf(stderr, "FAIL: %s\n", message); ++failures; }
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