https://videojs.com/
https://videojs.github.io/videojs-contrib-hls/
https://underscorejs.org/
https://stackoverflow.com/questions/40225756/how-to-detect-http-response-code
videojs.xhr = _.wrap(videojs.xhr, function(fn, options, callback) {
var wrapped_callback = _.wrap(callback, function(cb_fn, error, response) {
var args = _.rest(arguments, 1);
//response.statusCode
//response.rawRequest.headers.Session
var res = cb_fn.apply(this, args);
return res;
});
return fn.apply(this, [options, wrapped_callback]);
});