Steps to reproduce:
1. Deploy and start Opencast
2. Attempt to play a video
The player does not load correctly. The problem remains until Opencast is restarted.
Same issue described in
After an Opencast deploy and start, the player should always initialize correctly.
Workaround (if any):
Restart Opencast until it works.
I had seen this error again, but while trying to fix it I could not create it. I thought I had found it on develop.opencast.org, where I could debug it, but we had a broken build on that machine, so a different problem that did not match to your logs.
The only reproduceable issue that I found was when I throttled the network connection in Chrome. Then I hit a problem that looked similar to your logs and your description. I fixed this by increasing the durations for the timeouts. Now it works with a throttled network in the second slowest google chrome profile (GPRS is slowest, but I guess nobody should expect that a video player works with such a bad connection).
I could not reproduce the issue with the download tab that you described, though I build and restarted Opencast several times, and even throttling did not help. But the Plugin looks promissing. Will you contribute it?
So I concluded that when this happens, the EngagePluginManagerImpl is not getting sent a bundle start event for some reason. There's no clear way to reproduce it (it seems to depend on bundle load order), but what we have changed locally is to increase the start level for the plugins like this (in our case just for adminpresentation profile, but should be done for all profiles which include engage player):
We have 2 non-standard plugins: the Download plugin is based on the original Theodul download plugin by Lars which was originally published as GPL and as our version is based on that, the license would also be GPL though I actually can't now find the original.
The other is a "feedback" button and tab which links to a Google Form. Would be nice to make that into a more integrated feedback dialog (e.g. rate video quality, rate audio quality, report playback issue, etc.)
I guess I know now where the "video.min.js:18 Uncaught TypeError: The element or ID supplied is not valid. (videojs)" error seems to come from. In a slow network it can happen that the video.js part is initialized before the template is loaded and rendered. But I have currently no clue how to prevent this race condition.
Reopening this because the merged PR addresses a timeout issue, but there is still the "missing plugin bundle" issue, i.e. a plugin bundle is not registered with the plugin manager.
Sorry, I see the PR includes the runlevel change.