【发布时间】:2013-05-01 20:10:21
【问题描述】:
我正在使用 C# Windows 窗体,并希望确保我的窗体上的内容仅通过使用系统硬件的 HDCP 兼容流输出。这将需要一个多步骤的过程。该过程的高级框图描述是:
- 确定显示器是否支持 HDCP
- 确定图形适配器是否支持 HDCP
- 终于在输出上启用 HDCP 加密
如果这些阶段中的任何一个报告失败,那么将表单涂黑是一件小事。
我对这种方式进行了少量研究,但似乎找不到任何详细的示例、线索或说明来实现这一点。到目前为止,我一直在研究使用 DirectX 和 Windows OPM,但发现帮助不足。 Windows PlayReady 许可证似乎也解决了这个问题,但似乎是针对预加密内容的(而且价格也相当昂贵)。也许有一种我没有注意到或没有想过的方法?
如果您需要任何其他信息,请告诉我。
提前谢谢你。
【问题讨论】:
-
你们找到解决办法了吗?
-
HDCP 是一项专有技术,旨在为英特尔谋取利润。为什么你会认为实施起来会很便宜?他们将其授权给内容提供商(== 你),而不是玩家。该协议在模拟时也是非常硬件密集型的,所以你真的想通过 DirectX 和 OPM。有一个 HDCP 兼容协议的开源实现,cs.sunysb.edu/~rob/hdcp.html,但它对你想要的几乎没用,对于实时视频输出来说太贵了,它可能需要你编写驱动程序。
-
...而且您几乎只是在进行混淆,实际上绕过检查可能很容易。您只需要更改可执行文件中的几个字节,就可以保护消失了。或者有人可能会拦截您的输入等。或者您是否正在实现自己的视频播放器,需要符合 HDCP 标准?