5

在 Android Doc 和 Google 上找不到任何确定的东西。

如果有 API 可以检测到这一点,它是什么以及在 HDMI 输出上启用/禁用 HDCP 的 API 是什么?

如果没有 API 可以检测到这一点,是否可以使用设备检查 HDMI 端口上的 HDCP 标志?

在某些 Android 设备(尤其是三星设备)上,HDMI 端口始终启用 HDCP。但是其他制造商的设备呢?在 Google 认证的设备上,HDCP 是强制性的吗?如果不是强制性的,主要内容提供商的 Android 应用程序(来自 Big cable company teleco)如何防止视频输出到非 HDCP 保护的 HDMI 端口?

4

4 回答 4

1

这是一个较旧的线程 - 但由于我再次从事这些工作,我想我会更新。

从 API 17 (Android 4.2+) 开始,您可以从标准的 Android SDK 获得一个体面的 HDCP 信息代理。

如果您想确保显示器是“安全的”,您可以在应用程序 Surface 上调用 setSecure(true)。然后,您可以枚举可用的显示器并验证是否为每个显示器设置了FLAG_SECURE 。这将阻止 DDMS 并至少向显示驱动程序提示输出应打开 HDCP。但不能保证,您的里程可能会有所不同。

进一步说明——上面提到的亚历克斯路径可能在较新的设备(Android 5.1+)上发生了变化。但由于这取决于 OEM,预计这可能会因不同的设备而异。:-(

于 2015-07-14T21:53:28.563 回答
0

摩托罗拉一个 API:http ://web.archive.org/web/20120213100531/http://developer.motorola.com/docstools/library/motorola-hdmi-status-api/

我们仍然将它用于旧设备。我还读到有人通过 adb 在新设备上使用它仍然取得了一些成功,所以如果有人知道这是否仍然适用于较新的摩托罗拉设备,请分享。

另外我知道这不是您要的,但是我们将其用于 HDMI 状态(/sys/devices/virtual/switch/hdmi/state),希望他们将来也将其扩展为 HDCP 支持.. .所以你可能也想看那个空间。

于 2013-10-25T00:00:04.177 回答
-2

如果它有一个 HDMI 端口,通常会启用 HDCP,因为没有它就无法工作!

于 2013-09-11T15:55:16.640 回答