Performance reports

Sync 1080p60: next research plan

20 September 2026 · Research plan · Evidence from Apple M4 / 32 GiB and Windows 11 Build 26200

Recommended immediate action: execute Priority 4 (direct web-to-native frame pacing and browser capture pipeline optimization), focusing on Cycle 4A (worker-decoupled MediaStreamTrackProcessor reading) and Cycle 4C (SyncCameraFrameQueue FIFO refill policy). Action 2 (physical Arturia AudioFuse 8Pre discrete channel mapping for inputs 1–32) remains scheduled upon connection of hardware. E1 E5 E6

This document synthesizes findings from six empirical research cycles completed across 18–19 September 2026 (incorporating audio session recovery in E5 and Windows Frame Server 600-second sustained delivery in E6). This document outlines proposed research. No new performance tests ran for this publication.

1. Objective and constraints

The objective remains sustained 1920×1080 at 60 unique delivered frames per second, without performance degradation over time, serving web and desktop builds. An average of 50 unique FPS is an accepted progress checkpoint; it does not establish completion or resolve recurring low-rate intervals.

Preserve the actual path: Noisedeck A → Sync → Sync Camera → Noisedeck B media effect → final pixels. Use testPattern() for reproducible identity checks. Check representative shader content before release. Defer 4K work.

The deployed baseline incorporates Sync 0.2.73, Sync SDK 0.3.0, and Noisedeck Preview 0.2.68. The native daemon incorporates NEON and SSE2 SIMD unmasking, lock-decoupled audio ring buffers, sampled FNV-1 payload hashing, and exception-driven audio capture teardown.

2. Evidence that determines the next action

Observation Supported conclusion Limit
Native AVFoundation received 23,664 frames with 0 drops and 60.000 unique FPS over 600 s; Chromium delivered 6,277 repeats (20.9%) and 332 drops. The CMIO extension, Mach messaging, and daemon relay are 100% qualified for full 1080p60 uncompressed delivery. Delivery ceilings originate inside Chromium. One Apple M4 host. E1
Sender stage breakdown: GPU fence wait accounted for 11.7–12.4 ms (56.5%–59.9%); PBO readback 3.3 ms; WebSocket framing 0.8 ms. In-place row flipping eliminated 8.3 MB buffer allocation. Fence wait reflects single-frame GPU pipeline depth, not socket pressure. Measured on Apple Silicon unified memory. E2
Concurrent 32-channel 48 kHz float32 audio capture and 1080p60 video soak ran for 30 minutes with 0 audio drops, 0 cursor discontinuities, and 0 seconds <50 FPS. Retain SIMD WebSocket unmasking, decoupled audio mutex hold, fast-path packet serialization, and sampled FNV-1 frame hashing. Synthetic audio capture fixture in test daemon. E3
Windows Media Foundation virtual camera and WASAPI COM interfaces passed all unit and contract tests in CI (0.23 s execution). Windows architecture achieves structural and contractual parity with macOS. Initial CI runner lacked physical audio endpoint. E4
Exception-driven native capture teardown drops active capture count to 0 in <1 ms upon stream read error; Noisedeck recovers streaming on healthy device. Retain immediate capture teardown in native server, typed audio_unavailable error mapping in client SDK, and dynamic inventory refresh. Filesystem-gated hotplug simulation. E5
Windows Media Foundation virtual camera sustained 600.0-second soak delivering 35,998 unique frames (60.00 mean FPS), 596/600 seconds at exactly 60 FPS, and zero steady-state drops; CI WASAPI loopback passed via VB-Cable. Retain 1.0 ms multimedia timer resolution (timeBeginPeriod), NV12 dirty cache in WrapAsSample, and automated CI WASAPI loopback capture infrastructure. Physical bare-metal host (largeboi-sync-camera). E6

3. Measurement contract

All performance claims must adhere to the standard measurement contract:

4. Research order

  1. Direct web-to-native frame pacing & browser capture pipeline optimization (Priority 4): Eliminate Chromium internal capture queue drops and repeated frames.
    • Cycle 4A (Worker-decoupled MediaStreamTrackProcessor): Offload frame reading and conversion to a dedicated Web Worker to immediately re-arm reader.read(), preventing internal capture buffer overflow.
    • Cycle 4B (Composited presentation via requestVideoFrameCallback): Evaluate whether video.requestVideoFrameCallback reduces repeated frames compared to raw track reading.
    • Cycle 4C (SyncCameraFrameQueue refill policy): Remove the cyclic hitching caused by _buffering = true triggering on single-frame FIFO drain at 60 Hz in noisedeck.
    • Cycle 4D (Electron desktop native bridge bypass): Evaluate direct Mach port and shared memory transfer for packaged desktop builds (app:// origin).
  2. Physical audio interface 32-channel discrete mapping (Priority 1): Connect Arturia AudioFuse 8Pre and verify inputs 1–32 modulate assigned controls without crosstalk or channel inversion.
  3. Audio session recovery and permission consent matrix (Priority 2): COMPLETED & RETAINED (E5).
  4. Windows Frame Server 600-second sustained delivery soak & CI WASAPI loopback (Priority 3): COMPLETED & RETAINED (E6).

5. Short decision cycles

Each milestone must execute as an isolated decision cycle with paired baseline and candidate runs before embarking on a long soak. Candidate changes that do not demonstrate positive Δ FPS or that induce regression on paired platforms must be rejected promptly.

6. Long-session degradation and completion

Completion requires sustained 60 unique FPS without low-rate seconds over a continuous 30-minute soak window. Memory slope must remain ≤10 KiB/min after initial allocation.

7. Retention and reporting

Retain changes only after full test suite verification across sync, noisedeck, and noisemaker. Document findings using the established whitepaper structure with inline evidence references.

Evidence references

  1. E1. Sync 1080p60: native AVFoundation versus Chromium capture, 18 September 2026.
  2. E2. Sync 1080p60: controlled sender stage separation, 18 September 2026.
  3. E3. Sync 1080p60: combined audio (32-ch) and video load qualification, 18 September 2026.
  4. E4. Sync 1080p60: Windows camera and WASAPI platform parity, 18 September 2026.
  5. E5. Sync 1080p60: audio session recovery and contention handling, 19 September 2026.
  6. E6. Sync 1080p60: windows frame server sustained delivery and wasapi loopback, 19 September 2026.