媒体服务脱机流式处理

媒体服务徽标 v3


警告

Azure 媒体服务将于 2024 年 6 月 30 日停用。 有关详细信息,请参阅 AMS 退休指南

  • 当观众与 Internet 断开连接时,可能需要将内容下载到手机或平板电脑上才能播放。
  • 在某些国家/地区,Internet 可用性和/或带宽仍然有限。 用户可以选择下载内容,以更高分辨率观看内容。
  • 某些内容提供商可能会禁止 DRM 许可证传送超出国家/地区的边界。 如果用户需要出国旅行,但仍想要观看内容,则需要脱机下载。

Azure 媒体服务为 Microsoft PlayReady、Google Widevine*、Apple FairPlay Streaming 和 AES-128 加密提供了一组设计良好的 内容保护服务

注意

只有在下载内容时,脱机 DRM 才会为获取许可证的单次请求进行计费。 任何错误都不收费。

先决条件

在 iOS 10+ 设备上实现适用于 FairPlay 的脱机 DRM 之前:

  • 阅读 Apple FairPlay 许可要求和配置
  • 从 Apple 开发人员网络获取 FPS SDK。 FPS SDK 包含两个组件:
    • FPS 服务器 SDK,其中包含密钥安全模块 (KSM)、客户端示例、规范和一组测试向量。
    • FPS 部署包,其中包含 D 函数规范,以及有关如何生成 FPS 证书客户特定的私钥和应用程序密钥的说明。 Apple 仅向许可的内容提供商颁发 FPS 部署包。
  • 作为 FPS 证书生成的一部分收到的 .der/.cer 证书文件包含公钥,并可供客户端使用。 私钥(.pfx)应在 Azure Key Vault 或其他安全位置进行保护。

在 Azure Key Vault 中存储 FairPlay 私钥(.pfx)

从 Apple 收到的私钥(.pfx)应被视为安全证书,并可以存储在 Azure Key Vault 中。

  • 管理员应首先将 .pfx 证书文件转换为 base 64 文本文件
  • 转换后,可以将此文件作为安全文本文件存储在 Azure DevOps Services 中。
  • 然后,可以将字符串手动存储在 Azure KeyVault 中作为“机密对象”,或作为解决方案部署/生成脚本的一部分。 可以在 Gridwich 项目示例代码 中看到将 FairPlay 专用证书存储在 Azure KeyVault 中的示例
  • (可选)将 .pfx 文件的密码存储为密钥保管库中的机密。

示例 CLI 脚本

将 base64 编码的私钥文件复制到 Azure KeyVault:

set -eu
echo key vault : $SHARED_KV_NAME
echo "Copying FairPlay certificate to key vault as secret"
az keyvault secret set --vault-name $SHARED_KV_NAME -n ams-fairPlay-certificate-b64 -f $(FairPlayCertificate.secureFilePath) --output none

克隆该示例

克隆媒体服务 .Net 示例。

git clone https://github.com/Azure-Samples/media-services-v3-dotnet-tutorials.git

修改代码

使用 .NET 修改 Encrypt with DRM 中的代码以添加 FairPlay 配置。

详细信息

有关详细信息,请参阅常见问题解答 中的内容保护。

Widevine 是 Google Inc. 提供的服务,受 Google, Inc 的服务条款和隐私策略的约束。

获取帮助和支持

可以通过以下方法之一联系媒体服务,并关注我们的更新: