Azure 中的 Widevine 加密视频不会过期
Posted
技术标签:
【中文标题】Azure 中的 Widevine 加密视频不会过期【英文标题】:Widevine encrypted videos in Azure do not expire 【发布时间】:2020-02-20 21:05:44 【问题描述】:我正在尝试启用我的 Azure 托管视频,以便在 Chrome 中使用“租期”进行离线观看,以便它在几天后过期。我从OfflinePlayReadyAndWidevine java 示例项目开始。我更新了this method,为所有三个持续时间指定了 30 秒。
policyOverrides.setRentalDurationSeconds(30);
policyOverrides.setPlaybackDurationSeconds(30);
policyOverrides.setLicenseDurationSeconds(30);
这似乎奏效了。查看Azure Media Services Explorer 中的资产信息,我在“内容保护”选项卡中看到了这 30 秒的持续时间:
"properties.options": [
"policyOptionId": "1d9620f2-bc02-4ddc-a64f-b25e5f02b6e5",
"name": null,
"configuration":
"widevineTemplate": "\"AllowedTrackTypes\":\"SD_HD\",\"ContentKeySpecs\":[\"TrackType\":\"SD\",\"SecurityLevel\":1,\"RequiredOutputProtection\":\"HDCP\":\"HDCP_NONE\"],\"PolicyOverrides\":\"CanPlay\":true,\"CanPersist\":true,\"CanRenew\":false,\"RentalDurationSeconds\":30,\"PlaybackDurationSeconds\":30,\"LicenseDurationSeconds\":30"
,
"restriction":
],
但是好像没有生效。在 Windows 上的 Chrome 中,我将我的 URL 添加到 Shaka player 及其 Custom Content section,单击下载按钮,拔掉互联网,我可以一遍又一遍地播放视频。它似乎没有过期。我也没有在Azure media player 中遇到过期问题,尽管由于它的离线支持,我专注于让 Shaka 首先工作。
如果有人之前测试过这个可以工作,我很想看看如何!
【问题讨论】:
【参考方案1】:在您的 Widevine 模板中,3 个属性名称:
-
RentalDurationSeconds
PlaybackDurationSeconds
LicenseDurationSeconds
看起来与 Widevine 代理规范或 Widevine 模板 (https://docs.microsoft.com/en-us/azure/media-services/previous/media-services-widevine-license-template-overview) 上的 Azure 媒体服务文档中的相应 3 个属性名称不同
他们应该分别
-
rental_duration_seconds
playback_duration_seconds
license_duration_seconds
这样与上面的 Widevine 代理文档或 AMS 文档一致。
暂时,您能否将 Widevine 模板设置为 JSON 字符串而不是通过属性设置器?
【讨论】:
伟大的收获!这就是问题所在。不仅仅是这三个,看起来所有的字符串常量都不正确。我提出了一个问题:github.com/Azure-Samples/media-services-v3-java/issues/44以上是关于Azure 中的 Widevine 加密视频不会过期的主要内容,如果未能解决你的问题,请参考以下文章
Azure 媒体服务上 Widevine CENC 的加密设置
html 播放器的 Widevine DRM 保护内容中的用户授权。