Skip to content

Run the protected-content matrix so the copy can name real services #89

Description

@nbkdoesntknowcoding

Background

Protected video is refused whenever any attached output cannot carry the copy protection it asks for, and it is refused on every display rather than only the offending one. A virtual display cannot carry it, so Netflix stops working on the Mac's own built-in screen while Display Share is running. Apple's Sidecar behaves identically, for the same reason.

There is no fix — the trigger is the display existing, not the display being watched — so the app ships a Release the screen control and an explanation (#62).

What that explanation cannot currently do is be specific, because nobody has tested which services actually behave this way.

The matrix

For each service, with a session running, on the Mac's own screen:

Service Plays? What the error says
Netflix — Safari
Netflix — Chrome
Prime Video — Safari
Prime Video — Chrome
Apple TV+ — the TV app
Apple TV+ — Safari
Disney+
Spotify video / podcasts
YouTube (unprotected control)

Then the same list again after pressing Release the screen, to confirm each one recovers.

Roughly twenty minutes, and it needs active subscriptions.

What it changes

Three things, all currently guesses:

  1. The copy can name services rather than saying "protected video", which is vague enough that people do not realise it applies to them until it does.
  2. Browser differences matter. If Safari refuses and Chrome does not — plausible, since they use different protection paths — that is a genuine workaround worth documenting, and nobody knows.
  3. Resolution downgrades count too. Some services do not refuse outright; they drop to SD. That is a different symptom, it looks like a Display Share quality bug, and it would be reported as one.

Explicitly not in scope

Anything that works around the protection. Circumventing HDCP or macOS capture protection is unlawful under DMCA §1201 and equivalents, is not what the release control does, and is not wanted here. This is about describing the behaviour accurately so people can make an informed choice.

Metadata

Metadata

Assignees

No one assigned

    Labels

    measurementNeeds numbers from real hardware, not more codeneeds-hardwareCannot be done without specific hardware to handresearchAnswer the question first; the code may not follow

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions