繁体   English   中英

如何检测Android设备上的HDMI端口是否启用了HDCP?

[英]How to detect if the HDMI port on an Android device has HDCP enabled?

在Android Doc和Google上找不到任何明确的内容。

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

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

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

这是一个较旧的主题 - 但由于我再次研究这些东西,我想我会更新。

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

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

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

摩托罗拉一个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。所以你也可能想看那个空间。

通常情况下,如果它有一个HDMI端口,HDCP将被启用,因为没有它就行不通!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM