Moodle Plugins directory: H5P Opencast Extension | Moodle.org

H5P Opencast Extension
Opencast is a flexible, reliable, and scalable open-source video-capture, -management, and -distribution system for academic institutions, built by a community of developers from leading universities and organizations worldwide.
Integrating Opencast into Moodle is realized with a set of flexible plugins.
All Opencast plugins for MoodleDocumentationThe Opencast Project
About this plugin
It extends the H5P plugin for Moodle (mod_hvp) by integrating support for Opencast videos within the H5P Interactive Video content type.
This plugin allows teachers to select Opencast videos directly from the H5P editor when creating or editing Interactive Video content. Once a video is selected, users can choose the desired video flavor (e.g., Presenter or Presentation). The corresponding video qualities then appear automatically in the H5P editor for selection and are further handled by H5P.
Due to the limited extensibility of the mod_hvp plugin, this functionality is implemented by injecting custom code into theme files, specifically renderer.php and config.php. The plugin dynamically modifies these files across all installed themes (by selection), which avoids the need to create and maintain a separate theme. More information about the customization process can be found in the H5P documentation.
System requirements:
-
Min. Moodle Version: (3.9 in v3.0-r1) or (3.8 < v3.0-r1)
-
Plugins:
- Verions below v3.0-r1:
- Opencast API (tool_opencast) Version: v3.11-r3 to v3.11-r8.
- Opencast Video (block_opencast) Version: v3.11-r3 to v3.11-r8.
- H5P Activity plugin (mod_hvp) Version: 1.22.3
- Version v3.0-r1 and above:
Opencast configuration for multiple nodes setups:
If you use a constellation of opencast nodes, one for admin and another for presentation (i.e. engage node) it is important that your moodle user account in opentcast has the role that makes the services endpoint available. It is by default (and based on experience) included in the "ROLE_GROUP_MH_DEFAULT_ORG_SYSTEM_ADMINS" role.
NOTE: In version v4.5-r1, we switched from using the Opencast services endpoint to the API base endpoint to retrieve the Engage node URL. As a result, the role "ROLE_GROUP_MH_DEFAULT_ORG_SYSTEM_ADMINS" no longer has any effect for this plugin. Instead, you need to assign the role "ROLE_UI_EVENTS_EMBEDDING_CODE_VIEW" to the Opencast API User.
Prerequisites:
-
Proper write permission on themes directories for the server user (e.g. "www-data" Apache User)
Features
-
Extend several themes at once via Moodle's multiselect feature by holding the Ctrl key.
-
Remove extensions applied to several themes at once via Moodle's multiselect feature by holding the Ctrl key.
-
Display Opencast videos of the course inside H5P Interactive Videos Editor.
-
Extract and display Opencast video flavors inside H5P Interactive Videos Editor.
-
Extract and use different quality of the Opencast video inside H5P Interactive Videos.
-
Opencast LTI authentication
-
The Engage/Presentation node for search endpoint is retrieved from the Opencast API base endpoint.
How it works
-
In the admin setting page, there is the possibility to select multiple available themes to extend.
-
Deselecting a theme will remove the extension changes.
-
Only videos which are published to opencast engage player, can be displayed and process, because media index of the event must be available.
-
LTI credential can be configured if the "Secure Static Files" in opencast setting is enabled.
Important for admins to know:
- This plugin creates new files within the Moodle core installation.
- By extending a theme, the plugin attempts to add own code into the files of selected themes.
- By deselecting a theme, the plugin attempts to remove the (added) code from the files of selected themes.
How to revert the changes:
-
Through the admin setting page, deselecting a theme will revert the changes.
-
Uninstalling the plugin will also trigger the uninstallation event, by which all changes to the extended themes will be removed!
Revert changes manually:
-
(rootdir) > themes > {your installed theme dir} > renderers.php
-
(rootdir) > themes > {your installed theme dir} > config.php
Repair the loss of changes on renderers.php:
-
Deselect the defected theme, to let the plugin know that the changes should not be there anymore!
-
Save changes.
-
Select the defected theme again, to repeat the changes.
-
Save changes.
Common Issues:
- If using LTI authentication with Secure Static Files option in Opencast, and the selected Opencast video is not displayed with error showing "Video format not supported", you might need to try Partitioning the cookies in your Opencast Nginx/Apache server.
No support in the comments section on this page
Please note that we don't provide any support for this plugin in the comments section on this page.
We appreciate your commendation and reviews for this plugin in the comments. For bug reports and support requests, please read the documentation first and create, if needed, a ticket in the bug tracker which is linked below.
Thanks for your cooperation.
For further help, please refer to the mailing lists and chats offered by opencast.org.
Comments