集成中心与下载
保留现有登录系统和数据库。下载完整集成包或某个平台的集成包,然后按照可视化修改指引接入受保护播放。
选择下载内容#
发布版本 20261030.2 · 后端 SDK 1.3.0-preview.13。包含九个 SDK 发布文件、示例、源码适配器、播放器组件和插件安装包。
解压到较短的路径,例如 C:\drmx。打开 START-HERE.html,或直接查看 examples/sdk/<your-language>/README.md。各平台集成包使用与本教程相同的目录结构。
由您的网站决定谁能观看#
保留您的登录、购买、会员和课程报名系统。应用提供当前用户和允许访问的 Content ID。SDK 调用 DRM-X,播放器加载受保护的视频。
一次接入现有应用
登录和权限判断由您负责。SDK 和播放器负责受保护播放。
- 保留现有登录系统
观众通过您现有的网站登录。
- 接入您的内容查询
应用检查访问权限,并返回所选课时对应的 DRM-X Content ID。
- 通过 SDK 发起调用
后端 SDK 使用服务器凭据向 DRM-X 请求经过授权的播放。
- 显示播放器
播放器获取 DRM 许可证,并播放已发布的加密内容。
理解两种视频 ID#
| 值 | 示例 | 来源 |
|---|---|---|
| 网站视频 ID | lesson-123 | 您的课时、商品或视频记录。 |
| DRM-X Content ID | your-published-content-id | 在 DRM-X 中发布的受保护内容。 |
| 用户 ID | customer-456 | 经过身份验证的登录会话。 |
使用现有数据库、API 或应用代码,将课时关联到对应的 Content ID。找到视频并不代表该用户有权观看;返回内容前必须检查权限。
先准备一次,再接入网站#
- 加密并发布一个视频,然后复制其 Content ID。
- 为同一环境创建播放凭据。在服务器端使用 Site ID、Site Key 和 Access Key。
- 下载完整集成包或对应平台的集成包。使用包管理器安装其中的 SDK。
- 接入用户及内容权限回调,然后将播放器添加到页面。
SDK 使用已经发布的内容。它不替代打包加密工具或支付系统。安装第三方运行时依赖时可能需要互联网连接。
找到需要您修改的代码#
选择编程语言,查看对应的修改位置。
Node.js / Express
Python / Django
修改您的应用: authorization.py
接入: authorize(user, video_id)
返回包含 content_id 的字典,或返回 None。在 settings.py 中将其注册为 DRMX['AUTHORIZE']。
PHP / Laravel
修改您的应用: app/Services/DrmxAccess.php
接入: ContentAuthorizer.authorize(user, videoId)
返回允许访问的内容数组或 null。在 AppServiceProvider 中绑定您的服务。
原生 PHP
修改您的应用: index.php
接入: findAuthorizedVideo(userId, videoId)
返回允许访问的内容数组或 null。接入现有 PHP 会话中的用户身份。
C# / ASP.NET Core
修改您的应用: Program.cs
接入: QuickStartCatalog.FindAuthorizedVideoAsync
返回 QuickStartVideo 或 null。IDrmXContentEntitlement 会将请求中的 Content ID 与该结果进行核对。
C# / ASP.NET Framework
修改您的应用: App_Code/DrmXPlayback.cs
接入: ApplicationServices.Authorize
仅当用户、Content ID 和内容类型均通过授权检查时返回 true。这是 Windows/IIS 的源码适配器。
Java / Spring Boot
修改您的应用: DrmxAccess.java
接入: ContentEntitlement.authorize(userId, videoId)
返回 Optional<AuthorizedVideo> 或 Optional.empty()。将控制器和授权 bean 连接到现有数据访问层。
按编程语言下载#
WordPress 与 Moodle#
标准 LMS 流程只需安装插件,并在平台管理界面中设置凭据和课时的 Content IDs。保留平台正常的报名规则。
WordPress 安装 ZIP · Moodle 活动模块 ZIP · 可选 Moodle 过滤器 ZIP
WordPress 对 LearnDash、LearnPress、Tutor LMS、Sensei 和 MasterStudy 使用同一个共享插件,只需安装一次。
前端组件与托管平台#
所有源码适配器——适合选择复制源码进行集成的客户。
React / Next.js / Vue 组件 · GitHub · LTI / 托管学习平台 / Shopify 桥接 · GitHub
前端组件使用上面任一带身份验证的后端。托管平台桥接需要平台注册和服务器管理的内容映射;请参阅 LTI、托管学习平台 或 Shopify 指南。
预览版本与校验和#
这些包属于预览版本。ASP.NET Framework 仅提供源码;Laravel 提供接入现有应用的安装步骤。不需要从公共包仓库安装 DRM-X SDK,因为包中已包含 SDK 文件。
旧版本下载仍然可用。GitHub 仓库现已公开。投入生产前,请选择目标浏览器和部署环境进行验收。
WordPress 和 Moodle:在管理界面中配置#
完整集成包包含 WordPress preview.7、Moodle 活动模块 preview.6 和可选过滤器 preview.2。使用内置 LMS 适配器时,不需要编写后端回调。
WordPress 与 LMS 可视化配置 · LearnDash 课时配置 · Moodle 活动配置
客户下载包包含 SDKs、示例、安装程序、许可证、校验和及客户指南。请从 README.md 开始,版本和限制见 RELEASE-NOTES.md 与 COMPATIBILITY.md。
无论使用哪种存储,集成都只需 Content ID#
流媒体集成中不需要填写播放清单 URL。使用 1aicloud 或已配置的 S3 存储时,DRM-X 会使用发布加密输出包时记录的媒体 URL。若将加密文件上传到您自己的服务器,请先在 DRM-X 注册其 DASH/HLS 媒体 URL。随后在 PHP、ASP.NET 或其他集成中使用同一个 Content ID。请求播放前,您的服务器仍需检查当前用户的权限。
- 发布或注册,只需一次
DRM-X content settings确认已为您的 Content ID 注册正确的受保护 DASH/HLS 媒体 URL。
- 连接您的网站
您的播放权限回调
检查登录状态以及购买、会员或课程报名权限,返回允许访问的 Content ID。
- 播放
DRM-X playback sessionDRM-X 解析已发布的加密输出包,并返回合适的播放清单(manifest)和 DRM License Token。
若找不到已注册的播放清单(manifest),请在 DRM-X 中更正发布设置或媒体 URL 注册信息。不要使用浏览器任意传入的 URL 作为备用地址。完整 PHP 演示中的原生离线端点是单独的高级示例;其当前所需的手动映射见 advanced/OFFLINE.md。
DRM-X 6.0