Skip to content

[codex] Rebuild Web sharing around AV1-only transport#64

Merged
iamsyc merged 1 commit into
mainfrom
codex/av1-only-web-sharing
May 9, 2026
Merged

[codex] Rebuild Web sharing around AV1-only transport#64
iamsyc merged 1 commit into
mainfrom
codex/av1-only-web-sharing

Conversation

@iamsyc
Copy link
Copy Markdown
Owner

@iamsyc iamsyc commented May 9, 2026

Summary

This PR rebuilds the Web sharing path around AV1-only video transport.

It updates the macOS publisher, relay, and browser viewer so the production WebRTC path negotiates AV1 only, rejects unsupported video codecs, and keeps the relay as an RTP forwarding layer without transcoding. It also makes the streaming profile source-spec aware so Automatic and Smooth modes target the source display resolution while exposing actual runtime stats in the publisher, relay, and browser viewer.

Changes

  • Constrain publisher codec preferences to AV1 and fail clearly when the WebRTC stack does not expose AV1 video encoding.
  • Register and forward AV1-only video in the relay, with negative handling for non-AV1 publisher and viewer offers.
  • Update browser receiver preferences, SDP answer checks, and stats confirmation for AV1-only playback.
  • Add source video spec handling for capture dimensions and refresh-rate-derived frame targets.
  • Add codec demand, relay selected-codec visibility, and publisher/browser diagnostics for encoded and decoded video stats.
  • Update app-facing copy to describe AV1 source-resolution Web sharing.
  • Expand Swift and Go tests for codec filtering, relay negotiation, RTP forwarding, browser page behavior, and parent-process relay shutdown.

Verification

  • swift test
  • go test -count=1 ./... in Tools/VoidDisplayRelay
  • xcodebuild -project Apps/VoidDisplay/VoidDisplay.xcodeproj -scheme VoidDisplay -destination 'platform=macOS' build
  • codesign --verify --deep --strict --verbose=2 on the built Debug app
  • Chrome real playback check: AV1 at 3840×2160
  • Safari real playback check: AV1 at 3840×2160
  • Relay snapshot check: publisher and subscribers use AV1, with zero drops in the final run

- 将浏览器共享生产路径收敛为 AV1-only 编码与协商
- 按源分辨率驱动采集和发布参数并补充运行时诊断
- 更新 relay codec 分流、浏览器校验和负向测试覆盖
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 9, 2026

CI Summary

Run: Open

Check Status Details
Change Scope ui_code code=true, ui=true
Dependency Review success code PR gate; high and critical vulnerabilities block
Static Checks success actionlint, shellcheck, shfmt, SwiftFormat, SwiftLint, action pinning
Unit Tests success Swift tests: 547
Go packages: 2
Reason: passed
Artifact: unit-gate
Xcode Build success Debug build with zero warning scan
Artifact: xcode-build
UI Smoke success Failure classification is written by ui-smoke-summary.json in each artifact.
Artifacts: ui-smoke-baseline, ui-smoke-permissionDenied, ui-smoke-rebuildFailed
Release Smoke success Artifacts: release-smoke-arm64, release-smoke-intel64
Release verify summaries are produced by release.yml before publishing.
Artifacts link Open artifacts
CI Gate success single branch protection check

@iamsyc iamsyc merged commit 927eab3 into main May 9, 2026
15 checks passed
@iamsyc iamsyc deleted the codex/av1-only-web-sharing branch May 9, 2026 05:37
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.

1 participant