I’ve discovered Udemy as a service around 5–6 years ago. Below you can read what I found interesting having a look at the player during several hours.
The Web Video Text Tracks Format, or WebVTT, is a specification to mark up external text track resources and put them to
VTT-files look like that:
Udemy also uses WebVTT to show a popover using thumbnail sprites:
videojs and so on). This is why it’s a general approach to send player events and to analyse data later.
XMLHttpRequest example is available here. You can see UTC timestamp as
uti, event name as
e, video id as
vid, etc. The events are send to
<ake> is user id. The
sendBeacon example is available here. You can see more data about browser, OS, libraries, content, course and so on and so forth. The
beaconUrl here is https://vfq2nsli1v76fglgdl9puq0cd.litix.io as well.
All my old courses’ videos (and even the one I purchased now) are MP4. I didn’t find anything that includes DRM. However, the url to the stream includes 2 GET-parameters to have access to it:
token, otherwise access is forbidden.
Video tag element contains the source to the stream and plays it just fine. If you try to put src without those parameters, you will get the error:player