我们正在流播Widevine保护的电影。我们的问题是媒体播放器在某些设备上崩溃了。

我们知道对Widevine的“问题”支持,但是有些设备例如三星Galaxy Tab2 10.1 P5100我们预计DRM应该会起作用。

我们已经进行了P5100的测试,并且可以完美地为我们工作,但是客户拥有相同的设备(带有原始ROM,没有root用户),并且他们的设备上我们的应用程序崩溃了。有趣的是,这个问题并不适用于所有相同类型的设备,而仅适用于某些设备,这意味着在您的P5100上它可能运行良好,但在例如您妻子的P5100上却无法正常工作。如果播放器崩溃,则它永远不会发生,也不会总是发生,因此很容易模拟。

当然,即使相同设备的类型也可以稍有不同,但是仍然...请参阅我们从logcat得到的错误:

08-07 12:36:49.455  2901  3099 I DrmManagerClient: getErrorType return TYPE_PROCESS_DRM_INFO_FAILED becauseof widevine or STATUS_ERROR
08-07 12:36:49.455  2901  3099 E Clix  : [Activity_Player]::[DRM]::[TYPE_PROCESS_DRM_INFO_FAILED]
08-07 12:36:49.455  2901  2913 W DrmManagerClientImpl(Native): DrmManager server died!
08-07 12:36:49.455   118  3116 D HTTPBase: [4] Network BandWidth = 349 Kbps
08-07 12:36:49.455   118   328 W DrmManagerClientImpl(Native): DrmManager server died!
08-07 12:36:49.455   358   640 W DrmManagerClientImpl(Native): DrmManager server died!
08-07 12:36:49.462   102   102 I ServiceManager: service 'drm.drmManager' died

我们的理解是,该日志意味着 native Widevine进程在许可证获取处理期间死亡-似乎即使在Samsung新设备上,Widevine在不同设备和固件版本之间的兼容性也不是最好的。

任何人都有同样的问题,可以为我们提供帮助吗?

问候,

最佳答案

在互联网上搜索之后,我们在三星论坛(http://developer.samsung.com/forum/thread/widevine-drm-issues-/77/200522)上发现了我们怀疑的内容以及被内容发布者告知的内容:即使我们有2个相同类型的设备,都能够播放Widevine,所以可能会发生以下情况:所谓的Widevine key 箱没有提供给其中的一个,这样的设备就不能使用Widevine DRM。 key 箱是一种加密的数据,其中存储了用于解密DRM信息的某些部分的 key 。

为什么会发生这种情况,我不知道...设备可能会在不同的地区使用,制造商并不认为Widevine是必需的...

还要注意,当您根据http://source.android.com/devices/drm.html根植Android时,然后取决于安全级别,Widevine key 箱可能存储在已擦除的内存区域中。

BR

关于Android:DrmManager服务器死亡,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18104050/

10-08 21:00