diff --git a/dashboard-ui/bower_components/emby-apiclient/.bower.json b/dashboard-ui/bower_components/emby-apiclient/.bower.json index 2a2e13e443..0a72e4c328 100644 --- a/dashboard-ui/bower_components/emby-apiclient/.bower.json +++ b/dashboard-ui/bower_components/emby-apiclient/.bower.json @@ -16,12 +16,12 @@ }, "devDependencies": {}, "ignore": [], - "version": "1.0.24", - "_release": "1.0.24", + "version": "1.0.25", + "_release": "1.0.25", "_resolution": { "type": "version", - "tag": "1.0.24", - "commit": "4b9b655cad98bd908e78352d5bbed028644505d4" + "tag": "1.0.25", + "commit": "f2e83b0e30527b5182ceb043d170ad7188368245" }, "_source": "git://github.com/MediaBrowser/Emby.ApiClient.Javascript.git", "_target": "~1.0.3", diff --git a/dashboard-ui/bower_components/emby-apiclient/store.js b/dashboard-ui/bower_components/emby-apiclient/store.js index 6599f47c1b..8bd070c5cc 100644 --- a/dashboard-ui/bower_components/emby-apiclient/store.js +++ b/dashboard-ui/bower_components/emby-apiclient/store.js @@ -1,4 +1,4 @@ -(function (globalScope, localStorage, sessionStorage) { +(function (globalScope) { function myStore(defaultObject) { @@ -45,7 +45,7 @@ }; } - globalScope.appStorage = new myStore(localStorage); - globalScope.sessionStore = new myStore(sessionStorage); + globalScope.appStorage = new myStore(globalScope.localStorage); + globalScope.sessionStore = new myStore(globalScope.sessionStorage); -})(window, window.localStorage, window.sessionStorage); \ No newline at end of file +})(this); \ No newline at end of file diff --git a/dashboard-ui/bower_components/emby-webcomponents/.bower.json b/dashboard-ui/bower_components/emby-webcomponents/.bower.json index 7bf42bfb1c..996afac6fe 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/.bower.json +++ b/dashboard-ui/bower_components/emby-webcomponents/.bower.json @@ -15,12 +15,12 @@ }, "devDependencies": {}, "ignore": [], - "version": "1.0.16", - "_release": "1.0.16", + "version": "1.0.17", + "_release": "1.0.17", "_resolution": { "type": "version", - "tag": "1.0.16", - "commit": "8058a1a93ad995fd3b7f56019719c33654698df6" + "tag": "1.0.17", + "commit": "f70b1e8c554d92f4a7e3f1e8358ba42971d82492" }, "_source": "git://github.com/MediaBrowser/emby-webcomponents.git", "_target": "~1.0.0", diff --git a/dashboard-ui/bower_components/emby-webcomponents/browserdeviceprofile.js b/dashboard-ui/bower_components/emby-webcomponents/browserdeviceprofile.js index b85ea791f5..db32312b1f 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/browserdeviceprofile.js +++ b/dashboard-ui/bower_components/emby-webcomponents/browserdeviceprofile.js @@ -171,17 +171,6 @@ } }); - var videoAudioCodecs = []; - if (canPlayMp3) { - videoAudioCodecs.push('mp3'); - } - if (canPlayAac) { - videoAudioCodecs.push('aac'); - } - if (canPlayAc3) { - videoAudioCodecs.push('ac3'); - } - // Can't use mkv on mobile because we have to use the native player controls and they won't be able to seek it if (canPlayMkv && !browser.mobile) { profile.TranscodingProfiles.push({ @@ -246,7 +235,7 @@ }] }); - var videoAudioChannels = browser.safari ? '2' : '6'; + var videoAudioChannels = '6'; profile.CodecProfiles.push({ Type: 'VideoAudio', diff --git a/dashboard-ui/bower_components/hls.js/.bower.json b/dashboard-ui/bower_components/hls.js/.bower.json index daddb3e9d1..44c282c016 100644 --- a/dashboard-ui/bower_components/hls.js/.bower.json +++ b/dashboard-ui/bower_components/hls.js/.bower.json @@ -1,6 +1,6 @@ { "name": "hls.js", - "version": "0.3.15", + "version": "0.4.5", "description": "Media Source Extension - HLS library, by/for Dailymotion", "homepage": "https://github.com/dailymotion/hls.js", "authors": [ @@ -15,13 +15,14 @@ "test", "tests" ], - "_release": "0.3.15", + "_release": "0.4.5", "_resolution": { "type": "version", - "tag": "v0.3.15", - "commit": "d3ecf55b89063d7ba3bd70800d5839755b0c7e63" + "tag": "v0.4.5", + "commit": "908ac4a44a182bdbede9c1830828983c18532ca0" }, "_source": "git://github.com/dailymotion/hls.js.git", - "_target": "~0.3.11", - "_originalSource": "dailymotion/hls.js" + "_target": "~0.4.5", + "_originalSource": "dailymotion/hls.js", + "_direct": true } \ No newline at end of file diff --git a/dashboard-ui/bower_components/hls.js/API.md b/dashboard-ui/bower_components/hls.js/API.md index 1567735bd9..dee1907066 100644 --- a/dashboard-ui/bower_components/hls.js/API.md +++ b/dashboard-ui/bower_components/hls.js/API.md @@ -184,17 +184,21 @@ configuration parameters could be provided to hls.js upon instantiation of Hls O debug : false, autoStartLoad : true, maxBufferLength : 30, + maxMaxBufferLength : 600, maxBufferSize : 60*1000*1000, liveSyncDurationCount : 3, liveMaxLatencyDurationCount: 10, enableWorker : true, enableSoftwareAES: true, - fragLoadingTimeOut : 20000, - fragLoadingMaxRetry : 6, - fragLoadingRetryDelay : 500, manifestLoadingTimeOut : 10000, manifestLoadingMaxRetry : 6, manifestLoadingRetryDelay : 500, + levelLoadingTimeOut : 10000, + levelLoadingMaxRetry : 6, + levelLoadingRetryDelay : 500, + fragLoadingTimeOut : 20000, + fragLoadingMaxRetry : 6, + fragLoadingRetryDelay : 500, fpsDroppedMonitoringPeriod : 5000, fpsDroppedMonitoringThreshold : 0.2, appendErrorMaxRetry : 3, @@ -209,6 +213,10 @@ configuration parameters could be provided to hls.js upon instantiation of Hls O var hls = new Hls(config); ``` +#### ```Hls.DefaultConfig get/set``` +this getter/setter allows to retrieve and override Hls default configuration. +this configuration will be applied by default to all instances. + #### ```debug``` (default false) @@ -225,10 +233,24 @@ a logger object could also be provided for custom logging : ```config.debug=cust (default 30s) maximum buffer Length in seconds. if buffer length is/become less than this value, a new fragment will be loaded. +this is the guaranteed buffer length hls.js will try to reach, regardless of maxBufferSize. + #### ```maxBufferSize``` (default 60 MB) -maximum buffer size in bytes. if buffer size upfront is bigger than this value, no fragment will be loaded. +'minimum' maximum buffer size in bytes. if buffer size upfront is bigger than this value, no fragment will be loaded. + +#### ```maxMaxBufferLength``` +(default 600s) + +maximum buffer Length in seconds. hls.js will never exceed this value. even if maxBufferSize is not reached yet. + +hls.js tries to buffer up to a maximum number of bytes (60 MB by default) rather than to buffer up to a maximum nb of seconds. +this is to mimic the browser behaviour (the buffer eviction algorithm is starting after the browser detects that video buffer size reaches a limit in bytes) + +config.maxBufferLength is the minimum guaranteed buffer length that hls.js will try to achieve, even if that value exceeds the amount of bytes 60 MB of memory. +maxMaxBufferLength acts as a capping value, as if bitrate is really low, you could need more than one hour of buffer to fill 60 MB.... + #### ```liveSyncDurationCount``` (default 3) @@ -255,19 +277,19 @@ enable webworker (if available on browser) for TS demuxing/MP4 remuxing, to impr enable to use JavaScript version AES decryption for fallback of WebCrypto API. -#### ```fragLoadingTimeOut```/```manifestLoadingTimeOut``` -(default 60000ms for fragment/10000ms for manifest) +#### ```fragLoadingTimeOut```/```manifestLoadingTimeOut```/```levelLoadingTimeOut``` +(default 60000ms for fragment/10000ms for level and manifest) URL Loader timeout. A timeout callback will be triggered if loading duration exceeds this timeout. no further action will be done : the load operation will not be cancelled/aborted. It is up to the application to catch this event and treat it as needed. -#### ```fragLoadingMaxRetry```/```manifestLoadingMaxRetry``` +#### ```fragLoadingMaxRetry```/```manifestLoadingMaxRetry```/```levelLoadingMaxRetry``` (default 3) max nb of load retry -#### ```fragLoadingRetryDelay```/```manifestLoadingRetryDelay``` -(default 500ms) +#### ```fragLoadingRetryDelay```/```manifestLoadingRetryDelay```/```levelLoadingRetryDelay``` +(default 1000ms) initial delay between XmlHttpRequest error and first load retry (in ms) any I/O error will trigger retries every 500ms,1s,2s,4s,8s, ... capped to 64s (exponential backoff) @@ -485,7 +507,7 @@ full list of Events available below : - `Hls.Events.FRAG_LOADING` - fired when a fragment loading starts - data: { frag : fragment object} - `Hls.Events.FRAG_LOAD_PROGRESS` - fired when a fragment load is in progress - - data: { frag : fragment object, stats : progress event } + - data: { frag : fragment object with frag.loaded=stats.loaded, stats : { trequest, tfirst, loaded} } - `Hls.Events.FRAG_LOADED` - fired when a fragment loading is completed - data: { frag : fragment object, payload : fragment payload, stats : { trequest, tfirst, tload, length}} - `Hls.Events.FRAG_PARSING_INIT_SEGMENT` - fired when Init Segment has been extracted from fragment diff --git a/dashboard-ui/bower_components/hls.js/bower.json b/dashboard-ui/bower_components/hls.js/bower.json index c7f08e5ea7..b47f29f9e2 100644 --- a/dashboard-ui/bower_components/hls.js/bower.json +++ b/dashboard-ui/bower_components/hls.js/bower.json @@ -1,6 +1,6 @@ { "name": "hls.js", - "version": "0.3.15", + "version": "0.4.5", "description": "Media Source Extension - HLS library, by/for Dailymotion", "homepage": "https://github.com/dailymotion/hls.js", "authors": [ diff --git a/dashboard-ui/bower_components/hls.js/demo/index.html b/dashboard-ui/bower_components/hls.js/demo/index.html index 446804bb1e..404a86adc1 100644 --- a/dashboard-ui/bower_components/hls.js/demo/index.html +++ b/dashboard-ui/bower_components/hls.js/demo/index.html @@ -75,6 +75,7 @@ header { +