Skip to content

Clarify HDR display diagnostics and add bounded playback evidence - #317

Merged
jlipworth merged 7 commits into
mainfrom
codex/parked-hdr-and-host
Sep 14, 2026
Merged

jlipworth merged 7 commits into
mainfrom
codex/parked-hdr-and-host

Conversation

@jlipworth

@jlipworth jlipworth commented Sep 14, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • Track the native player's actual screen and live HDR eligibility separately from stream metadata and current EDR headroom. Use that screen capability for the existing single-HDR-child playlist policy.
  • Rename Stats “Rendered” to “Stream signal”; report observed facts or explicitly unverified copy/encode intent rather than claiming HDR10 fallback, dynamic-metadata preservation, or tone-mapping success.
  • Add opt-in bounded native render-surface, initialization-metadata and decoded-buffer evidence; improve normal live-auth/server-selection test helpers.
  • Preserve the small reviewed salvage: clearer Original (Direct Stream) / Maximum (Transcode) labels and isolated macOS host Debug-launcher identity handling. No superseded copy-lane negotiation changes.

Validation

  • Native Mac: 633 tests passed; fresh isolated host build and actual HDR10 copy decoding/hold with HDR both off/on, inspected decoded frames and PQ/BT.2020 buffers. The native Original scenario did not seek.
  • iPhone, iPad and tvOS simulators: all six exact-source HDR10 / source-verified HDR10+ Original-quality seek + hold runs passed, with inspected recognizable post-seek frames and PQ/BT.2020 decoder buffers.
  • Fresh four-platform builds passed; iOS/tvOS launch surfaces inspected. Mobile normal server selection was verified after completion and relaunch through exact source discovery.
  • Hermetic PMSKit: 104 XCTest + 1705 Swift tests passed. Repository hygiene, strict MkDocs, links/anchors and Mermaid checks passed locally.
  • Public diff reviewed for corpus, server, account, device and credential information. Raw evidence remains private; no media artifacts or auth configuration are included.

Final merge revision

The cross-backend CLAUDE guidance is preserved separately on the DV branch and is not included here. App, test and script bytes match the validated review revision; the final change only makes existing Plex-only evidence scope explicit.

Explicit limits / remaining gates

  • Simulator decoding and EDR eligibility are not physical HDR luminance/colorimetry or hardware-decoder acceptance.
  • HDR10+ was verified in bounded source-frame SMPTE2094-40 metadata. Delivered in-band preservation and actual dynamic-metadata application remain unknown; base PQ playback is not an HDR10+ processing claim.
  • Live evidence here is Plex-only. Exact-source Jellyfin and Emby validation is untested; cross-backend acceptance remains open.
  • Physical iPhone/iPad/Vision Pro/tvOS and mixed-screen paused moves/hot-plug remain open. visionOS runtime smoke was blocked by the missing golden simulator pointer; no root simulator configuration was changed.
  • Initial missing-auth, wrong-server and UI-harness attempts were retained rather than counted as decoder failures. The tvOS auth helper's phone-only locator was corrected and compiled, but not rerun live to avoid signing out the saved session.
  • DV P7 decoder investigation is tracked separately in macOS Plex Original: retained Dolby Vision P7 configuration fails decoder initialization #316. No DV normalization candidate, metadata stripping, profile-5 relaxation or implicit encoding fallback is included. This PR does not close macOS Plex Original: retained Dolby Vision P7 configuration fails decoder initialization #316.

All temporary display settings were restored; our simulator runs were shut down and isolated Mac staged apps removed. The separate DV task now owns the simulator lease. Existing sessions and production app preserved. No version/tag changes. User approved integration after final-revision checks.

@jlipworth
jlipworth force-pushed the codex/parked-hdr-and-host branch from 5da3122 to 6d35ae4 Compare September 14, 2026 22:14
Jonathan Lipworth added 7 commits September 14, 2026 18:15
Preserve player-screen EDR diagnostics, eligibility observations, tests and documentation separately from playback PRs. Physical mixed-display and hot-plug acceptance remains open; not a release-readiness claim.
Keep local host network-permission workaround and tooling assertions separate from paused HDR changes.
@jlipworth
jlipworth force-pushed the codex/parked-hdr-and-host branch from 6d35ae4 to 53bd104 Compare September 14, 2026 22:15
@jlipworth
jlipworth merged commit 7ecdf6b into main Sep 14, 2026
5 checks passed
@jlipworth
jlipworth deleted the codex/parked-hdr-and-host branch September 14, 2026 22:19
jlipworth added a commit that referenced this pull request Sep 14, 2026
…318)

## Summary

- Investigates #316 with exact-source native decoder and cross-backend
delivery evidence. Depends on HDR #317, already merged; rebased onto its
main commit without duplicating HDR changes.
- Adds a default-off, DEBUG-only macOS P7 HDR10-base candidate with
strict initialization/playlist admission and unchanged media/audio
bytes. This is not full Dolby Vision decoding or a production
enablement.
- Retains automatic waiting for verified Jellyfin video-copy reopens,
independently fixing bounded P7 and ordinary HDR10 paused-seek
reproductions.
- Captures final selected media-browser initialization after copy-child
rewrites; preserves same-origin, no-redirect and bounded diagnostic
limits.
- Adds exact-ID disambiguation for duplicate-title debug probes, failure
diagnostics, and the user-requested cross-backend validation guidance.
- Prepares coordinated app/PMSKit 1.7.1 build 1. No release tag, upload
or distribution.

## Evidence and limits

Plex P7 candidate multi-segment, seek/reopen and both tested audio
transitions have inspected PQ/BT.2020 frames. Jellyfin/Emby deliver the
exact P7 source without a retained DV configuration atom in their final
selected copy initialization; this proves a packaging distinction, not
enhancement-layer/RPU processing. Plex P8.1 has a separate incomplete
HEVC configuration failure and is not admitted by the P7 candidate. P5
consent/guard cases remain blocked, not passes.

Same-source SDR controls distinguish Plex copy from media-browser
direct-file delivery. Jellyfin/Emby direct seek holds have inspected
BT.709 frames. A narrow DEBUG classifier correction now records explicit
directPlay as video/audio copy with serverDecision provenance; fresh
Original reopen runs pass with inspected BT.709 frames. Older
decisionUnknown reports remain historical blocked evidence, not
retroactive passes. No implicit video-encode approval was used.

Private source bindings, frames and wire evidence are retained outside
Git. Public research documentation records boundaries and full test
failures without private media identifiers.

## Validation

All four products build as 1.7.1 build 1; hermetic PMSKit 1,707 Swift
Testing + 119 XCTest pass. After replacing the Offline test's
independent wall-clock sleep with a DEBUG-only deterministic gate, full
macOS 637 passes twice, iOS 621 passes, and tvOS 339 passes with normal
runner exit in 24 seconds. Production 750ms preparation delay and
cancellation guards are unchanged. Historical full-suite failures and
tvOS runner hangs are retained; current non-reproduction does not
establish their root cause. Native exact-source SDR controls have
inspected frames on all three backends. Hygiene/docs/link/Mermaid checks
pass.

A UI-fixture freshness audit found older runs had cleared non-UI
DerivedData instead of the UI-specific paths. Older fixture passes are
not standalone clean-revision evidence; replacement fixtures explicitly
clear the correct UI build paths.

## Open acceptance gates

- Historical intermittent deadline/ordering failures and runner-hang
attribution; new full-suite passes do not prove these cannot recur.
- Authorized quality/subtitle video-encoding transitions (not authorized
in this task).
- Broader source/profile coverage and cross-backend scenarios not
explicitly tested.
- Physical Dolby Vision processing, HDR luminance, platform release
acceptance.
- visionOS install/run: missing canonical golden-simulator pointer; no
other task's simulator substituted.

This is not a request to merge, close #316, enable the candidate in
production, or publish a release.

Replacement iPhone detail and tvOS home semantic fixtures both pass from
the correct clean UI build paths, with app-view attachments inspected.
All owned simulators are shut down.

---------

Co-authored-by: Jonathan Lipworth <yoyoyopop40@gmail.com>
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.

macOS Plex Original: retained Dolby Vision P7 configuration fails decoder initialization

1 participant