@castlabs/prestoplay 6.18.0 → 6.19.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/cjs/cl.adobe.js +3 -3
  3. package/cjs/cl.airplay.js +3 -3
  4. package/cjs/cl.broadpeak.js +7 -7
  5. package/cjs/cl.cast.js +115 -114
  6. package/cjs/cl.conviva.js +33 -33
  7. package/cjs/cl.core.js +581 -577
  8. package/cjs/cl.crypto.js +9 -9
  9. package/cjs/cl.dash.js +77 -75
  10. package/cjs/cl.externs.js +175 -293
  11. package/cjs/cl.freewheel.js +23 -24
  12. package/cjs/cl.hls.js +70 -71
  13. package/cjs/cl.hlssmpte.js +6 -6
  14. package/cjs/cl.htmlcue.js +28 -29
  15. package/cjs/cl.ima.js +24 -24
  16. package/cjs/cl.mse.js +313 -314
  17. package/cjs/cl.muxdata.js +15 -15
  18. package/cjs/cl.onboard.js +3 -3
  19. package/cjs/cl.persistent.js +14 -14
  20. package/cjs/cl.playlist.js +6 -6
  21. package/cjs/cl.sessions.js +16 -15
  22. package/cjs/cl.simid.js +15 -15
  23. package/cjs/cl.smooth.js +71 -72
  24. package/cjs/cl.thumbnails.js +26 -26
  25. package/cjs/cl.tizen.js +71 -71
  26. package/cjs/cl.ttml.js +27 -27
  27. package/cjs/cl.verimatrix.js +5 -5
  28. package/cjs/cl.vimond.js +12 -13
  29. package/cjs/cl.vr.js +19 -19
  30. package/cjs/cl.vtt.js +14 -14
  31. package/cjs/cl.youbora.js +18 -18
  32. package/cl.adobe.js +3 -3
  33. package/cl.airplay.js +3 -3
  34. package/cl.broadpeak.js +5 -5
  35. package/cl.cast.js +90 -89
  36. package/cl.conviva.js +27 -27
  37. package/cl.core.js +475 -474
  38. package/cl.crypto.js +9 -9
  39. package/cl.dash.js +72 -71
  40. package/cl.externs.js +172 -294
  41. package/cl.freewheel.js +19 -19
  42. package/cl.hls.js +74 -72
  43. package/cl.hlssmpte.js +5 -5
  44. package/cl.htmlcue.js +25 -26
  45. package/cl.ima.js +17 -17
  46. package/cl.mse.js +277 -274
  47. package/cl.muxdata.js +13 -13
  48. package/cl.onboard.js +4 -4
  49. package/cl.persistent.js +11 -11
  50. package/cl.playlist.js +5 -5
  51. package/cl.sessions.js +10 -10
  52. package/cl.simid.js +13 -13
  53. package/cl.smooth.js +59 -59
  54. package/cl.thumbnails.js +19 -19
  55. package/cl.tizen.js +57 -57
  56. package/cl.ttml.js +22 -22
  57. package/cl.verimatrix.js +4 -4
  58. package/cl.vimond.js +9 -8
  59. package/cl.vr.js +14 -14
  60. package/cl.vtt.js +12 -12
  61. package/cl.youbora.js +15 -15
  62. package/clpp.styles.css +14 -0
  63. package/package.json +1 -1
  64. package/typings.d.ts +379 -384
package/CHANGELOG.md CHANGED
@@ -1,3 +1,35 @@
1
+ # 6.19.1
2
+
3
+ ## Changes
4
+
5
+ * Fix an issue with error events for HTTP error responses on Firefox during
6
+ streaming.
7
+
8
+ # 6.19.0
9
+
10
+ ## New Features
11
+
12
+ * Add support for CMSD (Common Media Server Data)
13
+ * When `CMSD-Dynamic` or `CMSD-Static` header is parsed from network request, player now emits event `clpp.events.CMSD_EVENT`.
14
+ * For details refer to [CMSD Event](https://demo.castlabs.com/#/docs?q=clpp.events#CMSD_EVENT).
15
+ * MSE player now also supports CMSD headers **estimatedThroughput** and **maxSuggestedBitrate** to drive its ABR decisions.
16
+ * For details refer to [config.abr.useCmsd](https://demo.castlabs.com/#/docs?q=clpp#AbrConfiguration).
17
+ * Add `clpp.events.TIMELINE_CUES_CHANGED` event indicating a change in timeline cues.
18
+ * Support EXT-X-DATERANGE augmentation in HLS.
19
+ * Add Chromecast Web Receiver methods `setContentMetadata`, `updateContentMetadata` supporting set or
20
+ merge the current content metadata.
21
+ * Add support for HLS interstitials.
22
+
23
+ ## Changes
24
+
25
+ * Evict old timeline cues in live streams.
26
+ * Allow extra whitespaces in HLS playlists.
27
+ * Fix a problem with text track selection when `preferForcedSubtitles` is configured.
28
+ * Fix typescript typings of utility functions.
29
+ * For Low Latency streams and `lowLatencyMode` the streaming configuration `ignoreDrift` is now `false` by default
30
+ * `ignoreDrift` could cause additional startup delay for some streams. In case you still want to disable drift detection for
31
+ low latency streams, set `ignoreDrift` of [streaming configuration](https://demo.castlabs.com/#/docs?q=clpp#StreamingConfiguration).
32
+
1
33
  # 6.18.0
2
34
 
3
35
  ## New Features
package/cjs/cl.adobe.js CHANGED
@@ -1,7 +1,7 @@
1
1
  (function(){var g={}; var _ = _ || {}
2
- var f=function(window){var bW=function(){this.m=this.f=null;this.a="";this.g=new _.K("clpp.adobe.AdobePlugin")},eW=function(a){a.f=new _.Xh;a.f.on(a.m,_.Gg,function(){return cW(a)});a.f.on(a.m,_.Dg,function(){s.Media.play(a.a,a.m.getPosition())});a.f.on(a.m,_.Ne,function(){return dW(a)});a.f.on(a.m,_.jg,function(b){b=b.detail;switch(b.currentState){case _.Bp:a.a.length||dW(a);s.Media.play(a.a,a.m.getPosition());break;case _.Ap:case _.sp:cW(a);break;case _.up:case _.np:case _.yp:a.g.info("Close session for "+a.a+" in player state "+
3
- (b.currentState+".")),cW(a),s.Media.close(a.a),a.a=""}})},dW=function(a){var b=a.m.getLoadedSource();a.a=b?b.name||b.url:"";a.g.info("Open session for "+a.a+" with duration "+a.m.getDuration());s.Media.open(a.a,a.m.getDuration(),_.wa)},cW=function(a){s.Media.stop(a.a,a.m.getPosition())},fW=function(){};_.x(bW,_.Gu);bW.prototype.onPlayerCreated=function(a){window.s&&s.Media?(this.m=a,eW(this)):this.g.warn("Adobe API not available.")};
4
- bW.prototype.onPlayerWillDestroy=function(){this.f&&(this.f.release(),this.f=null);this.m=null;this.a=""};bW.prototype.id=function(){return"adobe"};_.J("clpp.adobe.AdobeAnalyticsPlugin",bW);bW.Id="adobe";fW.prototype.create=function(){return new bW};_.br(new fW);};
2
+ var f=function(window){var nW=function(){this.m=this.f=null;this.a="";this.g=new _.K("clpp.adobe.AdobePlugin")},qW=function(a){a.f=new _.Oh;a.f.on(a.m,_.zg,function(){return oW(a)});a.f.on(a.m,_.yg,function(){s.Media.play(a.a,a.m.getPosition())});a.f.on(a.m,_.Ie,function(){return pW(a)});a.f.on(a.m,_.dg,function(b){b=b.detail;switch(b.currentState){case _.Cp:a.a.length||pW(a);s.Media.play(a.a,a.m.getPosition());break;case _.Bp:case _.tp:oW(a);break;case _.vp:case _.op:case _.zp:a.g.info("Close session for "+a.a+" in player state "+
3
+ (b.currentState+".")),oW(a),s.Media.close(a.a),a.a=""}})},pW=function(a){var b=a.m.getLoadedSource();a.a=b?b.name||b.url:"";a.g.info("Open session for "+a.a+" with duration "+a.m.getDuration());s.Media.open(a.a,a.m.getDuration(),_.wa)},oW=function(a){s.Media.stop(a.a,a.m.getPosition())},rW=function(){};_.x(nW,_.Hu);nW.prototype.onPlayerCreated=function(a){window.s&&s.Media?(this.m=a,qW(this)):this.g.warn("Adobe API not available.")};
4
+ nW.prototype.onPlayerWillDestroy=function(){this.f&&(this.f.release(),this.f=null);this.m=null;this.a=""};nW.prototype.id=function(){return"adobe"};_.J("clpp.adobe.AdobeAnalyticsPlugin",nW);nW.Id="adobe";rW.prototype.create=function(){return new nW};_.lt(new rW);};
5
5
  if(typeof(module)!="undefined"&&module.exports){var x=require("./cl.core.js");_ = x._;(f.call(g,this));module.exports=g;}
6
6
  else if (typeof(define)!="undefined"&&define.amd) {define(["./cl.core"], function(c){_=c._;(f.call(g,this));return g;});}
7
7
  else{_=this.clpp._;(f.call(g,this));}
package/cjs/cl.airplay.js CHANGED
@@ -1,7 +1,7 @@
1
1
  (function(){var g={}; var _ = _ || {}
2
- var f=function(window){var $V=function(){var a=this;this.a=this.m=null;this.l=this.f=this.j=!1;this.o=new _.Xk(function(){a.m.play()["catch"](function(){})});this.h=new _.Xh},aW=function(){};_.x($V,_.Gu);_.t=$V.prototype;_.t.onPlayerCreated=function(a){this.m=a;this.a=a.getSurface().getMedia()};_.t.onContentWillLoad=function(){this.a&&(this.h.on(this.a,"webkitplaybacktargetavailabilitychanged",this.Zl.bind(this)),this.h.on(this.a,"webkitcurrentplaybacktargetiswirelesschanged",this.Bm.bind(this)))};
3
- _.t.onPlayerWillRelease=function(){this.o.stop();this.h.release()};_.t.id=function(){return"airplay"};_.t.Zl=function(a){switch(a.availability){case "available":this.f=!0;break;case "not-available":this.f=!1}this.m.trigger(new _.L(_.Tc,{canCast:this.f}))};_.t.Bm=function(){var a=(this.j=this.a.webkitCurrentPlaybackTargetIsWireless)?_.Sc:_.Rc;if(this.l||!this.m.isPaused()||this.m.getState()===_.Bp)this.l?this.m.play()["catch"](function(){}):this.o.da(.01);this.m.trigger(new _.L(a))};_.t.ub=function(){return this.j};
4
- _.t.nf=function(){return this.f};_.t.kn=function(){this.f&&(this.l=!this.m.isPaused(),this.a.webkitShowPlaybackTargetPicker())};_.J("clpp.airplay.AirPlayPlugin",$V);$V.prototype.showCastMenu=$V.prototype.kn;$V.prototype.canCast=$V.prototype.nf;$V.prototype.isCasting=$V.prototype.ub;$V.Id="airplay";aW.prototype.create=function(){return new $V};_.br(new aW);};
2
+ var f=function(window){var lW=function(){var a=this;this.a=this.m=null;this.l=this.f=this.j=!1;this.o=new _.Tk(function(){a.m.play()["catch"](function(){})});this.h=new _.Oh},mW=function(){};_.x(lW,_.Hu);_.u=lW.prototype;_.u.onPlayerCreated=function(a){this.m=a;this.a=a.getSurface().getMedia()};_.u.onContentWillLoad=function(){this.a&&(this.h.on(this.a,"webkitplaybacktargetavailabilitychanged",this.em.bind(this)),this.h.on(this.a,"webkitcurrentplaybacktargetiswirelesschanged",this.Gm.bind(this)))};
3
+ _.u.onPlayerWillRelease=function(){this.o.stop();this.h.release()};_.u.id=function(){return"airplay"};_.u.em=function(a){switch(a.availability){case "available":this.f=!0;break;case "not-available":this.f=!1}this.m.trigger(new _.L(_.Rc,{canCast:this.f}))};_.u.Gm=function(){var a=(this.j=this.a.webkitCurrentPlaybackTargetIsWireless)?_.Qc:_.Pc;if(this.l||!this.m.isPaused()||this.m.getState()===_.Cp)this.l?this.m.play()["catch"](function(){}):this.o.ea(.01);this.m.trigger(new _.L(a))};_.u.Hb=function(){return this.j};
4
+ _.u.tf=function(){return this.f};_.u.un=function(){this.f&&(this.l=!this.m.isPaused(),this.a.webkitShowPlaybackTargetPicker())};_.J("clpp.airplay.AirPlayPlugin",lW);lW.prototype.showCastMenu=lW.prototype.un;lW.prototype.canCast=lW.prototype.tf;lW.prototype.isCasting=lW.prototype.Hb;lW.Id="airplay";mW.prototype.create=function(){return new lW};_.lt(new mW);};
5
5
  if(typeof(module)!="undefined"&&module.exports){var x=require("./cl.core.js");_ = x._;(f.call(g,this));module.exports=g;}
6
6
  else if (typeof(define)!="undefined"&&define.amd) {define(["./cl.core"], function(c){_=c._;(f.call(g,this));return g;});}
7
7
  else{_=this.clpp._;(f.call(g,this));}
@@ -1,11 +1,11 @@
1
1
  (function(){var g={}; var _ = _ || {}
2
- var f=function(window){var SV=function(a,b){this.m=a;this.f=b;this.a=new _.Xh;this.h=!1},TV=function(a){function b(c){var d=GenericPlayerApi.call(this)||this;d.m=c;d.a=_.ak();return d}_.x(b,GenericPlayerApi);b.prototype.getPlayerName=function(){return _.wa};b.prototype.getVersion=function(){return _.ja};b.prototype.getOSName=function(){return this.a.os};b.prototype.getDeviceVersion=function(){return this.a.osVersion.name};b.prototype.getDeviceType=function(){return"browser"};b.prototype.getTotalDuration=function(){return this.m.isLive()?
3
- 0:1E3*this.m.getDuration()};b.prototype.getCurrentPosition=function(){return 1E3*this.m.getPosition()};b.prototype.getCurrentBitrate=function(){var c=this.m.getStats();return(c?c.streamBandwidth:0)/1E3};return new b(a)},UV=function(){this.l=this.f=this.a=this.h=this.m=null;this.o=new _.Xh;this.j=!1},VV=function(a,b){var c=b.analyticsAddress||null,d=b.nanoCDNHost||null,e=b.broadpeakDomainNames||"",f=b.uuid||null;a.h||(a.h=SmartLib.getInstance(),a.h.init(c,d,e),typeof f===_.mg&&a.h.setUUID(f))},WV=
4
- function(a,b){var c=b.customParameters||{};a.a=a.h.createStreamingSession();a.a.setOption(StreamingSessionOptions.SESSION_PRECACHE,!0);for(var d in c)a.a.setCustomParameter(d,c[d]);a.o.on(a.m,_.te,a.T.bind(a));a.l=TV(a.m);a.a.attachPlayer(a.l)},XV=function(a,b){_.$h(a.o);a.f&&(a.f.release(),a.f=null);a.a&&(a.a.stopStreamingSession(b),a.a=null)},YV=function(){return!window.SmartLib||!window.GenericPlayerApi},ZV=function(){};_.t=SV.prototype;
5
- _.t.init=function(){var a=this.m,b=this.a;b.on(a,_.jg,this.ej.bind(this));b.on(a,_.ld,this.cj.bind(this));b.on(a,"seek",this.dj.bind(this))};_.t.cj=function(a){a=a.detail;typeof a.bandwidth===_.k&&this.f.notifyLayerSwitch(a.bandwidth/1E3)};_.t.ej=function(a){var b=this.m,c=this.f;a=a.detail;var d=a.currentState;a.previousState===_.sp&&c.notifyStallEnd(!b.isPaused());switch(d){case _.sp:c.notifyStallStart();break;case _.Bp:this.h?c.notifyResume():(c.notifyFirstImage(),this.h=!0);break;case _.Ap:c.notifyPause()}};
6
- _.t.dj=function(){var a=1E3*this.m.getPosition();this.f.notifySeek(a)};_.t.release=function(){this.a&&(_.$h(this.a),this.a=null)};_.x(UV,_.Gu);_.t=UV.prototype;_.t.onPlayerCreated=function(a){this.m=a};_.t.onContentWillLoad=function(a,b){var c=this,d=a.getConfiguration().broadpeak;if(d){if(YV())return a.onError(new _.N(1,9,11E3));this.j=!0;VV(this,d);WV(this,d);return this.a.getURL(b.url).then(function(e){if(e.isError()){var f=e.getDetailedErrorCode();e=e.getDetailedErrorMessage();c.m.onError(new _.N(1,9,11001,{bpkErrorCode:f,message:e}));XV(c,void 0)}else b.url=e.getURL(),c.f=new SV(c.m,c.l),c.f.init()})}};
7
- _.t.onContentLoaded=function(){!1!==this.j&&this.a.precacheEnded()};_.t.T=function(a){a=a.detail;if(7003===a.code)XV(this,SmartLib.BPFormatNotSupportedError);else if(a.severity===_.O)switch(a.category){case 3:XV(this,SmartLib.BPDecodingError);break;case 1:XV(this,SmartLib.BPNetworkingError);break;case 6:XV(this,SmartLib.BPAccessRightError);break;default:XV(this,SmartLib.BPUnspecifiedError)}};_.t.onPlayerWillRelease=function(){YV()||XV(this,SmartLib.BPSessionEndsNormally);this.j=!1};_.t.id=function(){return"broadpeak"};
8
- _.J("clpp.broadpeak.BroadpeakPlugin",UV);UV.isSdkMissing=YV;UV.Id="broadpeak";ZV.prototype.create=function(){return new UV};_.br(new ZV);};
2
+ var f=function(window){var dW=function(a,b){this.m=a;this.f=b;this.a=new _.Oh;this.h=!1},eW=function(a){function b(c){var d=GenericPlayerApi.call(this)||this;d.m=c;d.a=_.Kj();return d}_.x(b,GenericPlayerApi);b.prototype.getPlayerName=function(){return _.wa};b.prototype.getVersion=function(){return _.ja};b.prototype.getOSName=function(){return this.a.os};b.prototype.getDeviceVersion=function(){return this.a.osVersion.name};b.prototype.getDeviceType=function(){return"browser"};b.prototype.getTotalDuration=function(){return this.m.isLive()?
3
+ 0:1E3*this.m.getDuration()};b.prototype.getCurrentPosition=function(){return 1E3*this.m.getPosition()};b.prototype.getCurrentBitrate=function(){var c=this.m.getStats();return(c?c.streamBandwidth:0)/1E3};return new b(a)},fW=function(){this.l=this.f=this.a=this.h=this.m=null;this.o=new _.Oh;this.j=!1},gW=function(a,b){var c=b.analyticsAddress||null,d=b.nanoCDNHost||null,e=b.broadpeakDomainNames||"",f=b.uuid||null;a.h||(a.h=SmartLib.getInstance(),a.h.init(c,d,e),typeof f===_.gg&&a.h.setUUID(f))},hW=
4
+ function(a,b){var c=b.customParameters||{};a.a=a.h.createStreamingSession();a.a.setOption(StreamingSessionOptions.SESSION_PRECACHE,!0);for(var d in c)a.a.setCustomParameter(d,c[d]);a.o.on(a.m,_.oe,a.S.bind(a));a.l=eW(a.m);a.a.attachPlayer(a.l)},iW=function(a,b){_.Rh(a.o);a.f&&(a.f.release(),a.f=null);a.a&&(a.a.stopStreamingSession(b),a.a=null)},jW=function(){return!window.SmartLib||!window.GenericPlayerApi},kW=function(){};_.u=dW.prototype;
5
+ _.u.init=function(){var a=this.m,b=this.a;b.on(a,_.dg,this.qj.bind(this));b.on(a,_.jd,this.oj.bind(this));b.on(a,"seek",this.pj.bind(this))};_.u.oj=function(a){a=a.detail;typeof a.bandwidth===_.k&&this.f.notifyLayerSwitch(a.bandwidth/1E3)};_.u.qj=function(a){var b=this.m,c=this.f;a=a.detail;var d=a.currentState;a.previousState===_.tp&&c.notifyStallEnd(!b.isPaused());switch(d){case _.tp:c.notifyStallStart();break;case _.Cp:this.h?c.notifyResume():(c.notifyFirstImage(),this.h=!0);break;case _.Bp:c.notifyPause()}};
6
+ _.u.pj=function(){var a=1E3*this.m.getPosition();this.f.notifySeek(a)};_.u.release=function(){this.a&&(_.Rh(this.a),this.a=null)};_.x(fW,_.Hu);_.u=fW.prototype;_.u.onPlayerCreated=function(a){this.m=a};_.u.onContentWillLoad=function(a,b){var c=this,d=a.getConfiguration().broadpeak;if(d){if(jW())return a.onError(new _.N(1,9,11E3));this.j=!0;gW(this,d);hW(this,d);return this.a.getURL(b.url).then(function(e){if(e.isError()){var f=e.getDetailedErrorCode();e=e.getDetailedErrorMessage();c.m.onError(new _.N(1,9,11001,{bpkErrorCode:f,message:e}));iW(c,void 0)}else b.url=e.getURL(),c.f=new dW(c.m,c.l),c.f.init()})}};
7
+ _.u.onContentLoaded=function(){!1!==this.j&&this.a.precacheEnded()};_.u.S=function(a){a=a.detail;if(7003===a.code)iW(this,SmartLib.BPFormatNotSupportedError);else if(a.severity===_.O)switch(a.category){case 3:iW(this,SmartLib.BPDecodingError);break;case 1:iW(this,SmartLib.BPNetworkingError);break;case 6:iW(this,SmartLib.BPAccessRightError);break;default:iW(this,SmartLib.BPUnspecifiedError)}};_.u.onPlayerWillRelease=function(){jW()||iW(this,SmartLib.BPSessionEndsNormally);this.j=!1};_.u.id=function(){return"broadpeak"};
8
+ _.J("clpp.broadpeak.BroadpeakPlugin",fW);fW.isSdkMissing=jW;fW.Id="broadpeak";kW.prototype.create=function(){return new fW};_.lt(new kW);};
9
9
  if(typeof(module)!="undefined"&&module.exports){var x=require("./cl.core.js");_ = x._;(f.call(g,this));module.exports=g;}
10
10
  else if (typeof(define)!="undefined"&&define.amd) {define(["./cl.core"], function(c){_=c._;(f.call(g,this));return g;});}
11
11
  else{_=this.clpp._;(f.call(g,this));}