Skip to content

feat(sender): add per-receiver codec selection - #175

Closed
Betafer wants to merge 1 commit into
swellweb:maint-3.5from
Betafer:codex/feat-per-receiver-codec-v3.5
Closed

Betafer wants to merge 1 commit into
swellweb:maint-3.5from
Betafer:codex/feat-per-receiver-codec-v3.5

Conversation

@Betafer

@Betafer Betafer commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

Summary

Add an Automatic, H.264 or HEVC compression preference to each Sender session and remember it for the selected Receiver.

The selection remains safe: the Sender probes the requested codec at the actual preset dimensions, combines that result with the Receiver HEVC capability and falls back to the compatible hardware codec when necessary. If neither hardware path is available, capture fails with an explicit message instead of silently starting an unusable session.

Scope

  • Sender only; no wire-protocol or Receiver decoder changes
  • preference is disabled while connected or streaming
  • per-Receiver persistence, with automatic as the backward-compatible default
  • H.264 and HEVC labels and explanations in all five bundled languages
  • RAW NV12 sessions keep their existing behavior

Verification

  • rebased onto maint-3.5 at v3.5.1-rc.3
  • all 117 Sender XCTest cases pass
  • focused tests cover automatic selection, both manual choices, compatible fallback and no-hardware failure
  • all modified language JSON files validate
  • real Apple Silicon Sender and 2017 Intel iMac Receiver session previously verified with hardware VideoToolbox HEVC; H.264 remains available as the safe manual comparison path

This is a Draft PR so the maintainer can decide whether the manual choice belongs in the current settings sheet or a later advanced section.

@swellweb

swellweb commented Oct 5, 2026

Copy link
Copy Markdown
Owner

Thank you for this focused contribution. Per-receiver codec selection is now integrated and tested in #206 for TargetBridge 3.6.0. I am closing this older draft because it targets maint-3.5; the work remains credited in the release candidate.

@swellweb swellweb closed this Oct 5, 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