Moodle protected-video activities
Create a Moodle activity that binds one published Content ID to Moodle enrollment and activity-access rules.
How playback is authorized
Your backend decides who can watch. DRM-X provides playback authorization. The player uses that authorization to request a DRM license.
- Viewer
Signs in to your service and requests a video.
- Your backend
Checks the user's purchase, subscription, or other permission to watch.
- DRM-X
Applies the selected playback rules and returns the playback configuration and authorization.
- Player
Uses the returned authorization to request the DRM license needed for playback.
Install the activity module#
Install mod_drmx in Moodle through Site administration → Plugins → Install plugins. The plugin directory is mod/drmx. Complete the Moodle database upgrade, then open the DRM-X protected video activity settings.
Enter Site ID, Site Key, Access Key and the default license policy. For managed deployments, use Moodle forced_plugin_settings to inject these settings from protected host configuration.
Create a protected-video activity#
Turn editing on in a course and add DRM-X Protected Video. In the DRM-X 6.0 Universal Player section, paste the published Content ID, select VOD or Live and choose a protection policy. The question-mark help explains each field; policy names include their API identifiers. Save and display, then test as a learner. Configure availability and completion using Moodle activity settings.
Every playback request checks the signed-in account, course enrollment, mod/drmx:view capability, and the visibility of this activity to that user. The requested Content ID must match the saved activity. Guests, suspended enrollments and unavailable activities are denied.
Completion tracking records that the activity was viewed. It does not prove that the learner watched the entire video.
Embed an existing activity with the filter#
Install filter_drmx after mod_drmx, then enable it in Manage filters. Use the course-module ID from the activity URL, not the internal video record ID.
{drmx activityid="123"}
Older contentid markup resolves only when exactly one DRM-X activity in the current course has that Content ID and content type. Copy credentials from the old filter settings into the activity settings; the old filter credential fields are no longer used.
Backups, restoration and testing#
The activity includes Moodle backup and restore handlers. Restoring an activity clears Content ID so an administrator must confirm the destination mapping before playback is enabled. Do not restore server credentials through course backups.
Moodle 5.2.2+ was installed locally and tested for activity binding, an altered Content ID, hidden activities and suspended enrollment. Test your own role overrides, group/date restrictions, backup restoration and actual DRM playback before rollout.
DRM-X 6.0