使用 DRM-X 构建受保护的播放体验
查看教程、API 参考和集成指南。先完成一个受保护视频的播放,再按照所用平台的指南继续集成。
播放您的第一个受保护视频 →按照指南,从 Console 配置开始完成播放接入。对内容进行打包加密 →发布加密的 DASH 和 HLS 输出。集成您的播放器 →了解 Web、Android、Apple 和原生播放器的集成方式。选择集成方式 →找到你的平台,下载集成包并按照指南配置。使用 API →了解可信输入、授权流程和接口响应。
快速开始#
- 播放您的第一个受保护视频从发布视频开始接入 DRM-X 6.0 Web 播放:创建仅具备必要权限的服务端凭据,确认用户的观看权限,再加载已登记的 Manifest。
- 创建服务器集成凭据获取接入所需的 Environment ID、Site Key、Access Key 和 Content ID。凭据应保存在可信的后端服务器上。
核心概念#
准备内容#
- 打包加密并发布内容使用 DRM-X 6.0 对 VOD 视频进行打包加密并发布,支持 DASH/CENC、HLS/CBCS、单密钥或按画质分级的多密钥保护,并可使用托管或已注册的云存储。
- 桌面 Packager:分步指南按照图文并茂的 Windows 操作指南,打包加密视频或音频、检查 Content IDs、选择加密方式、复制 CLI 命令并恢复上传。
- DRM-X CLI Packager:命令与故障恢复对源视频进行打包加密,使用受保护的凭据运行自动化任务,并查看各阶段进度。上传中断后可以继续上传,无需重新编码。
- 长视频、4K 与 8K使用交互式计算器估算加密输出包大小和上传时间,为三小时 VOD 等大型任务做好规划。了解如何根据源视频选择清晰度档位,以及如何恢复中断的上传。
- 连接云存储连接 AWS S3、Microsoft Azure、Google Cloud Storage、Alibaba Cloud OSS 或 Tencent Cloud COS,用于分发加密媒体。
- Amazon S3 和 CloudFront:分步指南将私有 S3 存储桶连接到 DRM-X 6.0,配置权限受限的 IAM、浏览器 CORS 和 CloudFront HTTPS 分发,并完成上传验证。
许可证授权#
- 许可证授权概述后端确认用户有权观看后,使用 Playback Session API 请求播放授权。选择播放规则、接入播放器,并在播放结束时释放对应会话。
- 预设模板与自定义策略选择与已发布加密内容匹配的 DRM-X 许可证策略,设置有效期、输出保护和各清晰度档位的播放规则。
- 使用服务器端令牌代理将 DRM License Token 保存在您的后端,通过代理转发播放器请求。转发时保持原生 DRM challenge 和许可证响应的二进制内容不变。
API 参考#
- 创建播放会话了解如何通过身份验证调用接口,并按 DRM-X Universal Playback Session Contract 处理响应。后端使用可信的 Content IDs 请求具有明确有效期和适用范围的播放授权。
- 播放会话错误参考根据 HTTP 状态码和请求 ID 识别播放会话 API 错误,了解错误原因并选择合适的修复步骤。
播放器与 SDKs#
- Web 与 HTML5 播放使用 Universal Player 或经验证的 Shaka 接入 DRM-X 6.0 Web 播放,并通过 PHP 或 ASP.NET Core 后端提供授权。了解自动选择 DRM 系统和安全排错的方法。
- 使用 Universal Player 构建原生应用选择 Android、iOS、Apple TV 或 Samsung Tizen。下载您的订阅可用的 SDKs,试用公开评估播放器,按照指南完成设置,并查看应用截图。
- Android SDK 与原生 Media3下载 Android 播放器,体验可拖动排序的播放列表、可保存的随机播放和循环设置,以及离线续播。通过 DRM-X 或原生 Media3 集成受保护的播放。
- Apple FairPlay 集成了解如何使用 Swift 和 AVFoundation,在 iOS、iPadOS、tvOS 及 Safari 上接入 DRM-X 6.0 FairPlay Streaming,包括服务端授权以及 SPC 请求和 CKC 响应的处理。
- Samsung Tizen SDK 与电视播放器评估安装 Samsung TV 评估播放器,配置并签名 WGT,然后使用 Tizen Universal Player SDK 集成 Widevine 点播(VOD)。
- Amazon Fire TV SDK(Vega OS)使用 DRM-X Universal Player 构建原生 Amazon Fire TV 应用:了解 SDK 下载资格,查看界面截图,完成 Vega 环境准备、观看者身份验证、参数配置、构建和真机测试。
- Roku TV Universal Player SDKBuild a native Roku TV app with protected Widevine playback, remote controls, playlists, audio and subtitles using the DRM-X 6.0 Universal Player SDK.
- 原生 DRM 集成通过 Universal Playback Session Contract,将原生 Widevine、PlayReady、FairPlay 或 WisePlay 客户端与 DRM-X 6.0 集成,无需在客户端嵌入服务器凭据。
集成#
- 集成中心与下载保留现有登录系统和数据库。下载完整集成包或某个平台的集成包,然后按照可视化修改指引接入受保护播放。
- WordPress 插件安装与配置安装共享 WordPress 插件,将课时关联到 Content ID,并保留 LMS 报名和会员规则。
- LearnDash 视频 DRM:嵌入 Universal Player使用共享 WordPress 插件和现有课程访问规则,将 LearnDash 课时及共享教学步骤连接到 DRM-X。
- Moodle 受保护视频活动安装 Moodle 活动模块,将受保护内容添加到课程,并复用平台原生的报名和可用性规则。
- 后端语言示例了解共同的播放流程,找到 Node.js、Django、Laravel、PHP、ASP.NET 或 Java 中需要修改的具体回调。
- ASP.NET Core Universal Player 集成安装 .NET SDK,接入已验证的用户身份和内容查询,然后启用随附的播放会话端点。
- ASP.NET Framework 4.8 视频 DRM 集成将 Windows/IIS 源码适配器添加到现有 ASP.NET Framework 应用,并接入每次请求使用的授权委托。
- Node.js + Express 视频 DRM 集成安装 Express SDK,接入现有登录系统,并通过每次请求执行的回调返回允许访问的 Content ID。
- Django 受保护视频使用 Django 身份验证和您自己的权限回调。DRM-X 包不会创建视频表或访问授权表。
- Java、Spring Boot 与 Vue安装 Spring Boot starter,将 ContentEntitlement 接入现有用户和内容数据访问层。只有当前端使用 Vue 时才需要添加 Vue。
- Laravel 与 Node.js 集成通过 ContentAuthorizer 将 Laravel 连接到现有视频目录和购买系统。不需要 DRM-X 内容表或访问权限表。
- Canvas、Blackboard、Brightspace 与 Open edX使用 LTI 1.3 集成服务,通过 LMS 签名的启动请求打开受保护视频。
- Shopify 受保护视频使用 Shopify 签名的 app proxy,并在服务器端核实购买记录后打开受保护视频页面。
- SDKs 与示例下载下载完整 Web 集成包、某个平台的 SDK 和示例,或原生播放器 SDK。
- Kajabi、Thinkific 与 Teachable先将可信的学员登录身份与服务器端报名权限检查连接,再打开受保护视频。
DRM-X 6.0