videojs-contrib-dash
Advanced tools
Comparing version 2.5.0 to 2.5.1
@@ -9,2 +9,5 @@ CHANGELOG | ||
## 2.5.1 (2016-09-09) | ||
* Skip source if requestMediaKeySystemAccess isn't present for key system | ||
## 2.5.0 (2016-08-24) | ||
@@ -11,0 +14,0 @@ * Expose mediaPlayer on player |
@@ -1,2 +0,2 @@ | ||
/*! videojs-contrib-dash - v2.5.0 - 2016-08-24 | ||
/*! videojs-contrib-dash - v2.5.1 - 2016-09-09 | ||
* Copyright (c) 2016 Brightcove */ | ||
@@ -154,2 +154,17 @@ (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){ | ||
var canHandleKeySystems = function canHandleKeySystems(source) { | ||
if (Html5DashJS.updateSourceData) { | ||
source = Html5DashJS.updateSourceData(source); | ||
} | ||
var videoEl = document.createElement('video'); | ||
if (source.keySystemOptions && !(navigator.requestMediaKeySystemAccess || | ||
// IE11 Win 8.1 | ||
videoEl.msSetMediaKeys)) { | ||
return false; | ||
} | ||
return true; | ||
}; | ||
_video2.default.DashSourceHandler = function () { | ||
@@ -160,2 +175,6 @@ return { | ||
if (!canHandleKeySystems(source)) { | ||
return ''; | ||
} | ||
if (_video2.default.DashSourceHandler.canPlayType(source.type)) { | ||
@@ -162,0 +181,0 @@ return 'probably'; |
@@ -1,3 +0,3 @@ | ||
/*! videojs-contrib-dash - v2.5.0 - 2016-08-24 | ||
/*! videojs-contrib-dash - v2.5.1 - 2016-09-09 | ||
* Copyright (c) 2016 Brightcove */ | ||
!function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g<d.length;g++)e(d[g]);return e}({1:[function(a,b,c){(function(b){"use strict";function d(a){return a&&a.__esModule?a:{default:a}}function e(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(c,"__esModule",{value:!0});var f=function(){function a(a,b){for(var c=0;c<b.length;c++){var d=b[c];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(a,d.key,d)}}return function(b,c,d){return c&&a(b.prototype,c),d&&a(b,d),b}}(),g=a("global/window"),h=d(g),i="undefined"!=typeof window?window.videojs:"undefined"!=typeof b?b.videojs:null,j=d(i),k="undefined"!=typeof window?window.dashjs:"undefined"!=typeof b?b.dashjs:null,l=d(k),m=function(a){return"[object Array]"===Object.prototype.toString.call(a)},n=function(){function a(b,c,d){if(e(this,a),d=d||c.options_,this.player=(0,j.default)(d.playerId),this.player.dash=this.player.dash||{},this.tech_=c,this.el_=c.el(),this.elParent_=this.el_.parentNode,b.src){c.isReady_=!1,a.updateSourceData&&(b=a.updateSourceData(b));var f=b.src;this.keySystemOptions_=a.buildDashJSProtData(b.keySystemOptions),this.player.dash.mediaPlayer=l.default.MediaPlayer().create(),this.mediaPlayer_=this.player.dash.mediaPlayer,a.useVideoJSDebug&&(j.default.log.warn("useVideoJSDebug has been deprecated. Please switch to using beforeInitialize."),a.useVideoJSDebug(this.mediaPlayer_)),a.beforeInitialize&&a.beforeInitialize(this.player,this.mediaPlayer_),this.mediaPlayer_.initialize(),d.dash&&d.dash.limitBitrateByPortal?this.mediaPlayer_.setLimitBitrateByPortal(!0):this.mediaPlayer_.setLimitBitrateByPortal(!1),this.mediaPlayer_.attachView(this.el_),this.mediaPlayer_.setAutoPlay(!1),this.mediaPlayer_.setProtectionData(this.keySystemOptions_),this.mediaPlayer_.attachSource(f),this.tech_.triggerReady()}}return f(a,[{key:"dispose",value:function(){this.mediaPlayer_&&this.mediaPlayer_.reset(),this.player.dash&&delete this.player.dash}}],[{key:"buildDashJSProtData",value:function(a){var b={};if(!a||!m(a))return b;for(var c=0;c<a.length;c++){var d=a[c],e=j.default.mergeOptions({},d.options);e.licenseUrl&&(e.serverURL=e.licenseUrl,delete e.licenseUrl),b[d.name]=e}return b}}]),a}();j.default.DashSourceHandler=function(){return{canHandleSource:function(a){var b=/\.mpd/i;return j.default.DashSourceHandler.canPlayType(a.type)?"probably":b.test(a.src)?"maybe":""},handleSource:function(a,b,c){return new n(a,b,c)},canPlayType:function(a){return j.default.DashSourceHandler.canPlayType(a)}}},j.default.DashSourceHandler.canPlayType=function(a){var b=/^application\/dash\+xml/i;return b.test(a)?"probably":""},h.default.MediaSource&&j.default.getComponent("Html5").registerSourceHandler(j.default.DashSourceHandler(),0),j.default.Html5DashJS=n,c.default=n}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"global/window":2}],2:[function(a,b,c){(function(a){"undefined"!=typeof window?b.exports=window:"undefined"!=typeof a?b.exports=a:"undefined"!=typeof self?b.exports=self:b.exports={}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[1]); | ||
!function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g<d.length;g++)e(d[g]);return e}({1:[function(a,b,c){(function(b){"use strict";function d(a){return a&&a.__esModule?a:{default:a}}function e(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(c,"__esModule",{value:!0});var f=function(){function a(a,b){for(var c=0;c<b.length;c++){var d=b[c];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(a,d.key,d)}}return function(b,c,d){return c&&a(b.prototype,c),d&&a(b,d),b}}(),g=a("global/window"),h=d(g),i="undefined"!=typeof window?window.videojs:"undefined"!=typeof b?b.videojs:null,j=d(i),k="undefined"!=typeof window?window.dashjs:"undefined"!=typeof b?b.dashjs:null,l=d(k),m=function(a){return"[object Array]"===Object.prototype.toString.call(a)},n=function(){function a(b,c,d){if(e(this,a),d=d||c.options_,this.player=(0,j.default)(d.playerId),this.player.dash=this.player.dash||{},this.tech_=c,this.el_=c.el(),this.elParent_=this.el_.parentNode,b.src){c.isReady_=!1,a.updateSourceData&&(b=a.updateSourceData(b));var f=b.src;this.keySystemOptions_=a.buildDashJSProtData(b.keySystemOptions),this.player.dash.mediaPlayer=l.default.MediaPlayer().create(),this.mediaPlayer_=this.player.dash.mediaPlayer,a.useVideoJSDebug&&(j.default.log.warn("useVideoJSDebug has been deprecated. Please switch to using beforeInitialize."),a.useVideoJSDebug(this.mediaPlayer_)),a.beforeInitialize&&a.beforeInitialize(this.player,this.mediaPlayer_),this.mediaPlayer_.initialize(),d.dash&&d.dash.limitBitrateByPortal?this.mediaPlayer_.setLimitBitrateByPortal(!0):this.mediaPlayer_.setLimitBitrateByPortal(!1),this.mediaPlayer_.attachView(this.el_),this.mediaPlayer_.setAutoPlay(!1),this.mediaPlayer_.setProtectionData(this.keySystemOptions_),this.mediaPlayer_.attachSource(f),this.tech_.triggerReady()}}return f(a,[{key:"dispose",value:function(){this.mediaPlayer_&&this.mediaPlayer_.reset(),this.player.dash&&delete this.player.dash}}],[{key:"buildDashJSProtData",value:function(a){var b={};if(!a||!m(a))return b;for(var c=0;c<a.length;c++){var d=a[c],e=j.default.mergeOptions({},d.options);e.licenseUrl&&(e.serverURL=e.licenseUrl,delete e.licenseUrl),b[d.name]=e}return b}}]),a}(),o=function(a){n.updateSourceData&&(a=n.updateSourceData(a));var b=document.createElement("video");return!(a.keySystemOptions&&!navigator.requestMediaKeySystemAccess&&!b.msSetMediaKeys)};j.default.DashSourceHandler=function(){return{canHandleSource:function(a){var b=/\.mpd/i;return o(a)?j.default.DashSourceHandler.canPlayType(a.type)?"probably":b.test(a.src)?"maybe":"":""},handleSource:function(a,b,c){return new n(a,b,c)},canPlayType:function(a){return j.default.DashSourceHandler.canPlayType(a)}}},j.default.DashSourceHandler.canPlayType=function(a){var b=/^application\/dash\+xml/i;return b.test(a)?"probably":""},h.default.MediaSource&&j.default.getComponent("Html5").registerSourceHandler(j.default.DashSourceHandler(),0),j.default.Html5DashJS=n,c.default=n}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"global/window":2}],2:[function(a,b,c){(function(a){"undefined"!=typeof window?b.exports=window:"undefined"!=typeof a?b.exports=a:"undefined"!=typeof self?b.exports=self:b.exports={}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[1]); |
@@ -150,2 +150,17 @@ 'use strict'; | ||
var canHandleKeySystems = function canHandleKeySystems(source) { | ||
if (Html5DashJS.updateSourceData) { | ||
source = Html5DashJS.updateSourceData(source); | ||
} | ||
var videoEl = document.createElement('video'); | ||
if (source.keySystemOptions && !(navigator.requestMediaKeySystemAccess || | ||
// IE11 Win 8.1 | ||
videoEl.msSetMediaKeys)) { | ||
return false; | ||
} | ||
return true; | ||
}; | ||
_video2.default.DashSourceHandler = function () { | ||
@@ -156,2 +171,6 @@ return { | ||
if (!canHandleKeySystems(source)) { | ||
return ''; | ||
} | ||
if (_video2.default.DashSourceHandler.canPlayType(source.type)) { | ||
@@ -158,0 +177,0 @@ return 'probably'; |
@@ -40,8 +40,20 @@ 'use strict'; | ||
options: { | ||
transform: [ | ||
'browserify-shim' | ||
] | ||
transform: ['browserify-shim'] | ||
} | ||
}, | ||
test: { | ||
files: { | ||
'tmp/browserify.test.js': ['test/browserify.test.js'] | ||
} | ||
} | ||
}, | ||
webpack: { | ||
test: { | ||
entry: './test/webpack.test.js', | ||
output: { | ||
path: 'tmp/', | ||
filename: 'webpack.test.js' | ||
} | ||
} | ||
}, | ||
babel: { | ||
@@ -97,5 +109,5 @@ dist: { | ||
grunt.registerTask('test', 'karma'); | ||
grunt.registerTask('build', ['clean', 'jshint', 'babel', 'browserify', 'uglify', 'concat']); | ||
grunt.registerTask('test', ['browserify:test', 'webpack:test', 'karma']); | ||
grunt.registerTask('build', ['clean', 'jshint', 'babel', 'browserify:dist', 'uglify', 'concat']); | ||
grunt.registerTask('default', ['build', 'test']); | ||
}; |
@@ -9,3 +9,3 @@ { | ||
}, | ||
"version": "2.5.0", | ||
"version": "2.5.1", | ||
"author": { | ||
@@ -51,2 +51,3 @@ "name": "Brightcove" | ||
"grunt-karma": "^2.0.0", | ||
"grunt-webpack": "^1.0.14", | ||
"karma": "^1.1.2", | ||
@@ -57,4 +58,6 @@ "karma-chrome-launcher": "^2.0.0", | ||
"load-grunt-tasks": "^3.1.0", | ||
"qunitjs": "^2.0.1" | ||
"qunitjs": "^2.0.1", | ||
"webpack": "^1.13.2", | ||
"webpack-dev-server": "^1.15.0" | ||
} | ||
} |
@@ -121,2 +121,18 @@ import window from 'global/window'; | ||
const canHandleKeySystems = function(source) { | ||
if (Html5DashJS.updateSourceData) { | ||
source = Html5DashJS.updateSourceData(source); | ||
} | ||
let videoEl = document.createElement('video'); | ||
if (source.keySystemOptions && | ||
!(navigator.requestMediaKeySystemAccess || | ||
// IE11 Win 8.1 | ||
videoEl.msSetMediaKeys)) { | ||
return false; | ||
} | ||
return true; | ||
}; | ||
videojs.DashSourceHandler = function() { | ||
@@ -127,2 +143,6 @@ return { | ||
if (!canHandleKeySystems(source)) { | ||
return ''; | ||
} | ||
if (videojs.DashSourceHandler.canPlayType(source.type)) { | ||
@@ -129,0 +149,0 @@ return 'probably'; |
44328
584
21