我有一个关于azure媒体服务的widevine许可证续签的问题,
我正在尝试使用清单中提供的动态许可证URL从azure许可证服务续订许可证,但是当我使用offlineHelper类( offlineLicenseHelper.renewLicense )在exoplayer上进行续订时,许可证服务总是返回相同的内容密钥,因为我已经在我的widevine内容密钥策略模板中声明了can_renew : true。
我做的事有什么问题吗?
任何答案都可以帮上忙。
谢谢。
发布于 2020-11-02 18:59:50
是的,这确实是我现在正在使用的函数,下面是我是如何使用它的:
keySetId =mediaItem.playbackProperties.drmConfiguration.getKeySetId();
android.util.Log.d(TAG, "doInBackground: Old key : "+ Arrays.toString(keySetId));
newkeySetId = offlineLicenseHelper.renewLicense(keySetId);
android.util.Log.d(TAG,"doInBackground:newkey:"+Arrays.toString(newkeySetId));我在日志中测试的一个示例结果是:
doInBackground: Old key : [107, 115, 100, 69, 69, 55, 51, 57, 54, 65, 54]
doInBackground: New key : [107, 115, 100, 69, 69, 55, 51, 57, 54, 65, 54]KeysetId和newKeySetId产生相同的值,我使用的服务器的许可证URL如下:
上面只是azure媒体服务随清单提供的动态url的一个例子。
但我认为这是因为即使我请求了一个新的密钥kid,kid=a2711bd1-f1c6-42f0-b6bc-06ec12405d3c总是返回相同的密钥kid。
我不确定azure是否不支持动态URL上的密钥续订?!
发布于 2020-11-04 05:13:30
对于Widevine请求,我们将模板作为字符串。我们应该将您在模板中提供的任何信息一直发送到Google Widevine服务器。
我自己没有测试过这个流程,但是当我们在密钥交付服务上收到Widevine请求时,我们只需填写keyID等详细信息,并使用我们的密钥对其进行签名。除了这些,我们实际上不做任何其他事情,并将请求发送到Google for Widevine托管的许可服务器。我们不会更改实际许可请求中的任何部分或模板。
在创建ContentKeyPolicy时,policyoverride对象来自您,作为WidevineConfiguration的一部分。我们不会设置或更改其中设置的renewal_server_url。
您确定您有有效的模板吗?如果您可以提交官方支持票证,并在帐户上提供所有详细信息,以及正在使用的模板,我们可以跟进。
https://stackoverflow.com/questions/64607259
复制相似问题