HDCP
The roMediaStreamer object will honor the copy-protection status of its inputs by assigning the same status to its outputs. Each stream can have one of the following levels of copy protection:
- None: No copy protection is enabled. These streams can be saved to files or streamed over the network without restriction.
- HDCP: The input is protected with HDCP. It can be neither saved nor streamed, but it can be output to an HDCP-authenticated display.
HDCP Workflow
The roMediaStreamer object will handle HDCP authentication and de-authentication as follows:
- If a non-HDCP authenticated stream becomes HDCP authenticated, any file or IP-streaming destination components will stop immediately and send an EOS_ERROR event. If the connected display cannot be HDCP authenticated, the display destination will hide the video output .
- If a stream that was previously HDCP authenticated becomes unprotected, the file and IP streaming destination components will not be resumed. However, if the display destination is not HDCP authenticated, it will begin displaying video. An HDCP-authenticated display will be unaffected either way.
HDCP Compliance
Any HDCP-protected signal must remain HDCP-protected through the entire HDMI chain. This applies to all BrightSign players with HDMI inputs (the XD1230, XD1132, 4K1142, XT1143, and XT1144). If the HDMI input signal is protected by HDCP:
- BrightSign players cannot encode the HDMI input for streaming or saving to file.
- BrightSign players cannot display the HDMI input if any device in the HDMI chain is not HDCP-compliant or refuses a HDCP-protected handshake/connection. This includes HDMI splitters/DAs, media converters/transceivers (HDMI-over-Cat5, etc), A/V receivers, TVs/displays, analog output (on XD1230 and XD1132), and display encoding (stream the player output screen). In this case, BrightSign players will still play the audio (barring bugs or incompatibility) from the HDMI input, but the area where the HDMI input video should be will be empty/gray.
Additional notes
- The player only enables HDCP on the HDMI output if HDCP is detected on the HDMI input, save for Aaron's comment above?????
- Chromecast, Apple TV, Amazon Fire Stick, and Roku boxes enable HDCP on their output for obvious reasons.
- Most game consoles enable HDCP on their HDMI output, though in some cases it depends on the output mode or software being used.
- Some MacBooks will enable HDCP on the output if the destination device reports it supports HDCP, regardless of whether protected content is being displayed or not.
- Some computer DVI graphics cards can support HDCP over DVI, as can some DVI AV devices like certain projectors and DVD players with DVI output, however, most DVI-HDMI conversion will lose HDCP and a lot of early displays don't support HDCP over DVI.
- Some early HDMI displays don't support HDCP over HDMI either. If it's not specifically mentioned, it probably isn't supported on the device.
- There was an allowance in the DMCA for a HDCP-protected source device to allow SD (Standard Definition) analog output, but in practice this was rarely seen/used.
- There are some instances where an HDCP-protected source can end up being output via analog on devices with both HDMI and analog outputs (on BrightSign players and the original OLED TiVo Series 3 set-top boxes), but these should not be relied upon. This doesn't apply to current models without analog outputs.
- HDCP 1.x and HDCP 2.x (available in HDMI 2.x) are separate entities. While HDMI 2.x devices are generally supposed to fall back to work with HDCP 1.x devices, it isn't always a smooth process, hence devices like HDfury Integral and similar in-line conversion/translation devices.
Encryption Flags
The encryption level can be forced by flagging it on the source component. For example, the following source component will force any connected display receiving HDMI input to be HDCP authenticated:
hdmi:encryption=hdcp
Important
The HDCP encryption status of a stream cannot be removed by setting the encryption parameter to none.